PHO - Pokémon Hackers Online
Go Back   PHO - Pokémon Hackers Online > Hacking Suite > Resources and Tutorials > Generation 3 (Traditional)

Notices

Generation 3 (Traditional) Traditionally, Generation 3 is hacked using tools, hex editors and patches. This is for you if you do that.

User Tag List

Reply
 
Thread Tools Display Modes
Old 1st March 2018, 10:26 PM   #11
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Give, Take & Check For Money

To check if your player has a certain amount of money, we use the checkmoney command like so:
Quote:
Originally Posted by Avara View Post
checkmoney 0x[Amount In Hex] 0x0
compare LASTRESULT 0x1
if [More/Less/EqualTo] goto @pointer
For the [More/Less/EqualTo] part, remember this from the item section?
Quote:
Originally Posted by Avara View Post
0x0 = Lower Than
0x1 = Equal To
0x2 = Greater Than
0x3 = Lower Than or Equal To
0x4 = Greater Than or Equal To
These apply here too - meaning if the player has what we want them to have, we goto @pointer. What if we wanted to check if a player has less than the amount specified? Here's a fuller example:
Quote:
Originally Posted by Avara View Post
#org @start
lock
faceplayer
checkmoney 0x2710 0x0
compare LASTRESULT 0x1
if 0x0 goto @HasCorrectAmount
msgbox @IncorrectAmountMsg 0x6
release
end

#org @HasCorrectAmount
msgbox @HasCorrectAmountMsg 0x6
release
end

#org @HasCorrectAmountMsg
= Oh, you don't have very much\nmoney.

#org @IncorrectAmountMsg
= Wow, you have lots of money!
Let's pretend this is a script for an obnoxious rich kid NPC. If the player has more than or exactly $10,000 (0x2710), our rich kid will mention how rich. If the player has less than that (if 0x0, our rich kid will make a snarky comment about their perceived lack of money =P

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

To give your player a certain amount of money, the givemoney command is extremely straightforward.
Quote:
Originally Posted by Avara
givemoney 0x[Amount In Hex] 0x0
Let's give our player $10,000 so he can be as well off as Obnoxious Rich Kid from earlier:
Quote:
Originally Posted by Avara
givemoney 0x2710 0x0
Okay, now your player is now pretty comfortable financially. Let's take it all away from them again using paymoney, which is set up just the same.
Quote:
Originally Posted by Avara
paymoney 0x[Amount In Hex] 0x0
As you can probably guess, this makes the player pay up the specified amount. Before you use this command in a script, I recommend you actually check if the player has the desired amount that you want to be taken from them in the first place.
Quote:
Originally Posted by Avara
#org @main
lock
faceplayer
checkmoney 0x2710 0x0
compare LASTRESULT 0x1
if 0x4 goto @MoneyCanBeTaken
[...]

#org @MoneyCanBeTaken
paymoney 0x2710 0x0
[...]
-----------------------------------------------------------------------------------------------------------------------------------------------------
Pokémarts, as we know, show the player's amount of money then update it when an item is purchased and money is taken, complete with a sound effect. What if we wanted to replicate that, minus the list of buyable items? I'll start by explaining how to show the player's money:
Quote:
Originally Posted by Avara
showmoney 0x[X-Co-ord] 0x[Y-Co-ord] 0x0
The X and Y co-ordinates pertain to the position of the box on the screen. Hiding the money box is also just a single line:
Quote:
Originally Posted by Avara
hidemoney 0x[X-Co-ord] 0x[Y-Co-ord]
The following is a script for a NPC who sells... eh, Heart Scales or something.
Quote:
Originally Posted by Avara
#org @main
lock
faceplayer
showmoney 0x0 0x0 0x0
msgbox @OfferMsg 0x5
compare 0x800D 0x1
if 0x1 goto @AcceptedOffer
msgbox @DeclinedMsg 0x6
hidemoney 0x0 0x0
release
end

#org @AcceptedOffer
checkmoney 0x1F4 0x0
compare LASTRESULT 0x1
if 0x4 goto @Transaction
msgbox @IncorrectAmountMsg 0x6
hidemoney 0x0 0x0
release
end

#org @NoRoom
msgbox @NoRoomMsg 0x6
hidemoney 0x0 0x0
release
end

#org @Transaction
checkitemroom 0x6F 0x1
compare LASTRESULT 0x0
if 0x1 goto @NoRoom
paymoney 0x1F4 0x0
sound 0x58
updatemoney 0x0 0x0 0x0
msgbox @TransactionMsg 0x6
additem 0x6F 0x1
hidemoney 0x0 0x0
release
end

#org @OfferMsg
= Hi! Would you like to buy a Heart\nScale for [$]500?

#org @IncorrectAmountMsg
= Oh, you can't afford one.

#org @DeclinedMsg
= Not interested?

#org @NoRoomMsg
= You don't have room for it.

#org @TransactionMsg
= Thank you!\nPlease come again!
First, we display their money in the top left-hand corner of the screen and ask the player whether or not they'd like to buy an incredibly useful Heart Scale. If the player decines this incredible offer the money display box closes, our script ends and they are free to go. If the player says "Yes", the script will goto @AcceptedOffer then check if they have $500 (0x1F4). If they can't afford it, the script will also close everything and end. Having the required amount of $$$ takes us to @Transaction, where as long as the player has enough space for the item in their bag, we can go ahead with the exchange - if their bag is full the script will close. sound 0x58 plays a mart transaction noise as the player's money updates. We use additem as opposed to giveitem here, as it adds the item to the player's bag silently.

-----------------------------------------------------------------------------------------------------------------------------------------------------
Coins

Coins are used mainly in the Game Corner of the canon games, but since we're ROM hacking, you could use them for anything. Coin commands are very similar to the ones for money, so they don't require too much explanation, hopefully! To show, update and hide the box which shows the player's coins:
Quote:
Originally Posted by Avara
showcoins 0x[X-Co-ord] 0x[Y-Co-ord]
Quote:
Originally Posted by Avara
updatecoins 0x[X-Co-ord] 0x[Y-Co-ord]
Quote:
Originally Posted by Avara
hidecoins 0x[X-Co-ord] 0x[Y-Co-ord]
If you want to add coins to the player's Coin Case, you only need one short line.
Quote:
Originally Posted by Avara
givecoins 0x[Amount In Hex]
Practically the same for taking coins away, just a different command name:
Quote:
Originally Posted by Avara
removecoins 0x[Amount In Hex]
-----------------------------------------------------------------------------------------------------------------------------------------------------
Pokémarts

So, we now know how to check, give and take amounts of money, plus coins. Since we referred to Marts earlier, why don't we cover those to tie up the money stuff?

Quote:
Originally Posted by Avara
#dynamic 0x800000

#org @main
lock
faceplayer
preparemsg @MartGreetingMsg
waitmsg
pokemart @MartItemsList
msgbox @MartLeavingMsg 0x6
release
end

#org @MartGreetingMsg
= Welcome!\pHow may I help you?

#org @MartLeavingMsg
= Please come again!

#org @MartItemsList
#raw word 0x4
#raw word 0xD
#raw word 0xE
#raw word 0x12
#raw word 0x11
#raw word 0x0
Alternatively, if you make use of the stdmart.rbh header file I made, you could have this instead:
Quote:
Originally Posted by Avara
#dynamic 0x800000
#include stdmart.rbh

#org @main
lock
faceplayer
preparemsg @MartGreetingMsg
waitmsg
pokemart @MartItemsList
msgbox @MartLeavingMsg 0x6
release
end

#org @MartGreetingMsg
= Welcome!\pHow may I help you?

#org @MartLeavingMsg
= Please come again!

#org @MartItemsList
#raw MART_POKEBALL
#raw MART_POTION
#raw MART_ANTIDOTE
#raw MART_PARLYZHEAL
#raw MART_AWAKENING
#raw MART_END
Avara is offline   Reply With Quote
Likes Lunos liked this post
Sponsored Links
Old 1st March 2018, 10:28 PM   #12
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Pokémon Battle Scripts

First, we're going to learn how to make a wild Pokémon battle, useful for legendary encounters and such. We'll cover trainer battles a little later! The wildbattle command is set up like this:
Quote:
Originally Posted by Avara
wildbattle 0x[Pokémon] 0x[Level In Hex] 0x[Held Item]
Imagine we wanted to battle a level 50 Milotic holding Mystic Water:
Quote:
Originally Posted by Avara
#dynamic 0x800000

#org @main
...
wildbattle 0x149 0x32 0xD1
...
0x149 is Milotic's ID, 0x32 is 50 in hex, and 0xD1 is the item Mystic Water's ID. Click here for Pokémon/Item hex IDs if needed.

