-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make random task query more friendly to users #520
Comments
Rewrite sql query to make task query more random |
@igor-i |
функция sql Rand часто не однозначно работает. Поэтому я написал штуку, которая выбирает наименее популярный таск для двух игроков. Но проблема в том, что если добавить новый, то он будет всегда выбираться. |
У меня была идея сдлеть отдельны GenServer, который грузит таски и раз в 15 минут перетаыовывает их. И работает как рандомный плейлист. ТОесть по кругу выдает таски по запросу, для каждой сложности свой |
то есть каждые 15 минут создаётся новый рандомный плейлист по каждой сложности и оттуда выдаются последовательно задачи без учёта истории конкретных игроков |
выглядит просто, но возможны ситуации когда будут повторяться у игроков задания |
Ну мжоно не в 15 минут, а как прошел полностью цикл задач для одного уровня сложности. |
Плейлист кажется прикольной идеей |
Можно не делать раз в 15 минут пересборку. А просто делать по истечению плейлиста. Просто List.shuffle |
ага, cool, так и сделаю - построение нового плейлиста не по таймеру, а по исчерпанию всех задач в текущем плейлисте |
Можно сделать один генСервер, который содержит 4 списка, и как только он заканчивается, то перемешивает его заново. Можно для тестов сдлать так, чтобы выбирался рандомный так, если в генсервере пусто |
И надо тесты подумать как написать |
#520 Make random task query more friendly to users
codebattle/services/app/lib/codebattle/game_process/engine/standard.ex
Line 116 in e11edae
The text was updated successfully, but these errors were encountered: