В этом уроке рассказывается, как запрограммировать подземелье. Если вы не программист, вам будет интересно почитать как придумать подземелье.
Несколько вечеров проверял идею генерации космических баз. Космическая база в итоге не получилась, а вот на добротное подземелье результат похож. Поскольку шёл от простого к сложному и никакой суровой магии не делал, то решил переработать код в урок по генерации подземелий на Python.
В итоге у нас получится генератор подземелий со следующими свойствами:
Весь код можно найти на github.
Кода в посте не будет — все используемые подходы легко описываются словами.
Для каждого этапа разработки в репозитории будет создан отдельный тэг, содержащий код на момент завершения этапа.
Задача этого урока не столько научить программировать генераторы подземелий, сколько показать, что кажущиеся сложными вещи на деле довольно просты, если их правильно разбить на подзадачи.
Этот пост я начал писать как часть рецензии на произведения Сюзанны Кларк, но быстро понял что ухожу в сторону от основной темы. Поэтому в рецензии оставил только то, что напрямую касается мира английской магии, а тему проектирования миров подробнее раскрыл тут.
Изначально эссе было опубликовано на DTF, но я решил вернуть его в блог. Изменений не делал, поэтому подача может немного отличаться от обычной для блога.