The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.

Reply
Click here to go to the first staff post in this thread.  
Thread Tools
  #51    
Old July 19th, 2013, 06:09 AM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Shadowraze View Post
I'll probably add that to the OP tomorrow.
Brilliant I was going to PM you!

I've also got a new animation:

Flame Charge

Spoiler:
00 2D 27 00 97 27 0A 03 0C 0C 08 19 C3 00 C0 03 7D 90 09 08 02 05 00 00 0C 00 06 00 06 00 03 00 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 10 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 F0 FF E8 FF 08 00 64 00 04 0F 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 20 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 E0 FF E8 FF 08 00 64 00 04 0F 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 18 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 E8 FF E8 FF 08 00 64 00 04 1E 02 XX2 YY2 ZZ2 08 02 04 10 00 E8 FF 00 00 64 00 02 XX2 YY2 ZZ2 08 02 04 F0 FF E8 FF 00 00 64 00 04 1E 02 XX2 YY2 ZZ2 08 02 04 14 00 F0 FF 0E 00 50 00 02 XX2 YY2 ZZ2 08 02 04 EC FF F2 FF 10 00 50 00 05 02 9C 4E 3D 08 02 05 00 00 18 00 00 00 00 00 05 00 04 03 19 86 00 3F 02 08 7C 3E 08 03 04 00 00 00 00 01 00 00 00 03 F9 89 09 08 02 05 01 00 06 00 00 00 08 00 01 00 05 04 08 02 84 4E 3D 08 02 03 00 00 00 00 07 00 05 0B 03 0D 08

Offset XX YY ZZ
2D 27 2D 27 D8 C9 3A 08 CC 59 3E 08 00 00 00 00 FC 1C 23 08 21 29 0A 08

Offset XX2 YY2 ZZ2
2D 27 2D 27 C8 C9 3A 08 90 2B 3E 08 00 00 00 00 FC 1C 23 08 ED 29 0A 08
__________________
Reply With Quote
  #52    
Old July 19th, 2013, 08:25 PM
Shadowraze's Avatar
Shadowraze
Love and Peace
 
Join Date: Apr 2013
Location: Philippines
Age: 15
Gender: Male
Nature: Adamant
Send a message via Skype™ to Shadowraze
Quote:
Originally Posted by 11bayerf1 View Post
Brilliant I was going to PM you!

I've also got a new animation:

Flame Charge

Spoiler:
00 2D 27 00 97 27 0A 03 0C 0C 08 19 C3 00 C0 03 7D 90 09 08 02 05 00 00 0C 00 06 00 06 00 03 00 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 10 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 F0 FF E8 FF 08 00 64 00 04 0F 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 20 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 E0 FF E8 FF 08 00 64 00 04 0F 02 XX YY ZZ 08 02 04 00 00 E8 FF 08 00 8C 00 02 XX2 YY2 ZZ2 08 02 04 18 00 E8 FF 08 00 64 00 02 XX2 YY2 ZZ2 08 02 04 E8 FF E8 FF 08 00 64 00 04 1E 02 XX2 YY2 ZZ2 08 02 04 10 00 E8 FF 00 00 64 00 02 XX2 YY2 ZZ2 08 02 04 F0 FF E8 FF 00 00 64 00 04 1E 02 XX2 YY2 ZZ2 08 02 04 14 00 F0 FF 0E 00 50 00 02 XX2 YY2 ZZ2 08 02 04 EC FF F2 FF 10 00 50 00 05 02 9C 4E 3D 08 02 05 00 00 18 00 00 00 00 00 05 00 04 03 19 86 00 3F 02 08 7C 3E 08 03 04 00 00 00 00 01 00 00 00 03 F9 89 09 08 02 05 01 00 06 00 00 00 08 00 01 00 05 04 08 02 84 4E 3D 08 02 03 00 00 00 00 07 00 05 0B 03 0D 08

Offset XX YY ZZ
2D 27 2D 27 D8 C9 3A 08 CC 59 3E 08 00 00 00 00 FC 1C 23 08 21 29 0A 08

Offset XX2 YY2 ZZ2
2D 27 2D 27 C8 C9 3A 08 90 2B 3E 08 00 00 00 00 FC 1C 23 08 ED 29 0A 08
On second thought why not ask fuji to make you the owner of this thread since I don't really have time right now. (I don't really know when I'll be back to rom hacking) teehee
__________________
Reply With Quote
  #53    
Old July 20th, 2013, 06:41 PM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by Shadowraze View Post
On second thought why not ask fuji to make you the owner of this thread since I don't really have time right now. (I don't really know when I'll be back to rom hacking) teehee
That's a shame to hear! Oh well I'll ask. I wish you the best with your various other projects, and school etc.
__________________
Reply With Quote
  #54    
Old October 5th, 2013, 03:13 AM
daniilS's Avatar
daniilS
busy trying to do stuff not done yet
 
Join Date: Aug 2013
Age: 15
Gender: Male
I have made a simple script that swaps the defense and special defense stats. This can be used for the moves psystrike, psyshock, secret sword, and custom moves (f.e. physical doing special damage). Here it is, in BSP form:
Spoiler:

Code:
#dynamic 0x720000
#freespacebyte 0xFF

#include moves.bsh

