Jump to content

Recommended Posts

Posted (edited)

Are there any save editors that has the ability to edit Event Flags like editing the chosen starter Pokemon, edit Legendary Pokemon whether it is captured or not etc...

Edited by Ed Carlos
Posted
8 hours ago, Kaphotics said:

PKHeX can edit event flags / variables in gen3, but not everything is documented.

Anything in particular that needs to be documented? In terms of what it does to the game/story progression. 

Posted

PKHeX exposes the event flags but only previously documented event flag indexes are included. All 'custom' (ie not known) flag toggling must be done in the Research Tab.

Only R/S have some flags documented. 

https://github.com/kwsch/PKHeX/blob/78a557c3cdaa6f48b42cc96df8ccb4d20b897937/PKHeX.Core/Resources/text/other/flags_rs.txt

from the disassembly:

https://github.com/pret/pokeruby/blob/c47c3abe65e0e0419b691f5d0b6ea93c7b972191/include/flags.h

You can figure out what flag does what (ie respawning legends) by either looking at the game's disassembly (which flag ID is being checked in the event script) or you can do a before/after comparison in the research tab.

 

Posted

I was actually working on documenting all the Gen 3 legend/static rebattle flags last month, but since then I've been distracted or too busy with other things. I can post what I have.

Regirock Battled: 935 Set
Regice Battled: 936 Set
Registeel Battled: 937 Set

These work for RS, haven't tested with Emerald yet. I can try to find time to document more battle flags this week.

Stuff like Kyogre/Groudon in the Cave or Origin weren't working. I could respawn them, but not trigger them to come towards you(since you can't actually press A in front of them).

  • Like 1
Posted

https://github.com/pret/pokeruby/blob/d9e59a388c7c4b2464769963b3d58980ce742f70/data/maps/events/IslandCave.inc

IslandCave_MapObjects:: @ 838E674
	object_event 1, MAP_OBJ_GFX_REGICE, 0, 8, 0, 7, 0, 3, 8, 0, 0, 0, 0, 0, 0, IslandCave_EventScript_15EF9D, 936, 0, 0

note the 'spawn' flag at the end

should work for most legendary encounters

SkyPillar_Top_MapObjects:: @ 838EE50
	object_event 1, MAP_OBJ_GFX_RAYQUAZA, 0, 14, 0, 6, 0, 3, 8, 17, 0, 0, 0, 0, 0, SkyPillar_Top_EventScript_15F316, 773, 0, 0

^ rayquaza

====

https://github.com/pret/pokeruby/blob/9ba9993be18af162239838cfefe23f535e291ac0/data/scripts/maps/CaveOfOrigin_B4F.inc

https://github.com/pret/pokeruby/blob/d9e59a388c7c4b2464769963b3d58980ce742f70/data/maps/events/CaveOfOrigin_B4F.inc

CaveOfOrigin_B4F_MapObjects:: @ 838D880
	object_event 1, 248, 0, 9, 0, 10, 0, 3, 8, 0, 0, 0, 0, 0, 0, 0x0, 825, 0, 0

Possible that flag 825 has something to do with the Kyogre/Groudon trigger spawn, can't see any other reference though.

CaveOfOrigin_B4F_MapCoordEvents:: @ 838D8A0
	coord_event 9, 13, 3, 0, 0x409b, 0, 0, CaveOfOrigin_B4F_EventScript_15DDD7

15DDD7 is the map calling the Kyogre/Groudon event, looks like 0x409b (event constant) should be set to 0 to reset the event?

https://github.com/pret/pokeruby/blob/9ba9993be18af162239838cfefe23f535e291ac0/data/scripts/maps/CaveOfOrigin_B4F.inc#L75

image.png

 

Edit: can confirm that setting the above constant to 0 allows you to rebattle (sprite doesn't show, but triggers the event when you stand in front of it)

image.png

  • Like 1
Posted
10 hours ago, Kaphotics said:

Edit: can confirm that setting the above constant to 0 allows you to rebattle (sprite doesn't show, but triggers the event when you stand in front of it)

image.png

 

Unsetting flag 825 will show the sprite, along with fixing constant 155 for the event trigger. Can confirm it works for both Ruby and Sapphire.

I also just tested the above Regi flags, and they work for Emerald as well. Rayquaza at 773 works for RS only.

-----

Other legend/static battle flags I'll try to document are:

RS: Island Lati, possibly the roaming Lati

Emerald: Rayquaza, Island Lati, possibly roaming Lati, Mew, Deoxys, Ho-oh, Lugia, Sudowoodo

FRLG: Articuno, Zapdos, Moltres, Mewtwo, eastern and western Snorlax, possibly roaming Johto beast, Deoxys, Ho-oh, Lugia.

I don't think I'm forgetting anything. Groudon and Kyogre in Emerald may be difficult with the randomly spawning caves, but we'll see.

I'll try to find the time. For some I'll probably have to grab some used savefiles off Gamefaqs that haven't had anything battled yet.

Posted (edited)

Hey there.

I'm doing work on finding stuff for Gen 2, but thought I'd just quickly find out the starter flags for Gen 3, so here they are. 

Btw sorry I couldn't make out FRLG flags that I had to manually look into them via HxD. Hope it still helps!

RS:
Constant 35:
0: Treecko
1: Torchic
2: Mudkip

FRLG:

Offset 40E2: Rival starter

0: Bulbasaur
2: Charmander
1: Squirtle

Offset 3EE5: Ball left at Oak's

13: Charmander (Squirtle chosen)
16: Bulbasaur (Charmander chosen)
15: Squirtle (Bulbasaur chosen)

Emerald:
Constant 41:
0: Treecko
1: Torchic
2: Mudkip

Edited by Holla!
  • Like 1
Posted (edited)

Since I'm not really focused on this Gen and am really tired rn, I'll just leave my saves here if it can be of any elucidation on the matter for anyone else interested in doing the work.

 

FRLG Starter saves.rar

Edited by Holla!
Just FRLG
Posted

I think the easiest way to research gen 3 flags and how they work is to use a script editor and search how the game manages the flags, since for example in emerald to re-enable the full groundon/kyogre event you'll find information at the weather station script you'll find how the game handles them for example.

I did research the flags too some time ago, in fact I should have a script (to be used as a wondercard) that re-enables all emerald legendary battles, I even made it so it will only work if you have beaten the pokemon league. The problem will be finding it, since I've moved recently and all my data stuff is mixed between computers.

  • Like 1
  • 9 months later...
Posted

Have you found that script perchance?  I'm mainly interested in fixing the event with Rayquaza.  I found out battling Rayquaza in Pokemon Emerald when you first start the game causes the game to believe that the event has already happened later on when you are taken to the Cave of Origins to talk with Wallace, which causes you to be stuck with Groudon and Kyogre battling in Sootopolis with no way around it.

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