/FFFFFFFF/II/NNNN\ /N/AAAA\ /L/ /FF/____ /II/NN/\NN\/N/AA/_\A\ /L/ /FFFFFFF//II/NN/ \NNN/AAAAAAAA\ /L/____ /FF/ /II/NN/ \N/AA/ \A\/LLLLLL/ ___________ __ _____________ _________ __ /FFFFFFF/AAA\ /NN\ /N/TTTTTTT/AAA\ /SSSSSSSS/ /Y/ /FF/___ /A/_\A\/N/\N\ /N/ /T/ /A/_\A\SS/___ \Y\_/Y/ /FFFFFFF/AAAAAAA\/ \N\/N/ /T/ /AAAAAAA\SSSSS/ \YYY/ /FF/ /A/ \A\ \NN/ /T/ /A/ \A\ SS/ /Y/ __________ SSSSSSSS/ /Y/ /IXIXIXIXIX/ =====---- - - - - - - ----===== /IX/____/IX/ FINAL FANTASY IX ENEMY SPELL FAQ /IXIXIXIXIX/ =====---- - - - - - - ----===== _______/IX/ by S. Volo /IXIXIXIX/ version 1.10 completed 12 January 2001 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * This FAQ is dedicated to Dr Gamewiz (1936-1999), * * whose years of selfless service to the the Internet * * gaming community were an inspiration to us all. The * * Doc, as he was affectionately called, ran a forum * * on America Online for many years, founded on the * * principle of 'gamesters helping gamesters'. It was * * the best place on AOL to find hints, codes, * * walkthroughs, and altogether nice people, united by the * * Gamewiz slogan, 'BOOLAH!'. There were message boards, * * newsletters, file repositories, and a weekly newsletter * * -- the Doc would never miss an issue. Everyone who * * regularly visited the Gamewiz forum agreed: there was * * just something wonderful and magical about it. Many * * friendships were forged there, some of which are still * * going strong. In 1997, however, AOL terminated its * * contract with the Doc, opting instead to back Antagonist * * Online, a larger, more impersonal forum whose name * * pretty well bespeaks its nature. Though many Gamewiz * * regulars became disaffected, the Doc, ever the * * optimist, continued assiduously preparing the * * newsletters and kept running his trivia games. Even * * in the face of terminal cancer, the Doc rarely missed * * an issue. On September 28, 1999, Dr Gamewiz passed * * away -- even his eternal optimism could not ward off * * the terrible disease. And so, Doc, this FAQ is for * * you. Wherever you are now, I hope it makes you * * smile. Thanks for giving so much of yourself, and * * know that your work does not go unappreciated. * * BOOLAH!! * * ` S. Volo * * formerly AeroStar13@aol.com * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +----------+ | CONTENTS | +----------+ Revision History Preface Part 1: Spell Selection Part 2: Name that Spell Part 3: Sixteen Bytes (customize what the spell does) Part 4: Appearance is Everything (customize spell graphics) Part 5: Examples (i.e., I did the work so you don't have to) > Fire to Flare Star > Demi to Maelstrom > Confuse to Grand Cross > Matra Magic to Blue Shockwave > Ice to Freeze > Jewel to Neutron Ring > Cure to Grand Cure > Meteor to Ultima > Water to Waterga > Thundara to Aeraga > Bad Breath to Curse > Comet to Meteorite > Minus Strike to Raining Swords > Blizzara to Snowstorm > Aqua Breath to Fallen One > LV5 Death to Dark Flare > Blind to Judgement Day +------------------+ | REVISION HISTORY | +------------------+ v1.10 (2001-01-12): corrected errors added data to chart for EFFECT byte improved list of graphical effects added Snowstorm, Fallen One, Dark Flare and Judgement Day to 'Examples' section v1.02 (2001-01-10): corrected minor errors v1.01 (2001-01-09): corrected typos v1.00 (2001-01-08): the first version! +---------+ | PREFACE | +---------+ The following instructions (and a GameShark) will allow you to use virtually any spell that FF9 has to offer -- including enemy spells -- and will even let you create your own spells! Special thanks to CzarDragon and King Edgar 0 , without whose hacking expertise this FAQ would not have been possible. Here are a few things to know before you get started: - In this guide the prefix '$' before a number means that number is in hexadecimal. So $10 = 10 hex = 16 decimal. - A GameShark code is composed of two sections: the ADDRESS section (8 digits) and the DATA section (4 digits): 801CA56A 3815 | | v v address data - A BYTE value is represented by two hex digits and can take on the values $00 - $FF (0 - 255 decimal). A GameShark code beginning with '30' sets a byte value. - A WORD value is two bytes long, is represented by four hex digits, and can take on the values $0000 - $FFFF (0 - 65535 decimal). A GameShark code beginning with '80' sets a word value. The first two digits of the data section of the code will set the second byte of the word, and the last two digits will set the first byte of the word. IMPORTANT NOTE: the GameShark CANNOT handle word-value codes beginning at odd addresses (the odd hex digits are $1, $3, $5, $7, $9, $B, $D, and $F). If you enter such a code, it will CRASH THE PLAYSTATION. To set a word value that begins at an odd address, you must use two byte ('30') codes. Ex: 801CA56A 3815 => okay, sets $1CA56A to $15 sets $1CA56B to $38 801CA56B 4138 => NOT OKAY. ($B is odd). To accomplish the equivalent effect of *801CA56B 4138, you must use two byte codes: 301CA56B 0038 => sets $1CA56B to $38 301CA56C 0041 => sets $1CA56C to $41 - Final Fantasy IX reassigns memory addresses outside of battle. This creates a MAJOR inconvenience for the GameShark coder, because a conditional code is required before EACH normal code to ensure that the codes are only activated in battle so that the non-battle data in that address is not overwritten. A conditional word ('D0') code will activate the subsequent code on the list if and only if the address specified by the D0 code is currently equal to the word value in the data portion of the D0 code. The battle check code for Final Fantasy IX is +---------------+ | D01044B8 0100 | +---------------+ Memorise it; you'll need to input it before every '30' or '80' code you enter. Enjoy the FAQ! :) ` S. Volo +-------------------------+ | PART 1: SPELL SELECTION | +-------------------------+ To create a new spell, you must use an old spell or effect as a template. The addresses below, discovered by CzarDragon, will be the bases for all further codes you develop. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TABLE 1. memory addresses for spell data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * information derived by CzarDragon * BaseAddr: the first byte that contains information about this spell Gfx1: the first graphical effect stored for this spell (see part 4) Gfx2: the second graphical effect stored for this spell. If this is 000A, there is no second graphical effect (see part 4) BaseAddr | Gfx1 | Gfx2 | Spell ========================================= 80109ECC | 0000 | 000A | Void ----------------------------------------- 80109EDC | 0009 | 0008 | Cure 80109EEC | 00A2 | 008D | Cura 80109EFC | 0090 | 008E | Curaga 80109F0C | 0020 | 000A | Regen 80109F1C | 0011 | 000A | Life 80109F2C | 000F | 000A | Full-Life 80109F3C | 0083 | 000A | Scan 80109F4C | 000C | 000A | Panacea 80109F5C | 000D | 000A | Stona 80109F6C | 000B | 000A | Esuna 80109F7C | 003F | 000A | Shell 80109F8C | 007B | 000A | Protect 80109F9C | 0059 | 000A | Haste 80109FAC | 007F | 002A | Silence 80109FBC | 007C | 0019 | Mini 80109FCC | 004F | 000A | Reflect 80109FDC | 0061 | 0060 | Confuse 80109FEC | 008C | 000E | Berserk 80109FFC | 009D | 009E | Blind 8010A00C | 004C | 001B | Float 8010A01C | 0080 | 000A | Dispel 8010A02C | 005A | 000A | Might 8010A03C | 00C9 | 000A | Jewel 8010A04C | 0057 | 000A | Holy ----------------------------------------- 8010A05C | 0046 | 0000 | Fire 8010A06C | 0047 | 0002 | Fira 8010A07C | 0048 | 0007 | Firaga 8010A08C | 004E | 001A | Sleep 8010A09C | 003E | 0006 | Blizzard 8010A0AC | 004D | 0004 | Blizzara 8010A0BC | 0098 | 0097 | Blizzaga 8010A0CC | 007E | 000A | Slow 8010A0DC | 0042 | 0003 | Thunder 8010A0EC | 0049 | 0005 | Thundara 8010A0FC | 0085 | 0018 | Thundaga 8010A10C | 0095 | 000A | Stop 8010A11C | 00CA | 0015 | Poison 8010A12C | 0078 | 005D | Bio 8010A13C | 0039 | 000A | Osmose 8010A14C | 0084 | 000A | Drain 8010A15C | 0063 | 0062 | Demi 8010A16C | 0038 | 000A | Comet 8010A17C | 005E | 000A | Death 8010A18C | 0099 | 000A | Break 8010A19C | 005F | 0016 | Water 8010A1AC | 0086 | 008F | Meteor 8010A1BC | 007D | 000A | Flare 8010A1CC | 0134 | 000A | Doomsday ----------------------------------------- 8010A1DC | 0026 | 0197 | Shiva ----------------------------------------- 8010A1EC | 00D4 | 000A | Fire Sword ----------------------------------------- 8010A1FC | 0114 | 01BD | Ifrit ----------------------------------------- 8010A20C | 00D5 | 000A | Fira Sword ----------------------------------------- 8010A21C | 00BA | 019F | Ramuh ----------------------------------------- 8010A22C | 00D6 | 000A | Firaga Sword ----------------------------------------- 8010A23C | 00B8 | 01BE | Atomos ----------------------------------------- 8010A24C | 00DA | 000A | Blizzard Sword 8010A25C | 00DB | 000A | Blizzara Sword ----------------------------------------- 8010A26C | 0105 | 01A8 | Odin ----------------------------------------- 8010A27C | 00DC | 000A | Blizzaga Sword ----------------------------------------- 8010A28C | 00B3 | 0196 | Leviathan ----------------------------------------- 8010A29C | 00D7 | 000A | Thunder Sword ----------------------------------------- 8010A2AC | 00E3 | 0195 | Bahamut ----------------------------------------- 8010A2BC | 00D8 | 000A | Thundara Sword ----------------------------------------- 8010A2CC | 017D | 01BF | Ark ----------------------------------------- 8010A2DC | 00D9 | 000A | Thundaga Sword ----------------------------------------- 8010A2EC | 00D2 | 01FC | Fenrir 8010A2FC | 00E2 | 01FD | Fenrir 8010A30C | 00B1 | 01F8 | Carbuncle 8010A31C | 01EE | 01FA | Carbuncle 8010A32C | 01ED | 01F9 | Carbuncle 8010A33C | 01EF | 01FB | Carbuncle 8010A34C | 00D3 | 01FE | Phoenix 8010A35C | 00E1 | 00E1 | Rebirth Flame 8010A36C | 00FB | 017A | Madeen ----------------------------------------- 8010A37C | 00DD | 000A | Bio Sword 8010A38C | 00DE | 000A | Water Sword ----------------------------------------- 8010A39C | 004A | 000A | Goblin Punch 8010A3AC | 009A | 000A | LV5 Death 8010A3BC | 0081 | 000A | LV4 Holy 8010A3CC | 0188 | 000A | LV3 Def-less 8010A3DC | 00EC | 000A | Doom 8010A3EC | 00ED | 000A | Roulette 8010A3FC | 001C | 000A | Aqua Breath 8010A40C | 0051 | 000A | Mighty Guard 8010A41C | 0058 | 000A | Matra Magic 8010A42C | 002C | 000A | Bad Breath 8010A43C | 0052 | 000A | Limit Glove 8010A44C | 001E | 000A | 1,000 Needles 8010A45C | 0129 | 000A | Pumpkin Head 8010A46C | 01F5 | 000A | Night 8010A47C | 00B2 | 000A | Twister 8010A48C | 0186 | 000A | Earth Shake 8010A49C | 002D | 000A | Angel's Snack 8010A4AC | 00E4 | 000A | Frog Drop 8010A4BC | 0029 | 000A | White Wind 8010A4CC | 01F4 | 000A | Vanish 8010A4DC | 0096 | 000A | Frost 8010A4EC | 00BB | 000A | Mustard Bomb 8010A4FC | 0082 | 000A | Magic Hammer 8010A50C | 008A | 000A | Auto-Life ----------------------------------------- 8010A51C | 00F9 | 000A | Flee 8010A52C | 00FA | 000A | Detect 8010A53C | 018F | 000A | What's That!? 8010A54C | 00E5 | 000A | Soul Blade 8010A55C | 00E9 | 000A | Annoy 8010A56C | 00EA | 000A | Sacrifice 8010A57C | 0138 | 000A | Lucky Seven 8010A58C | 00E7 | 000A | Thievery 8010A59C | 00F1 | 000A | Free Energy 8010A5AC | 00F2 | 000A | Tidal Flame 8010A5BC | 00F3 | 000A | Scoop Art 8010A5CC | 00F4 | 000A | Shift Break 8010A5DC | 00F5 | 000A | Stellar Circle 5 8010A5EC | 00F6 | 000A | Meo Twister 8010A5FC | 00F7 | 000A | Solution 9 8010A60C | 00F8 | 000A | Grand Lethal ----------------------------------------- 8010A61C | 0191 | 000A | Lancer 8010A62C | 00A8 | 000A | Reis's Wind 8010A63C | 0128 | 000A | Dragon Breath 8010A64C | 0053 | 000A | White Draw 8010A65C | 003D | 000A | Luna 8010A66C | 01EB | 000A | Six Dragons 8010A67C | 0183 | 000A | Cherry Blossom 8010A68C | 01EA | 000A | Dragon's Crest ----------------------------------------- 8010A69C | 0055 | 000A | Chakra 8010A6AC | 0087 | 000A | Spare Change 8010A6BC | 00C1 | 000A | No Mercy 8010A6CC | 00C5 | 000A | Aura 8010A6DC | 00C3 | 000A | Curse 8010A6EC | 0089 | 000A | Revive 8010A6FC | 0079 | 000A | Demi Shock 8010A70C | 0181 | 000A | Countdown 8010A71C | 0056 | 000A | Chakra 8010A72C | 0088 | 000A | Spare Change 8010A73C | 00C2 | 000A | No Mercy 8010A74C | 00C6 | 000A | Aura 8010A75C | 00C4 | 000A | Curse 8010A76C | 01A5 | 000A | Revive 8010A77C | 007A | 000A | Demi Shock 8010A78C | 0182 | 000A | Countdown 8010A79C | 00BC | 0199 | Darkside ----------------------------------------- 8010A7AC | 00BD | 019A | Minus Strike 8010A7BC | 00BE | 019B | Iai Strike 8010A7CC | 00D0 | 00D0 | Power Break 8010A7DC | 005C | 005C | Armor Break 8010A7EC | 00D1 | 00D1 | Mental Break 8010A7FC | 002E | 002E | Magic Break 8010A80C | 018E | 018E | Charge! 8010A81C | 00BF | 019C | Thunder Slash 8010A82C | 00CF | 019E | Stock Break 8010A83C | 018D | 01A1 | Climhazzard 8010A84C | 00C0 | 019D | Shock ----------------------------------------- 8010A85C | 0197 | 000A | Diamond Dust 8010A86C | 01BD | 000A | Flames of Hell 8010A87C | 019F | 000A | Judgement Bolt 8010A88C | 01BE | 000A | Worm Hole 8010A89C | 01A8 | 000A | Zantetsuken 8010A8AC | 0196 | 000A | Tsunami 8010A8BC | 0195 | 000A | Mega Flare 8010A8CC | 01BF | 000A | Eternal Darkness ----------------------------------------- 8010A8DC | 000A | 000A | None 8010A8EC | 000A | 000A | None 8010A8FC | 000A | 000A | None 8010A90C | 000A | 000A | None 8010A91C | 000A | 000A | None 8010A92C | 000A | 000A | None 8010A93C | 000A | 000A | None 8010A94C | 000A | 000A | None 8010A95C | 000A | 000A | None 8010A96C | 000A | 000A | None 8010A97C | 000A | 000A | None ----------------------------------------- 8010A98C | 0189 | 000A | Jump ----------------------------------------- 8010A99C | 009F | 000A | Pyro 8010A9AC | 0179 | 000A | Medeo 8010A9BC | 0125 | 000A | Poly ----------------------------------------- 8010A9CC | 000A | 000A | Attack 8010A9DC | 00C8 | 000A | Steal 8010A9EC | 0189 | 000A | Jump 8010A9FC | 000A | 000A | Defend 8010AA0C | 000A | 000A | Flee 8010AA1C | 00C8 | 000A | Mug 8010AA2C | 000A | 000A | Change 8010AA3C | 00FE | 000A | Eat 8010AA4C | 00FF | 000A | Cook 8010AA5C | 0184 | 000A | Spear 8010AA6C | 0185 | 000A | Spear ----------------------------------------- 8010AA7C | 00FB | 00FB | Terra Homing ----------------------------------------- 8010AA8C | 00C7 | 000A | Focus ----------------------------------------- 8010AA9C | 00DF | 000A | Flare Sword ----------------------------------------- 8010AAAC | 000A | 000A | Throw ----------------------------------------- 8010AABC | 00E0 | 000A | Doomsday Sword +-------------------------+ | PART 2: NAME THAT SPELL | +-------------------------+ The next step to creating a new spell is to give it a name. You can use the proper names of the spells (given in the chart in part #), or you can choose your own names. A good place to store the names in the RAM is in the area where help text is normally stored, because it is immediately after the normal spell names and can therefore be accessed by the text offset byte in the spell information. Storing the names, however, will screw up some of the help text, so be forewarned. The spell name offset is stored at BaseAddr + $E. It should always end in A. You can use a word ('80') code, because this address will always be even. Ex: Fire BaseAddr 8010A05C Fire name offset 8010A06A 0??? You can use each address on the list to store the name of a different spell, provided you keep the names of all spells to 16 characters or less. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TABLE 2. name-storing addresses & corresponding offsets ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ADDRESS TO STORE NAME IN OFFSET (???) -------- ----------- 800F96F0 654 800F9700 664 800F9710 674 800F9720 684 800F9730 694 800F9740 6A4 800F9750 6B4 800F9760 6C4 800F9770 6D4 800F9780 6E4 800F9790 6F4 800F97A0 704 800F97B0 714 800F97C0 724 800F97D0 734 800F97E0 744 800F97F0 754 800F9800 764 800F9810 774 800F9820 784 800F9830 794 800F9840 7A4 800F9850 7B4 800F9860 7C4 800F9870 7D4 800F9880 7E4 800F9890 7F4 800F98A0 804 800F98B0 814 800F98C0 824 800F98D0 834 800F98E0 844 800F98F0 854 800F9900 864 800F9910 874 800F9920 884 800F9930 894 800F9940 8A4 800F9950 8B4 800F9960 8C4 800F9970 8D4 800F9980 8E4 800F9990 8F4 800F99A0 904 800F99B0 914 800F99C0 924 800F99D0 934 800F99E0 944 800F99F0 954 ... and by the time you make that many codes, you shouldn't need my help anymore. :) Now that you've got a free memory address to place the codes in, you need to fill the address with something. The digits for all the numbers and letters are below. >> Note: you must preface each code with the 'in-battle check' code, D01044B8 0100, so that the codes are activated only during battle. The reason for this is that the game reuses the same memory addresses to store other data outside of battle. ~~~~~~~~~~~~~~~~~~~~~~~~~~ TABLE 3. the ff9 alphabet ~~~~~~~~~~~~~~~~~~~~~~~~~~ 00: 0 10: A 30: a 01: 1 11: B 31: b 02: 2 12: C 32: c 03: 3 13: D 33: d 04: 4 14: E 34: e 05: 5 15: F 35: f 06: 6 16: G 36: g 07: 7 17: H 37: h 08: 8 18: I 38: i 09: 9 19: J 39: j 0A: + 1A: K 3A: k 0B: - 1B: L 3B: l 0C: = 1C: M 3C: m 0D: * 1D: N 3D: n 0E: % 1E: O 3E: o 0F: [space] 1F: P 3F: p 20: Q 40: q 21: R 41: r 22: S 42: s 23: T 43: t 24: U 44: u 25: V 45: v 26: W 46: w 27: X 47: x 28: Y 48: y 29: Z 49: z FF: end of name indicator (required!) Two letters can be stored per 800Fxxxx code. Simply increment the address by $2 to create the code for the next two letters. If you use the full sixteen characters, you should have addresses ending in 0, 2, 4, 6, 8, A, C, and E. Keep in mind that $8 + $2 = $A, not $10! Note that the RIGHTMOST byte in the code data is read first, so to produce the string 'Fa', you'd enter $3015. Also, you MUST end with a $FF character to terminate the string, even if it requires adding an extra code. Here's an example. Ex: Change name of 'Fire' to 'Flare Star'. First we have to store the name 'Flare Star' in the game's memory. We'll start at address 800F96F0. D01044B8 0100 (battle check) 800F96F0 3B15 'l' 'F' D01044B8 0100 800F96F2 4130 'r' 'a' D01044B8 0100 800F96F4 0F34 (space) 'e' D01044B8 0100 800F96F6 4322 't' 'S' D01044B8 0100 800F96F8 4130 'r' 'a' D01044B8 0100 800F96FA FFFF (terminate string) Hopefully by studying that code set you can get the hang of how it works. Now we have to apply our newly-generated string to the Fire spell. Looking at part 1, we see the BaseAddr for Fire is 8010A05C. Adding $E to this yields 8010A06A. Knowing that we placed the string at addres 800F96F0, we can look at Table 2 and find that the appropriate offset value is 654. So we use the codes D01044B8 0100 (we still need the battle check) 8010A06A 0654 change name offset to where we stored 'Flare Star' And that should do it -- enter all the codes above, and 'Fire' should instead be called 'Flare Star'. +-----------------------+ | PART 3: SIXTEEN BYTES | +-----------------------+ You can completely customize the effect of your new spell by modifying the sixteen bytes of data that comprise the BaseAddr and the 15 subsequent addresses. Here is a byte-by-byte walkthrough. BaseAddr Ends in C Effect TARGETING Length BYTE (use code beginning with 3, not 8) This byte affects what the spell can target. Here is a list of possible values (there may be others). # possible targets default target example spell -- ------------------------------- -------------- ------------- 00 one ally or enemy one enemy Scan 02 one enemy one enemy Jewel 03 one/all ally or enemy one enemy Fire damage halved by selecting all 08 all enemies all enemies Meteor 0C everyone everyone Roulette 20 one enemy/ally; used for Drain one enemy Drain 30 one ally or enemy one ally Regen 33 one/all ally or enemy one ally Cure 37 all allies all allies White Wind 40 one enemy/ally; used for Osmose one enemy Osmose 91 one ally one ally Auto-Life BaseAddr + $1, + $2 Ends in D, E Effect GRAPHICS (MULTIPLE TARGET GRAPHICS for variable target spells) Length WORD (use two codes beginning with 3; odd 8 code crashes PSX) These two bytes affect the spell graphics. If the spell has only one graphical effect, it will be stored here; if there are two possible effects (as with the elemental spells Fire, Fira, etc.), the 'multiple targets' effect will be stored here. It is NOT RECOMMENDED that you edit these bytes because it requires TWO codes. See part 4 for a better way to change graphics, as well as a list of graphical modifiers. BaseAddr + $3 Ends in F Effect UNKNOWN Length BYTE BaseAddr + $4 Ends in 0 Effect SPELL'S EFFECT Length BYTE (use a 3 code unless also altering POWER byte) This byte determines what will happen when you cast the spell. Here is a partial list of effects; this is by no means complete. Hopefully I'll continually update this as time goes on. If you have a submission to it, go right ahead and e-mail it to me and you will receive credit. # EFFECT NOTES -- -------------------------- --------------------------------------- 09 cause magical damage strength of spell depends on POWER byte 0A heal strength of spell depends on POWER byte 0B add status see STATUS byte 0C remove status see STATUS byte 0D revive % of HP restored depends on POWER byte 0E kill instant death; STATUS byte should be 15 0F drain MP strength of spell depends on POWER byte 10 drain HP strength of spell depends on POWER byte 11 damage = % of MaxHP percentage determined by POWER byte success rate determined by RATE byte 12 random magical damage strength increases with POWER byte 13 cause physical damage strength depends on POWER byte 14 cause physical damage not sure of the distinction between this and $13 15 ??? used for Goblin Punch 16 add status depending on LV LV must be divisible by RATE byte 17 damage depending on LV LV must be divisible by RATE byte 18 lower def. depending on LV LV must be divisible by RATE byte 19 initialize roulette causes status in STATUS byte 1A 100 * POWER damage multiple determined by POWER byte 1B cut HP to specific value value determined by POWER byte success rate determined by RATE byte 1C do damage if casterHP = 1 I think... used for Limit Glove 1D do damage equal to (caster's MaxHP - caster's CurrentHP) 1E heal 1/3 of caster's MaxHP 1F damage MP randomly 20 reduce caster's HP; do damage 21 reduce defence 22 reduce physical attack power 23 reduce magic defence 24 reduce magic attack power 25 heal HP and MP strength determined by POWER byte 26 cause damage using Gil strength determined by POWER byte 27 damage HP and MP strength determined by POWER byte 28 damage determined by ??? used by Dragon Breath 29 damage MP used by White Draw 2B raise physical attack pwr increase may depend on POWER byte 2D kill caster; completely recover all other targets 2E cause status ailment that is the ADD ST of equipped weapon 32 ??? used by Six Dragons 33 lower defence 34 use 4 Remedies on party 36 chance of resetting ATB meter to zero 39 flee from battle 3C display steal-able items 3D makes [Near Death] party members attack enemy 43 do damage equal to (Speed * (# of successful Steals)) 44 damage determined by # dragons killed? (used by Dragon's Crest) 67 add beneficial status see STATUS byte 6C add bad status see STATUS byte BaseAddr + $5 Ends in 1 Effect POWER Length BYTE (use a 3 code) This byte has many uses: - Determines the damage multiplier for a damage (EFFECT = $09), cure (EFFECT = $08, $25), or drain (EFFECT = $0F, $10) spell. Some values to use for comparison: 'Fire' = $0E (= 14 dec), 'Firaga' = $48 (= 72 dec), 'Flare' = $70 (= 112 dec). - Determines the percentage of the MaxHP that will be restored by a revive (EFFECT = $0D) spell ($64 = 100%). - Determines the percentage of the MaxHP that will be taken off by a %-of-MaxHP (EFFECT = $11) spell ($64 = all of it!). - Determines the number of HP left behind by a cut-HP-to-value (EFFECT = $1B) spell ($01 = 1 HP, $00 = bye bye!) - Determines the multiplier for a 100 * POWER (EFFECT = $1A) spell ($0A = 1000 damage, $63 = 9900 damage, $64 = 9999 damage. yes, that means it will _always_ do 9999 damage.) BaseAddr + $6 Ends in 2 Effect ELEMENTAL Length BYTE (use a 3 code) This byte determines the attack's elemental affiliation. You can give an attack more than one elemental by adding the values for the two (or more) elementals together. 01: Fire 02: Ice 04: Lightning 08: Earth 10: Water 20: Wind 40: Holy 80: Shadow BaseAddr + $7 Ends in 3 Effect RATE Length BYTE (use a 3 code) This byte affects the success rate of a status-adding, %-of-MaxHP, or cut-HP-to-value attack. If your spell is saying MISS a lot, try setting this byte to FF. If you think your spell is hitting too much, lower the value of this byte. BaseAddr + $8 Ends in 4 Effect UNKNOWN Length BYTE I think this has something to do with the game's classification of the attack. It doesn't seem to have any effect on the spell when it is used. BaseAddr + $9 Ends in 5 Effect STATUS Length BYTE This determines what status effects a spell will add. Note that not only status-adding (EFFECT = $0B or $67) spells, but also damaging or healing spells (EFFECT = $09, $08, $25) and some others will add status effects if given a nonzero value in this byte. The success rate of the status effect is determined by the RATE byte. When used with a remove-status (EFFECT = $0C) spell, this byte will determine which statuses the spell removes. ## STATUS ADDED/REMOVED -- --------------------------------------------------------------- 00 none 01 add Regen 02 remove Dead 03 remove Poison, Venom 04 remove Petrify 05 remove various (used by Esuna) 06 add Shell 07 add Protect 08 add Haste 09 add Silence 0A add or remove Mini 0B add Reflect 0C add Confuse 0D add Berserk 0E add Blind 0F add Float 10 remove Shell, Protect, Haste, Reflect, Float, Vanish, Regen 11 add Sleep 12 add Slow 13 add Stop 14 add Poison 15 add Death 16 add Petrify 17 add Petrify 18 add Vanish 19 add Death Sentence 1A add Protect and Shell 1B add various bad status (Bad Breath) 1C add Freeze 1D add Heat 1E add Auto-Life 1F add Trouble 20 add Auto-Life 21 add 'MP-up' (?) 22 add Zombie 23 add Virus 24 add Gradual Petrify 25 add Venom 26 add various bad status (Curse) FF add various bad status (Grand Cross) BaseAddr +$A Ends in 6 Effect MP Length BYTE (use a 3 code) This simply determines the MP needed to cast the spell. Note that, as with all values, it must be entered in hex. BaseAddr +$B Ends in 7 Effect WHEN USED Length BYTE (use a 3 code) Has something to do with when the spell can be used (in battle vs. out-of-battle). Probably not a good idea to mess with it. BaseAddr +$C, +$D Ends in 8 Effect GRAPHICS (SINGLE TARGET) Length WORD (use an 8 code) Variable target spells store their single-target graphics here. Summons also store their incomplete graphics here. Don't use this byte to alter the graphics; see Part 4 instead. BaseAddr +$E, +$F Ends in A Effect NAME OFFSET Length WORD (use an 8 code) Determines the name offset of the spell. See Part 2 for details. Ex: Make 'Fire' spell stronger, always target all enemies, and always add the 'Heat' status. > Adjust POWER byte to make Fire spell stronger. Looking at Table 1, we see that the BaseAddr for Fire is 8010A05C. POWER byte = BaseAddr + $5 = 8010A061 We want a byte-length code, so we must change the first digit of the code to 3, and must also preface the code with the battle-check code. The following will increase Fire's power to 80 (= $50) (it's originally 14): D01044B8 0100 3010A061 0050 > Adjust TARGETING byte to make Fire target all enemies. TARGETING byte = BaseAddr = 8010A05C Again, this should be a byte-length ('3') code. The table of targets tells us that all enemies corresponds to $08. D01044B8 0100 3010A05C 0008 > Adjust STATUS and RATE bytes to make Fire always add the 'Heat' status. STATUS byte = BaseAddr + $9 = 8010A065 The table of statuses lists 'Heat' as $1C, so we create the byte-length code, D01044B8 0100 3010A065 001C Then we must be sure to increase the frequency with which 'Heat' is added using the RATE byte. RATE byte = BaseAddr + $7 = 8010A063 Again, we need a byte-length code, D01044B8 0100 3010A063 00FF Putting all eight lines of code together will achieve the desired effects in unison. NOTE: If you are editing two consecutive addresses, AND the first of those two addresses is even, then you can, at your option, use one word code in lieu of two byte codes. +----------------------------------+ | PART 4: APPEARANCE IS EVERYTHING | +----------------------------------+ Now's the fun part: you can customize the way your spell looks (and sounds) when cast. You _can_ change this information in the spell's data section, but since it's stored in an odd address, which requires two codes to change, it's more efficient to do it the way outlined below. To change the graphics for your chosen spell, enter the four following codes: * this address was found by King Edgar 0 * (1) D00FEC42 yyyy (2) 800FEC42 0www (3) D00FEC42 zzzz (4) D00FEC42 0xxx yyyy: value of 'Gfx1' for the spell you want to edit (see part 1). www: value from the chart below for the new spell you want to create (multiple targets if variable target spell) zzzz: value of 'Gfx2' for the spell you want to edit (see part 1). if yyyy = 000A, the spell does not have a second graphic effect, and you do not need codes (3) or (4) xxx: value from the chart below for the new spell you want to create (single target if variable target spell) Note that you can specify two different graphics if you are creating a variable target spell; the Gfx1 replacement will be the graphics for multiple targets, and the Gfx2 replacement will be the graphics for a single target. Ex: Change graphics of 'Fire' to those of 'Flare Star'. Look up 'Fire' and part one and find Gfx1 = 0046 Gfx2 = 0000 Flare Star targets all enemies (and only all enemies), so our value of www will be equal to our value of xxx. Look up 'Flare Star' in table 4 and find value of www / xxx www = xxx = 1B4 Sub values into codes above: D00FEC42 0046 800FEC42 01B4 D00FEC42 0000 800FEC42 01B4 Now 'Fire' will look like 'Flare Star'! ~~~~~~~~~~~~~~~~~~~~~~~~ TABLE 4. spell graphics ~~~~~~~~~~~~~~~~~~~~~~~~ www/ xxx SPELL NAME (if known) NOTES --- --------------------- -------------------------------------- 000 Fire one target 001 (Grand Cure) like a huge cure spell (one target) 002 Fira one target 003 Thunder one target 004 Blizzara one target 005 Thundara one target 006 Blizzard one target 007 Firaga one target 008 Cure one target 009 Cure multiple targets 00A [null value] 00B Esuna one target 00C Panacea one target 00D Stona one target 00E Berserk one target 00F Full-life one target 010 [no effect] 011 Life one target 012 [no effect] 013 Steal one target 014 Steal one target 015 Poison one target 016 Water one target 017 (Ice) snowflakes & icicles (one target) 018 Thundaga one target 019 Mini one target 01A Sleep one target 01B Float one target 01C Aqua Breath 01D (Energy Waves) waves of energy 01E 1000 Needles 01F (Exploder) explosion (mult targets) 020 Regen one target 021 [no graphics] sounds only 022 [kraken arm death] bubbles on caster 023 Psychokinesis bubbles / target rises in air 024 (Energy Waves) same as 1D 025 [lockup] 026 Shiva (full) mult targets 027 [lockup] 028 Elixir one target 029 White Wind mult targets 02A Silence one target 02B Aerial Slash wind attack (mult targets) 02C Bad Breath one target 02D Angel's Snack mult targets 02E Magic Break one target 02F Flame caster spits fire at multiple targets 030 (Sparkle) gold sparkles 031 (Glare) light flash on caster; smoke on 1 target 032 Glowing Eyes similar to above 033 Snort air vortex pushes one target away 034 Cold Breath ice shot at one target 035 (Oil Shot) oil shot at one target and ignites 036 (Inferno) fire engulfs entire screen 037 Darkness black circle (one target) 038 Comet one target 039 Osmose one target 03A Earthquake ground shakes; similar to Earth Shake 03B Trouble Juice nasty yellow stuff dropped on target 03C (Rainbow Storm) gusts of multicoloured wind (one target) 03D Luna everyone 03E Blizzard multiple targets 03F Shell one target 040 Bubbles bubbles of water shot at one target 041 (Energy Blast) red and then blue shine on one target 043 Ink black smoke on target 044 (Odd Soundwave) beam of coloured stuff shot at target 045 (Energy Waves) same as 1D 046 Fire multiple targets 047 Fira multiple targets 048 Firaga multiple targets 049 Thundara multiple targets 04A Goblin Punch one target 04B Sandstorm sand is gathered and blown at targets 04C Float one target 04D Blizzara multiple targets 04E Sleep one target 04F Reflect one target 050 [lockup] 051 Mighty Guard multiple targets 052 Limit Glove one target 053 White Draw one target 054 [lockup] 055 Chakra one target 056 Chakra multiple targets 057 Holy one target 058 Matra Magic one target 059 Haste one target 05A Might one target 05B [lockup] 05C Armor Break one target 05D Bio one target 05E Death one target 05F Water multiple targets 060 Confuse one target 061 Confuse multiple targets 062 Demi one target 063 Demi multiple targets 064\ . \ . > these all execute a normal physical . / attack by the caster 077/ 078 Bio multiple targets 079 Demi Shock one target 07A Demi Shock multiple targets 07B Protect one target 07C Mini multiple targets 07D Flare one target 07E Slow one target 07F Silence multiple targets 080 Dispel one target 081 LV4 Holy multiple targets 082 Magic Hammer multiple targets 083 Scan one target 084 Drain one target 085 Thundaga multiple targets 086 Meteor (miss) multiple targets 087 Spare Change one target 088 Spare Change multiple targets 089 Revive one target 08A Auto-life one target 08B (Energy Waves) same as 1D 08C Berserk multiple targets 08D Cura one target 08E Curaga one target 08F Meteor (hit) multiple targets 090 Curaga multiple targets 091 Entice hearts fly at one target 092 Hypnotize purple spinning stuff, one target 093 Cannon explosion from caster & on 1 target 094 (Prism Shot) lots of triangles on one target 095 Stop one target 096 Frost (Freeze) one target 097 Blizzaga one target 098 Blizzaga multiple targets 099 Break one target 09A LV5 Death multiple targets 09B Lava Gun flaming rocks shot at one target 09C (Starburst) flashes and starburst 09D Blind one target 09E Blind multiple targets 09F Pyro fire attack on one target 0A0 String target is ravelled in white web 0A1 Blaster colourful burst on target 0A2 Cura multiple targets 0A3 Electrocute caster is electrified 0A4 Buzz sound waves surround one target 0A5 Pollen pollen attacks multiple targets 0A6 (Firestorm) sand & explosions / mult targets 0A7 Water Gun (1x) water is shot at one target 0A8 Reis' Wind all targets 0A9 Lightning lightning shot at one target 0AA Snowstorm frost is shot at multiple targets 0AB Maelstrom red winds attack one target 0AC (Bio Breath) poison-looking stuff on one target 0AD Aero Breath high-velocity breath on one target 0AE Venom Breath black & purple breath on one target 0AF Zombie Breath black & white ghostly attack / 1 target 0B0 (Autumn Leaves) attack with leaves 0B1 Carbuncle (full) multiple targets 0B2 Twister multiple targets 0B3 Leviathan (full) multiple targets 0B4 Aero wind attack on one target 0B5 Rainbow Wind multicoloured wind attack on one target 0B6 Scorch caster is set ablaze 0B7 Heavy waves push down on one target 0B8 Atomos (full) multiple targets 0B9 Sandstorm sand is gathered & blown at mult targets 0BA Ramuh (full) multiple targets 0BB Mustard Bomb one target 0BC Darkside one target 0BD Minus Strike one target 0BE Iai Strike one target 0BF Thunder Slash one target 0C0 Shock one target 0C1 No Mercy one target 0C2 No Mercy multiple targets 0C3 Curse (Amarant) one target 0C4 Curse (Amarant) multiple targets 0C5 Aura one target 0C6 Aura multiple targets 0C7 Focus caster gathers power 0C8 Mug / Steal one target 0C9 Jewel one target 0CA Poison multiple targets 0CB (Nanoflare) explosion, one target 0CC Meteorite meteors bombard all enemies (cool!) 0CD Aera wind attack, multiple targets 0CE Gradual Petrify petrify stare, one target 0CF Stock Break multiple targets 0D0 Power Break one target 0D1 Mental Break one target 0D2 Fenrir (full) multiple targets 0D3 Phoenix (full) multiple targets 0D4 Fire Sword one target 0D5 Fira Sword one target 0D6 Firaga Sword one target 0D7 Thunder Sword one target 0D8 Thundara Sword one target 0D9 Thundaga Sword one target 0DA Blizzard Sword one target 0DB Blizzara Sword one target 0DC Blizzaga Sword one target 0DD Bio Sword one target 0DE Water Sword one target 0DF Flare Sword one target 0E0 Doomsday Sword one target 0E1 Rebirth Flame multiple targets 0E2 Fenrir (half) multiple targets 0E3 Bahamut (full) multiple targets 0E4 Frog Drop one target 0E5 Soul Blade one target 0E6 [lockup] 0E7 Thievery one target 0E8 [no name] teleport out of battle 0E9 Annoy one target 0EA Sacrifice multiple targets 0EB Psychokinesis one target rises and falls down 0EC Doom one target 0ED Roulette everyone 0EE (Light Flash) caster shines 0EF Red Clipper fiery slashes on one target 0F0 (Sand Breath) shot of sand 0F1 Free Energy one target 0F2 Tidal Flame multiple targets 0F3 Scoop Art one target 0F4 Shift Break multiple targets 0F5 Stellar Circle 5 one target 0F6 Meo Twister multiple targets 0F7 Solution 9 one target 0F8 Grand Lethal multiple targets 0F9 Flee multiple targets 0FA Detect one target 0FB Terra Homing (Madeen) multiple targets 0FC [no name] run from battle 0FD [no graphics] 0FE Eat one target 0FF Cook one target 100 (Purple Haze) purple smoke on one target 101 Trance trancing effect on caster 102 Rise waves push one target up 103 Mist white smoke on mutliple targets 104 (Soul Out) ghosts fly out of one target 106 (Slime) yellow liquid on target 107 [lockup] 108 [lockup] 10A\ . \ . > various 'Throw' graphics . / 110/ 111 Steal 112 (Devour) caster eats one target 113 (Light Shell) pink explosion at one target 114 Ifrit (full) 115 Throw 116 Ether 117 some item 118 some item 119 some item 11A Remedy 11B some item 11C Aeraga wind attack on multiple targets 11D (Forcefield) purple glow around caster 11E Virus Fly swarm of flies attacks target! 11F Dark Matter lightning attack 120 ??? fire attack 121 some item 122 Tent 123 Raining Swords attack all using swords and blue fire 124 Ore 125 Poly one target 126 Boomerang blades attack multiple targets 127 (Shimmer) bright light flash 128 Dragon Breath multiple targets 129 Pumpkin Head one target 12A Jet Fire blue flame attack (one target) 12B Photon lasers attack one target (like FF8's Homing Laser) 12C (Magnitude 8) big earthquake (multiple targets) 12D (Sinkhole) one target sinks into the ground 12E [blackout] 12F (Page Turn) ) papers fly at multiple targets 130 Propeller Wind blue cyclones make 1 or multiple targets spin 131 (Accumulate) caster gathers energy 132 (Green Smoke) green smoke, one target 133 (Red Smoke) red smoke, one target 134 Doomsday multiple targets 135 Curse (Ozma) green and black smoke engulfs multiple targets 136 Absorb caster absorbs energy from one target 137 Flame caster spits fire at multiple targets 138 Lucky Seven one target 139\ . \ . > miscellaneous weapon attacks . / 17A/ 17B [lockup] 17C [lockup] 17D Ark (full) multiple targets 17E Chestnut nut fired from caster to one target 17F [lockup] bubbles and lockup 180 Ultima / lockup Ultima then lockup 181 Countdown one target 182 Countdown multiple targets 183 Cherry Blossom multiple targets 184 Spear one target 185 Spear one target 186 Earth Shake multiple targets 187 Fire Blades flaming leaves fired at mult targets 188 LV3 Def-less multiple targets 189 Jump jump in air 18A (Ultraviolet) purple energy; will make caster invisible 18B (Rippler) whirlpool on caster, one target 18C Rise waves force one target up into the air 18D Climhazzard multiple targets 18E Charge! multiple targets 18F What's That!? one target 190 (Smoke) smoke 191 Lancer one target 192 (Smoke) smoke on caster 193 (Atomic Ray) red energy surrounds target 194 Shockwave caster gathers light & discharges it 195 Bahamut (half) all targets 196 Leviathan (half) all targets 197 Shiva (half) all targets 198 Tidal Waves big waves attack multiple targets 199 Darkside one target 19A Minus Strike one target 19B Iai Strike one target 19C Thunder Slash one target 19D Shock one target 19E Stock Break one target 19F Ramuh (half) mult targets 1A0 Flaming Sword big explosion on target 1A1 Climhazzard mult targets 1A2 [lockup] 1A3 (Yellow Shot) yellow stuff 1A4 [lockup] 1A5 Revive all targets 1A6 Water Gun (x3) three shots of water at one target 1A7 (Electricity) electricity runs from caster to target 1A8 Odin (full) all targets 1A9 Virus Powder purple & blue dots on one target 1AA [lockup] 1AB Waterga huge water bubble on multiple targets 1AC [no graphics] 1AD (Green Sparkle) green stuff 1AE [lockup] 1AF [lockup] 1B0 [lockup] Ozma's dying effect, lockup 1B1 (Dust Storm) smoke and dust 1B2 (Lapis Laser) blue energy attack (multiple targets) 1B3 [blackout] Necron's dying effect, blackout 1B4 Flare Star AWESOME fire attack on all targets 1B5 Dummy says "Dummy". very weird (one target) 1B6 [lockup] 1B7 [lockup] 1B8 [no name] screws with camera 1B9 [no name] same 1BA [lockup] 1BB [lockup] 1BC [lockup] 1BD [lockup] 1BE Atomos (half) 1BF Ark (half) 1C0\ . \ . > [lockup] . / 1E8/ 1E9 [no name] effect when Trance ends 1EA Dragon's Crest one target 1EB Six Dragons multiple targets 1EC Ultima / blackout does Ultima but then blacks out 1ED Carbuncle multiple targets 1EE Carbuncle multiple targets 1EF Carbuncle multiple targets 1F0 [no name] when Necron lifts you up to face him... 1F1 [no name] teleport out of battle 1F2 Grand Cross planets getting demolished, mult targets 1F3 Neutron Ring bright star-like attack, mult targets 1F4 Vanish one target 1F5 Night everyone 1F6 Aera wind attack, one target 1F7 Blue Shockwave purple energy attack, one target 1F8 Carbuncle (half) multiple targets 1F9 Carbuncle (half) multiple targets 1FA Carbuncle (half) multiple targets 1FB Carbuncle (half) multiple targets 1FC Fenrir (half) multiple targets 1FD Fenrir (half) multiple targets
1FE  Phoenix (half)         multiple targets
1FF  [lockup]


