
Exapunks - yumaikas
http://www.zachtronics.com/exapunks/
======
fake-name
I love the idea of almost every ZachTronics game.

My issue with them is that they get close enough to actual programming that I
invariably quit, and go actually work on a hobby programming project, rather
then play. As a result, I generally buy the game, play the first few levels,
and then go make some commits on a programming puzzle that has an actual end-
result that I benefit from.

I really wish the games used an actual language or assembly opcode set. If I
could play TIS-100 _and_ practice ARM or AVR assembly, _that_ would be
amazing.

~~~
colordrops
You just articulated what has been bothering me about these games! I couldn't
put a finger on it. I tried them out, and found them to be incredibly well
made, and yet couldn't get myself to play them. I felt like I was seriously
wasting time that I could spend doing actual programming, so I stopped. I
think these games would do really well targeting an audience that is new to
programming.

~~~
chongli
Life is too short to feel like you always need to be productive. Believe me, I
know the feeling and I find it frustrating because it impedes my ability to
relax.

Time spent enjoying yourself and learning things (even if they aren't directly
applicable to work) is not time wasted. Improving your problem solving skills
is always good and it often feels good, as long as you keep the level of time
commitment within a healthy range.

~~~
Swizec
The way I read grandparent is that the game feels so much like real work that
you might as well get something out of it. I have the same problem with a lot
of puzzle games: I already solve puzzles all day every day, might as well go
work on those.

~~~
TeMPOraL
I have the opposite feeling - solving "puzzles" for real-life work is tedious
and boring (and the end result is _just_ money), while Zachtronics games let
me exercise the same mental muscles with much less frustration.

EDIT: Urm, sorry. Zachtronics games let me _actually_ exercise my brain, just
like side projects. Real on-the-job programming these days is mostly gluing,
which has nothing to do with technology, and is essentially navigating
_bureaucracy_ created by other people. You have state A, you know state B you
want to be in, you have to discover the appropriate forms to fill in and
stamps to collect on the way, and often perform kafkaesque dance around public
keys and OAuth flows and related concepts. It's getting about as fun as tax
forms.

~~~
selestify
> Real on-the-job programming these days is mostly gluing

My God, are we working the same job? Have you ever found a job that was not
just gluing things together?

~~~
TeMPOraL
Not yet. I hear that these jobs exist, but I seem to be consistently unable to
find them.

~~~
smolder
Companies with the interesting jobs are not as profitable as those with glue-
things-together jobs, and aren't hiring. In fact, I hear they're looking to
get out of that business entirely. It'll soon be glue, all the way down, with
university partnerships so kids can pay tuition to invent new stuff before
they graduate to glue land.

------
Scaevolus
I beat this last night. It's easier than TIS-100 (no 9 instruction limits!)
and Shenzhen I/O, following the general polishing trend of Zachtronics games
becoming more _beatable_. SpaceChem (their first puzzle game) was stupidly
difficult [1] [2].

My personal ranking: Opus Magnum > Shenzhen I/O > Exapunks > Infinifactory >
TIS-100 > Spacechem.

[1]:
[https://www.gamasutra.com/view/feature/172250/Postmortem_Zac...](https://www.gamasutra.com/view/feature/172250/Postmortem_Zachtronics_Industries_SpaceChem.php?print=1)
[2]:
[https://www.gamasutra.com/db_area/images/feature/172250/comp...](https://www.gamasutra.com/db_area/images/feature/172250/completion_thumb.jpg)

~~~
forty
What does "stupidly difficult" even mean? Does it just mean you did not manage
to solve all the puzzles (yet)?

Honestly, I find that Spacechem is one of the very best game ever. I am really
happy that Zachtrorics continues trying making better similar games, as it
generally does make great games (I immediately purchase all their games - I
only missed Opus Magnum as I was busy becoming a father when it launched), but
so far, I was not able to feel the joy I felt when my Spacechem reactor
finally worked, watching all the chucks fitting together (I know, I really
need to try Opus Magnum which is more similar to Spacechem than other games in
the serie - but my impression is that the UI looks much more busy, and
simplicity is one of Spacechem strong point, which makes it enjoyable on a
tablet for example). I'll admit that Spacechem had the advantage to be the
first of this kind I tried, so it could be one of the reasons I loved it so
much.

Also I am a bit sad that making games easier to beat is even a goal at all -
it's great to try to make them easier to play / to start for non-programmers
and beginners. But I find that having a few levels that are really challenging
makes a game strictly better. I know that many people think "I paid for the
whole game, I need to be able to finish it all reasonably quickly", but
personally, I think it could just mean that the game was simply not
challenging enough.

For what it is worth, I did beat Spacechem (whatever it means, I have the
"beat the game" achievement on Steam), but I am stuck on TIS-100 and Shenzhen
I/O (I spent much less time on this one though). Exapunks does feel easier
than both for now (the programming language is slightly "higher level", so
maybe it feels more familiar).

~~~
fb03
"stupidly difficult" to me means Nethack. You should try it if you're into
rpgs :)

~~~
forty
I like Nethack :) Btw, that reminds me of Dwarf Fortress and the whole "losing
is fun" idea, of which I am a great fan as well, and do not find anything
stupid about it ;)

