• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • 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

Hello there, newbie at scripting (this tut helps a LOT).
I was looking around, and forgive my stupidity, but I have utterly no idea how to set up a Vs. Seeker script for a trainer. I used the regular trainer script, such as:

#dynamic 0x34ED04

#org @start
trainerbattle 0x0 0x004 0x0 @before @after
msgbox @beaten 0x6
release
end

#org @before
= INTRUDER ALERT!

#org @after
= So you are worthy!

#org @beaten
= I'll let you pass this once.

That's my script. But how do I make it so that the trainer responds to the Vs. Seeker?
 
level scripts.
how do u make it so that you can do more than one in the entire game. when i follwed your instructions it worked, but i could only do the one script. how do you change the script offset of the level script so i can make two of them?

COULD SOMEONE PLEASE ANSWER THIS! it is kinda putting me at a stand-still in my game. plz!
 
umm... i have a question- is there a tutorial for newbies? cuz i can't understand any of this, and when i tried to do it, it didn't work...........

3 days later- nvm, i found out how to do it, ty
 
Last edited:
The nickname pokemon script offset in LeafGreen is 0x1A74C7. (Whereas the one for FireRed, as Diego used in his tutorial, is 0x1A74EB.)

Just thought I'd point this out, since it felt good to bend Translhextion to my will for once. Maybe it'll help somebody! ;D
 
WUHHAAAAIIIIIEE!!!!

WHY!! everytime i try scripting and i leave my house it resets heres my script i deleted oak lol =P
Spoiler:
 
#dynamic 0x800000

#org @start
lock
faceplayer
msgbox @1 0x6
applymovement 0x06 @move
msgbox @2 0x6
givepokemon 0x85 0x5 0x0 0x0 0x0 0x0
Hidesprite 6
release
end

#org @1
= WAIIIT!!!

#org @2
= Take this Eevee for protection./n/nCya around kk?

#org @move
#raw 0x1E
#raw 0x1E
#raw 0x1E
#raw 0x1E
#raw 0x1E

You must use flags in it. For example

#dynamic 0x800000

#org @start
lock
faceplayer
checkflag 0x1111
if 0x1 goto @(var) <--- Choose an variable
msgbox @1 0x6
applymovement 0x06 @move
msgbox @2 0x6
givepokemon 0x85 0x5 0x0 0x0 0x0 0x0
Hidesprite 6
setflag 0x1111
release
end

#org @1
= WAIIIT!!!

#org @2
= Take this Eevee for protection./n/nCya around kk?

#org @move
#raw 0x1E
#raw 0x1E
#raw 0x1E
#raw 0x1E
#raw 0x1E

#org @(var)
release
end
 
Hey guys remember me. Well thanks to this tut I learned how to script extremly well, but after making plent of scripts there is one script that im stuck on

#dynamic 0x743CF8

#org @start
applymovement 0xFF @?
applymovement 0x03 @!
waitmovement 0x0
msgbox @1 0x6
fanfare 0x13E
msgbox @givedex 0x6
msgbox @cya 0x6
applymovement 0x03 @bye
waitmovement 0x0
setflag 0x829
hidesprite 0x800F
setflag 0x200
release
end

#org @?
#raw 0x63
#raw 0xFE

#org @!
#raw 0x00
#raw 0x62
#raw 0xFE

#org @1
= Bryan: Hey! \v\h01! How is it\ngoing?\l\v\h01: Good, you?\lBryan: Good.\l\v\h01: Anyhow, aren't you\lsupposed to be at Nartu Island?\lBryan: Ya, I am supposed to leave\ltoday, but I was waiting for you\lso I could give this to you.

#org @givedex
= [green_fr]\v\h01 recieved a POKEDEX

#org @cya
= Oh! Look at the time, gotta run.

#org @bye
#raw 0x11
#raw 0x11
#raw 0x12
#raw 0x12
#raw 0x11
#raw 0x11
#raw 0x11
#raw 0xFE

what happens is that "bryan" (the guy who you are talking) reapears and blocks your way again. Also you have to keep talking to him and recieve the pokedex to pass.

can anyone find a way to hide him for good.
 
Take a look at this:

#dynamic 0x71A32C

#org @start
checkflag 0x820
if 0x1 goto @done
msgbox @1 0x6
applymovement 0x04 @move
pause 0x20
release
end

#org @done
release
end

#org @move
#raw 0x12
#org @1
= Here you go!

The guy says what I told him to,and than he takes a step at me than the game crashes.What did I do wrong?
 
Take a look at this:

#dynamic 0x71A32C

#org @start
checkflag 0x820
if 0x1 goto @done
msgbox @1 0x6
applymovement 0x04 @move
pause 0x20
release
end

#org @done
release
end

#org @move
#raw 0x12
#org @1
= Here you go!

The guy says what I told him to,and than he takes a step at me than the game crashes.What did I do wrong?

Try this: (changes are bold)

#dynamic 0x71A32C

#org @start
checkflag 0x820
if 0x1 goto @done
msgbox @1 0x6
applymovement 0x04 @move
pause 0x20
release
end

#org @done
release
end

#org @move
#raw 0x12
#raw 0xFE
#org @1
= Here you go!

I used to have the same problem see you were missing #raw 0xFE after your movements. Without #raw 0xFE (which ends the movements) the game thinks that somebody still has to move so it waits until somebody does...which will never happen...moral of the story is that no #raw 0xFE=no continue...understand
 
Um,I used this and when my character got to a door they didn't do in,they stood on it,and the character didn't show,which was Oak in the beginning.

#dynamic 0x71A26C

#org @start
checkflag 0x828
if 0x1 goto @done
msgbox @1 0x6
applymovement 0x03 @move
waitmovement 0x0
msgbox @2 0x6
applymovement 0x03 @move2
pause 0x20
playsong 0x13E 0x0
applymovement 0x03 @move3
applymovement 0x03 @move4
applymovement 0xFF @move5
waitmovement 0x0
fadesong 0x12C
release
end

#org @done
release
end

#org @move
#raw 0x11
#raw 0x11
#raw 0x11
#raw 0x11
#raw 0x11
#raw 0xFE

#org @move2
#raw 0x13
#raw 0x13
#raw 0xFE

#org @move3
#raw 0x11
#raw 0xFE

#org @move4
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x13
#raw 0x13
#raw 0x13
#raw 0x13
#raw 0x11
#raw 0xFE

#org @move5
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x10
#raw 0x13
#raw 0x13
#raw 0x13
#raw 0x13
#raw 0x11
#raw 0xFE
#org @1
= Hey, wait up!
#org @2
= Come follow me.

Try this: (changes are bold)

#dynamic 0x71A32C

#org @start
checkflag 0x820
if 0x1 goto @done
msgbox @1 0x6
applymovement 0x04 @move
pause 0x20
release
end

#org @done
release
end

#org @move
#raw 0x12
#raw 0xFE
#org @1
= Here you go!

I used to have the same problem see you were missing #raw 0xFE after your movements. Without #raw 0xFE (which ends the movements) the game thinks that somebody still has to move so it waits until somebody does...which will never happen...moral of the story is that no #raw 0xFE=no continue...understand
Thanks,but I found that out after I posted lol.
 
Last edited:
How do you combine (in Ruby) a trainerbattle script with an applymovement script. Also, I wanna learn it so I can make in notepad. If not, that's fine.
 
How do you combine (in Ruby) a trainerbattle script with an applymovement script. Also, I wanna learn it so I can make in notepad. If not, that's fine.

um lets see here I don't think you can make in notepad(fix m if i'm wrong) and about the movement do you want it after or before the trainer battle

ps can anyone fix my script plz

I have a problem with pokemon giving script... I copied what you have here just to be sure that it's working but it isn't... person who I gave offset of script don't do a thing... Can anyone help me?

Now on to the script...lets see what could be the matter...hmm... well you could have got a offset with not enough bytes, or you could have just not compiled it...
 
Last edited:
Hello there! Maybe someone can help me.

I just wanted to try out the "Giveitem" script, but everytime I try to compile it says:

Missing #define or Parameter on the Line 21 (marked)

------------------

#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 0xD 0x1 MSG_OBTAIN
msgbox @3 0x6
setflag 0x200
release
end

#org @1
= Hi!\pI'm from the Cherrygrove\nPokeMart.\pWhy don't you take this\nfree sample?

#org @2
= That's okay. I'm sure someone\nelse will enjoy it.
#org @3
= If you want more, you'll\nhave to go to the PokeMart\nto buy them.

------------------------


I hope you can help me T_T
 
Hello there! Maybe someone can help me.

I just wanted to try out the "Giveitem" script, but everytime I try to compile it says:

Missing #define or Parameter on the Line 21 (marked)

------------------

#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 0xD 0x1 MSG_OBTAIN
msgbox @3 0x6
setflag 0x200
release
end

#org @1
= Hi!\pI'm from the Cherrygrove\nPokeMart.\pWhy don't you take this\nfree sample?

#org @2
= That's okay. I'm sure someone\nelse will enjoy it.
#org @3
= If you want more, you'll\nhave to go to the PokeMart\nto buy them.

------------------------


I hope you can help me T_T

I don't see anything wrong with it its perfectly fine...does anyone no what's wrong with it?
 
Hello there! Maybe someone can help me.

I just wanted to try out the "Giveitem" script, but everytime I try to compile it says:

Missing #define or Parameter on the Line 21 (marked)

------------------

#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 0xD 0x1 MSG_OBTAIN
msgbox @3 0x6
setflag 0x200
release
end

#org @1
= Hi!\pI'm from the Cherrygrove\nPokeMart.\pWhy don't you take this\nfree sample?

#org @2
= That's okay. I'm sure someone\nelse will enjoy it.
#org @3
= If you want more, you'll\nhave to go to the PokeMart\nto buy them.

------------------------


I hope you can help me T_T

I can't find anything wrong with this, except you may want to space between org2 and org3 down there at the bottom. Try changing the MSG_OBTAIN to 0x1.
 
I just wanted to try out the "Giveitem" script, but everytime I try to compile it says:

Missing #define or Parameter on the Line 21 (marked)

...

giveitem 0xD 0x1 MSG_OBTAIN
Well if the error code says that you're "Missing #define or Parameter on the Line 21" then that's probably the problem. From what I understand, 'MSG_OBTAIN' is read by XSE and replaced with a byte when the script is compiled. However, you have to define what exactly 'MSG_OBTAIN' should be replaced by. The XSE built-in guide should be able to help you with using the '#define' preprocessing directive.
 
Now on to the script...lets see what could be the matter...hmm... well you could have got a offset with not enough bytes, or you could have just not compiled it...
I compiled it of course... do ya think that problem could be with flags? because without flags scripts workin'...
 
:D IT WORKS!! I CHANGED ROMS!! IT WORKS NO RESET!!
 
Last edited:
Back
Top