shithub: pokecrystal

Download patch

ref: 4c4fca1028c2d0906dc101d89ca6e0be4664c342
parent: 477adc72af0e71b851dd6a7097998e87d9395315
author: Rangi <[email protected]>
date: Mon Jan 29 06:35:50 EST 2018

Clean up comments
Base data: types uniquely lacked a comment; items on one line; distinguish unknowns
Dex entries: don't imply that pointers don't exist

--- a/data/pokemon/base_stats/abra.asm
+++ b/data/pokemon/base_stats/abra.asm
@@ -3,20 +3,19 @@
 	db  25,  20,  15,  90, 105,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 200 ; catch rate
 	db 73 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/abra/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/aerodactyl.asm
+++ b/data/pokemon/base_stats/aerodactyl.asm
@@ -3,20 +3,19 @@
 	db  80, 105,  65, 130,  60,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, FLYING
+	db ROCK, FLYING ; type
 	db 45 ; catch rate
 	db 202 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/aerodactyl/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, EARTHQUAKE, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, DETECT, REST, ATTRACT, STEEL_WING, FLY, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/aipom.asm
+++ b/data/pokemon/base_stats/aipom.asm
@@ -3,20 +3,19 @@
 	db  55,  70,  55,  85,  40,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 94 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/aipom/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, NIGHTMARE, CUT, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/alakazam.asm
+++ b/data/pokemon/base_stats/alakazam.asm
@@ -3,20 +3,19 @@
 	db  55,  50,  45, 120, 135,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 50 ; catch rate
 	db 186 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/alakazam/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/ampharos.asm
+++ b/data/pokemon/base_stats/ampharos.asm
@@ -3,20 +3,19 @@
 	db  90,  75,  75,  55, 115,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 45 ; catch rate
 	db 194 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ampharos/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/arbok.asm
+++ b/data/pokemon/base_stats/arbok.asm
@@ -3,20 +3,19 @@
 	db  60,  85,  69,  80,  65,  79
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 90 ; catch rate
 	db 147 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/arbok/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/arcanine.asm
+++ b/data/pokemon/base_stats/arcanine.asm
@@ -3,20 +3,19 @@
 	db  90, 110,  80,  95, 100,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 75 ; catch rate
 	db 213 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/arcanine/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/ariados.asm
+++ b/data/pokemon/base_stats/ariados.asm
@@ -3,20 +3,19 @@
 	db  70,  90,  70,  40,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 90 ; catch rate
 	db 134 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ariados/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/articuno.asm
+++ b/data/pokemon/base_stats/articuno.asm
@@ -3,20 +3,19 @@
 	db  90,  85, 100,  85,  95, 125
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, FLYING
+	db ICE, FLYING ; type
 	db 3 ; catch rate
 	db 215 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/articuno/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, STEEL_WING, FLY, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/azumarill.asm
+++ b/data/pokemon/base_stats/azumarill.asm
@@ -3,20 +3,19 @@
 	db 100,  50,  80,  50,  50,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 75 ; catch rate
 	db 153 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/azumarill/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AMPHIBIAN, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/bayleef.asm
+++ b/data/pokemon/base_stats/bayleef.asm
@@ -3,20 +3,19 @@
 	db  60,  62,  80,  60,  63,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 45 ; catch rate
 	db 141 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/bayleef/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, FURY_CUTTER, CUT, STRENGTH, FLASH
 	; end
--- a/data/pokemon/base_stats/beedrill.asm
+++ b/data/pokemon/base_stats/beedrill.asm
@@ -3,20 +3,19 @@
 	db  65,  80,  40,  75,  45,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 45 ; catch rate
 	db 159 ; base exp
-	db NO_ITEM ; item 1
-	db POISON_BARB ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, POISON_BARB; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/beedrill/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SWIFT, REST, ATTRACT, FURY_CUTTER, CUT
 	; end
--- a/data/pokemon/base_stats/bellossom.asm
+++ b/data/pokemon/base_stats/bellossom.asm
@@ -3,20 +3,19 @@
 	db  75,  80,  85,  50,  90, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 45 ; catch rate
 	db 184 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/bellossom/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/bellsprout.asm
+++ b/data/pokemon/base_stats/bellsprout.asm
@@ -3,20 +3,19 @@
 	db  50,  75,  35,  40,  70,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 255 ; catch rate
 	db 84 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/bellsprout/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/blastoise.asm
+++ b/data/pokemon/base_stats/blastoise.asm
@@ -3,20 +3,19 @@
 	db  79,  83, 100,  78,  85, 105
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 210 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/blastoise/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/blissey.asm
+++ b/data/pokemon/base_stats/blissey.asm
@@ -3,20 +3,19 @@
 	db 255,  10,  10,  55,  75, 135
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 30 ; catch rate
 	db 255 ; base exp
-	db NO_ITEM ; item 1
-	db LUCKY_EGG ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, LUCKY_EGG; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/blissey/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, DREAM_EATER, REST, ATTRACT, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/bulbasaur.asm
+++ b/data/pokemon/base_stats/bulbasaur.asm
@@ -3,20 +3,19 @@
 	db  45,  49,  49,  45,  65,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 45 ; catch rate
 	db 64 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/bulbasaur/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FURY_CUTTER, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/butterfree.asm
+++ b/data/pokemon/base_stats/butterfree.asm
@@ -3,20 +3,19 @@
 	db  60,  45,  50,  70,  80,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FLYING
+	db BUG, FLYING ; type
 	db 45 ; catch rate
 	db 160 ; base exp
-	db NO_ITEM ; item 1
-	db SILVERPOWDER ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, SILVERPOWDER; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/butterfree/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/caterpie.asm
+++ b/data/pokemon/base_stats/caterpie.asm
@@ -3,20 +3,19 @@
 	db  45,  30,  35,  45,  20,  20
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, BUG
+	db BUG, BUG ; type
 	db 255 ; catch rate
 	db 53 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/caterpie/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/celebi.asm
+++ b/data/pokemon/base_stats/celebi.asm
@@ -3,20 +3,19 @@
 	db 100, 100, 100, 100, 100, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, GRASS
+	db PSYCHIC, GRASS ; type
 	db 45 ; catch rate
 	db 64 ; base exp
-	db NO_ITEM ; item 1
-	db MIRACLEBERRY ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, MIRACLEBERRY; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 120 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/celebi/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/chansey.asm
+++ b/data/pokemon/base_stats/chansey.asm
@@ -3,20 +3,19 @@
 	db 250,  05,  05,  50,  35, 105
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 30 ; catch rate
 	db 255 ; base exp
-	db NO_ITEM ; item 1
-	db LUCKY_EGG ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, LUCKY_EGG; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/chansey/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, DREAM_EATER, REST, ATTRACT, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/charizard.asm
+++ b/data/pokemon/base_stats/charizard.asm
@@ -3,20 +3,19 @@
 	db  78,  84,  78, 100, 109,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FLYING
+	db FIRE, FLYING ; type
 	db 45 ; catch rate
 	db 209 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/charizard/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, DEFENSE_CURL, REST, ATTRACT, STEEL_WING, FIRE_PUNCH, FURY_CUTTER, CUT, FLY, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/charmander.asm
+++ b/data/pokemon/base_stats/charmander.asm
@@ -3,20 +3,19 @@
 	db  39,  52,  43,  65,  60,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 65 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/charmander/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, CUT, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/charmeleon.asm
+++ b/data/pokemon/base_stats/charmeleon.asm
@@ -3,20 +3,19 @@
 	db  58,  64,  58,  80,  80,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 142 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/charmeleon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, CUT, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/chikorita.asm
+++ b/data/pokemon/base_stats/chikorita.asm
@@ -3,20 +3,19 @@
 	db  45,  49,  65,  45,  49,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 45 ; catch rate
 	db 64 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/chikorita/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/chinchou.asm
+++ b/data/pokemon/base_stats/chinchou.asm
@@ -3,20 +3,19 @@
 	db  75,  38,  38,  67,  56,  56
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ELECTRIC
+	db WATER, ELECTRIC ; type
 	db 190 ; catch rate
 	db 90 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/chinchou/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FISH, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, SURF, FLASH, WHIRLPOOL, WATERFALL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/clefable.asm
+++ b/data/pokemon/base_stats/clefable.asm
@@ -3,20 +3,19 @@
 	db  95,  70,  73,  60,  85,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 25 ; catch rate
 	db 129 ; base exp
-	db MYSTERYBERRY ; item 1
-	db MOON_STONE ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db MYSTERYBERRY, MOON_STONE; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/clefable/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/clefairy.asm
+++ b/data/pokemon/base_stats/clefairy.asm
@@ -3,20 +3,19 @@
 	db  70,  45,  48,  35,  60,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 150 ; catch rate
 	db 68 ; base exp
-	db MYSTERYBERRY ; item 1
-	db MOON_STONE ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db MYSTERYBERRY, MOON_STONE; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/clefairy/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/cleffa.asm
+++ b/data/pokemon/base_stats/cleffa.asm
@@ -3,20 +3,19 @@
 	db  50,  25,  28,  15,  45,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 150 ; catch rate
 	db 37 ; base exp
-	db MYSTERYBERRY ; item 1
-	db MOON_STONE ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db MYSTERYBERRY, MOON_STONE; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/cleffa/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, NIGHTMARE, FLASH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/cloyster.asm
+++ b/data/pokemon/base_stats/cloyster.asm
@@ -3,20 +3,19 @@
 	db  50,  95, 180,  70,  85,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ICE
+	db WATER, ICE ; type
 	db 60 ; catch rate
 	db 203 ; base exp
-	db PEARL ; item 1
-	db BIG_PEARL ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db PEARL, BIG_PEARL; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/cloyster/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/corsola.asm
+++ b/data/pokemon/base_stats/corsola.asm
@@ -3,20 +3,19 @@
 	db  55,  55,  85,  35,  65,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ROCK
+	db WATER, ROCK ; type
 	db 60 ; catch rate
 	db 113 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/corsola/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AMPHIBIAN, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/crobat.asm
+++ b/data/pokemon/base_stats/crobat.asm
@@ -3,20 +3,19 @@
 	db  85,  90,  80, 130,  70,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, FLYING
+	db POISON, FLYING ; type
 	db 90 ; catch rate
 	db 204 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/crobat/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/croconaw.asm
+++ b/data/pokemon/base_stats/croconaw.asm
@@ -3,20 +3,19 @@
 	db  65,  80,  80,  58,  59,  63
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 143 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/croconaw/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, FURY_CUTTER, CUT, SURF, STRENGTH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/cubone.asm
+++ b/data/pokemon/base_stats/cubone.asm
@@ -3,20 +3,19 @@
 	db  50,  50,  95,  35,  40,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 190 ; catch rate
 	db 87 ; base exp
-	db NO_ITEM ; item 1
-	db THICK_CLUB ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, THICK_CLUB; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/cubone/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/cyndaquil.asm
+++ b/data/pokemon/base_stats/cyndaquil.asm
@@ -3,20 +3,19 @@
 	db  39,  52,  43,  65,  60,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 65 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/cyndaquil/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, DETECT, REST, ATTRACT, CUT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/delibird.asm
+++ b/data/pokemon/base_stats/delibird.asm
@@ -3,20 +3,19 @@
 	db  45,  55,  45,  75,  65,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, FLYING
+	db ICE, FLYING ; type
 	db 45 ; catch rate
 	db 183 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/delibird/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, FLY, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/dewgong.asm
+++ b/data/pokemon/base_stats/dewgong.asm
@@ -3,20 +3,19 @@
 	db  90,  70,  80,  70,  70,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ICE
+	db WATER, ICE ; type
 	db 75 ; catch rate
 	db 176 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dewgong/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/diglett.asm
+++ b/data/pokemon/base_stats/diglett.asm
@@ -3,20 +3,19 @@
 	db  10,  55,  25,  95,  35,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 255 ; catch rate
 	db 81 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/diglett/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, CUT
 	; end
--- a/data/pokemon/base_stats/ditto.asm
+++ b/data/pokemon/base_stats/ditto.asm
@@ -3,20 +3,19 @@
 	db  48,  48,  48,  48,  48,  48
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 35 ; catch rate
 	db 61 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ditto/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn LADIES_MAN, LADIES_MAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/dodrio.asm
+++ b/data/pokemon/base_stats/dodrio.asm
@@ -3,20 +3,19 @@
 	db  60, 110,  70, 100,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 45 ; catch rate
 	db 158 ; base exp
-	db NO_ITEM ; item 1
-	db SHARP_BEAK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, SHARP_BEAK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dodrio/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/doduo.asm
+++ b/data/pokemon/base_stats/doduo.asm
@@ -3,20 +3,19 @@
 	db  35,  85,  45,  75,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 190 ; catch rate
 	db 96 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/doduo/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/donphan.asm
+++ b/data/pokemon/base_stats/donphan.asm
@@ -3,20 +3,19 @@
 	db  90, 120, 120,  50,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 60 ; catch rate
 	db 189 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/donphan/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/dragonair.asm
+++ b/data/pokemon/base_stats/dragonair.asm
@@ -3,20 +3,19 @@
 	db  61,  84,  65,  70,  70,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db DRAGON, DRAGON
+	db DRAGON, DRAGON ; type
 	db 45 ; catch rate
 	db 144 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dragonair/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DETECT, REST, ATTRACT, SURF, WATERFALL, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/dragonite.asm
+++ b/data/pokemon/base_stats/dragonite.asm
@@ -3,20 +3,19 @@
 	db  91, 134,  95,  80, 100, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db DRAGON, FLYING
+	db DRAGON, FLYING ; type
 	db 45 ; catch rate
 	db 218 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dragonite/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, THUNDERPUNCH, DETECT, REST, ATTRACT, STEEL_WING, FIRE_PUNCH, FURY_CUTTER, FLY, SURF, STRENGTH, WHIRLPOOL, WATERFALL, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/dratini.asm
+++ b/data/pokemon/base_stats/dratini.asm
@@ -3,20 +3,19 @@
 	db  41,  64,  45,  50,  50,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db DRAGON, DRAGON
+	db DRAGON, DRAGON ; type
 	db 45 ; catch rate
 	db 67 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dratini/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DETECT, REST, ATTRACT, SURF, WATERFALL, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/drowzee.asm
+++ b/data/pokemon/base_stats/drowzee.asm
@@ -3,20 +3,19 @@
 	db  60,  48,  45,  42,  43,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 190 ; catch rate
 	db 102 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/drowzee/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/dugtrio.asm
+++ b/data/pokemon/base_stats/dugtrio.asm
@@ -3,20 +3,19 @@
 	db  35,  80,  50, 120,  50,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 50 ; catch rate
 	db 153 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dugtrio/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, CUT
 	; end
--- a/data/pokemon/base_stats/dunsparce.asm
+++ b/data/pokemon/base_stats/dunsparce.asm
@@ -3,20 +3,19 @@
 	db 100,  70,  70,  45,  65,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 190 ; catch rate
 	db 75 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/dunsparce/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, THUNDER, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, STRENGTH, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/eevee.asm
+++ b/data/pokemon/base_stats/eevee.asm
@@ -3,20 +3,19 @@
 	db  55,  55,  50,  55,  45,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 92 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/eevee/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT
 	; end
--- a/data/pokemon/base_stats/ekans.asm
+++ b/data/pokemon/base_stats/ekans.asm
@@ -3,20 +3,19 @@
 	db  35,  60,  44,  55,  40,  54
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 255 ; catch rate
 	db 62 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ekans/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/electabuzz.asm
+++ b/data/pokemon/base_stats/electabuzz.asm
@@ -3,20 +3,19 @@
 	db  65,  83,  57, 105,  95,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 45 ; catch rate
 	db 156 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/electabuzz/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/electrode.asm
+++ b/data/pokemon/base_stats/electrode.asm
@@ -3,20 +3,19 @@
 	db  60,  50,  70, 140,  80,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 60 ; catch rate
 	db 150 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/electrode/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/elekid.asm
+++ b/data/pokemon/base_stats/elekid.asm
@@ -3,20 +3,19 @@
 	db  45,  63,  37,  95,  65,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 45 ; catch rate
 	db 106 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/elekid/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/entei.asm
+++ b/data/pokemon/base_stats/entei.asm
@@ -3,20 +3,19 @@
 	db 115, 115,  85, 100,  90,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 3 ; catch rate
 	db 217 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/entei/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, DETECT, REST, CUT, STRENGTH, FLASH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/espeon.asm
+++ b/data/pokemon/base_stats/espeon.asm
@@ -3,20 +3,19 @@
 	db  65,  65,  60, 110, 130,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 45 ; catch rate
 	db 197 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/espeon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, NIGHTMARE, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/exeggcute.asm
+++ b/data/pokemon/base_stats/exeggcute.asm
@@ -3,20 +3,19 @@
 	db  60,  40,  80,  40,  60,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, PSYCHIC
+	db GRASS, PSYCHIC ; type
 	db 90 ; catch rate
 	db 98 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/exeggcute/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, STRENGTH, FLASH
 	; end
--- a/data/pokemon/base_stats/exeggutor.asm
+++ b/data/pokemon/base_stats/exeggutor.asm
@@ -3,20 +3,19 @@
 	db  95,  95,  85,  55, 125,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, PSYCHIC
+	db GRASS, PSYCHIC ; type
 	db 45 ; catch rate
 	db 212 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/exeggutor/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, STRENGTH, FLASH
 	; end
--- a/data/pokemon/base_stats/farfetch_d.asm
+++ b/data/pokemon/base_stats/farfetch_d.asm
@@ -3,20 +3,19 @@
 	db  52,  65,  55,  60,  58,  62
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 45 ; catch rate
 	db 94 ; base exp
-	db NO_ITEM ; item 1
-	db STICK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, STICK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/farfetch_d/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, CUT, FLY
 	; end
--- a/data/pokemon/base_stats/fearow.asm
+++ b/data/pokemon/base_stats/fearow.asm
@@ -3,20 +3,19 @@
 	db  65,  90,  65, 100,  61,  61
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 90 ; catch rate
 	db 162 ; base exp
-	db NO_ITEM ; item 1
-	db SHARP_BEAK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, SHARP_BEAK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/fearow/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/feraligatr.asm
+++ b/data/pokemon/base_stats/feraligatr.asm
@@ -3,20 +3,19 @@
 	db  85, 105, 100,  78,  79,  83
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 210 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/feraligatr/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, FURY_CUTTER, CUT, SURF, STRENGTH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/flaaffy.asm
+++ b/data/pokemon/base_stats/flaaffy.asm
@@ -3,20 +3,19 @@
 	db  70,  55,  55,  45,  80,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 120 ; catch rate
 	db 117 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/flaaffy/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/flareon.asm
+++ b/data/pokemon/base_stats/flareon.asm
@@ -3,20 +3,19 @@
 	db  65, 130,  60,  65,  95, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 198 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/flareon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DETECT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/forretress.asm
+++ b/data/pokemon/base_stats/forretress.asm
@@ -3,20 +3,19 @@
 	db  75,  90, 140,  40,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, STEEL
+	db BUG, STEEL ; type
 	db 75 ; catch rate
 	db 118 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/forretress/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/furret.asm
+++ b/data/pokemon/base_stats/furret.asm
@@ -3,20 +3,19 @@
 	db  85,  76,  64,  90,  45,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 90 ; catch rate
 	db 116 ; base exp
-	db BERRY ; item 1
-	db GOLD_BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db BERRY, GOLD_BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/furret/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, CUT, SURF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/gastly.asm
+++ b/data/pokemon/base_stats/gastly.asm
@@ -3,20 +3,19 @@
 	db  30,  35,  30,  80, 100,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db GHOST, POISON
+	db GHOST, POISON ; type
 	db 190 ; catch rate
 	db 95 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/gastly/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/gengar.asm
+++ b/data/pokemon/base_stats/gengar.asm
@@ -3,20 +3,19 @@
 	db  60,  65,  60, 110, 130,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db GHOST, POISON
+	db GHOST, POISON ; type
 	db 45 ; catch rate
 	db 190 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/gengar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/geodude.asm
+++ b/data/pokemon/base_stats/geodude.asm
@@ -3,20 +3,19 @@
 	db  40,  80, 100,  20,  30,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 255 ; catch rate
 	db 86 ; base exp
-	db NO_ITEM ; item 1
-	db EVERSTONE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, EVERSTONE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/geodude/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, REST, ATTRACT, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/girafarig.asm
+++ b/data/pokemon/base_stats/girafarig.asm
@@ -3,20 +3,19 @@
 	db  70,  80,  65,  85,  90,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, PSYCHIC
+	db NORMAL, PSYCHIC ; type
 	db 60 ; catch rate
 	db 149 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/girafarig/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/gligar.asm
+++ b/data/pokemon/base_stats/gligar.asm
@@ -3,20 +3,19 @@
 	db  65,  75, 105,  85,  35,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, FLYING
+	db GROUND, FLYING ; type
 	db 60 ; catch rate
 	db 108 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/gligar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SANDSTORM, SWIFT, DETECT, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/gloom.asm
+++ b/data/pokemon/base_stats/gloom.asm
@@ -3,20 +3,19 @@
 	db  60,  65,  70,  40,  85,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 120 ; catch rate
 	db 132 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/gloom/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/golbat.asm
+++ b/data/pokemon/base_stats/golbat.asm
@@ -3,20 +3,19 @@
 	db  75,  80,  70,  90,  65,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, FLYING
+	db POISON, FLYING ; type
 	db 90 ; catch rate
 	db 171 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/golbat/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING
 	; end
--- a/data/pokemon/base_stats/goldeen.asm
+++ b/data/pokemon/base_stats/goldeen.asm
@@ -3,20 +3,19 @@
 	db  45,  67,  60,  63,  35,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 225 ; catch rate
 	db 111 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/goldeen/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FISH, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/golduck.asm
+++ b/data/pokemon/base_stats/golduck.asm
@@ -3,20 +3,19 @@
 	db  80,  82,  78,  85,  95,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 75 ; catch rate
 	db 174 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/golduck/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, FURY_CUTTER, SURF, STRENGTH, FLASH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/golem.asm
+++ b/data/pokemon/base_stats/golem.asm
@@ -3,20 +3,19 @@
 	db  80, 110, 130,  45,  55,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 45 ; catch rate
 	db 177 ; base exp
-	db NO_ITEM ; item 1
-	db EVERSTONE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, EVERSTONE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/golem/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/granbull.asm
+++ b/data/pokemon/base_stats/granbull.asm
@@ -3,20 +3,19 @@
 	db  90, 120,  75,  45,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 75 ; catch rate
 	db 178 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/granbull/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FIELD, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/graveler.asm
+++ b/data/pokemon/base_stats/graveler.asm
@@ -3,20 +3,19 @@
 	db  55,  95, 115,  35,  45,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 120 ; catch rate
 	db 134 ; base exp
-	db NO_ITEM ; item 1
-	db EVERSTONE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, EVERSTONE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/graveler/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, REST, ATTRACT, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/grimer.asm
+++ b/data/pokemon/base_stats/grimer.asm
@@ -3,20 +3,19 @@
 	db  80,  80,  50,  25,  40,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 190 ; catch rate
 	db 90 ; base exp
-	db NO_ITEM ; item 1
-	db NUGGET ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NUGGET; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/grimer/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, THUNDERPUNCH, REST, ATTRACT, THIEF, FIRE_PUNCH, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/growlithe.asm
+++ b/data/pokemon/base_stats/growlithe.asm
@@ -3,20 +3,19 @@
 	db  55,  70,  45,  60,  70,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 190 ; catch rate
 	db 91 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/growlithe/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/gyarados.asm
+++ b/data/pokemon/base_stats/gyarados.asm
@@ -3,20 +3,19 @@
 	db  95, 125,  79,  81,  60, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, FLYING
+	db WATER, FLYING ; type
 	db 45 ; catch rate
 	db 214 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 5 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/gyarados/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FISH, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, DRAGONBREATH, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, WATERFALL, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/haunter.asm
+++ b/data/pokemon/base_stats/haunter.asm
@@ -3,20 +3,19 @@
 	db  45,  50,  45,  95, 115,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db GHOST, POISON
+	db GHOST, POISON ; type
 	db 90 ; catch rate
 	db 126 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/haunter/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/heracross.asm
+++ b/data/pokemon/base_stats/heracross.asm
@@ -3,20 +3,19 @@
 	db  80, 125,  75,  85,  40,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FIGHTING
+	db BUG, FIGHTING ; type
 	db 45 ; catch rate
 	db 200 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/heracross/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/hitmonchan.asm
