Some adventure gaming nostalgia

TL;DR: Two rubbish text adventures I wrote as a teenager are online

My business, Soft Rock Software, has existed for just over thirty years, but my programming – and my very first games – date back further still; all the way to my school days. Two games from that period before Soft Rock Software, and which for reasons below I consider my first two games, are now available to play in your favourite BBC Micro emulator. I therefore thought it might be fun to look at the history of those versions of the games – at least as well as I remember it, anyway!

The two games are:

  • The variously titled ‘(Escape from) the (Sacred) Pyramid (of Doom)’. This game is the older of the two, and has been referred to by me as any number of variations on that title – include or exclude any combination of the bracketed words, and you’ll come up with a title I’ve probably used. For the rest of this post, I’ll refer to it just as ‘Pyramid’. The game is a text adventure (or interactive fiction) in which the player is trapped in a pyramid, and must explore the dark passages, looking for a way to escape.
  • The unambiguously titled ‘Purple Crystal of the Heavens’, which has only ever had that one name, and which I’ll refer to just as ‘Crystal’ for the rest of this post. Also an adventure game, this time the player is a crew member on a pirate ship, who has been put ashore, tasked by the captain with finding the titular crystal, which is thought to be somewhere on the island.

Once the first version of Crystal was written, any further development of both games has been in parallel – but the first version of that coincides with the second version of Pyramid, so for the main part this is really about the first game – even though, should you play it, you’ll find it very simple and very limited.

Back at school, I didn’t have a computer of my own, but I had access to three; the school had a BBC Micro (in fact, I think there might actually have been two, but I’m not entirely sure now), and two of my friends had home computers – one a 48K Sinclair Spectrum, and one a Commodore VIC-20. A few other classmates had home computers as well, but these are the two I had access to.

I didn’t do any programming for the Spectrum at all; my friend and I only ever played games on it – often while bunking off games lessons at school; we took cycling as an option in the final two years, and the games teacher would set a route and send us all on our way. Quite frequently, my friend and I would accidentally get the route wrong, and end up at his house to play on the computer.

(The teacher did catch us out on one occasion, when he went out to a particular point on the route to check who passed by. At the end of the lesson when we arrived back at school, he asked my friend where he’d got to. “I got lost.” He then turned to me and asked where I’d got to. “I followed him.”)

As for the VIC-20, I did attempt to write stuff for it, but not until I’d left school. By that time, I was no longer in touch with the Spectrum owner, and obviously no longer had access to the school BBC – so it was the only choice. While at school, however, why would I try programming a computer with only 5K of RAM (3.5K usable) and a limited version of BASIC when I had access to a BBC Micro with 32K of RAM (usable amount varying according to screen mode, but always more than the VIC-20) and a much nicer version of BASIC? There was no contest!

The computer itself was never – or almost never – brought into the classroom. For our computer studies lessons, if we were tasked with writing a program, we’d do so on paper and hand it to the teacher. Between that lesson and the next, he’d type in those programs, and next lesson we’d get the printed output – but because I would sometimes write programs in my own time and nothing to do with the lessons, the teacher sometimes gave me access to the machine to type them in.

One of those programs was the first version of Pyramid.

I’m not sure how far I got typing it in and/or correcting any bugs and errors – but I do remember playing it, so I got far enough to be able to run it (perhaps trying out what I’d done so far) even if it wasn’t completed.

It’s possible, therefore, that the game may not have fully existed as a game, playable to completion – but despite that, I think it’s fair to call this the first version of my first ever game.

Once I’d left school, I obviously no longer had access to the BBC – and the only computer I could use was that VIC-20. I wrote lots of things on paper, all very short and often silly things, but most never got typed in, and those that did often either didn’t work, or were so naff that we never wasted a cassette tape to save them. There were some more ‘ambitious’ programs, which made use of machine code – such as one that was an attempt at a graphics application, using the VIC-20’s low resolution character/block graphics – but that meant typing in lots of numbers in data statements. We just didn’t bother!

After school and college, I eventually found myself on a youth training scheme (YTS), and from that got a low paying job at a firm of accountants – and my first Christmas bonus, in December 1986, was (at the time a whopping) £100. That went towards the £119.99 Dixons were charging for an Acorn Electron.

I finally had my own computer!

The Electron was the ‘cheap’ machine from Acorn, and featured the same version of BASIC as its bigger brother, the BBC Micro – and like the Model B, also had 32K of RAM – so the obvious thing to do at this stage would have been to go back to the handwritten version of Pyramid and type it in. Unfortunately, though, I couldn’t; I hadn’t kept it. In hindsight, this might indicate that I did finish typing it in on the school computer.

