Перейти к содержимому
PPK

[0.5.4.x] Любимая тема - матчмейкер

В этой теме 604 комментария

Рекомендуемые комментарии

Участник
916 публикаций

Поджигайте. Буду читать завтра утром.

 

Первый вопрос - брелки. Вводом виртуального отряда с брелком вы обеспечиваете потенциально любому игроку попадание в дикую боль без всяких +/-2 уровня. А ведь народ просит +/-1. Собственно вопрос - за что ему это?

Выход - запретить в отряде разницу уровней (лучше бы балансного веса), ограничив набор кораблей отряда попаданием в один уровень боев. Т.е. брелок отличается о топа отряда на те самые +/-2. Прямо запретить в клиенте формирование таких отрядов для любого вида боя, кроме командного. Хотите хардкора - в командные бои, там свой балансер.

  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
1 032
Участник
1 382 публикации

 

 

  • Топы:
    • Баланс топов. Топ это или корабль уровень которого равен уровню боя, или корабль максимального уровня в этом классе в этом бою (принять решение). Разница в количестве топов в каждом классе между командами должно быть не более n=0.
  •  

 

 

Вот это переведите пожалуста?

Рассказать о публикации


Ссылка на публикацию
131
[FU-FU]
Старший альфа-тестер
329 публикаций
7 137 боёв

 

  • Разница в количестве представителей каждого класса между командами не более n=1.

 

Поясните пункт. Жирным не выделено, однако в текущем варианте не работает. 

Рассказать о публикации


Ссылка на публикацию
6 731
[-ZOO-]
Старший бета-тестер, Коллекционер
11 602 публикации
30 258 боёв

Антагонистом может быть другой отряд или виртуальный отряд.

 

Вот зиз дас? И я правильно понял что отряд теперь всегда будет балансить отрядом?

Изменено пользователем WarXed

Рассказать о публикации


Ссылка на публикацию
Участник
67 публикаций

Парни, Арканзас не должно балансить в отряды с ДВУМЯ авиками. Понимаю, ПВО убрали, так вам захотелось, но против одного авика ну как-то еще можно играть, но против двоих - это какое-то садо-мазо получается.

Рассказать о публикации


Ссылка на публикацию
Участник
3 066 публикаций

 

Поясните пункт. Жирным не выделено, однако в текущем варианте не работает. 

 

Подтверждаю, не работает, только вчера была пара игр с соотношением эсминцев 3/6 и 4/2.

Также непонятно что значит виртуальный отряд? 3 незнакомых игроков насильно объединят в отряд чтобы составить пару сыгранным ребятам с тимспиком? Если да, то бред - пусть ждут в очереди хоть до бесконечности, как авиководы. Отобъет охоту заодно на 3 десятках рандом нагибать, особенно ночью. 

Изменено пользователем anonym_inhf9pCCgbQm

Рассказать о публикации


Ссылка на публикацию
1 202
[ONB]
Старший бета-тестер
1 749 публикаций
7 568 боёв

  • Боевая группа набирается по "шаблону" - текущее представительство каждого класса на сервере за заданное время. Шаблон ограничивается min/max класса - то есть если 90% кораблей на сервере это авианосцы, то их должно быть в бою 22 штуки, но срабатывает ограничение не более 4 штук.

 

 

Шаблон смотрится только по кораблям данного уровня или кораблям подходящим для уровня боя? Чтоб не было перекосов вида онлайн 90% крейсеров, но на уровне 1 - 100% крейсеров, на уровне 10 - 10% крейсеров.

 

  • Проверка качества: балансный вес команд не должен различаться более чем на n=10%.

 

 

Балансный вес 1.315 на уровень. 10% различия - это 12х10 против 8х10 +  4х9.

 

В целом движение к балансу видно, отряды уже  что-то, но сомневаюсь, что этот шаг уменьшит количество наиболее популярных скриншотов с различием в один-два уровня корабля :)

Рассказать о публикации


Ссылка на публикацию
3 951
[RE]
Участник
1 309 публикаций
8 374 боя

  • Чтобы взять отряд в бой нужно обязательно найти его антогониста (классы и уровни кораблей). Антагонистом может быть другой отряд или виртуальный отряд. Следовательно отряды могут ждать неограниченное количество времени (например отряд с авиком брелком). (WTL класс)
  • Время ожидания боя для WTL классов начинает отсчитываться после нахождения антогониста. (После нахождения пары авику X уровня они не сразу улетают в бой, а могут ждать до n=300 секунд.)
  • При подборе антогонистов стараемся избегать повторений (чтобы не повторялись соперники).

Правильно ли понял, что если брать 2-мя отрядами авик брелок(на 3 уровня младше), то с огромной долей вероятности после длительного ожидания будем попадать каждый раз друг против друга?

