- 218
- Posts
- 6
- Years
- Brazil
- Seen yesterday
Dont worry about the new particles, i will be 100% vanilla! I will begin the animation!
Dont worry about the new particles, i will be 100% vanilla! I will begin the animation!
Dark Pulse *fixed*
Spoiler:
14 00 16 03 2D B8 0B 08 05 04 00 00 00 00 00 00 FF FF 00 2D 27 00 C0 27 00 DB 27 00 C0 27 0A 03 03 C9 A7 0A 08 02 01 00 00 02 XX2 YY2 ZZ2 08 03 06 00 00 00 00 00 00 00 00 1F 00 08 00 19 EA 00 C0 02 XX YY ZZ 08 02 04 00 00 1D 00 F4 FF 00 00 02 XX YY ZZ 08 02 04 00 00 F4 FF E3 FF 01 00 04 10 03 C9 A7 0A 08 02 01 00 00 02 XX2 YY2 ZZ2 08 03 06 00 00 00 00 00 00 00 00 1F 00 08 00 19 EA 00 C0 02 XX YY ZZ 08 02 04 00 00 0C 00 E3 FF 01 00 02 XX YY ZZ 08 02 04 00 00 E3 FF F4 FF 00 00 04 10 03 C9 A7 0A 08 02 01 00 00 02 XX2 YY2 ZZ2 08 03 06 00 00 00 00 00 00 00 00 1F 00 08 00 19 EA 00 C0 02 XX YY ZZ 08 02 04 00 00 18 00 E8 FF 01 00 02 XX YY ZZ 08 02 04 00 00 E8 FF E8 FF 00 00 05 0B 03 0E C7 59 1D 08 08
At offset ZZ YY XX
2D 27 C0 27 D8 C9 3A 08 F0 1C 23 08 00 00 00 00 FC 1C 23 08 39 A8 0A 08
at offset ZZ2 YY2 XX2
DB 27 C0 27 C0 CB 3A 08 F0 1C 23 08 00 00 00 00 88 40 3E 08 E9 8E 0A 08
Here are some more animations for Emerald:
Giga Impact:
Spoiler:
![]()
0E E9 A1 2C 08 00 97 27 0A 03 0C 0C 08 19 98 00 C0 02 70 FE 57 08 02 03 06 00 01 00 00 00 05 04 0B 02 70 FE 57 08 02 05 00 00 1A 00 00 00 00 00 05 00 04 06 02 58 73 59 08 04 04 F6 FF 00 00 01 00 00 00 1C 8D 00 3F 0A 02 04 01 02 58 FE 57 08 02 05 01 00 E4 FF 00 00 00 00 03 00 05 03 85 54 0D 08 02 05 01 00 04 00 00 00 0C 00 01 00 05 04 0A 02 58 FE 57 08 02 03 00 00 00 00 06 00 04 05 02 58 FE 57 08 02 03 01 00 00 00 06 00 05 0B 03 0D 08
Rock Climb:
Spoiler:
![]()
14 16 17 03 61 76 11 08 05 04 00 F8 00 00 01 00 FF FF 03 39 49 10 08 02 02 00 00 03 00 04 08 1C A7 00 C0 26 03 05 00 97 27 00 5A 27 00 4A 27 0A 03 28 01 0C 0C 08 03 75 0F 11 08 02 00 05 03 89 63 0D 08 02 05 00 00 01 00 1E 00 01 00 00 06 02 58 73 59 08 83 04 F1 FF 08 00 01 00 01 00 19 7B 00 3F 04 01 19 7B 00 3F 02 58 73 59 08 83 04 FB FF F4 FF 01 00 01 00 04 01 19 7B 00 3F 02 58 73 59 08 83 04 00 00 E0 FF 01 00 01 00 04 01 19 7B 00 3F 02 58 73 59 08 83 04 05 00 CC FF 01 00 01 00 02 70 FE 57 08 02 05 01 00 E6 FF 10 00 01 00 04 00 04 04 03 85 54 0D 08 02 05 01 00 00 00 03 00 06 00 01 00 04 1E 02 58 FE 57 08 02 03 00 00 00 00 06 00 04 04 02 58 FE 57 08 02 03 01 00 00 00 06 00 0B 03 0D 15 16 10 07 FF FF 17 08 03 25 7C 11 08 05 00 21 00 00 00 2F E9 2C 08 21 00 01 00 83 71 2D 08 21 00 02 00 0D 56 2D 08 21 00 03 00 21 B0 2C 08 21 00 04 00 CA 1D 2D 08 21 00 05 00 73 C1 2C 08 21 00 06 00 5F BF 2C 08 21 00 07 00 55 05 2D 08 21 00 08 00 62 98 2C 08 13 09 AF 2C 08
Flame Charge:
Spoiler:
![]()
00 2D 27 0A 03 2A 01 0E 81 55 2D 08 0E 81 55 2D 08 0E 81 55 2D 08 0E 81 55 2D 08 0E 81 55 2D 08 02 70 FE 57 08 02 05 00 00 18 00 00 00 00 00 06 00 04 04 03 AD 51 0D 08 02 05 01 00 05 00 00 00 08 00 01 00 03 99 7B 0A 08 03 05 01 00 1F 00 0C 00 01 00 01 00 19 91 00 3F 0E 18 2D 2D 08 04 07 02 58 FE 57 08 02 03 00 00 00 00 09 00 05 0B 03 08
Fire Fang:
Spoiler:
![]()
00 9B 27 00 97 27 00 2D 27 0A 01 0C 0C 08 19 A1 00 3F 02 80 70 59 08 02 06 00 00 E0 FF 00 00 00 00 33 03 0A 00 02 80 70 59 08 02 06 00 00 20 00 04 00 00 00 CD FC 0A 00 04 0A 02 58 73 59 08 02 04 00 00 00 00 01 00 02 00 03 AD 51 0D 08 05 05 01 00 00 00 04 00 07 00 01 00 05 0B 01 0D 04 01 0E 35 A1 2C 08 0E 35 A1 2C 08 0E 35 A1 2C 08 08
Close Combat:
Spoiler:
![]()
14 07 16 03 61 76 11 08 05 04 00 F7 00 03 01 00 FF FF 00 97 27 00 9F 27 0A 03 0C 0C 08 03 31 58 0D 08 02 05 00 00 14 00 00 00 00 00 04 00 04 04 02 58 73 59 08 02 04 F1 FF 12 00 01 00 00 00 19 7B 00 3F 04 01 03 AD 51 0D 08 02 05 01 00 05 00 00 00 19 00 01 00 02 98 5E 59 08 03 05 F1 FF 12 00 08 00 01 00 00 00 04 03 02 58 73 59 08 02 04 00 00 FC FF 01 00 00 00 19 7B 00 3F 04 01 02 98 5E 59 08 03 05 00 00 FC FF 08 00 01 00 00 00 04 03 02 58 73 59 08 02 04 0F 00 09 00 01 00 00 00 19 7B 00 3F 04 01 02 98 5E 59 08 03 05 0F 00 09 00 08 00 01 00 00 00 04 05 02 58 FE 57 08 02 03 00 00 00 00 05 00 05 0B 03 0D 0E DD 7C 2D 08 08
Focus Blast:
Spoiler:
![]()
14 07 16 03 61 76 11 08 05 04 00 F7 00 03 01 00 FF FF 00 1B 28 00 97 27 03 C9 A5 15 08 05 00 17 0A 00 0C 0C 08 19 C9 00 C0 02 98 68 59 08 29 04 00 00 00 00 00 00 00 00 04 14 03 65 66 11 08 05 05 05 00 02 00 00 00 10 00 FF FF 03 49 68 11 08 05 05 1B 28 02 00 00 00 10 00 FF FF 05 03 49 68 11 08 05 05 97 27 00 00 0C 00 0C 00 00 5C 05 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 04 03 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 04 03 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 04 03 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 04 03 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 04 03 02 A0 73 59 08 83 02 01 00 02 00 03 11 92 15 08 05 02 D7 00 3F 00 05 03 65 66 11 08 05 05 05 00 02 00 10 00 00 00 FF FF 03 DD 52 11 08 05 03 01 00 05 00 0E 00 05 0B 00 0D 0E DD 7C 2D 08 08
Aqua Jet:
Spoiler:
![]()
00 20 28 00 AC 27 19 A2 00 C0 02 90 64 59 08 02 04 00 00 00 00 0D 00 50 01 05 19 E9 00 C0 02 CC 64 59 08 03 01 00 00 0E 8A 65 2D 08 0E 8A 65 2D 08 0E 8A 65 2D 08 0E 8A 65 2D 08 0E 8A 65 2D 08 00 A4 27 00 AB 27 0A 03 0C 0C 08 19 B2 00 3F 02 CC 64 59 08 83 01 01 00 0E E0 65 2D 08 0E E0 65 2D 08 0E E0 65 2D 08 0E E0 65 2D 08 0E E0 65 2D 08 04 0C 0E 02 B1 2C 08 05 2C 00 0B 03 0D 08
Aqua Tail:
Spoiler:
![]()
00 A4 27 00 AB 27 00 9D 27 0A 03 0C 0C 08 03 AD 51 0D 08 05 05 00 00 00 00 02 00 17 00 01 00 04 05 19 8E 00 C0 02 38 52 59 08 02 04 0A 00 0A 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 F1 FF 00 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 14 00 0A 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 00 00 F6 FF 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 F6 FF 0F 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 19 00 14 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 EC FF 14 00 19 00 00 00 04 04 19 8E 00 C0 02 38 52 59 08 02 04 0C 00 00 00 19 00 00 00 05 00 25 28 00 97 27 02 28 FE 57 08 02 02 04 00 06 00 04 04 19 7A 00 3F 02 84 E9 5C 08 82 02 F0 FF F0 FF 04 08 02 8C 72 59 08 02 07 1F 00 05 00 01 00 FF 7F 0A 00 00 00 00 00 02 58 73 59 08 83 04 00 00 00 00 01 00 02 00 19 8B 00 3F 02 70 FE 57 08 02 05 01 00 F4 FF 0A 00 00 00 03 00 02 58 FE 57 08 02 03 00 00 00 00 05 00 04 03 03 85 54 0D 08 02 05 01 00 00 00 03 00 06 00 01 00 04 05 02 58 FE 57 08 02 03 01 00 00 00 06 00 04 0A 05 0B 03 0D 08
Air Slash (I know I didn't use the Slash animation, that's because it looks extremely ugly in Gen 3, and because Cut resembles the DS Air Slash better):
Spoiler:
![]()
0E E5 7C 2D 08 00 9A 27 00 20 28 0A 01 0C 0C 08 19 80 00 3F 02 ZZ YY XX 08 02 03 28 00 E0 FF 00 00 04 05 03 AD 51 0D 08 02 05 01 00 00 00 03 00 0A 00 01 00 05 0B 01 0D 05 0E DD 7C 2D 08 08
At offset XX YY ZZ:
9A 27 20 28 34 4A 52 08 18 2A 59 08 00 00 00 00 A8 C6 2E 08 E1 0A 10 08
Hurricane:
Spoiler:
![]()
0E E5 7C 2D 08 00 19 27 00 97 27 0A 03 28 01 0C 0C 08 19 84 00 3F 02 70 62 59 08 02 02 00 00 F0 FF 03 D9 DE 10 08 05 02 01 00 46 00 05 03 D1 52 0D 08 05 05 01 00 01 00 00 00 07 00 01 00 02 58 73 59 08 02 04 00 00 00 00 01 00 02 00 19 85 00 3F 05 0B 03 0D 0E DD 7C 2D 08 08
Energy Ball:
Spoiler:
![]()
02 74 72 59 08 02 05 01 00 01 00 00 00 04 00 00 00 05 00 C0 27 00 B0 27 04 0F 1F 59 8C 15 08 07 A8 00 C0 FF 3F 00 05 00 05 00 00 00 05 00 02 ZZ YY XX 08 82 03 10 00 10 00 08 00 05 19 9F 00 3F 03 D1 52 0D 08 02 05 01 00 04 00 00 00 08 00 01 00 05 15 17 08
At offset XX YY ZZ:
C0 27 B0 27 74 49 52 08 9C C6 2E 08 00 00 00 00 54 6D 59 08 E1 19 11
Petal Storm:
Spoiler:
![]()
00 AF 27 00 97 27 00 B0 27 00 FE 27 0A 03 0C 0C 08 19 CA 00 C0 03 31 58 0D 08 02 05 00 00 0C 00 06 00 06 00 03 00 02 1C 23 59 08 02 04 00 00 E8 FF 08 00 8C 00 02 34 23 59 08 02 04 10 00 E8 FF 08 00 64 00 02 34 23 59 08 02 04 F0 FF E8 FF 08 00 64 00 04 0F 02 1C 23 59 08 02 04 00 00 E8 FF 08 00 8C 00 02 34 23 59 08 02 04 20 00 E8 FF 08 00 64 00 02 34 23 59 08 02 04 E0 FF E8 FF 08 00 64 00 04 0F 02 1C 23 59 08 02 04 00 00 E8 FF 08 00 8C 00 02 34 23 59 08 02 04 18 00 E8 FF 08 00 64 00 02 34 23 59 08 02 04 E8 FF E8 FF 08 00 64 00 04 1E 02 34 23 59 08 02 04 10 00 E8 FF 00 00 64 00 02 34 23 59 08 02 04 F0 FF E8 FF 00 00 64 00 04 1E 02 34 23 59 08 02 04 14 00 F0 FF 0E 00 50 00 02 34 23 59 08 02 04 EC FF F2 FF 10 00 50 00 05 0E ZZ YY XX 08 03 AD 51 0D 08 05 05 01 00 05 00 00 00 32 00 01 00 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 05 02 58 73 59 08 02 04 00 00 00 00 01 00 00 00 19 88 00 3F 05 0B 03 0D 08
At offset XX YY ZZ:
19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 00 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 00 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 01 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 01 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 02 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 02 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 03 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 03 00 00 00 04 03 0F
At offset CC BB AA:
B0 27 FE 27 34 49 52 08 D0 62 59 08 00 00 00 00 A8 C6 2E 08 45 E0 10 08
Leaf Storm:
Spoiler:
![]()
14 16 17 03 61 76 11 08 05 04 00 F4 00 00 01 00 FF FF 00 AA 27 00 97 27 00 B0 27 0A 03 28 01 0C 0C 08 0E ZZ YY XX 08 03 AD 51 0D 08 05 05 01 00 05 00 00 00 32 00 01 00 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 05 02 58 73 59 08 02 04 00 00 00 00 01 00 00 00 19 88 00 3F 05 0B 03 0D 04 00 0E 15 7D 2D 08 08
At offset XX YY ZZ:
19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 00 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 00 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 01 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 01 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 02 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 02 00 00 00 04 03 19 8F 00 C0 02 CC BB AA 08 02 07 0E 00 F4 FF 00 00 F4 FF 0F 00 03 00 00 00 02 CC BB AA 08 02 07 1A 00 08 00 0C 00 08 00 0F 00 03 00 00 00 04 03 0F
At offset AA BB CC:
B0 27 B0 27 34 49 52 08 D0 62 59 08 00 00 00 00 A8 C6 2E 08 45 E0 10 08
Acid Spray:
Spoiler:
![]()
00 A6 27 02 74 72 59 08 02 05 01 00 02 00 00 00 06 00 14 60 05 19 9F 00 C0 02 70 FE 57 08 02 05 00 00 F6 FF 00 00 00 00 03 00 05 02 58 FE 57 08 02 03 00 00 00 00 02 00 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 0E ZZ YY XX 08 02 74 72 59 08 02 05 01 00 04 00 06 00 00 00 14 60 05 0B 03 0D 08
At offset XX YY ZZ:
02 CC BB AA 08 82 05 0F 00 0F 00 14 00 00 00 00 00 02 CC BB AA 08 82 05 0F 00 0F 00 14 00 0A 00 05 00 02 CC BB AA 08 82 05 0F 00 0F 00 14 00 F6 FF FB FF 02 CC BB AA 08 82 05 0F 00 0F 00 14 00 14 00 0A 00 02 CC BB AA 08 82 05 0F 00 0F 00 14 00 EC FF F6 FF 04 02 0F
At offset AA BB CC:
A6 27 A6 27 CC 49 52 08 64 61 59 08 00 00 00 00 A8 C6 2E 08 F1 4A 11 08
Gunk Shot:
Spoiler:
![]()
02 74 72 59 08 02 05 01 00 02 00 00 00 04 00 38 7C 05 00 A7 27 00 A6 27 0E 15 15 2D 08 0E 15 15 2D 08 05 04 0F 0E 71 7A 2D 08 05 15 17 08
And, can I suggest some improvements to the organisation of this thread? Firstly, divide the animations up into Ruby, Emerald and FireRed animations, as Ruby and Sapphire animations might not be cross compatible due to pointer issues and Sapphire is rarely hacked anyways. Secondly, choose the animations based on how closely they resemble their 5th/6th gen counterparts instead of allowing multiple versions of the same animation to proliferate. Thirdly, with the permission of the hackers, put the animation bytes themselves into the first post rather than linking to the post containing the bytes. Lastly, set aside a section aside for particle replacements and attacks that require new particles. Divide this section up into two portions, one where for replacements for existing particles (easily done using UnLZ), and one for moves that require new particles altogether (more difficult, requires hex knowledge as well as repointing/expansion of the particle table).
This is a really old post for a Dark Pulse animation by MrDollSteak that I can't seem to get to work. It's the one linked under Gen 4-6 animations in the OP. It changes to a dark background when used, but then my game crashes. Can anyone help me on this?
From Generation VIII, Rapid Spin has a power of 50. When inflicting damage, Rapid Spin now also raises the user's Speed by one stage.
I Need :
Here you are
update rapid spin:
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 E3 15 2E 85 3E 02 02 D1 28 46 69 1D 08
I realize this is a super late reply, but I was having the same issue until I realized what I (and probably you) was doing wrong.
Notice that you need to replace your offsets "backwards". When you set your first offset as XXYYZZ, in the main code, you must replace it as ZZ YY XX. I kept making the same mistake and after doing that, the animation now works perfectly and looks very good :)
You can use something like XSE's 'Find and replace' function to safely insert the offsets where they should be with no human error and you'll be good to go.
EDIT: In reply to the post above also, XX YY ZZ are offset values.
Update
It is now 100% working, Psystrike/Psyshock and Secret Sword effect :
Spoiler:
Emerald:
Spoiler:
Alter the Defense-boost abilities :
Spoiler:
Code:.text .align 2 .thumb .thumb_func .global multiscaleandfurcoat Main: CheckTwistMoves: ldr r0, CurrentMove ldrh r0, [r0] ldr r3, PStrike cmp r0, r3 beq Swap ldr r3, PShock cmp r0, r3 beq swap ldr r3, SSword cmp r0, r3 bne Continue Swap: ldr r0, [sp, #0x18] ldr r3, [sp, #0x1C] str r0, [sp, #0x1C] str r3, [sp, #0x18] Continue: ldrb r0, [r2] cmp r0, #0x3F bne Multiscale ldr r3, [sp, #0x4] ldr r0, [r3, #0x4C] cmp r0, #0 beq Return ldr r1, [sp, #0x18] lsr r0, r1, #1 add r1, r1, r0 str r1, [sp, #0x18] Multiscale: cmp r0, #[B]0x89[/B] /*Index number MultiScale*/ bne FurCoat CheckHP: ldr r1, [sp, #0x4] ldrh r0, [r1, #0x28] ldrh r1, [r1, #0x2C] cmp r1, r0 bne Return HalveDamage: lsr r7, r7, #0x1 mov r0, r8 lsr r0, r0, #0x1 mov r8, r0 FurCoat: ldrb r0, [r2] cmp r0, #[B]0xAA[/B] /*Index number Fur Coat*/ bne Return DefenseBoost: ldr r1, [sp, #0x18] mov r0, r1 add r1, r0, r0 str r1, [sp, #0x18] Return: ldr r0, CurrentMove ldrh r0, [r0] ldr r3, PStrike cmp r0, r3 beq SwapAgain ldr r3, PShock cmp r0, r3 beq SwapAgain ldr r3, SSword cmp r0, r3 bne Continue SwapAgain: ldr r0, [sp, #0x18] ldr r3, [sp, #0x1C] str r0, [sp, #0x1C] str r3, [sp, #0x18] End: ldr r2, Back bx r2 .align 2 Back: .word 0x08069938+1 CurrentMove: .word 0x020241EA [B]PStrike: .word 0x21C PShock: .word 0x1D9 SSword: .word 0x224[/B] /*Replace with the index number of your moves*/ /*00 48 00 47 xx+1 xx xx 08 at 08069918*/
Now we alter some part of the calculate damage function:
Spoiler:
Code:.thumb Start: mov r8, r3 ldr r0, CurrentMove ldrh r1, [r0] ldr r0, PStrike cmp r1, r0 beq Swap ldr r0, PShock cmp r1, r0 beq Swap ldr r0, SSword cmp r1, r0 beq Swap Classic: ldr r0, [sp, #4] ldrh r0, [r0, #0xA] str r0, [sp, #0x1C] Back: ldr r0, Return mov pc, r0 Swap: ldr r0, [sp, #4] ldrh r0, [r0, #0xA] str r0, [sp, #0x18] str r2, [sp, #0x1C] ldrh r0, [sp, #0xC] mov r1, #3 and r1, r0 cmp r1, #0 beq Back cmp r1, #3 beq Back cmp r1, #2 beq Subst add r0, #1 b Store Subst: sub r0, #1 Store: strh r1, [sp, #0xC] b Back .align 2 [B]PStrike: .word 0x21C PShock: .word 0x1D9 SSword: .word 0x224[/B] /*Index number of those moves*/ Return: .word 0x08069614+1 CurrentMove: .word 0x020241EA /*00 48 00 47 xx+1 xx xx 08 at 0806960C*/
Finally the ASM for the custom BSP :
Spoiler:
Your Battle Script would look like :Code:.text .align 2 .thumb .thumb_func .global swapdefsandboosts main: push {r0-r3, lr} ldr r0, BankTarget ldr r1, BattleData ldrb r0, [r0] mov r2, #0x58 mul r0, r2 add r1, #0x1A add r1, r0 ldrb r2, [r1] ldrb r3, [r1, #0x3] strb r3, [r1] strb r2, [r1, #0x3] pop {r0-r3, pc} .align 2 BattleData:.word 0x02024084 BankTarget:.word 0x0202420C /*Call asm that routine+1 before AND after the "calculatedamage" command in BSP*/
Code:#org @start jumpifhalfword 0x1 0x20241EA 0x39 @BS jumpifspecialstatusflag 0x0 0x40000 0x1 @BS orword 0x2024280 0x40000 setbyte 0x2024482 0x2 #org @BS attackcanceler accuracycheck 0x82D8A5E 0x0 attackstring ppreduce callasm 0x8A233F1 calculatedamage callasm 0x8A233F1 attackanimation waitanimation missmessage cmd5c 0x0 waitstate graphicalhpupdate 0x0 datahpupdate 0x0 critmessage waitmessage 0x40 resultmessage waitmessage 0x40 seteffectwithchancetarget faintpokemon 0x0 0x0 0x8000000 setbyte 0x2024488 0x0 cmd49 0x0 0x0 end
I tried to adapt this routine but I didn't get it, could someone help me?
Spoiler:.text
.align 2
.thumb
.thumb_func
.global multiscaleandfurcoat
Main:
CheckTwistMoves:
ldr r0, CurrentMove
ldrh r0, [r0]
ldr r3, PStrike
cmp r0, r3
beq Swap
ldr r3, PShock
cmp r0, r3
beq swap
ldr r3, SSword
cmp r0, r3
bne Continue
Swap:
ldr r0, [sp, #0x18]
ldr r3, [sp, #0x1C]
str r0, [sp, #0x1C]
str r3, [sp, #0x18]
Continue:
ldrb r0, [r2]
cmp r0, #0x3F
bne Multiscale
ldr r3, [sp, #0x4]
ldr r0, [r3, #0x4C]
cmp r0, #0
beq Return
ldr r1, [sp, #0x18]
lsr r0, r1, #1
add r1, r1, r0
str r1, [sp, #0x18]
Multiscale:
cmp r0, #0x51 /*Index number MultiScale*/
bne FurCoat
CheckHP:
ldr r1, [sp, #0x4]
ldrh r0, [r1, #0x28]
ldrh r1, [r1, #0x2C]
cmp r1, r0
bne Return
HalveDamage:
lsr r7, r7, #0x1
mov r0, r8
lsr r0, r0, #0x1
mov r8, r0
FurCoat:
ldrb r0, [r2]
cmp r0, #0x8E /*Index number Fur Coat*/
bne Return
DefenseBoost:
ldr r1, [sp, #0x18]
mov r0, r1
add r1, r0, r0
str r1, [sp, #0x18]
Return:
ldr r0, CurrentMove
ldrh r0, [r0]
ldr r3, PStrike
cmp r0, r3
beq SwapAgain
ldr r3, PShock
cmp r0, r3
beq SwapAgain
ldr r3, SSword
cmp r0, r3
bne Continue
SwapAgain:
ldr r0, [sp, #0x18]
ldr r3, [sp, #0x1C]
str r0, [sp, #0x1C]
str r3, [sp, #0x18]
End:
ldr r2, Back
bx r2
.align 2
Back: .word 0x0803F104+1
CurrentMove: .word 0x02023d4a
PStrike: .word 0x1FC
PShock: .word 0x1FD
SSword: .word 0x1FE
/*00 48 00 47 xx+1 xx xx 08 at 0803F0E4*/
Spoiler:.thumb
Start:
mov r8, r3
ldr r0, CurrentMove
ldrh r1, [r0]
ldr r0, PStrike
cmp r1, r0
beq Swap
ldr r0, PShock
cmp r1, r0
beq Swap
ldr r0, SSword
cmp r1, r0
beq Swap
Classic:
ldr r0, [sp, #4]
ldrh r0, [r0, #0xA]
str r0, [sp, #0x1C]
Back:
ldr r0, Return
mov pc, r0
Swap:
ldr r0, [sp, #4]
ldrh r0, [r0, #0xA]
str r0, [sp, #0x18]
str r2, [sp, #0x1C]
ldrh r0, [sp, #0xC]
mov r1, #3
and r1, r0
cmp r1, #0
beq Back
cmp r1, #3
beq Back
cmp r1, #2
beq Subst
add r0, #1
b Store
Subst:
sub r0, #1
Store:
strh r1, [sp, #0xC]
b Back
.align 2
PStrike: .word 0x1FC
PShock: .word 0x1FD
SSword: .word 0x1FE
Return: .word 0x0803ED80+1
CurrentMove: .word 0x02023d4a
/*00 48 00 47 xx+1 xx xx 08 at 0803ED78*/
Spoiler:.text
.align 2
.thumb
.thumb_func
.global swapdefsandboosts
main:
push {r0-r3, lr}
ldr r0, BankTarget
ldr r1, BattleData
ldrb r0, [r0]
mov r2, #0x58
mul r0, r2
add r1, #0x1A
add r1, r0
ldrb r2, [r1]
ldrb r3, [r1, #0x3]
strb r3, [r1]
strb r2, [r1, #0x3]
pop {r0-r3, pc}
.align 2
BattleData:.word 0x02023be4
BankTarget:.word 0x02023d6c
Spoiler:#org @start
jumpifhalfword 0x1 0x2023d4a 0x39 @BS
jumpifspecialstatusflag 0x0 0x40000 0x1 @BS
orword 0x2023dd0 0x40000
setbyte 0x814D3E2 0x2
#org @BS
attackcanceler
accuracycheck 0x81d695e 0x0
attackstring
ppreduce
callasm 0x8XXXXXX+1
calculatedamage
callasm 0x8XXXXXX+1
attackanimation
waitanimation
missmessage
cmd5c 0x0
waitstate
graphicalhpupdate 0x0
datahpupdate 0x0
critmessage
waitmessage 0x40
resultmessage
waitmessage 0x40
seteffectwithchancetarget
faintpokemon 0x0 0x0 0x8000000
setbyte 0x814D3E8 0x0
cmd49 0x0 0x0
end
maybe what is wrong are the "SP" records pulled, which are different for each version.
Spoiler:.text
.align 2
.thumb
.thumb_func
.global multiscaleandfurcoat
Main:
CheckTwistMoves:
ldr r0, CurrentMove
ldrh r0, [r0]
ldr r3, PStrike
cmp r0, r3
beq Swap
ldr r3, PShock
cmp r0, r3
beq swap
ldr r3, SSword
cmp r0, r3
bne Continue
Swap:
ldr r0, [sp, #0x14]
ldr r3, [sp, #0x18]
str r0, [sp, #0x18]
str r3, [sp, #0x14]
Continue:
ldrb r0, [r2]
cmp r0, #0x3F
bne Multiscale
ldr r3, [sp, #0x4]
ldr r0, [r3, #0x4C]
cmp r0, #0
beq Return
ldr r1, [sp, #0x14]
lsr r0, r1, #1
add r1, r1, r0
str r1, [sp, #0x14]
Multiscale:
cmp r0, #0x89 /*Index number MultiScale*/
bne FurCoat
CheckHP:
ldr r1, [sp, #0x4]
ldrh r0, [r1, #0x28]
ldrh r1, [r1, #0x2C]
cmp r1, r0
bne Return
HalveDamage:
lsr r7, r7, #0x1
mov r0, r8
lsr r0, r0, #0x1
mov r8, r0
FurCoat:
ldrb r0, [r2]
cmp r0, #0xAA /*Index number Fur Coat*/
bne Return
DefenseBoost:
ldr r1, [sp, #0x14]
mov r0, r1
add r1, r0, r0
str r1, [sp, #0x14]
Return:
ldr r0, CurrentMove
ldrh r0, [r0]
ldr r3, PStrike
cmp r0, r3
beq SwapAgain
ldr r3, PShock
cmp r0, r3
beq SwapAgain
ldr r3, SSword
cmp r0, r3
bne Continue
SwapAgain:
ldr r0, [sp, #0x14]
ldr r3, [sp, #0x18]
str r0, [sp, #0x18]
str r3, [sp, #0x14]
End:
ldr r2, Back
bx r2
.align 2
Back: .word 0x0803f105
CurrentMove: .word 0x02023d4a
PStrike: .word 0x21C
PShock: .word 0x1D9
SSword: .word 0x224 /*Replace with the index number of your moves*/
/*00 48 00 47 xx+1 xx xx 08 at 0803f0e4*/
Spoiler:.thumb
Start:
mov r8, r3
ldr r0, CurrentMove
ldrh r1, [r0]
ldr r0, PStrike
cmp r1, r0
beq Swap
ldr r0, PShock
cmp r1, r0
beq Swap
ldr r0, SSword
cmp r1, r0
beq Swap
Classic:
ldr r0, [sp, #4]
ldrh r0, [r0, #0xA]
str r0, [sp, #0x18]
Back:
ldr r0, Return
mov pc, r0
Swap:
ldr r0, [sp, #4]
ldrh r0, [r0, #0xA]
str r0, [sp, #0x14]
str r2, [sp, #0x18]
ldrh r0, [sp, #0xC]
mov r1, #3
and r1, r0
cmp r1, #0
beq Back
cmp r1, #3
beq Back
cmp r1, #2
beq Subst
add r0, #1
b Store
Subst:
sub r0, #1
Store:
strh r1, [sp, #0xC]
b Back
.align 2
PStrike: .word 0x21C
PShock: .word 0x1D9
SSword: .word 0x224 /*Index number of those moves*/
Return: .word 0x0803ed80+1
CurrentMove: .word 0x02023d4a
/*00 48 00 47 xx+1 xx xx 08 at 0803ed78*/
and the script can you decreases for that.
Spoiler:#org @BS
attackcanceler
accuracycheck 0x81d695e 0x0
attackstring
ppreduce
callasm 0x8XXXXXX+1
calculatedamage
callasm 0x8XXXXXX+1
goto 0x81d6934
It did not work it freezes when I attack