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

Scripting Tutorial - PokeScript

Status
Not open for further replies.
Hey thanks for the tutorial, but I'm having a few issues with the give Pokemon script.

I don't know. I copied your script with the Eevee and it worked. But when I changed its level to 20 it appeared as 32 in the game. I also tried with a Snorlax and it worked, but I made a script for it to be level 25 and it ended it up being level 37.

Is there a reason for this 12 level difference?
 
Hey thanks for the tutorial, but I'm having a few issues with the give Pokemon script.

I don't know. I copied your script with the Eevee and it worked. But when I changed its level to 20 it appeared as 32 in the game. I also tried with a Snorlax and it worked, but I made a script for it to be level 25 and it ended it up being level 37.

Is there a reason for this 12 level difference?

That because they're in hex.
givepokemon 0x85 0x20 0x0 - Is the same as - Givepokemon (Eevee) (Level 32) (No item)
but....
givepokemon 133 20 0 - is the same as - givepokemon (Eevee) (Level 20) (No item)


If the number has a "0x" in front of it, it's in hexadecimal(eg. 0x14). The great thing about Pokescript, you can just use a decimal Number(eg. 20)
 
Sorry I haven't updated lately, school has started, so i'm on computer around half an hour each day, where I can just check threads.
Though in my spare time I haven't worked on this, i've been looking through other in-game scripts to find some other specials or things I haven't learnt.
I've also been working with scriptEd.

So again, sorry, i'll try keep it updated when I can.
(It's just I got signed up by a manager in tennis, so thats more important now..)

Edit:

About the hex thing, I like doing my scripts with more raws and hex commands because it makes me feel a bit safer with rom corruption and so on, and because I know it will turn out right.
If anyone wants to find out the hex numbers or letters look at thethethethe's hex scripting tutorial, it should have a list.
 
Ahhh finally you've added more advanced scripting,
The tutorial is great...more simple and easier than the other tutorials. Great work!

~C3LEBI
 
hey i got a problem i click compile on my script then it says runtime error 5, in valid procedure call or arguement wat is this and how do i fix this? this is my script

#org $begin
lock
faceplayer
checkflag 0x200
if b_true goto $alreadygotone
message $wantpoke
$wantpoke 1 =Hey,\nI Grats on graduating!\pHere is your \ngraduatin pokemon, \pWant it now?
boxset 5
compare LASTRESULT 1
if 1 goto $getseviper
message $toobad
$toobad 1 =Oh, well you will \nneed it.
boxset 6
release
end
#org $getseviper
lock
message $getone
$getone 1 =Ok go see \nyour home room teacher, \pshe chose this pokemon for you! \n Remember just to the left.
boxset 6
givepokemon 0x7B 0x5 0x0
message $received
$received 1 =PLAYER received Seviper!
boxset 6
setflag 0x200
release
end
#org $alreadygotone
lock
faceplayer
message $howsit
$howsit 1 =I Know your the one \p\v\h01 What the hell? \ndo you mean? \p Um Do not worry.
boxset 6
release
end
 
ok i need some help with legenderie pokemon scripting. i am using advance map and im not using the code stuff in the notepad. u know how in pokemon emerlad groudon like comes up to you then you battle it? well i tried creating 1 new script in advance map then i matched the offset to the one in terra cave etc etc. so i just made it look exactly like in terra cave. but when i go to the spot where i stand and groudon comes up i freeze up and i cant move! can any1 help me
 
wer u talking to me? itman? if so ty i will try it i dont get wat u mean tho wat varnumbers/ unown numbers
 
Last edited:
wer u talking to me? itman? if so ty i will try it i dont get wat u mean tho wat varnumbers/ unown numbers

k, click the script square in advance map:

Look to the right at the properties.
Look for unown + var numbers.

They should be all 0's

Fill them in like this:

03 00
52 40

Leave the rest blank.
 
um soz but my problem is wen i right click on my RBC file then compile script it comes up with an error or something

does any1 no the answer to my question? heres my questino againo,

#org $begin
lock
faceplayer
checkflag 0x200
if b_true goto $alreadygotone
message $wantpoke
$wantpoke 1 =Hey,\nI Grats on graduating!\pHere is your \ngraduatin pokemon, \pWant it now?
boxset 5
compare LASTRESULT 1
if 1 goto $getseviper
message $toobad
$toobad 1 =Oh, well you will \nneed it.
boxset 6
release
end
#org $getseviper
lock
message $getone
$getone 1 =Ok go see \nyour home room teacher, \pshe chose this pokemon for you! \n Remember just to the left.
boxset 6
givepokemon 0x7B 0x5 0x0
message $received
$received 1 =PLAYER received Seviper!
boxset 6
setflag 0x200
release
end
#org $alreadygotone
lock
faceplayer
message $howsit
$howsit 1 =I Know your the one \p\v\h01 What the hell? \ndo you mean? \p Um Do not worry.
boxset 6
release
end


and here is the error log

Logging started5/02/2008 12:29:03 PM
#PROCESS: base\Includes.psh F:2 for Input
/----------------------------------------
|
\- Processed 0 Lines

#PROCESS: pkmadv\includes.psh F:2 for Input
/------------------------------------------
|1: fulllog False
|#PROCESS: pkmAdv/Commands.psh F:3 for Input
|/------------------------------------------
||Duplicate Entry: if
||Duplicate Entry: gosub
||Duplicate Entry: jump
||Duplicate Entry: callstd
||Duplicate Entry: textra
||Duplicate Entry: message $1
||Duplicate Entry: if $1 jump $2
||Duplicate Entry: if $1 gosub $2
||Duplicate Entry: tif $1
||Duplicate Entry: fif $1
||Duplicate Entry: compare var $1 val $2
||Duplicate Entry: compare var $1 int $2
||Duplicate Entry: compare var $1 pointer $2
||Duplicate Entry: compare pointer $1 var $2
||Duplicate Entry: compare pointer $1 byte $2
||Duplicate Entry: compare pointer $1 pointer $2
||
|\- Processed 0 Lines
|
|#PROCESS: pkmAdv/texttable.psh F:3 for Input
|/-------------------------------------------
||
|\- Processed 0 Lines
|
|#PROCESS: pkmAdv/items.psh F:3 for Input
|/---------------------------------------
||
|\- Processed 0 Lines
|
|#PROCESS: pkmAdv/stdpoke.psh F:3 for Input
|/-----------------------------------------
||
|\- Processed 0 Lines
|
|71: Autobank True
|74: fulllog True
|
\- Processed 820 Lines

so wats wrong? ty in advance

no answers? reallY ? why does no one know? plz im desperate
 
Last edited:
ok i need some help with legenderie pokemon scripting. i am using advance map and im not using the code stuff in the notepad. u know how in pokemon emerlad groudon like comes up to you then you battle it? well i tried creating 1 new script in advance map then i matched the offset to the one in terra cave etc etc. so i just made it look exactly like in terra cave. but when i go to the spot where i stand and groudon comes up i freeze up and i cant move! can any1 help me



some1 answer my question plz
 
Again, thanks for the tutorials, but can I request something?

If possible can you come up with some kind of steal pokemon script?

For example, you're walking down a route and a trainer challenges you to a battle. In that battle you have the ability to catch all of that trainer's pokemon. Can you find a script that would accomplish this? Thanks in advance.

That is the most important but another request to add on to that, once again, if you want to, would be like a yes/no script in battle. When you catch a specific pokemon in the battle a yes/no box would appear asking you to send it somewhere. If yes, you lose the pokemon caught and gain an item, if no, you keep the pokemon. This is quite complicated I know, but it's a crucial feature in a hack I'm working on. It would be greatly appreciated.
 
I've just inserted the script, and this happeneds:
[PokeCommunity.com] Scripting Tutorial - PokeScript


EDIT.
Script:

#org $start
lock
faceplayer
message $hi
boxset 6
release
end

#org $hi
= Hi mate!
 
To Madridista,

Your script can be corrected in two ways. First the easy way:

#org $start
lock
faceplayer
message $hi
$hi 1 = Hi mate!
boxset 6
release
end

OR, the way you probably were looking for:

#org $start
lock
faceplayer
message $hi
boxset 6
release
end

#org $hi
$hi 1 = Hi mate!
 
Hey i did that oran berrt thing but it doesn't work!
Here's the script:

#org $begin
lock
faceplayer
checkflag 0x200
if b_true goto $iloveem
message $oran
$oran 1 =I love Oran berries!\nDo you?
setflag 0x200
boxset 5
compare LASTRESULT 1
if 1 goto $hereyago
message $idiot
$idiot 1 =Well...\nThat's because you're an idiot!
boxset 6
$iloveem 1 =I just love Oran berries!\nI will call you names if you don't like 'em!
boxset 6
$hereyago 1 =Then you are my buddie!\nHere's an Oran berry!
boxset 6
giveitem 0x8B 0x1
release
end

what did i do worng?
 
Yes, a place for Ruby movement scripts. I'm really grateful that you posted that, and I also find your tutorial easy to understand, even though I already know how to script.
 
Status
Not open for further replies.
Back
Top