Если брать каждый раз авик на 1 уровнь младше, то можно ли будет так каждый раз оказываться в топе/полутопе? не подая в самый низ списка (Потому что авик должен быть того же уровня, но это возможно только если отряд в топе. Ну или если нет таких же извращенцев в рандоме)

 

Изменено пользователем z1ooo

Рассказать о публикации


Ссылка на публикацию
Участник
916 публикаций

 

Зло сразу попал в корень проблемы обхода балансера. И опять же за счет отрядов, что и сейчас есть. Да еще с брелком. Как я и писал выше - брелки зло! (Александр, без обид))))

С брелками только в кб, лично я не хотел бы попасть в виртуальном отряде против реального отряда балансиром такого брелка.

 

Теперь как просили - 'а нафига?' - а нафига не дали пояснение что такое виртуальный отряд? 

Я в какой то теме (может и в этой, но отправленной в архив) использовал примерно такой или точно такой термин, подразумевая необходимость отдельного баланса отрядов зеркальным подбором отряда же по классам кораблей и их уровню внутри отряда, а при невозможности найти такой отряд - подбором из рандома отдельных игроков по соответствию класса и уровня кораблей.

Это бы позволили уравнять команды без натягивания на глобус брелков в отряде. Т.е. чтобы игроки команды не из отряда не попадали бы в невыгодное положение изза кривых отрядов с брелками. При этом мое понимание брелка это корабль минимально возможного уровня для данного уровня боя, куда может попасть отряд по максимальному уровню корабля в отряде. И я предлагал отряды с брелками ниже этого уровня принудительно расформировывать (не давать возможность выйти в бой с предупреждением, что причина в большой разнице между уровнем боев для максимального и минимального уровня кораблей в отряде).

Имеется в виду именно это? 

Рассказать о публикации


Ссылка на публикацию
515
[FGNYA]
Старший бета-тестер
968 публикаций
8 444 боя

 

 

  • Чтобы взять отряд в бой нужно обязательно найти его антогониста (классы и уровни кораблей). Антагонистом может быть другой отряд или виртуальный отряд. Следовательно отряды могут ждать неограниченное количество времени (например отряд с авиком брелком). (WTL класс)

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

При подборе антогонистов стараемся избегать повторений (чтобы не повторялись соперники).

бесконечно долго,ИМХО, можно убрать проверку на класс так как "Разница в количестве представителей каждого класса между командами не более n=1".

Рассказать о публикации


Ссылка на публикацию
Участник
739 публикаций

Под спойлером что-то типа проекта Матчмейкера 2.0

Для тех кому любопытно поучаствовать в разработке.

 

Что должен уметь Матчмейкер 2.0 в моем понимании.

Жирным выделено то, что НЕ умеет 1.0 (текущий).

 

  • Есть максимальное время ожидания боя n=300 секунд одним игроком.
  • Через n=150 секунд может создаваться не полный бой (меньше 24 игроков). Степень неполности начинает линейно расти от 24 игроков к 2 после n=150 секунд ожидания.
  • Классы:
    • Каждый класс имеет ограничения min max количество в бою.
    • Классовые ограничения min max начинают линейно спадать после n=150 секунд, если это разрешено для данного класса.
    • Боевая группа набирается по "шаблону" - текущее представительство каждого класса на сервере за заданное время. Шаблон ограничивается min/max класса - то есть если 90% кораблей на сервере это авианосцы, то их должно быть в бою 22 штуки, но срабатывает ограничение не более 4 штук.
    • Разница в количестве представителей каждого класса между командами не более n=1.
  • Топы:
    • Баланс топов. Топ это или корабль уровень которого равен уровню боя, или корабль максимального уровня в этом классе в этом бою (принять решение). Разница в количестве топов в каждом классе между командами должно быть не более n=0.
  • Авианосцы и отряды:
    • Полностью зеркальный баланс по авианосцам - каждому авианосцу должен быть найден антогонист по уровню (тип и пресет могут различаться). Следовательно авианосцы могут ждать неограниченное количество времени. (WTL класс - classwithout time limit)
    • Количество отрядов в бою не более n=6, разница в количестве отрядов между командами не более n=1.
    • Чтобы взять отряд в бой нужно обязательно найти его антогониста (классы и уровни кораблей). Антагонистом может быть другой отряд или виртуальный отряд. Следовательно отряды могут ждать неограниченное количество времени (например отряд с авиком брелком). (WTL класс)
    • Время ожидания боя для WTL классов начинает отсчитываться после нахождения антогониста. (После нахождения пары авику X уровня они не сразу улетают в бой, а могут ждать до n=300 секунд.)
    • При подборе антогонистов стараемся избегать повторений (чтобы не повторялись соперники).
  • Второй проход:
    • По возможности уравниваем количество игроков в командах (может оказаться ненужным из-за добавления алгоритма балансировки отрядов и топов)
    • По возможности равномерно распределяем нации, не затрагивая вес и классовый состав команд (этот шаг автоматически распределяет и премы)
  • Проверка качества: балансный вес команд не должен различаться более чем на n=10%.

 

Если вам непонятен какой-то пункт - спрашивайте "а нахрена?"

Прежде чем писать свои предложения и критику - убедительная просьба удостовериться, что вам действительно понятно про все пункты "а нахрена".

 

Поджигайте. Буду читать завтра утром.

 

Исходя из стартового топика и поста дополнил бы так: 

Классы:

1)  В режиме "Превосходство", баланс по классу "эсминец" всегда равный по количеству и по суммарному уровню. 

2)  В бой попадают только линкоры +/- 1 уровень. Если линкор нельзя таким образом забалансить, то у команды получившей лишний линкор балансный вес всегда ниже на 5-10%. 

Топы:

Топ - это корабль максимального уровня в бою

Авианосцы и отряды: 

1) Авианосец может быть либо топом, либо он не должен быть единственным кораблем с уровнем -2 от уровня топа.

(Поскольку авики, попадая в бой + 2 жестоко страдают, к тому же ПВО с патчем апнут).  

2) Авианосец не может быть единственным топом в бою.  

3) Если отряд ждет больше, допустим, 3 минут, то можно брать отряд без антагониста в противоположной команде при условии что балансный вес команды с меньшим количеством отрядов всегда больше балансного веса противоположной команды на 5-10%. 

4) Отряд с линкором не может попасть бой пока линкору не найдется антагонист +/- 1 уровень. 

5) Отряд не может состоять из трех кораблей одного класса.(Это защитка от имбовых отрядов на хайлевле).

 

Предложения относятся в первую очередь к хайлевел боям. Возможно в дополнение в песочному матчмейкеру имеет смысл ввести разделение на мид(4-7 уровни) и хайлевел, оставив на миде с отрядами как есть. Хотя, как мне кажется, эти предложения должны работать и на миде. 

P.S. Большое спасибо, именно такого общения с разработчиками давно хотелось. Надеюсь, что оно продолжиться в том же духе. 

 

 

 

Изменено пользователем anonym_ZPzCUiCy2z2m

Рассказать о публикации


Ссылка на публикацию
Участник
916 публикаций

Нет ли противоречия между подбором боевой группы по проценту класса на сервере и необходимости разделить каждый класс на две команды с разницей в 1 корабль? 

Тем более, что при втором прогоне вы не исключаете из данной боевой группы корабль вообще, а только пытаетесь нации уравнять. Т.е. оставляете неравенство классов в командах.

 

Еще. Второй проход... Такое предложение - при включении в состав боевой группы 4х авиков их предлагается делить по нации, но если авиков по нации набралось 3 плюс 1 или все 4 одной нации, может быть делить их по пресетам, чтоб не получилось, что в одной команде оба ударные, а в другой - оба пво. Как то так...

Изменено пользователем anonym_jCxIxAmoDPUJ

Рассказать о публикации


Ссылка на публикацию
Участник
301 публикация

Подброшу дровишек в тему "интеллект балансировщика". Да, скрин смотреть неудобно, но другого нет. Основное: Вайоминг бросило против Тирпица. :izmena: Кливленд брелком притащил с собой Вайоминг и Николаса. Но балансировщик это нисколько не смутило...

shot-16.03.22_20.43.19-0909.jpg

shot-16.03.22_20.43.19-0909.jpg

Рассказать о публикации


Ссылка на публикацию
Участник
916 публикаций

 

Авианосцы и отряды: 

1) Авианосец может быть либо топом, либо его уровень может быть меньше уровня топа не более чем на 1 уровень.(Поскольку авики, попадая в бой + 2 жестоко страдают, к тому же ПВО с патчем апнут).  

2) Авианосец не может быть единственным топом в бою.  

2) Если отряд ждет больше, допустим, 3 минут, то можно брать отряд без антагониста в противоположной команде при условии что балансный вес команды с меньшим количеством отрядов всегда больше балансного веса противоположной команды на 5-10%. 

3) Отряд с линкором не может попасть бой пока линкору не найдется антагонист +/- 1 уровень. 

4) Отряд не может состоять из трех кораблей одного класса.(Это защитка от имбовых отрядов на хайлевле) 

 

Извините, влезу, ибо не согласен. Но по пунктам.

1. Апнут пво или нет, не факт, что это сильно повлияет на авики. Поэтому или для всех кораблей +/-1 или для всех +/-2. Не стоит выделять авики. Как и любой другой класс.