+-------------------+
| PART 5:  EXAMPLES |
+-------------------+

Alright, I understand that making your own codes can get fairly 
complicated and time-consuming, so here are several pre-made enemy
spell codes for all you lazy people out there. :)

Note that having too many codes on at once can cause the game to
refuse to load from the memory card.  Turn off the effects if this
happens, load your game, and turn them back on.  You'll also have
to do this whenever you save.  You should be able to get away with
two or three spell replacements without adverse effects, however.

  __________________          
 / Flare Star       \___________________________________________
|  ELEM: Fire          PWR: 76     STATUS: add Heat             |
|  TARG: all enemies    MP: 32       RATE: 32                   |
|  MODIFIED SPELL: Fire                                         |
 ---------------------------------------------------------------

D01044B8 0100      (Store name 'Flare Star')
800F96F0 3815
D01044B8 0100
800F96F2 4130
D01044B8 0100
800F96F4 0F34
D01044B8 0100
800F96F6 4322
D01044B8 0100
800F96F8 4130
D01044B8 0100
800F96FA FFFF

D010A06A 00A1      ('Fire' text offsets)
8010A06A 0654

D01044B8 0100      (Spell parameters)
3010A05C 0008
D01044B8 0100
3010A061 004C
D01044B8 0100
3010A065 001D
D01044B8 0100
3010A066 0020
D01044B8 0100
3010A063 0020

