Played at the time on an Amiga 500 without knowing anything about it beforehand, it blew my mind about what it was possible to accomplish with a videogame, from an artistic and mechanical standpoint.
The story is told without a line of text, and yet you can easily piece together what's going on; there is a single weapon, but combat is innovative and cinematic; some puzzles are ingenious and based exclusively on player's observation skills and execution.
The fact that it was developed by a single person (at the time, no Unity or Unreal Engine or ubiquitous Internet, knowledge about game programming was HARD to come by), makes it a unique feat.
For those interested, another incredibly interesting and related reading is Jordan Mechner's recount of the making of Prince of Persia :
I have recently started playing modern games (a friend does not use his PS4 so I borrowed it (forever probably)) while playing around with techniques from old games. The feeling of making worlds in code (vectors, raycasters etc) is really great for me; the idea that most of these new games require modelling instead of programming with tools I find very awkward to use puts me off trying to make something 'more modern looking'. Especially because I already get a kick out walking in my own raycast world even though that's 20+ year old tech.
For prototyping games I feel the old tech still works fine and I certainly enjoy writing it more so far. Maybe if there was a more 'abstract' way/tool to tweak 'off the shelf' meshes into what you need... I mean; a tool like, I think, Fallout where you can just change facial and body features but then doing that with trucks, houses, weapons etc and trying out textures on them would be enough for me to make cool games which look modern. I have a kind of adversity against 3d tools because I really get frustrated when using them; even after following a lot of blender/3ds/unity tutorials I couldn't even make trivial things. Do tools like that exist?
I used to get frustrated with how shitty I was at modeling humans etc. compared to more geometric things like guns. I realized it was because I was bad at drawing (with a pen and paper); think about how many hours people spend learning to draw, and then add another dimension to that.
"Modern" graphics are the equivalent of CGI-filled Hollywood blockbusters: incredibly expensive in both time and money and, most of the time, superfluous. As a single person or small team, you'll probably want to do something more personal and stylish.
Even DOOM or Papers Please-level graphics are achievable by a single person in the timeframe of about a year or less, if you have a good idea of what you want.
Your idea for an easy tool to manipulate off-the-shelf meshes is a good one. Lots of successful games have used stock models lately, Goat Simulator comes to mind.
I don't think it was that hard compared to other games of the time. I could finish it in a week, and you could die as many times as you wanted which made it much easier to complete.
Compare that with adventure games from the time which were virtually impossible to complete without walkthroughs.
Whats nuts is that most of those adventure games take about an hour to get through if you know exactly what to do. Sometimes the puzzles were clever, but a lot of the time they were stock "get (literally every word in the dictionary)" and "use (literally every word in the dictionary). I honestly think that is what killed the genre, along with the FPS genre assuming the mantle of pushing cutting-edge technology around that everyone upgraded their PCs for around the mid-90s.
Most modern games don't punish players much - however that's created a niche for games that do - recent examples include Flappy Bird and the Dark Souls series.
> This game was hard. So hard. I dont play games much anymore but I suspect that modern games don't punish the players the way another world does.
There are also modern games that are also really hard.
For example "Super Meat Boy" is said to be really hard (in terms of platforming skills): http://supermeatboy.com/
Or if you prefer something that is really hard, but on your brain, I recommend the puzzle game "Stephen's Sausage Roll" that came out about one month ago: http://www.stephenssausageroll.com/
Very much so, but only once. Usually every screen has a well defined way to kill you - once you've figured that out, the game maybe takes half an hour to beat start to finish.
That first time through is killer. I have no shame in admitting that one of the first things I looked up when I got internet access as a kid were hints on it...
I've seen this before but have always wondered how they made the bytecode part of the game. Did they have an editor or just plot things out on paper and then test in the virtual machine?
Great article. And what a great game! I bought it recently on steam and tried it. I must have had significantly more time to play games in my youth because I just could not make it terribly far (just a bit beyond the part where you find the chamber to re-energize the pistol). Still, it was a great game.
I never knew it used a VM. Sounds remarkably uncommon for games at the time.
It wasn't that uncommon - most of popular adventure games (and probably others too, but I just happen to know about this genre) worked as VMs or interpreters (SCUMM, AGI, SCI). Helped a lot with portability, which was desirable at that time when games were being released on various platforms like IBM PC, Apple, Amiga, Atari, Commodore 64, NES...
I don't know about Apple's, but Microsofts BASIC was stored tokenized. I'd argue calling that "bytecode" would be stretching things a bit in that there was a direct 1-1 mapping between what was stored and the "raw" source format, because what was shown when you type "LIST" on e.g. the C64 was an expansion of the tokenized source.
Personally at least I'd expect "bytecode" to usually refer to a more complicated and usually "lossy" remapping of instructions (e.g. at the very least throwing away comments and trimming identifiers (Microsoft BASIC only looked at the first few letters of an identifier to identify a variable, but stored the rest as part of the source)).
I know that the conversation system in the Ultima Underworld games used bytecode in a stack-based VM. I've read that the original code was in Forth (or something similar) before being compiled into game-compatible bytecode.
The story is told without a line of text, and yet you can easily piece together what's going on; there is a single weapon, but combat is innovative and cinematic; some puzzles are ingenious and based exclusively on player's observation skills and execution.
The fact that it was developed by a single person (at the time, no Unity or Unreal Engine or ubiquitous Internet, knowledge about game programming was HARD to come by), makes it a unique feat.
For those interested, another incredibly interesting and related reading is Jordan Mechner's recount of the making of Prince of Persia :
http://www.jordanmechner.com/backstage/journals/