marcrobledo / savegame-editors

A compilation of console savegame editors made with HTML5 technologies.
https://www.marcrobledo.com/savegame-editors/
Other
1.09k stars 227 forks source link

ToTK: Feature Request: Provide option to change current map ID. #350

Open ApacheThunder opened 1 year ago

ApacheThunder commented 1 year ago

Currently Link's position can be changed but not the map id. So for example you can't set Link to be in one of the shrines or if in a starting save can't put link into the overworld. The special intro scene is on it's own map id seperate from overworld/underworld/shrines.

I'm doing some save file comparison to try and find where the game stores this and ended up finding this:

image This is the bytes that control LInk's rotation. (starting off set in hex editor was 0x34EDC )

I suppose you could add that to the editor if you feel that is useful. Anyways I'm hoping research is done on this as I may not find this on my own and this would likely be important to have once DLC is made and we might get more map ids/areas.

Surprisingly easy to find:

image

MainField is the overworld map id. The screenshow shows the map id for the starting area of the game which is OpeningField.

Shrines start with Dungeon followed by 3 digit number. Dungeon011 was one shrine I was at while looking for this. Forget which one that is. I'm sure someone with a romfs dump could dig up all the map id names but the offset where this is stored in save appears to have been found. :D

EDIT: Confirmed it's the map ID. Changing it to MainField resulted in me spawning in Hyrule field area in the starting save. (though I constantly void out since I'm outside the tutorial island and the death box seems to already be enabled this early in the save game)

So far from what I've seen there is OpeningField, MainField, and Dungeon000 (where 000 is the shrine number). I don't know if the depths have their own map id though someone could save a game while down there to see.

marcrobledo commented 1 year ago

Depths and sky should be the same map as MainField.

I'll try to implement this as soon as possible, thank you!

ApacheThunder commented 1 year ago

Yeah I checked and found Sky/Depths to be the same map ID. It's OpeningField and Shrines that will have unique map IDs.