Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Меню сайта
Поиск
Категории раздела
Мои статьи [12]
Полезные ссылки
  • Разные фишки

  • Танковая Вики

  • Танкистодор

  • Ваша статистика

  • Статистика игрока

  • Эффективность игрока

  • Калькулятор КПД

  • Рейтинги Бронесайта

  • Статистика клана

  • Сравнение кланов

  • Сравнение танков

  • Рейтинги и статистика

  • Официальные ссылки




    Друзья сайта
    https://interesnoevmireikt.blogspot.com

    Игры для ПК

    http://zarobotayvnete.at.ua

    http://antivirkeys.3dn.ru/

    http://svarozhich.at.ua/

    http://leontyev.at.ua/publ/

    //rumba.ucoz.ru
    Совушка баннер
    Отлично сказано!
    Аквариум
    Отправить СМС
    IP посетителя
    Главная » Статьи » Мои статьи

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

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

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

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

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

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

    • Равенство возможностей боевой техники двух противоборствующих команд;
    • Разнообразие составов команд;
    • Непредсказуемость хода боя и его итогов.

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

    Работа балансировщика «случайных боёв» базируется на следующих принципах:

    1. Любая боевая машина может попасть в бои только своего уровня (см. таблицу), за исключением взводов;
    2. Место машины в списке команды определяется её балансным весом;
    3. Составы команд подбираются на основе статистики за прошедшие полчаса;
    4. Суммарный балансный вес двух противоборствующих команд различается не более, чем на 10%, за исключением особых случаев;
    5. Суммарный балансный вес арт-САУ двух противоборствующих команд различается не более, чем на 20%, количество — не более чем на 1;
    6. Чем больше конкретная машина ждёт своей очереди, тем более высоким становится её приоритет, а если ожидание превышает 1 минуту, балансировщик стремится отправить в бой именно её;
    7. Если обе уже собранные команды не удовлетворяют условиям баланса, они расформировываются и набираются заново;
    8. Балансировщик не учитывает:
    • Национальную принадлежность танка;
    • Модули танка (орудие, башня, двигатель и т.д.);
    • Установленное на танк дополнительное оборудование и/или снаряжение;
    • Уровень прокачки экипажа;
    • Уровень мастерства игрока.

    Балансировщик работает с очередями боевых машин. Каждому уровню и типу боёв соответствует своя очередь, всего очередей 36 (12 уровней боя, 3 различных режима боя). Статистика боёв собирается по каждой из очередей отдельно, причём для арт-САУ собирается своя статистика. На основе собранной статистики для каждого из 15 мест в команде рассчитывается примерный балансный вес и балансировщик подбирает машины в команду, ориентируясь на него.

    Рассмотрим работу балансировщика на примере. Был выбран американский тяжёлый танк Т14, отличающийся тем, что он может попадать в бои только 2 уровней — 5 и 6 уровень. Для простоты отключим режимы боёв «Штурм» и «Встречный бой». После нажатия кнопки «В бой» танк Т14 попадает в 2 очереди балансировщика, на последнюю позицию в каждой:

    Так как танк оказался в конце очереди, приоритет на отправку в бой у него низкий. Однако, балансировщик при подборе машин в команду, просматривает очередь на всю длину, поэтому, если в набираемой команде не хватало именно танка с балансным весом, близким к весу Т14, он может сразу оказаться в команде, направляемой в бой. Но может быть придется и подождать. Балансировщик в каждой из очередей, отправив пару команд в бой, тут же начинает набирать следующую пару. Сначала в команды добавляются арт-САУ, в соответствии с правилами из п.5, которые оказываются в командах на местах, балансные веса которых максимально близки весам этих арт-САУ. Затем балансировщик начинает подбор боевых машин на ещё не занятые места. Сначала подбираются танки на места с большим балансным весом, т.е. сначала в команду добавляются «топы» списка. При добавлении взвода в команду балансировщик стремится к тому, чтобы балансные веса всех танков взвода были близки к весам свободных мест команды, при этом приоритет у танка с наибольшим балансным весом.

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

    На схеме показано, что Т14 был отобран в команду на бой 5 уровня, формирование которой завершено, и одновременно с этим в команду на бой 6 уровня, формирование которой продолжается. Так как пара команд для боя 5 уровня удовлетворяет текущим условиям баланса, Т14 идёт в бой именно в этой паре:

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

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

    Ниже находится видео, в котором подробно описывается принцип работы игрового балансировщика World of Tanks.

    ** Материал подготовлен по данным портала http://forum.worldoftanks.ru

    Категория: Мои статьи | Добавил: Rodovich (02.05.2014)
    Просмотров: 761 | Рейтинг: 5.0/1
    Всего комментариев: 0
    Имя *:
    Email *:
    Код *:
    Форма входа
    Часы
    Календарь
    Наш Яндекс кошелек
    410012772245747
    Реклама
    Наш опрос
    Нужен ли нам устав?
    Всего ответов: 44
    Это интересно
    Добавить объявление

    Посмотреть все объявления Раскрутка сайта
    Скорость Интернета
    Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Copyright ZOPF © 2024
    Конструктор сайтов - uCoz