Jump to content

Fixing roaming legendaries in place?


Recommended Posts

Hey guys I've got a question,

as I absolutely hate catching roaming legendaries I wanted to ask if it is possible to modify a ROM file to make a roaming Pokemon stay in one specific place? If not, could it be achieved through RAM hacking? The game I'm asking this for in particular is HeartGold but it would be great if it could be achieved in any generation of course ^^

I know of a Action Replay code for FR/LG and Emerald which actually makes this possible but it only works for the German versions of the games (haven't tried porting the codes to the US ROM since I'm German anyway). This is the code for the German Emerald version which fixates Lati@s on Route 118: E8F3885D 719FA37D

Maybe someone could look into that code since I'm not really familiar with GBA code types, NDS would be easier to understand for me.

I'd be really glad if somebody could enlighten me on that. I know the basics of unpacking and repacking a DS ROM however I have never done any sort of ROM hacks so I wouldn't know where to start.

Thanks in advance,

Michael

EDIT: I should probably also say that I do have some programming skills so scripting or the like shouldn't be too much of an issue.

EDIT2: Well....that was easy..

94000130 FFF30000
621D0594 00000000
B21D0594 00000000
00001A68 0000000F
D2000000 00000000

: use this code in the US version of HeartGold to fixate Latias on Route 7, would still be nice to know if/how that could be achieved through ROM hacking to be able to do this with XY as well.

EDIT3: So I played around with PPRE a bit and I found the scripts which trigger Raikou, Entei and Latias to roam. The scripts call a function which uses the command "ActSwarmPoke x" (x=3 for Latias, x=1 or 2 for Raikou/Entei, idk which one is which). Is there some way for me to edit what these ActSwarmPoke commands do? Or can I let the game automatically trigger a fight with them right away? (Which would be pretty problematic when two roamers are triggered at the same time as it is with Raikou and Entei, I guess).

EDIT4: Sorry for all these edits but as I experiment more and more I'm coming closer to my goal. I've now set up a wild battle with Latias if I talk to a certain NPC. That battle works completely fine. However, is there a way for me to make the game check if the legitimate roaming Latias has been activated so that it only appears after talking to Steven in front of the fanclub in Vermillion. Also, how can I then deactivate Latias? I mean of course I have to set a specific flag but how can I determine which one it is?

This is all an entirely new territory for me but I'd really appreciate it if you guys could give me some directions.

Edited by MichiS97
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...