PDA

View Full Version : [Tutorial] Newbie's Guide to Move Hacking (and some addresses)

Cy-Chan
July 18th, 2008, 10:17 AM
Hi. This isn't a terribly useful tutorial, as tools exist for move hacking anyway, but it's here for anyone who wants it.

There's also some pointers and addresses at the end that could be used for anything! Perhaps even repointing!

Attack effects breakdown:

The attack effects are broke down into 12 different hex bytes. Let's take pound, for example: 00 28 00 64 23 00 00 00 33 00 00 00.

The first byte, 00, is the effect. Pound's effect is obviously to simply attack. Below are some of the more common move effects.

00 - Hit
01 - Sleep
02 - Hit and Poison
03 - Hit and Heal
04 - Hit and Burn
05 - Hit and Freeze
06 - Hit and Paralyze
67 - Attack first

The second byte, 28, is the power. Convert 28 from Hex to Decimal using your trusty Windows Scientific Calculator, and hey-presto, you get 40 (the base power of Pound).

The third byte, 00, is the type. Pound is normal.

00 - Normal
01 - Fighting
02 - Flying
03 - Poison
04 - Ground
05 - Rock
06 - Bug
07 - Ghost
08 - Steel
09 - Unknown (???)
0A - Fire
0B - Water
0C - Grass
0D - Electric
0E - Psychic
0F - Ice
10 - Dragon
11 - Dark

The fourth byte, 64, is the accuracy of the move. 64 converted from hex to decimal is 100.

