§ root / l / g / ultima-1

Ultima I: The First Age of Darkness

Ultima is an influential RPG with a central quest, overworld map and first person dungeon crawling. It was released for the Apple II in June, 1981. Richard Garriott developed Ultima by building on the BASIC codebase of his previous game Akalabeth. He recruited the help of Ken Arnold to write a fast tilemap system in assembly language. More recent releases of the game use the title “Ultima I: The First Age of Darkness” but the original title was just “Ultima”.

Dungeon Delving in Ultima 1.
Dungeon Delving in Ultima 1.

Akalabeth “made enough money to pay for my college education,” he recollects. “Of course, I quickly squandered it and didn’t actually save it for school. But with that as an example, I said, ‘Gee, if what I’m doing for fun can make money, it’s logical to write a much better game intended for publication.’”

- The Official Book Of Ultima by Shay Adams 📖

Unlike later Ultima games which were box releases, Ultima 1 was released in a ziploc bag containing the disk, a play book, reference card and “cover” art page. It was published by the same publisher as Akalabeth, the California Pacific Computer Company.

Ultima 1 Cover art page
Ultima 1 Cover art page

Gameplay Video

Setting

Ultima is a strange mix of sci-fi and fantasy themes, even the starting screen announces this with it’s tagline: “From darkest dungeons to deepest space!”.

The start screen for Ultima 1.
The start screen for Ultima 1.

The game starts in the overworld. The player is presented with a birds eye view of a map that the character can navigate one tile at a time. On entering a dungeon the display switches to a 3D first person perspective. This mix of world map and first person dungeon is straight from Akalabeth.

Narrative / Goal

The goal is to free world of Sosaria from the evil wizard Mondain. How this is achieved is quite unusual; the player, known as “The Stranger” must find a way to travel back in time and destroy a magic gem Mondain created to grant himself immortality.

Character Creation

The game flow begins with a screen presenting two options; to create a new character or continue a previous game. On choosing to create a new character you’re asked to insert a save disk to store your progress.

Stats

The character creation screen for Ultima 1.
The character creation screen for Ultima 1.

Choosing to create a new character takes you to the character generation screen, as shown above. There are six stats:

  • Strength - Increases strength of melee attacks.
  • Agility - Reduces chances of you getting hit.
  • Stamina - Used in defense calculations.
  • Charisma - Better prices when buying and selling items.
  • Wisdom - Better price for buying spells. Used in some spell damage calculations.
  • Intelligence - Used in spell damage calculations.

The stats are similar to Akalabeth but Agility has replaced Dexterity and Intelligence and Charisma are new additions.

At the top of the screen is a prompt “Points Left To Distribute” next to the number 50. To create a character these points need spreading among the stats.

Race / Classes

After allocating the stat points you can choose a “Race” by pressing 1 - 4. Races provide these attribute modifiers:

  • Humans +5 Intelligence
  • Hobbit -5 Strength, +10 Wisdom
  • Elf +5 Agility
  • Dwarf +5 Strength

In later versions of the game Hobbit was renamed Bobbit to avoid IP issues with Tolkien.

After race you next chose “Type”, known as Character Class today. Character classes provide another set of attribute modifiers and influence other aspects of the gameplay.

  • Fighter +10 Strength, +10 Agility
  • Cleric +10 Wisdom, Casting never fails
  • Wizard +10 Intelligence, Access to the Blink, Create, Destroy and Kill spells
  • Thief +10 Agility, Less likely to be caught stealing, Better at Unlock action

Then finally you can choose your name by typing one in and confirm you want to continue, at which point you’re return to the original menu where you can now choose “Continue Previous Game”. There’s a loading screen and the game begins for real.

The game begins with a top-down view of the world with your character in the middle of the screen. At the bottom right of the screen and the some more stats that show your character has 150 hitpoints, 200 food, 1 experience point and 100 gold.

Ultima 1, games start with an overworld map.
Ultima 1, games start with an overworld map.

Hit Points in Ultima

In most RPGs hit points are a stat with two values:

  1. Your maximum hit points
  2. Your current hit points that are the same or less than the maximum amount.

This isn’t true of Ultima 1. Your hit points are a simple counter. There is no maximum value. You can increase your hit points as much as you want by giving a king character gold.

