Всё дело в том, что A* в момент поиска пути одновременно прокладывает сразу множество дорожек и одна и та же клетка в одном случае может использоваться в качестве обычного прохода, а в другом — в качестве лестницы. И если добавить тайлы, которые больше одной базовой клетки, то это помешает прокладывать остальные пути. В результате правильный путь может быть не найден, потому что лестница займёт нужное пространство. Если же игнорировать лестницы, то тайлы будут накладываться друг на друга.
Мне кажется, что именно такие статьи и спасут DTF. Спасибо автору за ссылку на гитхаб.
Спасибо за Gamedev👍
Такое себе)
Это смотрелось нормально в 80х в рог лайках, но в современном мире такие лабиринты это если говорить честно - это отстой.
Впрочем такой алгоритм после доработки напильником может использоваться как система генерации естественных пещер, но если нужны именно "рукотворные подземелья" логика их создания должна быть иной . У рукотворных подземелей должна быть четкая геометрическая логика - склады, лесницы, залы, хранилища.
И затем уже нужно действовать наоборот: Добавлять завалы, дыры между уровнями и прочие "естественные разрушения"
Ну так в статье разбираются прям основы основы, говорить о них как об игре не правильно.
Многое зависит от геймплея. В Gunfire Reborn тоже генерятся ветвистые лабиринты, но большинство ходов искусственно перекрываются, причём в некоторых биомах перекрытие полупрозрачное (типа энергетического экрана, что ли, по визуалу), что добавляет ощущение большого мира, не усложняя при этом движение по уровню.
Еще можно припомнить пример (конкретных игр не назову, забыл) когда часть перекрытых ранее ходов может быть откупорена результатом определённого события, которое возвращает игрока на уже пройденную местность (на которой игрок уже успел сориентироваться и привыкнуть к ней) - игра так предлагает перепройти эту местность другими путями и найти спрятанные там ништяки.
В принципе достаточно генерировать симметрию, а в некоторых местах по random(0,1) делать тупики, завалы, дыры и т.д.