2. Почему? Один топ против всей остальной ровной команды, да еще зеркально отбалансенный не считаю проблемой.

3. Аналогично пункту 1 - или все или никто. Тем более, что предлагается практически зеркальный (кроме нации) баланс отрядов.

4. Аналогично пункту 3 - зеркальный баланс почти решает проблему. Согласен, что отряд со связью имеет преимущество, но при зеркальном балансе не так критично. Ну, по крайней мере лучше, чем сейчас должно стать.

 

Из всего написанного имхо уж сильно усложнить хотите )))

Рассказать о публикации


Ссылка на публикацию
Участник
789 публикаций

Адъ.

Отправил в QA.

 

Давеча уже создавал заявку по данному поводу в саппорт. Ответ был таков:

Описанная Вами проблема известна.

Нашими специалистами ведется работа по ее устранению.

Данная ситуация будет исправлена в одном из последующих обновлений.


 

Рассказать о публикации


Ссылка на публикацию
Участник
739 публикаций

Извините, влезу, ибо не согласен. Но по пунктам.

1. Апнут пво или нет, не факт, что это сильно повлияет на авики. Поэтому или для всех кораблей +/-1 или для всех +/-2. Не стоит выделять авики. Как и любой другой класс.

2. Почему? Один топ против всей остальной ровной команды, да еще зеркально отбалансенный не считаю проблемой.

3. Аналогично пункту 1 - или все или никто. Тем более, что предлагается практически зеркальный (кроме нации) баланс отрядов.

4. Аналогично пункту 3 - зеркальный баланс почти решает проблему. Согласен, что отряд со связью имеет преимущество, но при зеркальном балансе не так критично. Ну, по крайней мере лучше, чем сейчас должно стать.

 

Из всего написанного имхо уж сильно усложнить хотите )))

Там нумерация сбилась, поправил. 

По авикам все просто - они либо страдают при попадании вниз списка, либо перегибают будучи единственным топом. С другими классами, при соблюдении остальных условий настолько сильно этого нет. 

3) Отряд из двух Фусо, например, может ОЧЕНЬ сильно изменить расклад если они будут единственным отрядом в бою. Фокус на противника и привет. Если это десятки, то влияние становится еще сильнее. 

4) Этот пункт убирает противоречие из пункта 2 "Классы"

5)Отряды из трех десяток, например даже тех же Гирингов, не забалансенные отрядом с другой стороны - это в 90% случаев боль и унижение для команды противника.   

 

Предложения по отрядам справедливы в основном для хайлевла. Дополнил. 

Изменено пользователем anonym_ZPzCUiCy2z2m

Рассказать о публикации


Ссылка на публикацию
86
[POFIG]
Бета-тестер, Коллекционер
283 публикации

 

Также непонятно что значит виртуальный отряд? 3 незнакомых игроков насильно объединят в отряд чтобы составить пару сыгранным ребятам с тимспиком? Если да, то бред - пусть ждут в очереди хоть до бесконечности, как авиководы. Отобъет охоту заодно на 3 десятках рандом нагибать, особенно ночью. 

Я понял это точно так же. Если нет примерно равного по силе отряда в команду противника, то уравновешивать отряд набирают рандомных игроков индивидуально против каждого корабля отряда. Да, три игрока со связью организуют загон и отстрел членов виртуального отряда, как мило и интересно. Если предложение "ждать отряд в очереди до бесконечности" не приемлемо, то можно хотя бы рассмотреть добавление индивидуальной опции для игрока "Не балансить против отрядов из 3 человек"? Пусть такая возможность компенсируется также бесконечным ожиданием в очереди.

Про авики. Запретить авикам определять уровень боев. Выше писали, что авики с уровнем -2 страдают сильно. Ничего страшного, дамажку они набьют и при -2. Зато бои, где все классы кроме авиков -1 очень "веселые". Прошу определять уровень боев по ЛК/КР, а АВ добавлять не выше уровнем.

Рассказать о публикации


Ссылка на публикацию
Участник
916 публикаций

 

Предложения по отрядам справедливы в основном для хайлевла. Дополнил. 

 

Согласен, но балансер то у нас общий. В результате слегка поправив хай, мы сильно заровняем мид. Короче, пусть разрабы смотрят. Я б пошел по итерациям: сначала примерно зеркальный баланс отрядов, а если они продолжат гнуть зеркальные но виртуальные отряды - ограничивать как вы предлагаете. Ну а если и это не поможет - жестко прописывать сетап отрядов типа 2 уровня Х плюс 1 уровня Х-1.

Рассказать о публикации


Ссылка на публикацию
Гость
Эта тема закрыта для публикации новых ответов.

×