Помните, что это не типичные проблемы архитектуры программного обеспечения, которые намеревается решить обычный «шаблон проектирования» - это проблемы разработки игры, т.е. набор требований для конечного программного обеспечения. Таким образом, типичные шаблоны программного обеспечения на самом деле не применяются. И по этой причине на самом деле не существует программных шаблонов для того типа, который вы описываете, потому что в большинстве случаев не существует согласованного набора спецификаций и требований для нескольких игр. Эти функции обычно сильно зависят от дизайна игры, и оттуда следует структура программы. Есть, конечно, примеры, приведенные в различных книгах - например. серия игр Game Programming Gems настоятельно рекомендуется, но они являются лишь отправной точкой, которую вы должны настроить в соответствии со своими требованиями.
например. Квесты - Могут ли они повторяться? Может ли квест быть «проваленным» или он остается незавершенным? Они содержат несколько этапов? Существуют ли критерии, которые должны быть выполнены, прежде чем квест может быть предложен? Есть ли журнал, который нуждается в обновлении? Есть ли автоматическое вознаграждение в конце? Каковы условия для завершения, и как и когда они проверяются? Определенные события вызваны принятием квеста или его завершением? Есть ли представление о прогрессе игрока в квесте? Некоторые квесты обязательны? Заказаны ли квесты каким-то образом? Все это будет сильно отличаться от игры к игре, в зависимости от дизайна.
Теперь, есть несколько методов и подходов, которые программисты игр используют довольно часто, например. встраивание языка сценариев, пространственных баз данных с использованием двумерного хеширования или разбиения, конечных автоматов и т. д., но на самом деле это всего лишь общие инструменты, которые довольно хорошо сопоставляются с проблемами, с которыми сталкиваются разработчики игр.