• 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

10,078
Posts
15
Years
    • UK
    • Seen Oct 17, 2023
    ...
    Applymovement
    Waitmovement 0x0
    Setflag 0x220
    Hidesprite 0x
    ...

    Also on that @done section change the msgbox number to 0x6 - 0x4 will mean it is stuck open.
     
    24
    Posts
    9
    Years
    • Seen Jun 16, 2018
    You need to use trainerbattle 0x1 so the script continues straight after winning the battle.

    Like in Diego's example script for a Gym Leader:

    Code:
    #dynamic 0x800000
    
    #org @start
    lock
    faceplayer
    checkflag 0x820
    if 0x1 goto @done
    msgbox @2 0x6
    trainerbattle 0x1 0x001 0x0 @before @after @later
    end
    
    #org @before
    = Show me what ya got!
    
    #org @after
    = What the-?
    
    #org @later
    msgbox @3 0x6
    fanfare 0x13E
    msgbox @4 0x4
    waitfanfare
    closeonkeypress
    msgbox @5 0x6
    giveitem 0x147 0x1
    setflag 0x820
    release
    end
    
    #org @done
    msgbox @1 0x6
    release
    end
    
    #org @1
    = You should travel to Cerulean City\nto get your next badge.
    
    #org @2
    = Welcome to Pewter City Gym.\nYou want to challenge me?
    
    #org @3
    = Congratulations!\pFor beating me, you get\nthis badge!
    
    #org @4
    = \v\h01 recieved a badge!
    
    #org @5
    = Oh, and please take this.



    You don't script warps tiles - that part has nothing to do with this tutorial. The warp diego used is as part of a script, whilst you're looking at warp tiles. The [W]s in A-Map simply go on a door (or by stairs, etc.) and will automatically warp you when you move in the correct manner. The warp you have a picture of takes you to Map 3,0 - Warp 0. Which should be Pallet Town. Change the numbers to change where it goes.

    Okay then, how do I input that offset in then?
     
    10,078
    Posts
    15
    Years
    • UK
    • Seen Oct 17, 2023
    Okay then, how do I input that offset in then?

    I'm not sure what you're asking :(

    Warp Number = The number of the purple tile you are warping too (says it on the event tab)
    Map Bank = First number of a map in A-Map (IE all the towns are map bank 3)
    Map Number = Second number of a map in A-Map.​

    If you're trying to warp at the end of the script (which would fit in this thread, but you weren't very clear) then you must have the warp command present so the end is:

    warp 0xBANK 0xMAPNO 0xWARPNO 0x0 0x0
    end​

    If you don't want to warp to an actual warp tile, but co-ordinates then the last two numbers work as X and Y. Hover over the tile you will want to end up on, in a-map, and in the bottom left corner it will tell you the co-ordinates in hex. For that kind of script you use:

    warp 0xBANK 0xMAPNO 0xFF 0xXCOORD 0xYCOORD
    end​
     
    5
    Posts
    14
    Years
    • Seen Sep 19, 2014
    Hello guys. I'm quite a newbie to scripting. Anyways, I tried to make Mega Evolutions for my game and I ended up with this:

    #dynamic EB0B20

    #org @megabattle
    trainerbattle 0x0 0x001 0x0 @before @after
    msgbox @beaten 0x6
    release
    end

    #org @before
    = Go, my POKeMON, prove yourselves!
    goto @megavenusaur

    #org @after
    = Noo! My POKeMON have failed me!
    special 0x18
    compare LASTERSUT 0x19b
    if 0x1 goto @megareverse
    setvar 0x8005 0x0

    #org @beaten
    = You have inspired me. I will train/nmore and try to become like you.

    #org @megavenusaur
    special 0x18
    compare LASTRESULT 0x3
    if 0x1 goto @megastonecheck
    end

    #org @megastonecheck
    special 0xe
    compare LASTRESULT 0x62
    if 0x1 goto @megaevolve
    end

    #org @megaevolve
    setvar 0x8005 0x19b
    special 0x16
    end

    #org @megareverse
    setvar 0x8005 0x3
    special 0x16
    end

    This however doesn't work. It doesn't display the correct text - some random characters before the battle and the before pointer message displays right after the battle. My Venusaur doesn't evolve into Mega Venusaur (0x19b, replaced Chimeco), even though it is holding the leaf stone (0x62). Please help, and thank you in advance.

    P.S. I am using JPAN's Fire Red Hacked Engine, thats why there are some specials.
     
    10,078
    Posts
    15
    Years
    • UK
    • Seen Oct 17, 2023
    That's because your script is... Impossible. The two pointers in the trainer battle 0x0 command can ONLY point to text, all the rest of your script will never happen.

    Have a look at the trainerbattle 0x1 command (also in this thread). Also please make sure that your message pointers only point to message. They don't even need a 'goto' - your @beaten is the only message you've done correctly.
     

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • I need help... I'm trying to make scripts in Fire red, but every time I add one, and I walk into the script, the game just crashes. I have no idea what I'm doing wrong. (I'm a noob to scripting, however)

    This is a short script I wrote just to paste here:
    Spoiler:
     
    10,078
    Posts
    15
    Years
    • UK
    • Seen Oct 17, 2023
    LASTRESULT doesn't do work. It's telling me to define something.


    Not sure what happened here...

    if LASTRESULT doesn't work use 0x800D in its place.


    I need help... I'm trying to make scripts in Fire red, but every time I add one, and I walk into the script, the game just crashes. I have no idea what I'm doing wrong. (I'm a noob to scripting, however)

    This is a short script I wrote just to paste here:
    Spoiler:

    Put that in a person event and it should work fine :) green script tiles need to have variables selected - I believe there is a tutorial on them by KarateKid.
     
    Last edited:

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • Put that in a person event and it should work fine green script tiles need to have variables selected - I believe there is a tutorial on them by KarateKid.

    All right, I'll be sure to check it out, thank you
     

    U.Flame

    Maker of Short Games
    1,326
    Posts
    15
    Years
  • Having trouble making giveitem commands. I'm getting "Error 13 Type Mismatch on line 29. Missing #define." Here's what I have. Line 29 is the first giveitem command.
    #dynamic 0x304F18

    #org @essentials
    lock
    faceplayer
    checkflag 0x1200
    if 0x1 goto @done
    msgbox @message1 0x5
    compare 0x800D 0x1
    if 0x1 goto @take
    msgbox @message3 0x6
    release
    end

    #org @take
    setflag 0x807
    setflag 0x808
    setflag 0x809
    setflag 0x80A
    setflag 0x80B
    setflag 0x80C
    setflag 0x80D
    setflag 0x80E
    setflag 0x800
    setflag 0x801
    setflag 0x860
    givepokemon 0x97 0x64 0x0 0x0 0x0 0x0
    givepokemon 0x97 0x64 0x0 0x0 0x0 0x0
    giveitem 0x153 0x1 MSG_OBTAIN
    giveitem 0x154 0x1 MSG_OBTAIN
    giveitem 0x155 0x1 MSG_OBTAIN
    giveitem 0x156 0x1 MSG_OBTAIN
    giveitem 0x157 0x1 MSG_OBTAIN
    giveitem 0x158 0x1 MSG_OBTAIN
    giveitem 0x159 0x1 MSG_OBTAIN
    giveitem 0x15A 0x1 MSG_OBTAIN
    msgbox @message4 0x6
    setflag 0x1200
    release
    end

    #org @done
    msgbox @message2 0x6
    release
    end

    #org @message4
    = All set!

    #org @message2
    = Good luck!

    #org @message1
    = Want some testing essentials?

    #org @message3
    = ...really?

    Well, destinedjagold provided me a different version of XSE it fixed the problem. Dunno what caused it or why this one fixed it, but yay.
     
    Last edited by a moderator:

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • Having another problem. For some reason, the script doesn't move the sprites in-game (This is a script tile) (I am 100% sure they are the same event no. as in the script) The script will only show the messages and the players movements.
    Here's the script I composed (after compiling it and re-opening it):
    Spoiler:
     
    Last edited:
    10,078
    Posts
    15
    Years
    • UK
    • Seen Oct 17, 2023
    I've had problems before with move sprite not working for sprites that are far away. Judging by the large numbers you're using, this might be the case here?
     

    Squeetz

    ROM Hacker
    191
    Posts
    10
    Years
  • Once again, you helped me. They actually were too far away. Thank you sincerely, I guess you're just magic, huh. :P
     
    11
    Posts
    9
    Years
    • Seen May 30, 2019
    A question.

    Why is it that whenever I put in a script using Advanced Map, it changes everything I put in into this format:
    Spoiler:


    I'm a Newbie, a very unexprienced pathetic newbie, So these kind of things confuse me D:

    Besides that, Is there anywhere I could learn everything from the very beginning?
     
    3,044
    Posts
    9
    Years
  • A question.

    Why is it that whenever I put in a script using Advanced Map, it changes everything I put in into this format:
    Spoiler:


    I'm a Newbie, a very unexprienced pathetic newbie, So these kind of things confuse me D:

    Besides that, Is there anywhere I could learn everything from the very beginning?

    Is that the script you made?
    Anyway, here's a tutorial for newbies:
    http://www.pokecommunity.com/showthread.php?t=185188
     
    Back
    Top