• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Forum moderator applications are now open! Click here for details.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Development: Animated Sprites in Ruby and FireRed

23
Posts
12
Years
  • Seen May 29, 2013
As I already explained, animations table in this 308CBC.
But the jumps and bumps...
...I have no idea where this...
...editing even less...
BUT IT MUST BE BLESSED WITH ASM ROUTINE
3GwFYPL4D7D2eHuAXzhkLcTPcyIDAAAAAElFTkSuQmCC

3GwFYPL4D7D2eHuAXzhkLcTPcyIDAAAAAElFTkSuQmCC
 

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
As I already explained, animations table in this 308CBC.
But the jumps and bumps...
...I have no idea where this...
...editing even less...
BUT IT MUST BE BLESSED WITH ASM ROUTINE
Chances are the rotations, movement and dilating is done via a table of some sort, or even another script-like bytecode. You could have 1 byte for the type, then 3 for arguments (or less...)

Chances are, however, that it will require some extreme decompiling to even find it.
 
23
Posts
12
Years
  • Seen May 29, 2013
The routine is at 0x011d65

I can say this because I already caught in the pokemon in battle when he was coming!


're getting close... hihihi...
 
Last edited:
331
Posts
12
Years
  • Seen Oct 4, 2013
It's 28 bytes, do we really need a patch for that? No, no we don't.

Just use a hex editor, they don't byte. :)

I know nothing about hex editing...
Seriously, people should make more video tutorials, if it's easy then it won't take much of their time.
Cool stuff like battle animation editing also needs a video tutorial.
all I can find on youtube is super simple stuff about hacking, and why does everyone hate Pokemon ruby?...
or how about someone make tools.
 
534
Posts
11
Years
  • Age 26
  • Seen Jul 24, 2023
So everyone what's the final code for FR that loops the animation and has no bugs?
 
534
Posts
11
Years
  • Age 26
  • Seen Jul 24, 2023
I would do it if I only know how to make ASM codes but right now all I know is compiling.
But do you have any idea on how it should be structured?

I think this might be pretty easy if someone could just find out where the code continues after reaching FF FF 00 00.
 
Last edited:

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
The issue isn't with the looping mechanism, it's the fact that the battle routine pauses until the animation is done. Finding it isn't as easy as you think, you'd have to dig through several, perhaps hundreds of routines before finding out how to fix it.
 

Shadowraze

ur mum
794
Posts
10
Years
The issue isn't with the looping mechanism, it's the fact that the battle routine pauses until the animation is done. Finding it isn't as easy as you think, you'd have to dig through several, perhaps hundreds of routines before finding out how to fix it.

Woah a hundred routines? :3 That would really take a while.

But how about the routine that makes the sprite move for the backsprite in emerald have you got luck in finding it? :3
 

BugMania

The Bug Master
32
Posts
10
Years
  • Seen Nov 4, 2016
I discovered a way of letting an animation similar to BW.
Spoiler:

I need help to improve this routine!

...Sorry for bad english.
 
Last edited:

Shiny Quagsire

I'm Still Alive, Elsewhere
697
Posts
14
Years
I discovered a way of letting an animation similar to BW.




Well, if we know that an offset as 0x2FF7D00 is an area of ​​memory that can change.
We can go to 0x2349BC and insert these bytes: 00 7D FF 02
Now, go to the Game Boy and go to "Memory view".


Walk to 0x2FF7D00 and insert bytes as follows: 00 00 0A 00 01 00 0A 00 FF FF 00 00
Thus, when in a wild battle, just a touch as FE FF under FF FF will make the pokemon dance.




Let's go to the Hex again. In 0xD7360, we will see what I like to call "routines for setwildbattlemessages".

To facilitate the understanding of what I want to show, put something like this:
64 73 0D C6 08 F1 80 08 30 C6 80 08 60 C6 80 08 80 C6 C1 08 90 C6 80 08 54 76 0D 08


Then, go to 0x80C4BC and put this:
B4 30 05 2D 4D 88 02 4E 35 80 04 48 30 BC 00 47 18 7D FF 02 C0 70 03 02 C2 70 03 02 29 74 0D 08 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 30 B4 2D 4D 05 88 02 4E 35 80 04 48 30 BC 00 47 18 7D FF 02 C0 70 03 02 70 03 02 C2 C9 74 0D 08 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 05 4D 30 B4 2D 88 02 4E 35 80 04 48 30 BC 00 47 18 7D FF 02 C0 70 03 02 C2 70 03 02 75 0D 08 F1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 30 4D 04 2D 88 B4 02 4E 35 80 04 48 30 BC 00 47 18 7D FF 02 C0 70 03 02 C2 70 03 02 59 75 0D 08 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 30 B4 04 88 02 4D 2D 4D 35 80 04 48 30 BC 00 47 18 7D FF 02 C0 70 03 02 C2 70 03 02 73 7D 0D 08





The routines I did was to load that is within variables 0x8004 and 0x8005 in 0x2FF7D18.

Therefore, before using any battle, run a script like:
setvar 0x8004 0xFFFF
setvar 0x8005 0xFFFE
end
(...)
I need help to improve this routine!

...Sorry for bad english.

Nice, do you think you could also provide the source ASM so that we can get a better insight as to how this works? I'm sure I and several others would also like to have this ASM available to improve on in case any errors or special needs for their hacks arise.
 

BugMania

The Bug Master
32
Posts
10
Years
  • Seen Nov 4, 2016
Nice, do you think you could also provide the source ASM so that we can get a better insight as to how this works? I'm sure I and several others would also like to have this ASM available to improve on in case any errors or special needs for their hacks arise.
Spoiler:
 
Last edited:

Sniper

ふゆかい
1,412
Posts
10
Years
Whoa, are you serious?! Well, I'm not that surprised.
I was wondering how Pokemon Skyline did that trick.
 

BugMania

The Bug Master
32
Posts
10
Years
  • Seen Nov 4, 2016
I managed to fix some bugs typical of a Asm-Noob.
When you restarted the game, the memory disappeared.
Spoiler:

Let me know about BUGS!
 
Last edited:
Back
Top