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.


Advertise here

Reply
 
Thread Tools
  #1    
Old November 9th, 2010, 07:28 AM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly

Advertise here
OK, so me and xGGxToiZ have decided to release our knowledge to the general public. This knowledge is the knowledge of trainer animations!

xGGxToiZ noticed the pointer I found to a blank animation while looking at the trainer's back animations (No, this is not the front animations!). Here's the origanal post:
Spoiler:

Quote:
Originally Posted by shiny quagsire View Post
I found some more animation data. It's huge though,
Code:
01 00 14 00
02 00 06 00 
03 00 06 00 
04 00 18 00 
00 00 01 00 
FF FF 00 00

01 00 14 00 
02 00 06 00 
03 00 06 00 
04 00 18 00 
00 00 01 00 
FF FF 00 00 

01 00 18 00 
02 00 09 00 
03 00 18 00 
00 00 09 00 
FF FF 00 00 

01 00 18 00 
02 00 09 00 
03 00 18 00 
00 00 09 00 
FF FF 00 00 

00 00 18 00 
01 00 09 00 
02 00 18 00 
00 00 09 00 
03 00 32 00 
FF FF 00 00
 
00 00 18 00 
01 00 09 00 
02 00 18 00 
00 00 09 00 
03 00 32 00 
FF FF 00 00
it's at offset 239EBB.There are 6 different trainers: the boy, the girl, trainer dude, old man, brendan, and may. plus, they're all the same!I played with the values, and it's correct. These are the animations for the trainer backsprites! Funny, there are pointers to 2347E8, which contains this:
Code:
00 00 00 00 FF FF 00 00
I fiddled with the first value, the frame, and changed it to 05, and check out the result!

Oh, and I was a boy at the time.


It was quite odd, because it also led to the trainer's sprite, and several other things we don't know.

So how do we do this? Simple! Let me quote xGGxTioZ:
Quote:
Originally Posted by xGGxTioZ
Okay, each trainer sprite has their own pointer to E8 47 23 08. So I searched for that and voila!
Code:
Table starts at: 0x238E8C
Select: 250h Bytes. (148d * 4d)
This means, each trainer can have their own number of frames! Exciting, huh? And if we can expand it, who knows what are the possibilities!
So, like he said, each trainer gets it's own animation pointer. So go to the table, and multiply your trainer's sprite's number (Starting from 0) by 4, and add it to the table offset. Now repoint the following pointer to free space, and write out your animation data. Here's how it works:

Animation data is a sequence of 4 bytes, giving data on various information, and ends in FF FF 00 00.

The first byte is the frame number from 0 Up to as many frames as you want!
The second byte is unknown, but I'll look into the ASM coding to figure it out.
The third byte is the duration. 0x10 is about a half second.
The fourth byte is unknown

The format is two bytes for the frame, two bytes for the duration. The values are simple flipped half-words.

After you've typed up as many of these sequences you want, end it in FF FF 00 00. Here's one I used for Pokemon Chrome:

Code:
00 00 00 00
02 00 FE 00
02 00 30 00
01 00 0F 00
00 00 30 00
FF FF 00 00
I'm not sure why I used the 0's, but it works. This is a good example of going in any order. I went from my 3rd frame, to my second, to my first. The duration of 30 at the end delays when the pokemon are sent out.
__________________




Last edited by Shiny Quagsire; July 17th, 2014 at 08:54 PM.
Reply With Quote
  #2    
Old November 10th, 2010, 06:43 AM
diegoisawesome's Avatar
diegoisawesome
Not the Script Help Thread
Community Supporter
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 17
Gender: Male
Nature: Quirky
Quote:
Originally Posted by shiny quagsire View Post
OK, so me and xGGxToiZ have decided to release our knowledge to the general public. This knowledge is the knowledge of trainer animations!
I'm not entirely sure about this... This seems to be for trainer backsprites, but all throughout the thread, you mention "trainer sprites"...
Is this for trainer front- or back-sprites?
EDIT: I see. In this thread, there's info on the frames for back sprites AND for front sprites.
Awesome!
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles

Last edited by diegoisawesome; November 10th, 2010 at 06:49 AM.
Reply With Quote
  #3    
Old November 10th, 2010, 06:50 AM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
It's fro the front sprites. Each sprite has their own pointer in the table at 238E8C
__________________



Reply With Quote
  #4    
Old November 10th, 2010, 06:54 AM
diegoisawesome's Avatar
diegoisawesome
Not the Script Help Thread
Community Supporter
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 17
Gender: Male
Nature: Quirky
Quote:
Originally Posted by shiny quagsire View Post
It's fro the front sprites. Each sprite has their own pointer in the table at 238E8C
Yeah, I saw. But there's also info for the back sprites, which is cool, too.
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles
Reply With Quote
  #5    
Old November 10th, 2010, 06:56 AM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
Quote:
Originally Posted by diegoisawesome View Post
Yeah, I saw. But there's also info for the back sprites, which is cool, too.
Yeah, that was how he found it. It was just actually a post from the pokemon animation thread.
__________________



Reply With Quote
  #6    
