The Exile II Hex List
                                   of John Mazzu

8/05/2003

This list is currently the only worthwhile compilation of Exile II: Crystal
Souls save game hex addresses and values, as far as I know.

The homepage for this file is www.geocities.com/yhnmzw/JEx2-121.txt, and
therefore, the most recent version should also be there.


To effectively use this or any other hex hacking list, one must have a hex
editor.  Since they all basically do the same thing, you may use whatever
you wish.  With a set of characters to copy & paste, you could probably even
use your text editor of choice.  I discuss mine below.

I use Winhex for Hex editing.  It may be procured at www.winhex.com.  It is
shareware.

I advise you to view this under Edit.com for most purposes.  To those that
do not understand what I mean, ".com" was a filename ending for certain
executable programs in DOS.  Don't dis DOS.  It still works, and reasonably
well.  Otherwise, use a fixed-width font, such as Courier, but I make no
promises as to the nature of certain characters (letter-units).

Copyright 2003 John Mazzu.
This list is by me, John Mazzu.

This may be not be reproduced under any circumstances except for personal,
private use. It may not be placed on any web site or otherwise distributed
publicly without advance written permission. Use of this guide on any other
web site or as a part of any public display is strictly prohibited, and a
violation of copyright.

I hereby allow for private, undistributed alterations for readability, but
it is not to be combined into another file.  (It is to remain complete and
separate from other works, thereby retaining its character.)  Such modified
copies, just like my original, should not be distributed, though I would take
such changes under advisement, if they are submitted.

To submit a hex address or value (that I lack), or to send suggested
alterations, I may be contacted at [email protected].  Please do not put me
on a mailing or forwarding list.  I have only recently beaten back a tide of
junk mail, and I wish not to have a new deluge.  Additionally, there are no
hyphens(-) in my addresses.  Take them out.

Version history according to GameFAQs convention:
1.00:   The first version, assembled from work I had before deciding to write
       this List.
1.10:   Addition of Race/Traits, original version history.
1.11:   Wording and spacing changes (aesthetic changes).
1.12:   More subtle aethetic changes.
1.13:   Wording changes.
1.14:   Format changes, clarifications.  At this time, my computer lost its
       Windows 95 installation, and I might have left it that way.
1.20:   Aesthetic changes.  Also, I revised the addresses for items, because
       some of my information was incorrect theory.
       Proper, formal explanation of the workings of the numbers for Items.
1.21:   Finished working out numbers; because of this, I also took out all
       of my older, less-correct information.


Please note:  Though all of the values I provide are in hex, the addresses
are decimal.

                       Table of Contents:

1.      Movement.
       A.      Overworld Coordinates.
       B.      Town and Dungeon Coordinates.
       C.      Party Status Conditions Allowing for Movement.
               Boats.
               Flight.
               Firewalk.

2.      Character Status.
       A.      Permanent Conditions.
               Race/Traits.
               MP.
               Skill Points.
               Magics Known.
       B.      Items.
               Notes.

3.      Special Items.
       A.      An Introduction.
       B.      Soul Crystal Slots.
               Some Monsters.

4.      How Numbers Are Stored in an Exile II Saved Game.
       A.      5C=0.
       B.      6B=0.
       C.      Binary XOR Chart for Hex.

                       And now...

1.              Movement.

A.      Overworld coordinates are strange, and I have yet to completely
understand it.  Two locations seem able to have the same value, so there is
another address controlling larger areas, such as an AutoMap block.
       Horizontal:     The addresses 4684 and 4686
       Vertical:       The addresses 4685 and 4687
       The pairs may work in tandem.  See Part 4A for an explanation.

B.      Town and dungeon coordinates are simple in this game.  They are the
distance from the top-left corner of the map.  It is a good idea to have the
game saving your maps.
       Horizontal:     The address 88123
       Vertical:       The address 88124

C.      There are a few things that allow for special movement.  I only have
information on Flight, Firewalking, and Boats.  I learned something that,
in retrospect, would be obvious.  Each boat seems to have its own ID#s.

       Boats:  Each boat has a unique set of ID#s.  The addresses vary for
       various boats.  Cross water, and also lava in towns.  These values
       cause the party to be in a specific boat.  If you need a boat for a
       body of water, and it is not where you need it, it can be called back.
       To be in a boat if you want to be in one (you can be currently on
       land), set the following addresses to the following values:
               4898=   A8
               4900=   51
               35400=  4C

       Flight: Flight is a whole-party status condition that allows for the
       crossing of chasms and water.  It has a limited length of effect,
       measured by steps.
       This is one of the strange counters.
       Null (0) is 5C here.  See Part 4A.
               The address 3700

       Firewalking is a status condition that allows the party to cross lava
       safely.  It may be individually set in battles, but battles are
       rarely on lava.
       Null is also 5C here.  See Part 4A.
               The address 3704


2.              Character status.