Wild Battle Result Check: [FR]
Spoiler:
wildbattle 0x[Pokémon] 0x[Level In Hex] 0x[Held Item]
special2 LASTRESULT 0xB4
compare LASTRESULT 0x1
if 0x1 goto @DefeatedPointer
compare LASTRESULT 0x4
if 0x1 goto @RanPointer
hidesprite LASTTALKED
setflag 0x[OW's Person ID in A-Map]
release
end


Wild Battle Result Check: [EM]
Spoiler:
wildbattle 0x[Pokémon] 0x[Level In Hex] 0x[Held Item]
special2 LASTRESULT 0xB7
compare LASTRESULT 0x1
if 0x1 goto @DefeatedPointer
compare LASTRESULT 0x4
if 0x1 goto @RanPointer
hidesprite LASTTALKED
setflag 0x[OW's Person ID in A-Map]
release
end


Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 1st March 2018, 10:29 PM   #13
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Trainer Battle Scripts

Next we're going to move on to trainer battles, the command for these isn't as straightforward as it seems at first glance.
Quote:
Originally Posted by Avara
trainerbattle 0x[Type Of Battle] 0x[Trainer's ID in Hex] 0x0
You can find a trainer's hex ID in any trainer editing tool, but what do I mean by "type of battle"? I'm going to list these one at a time. As I'm covering both FireRed[FR] and Emerald[EM], keep in mind that FR has the VS Seeker whereas EM has the Match Call function instead, so some types of trainer battle may not work correctly in a certain ROM.

trainerbattle 0x0 [FR] [EM]

This battle type is exactly the same in FR as it is in EM, used for standard trainer battles. Here's an example script:
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x0 0x001 0x0 @EncounterText @DefeatText
msgbox @AfterBattle 0x6
end

#org @EncounterText
= I challenge you!

#org @DefeatText
= You beat me[.]

#org @AfterBattle
= I'll say this after you've\nbattled me.
We're just using Trainer ID 0x001 for the sake of consistency.

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

trainerbattle 0x1 [FR] [EM]

0x1 is used for Gym Leaders in both FR and EM. If you open up a Gym Leader's script in your ROM of choice you'll be able to see that there's quite a bit going on, such as setting or clearing trainerflags (this is mainly done to ensure any unbattled Gym trainers don't try to fight you when you're on your way out after beating the Leader). For this example script, we don't have any of that, just a basic Gym Battle that ends in the player receiving a Badge and TM as a reward for winning:
Quote:
Originally Posted by Avara
#org @start
lock
faceplayer
checkflag 0x231
if 0x1 goto @Defeated
trainerbattle 0x1 0x001 0x0 @EncounterText @DefeatText @WonPointer
release
end

#org @Defeated
msgbox @AfterBattle 0x6
release
end

#org @WonPointer
msgbox @BadgeInfomsg 0x6
fanfare 0x171
preparemsg @ReceivedBadgemsg
waitmsg
waitfanfare
checkitemroom 0x121 0x1
compare LASTRESULT 0x0
if 0x1 goto @BagFull
additem 0x121 0x1
msgbox @ReceivedTMmsg 0x4
closeonkeypress
setflag 0x231
msgbox @TMInfomsg 0x6
release
end

#org @BagFull
msgbox @BagFullmsg 0x6
release
end

#org @EncounterText
= I challenge you!

#org @DefeatText
= You beat me[.]

#org @AfterBattle
= I'll say this after you've\nbattled me.

#org @BadgeInfomsg
= Please, take the X Badge and this\nTM!

#org @ReceivedBadgemsg
= [player] received the X Badge\nfrom the Gym Leader.

#org @ReceivedTMmsg
= [player] received TMX!

#org @TMInfomsg
= TM01 contains X move!

#org @BagFullmsg
= You don't have enough space in\nyour bag.
Just like before, we've got pointers for the initial encounter text, the message that displays when you win the battle and for after the battle. Although the Gen III games have special flags set aside for Badge functionality, I used 0x231 here for the sake of easiness, as well as Trainer ID 0x001 again. Notice that beside @DefeatText we have @WonPointer which contains the section of the script that rewards the player. fanfare 0x171 is the jingle played in Emerald when a Gym battle is won. If you've been paying close attention or have scripting experience already, you should know what everything else is for by now!

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

trainerbattle 0x2 [EM]

This battle type isn't used in FireRed. It's used with the PokéNav's Match Call rematches - see the Emerald section of trainerbattle 0x5.

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

trainerbattle 0x3 [FR] [EM]

0x3 is unique in that it allows the script to continue once the player wins the battle, as opposed to displaying a few messages and ending.
Quote:
Originally Posted by Avara
...
trainerbattle 0x3 0x001 0x0 @DefeatText
...

#org @DefeatText
= You beat me[.]
Substitute the "..."'s for whatever you like and that's pretty much it! All you need is a trainer ID and a pointer to the defeat text.

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

trainerbattle 0x4 [FR] [EM]

This one is used for standard double battles and is set up the same way in both FireRed and Emerald.
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x4 0x001 0x0 @EncounterText @DefeatText @OnlyOnePoke
msgbox @AfterBattle 0x6
end

#org @EncounterText
= We challenge you!

#org @DefeatText
= You beat us[.]

#org @AfterBattle
= We'll say this after you've\nbattled us.

#org @OnlyOnePoke
= You can't double battle with only\none Pokémon!
The trainerbattle commands concerning double battles have a nice built-in check - if the player only has one party member, the battle won't happen.

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

trainerbattle 0x5 [FR] [EM]

0x5 has different uses depending on your ROM.
[FR] In FireRed, it's used for VS Seeker rematches.
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x0 0x001 0x0 @EncounterText1 @DefeatText
special2 LASTRESULT 0x39
compare LASTRESULT 0x1
if 0x1 goto @RematchPointer
msgbox @AfterBattle 0x6
end

#org @RematchPointer
trainerbattle 0x5 0x001 0x0 @EncounterText2 @DefeatText
msgbox @AfterBattle 0x6
end

#org @EncounterText1
= I challenge you!

#org @EncounterText2
= I challenge you again!

#org @DefeatText
= You beat me[.]

#org @AfterBattle
= I'll say this after you've\nbattled me.
The first part closely resembles a standard trainer battle, using trainerbattle 0x0 and its usual parameters. The special2 LASTRESULT 0x39 and the following couple of lines correspond to the VS Seeker - don't worry too much about that for now! @RematchPointer contains, as labelled, our rematch - which is set up exactly the same as a standard battle, except we've used trainerbattle 0x5 as our prefix instead.

[EM] In Emerald, we don't have the VS Seeker - we've got Match Call instead. For single rematches, we'd need a script like this:
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x2 0x001 0x0 @EncounterText1 @DefeatText1 @NavPointer
special2 LASTRESULT 0x3C
compare LASTRESULT 0x1
if 0x1 goto @RematchPointer
msgbox @AfterBattle 0x6
release
end

#org @NavPointer
special 0x207
waitmovement 0x0
msgbox @PokenavMsg 0x6
setvar 0x8004 0x001
special 0x1E9
registernav 0x001
release
end

#org @RematchPointer
trainerbattle 0x5 0x001 0x0 @EncounterText2 @DefeatText2
msgbox @AfterBattle 0x6
end

#org @EncounterText1
= I challenge you!

#org @DefeatText1
= You beat me[.]

#org @PokenavMsg
= Do you have a PokéNav?

#org @EncounterText2
= I challenge you again!

#org @DefeatText2
= You beat me again[.]

#org @AfterBattle
= I'll say this after you've\nbattled me.
Again, we're focusing mainly on the battle stuff, so don't worry too much about what the specials are there for. Notice that we've used trainerbattle 0x2 for the first part, which otherwise looks like a standard battle script; only we've got @NavPointer at the end to allow this trainer to be registered in the player's PokéNav. Our @RematchPointer looks the same as a standard trainer battle, only with 0x5 as the battle type instead of 0x0.

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

trainerbattle 0x6 [EM]

Do you remember how trainerbattle 0x1, commonly used for Gym Leaders, allowed you to go to an extra pointer after the defeat text("You beat me..."), but before the default final message("I'll say this after you've battled me")? Trainerbattle 0x6 also allows for this in double battles. In EM it's used often with Gabby&Ty. It has no known use in FireRed.
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x6 0x001 0x0 @EncounterText @DefeatText @OnlyOnePoke @ExtraPointer
msgbox @AfterBattle 0x6
release
end

#org @EncounterText
= We challenge you!

#org @DefeatText
= You beat us[.]

#org @AfterBattle
= We'll say this after you've\nbattled us.

#org @OnlyOnePoke
= You can't double battle with only\none Pokémon!

#org @ExtraPointer
...
Seems familiar by now, right? At least, I hope it does =P

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

trainerbattle 0x7 [FR] [EM]

This type of trainerbattle has different uses in either ROM.
[FR] In FR 0x7 tied to the VS Seeker, this time for double battle rematches! It's used in conjunction with trainerbattle 0x4, like this:
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x4 0x001 0x0 @EncounterText1 @DefeatText @OnlyOnePoke
special2 LASTRESULT 0x39
compare LASTRESULT 0x1
if 0x1 goto @RematchPointer
msgbox @AfterBattle 0x6
end

#org @RematchPointer
trainerbattle 0x7 0x001 0x0 @EncounterText2 @DefeatText @OnlyOnePoke
msgbox @AfterBattle 0x6
end

#org @EncounterText1
= We challenge you!

#org @EncounterText2
= We challenge you again!

#org @DefeatText
= You beat us[.]

#org @AfterBattle
= We'll say this after you've\nbattled us.

#org @OnlyOnePoke
= You can't double battle with only\none Pokémon!
It's similar to the single VS Seeker battle script, only it has the built-in check to ensure the player can't take part in the double battle with a single Pokémon.

[EM] In Emerald, trainerbattle 0x7 is used with 0x4 and 0x8 for double battle rematches through Match Call.

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

trainerbattle 0x8 [EM]

The only instance I can think of for trainerbattle 0x8 is Tate & Liza's Gym - seeing as all the Gym Leaders have double battle rematches in EM, it's used with 0x7. So, it's like a double Gym battle followed by a double battle rematch.
Quote:
Originally Posted by Avara
#org @start
trainerbattle 0x8 0x001 0x0 @EncounterText1 @DefeatText @OnlyOnePoke @ExtraPointer
special2 LASTRESULT 0x3C
compare LASTRESULT 0x1
if 0x1 goto @RematchPointer
msgbox @AfterBattle 0x6
release
end

#org @ExtraPointer
fanfare 0x171
preparemsg @ReceivedBadgemsg
waitmsg
waitfanfare
...
release
end

#org @RematchPointer
trainerbattle 0x7 0x001 0x0 @EncounterText2 @DefeatText @OnlyOnePoke
msgbox @AfterBattle 0x6
end

#org @EncounterText1
= We challenge you!

#org @EncounterText2
= We challenge you again!

#org @DefeatText
= You beat us[.]

#org @AfterBattle
= We'll say this after you've\nbattled us.

#org @OnlyOnePoke
= You can't double battle with only\none Pokémon!

#org @ReceivedBadgemsg
= [player] received the X Badge\nfrom the Gym Leaders.
-----------------------------------------------------------------------------------------------------------------------------------------------------

trainerbattle 0x9 [FR]

Not used in Emerald, trainerbattle 0x9 is a FR-exclusive that's used for your first rival battle in Oak's Lab. Let's have a look:
Quote:
Originally Posted by Avara
...
trainerbattle 0x9 0x001 0x0 @DefeatText @WinText
...

#org @DefeatText
= You beat me[.]

#org @WinText
= I'm the best!
It's quite similar to trainerbattle 0x3 in that you can safely have whatever you want before and after it. @DefeatText will display if the opponent loses as usual, but @WinText will display if the opponent wins against the player. Why have I got a special 0x0 after the battle? That special silently heals the player's Pokémon, so that it's safe for them to go on if they lose.
Not only does it let you display different end-of-battle text depending on whether or not the player loses, it also displays Professor Oak's tutorial-text during the battle.
What if you want to remove Oak's commentary? It's extremely easy - open your FireRed ROM in a hex editor, such as HxD, and navigate to 080484. Fill the next 8 bytes with 0s like so:

Hit save and test. Bye, Oak!

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

Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 1st March 2018, 10:31 PM   #14
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Specials

What is the difference between special and special2? The latter can return a value to be stored in a variable. We're going to focus on the former for now! So, what is the special command used for? It's used to perform a particular function in-game. For demonstration purposes, I'm going to activate Emerald's National Pokédex.
Quote:
Originally Posted by Avara
#org @main
lock
faceplayer
special 0x1F3
msgbox @msg1 0x6
release
end

#org @msg
= Your Pokédex was updated!
A short list of specials can be found in the spoiler below:

Spoiler:
special 0x0 - Heal Party [FR] [EM]
special 0x3C - Enable Bill's PC [FR]
special 0x8E - Refresh Screen (use with setmaptile) [FR]
special 0x136 - Earthquake [FR]
special 0x156 - Ghost Battle [FR]
special 0x157 - Get on Bike [FR]
special 0x161 - Start Surfing [FR]
special 0x16F - Activate National Dex [FR]
special 0x91 - Refresh Screen (use with setmaptile) [EM]
special 0x133 - Long Earthquake [EM]
special 0x13D - Short Earthquake [EM]
special 0x1F3 - Activate National Dex [EM]
***
Here's a tip from diegoisawesome regarding the earthquake specials:
Quote:
Originally Posted by Diegoisawesome
For the earthquake animation, here's a few variables you should set before using the special:

setvar 0x8004 0xF //This controls how far the screen shakes vertically
setvar 0x8005 0xF //This controls how far the screen shakes horizontally
setvar 0x8006 0xF //This controls how long the overall animation lasts
setvar 0x8007 0xF //This controls how long one screen shake lasts

Further information on special and special2 commands for FireRed can be found here and Emerald hackers will want to check out this post.

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

Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 01:46 PM   #15
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

sethealingplace

You'll notice that all Pokémon Centers host a level script containing something along these lines:


What does this do? On entering the building, this script runs to make sure the player respawns at the last-visited Pokémon Center on white-out.

sethealingplace IDs: [FR]
Spoiler:
0x01 = Player's House
0x02 = Viridian City
0x03 = Pewter City
0x04 = Cerulean City
0x05 = Lavender Town
0x06 = Vermilion City
0x07 = Celadon City
0x08 = Fuchsia City
0x09 = Cinnabar Island
0x0A = Indigo Plateau/Pokemon League Entrance
0x0B = Saffron City
0x0C = Route 4/Mt. Moon Entrance
0x0D = Route 10/Rock Tunnel Entrance
0x0E = One Island
0x0F = Two Island
0x10 = Three Island
0x11 = Four Island
0x12 = Five Island
0x13 = Seven Island
0x14 = Six Island


sethealingplace IDs: [EM]
Spoiler:
0x01 = Player's Room (male)
0x02 = Player's Room (female)
0x03 = Petalburg City
0x04 = Slateport City
0x05 = Mauville City
0x06 = Rustboro City
0x07 = Fortree City
0x08 = Lilycove City
0x09 = Mossdeep City
0x0A = Sootopolis City
0x0B = Ever Grande City (Victory Road)
0x0C = Littleroot Town (left)
0x0D = Littleroot Town (right)
0x0E = Oldale Town
0x0F = Dewford Town
0x10 = Lavaridge Town
0x11 = Fallarbor Town
0x12 = Verdanturf Town
0x13 = Pacifidlog Town
0x14 = Ever Grande City (Pokemon League)
0x15 = Southern Island
0x16 = Battle Frontier

Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 01:47 PM   #16
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

FireRed & Emerald Item ID Numbers
Spoiler:
0001 = Master Ball
0002 = Ultra Ball
0003 = Great Ball
0004 = Poke Ball
0005 = Safari Ball
0006 = Net Ball
0007 = Dive Ball
0008 = Nest Ball
0009 = Repeat Ball
000A = Timer Ball
000B = Luxury Ball
000C = Premier Ball

000D = Potion
000E = Antidote
000F = Burn Heal
0010 = Ice Heal
0011 = Awakening
0012 = Parlyz Heal
0013 = Full Restore
0014 = Max Potion
0015 = Hyper Potion
0016 = Super Potion
0017 = Full Heal
0018 = Revive
0019 = Max Revive
001A = Fresh Water
001B = Soda Pop
001C = Lemonade
001D = MooMoo Milk
001E = Energy Powder
001F = Energy Root
0020 = Heal Powder
0021 = Revival Herb
0022 = Ether
0023 = Max Ether
0024 = Elixer
0025 = Max Elixer
0026 = Lava Cookie

0027 = Blue Flute
0028 = Yellow Flute
0029 = Red Flute
002A = Black Flute
002B = White Flute
002C = Berry Juice
002D = Sacred Ash
002E = Shoal Salt
002F = Shoal Shell
0030 = Red Shard
0031 = Blue Shard
0032 = Yellow Shard
0033 = Green Shard

003F = HP Up
0040 = Protein
0041 = Iron
0042 = Carbos
0043 = Calcium
0044 = Rare Candy
0045 = PP Up
0046 = Zinc
0047 = PP Max

0049 = Guard Spec
004A = Dire Hit
004B = X Attack
004C = X Defend
004D = X Speed
004E = X Accuracy
004F = X Special

0050 = Poke Doll
0051 = Fluffy Tail
0053 = Super Repel
0054 = Max Repel
0055 = Escape Rope
0056 = Repel

005D = Sun Stone
005E = Moon Stone
005F = Fire Stone
0060 = Thunder Stone
0061 = Water Stone
0062 = Leaf Stone

0067 = Tiny Mushroom
0068 = Big Mushroom
006A = Pearl
006B = Big Pearl
006C = Stardust
006D = Star Piece
006E = Nugget
006F = Heart Scale

0079 = Orange Mail
007A = Harbor Mail
007B = Glitter Mail
007C = Mech Mail
007D = Wood Mail
007E = Wave Mail
007F = Bead Mail
0080 = Shadow Mail
0081 = Tropic Mail
0082 = Dream Mail
0083 = Fab Mail
0084 = Retro Mail

0085 = Cheri Berry
0086 = Chesto Berry
0087 = Pecha Berry
0088 = Rawst Berry
0089 = Aspear Berry
008A = Leppa Berry
008B = Oran Berry
008C = Persim Berry
008D = Lum Berry
008E = Sitrus Berry
008F = Figy Berry
0090 = Wiki Berry
0091 = Mago Berry
0092 = Aguav Berry
0093 = Iapapa Berry
0094 = Razz Berry
0095 = Bluk Berry
0096 = Nanab Berry
0097 = Wepear Berry
0098 = Pinap Berry
0099 = Pomeg Berry
009A = Kelpsy Berry
009B = Qualot Berry
009C = Hondew Berry
009D = Grepa Berry
009E = Tamato Berry
009F = Cornn Berry
00A0 = Magost Berry
00A1 = Rabuta Berry
00A2 = Nomel Berry
00A3 = Spelon Berry
00A4 = Pamtre Berry
00A5 = Watmel Berry
00A6 = Durin Berry
00A7 = Belue Berry
00A8 = Liechi Berry
00A9 = Ganlon Berry
00AA = Salac Berry
00AB = Petaya Berry
00AC = Apicot Berry
00AD = Lansat Berry
00AE = Starf Berry
00AF = Enigma Berry

00B3 = Bright Powder
00B4 = White Herb
00B5 = Macho Brace
00B6 = Exp Share
00B7 = Quick Claw
00B8 = Soothe Bell
00B9 = Mental Herb
00BA = Choice Band
00BB = King's Rock
00BC = Silver Powder
00BD = Amulet Coin
00BE = Cleanse Tag
00BF = Soul Dew
00C0 = Deep Sea Tooth
00C1 = Deep Sea Scale
00C2 = Smoke Ball
00C3 = Everstone
00C4 = Focus Band
00C5 = Lucky Egg
00C6 = Scope Lens
00C7 = Metal Coat
00C8 = Leftovers
00C9 = Dragon Scale
00CA = Light Ball
00CB = Soft Sand
00CC = Hard Stone
00CD = Miracle Seed
00CE = Black Glasses
00CF = Black Belt
00D0 = Magnet
00D1 = Mystic Water
00D2 = Sharp Beak
00D3 = Poison Barb
00D4 = Nevermelt Ice
00D5 = Spell Tag
00D6 = Twisted Spoon
00D7 = Charcoal
00D8 = Dragon Fang
00D9 = Silk Scarf

00DA = Up-Grade
00DB = Shell Bell
00DC = Sea Incense
00DD = Lax Incense
00DE = Lucky Punch
00DF = Metal Powder
00E0 = Thick Club
00E1 = Stick
00FE = Red Scarf
00FF = Blue Scarf
0100 = Pink Scarf
0101 = Green Scarf
0102 = Yellow Scarf

0103 = Mach Bike
0104 = Coin Case
0105 = ItemFinder
0106 = Old Rod
0107 = Good Rod
0108 = Super Rod
0109 = S.S. Ticket
010A = Contest Pass
010C = Wailmer Pail
010D = Devon's Goods
010E = Soot Sack
010F = Basement Key
0110 = Acro Bike
0111 = PokeBlock Case
0112 = Letter
0113 = Eon Ticket
0114 = Red Orb
0115 = Blue Orb
0116 = Scanner
0117 = Go-Goggles
0118 = Meteorite
0119 = Rm.1 Key
011A = Rm.2 Key
011B = Rm.4 Key
011C = Rm.6 Key
011D = Storage Key
011E = Root Fossil
011F = Claw Fossil
0120 = Devon Scope

0121 = TM01 (Focus Punch)
0122 = TM02 (Dragon Claw)
0123 = TM03 (Water Pulse)
0124 = TM04 (Calm Mind)
0125 = TM05 (Roar)
0126 = TM06 (Toxic)
0127 = TM07 (Hail)
0128 = TM08 (Bulk Up)
0129 = TM09 (Bullet Seed)
012A = TM10 (Hidden Power)
012B = TM11 (Sunny Day)
012C = TM12 (Taunt)
012D = TM13 (Ice Beam)
012E = TM14 (Blizzard)
012F = TM15 (Hyper Beam)
0130 = TM16 (Light Screen)
0131 = TM17 (Protect)
0132 = TM18 (Rain Dance)
0133 = TM19 (Giga Drain)
0134 = TM20 (Safeguard)
0135 = TM21 (Frustration)
0136 = TM22 (Solar Beam)
0137 = TM23 (Iron Tail)
0138 = TM24 (Thunderbolt)
0139 = TM25 (Thunder)
013A = TM26 (Earthquake)
013B = TM27 (Return)
013C = TM28 (Dig)
013D = TM29 (Psychic)
013E = TM30 (Shadow Ball)
013F = TM31 (Brick Break)
0140 = TM32 (Double Team)
0141 = TM33 (Reflect)
0142 = TM34 (Shock Wave)
0143 = TM35 (Flamethrower)
0144 = TM36 (Sludge Bomb)
0145 = TM37 (Sandstorm)
0146 = TM38 (Fire Blast)
0147 = TM39 (Rock Tomb)
0148 = TM40 (Aerial Ace)
0149 = TM41 (Torment)
014A = TM42 (Facade)
014B = TM43 (Secret Power)
014C = TM44 (Rest)
014D = TM45 (Attract)
014E = TM46 (Thief)
014F = TM47 (Steel Wing)
0150 = TM48 (Skill Swap)
0151 = TM49 (Snatch)
0152 = TM50 (Overheat)
0153 = HM01 (Cut)
0154 = HM02 (Fly)
0155 = HM03 (Surf)
0156 = HM04 (Strength)
0157 = HM05 (Flash)
0158 = HM06 (Rock Smash)
0159 = HM07 (Waterfall)
015A = HM08 (Dive)

015D = Oak's Parcel
015E = PokeFlute
015F = Secret Key
0160 = Bike Voucher
0161 = Gold Teeth
0162 = Old Amber
0163 = Card Key
0164 = Lift Key
0165 = Dome Fossil
0166 = Helix Fossil
0167 = Silph Scope
0168 = Bicycle
0169 = Town Map
016A = VS Seeker
016B = Fame Checker
016C = TM Case
016D = Berry Pouch
016E = Teachy TV
016F = Tri-Pass
0170 = Rainbow Pass
0171 = Tea
0172 = Mystery Ticket
0173 = Aurora Ticket
0174 = Powder Jar
0175 = Ruby
0176 = Sapphire

[Emerald Only]
0177 = Magma Emblem
0178 = Old Sea Map


FireRed & Emerald Pokémon ID Numbers
Spoiler:
0001 = BULBASAUR
0002 = IVYSAUR
0003 = VENUSAUR
0004 = CHARMANDER
0005 = CHARMELEON
0006 = CHARIZARD
0007 = SQUIRTLE
0008 = WARTORTLE
0009 = BLASTOISE
000A = CATERPIE
000B = METAPOD
000C = BUTTERFREE
000D = WEEDLE
000E = KAKUNA
000F = BEEDRILL
0010 = PIDGEY
0011 = PIDGEOTTO
0012 = PIDGEOT
0013 = RATTATA
0014 = RATICATE
0015 = SPEAROW
0016 = FEAROW
0017 = EKANS
0018 = ARBOK
0019 = PIKACHU
001A = RAICHU
001B = SANDSHREW
001C = SANDSLASH
001D = NIDORAN Female
001E = NIDORINA
001F = NIDOQUEEN
0020 = NIDORAN Male
0021 = NIDORINO
0022 = NIDOKING
0023 = CLEFAIRY
0024 = CLEFABLE
0025 = VULPIX
0026 = NINETALES
0027 = JIGGLYPUFF
0028 = WIGGLYTUFF
0029 = ZUBAT
002A = GOLBAT
002B = ODDISH
002C = GLOOM
002D = VILEPLUME
002E = PARAS
002F = PARASECT
0030 = VENONAT
0031 = VENOMOTH
0032 = DIGLETT
0033 = DUGTRIO
0034 = MEOWTH
0035 = PERSIAN
0036 = PSYDUCK
0037 = GOLDUCK
0038 = MANKEY
0039 = PRIMEAPE
003A = GROWLITHE
003B = ARCANINE
003C = POLIWAG
003D = POLIWHIRL
003E = POLIWRATH
003F = ABRA
0040 = KADABRA
0041 = ALAKAZAM
0042 = MACHOP
0043 = MACHOKE
0044 = MACHAMP
0045 = BELLSPROUT
0046 = WEEPINBELL
0047 = VICTREEBEL
0048 = TENTACOOL
0049 = TENTACRUEL
004A = GEODUDE
004B = GRAVELER
004C = GOLEM
004D = PONYTA
004E = RAPIDASH
004F = SLOWPOKE
0050 = SLOWBRO
0051 = MAGNEMITE
0052 = MAGNETON
0053 = FARFETCH'D
0054 = DODUO
0055 = DODRIO
0056 = SEEL
0057 = DEWGONG
0058 = GRIMER
0059 = MUK
005A = SHELLDER
005B = CLOYSTER
005C = GASTLY
005D = HAUNTER
005E = GENGAR
005F = ONIX
0060 = DROWZEE
0061 = HYPNO
0062 = KRABBY
0063 = KINGLER
0064 = VOLTORB
0065 = ELECTRODE
0066 = EXEGGCUTE
0067 = EXEGGUTOR
0068 = CUBONE
0069 = MAROWAK
006A = HITMONLEE
006B = HITMONCHAN
006C = LICKITUNG
006D = KOFFING
006E = WEEZING
006F = RHYHORN
0070 = RHYDON
0071 = CHANSEY
0072 = TANGELA
0073 = KANGASKHAN
0074 = HORSEA
0075 = SEADRA
0076 = GOLDEEN
0077 = SEAKING
0078 = STARYU
0079 = STARMIE
007A = MR.MIME
007B = SCYTHER
007C = JYNX
007D = ELECTABUZZ
007E = MAGMAR
007F = PINSIR
0080 = TAUROS
0081 = MAGIKARP
0082 = GYARADOS
0083 = LAPRAS
0084 = DITTO
0085 = EEVEE
0086 = VAPOREON
0087 = JOLTEON
0088 = FLAREON
0089 = PORYGON
008A = OMANYTE
008B = OMASTAR
008C = KABUTO
008D = KABUTOPS
008E = AERODACTYL
008F = SNORLAX
0090 = ARTICUNO
0091 = ZAPDOS
0092 = MOLTRES
0093 = DRATINI
0094 = DRAGONAIR
0095 = DRAGONITE
0096 = MEWTWO
0097 = MEW

0098 = CHIKORITA
0099 = BAYLEEF
009A = MEGANIUM
009B = CYNDAQUIL
009C = QUILAVA
009D = TYPHLOSION
009E = TOTODILE
009F = CROCONAW
00A0 = FERALIGATR
00A1 = SENTRET
00A2 = FURRET
00A3 = HOOTHOOT
00A4 = NOCTOWL
00A5 = LEDYBA
00A6 = LEDIAN
00A7 = SPINARAK
00A8 = ARIADOS
00A9 = CROBAT
00AA = CHINCHOU
00AB = LANTURN
00AC = PICHU
00AD = CLEFFA
00AE = IGGLYBUFF
00AF = TOGEPI
00B0 = TOGETIC
00B1 = NATU
00B2 = XATU
00B3 = MAREEP
00B4 = FLAAFFY
00B5 = AMPHAROS
00B6 = BELLOSSOM
00B7 = MARILL
00B8 = AZUMARILL
00B9 = SUDOWOODO
00BA = POLITOED
00BB = HOPPIP
00BC = SKIPLOOM
00BD = JUMPLUFF
00BE = AIPOM
00BF = SUNKERN
00C0 = SUNFLORA
00C1 = YANMA
00C2 = WOOPER
00C3 = QUAGSIRE
00C4 = ESPEON
00C5 = UMBREON
00C6 = MURKROW
00C7 = SLOWKING
00C8 = MISDREAVUS
00C9 = UNOWN
00CA = WOBBUFFET
00CB = GIRAFARIG
00CC = PINECO
00CD = FORRETRESS
00CE = DUNSPARCE
00CF = GLIGAR
00D0 = STEELIX
00D1 = SNUBBULL
00D2 = GRANBULL
00D3 = QWILFISH
00D4 = SCIZOR
00D5 = SHUCKLE
00D6 = HERACROSS
00D7 = SNEASEL
00D8 = TEDDIURSA
00D9 = URSARING
00DA = SLUGMA
00DB = MAGCARGO
00DC = SWINUB
00DD = PILOSWINE
00DE = CORSOLA
00DF = REMORAID
00E0 = OCTILLERY
00E1 = DELIBIRD
00E2 = MANTINE
00E3 = SKARMORY
00E4 = HOUNDOUR
00E5 = HOUNDOOM
00E6 = KINGDRA
00E7 = PHANPY
00E8 = DONPHAN
00E9 = PORYGON
00EA = STANTLER
00EB = SMEARGLE
00EC = TYROGUE
00ED = HITMONTOP
00EE = SMOOCHUM
00EF = ELEKID
00F0 = MAGBY
00F1 = MILTANK
00F2 = BLISSEY
00F3 = RAIKOU
00F4 = ENTEI
00F5 = SUICUNE
00F6 = LARVITAR
00F7 = PUPITAR
00F8 = TYRANITAR
00F9 = LUGIA
00FA = HO-OH
00FB = CELEBI

0115 = TREECKO
0116 = GROVYLE
0117 = SCEPTILE
0118 = TORCHIC
0119 = COMBUSKEN
011A = BLAZIKEN
011B = MUDKIP
011C = MARSHTOMP
011D = SWAMPERT
011E = POOCHYENA
011F = MIGHTYENA
0120 = ZIGZAGOON
0121 = LINOONE
0122 = WURMPLE
0123 = SILCOON
0124 = BEAUTIFLY
0125 = CASCOON
0126 = DUSTOX
0127 = LOTAD
0128 = LOMBRE
0129 = LUDICOLO
012A = SEEDOT
012B = NUZLEAF
012C = SHIFTRY
012D = NINCADA
012E = NINJASK
012F = SHEDINJA
0130 = TAILLOW
0131 = SWELLOW
0132 = SHROOMISH
0133 = BRELOOM
0134 = SPINDA
0135 = WINGULL
0136 = PELIPPER
0137 = SURSKIT
0138 = MASQUERAIN
0139 = WAILMER
013A = WAILORD
013B = SKITTY
013C = DELCATTY
013D = KECLEON
013E = BALTOY
013F = CLAYDOL
0140 = NOSEPASS
0141 = TORKOAL
0142 = SABLEYE
0143 = BARBOACH
0144 = WHISCASH
0145 = LUVDISC
0146 = CORPHISH
0147 = CRAWDAUNT
0148 = FEEBAS
0149 = MILOTIC
014A = CARVANHA
014B = SHARPEDO
014C = TRAPINCH
014D = VIBRAVA
014E = FLYGON
014F = MAKUHITA
0150 = HARIYAMA
0151 = ELECTRIKE
0152 = MANECTRIC
0153 = NUMEL
0154 = CAMERUPT
0155 = SPHEAL
0156 = SEALEO
0157 = WALREIN
0158 = CACNEA
0159 = CACTURNE
015A = SNORUNT
015B = GLALIE
015C = LUNATONE
015D = SOLROCK
015E = AZURILL
015F = SPOINK
0160 = GRUMPIG
0161 = PLUSLE
0162 = MINUN
0163 = MAWILE
0164 = MEDITITE
0165 = MEDICHAM
0166 = SWABLU
0167 = ALTARIA
0168 = WYNAUT
0169 = DUSKULL
016A = DUSCLOPS
016B = ROSELIA
016C = SLAKOTH
016D = VIGOROTH
016E = SLAKING
016F = GULPIN
0170 = SWALOT
0171 = TROPIUS
0172 = WHISMUR
0173 = LOUDRED
0174 = EXPLOUD
0175 = CLAMPERL
0176 = HUNTAIL
0177 = GOREBYSS
0178 = ABSOL
0179 = SHUPPET
017A = BANETTE
017B = SEVIPER
017C = ZANGOOSE
017D = RELICANTH
017E = ARON
017F = LAIRON
0180 = AGGRON
0181 = CASTFORM
0182 = VOLBEAT
0183 = ILLUMISE
0184 = LILEEP
0185 = CRADILY
0186 = ANORITH
0187 = ARMALDO
0188 = RALTS
0189 = KIRLIA
018A = GARDEVOIR
018B = BAGON
018C = SHELGON
018D = SALAMENCE
018E = BELDUM
018F = METANG
0190 = METAGROSS
0191 = REGIROCK
0192 = REGICE
0193 = REGISTEEL
0194 = KYOGRE
0195 = GROUDON
0196 = RAYQUAZA
0197 = LATIAS
0198 = LATIOS
0199 = JIRACHI
019A = DEOXYS
019B = CHIMECHO


FireRed & Emerald Attack ID Numbers
Spoiler:
001 Pound
002 Karate Chop
003 DoubleSlap
004 Comet Punch
005 Mega Punch
006 Pay Day
007 Fire Punch
008 Ice Punch
009 ThunderPunch
00A Scratch
00B ViceGrip
00C Guillotine
00D Razor Wind
00E Swords Dance
00F Cut
010 Gust
011 Wing Attack
012 Whirlwind
013 Fly
014 Bind
015 Slam
016 Vine Whip
017 Stomp
018 Double Kick
019 Mega Kick
01A Jump Kick
01B Rolling Kick
01C Sand-Attack
01D Headbutt
01E Horn Attack
01F Fury Attack
020 Horn Drill
021 Tackle
022 Body Slam
023 Wrap
024 Take Down
025 Thrash
026 Double-Edge
027 Tail Whip
028 Poison Sting
029 Twineedle
02A Pin Missile
02B Leer
02C Bite
02D Growl
02E Roar
02F Sing
030 Supersonic
031 SonicBoom
032 Disable
033 Acid
034 Ember
035 Flamethrower
036 Mist
037 Water Gun
038 Hydro Pump
039 Surf
03A Ice Beam
03B Blizzard
03C Psybeam
03D BubbleBeam
03E Aurora Beam
03F Hyper Beam
040 Peck
041 Drill Peck
042 Submission
043 Low Kick
044 Counter
045 Seismic Toss
046 Strength
047 Absorb
048 Mega Drain
049 Leech Seed
04A Growth
04B Razor Leaf
04C SolarBeam
04D PoisonPowder
04E Stun Spore
04F Sleep Powder
050 Petal Dance
051 String Shot
052 Dragon Rage
053 Fire Spin
054 ThunderShock
055 Thunderbolt
056 Thunder Wave
057 Thunder
058 Rock Throw
059 Earthquake
05A Fissure
05B Dig
05C Toxic
05D Confusion
05E Psychic
05F Hypnosis
060 Meditate
061 Agility
062 Quick Attack
063 Rage
064 Teleport
065 Night Shade
066 Mimic
067 Screech
068 Double Team
069 Recover
06A Harden
06B Minimize
06C SmokeScreen
06D Confuse Ray
06E Withdraw
06F Defense Curl
070 Barrier
071 Light Screen
072 Haze
073 Reflect
074 Focus Energy
075 Bide
076 Metronome
077 Mirror Move
078 Selfdestruct
079 Egg Bomb
07A Lick
07B Smog
07C Sludge
07D Bone Club
07E Fire Blast
07F Waterfall
080 Clamp
081 Swift
082 Skull Bash
083 Spike Cannon
084 Constrict
085 Amnesia
086 Kinesis
087 Softboiled
088 Hi Jump Kick
089 Glare
08A Dream Eater
08B Poison Gas
08C Barrage
08D Leech Life
08E Lovely Kiss
08F Sky Attack
090 Transform
091 Bubble
092 Dizzy Punch
093 Spore
094 Flash
095 Psywave
096 Splash
097 Acid Armor
098 Crabhammer
099 Explosion
09A Fury Swipes
09B Bonemerang
09C Rest
09D Rock Slide
09E Hyper Fang
09F Sharpen
0A0 Conversion
0A1 Tri Attack
0A2 Super Fang
0A3 Slash
0A4 Substitute
0A5 Struggle
0A6 Sketch
0A7 Triple Kick
0A8 Thief
0A9 Spider Web
0AA Mind Reader
0AB Nightmare
0AC Flame Wheel
0AD Snore
0AE Curse
0AF Flail
0B0 Conversion 2
0B1 Aeroblast
0B2 Cotton Spore
0B3 Reversal
0B4 Spite
0B5 Powder Snow
0B6 Protect
0B7 Mach Punch
0B8 Scary Face
0B9 Faint Attack
0BA Sweet Kiss
0BB Belly Drum
0BC Sludge Bomb
0BD Mud-Slap
0BE Octazooka
0BF Spikes
0C0 Zap Cannon
0C1 Foresight
0C2 Destiny Bond
0C3 Perish Song
0C4 Icy Wind
0C5 Detect
0C6 Bone Rush
0C7 Lock-On
0C8 Outrage
0C9 Sandstorm
0CA Giga Drain
0CB Endure
0CC Charm
0CD Rollout
0CE False Swipe
0CF Swagger
0D0 Milk Drink
0D1 Spark
0D2 Fury Cutter
0D3 Steel Wing
0D4 Mean Look
0D5 Attract
0D6 Sleep Talk
0D7 Heal Bell
0D8 Return
0D9 Present
0DA Frustration
0DB Safeguard
0DC Pain Split
0DD Sacred Fire
0DE Magnitude
0DF DynamicPunch
0E0 Megahorn
0E1 DragonBreath
0E2 Baton Pass
0E3 Encore
0E4 Pursuit
0E5 Rapid Spin
0E6 Sweet Scent
0E7 Iron Tail
0E8 Metal Claw
0E9 Vital Throw
0EA Morning Sun
0EB Synthesis
0EC Moonlight
0ED Hidden Power
0EE Cross Chop
0EF Twister
0F0 Rain Dance
0F1 Sunny Day
0F2 Crunch
0F3 Mirror Coat
0F4 Psych Up
0F5 ExtremeSpeed
0F6 AncientPower
0F7 Shadow Ball
0F8 Future Sight
0F9 Rock Smash
0FA Whirlpool
0FB Beat Up
0FC Fake Out
0FD Uproar
0FE Stockpile
0FF Spit Up
100 Swallow
101 Heat Wave
102 Hail
103 Torment
104 Flatter
105 Will-O-Wisp
106 Memento
107 Facade
108 Focus Punch
109 SmellingSalt
10A Follow Me
10B Nature Power
10C Charge
10D Taunt
10E Helping Hand
10F Trick
110 Role Play
111 Wish
112 Assist
113 Ingrain
114 Superpower
115 Magic Coat
116 Recycle
117 Revenge
118 Brick Break
119 Yawn
11A Knock Off
11B Endeavor
11C Eruption
11D Skill Swap
11E Imprison
11F Refresh
120 Grudge
121 Snatch
122 Secret Power
123 Dive
124 Arm Thrust
125 Camouflage
126 Tail Glow
127 Luster Purge
128 Mist Ball
129 FeatherDance
12A Teeter Dance
12B Blaze Kick
12C Mud Sport
12D Ice Ball
12E Needle Arm
12F Slack Off
130 Hyper Voice
131 Poison Fang
132 Crush Claw
133 Blast Burn
134 Hydro Cannon
135 Meteor Mash
136 Astonish
137 Weather Ball
138 Aromatherapy
139 Fake Tears
13A Air Cutter
13B Overheat
13C Odor Sleuth
13D Rock Tomb
13E Silver Wind
13F Metal Sound
140 GrassWhistle
141 Tickle
142 Cosmic Power
143 Water Spout
144 Signal Beam
145 Shadow Punch
146 Extrasensory
147 Sky Uppercut
148 Sand Tomb
149 Sheer Cold
14A Muddy Water
14B Bullet Seed
14C Aerial Ace
14D Icicle Spear
14E Iron Defense
14F Block
150 Howl
151 Dragon Claw
152 Frenzy Plant
153 Bulk Up
154 Bounce
155 Mud Shot
156 Poison Tail
157 Covet
158 Volt Tackle
159 Magical Leaf
15A Water Sport
15B Calm Mind
15C Leaf Blade
15D Dragon Dance
15E Rock Blast
15F Shock Wave
160 Water Pulse
161 Doom Desire


FireRed Multichoice ID Numbers
Spoiler:
[00] - Yes
No
[01] - Eevee
Flareon
Jolteon
Vaporeon
Quit looking.
[02] - Normal
Black
Pink
Sepia
[03] - Hall of Fame
Quit
[04] - Eggs
Quit
[05] - Victories
Quit
[06] - Hall of Fame
Eggs
Quit
[07] - Hall of Fame
Victories
Quit
[08] - Eggs
Victories
Quit
[09] - Hall of Fame
Eggs
Victories
Quit
[0A] - Exit
[0B] - Exit
[0C] - Exit
[0D] - Bicycle $1,000,000
No Thanks
[0E] - Abra 180 coins
Clefairy 500 coins
Dratini 2,800 coins
Scyther 5,500 coins
Porygon 9,999 coins
No Thanks
[0F] - SLP
PSN
PAR
BRN
FRZ
EXIT
[10] - Yes
No
Info
[11] - Single battle
Double battle
Multi battle
Info
Exit
[12] - Yes
No
Info
[13] - Make a Challenge
Info
Exit
[14] - Rooftop
B1F
Exit
[15] - Helix Fossil
Exit
[16] - Dome Fossil
Exit
[17] - Old Amber
Exit
[18] - Helix Fossil
Old Amber
Exit
[19] - Dome Fossil
Old Amber
Exit
[1A] - Fresh Water $200
Soda Pop $300
Lemonade $350
Exit
[1B] - 50 coins $1,000
500 coins $10,000
Exit
[1C] - Excellent
Not So Bad
[1D] - Right
Left
[1E] - TM13 4,000 coins
TM23 3,500 coins
TM24 4,000 coins
TM30 4,500 coins
TM35 4,000 coins
No Thanks
[1F] - 5F
4F
3F
2F
1F
Exit
[20] - Fresh Water
Exit
[21] - Soda Pop
Exit
[22] - Fresh Water
Soda Pop
Exit
[23] - Lemonade
Exit
[24] - Fresh Water
Lemonade
Exit
[25] - Soda Pop
Lemonade
Exit
[26] - Fresh Water
Soda Pop
Lemonade
Exit
[27] - Trade Center
Colosseum
Exit
[28] - Game Link Cable
Wireless
Exit
[29] - Smoke Ball 800 coins
Miracle Seed 1,000 coins
Charcoal 1,000 coins
Mystic water 1,000 coins
Yellow flute 1,600 coins
No Thanks
[2A] - B1F
B2F
B4F
Exit
[2B] - Linked game play
Direct Corner
Union Room
Quit
[2C] - Two Island
Three Island
Exit
[2D] - One Island
Three Island
Exit
[2E] - One Island
Two Island
Exit
[2F] - Trade Center
Colosseum
Berry Crush
Exit
[30] - Nada
Nada
Exit
[31] - Pokemon Jump
Dodrio Berry-Picking
Exit
[32] - Trade Center
Colosseum
Exit
[33] - 2 Tinymushrooms
1 Big Mushroom
[34] - Trade Center
Colosseum
Berry Crush
Exit
[35] - Trade Center
Colosseum
Exit
[36] - Sevii Islands
Navel Rock
Exit
[37] - Sevii Islands
Birth Island
Exit
[38] - Sevii Islands
Navel Rock
Birth Island
Exit
[39] - One Island
Two Island
Three Island
Exit
[3A] - Vermilion
Two Island
Three Island
Exit
[3B] - Vermilion
One Island
Three Island
Exit
[3C] - Vermilion
One Island
Two Island
Exit
[3D] - Vermilion
Exit
[3E] - Blank
Blank
Exit
[3F] - Join Group
Become Leader
Exit
[40] - Single
Double
Knockout
Mixed
Exit


Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 01:53 PM   #17
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Hide/Show Map Objects

Do you need to make a NPC or other OW disappear?
Quote:
Originally Posted by Avara
hidesprite 0x[Map Object ID]
One line is all you need! The "Map Object ID" refers to what AdvanceMap calls the "Person Event Number", as seen here:

Remember to convert this to hex! So, if our OW sprite had a "Person Event Number" of 10, you'd want to use 0xA in your script, not 0x10. To make a previously hidden sprite visible, we'd use showsprite the same way:
Quote:
Originally Posted by Avara
showsprite 0x[Map Object ID]
Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 01:57 PM   #18
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Apply Movements

The applymovement command is what you'll need if you want to make an overworld sprite move in your script:
Quote:
Originally Posted by Avara
applymovement 0x[Map Object ID] @PointerToMovements
waitmovement 0x0
If you want to move the player and not a NPC, you'll have to use 0xFF as the Map Object ID. waitmovement, as you probably guessed, means the script will wait for the movements to be finished before continuing. Let's look at a more fleshed-out example:
Quote:
Originally Posted by Avara
#org @start
lock
faceplayer
msgbox @msg 0x6
applymovement 0x1 @movements
applymovement 0xFF @movements
waitmovement 0x0
release
end

#org @msg
= Let's walk three steps left!

#org @movements
#raw 0x0A
#raw 0x0A
#raw 0x0A
#raw 0xfe
Assuming our OW's "Person Event Number" in AdvanceMap is "1", we've used 0x1 as the first ID and 0xFF to make the player move along with them. Our pointer @movements contans the movement data. Where does #raw 0x0A come from? Basically, these are just identifiers for movement types. raw 0x0A is used to make the object step left in Emerald - these IDs differ between EM and FR, so make sure you don't get them mixed up! Another thing you shouldn't forget to do is add raw 0xFE at the end of your list of movements.

Movement IDs for Emerald
Spoiler:
#raw 0x00 = Face Down
#raw 0x01 = Face Up
#raw 0x02 = Face Left
#raw 0x03 = Face Right
#raw 0x04 = Step Down (Slow)
#raw 0x05 = Step Up (Slow)
#raw 0x06 = Step Left (Slow)
#raw 0x07 = Step Right (Slow)
#raw 0x08 = Step Down (Normal)
#raw 0x09 = Step Up (Normal)
#raw 0x0A = Step Left (Normal)
#raw 0x0B = Step Right (Normal)
#raw 0x0C = Jump2 Down
#raw 0x0D = Jump2 Up
#raw 0x0E = Jump2 Left
#raw 0x0F = Jump2 Right
#raw 0x10 = Delay1
#raw 0x11 = Delay2
#raw 0x12 = Delay3
#raw 0x13 = Delay4
#raw 0x14 = Delay5
#raw 0x15 = Step Down (Fast)
#raw 0x16 = Step Up (Fast)
#raw 0x17 = Step Left (Fast)
#raw 0x18 = Step Right (Fast)
#raw 0x19 = Step on the Spot Down (Slow)
#raw 0x1A = Step on the Spot Up (Slow)
#raw 0x1B = Step on the Spot Left (Slow)
#raw 0x1C = Step on the Spot Right (Slow)
#raw 0x1D = Step on the Spot Down (Normal)
#raw 0x1E = Step on the Spot Up (Normal)
#raw 0x1F = Step on the Spot Left (Normal)
#raw 0x20 = Step on the Spot Right (Normal)
#raw 0x21 = Step on the Spot Down (Faster)
#raw 0x22 = Step on the Spot Up (Faster)
#raw 0x23 = Step on the Spot Left (Faster)
#raw 0x24 = Step on the Spot Right (Faster)
#raw 0x25 = Step on the Spot Down (Fastest)
#raw 0x26 = Step on the Spot Up (Fastest)
#raw 0x27 = Step on the Spot Left (Fastest)
#raw 0x28 = Step on the Spot Right (Fastest)
#raw 0x29 = Slide Down
#raw 0x2A = Slide Up
#raw 0x2B = Slide Left
#raw 0x2C = Slide Right
#raw 0x2D = Slide Down
#raw 0x2E = Slide Up
#raw 0x2F = Slide Left
#raw 0x30 = Slide Right
#raw 0x31 = Slide Down
#raw 0x32 = Slide Up
#raw 0x33 = Slide Left
#raw 0x34 = Slide Right
#raw 0x35 = Slide Running Down
#raw 0x36 = Slide Running Up
#raw 0x37 = Slide Running Left
#raw 0x38 = Slide Running Right
#raw 0x3A = Jump Facing Left (Down)
#raw 0x3B = Jump Facing Down (Up)
#raw 0x3C = Jump Facing Up (Left)
#raw 0x3D = Jump Facing Left (Right)
#raw 0x3E = Face Player
#raw 0x3F = Face Against Player
#raw 0x40 = Lock Sprite Facing
#raw 0x41 = Release Sprite Facing
#raw 0x42 = Jump Down
#raw 0x43 = Jump Up
#raw 0x44 = Jump Left
#raw 0x45 = Jump Right
#raw 0x46 = Jump in Place (Facing Down)
#raw 0x47 = Jump in Place (Facing Up)
#raw 0x48 = Jump in Place (Facing Left)
#raw 0x49 = Jump in Place (Facing Right)
#raw 0x4A = Jump in Place (Facing Down/Up)
#raw 0x4B = Jump in Place (Facing Up/Down)
#raw 0x4C = Jump in Place (Facing Left/Right)
#raw 0x4D = Jump in Place (Facing Right/Left)
#raw 0x4E = Face Left
#raw 0x54 = Hide Sprite
#raw 0x55 = Show Sprite
#raw 0x56 = Exclamation Mark (!)
#raw 0x57 = Question Mark (?)
#raw 0x58 = Love (<3)
#raw 0x62 = Walk Down
#raw 0x63 = Walk Down
#raw 0x64 = Face Down (Delayed)
#raw 0x65 = Face Up (Delayed)
#raw 0x66 = Face Left (Delayed)
#raw 0x67 = Face Right (Delayed)
#raw 0x70 = Jump in Place (Facing Down)
#raw 0x71 = Jump in Place (Facing Up)
#raw 0x72 = Jump in Place (Facing Left)
#raw 0x73 = Jump in Place (Facing Right)
#raw 0x74 = Jump Down Running
#raw 0x75 = Jump Up Running
#raw 0x76 = Jump Left Running
#raw 0x77 = Jump Right Running
#raw 0x78 = Jump2 Down Running
#raw 0x79 = Jump2 Up Running
#raw 0x7A = Jump2 Left Running
#raw 0x7B = Jump2 Right Running
#raw 0x7C = Walk on the Spot (Down)
#raw 0x7D = Walk on the Spot (Up)
#raw 0x7E = Walk on the Spot (Left)
#raw 0x7F = Walk on the Spot (Right)
#raw 0x80 = Slide Down Running
#raw 0x81 = Slide Up Running
#raw 0x82 = Slide Left Running
#raw 0x83 = Slide Right Running
#raw 0x84 = Slide Down
#raw 0x85 = Slide Up
#raw 0x86 = Slide Left
#raw 0x87 = Slide Right
#raw 0x88 = Slide Down on Left Foot
#raw 0x89 = Slide Up on Left Foot
#raw 0x8A = Slide Left on Left Foot
#raw 0x8B = Slide Right on Left Foot
#raw 0x8C = Slide Left diagonally (Facing Up)
#raw 0x8D = Slide Right diagonally (Facing Up)
#raw 0x8E = Slide Left diagonally (Facing Down)
#raw 0x8F = Slide Right diagonally (Facing Down)
#raw 0x90 = Slide2 Left diagonally (Facing Up)
#raw 0x91 = Slide2 Right diagonally (Facing Up)
#raw 0x92 = Slide2 Left diagonally (Facing Down)
#raw 0x93 = Slide2 Right diagonally (Facing Down)
#raw 0x96 = Walk Left
#raw 0x97 = Walk Right
#raw 0x98 = Levitate
#raw 0x99 = Stop Levitating
#raw 0x9C = Fly Up Vertically
#raw 0x9D = Land
#raw 0xFE = End of Movements


Movement IDs for FireRed
Spoiler:
#raw 0x0 = Face Down
#raw 0x1 = Face Up
#raw 0x2 = Face Left
#raw 0x3 = Face Right
#raw 0x4 = Face Down (Faster)
#raw 0x5 = Face Up (Faster)
#raw 0x6 = Face Left (Faster)
#raw 0x7 = Face Right (Faster)
#raw 0x8 = Step Down (Very Slow)
#raw 0x9 = Step Up (Very Slow)
#raw 0xA = Step Left (Very Slow)
#raw 0xB = Step Right (Very Slow)
#raw 0xC = Step Down (Slow)
#raw 0xD = Step Up (Slow)
#raw 0xE = Step Left (Slow)
#raw 0xF = Step Right (Slow)
#raw 0x10 = Step Down (Normal)
#raw 0x11 = Step Up (Normal)
#raw 0x12 = Step Left (Normal)
#raw 0x13 = Step Right (Normal)
#raw 0x14 = Jump2 Down
#raw 0x15 = Jump2 Up
#raw 0x16 = Jump2 Left
#raw 0x17 = Jump2 Right
#raw 0x18 = Delay1
#raw 0x19 = Delay2
#raw 0x1A = Delay3
#raw 0x1B = Delay4
#raw 0x1C = Delay5
#raw 0x1D = Step Down (Fast)
#raw 0x1E = Step Up (Fast)
#raw 0x1F = Step Left (Fast)
#raw 0x20 = Step Right (Fast)
#raw 0x21 = Step on the Spot Down (Normal)
#raw 0x22 = Step on the Spot Up (Normal)
#raw 0x23 = Step on the Spot Left (Normal)
#raw 0x24 = Step on the Spot Right (Normal)
#raw 0x25 = Step on the Spot Down (Faster)
#raw 0x26 = Step on the Spot Up (Faster)
#raw 0x27 = Step on the Spot Left (Faster)
#raw 0x28 = Step on the Spot Right (Faster)
#raw 0x29 = Step on the Spot Down (Fastest)
#raw 0x2A = Step on the Spot Up (Fastest)
#raw 0x2B = Step on the Spot Left (Fastest)
#raw 0x2C = Step on the Spot Right (Fastest)
#raw 0x2D = Face Down (Delayed)
#raw 0x2E = Face Up (Delayed)
#raw 0x2F = Face Left (Delayed)
#raw 0x30 = Face Right (Delayed)
#raw 0x31 = Slide Down (Slow)
#raw 0x32 = Slide Up (Slow)
#raw 0x33 = Slide Left (Slow)
#raw 0x34 = Slide Right (Slow)
#raw 0x35 = Slide Down (Normal)
#raw 0x36 = Slide Up (Normal)
#raw 0x37 = Slide Left (Normal)
#raw 0x38 = Slide Right (Normal)
#raw 0x39 = Slide Down (Fast)
#raw 0x3A = Slide Up (Fast)
#raw 0x3B = Slide Left (Fast)
#raw 0x3C = Slide Right (Fast)
#raw 0x3D = Slide Running on Right Foot (Down)
#raw 0x3E = Slide Running on Right Foot (Up)
#raw 0x3F = Slide Running on Right Foot (Left)
#raw 0x40 = Slide Running on Right Foot (Right)
#raw 0x41 = Slide Running on Left Foot (Down)
#raw 0x42 = Slide Running on Left Foot (Up)
#raw 0x43 = Slide Running on Left Foot (Left)
#raw 0x44 = Slide Running on Left Foot (Right)
#raw 0x46 = Jump Facing Left (Down)
#raw 0x47 = Jump Facing Down (Up)
#raw 0x48 = Jump Facing Up (Left)
#raw 0x49 = Jump Facing Left (Right)
#raw 0x4A = Face Player
#raw 0x4B = Face Against Player
#raw 0x4C = Lock Sprite Facing
#raw 0x4D = Release Sprite Facing
#raw 0x4E = Jump Down
#raw 0x4F = Jump Up
#raw 0x50 = Jump Left
#raw 0x51 = Jump Right
#raw 0x52 = Jump in Place (Facing Down)
#raw 0x53 = Jump in Place (Facing Up)
#raw 0x54 = Jump in Place (Facing Left)
#raw 0x55 = Jump in Place (Facing Right)
#raw 0x56 = Jump in Place (Facing Down/Up)
#raw 0x57 = Jump in Place (Facing Up/Down)
#raw 0x58 = Jump in Place (Facing Left/Right)
#raw 0x59 = Jump in Place (Facing Right/Left)
#raw 0x60 = Hide Sprite
#raw 0x61 = Show Sprite
#raw 0x62 = Exclamation Mark (!)
#raw 0x63 = Question Mark (?)
#raw 0x64 = Cross (X)
#raw 0x65 = Double Exclamation Mark (!!)
#raw 0x66 = Happy (^_^)
#raw 0xFE = End of Movements


Another thing you might like to know about while we're on the subject of movements is how to move the camera. This is an example for Emerald:
Quote:
Originally Posted by Avara
#org @start
lock
faceplayer
special 0x116
applymovement 0x7F @move1up
waitmovement 0x0
msgbox @msg 0x6
applymovement 0x7F @move1down
waitmovement 0x0
special 0x117
release
end

#org @msg
= I'll move the camera!

#org @move1up
#raw 0x09
#raw 0xfe

#org @move1down
#raw 0x08
#raw 0xfe
Using 0x7F defines that we want the camera to move.
[EM] special 0x116 "unlocks" the camera (for lack of a better word) allowing it to move and special 0x117 "locks" it back in place.
[FR] In FireRed, the equivalent of these are special 0x113 and special 0x114 respectively.

That's about it for applymovement!

Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 02:00 PM   #19
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Opening & Closing Doors

Kind of a short section, but if you need a script that involves having the player/NPCs enter/exit a building or something, you'll need to know how to do this.
Quote:
Originally Posted by Avara
setdooropened 0x[X Co-ordinate of Door Tile] 0x[Y Co-ordinate of Door Tile]
doorchange
The first line is where we specify that we want the door to open, and which door on the map it is. This is followed by doorchange, which activates the door's animation. The X/Y co-ordinates refer to the position of your door in your map. You'll need to make sure this is a proper door tile (has the appropriate animation when interacted with). To close doors again, it's pretty similar:
Quote:
Originally Posted by Avara
setdoorclosed 0x[X Co-ordinate of Door Tile] 0x[Y Co-ordinate of Door Tile]
doorchange
Let's have an example script, and go over some points from earlier! For starters, I've just put the Professor's OW outside his lab, so that he's blocking the doorway.
All we want to do here is make him go inside, so we'd have this:
Quote:
Originally Posted by Avara
#org @main
lock
faceplayer
msgbox @msg 0x6
applymovement 0x1 @faceup
waitmovement 0x0
setdooropened 0x07 0x10
doorchange
sound 0x8
applymovement 0x1 @stepup
waitmovement 0x0
hidesprite 0x1
setflag 0x250
setdoorclosed 0x07 0x10
doorchange
release
end

#org @msg
= Please, come in!

#org @faceup
#raw 0x01
#raw 0xfe

#org @stepup
#raw 0x09
#raw 0xfe
We've made him face the door before it opens (because if he didn't that would look very weird) and then he walks through the open door. Next, we've used hidesprite to hide the OW, and set a flag to make sure that it doesn't reappear as soon as the script ends.


Avara is offline   Reply With Quote
Likes Lunos liked this post
Old 2nd March 2018, 02:02 PM   #20
Avara
Mirage Of Tales Creator
 
Join Date: Nov 2013
Posts: 33
Avara
Default

Weather

Manipulating weather in the overworld is easy; all you need are these two lines in your script:
Quote:
Originally Posted by Avara
setweather 0x[Weather]
doweather
We use setweather to define the weather type we'd like and doweather to activate it. For example, here's the kind of script we'd need to make it start raining:
Quote:
Originally Posted by Avara
#org @start
lock
faceplayer
msgbox @msg1 0x6
setweather 0x3
doweather
msgbox @msg2 0x6
release
end

#org @msg1
= What a lovely day!

#org @msg2
= Oh[.] I spoke too soon.
The following spoiler contains a list of weather types, accompanied by gifs that show how they look in-game:
Spoiler:

0x0 - Indoors (None)

0x1 - Clouds in Water Reflection (can look strange)

0x2 - Regular Weather

0x3 - Raining

0x4 - Light Snow

0x5 - Storm (occasional lightning)

0x6 - Steady Mist

0x7 - Volcanic Ash

0x8 - Sandstorm

0x9 - Thick Fog

0xA - Light Mist

0xB - Overcast

0xC - Strong Sun [EM]

0xD - Heavy Thunderstorm

0xE - Underwater Mist

0xF - Alternating Strong Sun/Heavy Storm [EM]


Avara is offline   Reply With Quote
Likes Lunos liked this post
Reply

Tags
scripting, tutorial, xse, [Document], [Tutorial]

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:21 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, vBulletin Solutions, Inc. User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Feedback Buttons provided by Advanced Post Thanks / Like (Lite) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Pokémon characters and images belong to Pokémon USA, Inc. and Nintendo.
Pokémon Hackers Online (PHO) is in no way affiliated with or endorsed by Nintendo LLC, Creatures, GAMEFREAK inc,
The Pokémon Company, Pokémon USA, Inc., The Pokémon Company International, or Wizards of the Coast.
All forum/site content (unless noted otherwise) and site designs are © 2006-2013 Pokémon Hackers Online (PHO).
Green Charizard Christos TreeckoLv100

"Black 2" by ARTPOP. Kyurem artwork by XOUS.

no new posts