Я пытаюсь построить игру, в которой есть несколько уровней и разные миссии на каждом уровне.
Игра имеет Таблица уровней
levels
--------------
id
description
...
Итакже Таблица миссий
missions
--------------
id
level
description
.....
Каждая миссия имеет части, например, пользователь проходит миссию шаг за шагом по частям, использование может выполнить небольшую часть миссии и выйти из игры.Поэтому мне нужно отслеживать прогресс пользователя.
Таблица частей миссии
mission_parts
-----------------
id
mission_id
description
.....
Я предлагаю, чтобы в игре были следующие таблицы для отслеживания прогресса пользователя
- Пользователь Уровень Прогресс
- Пользователь Миссия Прогресс
- Пользователь Mission_Parts Прогресс
И все время проверяя прогресс пользователя, как только пользователь завершит все части миссии - миссия выполнена, и как только пользователь выполнит все миссии определенного уровня, уровень будет выполнен.
При новом входе в систему этобудет сравнивать таблицы уровней, миссий и частей миссий с теми же таблицами пользователей и возвращать прогресс пользователя на каждом уровне, миссии, части.
Первый вопрос: стоит ли сравнивать таблицы каждый раз, когда пользователь хочетувидеть его прогресс или я должен как-то записывать прогресс пользователя?И второй вопрос - это даже хороший способ хранить и отслеживать прогресс пользователя в такой игре?