Standard Disclaimer (and a bit more)
This program and associated files may be distributed freely as a unit,
by individuals to individuals. I am not responsible for any damage caused
to the user's equipment, nor am I aware of any possibility of damage.
Any modification to the program or files must be documented in a file
which is part of the new version. I specifically forbid any modification
which is intended to cause damage to the user's equipment, or to the user.
Autobiographical introduction (May be skipped)
I like programming; I don't have to do it for a living, so I suppose
it counts as my favorite computer game. I also like fantasy literature.
My first programming experience was on a borrowed ZX80 in Basic; a
version of Mastermind.
I then built a Microtan 65 from a kit, and since I couldn't afford the
optional Basic in EPROM, added a home-built EPROM programmer, learnt 6502
assembly language and wrote my own high level language, which was sort of
like Forth. I used this for writing programming tools and a couple of
Next was a second hand Vic20, with Basic as standard. Personal Computer
World gave the Basic source for a role playing game for the Pet, which I
heavily modified, and I played my first CRPG! I also bought a few adventure
games on cartridge or tape.
A tape given by a friend turned out to be for the C64, so I bought a
shop-soiled C64 from another friend. I naturally started to transfer my own
CRPG to the C64, but never finished it because so much of my time was spent
on playing purchased CRPGs, particularly after I bought a disk drive.
We are now approaching modern times; I had gone from 1k of RAM and a
cassette drive to 48k and a disk. Then the disk drive broke, and I decided
that instead of replacing it, I would buy a new, modern computer. The ST
was cheaper than the Amiga, so that was that; of course, I really wanted a
Basic was starting to get a bad name, and ST Basic was a particularly
loathed example, so I decided that it was time to switch to C, and to help
me learn it I would program a role playing game.
A few years down the line I had, without realizing it, programmed
myself into a corner. Most of my time was being spent on improving my
fight and movement algorithms and blitblock routines in Assembly. I didn't
really have a story, and wasn't sure how to twist what I had written to
give me one. Something was needed to save me from myself.
The deus cum (Latin joke) machina was Atari Corp., and my gratitude is
reflected in the name of this gaming system. I sold my ST to buy a second
hand STE, and it trashed my hard disk. I then discovered that the only
working copy of my backup program had been on the hard disk! (Do laugh.)
I had lost everything, my programming environment, my tools and my
graphics, so I had to start from scratch. On another unidentifiable
computing platform I had been looking at RPG construction kits, CASE tools
and HTML, and got the Great Idea; you break the problem into bits, and use
tools to make the bits and a shell to stick the bits together.
I also decided to use only C, as near ANSI as I could stomach, with
simple graphic and fight routines, and get something to work before I
started improving it. Those resolutions I have bent, but not broken - yet.
So I bought a copy of Lattice C 5 from someone who had decided GEM
programming was too hard, and (you'll love this) was going to learn
Windows programming instead. The rest, as they say, is history. (Actually,
the bit above is history; the rest is the manual proper. But that's what
they say; shows how much they know, doesn't it?)
What you get and where you put it
ANORAKS.PRG The actual shell which puts the bits together.
GAME.INI A text file which sets up some variables, and tells the
shell where to find other files. The archived version
thinks you have only one floppy drive; if you have two, you
have to edit the folders lines by hand.
EDIT_INI.TOS A utility for editing the game.ini file on a hard disk. All
it does is change the defaults for the folders. Run it
before you do anything else. A proper installation program
would be trickier, but if there's a demand...
These go together wherever you start the game from.
WORLDS.LST A database of towns, dungeons etc.
TEXTS.LST Various texts. Read them for clues if you like.
HOLDINGS.LST The possessions of the various NPCs
SPELLS.LST The spell names, restrictions and effects.
PICTS.IDX Index file for PICTS.CMP.
BACKGRND.CMP Backgrounds for the world view.
BACKGRND.IDX Index file for BACKGRND.CMP.
INTRO.PI1 Intro screen.
INTRO1.PI1 Second intro screen. View them to see how they work.
FRAME.PI1 The frame for the playing area.
JOES.PI1 I forget what this is for.
These go together in the statics directory. Read GAME.INI.
RANDOMS.LST Random monster characteristics.
*.WOR Map of the main world that holds the rest.
*.CIT Maps of the towns and villages.
*.DUN Maps of the dungeons and towers.
*.SHP Graphics for the scenery.
These go in the worlds directory.
PICTS.CMP Pictures of the various characters and NPCS.
*.MUS Background music files. These were created with the Musexx
program from the Budgie Productivity Kit and are played
with their software, turned into a Lattice-linkable module.
These are put in the walking directory.
BUMPH.PRG See 'What you need' below to decide if you need this.
HIRIDMAP.PC1 This can be deleted. It's a very simple map of the town you
start out in, but you don't really want it, do you?
These can go in the little dustbin on your desktop.
Everything can go in the one directory if you are running the game from
a hard disk, though you will have to edit GAME.INI by hand, but these
directories are probably the best if you are using floppies. There are two
files in this distribution, one for each disk; it might be an idea to
delete the Saves directory from disk 2 and make a separate savegame disk
with only a Saves directory.
The PI1 files can easily be replaced if you want to, but it would make
more sense to wait for HEXAID.
What you don't get - yet
HEXAID, the construction kit used for making the game, is not yet
available, i.e. nobody else has tested it and I've had no feedback on the
kind of game it produces. If anybody is interested enough to make
constructive criticisms, I will take them into account, and produce Version
2, which will be distributed under the same conditions as this. Basically,
I'm looking for directions - what I need to add, and what would be nice to
have. If I don't get any, I might do a CASE tool for the ST instead; it
puzzles me that nobody has yet done one.
What you need
I'm not totally sure on this, actually.
I use a 4MB STE with TOS 1.62, Warp9 and a hard disk. Anoraks, data
space included, takes up comfortably less than 1MB, and uses nothing but C,
apart from the music player and the PICT decompresser (for speed).
I've run it from the hard disk and from 1 or 2 floppy drives with
Memtop set to 1MB or 512k, from a 1.4MB ramdisk, from the Lattice C shell
on a ramdisk, from Tempus2 while writing this manual, and briefly on
various machines at the local user group. It hasn't been tested on a Falcon
or under TOS higher than 1.62, or on a multitasker.
While trying for beta-testers I discovered that the local gameplayers
hadn't a clue about GDOS and fonts, so I included a crude (but legal) font
changer. This is quite likely to get confused if the game is run from a
hard disk shell which loads a font-handler and an ASSIGN.SYS, so please
don't. If you boot up from floppy you should have no trouble with it.
Superboot was found to leave an orphan ASSIGN.SYS on the boot drive
which was then picked up by NVDI. There may be other ways of treating this,
but the cleanest seemed to be to delete any ASSIGN.SYS at bootup, and let
the configuration file transfer its own if needed. BUMPH.PRG (which any
puzzled American users can rename to ASSWIPE.PRG) does this delete in 66
As much of the data space used as possible is malloc'ed, and pictures
and music are stored in memory if there's room. I've aimed for the lowest
possible common denominator, but would consider it only theoretically
playable with 512k and one floppy drive.
If any other games are written with HEXAID, they may, of course, not
fit at all in 512k or include graphics in 512k; that's up to the designer.
HEXAID itself requires 1MB and editing the pictures takes more.
Starting off (at last)
Running the game for the first time brings up the intro screen; a key
press will terminate this. You get a choice between loading a party and
starting afresh. There isn't a precreated party in this distribution.
You have 4 characters; all you can choose is name, sex and picture; all
starting characters of the same sex have the same attributes. As they gain
levels you can let them specialize by distributing their stat-points.
A question mark at the bottom of the text screen is a request for text
information, followed by Return. It won't let type too much.
You then move to the View screen. At this point you can press lots of
keys - but nothing will happen. The only options allowed are:
? Query Tells you where you are and the time.
L Move Moves you one cell forward - if possible; reads anything
readable in the cell.
> Right Turns your face right.
< Left Turns your face left.
U U-turn Turns you 180 degrees.
S Save Saves the game. You can click on any slot and input a name. If
a slot already has a name, pressing Return will save under the
old name. The second time you play you can select a game.
R Reload Brings back the loading options.
Q Quit Quits the game without saving.
A Audio Toggles the horrible noises off and on.
The arrow keys work like L, >, <, and U, while ), 9, 7, 6, 4 and 2 on
the numeric pad add 2 turns right or left to the options. The space bar
works like U. Maybe that's too many choices for moving; I can't decide.
F1 to F3 call up the player views.
The choices can also be made from the letters on the menu column,
where relevant, or the character's line on the Main Stats panel.
The character's picture is in the View window, and some stats and the
Items Worn in the Text window. The available options are in the menu
column; they can be selected from the menu column or by the keyboard.
There are 6 primary characteristics, surviving from my previous game,
STrength, ENdurance, IQ, DeXterity, INsight and CHarm, of which only the
first 4 are used at present. THrowing, RaNge and ACcuracy are also not
implemented, but these are secondary characteristics. Magic Resistance is
not (as far as we know) possessed by humans.
All the secondary characteristics are based on various weighings of
the primaries and external influences. FooD depends only on how much you
have eaten and when, LighT on how long a torch will burn, and in the Main
Stats, maximum VITality depends on EN more than ST, and current VIT on
what has been happening to you, while FATigue is a figure that grows with
lack of rest (and eventually load).
PRotection is based more on EN and DX than on IQ or ST, and a nice
long sword doesn't hurt. CoVer is only what you wear, and SHield the
warding effect of what you have in your left hand, but they all have the
same purpose, which is given as DEFence in the main stats.
To be able to give a good blow is to have high HITs, and for that
there is nothing like ST, unless it's two longswords. Of course, to get
the blow in at all, or dodge one coming at you, requires SKilL.
PoWeR is what you use to cast spells, and nobody has ever met a
stupid, clumsy wizard, but many of them don't have the EN for a high turn
If a character's name is in green or blue, he is diseased or poisoned;
you'll know the symptoms soon enough. Not to worry; he can be cured. Oh,
you don't have any GoldPieces; start worrying.
In the items worn, the last three increase maxima in various stats,
but there aren't a lot of them around.
Selecting Q or any choice not highlighted gets you back out of this
P Pools all the party's gold to the selected player. There's no
provision for dividing it up, but if you can think of a better reason than
allaying potential mutual distrust in a collection of bytes, I'll consider
it for Version 2.
C is for Casting. The spells screen has room for 28 spells, so there
are lots of opportunities for learning experiences. Spells which the
character knows are named; those she has enough PWR for are white; any
others are red. Use the mouse to select a spell or get out by doing
anything else. If the spell works on one character, possibly the caster,
you have to select the character; if it works only on the caster, the whole
party or their surroundings, it will work and you get out. If it can't work
under the circumstances, you just get out.
E brings up the equipment screen, showing the contents of the
character's backpack, a maximum of 14 items, but not necessarily only one
of each. Do remember the weight, though. Clicking on an item selects one
of it; any other choice gets you out.
If you have selected an item, you are back at Items Worn, with your
choice in green at the bottom and the menu column blank. If you now click
on an equipment slot, it may go there; if you want to go into battle
brandishing a pizza, it's all one to me; your HIT would probably be higher
with a sword, though. But I can't let you wear it on your ring finger;
there has to be some concession to realism.
At the moment you can only replace equipment; you can't remove it. I
haven't been bothered enough by this to do anything about it.
Selecting another character will transfer the item to his pack if
there's room; if not, it will drop to the ground.
D also brings up the equipment screen, but now anything you click on
will be dropped. Anything you drop you can pick up again later.
U is for Use; find out what it does by experiment. If you can't wear
it or wield it, or perhaps even if you can, Use is worth a try.
S will share one item of the character's equipment round the rest of
the party if he has more than 1 of it. It's handy for dividing up items
bought in the shops.
F is for Food. If you try to eat Plate Mail nothing will happen. I
haven't implemented Dentists as NPCs. Dragons and Devils are bad enough.
This happens occasionally even in the best RPGs. I've kept it as
simple as possible, in reaction against my previous efforts.
You are told that you are facing 1 to 3 groups of monsters, and given
the option of running away, which incurs no penalty, but doesn't always
work (why aren't you surprised?).
Any group can cast spells at any group, but only the first group can
hit or be hit.
Fighting is organised by reflex round, a unit of time which varies
inversely with the character's speed, so one who is slightly more than
twice as fast gets in the second blow as well as the first; this is more
realistic than the standard melee round, where the fastest character
usually hits first, but, for all we know, spends the rest of the round
reciting dirty limericks.
A character unlucky enough to be hit twice within the same reflex round
is more likely to suffer damage from the second blow, but recovers balance
at the start of the next round. You can see this reflected in his Defence
and Skill stats. Rest assured that the same thing happens to your enemys; I
will be fair, even if it kills you.
You can choose at the moment between Attack and Spell. I have plans for
development that will allow other options. The original game allowed Equip,
Use and Wait, but combat was a lot more complicated.
Between deciding to swing a sword and that satisfying, meaty thwack,
there is a delay. And, as everybody knows, spells take that bit longer. Or
did you think we mages just snap our fingers?
Attack kills (you hope) the nearest monster, but Spell can affect any
rank; you will be asked which (A-C). The recipient of healing spells is
selected in the normal way.
After you win, you get experience, and maybe gold, and pick who takes
any piece of loot. If you select nobody, or his pack is full, the item
will be dropped.
If a character goes up a level, he gets points to distribute; the
number is set in GAME.INI. He won't actually get the benefit of them till
after he's rested.
It's true; everybody isn't out to kill you with an axe. Some just want
to talk you to death. You might get information from them, and you can
usually stop the conversation with 'Bye'.
It's not a good idea to have a conversation with a beggar that doesn't
start with money.
Guards may be quite chatty, or the reverse, but they won't let you pass
without the right word.
People who want something aren't bashful about letting you know about
it. If you agree, they'll nag you every time they see you, till you bring
the whatever-it-is; then they snatch it from your hands. They always pay
up, though. Some might want more than one thing.
A few people have very little to say, but what they do say is well
worth listening to.
Most shops have their price list on the wall. When a customer shows an
interest, the prices of the items he can afford change color (Magic, I
suppose). He can buy till he runs out of money, or another customer takes
over, or you deliberately choose not buying.
Learning new spells costs not only money, but a certain amount of
power and some fatigue.
Bars are a good place to pick up gossip as well as liquid refreshment
- but don't believe everything you hear.
Temples have a price list for their cures, but they want the patient,
the payer and the treatment. Or you can pray - no charge.
A few shops buy as well. These ask what you want to do, and you can
spend till you drop or lighten your packs, or, of course, both.
There are a few locked doors and chests, but they open if you own the
right key. I detest the convention that says the player has to try every
item on every lock in case that antireticulated gorglesqueezer is actually
the key for the portal with the ornate window. If the party has the key,
it's assumed that somebody has the wit to try anything that fits the lock.
What you have to do to win
I dunno; you might have to get to a place, or find an object, or give
one to an NPC, or get a response from one. All of these are possible with
What I have missed out
You tell me.
How you get in touch
E-mail email@example.com. If you're even halfway polite you'll get a reply.
If you have graphics or music to offer you can be a lot less than halfway
polite; I know I can't draw. There's no point in giving a snail-mail
address; I'm very bad at answering letters.