when stephen lavelle first implemented realtime games in puzzlescript, i thought it might be neat to implement some basic ZZT stuff in it. (stephen asked me about how timing worked in zzt; i don’t know if he ended up basing any of his puzzlescript features on it.) eventually a simpler idea came through: porting doug beeferman’s dos puzzle game, CYBERBOX.
cyberbox came out in 1991, probably before zzt did. it has a lot of the basic puzzle elements that ended up in zzt: sliders that can only be pushed up and down or left and right, one-way teleporters, “pushers” that continually push other boxes when they’re able, usually used as gates or to set up chain reactions. it’s hard to know whether tim sweeney lifted these ideas from cyberbox or just came up with them simultaneously. he would had to have been pretty far along in constructing the shareware zzt series at that point.
i like cyberbox because it’s clever, tricky, and often good at misdirection. it also, unfortunately, has a life-keeping system: as in, every time you’re forced to restart a puzzle, you lose a life. you get four, and when they’re all out, you have to start the game over from the beginning. that seems like a really needless punishment for this sort of brain game: you need to experiment and to fuck up in order to solve the puzzles! so bringing it to puzzlescript – with its standard-issue “undo” and “retry” features – seemed like a good way to update the game. plus: it’s really easy to mod in new levels. (just click on “hack” on the game page!)
it seemed like an easy first project: if i ported an existing game, i would have a clear image of what the final game should look like. something to work towards. unfortunately, recreating some of the elements of the game turned out to be way more complicated than i expected. (puzzlescript kind of bunks up if you have multiple things pushing objects in different directions at the same time, like the pusher boxes in this game.) it ended up being kind of a frustrating project, involving repeated cries for help on the puzzlescript forums. alan hazelden, jonah ostroff and jamie perconti all helped rewrite my code to get around these weird bugs.
the sixteen puzzles in CYBERBOX are from beeferman’s original game. (the frame story and the graphics are mine, though.) at some point i’d like to design a bunch of original puzzles of my own, but i think i need a break from puzzlescript for a bit. there’s also a really neat dos remake of cyberbox called the continuing adventures of cyberbox which includes a bunch of new features and puzzles and happily nixes the four lives limit, but also drops one of the original game’s puzzles. it’d be cool if having a convenient, editable version of the game encouraged other people to build their own puzzles, too.
click to play CYBERBOX, or click on “hack” to edit it!