Деякі тонкощі роботи балансувальника World of Tanks Цікава механіка. Балансувальник World of Tanks.
Але спочатку підкреслимо ще раз те, що вже було сказано в програмі:
В алгоритмах балансувальника закладена можливість збору нестандартних команд. Число боїв таких команд не повинно перевищувати 5% від загальної кількості боїв, проте в конкретній ситуації у конкретного гравця цей відсоток може варіюватися, в повній відповідності з Теорією ймовірностей. Наприклад, якщо ви зіграли 10 боїв поспіль на ІС-3, і в 3 (15%) з цих боїв спостерігали порушення "правила перших 5 місць" (не було рівності машин за рівнем), то це не є помилкою балансувальника і швидше за все в наступних 10 боях не повториться.
Балансувальник прагне привести склади команд у відповідність з поточним станом черзі, тому у випадках, коли склад незвичайний, шаблон набору бойових машин в команду може значно відрізнятися від еталонного (використовуваного відразу після старту серверів). Статистика вже відправлених в бій команд впливає на еталонний шаблон з перших хвилин, і вже через півгодини шаблон відповідає поточному стану черги і "відстежує" зміни в її складі. Наприклад, під час публічного тестування оновлень гри чергу може виявитися заповненої однотипними танками, які учасники тесту беруть в першу чергу, і можна помітити, що в командах все більше і більше цих "популярних" танків, а час очікування бою на них скорочується.
Якщо бойова машина стоїть в черзі на бій більше 1 хвилини, то балансувальник прагне відправити в бій саме її, послаблюючи вимоги до складів команд. Але в бій іде 30 машин (2 команди по 15), і навіть якщо ви чекали менш 1 хвилини, ви все одно можете потрапити в бій, склад команд в якому підібраний саме під такого наполегливого гравця. Ще одна причина появи нестандартних складів - взводи. Якщо взвод зібраний з однотипних машин (наприклад 3 важких танка VII рівня), балансер легко підбере команду такого взводу. А якщо у взводі зібрані дуже різні танки, наприклад важкий 10 рівня і 2 "брелка" 2 рівня? Балансер коректно обробляє і таку ситуацію, однак склад обох команд швидше за все буде незвичайним. Ще один різновид взводів, під які балансувальник може підібрати нестандартні команди - взводи артилерії або легких танков- "розвідників". Ці класи машин в грі балансуються по-своєму, а взводи, зібрані з них, не повинні порушувати правила балансування.
Збираючи команду на бій, балансувальник заповнює незайняті місця в ній, рухаючись від 1 до 15 осередку і пропускаючи вже заповнені. Черга проглядається балансувальник на всю довжину і з неї вибирається чергова машина, балансний вага якої максимально близький до ваги поточної комірки. Однак, якщо ваги все-таки різняться (в черзі не виявилося танка з потрібним вагою), то осередок заповнюється, а балансові ваги осередків, які залишилися незайнятими, коригуються так, щоб не вийти за 10% (20% у разі наявності в черзі гравця, який чекає бою більше 3 хвилин) різниці сумарних ваг команд. Саме цим пояснюються випадки видачі танків "на здачу", коли на 15-му місці в команді виявляється слабкий танк: балансувальник кілька разів коригував балансні ваги осередків, і вага останньої незайнятої виявився мінімально допустимим.
Осередки заповнюються в обох командах синхронно, від 1-ї до 15-ї. "Пересортовування" 30 вже відібраних бойових машин з метою забезпечення рівності складів не проводиться. і якщо в парі команд одна містить групу однотипних машин, а друга - ні, то при дотриманні інших умов балансувальника така пара команд відправиться в бій. При заповненні незайнятих осередків в команді, починаючи з 6-ї, балансер не враховує тип і рівень машини в осередку протилежної команди під тим же номером, тому порівнювати команди "по парам машин" має сенс тільки в перших 5 осередках. Але і в них "рівність пар" не гарантоване, так як для довго очікують у черзі машин це правило відміняється.
Якщо кількість гравців на сервері мало, або в черзі надлишок бойових машин певних типів. той час очікування бою може рости, і в цьому випадку допускаються наступні послаблення в правилах підбору команд:
Можуть створюватися бої, де більше 5 арт-САУ на команду (якщо у будь-якого гравця час очікування в черзі перевищила 3 хвилини);
Можуть формуватися команди неповного складу (7-14 машин), при рівній кількості машин на команду (якщо у будь-якого гравця час очікування в черзі перевищила 3 хвилини);
Легкі танки з підвищеним балансним вагою можуть займати місця важких і середніх танків на топ-позиціях команди;
Може з'явитися помітне нерівність класів техніки і її рівнів, аж до різниці в сумарних балансових вагах команд в кілька очок (рівність дотримується тільки для арт-САУ);
Починаючи з 7 рівня бою на топ-позиції команди може виявитися ПТ-САУ, середній танк або навіть арт-САУ;
Танк взагалі не потрапляє в бій і після закінчення 5 хвилин відправляється назад в ангар.
Все перераховане вище - окремі випадки роботи балансувальника.