However, not long after buying the Electron, I bought a piece of software called Adventure Creator (AC), and soon after that, I wrote Pyramid again, from scratch, using that software.

Since it was written from scratch, using only a memory of the first version, it was inevitably different – and using a tool specially designed for writing adventure games means it quite possibly improves on some aspects, while in other ways it’s probably lacking, due to the more restrictive environment. One feature I distinctly remember including in the BBC BASIC version that isn’t in the AC version was an independent game character – a wolf, if memory serves – that wandered around the map randomly; after each player input was acted on, the wolf was moved in a random direction from wherever it currently was. (Though whether I had the forethought to ensure it didn’t wander into ‘trap’ rooms, designed to kill the player and end the game, I don’t know!)

Above all else, though, it is a very small, very simple game. While writing this post, I’ve actually played it through to completion, and counted just over thirty locations. The puzzles are sorely lacking in depth, with no clues in one part of the game as to how to solve a puzzle in another – if it isn’t obvious, it’s pure guesswork combined with trial and error (luckily, because it’s such a small game, it doesn’t take long to go back to the same point again and try something different).

Getting myself killed in the BBC version of Pyramid

As soon as I’d finished writing Pyramid, I wanted to write something with a little more to it, so I started on Crystal. Written using AC from the outset, this game features a notably larger map – though probably still not huge. I think it has somewhere in the region of seventy or eighty locations, though I won’t know until I’ve played it through. So far I’ve only had a couple of brief attempts, and the furthest I’ve got (before I found myself swimming with sharks) has got me up to around sixty locations – so that estimate probably isn’t far off.

Swimming with sharks in the BBC version of Crystal

This time, the game is a little more verbose, with more descriptive locations, and it looks like I gave a little more thought to the idea of providing clues – but not much. For example, if you get the map very early in the game, looking at it results in it being lost, but you get told that there is a cave elsewhere on the island; a necessary clue because when you’re at the relevant location, there is no indication that there is a cave – just go towards a cliff face, and if you’re in the right place, you’ll walk into the cave! In the main, though, it was still down to guesswork and re-playing when something goes wrong – and in at least one place that’s deliberate; the mistake that causes the player to die is a clue to a solution a couple of locations further on, although it’s arguable that any mistake like that is automatically such a clue, if only to not do that again!

The game also features a handy command for the purpose of mapping it; if ‘AT’ is typed in at any time, the game reports the location number.

As I said before, some of the VIC-20 programs I wrote were games, and came before this, but because my friend and I didn’t really put any effort into typing them in, or where we did they didn’t work, or we just didn’t bother committing them to permanent storage because they weren’t really up to much, I think it’s fair to discount them all, and say that Crystal was my second ever game. It started off on paper (a map, notes about puzzles, etc), but didn’t remain there – it ended up in the computer, completed, and saved, ready to be loaded and played. (And it’s worth considering that if the same logic is applied to the very first version of Pyramid – even though I don’t know for certain how far I got with it – that still makes the rewritten version my first game.)

So, for all intents and purposes, Pyramid and Crystal were my first two computer games.

From this point forwards, the history of both games is the same – if one saw an update, they both did, and if one was rewritten, they both were.

Some time after the Electron versions were written with AC, I purchased a second hand 64K BBC Model B+ with twin double sided 5.25″ floppy disc drives (bliss compared with cassette tapes) and moved the two games from cassette to disc. I then bought the Graphic Adventure Creator (GAC), and set about adding graphics to the games.

The graphics in this software were defined as instructions on how to draw them; it didn’t allow you to create, load, or save bitmap images, and instead replicated the graphics functions found in the BBC’s ROM – so there were commands to move the graphics cursor, plot points, draw lines, and fill triangles. The graphics I added probably weren’t very good – but the games were both now graphical text adventures.

This did spark my imagination, though, and it was around this time that I bought my first camera – and whenever I used it while out and about, I tended to think in terms of images for games; if I was walking along a woodland path, I’d take occasional shots of the path ahead and behind me, for example – and this is something I still do today, over thirty years later (more so, in fact, because digital photography doesn’t involve the cost of buying film and getting it processed). At that stage I had no way of getting those photographs into a game, but the idea was there.

