• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

Sierra's MEGA-HUGE XSE Scripting Tutorial

3
Posts
11
Years
    • Seen Jun 19, 2016
    Use Cyclone instead :) It's easier when it comes to creating wild battles.

    Cyclone is a tile editor n I'm not lookin for that. I just want the wildbattle script that can play the legendary music while in battle. And another question that came to me right now. How can I get the Regi battle music from Emerald to Firered?
     

    Sniper

    ふゆかい
    1,412
    Posts
    10
    Years
  • Cyclone is a tile editor n I'm not lookin for that. I just want the wildbattle script that can play the legendary music while in battle. And another question that came to me right now. How can I get the Regi battle music from Emerald to Firered?

    Sorry, I meant PokeTronic. You need to export the music from Emerald by using sappy then import it to FireRed.
     
    3
    Posts
    11
    Years
    • Seen Jun 19, 2016
    Sorry, I meant PokeTronic. You need to export the music from Emerald by using sappy then import it to FireRed.
    Do u have a good copy of PokeTronic cause the ones that exist on download sites most times dont work plus have viruses. The last time I tried to download it from a couple of sites it was not workin plus I got a virus. So if u have it n u can give it tom me I'd be glad.
     
    1
    Posts
    10
    Years
    • Seen Oct 9, 2017
    I can't figure out how to actually get the rom to use the code! NOTHING I CAN FIND WILL TELL ME! I can script a bit but I can never get the script into the ROM! Please help
     

    machomuu

    Stuck in Hot Girl Summer
    10,507
    Posts
    16
    Years
  • I can't figure out how to actually get the rom to use the code! NOTHING I CAN FIND WILL TELL ME! I can script a bit but I can never get the script into the ROM! Please help
    Watch this rather terrible textless, voiceless tutorial I made in all of 5 minutes. It's bad, but it's to the point and I made it on the spot.

    Spoiler:
     

    Tyranitar Killer

    Tyranibeast
    72
    Posts
    10
    Years
  • Nice tutorial, Just wondering two things you didn't put in,
    1. How to do a script that stops you from passing untill you have done something
    Here I want one where a guy stops you from entering a gym as the leader is gone until you have beaten 7 gyms
    2. How do you get the Follow-me script
     

    Sniper

    ふゆかい
    1,412
    Posts
    10
    Years
  • Nice tutorial, Just wondering two things you didn't put in,
    1. How to do a script that stops you from passing untill you have done something
    Here I want one where a guy stops you from entering a gym as the leader is gone until you have beaten 7 gyms
    2. How do you get the Follow-me script

    1. Use checkflag and
    2. Check Research & Development section
     
    7
    Posts
    10
    Years
    • Seen May 20, 2014
    I'm having trouble fixing my scripts. I would modify my script on a separate .rbc file, then open up the old script from AdvanceMap, then paste the modified script over it, then click compile. When I close XSE and re-open the script from AdvanceMap, it just shows the old script. I've tried it many times, keeping the same offset. I don't want to have to change the offset and take up more space every time I modify the script :(
     

    DaisukE

    Just feel it burning ^^
    113
    Posts
    10
    Years
  • 0x3
    Spoiler:
    Replace the pointer hello or the first one..
    Just a small error in the script...may have been told before...but yah its just an small human error......just saying no offense...
     
    Last edited:

    Sniper

    ふゆかい
    1,412
    Posts
    10
    Years
  • I'm having trouble fixing my scripts. I would modify my script on a separate .rbc file, then open up the old script from AdvanceMap, then paste the modified script over it, then click compile. When I close XSE and re-open the script from AdvanceMap, it just shows the old script. I've tried it many times, keeping the same offset. I don't want to have to change the offset and take up more space every time I modify the script :(

    That's not good. Rather just put your new script for example:

    Code:
    #dynamic 0x800000
    
    #org @start
    msgbox @1 0x6
    release
    end
    
    = This is my script
    Input on XSE 1.1.1 then click the blue gears to compile rather than saving it to .rbc then put the offset in the NPC. I suggest you use A-map 1.92 if something comes up wrong just tell me. Re-read the tutorial to know if what script you would really want to put in.

    Replace the pointer hello or the first one..
    Just a small error in the script...may have been told before...but yah its just an small human error......just saying no offense...

    And no. If you edit a saved script on the rom. It would cause damage to other script causing it to bug. If the number of words is more than the original script, the space will grow bigger and that's why it leads to bug because it saves over to another saved script.
     
    Last edited:

    DaisukE

    Just feel it burning ^^
    113
    Posts
    10
    Years
  • That's not good. Rather just put your new script for example:

    Code:
    #dynamic 0x800000
    
    #org @start
    msgbox @1 0x6
    release
    end
    
    = This is my script
    Input on XSE 1.1.1 then click the blue gears to compile rather than saving it to .rbc then put the offset in the NPC. I suggest you use A-map 1.92 if something comes up wrong just tell me. Re-read the tutorial to know if what script you would really want to put in.



    And no. If you edit a saved script on the rom. It would cause damage to other script causing it to bug. If the number of words is more than the original script, the space will grow bigger and that's why it leads to bug because it saves over to another saved script.


    Do u even know scripting..no offense but u should have read carrefully what i posted...

    I said the pointers are not set properly....and btw its not an compiled script...ugh.....and aif u r talking about editing a script in advance map...it would give u pointers like 0x(offset) but in xse its our made llike @start.....ummmm...kinda sorry if i was rude but please check that my posts spoiler in quotes.....sorry if i was rude..


    Looks like it was just a misunderstanding
     
    Last edited:
    4
    Posts
    10
    Years
    • Seen Sep 6, 2015
    Hello everyone,

    I'm having some trouble compiling my scripts...

    The script I'm using is:
    '---------------
    #org 0x527702
    checkflag 0x994
    if 0x1 goto 0x527703

    '---------------
    #org 0x527703
    lockall
    msgbox 0x8527704 MSG_KEEPOPEN '"Hmmm... \pI should beat the\nPokem..."
    closeonkeypress
    applymovement MOVE_PLAYER 0x8527705
    waitmovement 0x0
    releaseall
    end


    '---------
    ' Strings
    '---------
    #org 0x527704
    = Hmmm... \pI should beat the\nPokemon league first!


    '-----------
    ' Movements
    '-----------
    #org 0x527705
    #raw 0x9 'Step Up (Normal)
    #raw 0xFE 'End of Movements

    I want to make a certain area where only players who have defeated the league champion can go, I added a script tile in the hall of fame that sets the players flag 994.

    When I compiled it and added the offset to the script tile in Advance Map, it works and looks fine, but when I trigger it in game, the script resets into this:
    '---------------
    #org 0x527702
    checkflag 0xC269
    callstd 0xFE
    buffercontestype 0xAD 0xADAD
    nop
    (I used free space finder to find a free offset, when I checked it, it was empty/free, but after it resetted to the script above, it stays like that)

    I have no idea what causes this :/.

    More info:
    Advance map version: 1.9.5
    XSE version: 1.1.1
    Pokemon version: Emerald
    Experience: little ;D

    Please get back to me a.s.a.p. :0.

    Sincerely,
    DoC
     
    Last edited:
    6,355
    Posts
    18
    Years
    • Seen Apr 16, 2020
    Hello everyone,
    I'm having some trouble compiling my scripts...
    The script I'm using is:
    I want to make a certain area where only players who have defeated the league champion can go, I added a script tile in the hall of fame that sets the players flag 994.
    When I compiled it and added the offset to the script tile in Advance Map, it works and looks fine, but when I trigger it in game, the script resets into this:
    (I used free space finder to find a free offset, when I checked it, it was empty/free, but after it resetted to the script above, it stays like that)
    I have no idea what causes this :/.
    More info:
    Advance map version: 1.9.5
    XSE version: 1.1.1
    Pokemon version: Emerald
    Experience: little ;D
    Mail: [email protected]
    Please get back to me a.s.a.p. :0.
    Sincerely,
    DoC

    You did look for free space, but the commands you used at 527702 take up space that is written over 527703 and 527704. For example, the checkflag command needs X bytes and the goto one needs Y bytes, so your next offset should be X+Y bytes after 527702. I suggest simply scripting dynamically, you simply define an offset at the beginning and the script editor compiles everything in free space and returns the offsets used to you. So for example:

    #dynamic 0x80000

    #org @start
    checkflag 0x994
    if 0x1 goto @next
    end

    #org @next
    lockall
    msgbox @message MSG_KEEPOPEN '"Hmmm[.] \pI should beat the\nPokém..."
    closeonkeypress
    applymovement MOVE_PLAYER @move
    waitmovement 0x0
    releaseall
    end

    #org @message
    = Hmmm[.] \pI should beat the\nPokémon league first!

    #org @move
    #raw 0x9 'Step Up (Normal)
    #raw 0xFE 'End of Movements


    I put an end command after the checkflag, since if the flag is not set the game will freeze otherwise.
    Also, if you're using trigger scripts, I suggest not using flags at all since they're unnecessary. Trigger scripts take a variable value and a number. So for example, if your script's variable value is 52C0 and its variable value is 0, the trigger script will always be executed as long as 52C0's value in the game is 0, which is the default value. So instead of setting a flag, once the setvar 0x52C0 0x1 command is executed in any script, your trigger script would not execute again, unless you set the variable's value to 0 again.
     
    4
    Posts
    10
    Years
    • Seen Sep 6, 2015
    Oh thanks a lot for the help!

    I thought the @stuff was outdated, since I probably messed up the first time using it lol.
    Will take a look at what you two said in a couple of hours, when I'm home.

    Thanks again!

    -DoC
     
    4
    Posts
    10
    Years
    • Seen Sep 6, 2015
    Hmm... It works better now, thanks a lot for the dynamic scripting explenation!~

    But now when the flag isn't set and I pass the tile, the game freezes (sound still continues to roll). However when the flag is set, it works fine (it lets me pass without stopping or so).

    How should I fix this? :o
     
    6,355
    Posts
    18
    Years
    • Seen Apr 16, 2020
    Hmm... It works better now, thanks a lot for the dynamic scripting explenation!~

    But now when the flag isn't set and I pass the tile, the game freezes (sound still continues to roll). However when the flag is set, it works fine (it lets me pass without stopping or so).

    How should I fix this? :o

    Can you post the script you compiled? And did you include an "end" command after the "goto" part in the beginning of the script like I said in my post?
     
    Back
    Top