+++ b/data/pokemon/base_stats/hitmonchan.asm
@@ -3,20 +3,19 @@
 	db  50, 105,  79,  76,  35, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 45 ; catch rate
 	db 140 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hitmonchan/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH
 	; end
--- a/data/pokemon/base_stats/hitmonlee.asm
+++ b/data/pokemon/base_stats/hitmonlee.asm
@@ -3,20 +3,19 @@
 	db  50, 120,  53,  87,  35, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 45 ; catch rate
 	db 139 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hitmonlee/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/hitmontop.asm
+++ b/data/pokemon/base_stats/hitmontop.asm
@@ -3,20 +3,19 @@
 	db  50,  95,  95,  70,  35, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 45 ; catch rate
 	db 138 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hitmontop/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/ho_oh.asm
+++ b/data/pokemon/base_stats/ho_oh.asm
@@ -3,20 +3,19 @@
 	db 106, 130,  90,  90, 110, 154
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FLYING
+	db FIRE, FLYING ; type
 	db 3 ; catch rate
 	db 220 ; base exp
-	db SACRED_ASH ; item 1
-	db SACRED_ASH ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db SACRED_ASH, SACRED_ASH; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 120 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ho_oh/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, DRAGONBREATH, THUNDER, EARTHQUAKE, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, DREAM_EATER, DETECT, REST, STEEL_WING, NIGHTMARE, FLY, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/hoothoot.asm
+++ b/data/pokemon/base_stats/hoothoot.asm
@@ -3,20 +3,19 @@
 	db  60,  30,  30,  50,  36,  56
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 255 ; catch rate
 	db 58 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hoothoot/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, STEEL_WING, NIGHTMARE, FLY, FLASH
 	; end
--- a/data/pokemon/base_stats/hoppip.asm
+++ b/data/pokemon/base_stats/hoppip.asm
@@ -3,20 +3,19 @@
 	db  35,  35,  40,  50,  35,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, FLYING
+	db GRASS, FLYING ; type
 	db 255 ; catch rate
 	db 74 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hoppip/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FAIRY, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FLASH
 	; end
--- a/data/pokemon/base_stats/horsea.asm
+++ b/data/pokemon/base_stats/horsea.asm
@@ -3,20 +3,19 @@
 	db  30,  40,  70,  60,  70,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 225 ; catch rate
 	db 83 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/horsea/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, DRAGONBREATH, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/houndoom.asm
+++ b/data/pokemon/base_stats/houndoom.asm
@@ -3,20 +3,19 @@
 	db  75,  90,  50,  95, 110,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db DARK, FIRE
+	db DARK, FIRE ; type
 	db 45 ; catch rate
 	db 204 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/houndoom/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/houndour.asm
+++ b/data/pokemon/base_stats/houndour.asm
@@ -3,20 +3,19 @@
 	db  45,  60,  30,  65,  80,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db DARK, FIRE
+	db DARK, FIRE ; type
 	db 120 ; catch rate
 	db 114 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/houndour/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/hypno.asm
+++ b/data/pokemon/base_stats/hypno.asm
@@ -3,20 +3,19 @@
 	db  85,  73,  70,  67,  73, 115
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 75 ; catch rate
 	db 165 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/hypno/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/igglybuff.asm
+++ b/data/pokemon/base_stats/igglybuff.asm
@@ -3,20 +3,19 @@
 	db  90,  30,  15,  15,  40,  20
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 170 ; catch rate
 	db 39 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/igglybuff/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, NIGHTMARE, FLASH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/ivysaur.asm
+++ b/data/pokemon/base_stats/ivysaur.asm
@@ -3,20 +3,19 @@
 	db  60,  62,  63,  60,  80,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 45 ; catch rate
 	db 141 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ivysaur/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FURY_CUTTER, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/jigglypuff.asm
+++ b/data/pokemon/base_stats/jigglypuff.asm
@@ -3,20 +3,19 @@
 	db 115,  45,  20,  20,  45,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 170 ; catch rate
 	db 76 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/jigglypuff/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/jolteon.asm
+++ b/data/pokemon/base_stats/jolteon.asm
@@ -3,20 +3,19 @@
 	db  65,  65,  60, 130, 110,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 45 ; catch rate
 	db 197 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/jolteon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/jumpluff.asm
+++ b/data/pokemon/base_stats/jumpluff.asm
@@ -3,20 +3,19 @@
 	db  75,  55,  70, 110,  55,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, FLYING
+	db GRASS, FLYING ; type
 	db 45 ; catch rate
 	db 176 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/jumpluff/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FAIRY, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FLASH
 	; end
--- a/data/pokemon/base_stats/jynx.asm
+++ b/data/pokemon/base_stats/jynx.asm
@@ -3,20 +3,19 @@
 	db  65,  50,  35,  95, 115,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, PSYCHIC
+	db ICE, PSYCHIC ; type
 	db 45 ; catch rate
 	db 137 ; base exp
-	db ICE_BERRY ; item 1
-	db ICE_BERRY ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db ICE_BERRY, ICE_BERRY; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/jynx/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SWEET_SCENT, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/kabuto.asm
+++ b/data/pokemon/base_stats/kabuto.asm
@@ -3,20 +3,19 @@
 	db  30,  80,  90,  55,  55,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, WATER
+	db ROCK, WATER ; type
 	db 45 ; catch rate
 	db 119 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 30 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kabuto/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, REST, ATTRACT, THIEF, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/kabutops.asm
+++ b/data/pokemon/base_stats/kabutops.asm
@@ -3,20 +3,19 @@
 	db  60, 115, 105,  80,  65,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, WATER
+	db ROCK, WATER ; type
 	db 45 ; catch rate
 	db 201 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 30 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kabutops/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/kadabra.asm
+++ b/data/pokemon/base_stats/kadabra.asm
@@ -3,20 +3,19 @@
 	db  40,  35,  30, 105, 120,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 100 ; catch rate
 	db 145 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kadabra/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/kakuna.asm
+++ b/data/pokemon/base_stats/kakuna.asm
@@ -3,20 +3,19 @@
 	db  45,  25,  50,  35,  25,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 120 ; catch rate
 	db 71 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kakuna/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/kangaskhan.asm
+++ b/data/pokemon/base_stats/kangaskhan.asm
@@ -3,20 +3,19 @@
 	db 105,  95,  80,  90,  40,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 175 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kangaskhan/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/kingdra.asm
+++ b/data/pokemon/base_stats/kingdra.asm
@@ -3,20 +3,19 @@
 	db  75,  95,  95,  85,  95,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, DRAGON
+	db WATER, DRAGON ; type
 	db 45 ; catch rate
 	db 207 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kingdra/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, DRAGONBREATH, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/kingler.asm
+++ b/data/pokemon/base_stats/kingler.asm
@@ -3,20 +3,19 @@
 	db  55, 130, 115,  75,  50,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 60 ; catch rate
 	db 206 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/kingler/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, SURF, STRENGTH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/koffing.asm
+++ b/data/pokemon/base_stats/koffing.asm
@@ -3,20 +3,19 @@
 	db  40,  65,  95,  35,  60,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 190 ; catch rate
 	db 114 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/koffing/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, REST, ATTRACT, THIEF, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/krabby.asm
+++ b/data/pokemon/base_stats/krabby.asm
@@ -3,20 +3,19 @@
 	db  30, 105,  90,  50,  25,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 225 ; catch rate
 	db 115 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/krabby/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, SURF, STRENGTH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/lanturn.asm
+++ b/data/pokemon/base_stats/lanturn.asm
@@ -3,20 +3,19 @@
 	db 125,  58,  58,  67,  76,  76
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ELECTRIC
+	db WATER, ELECTRIC ; type
 	db 75 ; catch rate
 	db 156 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/lanturn/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FISH, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, SURF, FLASH, WHIRLPOOL, WATERFALL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/lapras.asm
+++ b/data/pokemon/base_stats/lapras.asm
@@ -3,20 +3,19 @@
 	db 130,  85,  80,  60,  85,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, ICE
+	db WATER, ICE ; type
 	db 45 ; catch rate
 	db 219 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/lapras/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, THUNDER, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DREAM_EATER, REST, ATTRACT, NIGHTMARE, SURF, STRENGTH, WHIRLPOOL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/larvitar.asm
+++ b/data/pokemon/base_stats/larvitar.asm
@@ -3,20 +3,19 @@
 	db  50,  64,  50,  41,  45,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 45 ; catch rate
 	db 67 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/larvitar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DETECT, REST, ATTRACT
 	; end
--- a/data/pokemon/base_stats/ledian.asm
+++ b/data/pokemon/base_stats/ledian.asm
@@ -3,20 +3,19 @@
 	db  55,  35,  50,  85,  55, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FLYING
+	db BUG, FLYING ; type
 	db 90 ; catch rate
 	db 134 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ledian/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, THUNDERPUNCH, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/ledyba.asm
+++ b/data/pokemon/base_stats/ledyba.asm
@@ -3,20 +3,19 @@
 	db  40,  20,  30,  55,  40,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FLYING
+	db BUG, FLYING ; type
 	db 255 ; catch rate
 	db 54 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ledyba/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, THUNDERPUNCH, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/lickitung.asm
+++ b/data/pokemon/base_stats/lickitung.asm
@@ -3,20 +3,19 @@
 	db  90,  55,  75,  30,  60,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 127 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/lickitung/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, CUT, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/lugia.asm
+++ b/data/pokemon/base_stats/lugia.asm
@@ -3,20 +3,19 @@
 	db 106,  90, 130, 110,  90, 154
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, FLYING
+	db PSYCHIC, FLYING ; type
 	db 3 ; catch rate
 	db 220 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 120 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/lugia/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, THUNDER, EARTHQUAKE, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DREAM_EATER, DETECT, REST, STEEL_WING, NIGHTMARE, FLY, SURF, STRENGTH, WHIRLPOOL, WATERFALL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/machamp.asm
+++ b/data/pokemon/base_stats/machamp.asm
@@ -3,20 +3,19 @@
 	db  90, 130,  80,  55,  65,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 45 ; catch rate
 	db 193 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/machamp/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/machoke.asm
+++ b/data/pokemon/base_stats/machoke.asm
@@ -3,20 +3,19 @@
 	db  80, 100,  70,  45,  50,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 90 ; catch rate
 	db 146 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/machoke/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/machop.asm
+++ b/data/pokemon/base_stats/machop.asm
@@ -3,20 +3,19 @@
 	db  70,  80,  50,  35,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 180 ; catch rate
 	db 88 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/machop/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/magby.asm
+++ b/data/pokemon/base_stats/magby.asm
@@ -3,20 +3,19 @@
 	db  45,  75,  37,  83,  70,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 117 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magby/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/magcargo.asm
+++ b/data/pokemon/base_stats/magcargo.asm
@@ -3,20 +3,19 @@
 	db  50,  50, 120,  30,  80,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, ROCK
+	db FIRE, ROCK ; type
 	db 75 ; catch rate
 	db 154 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magcargo/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, REST, ATTRACT, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/magikarp.asm
+++ b/data/pokemon/base_stats/magikarp.asm
@@ -3,20 +3,19 @@
 	db  20,  10,  55,  80,  15,  20
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 255 ; catch rate
 	db 20 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 5 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magikarp/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FISH, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/magmar.asm
+++ b/data/pokemon/base_stats/magmar.asm
@@ -3,20 +3,19 @@
 	db  65,  95,  57,  93, 100,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 167 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F25 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F25 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magmar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/magnemite.asm
+++ b/data/pokemon/base_stats/magnemite.asm
@@ -3,20 +3,19 @@
 	db  25,  35,  70,  45,  95,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, STEEL
+	db ELECTRIC, STEEL ; type
 	db 190 ; catch rate
 	db 89 ; base exp
-	db NO_ITEM ; item 1
-	db METAL_COAT ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, METAL_COAT; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magnemite/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/magneton.asm
+++ b/data/pokemon/base_stats/magneton.asm
@@ -3,20 +3,19 @@
 	db  50,  60,  95,  70, 120,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, STEEL
+	db ELECTRIC, STEEL ; type
 	db 60 ; catch rate
 	db 161 ; base exp
-	db NO_ITEM ; item 1
-	db METAL_COAT ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, METAL_COAT; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/magneton/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/mankey.asm
+++ b/data/pokemon/base_stats/mankey.asm
@@ -3,20 +3,19 @@
 	db  40,  80,  35,  70,  35,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 190 ; catch rate
 	db 74 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mankey/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/mantine.asm
+++ b/data/pokemon/base_stats/mantine.asm
@@ -3,20 +3,19 @@
 	db  65,  40,  70,  70,  80, 140
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, FLYING
+	db WATER, FLYING ; type
 	db 25 ; catch rate
 	db 168 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mantine/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AMPHIBIAN, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/mareep.asm
+++ b/data/pokemon/base_stats/mareep.asm
@@ -3,20 +3,19 @@
 	db  55,  40,  40,  35,  65,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 235 ; catch rate
 	db 59 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mareep/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/marill.asm
+++ b/data/pokemon/base_stats/marill.asm
@@ -3,20 +3,19 @@
 	db  70,  20,  50,  40,  20,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 190 ; catch rate
 	db 58 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/marill/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AMPHIBIAN, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/marowak.asm
+++ b/data/pokemon/base_stats/marowak.asm
@@ -3,20 +3,19 @@
 	db  60,  80, 110,  45,  50,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 75 ; catch rate
 	db 124 ; base exp
-	db NO_ITEM ; item 1
-	db THICK_CLUB ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, THICK_CLUB; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/marowak/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/meganium.asm
+++ b/data/pokemon/base_stats/meganium.asm
@@ -3,20 +3,19 @@
 	db  80,  82, 100,  80,  83, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 45 ; catch rate
 	db 208 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/meganium/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, FURY_CUTTER, CUT, STRENGTH, FLASH
 	; end
--- a/data/pokemon/base_stats/meowth.asm
+++ b/data/pokemon/base_stats/meowth.asm
@@ -3,20 +3,19 @@
 	db  40,  45,  35,  90,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 255 ; catch rate
 	db 69 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/meowth/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/metapod.asm
+++ b/data/pokemon/base_stats/metapod.asm
@@ -3,20 +3,19 @@
 	db  50,  20,  55,  30,  25,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, BUG
+	db BUG, BUG ; type
 	db 120 ; catch rate
 	db 72 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/metapod/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/mew.asm
+++ b/data/pokemon/base_stats/mew.asm
@@ -3,20 +3,19 @@
 	db 100, 100, 100, 100, 100, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 45 ; catch rate
 	db 64 ; base exp
-	db NO_ITEM ; item 1
-	db MIRACLEBERRY ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, MIRACLEBERRY; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 120 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mew/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, DRAGONBREATH, THUNDER, EARTHQUAKE, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SANDSTORM, FIRE_BLAST, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FIRE_PUNCH, FURY_CUTTER, NIGHTMARE, CUT, FLY, SURF, STRENGTH, FLASH, WHIRLPOOL, WATERFALL, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/mewtwo.asm
+++ b/data/pokemon/base_stats/mewtwo.asm
@@ -3,20 +3,19 @@
 	db 106, 110,  90, 130, 154,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 3 ; catch rate
 	db 220 ; base exp
-	db NO_ITEM ; item 1
-	db BERSERK_GENE ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, BERSERK_GENE; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 120 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mewtwo/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, THUNDERPUNCH, DREAM_EATER, DETECT, REST, FIRE_PUNCH, NIGHTMARE, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/miltank.asm
+++ b/data/pokemon/base_stats/miltank.asm
@@ -3,20 +3,19 @@
 	db  95,  80, 105, 100,  40,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 200 ; base exp
-	db MOOMOO_MILK ; item 1
-	db MOOMOO_MILK ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db MOOMOO_MILK, MOOMOO_MILK; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/miltank/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, SURF, STRENGTH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/misdreavus.asm
+++ b/data/pokemon/base_stats/misdreavus.asm
@@ -3,20 +3,19 @@
 	db  60,  60,  60,  85,  85,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db GHOST, GHOST
+	db GHOST, GHOST ; type
 	db 45 ; catch rate
 	db 147 ; base exp
-	db NO_ITEM ; item 1
-	db SPELL_TAG ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, SPELL_TAG; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/misdreavus/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/moltres.asm
+++ b/data/pokemon/base_stats/moltres.asm
@@ -3,20 +3,19 @@
 	db  90, 100,  90,  90, 125,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FLYING
+	db FIRE, FLYING ; type
 	db 3 ; catch rate
 	db 217 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/moltres/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, SWIFT, DETECT, REST, STEEL_WING, FLY, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/mr__mime.asm
+++ b/data/pokemon/base_stats/mr__mime.asm
@@ -3,20 +3,19 @@
 	db  40,  45,  65,  90, 100, 120
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 45 ; catch rate
 	db 136 ; base exp
-	db NO_ITEM ; item 1
-	db MYSTERYBERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, MYSTERYBERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/mr__mime/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn HUMANSHAPE, HUMANSHAPE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, SOLARBEAM, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, THUNDERPUNCH, DREAM_EATER, REST, ATTRACT, THIEF, FIRE_PUNCH, NIGHTMARE, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/muk.asm
+++ b/data/pokemon/base_stats/muk.asm
@@ -3,20 +3,19 @@
 	db 105, 105,  75,  50,  65, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 75 ; catch rate
 	db 157 ; base exp
-	db NO_ITEM ; item 1
-	db NUGGET ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NUGGET; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/muk/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, CURSE, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, THUNDERPUNCH, REST, ATTRACT, THIEF, FIRE_PUNCH, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/murkrow.asm
+++ b/data/pokemon/base_stats/murkrow.asm
@@ -3,20 +3,19 @@
 	db  60,  85,  42,  91,  85,  42
 	;   hp  atk  def  spd  sat  sdf
 
-	db DARK, FLYING
+	db DARK, FLYING ; type
 	db 30 ; catch rate
 	db 107 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/murkrow/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, STEEL_WING, NIGHTMARE, FLY
 	; end
--- a/data/pokemon/base_stats/natu.asm
+++ b/data/pokemon/base_stats/natu.asm
@@ -3,20 +3,19 @@
 	db  40,  50,  45,  70,  70,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, FLYING
+	db PSYCHIC, FLYING ; type
 	db 190 ; catch rate
 	db 73 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/natu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/nidoking.asm
+++ b/data/pokemon/base_stats/nidoking.asm
@@ -3,20 +3,19 @@
 	db  81,  92,  77,  85,  85,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, GROUND
+	db POISON, GROUND ; type
 	db 45 ; catch rate
 	db 195 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidoking/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/nidoqueen.asm
+++ b/data/pokemon/base_stats/nidoqueen.asm
@@ -3,20 +3,19 @@
 	db  90,  82,  87,  76,  75,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, GROUND
+	db POISON, GROUND ; type
 	db 45 ; catch rate
 	db 194 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidoqueen/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/nidoran_f.asm
+++ b/data/pokemon/base_stats/nidoran_f.asm
@@ -3,20 +3,19 @@
 	db  55,  47,  52,  41,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 235 ; catch rate
 	db 59 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidoran_f/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/nidoran_m.asm
+++ b/data/pokemon/base_stats/nidoran_m.asm
@@ -3,20 +3,19 @@
 	db  46,  57,  40,  50,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 235 ; catch rate
 	db 60 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidoran_m/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/nidorina.asm
+++ b/data/pokemon/base_stats/nidorina.asm
@@ -3,20 +3,19 @@
 	db  70,  62,  67,  56,  55,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 120 ; catch rate
 	db 117 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidorina/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, STRENGTH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/nidorino.asm
+++ b/data/pokemon/base_stats/nidorino.asm
@@ -3,20 +3,19 @@
 	db  61,  72,  57,  65,  55,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 120 ; catch rate
 	db 118 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/nidorino/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, STRENGTH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/ninetales.asm
+++ b/data/pokemon/base_stats/ninetales.asm
@@ -3,20 +3,19 @@
 	db  73,  76,  75, 100,  81, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 75 ; catch rate
 	db 178 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ninetales/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/noctowl.asm
+++ b/data/pokemon/base_stats/noctowl.asm
@@ -3,20 +3,19 @@
 	db 100,  50,  50,  70,  76,  96
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 90 ; catch rate
 	db 162 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/noctowl/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, STEEL_WING, NIGHTMARE, FLY, FLASH
 	; end
--- a/data/pokemon/base_stats/octillery.asm
+++ b/data/pokemon/base_stats/octillery.asm
@@ -3,20 +3,19 @@
 	db  75, 105,  75,  45, 105,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 75 ; catch rate
 	db 164 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/octillery/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, THIEF, SURF, WHIRLPOOL, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/oddish.asm
+++ b/data/pokemon/base_stats/oddish.asm
@@ -3,20 +3,19 @@
 	db  45,  50,  55,  30,  75,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 255 ; catch rate
 	db 78 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/oddish/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/omanyte.asm
+++ b/data/pokemon/base_stats/omanyte.asm
@@ -3,20 +3,19 @@
 	db  35,  40, 100,  35,  90,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, WATER
+	db ROCK, WATER ; type
 	db 45 ; catch rate
 	db 120 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 30 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/omanyte/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, REST, ATTRACT, THIEF, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/omastar.asm
+++ b/data/pokemon/base_stats/omastar.asm
@@ -3,20 +3,19 @@
 	db  70,  60, 125,  55, 115,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, WATER
+	db ROCK, WATER ; type
 	db 45 ; catch rate
 	db 199 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 30 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/omastar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, REST, ATTRACT, THIEF, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/onix.asm
+++ b/data/pokemon/base_stats/onix.asm
@@ -3,20 +3,19 @@
 	db  35,  45, 160,  70,  30,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 45 ; catch rate
 	db 108 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/onix/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, REST, ATTRACT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/paras.asm
+++ b/data/pokemon/base_stats/paras.asm
@@ -3,20 +3,19 @@
 	db  35,  70,  55,  25,  45,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, GRASS
+	db BUG, GRASS ; type
 	db 190 ; catch rate
 	db 70 ; base exp
-	db TINYMUSHROOM ; item 1
-	db BIG_MUSHROOM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db TINYMUSHROOM, BIG_MUSHROOM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/paras/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/parasect.asm
+++ b/data/pokemon/base_stats/parasect.asm
@@ -3,20 +3,19 @@
 	db  60,  95,  80,  30,  60,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, GRASS
+	db BUG, GRASS ; type
 	db 75 ; catch rate
 	db 128 ; base exp
-	db TINYMUSHROOM ; item 1
-	db BIG_MUSHROOM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db TINYMUSHROOM, BIG_MUSHROOM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/parasect/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/persian.asm
+++ b/data/pokemon/base_stats/persian.asm
@@ -3,20 +3,19 @@
 	db  65,  70,  60, 115,  65,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 90 ; catch rate
 	db 148 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/persian/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/phanpy.asm
+++ b/data/pokemon/base_stats/phanpy.asm
@@ -3,20 +3,19 @@
 	db  90,  60,  60,  40,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 120 ; catch rate
 	db 124 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/phanpy/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/pichu.asm
+++ b/data/pokemon/base_stats/pichu.asm
@@ -3,20 +3,19 @@
 	db  20,  40,  15,  60,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 190 ; catch rate
 	db 42 ; base exp
-	db NO_ITEM ; item 1
-	db BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pichu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DETECT, REST, ATTRACT, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/pidgeot.asm
+++ b/data/pokemon/base_stats/pidgeot.asm
@@ -3,20 +3,19 @@
 	db  83,  80,  75,  91,  70,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 45 ; catch rate
 	db 172 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pidgeot/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/pidgeotto.asm
+++ b/data/pokemon/base_stats/pidgeotto.asm
@@ -3,20 +3,19 @@
 	db  63,  60,  55,  71,  50,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 120 ; catch rate
 	db 113 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pidgeotto/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/pidgey.asm
+++ b/data/pokemon/base_stats/pidgey.asm
@@ -3,20 +3,19 @@
 	db  40,  45,  40,  56,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 255 ; catch rate
 	db 55 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pidgey/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/pikachu.asm
+++ b/data/pokemon/base_stats/pikachu.asm
@@ -3,20 +3,19 @@
 	db  35,  55,  30,  90,  50,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 190 ; catch rate
 	db 82 ; base exp
-	db NO_ITEM ; item 1
-	db BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pikachu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/piloswine.asm
+++ b/data/pokemon/base_stats/piloswine.asm
@@ -3,20 +3,19 @@
 	db 100, 100,  80,  50,  60,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, GROUND
+	db ICE, GROUND ; type
 	db 75 ; catch rate
 	db 160 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/piloswine/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, STRENGTH, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/pineco.asm
+++ b/data/pokemon/base_stats/pineco.asm
@@ -3,20 +3,19 @@
 	db  50,  65,  90,  15,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, BUG
+	db BUG, BUG ; type
 	db 190 ; catch rate
 	db 60 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pineco/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/pinsir.asm
+++ b/data/pokemon/base_stats/pinsir.asm
@@ -3,20 +3,19 @@
 	db  65, 125, 100,  85,  55,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, BUG
+	db BUG, BUG ; type
 	db 45 ; catch rate
 	db 200 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pinsir/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/politoed.asm
+++ b/data/pokemon/base_stats/politoed.asm
@@ -3,20 +3,19 @@
 	db  90,  75,  75,  70,  90, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 185 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/politoed/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMPHIBIAN, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/poliwag.asm
+++ b/data/pokemon/base_stats/poliwag.asm
@@ -3,20 +3,19 @@
 	db  40,  50,  40,  90,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 255 ; catch rate
 	db 77 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/poliwag/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMPHIBIAN, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, THIEF, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/poliwhirl.asm
+++ b/data/pokemon/base_stats/poliwhirl.asm
@@ -3,20 +3,19 @@
 	db  65,  65,  65,  90,  50,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 120 ; catch rate
 	db 131 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/poliwhirl/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMPHIBIAN, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/poliwrath.asm
+++ b/data/pokemon/base_stats/poliwrath.asm
@@ -3,20 +3,19 @@
 	db  90,  85,  95,  70,  70,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, FIGHTING
+	db WATER, FIGHTING ; type
 	db 45 ; catch rate
 	db 185 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/poliwrath/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn AMPHIBIAN, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/ponyta.asm
+++ b/data/pokemon/base_stats/ponyta.asm
@@ -3,20 +3,19 @@
 	db  50,  85,  55,  90,  65,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 190 ; catch rate
 	db 152 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ponyta/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/porygon.asm
+++ b/data/pokemon/base_stats/porygon.asm
@@ -3,20 +3,19 @@
 	db  65,  60,  70,  40,  85,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 130 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/porygon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, REST, THIEF, NIGHTMARE, FLASH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/porygon2.asm
+++ b/data/pokemon/base_stats/porygon2.asm
@@ -3,20 +3,19 @@
 	db  85,  80,  90,  60, 105,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 180 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/porygon2/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DREAM_EATER, REST, THIEF, NIGHTMARE, FLASH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/primeape.asm
+++ b/data/pokemon/base_stats/primeape.asm
@@ -3,20 +3,19 @@
 	db  65, 105,  60,  95,  60,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 75 ; catch rate
 	db 149 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/primeape/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/psyduck.asm
+++ b/data/pokemon/base_stats/psyduck.asm
@@ -3,20 +3,19 @@
 	db  50,  52,  48,  55,  65,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 190 ; catch rate
 	db 80 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/psyduck/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, STRENGTH, FLASH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/pupitar.asm
+++ b/data/pokemon/base_stats/pupitar.asm
@@ -3,20 +3,19 @@
 	db  70,  84,  70,  51,  65,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, GROUND
+	db ROCK, GROUND ; type
 	db 45 ; catch rate
 	db 144 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/pupitar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DETECT, REST, ATTRACT
 	; end
--- a/data/pokemon/base_stats/quagsire.asm
+++ b/data/pokemon/base_stats/quagsire.asm
@@ -3,20 +3,19 @@
 	db  95,  85,  85,  35,  65,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, GROUND
+	db WATER, GROUND ; type
 	db 90 ; catch rate
 	db 137 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/quagsire/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, FLASH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/quilava.asm
+++ b/data/pokemon/base_stats/quilava.asm
@@ -3,20 +3,19 @@
 	db  58,  64,  58,  80,  80,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 142 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/quilava/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, DETECT, REST, ATTRACT, FURY_CUTTER, CUT, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/qwilfish.asm
+++ b/data/pokemon/base_stats/qwilfish.asm
@@ -3,20 +3,19 @@
 	db  65,  95,  75,  85,  55,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, POISON
+	db WATER, POISON ; type
 	db 45 ; catch rate
 	db 100 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/qwilfish/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FISH, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SWIFT, DEFENSE_CURL, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/raichu.asm
+++ b/data/pokemon/base_stats/raichu.asm
@@ -3,20 +3,19 @@
 	db  60,  90,  55, 100,  90,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 75 ; catch rate
 	db 122 ; base exp
-	db NO_ITEM ; item 1
-	db BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/raichu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/raikou.asm
+++ b/data/pokemon/base_stats/raikou.asm
@@ -3,20 +3,19 @@
 	db  90,  85,  75, 115, 115, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 3 ; catch rate
 	db 216 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/raikou/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, CUT, STRENGTH, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/rapidash.asm
+++ b/data/pokemon/base_stats/rapidash.asm
@@ -3,20 +3,19 @@
 	db  65, 100,  70, 105,  80,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 60 ; catch rate
 	db 192 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/rapidash/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/raticate.asm
+++ b/data/pokemon/base_stats/raticate.asm
@@ -3,20 +3,19 @@
 	db  55,  81,  60,  97,  50,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 90 ; catch rate
 	db 116 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/raticate/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DIG, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, THIEF, CUT, STRENGTH, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/rattata.asm
+++ b/data/pokemon/base_stats/rattata.asm
@@ -3,20 +3,19 @@
 	db  30,  56,  35,  72,  25,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 255 ; catch rate
 	db 57 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/rattata/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, RETURN, DIG, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, THIEF
 	; end
--- a/data/pokemon/base_stats/remoraid.asm
+++ b/data/pokemon/base_stats/remoraid.asm
@@ -3,20 +3,19 @@
 	db  35,  65,  35,  65,  65,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 190 ; catch rate
 	db 78 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/remoraid/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, REST, ATTRACT, THIEF, SURF, WHIRLPOOL, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/rhydon.asm
+++ b/data/pokemon/base_stats/rhydon.asm
@@ -3,20 +3,19 @@
 	db 105, 130, 120,  40,  45,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, ROCK
+	db GROUND, ROCK ; type
 	db 60 ; catch rate
 	db 204 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/rhydon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/rhyhorn.asm
+++ b/data/pokemon/base_stats/rhyhorn.asm
@@ -3,20 +3,19 @@
 	db  80,  85,  95,  25,  30,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, ROCK
+	db GROUND, ROCK ; type
 	db 120 ; catch rate
 	db 135 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/rhyhorn/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, REST, ATTRACT, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/sandshrew.asm
+++ b/data/pokemon/base_stats/sandshrew.asm
@@ -3,20 +3,19 @@
 	db  50,  75,  85,  40,  20,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 255 ; catch rate
 	db 93 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sandshrew/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/sandslash.asm
+++ b/data/pokemon/base_stats/sandslash.asm
@@ -3,20 +3,19 @@
 	db  75, 100, 110,  65,  45,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db GROUND, GROUND
+	db GROUND, GROUND ; type
 	db 90 ; catch rate
 	db 163 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sandslash/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DEFENSE_CURL, DETECT, REST, ATTRACT, THIEF, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/scizor.asm
+++ b/data/pokemon/base_stats/scizor.asm
@@ -3,20 +3,19 @@
 	db  70, 130, 100,  65,  55,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, STEEL
+	db BUG, STEEL ; type
 	db 25 ; catch rate
 	db 200 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/scizor/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/scyther.asm
+++ b/data/pokemon/base_stats/scyther.asm
@@ -3,20 +3,19 @@
 	db  70, 110,  80, 105,  55,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FLYING
+	db BUG, FLYING ; type
 	db 45 ; catch rate
 	db 187 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/scyther/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FURY_CUTTER, CUT
 	; end
--- a/data/pokemon/base_stats/seadra.asm
+++ b/data/pokemon/base_stats/seadra.asm
@@ -3,20 +3,19 @@
 	db  55,  65,  95,  85,  95,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 75 ; catch rate
 	db 155 ; base exp
-	db NO_ITEM ; item 1
-	db DRAGON_SCALE ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, DRAGON_SCALE; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/seadra/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, REPTILE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, DRAGONBREATH, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/seaking.asm
+++ b/data/pokemon/base_stats/seaking.asm
@@ -3,20 +3,19 @@
 	db  80,  92,  65,  68,  65,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 60 ; catch rate
 	db 170 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/seaking/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FISH, FISH ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/seel.asm
+++ b/data/pokemon/base_stats/seel.asm
@@ -3,20 +3,19 @@
 	db  65,  45,  55,  45,  45,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 190 ; catch rate
 	db 100 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/seel/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/sentret.asm
+++ b/data/pokemon/base_stats/sentret.asm
@@ -3,20 +3,19 @@
 	db  35,  46,  34,  20,  35,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 255 ; catch rate
 	db 57 ; base exp
-	db NO_ITEM ; item 1
-	db BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sentret/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, CUT, SURF
 	; end
--- a/data/pokemon/base_stats/shellder.asm
+++ b/data/pokemon/base_stats/shellder.asm
@@ -3,20 +3,19 @@
 	db  30,  65, 100,  40,  45,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 190 ; catch rate
 	db 97 ; base exp
-	db PEARL ; item 1
-	db BIG_PEARL ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db PEARL, BIG_PEARL; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/shellder/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/shuckle.asm
+++ b/data/pokemon/base_stats/shuckle.asm
@@ -3,20 +3,19 @@
 	db  20,  10, 230,  05,  10, 230
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, ROCK
+	db BUG, ROCK ; type
 	db 190 ; catch rate
 	db 80 ; base exp
-	db BERRY ; item 1
-	db BERRY ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db BERRY, BERRY; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/shuckle/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, STRENGTH, FLASH
 	; end
--- a/data/pokemon/base_stats/skarmory.asm
+++ b/data/pokemon/base_stats/skarmory.asm
@@ -3,20 +3,19 @@
 	db  65,  80, 140,  70,  40,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db STEEL, FLYING
+	db STEEL, FLYING ; type
 	db 25 ; catch rate
 	db 168 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/skarmory/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, CUT, FLY
 	; end
--- a/data/pokemon/base_stats/skiploom.asm
+++ b/data/pokemon/base_stats/skiploom.asm
@@ -3,20 +3,19 @@
 	db  55,  45,  50,  80,  45,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, FLYING
+	db GRASS, FLYING ; type
 	db 120 ; catch rate
 	db 136 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/skiploom/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FAIRY, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FLASH
 	; end
--- a/data/pokemon/base_stats/slowbro.asm
+++ b/data/pokemon/base_stats/slowbro.asm
@@ -3,20 +3,19 @@
 	db  95,  75, 110,  30, 100,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, PSYCHIC
+	db WATER, PSYCHIC ; type
 	db 75 ; catch rate
 	db 164 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/slowbro/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DREAM_EATER, REST, ATTRACT, FURY_CUTTER, NIGHTMARE, SURF, STRENGTH, FLASH, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/slowking.asm
+++ b/data/pokemon/base_stats/slowking.asm
@@ -3,20 +3,19 @@
 	db  95,  75,  80,  30, 100, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, PSYCHIC
+	db WATER, PSYCHIC ; type
 	db 70 ; catch rate
 	db 164 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/slowking/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DREAM_EATER, REST, ATTRACT, FURY_CUTTER, NIGHTMARE, SURF, STRENGTH, FLASH, WHIRLPOOL, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/slowpoke.asm
+++ b/data/pokemon/base_stats/slowpoke.asm
@@ -3,20 +3,19 @@
 	db  90,  65,  65,  15,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, PSYCHIC
+	db WATER, PSYCHIC ; type
 	db 190 ; catch rate
 	db 99 ; base exp
-	db NO_ITEM ; item 1
-	db KINGS_ROCK ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, KINGS_ROCK; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/slowpoke/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DREAM_EATER, REST, ATTRACT, NIGHTMARE, SURF, STRENGTH, FLASH, FLAMETHROWER, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/slugma.asm
+++ b/data/pokemon/base_stats/slugma.asm
@@ -3,20 +3,19 @@
 	db  40,  40,  40,  20,  70,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 190 ; catch rate
 	db 78 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/slugma/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/smeargle.asm
+++ b/data/pokemon/base_stats/smeargle.asm
@@ -3,20 +3,19 @@
 	db  55,  20,  35,  75,  20,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 106 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/smeargle/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/smoochum.asm
+++ b/data/pokemon/base_stats/smoochum.asm
@@ -3,20 +3,19 @@
 	db  45,  30,  15,  65,  85,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, PSYCHIC
+	db ICE, PSYCHIC ; type
 	db 45 ; catch rate
 	db 87 ; base exp
-	db ICE_BERRY ; item 1
-	db ICE_BERRY ; item 2
-	db GENDER_F100 ; gender
-	db 100 ; unknown
+	db ICE_BERRY, ICE_BERRY; items
+	db GENDER_F100 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/smoochum/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SWEET_SCENT, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DREAM_EATER, REST, ATTRACT, THIEF, NIGHTMARE, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/sneasel.asm
+++ b/data/pokemon/base_stats/sneasel.asm
@@ -3,20 +3,19 @@
 	db  55,  95,  55, 115,  35,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db DARK, ICE
+	db DARK, ICE ; type
 	db 60 ; catch rate
 	db 132 ; base exp
-	db NO_ITEM ; item 1
-	db QUICK_CLAW ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, QUICK_CLAW; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sneasel/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, FURY_CUTTER, NIGHTMARE, CUT, SURF, STRENGTH, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/snorlax.asm
+++ b/data/pokemon/base_stats/snorlax.asm
@@ -3,20 +3,19 @@
 	db 160, 110,  65,  30,  65, 110
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 25 ; catch rate
 	db 154 ; base exp
-	db LEFTOVERS ; item 1
-	db LEFTOVERS ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db LEFTOVERS, LEFTOVERS; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/snorlax/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, THUNDER, EARTHQUAKE, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, FIRE_PUNCH, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/snubbull.asm
+++ b/data/pokemon/base_stats/snubbull.asm
@@ -3,20 +3,19 @@
 	db  60,  80,  50,  30,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 190 ; catch rate
 	db 63 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/snubbull/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FIELD, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/spearow.asm
+++ b/data/pokemon/base_stats/spearow.asm
@@ -3,20 +3,19 @@
 	db  40,  60,  30,  70,  31,  31
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 255 ; catch rate
 	db 58 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/spearow/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING, FLY
 	; end
--- a/data/pokemon/base_stats/spinarak.asm
+++ b/data/pokemon/base_stats/spinarak.asm
@@ -3,20 +3,19 @@
 	db  40,  60,  40,  30,  40,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 255 ; catch rate
 	db 54 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/spinarak/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DIG, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/squirtle.asm
+++ b/data/pokemon/base_stats/squirtle.asm
@@ -3,20 +3,19 @@
 	db  44,  48,  65,  43,  50,  64
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 66 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/squirtle/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/stantler.asm
+++ b/data/pokemon/base_stats/stantler.asm
@@ -3,20 +3,19 @@
 	db  73,  95,  62,  85,  85,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 165 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/stantler/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, PSYCHIC_M, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, FLASH
 	; end
--- a/data/pokemon/base_stats/starmie.asm
+++ b/data/pokemon/base_stats/starmie.asm
@@ -3,20 +3,19 @@
 	db  60,  75,  85, 115, 100,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, PSYCHIC
+	db WATER, PSYCHIC ; type
 	db 60 ; catch rate
 	db 207 ; base exp
-	db STARDUST ; item 1
-	db STAR_PIECE ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db STARDUST, STAR_PIECE; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/starmie/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, REST, ATTRACT, NIGHTMARE, SURF, FLASH, WHIRLPOOL, WATERFALL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/staryu.asm
+++ b/data/pokemon/base_stats/staryu.asm
@@ -3,20 +3,19 @@
 	db  30,  45,  55,  85,  70,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 225 ; catch rate
 	db 106 ; base exp
-	db STARDUST ; item 1
-	db STAR_PIECE ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db STARDUST, STAR_PIECE; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/staryu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, ATTRACT, SURF, FLASH, WHIRLPOOL, WATERFALL, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/steelix.asm
+++ b/data/pokemon/base_stats/steelix.asm
@@ -3,20 +3,19 @@
 	db  75,  85, 200,  30,  55,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db STEEL, GROUND
+	db STEEL, GROUND ; type
 	db 25 ; catch rate
 	db 196 ; base exp
-	db NO_ITEM ; item 1
-	db METAL_COAT ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, METAL_COAT; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/steelix/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/sudowoodo.asm
+++ b/data/pokemon/base_stats/sudowoodo.asm
@@ -3,20 +3,19 @@
 	db  70, 100, 115,  30,  30,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, ROCK
+	db ROCK, ROCK ; type
 	db 65 ; catch rate
 	db 135 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sudowoodo/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SANDSTORM, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, THIEF, FIRE_PUNCH, STRENGTH
 	; end
--- a/data/pokemon/base_stats/suicune.asm
+++ b/data/pokemon/base_stats/suicune.asm
@@ -3,20 +3,19 @@
 	db 100,  75, 115,  85,  90, 115
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 3 ; catch rate
 	db 215 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/suicune/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, CUT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/sunflora.asm
+++ b/data/pokemon/base_stats/sunflora.asm
@@ -3,20 +3,19 @@
 	db  75,  75,  55,  30, 105,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 120 ; catch rate
 	db 146 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sunflora/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/sunkern.asm
+++ b/data/pokemon/base_stats/sunkern.asm
@@ -3,20 +3,19 @@
 	db  30,  30,  30,  30,  30,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 235 ; catch rate
 	db 52 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/sunkern/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/swinub.asm
+++ b/data/pokemon/base_stats/swinub.asm
@@ -3,20 +3,19 @@
 	db  50,  50,  40,  50,  30,  30
 	;   hp  atk  def  spd  sat  sdf
 
-	db ICE, GROUND
+	db ICE, GROUND ; type
 	db 225 ; catch rate
 	db 78 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/swinub/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, DETECT, REST, ATTRACT, STRENGTH, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/tangela.asm
+++ b/data/pokemon/base_stats/tangela.asm
@@ -3,20 +3,19 @@
 	db  65,  55, 115,  60, 100,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, GRASS
+	db GRASS, GRASS ; type
 	db 45 ; catch rate
 	db 166 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tangela/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, THIEF, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/tauros.asm
+++ b/data/pokemon/base_stats/tauros.asm
@@ -3,20 +3,19 @@
 	db  75, 100,  95, 110,  40,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 45 ; catch rate
 	db 211 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tauros/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, THUNDER, EARTHQUAKE, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, REST, ATTRACT, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/teddiursa.asm
+++ b/data/pokemon/base_stats/teddiursa.asm
@@ -3,20 +3,19 @@
 	db  60,  80,  50,  40,  50,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 120 ; catch rate
 	db 124 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/teddiursa/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/tentacool.asm
+++ b/data/pokemon/base_stats/tentacool.asm
@@ -3,20 +3,19 @@
 	db  40,  40,  35,  70,  50, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, POISON
+	db WATER, POISON ; type
 	db 190 ; catch rate
 	db 105 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tentacool/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/tentacruel.asm
+++ b/data/pokemon/base_stats/tentacruel.asm
@@ -3,20 +3,19 @@
 	db  80,  70,  65, 100,  80, 120
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, POISON
+	db WATER, POISON ; type
 	db 60 ; catch rate
 	db 205 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tentacruel/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn INVERTEBRATE, INVERTEBRATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/togepi.asm
+++ b/data/pokemon/base_stats/togepi.asm
@@ -3,20 +3,19 @@
 	db  35,  20,  65,  20,  40,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 190 ; catch rate
 	db 74 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/togepi/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, FLASH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/togetic.asm
+++ b/data/pokemon/base_stats/togetic.asm
@@ -3,20 +3,19 @@
 	db  55,  40,  85,  40,  80, 105
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, FLYING
+	db NORMAL, FLYING ; type
 	db 75 ; catch rate
 	db 114 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/togetic/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn AVIAN, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, ROCK_SMASH, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, DREAM_EATER, DETECT, REST, ATTRACT, STEEL_WING, FLY, FLASH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/totodile.asm
+++ b/data/pokemon/base_stats/totodile.asm
@@ -3,20 +3,19 @@
 	db  50,  65,  64,  43,  44,  48
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 66 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/totodile/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DETECT, REST, ATTRACT, CUT, SURF, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/typhlosion.asm
+++ b/data/pokemon/base_stats/typhlosion.asm
@@ -3,20 +3,19 @@
 	db  78,  84,  78, 100, 109,  85
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 45 ; catch rate
 	db 209 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/typhlosion/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, DEFENSE_CURL, THUNDERPUNCH, DETECT, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, CUT, STRENGTH, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/tyranitar.asm
+++ b/data/pokemon/base_stats/tyranitar.asm
@@ -3,20 +3,19 @@
 	db 100, 134, 110,  61,  95, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db ROCK, DARK
+	db ROCK, DARK ; type
 	db 45 ; catch rate
 	db 218 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tyranitar/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn MONSTER, MONSTER ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROAR, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, DRAGONBREATH, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, FIRE_BLAST, DETECT, REST, ATTRACT, FIRE_PUNCH, FURY_CUTTER, NIGHTMARE, CUT, SURF, STRENGTH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/tyrogue.asm
+++ b/data/pokemon/base_stats/tyrogue.asm
@@ -3,20 +3,19 @@
 	db  35,  35,  35,  35,  35,  35
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIGHTING, FIGHTING
+	db FIGHTING, FIGHTING ; type
 	db 75 ; catch rate
 	db 91 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F0 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F0 ; gender ratio
+	db 100 ; unknown 1
 	db 25 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/tyrogue/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STRENGTH
 	; end
--- a/data/pokemon/base_stats/umbreon.asm
+++ b/data/pokemon/base_stats/umbreon.asm
@@ -3,20 +3,19 @@
 	db  95,  65, 110,  65,  60, 130
 	;   hp  atk  def  spd  sat  sdf
 
-	db DARK, DARK
+	db DARK, DARK ; type
 	db 45 ; catch rate
 	db 197 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/umbreon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, NIGHTMARE, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/unown.asm
+++ b/data/pokemon/base_stats/unown.asm
@@ -3,20 +3,19 @@
 	db  48,  72,  48,  48,  72,  48
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 225 ; catch rate
 	db 61 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 40 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/unown_a/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/ursaring.asm
+++ b/data/pokemon/base_stats/ursaring.asm
@@ -3,20 +3,19 @@
 	db  90, 130,  75,  55,  75,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 60 ; catch rate
 	db 189 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/ursaring/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SWIFT, DEFENSE_CURL, THUNDERPUNCH, REST, ATTRACT, THIEF, FIRE_PUNCH, FURY_CUTTER, CUT, STRENGTH
 	; end
--- a/data/pokemon/base_stats/vaporeon.asm
+++ b/data/pokemon/base_stats/vaporeon.asm
@@ -3,20 +3,19 @@
 	db 130,  65,  60,  65, 110,  95
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 196 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 35 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/vaporeon/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, SURF, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/venomoth.asm
+++ b/data/pokemon/base_stats/venomoth.asm
@@ -3,20 +3,19 @@
 	db  70,  65,  60,  90,  90,  75
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 75 ; catch rate
 	db 138 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/venomoth/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SWIFT, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/venonat.asm
+++ b/data/pokemon/base_stats/venonat.asm
@@ -3,20 +3,19 @@
 	db  60,  55,  50,  45,  40,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 190 ; catch rate
 	db 75 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/venonat/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SWIFT, REST, ATTRACT, THIEF
 	; end
--- a/data/pokemon/base_stats/venusaur.asm
+++ b/data/pokemon/base_stats/venusaur.asm
@@ -3,20 +3,19 @@
 	db  80,  82,  83,  80, 100, 100
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 45 ; catch rate
 	db 208 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/venusaur/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROAR, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, FURY_CUTTER, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/victreebel.asm
+++ b/data/pokemon/base_stats/victreebel.asm
@@ -3,20 +3,19 @@
 	db  80, 105,  65,  70, 100,  60
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 45 ; catch rate
 	db 191 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/victreebel/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/vileplume.asm
+++ b/data/pokemon/base_stats/vileplume.asm
@@ -3,20 +3,19 @@
 	db  75,  80,  85,  50, 100,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 45 ; catch rate
 	db 184 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/vileplume/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/voltorb.asm
