• 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

...
Applymovement
Waitmovement 0x0
Setflag 0x220
Hidesprite 0x
...

Also on that @done section change the msgbox number to 0x6 - 0x4 will mean it is stuck open.
 
You need to use trainerbattle 0x1 so the script continues straight after winning the battle.

Like in Diego's example script for a Gym Leader:

Code:
#dynamic 0x800000

#org @start
lock
faceplayer
checkflag 0x820
if 0x1 goto @done
msgbox @2 0x6
trainerbattle 0x1 0x001 0x0 @before @after @later
end

#org @before
= Show me what ya got!

#org @after
= What the-?

#org @later
msgbox @3 0x6
fanfare 0x13E
msgbox @4 0x4
waitfanfare
closeonkeypress
msgbox @5 0x6
giveitem 0x147 0x1
setflag 0x820
release
end

#org @done
msgbox @1 0x6
release
end

#org @1
= You should travel to Cerulean City\nto get your next badge.

#org @2
= Welcome to Pewter City Gym.\nYou want to challenge me?

#org @3
= Congratulations!\pFor beating me, you get\nthis badge!

#org @4
= \v\h01 recieved a badge!

#org @5
= Oh, and please take this.



You don't script warps tiles - that part has nothing to do with this tutorial. The warp diego used is as part of a script, whilst you're looking at warp tiles. The [W]s in A-Map simply go on a door (or by stairs, etc.) and will automatically warp you when you move in the correct manner. The warp you have a picture of takes you to Map 3,0 - Warp 0. Which should be Pallet Town. Change the numbers to change where it goes.

Okay then, how do I input that offset in then?
 
Okay then, how do I input that offset in then?

I'm not sure what you're asking :(

Warp Number = The number of the purple tile you are warping too (says it on the event tab)
Map Bank = First number of a map in A-Map (IE all the towns are map bank 3)
Map Number = Second number of a map in A-Map.​

If you're trying to warp at the end of the script (which would fit in this thread, but you weren't very clear) then you must have the warp command present so the end is:

warp 0xBANK 0xMAPNO 0xWARPNO 0x0 0x0
end​

If you don't want to warp to an actual warp tile, but co-ordinates then the last two numbers work as X and Y. Hover over the tile you will want to end up on, in a-map, and in the bottom left corner it will tell you the co-ordinates in hex. For that kind of script you use:

warp 0xBANK 0xMAPNO 0xFF 0xXCOORD 0xYCOORD
end​
 
Hello guys. I'm quite a newbie to scripting. Anyways, I tried to make Mega Evolutions for my game and I ended up with this:

#dynamic EB0B20

#org @megabattle
trainerbattle 0x0 0x001 0x0 @before @after
msgbox @beaten 0x6
release
end

#org @before
= Go, my POKeMON, prove yourselves!
goto @megavenusaur

#org @after
= Noo! My POKeMON have failed me!
special 0x18
compare LASTERSUT 0x19b
if 0x1 goto @megareverse
setvar 0x8005 0x0

#org @beaten
= You have inspired me. I will train/nmore and try to become like you.

#org @megavenusaur
special 0x18
compare LASTRESULT 0x3
if 0x1 goto @megastonecheck
end

#org @megastonecheck
special 0xe
compare LASTRESULT 0x62
if 0x1 goto @megaevolve
end

#org @megaevolve
setvar 0x8005 0x19b
special 0x16
end

#org @megareverse
setvar 0x8005 0x3
special 0x16
end

This however doesn't work. It doesn't display the correct text - some random characters before the battle and the before pointer message displays right after the battle. My Venusaur doesn't evolve into Mega Venusaur (0x19b, replaced Chimeco), even though it is holding the leaf stone (0x62). Please help, and thank you in advance.

P.S. I am using JPAN's Fire Red Hacked Engine, thats why there are some specials.
 
That's because your script is... Impossible. The two pointers in the trainer battle 0x0 command can ONLY point to text, all the rest of your script will never happen.

Have a look at the trainerbattle 0x1 command (also in this thread). Also please make sure that your message pointers only point to message. They don't even need a 'goto' - your @beaten is the only message you've done correctly.
 
I need help... I'm trying to make scripts in Fire red, but every time I add one, and I walk into the script, the game just crashes. I have no idea what I'm doing wrong. (I'm a noob to scripting, however)

This is a short script I wrote just to paste here:
Spoiler:
 
LASTRESULT doesn't do work. It's telling me to define something.


Not sure what happened here...

if LASTRESULT doesn't work use 0x800D in its place.


I need help... I'm trying to make scripts in Fire red, but every time I add one, and I walk into the script, the game just crashes. I have no idea what I'm doing wrong. (I'm a noob to scripting, however)

This is a short script I wrote just to paste here:
Spoiler:

Put that in a person event and it should work fine :) green script tiles need to have variables selected - I believe there is a tutorial on them by KarateKid.
 
Last edited:
Having trouble making giveitem commands. I'm getting "Error 13 Type Mismatch on line 29. Missing #define." Here's what I have. Line 29 is the first giveitem command.
#dynamic 0x304F18

#org @essentials
lock
faceplayer
checkflag 0x1200
if 0x1 goto @done
msgbox @message1 0x5
compare 0x800D 0x1
if 0x1 goto @take
msgbox @message3 0x6
release
end

#org @take
setflag 0x807
setflag 0x808
setflag 0x809
setflag 0x80A
setflag 0x80B
setflag 0x80C
setflag 0x80D
setflag 0x80E
setflag 0x800
setflag 0x801
setflag 0x860
givepokemon 0x97 0x64 0x0 0x0 0x0 0x0
givepokemon 0x97 0x64 0x0 0x0 0x0 0x0
giveitem 0x153 0x1 MSG_OBTAIN
giveitem 0x154 0x1 MSG_OBTAIN
giveitem 0x155 0x1 MSG_OBTAIN
giveitem 0x156 0x1 MSG_OBTAIN
giveitem 0x157 0x1 MSG_OBTAIN
giveitem 0x158 0x1 MSG_OBTAIN
giveitem 0x159 0x1 MSG_OBTAIN
giveitem 0x15A 0x1 MSG_OBTAIN
msgbox @message4 0x6
setflag 0x1200
release
end

#org @done
msgbox @message2 0x6
release
end

#org @message4
= All set!

#org @message2
= Good luck!

#org @message1
= Want some testing essentials?

#org @message3
= ...really?

Well, destinedjagold provided me a different version of XSE it fixed the problem. Dunno what caused it or why this one fixed it, but yay.
 
Last edited by a moderator:
Having another problem. For some reason, the script doesn't move the sprites in-game (This is a script tile) (I am 100% sure they are the same event no. as in the script) The script will only show the messages and the players movements.
Here's the script I composed (after compiling it and re-opening it):
Spoiler:
 
Last edited:
I've had problems before with move sprite not working for sprites that are far away. Judging by the large numbers you're using, this might be the case here?
 
A question.

Why is it that whenever I put in a script using Advanced Map, it changes everything I put in into this format:
Spoiler:


I'm a Newbie, a very unexprienced pathetic newbie, So these kind of things confuse me D:

Besides that, Is there anywhere I could learn everything from the very beginning?
 
A question.

Why is it that whenever I put in a script using Advanced Map, it changes everything I put in into this format:
Spoiler:


I'm a Newbie, a very unexprienced pathetic newbie, So these kind of things confuse me D:

Besides that, Is there anywhere I could learn everything from the very beginning?

Is that the script you made?
Anyway, here's a tutorial for newbies:
https://www.pokecommunity.com/showthread.php?t=185188
 
Back
Top