The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > Fan Games > Binary ROM Hacking > Binary Hack Research & Development
Reload this Page Development Hacking the PokéNav (map data, phone data, etc.)

Notices
For all updates, view the main page.

Binary Hack Research & Development Got a well-founded knack with your binary Pokémon hacks? Love reverse-engineering them? For the traditional Pokémon ROM hacker, 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!

Ad Content
Reply
 
Thread Tools
  #1   Link to this post, but load the entire thread.  
Old November 14th, 2010 (3:52 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
I feel that it's pretty safe to say that we don't have much hacking information done on the PokéNav. I mean, some people just put it into a hack without really changing anything.

I, for one, have started to hack the little information box that appears when you scroll over a place in the map on Zoom mode.

I found a little table located at 0x623118 that controls this, although how so, I don't really know. The format is like this:
[map name ID] [00] [01 if scrolled over second half] [00] [pointer to data]

The routines that load the table start at 0x1ccd34 and 0x1ccd70.

There is a limiter byte at 0x1ccd40 that makes the first routine not work if r4 is over 0x15. The number is not the map name ID, however, so I assume that it's to make sure it passes through the routine 0x15 times, each time increasing by 1. After all, this is the routine that loads at the load of the map. I believe this routine is the checker to see which map names have a mini-map and which do not; however, I may be wrong.

The second routine, however, I know a bit more about. This one loads the map name byte and checks it against the ones in the table. It also does checks to see if it's the second half of the map name. It also has a limiter byte like the one above, this one at 0x1ccd8c. This is also, supposedly, to check how much times it's gone through the routine. After that, though, I lose track of what it does.

This is just one part of the PokéNav, though; feel free to help with any part of it.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #2   Link to this post, but load the entire thread.  
Old November 15th, 2010 (3:08 AM).
Darthatron's Avatar
Darthatron Darthatron is offline
巨大なトロール。
 
Join Date: Jan 2006
Location: Melbourne, Australia
Age: 31
Gender: Male
Nature: Modest
Posts: 1,152
Maybe you should talk to colcolstyles, he's done some stuff with the emerald maps before: http://www.youtube.com/watch?v=WCkCCuowTDQ

I've done a little bit of study on this stuff, I'll see if I can find my notes.
__________________
あなた は しきしゃ です
わたし は ばか です
Reply With Quote
  #3   Link to this post, but load the entire thread.  
Old November 15th, 2010 (4:16 PM).
U.Flame's Avatar
U.Flame U.Flame is offline
Maker of Short Games
 
Join Date: Jun 2008
Location: Unknown
Age: 27
Gender: Male
Nature: Jolly
Posts: 1,322
I don't know how, but I noticed Baro's Pokemon Quartz had a hacked PokeNav. Not much of a difference but the rotating PokeNav image was changed. Quartz is the only hack that I've seen that.
__________________
The more you learn about something, the more you realize just how much you don't know. I've shelved my more ambitious ideas in favor of smaller, more feasible projects and contributions. While I still have an ongoing project, and still intend to experiment with improving Gen 3's multiplayer, it's been much less stressful doing smaller things, like entries for Anthroyd's MAGM contests.

Of which you can check out here:
Naillevaihcam
Magical Altering Gym Menagerie
Reply With Quote
  #4   Link to this post, but load the entire thread.  
Old November 16th, 2010 (10:04 PM).
Shiny Quagsire's Avatar
Shiny Quagsire Shiny Quagsire is offline
I'm Still Alive, Elsewhere
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 25
Gender: Male
Nature: Jolly
Posts: 697
It's defiantly possible. I haven't hacked emerald yet, but I might still look into this.
__________________



Reply With Quote
  #5   Link to this post, but load the entire thread.  
Old February 6th, 2011 (7:52 AM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Since the posting of this thread, I've made major advances in hacking the PokéNav. If anybody would like me to share this info in this thread, feel free to ask.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #6   Link to this post, but load the entire thread.  
Old February 6th, 2011 (9:17 AM).
knizz's Avatar
knizz knizz is offline
 
Join Date: Aug 2007
Gender: Female
Posts: 192
Quote:
Originally Posted by diegoisawesome View Post
Since the posting of this thread, I've made major advances in hacking the PokéNav. If anybody would like me to share this info in this thread, feel free to ask.
I want more info. Also: Y U not on mah irc-channel?
__________________
Firered IDA 6.6 DB: https://www.dropbox.com/s/d856o3pyndyr5sr/firered.idb
VBA-M with lua scripting support
incomplete firered decompilation
Reply With Quote
  #7   Link to this post, but load the entire thread.  
Old February 6th, 2011 (9:24 AM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Quote:
Originally Posted by knizz View Post
I want more info. Also: Y U not on mah irc-channel?
Before, I was joining whenever my PC turned on but I closed out of it so it doesn't automatically connect any more. I'll join right now if you want.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #8   Link to this post, but load the entire thread.  
Old February 6th, 2011 (11:31 AM).
colcolstyles's Avatar
colcolstyles colcolstyles is offline
Yours truly
 
Join Date: May 2008
Location: The Bay Area
Gender: Male
Nature: Lonely
Posts: 1,588
diegoisawesome, I'm sure we all would like to see your findings.[/attempt-to-get-things-back-on-topic]
__________________

Brother of Vrai
Reply With Quote
  #9   Link to this post, but load the entire thread.  
Old February 6th, 2011 (12:43 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Well, for one, I've figured out how to hack the phone to its (almost) fullest. Should I start there?
Or should I tell you how I finally managed to get what I said in the first post working?
Maybe how the order of the buttons, the palettes of the buttons, and some other things were changed?
Tell me what you'd like to know and I'll share.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #10   Link to this post, but load the entire thread.  
Old February 6th, 2011 (4:10 PM).
giradialkia's Avatar
giradialkia giradialkia is offline
 
Join Date: Apr 2009
Location: Ireland
Age: 29
Gender: Male
Nature: Timid
Posts: 1,655
Quote:
Originally Posted by diegoisawesome View Post
Tell me what you'd like to know and I'll share.
(At the risk of being accused of SPAMming...)

TELL US EVERYTHING YOU'VE FOUND PLEASE.
__________________

- - - - - - - - - -
Reply With Quote
  #11   Link to this post, but load the entire thread.  
Old February 6th, 2011 (4:28 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Well, first things first: the phone.
At 0x6252A8 is a list of pointers. Following one of these pointers will lead to some data in the order of:
[byte - type] [byte - location] [hword - flag to check if in PokéNav] [word - pointer to trainer class name] [word - pointer to name] [word - pointer to 2nd array]

2nd array:
[word - pointer to text] [hword - flag to check to see if this message should be shown] [hword - flag to set after this message is shown]... until 00 00 00 00 FF FF FF FF.

I'm attempting to do something else ATM, so I'll try to post more some other time.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #12   Link to this post, but load the entire thread.  
Old February 9th, 2011 (6:28 PM).
U.Flame's Avatar
U.Flame U.Flame is offline
Maker of Short Games
 
Join Date: Jun 2008
Location: Unknown
Age: 27
Gender: Male
Nature: Jolly
Posts: 1,322
Is it possible at all to import Emerald PokeNav features to Ruby and Sapphire's Pokenav?
__________________
The more you learn about something, the more you realize just how much you don't know. I've shelved my more ambitious ideas in favor of smaller, more feasible projects and contributions. While I still have an ongoing project, and still intend to experiment with improving Gen 3's multiplayer, it's been much less stressful doing smaller things, like entries for Anthroyd's MAGM contests.

Of which you can check out here:
Naillevaihcam
Magical Altering Gym Menagerie
Reply With Quote
  #13   Link to this post, but load the entire thread.  
Old March 27th, 2011 (1:03 PM).
PokéRepublic's Avatar
PokéRepublic PokéRepublic is offline
 
Join Date: Mar 2011
Gender: Male
Posts: 14
Has anybdy found out how to use the radio function on the PokéNav for better Pokégear emulation?
Reply With Quote
  #14   Link to this post, but load the entire thread.  
Old March 27th, 2011 (1:18 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Quote:
Originally Posted by PokéRepublic View Post
Has anybdy found out how to use the radio function on the PokéNav for better Pokégear emulation?
What radio function on the Nav? AFAIK, there is none.
I would like to try and implement one, however.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #15   Link to this post, but load the entire thread.  
Old March 27th, 2011 (2:23 PM).
PokéRepublic's Avatar
PokéRepublic PokéRepublic is offline
 
Join Date: Mar 2011
Gender: Male
Posts: 14
Quote:
Originally Posted by diegoisawesome View Post
What radio function on the Nav? AFAIK, there is none.
I would like to try and implement one, however.
Sorry for the misunderstanding. I meant implementing a radio function to make it like the Pokégear of Johto.
Reply With Quote
  #16   Link to this post, but load the entire thread.  
Old March 27th, 2011 (2:34 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Quote:
Originally Posted by PokéRepublic View Post
Sorry for the misunderstanding. I meant implementing a radio function to make it like the Pokégear of Johto.
I thought that was what you meant.
Nope, not yet, this'll probably be the hardest part of 'Nav hacking.
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #17   Link to this post, but load the entire thread.  
Old March 27th, 2011 (3:15 PM).
PokéRepublic's Avatar
PokéRepublic PokéRepublic is offline
 
Join Date: Mar 2011
Gender: Male
Posts: 14
Oh, well have u thought of using the Nav's match call function to "call" the broadcast of a certain radio station? Sorry not expert just tryin to give suggestions
Reply With Quote
  #18   Link to this post, but load the entire thread.  
Old March 27th, 2011 (3:58 PM).
Sierraffinity's Avatar
Sierraffinity Sierraffinity is offline
Retiring from Pokémon ROM hacking
 
Join Date: Dec 2007
Location: Somewhere the rains of Africa can be blessed
Age: 26
Gender: Female
Nature: Naive
Posts: 1,071
Quote:
Originally Posted by Team Fail View Post
You could do that, you would have to modify the scripts that each name links to.

I think.
Not quite. It doesn't load a script, just text.
And why would you use that if you already need it for the phone card?
__________________
Restarted and revamped.

Public alpha out now!
Reply With Quote
  #19   Link to this post, but load the entire thread.  
Old March 27th, 2011 (4:21 PM).
PokéRepublic's Avatar
PokéRepublic PokéRepublic is offline
 
Join Date: Mar 2011
Gender: Male
Posts: 14
I was trying to give some suggestions/ideas, because i was just thinking that if you could set a trainer and make it a radio station and everytime you would call it, the broadcasting response would never be the same message over and over depending on time of day, locations, a maybe a randomness factor? And the phone card function would still be applicable at the same time in the "match call" function.
Reply With Quote
  #20   Link to this post, but load the entire thread.  
Old July 1st, 2018 (7:58 PM). Edited July 1st, 2018 by Xencleamas.
Xencleamas's Avatar
Xencleamas Xencleamas is offline
Suddenly lurking in the shadows...
 
Join Date: Feb 2014
Gender: Male
Nature: Adamant
Posts: 456
I know this thread is centuries old but I am going to post what I found anyways...

0x08622028: The table controls the data for CHECK inside the MATCH CALL. The size of the table is 0x4E0 bytes containing 0x10 bytes (four .word-s) per slot. There are 78 Match Call entries have CHECK function although there are 82 Match Call slots so only 4 don't have CHECK functions (they are Mr. Stone, Prof. Birch, Mom, and Scott) however I haven't found how they control these exceptions. Note that common trainers comes first before the boss trainers.
Code:
.word STRATEGY
.word TRAINERS_POKEMON
.word SELF_INTRO_LINE1
.word SELF_INTRO_LINE2
0x085500A4: The table controls the rematch data for both common and special Trainers. The size of the table is 0x4E0 bytes containing 0x10 bytes (four .word-s) per slot. Same that it only have 78 entries and I haven't found out how again these are controlled.
Code:
.hword TRAINER_INDEX
.hword TRAINER_INDEX
.hword TRAINER_INDEX
.hword TRAINER_INDEX
.hword TRAINER_INDEX
.hword 0x0000 (outerior Trainers) or 0x0018 (interior Trainers)
.word MAP_NAME_ID
These are only I can give for now. Although I'm more interested to find out how Trainer data are loaded for PokeNav and Trainer sprites as well.
__________________
Reply With Quote
Reply

Quick Reply

Join the conversation!

Create an account to post a reply in this thread, participate in other discussions, and more!

Create a PokéCommunity Account
Ad Content
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

Forum Jump


All times are GMT -8. The time now is 8:45 AM.