+++ b/data/pokemon/base_stats/voltorb.asm
@@ -3,20 +3,19 @@
 	db  40,  30,  50, 100,  55,  55
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, ELECTRIC
+	db ELECTRIC, ELECTRIC ; type
 	db 190 ; catch rate
 	db 103 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/voltorb/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INANIMATE, INANIMATE ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, REST, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/vulpix.asm
+++ b/data/pokemon/base_stats/vulpix.asm
@@ -3,20 +3,19 @@
 	db  38,  41,  40,  65,  50,  65
 	;   hp  atk  def  spd  sat  sdf
 
-	db FIRE, FIRE
+	db FIRE, FIRE ; type
 	db 190 ; catch rate
 	db 63 ; base exp
-	db BURNT_BERRY ; item 1
-	db BURNT_BERRY ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db BURNT_BERRY, BURNT_BERRY; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/vulpix/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn FIELD, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, FIRE_BLAST, SWIFT, REST, ATTRACT, FLAMETHROWER
 	; end
--- a/data/pokemon/base_stats/wartortle.asm
+++ b/data/pokemon/base_stats/wartortle.asm
@@ -3,20 +3,19 @@
 	db  59,  63,  80,  58,  65,  80
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, WATER
+	db WATER, WATER ; type
 	db 45 ; catch rate
 	db 143 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F12_5 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F12_5 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/wartortle/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn MONSTER, AMPHIBIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, BLIZZARD, ICY_WIND, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, DEFENSE_CURL, REST, ATTRACT, SURF, STRENGTH, WHIRLPOOL, WATERFALL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/weedle.asm
+++ b/data/pokemon/base_stats/weedle.asm
@@ -3,20 +3,19 @@
 	db  40,  35,  30,  50,  20,  20
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, POISON
+	db BUG, POISON ; type
 	db 255 ; catch rate
 	db 52 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/weedle/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/weepinbell.asm
+++ b/data/pokemon/base_stats/weepinbell.asm
@@ -3,20 +3,19 @@
 	db  65,  90,  50,  55,  85,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db GRASS, POISON
+	db GRASS, POISON ; type
 	db 120 ; catch rate
 	db 151 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/weepinbell/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_SLOW ; growth rate
 	dn PLANT, PLANT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SWEET_SCENT, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, REST, ATTRACT, CUT, FLASH
 	; end
--- a/data/pokemon/base_stats/weezing.asm
+++ b/data/pokemon/base_stats/weezing.asm
@@ -3,20 +3,19 @@
 	db  65,  90, 120,  60,  85,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, POISON
+	db POISON, POISON ; type
 	db 60 ; catch rate
 	db 173 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/weezing/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROLLOUT, TOXIC, ZAP_CANNON, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, ENDURE, FRUSTRATION, THUNDER, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, FIRE_BLAST, REST, ATTRACT, THIEF, FLAMETHROWER, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/wigglytuff.asm
+++ b/data/pokemon/base_stats/wigglytuff.asm
@@ -3,20 +3,19 @@
 	db 140,  70,  45,  45,  75,  50
 	;   hp  atk  def  spd  sat  sdf
 
-	db NORMAL, NORMAL
+	db NORMAL, NORMAL ; type
 	db 50 ; catch rate
 	db 109 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F75 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F75 ; gender ratio
+	db 100 ; unknown 1
 	db 10 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/wigglytuff/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db FAST ; growth rate
 	dn FAIRY, FAIRY ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ZAP_CANNON, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, BLIZZARD, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, SOLARBEAM, THUNDER, RETURN, PSYCHIC_M, SHADOW_BALL, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, FIRE_BLAST, DEFENSE_CURL, THUNDERPUNCH, DREAM_EATER, DETECT, REST, ATTRACT, FIRE_PUNCH, NIGHTMARE, STRENGTH, FLASH, FLAMETHROWER, THUNDERBOLT, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/wobbuffet.asm
+++ b/data/pokemon/base_stats/wobbuffet.asm
@@ -3,20 +3,19 @@
 	db 190,  33,  58,  33,  33,  58
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, PSYCHIC
+	db PSYCHIC, PSYCHIC ; type
 	db 45 ; catch rate
 	db 177 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/wobbuffet/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMORPHOUS, AMORPHOUS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm
 	; end
--- a/data/pokemon/base_stats/wooper.asm
+++ b/data/pokemon/base_stats/wooper.asm
@@ -3,20 +3,19 @@
 	db  55,  45,  45,  15,  25,  25
 	;   hp  atk  def  spd  sat  sdf
 
-	db WATER, GROUND
+	db WATER, GROUND ; type
 	db 255 ; catch rate
 	db 52 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/wooper/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AMPHIBIAN, FIELD ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm DYNAMICPUNCH, HEADBUTT, CURSE, ROLLOUT, TOXIC, ROCK_SMASH, HIDDEN_POWER, SNORE, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, IRON_TAIL, EARTHQUAKE, RETURN, DIG, MUD_SLAP, DOUBLE_TEAM, ICE_PUNCH, SWAGGER, SLEEP_TALK, SLUDGE_BOMB, SANDSTORM, DEFENSE_CURL, REST, ATTRACT, SURF, FLASH, WHIRLPOOL, ICE_BEAM
 	; end
--- a/data/pokemon/base_stats/xatu.asm
+++ b/data/pokemon/base_stats/xatu.asm
@@ -3,20 +3,19 @@
 	db  65,  75,  70,  95,  95,  70
 	;   hp  atk  def  spd  sat  sdf
 
-	db PSYCHIC, FLYING
+	db PSYCHIC, FLYING ; type
 	db 75 ; catch rate
 	db 171 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/xatu/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, PSYCH_UP, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, PSYCHIC_M, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DREAM_EATER, DETECT, REST, ATTRACT, THIEF, NIGHTMARE, FLY, FLASH
 	; end
--- a/data/pokemon/base_stats/yanma.asm
+++ b/data/pokemon/base_stats/yanma.asm
@@ -3,20 +3,19 @@
 	db  65,  65,  45,  95,  75,  45
 	;   hp  atk  def  spd  sat  sdf
 
-	db BUG, FLYING
+	db BUG, FLYING ; type
 	db 75 ; catch rate
 	db 147 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 20 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/yanma/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn INSECT, INSECT ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm HEADBUTT, CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, SOLARBEAM, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, FLASH
 	; end
--- a/data/pokemon/base_stats/zapdos.asm
+++ b/data/pokemon/base_stats/zapdos.asm
@@ -3,20 +3,19 @@
 	db  90,  90,  85, 100, 125,  90
 	;   hp  atk  def  spd  sat  sdf
 
-	db ELECTRIC, FLYING
+	db ELECTRIC, FLYING ; type
 	db 3 ; catch rate
 	db 216 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDERLESS ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDERLESS ; gender ratio
+	db 100 ; unknown 1
 	db 80 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/zapdos/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db SLOW ; growth rate
 	dn NO_EGGS, NO_EGGS ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, ROAR, TOXIC, ZAP_CANNON, ROCK_SMASH, HIDDEN_POWER, SUNNY_DAY, SNORE, HYPER_BEAM, PROTECT, RAIN_DANCE, ENDURE, FRUSTRATION, THUNDER, RETURN, MUD_SLAP, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SANDSTORM, SWIFT, DETECT, REST, STEEL_WING, FLY, FLASH, THUNDERBOLT
 	; end
--- a/data/pokemon/base_stats/zubat.asm
+++ b/data/pokemon/base_stats/zubat.asm
@@ -3,20 +3,19 @@
 	db  40,  45,  35,  55,  30,  40
 	;   hp  atk  def  spd  sat  sdf
 
-	db POISON, FLYING
+	db POISON, FLYING ; type
 	db 255 ; catch rate
 	db 54 ; base exp
-	db NO_ITEM ; item 1
-	db NO_ITEM ; item 2
-	db GENDER_F50 ; gender
-	db 100 ; unknown
+	db NO_ITEM, NO_ITEM; items
+	db GENDER_F50 ; gender ratio
+	db 100 ; unknown 1
 	db 15 ; step cycles to hatch
-	db 5 ; unknown
+	db 5 ; unknown 2
 	INCBIN "gfx/pokemon/zubat/front.dimensions"
 	db 0, 0, 0, 0 ; padding
 	db MEDIUM_FAST ; growth rate
 	dn AVIAN, AVIAN ; egg groups
 
-	; tmhm
+	; tm/hm learnset
 	tmhm CURSE, TOXIC, HIDDEN_POWER, SUNNY_DAY, SNORE, PROTECT, GIGA_DRAIN, ENDURE, FRUSTRATION, RETURN, DOUBLE_TEAM, SWAGGER, SLEEP_TALK, SWIFT, DETECT, REST, ATTRACT, THIEF, STEEL_WING
 	; end
--- a/data/pokemon/dex_entries/abra.asm
+++ b/data/pokemon/dex_entries/abra.asm
@@ -1,4 +1,3 @@
-; AbraPokedexEntry: ; 0x1830d5
 	db "PSI@" ; species name
 	dw 211, 430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It hypnotizes"
 	next "itself so that it"
 	next "can teleport away"
+
 	page "when it senses"
 	next "danger, even"
 	next "if it is asleep.@"
--- a/data/pokemon/dex_entries/aerodactyl.asm
+++ b/data/pokemon/dex_entries/aerodactyl.asm
@@ -1,4 +1,3 @@
-; AerodactylPokedexEntry: ; 0x1cc576
 	db "FOSSIL@" ; species name
 	dw 511, 1300 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In prehistoric"
 	next "times, this"
 	next "#MON flew"
+
 	page "freely and"
 	next "fearlessly through"
 	next "the skies.@"
--- a/data/pokemon/dex_entries/aipom.asm
+++ b/data/pokemon/dex_entries/aipom.asm
@@ -1,4 +1,3 @@
-; AipomPokedexEntry: ; 0x1cda11
 	db "LONG TAIL@" ; species name
 	dw 207, 250 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses its tail"
 	next "to hang on to tree"
 	next "branches. It uses"
+
 	page "its momentum to"
 	next "swing from one"
 	next "branch to another.@"
--- a/data/pokemon/dex_entries/alakazam.asm
+++ b/data/pokemon/dex_entries/alakazam.asm
@@ -1,4 +1,3 @@
-; AlakazamPokedexEntry: ; 0x1b8000
 	db "PSI@" ; species name
 	dw 411, 1060 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It has an IQ of"
 	next "5000. It calcu-"
 	next "lates many things"
+
 	page "in order to gain"
 	next "the edge in every"
 	next "battle.@"
--- a/data/pokemon/dex_entries/ampharos.asm
+++ b/data/pokemon/dex_entries/ampharos.asm
@@ -1,4 +1,3 @@
-; AmpharosPokedexEntry: ; 0x1cd626
 	db "LIGHT@" ; species name
 	dw 407, 1360 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it gets dark,"
 	next "the light from its"
 	next "bright, shiny tail"
+
 	page "can be seen from"
 	next "far away on the"
 	next "ocean's surface.@"
--- a/data/pokemon/dex_entries/arbok.asm
+++ b/data/pokemon/dex_entries/arbok.asm
@@ -1,4 +1,3 @@
-; ArbokPokedexEntry: ; 0x18203d
 	db "COBRA@" ; species name
 	dw 1106, 1430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To intimidate"
 	next "foes, it spreads"
 	next "its chest wide and"
+
 	page "makes eerie sounds"
 	next "by expelling air"
 	next "from its mouth.@"
--- a/data/pokemon/dex_entries/arcanine.asm
+++ b/data/pokemon/dex_entries/arcanine.asm
@@ -1,4 +1,3 @@
-; ArcaninePokedexEntry: ; 0x182f1c
 	db "LEGENDARY@" ; species name
 	dw 603, 3420 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "An ancient picture"
 	next "scroll shows that"
 	next "people were"
+
 	page "attracted to its"
 	next "movement as it ran"
 	next "through prairies.@"
--- a/data/pokemon/dex_entries/ariados.asm
+++ b/data/pokemon/dex_entries/ariados.asm
@@ -1,4 +1,3 @@
-; AriadosPokedexEntry: ; 0x1cd083
 	db "LONG LEG@" ; species name
 	dw 307, 740 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Rather than mak-"
 	next "ing a nest in one"
 	next "specific spot, it"
+
 	page "wanders in search"
 	next "of food after"
 	next "darkness falls.@"
--- a/data/pokemon/dex_entries/articuno.asm
+++ b/data/pokemon/dex_entries/articuno.asm
@@ -1,4 +1,3 @@
-; ArticunoPokedexEntry: ; 0x1cc632
 	db "FREEZE@" ; species name
 	dw 507, 1220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Legendary bird"
 	next "#MON. As it"
 	next "flies through the"
+
 	page "sky, it cools the"
 	next "air, causing snow"
 	next "to fall.@"
--- a/data/pokemon/dex_entries/azumarill.asm
+++ b/data/pokemon/dex_entries/azumarill.asm
@@ -1,4 +1,3 @@
-; AzumarillPokedexEntry: ; 0x1cd771
 	db "AQUARABBIT@" ; species name
 	dw 207, 630 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The bubble-like"
 	next "pattern on its"
 	next "stomach helps it"
+
 	page "camouflage itself"
 	next "when it's in the"
 	next "water.@"
--- a/data/pokemon/dex_entries/bayleef.asm
+++ b/data/pokemon/dex_entries/bayleef.asm
@@ -1,4 +1,3 @@
-; BayleefPokedexEntry: ; 0x1cc9e9
 	db "LEAF@" ; species name
 	dw 311, 350 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The scent that"
 	next "wafts from the"
 	next "leaves on its neck"
+
 	page "causes anyone who"
 	next "smells it to"
 	next "become energetic.@"
--- a/data/pokemon/dex_entries/beedrill.asm
+++ b/data/pokemon/dex_entries/beedrill.asm
@@ -1,4 +1,3 @@
-; BeedrillPokedexEntry: ; 0x181c8a
 	db "POISON BEE@" ; species name
 	dw 303, 650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses sharp,"
 	next "poisonous stings"
 	next "to defeat prey,"
+
 	page "then takes the"
 	next "victim back to its"
 	next "nest for food.@"
--- a/data/pokemon/dex_entries/bellossom.asm
+++ b/data/pokemon/dex_entries/bellossom.asm
@@ -1,4 +1,3 @@
-; BellossomPokedexEntry: ; 0x1cd69a
 	db "FLOWER@" ; species name
 	dw 104, 130 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When these dance"
 	next "together, their"
 	next "petals rub against"
+
 	page "each other,"
 	next "making pretty,"
 	next "relaxing sounds.@"
--- a/data/pokemon/dex_entries/bellsprout.asm
+++ b/data/pokemon/dex_entries/bellsprout.asm
@@ -1,4 +1,3 @@
-; BellsproutPokedexEntry: ; 0x1b81a1
 	db "FLOWER@" ; species name
 	dw 204, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If it notices"
 	next "anything that"
 	next "moves, it"
+
 	page "immediately flings"
 	next "its vine at the"
 	next "object.@"
--- a/data/pokemon/dex_entries/blastoise.asm
+++ b/data/pokemon/dex_entries/blastoise.asm
@@ -1,4 +1,3 @@
-; BlastoisePokedexEntry: ; 0x1819f9
 	db "SHELLFISH@" ; species name
 	dw 503, 1890 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It firmly plants"
 	next "its feet on the"
 	next "ground before"
+
 	page "shooting water"
 	next "from the jets on"
 	next "its back.@"
--- a/data/pokemon/dex_entries/blissey.asm
+++ b/data/pokemon/dex_entries/blissey.asm
@@ -1,4 +1,3 @@
-; BlisseyPokedexEntry: ; 0x1d14f7
 	db "HAPPINESS@" ; species name
 	dw 411, 1030 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Biting into one"
 	next "of the delicious"
 	next "eggs that BLISSEY"
+
 	page "provides will make"
 	next "everyone around"
 	next "smile with joy.@"
--- a/data/pokemon/dex_entries/bulbasaur.asm
+++ b/data/pokemon/dex_entries/bulbasaur.asm
@@ -1,4 +1,3 @@
-; BulbasaurPokedexEntry: ; 0x181695
 	db "SEED@" ; species name
 	dw 204, 150 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "While it is young,"
 	next "it uses the"
 	next "nutrients that are"
+
 	page "stored in the"
 	next "seeds on its back"
 	next "in order to grow.@"
--- a/data/pokemon/dex_entries/butterfree.asm
+++ b/data/pokemon/dex_entries/butterfree.asm
@@ -1,4 +1,3 @@
-; ButterfreePokedexEntry: ; 0x181b45
 	db "BUTTERFLY@" ; species name
 	dw 307, 710 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It flits from"
 	next "flower to flower,"
 	next "collecting honey."
+
 	page "It can even"
 	next "identify distant"
 	next "flowers in bloom.@"
--- a/data/pokemon/dex_entries/caterpie.asm
+++ b/data/pokemon/dex_entries/caterpie.asm
@@ -1,4 +1,3 @@
-; CaterpiePokedexEntry: ; 0x181a60
 	db "WORM@" ; species name
 	dw 100, 60 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It crawls into"
 	next "foliage where it"
 	next "camouflages itself"
+
 	page "among leaves that"
 	next "are the same color"
 	next "as its body.@"
--- a/data/pokemon/dex_entries/celebi.asm
+++ b/data/pokemon/dex_entries/celebi.asm
@@ -1,4 +1,3 @@
-; CelebiPokedexEntry: ; 0x1d18cc
 	db "TIMETRAVEL@" ; species name
 	dw 200, 110 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Revered as a"
 	next "guardian of the"
 	next "forest, CELEBI"
+
 	page "appears wherever"
 	next "beautiful forests"
 	next "exist.@"
--- a/data/pokemon/dex_entries/chansey.asm
+++ b/data/pokemon/dex_entries/chansey.asm
@@ -1,4 +1,3 @@
-; ChanseyPokedexEntry: ; 0x1b942e
 	db "EGG@" ; species name
 	dw 307, 760 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "People try to"
 	next "catch it for its"
 	next "extremely"
+
 	page "nutritious eggs,"
 	next "but it rarely can"
 	next "be found.@"
--- a/data/pokemon/dex_entries/charizard.asm
+++ b/data/pokemon/dex_entries/charizard.asm
@@ -1,4 +1,3 @@
-; CharizardPokedexEntry: ; 0x1818b3
 	db "FLAME@" ; species name
 	dw 507, 2000 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses its wings"
 	next "to fly high. The"
 	next "temperature of its"
+
 	page "fire increases as"
 	next "it gains exper-"
 	next "ience in battle.@"
--- a/data/pokemon/dex_entries/charmander.asm
+++ b/data/pokemon/dex_entries/charmander.asm
@@ -1,4 +1,3 @@
-; CharmanderPokedexEntry: ; 0x1817db
 	db "LIZARD@" ; species name
 	dw 200, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If it's healthy,"
 	next "the flame on the"
 	next "tip of its tail"
+
 	page "will burn vigor-"
 	next "ously, even if it"
 	next "gets a bit wet.@"
--- a/data/pokemon/dex_entries/charmeleon.asm
+++ b/data/pokemon/dex_entries/charmeleon.asm
@@ -1,4 +1,3 @@
-; CharmeleonPokedexEntry: ; 0x18184a
 	db "FLAME@" ; species name
 	dw 307, 420 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If it becomes"
 	next "agitated during"
 	next "battle, it spouts"
+
 	page "intense flames,"
 	next "incinerating its"
 	next "surroundings.@"
--- a/data/pokemon/dex_entries/chikorita.asm
+++ b/data/pokemon/dex_entries/chikorita.asm
@@ -1,4 +1,3 @@
-; ChikoritaPokedexEntry: ; 0x1cc988
 	db "LEAF@" ; species name
 	dw 211, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It loves to bask"
 	next "in the sunlight."
 	next "It uses the leaf"
+
 	page "on its head to"
 	next "seek out warm"
 	next "places.@"
--- a/data/pokemon/dex_entries/chinchou.asm
+++ b/data/pokemon/dex_entries/chinchou.asm
@@ -1,4 +1,3 @@
-; ChinchouPokedexEntry: ; 0x1cd165
 	db "ANGLER@" ; species name
 	dw 108, 260 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its antennae, whi-"
 	next "ch evolved from a"
 	next "fin, have both po-"
+
 	page "sitive and neg-"
 	next "ative charges flo-"
 	next "wing through them.@"
--- a/data/pokemon/dex_entries/clefable.asm
+++ b/data/pokemon/dex_entries/clefable.asm
@@ -1,4 +1,3 @@
-; ClefablePokedexEntry: ; 0x182530
 	db "FAIRY@" ; species name
 	dw 403, 880 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Said to live in"
 	next "quiet, remote"
 	next "mountains, this"
+
 	page "type of fairy has"
 	next "a strong aversion"
 	next "to being seen.@"
--- a/data/pokemon/dex_entries/clefairy.asm
+++ b/data/pokemon/dex_entries/clefairy.asm
@@ -1,4 +1,3 @@
-; ClefairyPokedexEntry: ; 0x1824c8
 	db "FAIRY@" ; species name
 	dw 200, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Though rarely"
 	next "seen, it becomes"
 	next "easier to spot,"
+
 	page "for some reason,"
 	next "on the night of a "
 	next "full moon.@"
--- a/data/pokemon/dex_entries/cleffa.asm
+++ b/data/pokemon/dex_entries/cleffa.asm
@@ -1,4 +1,3 @@
-; CleffaPokedexEntry: ; 0x1cd2bc
 	db "STARSHAPE@" ; species name
 	dw 100, 70 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If the impact site"
 	next "of a meteorite is"
 	next "found, this"
+
 	page "#MON is certain"
 	next "to be within the"
 	next "immediate area.@"
--- a/data/pokemon/dex_entries/cloyster.asm
+++ b/data/pokemon/dex_entries/cloyster.asm
@@ -1,4 +1,3 @@
-; CloysterPokedexEntry: ; 0x1b8ad9
 	db "BIVALVE@" ; species name
 	dw 411, 2920 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Even a missile"
 	next "can't break the"
 	next "spikes it uses to"
+
 	page "stab opponents."
 	next "They're even hard-"
 	next "er than its shell.@"
--- a/data/pokemon/dex_entries/corsola.asm
+++ b/data/pokemon/dex_entries/corsola.asm
@@ -1,4 +1,3 @@
-; CorsolaPokedexEntry: ; 0x1d0c68
 	db "CORAL@" ; species name
 	dw 200, 110 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The points on its"
 	next "head absorb"
 	next "nutrients from"
+
 	page "clean water. They"
 	next "cannot survive in"
 	next "polluted water.@"
--- a/data/pokemon/dex_entries/crobat.asm
+++ b/data/pokemon/dex_entries/crobat.asm
@@ -1,4 +1,3 @@
-; CrobatPokedexEntry: ; 0x1cd0f5
 	db "BAT@" ; species name
 	dw 511, 1650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As a result of its"
 	next "pursuit of faster,"
 	next "yet more silent"
+
 	page "flight, a new set"
 	next "of wings grew on"
 	next "its hind legs.@"
--- a/data/pokemon/dex_entries/croconaw.asm
+++ b/data/pokemon/dex_entries/croconaw.asm
@@ -1,4 +1,3 @@
-; CroconawPokedexEntry: ; 0x1ccc84
 	db "BIG JAW@" ; species name
 	dw 307, 550 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The tips of its"
 	next "fangs are slanted"
 	next "backward. Once"
+
 	page "those fangs clamp"
 	next "down, the prey has"
 	next "no hope of escape.@"
--- a/data/pokemon/dex_entries/cubone.asm
+++ b/data/pokemon/dex_entries/cubone.asm
@@ -1,4 +1,3 @@
-; CubonePokedexEntry: ; 0x1b9068
 	db "LONELY@" ; species name
 	dw 104, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It lost its mother"
 	next "after its birth."
 	next "It wears its"
+
 	page "mother's skull,"
 	next "never revealing"
 	next "its true face.@"
--- a/data/pokemon/dex_entries/cyndaquil.asm
+++ b/data/pokemon/dex_entries/cyndaquil.asm
@@ -1,4 +1,3 @@
-; CyndaquilPokedexEntry: ; 0x1ccabd
 	db "FIRE MOUSE@" ; species name
 	dw 108, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The fire that"
 	next "spouts from its"
 	next "back burns hottest"
