Zelda OoT Cheats Plugin

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Nanquitas, Apr 10, 2016.

?

How do you judge the stability of the last update ?

Poll closed Aug 5, 2016.
  1. No crash so far, I love it !

    36.4%
  2. Really stable in a global use. Can crash on particular action.

    45.5%
  3. I experienced a few crash with no reason apparent so use with caution.

    9.1%
  4. Awful, the plugin need to be redone.

    9.1%
  1. Relsig

    Relsig Newbie

    Newcomer
    3
    1
    May 28, 2017
    United States
    Thanks, I checked the codes I planned on using and they all seem to be working well except a few small things:

    Moon Jump: makes the game unstable, it crashes randomly on day and area changes. if you're writing it as a word value (gateshark 0x0 command) this is probably why, it is a short (gateshark 0x1 command). I tested both word and short using the fort 42 code and both work but word causes random crashes as described so if you plan on looking into this look there first.

    Change Day: day 1 and 2 turn off and on in a radio button like way but 3 and 4 don't turn off/on at all (trivial as the codes all appear to work as intended but this may confuse some people)
     


  2. Nova77

    Nova77 Newbie

    Newcomer
    4
    5
    Mar 25, 2017
    Canada
    It's a 16-bit write. I noticed when testing it can crash on occasion. I wasn't able to find anything that was more stable. It's possibly due to the game and the plugin both writing to the same address at the same time. The same instability used to occur with the freeze time codes. The game constantly writes to the time variable, and the plugin constantly writes to it, and the value would be unstable and sometimes cross the night-day line, particularly when changing areas. This lead to random day changes, or even a game over if on day 3. Which is why the time flow is frozen when you freeze a particular time, keeps the game from touching the clock. Your previous time flow is of course restored when you unfreeze the time.

    Code:
        u32    pointer = READU32E(0x08041FCC); //B8041FCC 00000000
        static u8 active = 1;
    
        if (pointer == 0) //68041FCC 00000000
            return;      
    
        if (is_pressed(DR))
        {
            active = !active;
            wait_keys_released(DR);
        }
       
        if (active && is_pressed(A))           //DD000000 00000401
            WRITEU16E(pointer + 0x6A, 0x4100); //1000006A 00004100
                                               //D2000000 00000000
    Day 3 doesn't turn on because you can't really freeze day 3. When the time changes to 6am, the day is checked. If it's 1 or 2 the day variable is increased and the next day screen appears. You can of course freeze the variable to lock it so the day will just repeat. If it's 3 though, the moon crashes, so freezing the variable to 3 does nothing. As for day 4, it repeats infinitely, it's naturally frozen, so there's no point.

    Day 3 could be frozen by polling the clock, and changing the day to 2 just before 6am. Or basically what the safety switch does, but changing the day to 3 instead of 1. It would be a bit annoying though having the intense shaking and the countdown every day, as well as the cutscene for the clock tower if you're in town. For the moment, you can get a similar effect by disabling transitions, that also locks the day and causes it to loop.
     
    Relsig likes this.
  3. Relsig

    Relsig Newbie

    Newcomer
    3
    1
    May 28, 2017
    United States
    I appreciate all your hard work and the short explanations. It's unfortunate but I'll stop using moon jump for lols and only enable it when I'm ready to risk losing some progress.
     
  4. GeneraLight

    GeneraLight GBAtemp Regular

    Member
    177
    13
    Nov 20, 2012
    United States
    Would be awesome if someone could make a cheat to allow you to change between Young Link or Adult Link at any time

    OR

    Warp to any place in the game, including any child/adult version of maps.