The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > Creative Discussions > Emulation & ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read


Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
New threads in this forum are to be approved by a moderator before they are displayed. The thread revival limit does not apply here.

Thread Tools
Old October 13th, 2012, 05:37 AM
Agastya's Avatar
Join Date: Feb 2010
Nature: Quiet
I've previously posted things involving Em's Frontier in the Quick Research thread, but it's been ages ago and they're buried under a bunch of posts. For quick reference the posts are here: (Not my work, but a great reference) (another great reference)

Anyway, since I've made these posts, I've cleaned up my notes into a simpler format. Since most everything related to the Pokemon it uses is known now, I figured it'd be best to get all of my notes in one publicly viewable place that actually has traffic in the hopes somebody else will be able to make use of them.

Battle Frontier, Slateport, Verdanturf, Fallarbor modules
Battle Frontier: 0x5D97BC
Verdanturf Tent: 0x5DEC28
Slateport Tent: 0x5DE02C
Fallarbor Tent: 0x5DF69C

These follow a twelve byte data structure.

Species: 2 bytes
Movepool: 8 bytes (two per move)
Hold item: 1 byte (Determined by a master list located at 0x05CECB0)
EV spread: 1 byte
Nature: 1 byte
Padding/alignment: 1 byte

EV spreads are assigned by a bitfield to save space. Each stat with
EVs assigned to it will have the 510 EVs divided evenly among them.

HP: 0x1
ATK: 0x2
DEF: 0x4
SPD: 0x8
SATK: 0x10
SDEF: 0x20

Battle Pyramid wilds
Lv. 50: 0x6126B0
Open Level: 0x612E80

The Battle Pyramid wilds follow a 12 byte data structure.

Species: 2 bytes
Levels: 1 byte
Unknown: 1 byte
Movepool: 8 bytes

In Level 50, the level byte is the Pokemon's base level when spawning.
In Open Level, the level byte appears to be how many levels below the
player they spawn at base. In both cases, the wilds have a few levels
in variance.

Frontier Brains
Offset: 0x61156C

Frontier Brain Pokemon are stored in a 20 byte data structure.

Species: 2 bytes
Item: 2 bytes
IVs: 1 byte
Nature: 1 byte
HP EVs: 1 byte
Atk EVs: 1 byte
Def EVs: 1 byte
Spd EVs: 1 byte
Sp.Atk EVs: 1 byte
Sp.Def EVs: 1 byte
Moveset: 8 bytes

The item can be anything the hacker desires, following normal item
indexing instead of Frontier indexing.

All IVs are set to whatever the IV value is. Stick with a max of 31, I
haven't personally tried going higher.

EVs can go above 510 total. You can give something 255 EVs in every
stat and they all will be applied, but the game will lag a little bit
calculating the stats.

Each Brain's team is 120 bytes long. The first three entries are used
in their Silver symbol challenge, and the second three are for Gold.
Factory Head Noland's team data is two copis of Steven's team data at
the Mossdeep event since his team is randomly generated from the
master list as rental Pokemon.

Battle Pike wilds
Spawn Table: 0x553934
Lv50 wild movesets: 0x6121D4
Open Level wild movesets: 0x612274

The Battle Pike wilds follow a 12 byte data structure.

Species: 2 bytes
"Level variance": 1 byte
Unknown (Padding?): 1 byte
Movepool: 8 bytes

The species byte itself does nothing but help categorize. Wilds have
to be edited in the wild encounter table itself. Each slot in the
moveset data is set to read a certain moveset, and the spawns are
shared between Level 50 and Open Level challenges.

The "level variance" field appears to be how many levels they spawn
below the player at base.

This is the main meat of the Frontier, anyway. There are other things that are worth looking into if you're planning on hacking the Frontier, and for the most part they're already indexed on the Bulbapedia page for Frontier structures.

After a while though, I got sick of doing everything in a hex editor. I came across the Nightmare Table Editor and realized that since Frontier stuff is all in tables, it could be used to make this easier so I made a few Nightmare modules to assist in doing so.

Nightmare is located here: (apparently dead)
Nightmare 2 is located here: (no idea how well this will work)
And the modules are here:

Hopefully, somebody with better knowledge will be able to use these to make an actual proper tool for Frontier editing. I think it was planned to be a part of PGE, but for now it's not implemented so these have to do for the time being.

Last edited by Agastya; August 4th, 2013 at 09:00 AM. Reason: nightmare 1 died, adding a link to nightmare 2
Reply With Quote
Old October 20th, 2012, 10:22 AM
Gamer2020's Avatar
This love is a sickness...
Join Date: Jun 2008
Location: Violet city!
Gender: Male
Nature: Bold
Send a message via AIM to Gamer2020 Send a message via Windows Live Messenger to Gamer2020 Send a message via Yahoo to Gamer2020 Send a message via Skype™ to Gamer2020
Yes this will be part of PGE I've just been very busy. This research will certainly help when I get around to working on it. Good job.
I find it amusing how people my steal ideas and then claim to be the first one to do something.

A present to people learning to make ROM hacking tools. -
Reply With Quote
Old July 2nd, 2013, 05:53 PM
Join Date: Apr 2013
Gender: Female
Is there any way to change the banned pokemon in the battle frontier?
Reply With Quote
Old July 7th, 2013, 03:58 PM
Agastya's Avatar
Join Date: Feb 2010
Nature: Quiet
yes but i unfortunately forgot where the offsets are

somebody else posted about them in the quick research thread, it'll be buried in there pagewise somewhere around where my first frontier post was
Reply With Quote
Old July 31st, 2013, 07:52 PM
PokeRaidenFighter350Z's Avatar
Battle Subway Editor
Join Date: Dec 2011
Location: RF HQ
Gender: Male
Nature: Careful
The Nightmare Table link is dead

All forum members BEWARE..!
Credits to Xulek
Reply With Quote
Old August 4th, 2013, 08:59 AM
Agastya's Avatar
Join Date: Feb 2010
Nature: Quiet

well, there's nightmare 2 on but i have no experience with it

it also may not work happily since it's raw java

i'd rehost nightmare 1 but i'm not sure if i have clearance to do so
Reply With Quote
Quick Reply

Sponsored Links

Thread Tools

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
Minimum Characters Per Post: 25

All times are UTC -8. The time now is 11:56 AM.

Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™,
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / Poké
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.