Создаем аналитку квестов для онлайн игры. Типичные проблемы.
Сейчас у меня в разработке система администрирования онлайн игры. Текущая задача — создать аналитику игровых квестов. Кароч нужна простая функция в одну кнопку, которая скажет сколько игроков взяли данный квест, и сколько его прошли.
Казалось бы простая штука, но пришлось переписать структуру сейвов игроков, и api. В одиночных играх, когда вы нажали «Сохранить» просто перезаписывается файл вашего профиля, и разумеется шифруется. Но в онлайн играх такое не пройдет, быстро найдутся умники которые всё взломают и начитирят себя лям бабла. Именно по этому данные игроков хранятся на сервере.
Хранение на сервере тоже бывает разное. Майнкрафт сервер например создает файлы для игроков прям в своей папке. Другие игры могут иметь локальную базу данных. Для xcode(эйпл) обычно юзают SQLite, на java тоже свои варианты есть. Но в текущем проекте база MySQL на отдельном сервере, то есть игра имеет два сервера. Из этого вытекает как много проблем, так и много удобных фич. Одна из проблем в том, что если нужно поменять структуру БД, следом придется менять api (способ связи двух серваков).