The fifth byte, 23, is the amount of PP the move has. 23 converted to decimal is 35 (Pound's PP).

The sixth byte, 00, is the effect accuracy. This is mainly used for moves that inflict status conditions, or well, have an effect. Sometimes it doesn't work as imagined.

For example, you'd think if you set the effect accuracy of Double-Edge to 50% (32), then you'd only recoil half of the time? No. Since it's programmed to always recoil, it doesn't matter if it's set to 00, 32 or 64; it will always recoil.

The seventh byte, 00, is attack target. This is mainly used for double battles (to hit one, or both of your opponent's Pokémon), but it's also used normally too, for example, letting Swords Dance up your own attack (rather than your opponent's).

00 - Your opponent's Pokémon (default)
04 - Random target
08 - Both of your opponent's Pokémon
16 - Both of your own Pokémon
32 - All

The eighth byte, 00, is priority. 00 means the move has no priority, while 01 means that it does.

The ninth byte, 33, is contact (so, for example, if Rough Skin will hurt you or not). When set to 33, contact is made, when it's 32, it is not.

The tenth through twelves bytes are padding. They don't do anything, so leave them be.

When a move is set to 09, it will do precious little damage. As far as I can see, this is because ??? is neither physical nor special, so it simply hits for the attack's base damage, rather than being influenced by the power of the Pokémon using it.

A move set to 12+ will automatically be special.

These are just notes that I jotted down while messing around with the pointers (probably useless notes). Sorry if it seems messy.

Between the two hyphens, I've included descriptions or examples to what the pointer controls.

247094 - Attack name start location
24829B - Attack name end location
250C10 - Attack effects start location
251CA8 - Attack effects end location
482834 - Attack description location
4886E0 - Pointer table for attack descriptions (starts with 34284808)
137BC8 - Pointer table for the pointer table for attack descriptions (starts with E8864808)

308A4: 94702408
Attack list pointer (Battle Screen - Selection)
-Which attack?
ATTACK 1 | ATTACK 2
ATTACK 3 | ATTACK 4-

D764C: 94702408
Attack list pointer (Battle Screen - Attacking)
-POKéMON used ATTACKNAME!-

13695C: 94702408
Attack list pointer (Statistics Screen)
-ATTACK1
ATTACK2
ATTACK3
ATTACK4-

16368: 040C2508
Move effect pointer? (In battle)
-I have no idea what this actually does, but without it, moves become glitchy.-

2EA9C: 040C2508
Move target pointer (In battle)
-Without this set, you'll be able to select any Pokémon as a target.-

386BC: 040C2508
Enemy move target pointer (In battle)
-Without this set, the enemy will continuously attack itself.-

4105C: 040C2508
PP total pointer
-Displays the remaining amount of PP.-

136950: 040C2508
Type pointer
-Gives the moves types.-

X-aveon
July 19th, 2008, 4:43 PM
um... theres a tool for that. but anyways, nice tutorial. it'll help a lot of hex hackers

YAY! FIRST POST!

Thrace
July 19th, 2008, 4:51 PM
Thanks a lot for this tutorial Cy-Chan! Its written in a very easy to understand way, I'm sure people will find this helpful.

I have a few questions though. What do you mean by Priority (the 8th byte), what does it do for the attack? And in the additional notes what byte are you talking about?

DarkFear
July 19th, 2008, 5:22 PM
That's a bunch of great info there.

For the ninth byte, is this also determining Attack Moves and Special Attack Moves? (32 for Special Attack Moves and 33 for Attack Moves)

200TH POST LAWL

thethethethe
July 19th, 2008, 6:31 PM
Thanks a lot for this tutorial Cy-Chan! Its written in a very easy to understand way, I'm sure people will find this helpful.

I have a few questions though. What do you mean by Priority (the 8th byte), what does it do for the attack? And in the additional notes what byte are you talking about?

Priority is for attacks like quick attack and extremespeed.
Here's a list of effect's I compiled. I thought it might be helpful.
0 Normal Hit
1 Put Opp.to Sleep
2 Hit + Poison
3 Hit + Heal
4 Hit + Burn
5 Hit + Freeze
6 Hit + Parlyze
7 Hit + Selfdestruct
8 Hit if Opp. is sleeping
9 Copys Attack of Opp.
10 Raise own Attk. by 1
11 Raise own Def. by 1
12
13 Raise own Sp. Attk. by 1
14
15
16 Raise Evas. by 1
17 100% hit + no Type differ.
18 Lower Opp. Attk. by 1
19 Lower Opp. Def. by 1
20 Lower Opp. Int. by 1
21
22
23 Lower own Acc. by 1
24 Lower Foes Evasiveness
25 Haze? Return Stats to Normal?
26 Bide Effect?
27 Attack 2-3 times, user confused
28 Send opponent out of Battle
29 Hit 2-5 Times
30 User Type = Opponents Last Attack
31 Chance of Flinching
32 Recover 50% of Full HP
33 Deals Toxic Poison
34 Pay Day effect, givemoney
35 Light Screen Effect?
36 Can Parlyze; Burn; Freeze
37 Rest Effect
38 1 hit K.O
39 Next Attack Has High Critical Ratio
40 Does Half Opponents HP Damage
41 40 HP Damage to Opponent
42 Attack plus extra Damage (refer Wrap)
43 Increase Critical Hit Ratio
44 Double Kick? Two Hits?
45 Jump Kick/Hi Jump Kick
46 Prevent Stat Reduction 2-5 Turns
47 Focus Energy Effect?
48 Hit With Recoil
49 Confuse
50 Raise own Attk. by 2
51 Defense + 2
52 Raise Speed + 2
53 Rais eSpecial Attack + 2
54 Raise Special Defense + 2
55
56
57 Transform Effect
58 Attack of Opponent - 2
59 Defense of Opponent - 2
60 Speed of Foe - 2
61
62 Foe Special Defense - 2
63
64
65 Reflect effect? Double Defense 2-5 turns?
66 Poison Certain Opponents
67 Paralyze Certain Opponents
68 Lower Foe's Attack
69 Lower Foe's Special Defense
70 Lower Foe's Speed
71 Lower Foe's Special Attack
72 Lower Foe's Special Defense
73 Lower Foe's Acurracy
74
75 Sky Attack Effect
76 May Confuse
77 Twineedle effect?
78 Vital Throw Effect
79 Creates a Substitute
80 Need to recharge
81 Rage Effect?
82 Copy Attack (Mimic)
83 Random Attack(Metronome)
84 Leech Seed Effect?
85 Splash Effect
86 Disable Effect
87 Damage = Level of User
88 Random Damage
89 Deal Double Damage
90 Encore Effect
91 Pain Split Effect
92 Only Attack While Foe's asleep. May Flinch
93 Conversion2 Effect
94 Next Attack Hits
95 Foes Previous move replaces Sketch
96
97 Sleep Talk Effect
98 Destiny Bond Effect
99 Flail/Reverse Effect
100 Triple Kick/Spite Effect
101 Leaves One HP
102 Heals Status Problems
103 Attack First
104
105 May Steal Foes Held Item
106 Foe Can't flee
107 Nightmare Effect?
108 Minimize Effect (Increase Evasiveness?)
109 Curse Effect (Decrease Speed, increase attack,defense/Cut half HP curse opponent.)
110
111 Protect user on turn used
112 Spikes Effect
113 Allow Normal type to Ghost Types
114 Perish Song Effect
115 Sandstorm Effect (Create Sandstorm?)
116 Endure Effect (Prevent Fainting?)
117 On 2-5 Turns, Damage greater for Successive hit
118 Swagger Effect
119 Fury Cutter Effect
120 Attract foe
121 Attack Power Determined by Happiness
122 Present Effect
123 Frustration Effect
124 Safeguard Effect (Prevent Stat Reduction?)
126 Magnitude Effect (Random Power?)
127 Baton Pass Effect
128 Pursuit Effect
129 Rapid Spin Effect
130 Only 20 Damage
131
132 Mornign Sun Effect (Heal Pokemon)
133 Synthess Effect (Heal Pokemon)
134 Moonlight Effect (Heal Pokemon)
135 Hidden Power Effect
136 Makes it Rain
137 Makes it Sunny
138 Steel Wing Effect
139 May Raise Attack
140 May Raise all stats
141
142 Belly Drum Effect
143 Psych Up Effect
144 Mirror Coat Effect
145 Skull Bash Effect?
146 Twister Effect (Hit's Fly?)
147 Double Damage to Dig Users. Hit all in Double Battle.
148 Attack hits Two Turns Later
149 Gust?
150 Does Double Against Minimixed Poke
151 Solarbeam Weather Effects
152 Thunder Weather Effects
153 Leave Battle(Teleport Effect)
154 Beat Up Effect
155 Wait one turn, then attack (refer FLY)
156 Defense + 1 ; Affected double by rollout when used?
157 Softboiled/Milk Drink Effect (Heal half)
158 Fake Out Effect
159 Uproar Effect
160 Stockpile Effect
161 Spit Up Effect
162 Swallow Effect
163
164 Begin Hailing
165 Torment Effect
166 Flatter Effect
167 Will-o-Wisp Effect (Burn Pokemon)
168 Memento Effect
170 Focus Punch Effect
171 Smelling Salt Effect
173 Nature Power Effect
174 Charge Effect
175 Taunt Effect
176 Helping Hand Effect
177 Trick Effect
178 Roleplay Effect
179 Wish Effect
180 Assist Effect (Random attack chosen)
181 Ingrain Effect
182 Superpower Effect
183 Magic Coat Effect
184 Recycle Effect
185 Revenge Effect
186 May Break Reflect
187 Yawn Effect (Send opponent to sleep next turn)
188 Knock-Off Effect (Knock item off?)
189 Endeavor Effect
190 Higher HP = Greater Damage
191 Skill Swap Effect
192 Imprison Effect
193 Refresh Effect (Heals status ailment?)
194 Grudge Effect
195 Snatch Effect
196 Damage Determined by Weight of Opponent
197 Secret Power Effect
198 Recoil= 1/3 Damage Dealt
199 Teeter Dance Effect
200 Blaze Kick Effect
201 Mud Sport Effect
202 Poison Fang Effect
203 Weather Ball Effect
204 After Attack Sp. DEf - 2 for user.
205 Tickle Effect
206 Cosmic Power Effect (Raise all stats?)
207 Sky Uppercut Effect
208 Bulk Up Effect (Raise attack and Defense?)
209 Poison Tail Effect
210 Water Sport Effect (Weakens that type)
211 Calm Mind Effect (Raise SP-Attack, SP-Defense)
212 Dragon Dance Effect (Raise attack and speed)
213 Camoflauge Effect
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
Some of them, I couldn't be bothered looking at what the actual attack did. And when there's nothing it means the effect either isn't programmed into the game, or just not used.

Thrace
July 19th, 2008, 6:47 PM
Priority is for attacks like quick attack and extremespeed.
Here's a list of effect's I compiled. I thought it might be helpful.
0 Normal Hit
1 Put Opp.to Sleep
2 Hit + Poison
3 Hit + Heal
4 Hit + Burn
5 Hit + Freeze
6 Hit + Parlyze
7 Hit + Selfdestruct
8 Hit if Opp. is sleeping
9 Copys Attack of Opp.
10 Raise own Attk. by 1
11 Raise own Def. by 1
12
13 Raise own Sp. Attk. by 1
14
15
16 Raise Evas. by 1
17 100% hit + no Type differ.
18 Lower Opp. Attk. by 1
19 Lower Opp. Def. by 1
20 Lower Opp. Int. by 1
21
22
23 Lower own Acc. by 1
24 Lower Foes Evasiveness
25 Haze? Return Stats to Normal?
26 Bide Effect?
27 Attack 2-3 times, user confused
28 Send opponent out of Battle
29 Hit 2-5 Times
30 User Type = Opponents Last Attack
31 Chance of Flinching
32 Recover 50% of Full HP
33 Deals Toxic Poison
34 Pay Day effect, givemoney
35 Light Screen Effect?
36 Can Parlyze; Burn; Freeze
37 Rest Effect
38 1 hit K.O
39 Next Attack Has High Critical Ratio
40 Does Half Opponents HP Damage
41 40 HP Damage to Opponent
42 Attack plus extra Damage (refer Wrap)
43 Increase Critical Hit Ratio
44 Double Kick? Two Hits?
45 Jump Kick/Hi Jump Kick
46 Prevent Stat Reduction 2-5 Turns
47 Focus Energy Effect?
48 Hit With Recoil
49 Confuse
50 Raise own Attk. by 2
51 Defense + 2
52 Raise Speed + 2
53 Rais eSpecial Attack + 2
54 Raise Special Defense + 2
55
56
57 Transform Effect
58 Attack of Opponent - 2
59 Defense of Opponent - 2
60 Speed of Foe - 2
61
62 Foe Special Defense - 2
63
64
65 Reflect effect? Double Defense 2-5 turns?
66 Poison Certain Opponents
67 Paralyze Certain Opponents
68 Lower Foe's Attack
69 Lower Foe's Special Defense
70 Lower Foe's Speed
71 Lower Foe's Special Attack
72 Lower Foe's Special Defense
73 Lower Foe's Acurracy
74
75 Sky Attack Effect
76 May Confuse
77 Twineedle effect?
78 Vital Throw Effect
79 Creates a Substitute
80 Need to recharge
81 Rage Effect?
82 Copy Attack (Mimic)
83 Random Attack(Metronome)
84 Leech Seed Effect?
85 Splash Effect
86 Disable Effect
87 Damage = Level of User
88 Random Damage
89 Deal Double Damage
90 Encore Effect
91 Pain Split Effect
92 Only Attack While Foe's asleep. May Flinch
93 Conversion2 Effect
94 Next Attack Hits
95 Foes Previous move replaces Sketch
96
97 Sleep Talk Effect
98 Destiny Bond Effect
99 Flail/Reverse Effect
100 Triple Kick/Spite Effect
101 Leaves One HP
102 Heals Status Problems
103 Attack First
104
105 May Steal Foes Held Item
106 Foe Can't flee
107 Nightmare Effect?
108 Minimize Effect (Increase Evasiveness?)
109 Curse Effect (Decrease Speed, increase attack,defense/Cut half HP curse opponent.)
110
111 Protect user on turn used
112 Spikes Effect
113 Allow Normal type to Ghost Types
114 Perish Song Effect
115 Sandstorm Effect (Create Sandstorm?)
116 Endure Effect (Prevent Fainting?)
117 On 2-5 Turns, Damage greater for Successive hit
118 Swagger Effect
119 Fury Cutter Effect
120 Attract foe
121 Attack Power Determined by Happiness
122 Present Effect
123 Frustration Effect
124 Safeguard Effect (Prevent Stat Reduction?)
126 Magnitude Effect (Random Power?)
127 Baton Pass Effect
128 Pursuit Effect
129 Rapid Spin Effect
130 Only 20 Damage
131
132 Mornign Sun Effect (Heal Pokemon)
133 Synthess Effect (Heal Pokemon)
134 Moonlight Effect (Heal Pokemon)
135 Hidden Power Effect
136 Makes it Rain
137 Makes it Sunny
138 Steel Wing Effect
139 May Raise Attack
140 May Raise all stats
141
142 Belly Drum Effect
143 Psych Up Effect
144 Mirror Coat Effect
145 Skull Bash Effect?
146 Twister Effect (Hit's Fly?)
147 Double Damage to Dig Users. Hit all in Double Battle.
148 Attack hits Two Turns Later
149 Gust?
150 Does Double Against Minimixed Poke
151 Solarbeam Weather Effects
152 Thunder Weather Effects
153 Leave Battle(Teleport Effect)
154 Beat Up Effect
155 Wait one turn, then attack (refer FLY)
156 Defense + 1 ; Affected double by rollout when used?
157 Softboiled/Milk Drink Effect (Heal half)
158 Fake Out Effect
159 Uproar Effect
160 Stockpile Effect
161 Spit Up Effect
162 Swallow Effect
163
164 Begin Hailing
165 Torment Effect
166 Flatter Effect
167 Will-o-Wisp Effect (Burn Pokemon)
168 Memento Effect
170 Focus Punch Effect
171 Smelling Salt Effect
173 Nature Power Effect
174 Charge Effect
175 Taunt Effect
176 Helping Hand Effect
177 Trick Effect
178 Roleplay Effect
179 Wish Effect
180 Assist Effect (Random attack chosen)
181 Ingrain Effect
182 Superpower Effect
183 Magic Coat Effect
184 Recycle Effect
185 Revenge Effect
186 May Break Reflect
187 Yawn Effect (Send opponent to sleep next turn)
188 Knock-Off Effect (Knock item off?)
189 Endeavor Effect
190 Higher HP = Greater Damage
191 Skill Swap Effect
192 Imprison Effect
193 Refresh Effect (Heals status ailment?)
194 Grudge Effect
195 Snatch Effect
196 Damage Determined by Weight of Opponent
197 Secret Power Effect
198 Recoil= 1/3 Damage Dealt
199 Teeter Dance Effect
200 Blaze Kick Effect
201 Mud Sport Effect
202 Poison Fang Effect
203 Weather Ball Effect
204 After Attack Sp. DEf - 2 for user.
205 Tickle Effect
206 Cosmic Power Effect (Raise all stats?)
207 Sky Uppercut Effect
208 Bulk Up Effect (Raise attack and Defense?)
209 Poison Tail Effect
210 Water Sport Effect (Weakens that type)
211 Calm Mind Effect (Raise SP-Attack, SP-Defense)
212 Dragon Dance Effect (Raise attack and speed)
213 Camoflauge Effect
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
Some of them, I couldn't be bothered looking at what the actual attack did. And when there's nothing it means the effect either isn't programmed into the game, or just not used.
Doesn't the first bytes do that though? Isn't attacking first an effect?

Cy-Chan
July 20th, 2008, 1:27 AM
Well, I haven't tested it, but I'd believe the priority byte and the effect byte would have to be set to make say, Quick Attack work. It seems completely anal, so it's probably true.

That's a bunch of great info there.

For the ninth byte, is this also determining Attack Moves and Special Attack Moves? (32 for Special Attack Moves and 33 for Attack Moves)

Nah, there was no attack split in the 3rd gen. Contact is really just used for ability triggers.

thethethethe
July 22nd, 2008, 3:49 AM
Doesn't the first bytes do that though? Isn't attacking first an effect?
Sorry I didn't see this. Umm... Yes it is a bit stupid for quick attack. But there's a somewhat hierarchy of prioritized attacks. And some of them can't use the effect of attack first, as they use different effects.
You have attacks like Detect and Protect which have an effect and a high priority.
Then there's extremespeed and quick attack. They both have effects which make them attack first, but when it comes down to it, I think extremespeed has a priority over quick attack.
But then there's also attacks like counter, which have a low priority. So that they attack after being dealt damage.
There's probably more, I just can't think of them.

Bayonetta
October 3rd, 2009, 11:37 PM
Sorry to revive this thread, but it's really useful.

When a move is set to 09, it will do precious little damage. As far as I can see, this is because ??? is neither physical nor special, so it simply hits for the attack's base damage, rather than being influenced by the power of the Pokémon using it.

A move set to 12+ will automatically be special.

Which byte does it stand for? the 7th?
Because if this is correct, THIS IS A WAY TO INSERT DIAMOND AND PEARL SKILL SYSTEM IN 3d GENARATION.

crehym
November 12th, 2009, 4:02 AM
Sorry to revive this thread, but it's really useful.

When a move is set to 09, it will do precious little damage. As far as I can see, this is because ??? is neither physical nor special, so it simply hits for the attack's base damage, rather than being influenced by the power of the Pokémon using it.

A move set to 12+ will automatically be special.

Which byte does it stand for? the 7th?
Because if this is correct, THIS IS A WAY TO INSERT DIAMOND AND PEARL SKILL SYSTEM IN 3d GENARATION.

Amachi
November 24th, 2009, 9:32 PM
Sorry to revive this thread, but it's really useful.

When a move is set to 09, it will do precious little damage. As far as I can see, this is because ??? is neither physical nor special, so it simply hits for the attack's base damage, rather than being influenced by the power of the Pokémon using it.

A move set to 12+ will automatically be special.

Which byte does it stand for? the 7th?
Because if this is correct, THIS IS A WAY TO INSERT DIAMOND AND PEARL SKILL SYSTEM IN 3d GENARATION.

It stands for the third one, as expected.

00 - Normal
01 - Fighting
02 - Flying
03 - Poison
04 - Ground
05 - Rock
06 - Bug
07 - Ghost
08 - Steel
09 - Unknown (???)
0A - Fire
0B - Water
0C - Grass
0D - Electric
0E - Psychic
0F - Ice
10 - Dragon
11 - Dark
Everything before 09 - Unknown (???) is a physical attack, and everything after is a special attack, so it's only natural that the special characteristic continues on after what's there i.e. 12+

So no, this isn't way to split the physical and special attacks like in 4th gen.

Amabane~*
November 29th, 2009, 1:03 PM
So no, this isn't way to split the physical and special attacks like in 4th gen.

Excuse me, but I disagree of you. Because the Japanese hackers discovered a way to do it. One of the unofficial patches for Touhou Puppet Play (aka Touhoumon) adds the Diamond & Pearl Skill System a FR hack. In 3rd Generation, Fire Punch does special-type damage, but with this patch he does physical-type damage, like the 4th Generation games. If you play it , you will see the DPSS on the skills, like the 4th Gen games.. We only need to discover HOW they made it. I'm not sure if hex editing would be the way, but that patch is enough proof of his existence. Maybe this could require hard coding (ASM or C), but a way do exists, that is for sure.

I has a theory, is something like, they make new types (like a "special Normal" or "physical Fire") and had success to add it on the game. I'll will post it later, because I will make sure that my post won't be misunderstood (English is not my native language and I'm on a hurry here). Yeah, I know this is a not-Pokémon related hack, but all of us can have benefit of this discovery.

I got only a already patched ROM right now, but I going to make a patch and upload it for anyone interested. You can get some information (in english) in Touhou Wiki. Search on google for "Touhou Wiki" and "Touhou Puupet Play" (since I can't post links with my first post^^)

On there, in "Unofficial Patches" n.103. is the patch I'm talking about it.

Sorry for the first post^^

Verloren
November 29th, 2009, 1:36 PM
http://www.mediafire.com/?jztknjtoibm