Input

Ultima is a keyboard only game. Below main controls.

Key Action Description
a Attack Attack
b Board Mount a horse or board a vehicle
c Cast Cast a readied spell
d Drop Drop gold, weapons, or armour in a castle or city
e Enter Enter a town, castle, dungeon, or landmark
f Fire Fire a vehicle’s weapon
g Get Pick up Mondain’s gem or an item from a king (with permission)
h Hyper Jump Travel to next system in direction you are facing on sector map in space
i Inform & Search Tells you where you are on field, looks for secret doors in dungeons, performs a sector scan in space
k Klimb Climb up or down ladders in dungeons
l Lag Time Sets the amount of time the game waits after a monster’s attack (default is 3)
o Open Open a coffin in a dungeon
q Quit Save game (doesn’t actually quit)
r Ready Equip weapon, armour, or spell
s Steal Steal from shops or castles
t Transact Buy from merchants or speak to a king
u Unlock Open a cell in a castle (requires a key) or a chest in dungeon
v View Change Switch between top view and front view in spacecraft
x X-it Dismount from horse/disembark from vehicle
z Ztats Look at your statistics and inventory
spacebar Pass Pass time

The Apple II didn’t have up and down arrow keys so the original movement keys are: Enter, Left Arrow, Right Arrow and /.

On top of these keys for directly interacting with the world there are simple choice based menu where you’ll use the number keys to select an option.

You’ll note a few interesting verbs in there like “Hyper Jump”, the earliest microcomputer RPGs tended to play around with both scifi and fantasy ideas. This wasn’t without precedent from D&D itself there’s campaign called Temple of the Frog, originally released in 1975 as a part of the Blackmoor Supplement, and it has twist where the party discover they’re fighting an alien who crashed landed on their planet.

Realtime or Turnbased

Ultima 1 is mostly turn-based but those turns have a time limit and if you don’t input an action the game will advance your turn regardless.

Exploration

The game starts in the overworld with the character in the center of the screen. The character stays centered when pressing the movement keys;giving the impression there’s an overhead camera following the player.

While walking around the world map you can encounter enemies and take part in combat. The view stays the same but an additional character sprite is drawn to show the enemy and the combat simulation happens in the log window at the bottom of the screen. On land every step has a 5% chance of combat and the sea or woods has a 10% chance.

Fighting Evil Trents on the overworld map.
Fighting Evil Trents on the overworld map.

You can also discover locations and enter them by walking on the tile and pressing E. Below are a couple of screenshots of the player character approaching the castle on the world map and then moving onto it’s tile and entering it.

Approaching the castle on the world map.
Approaching the castle on the world map.
Entering the castle from the overworld.
Entering the castle from the overworld.

The world map is divided into four continents and all the locations are pre-authored.

Castles

In the castle above, the view remains top-down but the map is fixed to the size of the screen. The camera no longer follows the character but you can still wander around interact with the people and objects.

Inside a castle in Ultima 1
Inside a castle in Ultima 1

The castle has shops, the king, imprisoned princess and pools where you can drop coins for rewards, including weapons, stat boosts and food. Talking to the King gives you option to accept a quest or spend gold to gain hit points.

Landmarks

There are eight landmarks, two per continent, each identified by a sign-post icon on the overworld map. These can be entered for different effects but you can’t trigger the effect twice in row, you have visit a different landmark in-between to reset it.

Landmark Enter Effect
The Eastern Sign Post No effect
The Grave of the Lost Soul No effect (Raises Stamina in FM Towns-port)
The Pillar of Ozymandias Raises Wisdom
The Pillars of the Argonauts Produces weapons
The Pillars of Protection Raises Agility
The Sign Post Raises Stamina
The Southern Sign Post Raises Charisma
The Tower of Knowledge Raises Intelligence

Dungeons

There are 36 dungeons in the overworld. All dungeons are ten levels deep. These all have unique names like: The Guild of Death, Free Death Hole, The Savage Place and The Lost Caverns. There are nine dungeons per continent.

Discovering a dungeon on the world map.
Discovering a dungeon on the world map.
Venturing into the Unholy Hole.
Venturing into the Unholy Hole.

