Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер
2 страниц V   1 2

автобаланс для паблика

Статус пользователя Bloo
сообщение 27.3.2014, 11:42
Сообщение #21


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

lLeDoKl, даже не знаю, я такими плагинами не пользуюсь (ArmyMod)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя lLeDoKl
сообщение 27.3.2014, 11:56
Сообщение #22


Стаж: 13 лет

Сообщений: 205
Благодарностей: 15
Полезность: < 0

Цитата(Bloo @ 27.3.2014, 13:42) *
lLeDoKl, даже не знаю, я такими плагинами не пользуюсь (ArmyMod)

очень плохо. Показано что работает плагин , но он не перекидывает никого и никуда
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 27.3.2014, 12:00
Сообщение #23


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

lLeDoKl, плохо что ArmyMode не использую?)
Я даже не знаю в чем дело. Покажите amx_plugins и ptb.cfg, может что то сообразим коллективно.

Отредактировал: Bloo, - 27.3.2014, 12:01
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя lLeDoKl
сообщение 27.3.2014, 12:04
Сообщение #24


Стаж: 13 лет

Сообщений: 205
Благодарностей: 15
Полезность: < 0

Скрытый текст
// Чтобы PTB работал должным образом нужно поставить 0
mp_autoteambalance 0
mp_limitteams 0

// Показ информациооных сообщений о перемещении
// 0 - выключено
// 1 - показывать в чате
// 2 - показывать hud сообщения
// 3 - будет показаны все сообщения
ptb_saychat 1

// Перемещение 1 - оригинальное, 2 или 3 - агрессивное перемещение
ptb_transfer_type 1

// Включение/выключение ( 1 : 0 ) иммунитета админа от перемещений
ptb_switch_immunity 1

// Включение/выключение ( 1 : 0 ) иммунитета админа от ограничении команды
ptb_limitjoin_immunity 1

// Здесь вы выбираете кокой флаг должин быть у Админа против перемещения
ptb_immunity_level "o"

// Здесь вы выбираете какой должен быть у Админа флаг для доступа к настройкам PTB
ptb_access_level "l"

// Включить/выключить (1 :0) показываний перемещений HLSW в чате
ptb_show_in_hlsw 1


// team selection control (выбор управление)
amx_ptb limitjoin on // WTJ ограничение
amx_ptb limitafter 0 // раунда после которого начинается ограничение
amx_ptb limitmin 0 // минимум игроков на карта для ограничение выбора команды
amx_ptb maxsize 16 // Максимальный размер команды
amx_ptb maxdiff 1 // Максимальная разница игроков
amx_ptb autorounds 3 // Количество раундов выбирается игроками
amx_ptb wtjauto 3 // Скока попыток до включения автовыбора команды
amx_ptb wtjkick 5 // После нескольких попыток выбора команды кикать
amx_ptb kick off // Вкл/выкл кик
amx_ptb savewtj off // Вкл/выкл сохранение в логах

// team balancing actions ( балансирование )
amx_ptb switch on // Вкл/выкл перемещение игроков
amx_ptb switchafter 3 // после скольки раундов начнётся перемещение
amx_ptb switchmin 5 // скока игроков должно для смены команды
amx_ptb switchfreq 1 // замены могут быть каждые ( раундов )
amx_ptb playerfreq 7 // игрок может быть перемещен каждые ( раундов )
amx_ptb forceswitch 0 // После скольки попыток принудительная смена команды
amx_ptb deadonly off // вкл/выкл перемещение только мертвых

// messages (good to have on when debugging if you use statsx dont have them on) - ( сообщения )
amx_ptb tellwtj off // Сообщения о WTJ
amx_ptb announce off // Объявления
amx_ptb sayok off // ^"OK^" сообщения
amx_ptb typesay off // HUD сообщения


//team strength limits ( ограничение )
amx_ptb maxstreak 3 // Максимальное количество побед подряд
amx_ptb maxscore 2 // Максимальная разница в очках
amx_ptb minrating 1.5 // Минимальный рейтинг
amx_ptb maxrating 2.0 // Максимальный рейтинг
amx_ptb superrating 3.0 // Сверхвысокий рейтинг
amx_ptb maxincidents 50 // Максимум ошибок игрока перед понижением рейтинга
amx_ptb scaledown 2 // Коэффициент понижения рейтинга
вот кфг)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя fomeN
сообщение 27.3.2014, 12:05
Сообщение #25
Стаж: 12 лет

Сообщений: 233
Благодарностей: 12
Полезность: < 0

