Road to the IGF: Zachtronics' SHENZHEN I/O

SHENZHEN I/O is a puzzle game of building circuits and writing code, doing so using in-game data sheets and guides while players work through their employment with Shenzhen Longteng Electronics Co., Ltd. Should they find this task too daunting and need to unravel their tangled mind, there's even a game of Solitaire included in the title.

Turning programming and circuit building into an engrossing puzzle game earned SHENZHEN I/O a nod for Excellence in Design from the IGF, and Gamasutra spoke with Zach Barth of Zachtronics, developer of the game, to learn about the challenges of making puzzles out of code and circuits, and about how the game's complexity and depth added to its appeal.

What’s your background in making games?

I’ve been making “indie games” for about 10 years now. I started making terrible games in college and putting them on the internet for free. SpaceChem, which came out in 2011, was the first game that I sold, and it sort of just took off from there.

How did you come up with the concept?

I discovered Shenzhen, an actual city in China where most modern electronics are actually made, by reading Bunnie Huang’s blog years ago. I’m not very good with electronics, but have always been interested in it as a hobby, so the idea of a city that “specializes” in this really captured my imagination. After the surprise success of TIS-100 (our first game about fake assembly programming), we decided to make a spiritual successor that would also explore fake electronics in a near-future and slightly-exaggerated version of Shenzhen.

What development tools were used to build your game?

SHENZHEN I/O uses a custom engine built with C#, SDL, and DirectX or OpenGL (depending on the platform).

How much time have you spent working on the game?

SHENZHEN I/O was a fast game to make, even for us! It took about six months from start to finish, which includes the two months we spent in Early Access.

Shenzen I/O gives players many complex concepts for players to work with. How does the game work to help the average player understand them? How did you make them approachable with the game?

You could argue that it doesn’t help the player very much at all. We’re talking about a game you have to read a manual to even attempt to understand!

How do you design puzzles around coding and circuits?

After the core mechanics of the game are designed, I work with our writer to come up with a list of puzzle concepts that mesh with the narrative. We try to make every puzzle its own mini-story. Then, I sit down with the stack of concepts and work out the specifics, taking into account what I learn about the design space as I go. After that, we integrate the designs into the game and playtest them, smoothing out overly easy or difficult sections and removing redundant or boring ones.

What drew you to add a diversion into the game? What did you feel was important about being able to take a break in-game?

SHENZHEN I/O is about being an engineer, so we wanted it to have an element of things engineers do that aren’t strictly engineering. Things like checking email, looking up documentation, or even procrastinating by playing a game of solitaire.

It’s a pretty neat solitaire game, too. I designed it from scratch!

What do you feel draws players to fiddle with circuits and code?

The same reason people fiddle with circuits or code in real life. It’s rewarding to solve problems, and it’s fun to learn what’s possible in a certain design space created by a specific, limited set of tools.

Have you played any of the other IGF finalists? Any games you’ve particularly enjoyed?

I haven’t had the time yet, but our writer and composer Matthew says he particularly liked Butterfly Soup and Tacoma. His writing is in Where The Water Tastes Like Wine, too!

What do you think are the biggest hurdles (and opportunities) for indie devs today?

I’m not sure! I’ve only ever done it the way I have. I’ve been fortunate that it’s more or less worked out, but I can’t speak with much authority on the whole market.