Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.
SHENZHEN I/O is the new simulator/puzzle game by Zachtronics, the creators of other excellent games like Spacechem, Infinifactory and TIS-100. After being on Early Access for some time, it's now available on Steam since November, 17th. But most importantly, even when only two weeks have passed since the official release, the game already has 'overwhelmingly positive' reviews by Steam users, just like its predecessors; out of a total 785 reviews so far, only 14 are negative against 771 positives, something truly remarkable.

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

Unfortunately, I won't be able to share with you some personal impressions about the game because two reasons:

- It doesn't have a demo.

- Seriously, if you aren't a programmer, these games are impossible to learn. I'm talking about almost every game released by Zachtronics; they're extremely cryptic. I recently bought on Humble Bundle and tried their other game, TIS-100, and I couldn't even program the most basic line; and I'm glad that I saved some paper by not printing the attached manual, because I read it and I didn't understand one simple sentence. SHENZHEN I/O has a more complex manual, so I don't even need to play it to have the certainty that I won't get anything from it.

It isn't about lack of motivation or interest since I love to solve puzzles, and the premise of learning a bit about programming really attracted me. Also I don't think it's because I lack patience either, or the necessary skills to learn the commands, because with a bit of research I was able to overcome some technical problems by using the Linux Terminal.

image
This isn't a rant against Zachtronics, but I have to say it's truly a shame. I really wanted to play their games, but that isn't possible because of the insanely steep learning curve, it's like quantum physics if you don't have the base qualifications. I don't seem to be the only one with this problem, given that the Most Helpful negative review (with 750 people out of 1005 finding it useful) addresses the same concerns. Maybe the inclusion of a tutorial for complete novices, or extremely simplistic puzzles, would've made things easier?

Anyway, good luck and enjoy the game for me. I might try my luck with Infinifactory sometime. Obviously feel free to contribute with comments if you have more knowledge than me regarding these kind of games...

Official site: SHENZHEN I/O
Steam Store page: SHENZHEN I/O

About the game (Official)
image
-Build circuits using a variety of components from different manufacturers, like microcontrollers, memory, logic gates, and LCD screens.
-Write code in a compact and powerful assembly language where every instruction can be conditionally executed.
-Read the included manual, which includes over 30 pages of original datasheets, reference guides, and technical diagrams.
-Get to know the colorful cast of characters at your new employer, 深圳龙腾科技有限公司 (Shenzhen Longteng Electronics Co., Ltd.), located in the electronics capital of the world.
-Get creative! Design and test your own games and devices in the sandbox.
-Engineering is hard! Take a break and play a brand-new twist on solitaire. Article taken from GamingOnLinux.com.
4 Likes
About the author -
author picture
Just a regular Linux user (not even a programmer at the moment of contributing) who used to mostly write about obscure but still interesting games with native support, in an effort to help them gain a bit of deserved exposure.

Guest Writer
February 2016 - September 2016
June 2019
December 2019 - April 2020

Contributing Editor
September 2016 - July 2017

Opinions at the moment of writing the articles were mine, though in some cases contents were edited or critical information was added by GOL Editors before approval.

See more from me
The comments on this article are closed.
30 comments
Page: «2/3»
  Go to:

Eike Dec 6, 2016
View PC info
  • Supporter Plus
Quoting: km3kI did! (I was a tester for the Linux version too. :D ) If the structure was more like HRM, it might be easier to do a tutorial.

How I both hated and loved the prime check optimization...! X)
HadBabits Dec 6, 2016
This stuff always makes me think of The Witness (played it on PS4), and how amazing it is that games can teach us so many systems, sometimes without even words. Though the thought of pouring over a manual appeals to me less, so the 'RTFM' in the logo sends me right off. That said, glad these games are out there for those willing, I'm sure the feeling of mastery from these games must be grand :D

And I have played HRM, and as a rookie programmer I thought it was really cool ^^

Quoting: cRaZy-bisCuiT@SangreDeReptil: What exactly is the thing on your avatar?

The only place I know the photo from is this :)
Ehvis Dec 6, 2016
View PC info
  • Supporter Plus
I love these Zachtronics programming games. I enjoy programming, but I find this to be different. It does help in the way you think about problems, but there are also big differences. The puzzles you have to solve are actually way harder than your average programming job while the tools/language you need to use are fairly basic.

Unfortunately, I'm still haven't finished any of them. TIS-100 will probably be the first one. I only need one puzzle from the main section and it is typical of the difference between programming and these puzzles. It requires you to write a data sort algorithm for number sequences. I could write that in real assembly code in 10 minutes. So far I've tried for at least two hours and failed to solve the problem. I will figure it out! I refuse to look up the solution! Do I really need more brain torture from zack? Hmmmmm. Maybe. :D
Eike Dec 6, 2016
View PC info
  • Supporter Plus
