Centauri Alliance

History

I played a lot of adventure games on my old Commodore 64. Of course, I grew up during the golden age of Infocom, and played Zork, Zork II, Zork III, Planetfall, Deadline, The Leather Goddesses of Phobos, Lurking Horror, and the all-time classic: The Hitchhiker’s Guide to the Galaxy. There were a few attempts at marrying text adventure games with pictures, like Fahrenheit 451. But, most majestically, there was the whole The Bard’s Tale series, Wasteland, Knights of Legend (one of the few games I never finished), and Centauri Alliance. Some of these were pretty difficult. I was stuck at about 60% on Zork, until I finally found a walkthrough on the internet. However, I want to note, for the record, that I completed HGttG without help, and some people regard it as one of the hardest adventure games ever.

I don’t usually like to cheat at video games. I think it takes almost all of the challenge out of it, and I always lose a lot of interest in actually finishing the game when I do. But sometimes… I just get frustrated. With The Bard’s Tale, I got to a point in the adventure where I just kept dying. I had progressed through the story too quickly, and my characters had not accumulated enough experience to get through the whatever dungeon I was trying to get through. Either it never occurred to me to simply “grind” until I got a few more levels, or it did, and the idea bored me. Instead, I opened the save disk with a hex editor, and looked to see how my characters’ stats were recorded. I found a very straightforward system at play. I tried a few hacks, but I couldn’t figure out how the leveling system worked. I finally settled on just increasing their experience points (and gold pieces), then going to the guild, and putting a weight on the key that “interviewed” for a higher level. When I was done, everyone in the party was around 900th level.

BTII was glitched. My save disk had an infinite supply of all the weapons in the game available at the stores, which made hacking my characters irrelevant. It even included one each of the 7 parts of the magical rod you had to put together. I always wondered if this were the case for other people, or if a fortuitous disk error caused this to happen just for me…

My 1541 disk drive had died a long, long time ago. I thought about selling the whole kit on eBay, but C64′s — even with all the stuff to go with them — are hardly even worth boxing up. You might get $30, at least when I last looked. Because of this, a friend gave me his old C64, with all the accoutrements. He even had the monitor I had always wanted! Anyway, his floppy drive got me back up and running, so I got all of my stuff out and had some fun.

I played some old games, the way they were meant to be played: not through an emulator. I resurrected the programs I had written. Of course, nothing was useful any more, but it was great looking over the aborted AD&D character generator I had written, which is what got Dad to upgrade me from a Vic-20 to a C64. (He promised that, if I ran the Vic out of it’s 4.5KB of usable memory, he’d get the bigger machine. I got it, and quit working on the program.) It was still interesting to see the D&D character sheets I had designed via control codes to a dot-matrix printer. Then there was the almost-complete, level-18+ AD&D (2e) adventure I had written. I looked over it, thought it was really cool, started to reformat it in a word processor, then trashed it, because of this. However, there was also the entirely-new, post-apocalyptic RPG I was writing. That one I cleaned up and saved…

Disk Corruption

One of the significant things about this diversion was Centauri Alliance. I had bought the game back when it came out, but I screwed up the master save disk. I wrote the company, got a replacement, and then screwed up the new disk. So it sat for, like, 15 years. When I was playing around with everything again, I wanted to finish the game, so I downloaded the images on the internet, and tried to play on an emulator under Linux. Lo and behold, they were screwed up too! Only in a different way. So I created disk images of my good disks, and combined that with the cracked boot disk and blank generic save disk from the Moby Games site, and played through the game.

Here are the Centauri Alliance Scenario Disks, which are the good ones.

I also finally actually finished the game, though I used a walkthrough. Heavily. I wanted to see how the game ended. I didn’t want to spend all the time mapping the levels. That’s just not how it’s done any more. ;-)

Hack

Of course, when things started to get tough — and they definitely will in this game, especially if you’re speeding through with a walkthrough — I decided to try hacking my characters. I found a page on someone’s web site about how they thought it should be done, but it didn’t add up. (If I recall, he was saying something about adding 0xD to the stats.) I can’t find that page any more. There’s this one, but he doesn’t have much there. So I figured it out on my own.

Characters are stored on the Roster disk starting at even offsets, like 0×1600, 0×1500, 0×1700, etc. I couldn’t find a rhyme or reason to their ordering. Their names are obfuscated. I figured out who was who by hacking where their names should be, and seeing whose name was nerfed when I reloaded my last save.

My notes were all really sketchy by the time I made this page, and it’s been several years since I did this. If I understand my scribbles, the experience points bytes are offset 30-35 inside the character.

Each stat is XOR’ed with a different byte. They are:

LIFE 0xF9
PSI 0x3B
STR 0x0C
IQ 0×20
VIT 0x5A
AG 0x6A

Each of the 14 different skills are similarly encoded:

Melee 0xCC
Thrown 0×26
Sidearm 0xC3
Master 0xC4
Hardware 0×41
Weaponry 0×06
Bio 0x9B
Ancient 0x4D
Mind 0xFC
Body 0xD2
Matter 0×49
Energy 0×63
Metamorph 0×75
Shape 0×42

I don’t even quite know why I’m bothering to put this up. There’s probably not another living person who will ever care about this by now. But, hey, this is why the internet was created, so why not?

  • You may use these HTML tags: <a> <abbr> <acronym> <b> <blockquote> <cite> <code> <del> <em> <i> <q> <strike> <strong>

  • Comment Feed for this Post
Go to Top