Ultima 6 Technical Documents

Courtesy of former Origin programmer Bill Randolph, and thanks to the tireless efforts of Joe Garrity of the Origin Muesum, Ultima Aiera is pleased to present four documents — which have been broken out into over thirty images — which discuss some of the technical details of Ultima 6.

Specifically, the documents — all of which appear to be internal documents from Origin Systems — discuss the conversation syntax of the game and its technical implementation, the object design of the game, and the in-house map editor that Origin developers used to construct the Ultima 6 game world.

Download the documents:
* Ultima 6 Conversation Syntax (4.6 MiB, 975 hits)
* Ultima 6 Map Editor (1 of 2) (1.2 MiB, 735 hits)
* Ultima 6 Map Editor (2 of 2) (4.1 MiB, 566 hits)
* Ultima 6 Map Editor (2 of 2) Page 5 Overlay (853.1 KiB, 557 hits)
* Ultima 6 Object Design (10.1 MiB, 898 hits)

Note: There are four documents, but five downloads; the extra file is a scan of the last page of the second document concerning the map editor, with the two sticky notes that were found stuck to that page left in place.

There is some truly fascinating stuff to be found within these pages, at least for those who enjoy getting a look at the technical foundations of software.

The conversation syntax document, for example, contains several mentions of variables and functions which looked at and/or modified the karma of the player, a fact which teases the possibility that karma was once supposed to be a more significant factor in Ultima 6.

The object design document is amusingly ketchup-stained, and is probably the document I find most fascinating, for how it goes into byte-level and bit-level detail about how different in-game objects were referenced and allocated by the game. For someone who remembers his assembly language programming classes with some fondness, that sort of thing is like catnip.

The map editor documents are also well worth a look, and tell us a fair bit about the utility. It had mouse support, for example, and a few intriguing bugs. The document also contains a reference list of flags that could be applied to NPCs, including one that meant the NPC was under the player’s control. While I assume this was primarily used to implement the ability of the player to assume control of other party members, I can’t help but wonder if it could also have been used — and perhaps was once intended — to allow the Avatar to possess other NPCs and control their actions for a brief time?

Bandit LOAF of the Wing Commander CIC offered a few additional insights when Joe and I asked for his input. Ever a font of information, he had this to say as a general comment on the documents as a whole:

The great thing about these sorts of finds is that no matter what it is you know that eventually someone will really appreciate it. In all honesty, most of the straight “coding” stuff like these leave me entirely cold…but I know if we publish it then eventually someone is going to show up who understands exactly what it means and tell me that it solves X, Y and Z mystery about the games.

In my mind, the story behind these documents is that they’re really showing Origin’s maturation. They capture the moment of transition between New Hampshire and Texas, between Apple and IBM PC coding, between doing things one product at a time and and planning for the future and generally between being something of a fly-by-night operation and the top of the industry.

More importantly, before this development was linear. They built Ultima III, shipped it and then sat down to evolve it into Ultima IV and so on. The material you’re seeing here are based on the new understanding (something that the industry is based around entirely today) that if you put a little more into the development overhead as you’re starting out you will reduce overall effort and cost by creating tools that can be applied to a wide range of games. Basically the first glimmer of building a comprehensive ‘engine’ instead of a single game.

He’s correct, of course, and we see this sort of development being used quite a lot by companies these days. To take just one easy example, consider the list of BioWare games published for PC since the release of Neverwinter Nights. With the exception of Mass Effect, every BioWare game since NWN has used an evolved, retooled version of the Aurora engine, the NWN engine. Even Dragon Age 2 has elements of Aurora about it. And LOAF very correctly notes the beginnings of a similar attitude present in these documents.

Concerning the Object Design document, LOAF had this to add:

I think the lack of humor is kind of funny in these. Looking at code and design documents for later [projects] there’s much more “ease” and a sprinkling of in-jokes and comments that only the team would appreciate–this stuff is DEADLY serious. You get the feeling they know this is going to be reference work for future projects (and surely it was).

You just know they realize this is going to be read by the folks doing Worlds of Ultima and that King Arthur game and so on.

Joe also drew my attention to some of the scrawled notes that appear throughout the documents, and in particular commented on a note scrawled on the second page of the Object Design document stressing the inclusion of the shape number for Mimics in the object data structure. This, he suggests, highlights the importance of the art assets (and, consequently, the art team) to Origin’s development process, and frankly I find I agree.

Meanwhile, concerning the Map Editor documents, LOAF picks out an interesting detail that, frankly, I missed taking note of:

Is it interesting that you can import Ultima V tiles into the U6 world editor? I don’t know enough about the art assets to tell if that connection was obvious or not.

The [tenth] chapter of the Official Book of Ultima has a couple pages describing the tool in use. Worth digging up!

I suppose it might have made sense for Origin to allow the use of Ultima 5 art assets in the map editor for the purpose of developing rapid mock-up maps for playtesting. Still, it’s a curious feature.

Anyhow, the usual disclaimers follow.

The images here, in JPEG format, are lower-resolution extracts from PDF scans of the original documents. They are legible, but not of particularly high quality, and thus are not recommended for printing; download the PDF files for that purpose.

Most importantly, though: enjoy! Pull up the images, download the PDFs, and pore over them. Search out every little detail, and enjoy a fascinating glimpse into the nuts and bolts of how Origin crafted a truly ground-breaking RPG. Ultima Aiera is indebted to Joe Garrity for providing these documents, to Bill Randolph for releasing them and making them available for us to see, to Ben “Bandit LOAF” Lesnick for his invaluable insights, and to Cheryl Chen, Herman Miller, and everyone who worked at Origin Systems.

4 Responses

  1. Ultima 6 Technical Documents | Ultima Aiera
    Ultima 6 Technical Documents | Ultima Aiera at ·

    [...] Ultima 6 Technical Documents [...]

  2. Ultima VI Technical Documents Online
    Ultima VI Technical Documents Online at ·

    [...] Ultima VI Technical Documents at Ultima Aiera [...]

  3. Ultima 6 Technical Documents
    Ultima 6 Technical Documents at ·

    […] You can download the documents here. […]

  4. sadguy
    sadguy at ·

    links broken…

Leave a Reply