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

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

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

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

2 страниц V   1 2

Optimize Teams 1.6 fix 1

, Балансировка команд
Статус пользователя tenb63rus
сообщение 1.3.2015, 12:29
Сообщение #1


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Optimize Teams v1.6 fix 1
by Burberry

Описание:
Этот плагин предназначен для балансировки команд, поддерживается работа с CSDM и другими подобиями этого мода. Это единственный плагин, который поддерживает два разных мода и имеет множество гибких и детальных настроек, которые позволяют подобрать оптимальные значения параметров для балансировки игроков любого сервера. Для просмотра всех возможных настроек откройте файл opteams.cfg.
Во время балансировки следующий за лидером игрок переводится в противоположную команду, а на его место возвращается слабый игрок из проигрывающей команды. Всем игрокам показывается DHUD сообщение с именами тех, кто был переведен и кто встал на место сильного игрока.

PUBLIC режим:
Каждые N раундов плагин проверяет на сколько одна из команд превосходит другую по очкам и в случае, если разница составляет N или более очков, то выполняется балансировка.

CSDM режим:
Плагин определяет общую разницу во фрагах между командами в процентном соотношении, если разница составляет N или более заданного параметра, то выполняется балансировка.

Учтенные нюансы:
Сильный игрок заменяется слабым, что делает балансировку более гладкой.
Лидер определяется путем подсчета реальных фрагов, а не просто взятых с таблицы счета.
Именно следующий за лидером игрок для перевода, а не сам лидер выбирается для того, чтобы не сильно "расшатать" баланс команд.
Возможность несколько раз переводить одних и тех же игроков по истечению определенного кол-ва времени, что в свою очередь позволяет избежать некоторых проблем при неустойчивом балансе. Чтобы исключить частые переводы игрока, значение регулируется в настройках плагина и имеет оптимальное значение по-умолчанию.
Поддерживается работа с CSDM модом и остальными режимами игры без раундов.
Имеется возможность не применять балансировку при онлайне ниже N человек.
В качестве разницы во фрагах между командами указывается процентное соотношение, что делает балансировку более гибкой при игре с любым количеством человек.
Сброс фрагов игроков при рестарте и старте игры.
У администраторов есть иммунитет от балансировки.

Настройки:
Поместите файл opteams.cfg из архива в директорию addons/amxmodx/configs и приступите к настройкам.
Содержание конфига:
Код
; Внимание! Квары с приставкой "csdm" работают только при положительном значении opteams_csdm.

; Используется ли мод CSDM на сервере или его подобия (игра без раундов)
; Все значения отличные от нуля включают балансировку в режиме CSDM.

opteams_csdm "0"


; Если одна из команд в процентном соотношении превосходит другую с разницей в указанное здесь число - выполняется баланс.
; Внимание! Значение указывается именно в процентном соотношении. К примеру, разница между общей суммой фрагов команд при 100 у КТ и 50 у Т составляет 50%. Это значит, что одна команда превосходит другую на 50% фрагов, где за 100% взято общее кол-во фрагов сильной команды.
; Значение по умолчанию: 30

opteams_csdm_limitpercent "30"


; Максимальное процентное соотношение, при котором сильный игрок будет заменяться слабым - будет происходить обмен игроками между командами.
; К примеру, если разница во фрагах значительна - более указанного здесь значения, то для восстановления баланса мы НЕ будем отдавать слабого игрока в сильную команду, а лишь заберем себе сильного.
; Чтобы полностью запретить перевод слабого игрока значение нужно выставить в "0", а если Вы хотите всегда совершать обмен, то установите значение равным квару opteams_csdm_limitpercent.
; Значение по-умолчанию: 40

opteams_csdm_exchangepercent "40"


; При положительном значении помеченный игрок переводится немедленно, иначе - после смерти.
; Значение по умолчанию: 1

opteams_csdm_inst "1"


; Как часто выполняются проверки баланса.
; Значение указывается в минутах, возможна подстановка дробного значения, к примеру для проверок каждые 100 секунд, необходимо указать 1.4
; Значение по умолчанию: 3

opteams_csdm_checktimer "3"

; В течении какого количества времени у игрока будет иммунитет от смены команды после последнего перевода.
; Значение указывается в минутах, возможна подстановка дробного значения.
; Значение по умолчанию: 10

opteams_transfer_freq "10"


; При онлайне не ниже какого количества человек работает балансировка. К примеру, если значение выставлено в 10, то при онлайне в 9 игроков балансировка применяться не будет.
; Значение по умолчанию: 10

opteams_balance_online "10"


; Квары ниже работают только при раундовом режиме игры.

; При разнице во сколько очков между командами выполняется баланс.
; Значение по умолчанию: 5

opteams_balance_limit "5"


; Максимальная разница в очках между командами, при котором сильный игрок будет заменяться слабым - будет происходить обмен игроками между командами.
; К примеру, если разница по очкам значительна - более указанного здесь значения, то для восстановления баланса мы НЕ будем отдавать слабого игрока в сильную команду, а лишь заберем себе сильного.
; Чтобы полностью запретить перевод слабого игрока значение нужно выставить в "0", а если Вы хотите всегда совершать обмен, то установите значение равным квару opteams_balance_limit.
; Значение по-умолчанию: 15

opteams_balance_exchangelimit "15"


; Частота проверок баланса, указывается интервал равный количеству раундов.
; Значение по умолчанию: 2

opteams_wait_rounds "2"
Список изменений:
Версия 1.6fix1:
Подправлена проверка квара exchange.
---------------------------------------------------------------
Версия 1.6:
Добавлена возможность компенсировать сильного игрока слабым, в качестве настройки данной функции имеется возможность указать %-ое соотношение при котором будет производиться обмен. Прочие небольшие исправления и доработки.
---------------------------------------------------------------
Версия 1.5:
Изменена формула расчета соотношения фрагов для CSDM, добавлен сброс фрагов при рестарте и старте игры, чат-оповещение заменено на DHUD.
---------------------------------------------------------------
Версия 1.4:
Время иммунитета игрока от переводов теперь указывается в качестве реального времени, а не в кол-ве смертей, как это было раньше, квар одинаков для обоих режимов игры. То же самое изменение коснулось и интервалов проверок баланса в режиме CSDM, теперь, указывается значение в минутах. Далее, был изменен алгоритм вычисления разницы во фрагах в режиме CSDM, теперь, указывается процентное соотношение фрагов с которой одна команда преобладает над другой. Исправлены некоторые ошибки. Названия некоторых кваров потерпели изменения, ознакомьтесь с новым синтаксисом в содержании конфига.
---------------------------------------------------------------
Версия 1.3:
Добавлена поддержка CSDM мода, файл настроек (больше не нужно пере-компилировать плагин для изменения настроек), а так же добавлен квар, регулирующий при каком онлайне начинает работать балансировка.
---------------------------------------------------------------
Версия 1.2:
Добавлена возможность несколько раз переводить одних и тех же игроков по истечению определенного кол-ва раундов, что позволяет избежать некоторых проблем при неустойчивом балансе.
---------------------------------------------------------------
Версия 1.1:
Исправлены ошибки, убран не нужный код.


Скачать: Прикрепленный файл  OptimizeTeams.zip ( 9,11 килобайт ) Кол-во скачиваний: 154


Источник:
amx-x.ru

Отредактировал: Bloo, - 9.4.2015, 18:39
Причина: Обновление описания и плагина
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 5 раз
   Цитировать сообщение
XyLiGaN
сообщение 1.3.2015, 12:36
Сообщение #2
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

tenb63rus, Так не интересно, если я буду и там и там тащить, то меня будет швырять между командами туда-сюда?! Как-то не ок :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя tenb63rus
сообщение 1.3.2015, 12:38
Сообщение #3


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Цитата(XyLiGaN @ 1.3.2015, 13:36) *
tenb63rus, Так не интересно, если я буду и там и там тащить, то меня будет швырять между командами туда-сюда?! Как-то не ок :)

"Каждого игрока плагин переводит максимум один раз, это значит, что игрок не будет прыгать с команды в команду"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 1.3.2015, 12:39
Сообщение #4
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

tenb63rus, хд, а если всех игроков повереводит, что тогда?)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя tenb63rus
сообщение 1.3.2015, 12:41
Сообщение #5


Стаж: 12 лет

Сообщений: 817
Благодарностей: 476
Полезность: 850

Цитата(XyLiGaN @ 1.3.2015, 13:39) *
tenb63rus, хд, а если всех игроков повереводит, что тогда?)

Еще сам не успел посмотреть как он на практике функционирует. И если что: не нужно мне высказывать замечания, не я ведь автор все-таки thank_you2.gif

Отредактировал: tenb63rus, - 1.3.2015, 12:42
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 1.3.2015, 12:48
Сообщение #6
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

tenb63rus, Не, ну если ты выложил плагин, то ты должен хотя бы знать как он работает, ты написал о нюансах, но видимо не о всех)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Rotterdam
сообщение 1.3.2015, 12:57
Сообщение #7
Стаж: 11 лет

Сообщений: 412
Благодарности: выкл.

Цитата(XyLiGaN @ 1.3.2015, 13:39) *
tenb63rus, хд, а если всех игроков повереводит, что тогда?)

Тогда ты играешь на de_aztec за ментов и ловишь батхерт от того, что не дают настрелять фрагов)
Сильные игроки любят заходить за команду с большими шансами, в итоге 1 команда рвёт 2 со счётом 12-4.
Тут я вижу 2 выхода:
1)Ставить только балансные карты. никаких ацтек/италия/ратс и любых, где шанс победы любой их команд превышает 55%.
2)Ставить балансер по скилу. Этот довольно мягкий. У меня 2 года стоял PTB, а он суровый.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Naiteki
сообщение 9.4.2015, 18:21
Сообщение #8