Old November 10th, 2010, 07:02 AM
diegoisawesome's Avatar
diegoisawesome
Not the Script Help Thread
Community Supporter
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 17
Gender: Male
Nature: Quirky
Quote:
Originally Posted by shiny quagsire View Post
Yeah, that was how he found it. It was just actually a post from the pokemon animation thread.
Ahh, I see.
Both are still interesting discoveries, though.
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles
Reply With Quote
  #7    
Old November 10th, 2010, 07:49 AM
altariaking's Avatar
altariaking
Needs NO VMs...
 
Join Date: Dec 2009
Location: Scotland, Lesmahagow
Age: 40
Gender: Male
Nature: Naive
Send a message via Windows Live Messenger to altariaking
Yay! I already had the offset for Ruby but it's good to see you've released it to everyone now
__________________
http://www.pokecommunity.com/member.php?u=253113
Reply With Quote
  #8    
Old November 10th, 2010, 09:44 AM
knizz's Avatar
knizz
 
Join Date: Aug 2007
Great find! (Why didn't you tell me about this earlier?!)

So... which animation is front and which is back?
__________________
Firered IDA 6.1 DB: https://www.dropbox.com/s/hvvmxxoo1dkmdzc/firered.idb
VBA-M with lua scripting support (no longer in development)

Last edited by knizz; November 10th, 2010 at 10:05 AM.
Reply With Quote
  #9    
Old November 10th, 2010, 03:05 PM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
Quote:
Originally Posted by knizz View Post
Great find! (Why didn't you tell me about this earlier?!)

So... which animation is front and which is back?
I couldn't tell you because I promised xGGxTioZ to keep it a secret. In fact, he posted this video in the pokemon animations thread. (Which he actually made, but he never told anyone that)

Spoiler:


The back animations are at 239EBB, and the front onse are in a table of pointers to each trainer's animation at 238E8C
__________________



Reply With Quote
  #10    
Old September 24th, 2012, 03:20 PM
alypkm
Unhatched Egg
 
Join Date: Sep 2009
Gender: Male
please How can I animate the pokemon too in fire red ? and where do I put this code ?
Reply With Quote
  #11    
Old September 24th, 2012, 05:27 PM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
Quote:
Originally Posted by alypkm View Post
please How can I animate the pokemon too in fire red ? and where do I put this code ?
If you scrolled down in R&D you'd find it.
__________________



Reply With Quote
  #12    
Old September 29th, 2012, 11:38 AM
alypkm
Unhatched Egg
 
Join Date: Sep 2009
Gender: Male
Quote:
Originally Posted by shiny quagsire View Post
If you scrolled down in R&D .
I'm using the HEX editor in NSE..I searched the Sprite table and entered this code then the game freeze once I start a wild battle even after I added 2 sprites for the pokemon.

how do I repoint it to another offset ?
Reply With Quote
  #13    
Old January 10th, 2013, 05:50 PM
SneakyEpicface11's Avatar
SneakyEpicface11
PkMnMaster Ben
 
Join Date: Dec 2012
Location: Johto
Gender: Male
Nature: Calm
Send a message via Skype™ to SneakyEpicface11
Hmm.... seems complicated... that is why I do not do rom hacking xD.
__________________
Hi, I'm SneakyEpicface11.
I'm 12 years old and like Pizza.
Pizza is my life... Just kidding.

"Go Rattata!" - Youngster Joey
Reply With Quote
  #14    
Old April 12th, 2013, 03:14 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
What's the Final Code? I'm using FR and I need 3 frames each for some trainers. I can apply this to whoever I just want animated right?
__________________
LET'S PARTY!
Reply With Quote
  #15    
Old April 12th, 2013, 10:24 PM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
Quote:
Originally Posted by robin22gongon View Post
What's the Final Code? I'm using FR and I need 3 frames each for some trainers. I can apply this to whoever I just want animated right?
Um, code? I guess the closest thing we have to code is ASM, but ff you mean hex it's at the bottom of the post.
__________________



Reply With Quote
  #16    
Old April 30th, 2013, 10:37 PM
hackstar's Avatar
hackstar
Check it out!!
 
Join Date: Jan 2013
Location: Dhaka
Gender: Male
Nature: Bashful
Is animated trainer sprite is working?
__________________
Do not waste your time by seeing my signature.
Reply With Quote
  #17    
Old June 26th, 2013, 09:00 AM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
at least in the pokemon party can put a loop.
__________________
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
  #18    
Old October 24th, 2013, 02:28 PM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Instead of using the HEX code, podemon well use a space in memory of the ROM.

example:

Go to the 0x82349BC.
You'll notice that the code uses an offset to 0x823499C, ie 9C 49 23 08.

To have an offset memory, we replace XX XX XX 08 to XX XX XX 02

In the end, find a space memory FREE, and inserted a routine battle system that changes the bytes FF FF 00 00 to FE FF 00 00.

I'm sorry that I did not bring the solution ready.


And of course, my bad English.
__________________
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
Reply
Quick Reply

Sponsored Links


Advertise here
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:37 PM.


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.