Each dungeon level layout is based on standard template per level that’s modified to make a semi-random dungeon level. The dungeon levels are generated at the start of the game and are then fixed for the duration of the game.

The only reason to venture into the dungeons is to complete quests to find and kill specific monsters. There are different monsters in the dungeons than the overworld and there are different monsters per dungeon level. Dungeon to dungeon the monsters encounter tables are all the same, so if you’ve found one dungeon that’s all you need.

When you enter a dungeon the screen switches to a 3D perspective view. There are also ladders to travel up and down the levels. The dungeon may also contain secret doors, normal doors and traps. You can discover secret doors by inspecting the grid space it’s near by pressing I. There are a set number of monsters and if you kill one, another will respawn somewhere else in the level. You can also find coffins and chests that can opened and unlocked to grant treasure.

Screenshot wandering around the Unholy Hole.

While you’re in the dungeon food is consumed far more slowly so it’s barely noticeable, this means there’s less food-pressure when exploring.

Inventory

Players can collect gold, spells, weapons, armor and means of transportation. The inventory can be viewed on the stats screen.

The player here is carrying a dagger.
The player here is carrying a dagger.

The player character has only three inventory slots - armor, weapon and spells. Items are equipped or readied by pressing r.

Equipping the dagger.
Equipping the dagger.

Above you can see the prompt asking what the player would like to ready, here I chose “Weapon” and then I typed in the name of the dagger to tell the game that I’d like the player to equip that.

Having a peek in the code there are four types of item that can be readied.

RED(0) = Spell Readied
RED(1) = Weapon Readied
RED(2) = Armor Readied
RED(3) = Vehicle Readied

Items

Ultima 1 has a good amount of item variety for a game of it’s time. The majority of items are weapons, armor and a few key items.

Weapons

There are sixteen equipable weapons in the game. The weapons are a combination of close-quarters melee weapons, ranged weapons and then weapons that don’t support direct attacks but boost magic.

Weapons strength is based on their index number starting with a dagger at 1 and ending with a blaster at 15.

  • Triangle - same bonuses as the staff but you can melee attack with it.

Non-Melee Weapons

  • Amulet, when equipped causes the Magic Missile Spell to deal 50% bonus damage.
  • Wand, when equipped causes 100% spell damage bonus
  • Staff, when equipped causes the Magic Missile Spell to deal 300% bonus damage.

Armor

Ultima has five types of armor to discover:

  1. Leather
  2. Chain
  3. Plate
  4. Vacuum
  5. Reflect

That better armor the higher the number. Armor increases your chance to avoid damage when being attacked. To travel into space you need to be wearing the vacuum or reflect armor (or you die).

Combat

Combat occurs in-dungeon or on the overworld map. On the overworld map there are three tile types (land, water, forest) and each has different table of monsters that are used when an encounter occurs on that tile.

The combat code of Ultima 1 isn’t particularly easy reading here’s a small portion of it for the overworld map:

A = RND (1) * 20 + (C(1) + C(2)) / 5 + RED(1): IF A > 20 THEN 2070

Let’s break it down. The are 3 numbers calculated. - 1. Generate a number from 0 to 20. - 2. C(1) is strength, C(2) is dexterity. These stats are added and then a fifth of the total is taken. - 3. RED(1) gets the equipped weapons power value. (Daggers have power of 1 and a Blaster has a power of 15).

These numbers are then summed and if they’re over 20 then the attack lands and we continue to the damage calculation on line 2070.

2070 PRINT "HIT ";:D = INT ((C(1) + RED(1)) * RND (1)) + 1: PRINT "DAM.= ";D;:AH = AH - D: PRINT "▇▇▇"

Line 2070 starts by printing the word “HIT”. Then it calculates how much damage the hit will do. The damage calculation adds strength C(1), weapon power RED(1) to get the maximum damage. Then a random number is chosen from zero to the maximum damage and it’s rounded down to the nearest whole number, using the INT function. Finally +1 is added to get the hit’s damage.

The damage amount is printed i.e. HIT DAM.= 3 and subtracted from the enemies hit points (AH). The final print is a Applesoft BASIC escape sequence that highlights text by changing the background.

Here’s a reformulation of the code in a more modern language that might be easier to follow.

