Carrier Command was coded and co-designed by Realtime Games, a small team of programmers based in Leeds who were behind a number of successful self-published 8-bit games including 3D Tank Duel, 3D Starstrike and Starstrike II. They also coded Starfox for Ariolasoft (published on the Reaktor label) and did a brilliant job converting Argonaut’s Starglider to the Spectrum, Amstrad CPC and IBM PC platforms for Rainbird. 3D was their speciality.
Ricardo Pinto, Clare Edgeley and Gary Sheinwald began working on the new game. The idea of a carrier force fighting another carrier force across an archipelago emerged from the various brainstorming meetings at Rainbird. Gary and Ricardo then fine-tuned the ideas and Ricardo typed them up. This resulted in a six-page design document called ‘Strategic Carrier Simulation’, retaining the SCS acronym of the previous game design. Realtime then responded a few weeks later – on August 4th 1987 – with a five-page overview that was split into eleven brief sections, covering the world the game was to be set in, an overview of the ultimate objectives, a description of the islands and a breakdown of other game features like building control centres, why the player would want to capture an enemy control centre and so on.
These two documents became the bible from which the final design would emerge, although Realtime were insistent that they acted as final arbiters on what went into the finished game. If they couldn’t code it, then it didn’t go in! Programming started in earnest in the Summer of 1987 and the tight deadlines of the original contract were extended. The majority of the game was coded by Ian Oliver and Graeme Baird, as Andy Onions was busy on other projects. Graeme worked on the 3D system and Ian tackled everything else.
Gary Sheinwald became Project Manager for SCS, overseen by the Senior Project Manager at TelecomSoft, Graham Wayne. The early ST versions used a very dark colour palette, so Gary asked Realtime to brighten things up a little. Ian Oliver joked that it was dark because they were only used to writing games set in space! Both parties knew that the SCS name was likely to be replaced in the future, so at Realtime they started calling it Aircraft Carrier (or ACC for short) whilst at Rainbird it was called Archipelago for the majority of the games’ development.
Realtime had a demo 3D system up and running quite quickly, but no control system so Ian sat down one day and wrote a routine called ‘choccyboxes’ that drew square buttons on-screen. As the day went on, this became the basis of the icon-driven system that gave the player control of the game outside of the 3D window. Proper artwork for the buttons came later, but the basic system was born that day.
The islands that made up the archipelago were given some interesting names by Rainbird and Realtime. Names included Serrano, Odracir (Ricardo backwards!), Edgeley and Byrne. There were also a few Greek mythology references including Charibdis, Dndymion and Medusa and just for laughs, one of the islands was named Milestone just so you could sail past it!
Good progress was being made, but Realtime eventually hit a potentially huge problem. They ran out of money. They had relinquished publisher duties back when they converted Starglider for Rainbird, so the only income heading their way were royalties from their older 8-bit games (which was a rapidly declining market thanks to the surge in popularity of the 16-bit Atari ST and Commodore Amiga) and the milestone payments coming from Rainbird for SCS. Rainbird agreed to make some of those payments early, to help keep Realtime afloat so they could finish the game but it was a tense few last months of development. Realtime had underestimated the amount of work involved in creating their debut 16-bit game, and they were also using tools that were no longer good enough.
The last few weeks saw Gary Sheinwald live out of a hotel in Leeds, working with Ian and Graeme to get the game finished on time. Unfortunately, the enemy carrier’s behaviour was a little erratic in the initial 16-bit versions as they ran out of time to properly test and tweak the A.I. routines. As a result, the enemy carrier did ‘cheat’ a little and do the odd eccentric manoeuvre, like driving onto some of the islands! The later IBM PC and Mac versions had much improved enemy A.I. in comparison. Ian Oliver wrote nearly 5000 additional lines of code for the A.I. in the PC version, including code for navigating around islands and plotting routes of shortest distance – taking fuel needs and supply lines into account.
The manual for Carrier Command was quite large and detailed and was written by Gary Sheinwald. The game is quite complex to master but simple enough to learn thanks to the icon-based system, and the manual leads the player through the basics in a nice, logical order. It also has a little in-joke buried within the plot. According to the manual, the lead programmer for the rogue Omega carrier was Dr. Oliver Baird-Onions – in reality an amalgamation of the Realtime Games team – Andy Onions, Graeme Baird and Ian Oliver!
Carrier Command was Realtime’s first original 16-bit title, and was initially published for the Atari ST and Commodore Amiga in early 1988. All other versions (Spectrum, Amstrad CPC, C64, IBM PC and Mac) were published the following year, after Rainbird had been sold to Microprose. The Commodore 64 version was the only version not coded by Realtime, probably due to the hardware not being particularly adept at 3D. C64 experts Source took the game design and employed a sprite-based top-down view instead, which didn’t really work that well.
The ST and Amiga versions of Carrier had already been released by the time I joined TelecomSoft in ’88. My involvement was therefore concentrated on play testing the remaining versions. Andy Onions was the programmer of the Z80 versions (Spectrum 128k/+3 and Amstrad CPC) and unfortunately I was to become the bane of his life for the next 12 months or so!
Bug testing the Spectrum version of Carrier was a long and often torturous process. Each new version meant starting the game from scratch, and I can remember generating long and copious bug reports for Realtime that kept them busy for weeks! Back in those days, the quickest way to send bug reports was by fax. The developer would then phone up and go through the problems they couldn’t replicate at their end, or seek clarification. I would spend hours talking through the bugs with Andy Onions – bugs like the resource network grinding to a halt, or the islands floating in mid air off the ocean, or the islands being completely invisible!
The Spectrum version was developed for the +3 and then mastered to cassette and converted to the Amstrad CPC afterwards. The manual protection could only be added to the game near the end, once the manual had been finalised. I should say here and now that I was not at all happy with the quality of the printed screenshots in the final Spectrum manual. I re-edited the original manual to make it appropriate for the Spectrum version, and I also took the screenshots. However, only the production department at Microprose would know why the screenshots turned out so badly on the printed page.
All other versions of Carrier were way behind schedule during 1988/89. The TelecomSoft marketing department were going through their phase of advertising almost everything that we had in development long before it was finished. (In hindsight of course, I think this marketing decision was driven by the knowledge that BT wanted to sell the company off, so advertising everything we had in the pipeline was thought to be a good idea!). The Spectrum version of ‘Carrier’ was advertised in the summer of 1988 in computer magazines (complete with RRP), even though it was nowhere near finished. Ultimately, all of the remaining versions weren’t published for another twelve months.
As with the loading screen for Starglider 2, I also contributed some graphics to ‘Carrier’ on the Spectrum. I can remember being a unimpressed with a few of the icon graphics that Realtime had come up with so, armed with a copy of Softek’s ‘The Artist’ drawing package, I contributed three or four of the icons myself. Unfortunately, when the game was ported to the Amstrad CPC, my icons weren’t included for some reason so that version still has all of the original inferior icons in it.
Thankfully, I wasn’t involved with bug testing the Commodore 64 conversion. I was quite happy about that, as I thought it was poor compared to the Spectrum and CPC versions. I did get to test the PC version for a while before I left Microprose, and I was very impressed with it. It’s very funny now to think that Realtime had to ‘clamp the speed’ of the PC version so it didn’t run too fast on a 286 PC! The PC version included a few extras that other versions didn’t have. For example, you could see the view from all your active Mantas at the same time.
Development versions of PC ‘Carrier’ used the sixth edition of ‘The Little Oxford Dictionary’ for temporary ‘manual protection’. Nowhere in the code did it mention which manual to use, so if development versions got leaked, nobody would be able to easily gain entry to the unfinished game.
The Mac version was written on a PC using SNASM and sent to the Mac using a SCSI lead and some SCSI drivers written by Ian Oliver. The first version that Realtime developed booted off a floppy disk and drove the Mac hardware directly. They even wrote their own screen, keyboard, mouse, floppy, sound and Apple Desktop Bus drivers, and had music playing directly off a floppy via the sound system. This version was scrapped once they learnt more about how the Mac OS actually worked.
Unlike their first attempt, the second Mac version ran as an officially legal Mac OS programme, running in a window, using desktop gadgets, multifinder and all the usual Mac menus and options. They even got the game running on the Mac 2 once they removed a small amount of self-modifying code. That version wasn’t strictly 100% legal as far as Apple were concerned, as it did still fudge a few things to get over some technical issues.
Finally, Mac ‘Carrier’ had the AI from the PC version ported over to 68000 code. I personally don’t remember seeing much of the Mac version at the time, but I do remember thinking it looked like a monochrome ST version would have looked. It only ran on 512k Macs using v6.0.7 of the Apple Mac OS. It was published by Microprose in the US via their MicroPlay publishing label, and Realtime were less than happy with how Microprose marketed and sold their game once they had bought Rainbird from BT.
SNASM was a suite of development tools designed specifically by Ian to replace Realtime’s reliance on PDS. Its development was sub-contracted and an entirely new company called Cross Products Ltd was set up to support it. SNASM went on to be used by a number of other developers and publishers over the next three or four years for cross-platform 16-bit development. What it gave developers was high speed downloading to target machines and remote debugging.
SNASM went on to produce development kits for consoles, including the Sega Megadrive. It was this innovative product that got Sega’s attention, and they ended up buying Cross Products.
From the original contract, only the Spectrum 48k and Amstrad PCW 8256 versions failed to appear. Of course, the development time ended up being over two years rather than the paltry eight months agreed in the contract!
Thanks to Ian Oliver, Ricardo Pinto and Gary Sheinwald for their recollections.