rbc.clan
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Последние темы
» ТОПовая техника 10 уровня
Балансировщик 0.8.6 и уровни боёв EmptyЧт Июл 11, 2013 8:23 am автор shrpne

» Nubo-Stat. 0.4.0 (Оленемер)
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 8:21 am автор Warghawk

» Система начисления серебра
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:58 am автор Warghawk

» Система начисления очков опыта
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:56 am автор Warghawk

» Настраиваем графику
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:54 am автор Warghawk

» Игровые кластеры (сервера) WoT
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:52 am автор Warghawk

» Балансировщик 0.8.6 и уровни боёв
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:49 am автор Warghawk

» Терминология
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:43 am автор Warghawk

» Ранги нубомера
Балансировщик 0.8.6 и уровни боёв EmptyСр Июл 10, 2013 7:38 am автор Warghawk

Опрос
Радио онлайн
Самые активные пользователи за месяц
Нет пользователей

Апрель 2024
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930     

Календарь Календарь


Балансировщик 0.8.6 и уровни боёв

Перейти вниз

Балансировщик 0.8.6 и уровни боёв Empty Балансировщик 0.8.6 и уровни боёв

Сообщение автор Warghawk Ср Июл 10, 2013 7:49 am

На основании следующей таблицы можно составить представление о балансном весе любой техники в игре и системе распределения ее по боям:

Балансировщик 0.8.6 и уровни боёв Balance861