float hitChance = random() * 20 + (strength + dexterity) / 5.0 + weaponPower;
if (hitChance > 20)
{
   int damage = (int)Math.Floor((strength + weaponPower) * random()) + 1;
   monsterHP = monsterHP - damage;

   if(monsterHP <= 0)
   	// handle monster death.

}
else
  // Handle miss

Combat in dungeons has some differences but is mostly the same as in the overworld. The enemies you encounter in the dungeon build on those from Akalabeth. Enemies are represented by charming line drawings mostly inspired by D&D monsters. Many enemies only differ based on the sprite and stats but there are a few monsters with special abilities.

  • Gelatinous Cubes hits will destroy any armor that you’re wearing.
  • Mimics appear as chests until attacked or they attack you.
  • Mind Whippers can reduce your intelligence.
  • Thieves steal weapons but not the one you have equipped.
  • Invisible Seekers are invisible and require you to discover which side they’re attacking you from.
  • Gremlins steal half your food per hit.

Magic

You can buy spells from shops and you can have multiples of the same spell. Each time you cast a spell your number of that spell is reduced. Spells have restrictions for where they can be cast and certain spells are restricted to the wizard class. Spells have a chance to fail. The cost of spell in shops is subtracted from your gold AND your experience points.

Spell Description
Prayer Random effect see below
Open Open coffins without the risk of spawning monsters
Unlock Unlock chests
Magic Missile A ranged magic attack
Ladder Down Create ladder going down a level in a dungeon
Ladder Up Create ladder going up a level in a dungeon
Blink Teleport to random dungeon location
Create Creates a wall of energy infront of the player that can block enemies
Destroy Destroys a wall of energy
Kill A chance to instantly kill enemies

The Blink, Create, Destroy and Kill spells are only available if you’re a wizard.

Prayer always fails in dungeons but on the overworld map it can kill enemies, restore your food or HP if it’s they’re running low. The spell is somewhat random in what it does, if anything.

What’s interesting about magic in Ultima is of the ten spells only two are combat spells, the others are for interacting and travelling around the environment.

Advancement

Ultima 1 does not have a very traditional advancement model.

You gain hitpoints by giving Kings gold or escaping a dungeon after killing some monsters.

You gain experience points from killing monsters and each 1000 XP gives 1 level. Levels don’t impact gameplay, apart from gating the main quest, instead they’re just a progress marker.

Attributes can be increased by finding landmarks in the world. You can’t visit the same landmark twice in a row but otherwise you can continually revisit them for stat increases.

Then you can find and equip increasingly more power and effective weapons and armor.

Quests

In the game you can go to the castle and talk to the king whereupon you’ll be prompted to offer service and if you offer service you’ll be given your first quest. In fact the game forces you to talk to the king on visiting your first castle, any attempt to talk to anyone else will tell you talk to the king first.

The King can increase your HP or give you quests.
The King can increase your HP or give you quests.
The King giving you the first quest.
The King giving you the first quest.

Good, go and find the tower of knowledge. Do not return until thy quest is done!

The main quest, to complete the game, requires you player to do the following:

  1. Kill monsters and earn money
  2. Buy transport that will let you travel over the sea and reach the other continents
  3. Each continent has a king that will give you a quest, of the kill X monster variety, in return you’ll get a gem
  4. Earn 2000 gold coins and buy a shuttle
  5. Buy and equip a vacuum suit or a reflect suit so you won’t die when you go to space
  6. Use the shuttle to go to space
  7. Kill 20 alien fighters to get the title of “Space Ace”
  8. Go to a castle, kill the jester and get a key
  9. Free the princess from the jail with the key
  10. She’ll point you a time machine in the northwest, if you’re a “Space Ace” and over level 8
  11. Go to the time machine and activate it using the 4 gems and travel back in time
  12. Defeat the end boss Mondain

This is far more involved than any similar game of the time. Text adventures might have advancement logic that was as complicated but it was only Ultima doing it an open-world, RPG like setting.

Systems

Ultima’s early systems are basic but they provide hints and glimpses of the future legacy of theses games - a simulated, living fantasy world.

Pub

In some of the towns there are pubs. Here you can buy a drink and hear a rumour. There’s also a mechanic where if you’re standing near the wench character and have a drunk a lot, you’ll be seduced and lose your gold and a point of Wisdom (if you have 6 or more).