Стаж: 12 лет

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

opteams_wait_rounds "1"

Плохая балансировка команд. Два раунда играли 3vs7...


Отредактировал: Naiteki, - 9.4.2015, 18:23
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gudaus
сообщение 9.4.2015, 18:28
Сообщение #9


Стаж: 14 лет

Сообщений: 1571
Благодарностей: 1211
Полезность: 741

Идёшь сюда, качаешь последнюю версию. В server.cfg
Код
mp_limitteams 1
mp_autoteambalance 1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 9.4.2015, 18:36
Сообщение #10


Стаж: 12 лет

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

i
Уведомление:
Обновил первый пост и прикрепленный плагин
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Naiteki
сообщение 11.4.2015, 20:24
Сообщение #11


Стаж: 12 лет

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

Как сделать чтобы игрока просто перекинули (без убийства в конце раунда)?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя VkriterT
сообщение 5.5.2015, 18:41
Сообщение #12


Стаж: 14 лет
Город: МосквА

Сообщений: 2172
Благодарностей: 1045
Полезность: 796

Цитата(Naiteki @ 11.4.2015, 21:24) *
Как сделать чтобы игрока просто перекинули (без убийства в конце раунда)?


И как сделать что бы перекидывало топовых игроков а не таких же нубов.


тик так тик так, слышишь как уходит твоя жизнь
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gudaus
сообщение 15.5.2015, 18:14
Сообщение #13


Стаж: 14 лет

Сообщений: 1571
Благодарностей: 1211
Полезность: 741

Итак, по плагину:
1) Плагин перекидывает не самого сильного, а второго по силе. Зачем - хз, я себе это условие убрал.
2)Плагин не предназначен для работы на очень мелких картач типа пулдэй или $2000$.
3)Плагин не предназначен для работы в течении ночного времени, игре при малом mp_roundtime и большом mp_timelimit.
Пункты 2,3 лечатся добавлением условия winLast. winLast - соотношение побед и поражений команд между прошлым и текущим балансами. То есть:
Перекинули игрока. Считаем победы тт и кт. На следующей попытке баланса:
Если проигрывающая сторона берёт 75% и выше(или другое соотношение), то пропуск баланса. Иначе делаем баланс.
Есть предложение всем заинтересованным - давайте пойдём сюда и напишем об этом автору плагина. Тут писать без толку, а одному мне там стрёмно.

Отредактировал: gudaus, - 15.5.2015, 18:17
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 15.5.2015, 18:17
Сообщение #14
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

gudaus, текст дашь - могу запостить. Ну а дальше сам продолжишь с автором.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя gudaus
сообщение 15.5.2015, 18:21
Сообщение #15


Стаж: 14 лет

Сообщений: 1571
Благодарностей: 1211
Полезность: 741

Пример: счёт ТТ 10 КТ 3. Условие: баланс1 раз в 4 раунда при разнице в 3 очка. За КТ перекинуло игрока. КТ взяли 3 раунда из 4. Счёт стал ТТ 11 КТ 6. По балансу надо снова перекидывать, что дальше ломает баланс. А по моему предложению перекидывать не надо.

Safety1st, да я сам напишу) Просто я нонейм, и если никто не поддержит, то автор заморачиваться не станет)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 15.5.2015, 18:22
Сообщение #16
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Ну, так я-то не ноунейм там smile.gif
Ну, как знаешь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gudaus
сообщение 15.5.2015, 18:26
Сообщение #17


Стаж: 14 лет

Сообщений: 1571
Благодарностей: 1211
Полезность: 741

Safety1st, если ты выскажешься, буду рад. Независимо от того, поддержишь или нет. Сижу, пишу там пост, пытаюсь мысль внятно сформулировать. У меня с этим бывают проблемы, да)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 15.5.2015, 18:31
Сообщение #18
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Не выскажусь, не до этого мне. Если ты хочешь привлечь внимание автора - я могу это устроить. Мне только текст нужен.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя gudaus
сообщение 15.5.2015, 18:40
Сообщение #19


Стаж: 14 лет

Сообщений: 1571
Благодарностей: 1211
Полезность: 741

Safety1st, извини, но не стоит) По крайней мере не сейчас, не хочу пользоваться твоим авторитетом там в личных целях. Нехорошо это будет.
P.S. кому интересно - пишите там свои идеи. Очень хорошая замена PTB в плане нагрузки.

Отредактировал: gudaus, - 15.5.2015, 18:41
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Safety1st
сообщение 15.5.2015, 18:49
Сообщение #20
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Эт зря. Твои личные цели совпадают с целями автора - улучшить плагин. А привлечь внимание - это мелочь, реально. Об одолжении речь не идёт. Багрепорты - ценная вещь для автора.

В случае OT я принял решение подождать, пока без меня допилят smile.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: