TIS-100 Review

preview_player
Показать описание
The third in a series of Zachtronics reviews. Start with the SpaceChem one if you're seeing these for the first time. Links below.

Рекомендации по теме
Комментарии
Автор

"To talk about TIS I have to talk about the several page reference book that comes with it"

Naturally

TheKrigeron
Автор

I love the line "Giving the player a second screen with additional information, only the screen happens to be made out of paper."

It's like... so... backwards in a modern way. Back then we used to say "Wow this is like a book but on a weird screen!" And now this.

umbaupause
Автор

Literal programming language UI? No tutorial? I feel like we've reached Peak Zachtronics with this game.

MemeticMutant
Автор

I have no interest in Zachtronic games at all but in all honesty I'd listen to you narrate the McDonalds menu at this point

collette
Автор

Hearing your criticisms of TIS-100 makes me excited for your SHENZHEN I/O review.

SuperBlahmaster
Автор

As someone who learned Assembly in college electrical engineering programming class, this gave me ptsd.

vidjagameenjoyer
Автор

As a non-programmer, I'm proud to say I got pretty far in the game! My biggest achievement was being able to draw a bunch of differently sized rectangles on command. When it all finally started running correctly, I don't think I'd ever felt more satisfied from completing a puzzle. It's really got me interested in coding properly.

Unfortunately, everything fell apart for me when Stack Memory Nodes were introduced. I still can't get my head around them... Maybe if I had more of a background in programming, it would all follow more naturally.

You were the person who got me into this game in the first place, so thank you! I'm eager to try out some of the other Zachtronics games too!

Seth_M-T
Автор

Thanks for making the best reviews in the game, Matthew.

humbledaoist
Автор

I've been waiting for this one. I ended up buying TIS-100 after your other zachtronics videos, and being a programmer it instantly appealed to me. I was blown away by both how fun it was and how insanely fast the difficulty ramped up. I managed to get the first ending, and I'm definitely checking out his other games.

BlinkLed
Автор

I don't know what your first impression of TIS-100 was, but I'll tell you mine. I remember when I first started it, I had no idea what was going on. I managed to open up the manual, but eventually I closed the game and didn't launch it again for probably more than one and a half years. I can't remember feeling lost in SpaceChem in a way other people did, but I guess TIS really scared me off. I really like and appreciate the way you're thrown into the game though. It shows how much Zachtronics trust their players. I also like the visuals and the sound design. They are risky, but fit perfectly and are part of what makes TIS a really unique game. At least I don't think something like this has been done before.

In a way, TIS is SpaceChem cranked up to 11. Not just because of the opening, but also because of the presentation and the difficulty. Even SpaceChem looks downright user-friendly compared to TIS, but I also think TIS is harder. While I only couldn't beat the last level in SpaceChem, there are four levels I didn't beat in TIS. If I remember correctly, I wondered whether it would be possible to sort a sequence in TIS before I had unlocked the sequence sorter. I had come to the conclusion that it's probably impossible. Well, apparently it is possible, but I don't know how to do it and it looks like you struggled with it, too. Funnily, I managed to solve the prolonged sequence sorter though.

