PHO - Pokémon Hackers Online
Go Back   PHO - Pokémon Hackers Online > Discussion Board > Archive


Archive Old threads that serve no purpose are here.

Thread Tools Display Modes
Old 26th July 2014, 05:45 AM   #1
Dark Sneasel
Join Date: Oct 2013
Location: Miami, FL
Age: 19
Posts: 42
Dark Sneasel
Default Pokemon Emerald Specials

As the thread title says, this thread is about the Emerald specials. The Emerald specials are much less documented than the ones in Fire Red so the purpose of this thread is to get more information on them.

Originally Posted by Shiny Quagsire View Post
I think the best way to go about some of these commands would be direct reverse engineering. Also, it should be noted that using special_2 some specials can return a value to a specified variable, which is also important to be documented. As such, here's some of my small contributions:

The special table in Emerald is 0x20E entries long, with each function being located in the table at 081DBA64.
If these offsets could be futher confirmed as to what they do, either by means of looking at every used special thus far or further research, that would be nice.
Here is a few lists of specials:

Originally Posted by Le pug View Post
0x12E - not sure, but clicking once will do a sound warp to blackness but if you continuously click on the script it'll warp you to map 0.0 in the center location (X,Y)
0x8 - takes you to a secret base with a guy in it. Can warp back to original position.
0x9 - warps you to warp 0 on map 0.0
0xA - same as 0x9
0xD - deletes everything on your computer. Nah, jk. Idk what it does
0xE - brings up menu "Decorate, Put Away, Toss, Cancel"
0xF - message "There is no registry" then brings up menu "Decorate, Pack Up, Cancel"
0x18 - teleports you to X1, Y3 of the current map
0x1A - PC shut off sound and tile is set to something else
0x1B - "Please Wait ... ... B Button: Cancel Mixing Records..." followed by twinkling sound and the Mixing Records textbox doesn't go away. Kind of cool though cus you walk around with the message box up and if you go to a new location, it moves up and down with the sign in the top left corner telling you where you are.
0x1D - locks player in place (aka lock command)
0x1E - unlocks player in place (aka release command)
0x21 - "Please Wait ... ... B Button: Cancel" then battle with a level 4 Poochyena ... maybe saving the professor? Anyways, it'll save your progress then give you a communication error. epic troll special.
0x22 - "Please Wait ... ... B Button: Cancel" then message pops up after fade out saying "Communication standby ... please wait" then communication error
0x24 - brings up player info and Would you like to save? message. without a lock in your script, you can walk around with the message up.
0x27 - voodoo ritual where clones of you appear in a circle staring at each other.. usually one of them has a palette error
0x29 - deletes all pokemon in party unless its storing it to be retrieved by some variable or special
0x30 - turns all hidden sprites into soil sprite (sprite #60)
0x3A - same as #raw 0x56 aka it pops up a ! emote box above the player's head
Originally Posted by Dark Sneasel
0x3- warp from where you came from
0x8- want to make your secret base here?
0x9- Petalburg Pokemon center, door opens
0xE- Secret base stuff, decorate, put away, etc
0xF- there is no registry
0x18-warps you
0x1B-mixing records
0x21-Results are different. This was one of them: and after the battle you save the game.
0x24-Save game box. Stays in the screen unless waitstate is used.
0x2A-Choose pokemon for something.
0x2B-Screen goes black, music gets very corrupted.
0x2F-Choose from the berry section of the bag.
0x3A-! over player and faces down
0x3B-A battle theme seems to start playing.
0x3E-Battle last battled pokemon/trainer.
0x3F-Withdraw Pokemon, deposit, etc.
0x5F-Music seems to get corrupted.
0x60-Save, glitchy if no save state
0x61-Sprite changes to the berry watering one. Doesn't work without waitstate.
0x62-Trainer profile
0x63-Seems to say what you last said in the trainer profile. Doesn't work without waitstate.
0x6A-Weird noise, and says "SHAKE IT DO THE DIET DANCE"
0x6F-Tells me the story of a trainer with a glitchy name.
0x74-Shows me a list of decorations.
0x78-A bunch of secret base choices and how many you have.
0x8D-Screen goes black
0x90-Says "Badges"
0x9D-Cable car.
0x9D-Set the clock
0x9E-See the clock
0x9F-Starter choosing bag scene.
0xA0-Wally scene
0xA2-Choose pokemon for something
0xA4-Berry blender
0xA5-Tells me I don't have enough coins, shows coins.
0xB2-The Gabby and Ty TV stuff.
0xBF-Choose a pokemon, then get the choices summary, and store.
0xC5-Egg hatch of the first Pokemon in your party. If it's not an egg it hatches anyways and it becomes level 5 and if it is, it actually hatches.
0xCB-After a few secs it puts you in front of player's house
0xD3-Opens this
0xD8-Tells me to go to grassy areas and look more carefully. Most likely from the Birch script.
0xD9-PC animation
0xDA-Animation reverses?
0xDE-Choose pokemon, shows NOT ABLE for mine
0xDF-Show's your first pokemon's moves screen
0xE3-Move relearner
0xF1-battle factory switching
0xEF-battle tent battle with "School Kid KEITH" after testing with Shiny Quagsire, it was discovered that you must put a var before it. Here is what happens with the vars/
setvar 0x8004 0x?
special 0xEF
0x0 normal
0x1 last trainer you battled, flees when you're gonna lose
0x2 freezes game
0x3 he seems to have a fainted team
0x4 the battle facililty with the old guy
0x5 battle arena
0x8 steven battle
0x9 double battle, he flees when you're about to lose

0xF4-Silences the music
0xF8-Choosing pokemon screen, however you can't choose any
0xFB-Deletes party
0xFC-Player's computer
0xFD-Very glitchy PC
0xFE-Show's region map
0x101-Trade, trades with last pokemon you saw, can be fainted though
0x106-Berry blender maximum speed records
0x109-someone's PC, player's PC, log off
0x10A-hall of fame, corrupted if you haven't beaten E4
0x10B-Diploma for completing pokedex
0x112-takes you to boot screen, probably from battle frontier saving and quiting
0x114-little earthquake, messes up a few tiles
0x116-camera doesn't follow
0x117-makes camera follow player
0x11C-screen goes red, starts shaking
0x12E-same as 0x3
0x133-big earthquake
0x134-now in floor
0x139-wild battle with last seen pokemon
0x13A-same but cool kyogre thing before battling
0x13b-same but diff. image
0x13d-small earthquake
0x13f- (it's supposed to be once, I spammed)
0x141-player falls from roof to entrance of mao
0x142-showpokepic with (?) pokemon doing an animation
0x145-battle with last pokemon you've seen
0x174-opens bag
0x17C-answer the lady's quiz
0x184-opens bag
0x186-make a quiz
0x190-pressing start you can see the player's name is all nonsense now
0x191-opens pokeblock case
0x196-messes up a bunch of tiles
0x199-shows town name like it would when you walk into it
0x19A-same as^
0x19B-a little bit of dust comes from the ceiling during a short earthquake
0x19D-player moves down a few pixels. can be used more than once and the effects stack until warp
0x1A0-1A2-communication error
0x1A3-Wireless communication status, shows how many people are battling, trading and in the union room
0x1A7-choose something, but none of my pokemon can participate
0x1AD-Pokemon Jump records
0x1B0-moves the screen a little bit to the right
0x1B8-"Battle Tower Single" and a huge box cover most of the screen
0x1BE-shows a very small box that says "exit" at the tip of the screen
0x1C2-opens battle pyramid bag
0x1C4-pokemon choosing screen, say's DON'T HAVE for my pokemon, and once you give them an item it says the item's name
0x1C7-shows BP
0x1CD-shows a small box in the screen with nothing in it
0x1CF-makes a box that says "Powder" and "0" in the screen. probably for the thing near Fallarbor town
0x1D6-Groudon and Kyogre fighting
0x1D7-opens Pokenav
0x1D8-opens menu like the scientist did to make sure you call Mr.Stone
0x1DD-teach mega punch, choose pokemon to learn
0x1E4-a shaking mirrage tower follows you
0x1E5-fossil falls
0x1E6-nickname pokemon, but it shows a yellow bulbasaur in the icon
0x1F4-multichoice: Slateport City and exit
0x1F7-Really tall grass appears
0x1FC-Same as 0x1D6
0x1FE-screen does this
0x1FF-berry crush pressing speed rankings
0x201-tell the girl that can't laugh's dad the words
0x20F-takes you to boot screen
0x210-same as ^
0x211-player can't move
0x212-same as ^
0x213-0x214-same as ^
0x215-same as 0x20F
Originally Posted by sonic1 View Post
Hey, for emerald i have something too:
28 - Saves pokemon party into RAM. Used for situations of switching parties (battle frontier)
29 - Restores that party
2A - Lets you choose 3 pokemons and puts their party slot in 0x203CEF8
3B - Plays trainer encounter music (not the battle one) according to the 8015 (trainer number) VAR. Used in the game internal script of trainer spotting.
91 - Map Refresh. Used in setmaptiles. Similar to FireRed 0x8E.
AE - WildBattle using Tree wild Data.
F4 - Stops any music from playing.
FE - Shows worldmap.
1F3 - Sets National Dex
Originally Posted by Shiny Quagsire View Post
Just based on some initial decompiling, here's a list of specials that are confirmed to do absolutely nothing:
  • 0x23 Nothing (bx lr)
  • 0x4E - Puts byte 0x0 at 0203A030
  • 0x5A - Takes a halfword from 020375E4, doubles it, and adds it to the ram location 02039F00, then takes a halfword from the resulting RAM location and stores it at 020375DE
  • 0x65 - Loads a dword from 03005D8C (seems to be a saveblock), adds 0x2e51, then loads a byte from the resulting location and stores it to LASTRESULT.
  • 0x67 - Also loads more stuff from one of the saveblocks
  • 0x68 - More stuff from same saveblock
  • 0x75 - More stuff from same saveblock
  • 0x84 - More stuff from same saveblock, although this one seems to do a bit more with the data it's reading.
  • 0x92 - Stores value from saveblock at 020375DE
  • 0xA6 - Saveblock stuffs
  • 0xB3 - Saveblock stuff, returns only with special 2
  • 0xB7 - Loads byte at 0202433A and stores it to variable specified in special 2
  • 0xE5 - Something with vblank callback
  • 0xF4 - RAM stuffs
  • 0x115 - Absolutely nothing (bx lr)
  • 0x11B Nothing (bx lr)
  • 0x14B - Nothing (bx lr)
  • 0x157 - Stuff with trainer data
  • 0x173 - Stuff with that one saveblock
  • 0x17B - Stuff with that one saveblock
  • 0x17f - Ditto
  • 0x180 - Ditto
  • 0x182 - Ditto
  • 0x183 - Ditto
  • 0x18A - Ditto
  • 0x192-0x194 - Ditto
  • 0x1B4 - Loads byte from 030030FC and stores it to specified variable in special 2
  • 0x1BC - Stores 0x0 at 02039F2A
  • 0x1CC - Loads stuff from trainer saveblock to special 2 variable
  • 0x1F0 - Does stuff with trainer block data. Lots of or'ing.

NOTE: Gonna make all of that one list soon.
Dark Sneasel is offline  
Sponsored Links

emerald, pokemon, specials

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 07:38 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc. User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2019 DragonByte Technologies Ltd.
Feedback Buttons provided by Advanced Post Thanks / Like (Lite) - vBulletin Mods & Addons Copyright © 2019 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