SotC Modding-Hacking Tutorial

Download as rtf, pdf, or txt
Download as rtf, pdf, or txt
You are on page 1of 10

Modding/Hacking Shadow of the Colossus

You will need the PCSX2 emulator, the BIOS to make it run and a disc or ISO of the game.
The BIOS are illegal to download so dont ask me for them (you can find them if you search hard
enough). You will also need a memory editor.
I suggest you use Tsearch and MHS (by L.Spiro). They are both free to download.
MHS is much more versatile than Tsearch and it locks codes better. I use MHS for codes such as
gravity and colour and Tsearch for most everything else.
I search for codes (addresses) using MHS then save the list of codes I found - then I usually
copy and paste the addresses into Tsearch as a backup.
Note: I use Windows XP and if I restart my computer the codes I saved always work with the save
states I've made in the emulator.
But if I use Windows 7, the codes change (pointers) so I would have to find them each time I
opened a save state (which would take too much time), so I stuck with XP.
(Update: If you use the latest version of the PCSX2 emulator your codes will not change as it
saves the 'save states' to the same block of memory for each game. So in effect, the codes you
find should never change (as they do for earlier versions of the emulator).
So there's usually three things a code does - a positive number makes it bigger or faster etc. a
negative number makes it smaller or slower and zero will turn it off (although this isn't always the
case).

Find Wander's Jump Codes (Position Coordinates x, y, z)


Stand on the main floor in the SoW (between the statues) and search for:
9.000464439 (Preview version)
9.002894402 (NTSC/PAL versions)
You'll get about 30 results. I do this in Tsearch
Now make Wander jump with the controller and see if any values in the results list change to a
zero. If they do add them to the right window and lock them to 12. There should only be a couple
like this. When you lock the right code to 12, Wander will jump up and down higher than usual (as
he was set at 9, now he's locked at 12).
You also might see the camera pan up above Wander when you are locking codes near it.
If it doesn't work, move Wander somewhere else on the floor and try again.
To work out your e/w n/s coordinates add 4 for n/s and subtract 4 for e/w. So for example my
jump code is 4FF13E4.
So my e/w = 4FF13E0 and my n/s = 4FF13E8 Easy!
See my camera hacks tutorial video here (http://www.youtube.com/watch?v=cpbR4YN_vY) it explains how to find Wander's position co-ordinates.

Find Agro's Jump Codes (Position Coordinates x, y, z)


Get on Agro and use the same method as above. When you see Agro start jumping into the air
you have found it.
Add 4 and subtract 4 to the jump value (as above) to find the e/w and n/s coordinates.

Find Wander's Gravity Codes


Radical Dreamer was the first to find these codes and he showed Pikol how to do it. But
WWWArea and I found them later as well.
Go to the calculator in Tsearch, click on the 'H' (for hex) and punch in your code (address) for
Wander's up/down position coordinate (it will be 7 digits).
For example mine is:
4CD3104 - Wander's u/d (z coordinate)
Now subtract C0 from that value
The result will be Wander's Gravity up/down code (address).
Subtract 4 from this for his East/West Gravity code and add 4 to this for his North/South Gravity
code
So my Gravity codes for Wander are:
4CD3044 - Wander Gravity ud
4CD3040 - Wander Gravity ew
4CD3048 - Wander Gravity ns
Lock ot to 100 or something (best in MHS) and make Wander jump. You'll fly up into the air and
hang there, wobbling up and down.
To stop the wobbling you'll need his Stable Gravity code (see below).
Note: If you lock the e/w or n/s Gravity codes to 0 (zero) Wander will freeze. To unfreeze him you
need to take note of what the value was before you set it to 0 and change it back, this will
unfreeze him. This is useful when you want to look at something with a rock steady camera.

Stable Gravity Code


I was the first to find this code, although Radical Dreamer may have found it, but never told
anyone.
Simply add 2 to the 2nd last value of your Gravity codes
So for example my Gravity up/down code is:

4CD3044 - Wander Gravity ud


So my Stable Gravity code is:
4CD3064 - Stable Gravity code
Lock it to 0 (zero). When you use the Gravity code you will see Wander has stopped wobbling in
the air and is stable.
Note: When this is locked to zero on the ground Wander can't jump up anymore as the code
keeps him down.
If you set it to a positve value (like 6 for instance) Wander will gracefully float up into the air until
you set it to zero or unlock it.
Best used in MHS.

Modify Health & Grip Values


I posted this on the codemasters forum a while ago (when I discovered how to do it). As far as I
know no one else figured this out - the other methods require you to start a new game to mod the
health and grip, but I can do it at any point in the game.
What you do is get a ruler and measure the length of your health bar on the screen. From this you
can work out what value to search for.
The ratios are as follows: 3.1 cm = 100 (value), 6.2 cm = 200, 9.4cm = 300, 12.4cm = 400 etc. To
fill the screen with the health bar is 570.
So whatever the length is, use the above ratios to work out the value.
For example, my health bar was 13.1cm long which worked out to be approx. 422. So search for
a range from say 420 to 430, then add only the whole number values from the left list into the
right side of the memory editor (where you can modify the values).
Then change them all to 570 and lock each one until you see the health bar grow to fill the
screen. It will be an address that ends with 'C'.
So for me the address was 46CABCC. To work out the grip modifier just add 4 to the address - so
for me the grip limit modifier is 46CABD0.
If you make the grip limit 1000 - it will grow to a size where it becomes opaque.
You can then find the value of the actual health and grip strength - as these two addresses only
make the health and grip bars grow - so you still loose health if you injure yourself.
So if you have made your grip strength 570 (to fill the screen) - search for 570 and you will get a
small list of addresses - one of these will control the health value. Just lock them one by one and
make Wander jump high to hurt himself (or jump off a high ledge) - you will see the health bar
instantly grow back to full size making him invincible.
Actually, he's not invincible... he will still die if you jump off the SoW etc. even when it's set at
10,000.
There is a code that makes Wander truely 'invincible' but I've never found it.

Same goes with the grip - just search for 1000 and go through the same process.
-------------------------------------------------------------------------------------------------------------------Alternatively, start a new game and search for 100 (float type) then change the addresses to 10
(or something similar) and when Wander starts panting for breath you will have found his health
code. Follow the above instructions to find his grip codes etc.

Wander's Camera Code


Here is a cool code to use.
Just search for '-4.500000017e-008' - you will get about 10-15 results only. Set them to 5, then
lock each one until you see Wander's camera move forward (as this is the north/south direction
code).
Then just copy and paste it with a 4 at the end (for up/down) and a 0 (for east/west).
You now can control Wander's camera. it's good for looking up at ledges etc. without having to
jump or climb up there. You can play around with it to get some interesting views of Wander as
you play the game. Just set them all to zero in the memory editor, then you can start changing the
values to whatever you like.

Pan In on Wander Code


This is good for looking at Wander up close. When you add to 45 it pans away from Wander, but
after a while the lands start to distort around him, if you subtract from 45 it will pan in on Wander.
Search for 45 (you'll only get a few hundred results).
Modify the results to 16 and start locking codes. When you see the camera move in closer to
Wander that the one.
WARNING: Be sure to save the game 'before' you do this. If you save the game after locking a
whole bunch of '45' codes your game will glitch like crazy.
Go to Celosia's area and either shoot a torch with explosive arrows or activate Celosia and get
the stick.
Light it and quickly search for 45.
With the torch lit lock the codes to 3. You will see the torch go out after 3 seconds, so you know
that's the code for the fire duration. I then set it to 9,000 which is about the number of seconds in
a day I think. But if you put it down outside of Celosia's area it will still disappear.

Pan Out on Wander Code


Search for 4.589999676 (float) and change them to 12 or something to see if the camera pans
out from Wander. If you can't find it search for a range above and below this value (4-7 for
example). Note this only works when Wander is standing alone, if he's on Agro it won't work.

Pan out on Agro Code


Search for 6.799999714 (float) and change them to 22 or something to see if the camera pans
out from Agro. If you can't find it search for a range above and below this value (5-7 for example).
Note this only works when Wander is riding Agro and will only work when Agro is stationary.

Parachute Hack
Stand anywhere where you have a lot of space around you (pretty easy in this game ; )
Search for 2.
You will get thousands of results but you only need to look at the addresses starting with the
same number (the first number) as Wander's position co-ordinates.
I usually search from 45xxxxx to 4Fxxxxx as before and after this section are codes that control
graphics and stuff which crashes the emulator if you lock too many at once.
Once you have the results for '2' select as many addresses as you want and add them to the right
window (I'm sure you know this but I'm just being thorough).
Modify the addresses to 33 or something - not too high - it's just to make Wander fly faster as at
the moment it's set at only 2. Then start locking groups of addresses and make Wander jump and
open his parachute with the controller.
When you lock the parachute hack code to 33 Wander will fly forward when he open his chute. So
make note this address (I usually copy and paste the address into Notepad or WordPad to keep a
record of it as a backup).
If you change the Parachute hack to a negative number, Wander will fly backwards when you
open you chute!

Super Jump Code


This code is nearby the Parachute hack (see below), so you will probably find this one as well
when you are searching for the Parachute hack.
Search for 2. Modify the results to 33 then lock a group of codes (I usually lock about 10 pages of
code at a time... if you lock too many you can crash the emulator). Now make Wander run and
then jump. Keep searching until you see him jump forward really fast, you'll know it when it
happens.

Super Jump Glide Code


This code is somewhere after the Super jump code. When you lock it to 33 you will see Wander
jump forward at the end of his jump. So as he's coming down from his jump he will glide forward.
This code is great as when you are locked in the sky with the stable gravity code you can fly
around without using the parachute by just pressing forward with the left controller stick.
For instance my codes are:
4966964 - Parachute hack

4966950 - Super Jump glide


496693C - Super Jump

Moon Jump Code


Search for 0.5 and set the results to -1.
When you lock the right code then make Wander jump you will see him fly into the air. If you set it
to a positive value he jumps repeatedly on the spot - like he's stumbling.
It's so awesome playing the game this way, you just jump as high as you like then use the
parachute hack to glide everywhere. Already I've found some amazing high ledges with bushes
and no invisible walls on the mountains in Avion's area (the ones as you enter the arena).

Wander's Scale Codes


Search for 1.
Modify the results to 4 or 6 and start locking codes. You will see Wander grow in size when you
lock the right ones.
There are three scale codes, much like his position coordinates, but a set for his body and
another set for his head (as they are separate models).
So for example my Wander's scale codes are:
4CD30C4 - Scale body u/d
4CD30C0 - Scale body e/w
4CD30C8 - Scale body n/s
49E4964 - Scale head u/d
49E4960 - Scale head e/w
49E4968 - Scale head n/s
Note: you will have to find his head codes separately, and for some reason his head code will
change as you ride around to different areas, but his body codes stay intact.

Rotate Codes
Just add 4 to the second last number of your scale codes.
So for example Wander's head scale codes are:
49E4964 - Scale head u/d
49E4960 - Scale head e/w
49E4968 - Scale head n/s
So the Rotate codes for his head will be:

49E49A4 - Head rotate ud


49E49A0 - Head rotate ew
49E49A8 - Head rotate ns
This is hexidecimal code, so it goes: 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - A - B - C - D - E - F.
If you get lost just use the Calculator in Tsearch. You'll see it's set the Decimal, so click the 'H' at
the bottom right of the keypad to make it Hex. Then you can add one address to the other or visa
versa.

Mist Code
Just search for 1 in MHS (best to be somewhere away from the SoW). You'll get thousands of
results, but just look for the codes that start with Wander's jump code. (For example my jump
code is 4FF13E4 and my mist code is 46FFB6C).
Modify the results to -2 and you will see everything get misty when you lock it.
If you modify the results to 6 everything will get darker and have more contrast.
You will find other codes that are affected by 1. Like colour, speed and scale codes etc. But only
lock values that are 1's, don't lock values that are not whole numbers.
WARNING: Save the game state before you search in MHS as you will definitely crash the
emulator locking some of these codes, then you can just reload the state if you have a crash and
continue.

The 'No Land Hack' Code


I actually found this code first, but it was WWWArea that worked out how to exploit it. We called it
this as it makes the lands invisble around Wander and when you set it back to normal the lands
reappear.
OK, search for 100.
You'll get quite a lot of results, but I only ever look in the block of codes that start with Wander's
jump code - so for me the jump code is 4FF13E4, so I only look in the codes that start with 4.
Anyway, add them all to the list and modify them to 200. Go through and lock groups of them until
you see the land around Wander disappear... you would have seen this is some of my videos.
When you've found the code that turns off the land - that's the 'no land hack' as we call it.

Lock Lands with the No Land Hack Code


Set the No Land Hack to 1. You will see Wander get lighter, like his contrast has been turned up.
The model you occupy is now locked, so when you move far away from it, everything else will
melt away as we've locked this one model and all the others are turned off. Everything except the
bridge, 2D Ico texture mountains (behind the Entrance temple) and the Shrine of Worship will
disappear while it's set to 1.

So when you are at the dam for instance, fly close enough so you can see the brick structures
(you have to be able to see them for the model to be loaded).
Now set the no land hack to 1.
You will be able to fly up to the brick structures now as they are locked and it turns off that black
screen crash so you can explore those areas that used to crash the game.
Set it back to 100 to bring the lands back.

Music Off/On Code


Start a fight with a colossus and get to a safe area (like No. 1 as you can stand close by but not
get attacked by Valus) so you can hear the music playing.
Search for 1.
You'll get thousands of results, but it's always at the top of the codes that start with Wander's
position coordinates. For example my Up/Down code for Wander is:
4CD3104 and my music code is 400AE80. Set it to 0 (zero) and you'll hear the music stop when
you lock it. Unlock it to turn the music back on.
Note: You will see the value is rapidly changing when locked and you will still hear the music
faintly, so this code doesn't turn the music off completely but it's good enough to listen to the
sound effects by themselves.
Alternatively, if you know your colour code you can find the music code (and vice versa). Just add
97DC to the colour code address and you will get the music code.

Border (Black Bars) off/on Code


Once you have found the 'no land hack' code just take away 460 from this address (-460) and the
result will be the address that turns the border on and off (like you see in the cut scenes).

Colour Code
Just search for 1 in MHS (best to be somewhere away from the SoW). You'll get thousands of
results, but just look for the codes that start with Wander's jump code. (For example my jump
code is 4FF13E4 and my colour code is 431F984).
You will see the sky darken when it is locked (as it's set to zero). Note: Even when locked in MHS
the sky still flickers as it doesn't lock completely, so even though the sky is dark it will try to flash
back to normal. To change it to another colour just change the value from zero to a higher
number. You can also use the mist code here in conjunction with the colour code to get eerie
effects and make things even darker.
Alternatively, if you know your music code you can find the colour code (and vice versa). Just
subtract 97DC to the music code address and you will get the colour code.

Colossi Codes

To find the position coordinates of a colossus, just start the fight then run up to where the
colossus is standing and take note of Wander's up/down (or z) value.
Then search for a range above and below that value. So if Wander's z value is 57.00987643 for
example set your range to 56 to 58. Then modify the results to 99 or something (Note: It must be
much larger than the original value to work properly).
When you lock the right value you will see the colossus fly up into the air and come back down
again, over and over.
Use the same method to work out it's e/w and n/s coordinates (as you did with Wander).
To start with I would try and mod Malus as he's pretty easy (this was the first colossus WWWArea
modded, and shortly thereafter we both found all the other colossi codes).