Soft Rock Software came to be in 1989 – the business bank account was opened in March, with the first transaction into that account (me introducing some funds) was on 30th June. And later that year I was able to purchase (with help from my employer at the time, Henry Malpas and Son) my first RISC OS computer – an Acorn A3000. I formed the business with the idea of releasing budget computer games, but my very first release was actually a simple cashbook program that I’d originally written on the BBC, and then moved to the A3000 and improved very slightly.

The first game I released was Escape from Exeria, with versions available for both the RISC OS platform (written entirely in BBC BASIC) and the BBC (written mostly in 6502 assembler with some BASIC glue). Exeria also has a history that goes back to before I even owned a computer – but that’s another story entirely!

The RISC OS version had space on the floppy disc, so to add value I decided to fill that space, and bundled another game with it – Return to Exeria (which also has some history to it) – but there was still space on the disc, so I decided to use those BBC adventure games; they could be played on RISC OS computers via 65Host, a BBC emulator that Acorn provided with their ARM-based computers.

It is these versions of the games that are now available.

All these years later, I thought it was the graphical versions that I included on the disc, but it turns out it was the text only versions. I don’t why I made that decision, but my first guess is that there wasn’t quite enough room on the disc for those versions, while the text only versions fit. (As well as the two RISC OS games, because the A3000 only had a single floppy disc drive, I’d written some software to create copies of the disc and placed that on the master disc. Insert it in the drive, run that program, and it would prompt for new discs as necessary, in order to make any number of copies to send off to customers – so this would have taken a little space as well.)

The BBC version of Exeria was supplied on a 5.25″ floppy disc, which had a good deal less capacity than the 3.5″ discs used in the RISC OS computers, but at the same time the BBC version of Exeria itself was much smaller. The level designs would have been the same, but the program code was obviously different – and most importantly, while the RISC OS version had graphics in the form of badly drawn RISC OS sprites, the BBC version used redefined character graphics, and the while the RISC OS version included sound samples for effects, the BBC version had simple beeps and similar.

I don’t know, therefore, if the BBC version of Exeria included versions of the adventure games, but I it probably did – and who knows if they were the graphical versions? (Well, the five or six people who bought the game might!)

There was a brief discussion on the Stardot forum a few years ago about a CD collection (released by APDL) of my RISC OS games. During the course of that discussion, amongst other things, the subject of the 8-bit versions of Pyramid and Crystal were mentioned – and I found a disc that (based on the written label) appeared to be a ‘new’ 3.5″ Escape from Exeria master disc. If that label was correct, it would include Return (which I didn’t have a copy of on any current machines, and both Pyramid and Crystal.

I note I also said I’d upload the various games to the Soft Rock Software website shortly, but never did – but that may have been because I decided to put together my own collection (on CD and USB flash drive). I do still intend to upload the games, but more slowly, and with careful consideration of exactly what to make available for free, so as to encourage people to give me money for the CD.

In April 2018 (quite some time after that initial discussion), because I had a RiscPC up and running for another reason, I took a look at that floppy disc (and the others I had to hand) – and it was what the label said, so I copied its contents onto my network storage… and then forgot about them.

Earlier this week, Dave (Arcadian) from the Stardot forum asked me if I’d ever done anything with the floppy discs mentioned in that discussion – and after initially thinking I probably hadn’t, I pulled out the disc and noted that the disc label said ‘Recovered 13/4/18’.

The Escape from Exeria master disc – contents recovered and copied to my NAS on 13th April, 2018

Looking on my NAS, I soon located the relevant files and, as a result of that conversation, sent those for the two adventures to Dave, and with a little additional help from other Stardot regulars, they have been turned into disc images that can be run in a BBC Micro emulator.

The two adventures can be found on the Complete BBC Micro Games Archive listed under Soft Rock Software, where they (and many other – better – games for the BBC Micro) can be played in your web browser, or downloaded as SSD files for use in an emulator such as BeebEm (the Windows version of which can also be run on Linux under WINE).

I should add that I was a teenager when these were written, and the very brief instructions files that come with them contain silly spelling mistakes (and in the file for Crystal, I refer to the other game by mistake, calling the Purple Crystal the Sacred Pyramid), and there are also spelling mistakes within the games themselves – I spotted numerous while playing them myself, and felt suitably embarrassed, so I don’t need anyone to point them out to me, thanks!

There are also versions of the two games that run on RISC OS, but I’ll save any commentary on those until such a time as I make them available to download. They are currently included in the Soft Rock Software Collection, which I sell on CD and USB flash drive at any RISC OS shows I attend (and I really should sell online), but I will eventually put at least one version of each online.

Related posts