• 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?".
  • 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.

[Script] At what offset would I find Oak's Intro Text?

Momoro

I'm gonna put some dirt in your eye..
269
Posts
4
Years
Hi!

I am using C# to find offsets using the BinaryReader, but now I'm at a stump..

I am attempting to create an open-source Text Editor for Pokemon FireRed, but I can't seem to find the offsets for even a bit of text. (Besides BPRE)

If anyone could help, thanks!

Also, I can't seem to find the Advance-Text (A-Text) Source Code anywhere, so if someone could direct me to the correct site if it is even open-source, then THANK YOU!
 

DrFuji

[I]Heiki Hecchara‌‌[/I]
1,691
Posts
14
Years
There are several parts to Oak's text which you can find at 0x1C5C78, 0x1C5D06, 0x1C5D12, 0x1C5D4B, 0x1C5DBD, 0x1C59D5, 0x1C5DEA, 0x1C5E13, 0x1C5E2E, 0x1C5EB5, 0x1C5EC5 and 0x1C5EF4. These pure text strings are split into multiple segments as it obviously doesn't take place during normal gameplay so there's a lot of ASM that's doing things like loading sprites and naming characters etc.

The third gen games don't use ASCII except for the BPRE header that you've found. They use a custom character table to display all of their in-game characters as there are characters such as [PK] [MN] and [.] (in XSE) that don't correspond to anything in ASCII. You can get an idea of which characters are assigned to which hexadecimal value by downloading XSE 1.1.1's source code and opening the 'modTextSapp.bas' file or checking out diegoiseawesome's XSE tutorial as he has most (but not all) of the hex values listed.

As far as I know, there's no source code for A-Text as it was made super long ago. Here in the Pokemon hacking community, open source tools only really became a thing in the early 2010's so I think you're straight out of luck.
 
Last edited:

Momoro

I'm gonna put some dirt in your eye..
269
Posts
4
Years
Thanks for this! I was wondering though... Do you know what encoding I should use to get the text? I tried UTF-8, ASCII, etc. and I only seem to get "??????" when I try to read those offsets.. Thanks :)
 

DrFuji

[I]Heiki Hecchara‌‌[/I]
1,691
Posts
14
Years
Like I said, it's a custom character table made only for the third gen games so you're never going to find a table that works. You'll need to create your own table and use a hex editor that accepts custom tables.
 

Momoro

I'm gonna put some dirt in your eye..
269
Posts
4
Years
Well, I know that I have to create my own table, but still.. Is there any way to create a table, and apply it to the BinaryReader? Or is that impossible? Thanks :)
 
Back
Top