summaryrefslogtreecommitdiff
path: root/data/pokemon
diff options
context:
space:
mode:
Diffstat (limited to 'data/pokemon')
-rw-r--r--data/pokemon/base_stats.asm33
-rw-r--r--data/pokemon/dex_entries.asm2
-rw-r--r--data/pokemon/egg_moves.asm216
-rw-r--r--data/pokemon/evos_attacks.asm2
-rw-r--r--data/pokemon/ezchat_order.asm96
-rw-r--r--data/pokemon/palettes.asm8
-rw-r--r--data/pokemon/pic_pointers.asm2
-rw-r--r--data/pokemon/rby_base_special.asm155
-rw-r--r--data/pokemon/rby_order.asm255
9 files changed, 653 insertions, 116 deletions
diff --git a/data/pokemon/base_stats.asm b/data/pokemon/base_stats.asm
index 8a6435a40..27f9174e5 100644
--- a/data/pokemon/base_stats.asm
+++ b/data/pokemon/base_stats.asm
@@ -1,3 +1,36 @@
+tmhm: MACRO
+; used in data/pokemon/base_stats/*.asm
+tms1 = 0 ; TM01-TM24 (24)
+tms2 = 0 ; TM25-TM48 (24)
+tms3 = 0 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/24)
+rept _NARG
+ if DEF(\1_TMNUM)
+ if \1_TMNUM < 24 + 1
+tms1 = tms1 | (1 << ((\1_TMNUM) - 1))
+ elif \1_TMNUM < 48 + 1
+tms2 = tms2 | (1 << ((\1_TMNUM) - 1 - 24))
+ else
+tms3 = tms3 | (1 << ((\1_TMNUM) - 1 - 48))
+ endc
+ else
+ fail "\1 is not a TM, HM, or move tutor move"
+ endc
+ shift
+endr
+rept 3 ; TM01-TM24 (24/24)
+ db tms1 & $ff
+tms1 = tms1 >> 8
+endr
+rept 3 ; TM25-TM48 (24/24)
+ db tms2 & $ff
+tms2 = tms2 >> 8
+endr
+rept 2 ; TM49-TM50 + HM01-HM07 + MT01-MT03 (12/16)
+ db tms3 & $ff
+tms3 = tms3 >> 8
+endr
+ENDM
+
BaseData::
INCLUDE "data/pokemon/base_stats/bulbasaur.asm"
INCLUDE "data/pokemon/base_stats/ivysaur.asm"
diff --git a/data/pokemon/dex_entries.asm b/data/pokemon/dex_entries.asm
index 92b9c6b06..7381a4262 100644
--- a/data/pokemon/dex_entries.asm
+++ b/data/pokemon/dex_entries.asm
@@ -1,4 +1,4 @@
-INCLUDE "includes.asm"
+INCLUDE "constants.asm"
SECTION "Pokedex Entries 001-064", ROMX
diff --git a/data/pokemon/egg_moves.asm b/data/pokemon/egg_moves.asm
index 52d244c39..886c47349 100644
--- a/data/pokemon/egg_moves.asm
+++ b/data/pokemon/egg_moves.asm
@@ -1,4 +1,4 @@
-INCLUDE "includes.asm"
+INCLUDE "constants.asm"
SECTION "Egg Moves", ROMX
@@ -26,7 +26,7 @@ if !_CRYSTAL
endc
db RAZOR_WIND
db PETAL_DANCE
- db $ff
+ db -1 ; end
CharmanderEggMoves:
db BELLY_DRUM
@@ -35,7 +35,7 @@ CharmanderEggMoves:
db BITE
db OUTRAGE
db BEAT_UP
- db $ff
+ db -1 ; end
SquirtleEggMoves:
db MIRROR_COAT
@@ -44,7 +44,7 @@ SquirtleEggMoves:
db CONFUSION
db FORESIGHT
db FLAIL
- db $ff
+ db -1 ; end
PidgeyEggMoves:
db PURSUIT
@@ -53,7 +53,7 @@ PidgeyEggMoves:
if !_CRYSTAL
db STEEL_WING
endc
- db $ff
+ db -1 ; end
RattataEggMoves:
db SCREECH
@@ -62,7 +62,7 @@ RattataEggMoves:
db BITE
db COUNTER
db REVERSAL
- db $ff
+ db -1 ; end
SpearowEggMoves:
db FAINT_ATTACK
@@ -70,7 +70,7 @@ SpearowEggMoves:
db SCARY_FACE
db QUICK_ATTACK
db TRI_ATTACK
- db $ff
+ db -1 ; end
EkansEggMoves:
db PURSUIT
@@ -80,7 +80,7 @@ EkansEggMoves:
if _CRYSTAL
db CRUNCH
endc
- db $ff
+ db -1 ; end
SandshrewEggMoves:
db FLAIL
@@ -90,7 +90,7 @@ SandshrewEggMoves:
if _CRYSTAL
db METAL_CLAW
endc
- db $ff
+ db -1 ; end
NidoranFEggMoves:
db SUPERSONIC
@@ -100,7 +100,7 @@ NidoranFEggMoves:
db CHARM
db COUNTER
db BEAT_UP
- db $ff
+ db -1 ; end
NidoranMEggMoves:
db SUPERSONIC
@@ -110,7 +110,7 @@ NidoranMEggMoves:
db AMNESIA
db COUNTER
db BEAT_UP
- db $ff
+ db -1 ; end
VulpixEggMoves:
db FAINT_ATTACK
@@ -118,7 +118,7 @@ VulpixEggMoves:
db FLAIL
db SPITE
db DISABLE
- db $ff
+ db -1 ; end
ZubatEggMoves:
db QUICK_ATTACK
@@ -126,7 +126,7 @@ ZubatEggMoves:
db FAINT_ATTACK
db GUST
db WHIRLWIND
- db $ff
+ db -1 ; end
OddishEggMoves:
db SWORDS_DANCE
@@ -136,7 +136,7 @@ OddishEggMoves:
if !_CRYSTAL
db CHARM
endc
- db $ff
+ db -1 ; end
ParasEggMoves:
db FALSE_SWIPE
@@ -149,13 +149,13 @@ if !_CRYSTAL
endc
db LIGHT_SCREEN
db PURSUIT
- db $ff
+ db -1 ; end
VenonatEggMoves:
db BATON_PASS
db SCREECH
db GIGA_DRAIN
- db $ff
+ db -1 ; end
DiglettEggMoves:
db FAINT_ATTACK
@@ -163,14 +163,14 @@ DiglettEggMoves:
db ANCIENTPOWER
db PURSUIT
db BEAT_UP
- db $ff
+ db -1 ; end
MeowthEggMoves:
db SPITE
db CHARM
db HYPNOSIS
db AMNESIA
- db $ff
+ db -1 ; end
PsyduckEggMoves:
db ICE_BEAM
@@ -183,7 +183,7 @@ PsyduckEggMoves:
if _CRYSTAL
db CROSS_CHOP
endc
- db $ff
+ db -1 ; end
MankeyEggMoves:
db ROCK_SLIDE
@@ -192,7 +192,7 @@ MankeyEggMoves:
db COUNTER
db REVERSAL
db BEAT_UP
- db $ff
+ db -1 ; end
GrowlitheEggMoves:
db BODY_SLAM
@@ -200,7 +200,7 @@ GrowlitheEggMoves:
db CRUNCH
db THRASH
db FIRE_SPIN
- db $ff
+ db -1 ; end
PoliwagEggMoves:
db MIST
@@ -208,20 +208,20 @@ PoliwagEggMoves:
db BUBBLEBEAM
db HAZE
db MIND_READER
- db $ff
+ db -1 ; end
AbraEggMoves:
db LIGHT_SCREEN
db ENCORE
db BARRIER
- db $ff
+ db -1 ; end
MachopEggMoves:
db LIGHT_SCREEN
db MEDITATE
db ROLLING_KICK
db ENCORE
- db $ff
+ db -1 ; end
BellsproutEggMoves:
db SWORDS_DANCE
@@ -229,7 +229,7 @@ BellsproutEggMoves:
db REFLECT
db SYNTHESIS
db LEECH_LIFE
- db $ff
+ db -1 ; end
TentacoolEggMoves:
db AURORA_BEAM
@@ -237,12 +237,12 @@ TentacoolEggMoves:
db RAPID_SPIN
db HAZE
db SAFEGUARD
- db $ff
+ db -1 ; end
GeodudeEggMoves:
db MEGA_PUNCH
db ROCK_SLIDE
- db $ff
+ db -1 ; end
PonytaEggMoves:
db FLAME_WHEEL
@@ -251,14 +251,14 @@ PonytaEggMoves:
db HYPNOSIS
db CHARM
db QUICK_ATTACK
- db $ff
+ db -1 ; end
SlowpokeEggMoves:
db SAFEGUARD
db BELLY_DRUM
db FUTURE_SIGHT
db STOMP
- db $ff
+ db -1 ; end
FarfetchDEggMoves:
if !_CRYSTAL
@@ -269,7 +269,7 @@ endc
db GUST
db QUICK_ATTACK
db FLAIL
- db $ff
+ db -1 ; end
DoduoEggMoves:
db QUICK_ATTACK
@@ -277,7 +277,7 @@ DoduoEggMoves:
db HAZE
db FAINT_ATTACK
db FLAIL
- db $ff
+ db -1 ; end
SeelEggMoves:
db LICK
@@ -286,13 +286,13 @@ SeelEggMoves:
db PECK
db SLAM
db ENCORE
- db $ff
+ db -1 ; end
GrimerEggMoves:
db HAZE
db MEAN_LOOK
db LICK
- db $ff
+ db -1 ; end
ShellderEggMoves:
db BUBBLEBEAM
@@ -300,23 +300,23 @@ ShellderEggMoves:
db BARRIER
db RAPID_SPIN
db SCREECH
- db $ff
+ db -1 ; end
GastlyEggMoves:
db PSYWAVE
db PERISH_SONG
db HAZE
- db $ff
+ db -1 ; end
OnixEggMoves:
db ROCK_SLIDE
db FLAIL
- db $ff
+ db -1 ; end
DrowzeeEggMoves:
db LIGHT_SCREEN
db BARRIER
- db $ff
+ db -1 ; end
KrabbyEggMoves:
db DIG
@@ -324,7 +324,7 @@ KrabbyEggMoves:
db AMNESIA
db FLAIL
db SLAM
- db $ff
+ db -1 ; end
ExeggcuteEggMoves:
db SYNTHESIS
@@ -332,7 +332,7 @@ ExeggcuteEggMoves:
db REFLECT
db MEGA_DRAIN
db ANCIENTPOWER
- db $ff
+ db -1 ; end
CuboneEggMoves:
db ROCK_SLIDE
@@ -344,13 +344,13 @@ CuboneEggMoves:
if _CRYSTAL
db SWORDS_DANCE
endc
- db $ff
+ db -1 ; end
LickitungEggMoves:
db BELLY_DRUM
db MAGNITUDE
db BODY_SLAM
- db $ff
+ db -1 ; end
KoffingEggMoves:
db SCREECH
@@ -358,7 +358,7 @@ KoffingEggMoves:
db PSYBEAM
db DESTINY_BOND
db PAIN_SPLIT
- db $ff
+ db -1 ; end
RhyhornEggMoves:
db CRUNCH
@@ -368,13 +368,13 @@ RhyhornEggMoves:
db PURSUIT
db COUNTER
db MAGNITUDE
- db $ff
+ db -1 ; end
ChanseyEggMoves:
db PRESENT
db METRONOME
db HEAL_BELL
- db $ff
+ db -1 ; end
TangelaEggMoves:
db FLAIL
@@ -382,7 +382,7 @@ TangelaEggMoves:
db MEGA_DRAIN
db REFLECT
db AMNESIA
- db $ff
+ db -1 ; end
KangaskhanEggMoves:
db STOMP
@@ -390,7 +390,7 @@ KangaskhanEggMoves:
db FOCUS_ENERGY
db SAFEGUARD
db DISABLE
- db $ff
+ db -1 ; end
HorseaEggMoves:
db FLAIL
@@ -399,27 +399,27 @@ HorseaEggMoves:
db DISABLE
db SPLASH
db DRAGON_RAGE
- db $ff
+ db -1 ; end
GoldeenEggMoves:
db PSYBEAM
db HAZE
db HYDRO_PUMP
- db $ff
+ db -1 ; end
if !_CRYSTAL
StaryuEggMoves:
db AURORA_BEAM
db BARRIER
db SUPERSONIC
- db $ff
+ db -1 ; end
endc
MrMimeEggMoves:
db FUTURE_SIGHT
db HYPNOSIS
db MIMIC
- db $ff
+ db -1 ; end
ScytherEggMoves:
db COUNTER
@@ -428,22 +428,22 @@ ScytherEggMoves:
db RAZOR_WIND
db REVERSAL
db LIGHT_SCREEN
- db $ff
+ db -1 ; end
PinsirEggMoves:
db FURY_ATTACK
db FLAIL
- db $ff
+ db -1 ; end
LaprasEggMoves:
db AURORA_BEAM
db FORESIGHT
- db $ff
+ db -1 ; end
EeveeEggMoves:
db FLAIL
db CHARM
- db $ff
+ db -1 ; end
OmanyteEggMoves:
db BUBBLEBEAM
@@ -451,7 +451,7 @@ OmanyteEggMoves:
db SLAM
db SUPERSONIC
db HAZE
- db $ff
+ db -1 ; end
KabutoEggMoves:
db BUBBLEBEAM
@@ -459,7 +459,7 @@ KabutoEggMoves:
db RAPID_SPIN
db DIG
db FLAIL
- db $ff
+ db -1 ; end
AerodactylEggMoves:
db WHIRLWIND
@@ -468,21 +468,21 @@ AerodactylEggMoves:
if !_CRYSTAL
db STEEL_WING
endc
- db $ff
+ db -1 ; end
SnorlaxEggMoves:
db LICK
if !_CRYSTAL
db CHARM
endc
- db $ff
+ db -1 ; end
DratiniEggMoves:
db LIGHT_SCREEN
db MIST
db HAZE
db SUPERSONIC
- db $ff
+ db -1 ; end
ChikoritaEggMoves:
db VINE_WHIP
@@ -491,7 +491,7 @@ ChikoritaEggMoves:
db ANCIENTPOWER
db FLAIL
db SWORDS_DANCE
- db $ff
+ db -1 ; end
CyndaquilEggMoves:
db FURY_SWIPES
@@ -502,7 +502,7 @@ CyndaquilEggMoves:
if _CRYSTAL
db SUBMISSION
endc
- db $ff
+ db -1 ; end
TotodileEggMoves:
db CRUNCH
@@ -511,7 +511,7 @@ TotodileEggMoves:
db ANCIENTPOWER
db RAZOR_WIND
db ROCK_SLIDE
- db $ff
+ db -1 ; end
SentretEggMoves:
db DOUBLE_EDGE
@@ -519,7 +519,7 @@ SentretEggMoves:
db SLASH
db FOCUS_ENERGY
db REVERSAL
- db $ff
+ db -1 ; end
HoothootEggMoves:
db MIRROR_MOVE
@@ -530,13 +530,13 @@ HoothootEggMoves:
if _CRYSTAL
db SKY_ATTACK
endc
- db $ff
+ db -1 ; end
LedybaEggMoves:
db PSYBEAM
db BIDE
db LIGHT_SCREEN
- db $ff
+ db -1 ; end
SpinarakEggMoves:
db PSYBEAM
@@ -544,13 +544,13 @@ SpinarakEggMoves:
db SONICBOOM
db BATON_PASS
db PURSUIT
- db $ff
+ db -1 ; end
ChinchouEggMoves:
db FLAIL
db SUPERSONIC
db SCREECH
- db $ff
+ db -1 ; end
PichuEggMoves:
db REVERSAL
@@ -558,7 +558,7 @@ PichuEggMoves:
db PRESENT
db ENCORE
db DOUBLESLAP
- db $ff
+ db -1 ; end
CleffaEggMoves:
db PRESENT
@@ -567,13 +567,13 @@ CleffaEggMoves:
db BELLY_DRUM
db SPLASH
db MIMIC
- db $ff
+ db -1 ; end
IgglybuffEggMoves:
db PERISH_SONG
db PRESENT
db FAINT_ATTACK
- db $ff
+ db -1 ; end
TogepiEggMoves:
db PRESENT
@@ -581,7 +581,7 @@ TogepiEggMoves:
db PECK
db FORESIGHT
db FUTURE_SIGHT
- db $ff
+ db -1 ; end
NatuEggMoves:
db HAZE
@@ -589,7 +589,7 @@ NatuEggMoves:
db QUICK_ATTACK
db FAINT_ATTACK
db STEEL_WING
- db $ff
+ db -1 ; end
MareepEggMoves:
db THUNDERBOLT
@@ -598,7 +598,7 @@ MareepEggMoves:
db SAFEGUARD
db SCREECH
db REFLECT
- db $ff
+ db -1 ; end
MarillEggMoves:
db LIGHT_SCREEN
@@ -609,11 +609,11 @@ MarillEggMoves:
db PERISH_SONG
db SUPERSONIC
db FORESIGHT
- db $ff
+ db -1 ; end
SudowoodoEggMoves:
db SELFDESTRUCT
- db $ff
+ db -1 ; end
HoppipEggMoves:
db CONFUSION
@@ -623,7 +623,7 @@ HoppipEggMoves:
db REFLECT
db AMNESIA
db PAY_DAY
- db $ff
+ db -1 ; end
AipomEggMoves:
db COUNTER
@@ -634,19 +634,19 @@ AipomEggMoves:
db SLAM
db DOUBLESLAP
db BEAT_UP
- db $ff
+ db -1 ; end
YanmaEggMoves:
db WHIRLWIND
db REVERSAL
db LEECH_LIFE
- db $ff
+ db -1 ; end
WooperEggMoves:
db BODY_SLAM
db ANCIENTPOWER
db SAFEGUARD
- db $ff
+ db -1 ; end
MurkrowEggMoves:
db WHIRLWIND
@@ -657,12 +657,12 @@ MurkrowEggMoves:
if _CRYSTAL
db SKY_ATTACK
endc
- db $ff
+ db -1 ; end
MisdreavusEggMoves:
db SCREECH
db DESTINY_BOND
- db $ff
+ db -1 ; end
GirafarigEggMoves:
db TAKE_DOWN
@@ -670,14 +670,14 @@ GirafarigEggMoves:
db FORESIGHT
db FUTURE_SIGHT
db BEAT_UP
- db $ff
+ db -1 ; end
PinecoEggMoves:
db REFLECT
db PIN_MISSILE
db FLAIL
db SWIFT
- db $ff
+ db -1 ; end
DunsparceEggMoves:
db BIDE
@@ -685,14 +685,14 @@ DunsparceEggMoves:
db ROCK_SLIDE
db BITE
db RAGE
- db $ff
+ db -1 ; end
GligarEggMoves:
db METAL_CLAW
db WING_ATTACK
db RAZOR_WIND
db COUNTER
- db $ff
+ db -1 ; end
SnubbullEggMoves:
db METRONOME
@@ -703,24 +703,24 @@ SnubbullEggMoves:
db HEAL_BELL
db LICK
db LEER
- db $ff
+ db -1 ; end
QwilfishEggMoves:
db FLAIL
db HAZE
db BUBBLEBEAM
db SUPERSONIC
- db $ff
+ db -1 ; end
ShuckleEggMoves:
db SWEET_SCENT
- db $ff
+ db -1 ; end
HeracrossEggMoves:
db HARDEN
db BIDE
db FLAIL
- db $ff
+ db -1 ; end
SneaselEggMoves:
db COUNTER
@@ -728,7 +728,7 @@ SneaselEggMoves:
db FORESIGHT
db REFLECT
db BITE
- db $ff
+ db -1 ; end
TeddiursaEggMoves:
db CRUNCH
@@ -739,11 +739,11 @@ TeddiursaEggMoves:
if _CRYSTAL
db METAL_CLAW
endc
- db $ff
+ db -1 ; end
SlugmaEggMoves:
db ACID_ARMOR
- db $ff
+ db -1 ; end
SwinubEggMoves:
db TAKE_DOWN
@@ -751,7 +751,7 @@ SwinubEggMoves:
db BODY_SLAM
db ROCK_SLIDE
db ANCIENTPOWER
- db $ff
+ db -1 ; end
CorsolaEggMoves:
db ROCK_SLIDE
@@ -759,7 +759,7 @@ CorsolaEggMoves:
db SCREECH
db MIST
db AMNESIA
- db $ff
+ db -1 ; end
RemoraidEggMoves:
db AURORA_BEAM
@@ -767,7 +767,7 @@ RemoraidEggMoves:
db SUPERSONIC
db HAZE
db SCREECH
- db $ff
+ db -1 ; end
DelibirdEggMoves:
db AURORA_BEAM
@@ -775,14 +775,14 @@ DelibirdEggMoves:
db FUTURE_SIGHT
db SPLASH
db RAPID_SPIN
- db $ff
+ db -1 ; end
MantineEggMoves:
db TWISTER
db HYDRO_PUMP
db HAZE
db SLAM
- db $ff
+ db -1 ; end
SkarmoryEggMoves:
db DRILL_PECK
@@ -791,7 +791,7 @@ SkarmoryEggMoves:
if _CRYSTAL
db SKY_ATTACK
endc
- db $ff
+ db -1 ; end
HoundourEggMoves:
db FIRE_SPIN
@@ -801,7 +801,7 @@ HoundourEggMoves:
db SPITE
db REVERSAL
db BEAT_UP
- db $ff
+ db -1 ; end
PhanpyEggMoves:
db FOCUS_ENERGY
@@ -810,7 +810,7 @@ PhanpyEggMoves:
if _CRYSTAL
db WATER_GUN
endc
- db $ff
+ db -1 ; end
StantlerEggMoves:
db REFLECT
@@ -818,21 +818,21 @@ StantlerEggMoves:
db DISABLE
db LIGHT_SCREEN
db BITE
- db $ff
+ db -1 ; end
TyrogueEggMoves:
db RAPID_SPIN
db HI_JUMP_KICK
db MACH_PUNCH
db MIND_READER
- db $ff
+ db -1 ; end
SmoochumEggMoves:
if !_CRYSTAL
db LOVELY_KISS
endc
db MEDITATE
- db $ff
+ db -1 ; end
ElekidEggMoves:
db KARATE_CHOP
@@ -842,7 +842,7 @@ ElekidEggMoves:
if _CRYSTAL
db CROSS_CHOP
endc
- db $ff
+ db -1 ; end
MagbyEggMoves:
db KARATE_CHOP
@@ -852,13 +852,13 @@ MagbyEggMoves:
if _CRYSTAL
db CROSS_CHOP
endc
- db $ff
+ db -1 ; end
MiltankEggMoves:
db PRESENT
db REVERSAL
db SEISMIC_TOSS
- db $ff
+ db -1 ; end
LarvitarEggMoves:
db PURSUIT
@@ -866,7 +866,7 @@ LarvitarEggMoves:
db OUTRAGE
db FOCUS_ENERGY
db ANCIENTPOWER
- db $ff
+ db -1 ; end
NoEggMoves:
- db $ff
+ db -1 ; end
diff --git a/data/pokemon/evos_attacks.asm b/data/pokemon/evos_attacks.asm
index f21febf87..2649bb7a1 100644
--- a/data/pokemon/evos_attacks.asm
+++ b/data/pokemon/evos_attacks.asm
@@ -1,4 +1,4 @@
-INCLUDE "includes.asm"
+INCLUDE "constants.asm"
SECTION "Evolutions and Attacks", ROMX
diff --git a/data/pokemon/ezchat_order.asm b/data/pokemon/ezchat_order.asm
new file mode 100644
index 000000000..8cb860028
--- /dev/null
+++ b/data/pokemon/ezchat_order.asm
@@ -0,0 +1,96 @@
+; Every Pokémon sorted by their Japanese names in gojūon order.
+; Notably, Rhydon is missing (it should be before Rhyhorn).
+
+EZChat_SortedPokemon:
+ dw .a
+ dw .i
+ dw .u
+ dw .e
+ dw .o
+ dw .ka_ga
+ dw .ki_gi
+ dw .ku_gu
+ dw .ke_ge
+ dw .ko_go
+ dw .sa_za
+ dw .shi_ji
+ dw .su_zu
+ dw .se_ze
+ dw .so_zo
+ dw .ta_da
+ dw .chi_dhi
+ dw .tsu_du
+ dw .te_de
+ dw .to_do
+ dw .na
+ dw .ni
+ dw .nu
+ dw .ne
+ dw .no
+ dw .ha_ba_pa
+ dw .hi_bi_pi
+ dw .fu_bu_pu
+ dw .he_be_pe
+ dw .ho_bo_po
+ dw .ma
+ dw .mi
+ dw .mu
+ dw .me
+ dw .mo
+ dw .ya
+ dw .yu
+ dw .yo
+ dw .ra
+ dw .ri
+ dw .ru
+ dw .re
+ dw .ro
+ dw .wa
+ dw .end
+
+.a: db EKANS, ARBOK, SEAKING, ARIADOS, CROCONAW, UNOWN, -1
+.i: db EEVEE, GEODUDE, SPINARAK, PILOSWINE, ONIX, -1
+.u: db ARCANINE, SUDOWOODO, WEEPINBELL, VICTREEBEL, WOOPER, SWINUB, -1
+.e: db SKARMORY, AIPOM, ESPEON, HITMONCHAN, ELEKID, ELECTABUZZ, ENTEI, -1
+.o: db FERALIGATR, FURRET, OCTILLERY, PRIMEAPE, SENTRET, STANTLER, SPEAROW, FEAROW, OMASTAR, OMANYTE, -1
+.ka_ga: db GROWLITHE, MACHAMP, DRAGONITE, PINSIR, SNORLAX, KABUTO, KABUTOPS, HITMONTOP, WARTORTLE, BLASTOISE, FARFETCH_D, CUBONE, MAROWAK, KANGASKHAN, -1
+.ki_gi: db SUNFLORA, CATERPIE, GYARADOS, RAPIDASH, NINETALES, GIRAFARIG, BELLOSSOM, KINGDRA, KINGLER, -1
+.ku_gu: db GLOOM, PINECO, GLIGAR, KRABBY, GRANBULL, CROBAT, -1
+.ke_ge: db ABRA, GENGAR, TAUROS, -1
+.ko_go: db MAGIKARP, MAGNEMITE, GASTLY, HAUNTER, MACHOKE, KAKUNA, PSYDUCK, PHANPY, RATTATA, GOLDUCK, GOLBAT, GOLEM, GRAVELER, VENONAT, -1
+.sa_za: db RHYHORN, PUPITAR, CORSOLA, HITMONLEE, ZAPDOS, JOLTEON, SANDSHREW, SANDSLASH, -1 ; RHYDON should lead this list
+.shi_ji: db SEADRA, SHELLDER, VAPOREON, DEWGONG, -1
+.su_zu: db SUICUNE, STARMIE, SCYTHER, ZUBAT, BEEDRILL, HYPNO, DROWZEE, -1
+.se_ze: db SQUIRTLE, CELEBI, -1
+.so_zo: db WOBBUFFET, -1
+.ta_da: db DUGTRIO, HORSEA, EXEGGCUTE, -1
+.chi_dhi: db CHIKORITA, CHINCHOU, -1
+.tsu_du: db SHUCKLE, -1
+.te_de: db DIGLETT, REMORAID, DELIBIRD, HOUNDOUR, AMPHAROS, -1
+.to_do: db DODUO, DODRIO, SMEARGLE, KOFFING, TENTACRUEL, TOGETIC, TOGEPI, GOLDEEN, METAPOD, DONPHAN, -1
+.na: db ODDISH, EXEGGUTOR, -1
+.ni: db NIDOKING, NIDOQUEEN, NIDORAN_M, NIDORAN_F, NIDORINA, NIDORINO, MEOWTH, SNEASEL, POLIWHIRL, POLITOED, POLIWRATH, POLIWAG, -1
+.nu: db QUAGSIRE, -1
+.ne: db NATU, XATU, -1
+.no: db DUNSPARCE, -1
+.ha_ba_pa: db SEEL, STEELIX, TYPHLOSION, DRAGONAIR, BUTTERFREE, SCIZOR, HOPPIP, BLISSEY, PARAS, PARASECT, QWILFISH, MR__MIME, TYROGUE, CLOYSTER, TYRANITAR, -1
+.hi_bi_pi: db CLEFFA, WEEDLE, PIKACHU, CLEFABLE, PIDGEOT, PIDGEOTTO, PICHU, CLEFAIRY, CHARMANDER, STARYU, CYNDAQUIL, SUNKERN, TEDDIURSA, VOLTORB, -1
+.fu_bu_pu: db MOLTRES, FLAREON, ALAKAZAM, MAGMAR, FORRETRESS, WIGGLYTUFF, IVYSAUR, BULBASAUR, VENUSAUR, AERODACTYL, MAGBY, IGGLYBUFF, UMBREON, ARTICUNO, JIGGLYPUFF, SNUBBULL, -1
+.he_be_pe: db BAYLEEF, GRIMER, MUK, HERACROSS, HOUNDOOM, PERSIAN, LICKITUNG, -1
+.ho_bo_po: db HO_OH, HOOTHOOT, PIDGEY, PONYTA, SKIPLOOM, PORYGON, PORYGON2, -1
+.ma: db MAGCARGO, SLUGMA, QUILAVA, BELLSPROUT, WEEZING, MARILL, AZUMARILL, ELECTRODE, MANKEY, MANTINE, -1
+.mi: db DRATINI, MEW, MEWTWO, MILTANK, -1
+.mu: db MISDREAVUS, SMOOCHUM, -1
+.me: db MEGANIUM, DITTO, TENTACOOL, MAREEP, -1
+.mo: db FLAAFFY, VENOMOTH, TANGELA, -1
+.ya: db SLOWKING, SLOWBRO, SLOWPOKE, MURKROW, YANMA, -1
+.yu: db KADABRA, -1
+.yo: db LARVITAR, NOCTOWL, -1
+.ra: db RAIKOU, RAICHU, CHANSEY, RATICATE, LAPRAS, VILEPLUME, LANTURN, -1
+.ri: db CHARMELEON, CHARIZARD, URSARING, -1
+.ru: db JYNX, LUGIA, -1
+.re: db MAGNETON, LEDIAN, LEDYBA, -1
+.ro: db VULPIX, -1
+.wa: db JUMPLUFF, TOTODILE, MACHOP ;, -1
+.end: db -1
+; 11d67e
diff --git a/data/pokemon/palettes.asm b/data/pokemon/palettes.asm
index 2e47bbdaf..ec2cc3c0b 100644
--- a/data/pokemon/palettes.asm
+++ b/data/pokemon/palettes.asm
@@ -518,12 +518,8 @@ INCLUDE "gfx/pokemon/celebi/shiny.pal"
RGB 30, 26, 11
RGB 23, 16, 00
-; Egg
- RGB 30, 26, 11
- RGB 23, 16, 00
-; Egg shiny
- RGB 30, 26, 11
- RGB 23, 16, 00
+INCLUDE "gfx/pokemon/egg/normal.pal"
+INCLUDE "gfx/pokemon/egg/shiny.pal"
; 254
RGB 30, 26, 11
diff --git a/data/pokemon/pic_pointers.asm b/data/pokemon/pic_pointers.asm
index cca5c3b9c..c45a9837e 100644
--- a/data/pokemon/pic_pointers.asm
+++ b/data/pokemon/pic_pointers.asm
@@ -1,3 +1,5 @@
+; Pics are defined in gfx/pics.asm
+
PokemonPicPointers::
; entries correspond to Pokémon species, two apiece
dba_pic BulbasaurFrontpic
diff --git a/data/pokemon/rby_base_special.asm b/data/pokemon/rby_base_special.asm
new file mode 100644
index 000000000..9998692ab
--- /dev/null
+++ b/data/pokemon/rby_base_special.asm
@@ -0,0 +1,155 @@
+; The original base Special stat for each Pokémon from Red/Blue
+
+KantoMonSpecials: ; fb656
+ db 65 ; BULBASAUR
+ db 80 ; IVYSAUR
+ db 100 ; VENUSAUR
+ db 50 ; CHARMANDER
+ db 65 ; CHARMELEON
+ db 85 ; CHARIZARD
+ db 50 ; SQUIRTLE
+ db 65 ; WARTORTLE
+ db 85 ; BLASTOISE
+ db 20 ; CATERPIE
+ db 25 ; METAPOD
+ db 80 ; BUTTERFREE
+ db 20 ; WEEDLE
+ db 25 ; KAKUNA
+ db 45 ; BEEDRILL
+ db 35 ; PIDGEY
+ db 50 ; PIDGEOTTO
+ db 70 ; PIDGEOT
+ db 25 ; RATTATA
+ db 50 ; RATICATE
+ db 31 ; SPEAROW
+ db 61 ; FEAROW
+ db 40 ; EKANS
+ db 65 ; ARBOK
+ db 50 ; PIKACHU
+ db 90 ; RAICHU
+ db 30 ; SANDSHREW
+ db 55 ; SANDSLASH
+ db 40 ; NIDORAN_F
+ db 55 ; NIDORINA
+ db 75 ; NIDOQUEEN
+ db 40 ; NIDORAN_M
+ db 55 ; NIDORINO
+ db 75 ; NIDOKING
+ db 60 ; CLEFAIRY
+ db 85 ; CLEFABLE
+ db 65 ; VULPIX
+ db 100 ; NINETALES
+ db 25 ; JIGGLYPUFF
+ db 50 ; WIGGLYTUFF
+ db 40 ; ZUBAT
+ db 75 ; GOLBAT
+ db 75 ; ODDISH
+ db 85 ; GLOOM
+ db 100 ; VILEPLUME
+ db 55 ; PARAS
+ db 80 ; PARASECT
+ db 40 ; VENONAT
+ db 90 ; VENOMOTH
+ db 45 ; DIGLETT
+ db 70 ; DUGTRIO
+ db 40 ; MEOWTH
+ db 65 ; PERSIAN
+ db 50 ; PSYDUCK
+ db 80 ; GOLDUCK
+ db 35 ; MANKEY
+ db 60 ; PRIMEAPE
+ db 50 ; GROWLITHE
+ db 80 ; ARCANINE
+ db 40 ; POLIWAG
+ db 50 ; POLIWHIRL
+ db 70 ; POLIWRATH
+ db 105 ; ABRA
+ db 120 ; KADABRA
+ db 135 ; ALAKAZAM
+ db 35 ; MACHOP
+ db 50 ; MACHOKE
+ db 65 ; MACHAMP
+ db 70 ; BELLSPROUT
+ db 85 ; WEEPINBELL
+ db 100 ; VICTREEBEL
+ db 100 ; TENTACOOL
+ db 120 ; TENTACRUEL
+ db 30 ; GEODUDE
+ db 45 ; GRAVELER
+ db 55 ; GOLEM
+ db 65 ; PONYTA
+ db 80 ; RAPIDASH
+ db 40 ; SLOWPOKE
+ db 80 ; SLOWBRO
+ db 95 ; MAGNEMITE
+ db 120 ; MAGNETON
+ db 58 ; FARFETCH_D
+ db 35 ; DODUO
+ db 60 ; DODRIO
+ db 70 ; SEEL
+ db 95 ; DEWGONG
+ db 40 ; GRIMER
+ db 65 ; MUK
+ db 45 ; SHELLDER
+ db 85 ; CLOYSTER
+ db 100 ; GASTLY
+ db 115 ; HAUNTER
+ db 130 ; GENGAR
+ db 30 ; ONIX
+ db 90 ; DROWZEE
+ db 115 ; HYPNO
+ db 25 ; KRABBY
+ db 50 ; KINGLER
+ db 55 ; VOLTORB
+ db 80 ; ELECTRODE
+ db 60 ; EXEGGCUTE
+ db 125 ; EXEGGUTOR
+ db 40 ; CUBONE
+ db 50 ; MAROWAK
+ db 35 ; HITMONLEE
+ db 35 ; HITMONCHAN
+ db 60 ; LICKITUNG
+ db 60 ; KOFFING
+ db 85 ; WEEZING
+ db 30 ; RHYHORN
+ db 45 ; RHYDON
+ db 105 ; CHANSEY
+ db 100 ; TANGELA
+ db 40 ; KANGASKHAN
+ db 70 ; HORSEA
+ db 95 ; SEADRA
+ db 50 ; GOLDEEN
+ db 80 ; SEAKING
+ db 70 ; STARYU
+ db 100 ; STARMIE
+ db 100 ; MR__MIME
+ db 55 ; SCYTHER
+ db 95 ; JYNX
+ db 85 ; ELECTABUZZ
+ db 85 ; MAGMAR
+ db 55 ; PINSIR
+ db 70 ; TAUROS
+ db 20 ; MAGIKARP
+ db 100 ; GYARADOS
+ db 95 ; LAPRAS
+ db 48 ; DITTO
+ db 65 ; EEVEE
+ db 110 ; VAPOREON
+ db 110 ; JOLTEON
+ db 110 ; FLAREON
+ db 75 ; PORYGON
+ db 90 ; OMANYTE
+ db 115 ; OMASTAR
+ db 45 ; KABUTO
+ db 70 ; KABUTOPS
+ db 60 ; AERODACTYL
+ db 65 ; SNORLAX
+ db 125 ; ARTICUNO
+ db 125 ; ZAPDOS
+ db 125 ; MOLTRES
+ db 50 ; DRATINI
+ db 70 ; DRAGONAIR
+ db 100 ; DRAGONITE
+ db 154 ; MEWTWO
+ db 100 ; MEW
+; fb6ed
diff --git a/data/pokemon/rby_order.asm b/data/pokemon/rby_order.asm
new file mode 100644
index 000000000..e40ba0273
--- /dev/null
+++ b/data/pokemon/rby_order.asm
@@ -0,0 +1,255 @@
+Pokered_MonIndices: ; fb91c
+ db RHYDON
+ db KANGASKHAN
+ db NIDORAN_M
+ db CLEFAIRY
+ db SPEAROW
+ db VOLTORB
+ db NIDOKING
+ db SLOWBRO
+ db IVYSAUR
+ db EXEGGUTOR
+ db LICKITUNG
+ db EXEGGCUTE
+ db GRIMER
+ db GENGAR
+ db NIDORAN_F
+ db NIDOQUEEN
+ db CUBONE
+ db RHYHORN
+ db LAPRAS
+ db ARCANINE
+ db MEW
+ db GYARADOS
+ db SHELLDER
+ db TENTACOOL
+ db GASTLY
+ db SCYTHER
+ db STARYU
+ db BLASTOISE
+ db PINSIR
+ db TANGELA
+ db SCIZOR ; MISSINGNO.
+ db SHUCKLE ; MISSINGNO.
+ db GROWLITHE
+ db ONIX
+ db FEAROW
+ db PIDGEY
+ db SLOWPOKE
+ db KADABRA
+ db GRAVELER
+ db CHANSEY
+ db MACHOKE
+ db MR__MIME
+ db HITMONLEE
+ db HITMONCHAN
+ db ARBOK
+ db PARASECT
+ db PSYDUCK
+ db DROWZEE
+ db GOLEM
+ db HERACROSS ; MISSINGNO.
+ db MAGMAR
+ db HO_OH ; MISSINGNO.
+ db ELECTABUZZ
+ db MAGNETON
+ db KOFFING
+ db SNEASEL ; MISSINGNO.
+ db MANKEY
+ db SEEL
+ db DIGLETT
+ db TAUROS
+ db TEDDIURSA ; MISSINGNO.
+ db URSARING ; MISSINGNO.
+ db SLUGMA ; MISSINGNO.
+ db FARFETCH_D
+ db VENONAT
+ db DRAGONITE
+ db MAGCARGO ; MISSINGNO.
+ db SWINUB ; MISSINGNO.
+ db PILOSWINE ; MISSINGNO.
+ db DODUO
+ db POLIWAG
+ db JYNX
+ db MOLTRES
+ db ARTICUNO
+ db ZAPDOS
+ db DITTO
+ db MEOWTH
+ db KRABBY
+ db CORSOLA ; MISSINGNO.
+ db REMORAID ; MISSINGNO.
+ db OCTILLERY ; MISSINGNO.
+ db VULPIX
+ db NINETALES
+ db PIKACHU
+ db RAICHU
+ db DELIBIRD ; MISSINGNO.
+ db MANTINE ; MISSINGNO.
+ db DRATINI
+ db DRAGONAIR
+ db KABUTO
+ db KABUTOPS
+ db HORSEA
+ db SEADRA
+ db SKARMORY ; MISSINGNO.
+ db HOUNDOUR ; MISSINGNO.
+ db SANDSHREW
+ db SANDSLASH
+ db OMANYTE
+ db OMASTAR
+ db JIGGLYPUFF
+ db WIGGLYTUFF
+ db EEVEE
+ db FLAREON
+ db JOLTEON
+ db VAPOREON
+ db MACHOP
+ db ZUBAT
+ db EKANS
+ db PARAS
+ db POLIWHIRL
+ db POLIWRATH
+ db WEEDLE
+ db KAKUNA
+ db BEEDRILL
+ db HOUNDOOM ; MISSINGNO.
+ db DODRIO
+ db PRIMEAPE
+ db DUGTRIO
+ db VENOMOTH
+ db DEWGONG
+ db KINGDRA ; MISSINGNO.
+ db PHANPY ; MISSINGNO.
+ db CATERPIE
+ db METAPOD
+ db BUTTERFREE
+ db MACHAMP
+ db DONPHAN ; MISSINGNO.
+ db GOLDUCK
+ db HYPNO
+ db GOLBAT
+ db MEWTWO
+ db SNORLAX
+ db MAGIKARP
+ db PORYGON2 ; MISSINGNO.
+ db STANTLER ; MISSINGNO.
+ db MUK
+ db SMEARGLE ; MISSINGNO.
+ db KINGLER
+ db CLOYSTER
+ db TYROGUE ; MISSINGNO.
+ db ELECTRODE
+ db CLEFABLE
+ db WEEZING
+ db PERSIAN
+ db MAROWAK
+ db HITMONTOP ; MISSINGNO.
+ db HAUNTER
+ db ABRA
+ db ALAKAZAM
+ db PIDGEOTTO
+ db PIDGEOT
+ db STARMIE
+ db BULBASAUR
+ db VENUSAUR
+ db TENTACRUEL
+ db SMOOCHUM ; MISSINGNO.
+ db GOLDEEN
+ db SEAKING
+ db ELEKID ; MISSINGNO.
+ db MAGBY ; MISSINGNO.
+ db MILTANK ; MISSINGNO.
+ db BLISSEY ; MISSINGNO.
+ db PONYTA
+ db RAPIDASH
+ db RATTATA
+ db RATICATE
+ db NIDORINO
+ db NIDORINA
+ db GEODUDE
+ db PORYGON
+ db AERODACTYL
+ db RAIKOU ; MISSINGNO.
+ db MAGNEMITE
+ db ENTEI ; MISSINGNO.
+ db SUICUNE ; MISSINGNO.
+ db CHARMANDER
+ db SQUIRTLE
+ db CHARMELEON
+ db WARTORTLE
+ db CHARIZARD
+ db LARVITAR ; MISSINGNO.
+ db PUPITAR ; MISSINGNO. KABUTOPS FOSSIL
+ db TYRANITAR ; MISSINGNO. AERODACTYL FOSSIL
+ db LUGIA ; MISSINGNO. GHOST
+ db ODDISH
+ db GLOOM
+ db VILEPLUME
+ db BELLSPROUT
+ db WEEPINBELL
+ db VICTREEBEL
+
+ db CHIKORITA
+ db BAYLEEF
+ db MEGANIUM
+ db CYNDAQUIL
+ db QUILAVA
+ db TYPHLOSION
+ db TOTODILE
+ db CROCONAW
+ db FERALIGATR
+ db SENTRET
+ db FURRET
+ db HOOTHOOT
+ db NOCTOWL
+ db LEDYBA
+ db LEDIAN
+ db SPINARAK
+ db ARIADOS
+ db CROBAT
+ db CHINCHOU
+ db LANTURN
+ db PICHU
+ db CLEFFA
+ db IGGLYBUFF
+ db TOGEPI
+ db TOGETIC
+ db NATU
+ db XATU
+ db MAREEP
+ db FLAAFFY
+ db AMPHAROS
+ db BELLOSSOM
+ db MARILL
+ db AZUMARILL
+ db SUDOWOODO
+ db POLITOED
+ db HOPPIP
+ db SKIPLOOM
+ db JUMPLUFF
+ db AIPOM
+ db SUNKERN
+ db SUNFLORA
+ db YANMA
+ db WOOPER
+ db QUAGSIRE
+ db ESPEON
+ db UMBREON
+ db MURKROW
+ db SLOWKING
+ db MISDREAVUS
+ db UNOWN
+ db WOBBUFFET
+ db GIRAFARIG
+ db PINECO
+ db FORRETRESS
+ db DUNSPARCE
+ db GLIGAR
+ db STEELIX
+ db SNUBBULL
+ db GRANBULL
+ db QWILFISH
+ db WOBBUFFET
+ db WOBBUFFET
+; fba18