+
 	page "when it is angry."
 	next "The flaring flames"
 	next "intimidate foes.@"
--- a/data/pokemon/dex_entries/delibird.asm
+++ b/data/pokemon/dex_entries/delibird.asm
@@ -1,4 +1,3 @@
-; DelibirdPokedexEntry: ; 0x1d0db1
 	db "DELIVERY@" ; species name
 	dw 211, 350 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It always carries"
 	next "its food with it,"
 	next "wherever it goes."
+
 	page "If attacked, it"
 	next "throws its food at"
 	next "the opponent.@"
--- a/data/pokemon/dex_entries/dewgong.asm
+++ b/data/pokemon/dex_entries/dewgong.asm
@@ -1,4 +1,3 @@
-; DewgongPokedexEntry: ; 0x1b8934
 	db "SEA LION@" ; species name
 	dw 507, 2650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It sleeps under"
 	next "shallow ocean"
 	next "waters during the"
+
 	page "day, then looks"
 	next "for food at night"
 	next "when it's cold.@"
--- a/data/pokemon/dex_entries/diglett.asm
+++ b/data/pokemon/dex_entries/diglett.asm
@@ -1,4 +1,3 @@
-; DiglettPokedexEntry: ; 0x182b30
 	db "MOLE@" ; species name
 	dw 8, 20 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It digs under-"
 	next "ground and chews"
 	next "on tree roots,"
+
 	page "sticking its head"
 	next "out only when the"
 	next "sun isn't bright.@"
--- a/data/pokemon/dex_entries/ditto.asm
+++ b/data/pokemon/dex_entries/ditto.asm
@@ -1,4 +1,3 @@
-; DittoPokedexEntry: ; 0x1cc13c
 	db "TRANSFORM@" ; species name
 	dw 100, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it encount-"
 	next "ers another DITTO,"
 	next "it will move"
+
 	page "faster than normal"
 	next "to duplicate that"
 	next "opponent exactly.@"
--- a/data/pokemon/dex_entries/dodrio.asm
+++ b/data/pokemon/dex_entries/dodrio.asm
@@ -1,4 +1,3 @@
-; DodrioPokedexEntry: ; 0x1b884a
 	db "TRIPLEBIRD@" ; species name
 	dw 511, 1880 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "An enemy that"
 	next "takes its eyes off"
 	next "any of the three"
+
 	page "heads--even for a"
 	next "second--will get"
 	next "pecked severely.@"
--- a/data/pokemon/dex_entries/doduo.asm
+++ b/data/pokemon/dex_entries/doduo.asm
@@ -1,4 +1,3 @@
-; DoduoPokedexEntry: ; 0x1b87d7
 	db "TWIN BIRD@" ; species name
 	dw 407, 860 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It lives on a"
 	next "grassy plain where"
 	next "it can see a long"
+
 	page "way. If it sees an"
 	next "enemy, it runs"
 	next "away at 60 mph.@"
--- a/data/pokemon/dex_entries/donphan.asm
+++ b/data/pokemon/dex_entries/donphan.asm
@@ -1,4 +1,3 @@
-; DonphanPokedexEntry: ; 0x1d10ac
 	db "ARMOR@" ; species name
 	dw 307, 2650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Because this"
 	next "#MON's skin is"
 	next "so tough, a normal"
+
 	page "attack won't even"
 	next "leave a scratch on"
 	next "it.@"
--- a/data/pokemon/dex_entries/dragonair.asm
+++ b/data/pokemon/dex_entries/dragonair.asm
@@ -1,4 +1,3 @@
-; DragonairPokedexEntry: ; 0x1cc7dc
 	db "DRAGON@" ; species name
 	dw 1301, 360 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is called the"
 	next "divine #MON."
 	next "When its entire"
+
 	page "body brightens"
 	next "slightly, the"
 	next "weather changes.@"
--- a/data/pokemon/dex_entries/dragonite.asm
+++ b/data/pokemon/dex_entries/dragonite.asm
@@ -1,4 +1,3 @@
-; DragonitePokedexEntry: ; 0x1cc843
 	db "DRAGON@" ; species name
 	dw 703, 4630 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is said that"
 	next "somewhere in the"
 	next "ocean lies an"
+
 	page "island where these"
 	next "gather. Only they"
 	next "live there.@"
--- a/data/pokemon/dex_entries/dratini.asm
+++ b/data/pokemon/dex_entries/dratini.asm
@@ -1,4 +1,3 @@
-; DratiniPokedexEntry: ; 0x1cc761
 	db "DRAGON@" ; species name
 	dw 511, 70 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It sheds many lay-"
 	next "ers of skin as it"
 	next "grows larger. Dur-"
+
 	page "ing this process,"
 	next "it is protected by"
 	next "a rapid waterfall.@"
--- a/data/pokemon/dex_entries/drowzee.asm
+++ b/data/pokemon/dex_entries/drowzee.asm
@@ -1,4 +1,3 @@
-; DrowzeePokedexEntry: ; 0x1b8d0a
 	db "HYPNOSIS@" ; species name
 	dw 303, 710 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it twitches"
 	next "its nose, it can"
 	next "tell where someone"
+
 	page "is sleeping and"
 	next "what that person"
 	next "is dreaming about.@"
--- a/data/pokemon/dex_entries/dugtrio.asm
+++ b/data/pokemon/dex_entries/dugtrio.asm
@@ -1,4 +1,3 @@
-; DugtrioPokedexEntry: ; 0x182b9d
 	db "MOLE@" ; species name
 	dw 204, 730 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "These DIGLETT"
 	next "triplets dig over"
 	next "60 miles below sea"
+
 	page "level. No one"
 	next "knows what it's"
 	next "like underground.@"
--- a/data/pokemon/dex_entries/dunsparce.asm
+++ b/data/pokemon/dex_entries/dunsparce.asm
@@ -1,4 +1,3 @@
-; DunsparcePokedexEntry: ; 0x1d0593
 	db "LAND SNAKE@" ; species name
 	dw 411, 310 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It hides deep"
 	next "inside caves where"
 	next "no light ever"
+
 	page "reaches it and"
 	next "remains virtually"
 	next "motionless there.@"
--- a/data/pokemon/dex_entries/eevee.asm
+++ b/data/pokemon/dex_entries/eevee.asm
@@ -1,4 +1,3 @@
-; EeveePokedexEntry: ; 0x1cc1b2
 	db "EVOLUTION@" ; species name
 	dw 100, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its ability to"
 	next "evolve into many"
 	next "forms allows it to"
+
 	page "adapt smoothly"
 	next "and perfectly to"
 	next "any environment.@"
--- a/data/pokemon/dex_entries/ekans.asm
+++ b/data/pokemon/dex_entries/ekans.asm
@@ -1,4 +1,3 @@
-; EkansPokedexEntry: ; 0x181fd4
 	db "SNAKE@" ; species name
 	dw 607, 150 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It flutters the"
 	next "tip of its tongue"
 	next "to seek out the"
+
 	page "scent of prey,"
 	next "then swallows the"
 	next "prey whole.@"
--- a/data/pokemon/dex_entries/electabuzz.asm
+++ b/data/pokemon/dex_entries/electabuzz.asm
@@ -1,4 +1,3 @@
-; ElectabuzzPokedexEntry: ; 0x1b992a
 	db "ELECTRIC@" ; species name
 	dw 307, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When two"
 	next "ELECTABUZZ touch,"
 	next "they control the"
+
 	page "electric currents"
 	next "to communicate"
 	next "their feelings.@"
--- a/data/pokemon/dex_entries/electrode.asm
+++ b/data/pokemon/dex_entries/electrode.asm
@@ -1,4 +1,3 @@
-; ElectrodePokedexEntry: ; 0x1b8f19
 	db "BALL@" ; species name
 	dw 311, 1470 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The more energy it"
 	next "charges up, the"
 	next "faster it gets."
+
 	page "But this also"
 	next "makes it more"
 	next "likely to explode.@"
--- a/data/pokemon/dex_entries/elekid.asm
+++ b/data/pokemon/dex_entries/elekid.asm
@@ -1,4 +1,3 @@
-; ElekidPokedexEntry: ; 0x1d1398
 	db "ELECTRIC@" ; species name
 	dw 200, 520 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It loves violent"
 	next "thunder. The space"
 	next "between its horns"
+
 	page "flickers bluish-"
 	next "white when it is"
 	next "charging energy.@"
--- a/data/pokemon/dex_entries/entei.asm
+++ b/data/pokemon/dex_entries/entei.asm
@@ -1,4 +1,3 @@
-; EnteiPokedexEntry: ; 0x1d15dd
 	db "VOLCANO@" ; species name
 	dw 607, 4370 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This brawny"
 	next "#MON courses"
 	next "around the earth,"
+
 	page "spouting flames"
 	next "hotter than a"
 	next "volcano's magma.@"
--- a/data/pokemon/dex_entries/espeon.asm
+++ b/data/pokemon/dex_entries/espeon.asm
@@ -1,4 +1,3 @@
-; EspeonPokedexEntry: ; 0x1d0155
 	db "SUN@" ; species name
 	dw 211, 580 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The tip of its"
 	next "forked tail"
 	next "quivers when it is"
+
 	page "predicting its"
 	next "opponent's next"
 	next "move.@"
--- a/data/pokemon/dex_entries/exeggcute.asm
+++ b/data/pokemon/dex_entries/exeggcute.asm
@@ -1,4 +1,3 @@
-; ExeggcutePokedexEntry: ; 0x1b8f84
 	db "EGG@" ; species name
 	dw 104, 60 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If even one is"
 	next "separated from the"
 	next "group, the energy"
+
 	page "bond between the"
 	next "six will make them"
 	next "rejoin instantly.@"
--- a/data/pokemon/dex_entries/exeggutor.asm
+++ b/data/pokemon/dex_entries/exeggutor.asm
@@ -1,4 +1,3 @@
-; ExeggutorPokedexEntry: ; 0x1b8ff6
 	db "COCONUT@" ; species name
 	dw 607, 2650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Living in a good"
 	next "environment makes"
 	next "it grow lots of"
+
 	page "heads. A head that"
 	next "drops off becomes"
 	next "an EXEGGCUTE.@"
--- a/data/pokemon/dex_entries/farfetch_d.asm
+++ b/data/pokemon/dex_entries/farfetch_d.asm
@@ -1,4 +1,3 @@
-; FarfetchDPokedexEntry: ; 0x1b876c
 	db "WILD DUCK@" ; species name
 	dw 207, 330 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In order to pre-"
 	next "vent their"
 	next "extinction, more"
+
 	page "people have made"
 	next "an effort to breed"
 	next "these #MON.@"
--- a/data/pokemon/dex_entries/fearow.asm
+++ b/data/pokemon/dex_entries/fearow.asm
@@ -1,4 +1,3 @@
-; FearowPokedexEntry: ; 0x181f64
 	db "BEAK@" ; species name
 	dw 311, 840 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses its long"
 	next "beak to attack. It"
 	next "has a surprisingly"
+
 	page "long reach, so it"
 	next "must be treated"
 	next "with caution.@"
--- a/data/pokemon/dex_entries/feraligatr.asm
+++ b/data/pokemon/dex_entries/feraligatr.asm
@@ -1,4 +1,3 @@
-; FeraligatrPokedexEntry: ; 0x1cccf9
 	db "BIG JAW@" ; species name
 	dw 707, 1960 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Although it has a"
 	next "massive body, its"
 	next "powerful hind legs"
+
 	page "enable it to move"
 	next "quickly, even on"
 	next "the ground.@"
--- a/data/pokemon/dex_entries/flaaffy.asm
+++ b/data/pokemon/dex_entries/flaaffy.asm
@@ -1,4 +1,3 @@
-; FlaaffyPokedexEntry: ; 0x1cd5b8
 	db "WOOL@" ; species name
 	dw 207, 290 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Because of its"
 	next "rubbery, electric-"
 	next "ity-resistant"
+
 	page "skin, it can store"
 	next "lots of electric-"
 	next "ity in its fur.@"
--- a/data/pokemon/dex_entries/flareon.asm
+++ b/data/pokemon/dex_entries/flareon.asm
@@ -1,4 +1,3 @@
-; FlareonPokedexEntry: ; 0x1cc2ec
 	db "FLAME@" ; species name
 	dw 211, 550 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Once it has stored"
 	next "up enough heat,"
 	next "this #MON's"
+
 	page "body temperature"
 	next "can reach up to"
 	next "1700 degrees.@"
--- a/data/pokemon/dex_entries/forretress.asm
+++ b/data/pokemon/dex_entries/forretress.asm
@@ -1,4 +1,3 @@
-; ForretressPokedexEntry: ; 0x1d0524
 	db "BAGWORM@" ; species name
 	dw 311, 2770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Usually found"
 	next "hanging on to a"
 	next "fat tree trunk. It"
+
 	page "shoots out bits of"
 	next "its shell when it"
 	next "sees action.@"
--- a/data/pokemon/dex_entries/furret.asm
+++ b/data/pokemon/dex_entries/furret.asm
@@ -1,4 +1,3 @@
-; FurretPokedexEntry: ; 0x1ccddd
 	db "LONG BODY@" ; species name
 	dw 511, 720 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It lives in narrow"
 	next "burrows that fit"
 	next "its slim body. The"
+
 	page "deeper the nests"
 	next "go, the more maze-"
 	next "like they become.@"
--- a/data/pokemon/dex_entries/gastly.asm
+++ b/data/pokemon/dex_entries/gastly.asm
@@ -1,4 +1,3 @@
-; GastlyPokedexEntry: ; 0x1b8b4a
 	db "GAS@" ; species name
 	dw 403, 2 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It wraps its op-"
 	next "ponent in its gas-"
 	next "like body, slowly"
+
 	page "weakening its prey"
 	next "by poisoning it"
 	next "through the skin.@"
--- a/data/pokemon/dex_entries/gengar.asm
+++ b/data/pokemon/dex_entries/gengar.asm
@@ -1,4 +1,3 @@
-; GengarPokedexEntry: ; 0x1b8c25
 	db "SHADOW@" ; species name
 	dw 411, 890 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Hiding in people's"
 	next "shadows at night,"
 	next "it absorbs their"
+
 	page "heat. The chill it"
 	next "causes makes the"
 	next "victims shake.@"
--- a/data/pokemon/dex_entries/geodude.asm
+++ b/data/pokemon/dex_entries/geodude.asm
@@ -1,4 +1,3 @@
-; GeodudePokedexEntry: ; 0x1b83a1
 	db "ROCK@" ; species name
 	dw 104, 440 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Proud of their"
 	next "sturdy bodies,"
 	next "they bash against"
+
 	page "each other in a"
 	next "contest to prove"
 	next "whose is harder.@"
--- a/data/pokemon/dex_entries/girafarig.asm
+++ b/data/pokemon/dex_entries/girafarig.asm
@@ -1,4 +1,3 @@
-; GirafarigPokedexEntry: ; 0x1d0446
 	db "LONG NECK@" ; species name
 	dw 411, 910 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it is in"
 	next "danger, its tail"
 	next "uses some sort of"
+
 	page "mysterious powers"
 	next "to drive away the"
 	next "enemy.@"
--- a/data/pokemon/dex_entries/gligar.asm
+++ b/data/pokemon/dex_entries/gligar.asm
@@ -1,4 +1,3 @@
-; GligarPokedexEntry: ; 0x1d0604
 	db "FLYSCORPIO@" ; species name
 	dw 307, 1430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It builds its nest"
 	next "on a steep cliff."
 	next "When it is done"
+
 	page "gliding, it hops"
 	next "along the ground"
 	next "back to its nest.@"
--- a/data/pokemon/dex_entries/gloom.asm
+++ b/data/pokemon/dex_entries/gloom.asm
@@ -1,4 +1,3 @@
-; GloomPokedexEntry: ; 0x1828a6
 	db "WEED@" ; species name
 	dw 207, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The smell from its"
 	next "drool-like syrup"
 	next "and the pollen on"
+
 	page "its petals is so"
 	next "bad, it may make"
 	next "opponents faint.@"
--- a/data/pokemon/dex_entries/golbat.asm
+++ b/data/pokemon/dex_entries/golbat.asm
@@ -1,4 +1,3 @@
-; GolbatPokedexEntry: ; 0x1827c4
 	db "BAT@" ; species name
 	dw 503, 1210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it plunges"
 	next "its fangs into its"
 	next "prey, it instantly"
+
 	page "draws and gulps"
 	next "down more than ten"
 	next "ounces of blood.@"
--- a/data/pokemon/dex_entries/goldeen.asm
+++ b/data/pokemon/dex_entries/goldeen.asm
@@ -1,4 +1,3 @@
-; GoldeenPokedexEntry: ; 0x1b9626
 	db "GOLDFISH@" ; species name
 	dw 200, 330 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During spawning"
 	next "season, they swim"
 	next "gracefully in the"
+
 	page "water, searching"
 	next "for their perfect"
 	next "mate.@"
--- a/data/pokemon/dex_entries/golduck.asm
+++ b/data/pokemon/dex_entries/golduck.asm
@@ -1,4 +1,3 @@
-; GolduckPokedexEntry: ; 0x182d55
 	db "DUCK@" ; species name
 	dw 507, 1690 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It swims grace-"
 	next "fully along on the"
 	next "quiet, slow-moving"
+
 	page "rivers and lakes"
 	next "of which it is so"
 	next "fond.@"
--- a/data/pokemon/dex_entries/golem.asm
+++ b/data/pokemon/dex_entries/golem.asm
@@ -1,4 +1,3 @@
-; GolemPokedexEntry: ; 0x1b8481
 	db "MEGATON@" ; species name
 	dw 407, 6620 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its rock-like body"
 	next "is so durable,"
 	next "even high-powered"
+
 	page "dynamite blasts"
 	next "fail to scratch"
 	next "its rugged hide.@"
--- a/data/pokemon/dex_entries/granbull.asm
+++ b/data/pokemon/dex_entries/granbull.asm
@@ -1,4 +1,3 @@
-; GranbullPokedexEntry: ; 0x1d074a
 	db "FAIRY@" ; species name
 	dw 407, 1070 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It can make most"
 	next "any #MON run"
 	next "away simply by"
+
 	page "opening its mouth"
 	next "wide to reveal its"
 	next "big fangs.@"
--- a/data/pokemon/dex_entries/graveler.asm
+++ b/data/pokemon/dex_entries/graveler.asm
@@ -1,4 +1,3 @@
-; GravelerPokedexEntry: ; 0x1b840c
 	db "ROCK@" ; species name
 	dw 303, 2320 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It travels by rol-"
 	next "ling on mountain"
 	next "paths. If it gains"
+
 	page "too much speed, it"
 	next "stops by running"
 	next "into huge rocks.@"
--- a/data/pokemon/dex_entries/grimer.asm
+++ b/data/pokemon/dex_entries/grimer.asm
@@ -1,4 +1,3 @@
-; GrimerPokedexEntry: ; 0x1b89a2
 	db "SLUDGE@" ; species name
 	dw 211, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When two of these"
 	next "#MON's bodies"
 	next "are combined"
+
 	page "together, new"
 	next "poisons are"
 	next "created.@"
--- a/data/pokemon/dex_entries/growlithe.asm
+++ b/data/pokemon/dex_entries/growlithe.asm
@@ -1,4 +1,3 @@
-; GrowlithePokedexEntry: ; 0x182eaa
 	db "PUPPY@" ; species name
 	dw 204, 420 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It controls a big"
 	next "territory. If it"
 	next "detects an unknown"
+
 	page "smell, it roars"
 	next "loudly to force"
 	next "out the intruder.@"
--- a/data/pokemon/dex_entries/gyarados.asm
+++ b/data/pokemon/dex_entries/gyarados.asm
@@ -1,4 +1,3 @@
-; GyaradosPokedexEntry: ; 0x1cc065
 	db "ATROCIOUS@" ; species name
 	dw 2104, 5180 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It appears when-"
 	next "ever there is"
 	next "world conflict,"
+
 	page "burning down any"
 	next "place it travels"
 	next "through.@"
--- a/data/pokemon/dex_entries/haunter.asm
+++ b/data/pokemon/dex_entries/haunter.asm
@@ -1,4 +1,3 @@
-; HaunterPokedexEntry: ; 0x1b8bbd
 	db "GAS@" ; species name
 	dw 503, 2 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It hides in the"
 	next "dark, planning to"
 	next "take the life of"
+
 	page "the next living"
 	next "thing that wanders"
 	next "close by.@"
--- a/data/pokemon/dex_entries/heracross.asm
+++ b/data/pokemon/dex_entries/heracross.asm
@@ -1,4 +1,3 @@
-; HeracrossPokedexEntry: ; 0x1d0907
 	db "SINGLEHORN@" ; species name
 	dw 411, 1190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "With its Herculean"
 	next "powers, it can"
 	next "easily throw arou-"
+
 	page "nd an object that"
 	next "is 100 times its"
 	next "own weight.@"
--- a/data/pokemon/dex_entries/hitmonchan.asm
+++ b/data/pokemon/dex_entries/hitmonchan.asm
@@ -1,4 +1,3 @@
-; HitmonchanPokedexEntry: ; 0x1b91a4
 	db "PUNCHING@" ; species name
 	dw 407, 1110 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To increase the"
 	next "strength of all"
 	next "its punch moves,"
+
 	page "it spins its arms"
 	next "just before making"
 	next "contact.@"
--- a/data/pokemon/dex_entries/hitmonlee.asm
+++ b/data/pokemon/dex_entries/hitmonlee.asm
@@ -1,4 +1,3 @@
-; HitmonleePokedexEntry: ; 0x1b913f
 	db "KICKING@" ; species name
 	dw 411, 1100 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is also called"
 	next "the Kick Master."
 	next "It uses its"
+
 	page "elastic legs to"
 	next "execute every"
 	next "known kick.@"
--- a/data/pokemon/dex_entries/hitmontop.asm
+++ b/data/pokemon/dex_entries/hitmontop.asm
@@ -1,4 +1,3 @@
-; HitmontopPokedexEntry: ; 0x1d12c0
 	db "HANDSTAND@" ; species name
 	dw 407, 1060 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "After doing a"
 	next "handstand to"
 	next "throw off the"
+
 	page "opponent's timing,"
 	next "it presents its"
 	next "fancy kick moves.@"
--- a/data/pokemon/dex_entries/ho_oh.asm
+++ b/data/pokemon/dex_entries/ho_oh.asm
@@ -1,4 +1,3 @@
-; HoOhPokedexEntry: ; 0x1d185d
 	db "RAINBOW@" ; species name
 	dw 1206, 4390 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It will reveal"
 	next "itself before a"
 	next "pure-hearted"
+
 	page "trainer by shining"
 	next "its bright rain-"
 	next "bow-colored wings.@"
--- a/data/pokemon/dex_entries/hoothoot.asm
+++ b/data/pokemon/dex_entries/hoothoot.asm
@@ -1,4 +1,3 @@
-; HoothootPokedexEntry: ; 0x1cce58
 	db "OWL@" ; species name
 	dw 204, 470 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It begins to hoot"
 	next "at the same time"
 	next "every day. Some"
+
 	page "trainers use them"
 	next "in place of"
 	next "clocks.@"
--- a/data/pokemon/dex_entries/hoppip.asm
+++ b/data/pokemon/dex_entries/hoppip.asm
@@ -1,4 +1,3 @@
-; HoppipPokedexEntry: ; 0x1cd8b5
 	db "COTTONWEED@" ; species name
 	dw 104, 10 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It can be carried"
 	next "away on even the"
 	next "gentlest breeze."
+
 	page "It may even float"
 	next "all the way to the"
 	next "next town.@"
--- a/data/pokemon/dex_entries/horsea.asm
+++ b/data/pokemon/dex_entries/horsea.asm
@@ -1,4 +1,3 @@
-; HorseaPokedexEntry: ; 0x1b9553
 	db "DRAGON@" ; species name
 	dw 104, 180 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When they're in a"
 	next "safe location,"
 	next "they can be seen"
+
 	page "playfully tangling"
 	next "their tails"
 	next "together.@"
--- a/data/pokemon/dex_entries/houndoom.asm
+++ b/data/pokemon/dex_entries/houndoom.asm
@@ -1,4 +1,3 @@
-; HoundoomPokedexEntry: ; 0x1d0f66
 	db "DARK@" ; species name
 	dw 407, 770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The pungent-"
 	next "smelling flame"
 	next "that shoots from"
+
 	page "its mouth results"
 	next "from toxins burn-"
 	next "ing in its body.@"
