Search
Write a publication
Pull to refresh
3
0

Разработчик онлайн-игры БизнесМания

Send message

Перезапуск игрового мира грамотно

Reading time3 min
Views4.7K
Осенью прошлого года я провел очередной перезапуск игрового мира в браузерной экономической онлайн игре. Эту операцию делали и раньше, но этот раз оказался особенно поучительным, что и привело меня к написанию этой статьи.

Зачем


Игровой мир устроен так, что чем дольше он развивается, тем сильнее разница между старыми игроками и новыми. За 2 года разрыв уже может стать драматичным, что снижает интерес к игре, что обеих групп игроков. Зачем развивать компанию с капиталом 100 млн, когда у лидеров уже давно 1 трлн. и больше. Вторая проблема в том, что устанавливается определенный баланс сил, который всех устраивает. А после нескольких попыток его нарушить — игроки постепенно теряют желание что-то менять. Рестарт дает игрокам новые вызовы, позволяет сформировать новые команды, получить новый опыт. Часть игроков теряется (20-30%) однако пробуждаются те игроки, которые не видели интереса в старой конфигурации. Получается ± баланс.
Читать дальше →

Как спасти проект от закрытия, разобравшись с MySQL

Reading time4 min
Views21K
Продолжаю повествование о разработке экономической онлайн игры. В этой части речь пойдет об истории 2016 года, когда во весь рост стал вопрос закрытия проекта.

Отправная точка


По мере развития игры игровых объектов становится все больше и больше, компании растут и обсчитывать игровую ситуацию становится все сложнее и сложнее. Транзакции повисали по таймауту и игровые объекты сохраняли свое состояние с ошибками, что приводило в свою очередь к другим ошибкам. В логах сервера с завидной регулярностью писалось о следующей проблеме: Lock wait timeout exceeded; try restarting transaction.

Google явного решения не давал, общая рекомендация заключалась в прочесывании бизнес-логики.

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

Данная ситуация провоцировало логичное негодование игроков, это приводило к постепенному оттоку игроков и падению выручки.

В общем — ситуацию надо было спасать. Засучив рукава, мы начали с чистого листа искать решение.
Читать дальше →

Три ветки продукта и контроль версий

Reading time3 min
Views7.2K
В 2015 году, разрабатывая браузерную онлайн-игру, мы столкнулись со следующей задачей: сделать второй сервер с другими настройками и механиками игры, а также вести перспективную разработку новой версии игры, в которой будет еще больше изменений, при этом общий каркас у всех версий игры одинаковый. Дело осложняется тем, что игре требуются постоянные обновление и исправления, т.к. игровой процесс идет и останавливать его из-за разработки параллельной версии никак нельзя.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity