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

thethethethe's Scripting Tutorial

sorry i can't help you there.
I forgot almost everything about scripting.
and for the rest of you guys...
i'm sure thethethethe enjoys finding the problems in your script(and outscripting everyone) but maybe you could post the scripts in the "script help" thread?
just a suggestion though.
 
Cool! Your tutorial has got everything what you need for a hack!
 
can someone tell me what I did wrong the boy in my map just moves and the just goes screen red. He doesn't even talk. I followed thethethethe's tutorial correctly and even used his program to script it and this one still didn't even work. Is it the flag?

#org $start
checkflag 0x203
if 0x1 goto $end
applymovement 0xFF $move1
$move1 1 ; #binary 0x62 0xFE
pause 0x20
applymovement 0x1 $move2
$move2 1 ; #binary 0x61 0x1D 0x1D 0x1D 0x1F 0x1F 0x20 0x20 0x02 0xFE
pause 0x40
message $MESSAGE1
$MESSAGE1 1 =OMG!\nI can't beleive that you are finally\l14.\nI feel angery and happy because\nI can now get your room, but\nstill you get a pokemon and I dont.\nanyway come on down\n the professor is here.
applymovement 0x1 $move3
$move3 1 ; #binary 0x1E 0x1E 0x1E 0xFE
pause 0x40
message $message 2
$message 2 1 =\v\h01:Man is my little brother always this\nenergetic.\nJason:Yeah, I am!\n\v\h01:??? He heared me? I was just thinking.\n It wasn't even out loud \nJason:\nMom: Hurry Up!!!\n\v\h01:Ok coming!
#raw 0x53 0x01 0x00
setflag 0x203
release
end


#org $end
release
end
 
Ok, I've got one problem. After I've compiled the script, when I go and talk to the person in the game, a weird symbol appears in the top right of the game screen. Then after that, the screen goes blank.

?
 
can someone tell me what I did wrong the boy in my map just moves and the just goes screen red. He doesn't even talk. I followed thethethethe's tutorial correctly and even used his program to script it and this one still didn't even work. Is it the flag?

#org $start
checkflag 0x203
if 0x1 goto $end
applymovement 0xFF $move1
$move1 1 ; #binary 0x62 0xFE
pause 0x20
applymovement 0x1 $move2
$move2 1 ; #binary 0x61 0x1D 0x1D 0x1D 0x1F 0x1F 0x20 0x20 0x02 0xFE
pause 0x40
message $MESSAGE1
$MESSAGE1 1 = OMG!\nI can't beleive that you are finally\l14.\nI feel angery and happy because\nI can now get your room, but\nstill you get a pokemon and I dont.\nanyway come on down\n the professor is here.
boxset 6
applymovement 0x1 $move3
$move3 1 ; #binary 0x1E 0x1E 0x1E 0xFE
pause 0x40
message $message 2
$message 2 1 =\v\h01:Man is my little brother always this\nenergetic.\nJason:Yeah, I am!\n\v\h01:??? He heared me? I was just thinking.\n It wasn't even out loud \nJason:\nMom: Hurry Up!!!\n\v\h01:Ok coming!
boxset 6
#raw 0x53 0x01 0x00
setflag 0x203
release
end


#org $end
release
end

ya forgot to add boxsets...
 
Hey this is a great tutorial but i was wandering.okay say that thier were 8 badges which thier is but i wanted 2 more what would i do because i want 4 extra badges for my hack
 
I don't know if this goes here but can you explain this and give at least an example.. ^^,

[PokeCommunity.com] thethethethe's Scripting Tutorial
 
I don't know if this goes here but can you explain this and give at least an example.. ^^,

[PokeCommunity.com] thethethethe's Scripting Tutorial

Theres really no examples, it's a level script. Or in that case, a map script. Same thing ;).
What they are, are scripts that occur once you enter the map, so they can do various things.
 
I'm sorry to be a n00b, but would someone mind helping me with this?

I've installed/uninstalled Pokescript at least five times, and to begin with, everything goes well; I burn the script to my Fire Red rom, and it all seems fine and dandy. Then I copy the offset into AdvanceMap, and save that to my rom.

When I play the rom on no$gba to test it out, however, the script clearly doesn't work. Instead, I get a random box in the corner of the screen (here), and when I click A, this message comes up, and no$gba closes.

What the heck is making it do this!? I've followed every tutorial I can find, and I've even been using the scripts that are given as examples in these tutorials, but nothing works. So... Anyone kind enough to help a poor little n00blet?

I have tried using ScriptED, but the one linked to in the Tool Resources thread gave me a Trojan virus, so I had to delete it pretty quick >.> So, please help? :3
 
Theres really no examples, it's a level script. Or in that case, a map script. Same thing ;).
What they are, are scripts that occur once you enter the map, so they can do various things.

Can you explain how to make one?
 
Can you explain how to make one?

Well, its pretty simple, one thing though, currently dont use advancemap 1.90's function of making Level scripts as its badly programmed.

What you do is open up a ROM with a hexeditor, and goto some free space, and depending on what sort of level script you want, you got different pointers. like:
1 = setmap tile
2 = msgboxes and applymovements
the rest I'm not sure.

For "01" Setmaptiles: goto some free space and enter 01XXXXXX0800, where XXXXXX is the pointer to the setmaptile script reversed, so 800000 = 000080 and 00 ends the main branch of level scripts

"02" msgboxes and applymovements, is tougher: goto some free space and enter 02XXXXXX0800, where XXXXXX,is the pointer to the conditionals script, and at pointer XXXXXX, put VVVV(Variable, reversed)CCCC(Conditionals)Pointer(005080)080000, so for example:

800000: 020001800800
800100: 50400100XXXXXX080000 , 5040 is variable 4050 reversed and 0100 is 0001 reversed meaning the level script will only activate when its set to 0x1

After that, open AMap, goto header view, and press "Ctrl-H" to activate professional view, and put the offset to the main branch of the level script at "Map Script Section" and then Save changes and reload map.

There, done, hope that helps, If you're not clear ask again
 
Thanks

Originally Posted by greenozano
can someone tell me what I did wrong the boy in my map just moves and the just goes screen red. He doesn't even talk. I followed thethethethe's tutorial correctly and even used his program to script it and this one still didn't even work. Is it the flag?

#org $start
checkflag 0x203
if 0x1 goto $end
applymovement 0xFF $move1
$move1 1 ; #binary 0x62 0xFE
pause 0x20
applymovement 0x1 $move2
$move2 1 ; #binary 0x61 0x1D 0x1D 0x1D 0x1F 0x1F 0x20 0x20 0x02 0xFE
pause 0x40
message $MESSAGE1
$MESSAGE1 1 = OMG!\nI can't beleive that you are finally\l14.\nI feel angery and happy because\nI can now get your room, but\nstill you get a pokemon and I dont.\nanyway come on down\n the professor is here.
boxset 6
applymovement 0x1 $move3
$move3 1 ; #binary 0x1E 0x1E 0x1E 0xFE
pause 0x40
message $message 2
$message 2 1 =\v\h01:Man is my little brother always this\nenergetic.\nJason:Yeah, I am!\n\v\h01:??? He heared me? I was just thinking.\n It wasn't even out loud \nJasonnMom: Hurry Up!!!\n\v\h01:Ok coming!
boxset 6
#raw 0x53 0x01 0x00
setflag 0x203
release
end


#org $end
release
end
ya forgot to add boxsets...

Thanks for that I remember now man Im stupid how can I forget that.
 
Well, its pretty simple, one thing though, currently dont use advancemap 1.90's function of making Level scripts as its badly programmed.

What you do is open up a ROM with a hexeditor, and goto some free space, and depending on what sort of level script you want, you got different pointers. like:
1 = setmap tile
2 = msgboxes and applymovements
the rest I'm not sure.

For "01" Setmaptiles: goto some free space and enter 01XXXXXX0800, where XXXXXX is the pointer to the setmaptile script reversed, so 800000 = 000080 and 00 ends the main branch of level scripts

"02" msgboxes and applymovements, is tougher: goto some free space and enter 02XXXXXX0800, where XXXXXX,is the pointer to the conditionals script, and at pointer XXXXXX, put VVVV(Variable, reversed)CCCC(Conditionals)Pointer(005080)080000, so for example:



After that, open AMap, goto header view, and press "Ctrl-H" to activate professional view, and put the offset to the main branch of the level script at "Map Script Section" and then Save changes and reload map.

There, done, hope that helps, If you're not clear ask again

I still can't, Maybe I'll Never Understand this..!
 
@ZodiacDaGreat
Thanks for explaining that. I also don't really like the level script layout of A-Map 1.90. I'm still mainly using 1.82, instead of 1.90.

I still can't, Maybe I'll Never Understand this..!

It takes a while to understand and a little bit of trial and error before you understand them. There's a few tutorials on level scripts that might help you out. They aren't full tutorials on level scripts but you can get read into the certain things that seem to be what you need to look at.
There's a tutorial at WAH by Baro, just use a online to get a pretty bad translation, but it should be good enough to read.
And there's a tutorial here by me, that goes into de-activating level scripts. There's some info in that on the layout of level scripts and you'll hopefully be able to extract some information from it.
 
thanx for everything i now know how to script
 
Okay, I got a BIG problem, I copied a script from a friend of mine, but when I choose Compile Script he shows a lot of data, after that I get a empty LOG, he doesn't jump to bufrite. What to do?
 
Back
Top