Quoting: EhvisUnfortunately, I'm still haven't finished any of them. TIS-100 will probably be the first one. I only need one puzzle from the main section and it is typical of the difference between programming and these puzzles. It requires you to write a data sort algorithm for number sequences. I could write that in real assembly code in 10 minutes. So far I've tried for at least two hours and failed to solve the problem. I will figure it out! I refuse to look up the solution! Do I really need more brain torture from zack? Hmmmmm. Maybe. :D

I think that was the puzzle I failed to solve. Still didn't look it up, still want to do it. One day...!
Stupendous Man Dec 6, 2016
I'm trying to play TIS-100 but with no programming background, it's difficult. So far I've solved the first 7 or 8 puzzles, but I'll definitely keep going.
I have Shenzhen I/O on my wishlist, though to be honest I'd much rather play around with my Arduino or Raspberry which gives me knowledge I can actually use. Shenzhen seems to be much the same, only with 'fantasy' components.
Skiski Dec 6, 2016
I'm a huge fan of Zachtronics games and it is also the case of this one. I spent too much time this week-end trying to solve various problems.
I find this one quite hard due to space limitation. I find it even harder than TIS-100.

I think that the most accessible one is Infinifactory since there is way less space restictions and no need to write anything.

If you like hard puzzle games, this one is a must have.
Gobo Dec 6, 2016
There is this thing about Zach-Games, that the developers might ship some levels they didn't even solve themselves, they just let the community figure it out somehow. So far it worked out well I guess.

I think the first levels of each Zachtronic game are easy enough to get a clue about how to get things going. But the real treat is figuring out the things that are not that obvious, like building a straight line in SpaceChem instead of a circle for a waldo, or "parking" a value in an otherwise unused node with something like a single "mov any any" instruction or resetting the acc register with "sub acc" in TIS-100. And even if you managed to beat every level of the game - did you do so in a way that optimizes for one or several of the KPI like number of instructions or runtime? This optimization is the real endgame content in those titles.

As for grasping the concepts of TIS-100, I once explained it like this: don't look at all nodes at once, but rather concentrate on a single node (that is, the square with the acc and bak register and up to 15 lines of code) and break down your problem into something you can manage in that closed environment. To get even more visual and less abstract, imagine each node as a house with someone in there who can only perform the max of 15 commands written on the floor. With one hand she always points to the current command in the list, while she grabs a token with a value from either one of the four input nodes (think doors or windows) or the acc register (a storage closet), performs an arithmatic operation on the token in the acc or swaps the acc token with the bak one (you could think of the acc and bak being two halves of a closet, with only one of them being accessible via a sliding door that can only reveal one of them at any time, the sliding door acting as the swap command where the open part represents the acc and the hidden one the bak), or throws the currently held token to one of the outputs. Between each two houses is a person that will take a token from the door or window on one side and put it on the door mat or window sill on the opposite side, but only if the other side is currently empty. That's really it. Look up the current command from the short list and move tokens from either of the 4 inputs plus the acc register to any of the same 5. Every node does that, if it performs at least one action. And some of them will manipulate the value of the token in the stash or see if its value is lower, higher or equal to zero.

This is the whole of TIS-100 gameplay in one paragraph. The rest is just about the interaction between the nodes, waiting for others to finish their job or determining the command to perform next depending on the value we received from them. About putting these simple tasks to perform in a seemingly complex way.

Yes, the Zachtronic games serve a niche client, but those selected few love them all because of this.

If you cannot decide if the Zach games are something for you and would like to demo them, you could try http://leonardo.frozenfractal.com/ instead. It's a browser based painting machine with a number of colored brushes, working on a canvas by instructions printed on punchcards. If you manage to solve the first 5 to eight levels and had fun, definitely give SpaceChem, InfiniFactory, TIS-100 or Shenzen I/O a go. Or Human Resource Machine. These programming puzzle games form a subgenre of their own and once you got hooked, you have to play them all.

Next step up would be programming the DCPU in games like Tech Compliant (https://twitter.com/techcompliant), which will enter a public alpha soon. It's the spiritual successor to 0x10c, the game Notch never got around to really do while still at Mojang. They took the concept and drove it off in a direction I am really looking forward to.
RussianNeuroMancer Dec 6, 2016
Consider Pony Island as tutorial.
GrayJazz Dec 6, 2016
Once I saw that Shenzhen was a Zachtronics game, I cracked open my wallet. TIS-100, Spacechem, and Infinifactory can be tough, but you get a great deal of satisfaction (at least I do) when you finally produce a solution to a tough problem. I'm betting that this new offering will be no different.
Chuckaluphagus Dec 6, 2016
I've loved everything I've played from Zachtronic so far - SpaceChem, Ironclad Tactics and TIS-100. One day I will beat one of them. They're brilliantly presented and intellectually challenging, possibly more than I am capable of, but I'm ok with trying and failing. I've put a lot of time into all of them, and I consider them money and time well spent.

Also, if I ever complete TIS-100, I have half-seriously considered adding "TIS-100 assembly language" to the "Other Skills" section of my résumé.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.