Снова за ротацию карт в сессии
![топ 100 блогов](/media/images/default.jpg)
И тем не менее, вопрос механизма выбора карты для боя раскрыт недостаточно.
Утверждения несколько противоречивы:
- Карта выбирается уже после сбора команд.
- Карты выбираются из доступных простым питоновским рандомом
- Рандом, однако, не совсем простой, он старается не выдавать игроку карту, на которой тот недавно (4-5 боев тому) играл
- Работает механизм серверной оптимизации, старающийся не создавать новых комнат, а выбирать уже существующие в памяти.
Все это требует уточнения:
- как именно вычисляется вероятность выпадения карты в зависимости от того, как давно она выпадала для всех 30 игроков боя?
- влияет ли как-то на шанс выпадения карты факт, что для нее на сервере уже существует комната?
Ответы мы врядли получим: дядя Миша наверняка не знает, а нового стрима с тем же разрабом мы не увидим.
Остается только диванная онанитика.
Цели:
- на большом количестве сессий вычислить коээициент уникальности карт в течение сессии (оттношение уникальных за сессию карт к количеству боев).
- проверить, меняется ли этот коэффициент со временем (в последнее время все больше, на мой взгляд, вайна о том, что карты выпадают одни и те же)
Источник данных:
- архив собственных реплеев за несколько лет (около 12 000 файлов с 2012 по 2015 годы)
Условия выборки:
- сессии более 20 боев (число взято с потолка), таких в архиве около 200
- коэффициент уникальности выше 0.2 (тоже с потолка, но отсеяло сессии в треньках)
Результат:
![Снова за ротацию карт в сессии Снова за ротацию карт в сессии](/images/main/snova-za-rotaciyu-kart-v-sessii-8e9131.jpg?from=http://i.imgur.com/T62UuKt.png)
Выводы:
- средний коэффициент уникальности довольно низкий: 0.63
- несмотря на усиливающийся вайн на графике виден скорее восходящий тренд, то есть уникальность на данной выборке растет со временем
- изломов тренда на таком графике обнаружить возможным не представляется, то есть нельзя определить, есть ли точка во времени, когда принцип выбора карт менялся
Предположения:
- сессия в 20 боев слишком короткая для адекватной оценки коэффициента уникальности; вероятно, стоит месяц-другой по полдня покатать бота на твинке для сбора статистики по длинным сессиям
- даже если 0.6 - реальный коэффициент, я не могу утверждать, что для честного матчмейкера он должен быть большим; очевидно, например, что он не может быть 1
- для более наглядного изображения тренда нужно больше данных; в принципе, их можно собрать у подписчиков коммуночки, но скрипт-сборщик на перле, а для широкой публики нужно что-то попроще
Всем спасибо за внимание.
|
</> |