Continuing today’s theme of incredibly ambitious projects carried out in city-building games — someone has created a Dwarf Fortress city that operates, effectively, as a Turing machine.
No, it’s not called “MOAR-ia.” Although it should be.
For the uninitiated, Dwarf Fortress is to normal city-building games as the UNIX command line is to Windows: abstruse, catastrophically punishing of newbie mistakes, unfailingly esoteric in documentation, and thoroughly opaque in operation.
In addition to its incredibly steep learning curve, Dwarf Fortress is an insanely difficult game. Forgot to bring along some lumber when you founded your city? Oops, all of your dwarves died. Left your gates open when the local Cyclops came by for a visit? Oops, all of your dwarves died. Accidentally hurled an elven emissary into a magma vent when he was just trying to offer you a trade agreement? Oops, all of your dwarves died.
Also, the interface is entirely composed of ASCII-based graphics. Scared yet?
Let’s examine what happens when I actually use this “computer” to perform calculations: (1) My input (2) enters the Dwarf Fortress city (3) whose behavior is governed by the Dwarf Fortress engine, written in C++ (4) which is running in WINE (5) in a GNOME Ubuntu window environment (6) running on a Linux kernel, written in C (7) which converts instructions into microcode (8) for the AMD processor inside.
Good heavens. The commenters in the Dwarf Fortress forums have it right:
Now the question is: can you build a computer capable of running dwarf fortress within dwarf fortress, then build an 8 bit computer in the dwarf fortress running on the computer in dwarf fortress. Because if so, you would win all the internets.