Puzzle Pavilion

TIS-100

(fun fact: this is a failed solution that doesn’t work, hence not a spoiler~)

This is another one of those games that Zach likes… oh, I’m sorry, it is another Zachlike, although I assume he probably likes it as well. For those who are unfamiliar with such a silly term, it is another Zachtronics game, the same company that brought to the world Spacechem, Opus Magnum and that game that got overshadowed by the included Solitaire minigame to such a degree that he eventually had to spin it off out of it (I’m not joking about that).

Like all these games TIS-100 is a programming-type puzzle game, the Zach-flavored ones about programming a loop that can automate a process and repeat it a certain number of times. Unlike most of his other games that dress this process up as some kind of chemistry, assembly line or alchemic crimes against nature this is just blatantly programming. I’ve heard it described as a bit like Assembly but I have no idea how accurate that sentiment is, when it comes to programming you can make up terms and I’ll have no idea if you are lying or not. Regardless this psuedo-programming language is clearly emulating an early one, the game selling this with a fake copyright date from the 70s and including an era-appropriate manual that is the only way to figure out how the thing actually works (that or, you know, the internet). The manual explains most things well, but about halfway through stacks start appearing and you pretty much have to look that up on your own.

The game screen as seen above is laid out in a 3 by 4 grid of nodes, nodes being those boxes where the actual programming magic takes place. You will almost never be able to use all 12 sadly as at least one will be a corrupted one that will contain a bit of the game’s story. Each node can contain up to 15 commands, which sounds like a lot but totally isn’t. Each puzzle involves taking some inputted numbers and arriving at some desired outputted numbers that the game both explains the rules of in the upper lefthand corner and gives the actual desired numbers all along the left side of the screen. This is done via moving the numbers through the various nodes, storing them for a bit, adding or subtracting them, generally just shuffling them around until you get the desired result.

The thing is that you can’t “cheat” this by just feeding the desired numbers into the output as there is often a second and third set of different numbers afterwards, plus a randomly generated set after that. This also means that you can’t just brute force your solution, it has to be an actual process that produces repeatable results.

This seems easy, and to really hammer that home the puzzles are the game asking you to do absurdly simple things that one can do in their head within seconds. This puts the focus purely on the programming as opposed to the math, but also screws with the thrill of victory as there is no window dressing to make your accomplishment seem more worthwhile, you instead for example just spend over a half hour to do some simple division that a 5th grader could manage in a few minutes.

It is worth noting that the commands you program into a node often aren’t gone through in a repeated linear order. As numerous puzzles will require sorting or some other numerical detections, and given the limited tools TIS-100 offers, one will generally end up having to use addition or subtraction with the stored numbers to accomplish these tasks. You have several “jump” commands that will move you to a different labeled location in the node based on if the number in the active memory is positive, negative, zero or non-zero. Because of this a given node will often have a split in the commands that lead to two or more different processes based on said values. You will also often need to repeat a command or repeatedly grab numbers from an adjacent node, so a different jump command can skip you back or forward and number of commands and in doing so either create a mini-loop or find a way to use the same commands in a few different ways. Given that the long string of inputted numbers are sometimes broken down into smaller numerical sequences split up by zeroes and hence you need something in the node to detect their presence and respond accordingly… well as already said those 15 commands can be used up very quickly.

I assume for people with more of a programming background this seems simple, but for others like myself it is rather tricky! That said, for the most part it isn’t abnormally hard. While harder to visualize I think for the most part it is easier than Spacechem, and to get through the main campaign of 22 puzzles it took me about 11 or so hours which isn’t that bad considering everything. Of course, the caveat is that there is one puzzle I initially skipped because it was too much of a pain in the ass to bother with and possibly depends on a degree of familiarity with a programming concept I don’t really understand. There is a second bonus campaign I did not bother with that is supposedly harder, but if you were wondering if the base game is passable for someone with no programming knowledge the answer is pretty much yes.

Overall it is a solid game, but I’d be lying if I said that it wasn’t rather dry. I know that many puzzles games could be described as dry and that generally doesn’t bother me, so this is probably an extreme case. While I only played the one other game by this company I still think the others available are probably better ones to give a shot than this one as it almost feels like a niche within this niche, but it is executed well enough and if one were to find themselves either with this in their possession or short on options after running through other programming games it isn’t a waste of one’s time.

5 Likes

I’ve been tempted to play this game for a while, but the one thing that stops me is the FOMO of like, “why play this when I could learn a real programming language?” I’d love to play a game like this that would just teach me Python or something. Does a game like that exist?

