Quest 64 Gameshark Faq
by Fire_Embliem
Version 1.2
Contact Information
-------------------------------------------------------------------------------
[email protected]
Killer Instinct at TASVideos
Intro
-------------------------------------------------------------------------------
The code you write will always be in hex.
You don't need to worry about the Order of Bytes section unless you
plan on using a memory editor like cheat engine, instead of making gameshark
codes. For 1 byte codes, you do use 80 and for 2 byte codes, you use 81.
For example if you want to give Fire and Earth level 50, you can do
8107BAA4 3232. The 1st 32 will be for the address of 8007BAA4 which is the
address for Fire element and the 2nd 32 will be for the address of 8007BAA5
which is Earth. If you just wanted a code for 45 water, you would do
8007BAA6 002D.
Table of Contents
-------------------------------------------------------------------------------
--Order of Bytes (oob)
--Spell Hacks (sphk)
--Item Hacks (itm)
--Battle Hacks (btl)
--Experience Hacks (ephk)
--Monster Hacks (mnst)
--Boss Hacks (bsl)
--Limits (lmt)
Order of Bytes (oob)
-------------------------------------------------------------------------------
N64 uses big endian and Intel CPUs use little endian. If you are using an
external memory editor with an emulator (cheat engine or MHS) you will have to
change the ordering of bytes if you want to use a memory editor instead of
gameshark for viewing / modifying data in the game. For addresses of
specific values in memory, you simply change the last byte. For instance the
address for wind element in little endian = 8007BAA4. In big endian, 8007BAA7
is the address for wind element. Here is the order of bytes
big endian 0,1,2,3 4,5,6,7 8,9,A,B C,D,E,F
little endian 3,2,1,0 7,6,5,4 B,A,9,8 F,E,D,C
You don't have to worry about changing the starting addresses of items, spells
, or monsters. You can refer to the ordering table above to quickly swap the
address between big and little endian. You need to change the order of bytes
for spell, item, and monster variables. For example Byte 1 for spells in big
endian = Upper byte of level requirement. In little endian, Byte 1 for spells
= AOE of spell.
I like to use a memory editor like cheat engine because after spending a while
making a giant table, I can quickly view or change data. It's nice to see the
health and mp of monsters, as well as the number of turns left for status
effects. All the information below uses the big endian format. Also, you don't
have to worry about doing this for 4 byte variables because the starting
address will still be the same.
Spell Hacks (sphk)
-------------------------------------------------------------------------------
There are way to many codes to write for spells, so I will provide all the
information needed so you can quickly make your own spell codes. I omit some
byte numbers since they will always crash the game if modified. For any
variable that uses floating point, you can use a float to hex calculator if
you want to set specific values. Otherwise, you can simply modify the most
significant bit. Some of these bytes determine status effects. If you set that
byte to a specific value, that spell will do a certain status effect. For
example, if you give the 61st byte of a spell the value of 3, that spell
will have the status effect of Spirit Armor Lv.1.
Spell Variables
Byte 1-2 Determine Level Requirement
Byte 3 Something to do with hit stun
Byte 4 Determines AOE and when you can use spell
Byte 5-8 Something to do with Menu
Byte 9 Something to do with menu
Byte 11-12 Range (this only works if Projectile = 0)
Byte 13-14 Base Damage
Byte 16 Accuracy (anything higher than 100 is unnecessary)
Byte 18 Spell type
Byte 20 Projectile (1 = can only rise or fall, 0 = can move anywhere)
Byte 21-22 Projectile Travel Height
Byte 24 (1 = auto hit, 0 = not auto hit)
Byte 26 Designated Target(0 & 1 = enemy, 2 = yourself)
Byte 29-32 Size (Floating Point value)
Byte 33-34 Number of Hits
Byte 35-36 Number of (frames delayed / 2) between hits
Byte 37-38 (# of frames delayed / 2 before the spell takes effect)
Byte 39-40 Starting Point
Byte 42 Homing (0 = none, 1 = slight, 3 = good)
Byte 47-48 Velocity (not fully sure)
Byte 49-50 Direction of attack??
Byte 51 Compression
Byte 52 Vamps Touch (crashes game when used with damage spells)
Byte 53 Attack (1 = power staff Lv. 1 , 2 = power staff Lv. 2)
Byte 54 Restriction
Byte 55 Movement (1 = Slow Enemy, 2 = Wind Walk)
Byte 56 Agility (1 = Evade Lv.1, 2 = Evade Lv.2, 3 = Slow Enemy)
Byte 57 Silence
Byte 58 Soul Search
Byte 59 Magic Barrier
Byte 60 Confusion
Byte 61 Defense (1 = Weak Lv2, 2 = Weak Lv1, 3 = Armor Lv1, 4 = Armor Lv 2)
Byte 62 Gives the status effect that = 2048
Byte 65-68 Most likely nothing
Starting Addresses of each spell
800C06A0 = Fire Ball Lvl. 1 800C06E4 = Fire Ball Lvl. 2
800C0728 = Power Staff Lvl. 1 800C076C = Homing Arrow Lvl. 1
800C07B0 = Hot Steam Lvl. 1 800C07F4 = Fire Ball Lvl. 3
800C0838 = Compression 800C087C = Power Staff Lvl. 2
800C08C0 = Fire Pillar 800C0904 = Homing Arrow Lvl. 2
800C0948 = Fire Bomb 800C098C = Vampire's Touch
800C09D0 = Magma Ball 800C0A14 = Extinction
800C0A58 = Hot Steam Lvl. 2 800C0A9C = Rock Lvl. 1
800C0AE0 = Rock Lvl. 2 800C0B24 = Spirit Armor Lvl. 1
800C0B68 = Rolling Rock 800C0BAC = Weakness Lvl. 1
800C0BF0 = Rock Lvl. 3 800C0C34 = Magnet Rock
800C0C78 = Spirit Armor Lvl. 2 800C0CBC = Avalanche
800C0D00 = Confusion 800C0D44 = Weakness Lvl. 2
800C0D88 = Rock Shower 800C0DCC = Magic Barrier
800C0E10 = Rolling Rock Lvl. 2 800C0E54 = Weaken All
800C0E98 = Water Pillar Lvl. 1 800C0EDC = Water Pillar Lvl. 2
800C0F20 = Healing Lvl. 1 800C0F64 = Soul Searcher Lvl. 1
800C0FA8 = Water Pillar Lvl. 3 800C0FEC = Ice Wall
800C1030 = Ice Knife 800C1074 = Exit
800C10B8 = Escape 800C10FC = Return
800C1140 = Healing Lvl. 2 800C1184 = Soul Searcher Lvl. 2
800C11C8 = Walking Water 800C120C = Drain Magic
800C1250 = Invalidity 800C1294 = Wind Cutter Lvl. 1
800C12D8 = Wind Cutter Lvl. 2 800C131C = Restriction
800C1360 = Evade Lvl. 1 800C13A4 = Silence Lvl. 1
800C13E8 = Wind Cutter Lvl. 3 800C142C = Large Cutter
800C1470 = Restriction Lvl. 2 800C14B4 = Wind Bomb
800C14F8 = Evade Lvl. 2 800C153C = Cyclone
800C1580 = Slow Enemy 800C15C4 = Wind Walk
800C1608 = Silence Lvl. 2 800C164C = Ultimate Wind
800C1690 = Fire Blast 800C16D4 = Earth Blast
800C1718 = Wind Razor 800C175C = Wind Zipper
800C17A0 = Bubble Shot 800C17E4 = Bubble Shield
800C1828 = Lava Ball 800C186C = Explosion
800C18B0 = Laser Beam 800C18F4 = Dove Razor
800C1938 = Ground Pound 800C197C = Gil Claw
800C19C0 = Spirit Sword 800C1A04 = Green Laser
800C1A48 = Solar Blast 800C1A8C = Fire Wave
800C1AD0 = Flame Arrows
Spell Type Chart (anything after 09 is useless)
00 = Damage
01 = Heal
02 = MP Drain
03 = Escape
04 = Return
05 = No damage (this is what buff spells use)
06 = Exit
07 = Extinction
08 = Invalidity
09 = Invalidity with damage
0A = Compression
0B = Vamps Touch
0C = Power staff
0D = Restriction
0E = Lower Movement
0F = Evade
10 = Silence
11 = Soul Searcher
12 = Magic Barrier
13 = Confusion
14 = Def Up / Down
An example of spell type code is to change magic barrier from no damage to
healing. First you must add a base damage. 800C0DCC is address of M Barrier.
You add 0C (0C = 12) to 800C0DCC which = 800C0DD8. Then you add 0x11
to 800C0DCC, which = 800C0DDD. Here's the code below
800C0DD8 0008 (0008 is the same base as heal lvl 2)
800C0DDD 0001 (this changes the spell type, to a healing type)
The healing formula will be based on the element of the spell. Not water.
This chart below explains what the lower nibble of Byte 4 does. I haven't
figured out what the upper nibble does yet. As far as I know, F3 could have
the same effect as 03 for Byte 4.
Effects for Byte 4 Target In Battle Outside of Battle
00 = Very transparent Single Target, Can't Cast, Can't Cast
01 = Very transparent Single Target, Can Cast, Can't Cast
02 = Very transparent Single Target, Can't Cast, Can Cast
03 = Less transparent Single Target, Can Cast, Can Cast
04 = More colorful Multi Target, Can't Cast, Can't Cast
05 = More colorful Multi Target, Can Cast, Can't Cast
06 = More colorful Multi Target, Can't Cast, Can Cast
07 = More colorful Multi Target, Can Cast, Can Cast
08 = Very transparent Single Target. Can't Cast, Can't Cast
09 = Very transparent Single Target, Can Cast, Can't Cast
0A = Very transparent, Single Target, Can't Cast, Can Cast
0B = Less transparent, Single Target, Can Cast, Can Cast
0C = More colorful, Multi Target, Can't Cast, Can't Cast
0D = More colorful, Multi Target, Can Cast, Can't Cast
0E = More colorful, Multi Target, Can't Cast, Can Cast
0F = More colorful, Multi Target, Can Cast, Can Cast
When creating your own codes, keep in mind for any variable with more than one
byte, the order of significance is left to right because N64 uses big endian.
For example, if you want to change the base damage of Fire Ball Lv.1 to 545,
you get the starting address of Fire Ball Lv.1 which is 800C06A0. This address
is the address to Byte 1 of Fire Ball Lv.1. For damage, you will need to edit
Byte 13 and/or 14. 545 in hex = 221. One byte can only have 2 digits so you
would have to put 02 in Byte 13 and 21 in Byte 14. Since 800C06A0 is byte 1,
you would just add 0C to 800C06A0 to get the address of Byte 13.
The code for 545 base damage for Fire Ball Lv. 1 is
810C06AC 0221
If you wanted to change the Level requirement for a spell, you would simply
edit Byte 2 since no spell ever requires past level 255.
800C06A1 00?? is the code to change level requirement for Fire Ball Lv.1.
Item Hacks (itm)
-------------------------------------------------------------------------------
There are 150 item slots
8008CF78 is the address for Item Slot 1. The address for Slot 100 would be
8008CF78 + 0x63 (99 in decimal) = 8008CFDB
Item Slot Values
00 Spirit Light 01 Fresh Bread 02 Honey Bread
03 Healing Potion 04 Dragon's Potion 05 Dew Drop
06 Mint Leaves 07 Heroes Drink 08 Silent Flute
09 Celine's Bell 0A Replica 0B Giant's Shoes
0C Silver Amulet 0D Golden Amulet 0E White Wings
0F Yellow Wings 10 Blue Wings 11 Green Wings
12 Red Wings 13 Black Wings 14 Earth Orb
15 Wind Jade 16 Water Jewel 17 Fire Ruby
18 Eletal's Book 19 Dark Goal Key FF Empty
Item Location (for changing item effects)
803A91F0 = Sacred Water 803A91FC = Fresh Bread 803A9208 = Honey bread
803A9214 = Healing Potion 803A9220 = Dragon Potion 803A922C = Dew Drop
803A9238 = Mint Leaves 803A9244 = Heroes Drink 803A9250 = Silent Flute
803A925C = Celines Bell 803A9268 = Replica 803A9274 = Giant's Shoes
803A9280 = Silver Amulet 803A928C = Golden Amulet 803A9298 = White Wings
803A92A4 = Yellow Wings 803A92B0 = Blue Wings 803A92BC = Green Wings
803A92C8 = Red Wings 803A92D4 = Black Wings 803A92E0 = Earth Orb
803A92EC = Wind Jade 803A92F8 = Water Jewel 803A9304 = Fire Ruby
803A9310 = Eletale's Book
Item variables
Byte 1 = Unknown
Byte 2 = Determines when the item can be used
Byte 3 = unknown
Byte 4 = Effect of the item
Byte 5-8 = Values that correspond to Byte 4
Item effects on Byte 2
00 = Can't use item at all
01 = Can only use item outside of battle
03 = Can use item both in and out of battle
06 = Can only use item inside of battle
0A = Can only use item inside of battle
Item effects on Byte 4
0 = None
1 = Healing (bytes 5-6 = HP Healed, bytes 7-8 = MP Healed)
2 = Teleporting (wings) (byte 6 determines where you teleport)
3 = Spell Effects (byte 5 = spell element, byte 6 = spell number)
If you want Fresh Bread to give you 50 MP and HP you would get the starting
address of Fresh Bread which is 803A91FC. Then you find the byte you want to
edit (8 since the number you want to input is < 255). 803A91FC + 7 = 803A9203
So the code for Fresh Bread to heal 50 MP on top of 50 HP is
803A9203 0032
Another good example is teleporting while in a battle. You would have to do
this for each specific wing. The address of White Wings = 803A9298. So you add
1 to the address, since we are dealing with Byte #2. The code would be
803A9299 0003
Item effects for Byte 6, if Byte 4 = 02 (Teleport locations)
00 - Melrode 01 - Dondoran 02 - Larapool 03 - Normoon
04 - Limelin 05 - Brannoch 06 - First Boat 11 - Middle of Melrode
13 - Middle of Dondoran Flats 15 - Middle of West Carmagh
94 - Solvaring Battle 97 - Near entrance to Nepty Battle
9A - Middle of Boil Hole E7 - Middle of Melrode(World of Mammon)
Item effects of Byte 5 = Element of spell, if Byte 4 = 03
00 = Fire 01 = Earth 02 = Water 03 = Wind 04 = Boss spells
Byte 6 determines which spell
Fire (00)
00 Fire Ball Lv1 01 Fire Ball Lv1 02 staff1 03 arrow1
04 Hot Steam Lv1 05 Fire Ball Lv3 06 Compression 07 Power Staff Lv2
08 Fire Pillar 09 Homing Arrow Lv2 0A Fire Bomb 0B vampire's Touch
0C Magma Ball 0D Extinction 0E Hot Steam Lv2
Earth (01)
00 Rock Lv1 01 Rock Lv2 02 Sp Armor Lv1 03 Rolling Rock Lv1
04 weak1 05 Rock Lv3 06 Magnet Rock 07 Sp Armor Lv2
08 Avalanche 09 Confusion 0A Weakness Lv2 0B Rock Shower
0C Magic Barrier 0D Rolling Rock Lv2 0E Weaken All
Water (02)
00 Water Pillar 1 01 Water Pillar 2 02 Healing Lv1 03 Soul Search Lv1
04 Water Pillar 3 05 Ice wall 06 Ice knife 07 Exit
08 Escape 09 Return 0A Healing Lv2 0B Soul Search Lv2
0C walking water 0D Drain Magic 0E Invalidity
wind (03)
00 Wind Cutter 1 01 Wind Cutter 2 02 Restriction 1 03 Evade Lv1
04 Silence Lv1 05 Wind Cutter 3 06 Large Cutter 07 Restriction 2
08 Wind Bomb 09 Evade Lv2 0A Cyclone 0B Slow Enemy
0C Wind Walk 0D Silence Lv2 0E Ultimate Wind
Boss spells (04)
00 Fire Blast 01 Earth Spikes 02 Wind Razor 03 Wind Zipper
04 Bubble Shot 05 Bubble Shield 06 Lava Ball 07 Explosion
08 Laser Beam 09 Dove Razor 0A Ground Pound 0B Slash
0c Spirit Sword 0D Green Laser 0F Solar Blast 0F Fire Wave
10 Flame Arrows
Giant's Shoes actually uses the spell Wind Walk. You could change the spell to
Magic Barrier. To do so, you take the starting address of Giant's Shoes
which is 803A9274 and add 4. So Byte 5 is at the address of 803A9278. The code
to change the element of the spell to earth = 803A9278 0001. Then you need to
change byte 6 to 0C. 813A9278 010C is the complete code.
Battle Hacks (btl)
-------------------------------------------------------------------------------
Total Elements in Battle determine club damage and how hard you hit through
Defense. IB means in battle. Agility IB and Defense IB are the variables that
deal with Agility and Defense in battle. At the start of a battle, it copies
your Defense and Agility. If you level up during a battle, it will not update,
unless you use a spell buff that changes the stat. If you want to change
Agility during a battle, you would need to edit agility IB instead of Agility.
Same goes for defense. Battle Attack is 16 (0x10) by default, and is a club
damage multiplier. Power Staff Lv1 raises it to 24 and Lv2 raises it to 32.
You divide Battle Attack by 16 to get the multiplier. Movement area multiplier
is a floating point variable that multiplies your movement range. The default
value for this 4 Byte variable is 3F800000 which is 1.0 in floating point.
For enemy IB Attack, it only determines how hard it hits through defense. If
you want to change the enemy's max damage, you have to edit their assigned
attack. You can find the address to those in the Monster Hacks section. Don't
mess with the Battle State unless you know what you are doing. It's very easy
to mess up the game and crash.
Codes for your character
Current Hp = 8007BA84 - 8007BA85
Max Hp = 8007BA86 - 8007BA87
Current MP = 8007BA88 - 8007BA89
Max MP = 8007BA8A - 8007BA8B
Agility = 8007BA8C - 8007BA8D
Defense = 8007BA8E - 8007BA8F
Fire = 8007BAA4
Earth = 8007BAA5
Water = 8007BAA6
Wind = 8007BAA7
Total Elements IB = 8007BBBC - 8007BBBD
Battle State = 8008C593 (0 = not in battle, 1 = in battle)
Agility IB = 8007BBBE - 8007BBBF
Defense IB = 8007BBC0 - 8007BBC1
Battle Attack = 8007BBC2 - 8007BBC3
Movement Area Multiplier = 8007BBC8 - 8007BBCB (default value = 3F800000)
Running Speed = 8007BAE4 (3F is default running speed)
Codes for enemy's in battle stats
Enemy #1 HP = 8007C9A2 - 8007C9A3
Enemy #1 MP = 8007C9A4 - 8007C9A5
Enemy #1 Size = 8007C9E0 - 8007C9E3 (default value = 3F800000)
Enemy #1 Status Effect = 8007CA28 - 8007CA29
Enemy #1 Attack = 8007CAAC - 8007CAAD
Enemy #1 Agility = 8007CAAE - 8007CAAF
Enemy #1 Defense = 8007CAB0 - 8007CAB1
Enemy #2 HP = 8007CACA - 8007CACB
Enemy #2 MP = 8007CACC - 8007CACD
Enemy #2 Size = 8007CB08 - 8007CB0B
Enemy #2 Status Effect = 8007CB50 - 8007CB51
Enemy #2 Attack = 8007CBD4 - 8007CBD5
Enemy #2 Agility = 8007CBD6 - 8007CBD7
Enemy #2 Defense = 8007CBD8 - 8007CBD9
Enemy #3 HP = 8007CBF2 - 8007CBF3
Enemy #3 MP = 8007CBF4 - 8007CBF5
Enemy #3 Size = 8007CC30 - 8007CC33
Enemy #3 Status Effect = 8007CC78 - 8007CC79
Enemy #3 Attack = 8007CCFC - 8007CCFD
Enemy #3 Agility = 8007CCFE - 8007CCFF
Enemy #3 Defense = 8007CD00 - 8007CD01
Enemy #4 HP = 8007CD1A - 8007CD1B
Enemy #4 MP = 8007CD1C - 8007CD1D
Enemy #4 Size = 8007CD58 - 8007CD5B
Enemy #4 Status Effect = 8007CDA0 - 8007CDA1
Enemy #4 Attack = 8007CE24 - 8007CE25
Enemy #4 Agility = 8007CE26 - 8007CE27
Enemy #4 Defense = 8007CE28 - 8007CE29
Enemy #5 HP = 8007CE42 - 8007CE43
Enemy #5 MP = 8007CE44 - 8007CE45
Enemy #5 Size = 8007CE80 - 8007CE83
Enemy #5 Status Effect = 8007CEC8 - 8007CEC9
Enemy #5 Attack = 8007CF4C - 8007CF4D
Enemy #5 Agility = 8007CF4E - 8007CF4F
Enemy #5 Defense = 8007CF50 - 8007CF51
Enemy #6 HP = 8007CF6A - 8007CF6B
Enemy #6 MP = 8007CF6C - 8007CF6D
Enemy #6 Size = 8007CFA8 - 8007CFAB
Enemy #6 Status Effect = 8007CFF0 - 8007CFF1
Enemy #6 Attack = 8007D074 - 8007D075
Enemy #6 Agility = 8007D076 - 8007D077
Enemy #6 Defense = 8007D078 - 8007D079
Experience Hacks (ephk)
-------------------------------------------------------------------------------
Here are the starting and ending addresses of the bytes for Level and Exp.
I wouldn't mess with the exp ones unless you add an activator because you
will freeze the exp which isn't good. Although Combat Exp IB is ok to freeze.
Combat Exp IB = 8007BA68 - 8007BA6B (this = exp you get after a victory)
Combat Exp = 8007BA90 - 8007BA93
HP EXP = 8007BAA8 - 8007BAA9
MP Exp = 8007BAAA - 8007BAAB
Agility Exp = 8007BAAC - 8007BAAD
Defense Exp = 8007BAAE - 8007BAAF
Level variables determine how much exp you need to increase a stat.
Normally Agility, MP, Defense, and HP stop at 54, meaning after you level up
54 times, the exp rate stays the same from then on. Combat goes up to 98, then
after that, you cannot gain any more elements through battle.
HP Lvl = 8007BAB0
MP Lvl = 8007BAB1
Agility Lvl = 8007BAB2
Defense Lvl = 8007BAB3
Combat Lvl = 8007BAB4
Monster Hacks (mnst)
-------------------------------------------------------------------------------
Monsters are divided into groups. The groups loaded into memory, depend on
the location you are in. A lot of the variables are unknown to me, so I only
posted what I know.
Monster Stat variables
Byte 3-4 = HP
Byte 9-10 = Agility
Byte 11-12 = Defense
Byte 13-16 = Experience Given
Byte 21-24 = Size of monster (also determines size of certain spells)
Byte 25-28 = Camera distance after seeing attack
Byte 36 = Monster's Element
Byte 39-40 = Attack
Byte 46 = Number of Attacks they can do
Byte 50 = Item Drop
Starting Addresses of each monster
Judgement = 8023695C Pale Rider = 80236994
Pin Head = 802369CC Spriggan = 80236A04
Multi Optics = 80268DAC Mimic = 80268DE4
Crawler = 80268E1C Scorpian = 80268E54
Scare Crow = 80268E8C Wyvern = 80268EC4
Skelebat = 80268EFC Cryshell = 80268F34
Blood Gell = 80268F6C Caterpillar = 80268FA4
Fish Man = 80268FDC Were Hare = 802705F4
Hell Hound = 8027062C Man Eater = 80270664
Big Mouth = 8027069C Bumpershoot = 802706D4
Parassault = 8027070C Orc Jr = 80270744
Gremlin = 8027077C Skeleton = 802707B4
Ghost Hound = 802707EC Merrow = 80270824
Wolf Goat = 8027085C Ork = 80278974
Ghost = 802789AC Will-O'-Wisp = 802789E4
Sprite = 80278A1C Jack-O'-Lantern = 80278A54
Arachnoid = 80278A8C Lamia = 80278AC4
Temptress = 80278AFC Pixie = 80278B34
Grangach = 80278B6C Thunder Jell = 80278BA4
Termant = 80278BDC Sandman = 80281CFC
Were Cat = 80281D34 Nightmare = 80281D6C
Blue Man = 80281DA4 Winged Sunfish = 80281DDC
Gloom Wing = 80281E14 Ogre = 80281E4C
Rocky = 80281E84 Red Wyvern = 80281EBC
Flamed Mane = 80281EF4 Magma Fish = 80281F2C
Red Rose Knight = 80281F64 White Rose Knight = 80281F9C
Goblin = 8029564C Frog King = 80295684
Apophis = 802956BC Mad Doll = 802956F4
Death Hugger = 8029572C Kobold = 80295764
Man Trap = 8029579C Bat = 802957D4
Frog Knight = 8029580C Marionasty = 80295844
Dark Goblin = 8029587C Hot Lips = 802958B4
Ghost Stalker = 802958EC Treant = 80295924
Cockatrice = 8029595C
To make Fish Man drop Red Wings. The starting address is 80268FDC. You add
49 (0x31) which = 8026900D. Red wings = 0x12 . So code = 8026900D 0012
Boss Hacks (mnst)
-------------------------------------------------------------------------------
Starting address of Boss stats
Solvaring = 803A9F24
Zelse = 803A9F5C
Nepty = 803A9F94
Shilf = 803A9FCC
Fargo = 803AA004
Guilty = 803AA03C
Beigis = 803AA074
Mammon = 803AA0AC
The order of bytes is the same as regular monsters, so item drop = 50th Byte.
If you wanted to give zelse, extra spells you get Zelse's starting address
which is 803A9F5C then add 45 (0x2D), since number of attacks is the 46th byte.
Code = 803A9F89 00??
Addresses for HP Bonus from Bosses
Solvaring = 8004C2C0 - 8004C2C1
Zelse = 8004C2C2 - 8004C2C3
Nepty = 8004C2C4 - 8004C2C5
Shilf = 8004C2C6 - 8004C2C7
Fargo = 8004C2C8 - 8004C2C9
Guilty = 8004C2CA - 8004C2CB
Beigis = 8004C2CC - 8004C2CD
Mammon = 8004C2CE - 8004C2CF
If you wanted Solvaring to give you 266 hp after beating him, the code =
8104C2C0 010A
Boss Flag = 8007D19B (this determines which bosses you've beaten)
Boss Flag values (Hex)
00 = No bosses beat
01 = Solvaring
02 = Zelse
04 = Nepty
08 = Shilf
10 = Fargo
20 = Guilty
40 = Beigis
80 = Mammon
When you beat multiple bosses, you add them together. 8007D19B 0003 means you
beat Zelse and Solvaring. 8007D19B 0018 means you only beat Shilf and Fargo.
Limits (lmt)
-------------------------------------------------------------------------------
This section is for codes that change the rules of the game.
Element Limit determines max number per element. Default value = 50 (0x32)
Element Limit for Fire = 8001F6FF 00??
Element Limit for Earth = 8001F7C7 00??
Element Limit for Water = 8001F73F 00??
Element Limit for Wind = 8001F77F 00??
If you wanted Fire to have the limit of 99 the code = 8001F6FF 0063
Level Limits
HP Level Limit = 800076B3 00??
MP Level Limit = 8000777B 00??
Agility Level Limit = 8000781F 00??
Defense Level Limit = 800078C7 00??
These limits aren't really useful unless you simply want to change the exp
rate of a stat. Level limits cap at 54, so after leveling up 54 times, the
exp rate stays the same. These codes will only work if you haven't already
reached the limit you want. If you already went past the level limit you
wanted, then go to the Exp section.
Combat Level Limit
Combat is a 1 byte value and represents how many times you can level up from
battles. I put this in it's own category to prevent possible confusion. You
simply give both addresses the same value.
2 addresses that deal with Combat Limit = 8000790B & 80007947
8000790B 0080
80007947 0080 gives you the limit of 128 max combat
Stat Limits (Max Stats possible)
For the left set, you have to set the number to 1 higher than your desired
limit, but the right set, you set the number = to the limit you want. The
default value for HP and MP is 501. Agility and Defense are set to 256. The
left set allows you to gain 1 stat after leveling up, while the right set
allows you to gain xp until you have x amount of a stat.
HP Limit = 80007676 - 80007677 80007622 - 80007623
MP Limit = 8000773E - 8000773F 800076F2 - 800076F3
Agility Limit = 800077F6 - 800077F7 800077AE - 800077AF
Defense Limit = 8000789E - 8000789F 80007852 - 80007853
Here are code examples for setting the limit of each stat
511 max AGL 511 max DEF 755 max HP 755 max MP
800077AE 0001 80007852 0001 80007622 0002 800076F2 0002
800077F6 0002 8000789E 0002 80007676 0003 8000773E 0003
Code for unlimited spirits
Address of 1st spirit = 80086A19 00?? (00 = available, 01 = gone)
Address of Extra spirit = 80086A31 00??
Teleport unlock codes
800222CB 0000 lets you teleport out of forests, dungeons, and mammons world.
800222E4 0010 lets you teleport out of Isle of sky
Uncap Item limit = 800036B1 0000
Recover X amount of MP after running = 8000385B 00?? (1 is default value)
Faster mp recovery while running = 80070F39 0022
Recover Mp while running during battle = 800037E7 0000