Malus Codes (Position Co-ordinates)


Note: You can only move Malus once. Once he has moved somewhere you can't move him again
unless you reload your save state and start again.
Stand at the start of the fight with Malus on the ramp sloping up and search for either of these
three codes (addresses):
Up/Down: -9.39009285
East/West: -49.99993896 (this is the best one to search for as you should get only a few results)
North/South: 57.86132813
This will work in the Preview and NTSC/PAL versions.
So for his east/west codes - modify the results to 0 (zero) then lock the codes, if you see him
move then one of the codes is it. You just have to narrow your search until you find the right one.
So now you can mess with Malus! Move him around while Wander is on top if you like... I had a
lot of fun with this.

Control the Colossi (by shifting the camera to them)


To shift the camera to a colossus or other object you need to know Wander's position coordinates - his up/down, east/west, north/south values - see above.
Copy his up/down address and in MHS open the hex editor and 'goto' that address. You will see a
flashing 00/02 byte 22 lines up from that address - it will be eleven bytes in from the left side of
the column - you can't miss it as it has a blue 00 byte followed by a blue 02 byte which changes
for 00 to 02 regularly - this is the object camera code (or one of them anyway).
Add this address to your list as a byte and when you change it to a higher number (I always use
11) you will see the camera shift from Wander to Agro. Now you are Agro the horse and can play
the game as the horse! Note: you will see a ghostly image of Wander floating nearby, it's like part
of Wander is still with you - to get rid of it change Wander's object camera code to zero.

I find it much easier to use Tsearch for this as you can just change the value without having to
lock it.
I usually find both Wander's and Agro's object camera codes as you can shift from one to the
other. To shift back from Agro to Wander you must have Wander's camera code at zero, then
change Agro's code to 11 and you will be Wander again, but now Agro has disappeared (only her
reins are visible) so change Agro's code back to zero and she will reappear.
The problem with using this code with a colossus is that the camera will go to another object first,
like at the first colossus it goes from Wander to Agro and then to a tree! You can actually control
the tree by pressing square or circle - the tree shakes as if the colossus is walking by. You can
also knock the tree over with the D-pad controls but then you are stuck as you can't shift the
camera back to Wander from the tree - I use another object camera code to do this (which is too
hard to explain here).
But for most colossi it will go straight to the colossus after Agro, so you can play as a colossus which is pretty awesome ; )

By Nomad 2011(updated 2013).

You might also like