--- a/data/pokemon/dex_entries/houndour.asm
+++ b/data/pokemon/dex_entries/houndour.asm
@@ -1,4 +1,3 @@
-; HoundourPokedexEntry: ; 0x1d0eff
 	db "DARK@" ; species name
 	dw 200, 240 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Around dawn, its"
 	next "ominous howl"
 	next "echoes through the"
+
 	page "area to announce"
 	next "that this is its"
 	next "territory.@"
--- a/data/pokemon/dex_entries/hypno.asm
+++ b/data/pokemon/dex_entries/hypno.asm
@@ -1,4 +1,3 @@
-; HypnoPokedexEntry: ; 0x1b8d80
 	db "HYPNOSIS@" ; species name
 	dw 503, 1670 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The longer it"
 	next "swings its"
 	next "pendulum, the"
+
 	page "longer the effects"
 	next "of its hypnosis"
 	next "last.@"
--- a/data/pokemon/dex_entries/igglybuff.asm
+++ b/data/pokemon/dex_entries/igglybuff.asm
@@ -1,4 +1,3 @@
-; IgglybuffPokedexEntry: ; 0x1cd32c
 	db "BALLOON@" ; species name
 	dw 100, 20 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Instead of walking"
 	next "with its short"
 	next "legs, it moves"
+
 	page "around by bouncing"
 	next "on its soft,"
 	next "tender body.@"
--- a/data/pokemon/dex_entries/ivysaur.asm
+++ b/data/pokemon/dex_entries/ivysaur.asm
@@ -1,4 +1,3 @@
-; IvysaurPokedexEntry: ; 0x181702
 	db "SEED@" ; species name
 	dw 303, 290 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The bulb on its"
 	next "back grows as it"
 	next "absorbs nutrients."
+
 	page "The bulb gives off"
 	next "a pleasant aroma"
 	next "when it blooms.@"
--- a/data/pokemon/dex_entries/jigglypuff.asm
+++ b/data/pokemon/dex_entries/jigglypuff.asm
@@ -1,4 +1,3 @@
-; JigglypuffPokedexEntry: ; 0x182673
 	db "BALLOON@" ; species name
 	dw 108, 120 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It rolls its cute"
 	next "eyes as it sings a"
 	next "soothing lullaby."
+
 	page "Its gentle song"
 	next "puts anyone who"
 	next "hears it to sleep.@"
--- a/data/pokemon/dex_entries/jolteon.asm
+++ b/data/pokemon/dex_entries/jolteon.asm
@@ -1,4 +1,3 @@
-; JolteonPokedexEntry: ; 0x1cc28b
 	db "LIGHTNING@" ; species name
 	dw 207, 540 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The negatively"
 	next "charged ions"
 	next "generated in its"
+
 	page "fur create a"
 	next "constant sparking"
 	next "noise.@"
--- a/data/pokemon/dex_entries/jumpluff.asm
+++ b/data/pokemon/dex_entries/jumpluff.asm
@@ -1,4 +1,3 @@
-; JumpluffPokedexEntry: ; 0x1cd998
 	db "COTTONWEED@" ; species name
 	dw 207, 70 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Even in the fierc-"
 	next "est wind, it can"
 	next "control its fluff"
+
 	page "to make its way to"
 	next "any place in the"
 	next "world it wants.@"
--- a/data/pokemon/dex_entries/jynx.asm
+++ b/data/pokemon/dex_entries/jynx.asm
@@ -1,4 +1,3 @@
-; JynxPokedexEntry: ; 0x1b98c5
 	db "HUMANSHAPE@" ; species name
 	dw 407, 900 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It has several"
 	next "different cry pat-"
 	next "terns, each of"
+
 	page "which seems to"
 	next "have its own"
 	next "meaning.@"
--- a/data/pokemon/dex_entries/kabuto.asm
+++ b/data/pokemon/dex_entries/kabuto.asm
@@ -1,4 +1,3 @@
-; KabutoPokedexEntry: ; 0x1cc497
 	db "SHELLFISH@" ; species name
 	dw 108, 250 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Three hundred"
 	next "million years ago,"
 	next "it hid on the sea"
+
 	page "floor. It also has"
 	next "eyes on its back"
 	next "that glow.@"
--- a/data/pokemon/dex_entries/kabutops.asm
+++ b/data/pokemon/dex_entries/kabutops.asm
@@ -1,4 +1,3 @@
-; KabutopsPokedexEntry: ; 0x1cc507
 	db "SHELLFISH@" ; species name
 	dw 403, 890 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It was able to"
 	next "swim quickly thro-"
 	next "ugh the water by"
+
 	page "compactly folding"
 	next "up its razor-sharp"
 	next "sickles.@"
--- a/data/pokemon/dex_entries/kadabra.asm
+++ b/data/pokemon/dex_entries/kadabra.asm
@@ -1,4 +1,3 @@
-; KadabraPokedexEntry: ; 0x18313c
 	db "PSI@" ; species name
 	dw 403, 1250 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it closes its"
 	next "eyes, twice as"
 	next "many alpha parti-"
+
 	page "cles come out of"
 	next "the surface of its"
 	next "body.@"
--- a/data/pokemon/dex_entries/kakuna.asm
+++ b/data/pokemon/dex_entries/kakuna.asm
@@ -1,4 +1,3 @@
-; KakunaPokedexEntry: ; 0x181c23
 	db "COCOON@" ; species name
 	dw 200, 220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Nearly incapable"
 	next "of movement, it"
 	next "leans against"
+
 	page "stout trees while"
 	next "waiting for its"
 	next "evolution.@"
--- a/data/pokemon/dex_entries/kangaskhan.asm
+++ b/data/pokemon/dex_entries/kangaskhan.asm
@@ -1,4 +1,3 @@
-; KangaskhanPokedexEntry: ; 0x1b94f6
 	db "PARENT@" ; species name
 	dw 703, 1760 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To avoid"
 	next "crushing the"
 	next "baby it carries in"
+
 	page "its pouch, it"
 	next "always sleeps"
 	next "standing up.@"
--- a/data/pokemon/dex_entries/kingdra.asm
+++ b/data/pokemon/dex_entries/kingdra.asm
@@ -1,4 +1,3 @@
-; KingdraPokedexEntry: ; 0x1d0fd1
 	db "DRAGON@" ; species name
 	dw 511, 3350 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It stores energy"
 	next "by sleeping at"
 	next "underwater depths"
+
 	page "at which no other"
 	next "life forms can"
 	next "survive.@"
--- a/data/pokemon/dex_entries/kingler.asm
+++ b/data/pokemon/dex_entries/kingler.asm
@@ -1,4 +1,3 @@
-; KinglerPokedexEntry: ; 0x1b8e45
 	db "PINCER@" ; species name
 	dw 403, 1320 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its oversized claw"
 	next "is very powerful,"
 	next "but when it's not"
+
 	page "in battle, the"
 	next "claw just gets in"
 	next "the way.@"
--- a/data/pokemon/dex_entries/koffing.asm
+++ b/data/pokemon/dex_entries/koffing.asm
@@ -1,4 +1,3 @@
-; KoffingPokedexEntry: ; 0x1b9276
 	db "POISON GAS@" ; species name
 	dw 200, 20 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If one gets close"
 	next "enough to it when"
 	next "it expels poison-"
+
 	page "ous gas, the gas"
 	next "swirling inside it"
 	next "can be seen.@"
--- a/data/pokemon/dex_entries/krabby.asm
+++ b/data/pokemon/dex_entries/krabby.asm
@@ -1,4 +1,3 @@
-; KrabbyPokedexEntry: ; 0x1b8ddd
 	db "RIVER CRAB@" ; species name
 	dw 104, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If it is unable"
 	next "to find food, it"
 	next "will absorb"
+
 	page "nutrients by"
 	next "swallowing a"
 	next "mouthful of sand.@"
--- a/data/pokemon/dex_entries/lanturn.asm
+++ b/data/pokemon/dex_entries/lanturn.asm
@@ -1,4 +1,3 @@
-; LanturnPokedexEntry: ; 0x1cd1de
 	db "LIGHT@" ; species name
 	dw 311, 500 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This #MON uses"
 	next "the bright part of"
 	next "its body, which"
+
 	page "changed from a"
 	next "dorsal fin, to"
 	next "lure prey.@"
--- a/data/pokemon/dex_entries/lapras.asm
+++ b/data/pokemon/dex_entries/lapras.asm
@@ -1,4 +1,3 @@
-; LaprasPokedexEntry: ; 0x1cc0cd
 	db "TRANSPORT@" ; species name
 	dw 802, 4850 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This gentle"
 	next "#MON loves to"
 	next "give people rides"
+
 	page "and provides a ve-"
 	next "ry comfortable way"
 	next "to get around.@"
--- a/data/pokemon/dex_entries/larvitar.asm
+++ b/data/pokemon/dex_entries/larvitar.asm
@@ -1,4 +1,3 @@
-; LarvitarPokedexEntry: ; 0x1d169c
 	db "ROCK SKIN@" ; species name
 	dw 200, 1590 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Born deep under-"
 	next "ground, this"
 	next "#MON becomes a"
+
 	page "pupa after eating"
 	next "enough dirt to"
 	next "make a mountain.@"
--- a/data/pokemon/dex_entries/ledian.asm
+++ b/data/pokemon/dex_entries/ledian.asm
@@ -1,4 +1,3 @@
-; LedianPokedexEntry: ; 0x1ccfa0
 	db "FIVE STAR@" ; species name
 	dw 407, 780 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In the daytime"
 	next "when it gets warm,"
 	next "it curls up inside"
+
 	page "a big leaf and"
 	next "drifts off into"
 	next "a deep slumber.@"
--- a/data/pokemon/dex_entries/ledyba.asm
+++ b/data/pokemon/dex_entries/ledyba.asm
@@ -1,4 +1,3 @@
-; LedybaPokedexEntry: ; 0x1ccf2c
 	db "FIVE STAR@" ; species name
 	dw 303, 240 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is timid and"
 	next "clusters together"
 	next "with others. The"
+
 	page "fluid secreted by"
 	next "its feet indicates"
 	next "its location.@"
--- a/data/pokemon/dex_entries/lickitung.asm
+++ b/data/pokemon/dex_entries/lickitung.asm
@@ -1,4 +1,3 @@
-; LickitungPokedexEntry: ; 0x1b9210
 	db "LICKING@" ; species name
 	dw 311, 1440 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It has a tongue"
 	next "that is over 6'6''"
 	next "long. It uses this"
+
 	page "long tongue to"
 	next "lick its body"
 	next "clean.@"
--- a/data/pokemon/dex_entries/lugia.asm
+++ b/data/pokemon/dex_entries/lugia.asm
@@ -1,4 +1,3 @@
-; LugiaPokedexEntry: ; 0x1d17e9
 	db "DIVING@" ; species name
 	dw 1701, 4760 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It has an incred-"
 	next "ible ability to"
 	next "calm raging sto-"
+
 	page "rms. It is said"
 	next "that LUGIA appears"
 	next "when storms start.@"
--- a/data/pokemon/dex_entries/machamp.asm
+++ b/data/pokemon/dex_entries/machamp.asm
@@ -1,4 +1,3 @@
-; MachampPokedexEntry: ; 0x1b8133
 	db "SUPERPOWER@" ; species name
 	dw 503, 2870 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "With four arms"
 	next "that react more"
 	next "quickly than it"
+
 	page "can think, it can"
 	next "execute many"
 	next "punches at once.@"
--- a/data/pokemon/dex_entries/machoke.asm
+++ b/data/pokemon/dex_entries/machoke.asm
@@ -1,4 +1,3 @@
-; MachokePokedexEntry: ; 0x1b80cb
 	db "SUPERPOWER@" ; species name
 	dw 411, 1550 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This tough #MON"
 	next "always stays in"
 	next "the zone. Its"
+
 	page "muscles become"
 	next "thicker after"
 	next "every battle.@"
--- a/data/pokemon/dex_entries/machop.asm
+++ b/data/pokemon/dex_entries/machop.asm
@@ -1,4 +1,3 @@
-; MachopPokedexEntry: ; 0x1b8065
 	db "SUPERPOWER@" ; species name
 	dw 207, 430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It trains by"
 	next "lifting rocks in"
 	next "the mountains. It"
+
 	page "can even pick up a"
 	next "GRAVELER with"
 	next "ease.@"
--- a/data/pokemon/dex_entries/magby.asm
+++ b/data/pokemon/dex_entries/magby.asm
@@ -1,4 +1,3 @@
-; MagbyPokedexEntry: ; 0x1d140e
 	db "LIVE COAL@" ; species name
 	dw 204, 470 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It naturally spits"
 	next "an 1100-degree"
 	next "flame. It is said"
+
 	page "when many appear,"
 	next "it heralds a"
 	next "volcanic eruption.@"
--- a/data/pokemon/dex_entries/magcargo.asm
+++ b/data/pokemon/dex_entries/magcargo.asm
@@ -1,4 +1,3 @@
-; MagcargoPokedexEntry: ; 0x1d0b21
 	db "LAVA@" ; species name
 	dw 207, 1210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its body is as hot"
 	next "as lava and is"
 	next "always billowing."
+
 	page "Flames will"
 	next "occasionally burst"
 	next "from its shell.@"
--- a/data/pokemon/dex_entries/magikarp.asm
+++ b/data/pokemon/dex_entries/magikarp.asm
@@ -1,4 +1,3 @@
-; MagikarpPokedexEntry: ; 0x1cc000
 	db "FISH@" ; species name
 	dw 211, 220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This weak and"
 	next "pathetic #MON"
 	next "gets easily pushed"
+
 	page "along rivers when"
 	next "there are strong"
 	next "currents.@"
--- a/data/pokemon/dex_entries/magmar.asm
+++ b/data/pokemon/dex_entries/magmar.asm
@@ -1,4 +1,3 @@
-; MagmarPokedexEntry: ; 0x1b9994
 	db "SPITFIRE@" ; species name
 	dw 403, 980 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It moves more"
 	next "frequently in hot"
 	next "areas. It can heal"
+
 	page "itself by dipping"
 	next "its wound into"
 	next "lava.@"
--- a/data/pokemon/dex_entries/magnemite.asm
+++ b/data/pokemon/dex_entries/magnemite.asm
@@ -1,4 +1,3 @@
-; MagnemitePokedexEntry: ; 0x1b869d
 	db "MAGNET@" ; species name
 	dw 100, 130 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The electricity"
 	next "emitted by the"
 	next "units on each side"
+
 	page "of its body cause"
 	next "it to become a"
 	next "strong magnet.@"
--- a/data/pokemon/dex_entries/magneton.asm
+++ b/data/pokemon/dex_entries/magneton.asm
@@ -1,4 +1,3 @@
-; MagnetonPokedexEntry: ; 0x1b870a
 	db "MAGNET@" ; species name
 	dw 303, 1320 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When many"
 	next "MAGNETON gather"
 	next "together, the"
+
 	page "resulting magnetic"
 	next "storm disrupts"
 	next "radio waves.@"
--- a/data/pokemon/dex_entries/mankey.asm
+++ b/data/pokemon/dex_entries/mankey.asm
@@ -1,4 +1,3 @@
-; MankeyPokedexEntry: ; 0x182dbd
 	db "PIG MONKEY@" ; species name
 	dw 108, 620 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It lives in groups"
 	next "in the treetops."
 	next "If it loses sight"
+
 	page "of its group, it"
 	next "becomes infuriated"
 	next "by its loneliness.@"
--- a/data/pokemon/dex_entries/mantine.asm
+++ b/data/pokemon/dex_entries/mantine.asm
@@ -1,4 +1,3 @@
-; MantinePokedexEntry: ; 0x1d0e25
 	db "KITE@" ; species name
 	dw 611, 4850 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It swims along"
 	next "freely, eating"
 	next "things that swim"
+
 	page "into its mouth."
 	next "Its whole body is"
 	next "very coarse.@"
--- a/data/pokemon/dex_entries/mareep.asm
+++ b/data/pokemon/dex_entries/mareep.asm
@@ -1,4 +1,3 @@
-; MareepPokedexEntry: ; 0x1cd551
 	db "WOOL@" ; species name
 	dw 200, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It stores lots of"
 	next "air in its soft"
 	next "fur, allowing it"
+
 	page "to stay cool in"
 	next "summer and warm"
 	next "in winter.@"
--- a/data/pokemon/dex_entries/marill.asm
+++ b/data/pokemon/dex_entries/marill.asm
@@ -1,4 +1,3 @@
-; MarillPokedexEntry: ; 0x1cd705
 	db "AQUAMOUSE@" ; species name
 	dw 104, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The fur on its"
 	next "body naturally"
 	next "repels water. It"
+
 	page "can stay dry, even"
 	next "when it plays in"
 	next "the water.@"
--- a/data/pokemon/dex_entries/marowak.asm
+++ b/data/pokemon/dex_entries/marowak.asm
@@ -1,4 +1,3 @@
-; MarowakPokedexEntry: ; 0x1b90d2
 	db "BONEKEEPER@" ; species name
 	dw 303, 990 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Somewhere in the"
 	next "world is a ceme-"
 	next "tery just for"
+
 	page "MAROWAK. It gets"
 	next "its bones from"
 	next "those graves.@"
--- a/data/pokemon/dex_entries/meganium.asm
+++ b/data/pokemon/dex_entries/meganium.asm
@@ -1,4 +1,3 @@
-; MeganiumPokedexEntry: ; 0x1cca54
 	db "HERB@" ; species name
 	dw 511, 2220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Anyone who stands"
 	next "beside it becomes"
 	next "refreshed, just as"
+
 	page "if they were"
 	next "relaxing in a"
 	next "sunny forest.@"
--- a/data/pokemon/dex_entries/meowth.asm
+++ b/data/pokemon/dex_entries/meowth.asm
@@ -1,4 +1,3 @@
-; MeowthPokedexEntry: ; 0x182c08
 	db "SCRATCHCAT@" ; species name
 	dw 104, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It loves things"
 	next "that sparkle. When"
 	next "it sees a shiny"
+
 	page "object, the gold"
 	next "coin on its head"
 	next "shines too.@"
--- a/data/pokemon/dex_entries/metapod.asm
+++ b/data/pokemon/dex_entries/metapod.asm
@@ -1,4 +1,3 @@
-; MetapodPokedexEntry: ; 0x181ace
 	db "COCOON@" ; species name
 	dw 204, 220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This is its pre-"
 	next "evolved form. At"
 	next "this stage, it can"
+
 	page "only harden, so it"
 	next "remains motionless"
 	next "to avoid attack.@"
--- a/data/pokemon/dex_entries/mew.asm
+++ b/data/pokemon/dex_entries/mew.asm
@@ -1,4 +1,3 @@
-; MewPokedexEntry: ; 0x1cc915
 	db "NEW SPECIE@" ; species name
 	dw 104, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Because it can"
 	next "learn any move,"
 	next "some people began"
+
 	page "research to see if"
 	next "it is the ancestor"
 	next "of all #MON.@"
--- a/data/pokemon/dex_entries/mewtwo.asm
+++ b/data/pokemon/dex_entries/mewtwo.asm
@@ -1,4 +1,3 @@
-; MewtwoPokedexEntry: ; 0x1cc8ae
 	db "GENETIC@" ; species name
 	dw 607, 2690 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Said to rest qui-"
 	next "etly in an"
 	next "undiscovered cave,"
+
 	page "this #MON was"
 	next "created solely for"
 	next "battling.@"
--- a/data/pokemon/dex_entries/miltank.asm
+++ b/data/pokemon/dex_entries/miltank.asm
@@ -1,4 +1,3 @@
-; MiltankPokedexEntry: ; 0x1d1482
 	db "MILK COW@" ; species name
 	dw 311, 1660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In order to milk a"
 	next "MILTANK, one must"
 	next "have a knack for"
+
 	page "rhythmically pull-"
 	next "ing up and down"
 	next "on its udders.@"
--- a/data/pokemon/dex_entries/misdreavus.asm
+++ b/data/pokemon/dex_entries/misdreavus.asm
@@ -1,4 +1,3 @@
-; MisdreavusPokedexEntry: ; 0x1d0301
 	db "SCREECH@" ; species name
 	dw 204, 20 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It loves to watch"
 	next "people it's scar-"
 	next "ed. It frightens"
+
 	page "them by screaming"
 	next "loudly or appear-"
 	next "ing suddenly.@"
--- a/data/pokemon/dex_entries/moltres.asm
+++ b/data/pokemon/dex_entries/moltres.asm
@@ -1,4 +1,3 @@
-; MoltresPokedexEntry: ; 0x1cc706
 	db "FLAME@" ; species name
 	dw 607, 1320 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Legendary bird"
 	next "#MON. It is"
 	next "said to migrate"
+
 	page "from the south"
 	next "along with the"
 	next "spring.@"
--- a/data/pokemon/dex_entries/mr__mime.asm
+++ b/data/pokemon/dex_entries/mr__mime.asm
@@ -1,4 +1,3 @@
-; MrMimePokedexEntry: ; 0x1b97ea
 	db "BARRIER@" ; species name
 	dw 403, 1200 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses the"
 	next "mysterious"
 	next "power it has in"
+
 	page "its fingers to"
 	next "solidify air into"
 	next "an invisible wall.@"
--- a/data/pokemon/dex_entries/muk.asm
+++ b/data/pokemon/dex_entries/muk.asm
@@ -1,4 +1,3 @@
-; MukPokedexEntry: ; 0x1b89fc
 	db "SLUDGE@" ; species name
 	dw 311, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As it moves, a"
 	next "very strong poison"
 	next "leaks from it,"
+
 	page "making the ground"
 	next "there barren for"
 	next "three years.@"
--- a/data/pokemon/dex_entries/murkrow.asm
+++ b/data/pokemon/dex_entries/murkrow.asm
@@ -1,4 +1,3 @@
-; MurkrowPokedexEntry: ; 0x1d021e
 	db "DARKNESS@" ; species name
 	dw 108, 50 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It hides any shiny"
 	next "object it finds in"
 	next "a secret location."
+
 	page "MURKROW and"
 	next "MEOWTH loot one"
 	next "another's stashes.@"
--- a/data/pokemon/dex_entries/natu.asm
+++ b/data/pokemon/dex_entries/natu.asm
@@ -1,4 +1,3 @@
-; NatuPokedexEntry: ; 0x1cd47d
 	db "LITTLE BIRD@" ; species name
 	dw 8, 40 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is extremely"
 	next "good at climbing"
 	next "tree trunks and"
+
 	page "likes to eat the"
 	next "new sprouts on"
 	next "the trees.@"
--- a/data/pokemon/dex_entries/nidoking.asm
+++ b/data/pokemon/dex_entries/nidoking.asm
@@ -1,4 +1,3 @@
-; NidokingPokedexEntry: ; 0x182463
 	db "DRILL@" ; species name
 	dw 407, 1370 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses its thick"
 	next "arms, legs and"
 	next "tail to attack"
+
 	page "forcefully. Melee"
 	next "combat is its"
 	next "specialty.@"
--- a/data/pokemon/dex_entries/nidoqueen.asm
+++ b/data/pokemon/dex_entries/nidoqueen.asm
@@ -1,4 +1,3 @@
-; NidoqueenPokedexEntry: ; 0x18232e
 	db "DRILL@" ; species name
 	dw 403, 1320 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The hard scales"
 	next "that cover its"
 	next "strong body serve"
+
 	page "as excellent"
 	next "protection from"
 	next "any attack.@"
--- a/data/pokemon/dex_entries/nidoran_f.asm
+++ b/data/pokemon/dex_entries/nidoran_f.asm
@@ -1,4 +1,3 @@
-; NidoranFPokedexEntry: ; 0x18224b
 	db "POISON PIN@" ; species name
 	dw 104, 150 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Small and very"
 	next "docile, it pro-"
 	next "tects itself with"
+
 	page "its small, poison-"
 	next "ous horn when"
 	next "attacked.@"
--- a/data/pokemon/dex_entries/nidoran_m.asm
+++ b/data/pokemon/dex_entries/nidoran_m.asm
@@ -1,4 +1,3 @@
-; NidoranMPokedexEntry: ; 0x182392
 	db "POISON PIN@" ; species name
 	dw 108, 200 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It constantly"
 	next "moves its large"
 	next "ears in many"
+
 	page "directions in"
 	next "order to detect"
 	next "danger right away.@"
