Итак, я думал о создании простого генератора случайных миров.Этот генератор будет создавать начальную «ячейку», которая будет иметь от одного до четырех случайных выходов (в кардинальных направлениях, что-то вроде лабиринта).После определения этих выходов я генерировал бы новую случайную «ячейку» на каждом из этих выходов и повторял всякий раз, когда игрок приближался к той части мира, которая еще не была создана.Эта концепция позволила бы создать «бесконечный» мир, созданный случайным образом;Тем не менее, я не уверен, как лучше представить это внутренне.
Я использую C ++ (что на самом деле не имеет значения, я мог бы реализовать любую необходимую структуру данных).Сначала я подумал об использовании своего рода ориентированного графа, в котором каждый узел направлял бы ребра к каждой ячейке, окружающей его, но это, вероятно, не сработает, если пользователь найдет место в мире, вернется назад и вернется к этому.пятно с другого направления.Мир может совершать странные вещи, например генерировать две ячейки в одном месте.
Есть идеи о том, какая структура данных может быть наиболее эффективной в такой ситуации?Или я делаю что-то действительно глупое с моим случайным поколением мира?
Любая помощь будет принята с благодарностью.Спасибо, Крис