As some of you may already be aware, we have begun construction of a new forum as a rebirth of PHO and continuing on into future projects.
This forum is called Silph Co., and can be found by clicking the banner below. We are in the process of transferring some of our old resources, and the forum is open for posting. It will be sad to see PHO go, but we look forward to a bright future with Silph.
The forums here will be moved to an archive, and the url will redirect to the new site in the coming days/weeks.

Questions & AnswersDo you have a problem you need a straight answer for? Ask a question here and get an answer.

I personally have no idea, but if there is blank space in the offsets it gives, you can of course repoint trainer data there.

Simply;
1) Download a hex editor and open the rom file with it
2) Use the "Go to" function of the hex editor to scroll to that part of the rom file where the offset that Advance Trainer gives you. There you see what kind of data lies there. If it is "FF FF FF...", it should be free (unless you're hacking Emerald I think).

As advice, everyone whose hacks turns out glitchy is mostly because of relying on things that they're not convinced of. I personally wouldn't want to trust any tools that are unknown to me unless I knew they were properly tested, and work fine, first. Hex editors are really, really useful in this case! You know all along what you're doing with it (unless they won't work properly either, which is hardly the case, especially with most-used hex editors).

Just don't be afraid of trying them out
(Besides, my rom hacking and programming knowledge started to build on hex editing.)

In the case of Emerald, this thread would be very helpful I think. It explains the proper areas of freespace and clears up some misconceptions about freespace in Emerald so that it prevents rom corruption.

To summarize: Back in the day, someone decided that Emerald didn't use xFF as free space, but instead used x00 the way Gen II does. Actually, Emerald does use xFF as free space along with x00, but NOT ALL x00 are actually free space. So this thread talks about which areas are safe to use and which ones aren't actually safe to use. And how to modify the ini files for some programs to stop them from automagically corrupting emerald for you by using the wrong free space.

In the case of Emerald, this thread would be very helpful I think. It explains the proper areas of freespace and clears up some misconceptions about freespace in Emerald so that it prevents rom corruption.

To summarize: Back in the day, someone decided that Emerald didn't use xFF as free space, but instead used x00 the way Gen II does. Actually, Emerald does use xFF as free space along with x00, but NOT ALL x00 are actually free space. So this thread talks about which areas are safe to use and which ones aren't actually safe to use. And how to modify the ini files for some programs to stop them from automagically corrupting emerald for you by using the wrong free space.

We should make a "hackable" patch for Emerald, that fills all of the safe 00 free space with FF. Just a thought.

So, I have two little problems that I would like to get fixed before releasing Alpha 1 of my hack. They both affect the world map.

1. Some of the little dots that specify dungeons (like Diglett's Cave, Viridian Forest, Victory Road, etc.) are not in the right position. Here's a sample image:

2. In the vanilla FireRed, you only hear the "beep" when you hover over a location that's different from the current one. For some reason, in my hack, you hear it every time you put your cursor over a location. Is it because I changed routines with AdvanceMap? (I could easily upload a video to YouTube "showing" the problem if you want)

I was working on a very basic Pokémon Crystal hack. (just changing some maps, text, wild and trainer pokémon etc.)
Everything was fine until I noticed that the rom crashes when you catch a pokémon. It hasn't always been like that though. I've been testing it while I was working on it and the first time it crashed was when I tried to catch a shiny tentacool right before the Pokémon League.
I'd be very happy if somebody had an explanation for this.

I was working on a very basic Pokémon Crystal hack. (just changing some maps, text, wild and trainer pokémon etc.)
Everything was fine until I noticed that the rom crashes when you catch a pokémon. It hasn't always been like that though. I've been testing it while I was working on it and the first time it crashed was when I tried to catch a shiny tentacool right before the Pokémon League.
I'd be very happy if somebody had an explanation for this.

Thanks in advance!

I mean, I don't know exactly what you did but I assume when you edited text or some data it overwrote the code for capturing pokemon. I think kanzure at Skeetendo would know more about Pokemon Crystal than us as I can only speculate.

I was working on a very basic Pokémon Crystal hack. (just changing some maps, text, wild and trainer pokémon etc.)
Everything was fine until I noticed that the rom crashes when you catch a pokémon. It hasn't always been like that though. I've been testing it while I was working on it and the first time it crashed was when I tried to catch a shiny tentacool right before the Pokémon League.
I'd be very happy if somebody had an explanation for this.

Thanks in advance!

Well, this kind of an error has nothing to do with the things you have done in general. In fact, it sounds like you have used a tool that didn't function accurately, and so the tool has "managed" to corrupt, probably a small, part of the pokemon catching routine. You could either;

1) Try to remove the error by tracing it with debugging ("Difficult method")

Basically, since you haven't changed the game's coding at all, rather just some data the code uses like maps, texts and wild pokemon, you can simply copy paste all the data that is used for the game's code from a Pokemon Crystal (U) rom file to your buggy hacked rom.

I personally don't feel like explaining, how to divide data from code to do it "right". However, if you feel like this hack is significant enough and you really want to keep all the changes you have made, I guess I could take a look at it. Shouldn't take too long to do it anyhow.

while making my hack i ran into a bug:-
when oak gives me pokedex , the text say 'player receieved pokedex' but the pokedex doesn't show in menu. i didn't altered the script of oak.
what this could be?

while making my hack i ran into a bug:-
when oak gives me pokedex , the text say 'player receieved pokedex' but the pokedex doesn't show in menu. i didn't altered the script of oak.
what this could be?

You most likely did alter the script that is made to give you the pokedex.
The script isn't actually that of Oak - he has no script at all in case you're talking about meeting Mr. Pokemon - as the whole thing is called from the Script Header.

The script is located at offset 0x188649. Check it out with pksv, and make sure "setbit2 0xB" command is run during the script.

If that's indeed not a problem, then something else could have gone wrong, but I personally doubt that. But that's somewhat possible too.

I've encountered an error with expanding Route 101 to be 36 tiles tall, which leads the running sprites from the Birch Attacked Event to not appear, despite me moving them in AMap.

The bag itself appears, but neither Birch nor Zigzagoon do during the event. I haven't altered the original script for the event, but given that the remaining events (the two boys and sign) still work after being moved, I'm not sure if expansion is causing it or not. If it is the script, would the 3 variables after "movesprite" be the person and then their coordinates on the map?

Edit: Yep, they are the starting coordinates for them. Fixed it. Following up, does expanding a map require it to be re-pointed, or am I just fine enlarging them as I please?