A quick search says maybe: https://codecombat.com/

1 Like

I Kickstarted a game like this but the developer went bust :frowning:

You faked me out so hard and for a second I thought I was a dope and never realized that Zachtronics/Zach Gage were one and the same (because of the latter’s penchant for remixing Solitaire)

1 Like

no, this is Zach Don’t Have A Cow, Man

Baba is You is just destroying me

It’s so good. It’s so rare for a puzzle game to feel genuinely challenging and creative rather than something where I just go through the usual heuristics

6 Likes

I snorted in delight when I got to the ‘Has’ property and built an item duping loop

Baba is You seems intriguing as hell and I am interested in seeing how it panned out. I probably won’t get to it myself for a good long while (for those curious I picked up TIS-100 in November of 2016 which is a fairly typical turn around time for me) but I’d be curious to read anyone’s thoughts on it as they make their way through.

has anyone else solved lake 10 yet because that was my favourite level so far

1 Like

also liked island 6 a lot

edit: and I liked the hidden level building off of island 6 even more

this game rules

like, as much as stephen’s sausage roll didn’t get the reputation it deserved, this is everything

2 Likes

They’re good! They start off pretty free-form, too. I caught a stream of Lake 10 and the streamer solved it in a different way than I did.

I think this game is good at teaching you how to play puzzle games. The rules being directly in the levels force you to challenge and redefine your assumptions every level.

2 Likes

I like that you unlock what appears to be the final level very early on. I briefly played with some of its devices, but I didn’t even consider trying to solve it just yet.

It’s fun when the “extra” levels are slight (but harder) variations on other levels that in some cases already took me several minutes to solve despite their simple appearances.

My first instinct was not to move on to another area until I’d solved all the levels in the current one, but I soon realized that wasn’t going to happen. (Though I do plan to revisit the ones that gave me trouble, since a lot of the game’s appeal is seeing how clever the intended solutions are.)

Oh I solved the level in your spoiler and saw the credits and then just went back to the rest of the game

Baba is Love. While the prior version sold me on the concept, I was worried the full version might veer towards broken, sandboxy free-for-alls (which the rules are certainly capable of producing). But the puzzles are memorably concise with solutions that force you to see new consequences of the rules, feeling about as hard as they need to be to illustrate their point rather than overstepping – and the playful fun is still there as you experiment. The SSR/Braid influence is strong here, including the humor in logical conundrums – and the fun of reading meaning into the phrases and then ruthlessly reconfiguring them gives the game unexpected warmth.

4 Likes

I’ve been interested in that space for awhile and I don’t really think there are any solid contenders for what you want. I’ve looked into Code Combat and while I haven’t played it, it feels like “game as educational frame”. The game is the sugar to help the educational medicine go down.

I actually made a career transition into programming a couple years ago, and a good part of why that happened is because I played a ton of Zachtronics games. It’s not programming per se, but playing those kinds of games help build a good portion of the mental reflexes you constantly use when coding.

What I love about Zachtronics games is that it’s never explicit about learning. The game is just about doing a thing, and whaddya know, by the end of a game you’re good at doing that thing. And while spinning alchemical molecules isn’t particularly applicable to other situations, thinking in loops and how to structure input/output is actually useful in other places. But the games never feel didactic – you just learn those things because you internalize them without anyone needing to tell you what you should be internalizing.

So, yeah, I’d give TIS-100 a shot.


Also, Hacknet isn’t a half-bad introduction to using the terminal.

3 Likes

Imperative programming skills are very transferable, learning one language with variables lists loops functions and conditionals means you basically learnt them all. Assembly is a bit weird since it has registers stacks and jump-not-equal-to-zeros, but the core skill is still learning the features and breaking problems down into chunks that match those features.

Assembly is more ‘fun’ because it’s small and cryptic and is a real puzzle to read & write. A lot of learning python is knowing the useful parts of the standard library and community-recommended modules & best practices.

5 Likes

Coin Counter by Jack Lance (a browser game)

The counter is the playing field and you must collect the coins in such as way as to stay within it.

Edit: When I finished the game, it flashed up some kind of ending screen but I must have hit a key because I didn’t get to see it before it returned to the title screen.

5 Likes

this was fun (I’d played it before off the PuzzleScript gallery) but like most PuzzleScript games the trick is to see the last move you need to make and backtrack to the current state.

1 Like

I just bought Supertype it’s a little physics puzzler where you type a series of letters and they fall onto the playfield, hopefully snagging the little target dots before they all stop moving or fall offscreen.

1 Like