For those of you who don’t know, I did write one other computer game in the past, The Missions of Starship Reliant (aka, Missions of the Reliant). I had always wanted to write and release a game throughout my childhood, but all I knew back in the 80s was BASIC, and that never got me very far. And so, at one point in my mid-twenties, and being a Mac fan and all, I decided to pick up some books and learn Pascal. In 1994, amid great imaginary fanfare and to much fictitious critical acclaim, the first version of Missions was released in all of its $20 shareware glory. (The sequel, Missions II, was released in 1996, but it was really just an expansion of the original and not truly a sequel. It just sounded cool.)
Missions was based on the (really) old ASCII Star Trek games that once graced the mainframes and dialup services of the 70s. I didn’t know much about the origin or full history of that game, assuming that it began around the time that David Ahl published the DEC BASIC game Space War (later renamed Super Star Trek) in his most excellent 1973 book, 101 BASIC Computer Games. Even Ahl, however, refers to a first version appearing in 1971, when Mike Mayfield wrote a version in BASIC for the Sigma 7. According to Mayfield himself:
Back in 1971 I was a senior in high school. My school didn’t have any computers, but I had managed to “use” (read “steal”) an account on a Sigma 7 at University of California, Irvine. I was trying to teach myself BASIC from a book. At the time there was a program that ran on a vector graphics terminal on the Sigma 7 that was a simple “shoot-em-up” space war game. I wanted to make a game like that, but I only had access to an ASR-33 Teletype non-video terminal (hey, there is only some much I could “use” in high school).
This was back when Star Trek was hot. A bunch of my other geek friends from high school and I spent a lot of hours brainstorming what we could do if we didn’t have a video terminal. Since I was the only one in the group that had any knowledge of computers (little as it was), we ended up coming up with a lot of unimplementable ideas. One idea that did stick was the idea of printing a galactic map and a star map to give you some idea what to shoot at, and having phasors reduce power exponentially, like they would if they shot in all directions. It may seem pretty simple now, but for a bunch of high school kids in the early seventies, it seemed pretty cool.
The program went through dozens and dozens of iterations, mainly over the summer after we graduated. I didn’t have any disk space allocation, so I had to punch a paper tape each day when I finished and load it back in again the next day. Working on a 10 character per second terminal forced me to keep the program small. Otherwise, I probably would have gone crazy adding feature after feature.
Late that summer I bought HP’s first programmable calculator, the HP-35. I ended up going down to the local sales office several times for help on the programming. One time they mentioned that I could use their computer if I would convert my Star Trek program to their computer so that they could use it. Since their BASIC variant was so different from the BASIC on the Sigma 7 and the program had gotten pretty messy by then from all the changes, I ended up just doing a rewrite. The program was added to HP’s public domain library, which is where Dave Ahl got it.
It appears that, even though there are earlier versions of a game called Space War that date back to the late 1960’s, Mayfield’s version was considerably more advanced, and became the de facto Star Trek standard in 1973 when it made its way into the HP contributed program library. For those interested, there is a great writeup of the history on a web page by Maury Markowitz. (If you’re really nerdy, you can see the code to Mayfield’s 1973 HP BASIC version here.)
In the old ASCII game, the idea is that the Klingons were invading Federation space, and it was the player’s job to scoot around in the Enterprise from sector to sector exterminating every last one of them in a thrilling binge of pure xenophobic annihilation. Space was divided up into grid-like quadrants and sectors, with short-range scanners (as above) showing the contents of the current quadrant. ASCII characters represented the Enterprise, Klingon ships, starbases, and stars. Long-range scanners showed the contents of each quadrant numerically in the format XYZ, with X being the number of Klingons, Y the number of starbases, and Z the number of stars. Players then used phasers or photon torpedoes to wipe out the invading forces before moving on to the next quadrant, and so on.
I thought it would be fun to convert the text-based game into a 2D, sprite-based game, and introduce some Star Trek: The Next Generation flair. Paramount, naturally, was really into protecting its intellectual property back then, so I had to change things enough to keep it under the radar. If I remember correctly, when I chose the name Reliant, I had in mind the ship from Star Trek II: The Wrath of Khan, and I think early versions of the game may have even used a similar ship design. But I ended up modifying the design later on, while keeping the name.
Like any decent inexperienced, naïve game developer, I was far more interested in development than in all of those important post-development marketing strategy tasks, so once I had finished making the game things were fairly haphazard afterward. I recall uploading it and promoting it on a number of BBSs and community sites, like AOL, CompuServe, and yes, even eWorld. I also took mail orders and sent floppy disks by mail, as difficult as that is now to fathom (it took a bit of effort to cram the whole game onto a 1.4MB floppy, let me tell you). In the end, I probably spent more on memberships to those communities and on postage than I made from the game. But of course I didn’t really care, I enjoyed the whole experience. I even got some recognition from it, earning honorable mention for Best New Shareware Game from the old MacUser magazine in October 1994. I still have that copy sitting around my office somewhere.
I did keep track of all of the registered users in a database, but I don’t recall ever coming up with a final tally of how many people paid the shareware fee. I do remember a couple of things, however: (1) the number of registered users wasn’t many, somewhere around 250-300; (2) Steve Wozniak was one of the registered users (woot); and (3) lots of folks seemed to make money distributing CDs with the unregistered shareware version on it. So it goes, as they say.
I didn’t think too much more about the game over the years, until sometime around mid-2007 when I decided to Google it to see what evidence of its existence might still be out there on the tubes. Aside from a few references to old archived files, not a whole lot — except for one thing, a thread on the MacRumors Forums from somebody wondering what might have happened to the game.
I responded partway down the thread, offering a free registration code to anyone who was still able to run the game and wanted to unlock the full version. Thanks to the magic of SheepShaver, I’m still able to run the Unlocking Tool program that generates registration codes, and it’s not like it takes any effort on my part. I’ve actually been surprised at how many people since then have found their way to that thread on that forum. Seems like a couple times a month I’m getting an e-mail from someone interested in reliving a bit of the past.
This month, though, was a little different. About a week ago I received an e-mail from Gwynne Raskind, apparently a Missions fan from back in the day, but also a talented Mac programmer. Maybe you can see where this is going.
She asked if I was interested in seeing an OS X port of Missions, and volunteered to take on the Mac Toolbox-to-Cocoa port if I still had the source code and was willing to share it. It’s a pretty fantastic idea to me, really. I’d love to see the old game running again on today’s systems, and SheepShaver doesn’t count since (a) the sound is messed up, (b) you need an old Mac OS ROM file, and (c) it’s kind of an unsupported mess to get up and running.
My only stipulations were that first, the port would need to be released as free/donationware, and second, that she couldn’t laugh at me while reading my old code. At least, not to my face.
One of the more interesting parts of this process was digging up the old files. These are files that I’ve been holding onto, and passing down from one system to the next, for nearly 20 years now. I can’t even remember all of the different systems I’ve had over the years, but I’m reasonably sure I started the project on a Mac IIci, and did most of the work on a Quadra 840AV. Good times. Not sure why, but it just seems strange and a little crazy that somewhere in the depths of my hard drive are decades-old files that, for the most part, are still readily accessible, a quick glimpse into an earlier period of my life.
Of course, that meant that I proceeded to spend a couple of hours sifting through all of the goodies buried within, and a number of things that I had completely forgotten about — including a couple of minor Easter Eggs that slipped my memory. It was a pretty fun trip into the past, even though the files have been sitting on my drive the whole time. Just stored deep in the basement closet, underneath all of the old clothing and board games.
Gwynne will be keeping a running blog of the whole experience over on her site, starting with the first entry yesterday. I’ll be following along closely. Hopefully some of you will find it interesting, too.
Enjoyed this article? Subscribe to The Monk's Brew RSS feed.