• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • It's time to vote for your favorite Pokémon Battle Revolution protagonist in our new weekly protagonist poll! Click here to cast your vote and let us know which PBR protagonist you like most.
  • 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.

How to change the birch battle in the beginning of Emerald?

  • 1
    Posts
    3
    Years
    • Seen Aug 28, 2021
    Hi folks,

    I am currently doing my first ROM hack, which will be a remake for Emerald. I want to change the very first battle where you save prof. Birch, but i am not very good at scripting.
    I want to change the battle from the standard zigzagoon to a Marill. I am using Advance map and XSE. I assume the script i will have to edit is that of the bag on the floor, but i am not sure what value to change, and to what.
    This is the script that the bag gives you:

    '---------------
    #org 0x1EBE16
    lock
    faceplayer
    setflag 0x860
    setflag 0x52
    fadescreen 0x1
    hidesprite 0x4
    movesprite 0xFF 0x6 0xD
    applymovement MOVE_PLAYER 0x82725A4
    waitmovement 0x0
    special 0x9F
    waitstate
    applymovement 0x2 0x81EBE8D
    waitmovement 0x0
    msgbox 0x81EBF12 MSG_KEEPOPEN '"PROF. BIRCH: Whew[.]\pI was in the..."
    special 0x0
    setflag 0x2D0
    clearflag 0x2D1
    setflag 0x2BC
    setvar 0x4084 0x2
    setvar 0x4060 0x3
    clearflag 0x4000
    checkgender
    compare LASTRESULT 0x0
    if 0x1 call 0x81EBE85
    compare LASTRESULT 0x1
    if 0x1 call 0x81EBE89
    warp 0x1 0x4 0xFF 0x6 0x5
    waitstate
    release
    end

    '---------------
    #org 0x1EBE85
    setflag 0x2D2
    return

    '---------------
    #org 0x1EBE89
    setflag 0x2F8
    return


    '---------
    ' Strings
    '---------
    #org 0x1EBF12
    = PROF. BIRCH: Whew[.]\pI was in the tall grass studying wild\nPOKéMON when I was jumped.\pYou saved me.\nThanks a lot!\pOh?\pHi, you're [player]\v\h05!\pThis is not the place to chat, so come\nby my POKéMON LAB later, okay?


    '-----------
    ' Movements
    '-----------
    #org 0x2725A4
    #raw 0x27 'Step on the Spot Left (Fastest)
    #raw 0xFE 'End of Movements

    #org 0x1EBE8D
    #raw 0xB 'Step Right (Normal)
    #raw 0xFE 'End of Movements


    If anyone could help me out here that would be amazing! Thanks in advance.
     
    You can't edit that zigzagoon by editing that script, its species is defined in the game's code (as shown here).
    Since you're not using decomp, you will have to find the offset of the bytes that correspond with that SPECIES_ZIGZAGOON in the code. I would imagine someone has posted it on these forums at some point but I couldn't find it with a quick search.
     
    Hi folks,

    I am currently doing my first ROM hack, which will be a remake for Emerald. I want to change the very first battle where you save prof. Birch, but i am not very good at scripting.
    I want to change the battle from the standard zigzagoon to a Marill. I am using Advance map and XSE. I assume the script i will have to edit is that of the bag on the floor, but i am not sure what value to change, and to what.
    This is the script that the bag gives you:

    '---------------
    #org 0x1EBE16
    lock
    faceplayer
    setflag 0x860
    setflag 0x52
    fadescreen 0x1
    hidesprite 0x4
    movesprite 0xFF 0x6 0xD
    applymovement MOVE_PLAYER 0x82725A4
    waitmovement 0x0
    special 0x9F
    waitstate
    applymovement 0x2 0x81EBE8D
    waitmovement 0x0
    msgbox 0x81EBF12 MSG_KEEPOPEN '"PROF. BIRCH: Whew[.]\pI was in the..."
    special 0x0
    setflag 0x2D0
    clearflag 0x2D1
    setflag 0x2BC
    setvar 0x4084 0x2
    setvar 0x4060 0x3
    clearflag 0x4000
    checkgender
    compare LASTRESULT 0x0
    if 0x1 call 0x81EBE85
    compare LASTRESULT 0x1
    if 0x1 call 0x81EBE89
    warp 0x1 0x4 0xFF 0x6 0x5
    waitstate
    release
    end

    '---------------
    #org 0x1EBE85
    setflag 0x2D2
    return

    '---------------
    #org 0x1EBE89
    setflag 0x2F8
    return


    '---------
    ' Strings
    '---------
    #org 0x1EBF12
    = PROF. BIRCH: Whew[.]\pI was in the tall grass studying wild\nPOKéMON when I was jumped.\pYou saved me.\nThanks a lot!\pOh?\pHi, you're [player]\v\h05!\pThis is not the place to chat, so come\nby my POKéMON LAB later, okay?


    '-----------
    ' Movements
    '-----------
    #org 0x2725A4
    #raw 0x27 'Step on the Spot Left (Fastest)
    #raw 0xFE 'End of Movements

    #org 0x1EBE8D
    #raw 0xB 'Step Right (Normal)
    #raw 0xFE 'End of Movements


    If anyone could help me out here that would be amazing! Thanks in advance.

    It will take a lot of effort.You can replace the whole script,Do some hex editings or you can just avoid the script.Change the map connections in advance map and you're all set.
     
    Back
    Top