Тьюринг-полные игры: различия между версиями

Материал из Posmotrelisu
Перейти к навигации Перейти к поиску
(Или убирай все примеры модов сразу, или оставляй моды на полноценные компьютеры - Wiremod даёт далеко не только простую логику.)
Строка 1: Строка 1:
{{Вкратце|В игре можно собрать компьютер с нуля.}}
{{Вкратце|В игре можно собрать компьютер с нуля.}}


Полнота по Тьюрингу — способность системы реализовать любую вычислимую функцию, в том числе и саму себя. Обычно термин «полнота по Тьюрингу» применяется к языкам программирования и прочим умным штукенциям.
Полнота по Тьюрингу — способность системы реализовать любую вычислимую функцию, в том числе и [[рекурсия|саму себя]]. Обычно термин «полнота по Тьюрингу» применяется к языкам программирования и прочим умным штукенциям.


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


На самом деле для этого достаточно всего трёх вещей — двоичного сигнала, логического отрицания, и логического сложения либо умножения. Булева логика, что поделать — любую двоичную логическую схему можно свести к сочетанию НЕ и И, либо НЕ и ИЛИ.
На самом деле для этого достаточно всего трёх вещей — двоичного сигнала, логического отрицания, и логического сложения либо умножения. Булева логика, что поделать — любую двоичную логическую схему можно свести к сочетанию НЕ и И, либо НЕ и ИЛИ.
Строка 9: Строка 9:
== Примеры ==
== Примеры ==
{{примеры}}
{{примеры}}
* Кто бы мог подумать, но внезапно... [[Cities: Skylines]]! Вот [https://medium.com/@balidani/cities-skylines-is-turing-complete-e5ccf75d1c3a пруф].
* Кто бы мог подумать, но внезапно… [[Cities: Skylines]]! Вот [https://medium.com/@balidani/cities-skylines-is-turing-complete-e5ccf75d1c3a пруф].
* [[Dwarf Fortress]] — один из первых широко известных примеров. Причём создать свои логические элементы можно 5 разными путями (вода, животные, механика, вагонетки, существа), а ещё можно совмещать. Подробнее [https://dfwk.ru/Computing в тематической вики].
* [[Dwarf Fortress]] — один из первых широко известных примеров. Причём создать свои логические элементы можно 5 разными путями (вода, животные, механика, вагонетки, существа), а ещё можно совмещать. Подробнее [https://dfwk.ru/Computing в тематической вики].
* [[Minecraft]] — также является сабжем. Энтузиасты даже сделали на Майнкрафте сам Майнкрафт.
* [[Minecraft]] — также является сабжем. Энтузиасты даже [[рекурсия|сделали на Майнкрафте сам Майнкрафт]].
* [[Factorio]] — если в примерах выше приходилось изворачиваться, чтобы делать повторители, ячейки памяти и пр., то тут с этим несколько проще. Запилить свой компьютер на комбинаторах? Вперёд.
* [[Factorio]] — если в примерах выше приходилось изворачиваться, чтобы делать повторители, ячейки памяти и пр., то тут с этим несколько проще. Запилить свой компьютер на комбинаторах? Вперёд.
* [[Stationeers]] в игре есть чипы, которые можно программировать на внутреннем языке ассемблера.
* [[Stationeers]] — в игре есть чипы, которые можно программировать на внутреннем языке ассемблера.
* [[Scrap Mechanic]] - так же при помощи очень сильного колдунства и матана можно собрать ЭВМ и тут.
* [[Scrap Mechanic]] — так же при помощи очень сильного колдунства и матана можно собрать ЭВМ и тут.
* [[Terraria]] — в игре имеются элементы двоичной логики, так что можно без проблем собрать калькулятор, и это, если неимоверно сильно запариться, означает что на нём можно и саму Террарию сделать.
* [[Terraria]] — в игре имеются элементы двоичной логики, так что можно без проблем собрать калькулятор, и это, если неимоверно сильно запариться, означает что на нём можно и саму Террарию сделать.
** [[Starbound]] - ситуация аналогичная с Террарией.
** [[Starbound]] — ситуация аналогичная с Террарией.
* Существует игрушка с названием [[Turing Complete]]. Название содержанию соответсвует.
* Существует игрушка с названием [[Turing Complete]]. Название содержанию соответсвует.
* Geometry Dash, а если быть точнее, 2 последних обновления, 2.1 и 2.2. Всё благодаря триггерам, а также блокам столкновения. В том числе имеем воссоздания самой игры, в том числе в 3D (при том, что движок самой игры 2D). Ну а воссозданий других игр и просто мини-игр полным полно.
* Geometry Dash, а если быть точнее, 2 последних обновления, 2.1 и 2.2. Всё благодаря триггерам, а также блокам столкновения. В том числе имеем воссоздания самой игры, в том числе в 3D (при том, что движок самой игры 2D). Ну а воссозданий других игр и просто мини-игр полным полно.

Версия 21:19, 2 сентября 2024

Склифосовский.pngКороче, Склихосовский!
В игре можно собрать компьютер с нуля.

Полнота по Тьюрингу — способность системы реализовать любую вычислимую функцию, в том числе и саму себя. Обычно термин «полнота по Тьюрингу» применяется к языкам программирования и прочим умным штукенциям.

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

На самом деле для этого достаточно всего трёх вещей — двоичного сигнала, логического отрицания, и логического сложения либо умножения. Булева логика, что поделать — любую двоичную логическую схему можно свести к сочетанию НЕ и И, либо НЕ и ИЛИ.

Примеры

Тут помню тут не помню.jpgДа миллион раз же было!
Автор этой статьи уверен, что неоднократно видел примеры этого тропа, но не может вспомнить достаточное их количество. Может быть, вам придёт на ум ещё хотя бы парочка?
  • Кто бы мог подумать, но внезапно… Cities: Skylines! Вот пруф.
  • Dwarf Fortress — один из первых широко известных примеров. Причём создать свои логические элементы можно 5 разными путями (вода, животные, механика, вагонетки, существа), а ещё можно совмещать. Подробнее в тематической вики.
  • Minecraft — также является сабжем. Энтузиасты даже сделали на Майнкрафте сам Майнкрафт.
  • Factorio — если в примерах выше приходилось изворачиваться, чтобы делать повторители, ячейки памяти и пр., то тут с этим несколько проще. Запилить свой компьютер на комбинаторах? Вперёд.
  • Stationeers — в игре есть чипы, которые можно программировать на внутреннем языке ассемблера.
  • Scrap Mechanic — так же при помощи очень сильного колдунства и матана можно собрать ЭВМ и тут.
  • Terraria — в игре имеются элементы двоичной логики, так что можно без проблем собрать калькулятор, и это, если неимоверно сильно запариться, означает что на нём можно и саму Террарию сделать.
    • Starbound — ситуация аналогичная с Террарией.
  • Существует игрушка с названием Turing Complete. Название содержанию соответсвует.
  • Geometry Dash, а если быть точнее, 2 последних обновления, 2.1 и 2.2. Всё благодаря триггерам, а также блокам столкновения. В том числе имеем воссоздания самой игры, в том числе в 3D (при том, что движок самой игры 2D). Ну а воссозданий других игр и просто мини-игр полным полно.
  • Моды на логические элементы для песочниц. Например такие есть для Garry’s Mod — Wiremod на Lua — и Minecraft (с прикрученным фитильком, так как только уменьшают и ускоряют схемы, которые и так можно собрать из краснокамня) — RedPower и его переделки Project:Red, RedLogic и BluePower. Первый также позволяет создавать полноценные программы на языке FORTH, как и его идеологический последователь NedoComputers. А если хочется писать на Lua, то есть ComputerCraft и OpenComputers.
  • OpenTTD — значительно лучше подходящий для статуса первопримера, чем Dwarf Fortress. Логика на блок-участках.
  • Oxygen Not Included.