The rumours give tips about the game and very light world building here’s the full list:

  • “Thou had best know to watch the wench.”
  • “Thou had best know thou should destroy the evil gem!”
  • “Thou had best know that over 1000 years ago, Mondain the Wizard created an evil gem. With this gem, he is immortal and cannot be defeated. The quest of –Ultima– is to traverse the lands in search of a time machine. Upon finding such a device, thou should go back in time to the days before Mondain created the evil gem and destroy him!”
  • “Thou had best know that many lakes and ponds have strong magical powers!”
  • “Thou had best know this is a great game!”
  • “Thou had best know that the princess will give great reward to the one who rescues her, and an extra gift to an 8th level ace!”
  • “Thou had best know about space travel! Thou must destroy at least 20 enemy vessels to become an ace!”
  • “Thou had best know thou must go back in time.”

Stealing

Earlier games have had stealing systems but only from enemies. In Ultima 1 you can walk into a castle, go to a shop and then while in the shop attempt to steal something. This is a step change in the kind of world interactions that CRPGs have presented so far.

The system is relatively simple you walk into the shops boundaries, press s to steal and you’ll have a chance of successfully getting an item. You have a bonus if you chose the Thief character class.

Stealing a dagger from a weapon shop.
Stealing a dagger from a weapon shop.

On failing the steal action the merchants will put away their wares, so you can’t steal anymore and the town guards will attack you.

The Player Characters get caught stealing some food.
The Player Characters get caught stealing some food.

Leaving the castle or town and returning resets the merchants and guards and you’re free to try and steal again.

Castles and Towns are the only place you can steal.

Simulation

If you’re in a town and you get caught stealing the guards will go hostile to you. Stealing isn’t the only way to make this happen. If you attack someone in town the guards will also go hostile to you.

Attacking a merchant.
Attacking a merchant.

Unlike earlier RPGs where any action the player can do is an action the game blesses, Ultima allows players to perform actions that they’re not “supposed” to do and discover the consequences.

Shop System

When you enter a castle or town there are areas labelled as shops.

Shops labelled directly on the map.
Shops labelled directly on the map.

To use a shop, you walk into it, stand in front of the merchant and press ‘T’ to “Transact”. Then ‘B’ for buy and you press ‘S’ to choose to buy a sword.

Starting a transaction.
Starting a transaction.
Seeing what weapons are available.
Seeing what weapons are available.

There are different types of shop: armor, food, magic, pub (also food), transportation and weapons. That’s right, in Ultima 1 you can go to transportation shop and buy a horse, cart, raft or frigate.

There’s an interesting mechanic that’s introduced by Ultima for it’s shop. In most RPGs items are drip feed out to the plater in order of strength. Ultima’s drip feed mechanic is based on player steps. For instance the Amulet becomes available in weapon shops after the player character has taken 3000 steps. Other items such as the Air Car require you to be level 4 or above before it appear for sale in shops.

Traps

In the earlier versions of the game the dungeons have pit traps. These traps would cause damage to your character and drop you down a level unless you were carrying “rope & spikes” which would consume the item and let the player pass by unaffected.

Therefore, to safely explore the dungeon you need to stock on rope and spike items before venturing in. These mechanic was removed in later versions of the game but the rope and spike item generally remained.

Resurrection System

Death isn’t the end in Ultima 1, instead you get resurrected by Lord British and respawn somewhere randomly on the overworld map. Your hitpoints and food are set 99 and you lose all your gold. You can be resurrected in the sea where you’ll be stuck, unless a sea creature comes along to kill you and give you another chance.

Reception

One can get a feeling of what it was like to experience Ultima at that time by reading this excerpt from a review in Softline magazine edition 1.

What it was like to play Ultima in the 1980s.
What it was like to play Ultima in the 1980s.

Like Akalabeth it was popular selling over 50,000 copies.

Development

With the success of Akalabeth, I decided to start fresh with my first work intending it for public consumption. I began a game originally entitled Ultimatum! Built on much of the same code base as Akalabeth, it continued to refine the Richard Garriott virtual world building techniques. The game maps were largely based on the D&D worlds I created called Sosaria. When finished, we launched it under the name Ultima. The tile graphic world would become common and a useful tool in Ultimas to facilitate the detailed world interactions where you could touch and interact with everything you saw, not just the monsters that were pivotal to my design philosophy.