#org @start
attackcanceler
accuracycheck 0x1D695E 0x0
call @swapphysicalspecialdefence
attackstring
ppreduce
calculatedamage
attackanimation
waitanimation
cmd5c 0x0
waitstate
datahpupdate 0x0
graphicalhpupdate 0x0
critmessage
waitmessage 0x40
resultmessage
waitmessage 0x40
call @swapphysicalspecialdefence
goto 0x1D6947

@swapphysicalspecialdefence
copyarray 0x020247DC @fourbytesoffreespace 2
copyarray 0x020247DA 0x020247DC 2
copyarray @fourbytesoffreespace 0x020247DA 2
copyarray 0x02024840 @anotherfourbytesoffreespace 2
copyarray 0x0202483E 0x02024840 2
copyarray @anotherfourbytesoffreespace 0x0202483E 2
return
__________________

Thanks to JPAN, Jambo51, Shiny Quagsire and knizz for teaching me almost everything I know about hacking, through tutorials or in person.

Last edited by daniilS; October 5th, 2013 at 03:26 AM. Reason: Forgot about double battles. Fixed now.
Reply With Quote
  #55    
Old October 5th, 2013, 08:17 AM
MrDollSteak's Avatar
MrDollSteak
Formerly known as 11bayerf1
 
Join Date: Dec 2008
Location: Hong Kong
Age: 19
Gender: Male
Quote:
Originally Posted by daniilS View Post
I have made a simple script that swaps the defense and special defense stats. This can be used for the moves psystrike, psyshock, secret sword, and custom moves (f.e. physical doing special damage). Here it is, in BSP form:
Spoiler:

Code:
#dynamic 0x720000
#freespacebyte 0xFF

#include moves.bsh

#org @start
attackcanceler
accuracycheck 0x1D695E 0x0
call @swapphysicalspecialdefence
attackstring
ppreduce
calculatedamage
attackanimation
waitanimation
cmd5c 0x0
waitstate
datahpupdate 0x0
graphicalhpupdate 0x0
critmessage
waitmessage 0x40
resultmessage
waitmessage 0x40
call @swapphysicalspecialdefence
goto 0x1D6947

@swapphysicalspecialdefence
copyarray 0x020247DC @fourbytesoffreespace 2
copyarray 0x020247DA 0x020247DC 2
copyarray @fourbytesoffreespace 0x020247DA 2
copyarray 0x02024840 @anotherfourbytesoffreespace 2
copyarray 0x0202483E 0x02024840 2
copyarray @anotherfourbytesoffreespace 0x0202483E 2
return
This is very useful! How much testing have you done?
My main concern is whether it'll work for double battles?
ie. If you were to target the second opponent's pokemon,
or your own pokemon would it still work?
__________________
Reply With Quote
  #56    
Old October 5th, 2013, 10:24 AM
DoesntKnowHowToPlay's Avatar
DoesntKnowHowToPlay
some loser
 
Join Date: Jan 2012
You're either missing the player's pokemon or the second set of mons in double battles. Also it appears to do nothing to stat mods which is a big deal, Psyshock is supposed to get you around the target's Calm Mind boosts.

