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

Development: Pokémon Fire Red Hacked Engine

I'm using Jpan HE and I'm having some problems with routine WalkingScripts.
In the manual, the Jpan reports that some scripts are high-priority, such as: green Scripts in AMAP or routine that hatch eggs ....
But I saw that one of the main, do not have this priority, which is the routine of wild Pokemon.
If you have enabled WalkingScripts when you walk on the grass or any other tile with pokemon appearance, the pokemon does not appear even if you have a rate of 100%. but if you change the side where the player is looking, the Pokemon appear.

My question is: Does anyone know how to change the priority for the routine that loads the wild pokemon is loaded before WalkinScripts routine?
If you read the documentation entirely, JPAN used some other function combined with the walking script to make it functional. If you have further questions feel free to vm me since I kinda read through the walking script part tediously..
 
the attachments won't download. Also, I'm interested in making a dark/humorous all around more grown up version of firered and have absolutely no experience in hacking. Can you point me in the right direction here? I just need EVERY tool available (or at least the best of every type) and some tutorial guidance. Thanks!
 
how could i download it?

the attachments won't download. Also, I'm interested in making a dark/humorous all around more grown up version of firered and have absolutely no experience in hacking. Can you point me in the right direction here? I just need EVERY tool available (or at least the best of every type) and some tutorial guidance. Thanks!

The link was re-uploaded by Turtl3Skulll HERE.
Happy hacking!

EDIT: For Pastoryeats, This thread has a list of the most commonly used tools and tutorials and links to them.
 
Last edited:
I'm using Jpan HE and I'm having some problems with routine WalkingScripts.
In the manual, the Jpan reports that some scripts are high-priority, such as: green Scripts in AMAP or routine that hatch eggs ....
But I saw that one of the main, do not have this priority, which is the routine of wild Pokemon.
If you have enabled WalkingScripts when you walk on the grass or any other tile with pokemon appearance, the pokemon does not appear even if you have a rate of 100%. but if you change the side where the player is looking, the Pokemon appear.

My question is: Does anyone know how to change the priority for the routine that loads the wild pokemon is loaded before WalkinScripts routine?

Yeah, I have encountered that also, but it's very easy to make a trick on that, use the Wild data switch and set it to 0x0000000
 
Last edited:
Yeah, I have encountered that also, but it's very easy to make a trick on that, use the Wild data switch and set it to 0x0000000

Um ... I will test!
Could you please explain to me exactly how this will work?
The why of setting 0x000000 will make the routine of Pokemon load before the routine of steps?
 
I'm using Jpan HE and I'm having some problems with routine WalkingScripts.
In the manual, the Jpan reports that some scripts are high-priority, such as: green Scripts in AMAP or routine that hatch eggs ....
But I saw that one of the main, do not have this priority, which is the routine of wild Pokemon.
If you have enabled WalkingScripts when you walk on the grass or any other tile with pokemon appearance, the pokemon does not appear even if you have a rate of 100%. but if you change the side where the player is looking, the Pokemon appear.

My question is: Does anyone know how to change the priority for the routine that loads the wild pokemon is loaded before WalkinScripts routine?

I don't think you can do that. Inherently, the wild Pokemon rolling will not happen if a script is enabled. The overworld routine itself checks if a script is running, and if none are, then it does the per step routines. Which is why, if you're in an applymovement script things like your repel don't run out.

For actual offsets,

This is the per step routines execution as well as special tiles:
ROM:08056488 BL sub_806CAC8

The check is right above it, here:
ROM:0805647C BL script_env_2_is_enabled

It's not trivial to make this behavior non-permanent and I don't actually recommend you to change it here. Instead, I think it would be way better to make your own "execute script" routine right after the wild battle checks, to solve all of these issues :D
 
Um ... I will test!
Could you please explain to me exactly how this will work?
The why of setting 0x000000 will make the routine of Pokemon load before the routine of steps?

There is a RAM OFFSET that JPAN stated on his hack engine that handles the pointer of the wild pokemon data that appears on the current map, making it 0x00000000 will tell the game that no wild pokemon data will be loaded, you can revert the wild data back by setting the wild data switch canceller routine-special.

Regarding on how to make it work, look on Turtl3skull's post JPAN Hacked Engine tutorials, there's an explanation and script example of the routine on how it really works
 
There is a RAM OFFSET that JPAN stated on his hack engine that handles the pointer of the wild pokemon data that appears on the current map, making it 0x00000000 will tell the game that no wild pokemon data will be loaded, you can revert the wild data back by setting the wild data switch canceller routine-special.

Regarding on how to make it work, look on Turtl3skull's post JPAN Hacked Engine tutorials, there's an explanation and script example of the routine on how it really works

OK.
From what I understand, this makes no pokemon appear, right?
If so, it is precisely the opposite that I need.

The "WalkingScript" I have, checks / write information in ram depending on location. if the OW of the player is not in the right place, it finishes the script, but if it is, runs the script. the problem is: when the player is somewhere that has a chance to appear pokemon and moves past one tile to another, the routine that loads the wild pokemon is skipped to my "WalkinScript". Thus, any pokemon not appear where it should appear. Unless, instead of moving from one tile to another, just change the direction the OW this upset, so the routine of Pokemon Wild loads normally.

So my question is, would be how to make the routine of wild Pokémon have priority over "WalkingScript"?
 
OK.
From what I understand, this makes no pokemon appear, right?
If so, it is precisely the opposite that I need.

The "WalkingScript" I have, checks / write information in ram depending on location. if the OW of the player is not in the right place, it finishes the script, but if it is, runs the script. the problem is: when the player is somewhere that has a chance to appear pokemon and moves past one tile to another, the routine that loads the wild pokemon is skipped to my "WalkinScript". Thus, any pokemon not appear where it should appear. Unless, instead of moving from one tile to another, just change the direction the OW this upset, so the routine of Pokemon Wild loads normally.

So my question is, would be how to make the routine of wild Pokémon have priority over "WalkingScript"?

oh, I misunderstood your question
so what you want is to have a wild data when walking script is activated.

The trick there is
Code:
...
getplayerpos 0x8004 0x8005 /make it var 8004 and 8005 so it can work with the tile specials/
special2 0x8006 0x7F /Tile attributes getter/
compare 0x8006 0x1 /grass attribute/
if 0x1 goto @grassbattle
compare 0x8006 0x2 /water attribute/
if 0x1 goto @waterbattle
compare 0x8006 0x22 /water attribute/
if 0x1 goto @waterbattle
...

#org @grassbattle
special 0x97 /random grass battle generator/
release
end

#org @waterbattle
special 0x98 /random water battle generator/
release
end

hope that helps
 
oh, I misunderstood your question
so what you want is to have a wild data when walking script is activated.

The trick there is
...

hope that helps

actually I thought about it. But I will have to find the RAM, which carry wild Pokemon of each map. so even if it is changed in AMAP, the script will not need to be changed ... I'll try here. Thank you!
 
the attachment to jpan's clean patch is not working. can anyone provide me another link?

edit- View Turtl3Skulll's link.It contains both clean patch and engine. Thanks Turtl3Skulll
 
Last edited:
Back
Top