• 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

Baronnecro

AKA TolerantX
55
Posts
13
Years
  • I read this site and followed its instructions.
    I watched this tutorial and followed it to a T but somehow when I insert it the person EVENT just sits there not text, nothing except the sound of the text beep.


    http://www.youtube.com/watch?v=kHEN-MiaO2Q

    XSE WRITTEN:

    #dynamic 0x71D300

    #org @start
    lock
    faceplayer
    msgbox @talk1 0x6
    release
    end

    #org @talk1
    = Hey You smell like farts!


    THIS IS WHAT ADVANCE MAP SHOWS COMPILED IN THE ROM:

    '-----------------------
    #org 0x71D300
    lock
    faceplayer
    msgbox 0x871D30B '"Hey You smell like farts!"
    release
    end


    '---------
    ' Strings
    '---------
    #org 0x71D30B
    = Hey You smell like farts!

    the command msgbox @WORD 0x6 (<---- for some odd reason that "0x6" part wouldnt work in my rom or something.)
    i inserted the new line:
    boxset 0x6 (instead of the 0x6 part of previous line)
     
    Last edited:
    9
    Posts
    13
    Years
    • Seen Sep 29, 2016
    okay so I have tried to search through the forum an google, but haven't found any similar problems. so I hoped someone could answear a problem here..

    I am trying to change the whole starterpokemon event, and trying to give the player a pikachu, and the rival an eevee. I have 2 scripts, one on the pokeball, and another one at the entrance(where the bookselfs is in oaks lab).. giving ash and gary the pokemon works fine, and the battle also, however after the battle I want gary to leave, but which he dont. So I wondered if anyone could help me solve this?

    here are the script for the pokeball:

    Code:
    #dynamic 0x3B9820
    
    #org @start
    lock
    faceplayer
    checkflag 0x7000
    if 0x0 goto @ferdig
    msgbox @janei 0x5
    compare LASTRESULT 0x1
    if 0x1 goto @pika
    msgbox @enr 0x6
    release
    end
    
    #org @pika
    givepokemon 0x19 0x5 0x0 0x0 0x0 0x0
    setflag 0x828
    fanfare 0x13E
    msgbox @trer 0x4
    waitfanfare
    closeonkeypress
    setflag 0x7000
    msgbox @pikanavn 0x5
    compare LASTRESULT 0x1
    if 0x1 gosub @navn
    msgbox @firer 0x6
    checkflag 0x7000
    if 0x1 gosub @gary
    release
    end
    
    #org @gary
    applymovement 0x08 @move1
    msgbox @garys 0x6
    bufferpokemon 0x00 0x55
    msgbox @1 0x4
    waitfanfare
    closeonkeypress
    return
    
    #org @navn
    call 0x1A74EB
    return
    
    #org @ferdig
    msgbox @femr 0x6
    release
    end
    
    #org @janei
    = Oh so you have chosen Chramander.\nIndeed, it is an awesome Pokémon,\lhowever there isn't any\lCharmanders left. Don't worry\lthough here is a pikachu.
    
    #org @enr
    = OK, I see..\n..well then, go ahead and choose\lanother one
    
    #org @trer
    = Congratulations! [] obtained\ncharmander
    
    #org @pikanavn
    = name pika?
    
    #org @firer
    = take care
    
    #org @femr
    = fo shizzle ma nizzle
    
    #org @1
    = me then?
    
    #org @garys
    = Gary obtained eevee
    
    #org @move1
    #raw 0x10
    #raw 0x10
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0xFE
    
    the script for the trainerbattle:
    #dynamic 0x71AABB
    
    #org @start
    checkflag 0x4001
    if 0x1 goto @ferdig
    checkflag 0x828
    if 0x1 goto @gary
    checkflag 0x4000
    if 0x1 goto @oak
    setflag 0x4000
    end
    
    #org @oak
    msgbox @oakspeak 0x4
    applymovement 0xFF @player1
    closeonkeypress
    end
    
    #org @gary
    setflag 0x4001
    applymovement 0x08 @garymove
    trainerbattle 0x0 0x146 0x0 @before @after
    msgbox @garyafter 0x4
    closeonkeypress
    applymovement 0xFF @player2
    waitmovement 0x0
    applymovement 0x08 @garymove2
    releaseall
    end
    
    #org @ferdig
    end
    
    #org @oakspeak
    = Hey kiddo, come over here!
    
    #org @player1
    #raw 0x10
    #raw 0xFE
    
    #org @garymove
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x10
    #raw 0x10
    #raw 0xFE
    
    #org @before
    = Lets battle!
    
    #org @after
    = ahhh, MORRAKNNNNULLAAHH!!
    
    #org @garyafter
    = I'm heading for the pokemon league
    
    #org @player2
    #raw 0x10
    #raw 0x12
    #raw 0xFE
    
    #org @garymove2
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x60
    #raw 0xFE

    I think that the error is in the second script, and again, the script works fine to after the battle, but after that he just dosent move.. would apreciate any help at all :) thanks!
     
    Last edited by a moderator:
    20
    Posts
    14
    Years
    • Seen Jan 27, 2012
    best tutorial ever, it has helped me so much, i got confused for a while but eventualy i got the hang of it
     
    62
    Posts
    14
    Years
    • Seen Mar 10, 2012
    Can anyone tell me how to add the scripts to the ROMs? I've been trying for ages to no avail :(
     

    G00dbye

    Ludicolo
    7
    Posts
    13
    Years
  • Can anyone tell me how to add the scripts to the ROMs? I've been trying for ages to no avail :(

    I hope this tutorial can help you: youtube.com/watch?v=kHEN-MiaO2Q


    This is I think the best tutorial about XSE ever thank you diegoisawesome!
     
    Last edited:

    helmy96

    Now planning a hack, nid help
    23
    Posts
    14
    Years
  • Imma Still not sure of what you're talking about cause I'm not very good with numbers, but thanks anyway! :)
     

    countryemo

    Kicking against the earth!
    2,367
    Posts
    14
    Years
  • Hey,
    I was watching Pokedude's video tuts. When I was on Flags, I saw you comment about how he cant use those in your tut cause their already used.

    1) How do you create a new flag number to use (the pointer/offset?)
    2) And are we allowed to use the badge/pokedex/ect.. on the 1st post?
    ______________________________________

    New problem, Ursa Major!

    I'mtrying to compile a script but the 1st one I tried it gave me this "invalid keyword lock" something like that. SO I tried a script with out the use of lock (it should work, my friend said so!) then it gave me something like this "invalid keyword end"

    So basically I cant compile a script

    The Scripts:
    1.
    Spoiler:

    2.
    Spoiler:

     
    Last edited:
    5
    Posts
    14
    Years
    • Seen Jan 1, 2011
    Let's say I want to make a special character who you can battle. Let's also say that this character can be rematched after beating the Elite 4 but only once, and then you can repeat this procedure. What would this code look like?
     
    94
    Posts
    13
    Years
    • Seen Nov 2, 2016
    Let's say I want to make a special character who you can battle. Let's also say that this character can be rematched after beating the Elite 4 but only once, and then you can repeat this procedure. What would this code look like?
    Simple enough.

    Start your script like normal, then you'll need to set 2 flags. The first after the first battle, the 2nd after the 2nd battle.

    using XSE, something like...
    Code:
    #dynamic ;<offset >
    
    #org @main
    lock
    faceplayer
    checkflag 0x1200 ;(use any unused flag you want)
    if 0x01 goto @final
    trainerbattle ;<arguments here>
    setflag 0x1200
    release
    end
    
    #org @final
    checkflag 0x1201 ;(use any unused flag yo want)
    if 0x01 goto @nobatttle
    trainerbattle ;<arguments here>
    setflag 0x1201
    release
    end
    
    #org @nobattle
    msgbox @finished 0x6
    release
    end
    
    ;strings
    #org @finished
    =You have already defeated me twice..
    Haven't done a rough test of this but it should work.
     

    G00dbye

    Ludicolo
    7
    Posts
    13
    Years
  • Hey,
    I was watching Pokedude's video tuts. When I was on Flags, I saw you comment about how he cant use those in your tut cause their already used.

    1) How do you create a new flag number to use (the pointer/offset?)
    2) And are we allowed to use the badge/pokedex/ect.. on the 1st post?
    ______________________________________

    New problem, Ursa Major!

    I'mtrying to compile a script but the 1st one I tried it gave me this "invalid keyword lock" something like that. SO I tried a script with out the use of lock (it should work, my friend said so!) then it gave me something like this "invalid keyword end"

    So basically I cant compile a script

    The Scripts:
    1.
    Spoiler:

    2.
    Spoiler:


    This script must work:
    Code:
    #dynamic 0x71A300
    
    #org @start
    lock
    faceplayer
    msgbox @talk1 0x6
    release
    end
    
    #org @talk1
    [FONT=Times New Roman][COLOR=Black][SIZE=3]= [red_fr]Welcome to the PokéGarden, please\ndont disturb the Pokémon while your\lhere.\lHope you enjoy your stay.[/SIZE][/COLOR][/FONT]

    I didn't test it but it should work

    1) How do you create a new flag number to use (the pointer/offset?)
    You must use a never used flag number

    2) And are we allowed to use the badge/pokedex/ect.. on the 1st post?
    I don't understand this question
     

    FANOFFIRESTARTERS!!!

    Call me FOFS
    40
    Posts
    15
    Years
    • Seen Sep 11, 2021
    Help

    Here are my scripts

    Script 1
    Spoiler:


    then a simple one
    Spoiler:


    Now what bothers me is ive scripted before and they worked...not these of course...and the game is recognising faceplayer but no msgbox appears for either script. Is my rom funky or do i not have the latest XSE or is my script bad. help
     

    gamesharkhacker

    SupremoHack Entertainment Inc.
    47
    Posts
    14
    Years
  • darken screen script

    This is irrelevant but er.. heres a script to make the screen dark..

    Spoiler:



    It works for me on Pokemon RSE.
     
    20
    Posts
    16
    Years
    • Seen Jul 30, 2012
    So I'm trying to get the Lab in Cinnabar to allow me to revive all three Kanto fossils. I've commented a lot of the original code, and I'm trying to find where it prevents the Dome fossil from being recognized. I've caught the part at the beginning where it checks if either of the story fossils were revived, and I know that part works because after reviving the Old Amber and Helix fossil, the crazy scientist performs says the line if you don't have a fossil, instead of the one when there are no more fossils to revive.

    commented original code:
    Code:
    #include stditems.rbh
    #include stdpoke.rbh
    
    //---------------
    #org 0x16E459
    lock
    faceplayer
    setvar LASTRESULT 0x0    //clear last result
    checkflag 0x2EE            //check if Aerodactyl has been revived
    if 0x1 call 0x816E87D    //if revived, check if a story fossil was revived
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E873    //if a story fossil and Aerodactyl were revived, end script
    compare 0x406A 0x2
    if 0x1 goto 0x816E712
    compare 0x406A 0x1
    if 0x1 goto 0x816E708
    call 0x816E4C8            //check if Helix Fossil is in inventory
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E520    //if yes go to check if Old Amber and ask which (if any) of those two to revive
    call 0x816E4E0            //check if Dome Fossil is in inventory
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E562    //if yes, go to check if old Amber and ask which (if any) of the two to revive.
    call 0x816E4F8            //check if Old amber is picked up and not revived.
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E5A4    //if so, ask whether to revive old Amber
    msgbox 0x819A25E MSG_KEEPOPEN //"Hiya!\pI am important doctor.\nYes..."
    goto 0x816E516
    
    //---------------
    #org 0x16E87D
    checkflag 0x273            //if we got helix fossil
    if 0x1 goto 0x816E895    //return 1 if in inventory, else 0
    checkflag 0x272            //if we got dome fossil
    if 0x1 goto 0x816E8A4    //return 1 if in inventory, else 0
    goto 0x816E510            //else return 0
    
    //---------------
    #org 0x16E873
    msgbox 0x819A4BD MSG_KEEPOPEN //"Aiyah!\nYou come again!"
    release
    end
    
    //---------------
    #org 0x16E712
    compare 0x4069 0x1
    if 0x1 goto 0x816E734
    compare 0x4069 0x2
    if 0x1 goto 0x816E779
    compare 0x4069 0x3
    if 0x1 goto 0x816E7BE
    end
    
    //---------------
    #org 0x16E708
    msgbox 0x819A487 MSG_KEEPOPEN //"I take a little time!\nYou go for ..."
    release
    end
    
    //---------------
    #org 0x16E4C8
    checkflag 0x273            //was helix fossil picked up
    if 0x0 goto 0x816E510    //if not
    checkflag 0x2ED            //or if already revived
    if 0x1 goto 0x816E510    //return 0
    setvar LASTRESULT 0x1    //
    return                    //else return has Helix Fossil
    
    //---------------
    #org 0x16E520
    preparemsg 0x819A25E //"Hiya!\pI am important doctor.\nYes..."
    waitmsg
    call 0x816E4F8            //check if old amber is picked up and not revived
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E5D6    //if so, go here
    multichoice 0x0 0x0 0x15 0x0    //ask if Helix fossil or none
    copyvar 0x8000 LASTRESULT
    compare 0x8000 0x0
    if 0x1 goto 0x816E644    //if Helix Fossil revive it
    compare 0x8000 0x1
    if 0x1 goto 0x816E516    //if no, end script
    compare 0x8000 0x7F
    if 0x1 goto 0x816E516    //else, end script
    end
    
    //---------------
    #org 0x16E4E0
    checkflag 0x272            //was dome fossil picked up
    if 0x0 goto 0x816E510    //if not
    checkflag 0x2EC            //or if already revived
    if 0x1 goto 0x816E510    //return 0
    setvar LASTRESULT 0x1
    return                    //else return has Dome Fossil
    
    //---------------
    #org 0x16E562
    preparemsg 0x819A25E //"Hiya!\pI am important doctor.\nYes..."
    waitmsg
    call 0x816E4F8            //check if Old Amber is picked up and not revived
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E60D    //if so go to Dome and Amber choice
    multichoice 0x0 0x0 0x16 0x0    //revive Dome?
    copyvar 0x8000 LASTRESULT
    compare 0x8000 0x0        //if Dome
    if 0x1 goto 0x816E682    //go to Dome revive
    compare 0x8000 0x1        //
    if 0x1 goto 0x816E516
    compare 0x8000 0x7F
    if 0x1 goto 0x816E516
    end
    
    //---------------
    #org 0x16E4F8
    checkflag 0x25E            //was Old Amber picked up
    if 0x0 goto 0x816E510    //if not
    checkflag 0x2EE            //or if already revived
    if 0x1 goto 0x816E510    //return 0
    setvar LASTRESULT 0x1
    return                    //else return has Old Amber
    
    //---------------
    #org 0x16E5A4
    preparemsg 0x819A25E //"Hiya!\pI am important doctor.\nYes..."
    waitmsg
    multichoice 0x0 0x0 0x17 0x0    //ask whether to revive old Amber
    copyvar 0x8000 LASTRESULT
    compare 0x8000 0x0
    if 0x1 goto 0x816E6C0        //if Old Amber, revive it
    compare 0x8000 0x1
    if 0x1 goto 0x816E516        //if none, end script
    compare 0x8000 0x7F
    if 0x1 goto 0x816E516        //else end script
    end
    
    //---------------
    #org 0x16E516
    msgbox 0x819A2F0 MSG_KEEPOPEN //"No!\nIs too bad!"
    release
    end
    
    //---------------
    #org 0x16E895
    checkflag 0x2ED            //check if Helix Fossil is revived
    if 0x0 goto 0x816E510    //if not revived, return 0
    setvar LASTRESULT 0x1    
    return                    //else return story fossil revived
    
    //---------------
    #org 0x16E8A4
    checkflag 0x2EC            //check if Dome Fossil is revived
    if 0x0 goto 0x816E510    //if not revived, return 0
    setvar LASTRESULT 0x1
    return                    //else return story fossil revived
    
    //---------------
    #org 0x16E510
    setvar LASTRESULT 0x0
    return
    
    //---------------
    #org 0x16E734
    setvar 0x4001 0x8A
    bufferpokemon 0x0 PKMN_OMANYTE
    msgbox 0x819A32B MSG_KEEPOPEN //"You late.\nWhere were you?\pYour f..."
    givepokemon PKMN_OMANYTE 0x5 ITEM_NONE 0x0 0x0 0x0
    compare LASTRESULT 0x2
    if 0x1 goto 0x81A9258
    setflag 0x2ED
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E803
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E837
    end
    
    //---------------
    #org 0x16E779
    setvar 0x4001 0x8C
    bufferpokemon 0x0 PKMN_KABUTO
    msgbox 0x819A32B MSG_KEEPOPEN //"You late.\nWhere were you?\pYour f..."
    givepokemon PKMN_KABUTO 0x5 ITEM_NONE 0x0 0x0 0x0
    compare LASTRESULT 0x2
    if 0x1 goto 0x81A9258
    setflag 0x2EC
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E803
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E837
    end
    
    //---------------
    #org 0x16E7BE
    setvar 0x4001 0x8E
    bufferpokemon 0x0 PKMN_AERODACTYL
    msgbox 0x819A32B MSG_KEEPOPEN //"You late.\nWhere were you?\pYour f..."
    givepokemon PKMN_AERODACTYL 0x5 ITEM_NONE 0x0 0x0 0x0
    compare LASTRESULT 0x2
    if 0x1 goto 0x81A9258
    setflag 0x2EE
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E803
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E837
    end
    
    //---------------
    #org 0x16E5D6
    multichoice 0x0 0x0 0x18 0x0    //ask if Helix Fossil or Old Amber
    copyvar 0x8000 LASTRESULT
    compare 0x8000 0x0
    if 0x1 goto 0x816E644        //if Helix fossil, revive it.
    compare 0x8000 0x1
    if 0x1 goto 0x816E6C0        //if Old Amber, revive it
    compare 0x8000 0x2
    if 0x1 goto 0x816E516        //if none, end script
    compare 0x8000 0x7F
    if 0x1 goto 0x816E516        //else end script
    end
    
    //---------------
    #org 0x16E644
    bufferpokemon 0x0 PKMN_OMANYTE
    bufferitem 0x1 ITEM_HELIXFOSSIL
    msgbox 0x819A3B0 MSG_YESNO //"Oh!\nThat is [buffer2], it is!\pIt..."
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E6FE
    msgbox 0x819A439 MSG_KEEPOPEN //"So!\nYou hurry and give me that!\p..."
    textcolor 0x0
    removeitem ITEM_HELIXFOSSIL 0x1
    msgbox 0x819A487 MSG_KEEPOPEN //"I take a little time!\nYou go for ..."
    setvar 0x406A 0x1
    setvar 0x4069 0x1
    release
    end
    
    //---------------
    #org 0x16E60D
    multichoice 0x0 0x0 0x19 0x0
    copyvar 0x8000 LASTRESULT
    compare 0x8000 0x0
    if 0x1 goto 0x816E682
    compare 0x8000 0x1
    if 0x1 goto 0x816E6C0
    compare 0x8000 0x2
    if 0x1 goto 0x816E516
    compare 0x8000 0x7F
    if 0x1 goto 0x816E516
    end
    
    //---------------
    #org 0x16E682
    bufferpokemon 0x0 PKMN_KABUTO
    bufferitem 0x1 ITEM_DOMEFOSSIL
    msgbox 0x819A3B0 MSG_YESNO //"Oh!\nThat is [buffer2], it is!\pIt..."
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E6FE
    msgbox 0x819A439 MSG_KEEPOPEN //"So!\nYou hurry and give me that!\p..."
    textcolor 0x0
    removeitem ITEM_DOMEFOSSIL 0x1
    msgbox 0x819A487 MSG_KEEPOPEN //"I take a little time!\nYou go for ..."
    setvar 0x406A 0x1
    setvar 0x4069 0x2
    release
    end
    
    //---------------
    #org 0x16E6C0
    bufferpokemon 0x0 PKMN_AERODACTYL
    bufferitem 0x1 ITEM_OLDAMBER
    msgbox 0x819A3B0 MSG_YESNO //"Oh!\nThat is [buffer2], it is!\pIt..."
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E6FE
    msgbox 0x819A439 MSG_KEEPOPEN //"So!\nYou hurry and give me that!\p..."
    textcolor 0x0
    removeitem ITEM_OLDAMBER 0x1
    msgbox 0x819A487 MSG_KEEPOPEN //"I take a little time!\nYou go for ..."
    setvar 0x406A 0x1
    setvar 0x4069 0x3
    release
    end
    
    //---------------
    #org 0x1A9258
    textcolor 0x3
    msgbox 0x81A5E0D MSG_KEEPOPEN //"There's no more room for POKéMON!\..."
    release
    end
    
    //---------------
    #org 0x16E803
    textcolor 0x3
    fanfare 0x101
    preparemsg 0x819A37A //"[player] received the [buffer1]\nf..."
    waitmsg
    waitfanfare
    setvar 0x406A 0x0
    msgbox 0x81A5683 MSG_YESNO //"Do you want to give a nickname to\..."
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E871
    call 0x81A8C03
    call 0x81A74C7
    goto 0x816E871
    
    //---------------
    #org 0x16E837
    textcolor 0x3
    fanfare 0x101
    preparemsg 0x819A37A //"[player] received the [buffer1]\nf..."
    waitmsg
    waitfanfare
    setvar 0x406A 0x0
    msgbox 0x81A5683 MSG_YESNO //"Do you want to give a nickname to\..."
    compare LASTRESULT 0x0
    if 0x1 goto 0x816E866
    call 0x81A8C0F
    goto 0x816E866
    
    //---------------
    #org 0x16E6FE
    msgbox 0x819A4BD MSG_KEEPOPEN //"Aiyah!\nYou come again!"
    release
    end
    
    //---------------
    #org 0x16E871
    release
    end
    
    //---------------
    #org 0x1A8C03
    countpokemon
    subvar LASTRESULT 0x1
    copyvar 0x8004 LASTRESULT
    return
    
    //---------------
    #org 0x1A74C7
    fadescreen 0x1
    special 0x9E
    waitstate
    return
    
    //---------------
    #org 0x16E866
    call 0x81A8C18
    goto 0x816E871
    
    //---------------
    #org 0x1A8C0F
    fadescreen 0x1
    special 0x166
    waitstate
    lock
    faceplayer
    return
    
    //---------------
    #org 0x1A8C18
    bufferboxname 0x0 0x4037
    bufferpokemon 0x1 0x4001
    checkflag 0x834
    if 0x0 call 0x81A8C33
    checkflag 0x834
    if 0x1 call 0x81A8C5E
    return
    
    //---------------
    #org 0x1A8C33
    special2 LASTRESULT 0x165
    compare LASTRESULT 0x1
    if 0x1 goto 0x81A8C4C
    msgbox 0x81A5CCD MSG_KEEPOPEN //"[buffer2] was transferred to\nSome..."
    return
    
    //---------------
    #org 0x1A8C5E
    special2 LASTRESULT 0x165
    compare LASTRESULT 0x1
    if 0x1 goto 0x81A8C77
    msgbox 0x81A5D0D MSG_KEEPOPEN //"[buffer2] was transferred to\nBILL..."
    return
    
    //---------------
    #org 0x1A8C4C
    special2 LASTRESULT 0x18A
    bufferboxname 0x2 LASTRESULT
    msgbox 0x81A5D4A MSG_KEEPOPEN //"BOX ["][buffer3]" on\nSomeone's PC..."
    return
    
    //---------------
    #org 0x1A8C77
    special2 LASTRESULT 0x18A
    bufferboxname 0x2 LASTRESULT
    msgbox 0x81A5D8D MSG_KEEPOPEN //"BOX ["][buffer3]" on\nBILL'S PC wa..."
    return
    
    
    //---------
    // Strings
    //---------
    #org 0x19A25E
    = Hiya!\pI am important doctor.\nYes, very much so, indeed.\pHere, I study rare POKéMON fossils.\nAll the time, I study.\pYou!\nHave you a fossil for me?
    
    #org 0x19A4BD
    = Aiyah!\nYou come again!
    
    #org 0x19A487
    = I take a little time!\nYou go for walk a little while!
    
    #org 0x19A2F0
    = No!\nIs too bad!
    
    #org 0x19A32B
    = You late.\nWhere were you?\pYour fossil is back to life!\nIt was [buffer1] like I think!
    
    #org 0x19A3B0
    = Oh!\nThat is [buffer2], it is!\pIt is fossil of [buffer1],\na POKéMON that is already extinct!\pMy Resurrection Machine will make\nthat POKéMON live again!
    
    #org 0x19A439
    = So!\nYou hurry and give me that!\p\c\h06Á[player] handed over the\n[buffer2] to the weird doctor.
    
    #org 0x1A5E0D
    = There's no more room for POKéMON!\pThe POKéMON BOXES are full and\ncan't accept any more!
    
    #org 0x19A37A
    = [player] received the [buffer1]\nfrom the doctor.
    
    #org 0x1A5683
    = Do you want to give a nickname to\nthis [buffer1]?
    
    #org 0x1A5CCD
    = [buffer2] was transferred to\nSomeone's PC.\pIt was placed in \nBOX ["][buffer1]."
    
    #org 0x1A5D0D
    = [buffer2] was transferred to\nBILL'S PC.\pIt was placed in \nBOX ["][buffer1]."
    
    #org 0x1A5D4A
    = BOX ["][buffer3]" on\nSomeone's PC was full.\p[buffer2] was transferred to\nBOX ["][buffer1]."
    
    #org 0x1A5D8D
    = BOX ["][buffer3]" on\nBILL'S PC was full.\p[buffer2] was transferred to\nBOX ["][buffer1]."
    my replacement code:
    Code:
    #include stditems.rbh
    #include stdpoke.rbh
    #dynamic 0x800140
    
    //---------------
    #org @Start
    lock
    faceplayer
    setvar LASTRESULT 0x0    //clear last result
    checkflag 0x2EE        //check if Aerodactyl has been revived
    if 0x1 call @CheckHelix
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E873    //if a story fossil and Aerodactyl were revived, end script
    compare 0x406A 0x2
    if 0x1 goto 0x816E712
    compare 0x406A 0x1
    if 0x1 goto 0x816E708
    call @HelixI
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E520    //if yes go to check if Old Amber and ask which (if any) of those two to revive
    call @DomeI
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E562    //if yes, go to check if old Amber and ask which (if any) of the two to revive.
    call 0x816E4F8            //check if Old amber is picked up and not revived.
    compare LASTRESULT 0x1
    if 0x1 goto 0x816E5A4    //if so, ask whether to revive old Amber
    msgbox 0x819A25E MSG_KEEPOPEN //"Hiya!\pI am important doctor.\nYes..."
    goto 0x816E516
    
    //------------
    #org @CheckHelix
    checkflag 0x2ED
    if 0x1 goto @CheckDome
    return
    
    //--------------
    #org @CheckDome
    checkflag 0x2EC
    if 0x1 goto @Yes
    return
    
    //-------------
    #org @Yes
    setvar LASTRESULT 0x1
    return
    
    //-------------
    #org @DomeI
    checkitem 0x165 0x1
    if 0x1 goto @Yes
    return
    
    //-------------
    #org @HelixI
    checkitem 0x166 0x1
    if 0x1 goto @Yes
    return
    Any help would be appreciated.
     

    SPG

    Pyroblock
    88
    Posts
    13
    Years
    • Age 27
    • Seen May 4, 2013
    how would i make a boat take me to another place? no items are needed exept a starter pokemon and a pokedex and it would be a yes and no question, so i think i would need a 0x5 msgbox script but not realy sure what eles
     

    Echidna

    i don't care what's in your hair
    2,077
    Posts
    13
    Years
  • no one...i mean no one has ever asked that..........i have no idea.....i hope some one does cause you have me excited............but i'll check if i can find out.............open a firered rom and check the script on the islands........there should be some clue..........
     

    masterquestmq

    Enthusiastic Rom Hacker
    194
    Posts
    13
    Years
    • Seen Nov 19, 2023
    Id just like to thank diegoisawesome, a week ago i only knew msg and give pokemon scripts

    today ive been able to replicate nurse joy scripts, battle, apply movement more of the intermediate things that makes a hack look good

    most importantly u made me love scripting

    it really is simple and very easy to understand when u get the fundamentals which u did a fantastic job delivering

    still more to learn but for now thanks 4 everything!
     
    7
    Posts
    13
    Years
    • Seen Jul 10, 2012
    Okay, I followed your "GivePokemon" script to the T... and it works just fine...

    However, I have a problem. When I try to name my pokemon(bulbasaur), it has me re-nickname my starter(charmander).

    However, when I restart the game, and get Bulbasaur first, and Charmander second... when I receive Charmander, it has me re-nickname Bulbasaur.

    Is there a way to fix this?

    Script
    Spoiler:
     

    DefiningTheDecade

    I may not be famous.. but..
    75
    Posts
    13
    Years
  • So I've been attempting the apply movement thing and just doesn't seem to work.. my whole game freezes at the point the script starts

    Here's the script:

    Code:
    #dynamic 0x800000
    
    #org @start
    checkflag 0x1000
    If 0x1 call @done
    msgbox @1 0x6
    applymovement 0x9 @move
    pause 0x5
    applymovement 0xFF @move2
    msgbox @2 0x6
    setflag 0x1000
    release
    end
    
    #org @1
    = [green_fr]MOVE!!
    
    #org @2
    = [red_fr][player]:I wonder what that was about?
    
    #org @done
    release
    end
    
    #org @move
    #raw 0x61
    #raw 0x4A
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0x1D
    #raw 0xFE
    
    #org @move2
    #raw 0x63
    #raw 0x13
    #raw 0x6
    #raw 0x4
    #raw 0xFE

    Does anyone see a problem?
     
    Back
    Top