• 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.
241
Posts
11
Years
  • I'm trying to alter the Bill event on Cinnabar in Fire Red to respond to a different badge (which is what I'm assuming it responds to in the first place). I want the event to start when I receive the Rainbow badge instead, but I can't find where the script checks that flag...or any flag for that matter.
     

    Herpahermaderp

    I liek Mudkipz
    66
    Posts
    11
    Years
  • I'm trying to alter the Bill event on Cinnabar in Fire Red to respond to a different badge (which is what I'm assuming it responds to in the first place). I want the event to start when I receive the Rainbow badge instead, but I can't find where the script checks that flag...or any flag for that matter.

    I searched through quite a bit of information trying to find the answer to this. Bill's script isn't controlled by setflag 0x826, it is actually controlled by setflag 0x62, which is run by Blaine's script after you defeat him, so if you wanted the Rainbow Badge to set the Bill scenario up, just add setflag 0x62 after her setflag 0x823. I hope this helps.
     
    Last edited:
    241
    Posts
    11
    Years
  • I searched through quite a bit of information trying to find the answer to this. Bill's script isn't controlled by setflag 0x826, it is actually controlled by setflag 0x62, which is run by Blaine's script after you defeat him, so if you wanted the Rainbow Badge to set the Bill scenario up, just add setflag 0x62 after her setflag 0x823. I hope this helps.

    Thank you! it's actually a clearflag, not a setflag, but it works! Though you also have to copy the previous setvar.

    So it looks like this now:

    setvar 0x4071 0x1 (makes the scripts associated with the event run)
    clearflag 0x62 (this makes Bill's sprites appear on Cinnabar Island and in the PC in Cinnabar)

    ...and then the rest of whatever you want.
     
    Last edited:
    21
    Posts
    11
    Years
    • Seen Apr 20, 2013
    Hi, i made the following code to get the AuroraTicket and clear the flag (so that the Vermillion sailor will let me go to Birth Island). However it didn't work.

    Code:
    #dynamic 0x800000
    
    #org @start
    lock
    faceplayer
    checkflag 0x200
    if 0x1 goto @done
    msgbox @1 0x5
    compare 0x800D 0x1
    if 0x1 goto @take
    msgbox @2 0x6
    release
    end
    
    #org @done
    msgbox @3 0x6
    release
    end
    
    #org @take
    giveitem 0x173 0x1 MSG_OBTAIN
    msgbox @3 0x6
    setflag 0x200
    clearflag 0x2F1
    release
    end
    
    #org @1
    = Hi!\pWould you like an AURORA TICKET?.\pIt will allow access to BIRTH ISLAND. 
    
    #org @2
    = That's okay. I'm sure someone\nelse will enjoy it.
    
    #org @3
    = I knew you would want it.
    What did i do wrong? Thanks.

    Please can anyone help? Thank You.
     

    karatekid552

    What happens if I push it?....
    1,771
    Posts
    11
    Years
  • Please can anyone help? Thank You.

    I am fairly certain that flag 0x2F1 has to be set not cleared. I'm going to check some of my old posts and confirm this.
    edit: oh wow, haha it was you that asked this question in Simple Questions. umm at that time I had looked at the Vermilion guy script and the only requirements were that you had the item and those flags were clear. Let me look again. I'll edit this post within an hour to tell you of my findings.


    Okay, there was nothing wrong with your script, except that XSE, at least on mine, requires callstd 0xY.

    Ex: yours was:
    msgbox @1 0x6

    What it needs to be:
    msgbox @1
    callstd 0x6

    Don't know why, but it worked that way.

    Here is the completely working script I used. I tested it 3 times and it should work to perfection.

    Code:
    #dynamic 0x800000
    
    #org @start
    lock
    faceplayer
    checkflag 0x200
    if 0x1 goto @done
    msgbox @1
    callstd 0x5
    compare 0x800D 0x1
    if 0x1 goto @take
    msgbox @2
    callstd 0x6
    release
    end
    
    #org @done
    msgbox @3
    callstd 0x6
    release
    end
    
    #org @take
    giveitem 0x173 0x1 0x0
    msgbox @3
    callstd 0x6
    setflag 0x200
    clearflag 0x2F1
    release
    end
    
    #org @1
    = Hi!pWould you like an AURORA TICKET?.pIt will allow access to BIRTH ISLAND. 
    
    #org @2
    = That's okay. I'm sure someonenelse will enjoy it.
    
    #org @3
    = I knew you would want it.


    Edit: I am adding this all of my old posts dealing with callstd instead of an inline command. Jambo51 enlightened me to the fact that I was using an old XSE (v. 1.0.0) in which inline msgbox commands are not supported and you must callstd. In v. 1.1.1, the inline commands such as MSG_NORMAL are supported. Sorry for any confusion I might have caused.
     
    Last edited:
    3
    Posts
    12
    Years
    • Seen Mar 9, 2016
    Hello you all!

    Im Diszle and have been playing rom hacks for quite a while. Usually just the altered versions, in which you can get all available pokemon, or with adjusted movesets, etc.

    Now I am ready to do a little hacking of my own. The idea is to just alter pokemon Fire Red to some kind of new pokemon yellow. The idea is that my starter is going to be Pikachu, Gary's starter is going to be Eevee and during the game little events pop up in which I will receive the other three first gen starters. Changing the starters was no problem and I also found a script online which, supposedly, will make people give me the three first gen starters.

    But, XSE isnt working for me. When I want to open the program, so I can add the script, it immediately closes again. I just cant get it to work. Are there any other Scripting programs in which I can use the GivePokemon script? How can I make people give me random pokemon without XSE?

    I hope anyone has the answer.

    - I know that most people think yellow remakes are quite lame, but I always loved the game and its gonna be a personal hack, just to try things out!


    EDIT! Okay, so I figured I could do something similar with PKSVUI. I added a person event to Pallet Town, so I could check it quickly. I added the give pokemon script to this person, using the Space Finder. But now, I cannot talk to this person. If I face this person and click the A-button to start talking, the person does face me, but the conversation doesn't start.

    Here is my script: (got it from google)

    #dynamic 0x800800

    #org @start
    lock
    faceplayer
    checkflag 0x1200
    if 0x1 goto @done
    msgbox @question 0x5
    compare LASTRESULT 0x1
    if 0x1 goto @givepokemon
    msgbox @nothanks 0x6
    release
    end

    #org @done
    msgbox @checkup 0x6
    release
    end

    #org @givepokemon
    msgbox @thanks 0x6
    givepokemon 0x01 0x5 0x0 0x0 0x0 0x0
    fanfare 0x13E
    msgbox @recieved 0x6
    waitfanfare
    setflag 0x1200
    msgbox @thanks2 0x6
    release
    end

    #org @question
    = Hey there!\pYou seem like a nice person!\nWould you like this Bulbasaur?

    #org @nothanks
    = Oh? That's to bad.\pCome back if you change your mind.

    #org @thanks
    = Oh! That's GREAT!\pHere you go!

    #org @thanks2
    = Thanks again! I think it will have\nmore fun with you than with me.

    #org @recieved
    = \v\h01 received a BULBASAUR!

    #org @checkup
    = How's that Bulbasaur doing?\nHopefully good.
     
    Last edited:

    tajaros

    Hi I'm dawg
    855
    Posts
    12
    Years
  • Hello you all!

    Im Diszle and have been playing rom hacks for quite a while. Usually just the altered versions, in which you can get all available pokemon, or with adjusted movesets, etc.

    Now I am ready to do a little hacking of my own. The idea is to just alter pokemon Fire Red to some kind of new pokemon yellow. The idea is that my starter is going to be Pikachu, Gary's starter is going to be Eevee and during the game little events pop up in which I will receive the other three first gen starters. Changing the starters was no problem and I also found a script online which, supposedly, will make people give me the three first gen starters.

    But, XSE isnt working for me. When I want to open the program, so I can add the script, it immediately closes again. I just cant get it to work. Are there any other Scripting programs in which I can use the GivePokemon script? How can I make people give me random pokemon without XSE?

    I hope anyone has the answer.

    - I know that most people think yellow remakes are quite lame, but I always loved the game and its gonna be a personal hack, just to try things out!


    EDIT! Okay, so I figured I could do something similar with PKSVUI. I added a person event to Pallet Town, so I could check it quickly. I added the give pokemon script to this person, using the Space Finder. But now, I cannot talk to this person. If I face this person and click the A-button to start talking, the person does face me, but the conversation doesn't start.

    Here is my script: (got it from google)

    #dynamic 0x800800

    #org @start
    lock
    faceplayer
    checkflag 0x1200
    if 0x1 goto @done
    msgbox @question 0x5
    compare LASTRESULT 0x1
    if 0x1 goto @givepokemon
    msgbox @nothanks 0x6
    release
    end

    #org @done
    msgbox @checkup 0x6
    release
    end

    #org @givepokemon
    msgbox @thanks 0x6
    givepokemon 0x01 0x5 0x0 0x0 0x0 0x0
    fanfare 0x13E
    msgbox @recieved 0x6
    waitfanfare
    setflag 0x1200
    msgbox @thanks2 0x6
    release
    end

    #org @question
    = Hey there!\pYou seem like a nice person!\nWould you like this Bulbasaur?

    #org @nothanks
    = Oh? That's to bad.\pCome back if you change your mind.

    #org @thanks
    = Oh! That's GREAT!\pHere you go!

    #org @thanks2
    = Thanks again! I think it will have\nmore fun with you than with me.

    #org @recieved
    = \v\h01 received a BULBASAUR!

    #org @checkup
    = How's that Bulbasaur doing?\nHopefully good.

    Um, this is easily fixed. Go to your XSE folder and open the settings file and search there "AutoUpateCheck=1" change 1 to 0 that's it. :)
     
    3
    Posts
    12
    Years
    • Seen Mar 9, 2016
    Hi there, thanks for you quick reply.

    - But this isnt working for me. I dont have the settings file your talking about. I tried to re-download it, and again, the settings file wasnt in it. So I guess Im stuck with PKSVUI, which is fine with me.

    But then the other question. We is the person I added the GivePokemon script facing me, but not talking to me? Does anyone have an idea?

    Thnx in advance!
     

    karatekid552

    What happens if I push it?....
    1,771
    Posts
    11
    Years
  • Hi there, thanks for you quick reply.

    - But this isnt working for me. I dont have the settings file your talking about. I tried to re-download it, and again, the settings file wasnt in it. So I guess Im stuck with PKSVUI, which is fine with me.

    But then the other question. We is the person I added the GivePokemon script facing me, but not talking to me? Does anyone have an idea?

    Thnx in advance!

    I use XSE so I don't know how it works in PKSVUI, but I know that if your your "boxset" or "callstd" commands aren't done properly, this will happen. If someone could help my explanation by adding how to do this is PKSVUI, it would be nice.




    Edit: I am adding this all of my old posts dealing with callstd instead of an inline command. Jambo51 enlightened me to the fact that I was using an old XSE (v. 1.0.0) in which inline msgbox commands are not supported and you must callstd. In v. 1.1.1, the inline commands such as MSG_NORMAL are supported. Sorry for any confusion I might have caused.
     
    Last edited:
    3
    Posts
    12
    Years
    • Seen Mar 9, 2016
    Hi there,

    So, by now I've installed XSE on another laptop and there it did have the settings file. The file wasn't complete though, so I found a file in the Toolbox thread, to be used in the XSE settings file, which I did. I copied the file to the right laptop and now I am able to use XSE! Yeah! Happy face.

    I am going to mess around with XSE now, hoping that I will find my way. Just another quick question, can I open a rom in XSE too? So I can compile the script with the rom?

    And for KarateKid in particular, what would you do different with this script when using XSE?

    Thanks in advance!

    EDIT: I found out how to open a rom so I can compile the script with the rom in XSE, but now the problem is that my script is wrong. Im waiting patiently for anyone to help me out! =)

    I dont know what I did, but it's working now! Time to look up all the 'yellow' events and try to put them in this FireRed! Happy hacking.
     
    Last edited:

    karatekid552

    What happens if I push it?....
    1,771
    Posts
    11
    Years
  • Okay, I don't quite know all the differences between PKSVUI and XSE, but I know that in XSE, a message box looks like this:

    textcolor 0xY (not needed, but if you want)
    msgbox @msg
    callstd 0xZ

    #org @msg
    = hey, it's a message!

    The command "boxset" is interchangeable with callstd here. For a list of strands to call, consult diego's mega awesome scripting tutorial.

    The problem with your script it that it doesn't callstd. I don't know why all the scripts are like this. Did XSE used to support calling the strand in the msgbox line? Anyways, that doesn't work in XSE. So, whenever you see:

    msgbox @msg 0xZ

    Change it to:

    msgbox @msg
    callstd 0xZ


    Edit: I am adding this all of my old posts dealing with callstd instead of an inline command. Jambo51 enlightened me to the fact that I was using an old XSE (v. 1.0.0) in which inline msgbox commands are not supported and you must callstd. In v. 1.1.1, the inline commands such as MSG_NORMAL are supported. Sorry for any confusion I might have caused. The above methood does workfor both versions, but you can do it the other way on XSE v. 1.1.1.
     
    Last edited:
    53
    Posts
    11
    Years
    • Seen Feb 1, 2014
    Hello,

    i'm not able to find the script where the hero receive the World Map in Pokemon Ruby. So i'm not able to give to hero the world map in the place i want in my hack rom.

    So the my questions are these two:

    1. Where can i find the offset for the script where the hero receive the world map in Ruby?
    2. If i don't have the above, do you known the way for give the world map to the hero?

    ps. i'm using PKSV, but if u have only script for XSE is the same.

    Thanks a lot, bye bye
     

    wierddude22

    New hacker
    24
    Posts
    12
    Years
  • Been a while since i was here

    Anyway, this is a script for fire-red that i can't seem to find out what is wrong with it

    Spoiler:


    It freezes when it gets to the clearflag command.
    Also it is on the green S tiles in A-Map


    Thanks in advance

    There isn't a tick box in the events of the person. Only ( trainer) setting then a text box with $00 as default. I use advance map 1.95.

    In that box, set it as $01
     
    Last edited:

    karatekid552

    What happens if I push it?....
    1,771
    Posts
    11
    Years
  • Been a while since i was here

    Anyway, this is a script for fire-red that i can't seem to find out what is wrong with it

    Spoiler:


    It freezes when it gets to the clearflag command.
    Also it is on the green S tiles in A-Map


    Thanks in advance

    I feel like I've said this a lot lately, but I don't mind answering again, even though it's only two posts above.

    Anyways, in XSE, this doesn't work:

    msgbox @whatever 0x6


    I don't know why it doesn't, was this feature in an earlier XSE? Anyways, you need to callstd.
    The correct XSE way is:

    msgbox @whatever
    callstd 0x6

    (or "boxset 0x6" if you prefer)


    By the way, I love your picture.:)



    Edit: I am adding this all of my old posts dealing with callstd instead of an inline command. Jambo51 enlightened me to the fact that I was using an old XSE (v. 1.0.0) in which inline msgbox commands are not supported and you must callstd. In v. 1.1.1, the inline commands such as MSG_NORMAL are supported. Sorry for any confusion I might have caused.
    Hello,

    i'm not able to find the script where the hero receive the World Map in Pokemon Ruby. So i'm not able to give to hero the world map in the place i want in my hack rom.

    So the my questions are these two:

    1. Where can i find the offset for the script where the hero receive the world map in Ruby?
    2. If i don't have the above, do you known the way for give the world map to the hero?

    ps. i'm using PKSV, but if u have only script for XSE is the same.

    Thanks a lot, bye bye

    When you say world map, I'm assuming you are talking about the Pokenav. This isn't an item, like the Town Map in Firered, rather it is flag set by Mr. Stone. Through a quick search, I found it in Seth's XSE tutorial. The flag that needs to be set is 0x802.
     
    Last edited:

    masterquestmq

    Enthusiastic Rom Hacker
    194
    Posts
    13
    Years
    • Seen Nov 19, 2023
    just wondering how do I disable a setvar?
    I made a script where all wild pokemon will be 3 levels lower than ur strongest pokemon in the party. found this to be a bit useless in a long game so I want to disable this variable. Is there a command that i need to use?
     

    tajaros

    Hi I'm dawg
    855
    Posts
    12
    Years
  • just wondering how do I disable a setvar?
    I made a script where all wild pokemon will be 3 levels lower than ur strongest pokemon in the party. found this to be a bit useless in a long game so I want to disable this variable. Is there a command that i need to use?

    You just have to set the var you used to 0x0, and you're done. :)
     
    Last edited:
    10
    Posts
    14
    Years
    • Seen Nov 10, 2016
    I'm having a little problem with my givingpokemon script in Pokemon Ruby

    Everything is fine until the 'nicknaming' process

    I took the script from tajaros's guide and combine it with XSE guide to make out

    Spoiler:


    0x9F is to choose the Pokemon to be named and 0x166 is to nickname
    but the screen just freezes

    Any solution?
     

    DrFuji

    [I]Heiki Hecchara‌‌[/I]
    1,691
    Posts
    14
    Years
  • I'm having a little problem with my givingpokemon script in Pokemon Ruby

    Everything is fine until the 'nicknaming' process

    I took the script from tajaros's guide and combine it with XSE guide to make out

    Spoiler:


    0x9F is to choose the Pokemon to be named and 0x166 is to nickname
    but the screen just freezes

    Any solution?

    This is because special 0x166 is used to nickname Pokemon that have been inserted into a PC Box, where the number of the box is indicated by the value of variable 0x800F and the slot by variable 0x8010. The reason why it was freezing is most likely that you didn't have a Pokemon in that exact spot in the PC to be nicknamed resulting in the ROM crashing.

    Special 0x9E is the command you want to use when nicknaming a Pokemon in your party whose number is assigned to variable 0x8004 (Which you have done by using special 0x9F). Hopefully that helps.
     
    Status
    Not open for further replies.
    Back
    Top