--- a/data/pokemon/dex_entries/nidorina.asm
+++ b/data/pokemon/dex_entries/nidorina.asm
@@ -1,4 +1,3 @@
-; NidorinaPokedexEntry: ; 0x1822b6
 	db "POISON PIN@" ; species name
 	dw 207, 440 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It has a docile"
 	next "nature. If it is"
 	next "threatened with"
+
 	page "attack, it raises"
 	next "the barbs that are"
 	next "all over its body.@"
--- a/data/pokemon/dex_entries/nidorino.asm
+++ b/data/pokemon/dex_entries/nidorino.asm
@@ -1,4 +1,3 @@
-; NidorinoPokedexEntry: ; 0x1823fd
 	db "POISON PIN@" ; species name
 	dw 211, 430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is easily"
 	next "agitated and uses"
 	next "its horn for"
+
 	page "offense as soon as"
 	next "it notices an"
 	next "attacker.@"
--- a/data/pokemon/dex_entries/ninetales.asm
+++ b/data/pokemon/dex_entries/ninetales.asm
@@ -1,4 +1,3 @@
-; NinetalesPokedexEntry: ; 0x18260c
 	db "FOX@" ; species name
 	dw 307, 440 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is said to live"
 	next "a thousand years,"
 	next "and each of its"
+
 	page "tails is loaded"
 	next "with supernatural"
 	next "powers.@"
--- a/data/pokemon/dex_entries/noctowl.asm
+++ b/data/pokemon/dex_entries/noctowl.asm
@@ -1,4 +1,3 @@
-; NoctowlPokedexEntry: ; 0x1cceb9
 	db "OWL@" ; species name
 	dw 503, 900 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its extremely soft"
 	next "feathers make no"
 	next "sound in flight."
+
 	page "It silently sneaks"
 	next "up on prey without"
 	next "being detected.@"
--- a/data/pokemon/dex_entries/octillery.asm
+++ b/data/pokemon/dex_entries/octillery.asm
@@ -1,4 +1,3 @@
-; OctilleryPokedexEntry: ; 0x1d0d42
 	db "JET@" ; species name
 	dw 211, 630 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its instinct is to"
 	next "bury itself in"
 	next "holes. It often"
+
 	page "steals the nesting"
 	next "holes of others to"
 	next "sleep in them.@"
--- a/data/pokemon/dex_entries/oddish.asm
+++ b/data/pokemon/dex_entries/oddish.asm
@@ -1,4 +1,3 @@
-; OddishPokedexEntry: ; 0x182836
 	db "WEED@" ; species name
 	dw 108, 120 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During the day, it"
 	next "stays in the cold"
 	next "underground to"
+
 	page "avoid the sun."
 	next "It grows by bath-"
 	next "ing in moonlight.@"
--- a/data/pokemon/dex_entries/omanyte.asm
+++ b/data/pokemon/dex_entries/omanyte.asm
@@ -1,4 +1,3 @@
-; OmanytePokedexEntry: ; 0x1cc3c1
 	db "SPIRAL@" ; species name
 	dw 104, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In prehistoric"
 	next "times, it swam on"
 	next "the sea floor,"
+
 	page "eating plankton."
 	next "Its fossils are"
 	next "sometimes found.@"
--- a/data/pokemon/dex_entries/omastar.asm
+++ b/data/pokemon/dex_entries/omastar.asm
@@ -1,4 +1,3 @@
-; OmastarPokedexEntry: ; 0x1cc42e
 	db "SPIRAL@" ; species name
 	dw 303, 770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its heavy shell"
 	next "allowed it to"
 	next "reach only nearby"
+
 	page "food. This could"
 	next "be the reason it"
 	next "is extinct.@"
--- a/data/pokemon/dex_entries/onix.asm
+++ b/data/pokemon/dex_entries/onix.asm
@@ -1,4 +1,3 @@
-; OnixPokedexEntry: ; 0x1b8c98
 	db "ROCK SNAKE@" ; species name
 	dw 2810, 4630 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As it digs through"
 	next "the ground, it"
 	next "absorbs many hard"
+
 	page "objects. This is"
 	next "what makes its"
 	next "body so solid.@"
--- a/data/pokemon/dex_entries/paras.asm
+++ b/data/pokemon/dex_entries/paras.asm
@@ -1,4 +1,3 @@
-; ParasPokedexEntry: ; 0x18297f
 	db "MUSHROOM@" ; species name
 	dw 100, 120 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The tochukaso"
 	next "growing on this"
 	next "#MON's back"
+
 	page "orders it to"
 	next "extract juice from"
 	next "tree trunks.@"
--- a/data/pokemon/dex_entries/parasect.asm
+++ b/data/pokemon/dex_entries/parasect.asm
@@ -1,4 +1,3 @@
-; ParasectPokedexEntry: ; 0x1829e2
 	db "MUSHROOM@" ; species name
 	dw 303, 650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When nothing's"
 	next "left to extract"
 	next "from the bug, the"
+
 	page "mushrooms on its"
 	next "back leave spores"
 	next "on the bug's egg.@"
--- a/data/pokemon/dex_entries/persian.asm
+++ b/data/pokemon/dex_entries/persian.asm
@@ -1,4 +1,3 @@
-; PersianPokedexEntry: ; 0x182c78
 	db "CLASSY CAT@" ; species name
 	dw 303, 710 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Behind its lithe,"
 	next "elegant appearance"
 	next "lies a barbaric"
+
 	page "side. It will tear"
 	next "apart its prey on"
 	next "a mere whim.@"
--- a/data/pokemon/dex_entries/phanpy.asm
+++ b/data/pokemon/dex_entries/phanpy.asm
@@ -1,4 +1,3 @@
-; PhanpyPokedexEntry: ; 0x1d1038
 	db "LONG NOSE@" ; species name
 	dw 108, 740 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During the desert-"
 	next "ed morning hours,"
 	next "it comes ashore"
+
 	page "where it deftly"
 	next "uses its trunk to"
 	next "take a shower.@"
--- a/data/pokemon/dex_entries/pichu.asm
+++ b/data/pokemon/dex_entries/pichu.asm
@@ -1,4 +1,3 @@
-; PichuPokedexEntry: ; 0x1cd243
 	db "TINY MOUSE@" ; species name
 	dw 100, 40 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is unskilled at"
 	next "storing electric"
 	next "power. Any kind of"
+
 	page "shock causes it to"
 	next "discharge energy"
 	next "spontaneously.@"
--- a/data/pokemon/dex_entries/pidgeot.asm
+++ b/data/pokemon/dex_entries/pidgeot.asm
@@ -1,4 +1,3 @@
-; PidgeotPokedexEntry: ; 0x181dd7
 	db "BIRD@" ; species name
 	dw 411, 870 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its outstanding"
 	next "vision allows it"
 	next "to spot splashing"
+
 	page "MAGIKARP, even"
 	next "while flying at"
 	next "3300 feet.@"
--- a/data/pokemon/dex_entries/pidgeotto.asm
+++ b/data/pokemon/dex_entries/pidgeotto.asm
@@ -1,4 +1,3 @@
-; PidgeottoPokedexEntry: ; 0x181d75
 	db "BIRD@" ; species name
 	dw 307, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It slowly flies in"
 	next "a circular pat-"
 	next "tern, all the"
+
 	page "while keeping a"
 	next "sharp lookout for"
 	next "prey.@"
--- a/data/pokemon/dex_entries/pidgey.asm
+++ b/data/pokemon/dex_entries/pidgey.asm
@@ -1,4 +1,3 @@
-; PidgeyPokedexEntry: ; 0x181cfa
 	db "TINY BIRD@" ; species name
 	dw 100, 40 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It rapidly flaps"
 	next "its wings in the"
 	next "grass, stirring up"
+
 	page "a dust cloud that"
 	next "drives insect prey"
 	next "out into the open.@"
--- a/data/pokemon/dex_entries/pikachu.asm
+++ b/data/pokemon/dex_entries/pikachu.asm
@@ -1,4 +1,3 @@
-; PikachuPokedexEntry: ; 0x1820ad
 	db "MOUSE@" ; species name
 	dw 104, 130 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it is anger-"
 	next "ed, it immediately"
 	next "discharges the"
+
 	page "energy stored in"
 	next "the pouches in its"
 	next "cheeks.@"
--- a/data/pokemon/dex_entries/piloswine.asm
+++ b/data/pokemon/dex_entries/piloswine.asm
@@ -1,4 +1,3 @@
-; PiloswinePokedexEntry: ; 0x1d0c01
 	db "SWINE@" ; species name
 	dw 307, 1230 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Although its legs"
 	next "are short, its"
 	next "rugged hooves"
+
 	page "prevent it from"
 	next "slipping, even on"
 	next "icy ground.@"
--- a/data/pokemon/dex_entries/pineco.asm
+++ b/data/pokemon/dex_entries/pineco.asm
@@ -1,4 +1,3 @@
-; PinecoPokedexEntry: ; 0x1d04b0
 	db "BAGWORM@" ; species name
 	dw 200, 160 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It spits out a"
 	next "fluid that it uses"
 	next "to glue tree bark"
+
 	page "to its body. The"
 	next "fluid hardens when"
 	next "it touches air.@"
--- a/data/pokemon/dex_entries/pinsir.asm
+++ b/data/pokemon/dex_entries/pinsir.asm
@@ -1,4 +1,3 @@
-; PinsirPokedexEntry: ; 0x1b99fb
 	db "STAGBEETLE@" ; species name
 	dw 411, 1210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When the tempera-"
 	next "ture drops at"
 	next "night, it sleeps"
+
 	page "on treetops or"
 	next "among roots where"
 	next "it is well hidden.@"
--- a/data/pokemon/dex_entries/politoed.asm
+++ b/data/pokemon/dex_entries/politoed.asm
@@ -1,4 +1,3 @@
-; PolitoedPokedexEntry: ; 0x1cd84b
 	db "FROG@" ; species name
 	dw 307, 750 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it expands"
 	next "its throat to"
 	next "croak out a tune,"
+
 	page "nearby POLIWAG and"
 	next "POLIWHIRL gather"
 	next "immediately.@"
--- a/data/pokemon/dex_entries/poliwag.asm
+++ b/data/pokemon/dex_entries/poliwag.asm
@@ -1,4 +1,3 @@
-; PoliwagPokedexEntry: ; 0x182f91
 	db "TADPOLE@" ; species name
 	dw 200, 270 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The swirl on its"
 	next "belly is its"
 	next "insides showing"
+
 	page "through the skin."
 	next "It looks clearer"
 	next "after it eats.@"
--- a/data/pokemon/dex_entries/poliwhirl.asm
+++ b/data/pokemon/dex_entries/poliwhirl.asm
@@ -1,4 +1,3 @@
-; PoliwhirlPokedexEntry: ; 0x182ffd
 	db "TADPOLE@" ; species name
 	dw 303, 440 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Though it is"
 	next "skilled at walk-"
 	next "ing, it prefers to"
+
 	page "live underwater"
 	next "where there is"
 	next "less danger.@"
--- a/data/pokemon/dex_entries/poliwrath.asm
+++ b/data/pokemon/dex_entries/poliwrath.asm
@@ -1,4 +1,3 @@
-; PoliwrathPokedexEntry: ; 0x183066
 	db "TADPOLE@" ; species name
 	dw 403, 1190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It can use its"
 	next "well-developed"
 	next "arms and legs to"
+
 	page "run on the surface"
 	next "of the water for a"
 	next "split second.@"
--- a/data/pokemon/dex_entries/ponyta.asm
+++ b/data/pokemon/dex_entries/ponyta.asm
@@ -1,4 +1,3 @@
-; PonytaPokedexEntry: ; 0x1b84f2
 	db "FIRE HORSE@" ; species name
 	dw 303, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Training by"
 	next "jumping over grass"
 	next "that grows longer"
+
 	page "every day has made"
 	next "it a world-class"
 	next "jumper.@"
--- a/data/pokemon/dex_entries/porygon.asm
+++ b/data/pokemon/dex_entries/porygon.asm
@@ -1,4 +1,3 @@
-; PorygonPokedexEntry: ; 0x1cc353
 	db "VIRTUAL@" ; species name
 	dw 207, 800 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "An artificial"
 	next "#MON created"
 	next "due to extensive"
+
 	page "research, it can"
 	next "perform only what"
 	next "is in its program.@"
--- a/data/pokemon/dex_entries/porygon2.asm
+++ b/data/pokemon/dex_entries/porygon2.asm
@@ -1,4 +1,3 @@
-; Porygon2PokedexEntry: ; 0x1d110c
 	db "VIRTUAL@" ; species name
 	dw 200, 720 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This manmade"
 	next "#MON evolved"
 	next "from the latest"
+
 	page "technology. It"
 	next "may have unprog-"
 	next "rammed reactions.@"
--- a/data/pokemon/dex_entries/primeape.asm
+++ b/data/pokemon/dex_entries/primeape.asm
@@ -1,4 +1,3 @@
-; PrimeapePokedexEntry: ; 0x182e39
 	db "PIG MONKEY@" ; species name
 	dw 303, 710 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It will beat up"
 	next "anyone who makes"
 	next "it mad, even if it"
+
 	page "has to chase them"
 	next "until the end of"
 	next "the world.@"
--- a/data/pokemon/dex_entries/psyduck.asm
+++ b/data/pokemon/dex_entries/psyduck.asm
@@ -1,4 +1,3 @@
-; PsyduckPokedexEntry: ; 0x182cee
 	db "DUCK@" ; species name
 	dw 207, 430 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The only time it"
 	next "can use its psy-"
 	next "chic power is when"
+
 	page "its sleeping brain"
 	next "cells happen to"
 	next "wake.@"
--- a/data/pokemon/dex_entries/pupitar.asm
+++ b/data/pokemon/dex_entries/pupitar.asm
@@ -1,4 +1,3 @@
-; PupitarPokedexEntry: ; 0x1d1709
 	db "HARD SHELL@" ; species name
 	dw 311, 3350 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It will not stay"
 	next "still, even while"
 	next "it's a pupa. It"
+
 	page "already has arms"
 	next "and legs under its"
 	next "solid shell.@"
--- a/data/pokemon/dex_entries/quagsire.asm
+++ b/data/pokemon/dex_entries/quagsire.asm
@@ -1,4 +1,3 @@
-; QuagsirePokedexEntry: ; 0x1d00dd
 	db "WATER FISH@" ; species name
 	dw 407, 1650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its body is always"
 	next "slimy. It often"
 	next "bangs its head on"
+
 	page "the river bottom"
 	next "as it swims but"
 	next "seems not to care.@"
--- a/data/pokemon/dex_entries/quilava.asm
+++ b/data/pokemon/dex_entries/quilava.asm
@@ -1,4 +1,3 @@
-; QuilavaPokedexEntry: ; 0x1ccb33
 	db "VOLCANO@" ; species name
 	dw 211, 420 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Before battle, it"
 	next "turns its back on"
 	next "its opponent to"
+
 	page "demonstrate how"
 	next "ferociously its"
 	next "fire blazes.@"
--- a/data/pokemon/dex_entries/qwilfish.asm
+++ b/data/pokemon/dex_entries/qwilfish.asm
@@ -1,4 +1,3 @@
-; QwilfishPokedexEntry: ; 0x1d07b1
 	db "BALLOON@" ; species name
 	dw 108, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When faced with a"
 	next "larger opponent,"
 	next "it swallows as"
+
 	page "much water as it"
 	next "can to match the"
 	next "opponent's size.@"
--- a/data/pokemon/dex_entries/raichu.asm
+++ b/data/pokemon/dex_entries/raichu.asm
@@ -1,4 +1,3 @@
-; RaichuPokedexEntry: ; 0x182117
 	db "MOUSE@" ; species name
 	dw 207, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If its electric"
 	next "pouches run empty,"
 	next "it raises its tail"
+
 	page "to gather electri-"
 	next "city from the"
 	next "atmosphere.@"
--- a/data/pokemon/dex_entries/raikou.asm
+++ b/data/pokemon/dex_entries/raikou.asm
@@ -1,4 +1,3 @@
-; RaikouPokedexEntry: ; 0x1d156b
 	db "THUNDER@" ; species name
 	dw 603, 3920 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This rough #MON"
 	next "stores energy"
 	next "inside its body,"
+
 	page "then sweeps across"
 	next "the land, shooting"
 	next "off electricity.@"
--- a/data/pokemon/dex_entries/rapidash.asm
+++ b/data/pokemon/dex_entries/rapidash.asm
@@ -1,4 +1,3 @@
-; RapidashPokedexEntry: ; 0x1b855e
 	db "FIRE HORSE@" ; species name
 	dw 507, 2090 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It just loves to"
 	next "gallop. The faster"
 	next "it goes, the long-"
+
 	page "er the swaying"
 	next "flames of its mane"
 	next "will become.@"
--- a/data/pokemon/dex_entries/raticate.asm
+++ b/data/pokemon/dex_entries/raticate.asm
@@ -1,4 +1,3 @@
-; RaticatePokedexEntry: ; 0x181ea3
 	db "RAT@" ; species name
 	dw 204, 410 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The webs on its"
 	next "hind legs enable"
 	next "it to cross"
+
 	page "rivers. It search-"
 	next "es wide areas for"
 	next "food.@"
--- a/data/pokemon/dex_entries/rattata.asm
+++ b/data/pokemon/dex_entries/rattata.asm
@@ -1,4 +1,3 @@
-; RattataPokedexEntry: ; 0x181e3d
 	db "RAT@" ; species name
 	dw 100, 80 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This #MON's"
 	next "impressive vital-"
 	next "ity allows it to"
+
 	page "live anywhere. It"
 	next "also multiplies"
 	next "very quickly.@"
--- a/data/pokemon/dex_entries/remoraid.asm
+++ b/data/pokemon/dex_entries/remoraid.asm
@@ -1,4 +1,3 @@
-; RemoraidPokedexEntry: ; 0x1d0cd3
 	db "JET@" ; species name
 	dw 200, 260 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To escape from an"
 	next "attacker, it may"
 	next "shoot water out of"
+
 	page "its mouth, then"
 	next "use that force to"
 	next "swim backward.@"
--- a/data/pokemon/dex_entries/rhydon.asm
+++ b/data/pokemon/dex_entries/rhydon.asm
@@ -1,4 +1,3 @@
-; RhydonPokedexEntry: ; 0x1b93c5
 	db "DRILL@" ; species name
 	dw 603, 2650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "By lightly spin-"
 	next "ning its drill-"
 	next "like horn, it can"
+
 	page "easily shatter"
 	next "even a diamond in"
 	next "the rough.@"
--- a/data/pokemon/dex_entries/rhyhorn.asm
+++ b/data/pokemon/dex_entries/rhyhorn.asm
@@ -1,4 +1,3 @@
-; RhyhornPokedexEntry: ; 0x1b935d
 	db "SPIKES@" ; species name
 	dw 303, 2540 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It can remember"
 	next "only one thing at"
 	next "a time. Once it"
+
 	page "starts rushing, it"
 	next "forgets why it"
 	next "started.@"
--- a/data/pokemon/dex_entries/sandshrew.asm
+++ b/data/pokemon/dex_entries/sandshrew.asm
@@ -1,4 +1,3 @@
-; SandshrewPokedexEntry: ; 0x182184
 	db "MOUSE@" ; species name
 	dw 200, 260 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It prefers dry,"
 	next "sandy places"
 	next "because it uses"
+
 	page "the sand to"
 	next "protect itself"
 	next "when threatened.@"
--- a/data/pokemon/dex_entries/sandslash.asm
+++ b/data/pokemon/dex_entries/sandslash.asm
@@ -1,4 +1,3 @@
-; SandslashPokedexEntry: ; 0x1821e7
 	db "MOUSE@" ; species name
 	dw 303, 650 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Adept at climbing"
 	next "trees, it rolls"
 	next "into a spiny ball,"
+
 	page "then attacks its"
 	next "enemies from"
 	next "above.@"
--- a/data/pokemon/dex_entries/scizor.asm
+++ b/data/pokemon/dex_entries/scizor.asm
@@ -1,4 +1,3 @@
-; ScizorPokedexEntry: ; 0x1d0821
 	db "SCISSORS@" ; species name
 	dw 511, 2600 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This #MON's"
 	next "pincers, which"
 	next "contain steel, can"
+
 	page "crush any hard"
 	next "object it gets a"
 	next "hold of into bits.@"
--- a/data/pokemon/dex_entries/scyther.asm
+++ b/data/pokemon/dex_entries/scyther.asm
@@ -1,4 +1,3 @@
-; ScytherPokedexEntry: ; 0x1b9851
 	db "MANTIS@" ; species name
 	dw 411, 1230 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It's very proud of"
 	next "its speed. It"
 	next "moves so fast that"
+
 	page "its opponent does"
 	next "not even know what"
 	next "knocked it down.@"
--- a/data/pokemon/dex_entries/seadra.asm
+++ b/data/pokemon/dex_entries/seadra.asm
@@ -1,4 +1,3 @@
-; SeadraPokedexEntry: ; 0x1b95b8
 	db "DRAGON@" ; species name
 	dw 311, 550 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The male raises"
 	next "the young. If it"
 	next "is approached, it"
+
 	page "uses its toxic"
 	next "spikes to fend off"
 	next "the intruder.@"
--- a/data/pokemon/dex_entries/seaking.asm
+++ b/data/pokemon/dex_entries/seaking.asm
@@ -1,4 +1,3 @@
-; SeakingPokedexEntry: ; 0x1b9690
 	db "GOLDFISH@" ; species name
 	dw 403, 860 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When autumn comes,"
 	next "the males patrol"
 	next "the area around"
+
 	page "their nests in"
 	next "order to protect"
 	next "their offspring.@"
--- a/data/pokemon/dex_entries/seel.asm
+++ b/data/pokemon/dex_entries/seel.asm
@@ -1,4 +1,3 @@
-; SeelPokedexEntry: ; 0x1b88bf
 	db "SEA LION@" ; species name
 	dw 307, 1980 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The light blue fur"
 	next "that covers it"
 	next "keeps it protected"
+
 	page "against the cold."
 	next "It loves iceberg-"
 	next "filled oceans.@"
--- a/data/pokemon/dex_entries/sentret.asm
+++ b/data/pokemon/dex_entries/sentret.asm
@@ -1,4 +1,3 @@
-; SentretPokedexEntry: ; 0x1ccd6b
 	db "SCOUT@" ; species name
 	dw 207, 130 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When acting as a"
 	next "lookout, it warns"
 	next "others of danger"
+
 	page "by screeching and"
 	next "hitting the ground"
 	next "with its tail.@"
--- a/data/pokemon/dex_entries/shellder.asm
+++ b/data/pokemon/dex_entries/shellder.asm
@@ -1,4 +1,3 @@
-; ShellderPokedexEntry: ; 0x1b8a68
 	db "BIVALVE@" ; species name
 	dw 100, 90 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Clamping on to an"
 	next "opponent reveals"
 	next "its vulnerable"
+
 	page "parts, so it uses"
 	next "this move only as"
 	next "a last resort.@"
--- a/data/pokemon/dex_entries/shuckle.asm
+++ b/data/pokemon/dex_entries/shuckle.asm
@@ -1,4 +1,3 @@
-; ShucklePokedexEntry: ; 0x1d088e
 	db "MOLD@" ; species name
 	dw 200, 450 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The fluid secreted"
 	next "by its toes carves"
 	next "holes in rocks for"
+
 	page "nesting and can be"
 	next "mixed with BERRIES"
 	next "to make a drink.@"
--- a/data/pokemon/dex_entries/skarmory.asm
+++ b/data/pokemon/dex_entries/skarmory.asm
@@ -1,4 +1,3 @@
-; SkarmoryPokedexEntry: ; 0x1d0e8c
 	db "ARMOR BIRD@" ; species name
 	dw 507, 1110 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The feathers that"
 	next "it sheds are very"
 	next "sharp. It is said"
+
 	page "that people once"
 	next "used the feathers"
 	next "as swords.@"
--- a/data/pokemon/dex_entries/skiploom.asm
+++ b/data/pokemon/dex_entries/skiploom.asm
@@ -1,4 +1,3 @@
-; SkiploomPokedexEntry: ; 0x1cd928
 	db "COTTONWEED@" ; species name
 	dw 200, 20 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As soon as it"
 	next "rains, it closes"
 	next "its flower and"
+
 	page "hides in the shade"
 	next "of a tree to avoid"
 	next "getting wet.@"