------
DivisionSol
I would highly recommend any Zachtronics game to anyone who enjoys programming
as a hobby.

Exapunks this time around was lovely, along the same vein as TIS-100 and
Shenzen I/O, less like Spacechem/Opus Magnum/Infinifactory (which I would
still highly recommend.) Going back further, I'll add
[http://www.zachtronics.com/ruckingenur-
ii/](http://www.zachtronics.com/ruckingenur-ii/) and
[http://www.zachtronics.com/kohctpyktop-engineer-of-the-
peopl...](http://www.zachtronics.com/kohctpyktop-engineer-of-the-people/) as
notable Zachtronics games to enjoy.

Write code for swarm-like processes to hack networks and perform tasks before
exiting the network without a trace.

------
preordained
God bless Zachtronics. One of the very few who scratch that special itch with
their games, and man are they good at it.

~~~
cambalache
You are so right. These guys make the games I wish I could make if I were a
game programmer/designer. Top notch. The other small game designer who I can
recommend is this guy:
[http://www.crypticcomet.com](http://www.crypticcomet.com) .Too bad it seems
he does not make games anymore.

~~~
kqr2
Which game are you recommending? Also what do you like about it?

~~~
cambalache
He has only 3 or 4 games. I recommend Solium Infernum
[http://www.crypticcomet.com/games/SI/Solium_Infernum.html](http://www.crypticcomet.com/games/SI/Solium_Infernum.html),
it is a TBS game, it is actually a computer table game, if such thing makes
sense. If you have time, you can read here an epic AAR series
[https://www.rockpapershotgun.com/2012/01/03/solium-
infernum-...](https://www.rockpapershotgun.com/2012/01/03/solium-infernum-the-
complete-battle-for-hell/)

------
znedw
>The year is 1997. You used to be a hacker, but now you have the phage. You
made a deal: one hack, one dose. There’s nothing left to lose… except your
life.

Is this not the plot of Neuromancer?

~~~
sshine
He'd made the classic mistake, the one he'd sworn he'd never make. He stole
from his employers. He kept something for himself and tried to move it through
a fence in Amsterdam. He still wasn't sure how he'd been discovered, not that
it mattered now. He'd expected to die, then, but they only smiled. If course
he was welcome, they told him, welcome to the money. And he was going to need
it. Because -- still smiling -- they were going to make sure he never worked
again. They damaged his nervous system with a wartime Russian mycotoxin.
Strapped to a bed in a Memphis hotel, his talent burning or micron by micron,
he hallucinated for thirty hours. The damage was minute, subtle and utterly
effective. For Case, who'd loved for the bodiless exultation of cyberspace, it
was the Fall. In the bars he'd frequented as a cowboy hotshot, the elite
stance involved a certain relaxed contempt for the flesh. The body was meat.
Case fell into a prison of his own flesh.

~~~
ethbro
Early Gibson vs late Gibson begs the question -- What's more punk? Unfocused
but incandescent adolescent rage or technically executed vicious critique?

~~~
vesak
That sounds like comparing Sex Pistols to Porcupine Tree.

------
deelowe
I've decided that any game zachtronics puts out is a day 1 purchase for me.
Only game I've pre-ordered in years.

------
bitwize
1997, yo. Massive corporations rule everything, people are getting wet-wired
into cyberspace, pollution and overpopulation and climate change have thrown
everyone but the super-wealthy into a desperate struggle for survival... and
Hanson's "MMMbop" is playing on the radio.

Just the concept made me smile.

------
cmyr
Very cool. A friend put me on to TIS-100 when I was curious to play around
with assembly, and it was a very helpful (and fun) introduction.

~~~
eltoozero
TIS-100 is also available on iOS, but unfortunately iPad only.

~~~
duskwuff
> unfortunately iPad only.

Mostly for practical reasons. I can't imagine how the UI would work on a phone
-- either the text would be microscopic, or you'd have to scroll around
constantly.

~~~
lazerwalker
It's of course far easier to armchair design, but I could imagine it working
well enough?

Each individual cell is ~12 lines of very short line lengths, yeah? You can
easily fit a single cell on-screen with a keyboard while editing (or
potentially while running), and then you could imagine a more abstract
representation of a whole running system if you choose to zoom out while the
system is running.

A few years ago I built a prototype of an iOS editor for Core War
([https://en.wikipedia.org/wiki/Core_War](https://en.wikipedia.org/wiki/Core_War)),
and it felt super-natural to have a custom keyboard whose keycaps were
individual opcodes rather than ASCII characters.

------
olooney
steam store link:

[https://store.steampowered.com/app/716490/EXAPUNKS/](https://store.steampowered.com/app/716490/EXAPUNKS/)

~~~
Razengan
I hope it appears on gog.com before I break down and buy it from Steam.

~~~
forty
Reach out to their user support, they might be able to help you with that.

~~~
ZeikJT
It likely won't come to GOG until it comes out of early access on Steam.

------
daveFNbuck
I love Zachtronics games, but they have really ridiculous performance
requirements. My MacBook Pro heats up like crazy playing them.

~~~
poisonarena
Same, I think it is because it was built in Unity

~~~
no7hing
Judging from the installed game files it seems to based on SDL2 and not
Unity3D.

~~~
phyllostachys
I asked Zach about it once (in email), he said:

> We do all of our development in C# using a custom low-level “game engine”.
> At some point we need to do a writeup about it, it’s kind of interesting
> tech.

But I think they have at least one Unity game... or so I thought.

~~~
no7hing
Would also love to read a detailed writeup about their custom engine.

Also found this quote[1] from an AmA on reddit:

> We've used C# since SpaceChem. I can't imagine using anything else,
> honestly. Infinifactory and TIS-100 use Unity, while everything else uses
> some kind of lightweight SDL-backed C# engine.

> SHENZHEN I/O and Opus Magnum are both using a very minimalist C# "engine"
> inspired by some of Casey Muratori's ideas on game engines and game
> programming. It uses DirectX or OpenGL for graphics, and SDL for everything
> else. It's basically just one giant Update() loop, and is the greatest game
> engine I've ever had the pleasure to work with. Despite this, I would not
> advise novice game programmers to do the same.

[1] -
[https://www.reddit.com/r/IAmA/comments/78wv2h/im_zach_barth_...](https://www.reddit.com/r/IAmA/comments/78wv2h/im_zach_barth_the_creative_director_of_the_game/doxgfx5/)

------
aherz
This looks like a lot of fun. I just started playing gladiabots
([https://gladiabots.com/](https://gladiabots.com/)) which will probably
scratch that itch for a while. Exapunks seems to have a bit more of a learning
curve and story from what I can tell from the trailer.

~~~
flaviuspopan
This is why I'm obsessed with HN. Thank you so much for linking this, it's
exactly what I've been hoping someone would make!

------
kawsper
Looks cool, but why would they not allow me to fullscreen the YouTube video?

I see that a lot is it the default from YouTube?

~~~
baud147258
I think it's a setting in the YT video

------
everyone
Exapunks is 'Early Access' I'm waiting for the full release to play.

~~~
fpgaminer
That's certainly important to note. Though in this case the game is done
already and basically "release" quality. I think they did the same thing for
TIS-100 as well; Early Access for a bit even though the game is done and 99%
bug-free.

~~~
OberstKrueger
They've been releasing games this way for a while. Early Access with most of
the pieces in place, with some polish on graphics, balance, and music for a
few months before it's all finalized. Shenzhen I/O and Opus Magnum were done
that way for sure.

------
yayitswei
Looks like there's a Javascript-based puzzle API as well:
[http://www.zachtronics.com/virtualnetwork](http://www.zachtronics.com/virtualnetwork)

------
joshu
i wish the little CPUs weren't so impoverished.

~~~
cjbprime
One (general-purpose) register! I guess we should think of it as a distributed
systems simulator, not a CPU simulator.

~~~
fpgaminer
The 6502 only had one (general-purpose) register and it did just fine.

~~~
Dylan16807
You can almost treat the 6502 as if it had 256 registers.

Imagine a 6502 with no memory.

~~~
makapuf
Some of the lower attiny micro like attiny13 have only 32 registers and no ram
!

------
jdhopeunique
It'd be kind of nice to have opcodes like some sort of Forth language just for
variety and fun.

------
Phrodo_00
Aw I thought it was going to be an actual hacking game, more like uplink or
hacknet. I really want a new game that's as good as uplink...

~~~
strmpnk
Uplink was fun but I'd say this game has far more "hacking" in it. You have to
do things like:

    
    
        - crack passcodes
        - manipulate tv station tapes
        - soft-mod console disk firmware
        - dial-up various hosts using a programmable modem interface
    

etc. Obviously it's all in a toy world but I'd say it's much more like what
I'd imagine a hacking game should be than uplink.

------
grashalm01
Exapunks is to programming as piano tiles the mobile game is to playing a real
piano.

