С одной стороны, эту тему я немного продумал, получается топчик. Даже совсем детский пример "сделать игру три-в-ряд" на моём hott-движке, вот как можно подходить к проектированию, навскидку:
-- в архитектурном плане это State Machine (n-мерный тор) на основе гомотопий с поддержкой обмена сообщениями (гомотопии на поверхности тора описывают переходы между состояниями);
-- доска (GridState, состояние сетки 8x8) -- точка в пространстве, переходы между которыми моделируются гомотопическими путями (ходами игрока);
-- спецэффекты(например, удаление всех элементов одного типа) моделируем высшими индуктивными типами (базовые точки как активация бонуса, и пути, влияющие на GridState);
-- комбинации из 3+ одинаковых элементов в рядах/столбцах -- гомотопический инвариант (группа), автоматическая трассировка для обнаружения эквивалентных конфигураций;
-- подсчёт очков -- дискретная точка без внутренней структуры (TruncationLevel.0). Принцип унивалентности позволяет легко и просто менять эквивалентные сценарии (например, разные комбинации с одинаковой стоимостью);
-- завершение игры -- когда все возможные ходы стягиваются в одну точку, исключающую дальнейшие переходы (UniverseLevel.-1).
...только тут есть малюсенький крохотный нюанс, что для этого мыслить надо, хорошо погрузившись в хотт, для чего пройти соответствующие курсы конечно будет недостаточно — но чтобы просто их пройти надо добраться где-то примерно до аспирантского уровня...
мы со святым Робертом Милнером (автор LCF, ML-языки, пи-исчисление...) визуально стали почти неотличимы, и это радует :)
смиренно преклоняюсь к трудам гуру как к его стопам 🙏
Post #1809
709

- 🤓 34
- 👍 13
- 🤯 6
- 👏 5
- 🤔 3