This wasn't the only time where I thought that the given task couldn't be accomplished with the restricted mechanics at hand. I think it's quite impressive how many different and hard puzzles they could come up with, especially because it's not always clear what the mechanics are capable of. (Yes, they are Turing-complete, but Turing-completeness also assumes that you have as much space as you need, which isn't always the case.) Of course, a puzzle should be solvable before it makes its way into the game and probably the best way to know whether it is solvable or not is to solve it. Showing that something is not solvable is usually a lot more difficult, so maybe they have some scrapped ideas for impossible puzzles. And maybe they just gave up on some of the solvable ones, too.

It's kind of a shame that there is barely any visual spectacle in TIS, but it's also understandable because everything else might stick out. Basically, if something is supposed to look cool in a game, you most likely need at least some technology for that. But the TIS-100 is intentionally low-tech, so that wouldn't quite fit. But I don't really mind it. I guess watching a solution play out is similar to watching a cutscene and having a game that looks as boring as possible is kind of cool in its own way. If you're anything like me though, you might find a stack being filled and emptied out over and over again to be visually appealing.

One of the few things I don't like aobut TIS is the way the test inputs are described. Sometimes it's helpful to look not only at the description of the desired output, but also at the test inputs. It's true that the first round often tests edge cases, but sometimes specific cases are not tested or the inputs have certain conditions. For example, they might consist of only non-negative numbers or sequences may have a fixed length. It's a bit annoying when you had to solve a slightly harder puzzle because you couldn't see the next tests. If something isn't mentioned in the description, you just can't be sure whether an assumption you made will hold true on the next tests as well. In the worst case, the problem only becomes solvable because the inputs are restricted. I noticed this in the dynamic pattern detector which always has a pattern length of 3. If it could vary, the puzzle would probably be unsolvable without a stack. The problem is that the game doesn't explicitly tell you this and you can't be sure whether all inputs are like that, particularly the random test, which apparently isn't completely random. (Speaking of random tests: I even managed to accidentally create a solution that sometimes passes the random test, but not always.) It's similar to your critique on the bosses in SpaceChem. If you make a wrong assumption, you may have to start over, thus having lost some time.

Like you said, every puzzle in TIS fits on one screen which is one of its greatest strengths, I think. Integers are just so much more compact than huge molecules. For some reason I find it quite interesting that nodes themselves are more or less one-dimensional but communicate with each other on a two-dimensional grid. Playing TIS is just very efficient, especially compared to Infinifactory.

That said, a few bigger levels might have been interesting. They might have allowed for even harder puzzles with more ways to solve them. The reason I say this is because the T20 node emulator really stood out to me. I don't know how you solved it, but I basically implemented my own interface to communicate with the nodes that store the variables. Maybe you can do this in other levels, too, but I found this to be much more interesting than to manipulate input streams because creating your own internal system is much less straightforward and more open-ended. Maybe they could have had more puzzles like that with more available nodes, as I feel the freedom it provides could have made up for the lack of new stuff in the second half of the game. But this is just daydreaming. I think TIS is good the way it is. I'm not sure I like it more than SpaceChem, but I consider them to be about equally as good. If I had to decide, I might like TIS a little less though because the programming theme is less imaginative than the stuff you do in SpaceChem, but overall I have almost no complaints.

Oh, and sorry that I have to tell you this, but in your Infinifactory review you promised you would stop mentioning that there are multiple save slots for each level, but you actually said it again here.

By the way, I don't know which command you are referring to at 3:02. I started using ANY and JRO pretty late, but I wouldn't bet that the one you mean is one of them. I don't think I had an earth-shattering moment like that anyway, so maybe I missed out on something, I don't know.

And as I promised, I tried to display a certain word in a visualization module. So after you created the hypothetical substance of Fuckalium and an Infinifucktory, here I present fuck.tis, which you can run in an image console sandbox if you want:

@0
# PRINTS OUT
# MATTHEW'S
# FAVOURITE WORD

@1


@2
MOV 12 ACC
LOOP: SUB 1
MOV RIGHT DOWN
MOV RIGHT DOWN
MOV 3 DOWN
MOV -1 DOWN
JNZ LOOP

JRO 0

@3
MOV 11 ACC
SAV
MOV 29 ACC
LOOP: MOV ACC LEFT
SWP
MOV ACC LEFT
SWP
MOV ACC LEFT
ADD 1
SWP
MOV ACC DOWN
MOV DOWN LEFT
SUB 1
SWP
JMP LOOP

@4


@5
MOV 2 DOWN
MOV 6 DOWN
MOV 2 DOWN
MOV 11 DOWN
MOV 10 DOWN
MOV 16 DOWN
MOV 20 DOWN
MOV 6 DOWN
MOV 20 DOWN
MOV 16 DOWN
MOV 10 ACC
LOOP: SUB 1
JNZ LOOP
MOV 70 RIGHT
JRO 0

@6
MOV LEFT RIGHT

MOV RIGHT NIL

MOV UP DOWN
JRO -1

@7
MOV LEFT ACC
MOV 1 DOWN
MOV 10 DOWN
MOV 16 DOWN
MOV 19 DOWN
MOV 28 DOWN

LOOP: SUB 1
JNZ LOOP
MOV 0 LEFT
MOV UP ACC
SUB 22
NEG
MOV ACC UP
JRO -4

@8


@9
# HORIZONTAL

MOV UP RIGHT
MOV UP RIGHT
MOV 6 ACC

LOOP: SUB 1
MOV 3 RIGHT
JNZ LOOP

MOV -1 RIGHT

@10
MOV ANY DOWN

@11
# VERTICAL

MOV UP ACC
SAV
MOV 11 ACC

LOOP: SWP
MOV ACC LEFT
SWP
ADD 5
MOV ACC LEFT
SUB 6
MOV 3 LEFT
MOV -1 LEFT
JNZ LOOP

It's good you chose a word whose letters can be printed with almost only two kinds of straight lines that have a fixed length. It allowed me to save some instructions and to make the program simpler as a whole.

Anyway, I guess I'm gonna start playing Shenzhen I/O now.

artey
Автор

I am thoroughly convinced that zach just wants to make everyone who plays his games into programmers. I feel more and more justified in this with every game he releases.

AndrewChumKaser
Автор

Looking forward to your Opus Magnum review :)

Outplayedqt
Автор

I've programmed in assembly before, but it was nothing like programming in TIS-100. Having only 13 instructions and no general purpose registers really forced me to tackle the problems with a different mindset. But a few hours in I got comfortable working under the constraints, and the game just turned into programming as usual. My biggest issue with the game is that it's hard to justify playing it when you could always be doing real programming instead. I think for this game to be successful it has to be more appealing than real programming; but personally I think it's failed in that respect.

FunOrange
Автор

Thanks so much for this video. I would never have heard of this game without this review. I just love how minimalistic everything is. And yet the gameplay is actually quite deep and varied. Loved it

josselinbahr
Автор

I can see why some would dislike your focus on zachtronics games right now, but i personally really enjoy these reviews and games.

ericfreack
Автор

It's been an interesting journey watching all of your reviews of the Zachtronics games. Personally I've only played SpaceChem as it lokked the most appealing to me but it's fascinating to see the similarities between all these games. Your in-depth reviews really bring out the interesting parts of the games you're analyzing.

greasycrab
Автор

What the hell is wrong with Zachtronics. These games must be hell to make.

jessecmason
Автор

Keep this content coming! Your insight on what makes a game fun and worth playing is beyond what most game reviewers can introduce!

selfself
Автор

1:48 Конструктор means constructor or builder or a construction engineer depending on context and sounds very similar to the word constructor. Something like constrooctor.

DrBreezeAir
Автор

I'm a huge fan of the Zachtronics games, and TIS-100 is far and away my favorite, despite my complete lack of programming experience. That might be part of the appeal for me, since I got to learn a new system entirely, but I think how straightforward the game is is its main attraction to me. While in Spacechem I might knock some atoms together and have to reconfigure my whole solution, or accidentally fuse some pieces wrong in Infinifactory, accidentally bounce atoms into eachother with long arms in Opus Magnum, the game just saying "Sorry, wrong output." or "The program completely stalls out, you forgot to read that input." felt a lot less... annoying? While my solution was still wrong, it felt like the core concept of my solution was incorrect and my program flat out did not work right, instead of some more mild (at least in my head) lack of foresight as to how an arm would swing around or atoms would bump, making me preposition and redo the rest of my entire solution. In this way it felt far more iterative to me, where I really was building on my previous failed solutions, instead of just "fixing" something wrong with how my solution was set up.

NineConsonants