Как хранить сюжетную линию, если она представляет вот такое дерево:
С чего начать? Как готовить сценарий? Как идти по нему? Нумеровать и сохранять позицию (saved_pos+1)? Как в таком случае обыгрывать переход на какую-то из веток?
Весь список состояний хранить в одной таблице. id, description
Для хранения стрелочек есть варианты. Например:
Таблица переходов from_id, to_id
Как идти
1.Выбираем стартовое состояние:
SELECT * FROM State s
JOIN Transitions t on t.to_id = s.id
WHERE t.from_id is null
2.Выбираем список дальнейших вариантов:
SELECT * FROM State s
JOIN Transitions t on t.to_id = s.id
WHERE t.from_id = :current
3.Повторяем пункт 2, пока не будет выбран вариант с to_id = null
.
Конец.
Виртуальный выделенный сервер (VDS) становится отличным выбором