Год назад я задумался о симуляторах компьютеров. Вспомнил не просто о симуляторе сборки, как с оружием в world of guns, а именно игра с программируемыми (но не всегда) вычислительными машинами. Заметил их частую реализацию в виде модификаций к другим играм песочницам, выходящие в конце 00х - начале 10х.
Для Garry`s mod есть следующий аддроны:
Wiremod добавляющий программируемые микроконтроллеры на скриптовом языке Expression 2 и другие компоненты (спикеры, триггеры и т.д). Как пример, AlexALX из этих элементов собрал ПК с биос, файловой системой и загрузочным диском, аля псевдографический DOS.
Были разные перерождения gTerminal. Изначально аддон добавлял терминалы, позволящие писать текстовые файлы, подключатся к виртуальным сетям и отправлять сообщения другим терминалам. Позже появилась модификация gTASM, добавляющий интерпретатор языка программирования, который позже стал похож на ассемблер. Тогда терминалы стали полными по Тьюрингу, и обзавились прослойкой с Wiremod. А ещё время спустя, появился gTerminal Universal. Он позволял программировать на том же языке, что и сам аддон - на Lua. При этом код мог взаимодействовать с самой игрой. Грубо говоря, можно было писать аддоны прямо в игре, так как интерпретатор терминала никак не был изолирован от самой игры. На данный моментЯ немного поигрался с ним, но бросил:
В Minecraft уже имеется redstone, который может проводить сигнал, с разрядностью 4 бит (от 0 до 15). В основном моды на компьютеры взаимодействуют с этим сигналом:
RedPower 2 (компьютер на Forth). Помимо разных элементов для механизмов (логиеческие шлюзы, лампочки, транспортные трубы...), мод добавлял центральны процессор, монитор, дискеты и дисковод, модули оперативной памяти и устройство ввода/вывода (для redstone).
ComputerCraft (Lua). Достаточно долго живущий мод. В сегодняшнем виде он называется ComputerCraft: Tweaked (CC: Tweaked). Программы для старой версии мода могут быть несовместимыми с новой версией. В моде нет оперативной памяти, как отдельный модуль. Зато есть черепашки (программируемы роботы), КПК, динамики, GPS, модули проводной и безпроводной связи.
TIS-3D - вдохнавлён игрой TIS-100 (ASM).
Open Computers (Lua) и Open Computers 2 (куда поместили полноценную виртуалку Minix RISC).
В невышедшей игре 0x10с планировался программируемый бортовой 16-битный компьютер для космических кораблей.
Другие самостоятельные проекты:
Digital Unboxed - автор захотел создать игру-симулятор архитектуры компьютеров. Здесь можно собрать компьютер из отдельных компонентов и создавать программы на Ассамблере и визуальном ЯП. Время от времени слежу за этим проектом.
Конечно, существуют более профессиональные симуляторы: Cisco Pocket Tracer (хотя там уклон в сети), Tinkercad и другие эмуляторы/симуляторы разного рода МК, в том числе платы Arduino. Но всё это серьёзные проекты, в которых не так много "геймификации"