Also I'm pretty sure the AI would run damage calcs thinking it's doing special damage and use it horribly wrong. This sort of thing should probably be handled with assembly instead (don't ask me how to do it as imo the move is dumb)
__________________

Yet Another Fire Red Hack

Physical/Special Split
Reply With Quote
  #57    
Old October 5th, 2013, 11:39 AM
daniilS's Avatar
daniilS
busy trying to do stuff not done yet
 
Join Date: Aug 2013
Age: 15
Gender: Male
Quote:
Originally Posted by DoesntKnowHowToPlay View Post
You're either missing the player's pokemon or the second set of mons in double battles. Also it appears to do nothing to stat mods which is a big deal, Psyshock is supposed to get you around the target's Calm Mind boosts.

Also I'm pretty sure the AI would run damage calcs thinking it's doing special damage and use it horribly wrong. This sort of thing should probably be handled with assembly instead (don't ask me how to do it as imo the move is dumb)
I have indeed forgotten the player's pokemon. (It will probably never be used also.) I'm looking at how to swap stat changes, will add both soon. (Probably tomorrow). And I actually really like psystrike because it gives Mewtwo a big boost against opponents otherwise undefeatable.

And again, you're right, but I don't have much asm skills yet. This is an incomplete solution, but it can be useful.
__________________

Thanks to JPAN, Jambo51, Shiny Quagsire and knizz for teaching me almost everything I know about hacking, through tutorials or in person.
Reply With Quote
  #58    
Old October 7th, 2013, 06:57 AM
LCCoolJ95's Avatar
LCCoolJ95
Limited Capacity
 
Join Date: May 2009
Location: The World That Never Was
Age: 19
Gender: Male
Nature: Naive
I would really love if there was some way to have these codes converted and ported into a Ruby rom, ready to be used
__________________
"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
  #59    
Old October 25th, 2013, 07:54 PM
bcrobert's Avatar
bcrobert
Lazy Antagonist
 
Join Date: Apr 2011
Gender: Male
Nature: Quirky
Are the codes actually not usable in R/S/E or is it just because of the repointing process at the beginning? Like, let's say I do all of the necessary repoints/edits, with the offsets corrected for the version, and then copy one of these codes into the game. Would it work or do these codes point to specific places in the ROM instead of just ID values that are shared between 3rd gen games?

The reason I ask is that I thought the tables for move data, effect data, animation data etc should be identical but placed at different locations. It's not like I won't make my own move effects and animations if I need to, but I'd like to know if there's a reasonable way to port these before spending too much free time splicing moves.

EDIT. Implied, but if this was a stupid question I apologize.
__________________

Last edited by bcrobert; October 25th, 2013 at 08:00 PM.
Reply With Quote
  #60    
Old December 10th, 2013, 03:12 AM
GlaciaTaso's Avatar
GlaciaTaso
 
Join Date: Aug 2013
Gender: Male
Thank you very much.
really helpful
Reply With Quote
  #61    
Old December 20th, 2013, 01:21 PM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Worry Seed:
Spoiler:

#dynamic 0x128a8d0
#freespacebyte 0xFF

#include moves.bsh

#org @start
attackcanceler
accuracycheck 0x81D695E 0x0
jumpifbyte 0x0 0x02023d6f 0x2 @op2
jumpifbyte 0x0 0x02023d6f 0x3 @op3
setbyte 0x2023C5C 0xf
goto @end

#org @end
attackstring
ppreduce
attackanimation
waitanimation
end

#org @op2
setbyte 0x2023cb4 0xf
goto @end

#org @op3
setbyte 0x2023d0c 0xf
goto @end
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here

Reply With Quote
  #62    
Old December 24th, 2013, 02:19 AM
Spherical Ice's Avatar
Spherical Ice
Community Supporter
 
Join Date: Nov 2007
Location: UK
Send a message via Skype™ to Spherical Ice
While not a Gen 5/4 move, this animation might be useful for others who are adding Moonblast.


Spoiler:
00 D2 27 00 D3 27 0C 00 10 02 24 7B 3E 08 02 05 01 00 01 00 00 00 10 00 00 00 05 02 34 37 3E 08 02 02 78 00 20 00 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 1E 02 64 37 3E 08 28 02 F4 00 00 00 04 14 03 C1 5F 0A 08 02 00 05 00 B3 27 19 B6 00 C0 1F 39 CF 0D 08 07 C1 00 C0 FF 3F 00 03 00 04 00 00 00 0F 00 0E D4 0D 1D 08 0E D4 0D 1D 08 03 05 97 09 08 05 05 00 00 06 00 00 08 04 00 01 00 03 DD 9B 0B 08 02 06 04 00 02 00 02 00 00 00 0C 00 5F 7E 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 05 04 01 08 82 06 10



There's also this version, which I think looks better, but I can't get it to work without freezing.
Spoiler:
00 D2 27 00 D3 27 0C 00 10 02 24 7B 3E 08 02 05 01 00 01 00 00 00 10 00 00 00 05 02 34 37 3E 08 02 02 78 00 20 00 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 1E 02 64 37 3E 08 28 02 F4 00 00 00 00 B3 27 19 B6 00 C0 1F 39 CF 0D 08 07 C1 00 C0 FF 3F 00 03 00 04 00 00 00 0F 00 0E D4 0D 1D 08 0E D4 0D 1D 08 03 05 97 09 08 05 05 00 00 06 00 00 08 04 00 01 00 03 DD 9B 0B 08 02 06 04 00 02 00 02 00 00 00 0C 00 5F 7E 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 05 04 01 00 00 04 1E 02 64 37 3E 08 28 02 F4 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 1E 02 64 37 3E 08 28 02 F4 15 17


edit
I've also got Draco Meteor working.



Spoiler:
00 F9 27
00 WW 28
00 97 27
1B C9 00 C0 3F 03 00
14 10 17
05 02 ZZ YY XX 08 83 05 D0 FF C0 FF 28 00 10 00 1F 00 04
05 02 ZZ YY XX 08 83 05 90 FF C0 FF 38 00 28 00 1F 00 04
05 02 ZZ YY XX 08 83 05 90 FF C0 FF 18 00 18 00 1F 00 04
28 02 ZZ YY XX 08 83 05 B0 FF C0 FF 20 00 20 00 1F 00 04
14 19 74 00 3F 02 08 7C 3E 08 83
04 00 00 00 00 01 00 01 00 03 1D 8B 09 08
02 05 01 00 05 00 00 00 14 00 01 00 05 04 0A 15 17 05 08

where WW = the particle ID for the 16x16 rock sprite and at the offset XXYYZZ there is the following:

WW 28 WW 28 D0 C9 3A 08 F0 1C 23 08 00 00 00 00 FC 1C 23 08 1D 32 0E 08 WW 28 WW 28 D0 C9 3A 08 F0 1C 23 08 00 00 00 00 FC 1C 23 08 C5 9B 0A 08 0A 28 0A 28 E0 C9 3A 08 F0 1C 23 08 00 00 00 00 FC 1C 23 08 D1 34 0E 08 F0 27 F0 27 D8 C9 3A 08 F0 1C 23 08 00 00 00 00 FC 1C 23 08 85 3E 0E 08 00 00 04 00 40 00 04 00

(the 28s following WW should be 27 if you are using a particle from the first table. see MrDollSteak's tutorial on particles for more info)
__________________

Last edited by Spherical Ice; January 2nd, 2014 at 03:36 AM.
Reply With Quote
  #63    
Old January 8th, 2014, 09:48 PM
Tlachtli's Avatar
Tlachtli
Crit happens.
 
Join Date: Jan 2012
Location: Faraway place
Age: 23
Gender: Male
Nature: Modest
Quote:
Originally Posted by Spherical Ice View Post
There's also this version, which I think looks better, but I can't get it to work without freezing.
Spoiler:
00 D2 27 00 D3 27 0C 00 10 02 24 7B 3E 08 02 05 01 00 01 00 00 00 10 00 00 00 05 02 34 37 3E 08 02 02 78 00 20 00 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 1E 02 64 37 3E 08 28 02 F4 00 00 00 00 B3 27 19 B6 00 C0 1F 39 CF 0D 08 07 C1 00 C0 FF 3F 00 03 00 04 00 00 00 0F 00 0E D4 0D 1D 08 0E D4 0D 1D 08 03 05 97 09 08 05 05 00 00 06 00 00 08 04 00 01 00 03 DD 9B 0B 08 02 06 04 00 02 00 02 00 00 00 0C 00 5F 7E 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 05 04 01 00 00 04 1E 02 64 37 3E 08 28 02 F4 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 1E 02 64 37 3E 08 28 02 F4 15 17
I took a stab at making your second one work, and I think it came out pretty well:

Moonblast:
Spoiler:

00 D2 27 00 D3 27 00 B3 27 0C 00 10 02 24 7B 3E 08 02 05 01 00 01 00 00 00 10 00 00 00 05 02 34 37 3E 08 02 02 78 00 20 00 03 49 60 07 08 03 05 00 00 10 00 10 00 00 00 01 00 19 CC 00 00 04 64 19 B6 00 C0 1F 39 CF 0D 08 07 C1 00 C0 FF 3F 00 03 00 04 00 00 00 0F 00 0E D4 0D 1D 08 0E D4 0D 1D 08 03 05 97 09 08 05 05 00 00 06 00 00 08 04 00 01 00 03 DD 9B 0B 08 02 06 04 00 02 00 02 00 00 00 0C 00 5F 7E 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 0E D4 0D 1D 08 04 14 03 C1 5F 0A 08 02 00 05 08


Edit 3: I just realized this thread is supposed to be FireRed only I took out the Emerald animations, maybe I'll repost them somewhere else. I don't have any plans to port them to FireRed though.
__________________
Pokemon Sigma Σmerald:

A Gen 3 remake de-make, (soon to be) featuring many Gen VI mechanics

Last edited by Tlachtli; February 3rd, 2014 at 03:51 PM.
Reply With Quote
  #64    
Old January 17th, 2014, 08:16 AM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Here is the "Flame Burst":
Spoiler:

______________________
#dynamic 0xXXXXXXXX
#freespacebyte 0xFF

#include moves.bsh

#org @start
jumpifhalfword 0x1 0x2023D4A 0x39 @demange
jumpifspecialstatusflag 0x0 0x40000 0x1 @demange
orword 0x2023DD0 0x40000
setbyte 0x2023FD2 0x2

#org @demange
attackcanceler
accuracycheck 0x81D695E 0x0
attackstring
ppreduce
critcalc
cmd5
cmd6
cmd7
attackanimation
waitanimation
missmessage
cmd5c 0x0
waitstate
graphicalhpupdate 0x0
datahpupdate 0x0
critmessage
waitmessage 0x40
resultmessage
waitmessage 0x40
seteffectwithchancetarget
faintpokemon 0x0 0x0 0x8000000
setbyte 0x2023FD8 0x0
cmd49 0x0 0x0
setbyte 0x2023D50 0x0
setbyte 0x2FF7D20 0x1
attackcanceler
setbyte 0x2FF7D20 0x0
jumpifbyte 0x0 0x2023D50 0x0 @end
pause 0xA
jumpifability 0x0 0x12 @end
jumpifability 0x0 0x62 @end
graphicalhpupdate 0x0
datahpupdate 0x0
printstring 0x184
waitmessage 0x40
faintpokemon 0x0 0x0 0x8000000
setbyte 0x2023FD8 0x0
#org @end
end
_________________________________

But first, I must show how it is possible to apply a new effect in the system.

You may have noticed that I used a very sinister method at this code.
Well, go to a table in 0x8025011C
This table is responsible for commands like "attackcanceler"
Leave in the first Halfworld an offset other to a free memory space +1.
In the free space that you chose, you must pass this routine that i will show:
_________________________________
.align 2
.thumb

main:
PUSH {R1-R2}
LDR R1, =0x02FF7D20
LDRH R1, [R1]
LDR R2, =0x08770FC0
MOV R0, #0x4
MUL R1, R0, R1
ADD R1, R2, R1
LDR R1, [R1]
MOV R0, R1
POP {R1-R2}
BX R0



________________________________
That code can read one byte at 0x2FF7D20 (or any other offsets)
and sum a number in a table that must be in "0xXXXXXX".
""setbyte 0x2FF7D20 0x1
attackcanceler
setbyte 0x2FF7D20 0x0""
________________________________

This table must to have in your first Halfworld these bytes:
D7 61 01 08
If 0x2FF7D20 is 0x0, run to the "attackcanceler".

So do not forget to always leave the "setbyte 0x2FF7D20 0x0"
________________________________
type in table "XXXXXX", an offset to a new routine ... here:

.align 2
.thumb

main:
push {r1-r3}
ldr r1, =0x2023Bcc
ldr r1, [r1]
cmp r1, #0x2
beq end
ldr r1, =0x02023d6c
ldrb r1, [r1]
ldr r2, =0x02023d6c
cmp r1, #0x2
beq zero
cmp r1, #0x3
beq one
cmp r1, #0x0
beq two
cmp r1, #0x1
beq three
end:
pop {r1-r3}
PUSH {LR}
LDR R1, =0x2023D74
LDR R0, [R1]
ADD R0, #0x1
STR R0, [R1]
POP {R0}
BX R0

zero:
mov r1, #0x0
strb r1, [r2]
ldr r1, =0x2023C10
b divide
one:
mov r1, #0x1
strb r1, [r2]
ldr r1, =0x2023C68
b divide
two:
mov r1, #0x2
strb r1, [r2]
ldr r1, =0x2023CC0
b divide
three:
mov r1, #0x3
strb r1, [r2]
ldr r1, =0x2023D18
b divide
divide:
mov r3, #0x4
sub r3, r1, r3
ldrh r3, [r3]
cmp r3, #0x0
ldrh r1, [r1]
beq end
mov r3, #0x0
divid2: add r3, #0x1
mov r2, #0x10
mul r2, r3, r2
cmp r2, r1
blo divid2
cmp r3, #0x1
beq end2
sub r3, #0x1
end2: ldr r1, =0x02023D50
strh r3, [r1]
b end
_______________________________________

this will make possible the "FlameBurstCalculationDemageCommand"!!
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here


Last edited by BugMania; May 20th, 2014 at 05:44 PM.
Reply With Quote
  #65    
Old January 19th, 2014, 12:33 AM
GOLDstandard's Avatar
GOLDstandard
GoldStandard
 
Join Date: Jul 2013
Location: California
Gender: Male
Nature: Bold
wow great anims tlachti, play rough looks fantastic
__________________
Pokemon is fun
Reply With Quote
  #66    
Old January 25th, 2014, 11:38 PM
Leafbarrett's Avatar
Leafbarrett
 
Join Date: Mar 2009
Age: 22
Quote:
Originally Posted by Tlachtli View Post
*snip*
Edit 2:
More Fairy move animations! Better quality GIFs! I used the Japanese names for some of the moves in-game, because the English ones were too long.
*snip*
At least one person has the decency to make codes for Emerald... It seems like everyone just kinda ignores the fact that Emerald exists at all and don't bother even trying to make things for it.

EDIT: So after stumbling through the tutorial made for Fire Red and doing a lot of messing with pointers and praying, I managed to get a functional Flare Blitz effect for Emerald. To save the other poor saps who might be trying to do this stuff the effort:
00 01 5E 8A 2D 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 35 43 02 02 E6 15 2E 35 43 02 02 03 15 28 47 8A 2D 08

EDIT2: ****ing miracles, man, how do they work. I got Doesnt's Hammer Arm to work in Emerald. I think. It does the stat drop correctly under normal circumstances, at least.
Spoiler:
#org 0xE4A98C
attackcanceler
accuracycheck 0x82D8A5E 0x0
attackstring
ppreduce
calculatedamage
attackanimation
waitanimation
missmessage
cmd5c 0x0
waitstate
graphicalhpupdate 0x0
datahpupdate 0x0
critmessage
waitmessage 0x40
resultmessage
waitmessage 0x40
jumpifbyte 0x4 0x2023DCC 0x29 0x82D8A47
jumpifstat 0x1 0x0 0x3 0x0 0x82D8A47
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x8 0x9
setbyte 0x202448E 0x93
statbuffchange 0x81 true 0x82D8A47
printfromtable 0x85CC89C
waitmessage 0x40
goto 0x82D8A47

Last edited by Leafbarrett; January 31st, 2014 at 09:47 AM.
Reply With Quote
  #67    
Old February 1st, 2014, 03:40 PM
Shadowraze's Avatar
Shadowraze
Love and Peace
 
Join Date: Apr 2013
Location: Philippines
Age: 15
Gender: Male
Nature: Adamant
Send a message via Skype™ to Shadowraze
Ok, guys it seems I'm back into business. So I'll be adding some of the post in the main thread once I finished the things that I needed to do today.
__________________
Reply With Quote
  #68    
Old February 5th, 2014, 05:15 AM
Leafbarrett's Avatar
Leafbarrett
 
Join Date: Mar 2009
Age: 22
Quote:
Originally Posted by Shadowraze View Post
Ok, guys it seems I'm back into business. So I'll be adding some of the post in the main thread once I finished the things that I needed to do today.
Do you plan on making, like, an Emerald section?
Reply With Quote
  #69    
Old February 5th, 2014, 07:54 AM
LCCoolJ95's Avatar
LCCoolJ95
Limited Capacity
 
Join Date: May 2009
Location: The World That Never Was
Age: 19
Gender: Male
Nature: Naive
Quote:
Originally Posted by Leafbarrett View Post
Do you plan on making, like, an Emerald section?

Spoiler:



But yeah, in all seriousness, it would be awesome if Emerald had some representation for new move animations and effects.
__________________
"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
  #70    
Old February 5th, 2014, 01:27 PM
Leafbarrett's Avatar
Leafbarrett
 
Join Date: Mar 2009
Age: 22
Speaking of that, maybe I'm not as wholly incompetent as I make myself out to be. Only mostly.

Focus Blast (Emerald)
14 09 17 03 61 76 11 08 05 04 00 F7 00 00 01 00 FF FF 00 E4 27 00 10 28 00 11 28 0A 02 28 00 0C 0C 08 02 EC 5F 59 08 82 01 00 00 19 8C 00 C0 04 14 02 D8 72 59 08 02 04 04 00 01 00 B4 00 01 00 03 45 92 15 08 05 02 EA 00 00 00 04 28 02 04 60 59 08 29 04 C8 00 60 00 01 00 78 00 04 08 02 04 60 59 08 29 04 14 00 F8 00 04 00 70 00 04 08 02 04 60 59 08 29 04 82 00 A0 00 02 00 68 00 04 08 02 04 60 59 08 29 04 A0 00 C0 00 00 00 60 00 04 08 02 04 60 59 08 29 04 3C 00 20 01 03 00 58 00 04 4A 02 1C 60 59 08 83 01 00 00 19 C1 00 C0 04 10 03 D1 52 0D 08 02 05 01 00 08 00 00 00 10 00 01 00 19 8D 00 3F 05 0B 02 0D 04 01 0E DD 7C 2D 08 08
Reply With Quote
  #71    
Old February 8th, 2014, 05:19 PM
robin22gongon's Avatar
robin22gongon
 
Join Date: Sep 2012
Location: Want to know? VM me.
Age: 16
Gender: Male
Nature: Quirky
Send a message via Windows Live Messenger to robin22gongon
Uhh... Hey guys! I have just one little suggestion. Why don't we put gifs of the move animations in the first post? It would surely be a great showcase and at least a preview of what hackers can expect.
__________________
LET'S PARTY!
Reply With Quote
  #72    
Old February 22nd, 2014, 09:24 PM
Tlachtli's Avatar
Tlachtli
Crit happens.
 
Join Date: Jan 2012
Location: Faraway place
Age: 23
Gender: Male
Nature: Modest
I re-did Growth effect from the first post and brought the animation more in-line with the other multi-stat moves (I based my script off of the one for Dragon Dance). It'll now show the single grey stat animation when raising both stats, or the appropriate single-stat animation when only raising Attack or Sp Atk. It will still sharply raise stats in sunlight as well.



Emerald:
Spoiler:
Code:
#dynamic 0x08000000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 weather 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @notsunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @sunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2024488 0x0
cmd49 0x0 0x0
end


FireRed:

Spoiler:
Code:
#dynamic 0x08000000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 weather 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x2023FDF 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @notsunnyboostspatk
printfromtable 0x83FE57C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x83FE57C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x2023FDF 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @sunnyboostspatk
printfromtable 0x83FE57C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x83FE57C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2023FD8 0x0
cmd49 0x0 0x0
end
__________________
Pokemon Sigma Σmerald:

A Gen 3 remake de-make, (soon to be) featuring many Gen VI mechanics
Reply With Quote
  #73    
Old February 23rd, 2014, 08:01 AM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
This is the Captivate effect :
Spoiler:

#org @start
setbyte 0x2023FDE 0xA4
goto 0x929C98B

#org 0x129C98B
attackcanceler
jumpifsecondarystatus 0x0 0x1000000 0x81D7DF0
accuracycheck 0x81D695E 0x0
attackstring
ppreduce
setbyte 0x2FF7D20 0xYY
setbyte 0x2FF7D24 0x0
attackcanceler
tryinfatuatetarget @next

#org @next
setbyte 0x2FF7D20 0xYY
setbyte 0x2FF7D24 0x1
attackcanceler
jumpifbyte 0x0 0x2FF7D24 0x1 @fail
setbyte 0x2FF7D24 0x0
statbuffchange 0x1 0x81D6C5D
jumpifbyte 0x3 0x2023E87 0x2 0x81D6C4B
jumpifbyte 0x0 0x2023E87 0x3 0x81D6C5D
pause 0x20
goto 0x81D6C55

#org @fail
pause 0x20
printstring 0xE5
waitmessage 0x40
goto 0x81D694E

And it is the assembly routine as I showed at my last post:

.align 2
.thumb

main: push {r1-r3}
ldr r0, =0x02023C36
ldr r1, =0x02023D6C
ldrb r1, [r1]
mov r2, #0x58
mul r1, r2, r1
add r0, r1, r0
ldr r1, =0x02FF7D24
add r3, r1, #0x2
ldrb r2, [r1]
cmp r2, #0x1
beq Pick
ldrb r0, [r0]
strb r0, [r3]
b end
Pick: ldrb r2, [r0]
ldrb r3, [r3]
strb r3, [r0]
cmp r2, #0x0
beq end
mov r0, #0x0
strb r0, [r1]
end: ldr r0, =0x02FF7d20
mov r1, #0x0
strb r1, [r0]
POP {R1-R3}
PUSH {LR}
LDR R1, =0x2023D74
LDR R0, [R1]
ADD R0, #0x1
STR R0, [R1]
POP {R0}
BX R0
-------------------------------------
Ok, now lets go at an little explication... At setbyte 0x2FF7D20 0xYY ... attackcanceler, you shoud change YY to your table number... Of mode that I show at the my last post.

My routine can change the target's love location and devolve if the byte 0x2FF7D24 are with the number 0x1

Of this mode, is possible use a attracts incantation if the pokemon are with love stats without possibility of remove it!


This is the captivate animation:
Spoiler:


00 E2 27 00 56 27 05 0A 02 0C 0E 05 05 03 F9 A7 0B 08 0A 05 01 00 0A 00 00 00 03 00 FF 7F 03 7D 90 09 08 02 05 00 00 08 00 01 00 02 00 03 00 02 28 C9 29 09 03 02 00 00 24 00 04 03 02 28 C9 29 09 03 02 F0 FF 2C 00 1C DA 00 C0 03 06 02 28 C9 29 09 03 02 E5 FF 18 00 04 08 02 28 C9 29 09 03 02 0C 00 0D 00 04 03 02 28 C9 29 09 03 02 10 00 2C 00 0E A8 C8 29 09 05 0B 02 05 0E 10 CC 29 09 03 F9 A7 0B 08 0A 05 01 00 03 00 03 00 00 00 FF 7F 05 0B 03 0D 08

02 28 C9 29 09:
E2 27 E2 27 B0 CB 3A 08 5C CA 29 09 00 00 00 00 FC 1C 23 08 61 98 0A 08

5C CA 29 09:
60 CA 29 09 08:
00 1A 00 04 00 10 00 00 00 00 00 FF FF 00 00

0E A8 C8 29 09:
02 10 C9 29 09 02 04 07 00 00 00 00 00 01 00 04 06 02 10 C9 29 09 02 04 0F 00 F8 FF 00 00 01 00 04 05 02 10 C9 29 09 02 04 0E 00 14 00 00 00 01 00 04 07 02 10 C9 29 09 02 04 FA FF F1 FF 00 00 01 00 04 06 02 10 C9 29 09 02 04 04 00 0A 00 00 00 01 00 04 06 02 10 C9 29 09 02 04 FA FF 12 00 00 00 01 00 0F

02 10 C9 29 09:
56 27 56 27 B0 CB 3A 08 D0 6E 3E 08 00 00 00 00 FC 1C 23 08 D1 31 0B 08


0E 10 CC 29 09:
04 01 0A 03 05 2A 01 0C 0E 05 05 1C C1 00 C0 02 05 03 7D 90 09 08 02 05 01 00 04 00 01 00 01 00 04 00 02 F4 CB 29 09 02 04 01 00 E8 FF 1A 00 02 00 04 04 02 F4 CB 29 09 02 04 01 00 0E 00 1C 00 01 00 04 04 02 F4 CB 29 09 02 04 01 00 FB FF 0A 00 02 00 04 04 02 F4 CB 29 09 02 04 01 00 1C 00 1A 00 03 00 04 04 02 F4 CB 29 09 02 04 01 00 F4 FF 00 00 01 00 0F

02 F4 CB 29 09:
E2 27 E2 27 B0 CB 3A 08 5C CA 29 09 00 00 00 00 FC 1C 23 08 D9 5A 0A 08


And the resources:
Spoiler:

Fairys atacar.png (970 Bytes) Image "0xE2 27"

swift2.wav (29.7 KB) sound 0xDA

Magic2.wav (32.9 KB) sound 0xC1

You can see a video of the animation in this page:
http://www.youtube.com/watch?v=x_qinL1_S9Q
Attached Images
File Type: png Fairys attack.png‎ (970 Bytes, 272 views) (Save to Dropbox)
Attached Files
File Type: wav swift2.wav‎ (29.7 KB, 6 views) (Save to Dropbox)
File Type: wav Magic2.wav‎ (32.9 KB, 3 views) (Save to Dropbox)
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here


Last edited by DrFuji; February 26th, 2014 at 02:05 AM. Reason: Merging consecutive posts
Reply With Quote
  #74    
Old March 13th, 2014, 03:46 AM
Leafbarrett's Avatar
Leafbarrett
 
Join Date: Mar 2009
Age: 22
Quote:
Originally Posted by Tlachtli View Post
I re-did Growth effect from the first post and brought the animation more in-line with the other multi-stat moves (I based my script off of the one for Dragon Dance). It'll now show the single grey stat animation when raising both stats, or the appropriate single-stat animation when only raising Attack or Sp Atk. It will still sharply raise stats in sunlight as well.



Emerald:
Spoiler:
Code:
#dynamic 0x08000000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 weather 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @notsunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @sunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2024488 0x0
cmd49 0x0 0x0
end


FireRed:

Spoiler:
Code:
#dynamic 0x08000000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 weather 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x2023FDF 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @notsunnyboostspatk
printfromtable 0x83FE57C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x83FE57C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x2023FDF 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 multistringchooser 0x2 @sunnyboostspatk
printfromtable 0x83FE57C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 multistringchooser 0x2 @end
printfromtable 0x83FE57C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2023FD8 0x0
cmd49 0x0 0x0
end
You put one too many zeroes in your #dynamic command.

EDIT: Uhhh... BSP doesn't seem to like using dynamic commands for Emerald. The script got mangled when I tried to decompile it after compiling it. I would post the version I made with hardcoded pointers, but that wouldn't end well for most people, would it?

Also, the shortcut words "weather" and "multistringchooser" are broken for Emerald, unless there's an updated version I'm not aware of.
Replace "multistringchooser" with 0x2024337.
Replace "weather" with 0x20243CC.
Like this:
Emerald only:
Spoiler:
Code:
#dynamic 0x0800000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 0x20243CC 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 0x2024337 0x2 @notsunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 0x2024337 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 0x2024337 0x2 @sunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 0x2024337 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2024488 0x0
cmd49 0x0 0x0
end

Last edited by Leafbarrett; March 13th, 2014 at 04:48 AM. Reason: oh god huge problem; fix weather and multistringchooser
Reply With Quote
  #75    
Old April 8th, 2014, 06:17 PM
Tlachtli's Avatar
Tlachtli
Crit happens.
 
Join Date: Jan 2012
Location: Faraway place
Age: 23
Gender: Male
Nature: Modest
Quote:
Originally Posted by Leafbarrett View Post
You put one too many zeroes in your #dynamic command.

EDIT: Uhhh... BSP doesn't seem to like using dynamic commands for Emerald. The script got mangled when I tried to decompile it after compiling it. I would post the version I made with hardcoded pointers, but that wouldn't end well for most people, would it?

Also, the shortcut words "weather" and "multistringchooser" are broken for Emerald, unless there's an updated version I'm not aware of.
Replace "multistringchooser" with 0x2024337.
Replace "weather" with 0x20243CC.
Like this:
Emerald only:
Spoiler:
Code:
#dynamic 0x0800000

#org @start
jumpifabilitypresent 0xD @notsunny
jumpifabilitypresent 0x4D @notsunny
jumpifhalfword 0x4 0x20243CC 0x60 @sunny
goto @notsunny

#org @notsunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @notsunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @notsunnyboostattack

#org @notsunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x11
statbuffchange 0x1 TRUE @notsunnyboostspatk
jumpifbyte 0x0 0x2024337 0x2 @notsunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @notsunnyboostspatk

#org @notsunnyboostspatk
setbyte statchange 0x14
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 0x2024337 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @sunny
attackcanceler
attackstring
ppreduce
jumpifstat 0x1 0x3 0x1 0xC @sunnyboostattack
jumpifstat 0x1 0x0 0x4 0xC @statsmaxed
goto @sunnyboostattack

#org @sunnyboostattack
attackanimation
waitanimation
setbyte 0x202448F 0x0
playstatchangeanimation 0x1 0x12 0x0
setbyte statchange 0x21
statbuffchange 0x1 TRUE @sunnyboostspatk
jumpifbyte 0x0 0x2024337 0x2 @sunnyboostspatk
printfromtable 0x85CC89C
waitmessage 0x40
goto @sunnyboostspatk

#org @sunnyboostspatk
setbyte statchange 0x24
statbuffchange 0x1 TRUE @end
jumpifbyte 0x0 0x2024337 0x2 @end
printfromtable 0x85CC89C
waitmessage 0x40
goto @end

#org @statsmaxed
pause 0x20
orbyte outcome 0x20
printstring 0x19
waitmessage 0x40
goto @end

#org @end
setbyte 0x2024488 0x0
cmd49 0x0 0x0
end
For keywords like weather and multistringchooser to work you need to have the BPEE section of BSP's .ini filled in, forgot to mention that. Here it is, since it isn't included with BSP:
Code:
[BPEE]
baselocationbattledata=0x02024084
baselocationpartydata=0x02024744
attacker=0x0202420B
target=0x0202420C
attackerpartner=0x0202420D
targetpartner=0x0202420E
move=0x20241EA
battletype=0x02022FEC
terrainbyte=0x02022FF0
weather=0x20243CC
weatherturns=0x020243F8
numberofpokemon=0x0202406C
attackdamage=0x20241F0
knockedoffitem=0x02024208
loopcounter=0x02024212
currentposition=0x02024214
outcome=0x0202427C
effectchooser=0x2024335
multistringchooser=0x02024337
damagemultiplier=0x2024482
statchange=0x202448E
MoveEffectTable=0x2D86A8
MoveDataTable=0x31C898
MoveNames=0x31977C
NumberOfMoves=354
NumberOfStrings=0x171
StringTable=0x5CC270
[/BPEE]
Although there was a typo in my earlier post, it wasn't an extra zero; I should have left off the leading 08, since BSP like 6-digit dynamic addresses and not 8-digit ones. So that line should read:
Code:
#freespace 0xFF
#dynamic 0x000000
Or any address you'd want to use for your starting point. Also, declaring the free space as 0xFF seems to help when it doesn't like compiling for Emerald.
__________________
Pokemon Sigma Σmerald:

A Gen 3 remake de-make, (soon to be) featuring many Gen VI mechanics

Last edited by Tlachtli; April 8th, 2014 at 06:30 PM.
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 05:09 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.