D00FEC42 0046      (Graphics)
800FEC42 01B4
D00FEC42 0000
800FEC42 01B4

  __________________          
 / Maelstrom        \___________________________________________
|  ELEM: none           EFFECT: HP lowered to 5                 |
|  TARG: one enemy      MP: 18       RATE: 80                   |
|  MODIFIED SPELL: Demi                                         |
 ---------------------------------------------------------------

D01044B8 0100
800F9700 301C
D01044B8 0100
800F9702 3B34
D01044B8 0100
800F9704 4342
D01044B8 0100
800F9706 3E41
D01044B8 0100
800F9708 FF3C
D01044B8 0100
8010A16A 0664

D00FEC42 0063
800FEC42 00AB
D00FEC42 0062
800FEC42 00AB
D01044B8 0100
3010A15C 0000
D01044B8 0100
8010A160 051B 
D01044B8 0100
3010A166 0013
D01044B8 0100
3010A163 0050 

  __________________          
 / Grand Cross      \___________________________________________
|  ELEM: none           STATUS: a ton of bad ones               |
|  TARG: all enemies    MP: 30       RATE: 150                  |
|  MODIFIED SPELL: Confuse                                      |
 ---------------------------------------------------------------

D01044B8 0100
800F9720 4116
D01044B8 0100
800F9722 3D30
D01044B8 0100
800F9724 0F33
D01044B8 0100
800F9726 4112
D01044B8 0100
800F9728 423E
D01044B8 0100
800F972A FF42

D01044B8 0100
80109FEA 0684
D00FEC42 0061
800FEC42 01F2
D00FEC42 0060
800FEC42 01F2
D01044B8 0100
30109FDC 0008
D01044B8 0100
30109FE5 00FF 
D01044B8 0100
30109FE3 0096
D01044B8 0100
30109FE6 001E

  __________________
 / Blue Shockwave   \___________________________________________
|  ELEM: none           EFFECT:  HP goes to 1                   |
|  TARG: one enemy      MP:  8       RATE: 240                  |
|  MODIFIED SPELL: Matra Magic                                  |
 ---------------------------------------------------------------

D01044B8 0100
800F9730 3B11
D01044B8 0100
800F9732 3444
D01044B8 0100
800F9734 220F
D01044B8 0100
800F9736 3E37
D01044B8 0100
800F9738 3A32
D01044B8 0100
800F973A 3046
D01044B8 0100
800F973C 3445
D01044B8 0100
300F973E 00FF

D01044B8 0100
8010A42A 0694
D01044B8 0100
3010A423 00E0
D00FEC42 0058
800FEC42 01F7

  __________________
 / Freeze           \___________________________________________
|  ELEM: Ice            PWR: 14      STATUS: Freeze             |
|  TARG: one enemy      MP:  6       RATE: 50                   |
|  MODIFIED SPELL: Blizzard                                     |
 ---------------------------------------------------------------

D01044B8 0100
800F9760 4115
D01044B8 0100
800F9762 3434
D01044B8 0100
800F9764 3449
D01044B8 0100
300F9765 00FF
D01044B8 0100
8010A0AA 06C4

D01044B8 0100
3010A09C 0000
D01044B8 0100
3010A0A3 0032 
D01044B8 0100
3010A0A5 001C
D00FEC42 0006
800FEC42 0096
D00FEC42 003E
800FEC42 0096

  __________________
 / Neutron Ring     \___________________________________________
|  ELEM: none           PWR: 114     STATUS: none               |
|  TARG: all enemies    MP:  46      RATE: n/a                  |
|  MODIFIED SPELL: Jewel                                        |
 ---------------------------------------------------------------

D01044B8 0100
800F9740 341D
D01044B8 0100
800F9742 4344
D01044B8 0100
800F9744 3E41
D01044B8 0100
800F9746 0F3D
D01044B8 0100
D01044B8 0100
800F9748 3821
D01044B8 0100
800F974A 363D
D01044B8 0100
300F974C 00FF

D01044B8 0100
3010A03C 0008
D01044B8 0100
8010A03A 06A4
D01044B8 0100
8010A030 7209
D01044B8 0100
3010A036 002E
D00FEC42 00C9
800FEC42 01F3

  __________________
 / Grand Cure       \___________________________________________
|  Heals HP/MP          PWR: 255     STATUS: Protect + Shell    |
|  TARG: 1/all ally/en. MP:  68      RATE: 255                  |
|  MODIFIED SPELL: Cure                                         |
 ---------------------------------------------------------------

D01044B8 0100
800F9770 4116
D01044B8 0100
800F9772 3D30
D01044B8 0100
800F9774 0F33
D01044B8 0100
800F9776 4412
D01044B8 0100
800F9778 3441
D01044B8 0100
300F9779 00FF
D01044B8 0100
80109EEA 06D4

D01044B8 0100
80109EE0 FF25
D01044B8 0100
30109EDC 0033
D01044B8 0100
30109EE5 001A
D01044B8 0100
30109EE3 00FF
D01044B8 0100
30109EE6 0044
D00FEC42 0008
800FEC42 0001
D00FEC42 0009
800FEC42 002D

  __________________
 / Ultima           \___________________________________________
|  ELEM: none           EFFECT: deals 9900 damage to all enemies|
|  TARG: all enemies    MP:  80      RATE: 255                  |
|  MODIFIED SPELL: Meteor                                       |
 ---------------------------------------------------------------

Note: the code below will use the graphics from Garland's
      'Shockwave' attack to create Ultima because the real
      Ultima graphics will glitch the game when used.

D01044B8 0100
800F9780 3B24
D01044B8 0100
800F9782 3843
D01044B8 0100
800F9784 303C
D01044B8 0100
300F9786 00FF
D01044B8 0100
8010A1BA 06E4

D01044B8 0100
8010A1B0 631A
D01044B8 0100
3010A1B6 0050
D01044B8 0100
3010A1B3 00FF
D00FEC42 0086
800FEC42 0194   -> 1EC for real one, but this will crash game
D00FEC42 008F
800FEC42 0194   -> 1EC for real one, but this will crash game

  __________________
 / Waterga          \___________________________________________
|  ELEM: Water          PWR: 98      STATUS: none               |
|  TARG: all enemies    MP:  34      RATE: n/a                  |
|  MODIFIED SPELL: Water                                        |
 ---------------------------------------------------------------

D01044B8 0100       
800F9790 3026
D01044B8 0100
800F9792 3443
D01044B8 0100
800F9794 3641
D01044B8 0100
800F9796 FF30
D01044B8 0100
8010A1AA 06F4

D01044B8 0100
3010A19C 0008 
D01044B8 0100
3010A1A1 0062 
D01044B8 0100
3010A1A6 0022 
D00FEC42 0016 
800FEC42 01AB
D00FEC42 005F
800FEC42 01AB

  __________________
 / Aeraga           \___________________________________________
