• 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.

Script Help Thread (DO NOT REQUEST SCRIPTS)

Status
Not open for further replies.

Tropical Sunlight

The Faltine
3,476
Posts
16
Years
  • Whats flag do I set for the national dex?
    It's not a flag; it's a special.
    Well, it depends on which game you're hacking.

    If you're hacking FR/LG, use this: special 0x16F
    If you're hacking Emerald, use this: special 0x1F3
    For Ruby and Sapphire, there is a bit more complex way.
     

    Chocos0

    Eclipse the Umbreon
    68
    Posts
    14
    Years
    • Seen Mar 12, 2012
    This is my third time posting here, my editor programs never work! Always problems problems problems.
    But seriously, my real question is...
    "What are parameters"
    When I press debug in XSE it says "Too less parameters on line 6 the correct number is 2"
    I have no idea what it is, and what it does. I'm using a basic script, just a regular talking one.
    Here is the script:

    #dynamic 0x800000

    #org @start
    lock
    faceplayer
    msgbox @text
    boxset 0x6
    release
    end

    #org @text
    = Chocos0: Hi everybody!\nSorry to keep you waiting!\nBut here is the video!
     

    vietazn654

    A sound soul dwells within me
    371
    Posts
    14
    Years
  • Alright. I'm gonna make more scripts, but I have a question. Does anyone have a list of unused flags? Because IDK where to find flags that aren't used in Fire Red =\
     

    destinedjagold

    You can contact me in PC's discord server...
    8,593
    Posts
    16
    Years
    • Seen Dec 23, 2023
    Alright. I'm gonna make more scripts, but I have a question. Does anyone have a list of unused flags? Because IDK where to find flags that aren't used in Fire Red =\

    usually, the flags around 1000 to 1200 are unused...

    This is my third time posting here, my editor programs never work! Always problems problems problems.
    But seriously, my real question is...
    "What are parameters"
    When I press debug in XSE it says "Too less parameters on line 6 the correct number is 2"
    I have no idea what it is, and what it does. I'm using a basic script, just a regular talking one.
    Here is the script:

    Spoiler:

    line 6 is indicating to your msgbox command.
    The new version of XSE changed the msgbox style...

    Code:
    msgbox @text 0x6

    Thanks though. Time to test out. The tut I was reading said that, but I don't know how to make it in Hex.

    If you know the number, but you don't know it's hex value, then just type the number directly and XSE automatically converts it to hex.
     

    The-Great-Falkner

    There just that damn good!
    109
    Posts
    14
    Years
  • Hello...I made this movement script so this is what it looked like after I compiled it
    '-----------------------
    #org 0x765432
    lock
    msgbox 0x8765448 '"I better go get a pokemonnso I can ..."
    callstd 0x6
    applymovement MOVE_PLAYER 0x8765464
    waitmovement 0x0
    release
    end


    '-----------
    ' Movements
    '-----------
    #org 0x765464
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw FE 'End of Movements


    '---------
    ' Strings
    '---------
    #org 0x765448
    = I better go get a pokemon so\n I can leave this\nplace for good.

    then when I check it in game it got stuck so I went back to XSE and it looked like this
    '-----------------------
    #org 0x765432
    lock
    msgbox 0x8765448 '"I better go get a pokemonnso I can ..."
    callstd 0x6
    applymovement MOVE_PLAYER 0x8765464
    waitmovement 0x0
    release
    end


    '-----------
    ' Movements
    '-----------
    #org 0x765464
    #raw 0 'Face Down
    #raw C3 'movC3
    #raw 0 'Face Down
    #raw D7 'movD7
    #raw D5 'movD5
    #raw E2 'movE2
    #raw 0 'Face Down
    #raw E0 'movE0
    #raw D9 'movD9
    #raw D5 'movD5
    #raw EA 'movEA
    #raw D9 'movD9
    #raw 0 'Face Down
    #raw E8 'movE8
    #raw DC 'movDC
    #raw DD 'movDD
    #raw E7 'movE7
    #raw FE 'End of Movements


    '---------
    ' Strings
    '---------
    #org 0x765448
    = I better go get a pokemonnso I can leave this\nplace for good.

    does anyone know how to fix this problem?
     

    vietazn654

    A sound soul dwells within me
    371
    Posts
    14
    Years
  • Code:
    #dynamic 0x2E0288
    
    #org @start
    checkflag 0x1002
    if 0x1 goto @done
    msgbox @1 0x6
    applymovement 0x1 @move
    waitmovement 0x0
    msgbox @2 0x6
    call @pokemon
    msgbox @6 0x6
    call @pokedex
    applymovement 0x1 @move0
    msgbox @8 0x6
    applymovement 0x1 @move1
    setflag 0x1002
    release
    end
    
    #org @done
    release
    end
    
    #org @move
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0xFE
    
    #org @1
    = [blue_fr]Oh! \v\h01!
    
    #org @2
    = [blue_fr]PROF. BIRCH: I felt bad that you\ncouldn't get a POKEMON, so I\lcaught a TREEKO for you!\pHere, \v\h01!
    
    #org @pokemon
    givepokemon 0x115 0x5 0x0 0x0 0x0 0x0
    fanfare 0x13E
    msgbox @3 0x4
    waitfanfare
    closeonkeypress
    setflag 0x828
    msgbox @4 0x5
    compare LASTRESULT 0x1
    if 0x1 gosub @name
    msgbox @5 0x6
    return
    
    #org @name
    call 0x1A74EB
    return
    
    #org @3
    = \v\h01 recieved a TREEKO!
    
    #org @4
    = Would you like to give a nickname\nto TREEKO?
    
    #org @5
    = [blue_fr]Please raise that TREEKO.
    
    #org @6
    = [blue_fr]Also, here is a POKEDEX, \v\h01.\nIt's a device that records POKEMON\lyou have captured and seen.
    
    #org @pokedex
    fanfare 0x13E
    msgbox @7 0x4
    waitfanfare
    closeonkeypress
    setflag 0x829
    return
    
    #org @7
    = \v\h01 recieved a POKEDEX!
    
    #org @move0
    #raw 0x62
    #raw 0xFE
    
    #org @8
    = [blue_fr]Oh, you have a MUDKIP! Oh well,\nyou can keep the TREEKO anyways!\pAfter all, you are a patient young\nkid. Well, bye \v\h01!
    
    #org @move1
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0xFE

    The last movement script wont work =\
     
    114
    Posts
    14
    Years
    • Seen May 7, 2012
    I am trying to write a script like the three starter pokemon. but not in the lab. How do I change a givepokemon into one that makes the player choose which one?
     

    Binary

    え?
    3,977
    Posts
    16
    Years
    • Seen Apr 7, 2014
    Code:
    #dynamic 0x2E0288
    
    #org @start
    checkflag 0x1002
    if 0x1 goto @done
    msgbox @1 0x6
    applymovement 0x1 @move
    waitmovement 0x0
    msgbox @2 0x6
    call @pokemon
    msgbox @6 0x6
    call @pokedex
    applymovement 0x1 @move0
    msgbox @8 0x6
    applymovement 0x1 @move1
    setflag 0x1002
    release
    end
    
    #org @done
    release
    end
    
    #org @move
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0xFE
    
    #org @1
    = [blue_fr]Oh! \v\h01!
    
    #org @2
    = [blue_fr]PROF. BIRCH: I felt bad that you\ncouldn't get a POKEMON, so I\lcaught a TREEKO for you!\pHere, \v\h01!
    
    #org @pokemon
    givepokemon 0x115 0x5 0x0 0x0 0x0 0x0
    fanfare 0x13E
    msgbox @3 0x4
    waitfanfare
    closeonkeypress
    setflag 0x828
    msgbox @4 0x5
    compare LASTRESULT 0x1
    if 0x1 gosub @name
    msgbox @5 0x6
    return
    
    #org @name
    call 0x1A74EB
    return
    
    #org @3
    = \v\h01 recieved a TREEKO!
    
    #org @4
    = Would you like to give a nickname\nto TREEKO?
    
    #org @5
    = [blue_fr]Please raise that TREEKO.
    
    #org @6
    = [blue_fr]Also, here is a POKEDEX, \v\h01.\nIt's a device that records POKEMON\lyou have captured and seen.
    
    #org @pokedex
    fanfare 0x13E
    msgbox @7 0x4
    waitfanfare
    closeonkeypress
    setflag 0x829
    return
    
    #org @7
    = \v\h01 recieved a POKEDEX!
    
    #org @move0
    #raw 0x62
    #raw 0xFE
    
    #org @8
    = [blue_fr]Oh, you have a MUDKIP! Oh well,\nyou can keep the TREEKO anyways!\pAfter all, you are a patient young\nkid. Well, bye \v\h01!
    
    #org @move1
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0xFE

    The last movement script wont work =\

    Code:
    #dynamic 0x2E0288
    
    #org @start
    checkflag 0x1002
    if 0x1 goto @done
    msgbox @1 0x6
    applymovement 0x1 @move
    waitmovement 0x0
    msgbox @2 0x6
    call @pokemon
    msgbox @6 0x6
    call @pokedex
    applymovement 0x1 @move0
    [B]waitmovement 0x0[/B]
    msgbox @8 0x6
    applymovement 0x1 @move1
    [B]waitmovement 0x0[/B]
    setflag 0x1002
    release
    end
    
    #org @done
    release
    end
    
    #org @move
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x12
    #raw 0x10
    #raw 0x10
    #raw 0x10
    #raw 0xFE
    
    #org @1
    = [blue_fr]Oh! \v\h01!
    
    #org @2
    = [blue_fr]PROF. BIRCH: I felt bad that you\ncouldn't get a POKEMON, so I\lcaught a TREEKO for you!\pHere, \v\h01!
    
    #org @pokemon
    givepokemon 0x115 0x5 0x0 0x0 0x0 0x0
    fanfare 0x13E
    msgbox @3 0x4
    waitfanfare
    closeonkeypress
    setflag 0x828
    msgbox @4 0x5
    compare LASTRESULT 0x1
    if 0x1 gosub @name
    msgbox @5 0x6
    return
    
    #org @name
    call 0x1A74EB
    return
    
    #org @3
    = \v\h01 recieved a TREEKO!
    
    #org @4
    = Would you like to give a nickname\nto TREEKO?
    
    #org @5
    = [blue_fr]Please raise that TREEKO.
    
    #org @6
    = [blue_fr]Also, here is a POKEDEX, \v\h01.\nIt's a device that records POKEMON\lyou have captured and seen.
    
    #org @pokedex
    fanfare 0x13E
    msgbox @7 0x4
    waitfanfare
    closeonkeypress
    setflag 0x829
    return
    
    #org @7
    = \v\h01 recieved a POKEDEX!
    
    #org @move0
    #raw 0x62
    #raw 0xFE
    
    #org @8
    = [blue_fr]Oh, you have a MUDKIP! Oh well,\nyou can keep the TREEKO anyways!\pAfter all, you are a patient young\nkid. Well, bye \v\h01!
    
    #org @move1
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0xFE

    That's pretty silly XD;
    Ahem...

    I am trying to write a script like the three starter pokemon. but not in the lab. How do I change a givepokemon into one that makes the player choose which one?
    Well, umm..you can't change a command. You need to use a multi-choice command and then givepokemon three times. I suggest you look it over.


    Hello...I made this movement script so this is what it looked like after I compiled it
    '-----------------------
    #org 0x765432
    lock
    msgbox 0x8765448 '"I better go get a pokemonnso I can ..."
    callstd 0x6
    applymovement MOVE_PLAYER 0x8765464
    waitmovement 0x0
    release
    end


    '-----------
    ' Movements
    '-----------
    #org 0x765464
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x11
    #raw 0x13
    #raw 0x13
    #raw 0x13
    #raw 0x11
    #raw FE 'End of Movements


    '---------
    ' Strings
    '---------
    #org 0x765448
    = I better go get a pokemon so\n I can leave this\nplace for good.

    then when I check it in game it got stuck so I went back to XSE and it looked like this
    '-----------------------
    #org 0x765432
    lock
    msgbox 0x8765448 '"I better go get a pokemonnso I can ..."
    callstd 0x6
    applymovement MOVE_PLAYER 0x8765464
    waitmovement 0x0
    release
    end


    '-----------
    ' Movements
    '-----------
    #org 0x765464
    #raw 0 'Face Down
    #raw C3 'movC3
    #raw 0 'Face Down
    #raw D7 'movD7
    #raw D5 'movD5
    #raw E2 'movE2
    #raw 0 'Face Down
    #raw E0 'movE0
    #raw D9 'movD9
    #raw D5 'movD5
    #raw EA 'movEA
    #raw D9 'movD9
    #raw 0 'Face Down
    #raw E8 'movE8
    #raw DC 'movDC
    #raw DD 'movDD
    #raw E7 'movE7
    #raw FE 'End of Movements


    '---------
    ' Strings
    '---------
    #org 0x765448
    = I better go get a pokemonnso I can leave this\nplace for good.

    does anyone know how to fix this problem?

    Firstly, it should be 'msgbox @pointer 0x2' shouldn't it?
    And I think I've had that problem before. Try decompiling and editing or recompile in an offset with enough free space.
     
    Last edited:

    Ninja Caterpie

    AAAAAAAAAAAAA
    5,979
    Posts
    16
    Years
  • Firstly, it should be 'msgbox @pointer 0x2' shouldn't it?
    And I think I've had that problem before. Try decompiling and editing or recompile in an offset with enough free space.
    Uhh..wait. The pointer is wrong. It should go to 0x8765464, but the movements are in 0x765464. Check the script you compiled. The mistake should be there.

    Uh, nup. Correct me if I'm wrong, someone, but that 8 is used to mean that the 765464 is a pointer.
     
    202
    Posts
    14
    Years
    • Seen Jan 6, 2017
    I am trying to write a script like the three starter pokemon. but not in the lab. How do I change a givepokemon into one that makes the player choose which one?

    Quite simple really.

    1. Put the three Pokéballs wherever you want (they are person events, and show up after all the people sprites)
    2. Have a give Pokémon script for each of them.
    3. At the end of each give Pokémon script, set one flag that is the same for all three Pokémon.

    Have at the start of those three scripts:
    checkflag 0xY (y = whatever flag you want to set)
    if 0x1 goto @aftergot

    #org @aftergot
    msgbox @youalreadyhave

    #org @youalreadyhave
    = You already picked a Pokémon.

    4. Have at the END of each script:
    setflag 0xY (same y as above)
    setflag 0xZ (z needs to be three seperate flags, and this flag has to have the same "person ID" as the pokéball you want to dissapear after picking it up).

    Hope that's clear enough for ya. If not PM me or post here again.
     

    vietazn654

    A sound soul dwells within me
    371
    Posts
    14
    Years
  • I have a question. If you see my script above, how do you make the person disappear afterwards? Because after the script, I still see him <.<
     
    5,256
    Posts
    16
    Years
  • My game freezes when I try to talk to a guy with this script;

    Code:
    '---------------
    #org 0x813347
    msgbox 0x8813351 0x2 '"Where am I?"
    end
    
    
    '---------
    ' Strings
    '---------
    #org 0x813351
    = Where am I?

    Uhm.

    Try this:
    Spoiler:

    Any help ? :(

    I have a question. If you see my script above, how do you make the person disappear afterwards? Because after the script, I still see him <.<
    You need to assign the person event a Person ID with a flag you haven't used before, and then set that flag after the hidesprite command that you have in your script.
     

    vietazn654

    A sound soul dwells within me
    371
    Posts
    14
    Years
  • Hey, I've been looking through the people events in Advance map, and saw that a tree is a script. What is the script for a tree? =\
     

    Buizark

    Always looking for an OU match
    72
    Posts
    14
    Years
    • Seen Aug 5, 2016
    Hey, I've been looking through the people events in Advance map, and saw that a tree is a script. What is the script for a tree? =\
    Not a script request thread.Decompile the tree script.
     
    35
    Posts
    13
    Years
    • Seen Jan 7, 2016
    Can someone post the item codes for pokemon ruby? I'm trying to make a hack, and I need the script. (For more information on this hack, see some posts by HackDeoxys)
     
    114
    Posts
    14
    Years
    • Seen May 7, 2012
    Quite simple really.

    1. Put the three Pokéballs wherever you want (they are person events, and show up after all the people sprites)
    2. Have a give Pokémon script for each of them.
    3. At the end of each give Pokémon script, set one flag that is the same for all three Pokémon.

    Have at the start of those three scripts:
    checkflag 0xY (y = whatever flag you want to set)
    if 0x1 goto @aftergot

    #org @aftergot
    msgbox @youalreadyhave

    #org @youalreadyhave
    = You already picked a Pokémon.

    4. Have at the END of each script:
    setflag 0xY (same y as above)
    setflag 0xZ (z needs to be three seperate flags, and this flag has to have the same "person ID" as the pokéball you want to dissapear after picking it up).

    Hope that's clear enough for ya. If not PM me or post here again.
    here's the givepokemon script in the scripting thing I use (PSKV) I know what I want to add, which includes a "do you want this pokemon Y/N" type thing, and a pokepic.
    Spoiler:


    would I be able to use this?
    Spoiler:
     
    Status
    Not open for further replies.
    Back
    Top