15

IDDQD, IDKFA и в ад!

Спойлер: если вам о чем-то говорит заголовок, то и дальше, надеюсь, будет понятно.

25 лет назад у меня была мысль - почему бы не сделать автоматическую генерацию лабиринтов для Doom2? Да все как-то время не находилось.

Где-то там эта мысль и лежала до тех пор, пока вновь не появилась в моей голове на днях. Благо, сейчас есть ИИ, которые позволяет реализовать эти задумки с минимальным вмешательством.

Вот тут сразу будет результат:

Рассказ о процессе создания очень специфический и полностью с кодом находится на githab по пути /huppo/Minotaur.

Мне не хотелось бы забивать развлекательный ресурс технической информацией, поэтому расскажу для затравки про основные шаги:

Шаг 1.

Генерация лабиринта в текстовый файл. Лабиринт представляет собой двухмерный массив. Каждое число массива - это информация о клетке и о стенах в лабиринте. У смежных ячеек информация о стене, которая их разделяет - одинаковая, стена либо есть, либо ее нет.

Получается такой текстовый лабиринт:

IDDQD, IDKFA и в ад! Опрос, Doom, Gamedev, Олдскул, Вопрос, Спроси Пикабу, Видео, Длиннопост

Шаг 2.

Генерация wad файла из текстового лабиринта.

ИИ никак не мог справиться с конвертацией лабиринта, путался в стенах. Пришлось ему помочь, но по дороге нужно было создать скрипт, который отображает а какая же все-таки получилась карта:

IDDQD, IDKFA и в ад! Опрос, Doom, Gamedev, Олдскул, Вопрос, Спроси Пикабу, Видео, Длиннопост

Шаг 3.

А собственно все, профит, что мы имеем:

- генерацию нового лабиринта при каждом запуске игры;

- враги и герой каждый раз в новом месте;

- возможность настроить нужно количество нечисти, оружия и патронов.

Лабиринт 8 на 10 можно пробежать за полторы минуты, не пользуясь чит-кодами.

Самое то, чтобы сбросить накопленную злость!

IDDQD, IDKFA и в ад! Опрос, Doom, Gamedev, Олдскул, Вопрос, Спроси Пикабу, Видео, Длиннопост

Будем пробовать?

Буду пробовать?
Всего голосов:

P.S. Выхожу из сумрака