Пользуюсь данным плагином
Исходник
/* Copyright © 2008, ConnorMcLeod

Instant AutoTeamBalance is free software;
you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Instant AutoTeamBalance; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/

#include <amxmodx>
#include <cstrike>

#define PLUGIN "Instant AutoTeamBalance"
#define AUTHOR "ConnorMcLeod"
#define VERSION "1.2.0"

#define BALANCE_IMMUNITY ADMIN_BAN

#define MAX_PLAYERS 32

enum {
aTerro,
aCt
}

new bool:g_bImmuned[MAX_PLAYERS+1]

new Float:g_fJoinedTeam[MAX_PLAYERS+1] = {-1.0, ...}

new g_iMaxPlayers
new g_pcvarEnable, g_pcvarImmune, g_pCvarMessage

// true when connected and not a HLTV
new bool:g_bValid[MAX_PLAYERS+1]

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

g_pcvarEnable = register_cvar("iatb_active", "1")
g_pcvarImmune = register_cvar("iatb_admins_immunity", "1")
g_pCvarMessage = register_cvar("iatb_message", "Teams Auto Balanced")

register_logevent("LogEvent_JoinTeam", 3, "1=joined team")

register_event("TextMsg", "Auto_Team_Balance_Next_Round", "a", "1=4", "2&#Auto_Team")

g_iMaxPlayers = get_maxplayers()
}

public LogEvent_JoinTeam()
{
new loguser[80], name[32], id
read_logargv(0, loguser, 79)
parse_loguser(loguser, name, 31)
id = get_user_index(name)

g_fJoinedTeam[id] = get_gametime()
}

public client_authorized(id)
{
g_bImmuned[id] = bool:(get_user_flags(id) & BALANCE_IMMUNITY)
}

public client_putinserver(id)
{
g_bValid[id] = bool:!is_user_hltv(id)
}

public client_disconnect(id)
{
g_bValid[id] = false
}

public Auto_Team_Balance_Next_Round()
{
if(!get_pcvar_num(g_pcvarEnable))
return

if( balance_teams() )
{
new szMessage[128]
get_pcvar_string(g_pCvarMessage, szMessage, charsmax(szMessage))
client_print(0, print_center, szMessage)
}
}

cs_set_user_team_custom(id, CsTeams:iTeam)
{
switch(iTeam)
{
case CS_TEAM_T:
{
if( cs_get_user_defuse(id) )
{
cs_set_user_defuse(id, 0)
// set body to 0 ?
}
}
case CS_TEAM_CT:
{
if( user_has_weapon(id, CSW_C4) )
{
engclient_cmd(id, "drop", "weapon_c4")
}
}
}

cs_set_user_team(id, iTeam)

return 1
}

balance_teams()
{
new aTeams[2][MAX_PLAYERS], aNum[2], id

for(id = 1; id <= g_iMaxPlayers; id++)
{
if(!g_bValid[id])
{
continue
}

switch( cs_get_user_team(id) )
{
case CS_TEAM_T:
{
aTeams[aTerro][aNum[aTerro]++] = id
}
case CS_TEAM_CT:
{
aTeams[aCt][aNum[aCt]++] = id
}
default:
{
continue
}
}
}

new iCheck
new iTimes = aNum[aCt] - aNum[aTerro]

if(iTimes > 0)
{
iCheck = aCt
}
else if(iTimes < 0)
{
iCheck = aTerro
}
else
{
return 0
}

iTimes = abs(iTimes/2)

new bool:bTransfered[MAX_PLAYERS+1],
bool:bAdminsImmune = bool:get_pcvar_num(g_pcvarImmune)

new iLast, iCount
while( iTimes > 0 )
{
iLast = 0
for(new i=0; i <aNum[iCheck]; i++)
{
id = aTeams[iCheck][i]
if( g_bImmuned[id] && bAdminsImmune )
{
continue
}
if(bTransfered[id])
{
continue
}
if(g_fJoinedTeam[id] > g_fJoinedTeam[iLast])
{
iLast = id
}
}

if(!iLast)
{
return 0
}

cs_set_user_team_custom(iLast, iCheck ? CS_TEAM_T : CS_TEAM_CT)

bTransfered[iLast] = true
iCount++
iTimes--
}
return 1
}


сервер не нагружает, баланс в каждом раунде, тоже была проблема что стандартные квары не справляются, они баланс делали как то через раунд иногда через 2, данный плагин делает баланс в каждом раунде!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 27.3.2014, 12:09
Сообщение #26


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

fomeN, не много не в тему...
Ваш плагин занимается просты уравниванием кол-ва игроков в командах.
Плагин обсуждаемый в данной теме балансирует команды не только по кол-ву но и по скилу, уравнивая силу обеих команд.

lLeDoKl, amx_plugins так же предоставьте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gorillaz
сообщение 27.3.2014, 13:09
Сообщение #27


Стаж: 12 лет

Сообщений: 260
Благодарностей: 78
Полезность: 223

Как-то давно заливал сюда полностью русифицированную версию данного плагина (Перевод выполнен в исходнике плагина, т.к. lang файлы плагин не читает ни в одной версии) + выполнен мой подробный перевод CFG файла, т.к. другие переводы мне были во многом не понятны.

Click
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 3 раз
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: