King Edgar 0
-=- Materia Editing Tutorial, Version 0.5 -=-
-=- By King Edgar 0 -=-

Ok, Welcome! You are about to learn how to edit materia in FF7! All you need is:
A Playstation
A saved game, with an ultima materia (If you don't have an ultima materia
then just use GS to get one...)
A gameshark pro (From now on it will be reffered to as a GS)
A brain

Note: For the purposes of this tutorial I will believe you to know nothing about GS hacking. Although most people reading this will already know a lot of what I explane about how things work. Some might not. So I am making it more descriptive for their sake.

Reasons you might want to do this:

To cheat
To freak out a friend (Oh my gosh! How did you get your restore materia to have
Ultima and Shield on it! Is it some new code!?)
To pass time...

Section 1: The obvious
Section 2: Changing AP required
Section 3: Playing with spells
Section 4: Advanced Edtiting
Section 5: What comes next?
Section 6: And then...?

-=- Section 1: The obvious -=-

Now, Start up FF7 and load your game.
Get into your materia screen, And highlight the ultima materia. It is best for
the purposes of this tutorial if the materia has not been used (has no AP on it..).

-=- Section 2: Changing AP required -=-
Now, Hit your GS button.
Go into the memory editor.
Hit Select.
Choose "Goto address"
put in: 80073670 and hit circle.
Now, Your screen should look something like this:

80073670 32 00 E8 03 FF FF FF FF
80073678 02 00 00 00 0F 19 FF 34
80073680 FF FF FF

Ok, there will be more on the screen..
But those are the only parts that have to do with your ultima materia.
Now, Try this, change the 32 to a 31.
Go back into the game and you will see that the amount of
AP you need to get to LVL 2 will be lower.
Go back to the memory editor and change it back to 01.
Now you only need 100 AP to get to the next level! Pretty easy huh?
Go into the Memory editor and change it back to 32

-=- Section 3: Playing with spells -=-

Ok, Now, Time to play with spells :)
Your Screen should look like this still:

80073670 32 00 E8 03 FF FF FF FF
80073678 02 00 00 00 0F 19 FF 34
80073680 FF FF FF

Now, Goto the 34. And change it to 01.
Check the game. Your materia now gives you Cure2.
Change it to 00, It now gives you Cure.
You might want to take this time to play around with the
digits and see what spells they are linked to.
Change it to FF... No spell :(
Change it back to 34 for now.
Goto the first FF on the 80073680 row. And change it to a 00.
You now get both Ultima and Cure. Although you would need
to get the second lvl up in order to use Cure. Change next
two FFs to 00 and you get 1 ultima and 3 cures.
See how it works? FF = no spell. Change all three back to FF.

-=- Section 4: Advanced Editing -=-

Now... let's try something else. remember how annoying it was to have
to get all that AP just to be able to use the ultima spell? Well, let's fix that.

Go to the E8. And change it to FF.
Change the 03 next to it to FF also.

Go back to the game. Your materia should now only have 2 stars instead of 3...
getting closer!
Now, Change the both the 32 and the 00 next to it into FFs.
Check the game again. It is now a 1 star materia... but we have run into some
problems havn't we? You still need to get a lvl up on that materia to get ultima..
And there is only 1 lvl on the materia! So how do we fix it so that you get it right away?
Go back to the memory editor.
Change the 34 into a FF.
Change the FF next to it into a 34.
Now check the game. Tada! You just turned the ultima materia into a 1 star
materia that gives you ultima right away! Good job!

Go back into the memory editor. Your screen should look something like this now:

80073670 FF FF FF FF FF FF FF FF
80073678 02 00 00 00 0F 19 34 FF
80073680 FF FF FF

-=- Section 5: What comes next? -=-

Well, The one big problem with using the memory editor to edit these spells is that
it doesn't save the materia when you turn off the PSX. So once you do, You loose
your materia. Now. Once way around this is to make codes. It is easy but complicated
(That sounded stupid) to turn memory editor stuff into codes. Now. Say you just
want to save a change you made to the spells. The data on the spells is stored on the
80073678 line. At the end. Now. say you want to make it so that you get cure2 instead
of ultima (Why you would want to do that is beyond me...). Look at the line:

80073678 02 00 00 00 0F 19 FF 34

The part you want to change is at the end. So use this little Chart.

80073678 02 00 00 00 0F 19 FF 34
08 09 0A 0B 0C 0D 0E 0F

Now.. You want to change the 0F part. So the address you want to change is:

8007367F, but, Entering that as a code is a bad idea. becuase if a code starts with 80,
It should always end with a even number. Becuase 80 codes change 2 bytes actually.
Codes that start with 30 will only change the byte you specify.
So, For the code you put in 3007367F. And what about the last part? 00??, Where the ??
is the number for the spell you want. So:
3007367F 0001
will make the ultima materia give you Cure2 instead of ultima.
Now. Say you want to change the amount of AP it takes to get to lvl 2 on the materia.
well. Look at the screen.

80073670 32 00 E8 03 FF FF FF FF

The part you want to change is the 32 00. Becuase that controls the AP. now, Just so you
know how this works, 32 00 is actually 50. Why? Becuase it is in Hex. when you look at
numbers in the memory editor. You are actually looking at them backwards. Why? Don't ask
me... so 32 00 is actually 00 32, or 0032. or, 32. Since the zeros mean nothing...
And since that 32 is in Hex. it is really 50. A good way to do Hex to Decimal conversions
is with the Windows calculator, Or any scientific calculator if you have one. They are
great tools for hacking codes. So I have one with me at all times while hacking gameshark
codes. So. it says 50... but you need 5000 AP to get to lvl 2 on that materia? Why?
Becuase when FF7 reads the materia data. It uses every 1 as 100. So whatever number
you use will be X100 when in the game. That's why when we changed the AP to an 01 before,
It said 100 AP needed. So, If you want the lowest number possible for the AP needed,
100 is the lowest.

Now. Say you want 500 AP needed. Look at the screen. You want to change the 32 00 to 05 00.
If you do this you will have 500 AP needed to reach lvl 2. So, To do this with a code. you
use this chart:

80073670 32 00 E8 03 FF FF FF FF
00 01 02 03 04 05 06 07

Notice that the numbers are differant from the above chart, Why? Becuase the first chart
was for addresses ending in 8 in the mem editor. and this one is for addresses ending in 0.

Now, The byte you want to change is 00. So the address is 80073670. Now.. for this
code. it doesn't matter weither you use a 80 code or a 30 code. Becuase it is an even
address. The codes will basicly do the same thing here. But for the purpose of learning,
We will use an 80 code.

Now, The first half of the code will be 80073670, The second half? well, we want to change
the 3200 to 0500. So 0500? Nope. Remember. the memory editor is backwards. But codes arn't.
So, using the code 80073670 would actually make you need 8000 AP to get lvl 2... Not what
you wanted to do.
So you need to put 0005, That will change the memory to:

80073670 05 00 E8 03 FF FF FF FF

Now, If we where doing this with a 30 code. we would do the same thing.

I will not go into all the differances between 30 and 80 codes right now. if you want to
learn more there are some good GS faqs out there. Search around. You can start by visiting
some of the sites in my links section. Try the ones that are all about learning how to hack.

-=- Section 6: And then...? -=-

Well, That is all I really have right now. The next version of the tutorial will include
stuff like changing the attribute changing effects that materia have (As in.. if they make
your MP go down or your luck go up... ect ect). And probably some other stuff. I will
probably also include how to change materia names.

Thank you for reading this! I hope if helped you out. You should now know a lot more
about how the materia work internally. I hope you enjoyed it!

-=- The End -=-

This text was brought to you by GSHI.org, unless someone else gave it to you, in which case it was only written by someone at GSHI.org. Heheh.