Temple of Apshai was originally programmed by Jim Connelley in 1979 using a D&D inspired roleplaying system called Dunjonquest designed by Jon Freeman. The game has simple blocky graphics paired with a physical manual containing descriptions of the rooms that the player will explore. It’s notable for being one of the earliest graphical RPGs for a home computer. Temple of Apshai was a hit and gave rise to numerous sequels and ports.
Jim Connelley and Jon Freeman met at a game of Dungeons and Dragons in 1977. Jim served as one of the regular Dungeon Masters, and he had purchased a Commodore PET computer to help him with the task. He was also a computer hobbyist/programmer, which was a necessity since computers at that time were not designed to function as Dungeon Master Assistants. Jim, hoping to write off his expensive gaming aid, eventually decided to make a computer game.
Prior to Temple of Apshai Jon and Jim had developed a couple of sci-fi strategy games; Starfleet Orion and Invasion Orion for the Commodore PET. These had been a success so they were well placed to produce one of the first graphical RPGs for a home computer. In fact the origin of the Orion games also stems from Dungeon and Dragons - the PET was originally purchased by Jim Connelly to help with the bookkeeping for their D&D campaign (now like then, it’s always good to have some excuse to buy a new piece of tech! The price for PET was $795 USD in 1977, an expensive way to do bookkeeping).
In 1979 Connelley and Freeman brought Starfleet Orion to a San Mateo, California D&D convention called DunDraCon. The atendess were nonplussed, because what they really wanted was a Dungeons & Dragons-style game. This spurred Connelley to develop a game engine for a dungeon crawl. Freeman once again provided the game design, while another member of the D&D group, a teacher named Jeff Johnson, pitched in on level and enemy design
Gameplay Video
Setting
Temple of Apshai draws from the Dungeons and Dragons tabletop board game. The player is invited to explore a four level dungeon, avoiding traps, fighting monsters and collecting treasure. At the top of the dungeon is a Inn where the player can level up, buy equipment and choose which dungeon level to explore next.
Apshai’s innovation is including flavor text for each dungeon “room” in the game. The text exists in the game’s physical instruction manual because the TRS-80 only had 16k of memory and all of that was used for the gameplay code.
Here’s the description of the first room from the manual.
Room One - The smooth stonework of the passageway floor shows that advanced methods were used in it’s creation. A skeleton sprawls out on the floor just inside the door, a bony hand, still clutching a rusty dagger, outstretched toward the door to safety. A faint roaring sound can be heard from the far end of the passage.
This way of presenting the game world might seem crude now but at the time, this would have seemed incredibly immersive, a player exploring a world step by step on his computer late at night, leafing through the manual to find out what their character was seeing.
Graphics
The Temple of Apshai graphics are crude, as the screenshot above demonstrates.
The TRS-80 wasn’t a powerful machine. It has a monochrome 64 x 16 character display where each character cell is 6 x 12 pixels and each pixel has an aspect ratio of 2:3. In Temple of Apshai, the graphics run at half the TRS-80’s normal resolution for the sake of squaring the pixels.
The graphics are spartan; the player is an arrow, enemies are a cross shape, treasure is a square and walls are lines. To the right of the screen is a column of text, reporting on various stats and displaying brief messages to explain what’s happening in the game.
Narrative
The manual has a short introduction that describes an adventurer with the unlikely name of Brian Hammerhand arriving at an island and eventually meeting a wizard that tells him the location of the Temple of Apshai.
The manual explains that Apshai is an insect god and worshippers of this god settled in a costal cavern and occupied their time with dark cult business. The temple was eventually abandoned but rumoured to contain gems and other treasure.
The backstory and room description are very similar to the setting for a Dungeons and Dragon campaign. Both Jon Freeman and Jim Connelley played tabletop roleplaying games, so it’s likely this is where the structure of the game was drawn from.
There’s no goal or win condition for the game, apart from goals the player might make for themselves such as - explore all the rooms.
Character Creation
Temple of Apshai is divided into two distinct programs - the first is the inn and the second the dungeon exploration.
In the Inn you can create a character or restore a previously played character. The initial prompt for a new player to the Inn is shown in the screenshot below.
To roll a new character you answer “YEA” to the Inn Keeper’s rather confusing question. If you enter no you can “load” a previous character but there’s no save system in the original TRS-80 version of Temple of Apshai. To restore a character you type in the attributes that you’d previously written down (or memorised :)).
If you choose to create a new character, then the next screen rolls your stats and assigns you a random number of silver pieces. Then you’re prompted to enter a name.
Once you have a name you move through a shopping sequence with the inn keeper where you’re prompted to buy:
- A weapon
- A shield
- Armor
- A bow
- Arrows
- Healing Salve
This is done via a haggling system using simple text prompts. Once you been through the equipment buying sequence you are prompted to choose a dungeon - where you should type 1
,2
,3
or 4
to pick the level to explore. If you type anything else the game will enter a broken state.
Stats
The stats in Temple of Apshai are standard Dungeons and Dragons inspired fair, with the novel addition of “intution” and “ego”.
- Strength - high values unlock the use of certain weapons. Used in damage calculations and to determine max carry weight.
- Constitution - used to determine max hit points.
- Dexerity - higher chance to land a blow in combat and use of small shields.
- Intelligence - the ability to interact with the inn keeper and “parley with monsters”.
- Inutition - greater chance of discovering traps and secret doors.
- Ego - ability to continue to fight effectively when hurt.
The game doesn’t have a class or race system. Despite having randomly generated stats the backstory sets-up the player character to be a specific person called “Brian Hammerhand”.
Control Scheme
The TRS-80 uses a keyboard for input. This is a keyboard from the early days of computing so the key types and layouts are a little different than a modern keyboard. Check out the photo of a TRS-80 keyboard below.
The original game came with a quick reference command that can be seen below.
Your character is represented by a blocky arrow shape that indicates the direction your character is facing. The control scheme the game employs is unusual. Pressing a number keys 1
-9
indicates how many feet the character should walk in the direction they’re facing. You can also press the 0
key to stay put. The L
rotates the character to face 90° to the left and R
does the same for the right. V
flips the character facing entirely.
If you try and move a large number of feet at once it can reduce the amount of stamina / fatigue points you have. Effectively this means you’re incentivised to move the character slowly through the dungeon a few feet at a time. Thankfully unlike Swords and Sorcery if you try and walk into a wall, you merely don’t advance rather than taking damage or dying.
As can seen from the reference card there’s a handful of commands for basic actions and another set devoted to combat. Like many early games opening a door doesn’t happen automatically and requires a special key to be pressed O
in this case.
The other interactions that jump out are Q
for “Harken (Query)” and !
for “Speak with monster”.
Parley
The quick reference card that comes with the game lists two novel actions Harken
and Speak with Monster
.
Harken/Query
checks if a monster exists in a nearby room. You need to face a wall and then try and listen using this command. You are told you hear nothing (though this maybe a check fail) or the name of the monster in the adjoining room.
Speak with monster
fits poorly with game premise, you’re fighting insect monsters in an abandoned temple and one of the games few interactions lets you chat with those monsters? Anyway if successful the monster will go away.
Exploration
The TRS-80 has two colors; black and white. The environment is made up of white blocks representing walls and black void representing walkable area. Each “screen” is a room. If there’s not a wall on an edge of a room you can walk in that direction and the screen will redraw to display the new room.
The dungeon is made up of three preauthored dungeon maps. These levels are not linked, instead you choose which level you want to visit from the Inn. The lower levels have stronger monsters and are more challenging.
The rightmost quarter of the screen is dedicated to text-based information about the wolrd. The first line in this info-pane is ROOM NO.:
followed by a number. This number is the number of the room you’re in and corresponds to an entry in the user manual. In the screenshot above we’re in room 11 and if we look that up in the manual the description is as follows:
Room Eleven - A mist drifts into the the corridor from an opening in the west wall and a deafening roar is heard. Moss covers the floor before the opening to the west and a rusty sword lies on the mossy stone.
A white block in the middle of the walkable area is treasure. A number of white blocks in a cross shape represents an enemy.
In the exploration state you can move around the world with some clumsy tank style controls and pick up treasure by moving close to it and pressing G
for GET. If you are not close enough you won’t be able to pick up the treasure.
When you get a treasure, the info pane will inform you the type, for instance “TREASURE 20” might briefly flash up and your character’s weight stat will increase. The treasure can be looked up the manual to get some flavor text. Let’s look up treasure 20
T20 - Nothing of value.
Ah, great :) Browsing through the other treasures there are quite a few interesting things to find:
T11 - Eight small diamonds lay in the dirt
…
LEVEL TWO
T01 - After coaxing open the cabinet you find a silver candelabra, six silver trays and a bronze skull ring with mithril specs for eyes.
Pressing E
(for Examine) while facing a wall let’s you search for hidden doors that may lead to treasure. One gameplay mechanic that’s no longer so popular is “mapping”, where the player plays the game with a pad of graph paper and draws out the dungeon level by level as they explore. In-game maps rendered this redundant but it was a popular activity in early RPGs and interactive fiction games.
There are limited number of points of interest than can be encountered - doors, traps, monsters and treasure but there’s nothing like a treasure chest with custom interactions.
Traps are often located near treasures, you can search to discover them, if you walk on a trap you take damage. If you’re walking fast enough, you can “leap” over the trap and avoid it.
Inventory
The game has a variety of different weapons and armor, as well a few special items such as arrows, salves and so on. The treasures you encounter are vividly described in the manual but in the game logic they’re automatically converted to currency.
The weapons and armor in the game are sophisticated for the time especially considering this was on the TRS-80 not the more powerful PLATO machines that many earlier RPGs were written for. Each piece of equipment has a number of stats associated with it, here’s the armor list:
"NONE",0,0,
"LEATHER",150,30,
"RING MAIL",350,100,
"CHAIN MAIL",500,150,
"PARTIAL PLATE",750,250,
"FULL PLATE",1000,1000
This listing is taken from the source code, the first number after the name is the base price at the shop and the number after that is the protection stat. There are rather more stats associated with the weapons and there’s some support for magic weapons and armour but the magic is just a stat modifier.
In the Dungeon you can find capes, rings and books and these provide a temporary stat buff that’s only tracked and applied for the current level of the dungeon. These benefits are somewhat hidden and the player doesn’t really have a good sense of what’s happening nor can they build up an intution.
Combat
Combat is semi-realtime. It’s also animated, if you choose T
hrust, a little pixel pops out of your character, combined with some text on the right side of the screen describing the action.
Enemies appear on the map as little crosses and will advance towards your character. Only a single enemy will ever appear at a time, the player will never be fighting more than one opponent at a time. The combat actions are displayed in the information pane on the right. You can choose a number of different ways to interact; you can shoot arrows, attempt to parry the monster’s blows, thrust your weapon and so on. It’s a lot closer to an action RPG or something like Zelda than the more strict turn-based RPGs of this era.
Combat actions can reduce your fatigue points and you can become too fatigued to fight on. At that point you must actively wait or move away until your faitgue points are restored. There are two types of attack “Thrust” and “Attack”. The manual describes a thrust attack as
A normal attack is a simple swing of the sword, whereas a thrust is an all out attack. A thrust increases your chances to hit and damage the monster, but it also makes it easier for the monster to hit you. A thrust also costs substantially more in fatigue.
There’s also some basic proximity detection that means you can only land blows if you’re relatively close to the enemy.
IF ABS(XL - XM) > 5 OR ABS(YL - YM) > 5 THEN
PRINT @368, "TOO FAR TO HIT";
GOTO7000
This code snippet comes from the source code here and has been reformated to make it a little more readable. The player’s X,Y position on the screen is represented by XL, YL
(don’t know what the L
stands for here!) and the monster as XM, YM
, so the monster must be within a 10 space square centered around player in order for the player to hit it.
There’s no magic system in the game, probably due to the restrictions of the platform than any other consideration.
The game tracks Wounds
and Fatigue
as a value from 100% to 0%.
You might imagine Fatigue: 100%
would mean you are fully exhausted but you’d be wrong. Fatigue: 100%
means you have all of your fatigue “points” to spend on performing actions in the game. Standing in place, walking slowing or shooting an arrow gives the character a brief pause and they will use this to regain a little of the fatigue amount. Running, fighting and carrying heavy loads causes your fatigue to be spent. The more wounded you are, the more your fatigue is drained. This means you can run out of energy while fighting, so you need to plan your actions a little.
You’re exploring a cult worshipping an insect god and the encounters reflect this; antman, various beetles, centipedes, termites plus a number of undead creatures. The monster data is embedded it the level files as data.
Death
Unusually for the time, the game does not have instant permadeath. When you die you have a chance of being recovered by an NPC adventurer or you might be eaten by a passing monster and die for good. Depending upon who finds you, you may have to pay a fee. (The code to handle this is here.)
Temple of Apshai has D&D roots and death isn’t necessarily the end in the world of D&D, people can be resurrected.
Raise Dead: The Cleric simply points his finger, utters the incantation, and the dead person is raised. This spell works with men, elves, and dwarves only. For each level the Cleric has progressed beyond the 8th, the time limit for resurrection extends another four days. Thus, an 8th-level Cleric can raise a body dead up to four days, a 9th-level Cleric can raise a body dead up to eight days, and so on. Naturally, if the character’s Constitution was weak, the spell will not bring him back to life. In any event raised characters must spend two game weeks’ time recuperating from the ordeal.
Temple of Apshai doesn’t go into the details but it’s assumed someone close by, outside the dungeon, can perform this service for your character.
Here are the possibilities after dying in the dungeon:
- THOU ART EATEN - you character is killed permanently and you need to roll a new one.
- BENEDIC THE CLERIC FOUND THEE - you’re returned to the inn.
- LOWENTHAL THE MAGE FOUND THEE - you’re returned to the inn, but your magic items are taken.
- OLIAS THE DWARF FOUND THEE - you’re returned to the inn, but your money and magic items are taken.
Advancement
Stats for experience points and levels are tracked. The number of experience points required for each level is one-thousand times the square of the level number. So:
Level 1 = 2000
Level 2 = 4000
Level 3 = 9000
...
Level 20 = 400,000
and so on
The highest number of experience points you can get is 16,000,000. Returning to the inn keeper after gaining a level will increase some of your stats. The level is used in combat calculations.
Legacy
Temple of Apshai did well commercially and was ported to Commodore 64, IBM PC, Amiga, Apple II, Atari and other platforms. As one of the first commercial RPG hits, it is likely other games developers were aware of and played this game.
Stamina System
The fatigue counter that runs down while fighting is not so far from an action point gauge in future action RPGs that can be used to execute special moves. For me, the fatigue counter would be better omitted. Generously it could be viewed as an added level of strategy while navigating the dungeons but in practice I found it added little.
Early Action Game
As an early action role-playing game it’s reminscent of Swords and Sorcery. Swords and Sorcery is influenced by Star Trek (an early space sim game available on various platforms including Plato where it was known as trek
), and it’s possible this was an influence on Connelley’s earlier games Starfleet Orion and Invasion Orion.
Game Engine
The existence of a system referred to as Dunjonquest is a first for CRPGs. It’s not a tabletop role-playing game, rather it’s a roleplaying system i.e. rules and setting built for Temple of Apshai and future games. It can also be considered a precursor of what came to be known as a “game engine”.
J.W. Connelley, […] designed for Temple of Apshai a reusable engine that read in data files representing each level of the dungeon being explored
All games must convert some abstract simulation of a world into computer code but Temple of Apshai is the first game to really specify and name that abstraction. It’s foreshadows systems such as S.P.E.C.I.A.L employed by Fallout.
Immersion
Temple of Apshai melds a little more with tabletop roleplaying games, in it’s instruction booklet it has lists of tables describing every room a player may encounter in the game. As you play the game you’re prompted to go to the relevant manual page and read the description. This is a concession to the limited memory of the machines of the day but also reminiscent of the tables one might read in a Dungeons and Dragon supplement such Blackmoor’s Temple of the Frog adventure, released a few years earlier, in 1974.
Compared to earlier games, Temple of Apshai is trying harder to simulate the fantasy environment rather than concentrate on merely encoding the mechanics of some limited version of D&D. Temple of Apshai contains pages of prose describing each room in the manual in an attempt to immerse the player more in the virtual world.
"Orion" came about because Jim Connelley, the DM of a D&D game I played in, bought a PET to help him with the bookkeeping chores required of a Dungeon Master
Here are a selection of resources used in the article and for further reading.
- 🌍 Wikiwand's Temple Of Apshai article
- 🌍 Digital Antiquarian's coverage of the game
- 🌍 A History of Epyx
- 🌍 Retro365's Physical Collection of the Apshai games
- 🌍 Computer Gazette's 1983 Interview with Jim Connelley
- 🌍 A playthrough from CRPGAdventures
- 📖 They Create Worlds: The Story of the People and Companies That Shaped the Video Game Industry, Vol. I: 1971-1982 | ISBN: 1138389900
1979, August
Jim Connelley
Jon Freeman
Jeff Johnson
TRS-80 Model 1
384 x 192 pixels
BASIC