Балансировщик подбирает танки в бой следующим образом:
Берётся танк из очереди и определяется его тип и уровень. Например, танк ИС — тяжёлый танк, уровень 7.
Берём СТРОЧКУ 7 — «тяжелые» и смотрим, в какие уровни боёв (СТОЛБЦЫ таблицы) попадает этот танк. В нашем примере это уровни (СТОЛБЦЫ) с 7 по 9.
Рандомно выбирается уровень от 7 до 9 включительно (например, Cool. Потом балансировщик начинает обрабатывать очередь танков, выбирая из них танки, которые могут участвовать в 8-м уровне боёв (8-й столбец) и составляет из них команды.

Тем из Вас, кто хочет узнать более подробную информацию о балансировщике и принципах его работы, рекомендуем прочесть это:

Принципы работы балансировщика

Основа ММО-игры «World of Tanks» — бои двух команд, состоящих из 15 боевых машин каждая. Машины поделены на классы (лёгкие, средние и тяжёлые танки, противотанковые самоходные орудия и самоходная гаубичная артиллерия), каждый класс включает в себя 10 уровней «развития» техники. Чтобы «случайные бои» (основной игровой режим) были интересными для игроков, необходимо выполнение трёх важных условий автоматического подбора танков:

Равенство возможностей боевой техники двух противоборствующих команд;
Разнообразие составов команд;
Непредсказуемость хода боя и его итогов.
Эту задачу и выполняет «балансировщик» — модуль серверной части World of Tanks, который добавляет танки в команду, делает их равными по «силе» и отправляет команды в бой.
Бои в World of Tanks поделены на двенадцать уровней, первые 10 из которых примерно соответствуют уровням боевых машин в деревьях прокачки. Например, тяжёлый танк 4 уровня, в соответствии с вышеприведённой таблицей, может попасть только в бои 4 и 5 уровня. Балансный вес — это скрытый численный параметр, определяющий боевую эффективность каждой машины. Он связан с типом машины, её уровнем и ролью в бою.
Работа балансировщика «случайных боёв» базируется на следующих принципах:

Любая боевая машина может попасть в бои только своего уровня (см. таблицу), за исключением взводов;
Место машины в списке команды определяется её балансным весом;
Составы команд подбираются на основе статистики за прошедшие полчаса;
Суммарный балансный вес двух противоборствующих команд различается не более, чем на 10%, за исключением особых случаев;
Суммарный балансный вес арт-САУ двух противоборствующих команд различается не более, чем на 20%, количество — не более чем на 1;
Чем больше конкретная машина ждёт своей очереди, тем более высоким становится её приоритет, а если ожидание превышает 1 минуту, балансировщик стремится отправить в бой именно её;
Если обе уже собранные команды не удовлетворяют условиям баланса, они расформировываются и набираются заново;
Балансировщик не учитывает:
Национальную принадлежность танка;
Модули танка (орудие, башня, двигатель и т.д.);
Установленное на танк дополнительное оборудование и/или снаряжение;
Уровень прокачки экипажа;
Уровень мастерства игрока.
Балансировщик работает с очередями боевых машин. Каждому уровню и типу боёв соответствует своя очередь, всего очередей 36 (12 уровней боя, 3 различных режима боя). Статистика боёв собирается по каждой из очередей отдельно, причём для арт-САУ собирается своя статистика. На основе собранной статистики для каждого из 15 мест в команде рассчитывается примерный балансный вес и балансировщик подбирает машины в команду, ориентируясь на него.
Рассмотрим работу балансировщика на примере. Был выбран американский тяжёлый танк Т14, отличающийся тем, что он может попадать в бои только 2 уровней — 5 и 6 уровень. Для простоты отключим режимы боёв «Штурм» и «Встречный бой». После нажатия кнопки «В бой» танк Т14 попадает в 2 очереди балансировщика, на последнюю позицию в каждой:

Балансировщик 0.8.6 и уровни боёв Balancer_scheme_01

Так как танк оказался в конце очереди, приоритет на отправку в бой у него низкий. Однако, балансировщик при подборе машин в команду, просматривает очередь на всю длину, поэтому, если в набираемой команде не хватало именно танка с балансным весом, близким к весу Т14, он может сразу оказаться в команде, направляемой в бой. Но может быть придется и подождать. Балансировщик в каждой из очередей, отправив пару команд в бой, тут же начинает набирать следующую пару. Сначала в команды добавляются арт-САУ, в соответствии с правилами из п.5, которые оказываются в командах на местах, балансные веса которых максимально близки весам этих арт-САУ. Затем балансировщик начинает подбор боевых машин на ещё не занятые места. Сначала подбираются танки на места с большим балансным весом, т.е. сначала в команду добавляются «топы» списка. При добавлении взвода в команду балансировщик стремится к тому, чтобы балансные веса всех танков взвода были близки к весам свободных мест команды, при этом приоритет у танка с наибольшим балансным весом.
Балансировщик следит за тем, чтобы суммарные балансные веса обеих команд отличались не более, чем на 10%. Для каждого места в командах очередь просматривается полностью, и из неё выбирается боевая машина, балансный вес которой наиболее близок к балансному весу этого места. Может сложиться такая ситуация (ведь состав очередей на бой непредсказуем), что балансный вес выбранной машины будет заметно отличаться от веса места. В этом случае балансировщик изменяет балансные веса ещё незанятых мест, чтобы скорректировать суммарные веса команд.
Когда пара команд собрана, обе команды проверяются на соответствие текущим условиям баланса, и только если эти условия выполняются, команды отправляются в бой. Иначе команды расформировываются и их набор начинается заново. Может случиться и так, что балансировщик не может завершить подбор боевых машин в команды (например, если в очереди оказалось много однотипных машин, которые не подходят к уже отобранным в команды). В этом случае очередь как бы «засыпает», ожидая изменений (например, кто-то выйдет из неё, так как попал в бой другого типа или уровня, либо кто-то добавится, нажав кнопку «В бой!»). В этот момент очередь «просыпается» и балансировщик пробует доукомплектовать команды снова.
На схеме показано, что Т14 был отобран в команду на бой 5 уровня, формирование которой завершено, и одновременно с этим в команду на бой 6 уровня, формирование которой продолжается. Так как пара команд для боя 5 уровня удовлетворяет текущим условиям баланса, Т14 идёт в бой именно в этой паре:

Балансировщик 0.8.6 и уровни боёв Roster_t14


При этом танк Т14 пропадает из обеих очередей, место, занятое им в команде на бой 6 уровня, освобождается, и балансировщик будет подбирать на это место другую боевую машину. Чем дольше машина игрока находится в очереди, тем более настойчиво балансировщик старается отправить её в бой. При больших сроках ожидания ослабляются критерии отбора. Если отдельный танк или взвод ожидает выхода в бой более 1 минуты, то критерии становятся менее жёсткими, а, начиная со 2 минуты, балансировщик получает разрешение на создание команд неполного состава (но количество боевых машин в командах будет одинаковым). Если же время ожидания машины или взвода в очереди превышает 5 минут, то появляется сообщение, предлагающее выбрать другой танк, и следует переход в ангар.
В World of Tanks, несмотря на огромную популярность во всём мире, иногда бывают ситуации, когда количество игроков онлайн мало. Это происходит в первые минуты появления обновлений игры, на новооткрытых кластерах, а также на серверах открытого тестирования новых версий игры. Балансировщик корректно обрабатывает такие ситуации, хотя подбор команд для каждого из уровней и типов боёв в этих условиях серьёзно затруднён. Но в действие вступает, во-первых, система ослабления критериев отбора (например, разница в балансных весах команды может увеличиться с 10% до 20%), если танк долго ждёт своей очереди выйти в бой, во-вторых, балансировщик сам «подстраивается» под ситуацию, ориентируясь на статистику состава команд за последние полчаса.

Балансировщик «случайных боёв» World of Tanks постоянно совершенствуется, чтобы обеспечивать выполнение трёх принципов, указанных в начале статьи. В настоящий момент ведётся работа над алгоритмом, призванным обеспечить равномерное распределение лёгких танков по командам. В работе изменения алгоритмов подбора команд для режима «Штурм». Но принципы, заложенные в балансировщик изначально, остаются неизменными, обеспечивая как равные сбалансированные команды (+-10%) в подавляющем большинстве боёв, так и неожиданные составы боёв, требующие от игроков нестандартных решений.

* Актуально для патча 0.8.6
** Материал подготовлен по данным портала http://forum.worldoftanks.ru
Warghawk
Warghawk
Warghawk
Warghawk

Сообщения : 19
Дата регистрации : 2013-06-12
Возраст : 37
Откуда : Омск

https://rbc-clan.forum2x2.ru

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения