@Derfirm
Noname Developer.

Как бы вы организовали ачивки игроков, с точки зрения сервера?

Привет.
Возьмём игру, к примеру херстоун и его ачивки.
Как бы выглядела система ачивок и наград к примеру на Питоне?
Первый подход, завести большое количество полей для каждого пользователя и увеличивать их если условия пройдены, по достижению лимита ( к примеру достигнута 3 ступень побед одной фракции) переставать увеличивать это поле, привёл к 30+ полей для каждого пользователя, есть ли подход оптимальнее?
Как пример приведу такие ачивки как "создать N карт", " Серия побед одной расы", "первое распыление", " собрать всех мурлоков"
  • Вопрос задан
  • 331 просмотр
Пригласить эксперта
Ответы на вопрос 2
@dixoNich
frontend developer
Я бы хранил это в отдельной базе "ачивки" с ссылкой на юзера.
Ответ написан
@maxtm
Make money, not job
Однажды реализовал так:
- база моделей ачивок. Модель ачивки содержит имя, и информацию о том, как проверять достижение. Либо данными из сущности (брать некие каунты), либо дергать колбэк, для более сложных расчетов.
- сами ачивки, ссылка на ачивку, ссылка на юзера, дату получения и тп.
Для ваших целей там же можно хранить процент достижения ачивки, та же ачивка, но с флагом "еще не получено"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы