This may sound silly, but I don't think I've actually seen a more elegant functional visualization of how computers work at that level. I could see this being used as an educational aid to introduce students to the key concepts.
If you like this you might also like the games "Human Resource Machine" and "TIS-100", which both give a similarly visual insight into how computers work.
I'd only recommend HRM for people who haven't touched assembly before. For those that have, it is a bit of a waste of time and not very challenging...I kept hoping the problems would be harder, and maybe something that you wouldn't do in an introductory college course.
TIS and Shenzhen I/O on the other hand have unique challenges and are well worth your time investment for help thinking outside of the box. Many different ways to solve the problems, unlike HRM where there is basically one obvious speed and one obvious size solution.
On the contrary, I teach x86 assembly to advanced audiences and I still haven't solved some of the harder optimization problems there. It was so much fun!
Maybe I gave up on the game too early. The difficulty was not ramping up fast enough for me. I might take your advice and reinstall it and continue where I left off.
I thought HRM had a very odd skill curve, started out very easy and then got difficult quickly. I think overall it's too hard for somebody who isn't a programmer, and there aren't enough hard problems for a programmer. And once the problems got hard, it seemed more like work and less like fun. And a lot of it seemed like busy work since there were so few instructions.
Excellent point...I think that is what was happening...I must have gotten to the "hard" zone as you describe, and simply got bored of work, but wasn't challenged (which is what I want from a game).
I don't really know assembly (other than a little RISC) and I breezed through HRM, but I still had a lot of fun with it. There's some real charm and humour wrapped around its programming puzzles, unlike most games of its ilk.
The main game is only half the story though, fully optimising the later levels and especially the optional challenge levels is not trivial!
I enjoy TIS-100/Infinifactory/Shenzhen IO. Nevertheless, I don't think any of those games represent all the key elements quite as explicitly, like the stack pointer and how the stack and heap build up. In terms of games with that level of detail, the only one that comes to mind for me is https://microcorruption.com/ which displays exactly what's in every register and in memory at all times. But I think playing it requires a little familiarity in advance.
My favorite of all of them is SHENZEN I/O though, as it's a bit simpler than TIS-100 but more programming focused than both Infinifactory and SpaceChem. All of them are fun though.
I liked HRM but TIS was annoying and difficult enough that I thought "you know I could be doing TIS-100 or I could have equal frustration figuring out the nordic bluetooth SDK and mbed.io"... I went with the real world device. Same amount of skill required, actually useful though.
'The story of how TIS-100 came to Early Access this week starts where many development stories end: with an idea for a sprawling, grandiose game that proved too impractical to live.
“Years ago, I came up with this game idea called The Second Golden Age,” says Barth. It was basically a cyberpunk thriller set in a future Middle East crawling with nanotechnology other weird future tech.
“You'd be an engineer, and you'd be dabbling in all these different technologies; you'd be designing all these tiny little devices that could like, go into your bloodstream, and it'd be a super-cyberpunk engineering game,” says Barth.
The idea was to build an open world filled with different kinds of puzzles for the player to solve, a bit akin to Myst. Multiple systems of puzzles would be in play -- all of the chemical engineering puzzles in SpaceChem would be akin to one distinct subset of puzzles in Golden Age, for example -- and players could learn things about the world and advance themselves by mastering various puzzle mechanics. as the player could explore a virtual world filled with different kinds of puzzles to solve. Recently, Barth took a shot at making his idea a reality.
“We were really deep in production on Infinifactory, and I really wanted to ‘go indie’ -- even as an indie developer -- and make something on my own, to prove I could still do that,” recalls Barth. “Because now I don't make anything by myself, right? We have between 4-7 people on our team full-time, plus a bunch of external people. I wanted to see if I could make something -- not by myself, because I still didn't -- but at least with a smaller team.”
So Barth set out to try and recapture something of his past by crafting his Second Golden Age with some collaborators, designing a game with a story and five different puzzle games within it before realizing "Oh god, I can't make another game. There's so much work here! It doesn't make sense, it will cost a fortune to make the art, I just...I don't have time for this."
But out of that aborted attempt came a piece of game design that would become the foundation for a game he could actually make, a game about solving puzzles with assembly code.
“One of the puzzles I designed [for Golden Age] was exactly TIS-100,” says Barth. “The original story of The Second Golden Age was going to involve, as you're going around this future city in the Middle East, you can stumble into this junk shop where you find this old computer.'