Совсем не понимаю, зачем балансить игроков по эффективности. Да, все игроки летают по разному. Но введение чрезмерного количества критериев только усложняет работу балансировщика. Не следует множить сущности, там где они не нужны.
А посему, воскурив значительное количество благовоний, было придумано (скопировано, содрано, подсмотрено (нужное подчеркнуть)) следующее предложение по балансировке игроков в боях.
Распределить всех игроков в 5 игровых корзин:
- Корзина 1 - в этой корзине находятся игроки с количеством боев в ПВП от 10 000;
- Корзина 2 - в этой корзине находятся игроки с количеством боев в ПВП от 5 000 до 10 000;
- Корзина 3 - в этой корзине находятся игроки с количеством боев в ПВП от 2 500 до 5 000;
- Корзина 4 - в этой корзине находятся игроки с количеством боев в ПВП от 1 000 до 2 500;
- Корзина 5 - в этой корзине находятся игроки с количеством боев в ПВП до 1 000.
Помимо этого система балансировки предполагает сбор команд игроков исходя из рангов кораблей, которые находятся у них в слотах. Сделав вилку боя ±1 ранг.
Соответственно у нас будет система боев по следующим рангам:
0 ранг - Бои игроков, которые только пришли в игру (до 15 боев в ПВП, эти товарищи играют исключительно между собой, либо против ботов, осваивают игру);
1 ранг - Бои игроков на кораблях 1 и 2 ранга (до 50 боев в ПВП);
2 ранг - Бои игроков на кораблях 1, 2 и 3 ранга;
3 ранг - Бои игроков на кораблях 2, 3 и 4 ранга;
4 ранг - Бои игроков на кораблях 3, 4 и 5 ранга;
…
15 ранг - Бои игроков на кораблях 14 и 15 ранга;
15+ ранг - Бои игроков на корабля только 15 ранга.
Это только начало системы балансировки, теперь перейдем к сути. Как будут формироваться команды?
Допустим имеется боя, 6 ранга. То есть в нем участвуют корабли 5, 6 и 7 рангов. Соответственно балансировщик собирает команду из игроков. Он берет 2 игрока из корзины 1, 2 игрока из корзины 2, двух из корзины 3 и четырех из корзины 4. Таким образом формируется команда из 10 игроков, балансируется она командой, собранной по аналогичному принципу. К сожалению у меня нет цифр статистики распределения по рангам, по этому приходится теоретизировать. Если игроков из которой то корзины недостает, балансировщик добирает из следующей корзины. Соответственно на это дело накладывается фильтр кораблей в слотах. Поскольку бой 6 ранга, у всех игроков должен присутствовать в слоте как минимум 1 корабль 6 ранга, а максимальный ранг в слотах не должен превышать цифру 7.
Таким образом мы имеет сбалансированные по количеству проведенных боев и рангам кораблей команды, без необходимо подкручивать параметры кораблям нижних рангов, так как все они примерно равны по силе.
И последнее, мое сугубо личное мнение, наличие эсминца в слотах являются отдельным критерием для балансировки. Соответственно если в одну из команд попадает игрок на эсминце, во второй команде обязательно должен быть игрок с эсминцем в слоте.
Подводя итоги: Предложенная система имеет 3 основных критерия:
- Ранг боя;
- Количество отыгранных боев в ПВП;
- Ранги кораблей в ангаре.
И два дополнительный критерия:
- наличие в слотах эсминцев;
- наличие звеньев.
P.S. Как вы правильно заметили, в этой системе ничего не говорится о балансировке игроков с количеством боев в ПВП до 1 000. Они (а к ним в настоящее время и я отношусь) играют в отдельной корзине, между собой. То есть для них учитывается только ранг боя и ранг кораблей в в слотах. То есть всего 2 рабочих параметра для балансировки.
P.P.S. Звенья балансируются аналогично эсминцам. То есть если с одной стороны выступает звено (количество боев не важно), с другой стороны также должно присутствовать звено.
P.P.P.S. Будь у меня перед глазами статистика онлайна по рангам, я дал бы более точные цифры и корректное предложение, но это, к сожалению невозможно.
Все остальное только усложняет систему, увеличивает нагрузку на процессорные мощности и замедляет поиск и формирование боя. И да, я знаю, что все игроки играют по разному.