|  ELEM: Wind           PWR: 100     STATUS: none               |
|  TARG: all enemies    MP:  35      RATE: n/a                  |
|  MODIFIED SPELL: Thundara                                     |
 ---------------------------------------------------------------

D01044B8 0100       
800F97A0 3410
D01044B8 0100
800F97A2 3041
D01044B8 0100
800F97A4 3036
D01044B8 0100
800F97A6 FFFF
D01044B8 0100
8010A1AA 0704

D01044B8 0100
3010A0EC 0008 
D01044B8 0100
3010A0F1 0064
D01044B8 0100
3010A0F2 0020
D01044B8 0100
3010A0F6 0023 
D00FEC42 0005 
800FEC42 011C
D00FEC42 0049
800FEC42 011C

  __________________
 / Curse            \___________________________________________
|  ELEM: none           PWR: 85      STATUS: lots of bad ones   |
|  TARG: all enemies    MP:  29      RATE: 144                  |
|  MODIFIED SPELL: Bad Breath                                   |
 ---------------------------------------------------------------
 
D01044B8 0100
800F97B0 4412
D01044B8 0100
800F97B2 4241
D01044B8 0100
800F97B4 FF34
D01044B8 0100
8010A43A 0714

D01044B8 0100
3010A42C 0008
D01044B8 0100
8010A430 5509
D01044B8 0100
3010A433 0090
D01044B8 0100
3010A436 001D
D00FEC42 002C
800FEC42 0135  

  __________________
 / Meteorite        \___________________________________________
|  ELEM: none           PWR: 99      STATUS: none               |
|  TARG: all enemies    MP:  33      RATE: n/a                  |
|  MODIFIED SPELL: Comet                                        |
 ---------------------------------------------------------------

D01044B8 0100
800F97C0 341C
D01044B8 0100
800F97C2 3443
D01044B8 0100
800F97C4 413E
D01044B8 0100
800F97C6 4338
D01044B8 0100
800F97C8 FF34
D01044B8 0100
8010A17A 0724

D01044B8 0100
3010A16C 0008
D01044B8 0100
8010A170 6309
D01044B8 0100
3010A176 0021
D00FEC42 0038
800FEC42 00CC

  __________________
 / Raining Swords   \___________________________________________
|  ELEM: none           EFFECT: damage = (75% of MaxHP)         |
|  TARG: all enemies    MP:  26      RATE: 200                  |
|  MODIFIED SPELL: Minus Strike                                 |
 ---------------------------------------------------------------

D01044B8 0100
800F97D0 3021
D01044B8 0100
800F97D2 3D38
D01044B8 0100
800F97D4 3D38
D01044B8 0100
800F97D6 0F36
D01044B8 0100
800F97D8 4622
D01044B8 0100
800F97DA 413E
D01044B8 0100
800F97DC 4233
D01044B8 0100
300F97DE 00FF
D01044B8 0100
8010A7BA 0734

D01044B8 0100
3010A7AC 0008
D01044B8 0100
8010A7B0 4B11
D01044B8 0100
3010A7B3 00A6
D01044B8 0100
3010A7B6 001A
D00FEC42 00BD
800FEC42 0123
D00FEC42 019A
800FEC42 0123

  __________________
 / Snowstorm        \___________________________________________
|  ELEM: Ice            PWR: 77      STATUS: add Freeze         |
|  TARG: 1/all enemies  MP:  33      RATE: 32                   |
|  MODIFIED SPELL: Blizzara                                     |
 ---------------------------------------------------------------

D01044B8 0100
800F97E0 3D22
D01044B8 0100
800F97E2 463E
D01044B8 0100
800F97E4 4342
D01044B8 0100
800F97E6 413E
D01044B8 0100
800F97E8 FF3C
D01044B8 0100
8010A0BA 0744

D01044B8 0100
3010A0B1 004D
D01044B8 0100
3010A0B3 0020
D01044B8 0100
3010A0B5 001C
D01044B8 0100
3010A0B6 0021
D00FEC42 004D
800FEC42 00AA
D00FEC42 0004
800FEC42 0017

  __________________
 / Fallen One       \___________________________________________
|  ELEM: none           EFFECT: HP goes to 1                    |
|  TARG: all enemies    MP:  40      RATE: 255                  |
|  MODIFIED SPELL: Aqua Breath                                  |
 ---------------------------------------------------------------

D01044B8 0100
800F97F0 3015
D01044B8 0100
800F97F2 3B3B
D01044B8 0100
800F97F4 3D34
D01044B8 0100
800F97F6 1E0F
D01044B8 0100
800F97F8 343D
D01044B8 0100
800F97FA FFFF
D01044B8 0100
8010A40A 0754

D01044B8 0100
8010A400 011B
D01044B8 0100
8010A402 FF00
D01044B8 0100
3010A406 0028
D00FEC42 001C
800FEC42 01A5

  __________________
 / Dark Flare       \___________________________________________
|  ELEM: Shadow         PWR: 113     STATUS: none               |
|  TARG: all enemies    MP:  56      RATE: n/a                  |
|  MODIFIED SPELL: LV5 Death                                    |
 ---------------------------------------------------------------

note: this will use the graphics for the 'half' summon of Atomos,
      which seem quite appropriate for a Shadow-type attack spell

D01044B8 0100
800F9800 3013
D01044B8 0100
800F9802 3A41
D01044B8 0100
800F9804 150F
D01044B8 0100
800F9806 303B
D01044B8 0100
800F9808 3441
D01044B8 0100
300F980A 00FF
D01044B8 0100
8010A3BA 0764

D01044B8 0100
8010A3B0 7109
D01044B8 0100
8010A3B2 0080
D01044B8 0100
3010A3B6 0038
D00FEC42 009A
800FEC42 01BE

  __________________
 / Judgement Day    \___________________________________________
|  ELEM: Holy           PWR: 166     STATUS: none               |
|  TARG: all enemies    MP:  66      RATE: n/a                  |
|  MODIFIED SPELL: Blind                                        |
 ---------------------------------------------------------------

This, using the graphics from LV4 Holy, will give Dagger a
kick-ass attack spell. :)

D01044B8 0100
800F9810 4419
D01044B8 0100
800F9812 3633
D01044B8 0100
800F9814 3C34
D01044B8 0100
800F9816 3D34
D01044B8 0100
800F9818 0F13
D01044B8 0100
800F981A 3012
D01044B8 0100
800F981C FF48

D01044B8 0100
30109FFC 0008
D01044B8 0100
8010A000 A009
D01044B8 0100
8010A002 0040
D01044B8 0100
3010A006 0042
D00FEC42 009E
800FEC42 0081
D00FEC42 009D
800FEC42 0081

------------------------------------------------------------------
end of file                                              rev 1.100
ff9enspl.txt                                    01-01-12 18:01 est