Welcome to U.A.C. [O.S.A.]
login / register 
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Программирование или компьютер в ванильном Doom
   Список разделов - Местечко мапперов и моддеров - Программирование или компьютер в ванильном DoomОтветить
АвторСообщение
soldierDude
= Master Corporal =
Next rank: - Sergeant - after 40 points
250

Doom Rate: 1.82

Posts quality: +111
Ссылка на пост №1 Отправлено: 15.05.22 12:17:26
Недавно вышла занятная статья на Хабре про способ реализации машины Тьюринга в Doom:
Ссылка
Суть в том, что можно благодаря примитивным логическим вентилям (or, not, and) и морю свободного времени можно создать даже примитивный процессор.
Принцип схож с куклами вуду, но здесь в роли сигналов выступают бегущие в сторону игрока монстры, активирующие лифты. К сожалению, на выходе "программы" будет такой же временно опускающися лифт, либо дверь или телепортирующийся монстр.
Например, автор создал полусумматор. Это схема, принимающая 2 сигнала - единицы, и выдающая либо 0, либо 1, либо 2, в рамках бинарной логики, разумеется.
Карта с примером
Возможно, кто-то о подобном уже знал, если у вас есть примеры или свои наработки использования, было бы здорово их посмотреть.

Рейтинг сообщения: +2, отметил(и): VladGuardian, JSO x
lafoxxx [B0S]
= 1st Lieutenant =
Next rank: - Captain - after 62 points
2028

Doom Rate: 1.38

Posts quality: +936
Ссылка на пост №2 Отправлено: 15.05.22 14:01:41
Полноценный комп может быть сложно и не нужно, но вот разнообразить геймплей ванильных вадов это бы позволило точно. Вроде кто-то что-то такое делал, но не вспомню, кто.
2 2 4
JSO x
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 106 points
1334

Doom Rate: 2.26

Posts quality: +726
Ссылка на пост №3 Отправлено: 15.05.22 15:46:49
Как мысли совпадают. Буквально два месяца назад придумал (запомнил, но не реализовал), как сделать в Doom полный сумматор на несколько бит. И да, там бы использовались именно что телепортирующиеся монстры и двери/лифты.

Сумматор для меня является универсальным индикатором пригодности игры для создания логических схем -- вот такое вот нетривиальное увлечение для достаточно изученных компьютерных игр. Если удаётся создать стабильные бинарные примитивы или хотя бы их часть, а из них собрать сумматор, значит, в теории, по правилам самой игры законно можно сделать что угодно (на практике почти всегда есть препятствие вроде лимита объектов на уровне).

К примеру, вот скриншот реализации полного однобитного сумматора в игре "The Incredible Machine 2" на мышках, шестернях, шкивах, конвейерах, двигателях и генераторах. Использованы операторы AND, OR и NOT -- и последний из-за ограничений, похожих на описанные в статье в шапке темы, реализован как XOR на единицу:
Скрытый текст:




Если кому интересно, могу записать, как это чудо работает.


Рейтинг сообщения: +1, отметил(и): soldierDude
2 7 1
JSO x
- 2nd Lieutenant -
Next rank: = 2nd Lieutenant = after 106 points
1334

Doom Rate: 2.26

Posts quality: +726
Ссылка на пост №4 Отправлено: 25.07.22 11:09:57
Не так давно появилось видео, в котором человек под ником kgsws обнаружил уязвимость в коде оригинального Doom, связанный с обработкой кодпоинтеров, и на основе него создал несколько тестовых программ. К примеру, запустил Heretic внутри Doom со всеми осоенностями первого — и это ещё не самый неожиданный проект.
.

* * *

Также не могу не поделиться, пусть это и не совсем Doom, вернее даже, совсем не Doom. Однако по теме далеко не обычного портирования.

На StackExchange ещё почти десять лет назад был проведён конкурс, на котором было необходимо создать полнофункциональный тетрис на основе автомата игры "Жизнь". Теоретическое и даже практическое обоснование для этого было, так как существует, к примеру, вот такой мегапримитив на правилах "Жизни", который позволяет эмулировать любые иные правила этой игры и вообще является Тьюринг-полным.

Участниками были созданы полноценные логические вентили и уже на основе них собран процессор для игры в тетрис. Это, к примеру, операторы AND, XOR и OR:


А это — избранный отрывок из Read-Only Memory:

Рейтинг сообщения: 0, отметил(и): soldierDude, FoxPlays
2 7 1
Страница 1 из 1Перейти наверх
   Список разделов - Местечко мапперов и моддеров - Программирование или компьютер в ванильном Doom