TIS-100 Preview

Man, Zachtronics is on a roll. Just a few months back, we took Infinifactory for a spin, and now we're back with TIS-100. What is TIS-100 and who should play it? If that's what's on your mind, you're in the right place! Time to dig in to a weird, mysterious, and antiquated computer system in my TIS-100 preview.

Video Preview My wife and I played some TIS-100 on Twitch, and you can check out the replay of the stream on YouTube!

TIS-100 is perhaps the purest form yet of what I'll call the "Zachtronics formula." If you've played Spacechem or Infinifactory, you'll recognize this formula right off the bat. Basically, you're given a set of limited, often uncooperative tools and a relatively challenging problem to solve with them. The first order of business is always making the impossible achievable. Once that's done, the issue of making an efficient solution comes to the fore.

In the case of TIS-100, the problem is of a computer science nature, instead of the chemical reactions of SpaceChem or the logistical issues of Infinifactory. I've often felt that most of the problems in previous Zachtronics games would appeal to programmers, and that there are a lot of similarities between problems encountered in those games and problems faced in computer science. TIS-100 takes this similarity to its logical conclusion.

Cracking the Code

There is a plot in TIS-100, which is told somewhat indirectly by notes you find in the game and in the game's manual. Your uncle has left you an old, not completely functional 70's era computer - the titular TIS-100. Its purpose is mysterious, with hints that it was formerly owned by a government agency, and is capable of some... unusual functions. Over the years, the programming of the device has become corrupted, so your task is to jump into the machine and rewrite the damaged sections of code so that the TIS-100 can resume normal operations.

These damaged sections of code are represented by a problem - often simple to understand - and a grid of TIS-100 "nodes" in which it must be solved. The nodes themselves are independent compute units (ie, processor or GPU cores) with very limited functionality. They can read/write from adjacent nodes in the grid, do some very basic math, store a single value, and support a limited set of control flow instructions. All of this is detailed in the game's manual, which is presented as your uncle's copy of the TIS-100 manual that came with the machine, complete with his notes and highlights.

All the basic, core computational capabilities are here, although the instruction set is limited to the point that even the most basic operations can be complicated. This is compounded by the fact that each node has a hard limit to the number of instructions it can store. Additionally, each node runs in parallel, so the most efficient solutions to the TIS-100's problems usually involve a lot of distributed computing.

Hard to Master

The puzzles themselves are interesting and can be quite challenging. Beginners will find the assembly language to be pretty easy to grasp but even experienced programmers will find themselves befuddled by the difficulty at times. I found myself looking at a problem, thinking about it for a good while, talking it over with my wife (who also has a degree in computer engineering) and then gnawing at the code until I had a working solution.

Later puzzles introduce some additional elements, like a "stack node" that can store multiple values for reading later, and an "image canvas" that can be written to, which enables some additional types of problems.

The presentation is intentionally "70's era terminal" style, which means mostly black and white colors and ASCII art. The sound effects are PC speaker style bleeps and bloops. What you see in the screenshots is basically what there is. I don't consider this a negative, really. The retro styling, simplified assembly, and my mechanical keyboard brought back a lot of old memories.