--- a/data/pokemon/dex_entries/slowbro.asm
+++ b/data/pokemon/dex_entries/slowbro.asm
@@ -1,4 +1,3 @@
-; SlowbroPokedexEntry: ; 0x1b8635
 	db "HERMITCRAB@" ; species name
 	dw 503, 1730 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "An attached"
 	next "SHELLDER won't let"
 	next "go because of the"
+
 	page "tasty flavor that"
 	next "oozes out of its"
 	next "tail.@"
--- a/data/pokemon/dex_entries/slowking.asm
+++ b/data/pokemon/dex_entries/slowking.asm
@@ -1,4 +1,3 @@
-; SlowkingPokedexEntry: ; 0x1d0292
 	db "ROYAL@" ; species name
 	dw 607, 1750 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Every time it ya-"
 	next "wns, SHELLDER"
 	next "injects more poi-"
+
 	page "son into it. The"
 	next "poison makes it"
 	next "more intelligent.@"
--- a/data/pokemon/dex_entries/slowpoke.asm
+++ b/data/pokemon/dex_entries/slowpoke.asm
@@ -1,4 +1,3 @@
-; SlowpokePokedexEntry: ; 0x1b85d3
 	db "DOPEY@" ; species name
 	dw 311, 790 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is always so"
 	next "absent-minded that"
 	next "it won't react,"
+
 	page "even if its"
 	next "flavorful tail is"
 	next "bitten.@"
--- a/data/pokemon/dex_entries/slugma.asm
+++ b/data/pokemon/dex_entries/slugma.asm
@@ -1,4 +1,3 @@
-; SlugmaPokedexEntry: ; 0x1d0ab8
 	db "LAVA@" ; species name
 	dw 204, 770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "These group to-"
 	next "gether in areas"
 	next "that are hotter"
+
 	page "than normal. If it"
 	next "cools off, its"
 	next "skin hardens.@"
--- a/data/pokemon/dex_entries/smeargle.asm
+++ b/data/pokemon/dex_entries/smeargle.asm
@@ -1,4 +1,3 @@
-; SmearglePokedexEntry: ; 0x1d11e0
 	db "PAINTER@" ; species name
 	dw 311, 1280 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The color of the"
 	next "mysterious fluid"
 	next "secreted from its"
+
 	page "tail is predeter-"
 	next "mined for each"
 	next "SMEARGLE.@"
--- a/data/pokemon/dex_entries/smoochum.asm
+++ b/data/pokemon/dex_entries/smoochum.asm
@@ -1,4 +1,3 @@
-; SmoochumPokedexEntry: ; 0x1d132b
 	db "KISS@" ; species name
 	dw 104, 130 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The sensitivity of"
 	next "its lips develops"
 	next "most quickly."
+
 	page "It uses them to"
 	next "try to identify"
 	next "unknown objects.@"
--- a/data/pokemon/dex_entries/sneasel.asm
+++ b/data/pokemon/dex_entries/sneasel.asm
@@ -1,4 +1,3 @@
-; SneaselPokedexEntry: ; 0x1d097a
 	db "SHARP CLAW@" ; species name
 	dw 211, 620 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This cunning"
 	next "#MON hides"
 	next "under the cover"
+
 	page "of darkness,"
 	next "waiting to attack"
 	next "its prey.@"
--- a/data/pokemon/dex_entries/snorlax.asm
+++ b/data/pokemon/dex_entries/snorlax.asm
@@ -1,4 +1,3 @@
-; SnorlaxPokedexEntry: ; 0x1cc5cf
 	db "SLEEPING@" ; species name
 	dw 611, 10140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This #MON's"
 	next "stomach is so"
 	next "strong, even"
+
 	page "eating moldy or"
 	next "rotten food will"
 	next "not affect it.@"
--- a/data/pokemon/dex_entries/snubbull.asm
+++ b/data/pokemon/dex_entries/snubbull.asm
@@ -1,4 +1,3 @@
-; SnubbullPokedexEntry: ; 0x1d06e0
 	db "FAIRY@" ; species name
 	dw 200, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In truth, it is a"
 	next "cowardly #MON."
 	next "It growls eagerly"
+
 	page "in order to hide"
 	next "its fear from its"
 	next "opponent.@"
--- a/data/pokemon/dex_entries/spearow.asm
+++ b/data/pokemon/dex_entries/spearow.asm
@@ -1,4 +1,3 @@
-; SpearowPokedexEntry: ; 0x181f03
 	db "TINY BIRD@" ; species name
 	dw 100, 40 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To protect its"
 	next "territory, it"
 	next "flies around"
+
 	page "ceaselessly,"
 	next "making high-"
 	next "pitched cries.@"
--- a/data/pokemon/dex_entries/spinarak.asm
+++ b/data/pokemon/dex_entries/spinarak.asm
@@ -1,4 +1,3 @@
-; SpinarakPokedexEntry: ; 0x1cd012
 	db "STRINGSPIT@" ; species name
 	dw 108, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If prey becomes"
 	next "ensnared in its"
 	next "nest of spun"
+
 	page "string, it waits"
 	next "motionlessly until"
 	next "it becomes dark.@"
--- a/data/pokemon/dex_entries/squirtle.asm
+++ b/data/pokemon/dex_entries/squirtle.asm
@@ -1,4 +1,3 @@
-; SquirtlePokedexEntry: ; 0x181926
 	db "TINYTURTLE@" ; species name
 	dw 108, 200 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it feels"
 	next "threatened, it"
 	next "draws its legs"
+
 	page "inside its shell"
 	next "and sprays water"
 	next "from its mouth.@"
--- a/data/pokemon/dex_entries/stantler.asm
+++ b/data/pokemon/dex_entries/stantler.asm
@@ -1,4 +1,3 @@
-; StantlerPokedexEntry: ; 0x1d1174
 	db "BIG HORN@" ; species name
 	dw 407, 1570 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The round balls"
 	next "found on the"
 	next "fallen antlers can"
+
 	page "be ground into a"
 	next "powder that aids"
 	next "in sleeping.@"
--- a/data/pokemon/dex_entries/starmie.asm
+++ b/data/pokemon/dex_entries/starmie.asm
@@ -1,4 +1,3 @@
-; StarmiePokedexEntry: ; 0x1b9776
 	db "MYSTERIOUS@" ; species name
 	dw 307, 1760 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is said that it"
 	next "uses the seven-"
 	next "colored core of"
+
 	page "its body to send"
 	next "electric waves"
 	next "into outer space.@"
--- a/data/pokemon/dex_entries/staryu.asm
+++ b/data/pokemon/dex_entries/staryu.asm
@@ -1,4 +1,3 @@
-; StaryuPokedexEntry: ; 0x1b9702
 	db "STARSHAPE@" ; species name
 	dw 207, 760 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When the stars"
 	next "twinkle at night,"
 	next "it floats up from"
+
 	page "the sea floor, and"
 	next "its body's center"
 	next "core flickers.@"
--- a/data/pokemon/dex_entries/steelix.asm
+++ b/data/pokemon/dex_entries/steelix.asm
@@ -1,4 +1,3 @@
-; SteelixPokedexEntry: ; 0x1d067c
 	db "IRON SNAKE@" ; species name
 	dw 3002, 8820 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The many small"
 	next "metal particles"
 	next "that cover this"
+
 	page "#MON's body"
 	next "reflect bright"
 	next "light well.@"
--- a/data/pokemon/dex_entries/sudowoodo.asm
+++ b/data/pokemon/dex_entries/sudowoodo.asm
@@ -1,4 +1,3 @@
-; SudowoodoPokedexEntry: ; 0x1cd7d9
 	db "IMITATION@" ; species name
 	dw 311, 840 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "If a tree branch"
 	next "shakes when there"
 	next "is no wind, it's a"
+
 	page "SUDOWOODO, not a"
 	next "tree. It hides"
 	next "from the rain.@"
--- a/data/pokemon/dex_entries/suicune.asm
+++ b/data/pokemon/dex_entries/suicune.asm
@@ -1,4 +1,3 @@
-; SuicunePokedexEntry: ; 0x1d1642
 	db "AURORA@" ; species name
 	dw 607, 4120 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This divine"
 	next "#MON blows"
 	next "around the world,"
+
 	page "always in search"
 	next "of a pure"
 	next "reservoir.@"
--- a/data/pokemon/dex_entries/sunflora.asm
+++ b/data/pokemon/dex_entries/sunflora.asm
@@ -1,4 +1,3 @@
-; SunfloraPokedexEntry: ; 0x1cdaef
 	db "SUN@" ; species name
 	dw 207, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As the hot season"
 	next "approaches, the"
 	next "petals on this"
+
 	page "#MON's face"
 	next "become more vivid"
 	next "and lively.@"
--- a/data/pokemon/dex_entries/sunkern.asm
+++ b/data/pokemon/dex_entries/sunkern.asm
@@ -1,4 +1,3 @@
-; SunkernPokedexEntry: ; 0x1cda87
 	db "SEED@" ; species name
 	dw 100, 40 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is very weak."
 	next "Its only means of"
 	next "defense is to"
+
 	page "shake its leaves"
 	next "desperately at its"
 	next "attacker.@"
--- a/data/pokemon/dex_entries/swinub.asm
+++ b/data/pokemon/dex_entries/swinub.asm
@@ -1,4 +1,3 @@
-; SwinubPokedexEntry: ; 0x1d0b8d
 	db "PIG@" ; species name
 	dw 104, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It uses the tip of"
 	next "its nose to dig"
 	next "for food. Its nose"
+
 	page "is so tough that"
 	next "even frozen ground"
 	next "poses no problem.@"
--- a/data/pokemon/dex_entries/tangela.asm
+++ b/data/pokemon/dex_entries/tangela.asm
@@ -1,4 +1,3 @@
-; TangelaPokedexEntry: ; 0x1b948c
 	db "VINE@" ; species name
 	dw 303, 770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During battle, it"
 	next "constantly moves"
 	next "the vines that"
+
 	page "cover its body in"
 	next "order to annoy its"
 	next "opponent.@"
--- a/data/pokemon/dex_entries/tauros.asm
+++ b/data/pokemon/dex_entries/tauros.asm
@@ -1,4 +1,3 @@
-; TaurosPokedexEntry: ; 0x1b9a6f
 	db "WILD BULL@" ; species name
 	dw 407, 1950 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "These violent"
 	next "#MON fight"
 	next "with other mem-"
+
 	page "bers of their herd"
 	next "in order to prove"
 	next "their strength.@"
--- a/data/pokemon/dex_entries/teddiursa.asm
+++ b/data/pokemon/dex_entries/teddiursa.asm
@@ -1,4 +1,3 @@
-; TeddiursaPokedexEntry: ; 0x1d09da
 	db "LITTLE BEAR@" ; species name
 	dw 200, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It always licks"
 	next "honey. Its palm"
 	next "tastes sweet"
+
 	page "because of all the"
 	next "honey it has"
 	next "absorbed.@"
--- a/data/pokemon/dex_entries/tentacool.asm
+++ b/data/pokemon/dex_entries/tentacool.asm
@@ -1,4 +1,3 @@
-; TentacoolPokedexEntry: ; 0x1b82d1
 	db "JELLYFISH@" ; species name
 	dw 211, 1000 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As it floats along"
 	next "on the waves, it"
 	next "uses its toxic"
+
 	page "feelers to stab"
 	next "anything it"
 	next "touches.@"
--- a/data/pokemon/dex_entries/tentacruel.asm
+++ b/data/pokemon/dex_entries/tentacruel.asm
@@ -1,4 +1,3 @@
-; TentacruelPokedexEntry: ; 0x1b8337
 	db "JELLYFISH@" ; species name
 	dw 503, 1210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When its 80 feel-"
 	next "ers absorb water,"
 	next "it stretches to"
+
 	page "become like a net"
 	next "to entangle its"
 	next "prey.@"
--- a/data/pokemon/dex_entries/togepi.asm
+++ b/data/pokemon/dex_entries/togepi.asm
@@ -1,4 +1,3 @@
-; TogepiPokedexEntry: ; 0x1cd396
 	db "SPIKE BALL@" ; species name
 	dw 100, 30 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It is considered"
 	next "to be a symbol of"
 	next "good luck. Its"
+
 	page "shell is said to"
 	next "be filled with"
 	next "happiness.@"
--- a/data/pokemon/dex_entries/togetic.asm
+++ b/data/pokemon/dex_entries/togetic.asm
@@ -1,4 +1,3 @@
-; TogeticPokedexEntry: ; 0x1cd402
 	db "HAPPINESS@" ; species name
 	dw 200, 70 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Although it does"
 	next "not flap its wings"
 	next "very much, it can"
+
 	page "stay up in the air"
 	next "as it tags along"
 	next "after its trainer.@"
--- a/data/pokemon/dex_entries/totodile.asm
+++ b/data/pokemon/dex_entries/totodile.asm
@@ -1,4 +1,3 @@
-; TotodilePokedexEntry: ; 0x1ccc14
 	db "BIG JAW@" ; species name
 	dw 200, 210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "This rough critter"
 	next "chomps at any"
 	next "moving object it"
+
 	page "sees. Turning your"
 	next "back on it is not"
 	next "recommended.@"
--- a/data/pokemon/dex_entries/typhlosion.asm
+++ b/data/pokemon/dex_entries/typhlosion.asm
@@ -1,4 +1,3 @@
-; TyphlosionPokedexEntry: ; 0x1ccba0
 	db "VOLCANO@" ; species name
 	dw 507, 1750 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When heat from its"
 	next "body causes the"
 	next "air around it to"
+
 	page "shimmer, this is a"
 	next "sign that it is"
 	next "ready to battle.@"
--- a/data/pokemon/dex_entries/tyranitar.asm
+++ b/data/pokemon/dex_entries/tyranitar.asm
@@ -1,4 +1,3 @@
-; TyranitarPokedexEntry: ; 0x1d177b
 	db "ARMOR@" ; species name
 	dw 607, 4450 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In just one of its"
 	next "mighty hands, it"
 	next "has the power to"
+
 	page "make the ground"
 	next "shake and moun-"
 	next "tains crumble.@"
--- a/data/pokemon/dex_entries/tyrogue.asm
+++ b/data/pokemon/dex_entries/tyrogue.asm
@@ -1,4 +1,3 @@
-; TyroguePokedexEntry: ; 0x1d124b
 	db "SCUFFLE@" ; species name
 	dw 204, 460 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "To brush up on its"
 	next "fighting skills,"
 	next "it will challenge"
+
 	page "anyone. It has a"
 	next "very strong com-"
 	next "petitive spirit.@"
--- a/data/pokemon/dex_entries/umbreon.asm
+++ b/data/pokemon/dex_entries/umbreon.asm
@@ -1,4 +1,3 @@
-; UmbreonPokedexEntry: ; 0x1d01af
 	db "MOONLIGHT@" ; species name
 	dw 303, 600 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "On the night of a"
 	next "full moon, or when"
 	next "it gets excited,"
+
 	page "the ring patterns"
 	next "on its body glow"
 	next "yellow.@"
--- a/data/pokemon/dex_entries/unown.asm
+++ b/data/pokemon/dex_entries/unown.asm
@@ -1,4 +1,3 @@
-; UnownPokedexEntry: ; 0x1d0373
 	db "SYMBOL@" ; species name
 	dw 108, 110 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Because different"
 	next "types of UNOWN"
 	next "exist, it is said"
+
 	page "that they must"
 	next "have a variety of"
 	next "abilities.@"
--- a/data/pokemon/dex_entries/ursaring.asm
+++ b/data/pokemon/dex_entries/ursaring.asm
@@ -1,4 +1,3 @@
-; UrsaringPokedexEntry: ; 0x1d0a41
 	db "HIBERNANT@" ; species name
 	dw 511, 2770 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Although it has a"
 	next "large body, it is"
 	next "quite skilled at"
+
 	page "climbing trees. It"
 	next "eats and sleeps in"
 	next "the treetops.@"
--- a/data/pokemon/dex_entries/vaporeon.asm
+++ b/data/pokemon/dex_entries/vaporeon.asm
@@ -1,4 +1,3 @@
-; VaporeonPokedexEntry: ; 0x1cc224
 	db "BUBBLE JET@" ; species name
 	dw 303, 640 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As it uses the"
 	next "fins on the tip"
 	next "of its tail to"
+
 	page "swim, it blends"
 	next "with the water"
 	next "perfectly.@"
--- a/data/pokemon/dex_entries/venomoth.asm
+++ b/data/pokemon/dex_entries/venomoth.asm
@@ -1,4 +1,3 @@
-; VenomothPokedexEntry: ; 0x182abf
 	db "POISONMOTH@" ; species name
 	dw 411, 280 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The scales it"
 	next "scatters will"
 	next "paralyze anyone"
+
 	page "who touches them,"
 	next "making that person"
 	next "unable to stand.@"
--- a/data/pokemon/dex_entries/venonat.asm
+++ b/data/pokemon/dex_entries/venonat.asm
@@ -1,4 +1,3 @@
-; VenonatPokedexEntry: ; 0x182a53
 	db "INSECT@" ; species name
 	dw 303, 660 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The small bugs it"
 	next "eats appear only"
 	next "at night, so it"
+
 	page "sleeps in a hole"
 	next "in a tree until"
 	next "night falls.@"
--- a/data/pokemon/dex_entries/venusaur.asm
+++ b/data/pokemon/dex_entries/venusaur.asm
@@ -1,4 +1,3 @@
-; VenusaurPokedexEntry: ; 0x181773
 	db "SEED@" ; species name
 	dw 607, 2210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As it warms it-"
 	next "self and absorbs"
 	next "the sunlight, its"
+
 	page "flower petals"
 	next "release a pleasant"
 	next "fragrance.@"
--- a/data/pokemon/dex_entries/victreebel.asm
+++ b/data/pokemon/dex_entries/victreebel.asm
@@ -1,4 +1,3 @@
-; VictreebelPokedexEntry: ; 0x1b826e
 	db "FLYCATCHER@" ; species name
 	dw 507, 340 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Once ingested into"
 	next "this #MON's"
 	next "body, even the"
+
 	page "hardest object"
 	next "will melt into"
 	next "nothing.@"
--- a/data/pokemon/dex_entries/vileplume.asm
+++ b/data/pokemon/dex_entries/vileplume.asm
@@ -1,4 +1,3 @@
-; VileplumePokedexEntry: ; 0x182918
 	db "FLOWER@" ; species name
 	dw 311, 410 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "By shaking its big"
 	next "petals, it scat-"
 	next "ters toxic pollen"
+
 	page "into the air,"
 	next "turning the air"
 	next "yellow.@"
--- a/data/pokemon/dex_entries/voltorb.asm
+++ b/data/pokemon/dex_entries/voltorb.asm
@@ -1,4 +1,3 @@
-; VoltorbPokedexEntry: ; 0x1b8eb0
 	db "BALL@" ; species name
 	dw 108, 230 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During the study"
 	next "of this #MON,"
 	next "it was discovered"
+
 	page "that its compo-"
 	next "nents are not"
 	next "found in nature.@"
--- a/data/pokemon/dex_entries/vulpix.asm
+++ b/data/pokemon/dex_entries/vulpix.asm
@@ -1,4 +1,3 @@
-; VulpixPokedexEntry: ; 0x18259b
 	db "FOX@" ; species name
 	dw 200, 220 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "As its body grows"
 	next "larger, its six"
 	next "warm tails become"
+
 	page "more beautiful,"
 	next "with a more luxur-"
 	next "ious coat of fur.@"
--- a/data/pokemon/dex_entries/wartortle.asm
+++ b/data/pokemon/dex_entries/wartortle.asm
@@ -1,4 +1,3 @@
-; WartortlePokedexEntry: ; 0x181993
 	db "TURTLE@" ; species name
 	dw 303, 500 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Its long, furry"
 	next "tail is a symbol"
 	next "of longevity,"
+
 	page "making it quite"
 	next "popular among"
 	next "older people.@"
--- a/data/pokemon/dex_entries/weedle.asm
+++ b/data/pokemon/dex_entries/weedle.asm
@@ -1,4 +1,3 @@
-; WeedlePokedexEntry: ; 0x181bb4
 	db "HAIRY BUG@" ; species name
 	dw 100, 70 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The barb on top of"
 	next "its head secretes"
 	next "a strong poison."
+
 	page "It uses this toxic"
 	next "barb to protect"
 	next "itself.@"
--- a/data/pokemon/dex_entries/weepinbell.asm
+++ b/data/pokemon/dex_entries/weepinbell.asm
@@ -1,4 +1,3 @@
-; WeepinbellPokedexEntry: ; 0x1b81fd
 	db "FLYCATCHER@" ; species name
 	dw 303, 140 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it's hungry,"
 	next "it swings its"
 	next "razor-sharp"
+
 	page "leaves, slicing up"
 	next "any unlucky object"
 	next "nearby for food.@"
--- a/data/pokemon/dex_entries/weezing.asm
+++ b/data/pokemon/dex_entries/weezing.asm
@@ -1,4 +1,3 @@
-; WeezingPokedexEntry: ; 0x1b92ec
 	db "POISON GAS@" ; species name
 	dw 311, 210 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "When it inhales"
 	next "poisonous gases"
 	next "from garbage, its"
+
 	page "body expands, and"
 	next "its insides smell"
 	next "much worse.@"
--- a/data/pokemon/dex_entries/wigglytuff.asm
+++ b/data/pokemon/dex_entries/wigglytuff.asm
@@ -1,4 +1,3 @@
-; WigglytuffPokedexEntry: ; 0x1826e9
 	db "BALLOON@" ; species name
 	dw 303, 260 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "The rich, fluffy"
 	next "fur that covers"
 	next "its body feels so"
+
 	page "good that anyone"
 	next "who feels it can't"
 	next "stop touching it.@"
--- a/data/pokemon/dex_entries/wobbuffet.asm
+++ b/data/pokemon/dex_entries/wobbuffet.asm
@@ -1,4 +1,3 @@
-; WobbuffetPokedexEntry: ; 0x1d03dd
 	db "PATIENT@" ; species name
 	dw 403, 630 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "In order to con-"
 	next "ceal its black"
 	next "tail, it lives in"
+
 	page "a dark cave and"
 	next "only moves about"
 	next "at night.@"
--- a/data/pokemon/dex_entries/wooper.asm
+++ b/data/pokemon/dex_entries/wooper.asm
@@ -1,4 +1,3 @@
-; WooperPokedexEntry: ; 0x1d0078
 	db "WATER FISH@" ; species name
 	dw 104, 190 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "A mucous"
 	next "membrane covers"
 	next "its body. Touching"
+
 	page "it barehanded will"
 	next "cause a shooting"
 	next "pain.@"
--- a/data/pokemon/dex_entries/xatu.asm
+++ b/data/pokemon/dex_entries/xatu.asm
@@ -1,4 +1,3 @@
-; XatuPokedexEntry: ; 0x1cd4e9
 	db "MYSTIC@" ; species name
 	dw 411, 330 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Once it begins to"
 	next "meditate at sun-"
 	next "rise, the entire"
+
 	page "day will pass"
 	next "before it will"
 	next "move again.@"
--- a/data/pokemon/dex_entries/yanma.asm
+++ b/data/pokemon/dex_entries/yanma.asm
@@ -1,4 +1,3 @@
-; YanmaPokedexEntry: ; 0x1d0000
 	db "CLEAR WING@" ; species name
 	dw 311, 840 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "It can see in all"
 	next "directions without"
 	next "moving its big"
+
 	page "eyes, helping it"
 	next "spot attackers and"
 	next "food right away.@"
--- a/data/pokemon/dex_entries/zapdos.asm
+++ b/data/pokemon/dex_entries/zapdos.asm
@@ -1,4 +1,3 @@
-; ZapdosPokedexEntry: ; 0x1cc697
 	db "ELECTRIC@" ; species name
 	dw 503, 1160 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "Legendary bird"
 	next "#MON. They say"
 	next "lightning caused"
+
 	page "by the flapping of"
 	next "its wings causes"
 	next "summer storms.@"
--- a/data/pokemon/dex_entries/zubat.asm
+++ b/data/pokemon/dex_entries/zubat.asm
@@ -1,4 +1,3 @@
-; ZubatPokedexEntry: ; 0x18275d
 	db "BAT@" ; species name
 	dw 207, 170 ; height, weight
 
@@ -5,6 +4,7 @@
 	db   "During the day, it"
 	next "gathers with"
 	next "others and hangs"
+
 	page "from the ceilings"
 	next "of old buildings"
 	next "and caves.@"