A.      Permanent conditions:

       It should be noted that conditions for adjacent PCs are 1581 offsets
       apart, so those for the PC 2 ahead would be 3162 forward.

       Race/Traits:    These affect the strengths and weaknesses of your
               PCs in potentially very powerful ways.  "Magically Inept"
               and "Pacifist" can really screw you up.  Here, you can
               switch your high-level, disadvantaged PC's Traits into pure
               advantages, however, don't take the challenge out of the
               game.
               Here, 6B is "off", and 6A is "on".

               Here are the Traits addresses for PC 1:
            Advantages
               56021:  Toughness
               56022:  Magically Apt
               56023:  Ambidexterous
               56024:  Nimble Fingers
               56025:  Cave Lore
               56026:  Good Constitution
            Disadvantages
               56027:  Sluggish
               56028:  Magically Inept
               56029:  Frail
               56030:  Pacifist
            One of Three
               56031:  Race:   6B:     Human
                               6A:     Nephil
                               69:     Slith

       MP:     MP is supposed to stop at 99, but with a little work, one can
       have 255 max MP.
       The value 94 yields 255 max MP.
       See Part 4B for a full explanation.

       PC1:    54544
       PC2:    56125
       PC3:    57706
       PC4:    59287
       PC5:    60868
       PC6:    62449

       Skill:  Skill points are the other currency needed to buy ability
       levels.  Normally, they are only earned, little by little, upon
       gaining levels.
       Once again, 94 yields 255 skill points.  See Part 4B.

       PC1:    54548
       PC2:    56129
       PC3:    57710
       PC4:    59291
       PC5:    60872
       PC6:    62453

       Magics known:   In this game, the magics are in a given order, and
       each offset is assigned one magic.
       Here, 6B means "not known", and 6A means "known".  Here is the
       address for the Level 3 Mage Spell "Resist Magic" (#30).
       I believe that the Priest Spells are after the Mage Spells.
       PC1:    55947
       PC2:    57528
       PC3:    59109
       PC4:    60690
       PC5:    62271
       PC6:    63852

B.      Items:  Strangely or not, this is where item data resides.  Anyway,
       this is a really big, really important part of this game.  As opposed
       to other games that I have played, in this game, all of the qualities
       of an item are set in that item in your inventory. The best way to
       clarify that is to state that I have a Demonslayer and I also have a
       Demonslayer(+2).  My Scrioth flames, a Mithral Short Sword restores
       MP, and a Mithral Chain Mail replaces Micah's gloves.  My addresses
       are formed from an obscure address, but I will put some notes on the
       addresses at the end.
       These were determined starting from 62006, PC5's 15th slot.  The
       sequence should be the same for the slots, though.  Feel free to add
       others, but please remember to submit them, so that I may enjoy them.
       For the values that yield numbers in the game, 94 yields 255.

       The numbers are added to the first number of the slot.
       Equippable items have different responses to different values.  If
       There is no listing in a later column to match a place in the first
       column, then the meaning may be the same for both.  It may be that,
       if an item has a potion-type use, and there is no "level" (the name
       of a space in the in-game item explanation screen), then it will have
       a maximum effect.  That, or it is specified in the program, but I do
       not have info on item "levels".

       Phase Two Info:  My first sub-project of Phase Two nature (that is,
       it is putting data into an address that I did not extract from
       changes inside the game) was to check the odd addresses here.  They
       seem to be the upper two digits of the number, but they work a bit
       differently than the even digits.  They seem to cause strange
       behaviors, which may be undesirable.

       See Part 4B for a proper explanation.

               Weapon          Armor

       +0:     Begin (should be set to 6A if you are making a new item.)
       +2:     Damage          Defense
       +4:     Encumbrance     Encumbrance
       +6:     Bonus           Bonus
       +8:     Defence         ???
       +10:    # Of Uses- if blank, may allow infinite uses.
       +14:    Graphic associated (See mixed.bmp in the folder with
               Exile2.exe)
       +16:    Special effect: null=6B/slaydemon=59/slaygiant=58
               flaming=4A/micahsgloves=08/ap+1=35/fightbetter=0E/
               Strong Skill Potion=74/if you want
               others, find them. Items without a set number of uses are
               reusable.
               Potion effects work.
       +24:    Wether or not ID'd (Here, 6B is null, and 6A is "on".)
       +26:    Determines wether or not a weapon is magical.  Even if a
               weapon is not magical, if it has an effect (see above), it
               cannnot be augmented.  (Here, 6B is null, and 6A is "on".)
       +60:    End?


       Notes:
       I would have put in the strings for certain items, but they are so
       plentiful and flexible that any available item can be converted into
       something much more powerful than could exist normally.
       Any sword could be Dmg255/Bns510/Def255.  No combination of normal
       items could yield such power.

       Here are my notes on item slot hex addresses:

               Some addresses:
               PC1's 14th slot begins at       55603.
               PC1's 15th slot begins at       55682.
               PC5's 15th slot begins at       62006.
               PC6's 16th slot begins at       63666.

       You should see that the individual slots of a single PC differ by 79
       from the beginning of one slot to the beginning of the next (or
       previous) slot.


3.              Special items.

A.      An introduction to special items:       Special items are items that
       have approximately one effective use each.  These are the rare and
       valuable artifacts that the player cannot be trusted to deal with.
       I have almost no information on these because it would depreciate
       from the game much more than all of my other addresses.  I have
       exactly one good address to work with.  Actually, one could get free
       clearances, but the advantages from using this list, or from the
       Exile II Editor, are such that one can earn them easily enough, and
       in due time, more importantly.

B.      Soul Crystal slots:     These are the only user-variable special
       items.  The Soul Crystal is earned in the Vahnatai Lands, and is
       used with the Capture Soul and Simulacrum Mage Spells.
               37508:  Slot 1
               37509:  Slot 2
               37510:  Slot 3
               37511:  Slot 4

       Hex Values For Some Monsters:
               5C:     Empty
               2A:     Soul Crystal
               30:     Vahnatai Blademaster
               C0:     Athron
               C3:     Garzahd
              [DF:     DoomGuard]

               Please note:  The extra monsters formed from wounding a
               splitting monster will be hostile, so therefore, UNDER NO
               CIRCUMSTANCES SHOULD DOOMGUARD BE SUMMONED!  This is
               unfortunate, because it would be so fun to have an expanding
               legion of such monsters to attack enemies.  Stay with magic
               users for such purposes (They will summon new monsters for
               your purposes.).  The list from which you may choose monsters
               and determine the correct value is in Exile2.exe.  Use a
               simple text editor like Edit.com to read it.

               Since 5C is empty, or 0, see Part 4A for an explanation of
               how to make values for the sequence of monsters.


4.              How Numbers Are Stored in an Exile II Saved Game.

A.      Explanation of 5C=0 Numbers:  The hex values used for stats for the
       party as a whole are mostly of this variety.  Numbers stored in this
       way are confusing to work with, unless you know their secret.

       They are protected in a simple way by performing the binary XOR
       operation with this number and 5C.

       See Section C for a chart for generating values.

B.      Explanation of 6B=0 Numbers:  The hex values used for PCs' stats in
       Exile II in a saved game are not simply the decimal value as it
       appears in the game.  As I have repeated for each different value,
       6B represents zero in the game.  I finally realized, after a quick
       experiment, that the reason that 6B is zero is that the process for
       storing a number in this way is to invert individual bits in 6B,
       according to the value of the number, and to get a value out, one
       need only perform a binary XOR operation between 6B and the number
       found in the saved game.

       To be clear, Exile II generates its saved game values for PC stats
       using a binary XOR operation between the actual number and 6B, and
       stores the result.

       I should demonstrate this:
       Save    Binary      6B XOR "Save"   Result
       6B      01101011    00000000        0
       6A      01101010    00000001        1
       69      01101001    00000010        2
       73      01110011    00011000        24
       74      01110100    00011111        31
       94      10010100    11111111        255

       See Section C for a chart for generating values.

C.      Binary XOR Chart for Hex.

       This table can be used to perform the binary XOR operation on one
       digit of hex.  For example, in 6B XOR 94, you would find B in the top
       row and 4 in the left column, to find the first digit, in Hex.

         0 1 2 3 4 5 6 7 8 9 A B C D E F

       0 0 1 2 3 4 5 6 7 8 9 A B C D E F

       1 1 0 3 2 5 4 7 6 9 8 B A D C F E

       2 2 3 0 1 6 7 4 5 A B 8 9 E F C D

       3 3 2 1 0 7 6 5 4 B A 9 8 F E D C

       4 4 5 6 7 0 1 2 3 C D E F 8 9 A B

       5 5 4 7 6 1 0 3 2 D C F E 9 8 B A

       6 6 7 4 5 2 3 0 1 E F C D A B 8 9

       7 7 6 5 4 3 2 1 0 F E D C B A 9 8

       8 8 9 A B C D E F 0 1 2 3 4 5 6 7

       9 9 8 B A D C F E 1 0 3 2 5 4 7 6

       A A B 8 9 E F C D 2 3 0 1 6 7 4 5

       B B A 9 8 F E D C 3 2 1 0 7 6 5 4

       C C D E F 8 9 A B 4 5 6 7 0 1 2 3

       D D C F E 9 8 B A 5 4 7 6 1 0 3 2

       E E F C D A B 8 9 6 4 7 5 2 3 0 1

       F F E D C B A 9 8 7 6 5 4 3 2 1 0


Those are all the Addresses I have, currently.  Use them.  Enjoy them.  Work
from them.  Please send in an e-mail if you even read this.  I am not too
clear as to whether or not anyone else has this interest.  I also have a
little work on Exile I, but I have more done on and more to do in Exile II.

All trademarks and copyrights contained in this document are owned by their
respective trademark and copyright holders.