Richard began development on Ultima began after the release of Akalabeth in 1979. The tile system in the game was written by Ken Arnold. Ken and Richard met at Computerland, a Texas computer store, where they both worked and they developed Ultima while they attended the University of Texas. Denis Loubet did both the art of the card in ziplock bag and the lion on the first screen. The development took under a year. California Pacific published the game and until quite late on it was going to be called “Ultimatum” but there was a boardgame sharing the name. Al Remmers of California Pacific suggested shortening the name to Ultima. California Pacific filed for the game’s copyright on September 2 1980 (registration #: PA000031750) but the game wasn’t released until 1981.

Legacy

Ultima was widely ported including Japanese computers such as the MSX and PC-88/PC-98. This would be the last game California Pacific published after failed to continue paying royalties. It also was the first official entry in what would become the Ultima series. Ultima Online references this first Ultima game where at the end of the game you shatter Mondain’s Gem of Immortality and create Ultima Online’s shards (server instances).

Tile-based Graphics

Ultima is the first CRPG to use tile-based graphics. Tile based graphics is simple storing a small picture in memory, representing grass for instance and then stamping out that out everywhere on the screen where grass appears in the game. In this way you can build up a rich world from a small number of reusable elements. For Ultima, the developers drew pictures on graph paper and converted the drawings to hexadecimal data and manually typed them into the computer.

“He [Ken Arnold] knew machine language and worked in the same Computerland store,” Garriott elaborates. “Ken actually did all the machine language programming on it so we could use tile graphics. If you think back to the days of the original Ultima, I don’t think there was a game that used tile graphics at that stage. So I believe that we, principally Ken, invented tile graphics for Ultima.”

- The Official Book Of Ultima by Shay Adams 📖

Unfortunately, even with a map blitter written in assembly code, Ultima 1 was slow. (You can find out why here).

Mounts and Vehicles

Ultima has a number of transport options that can purchased at shops in the towns.

Vehicle Description
Horse Makes it easier to escape enemies in the overworld.
Cart Similar to the horse. Causes food to be consumed less rapidly.
Raft Travel across the sea but has no in-built weapons.
Frigate Travel across the sea and has canons.
Air Car Travel over everything but forest or mountains, has a laser weapon.
Shuttle Used to access space. It’s position is fixed in the overworld.

This isn’t the first game to have horse riding, that would be Super Dungeon but it was first with such an extensive array of transport options that opened up new parts of the world.

The Start of Simulation

As noted above, Ultima feels more like you’re in real world, there are laws you can break and consequences for your actions. This feeling of a reality in the game comes from only a few mechanics but it’s the start of a simulationist approach to world building.

World Building

Ultima 1 presents the player with a full world. There are continents, seas, mountains ranges and forests. Castles, towns and dungeons are scattered around the world, all with unique names and layouts. More so than any earlier game Ultima feels like a real place to discover.

The Ultima 1 World Map
The Ultima 1 World Map

Akalabeth had an overworld map but it didn’t have the scale that Ultima 1 aspires to. The player is free to go where they want, discover blockers - like the ocean and then learn how to overcome them - buying a ship. It’s the first game to do this.

Space Combat

Though his father was an astronaut, Garriott says this was not the reason he put a space ship and interplanetary travel in Ultima. He simply wanted to fill up the disk, using every bit of the computer’s potential, with every fun thing he could imagine that would fit into a game.

- The Official Book Of Ultima by Shay Adams 📖

This is the first CRPG to have space combat, though it’s not the first game with scifi elements that goes to PLATO’s Futurewar.

Influences

❖ Star Raiders, Atari 8-bit, 1980
I’m curious about that Space Ace section in the first game. It seems to play a lot like Doug Neubauer’s Star Raiders that came out a year or two earlier for the Atari 800.

[...] I do remember Star Raiders too, and no doubt it was a strong influence!
Akalabeth: World of Doom
Ultima I: The First Age of Darkness is a direct successor to Akalabeth: World of Doom and shares the same set of influences including: Dungeons and Dragons, J.R.R Tolkien's Work and Escape!, an early Apple II game.
Predecessor