The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.


Reply
 
Thread Tools
  #101    
Old April 23rd, 2013, 04:48 PM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Hi guys, so, I can't figure out how to make a sound-based move. (like Growl, Sing, ...)
Do I have to find and modify the abilities Soundproof/Cacophony?? :x :x
Because I studied the moves data table thouroughtly and there is no sound-based parameter ... I guess
By the way, talking about the moves data table I figured them all except of the 3 bytes who are quiet strange, can anyone please enlighten this:
From what I understood, every move's datas are stored in 12 bytes in this form:
[Effect ID] [Power] [Type] [Accuracy] [PP] [effect's %Chance] [Target] [Priority] [Affected by King's Rock, BrightPowder, Magic Coat, Snatch, Protect/Detect, contact] [00] [00] [00]
So, the last 3 bytes are always set to 0, EXCEPT for TWO moves: Hidden Power and DragonBreath.
Hidden Power's datas: 87 46 00 64 0A 00 00 00 32 00 01 00
DragonBreath's datas: 06 3C 10 64 14 1E 00 00 32 00 01 00
Does anyone know what it means?

Also, does anyone have an idea on how to extend Metronome's range to the new moves??? PLEEEEEAASE.
Or how to make a 1/2 recoil effect? (like Head Smash)

Finally, here are the moves I have made: (I only made them by coping other moves, BPS won't work for me. I have no idea if I can use it correctly anyway.)
V-Create (Nothing amazing, just added -Speed to pawel16's Close Combat and changed -Def/-spDef into -Atk/-Def)
Spoiler:
00 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 2E 85 3E 02 02 D6 15 2E 85 3E 02 02 D7 15 2E 85 3E 02 02 D8 15 28 47 69 1D 08


Fire/Ice/Thunder Fang (Copied from Jambo51's Flare Blitz)
Spoiler:
00 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 2E 85 3E 02 02 (flinch)88 15 2E 85 3E 02 02 (burn/freeze/paralyz)03/04/05 15 28 47 69 1D 08


Dragon Tail/Circle Throw (Uhm, a basic damage-dealing move that ... lol... points to Roar's effect in the end but skips the part where it checks accuracy and specialflags. THE ANIMATION OF THE MOVE WILL BE SHOWN TWICE!! I couldn't figure out how to fix this. XX YY ZZ 08 is a pointer to Roar's effect; in my rom it is stored at B0 6C 1D 08, normally. To skip the part where it checks accuracy you must skip 5 bytes, so, in my case, I ended the effect with this pointer B5 6C 1D 08.)
Spoiler:
00 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 28 XX YY ZZ 08


Hone Claws (Copied from Bulk Up, Dragon Dance & Calm Mind, ...)
Spoiler:
00 02 03 20 01 03 (*Note1)01 0C XX XX XX 08 20 01 00 (*Note2)06 0C E7 85 1D 08 (@XXX)09 0A 2E DF 3F 02 02 00 48 01 (*Note3)42 00 2E DE 3F 02 02 (+Atk)11 89 41 YY YY YY 08 29 00 87 3E 02 02 02 YY YY YY 08 13 7C E5 3F 08 12 40 00 (@YYY)2E DE 3F 02 02 (+Accuracy)16 89 41 EE NN DD 08 29 00 87 3E 02 02 02 EE NN DD 08 13 7C E5 3F 08 (@END)12 40 00 28 4E 69 1D 08
When I compared Bulk Up, Dragon Dance and Calm Mind, only differences were in the "internal" pointers (duh), stats (duh) and the bytes I marked with (*Notes)
*Note1: This apparently checks on weither Attack (01) is maxed or not. The next byte (0C), aparently, has to do with the game's message (OC = stats won't go any higher, while 00 = stat won't go any lower)
*Note2: This apparently checks on weither Accuracy (06) is maxed or not. The next byte, aparently, has to do with the game's message (OC = stats won't go any higher, while 00 = stat won't go any lower)
*Note3: This byte is weird, I only understood it when I converted it to binary... for exemple: 42 is 01000010 in binary. It seems that each bit is connected to one of the stats, from left to right: Evasion, Accuracy, Sp. Def., Sp. Atk, Speed, Def., Atk. and the last one is HP I guess, lol. So, 42 (01000010), supposedly, tells the game to check on Accuracy and Attack, but putting any value there doesn't seem to affect anything tough. (In Calm Mind it had the value: 30 = 00110000, Bulk Up: 06 = 00000110, Dragon Dance: 0A = 00001010)


Shift Gear (Same way I did with Hone Claws, copied from Dragon Dance, Bulk Up ...)
Spoiler:
00 02 03 20 01 03 01 0C XX XX XX 08 20 01 00 03 0C E7 85 1D 08 (@XXX)09 0A 2E DF 3F 02 02 00 48 01 0A 00 2E DE 3F 02 02 (+Atk)11 89 41 YY YY YY 08 29 00 87 3E 02 02 02 YY YY YY 08 13 7C E5 3F 08 12 40 00 (@YYY)2E DE 3F 02 02 (+Accuracy)16 89 41 EE NN DD 08 29 00 87 3E 02 02 02 EE NN DD 08 13 7C E5 3F 08 (@END)12 40 00 28 4E 69 1D 08


Coil (Copied from Curse. XX YY ZZ 08 is a pointer to (@XYZ), same with UU VV WW 08 which points to (@UVW), ... etc. It works like Curse, so it doesn't show the grey animation like in Bulk Up, Calm Mind... and if all 3 stats are maxed it simply say "but it failed" instead of giving 3 succesive messages. If you wan't the gray animation then do it by copying Bulk Up I guess.)
Spoiler:
00 02 03 20 01 02 01 0C XX YY ZZ 08 20 01 01 02 0C XX YY ZZ 08 20 01 00 06 0C F2 7D 1D 08 (@XYZ)31 6C 3D 02 02 6B 3D 02 02 01 2E DC 3F 02 02 01 09 0A 2E DE 3F 02 02 11 89 41 UU VV WW 08 13 7C E5 3F 08 12 40 00 (@UVW)2E DE 3F 02 02 12 89 41 II JJ KK 08 13 7C E5 3F 08 12 40 00 (@IJK)2E DE 3F 02 02 16 89 41 EE NN DD 08 13 7C E5 3F 08 12 40 00 (@END)28 4E 69 1D 08


Quiver Dance (Exact same way I did with Coil, copied from Curse.)
Spoiler:
00 02 03 20 01 02 04 0C XX YY ZZ 08 20 01 01 05 0C XX YY ZZ 08 20 01 00 03 0C F2 7D 1D 08 (@XYZ)31 6C 3D 02 02 6B 3D 02 02 01 2E DC 3F 02 02 01 09 0A 2E DE 3F 02 02 14 89 41 UU VV WW 08 13 7C E5 3F 08 12 40 00 (@UVW)2E DE 3F 02 02 15 89 41 II JJ KK 08 13 7C E5 3F 08 12 40 00 (@IJK)2E DE 3F 02 02 13 89 41 EE NN DD 08 13 7C E5 3F 08 12 40 00 (@END)28 4E 69 1D 08


Shell Smash (Same way I did with Coil and Quiver Dance, copied Curse and repeated the part that changes the stats twice before ENDing the effect. Of course, no grey/red/green animation... But the rest works perfectly!)
Spoiler:
00 02 03 20 01 02 02 00 XX XX XX 08 20 01 02 05 00 XX XX XX 08 20 01 01 01 0C XX XX XX 08 20 01 01 04 0C XX XX XX 08 20 01 00 03 0C F2 7D 1D 08 (@XXX)31 6C 3D 02 02 6B 3D 02 02 01 2E DC 3F 02 02 01 09 0A 2E DE 3F 02 02 92 89 41 YY YY YY 08 13 7C E5 3F 08 12 40 00 (@YYY)2E DE 3F 02 02 95 89 41 ZZ ZZ ZZ 08 13 7C E5 3F 08 12 40 00 (@ZZZ)2E DE 3F 02 02 21 89 41 MM MM MM 08 13 7C E5 3F 08 12 40 00 (@MMM)2E DE 3F 02 02 24 89 41 NN NN NN 08 13 7C E5 3F 08 12 40 00 (@NNN)2E DE 3F 02 02 23 89 41 EE NN DD 08 13 7C E5 3F 08 12 40 00 (@END)28 4E 69 1D 08


Tail Glow (Copied from Bulk Up, it increases Sp. Atk 1 stage then 2 stages, lol. I don't know how to make it increase Sp. Atk once and drastically...)
Spoiler:
00 02 03 20 01 03 04 0C XX XX XX 08 20 01 00 04 0C E7 85 1D 08 (XX)09 0A 2E DF 3F 02 02 00 48 01 10 00 2E DE 3F 02 02 14 89 41 YY YY YY 08 29 00 87 3E 02 02 02 YY YY YY 08 13 7C E5 3F 08 12 40 00 (YY)2E DE 3F 02 02 24 89 41 ZZ ZZ ZZ 08 29 00 87 3E 02 02 02 ZZ ZZ ZZ 08 13 7C E5 3F 08 12 40 00 (ZZ)28 4E 69 1D 08


Cotton Guard
(Same way I made Tail Glow...)
Spoiler:
00 02 03 20 01 03 02 0C XX XX XX 08 20 01 00 02 0C E7 85 1D 08 (XX)09 0A 2E DF 3F 02 02 00 48 01 04 00 2E DE 3F 02 02 12 89 41 YY YY YY 08 29 00 87 3E 02 02 02 YY YY YY 08 13 7C E5 3F 08 12 40 00 (YY)2E DE 3F 02 02 22 89 41 ZZ ZZ ZZ 08 29 00 87 3E 02 02 02 ZZ ZZ ZZ 08 13 7C E5 3F 08 12 40 00 (ZZ)28 4E 69 1D 08


Miscellaneous (Copied from Overheat's effect.)
Spoiler:
Flame Charge
2E 85 3E 02 02 D1 28 00 69 1D 08
Charge Beam/Fiery Dance
2E 85 3E 02 02 D2 28 00 69 1D 08
Acid Spray
2E 85 3E 02 02 32 28 00 69 1D 08
Mess up with the 6th byte by putting in it other values, there is a **** load of effects.


Is there some sort of tutorial, guide, or anything that gives some details or a list of the meaning of some bytes and such?? Please, I barely have an unclear idea on what some stuff does...
__________________

Last edited by Kurapika; April 23rd, 2013 at 05:47 PM.
Reply With Quote
  #102    
Old April 23rd, 2013, 05:27 PM
Eren Jaeger's Avatar
Eren Jaeger
Pianoist
 
Join Date: Apr 2013
Location: EARTH
Gender: Male
Nature: Serious
Very helpful! But patience is in need here.. oh man.
__________________
Music is art
Reply With Quote
  #103    
Old April 23rd, 2013, 06:43 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
Is there some sort of tutorial, guide, or anything that gives some details or a list of the meaning of some bytes and such?? Please, I barely have an unclear idea on what some stuff does...
There's a list on the original post under Step Six in Creating New Move effects:

Quote:
That byte (FB) is soley responsible for the special attack drop. Now, how do we turn it into a speed drop?

Here is a list of what you can do by changing this byte. These are the ones that work 100% of the time. Meaning, these effects will ALWAYS happen. There are more (I didn't test from 00-C0) but I'm sure they are the same effects, just with less of a chance of happening. I know 01 has a 10% chance of putting an opponent to sleep, 03 has a 10% chance of burning an opponent, etc...

Spoiler:

C1: Puts yourself to sleep.
C2: Poisons yourself.
C3: Burns yourself.
C4: Freezes yourself.
C5: Paralyzes yourself.
C6: Badly poisons yourself.
C7: Confuses yourself.
C9: Freezes opponent.
CA: Uproar's effect.
CB: Payday's effect.
CD: Sand Tomb's effect.
CE: 1/4 Recoil damage.
CF: Raises users attack one level.
D0: Raises users defense one level.
D1: Raises users speed one level.
D2: Raises users special attack one level.
D3: Raises users special defense one level.
D4: Raises users accuracy one level.
D5: Raises users evasion one level.
D6: Lowers users attack one level.
D7: Lowers users defense one level.
D8: Lowers users speed one level.
D9: Lowers users special attack one level.
DA: Lowers users special defense level.
DB: Lowers users accuracy level.
DC: Lowers users evasion one level.
DD: Takes a turn to recover (Hyper Beam, etc...)
DF: Thief's effect
E2: Users stats all raise one level (Except Accuracy and Evasion).
E5: Users attack and defense lower one level.
E6: 1/3 Recoil.
E7: Users attack raises two levels.
E8: Users defense raises two levels.
E9: Users speed raises two levels.
EA: Users special attack raises two levels.
EB: Users special defense raises two levels.
EC: Users accuracy raises two levels.
ED: Users evasion raises two levels.
EE: Users attack lowers two levels.
EF: Users defense lowers two levels.
F0: Users speed lowers two levels.
F1: Users special attack lowers two levels.
F2: Users special defense lowers two levels.
F3: Users accuracy lowers two levels.
F4: Users evasion lowers two levels.
F5: Outrage's effect.
F6: Knock Off's effect.
FB: Users special attack lowers two levels.
__________________
Reply With Quote
  #104    
Old May 9th, 2013, 05:00 PM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Hello guys, so I found that using the burn effect, even by replacing one of the existing effects that cause burn (Will-O-Wisp, Blaze Kick & the one that most Fire moves have) the burn doesn't work correctly.
Ok, how does it not work correctly?
It burns Fire-type Pokémon except if they have Flash Fire ability... normally, Fire Pokémon shouldn't get burned at all.
So, moves with more than 1 secondary effect like Flare Blitz, Fire Fang, ... can burn Fire Pokémon...
I tested Ice Fangs on Ice Pokémon, they don't get Frozen even when I put the chance at 100%. So I thinK the checking for Fire Pokémon works differently than for Ice Pokémon... I think, tough, this can be fixed if we make these moves check target's type before and skip the burn chance in case of a Fire-typed target...
__________________
Reply With Quote
  #105    
Old May 11th, 2013, 06:31 AM
Tomi01
Unhatched Egg
 
Join Date: Jan 2011
Can somebody tell me how to make a "hit+effect" move, like Flare Blitz with never miss accuracy, like Clear Smog? The Clear Smog code, what is posted before works, but it doesn't have never miss accuracy, so my question is, how to add never miss accuracy code to create a move effect like Clear Smog.
Reply With Quote
  #106    
Old May 17th, 2013, 01:47 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
@tomi, removing the 01 at the beginning of the effect should do the trick, I guess.

As of my previous problem with Fire-typed Pokémon getting burned when hit by custom effects like Fire Fang and Flare Blitz I found a fix for it:
22 00 0A XX XX XX 08
This piece of code checks if the target has FIRE type, in which case it will jump to the point XX XX XX 08. Now, I am still trying to figure out how to extend the effect of Metronome to include the new moves. Does anyone have some clues about that?
__________________

Last edited by Kurapika; May 17th, 2013 at 01:51 AM. Reason: Grammar
Reply With Quote
  #107    
Old May 18th, 2013, 05:21 AM
~Anbuja's Avatar
~Anbuja
Let's Keep It Simple
 
Join Date: Oct 2010
Location: In Snorlax Stomach
Gender: Male
Nature: Lonely
Send a message via Skype™ to ~Anbuja
I have a question at the move effect table:
After I repoint that table and all, and adding new move effect pointers at the end, and putting the end of that table.
Do I still need free space after the end for when I add another effect pointer in that table?

If yes then I gotta re-repoint that table D:
But its not of a issue.
__________________
Reply With Quote
  #108    
Old May 18th, 2013, 05:35 AM
Tomi01
Unhatched Egg
 
Join Date: Jan 2011
Okay, the Clear Smog code is working now, I had to just modify the first 00 to 01. So the code is:

01 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 0F 12 40 00 0A 8A 10 F9 00 12 40 00 15 28 47 69 1D 08
Reply With Quote
  #109    
Old May 18th, 2013, 05:54 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
@Anbuja, there are 213 effects originally, you can add new ones up to 256, so, after re-pointing the table, just put after it as much 00s as move effects you may need * 4. Or just go for the maximum and replace 186 FFs with 00s, 186 bytes is not too much.
__________________
Reply With Quote
  #110    
Old May 27th, 2013, 08:41 PM
rhettz_emboar's Avatar
rhettz_emboar
Did you just pee??
 
Join Date: Mar 2013
Location: Philippines
Gender: Male
Woah what a great TuT!
But is there a way to add moves to emerald?
__________________


I hate people like you..
[/SIZE]
Reply With Quote
  #111    
Old July 6th, 2013, 08:34 PM
Garuga17's Avatar
Garuga17
 
Join Date: Apr 2011
Location: Indonesia
Age: 19
Gender: Male
Nature: Relaxed
I got a question, i cant edit trainer's pokemon in A-trainer, i guess a-trainer doesn't use the edited .ini ......

Is there any resolution?
__________________
dunno what to write here....
Reply With Quote
  #112    
Old July 14th, 2013, 01:35 PM
LCCoolJ95's Avatar
LCCoolJ95
Limited Capacity
 
Join Date: May 2009
Location: The World That Never Was
Age: 19
Gender: Male
Nature: Naive
I found the Ruby's Attack Animation Table Offset: 1C7168

Some one test this and see if it works.
__________________
"The greatest obstacle in life is Yourself. Overcome it, and you will achieve the greatest accomplishment of all." -Art Beins, 1982

Fairy-type in Pokémon Emerald: http://www.pokecommunity.com/showpos...&postcount=288
Reply With Quote
  #113    
Old July 15th, 2013, 05:14 AM
pawell6's Avatar
pawell6
The truthseeker
 
Join Date: Feb 2010
Location: Poland
Age: 26
Gender: Male
Quote:
Originally Posted by Garuga17 View Post
I got a question, i cant edit trainer's pokemon in A-trainer, i guess a-trainer doesn't use the edited .ini ......

Is there any resolution?
Use trainer editor made by Jambo51 posted in toolbox forum.
__________________
Most of new moves is done. Fixing timing of some animations and updating learnsets in progress.
Reply With Quote
  #114    
Old July 17th, 2013, 05:24 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
These codes are for Fire Red BPRE
Hex effect
1C 00 FF 00 00 00 51 80 1D 08 28 00 69 1D 08
Venoshock effect
1C 00 88 00 00 00 51 80 1D 08 28 00 69 1D 08
Venoshock effect with a poison hax
1C 00 88 00 00 00 51 80 1D 08 2E 85 3E 02 02 02 28 00 69 1D 08
Dragon Tail/Circle Throw effect
00 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 1E 00 15 08 94 1D 08 21 00 00 04 00 00 00 27 8F 1D 08 8F F2 7D 1D 08

The Dragon Tail effect works perfectly regarding type-immunities, accuracy, ...etc, but, it will repeat most animations twice, if you want to fix that, you need to make a custom animation similar to Solarbeam's animation.
__________________
Reply With Quote
  #115    
Old July 17th, 2013, 09:25 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
These codes are for Fire Red BPRE
Hex effect
1C 00 FF 00 00 00 51 80 1D 08 28 00 69 1D 08
Venoshock effect
1C 00 88 00 00 00 51 80 1D 08 28 00 69 1D 08
Venoshock effect with a poison hax
1C 00 88 00 00 00 51 80 1D 08 2E 85 3E 02 02 02 28 00 69 1D 08
Dragon Tail/Circle Throw effect
00 01 5E 69 1D 08 00 00 02 03 04 05 06 07 09 0A 0E 5C 00 3A 0B 00 0C 00 0D 12 40 00 0F 12 40 00 1E 00 15 08 94 1D 08 21 00 00 04 00 00 00 27 8F 1D 08 8F F2 7D 1D 08

The Dragon Tail effect works perfectly regarding type-immunities, accuracy, ...etc, but, it will repeat most animations twice, if you want to fix that, you need to make a custom animation similar to Solarbeam's animation.
What do you mean by Poison Hax?

Also great work with Dragon Tail, I couldn't manage to turn off the second animation either.

You should submit all of these to the 4th Gen Move Resource made by Shadowraze/Tajaros
__________________

Last edited by MrDollSteak; July 17th, 2013 at 09:36 PM.
Reply With Quote
  #116    
Old July 17th, 2013, 10:54 PM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
I meant by poison hax a chance to poison the target, just for those (like me, lol) who want Venoshock to have a chance of 10% to inflict poison.
__________________
Reply With Quote
  #117    
Old July 17th, 2013, 11:42 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
I meant by poison hax a chance to poison the target, just for those (like me, lol) who want Venoshock to have a chance of 10% to inflict poison.
Ah fair enough! Did you have any luck with the sound based moves?
Chances are it'll be in the routine that loads the ability itself. There's probably a
battle script that checks if Soundproof is present and blocks certain moves.
__________________
Reply With Quote
  #118    
Old July 18th, 2013, 06:30 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Yes, apparently, sound-based moves are checked elsewhere. But, you can check for Soundproof ability anytime with this:
1E 00 2D XX XX XX 08
To check for Cacophony use this:
1E 00 4C XX XX XX 08
And to check for both use them both. XX XX XX 08 is a pointer to the move's effect if the target is sound-proof.

Exemple:
The effect of Sleep Powder, Spore, Sing and Grass Whistle
00 02 03 1D 00 00 00 00 01 F2 7D 1D 08 1C 00 07 00 00 00 B0 69 1D 08 84 CC 69 1D 08 1C 00 FF 00 00
Lets make Sleep Powder and Spore useless against Soundproof and Cacophony:
00 02 03 1E 00 2D XX XX XX 08 1E 00 4C XX XX XX 08 1D 00 00 00 00 01 F2 7D 1D 08 1C 00 07 00 00 00 B0 69 1D 08 84 CC 69 1D 08 1C 00 FF 00 00
@0x08XXXXXX:
10 D2 00 12 40 00 28 4E 69 1D 08 (This will mimic the message of soundproof blocking a move)
__________________

Last edited by Kurapika; July 19th, 2013 at 08:53 AM.
Reply With Quote
  #119    
Old July 19th, 2013, 07:11 AM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
Yes, apparently, sound-based moves are checked elsewhere. But, you can check for Soundproof ability anytime with this:
1E 00 43 XX XX XX 08
To check for Cacophony use this:
1E 00 76 XX XX XX 08
And to check for both use them both. XX XX XX 08 is a pointer to the move's effect if the target is sound-proof.

Exemple:
The effect of Sleep Powder, Spore, Sing and Grass Whistle
00 02 03 1D 00 00 00 00 01 F2 7D 1D 08 1C 00 07 00 00 00 B0 69 1D 08 84 CC 69 1D 08 1C 00 FF 00 00
Lets make Sleep Powder and Spore useless against Soundproof and Cacophony:
00 02 03 1E 00 43 XX XX XX 08 1E 00 76 XX XX XX 08 1D 00 00 00 00 01 F2 7D 1D 08 1C 00 07 00 00 00 B0 69 1D 08 84 CC 69 1D 08 1C 00 FF 00 00
@0x08XXXXXX:
10 D2 00 12 40 00 28 4E 69 1D 08 (This will mimic the message of soundproof blocking a move)
The problem with doing that though, is it will affect all moves that use that effect. So to make a specific move resistant to sound, you'd have to give it a unique effect. Which is annoying because we only have so many extra spots for move effects.
__________________
Reply With Quote
  #120    
Old July 19th, 2013, 08:13 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Sadly, that's the only way I can think of, I have no idea how to deal with abilities directly.

EDIT:
Hell yeah! I searched the IDs of sound-based moves with a hex editor, I found them in a nicely ordered table located at 0x08250104.
This is the table:
2D 00 2E 00 2F 00 30 00 67 00 AD 00 FD 00 3F 01 40 01 30 01 FF FF 00 00
(FF FF 00 00 is probably the part that tells it's the end of the table?? I'm not sure about that, but I kept it just for safety.)
I repointed that table and extended it (by adding Bubble and SmokeScreen as sound-based moves in it) and it worked!!!
By the way, Heal Bell and Perish Song are not present in this table, their respective effects checks for Soundprood. I think it is because these 2 moves target the user, which makes sense.
__________________

Last edited by Kurapika; July 19th, 2013 at 09:11 AM.
Reply With Quote
  #121    
Old July 19th, 2013, 07:16 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
Sadly, that's the only way I can think of, I have no idea how to deal with abilities directly.

EDIT:
Hell yeah! I searched the IDs of sound-based moves with a hex editor, I found them in a nicely ordered table located at 0x08250104.
This is the table:
2D 00 2E 00 2F 00 30 00 67 00 AD 00 FD 00 3F 01 40 01 30 01 FF FF 00 00
(FF FF 00 00 is probably the part that tells it's the end of the table?? I'm not sure about that, but I kept it just for safety.)
I repointed that table and extended it (by adding Bubble and SmokeScreen as sound-based moves in it) and it worked!!!
By the way, Heal Bell and Perish Song are not present in this table, their respective effects checks for Soundprood. I think it is because these 2 moves target the user, which makes sense.
That's fascinating! Brilliant work. This is actually incredibly useful. I think if theres a unique move that doesn't share it's effect, and happens to be sound based. It would make more sense to put it there. But this table is fantastic for say Bug Buzz which shares its ability with multiple moves. Great work Kurapika!

EDIT: After some testing I've found it does indeed work. However it doesn't work 100% with the new moves.The moves don't play and it says Soundproof Blocked which is fine, however, instead of displaying the new move names correctly it spouts hex numbers. I'll try and find the thing that causes this. Other than that it seems fine.
__________________

Last edited by MrDollSteak; July 19th, 2013 at 08:04 PM.
Reply With Quote
  #122    
Old July 20th, 2013, 09:38 AM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Hi!
To fix that issue of Soundproof VS new moves go to 0x080D7E96 you will find the limiter (B1 20 40 00 81 42) that this tutorial suggested us to overwrite with 00 00 00 00 00 00. I am not sure, but, apparently, we only need to replace the first byte B1 with FF. (B1 = 177 in decimal. and 177 multiplied by 2 = 354. In Gen3 we have 354 moves)

Anyway, replacing that limiter will fix the issue with Soundproof VS new moves along with Disable VS new moves.

I discovered that when I was trying to figure out how to extend Metronome to new moves. I partially succeeded in that:
Metronome uses an ASM code located at 0x08029754, in that code I found a byte = B1, I replaced it with FF and now Metronome is including the new moves too. (FF = 255 in decimal. 255 multiplied by 2 = 511. The maximum of moves we can have is 511 and I am using them all.)
If you are using only, say, 400 moves, then replace B1 with C8 instead of FF. (C8 is 200 in decimal. 200 multiplied by 2 = 400.)

Now, Metronome is including new moves, but there are some moves that Metronome does not select (such us itself, Sketch, Mimic, ...etc) those moves are gathered in a list located at 0x082507E8:
Spoiler:
76 00 A5 00 A6 00 66 00 FE FF 44 00 F3 00 B6 00 C5 00 CB 00 C2 00 D6 00 A8 00 0A 01 21 01 0E 01 57 01 0F 01 08 01 FF FF
Every 2 bytes (half word) is a move ID, f.e.: 67 00 = Metronome. FF FF apparently is the end of the table while FE FF is probably a sort of a separator, to separate Metronome, Struggle, Sketch and Mimic from the other moves.

I tried repointing and extending this list but it won't work, I think the only way to fix it is to completely hack Metronome's ASM code... But I don't have enough skill for that. :/
__________________

Last edited by Kurapika; July 20th, 2013 at 09:44 AM. Reason: Your double post has been automatically merged.
Reply With Quote
  #123    
Old July 20th, 2013, 06:47 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Kurapika View Post
Hi!
To fix that issue of Soundproof VS new moves go to 0x080D7E96 you will find the limiter (B1 20 40 00 81 42) that this tutorial suggested us to overwrite with 00 00 00 00 00 00. I am not sure, but, apparently, we only need to replace the first byte B1 with FF. (B1 = 177 in decimal. and 177 multiplied by 2 = 354. In Gen3 we have 354 moves)

Anyway, replacing that limiter will fix the issue with Soundproof VS new moves along with Disable VS new moves.

I discovered that when I was trying to figure out how to extend Metronome to new moves. I partially succeeded in that:
Metronome uses an ASM code located at 0x08029754, in that code I found a byte = B1, I replaced it with FF and now Metronome is including the new moves too. (FF = 255 in decimal. 255 multiplied by 2 = 511. The maximum of moves we can have is 511 and I am using them all.)
If you are using only, say, 400 moves, then replace B1 with C8 instead of FF. (C8 is 200 in decimal. 200 multiplied by 2 = 400.)

Now, Metronome is including new moves, but there are some moves that Metronome does not select (such us itself, Sketch, Mimic, ...etc) those moves are gathered in a list located at 0x082507E8:
Spoiler:
76 00 A5 00 A6 00 66 00 FE FF 44 00 F3 00 B6 00 C5 00 CB 00 C2 00 D6 00 A8 00 0A 01 21 01 0E 01 57 01 0F 01 08 01 FF FF
Every 2 bytes (half word) is a move ID, f.e.: 67 00 = Metronome. FF FF apparently is the end of the table while FE FF is probably a sort of a separator, to separate Metronome, Struggle, Sketch and Mimic from the other moves.

I tried repointing and extending this list but it won't work, I think the only way to fix it is to completely hack Metronome's ASM code... But I don't have enough skill for that. :/
That's fantastic! You've been very busy. I think in the case of Metronome, that's not a huge problem, as most of the new moves that we can create are generally attack or stat-up moves. So they don't really need to be added to the banned list of moves.
__________________
Reply With Quote
  #124    
Old July 22nd, 2013, 12:04 PM
Ksiazek Bartlomiej's Avatar
Ksiazek Bartlomiej
Rejishan awake...
 
Join Date: Jun 2008
Location: Takoabe Town (Region Thonsu)
Age: 21
Gender: Male
Nature: Hardy
Can you told me what is pointer of Attacks in Pokemon Ruby?
__________________
- During Centuries... Whole worlds try keep in survive... Beafore the space start existing... In chaos eye appeared two eggs... One of mighty pokemon Arceus... Secound with less known Rejishan... Those two pokemon start build their worlds in other warps... Rejishan lose him mission... And undone world named now was TORN WORLD where now live Giratina... Arceus create world with Pokemons where live everywhere alongside with humans... What do Arceus after fail of Rejishan? He give him able to live in him world... But Rejishan want create something which been himself... And from biggest dessert upper than Unova Region start creating new region... This region is Thonsu... New species of Pokemons start locate at their region... Arceus fell angry... But forgive Rejishan and make with him friendship... But now... Is no one know... Rejishan hide in human body... Human name of Thonsu Creator is Sir Allan Newlight... - MYTH ABOUT REJISHAN (Pokemon Dirty Sun plot)

MY MUSIC SHOP - http://www.pokecommunity.com/showthread.php?t=296954
Reply With Quote
  #125    
Old July 22nd, 2013, 01:05 PM
Kurapika's Avatar
Kurapika
Grudgebearer
 
Join Date: Feb 2013
Location: Lavendar Town - Morocco
Gender: Male
Nature: Naughty
Yeah, actually, for Metronome, instead of bothering understanding its ASM, it is far more simple to put the banned moves at the bottom of the list of moves and then exclude them from Metronome's range.

Anyway, I've been working on Acrobatics' effect:
Spoiler:
00 01 5E 69 1D 08 00 00 29 00 6B 3D 02 02 03 XX XX XX 08 29 00 6B 3D 02 02 02 YY YY YY 08 29 00 6B 3D 02 02 01 ZZ ZZ ZZ 08 2A 00 12 3C 02 02 00 00 DD DD DD 08 28 00 69 1D 08
(XXX)2A 00 1A 3D 02 02 00 00 DD DD DD 08 28 00 69 1D 08
(YYY)2A 00 C2 3C 02 02 00 00 DD DD DD 08 28 00 69 1D 08
(ZZZ)2A 00 6A 3C 02 02 00 00 DD DD DD 08 28 00 69 1D 08
(DDD)2E D2 3F 02 02 02 28 00 69 1D 08

It takes too much time and space to make it in hex, but it is much more simple and shorter in ASM. The problem is that there is no callasm in battle scripts... the only way I made it work is by overwriting another command's ASM code and calling that command in Acrobatics' effect...
Does anyone please know if it is possible to call ASM without having to alter the existing commands??

Quote:
Originally Posted by Ksiazek Bartlomiej View Post
Can you told me what is pointer of Attacks in Pokemon Ruby?
Here:
Spoiler:
[AXVE]
ROMName=Pokémon Ruby (English)
ItemData=&H3C5564
AttackNames=&H1F8320
TMData=&H376504
NumberOfItems=349
NumberOfAttacks=354
PokemonNames=&H1F716C
NumberOfPokemon=412
NationalDexTable=&H1FC516
SecondDexTable=&H1FC1E0
PokedexData=&H3B1858
NumberOfDexEntries=387
PokemonData=&H1FEC18
AbilityNames=&H1FA248
NumberOfAbilities=78
Pointer2PointersToMapBanks=&H53324
MapLabelData=&H3E73C8
NumberOfMapLabels=88
PokemonFrontSprites=&H1E8354
PokemonBackSprites=&H1E97F4
PokemonNormalPal=&H1EA5B4
PokemonShinyPal=&H1EB374
IconPointerTable=&H3BBD20
IconPalTable=&H3BC400
CryTable=&H452590
FootPrintTable=&H3B4EE4
PokemonAttackTable=&H207BC8
PokemonEvolutions=&H203B68
TMHMCompatibility=&H1FD0F0
EnemyYTable=&H1E7C74
PlayerYTable=&H1E9114
EnemyAltitudeTable=&H1ECB14
AttackData=&H1FB12C
ContestMoveData=&H3CF594
ContestMoveEffectData=&H3D00AC
AttackDescriptionTable=&H3C09D8
AbilityDescriptionTable=&H
StarterPokemon=&H3F76C4
StarterPokemonLevel=&H821A8
StarterEncounterPokemon=&HB8EC
StarterEncounterPokemonLevel=&HB8FA
AttackAnimationTable=&H
IconPals=&HE966D8
__________________

Last edited by Kurapika; July 22nd, 2013 at 02:39 PM. Reason: Your double post has been automatically merged.
Reply With Quote
Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 09:49 AM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.