diff options
45 files changed, 487 insertions, 467 deletions
@@ -4,9 +4,12 @@ ## Questions - [What is pokecrystal11.gbc?](#what-is-pokecrystal11gbc) -- [Can't build ROM; "ERROR: `UNION` already defined"](#cant-build-rom-error-union-already-defined) -- [Can't build ROM; "Segmentation fault" from `rgbgfx`](#cant-build-rom-segmentation-fault-from-rgbgfx) -- [Can't build ROM; "Section is too big" or "Unable to place section in bank"](#cant-build-rom-section-is-too-big-or-unable-to-place-section-in-bank) +- [I can't build the ROM, `make` just prints an error!](#i-cant-build-the-rom-make-just-prints-an-error) + - [`gcc`: command not found](#gcc-command-not-found) + - ["ERROR: `UNION` already defined"](#error-union-already-defined) + - ["Segmentation fault" from `rgbgfx`](#segmentation-fault-from-rgbgfx) + - ["Section is too big" or "Unable to place section in bank"](#section-is-too-big-or-unable-to-place-section-in-bank) + - ["Invalid file or object file version"](#invalid-file-or-object-file-version) - [How do I edit maps?](#how-do-i-edit-maps) - [How do I write new features?](#how-do-i-write-new-features) - [I need more help!](#i-need-more-help) @@ -17,31 +20,41 @@ Version 1.1 of Pokémon Crystal, which fixed some issues with the initial international release. `make crystal11` defines `_CRYSTAL11` so the assembly builds the changed version. -## Can't build ROM; "ERROR: `UNION` already defined" +## I can't build the ROM, `make` just prints an error! -Download [**rgbds 0.3.3**][rgbds]. Earlier versions will not work. +Reread [INSTALL.md](INSTALL.md) carefully, and make sure you're following all its steps. +### `gcc`: command not found -## Can't build ROM; "Segmentation fault" from `rgbgfx` +You need to install `gcc`. If you're using Cygwin, re-run its setup, and at "Select Packages", choose to install `gcc-core`. -If you are using 64-bit Windows, download [**64-bit Cygwin**][cygwin] and [**64-bit rgbds**][rgbds]. +### "ERROR: `UNION` already defined" + +Download [the latest **rgbds** release][rgbds]. Versions earlier than 0.3.3 will not work. +### "Segmentation fault" from `rgbgfx` + +If you are using 64-bit Windows, download [**64-bit Cygwin**][cygwin] and [**64-bit rgbds**][rgbds]. -## Can't build ROM; "Section is too big" or "Unable to place section in bank" +### "Section is too big" or "Unable to place section in bank" If you have not changed any of the asm, make sure you have the latest version of pokecrystal and the correct version of rgbds (see [INSTALL.md](INSTALL.md)). If you added or changed any code, it has to fit in the **memory banks**. The 2MB ROM is divided into 128 banks of 4KB each, numbered $00 to $7F. The linkerscript **pokecrystal.link** lists which `SECTION`s go in which banks. Try moving some code into a new section. +### "Invalid file or object file version" + +Run `make clean` to remove all the old `o` files, then re-run `make`. + ## How do I edit maps? -For `asm` scripts, read [docs/map_event_scripts.md](docs/map_event_scripts.md). For `blk` layouts, try [crowdmap][crowdmap] or [Polished Map][polished-map]. +For `asm` scripts, read [docs/map_event_scripts.md](docs/map_event_scripts.md). For `blk` layouts, try [Polished Map][polished-map] or [crowdmap][crowdmap]. ## How do I write new features? -There are a number of special-purpose scripting languages, as described in [docs](docs/). For more general features, you'll need to code directly in assembly language. See [docs/assembly_programming.md](docs/assembly_programming.md). +There are a number of special-purpose scripting languages, as described in [docs](docs/). For more general features, you'll need to code directly in assembly language. See [docs/assembly_programming.md](docs/assembly_programming.md). Some of the [tutorials][tutorials] may also be helpful. ## I need more help! @@ -50,5 +63,6 @@ Try asking on IRC or Discord (see [README.md](README.md)). [cygwin]: https://cygwin.com/install.html [rgbds]: https://github.com/rednex/rgbds/releases -[crowdmap]: https://github.com/yenatch/crowdmap/ [polished-map]: https://github.com/Rangi42/polished-map +[crowdmap]: https://github.com/yenatch/crowdmap/ +[tutorials]: https://github.com/pret/pokecrystal/wiki/Tutorials diff --git a/audio/sfx.asm b/audio/sfx.asm index dbc10ddbb..977770069 100644 --- a/audio/sfx.asm +++ b/audio/sfx.asm @@ -3650,8 +3650,8 @@ Sfx_2Boops_Ch5: soundinput $8 endchannel -Sfx_UnknownCB: - musicheader 1, 8, Sfx_UnknownCB_Ch8 +Sfx_IntroWhoosh: + musicheader 1, 8, Sfx_IntroWhoosh_Ch8 Sfx_Menu_Ch8: noise __, 2, $e2, $33 @@ -4703,7 +4703,7 @@ Sfx_Unknown60_Ch8: noise __, 16, $f2, $43 endchannel -Sfx_UnknownCB_Ch8: +Sfx_IntroWhoosh_Ch8: noise __, 2, $10, $10 noise __, 3, $20, $10 noise __, 3, $30, $20 diff --git a/audio/sfx_pointers.asm b/audio/sfx_pointers.asm index 7ab55649b..0e066c60a 100644 --- a/audio/sfx_pointers.asm +++ b/audio/sfx_pointers.asm @@ -204,7 +204,7 @@ SFX: dba Sfx_IntroSuicune4 dba Sfx_GameFreakPresents dba Sfx_Tingle - dba Sfx_UnknownCB + dba Sfx_IntroWhoosh dba Sfx_TwoPcBeeps dba Sfx_4NoteDitty dba Sfx_Twinkle diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index 64e99d1d7..e9fe6acbd 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -61,6 +61,7 @@ MOVE_LENGTH EQU const_value const STAT_DEF const STAT_SPD const STAT_SATK +NUM_EXP_STATS EQU const_value + -1 const STAT_SDEF NUM_STATS EQU const_value STAT_SPC EQU STAT_SATK diff --git a/constants/hardware_constants.asm b/constants/hardware_constants.asm index d96672c3a..34c7d6813 100644 --- a/constants/hardware_constants.asm +++ b/constants/hardware_constants.asm @@ -58,10 +58,6 @@ X_FLIP EQU 1 << OAM_X_FLIP ; $20 Y_FLIP EQU 1 << OAM_Y_FLIP ; $40 PRIORITY EQU 1 << OAM_PRIORITY ; $80 -; Other useful constants -LCDC_DEFAULT EQU %11100011 -LY_VBLANK EQU 144 - ; Hardware registers rJOYP EQU $ff00 ; Joypad (R/W) rSB EQU $ff01 ; Serial transfer data (R/W) @@ -119,14 +115,20 @@ rWave_d EQU $ff3d rWave_e EQU $ff3e rWave_f EQU $ff3f rLCDC EQU $ff40 ; LCD Control (R/W) +rLCDC_BG_PRIORITY EQU 0 ; 0=Off, 1=On rLCDC_SPRITES_ENABLE EQU 1 ; 0=Off, 1=On rLCDC_SPRITE_SIZE EQU 2 ; 0=8x8, 1=8x16 +rLCDC_BG_TILEMAP EQU 3 ; 0=9800-9BFF, 1=9C00-9FFF +rLCDC_TILE_DATA EQU 4 ; 0=8800-97FF, 1=8000-8FFF +rLCDC_WINDOW_ENABLE EQU 5 ; 0=Off, 1=On rLCDC_WINDOW_TILEMAP EQU 6 ; 0=9800-9BFF, 1=9C00-9FFF rLCDC_ENABLE EQU 7 ; 0=Off, 1=On +LCDC_DEFAULT EQU (1 << rLCDC_ENABLE) | (1 << rLCDC_WINDOW_TILEMAP) | (1 << rLCDC_WINDOW_ENABLE) | (1 << rLCDC_SPRITES_ENABLE) | (1 << rLCDC_BG_PRIORITY) rSTAT EQU $ff41 ; LCDC Status (R/W) rSCY EQU $ff42 ; Scroll Y (R/W) rSCX EQU $ff43 ; Scroll X (R/W) rLY EQU $ff44 ; LCDC Y-Coordinate (R) +LY_VBLANK EQU 144 rLYC EQU $ff45 ; LY Compare (R/W) rDMA EQU $ff46 ; DMA Transfer and Start Address (W) rBGP EQU $ff47 ; BG Palette Data (R/W) - Non CGB Mode Only diff --git a/constants/npc_trade_constants.asm b/constants/npc_trade_constants.asm index 653ce3555..f84db5df4 100644 --- a/constants/npc_trade_constants.asm +++ b/constants/npc_trade_constants.asm @@ -19,6 +19,7 @@ NPCTRADE_PADDING EQU 31 ; db const NPC_TRADE_CHRIS ; 4 const NPC_TRADE_KIM ; 5 const NPC_TRADE_FOREST ; 6 +NUM_NPC_TRADES EQU const_value ; trade gender limits const_def diff --git a/constants/sfx_constants.asm b/constants/sfx_constants.asm index 9d98e147d..37fd908db 100644 --- a/constants/sfx_constants.asm +++ b/constants/sfx_constants.asm @@ -128,7 +128,7 @@ const SFX_SWEET_KISS ; 7c const SFX_SWEET_KISS_2 ; 7d const SFX_BELLY_DRUM ; 7e - const SFX_UNKNOWN_7F ; 7f + const SFX_TOXIC ; 7f const SFX_SLUDGE_BOMB ; 80 const SFX_FORESIGHT ; 81 const SFX_SPITE ; 82 @@ -206,7 +206,7 @@ const SFX_INTRO_SUICUNE_4 ; c8 const SFX_GAME_FREAK_PRESENTS ; c9 const SFX_TINGLE ; ca - const SFX_UNKNOWN_CB ; cb + const SFX_INTRO_WHOOSH ; cb const SFX_TWO_PC_BEEPS ; cc const SFX_4_NOTE_DITTY ; cd const SFX_TWINKLE ; ce diff --git a/constants/wram_constants.asm b/constants/wram_constants.asm index 9f9132a66..5889ca7a6 100644 --- a/constants/wram_constants.asm +++ b/constants/wram_constants.asm @@ -20,17 +20,17 @@ AUTO_INPUT EQU $ff GAMETIMERPAUSE_TIMER_PAUSED_F EQU 0 GAMETIMERPAUSE_MOBILE_7_F EQU 7 -; wOptions:: (bits 4-7) ; cfcc +; wOptions:: ; cfcc +TEXT_DELAY_MASK EQU %111 const_def 4 const NO_TEXT_SCROLL ; 4 const STEREO ; 5 const BATTLE_SHIFT ; 6 const BATTLE_SCENE ; 7 -; wOptions:: (bits 0-2) ; cfcc -TEXT_DELAY_FAST EQU 1 -TEXT_DELAY_MED EQU 3 -TEXT_DELAY_SLOW EQU 5 +TEXT_DELAY_FAST EQU %001 ; 1 +TEXT_DELAY_MED EQU %011 ; 3 +TEXT_DELAY_SLOW EQU %101 ; 5 ; wTextBoxFrame:: ; cfce const_def diff --git a/data/battle/critical_hits.asm b/data/battle/critical_hit_chances.asm index 5800d57f4..0128f1a1e 100644 --- a/data/battle/critical_hits.asm +++ b/data/battle/critical_hit_chances.asm @@ -1,13 +1,3 @@ -CriticalHitMoves: - db KARATE_CHOP - db RAZOR_WIND - db RAZOR_LEAF - db CRABHAMMER - db SLASH - db AEROBLAST - db CROSS_CHOP - db -1 - CriticalHitChances: db 7 percent ; 0 db 12 percent + 2 ; +1 diff --git a/data/battle_tower/parties.asm b/data/battle_tower/parties.asm index 15b7cdc4e..e0d2b4dec 100644 --- a/data/battle_tower/parties.asm +++ b/data/battle_tower/parties.asm @@ -14,7 +14,7 @@ BattleTowerMons1: bigdw 40000 bigdw 35000 bigdw 40000 - db $dd, $bd ; DVs + dn 13, 13, 11, 13 ; DVs db 15, 5, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -40,7 +40,7 @@ BattleTowerMons1: bigdw 35000 bigdw 40000 bigdw 40000 - db $ed, $fb ; DVs + dn 14, 13, 15, 11 ; DVs db 10, 10, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -66,7 +66,7 @@ BattleTowerMons1: bigdw 45000 bigdw 50000 bigdw 40000 - db $db, $ef ; DVs + dn 13, 11, 14, 15 ; DVs db 15, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -92,7 +92,7 @@ BattleTowerMons1: bigdw 50000 bigdw 50000 bigdw 50000 - db $7f, $d7 ; DVs + dn 7, 15, 13, 7 ; DVs db 20, 20, 25, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -118,7 +118,7 @@ BattleTowerMons1: bigdw 40000 bigdw 30000 bigdw 30000 - db $ef, $cf ; DVs + dn 14, 15, 12, 15 ; DVs db 15, 5, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -144,7 +144,7 @@ BattleTowerMons1: bigdw 33300 bigdw 30000 bigdw 30000 - db $fe, $fd ; DVs + dn 15, 14, 15, 13 ; DVs db 15, 10, 20, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -170,7 +170,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 35000 - db $bb, $df ; DVs + dn 11, 11, 13, 15 ; DVs db 5, 10, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -196,7 +196,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $db, $fb ; DVs + dn 13, 11, 15, 11 ; DVs db 5, 20, 10, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -222,7 +222,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 5, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -248,7 +248,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $fb, $bf ; DVs + dn 15, 11, 11, 15 ; DVs db 20, 20, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -274,7 +274,7 @@ BattleTowerMons1: bigdw 40000 bigdw 30000 bigdw 30000 - db $fb, $de ; DVs + dn 15, 11, 13, 14 ; DVs db 10, 5, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -300,7 +300,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $ef, $df ; DVs + dn 14, 15, 13, 15 ; DVs db 5, 5, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -326,7 +326,7 @@ BattleTowerMons1: bigdw 30000 bigdw 33000 bigdw 30000 - db $fd, $fe ; DVs + dn 15, 13, 15, 14 ; DVs db 20, 10, 20, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -352,7 +352,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $ed, $fd ; DVs + dn 14, 13, 15, 13 ; DVs db 20, 10, 15, 30 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -378,7 +378,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $df, $ce ; DVs + dn 13, 15, 12, 14 ; DVs db 15, 10, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -404,7 +404,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $ef, $f7 ; DVs + dn 14, 15, 15, 7 ; DVs db 15, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -430,7 +430,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 10, 5, 10, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -456,7 +456,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $f7, $f7 ; DVs + dn 15, 7, 15, 7 ; DVs db 15, 10, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -482,7 +482,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $ff, $ff ; DVs + dn 15, 15, 15, 15 ; DVs db 15, 0, 0, 0 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -508,7 +508,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $65, $57 ; DVs + dn 6, 5, 5, 7 ; DVs db 15, 15, 30, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -534,7 +534,7 @@ BattleTowerMons1: bigdw 30000 bigdw 30000 bigdw 30000 - db $73, $67 ; DVs + dn 7, 3, 6, 7 ; DVs db 10, 10, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -563,7 +563,7 @@ BattleTowerMons2: bigdw 50000 bigdw 50000 bigdw 50000 - db $cf, $bc ; DVs + dn 12, 15, 11, 12 ; DVs db 10, 10, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -589,7 +589,7 @@ BattleTowerMons2: bigdw 50000 bigdw 50000 bigdw 50000 - db $db, $db ; DVs + dn 13, 11, 13, 11 ; DVs db 20, 10, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -615,7 +615,7 @@ BattleTowerMons2: bigdw 50000 bigdw 50000 bigdw 50000 - db $fa, $fd ; DVs + dn 15, 10, 15, 13 ; DVs db 5, 10, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -641,7 +641,7 @@ BattleTowerMons2: bigdw 50000 bigdw 30000 bigdw 50000 - db $ff, $ff ; DVs + dn 15, 15, 15, 15 ; DVs db 20, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -667,7 +667,7 @@ BattleTowerMons2: bigdw 30000 bigdw 50000 bigdw 40000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 10, 10, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -693,7 +693,7 @@ BattleTowerMons2: bigdw 50000 bigdw 55000 bigdw 50000 - db $db, $fb ; DVs + dn 13, 11, 15, 11 ; DVs db 15, 20, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -719,7 +719,7 @@ BattleTowerMons2: bigdw 45000 bigdw 30000 bigdw 45000 - db $df, $de ; DVs + dn 13, 15, 13, 14 ; DVs db 10, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -745,7 +745,7 @@ BattleTowerMons2: bigdw 50000 bigdw 45000 bigdw 45000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 5, 10, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -771,7 +771,7 @@ BattleTowerMons2: bigdw 40000 bigdw 50000 bigdw 45000 - db $fb, $bb ; DVs + dn 15, 11, 11, 11 ; DVs db 10, 5, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -797,7 +797,7 @@ BattleTowerMons2: bigdw 30000 bigdw 30000 bigdw 50000 - db $bd, $fe ; DVs + dn 11, 13, 15, 14 ; DVs db 10, 25, 10, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -823,7 +823,7 @@ BattleTowerMons2: bigdw 40000 bigdw 55000 bigdw 30000 - db $fe, $d7 ; DVs + dn 15, 14, 13, 7 ; DVs db 10, 15, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -849,7 +849,7 @@ BattleTowerMons2: bigdw 45000 bigdw 50000 bigdw 50000 - db $fc, $fe ; DVs + dn 15, 12, 15, 14 ; DVs db 15, 20, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -875,7 +875,7 @@ BattleTowerMons2: bigdw 40000 bigdw 45000 bigdw 50000 - db $fd, $fe ; DVs + dn 15, 13, 15, 14 ; DVs db 25, 20, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -901,7 +901,7 @@ BattleTowerMons2: bigdw 35000 bigdw 50000 bigdw 30000 - db $fb, $fd ; DVs + dn 15, 11, 15, 13 ; DVs db 15, 15, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -927,7 +927,7 @@ BattleTowerMons2: bigdw 50000 bigdw 30000 bigdw 30000 - db $fb, $ef ; DVs + dn 15, 11, 14, 15 ; DVs db 15, 10, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -953,7 +953,7 @@ BattleTowerMons2: bigdw 40000 bigdw 40000 bigdw 40000 - db $ed, $f7 ; DVs + dn 14, 13, 15, 7 ; DVs db 15, 5, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -979,7 +979,7 @@ BattleTowerMons2: bigdw 40000 bigdw 40000 bigdw 40000 - db $df, $fe ; DVs + dn 13, 15, 15, 14 ; DVs db 10, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1005,7 +1005,7 @@ BattleTowerMons2: bigdw 40000 bigdw 40000 bigdw 40000 - db $c7, $fe ; DVs + dn 12, 7, 15, 14 ; DVs db 5, 5, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1031,7 +1031,7 @@ BattleTowerMons2: bigdw 30000 bigdw 30000 bigdw 30000 - db $c7, $77 ; DVs + dn 12, 7, 7, 7 ; DVs db 10, 15, 10, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1057,7 +1057,7 @@ BattleTowerMons2: bigdw 30000 bigdw 30000 bigdw 30000 - db $56, $46 ; DVs + dn 5, 6, 4, 6 ; DVs db 5, 10, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1083,7 +1083,7 @@ BattleTowerMons2: bigdw 30000 bigdw 30000 bigdw 30000 - db $55, $47 ; DVs + dn 5, 5, 4, 7 ; DVs db 20, 10, 15, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1112,7 +1112,7 @@ BattleTowerMons3: bigdw 50000 bigdw 50000 bigdw 55000 - db $db, $ed ; DVs + dn 13, 11, 14, 13 ; DVs db 15, 20, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1138,7 +1138,7 @@ BattleTowerMons3: bigdw 55000 bigdw 55000 bigdw 50000 - db $dd, $fb ; DVs + dn 13, 13, 15, 11 ; DVs db 15, 15, 5, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1164,7 +1164,7 @@ BattleTowerMons3: bigdw 50000 bigdw 50000 bigdw 50000 - db $ff, $ff ; DVs + dn 15, 15, 15, 15 ; DVs db 20, 10, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1190,7 +1190,7 @@ BattleTowerMons3: bigdw 50000 bigdw 30000 bigdw 50000 - db $fb, $ee ; DVs + dn 15, 11, 14, 14 ; DVs db 5, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1216,7 +1216,7 @@ BattleTowerMons3: bigdw 30000 bigdw 50000 bigdw 50000 - db $ef, $ff ; DVs + dn 14, 15, 15, 15 ; DVs db 10, 10, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1242,7 +1242,7 @@ BattleTowerMons3: bigdw 50000 bigdw 55000 bigdw 50000 - db $df, $db ; DVs + dn 13, 15, 13, 11 ; DVs db 5, 5, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1268,7 +1268,7 @@ BattleTowerMons3: bigdw 45000 bigdw 30000 bigdw 45000 - db $fb, $ed ; DVs + dn 15, 11, 14, 13 ; DVs db 10, 20, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1294,7 +1294,7 @@ BattleTowerMons3: bigdw 50000 bigdw 45000 bigdw 45000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 15, 15, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1320,7 +1320,7 @@ BattleTowerMons3: bigdw 40000 bigdw 50000 bigdw 45000 - db $fd, $be ; DVs + dn 15, 13, 11, 14 ; DVs db 5, 15, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1346,7 +1346,7 @@ BattleTowerMons3: bigdw 30000 bigdw 30000 bigdw 50000 - db $ef, $dc ; DVs + dn 14, 15, 13, 12 ; DVs db 15, 10, 10, 35 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1372,7 +1372,7 @@ BattleTowerMons3: bigdw 40000 bigdw 55000 bigdw 30000 - db $df, $db ; DVs + dn 13, 15, 13, 11 ; DVs db 10, 20, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1398,7 +1398,7 @@ BattleTowerMons3: bigdw 45000 bigdw 50000 bigdw 30000 - db $dd, $eb ; DVs + dn 13, 13, 14, 11 ; DVs db 10, 20, 5, 10 ; PP db 255 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1424,7 +1424,7 @@ BattleTowerMons3: bigdw 40000 bigdw 45000 bigdw 50000 - db $bd, $ef ; DVs + dn 11, 13, 14, 15 ; DVs db 30, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1450,7 +1450,7 @@ BattleTowerMons3: bigdw 35000 bigdw 50000 bigdw 30000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 5, 25, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1476,7 +1476,7 @@ BattleTowerMons3: bigdw 50000 bigdw 30000 bigdw 30000 - db $dd, $eb ; DVs + dn 13, 13, 14, 11 ; DVs db 5, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1502,7 +1502,7 @@ BattleTowerMons3: bigdw 50000 bigdw 50000 bigdw 50000 - db $ef, $f7 ; DVs + dn 14, 15, 15, 7 ; DVs db 25, 20, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1528,7 +1528,7 @@ BattleTowerMons3: bigdw 50000 bigdw 47000 bigdw 45000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 20, 10, 10, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1554,7 +1554,7 @@ BattleTowerMons3: bigdw 50000 bigdw 50000 bigdw 50000 - db $f7, $f7 ; DVs + dn 15, 7, 15, 7 ; DVs db 10, 30, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1580,7 +1580,7 @@ BattleTowerMons3: bigdw 30000 bigdw 30000 bigdw 30000 - db $77, $45 ; DVs + dn 7, 7, 4, 5 ; DVs db 15, 10, 20, 30 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1606,7 +1606,7 @@ BattleTowerMons3: bigdw 30000 bigdw 30000 bigdw 30000 - db $67, $77 ; DVs + dn 6, 7, 7, 7 ; DVs db 20, 20, 35, 20 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1632,7 +1632,7 @@ BattleTowerMons3: bigdw 30000 bigdw 30000 bigdw 30000 - db $77, $67 ; DVs + dn 7, 7, 6, 7 ; DVs db 20, 25, 15, 30 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1661,7 +1661,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $fe ; DVs + dn 15, 13, 15, 14 ; DVs db 20, 5, 10, 15 ; PP db 255 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1687,7 +1687,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 15, 20, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1713,7 +1713,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $ed, $dd ; DVs + dn 14, 13, 13, 13 ; DVs db 15, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1739,7 +1739,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 15, 10, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1765,7 +1765,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $ef, $db ; DVs + dn 14, 15, 13, 11 ; DVs db 10, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1791,7 +1791,7 @@ BattleTowerMons4: bigdw 50000 bigdw 55000 bigdw 50000 - db $dd, $ef ; DVs + dn 13, 13, 14, 15 ; DVs db 10, 15, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1817,7 +1817,7 @@ BattleTowerMons4: bigdw 45000 bigdw 50000 bigdw 45000 - db $fd, $be ; DVs + dn 15, 13, 11, 14 ; DVs db 5, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1843,7 +1843,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $bf, $e7 ; DVs + dn 11, 15, 14, 7 ; DVs db 20, 20, 25, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1869,7 +1869,7 @@ BattleTowerMons4: bigdw 40000 bigdw 50000 bigdw 45000 - db $dd, $ed ; DVs + dn 13, 13, 14, 13 ; DVs db 5, 10, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1895,7 +1895,7 @@ BattleTowerMons4: bigdw 50000 bigdw 40000 bigdw 50000 - db $bd, $fe ; DVs + dn 11, 13, 15, 14 ; DVs db 20, 25, 20, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1921,7 +1921,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $bb ; DVs + dn 15, 14, 11, 11 ; DVs db 10, 5, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1947,7 +1947,7 @@ BattleTowerMons4: bigdw 45000 bigdw 50000 bigdw 50000 - db $bf, $cf ; DVs + dn 11, 15, 12, 15 ; DVs db 15, 10, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1973,7 +1973,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $bc, $ef ; DVs + dn 11, 12, 14, 15 ; DVs db 30, 30, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -1999,7 +1999,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $bb ; DVs + dn 15, 14, 11, 11 ; DVs db 25, 30, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2025,7 +2025,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fa, $7f ; DVs + dn 15, 10, 7, 15 ; DVs db 40, 10, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2051,7 +2051,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $ef, $f7 ; DVs + dn 14, 15, 15, 7 ; DVs db 10, 25, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2077,7 +2077,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 15, 10, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2103,7 +2103,7 @@ BattleTowerMons4: bigdw 50000 bigdw 50000 bigdw 50000 - db $f7, $e7 ; DVs + dn 15, 7, 14, 7 ; DVs db 10, 20, 10, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2129,7 +2129,7 @@ BattleTowerMons4: bigdw 30000 bigdw 30000 bigdw 30000 - db $77, $7a ; DVs + dn 7, 7, 7, 10 ; DVs db 25, 15, 15, 20 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2155,7 +2155,7 @@ BattleTowerMons4: bigdw 30000 bigdw 30000 bigdw 30000 - db $75, $6b ; DVs + dn 7, 5, 6, 11 ; DVs db 40, 10, 20, 30 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2181,7 +2181,7 @@ BattleTowerMons4: bigdw 30000 bigdw 30000 bigdw 30000 - db $65, $77 ; DVs + dn 6, 5, 7, 7 ; DVs db 30, 15, 20, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2210,7 +2210,7 @@ BattleTowerMons5: bigdw 60000 bigdw 50000 bigdw 55000 - db $dd, $ff ; DVs + dn 13, 13, 15, 15 ; DVs db 15, 5, 5, 20 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2236,7 +2236,7 @@ BattleTowerMons5: bigdw 60000 bigdw 60000 bigdw 60000 - db $dd, $fc ; DVs + dn 13, 13, 15, 12 ; DVs db 10, 15, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2262,7 +2262,7 @@ BattleTowerMons5: bigdw 60000 bigdw 60000 bigdw 55000 - db $fd, $cf ; DVs + dn 15, 13, 12, 15 ; DVs db 10, 10, 10, 20 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2288,7 +2288,7 @@ BattleTowerMons5: bigdw 55000 bigdw 60000 bigdw 55000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 5, 10, 15, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2314,7 +2314,7 @@ BattleTowerMons5: bigdw 60000 bigdw 55000 bigdw 60000 - db $dd, $dd ; DVs + dn 13, 13, 13, 13 ; DVs db 15, 15, 10, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2340,7 +2340,7 @@ BattleTowerMons5: bigdw 57000 bigdw 55000 bigdw 55000 - db $ed, $ff ; DVs + dn 14, 13, 15, 15 ; DVs db 15, 20, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2366,7 +2366,7 @@ BattleTowerMons5: bigdw 40000 bigdw 50000 bigdw 45000 - db $df, $ed ; DVs + dn 13, 15, 14, 13 ; DVs db 5, 20, 30, 35 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2392,7 +2392,7 @@ BattleTowerMons5: bigdw 45000 bigdw 50000 bigdw 50000 - db $df, $de ; DVs + dn 13, 15, 13, 14 ; DVs db 10, 15, 10, 20 ; PP db 15 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2418,7 +2418,7 @@ BattleTowerMons5: bigdw 50000 bigdw 40000 bigdw 44000 - db $ff, $ec ; DVs + dn 15, 15, 14, 12 ; DVs db 5, 10, 5, 15 ; PP db 13 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2444,7 +2444,7 @@ BattleTowerMons5: bigdw 40000 bigdw 45000 bigdw 40000 - db $ff, $ff ; DVs + dn 15, 15, 15, 15 ; DVs db 20, 20, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2470,7 +2470,7 @@ BattleTowerMons5: bigdw 50000 bigdw 45000 bigdw 50000 - db $f7, $fe ; DVs + dn 15, 7, 15, 14 ; DVs db 10, 20, 5, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2496,7 +2496,7 @@ BattleTowerMons5: bigdw 54000 bigdw 40000 bigdw 50000 - db $7d, $fe ; DVs + dn 7, 13, 15, 14 ; DVs db 15, 5, 20, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2522,7 +2522,7 @@ BattleTowerMons5: bigdw 50000 bigdw 45000 bigdw 45000 - db $fd, $dd ; DVs + dn 15, 13, 13, 13 ; DVs db 5, 10, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2548,7 +2548,7 @@ BattleTowerMons5: bigdw 50000 bigdw 40000 bigdw 50000 - db $ef, $ff ; DVs + dn 14, 15, 15, 15 ; DVs db 10, 15, 5, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2574,7 +2574,7 @@ BattleTowerMons5: bigdw 45000 bigdw 40000 bigdw 50000 - db $fd, $de ; DVs + dn 15, 13, 13, 14 ; DVs db 20, 15, 20, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2600,7 +2600,7 @@ BattleTowerMons5: bigdw 50000 bigdw 50000 bigdw 40000 - db $d7, $ed ; DVs + dn 13, 7, 14, 13 ; DVs db 10, 15, 25, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2626,7 +2626,7 @@ BattleTowerMons5: bigdw 55000 bigdw 45000 bigdw 40000 - db $cf, $dd ; DVs + dn 12, 15, 13, 13 ; DVs db 10, 10, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2652,7 +2652,7 @@ BattleTowerMons5: bigdw 50000 bigdw 40000 bigdw 45000 - db $dd, $dd ; DVs + dn 13, 13, 13, 13 ; DVs db 10, 15, 10, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2678,7 +2678,7 @@ BattleTowerMons5: bigdw 40000 bigdw 40000 bigdw 40000 - db $45, $56 ; DVs + dn 4, 5, 5, 6 ; DVs db 15, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2704,7 +2704,7 @@ BattleTowerMons5: bigdw 40000 bigdw 40000 bigdw 40000 - db $75, $65 ; DVs + dn 7, 5, 6, 5 ; DVs db 5, 15, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2730,7 +2730,7 @@ BattleTowerMons5: bigdw 40000 bigdw 40000 bigdw 40000 - db $45, $56 ; DVs + dn 4, 5, 5, 6 ; DVs db 5, 5, 20, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2759,7 +2759,7 @@ BattleTowerMons6: bigdw 50000 bigdw 60000 bigdw 60000 - db $dd, $fe ; DVs + dn 13, 13, 15, 14 ; DVs db 20, 15, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2785,7 +2785,7 @@ BattleTowerMons6: bigdw 55000 bigdw 60000 bigdw 55000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 15, 10, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2811,7 +2811,7 @@ BattleTowerMons6: bigdw 55000 bigdw 60000 bigdw 55000 - db $fb, $ef ; DVs + dn 15, 11, 14, 15 ; DVs db 15, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2837,7 +2837,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 55000 - db $dd, $de ; DVs + dn 13, 13, 13, 14 ; DVs db 5, 20, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2863,7 +2863,7 @@ BattleTowerMons6: bigdw 45000 bigdw 50000 bigdw 50000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 15, 5, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2889,7 +2889,7 @@ BattleTowerMons6: bigdw 50000 bigdw 55000 bigdw 50000 - db $dd, $fd ; DVs + dn 13, 13, 15, 13 ; DVs db 10, 20, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2915,7 +2915,7 @@ BattleTowerMons6: bigdw 45000 bigdw 50000 bigdw 45000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 20, 20, 5, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2941,7 +2941,7 @@ BattleTowerMons6: bigdw 50000 bigdw 45000 bigdw 45000 - db $fd, $dd ; DVs + dn 15, 13, 13, 13 ; DVs db 5, 20, 10, 25 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2967,7 +2967,7 @@ BattleTowerMons6: bigdw 40000 bigdw 50000 bigdw 45000 - db $dd, $fd ; DVs + dn 13, 13, 15, 13 ; DVs db 5, 15, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -2993,7 +2993,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 10, 5, 10, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3019,7 +3019,7 @@ BattleTowerMons6: bigdw 40000 bigdw 55000 bigdw 50000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 15, 15, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3045,7 +3045,7 @@ BattleTowerMons6: bigdw 45000 bigdw 50000 bigdw 50000 - db $fb, $eb ; DVs + dn 15, 11, 14, 11 ; DVs db 25, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3071,7 +3071,7 @@ BattleTowerMons6: bigdw 50000 bigdw 45000 bigdw 50000 - db $fb, $cd ; DVs + dn 15, 11, 12, 13 ; DVs db 10, 10, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3097,7 +3097,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $fa, $fc ; DVs + dn 15, 10, 15, 12 ; DVs db 10, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3123,7 +3123,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $df, $ed ; DVs + dn 13, 15, 14, 13 ; DVs db 15, 10, 10, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3149,7 +3149,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $ff, $eb ; DVs + dn 15, 15, 14, 11 ; DVs db 5, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3175,7 +3175,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 15, 10, 40, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3201,7 +3201,7 @@ BattleTowerMons6: bigdw 50000 bigdw 50000 bigdw 50000 - db $fb, $fa ; DVs + dn 15, 11, 15, 10 ; DVs db 10, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3227,7 +3227,7 @@ BattleTowerMons6: bigdw 30000 bigdw 30000 bigdw 30000 - db $b7, $67 ; DVs + dn 11, 7, 6, 7 ; DVs db 10, 20, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3253,7 +3253,7 @@ BattleTowerMons6: bigdw 30000 bigdw 30000 bigdw 30000 - db $66, $5f ; DVs + dn 6, 6, 5, 15 ; DVs db 15, 5, 5, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3279,7 +3279,7 @@ BattleTowerMons6: bigdw 30000 bigdw 30000 bigdw 30000 - db $76, $57 ; DVs + dn 7, 6, 5, 7 ; DVs db 5, 10, 15, 20 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3308,7 +3308,7 @@ BattleTowerMons7: bigdw 55000 bigdw 50000 bigdw 60000 - db $fb, $ef ; DVs + dn 15, 11, 14, 15 ; DVs db 15, 5, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3334,7 +3334,7 @@ BattleTowerMons7: bigdw 60000 bigdw 60000 bigdw 50000 - db $bf, $ef ; DVs + dn 11, 15, 14, 15 ; DVs db 5, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3360,7 +3360,7 @@ BattleTowerMons7: bigdw 55000 bigdw 50000 bigdw 58000 - db $dd, $dd ; DVs + dn 13, 13, 13, 13 ; DVs db 20, 5, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3386,7 +3386,7 @@ BattleTowerMons7: bigdw 55000 bigdw 58000 bigdw 50000 - db $df, $ed ; DVs + dn 13, 15, 14, 13 ; DVs db 20, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3412,7 +3412,7 @@ BattleTowerMons7: bigdw 60000 bigdw 55000 bigdw 50000 - db $dd, $dd ; DVs + dn 13, 13, 13, 13 ; DVs db 10, 10, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3438,7 +3438,7 @@ BattleTowerMons7: bigdw 55000 bigdw 60000 bigdw 55000 - db $dd, $cd ; DVs + dn 13, 13, 12, 13 ; DVs db 15, 15, 20, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3464,7 +3464,7 @@ BattleTowerMons7: bigdw 45000 bigdw 50000 bigdw 45000 - db $db, $df ; DVs + dn 13, 11, 13, 15 ; DVs db 10, 15, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3490,7 +3490,7 @@ BattleTowerMons7: bigdw 50000 bigdw 45000 bigdw 45000 - db $db, $df ; DVs + dn 13, 11, 13, 15 ; DVs db 15, 20, 20, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3516,7 +3516,7 @@ BattleTowerMons7: bigdw 40000 bigdw 50000 bigdw 45000 - db $dd, $ed ; DVs + dn 13, 13, 14, 13 ; DVs db 10, 5, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3542,7 +3542,7 @@ BattleTowerMons7: bigdw 45000 bigdw 45000 bigdw 50000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 5, 20, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3568,7 +3568,7 @@ BattleTowerMons7: bigdw 50000 bigdw 55000 bigdw 50000 - db $db, $ef ; DVs + dn 13, 11, 14, 15 ; DVs db 15, 15, 5, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3594,7 +3594,7 @@ BattleTowerMons7: bigdw 45000 bigdw 50000 bigdw 50000 - db $de, $dd ; DVs + dn 13, 14, 13, 13 ; DVs db 10, 15, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3620,7 +3620,7 @@ BattleTowerMons7: bigdw 50000 bigdw 45000 bigdw 50000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 20, 10, 5, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3646,7 +3646,7 @@ BattleTowerMons7: bigdw 45000 bigdw 50000 bigdw 50000 - db $bd, $fb ; DVs + dn 11, 13, 15, 11 ; DVs db 20, 15, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3672,7 +3672,7 @@ BattleTowerMons7: bigdw 50000 bigdw 50000 bigdw 50000 - db $bd, $ef ; DVs + dn 11, 13, 14, 15 ; DVs db 5, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3698,7 +3698,7 @@ BattleTowerMons7: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fd ; DVs + dn 15, 14, 15, 13 ; DVs db 30, 40, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3724,7 +3724,7 @@ BattleTowerMons7: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 15, 10, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3750,7 +3750,7 @@ BattleTowerMons7: bigdw 50000 bigdw 50000 bigdw 50000 - db $f7, $f7 ; DVs + dn 15, 7, 15, 7 ; DVs db 15, 10, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3776,7 +3776,7 @@ BattleTowerMons7: bigdw 30000 bigdw 30000 bigdw 30000 - db $76, $44 ; DVs + dn 7, 6, 4, 4 ; DVs db 5, 10, 5, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3802,7 +3802,7 @@ BattleTowerMons7: bigdw 30000 bigdw 30000 bigdw 30000 - db $56, $44 ; DVs + dn 5, 6, 4, 4 ; DVs db 20, 10, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3828,7 +3828,7 @@ BattleTowerMons7: bigdw 30000 bigdw 30000 bigdw 30000 - db $76, $64 ; DVs + dn 7, 6, 6, 4 ; DVs db 5, 15, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3857,7 +3857,7 @@ BattleTowerMons8: bigdw 60000 bigdw 55000 bigdw 55000 - db $fd, $eb ; DVs + dn 15, 13, 14, 11 ; DVs db 20, 15, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3883,7 +3883,7 @@ BattleTowerMons8: bigdw 50000 bigdw 55500 bigdw 60000 - db $db, $ed ; DVs + dn 13, 11, 14, 13 ; DVs db 10, 10, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3909,7 +3909,7 @@ BattleTowerMons8: bigdw 55000 bigdw 55000 bigdw 55000 - db $fd, $db ; DVs + dn 15, 13, 13, 11 ; DVs db 10, 15, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3935,7 +3935,7 @@ BattleTowerMons8: bigdw 50000 bigdw 30000 bigdw 50000 - db $fd, $de ; DVs + dn 15, 13, 13, 14 ; DVs db 10, 15, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3961,7 +3961,7 @@ BattleTowerMons8: bigdw 50000 bigdw 55000 bigdw 50000 - db $df, $db ; DVs + dn 13, 15, 13, 11 ; DVs db 10, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -3987,7 +3987,7 @@ BattleTowerMons8: bigdw 50000 bigdw 55000 bigdw 50000 - db $df, $db ; DVs + dn 13, 15, 13, 11 ; DVs db 10, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4013,7 +4013,7 @@ BattleTowerMons8: bigdw 45000 bigdw 55000 bigdw 50000 - db $de, $dd ; DVs + dn 13, 14, 13, 13 ; DVs db 15, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4039,7 +4039,7 @@ BattleTowerMons8: bigdw 50000 bigdw 45000 bigdw 50000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 5, 10, 10, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4065,7 +4065,7 @@ BattleTowerMons8: bigdw 40000 bigdw 55000 bigdw 50000 - db $fb, $ed ; DVs + dn 15, 11, 14, 13 ; DVs db 10, 15, 5, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4091,7 +4091,7 @@ BattleTowerMons8: bigdw 50000 bigdw 50000 bigdw 45000 - db $dd, $dd ; DVs + dn 13, 13, 13, 13 ; DVs db 20, 15, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4117,7 +4117,7 @@ BattleTowerMons8: bigdw 40000 bigdw 55000 bigdw 50000 - db $df, $ed ; DVs + dn 13, 15, 14, 13 ; DVs db 10, 20, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4143,7 +4143,7 @@ BattleTowerMons8: bigdw 45000 bigdw 50000 bigdw 50000 - db $df, $df ; DVs + dn 13, 15, 13, 15 ; DVs db 10, 5, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4169,7 +4169,7 @@ BattleTowerMons8: bigdw 40000 bigdw 45000 bigdw 50000 - db $df, $dc ; DVs + dn 13, 15, 13, 12 ; DVs db 15, 10, 5, 35 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4195,7 +4195,7 @@ BattleTowerMons8: bigdw 35000 bigdw 50000 bigdw 50000 - db $dd, $ef ; DVs + dn 13, 13, 14, 15 ; DVs db 25, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4221,7 +4221,7 @@ BattleTowerMons8: bigdw 50000 bigdw 40000 bigdw 50000 - db $dd, $fe ; DVs + dn 13, 13, 15, 14 ; DVs db 15, 5, 25, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4247,7 +4247,7 @@ BattleTowerMons8: bigdw 50000 bigdw 40000 bigdw 50000 - db $ff, $ed ; DVs + dn 15, 15, 14, 13 ; DVs db 5, 10, 10, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4273,7 +4273,7 @@ BattleTowerMons8: bigdw 40000 bigdw 40000 bigdw 50000 - db $ff, $ef ; DVs + dn 15, 15, 14, 15 ; DVs db 15, 5, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4299,7 +4299,7 @@ BattleTowerMons8: bigdw 40000 bigdw 50000 bigdw 40000 - db $fd, $dd ; DVs + dn 15, 13, 13, 13 ; DVs db 20, 10, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4325,7 +4325,7 @@ BattleTowerMons8: bigdw 30000 bigdw 30000 bigdw 30000 - db $65, $65 ; DVs + dn 6, 5, 6, 5 ; DVs db 5, 10, 5, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4351,7 +4351,7 @@ BattleTowerMons8: bigdw 30000 bigdw 30000 bigdw 30000 - db $74, $64 ; DVs + dn 7, 4, 6, 4 ; DVs db 5, 25, 15, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4377,7 +4377,7 @@ BattleTowerMons8: bigdw 30000 bigdw 30000 bigdw 30000 - db $76, $57 ; DVs + dn 7, 6, 5, 7 ; DVs db 20, 15, 5, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4406,7 +4406,7 @@ BattleTowerMons9: bigdw 55000 bigdw 60000 bigdw 55000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 20, 10, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4432,7 +4432,7 @@ BattleTowerMons9: bigdw 56000 bigdw 60000 bigdw 60000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 5, 5, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4458,7 +4458,7 @@ BattleTowerMons9: bigdw 60000 bigdw 55000 bigdw 60000 - db $df, $dd ; DVs + dn 13, 15, 13, 13 ; DVs db 20, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4484,7 +4484,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $db, $df ; DVs + dn 13, 11, 13, 15 ; DVs db 5, 5, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4510,7 +4510,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $cf ; DVs + dn 15, 13, 12, 15 ; DVs db 35, 30, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4536,7 +4536,7 @@ BattleTowerMons9: bigdw 50000 bigdw 55000 bigdw 50000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 10, 10, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4562,7 +4562,7 @@ BattleTowerMons9: bigdw 55000 bigdw 50000 bigdw 45000 - db $df, $de ; DVs + dn 13, 15, 13, 14 ; DVs db 20, 15, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4588,7 +4588,7 @@ BattleTowerMons9: bigdw 50000 bigdw 45000 bigdw 50000 - db $df, $de ; DVs + dn 13, 15, 13, 14 ; DVs db 5, 15, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4614,7 +4614,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 55000 - db $bd, $ef ; DVs + dn 11, 13, 14, 15 ; DVs db 10, 15, 15, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4640,7 +4640,7 @@ BattleTowerMons9: bigdw 50000 bigdw 55000 bigdw 50000 - db $dd, $fe ; DVs + dn 13, 13, 15, 14 ; DVs db 10, 15, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4666,7 +4666,7 @@ BattleTowerMons9: bigdw 50000 bigdw 55000 bigdw 50000 - db $dd, $ed ; DVs + dn 13, 13, 14, 13 ; DVs db 5, 10, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4692,7 +4692,7 @@ BattleTowerMons9: bigdw 55000 bigdw 50000 bigdw 50000 - db $fe, $fd ; DVs + dn 15, 14, 15, 13 ; DVs db 5, 15, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4718,7 +4718,7 @@ BattleTowerMons9: bigdw 50000 bigdw 45000 bigdw 55000 - db $df, $de ; DVs + dn 13, 15, 13, 14 ; DVs db 5, 15, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4744,7 +4744,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $bd, $fe ; DVs + dn 11, 13, 15, 14 ; DVs db 10, 5, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4770,7 +4770,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $db, $fe ; DVs + dn 13, 11, 15, 14 ; DVs db 15, 15, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4796,7 +4796,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $ef, $f7 ; DVs + dn 14, 15, 15, 7 ; DVs db 10, 25, 10, 20 ; PP db 255 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4822,7 +4822,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 10, 20, 10, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4848,7 +4848,7 @@ BattleTowerMons9: bigdw 50000 bigdw 50000 bigdw 50000 - db $f7, $f7 ; DVs + dn 15, 7, 15, 7 ; DVs db 5, 15, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4874,7 +4874,7 @@ BattleTowerMons9: bigdw 30000 bigdw 30000 bigdw 30000 - db $47, $57 ; DVs + dn 4, 7, 5, 7 ; DVs db 10, 10, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4900,7 +4900,7 @@ BattleTowerMons9: bigdw 30000 bigdw 30000 bigdw 30000 - db $65, $76 ; DVs + dn 6, 5, 7, 6 ; DVs db 15, 5, 15, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4926,7 +4926,7 @@ BattleTowerMons9: bigdw 30000 bigdw 30000 bigdw 30000 - db $54, $44 ; DVs + dn 5, 4, 4, 4 ; DVs db 10, 10, 15, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4955,7 +4955,7 @@ BattleTowerMons10: bigdw 60000 bigdw 60000 bigdw 60000 - db $fd, $ed ; DVs + dn 15, 13, 14, 13 ; DVs db 15, 15, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -4981,7 +4981,7 @@ BattleTowerMons10: bigdw 60000 bigdw 60000 bigdw 60000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 5, 10, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5007,7 +5007,7 @@ BattleTowerMons10: bigdw 60000 bigdw 60000 bigdw 60000 - db $df, $fe ; DVs + dn 13, 15, 15, 14 ; DVs db 15, 20, 10, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5033,7 +5033,7 @@ BattleTowerMons10: bigdw 50000 bigdw 30000 bigdw 50000 - db $fd, $fe ; DVs + dn 15, 13, 15, 14 ; DVs db 15, 20, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5059,7 +5059,7 @@ BattleTowerMons10: bigdw 50000 bigdw 50000 bigdw 50000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 5, 10, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5085,7 +5085,7 @@ BattleTowerMons10: bigdw 50000 bigdw 55000 bigdw 50000 - db $dd, $ef ; DVs + dn 13, 13, 14, 15 ; DVs db 15, 5, 15, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5111,7 +5111,7 @@ BattleTowerMons10: bigdw 55000 bigdw 55000 bigdw 55000 - db $fe, $df ; DVs + dn 15, 14, 13, 15 ; DVs db 15, 10, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5137,7 +5137,7 @@ BattleTowerMons10: bigdw 50000 bigdw 45000 bigdw 45000 - db $fb, $ef ; DVs + dn 15, 11, 14, 15 ; DVs db 20, 15, 5, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5163,7 +5163,7 @@ BattleTowerMons10: bigdw 55000 bigdw 50000 bigdw 45000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 15, 10, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5189,7 +5189,7 @@ BattleTowerMons10: bigdw 55000 bigdw 60000 bigdw 50000 - db $fd, $de ; DVs + dn 15, 13, 13, 14 ; DVs db 10, 5, 15, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5215,7 +5215,7 @@ BattleTowerMons10: bigdw 50000 bigdw 55000 bigdw 50000 - db $fd, $cf ; DVs + dn 15, 13, 12, 15 ; DVs db 20, 25, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5241,7 +5241,7 @@ BattleTowerMons10: bigdw 55000 bigdw 50000 bigdw 55000 - db $bd, $ef ; DVs + dn 11, 13, 14, 15 ; DVs db 5, 5, 20, 15 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5267,7 +5267,7 @@ BattleTowerMons10: bigdw 48000 bigdw 45000 bigdw 50000 - db $fd, $ef ; DVs + dn 15, 13, 14, 15 ; DVs db 20, 5, 15, 20 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5293,7 +5293,7 @@ BattleTowerMons10: bigdw 50000 bigdw 50000 bigdw 45000 - db $fb, $fe ; DVs + dn 15, 11, 15, 14 ; DVs db 25, 5, 20, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5319,7 +5319,7 @@ BattleTowerMons10: bigdw 50000 bigdw 30000 bigdw 30000 - db $dd, $fe ; DVs + dn 13, 13, 15, 14 ; DVs db 15, 5, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5345,7 +5345,7 @@ BattleTowerMons10: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $f7 ; DVs + dn 15, 14, 15, 7 ; DVs db 10, 5, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5371,7 +5371,7 @@ BattleTowerMons10: bigdw 50000 bigdw 50000 bigdw 50000 - db $fe, $fe ; DVs + dn 15, 14, 15, 14 ; DVs db 10, 10, 5, 5 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5397,7 +5397,7 @@ BattleTowerMons10: bigdw 50000 bigdw 50000 bigdw 50000 - db $fb, $e7 ; DVs + dn 15, 11, 14, 7 ; DVs db 15, 5, 5, 10 ; PP db 100 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5423,7 +5423,7 @@ BattleTowerMons10: bigdw 30000 bigdw 30000 bigdw 30000 - db $74, $46 ; DVs + dn 7, 4, 4, 6 ; DVs db 5, 10, 10, 5 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5449,7 +5449,7 @@ BattleTowerMons10: bigdw 30000 bigdw 30000 bigdw 30000 - db $67, $76 ; DVs + dn 6, 7, 7, 6 ; DVs db 20, 15, 15, 15 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -5475,7 +5475,7 @@ BattleTowerMons10: bigdw 30000 bigdw 30000 bigdw 30000 - db $76, $57 ; DVs + dn 7, 6, 5, 7 ; DVs db 15, 5, 5, 10 ; PP db 0 ; Happiness db 0, 0, 0 ; Pokerus, Caught data diff --git a/data/default_options.asm b/data/default_options.asm index 991827316..333f7ef02 100644 --- a/data/default_options.asm +++ b/data/default_options.asm @@ -2,7 +2,7 @@ DefaultOptions: ; wOptions: med text speed db TEXT_DELAY_MED ; wSaveFileExists: no - db $00 + db FALSE ; wTextBoxFrame: frame 1 db FRAME_1 ; wTextBoxFlags: use text speed diff --git a/data/events/odd_eggs.asm b/data/events/odd_eggs.asm index d8a289872..dd3dc3bbf 100644 --- a/data/events/odd_eggs.asm +++ b/data/events/odd_eggs.asm @@ -41,7 +41,7 @@ OddEgg1: bigdw 0 bigdw 0 bigdw 0 - db $0, $0 ; DVs + dn 0, 0, 0, 0 ; DVs db 30, 20, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -55,8 +55,8 @@ OddEgg1: bigdw 8 ; SAtk bigdw 8 ; SDef db "EGG@@@@@@@@" +OddEgg1End: -OddEgg2: db PICHU db NO_ITEM db THUNDERSHOCK, CHARM, DIZZY_PUNCH, 0 @@ -68,7 +68,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 30, 20, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -120,7 +120,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 35, 20, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -172,7 +172,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 15, 20, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -224,7 +224,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 35, 30, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -276,7 +276,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 25, 10, 0, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -328,7 +328,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 30, 30, 10, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data @@ -380,7 +380,7 @@ OddEgg2: bigdw 0 bigdw 0 bigdw 0 - db $2a, $aa ; DVs + dn 2, 10, 10, 10 ; DVs db 35, 10, 0, 0 ; PP db 20 ; Happiness db 0, 0, 0 ; Pokerus, Caught data diff --git a/data/maps/landmarks.asm b/data/maps/landmarks.asm index d15e27ca6..d34b85987 100644 --- a/data/maps/landmarks.asm +++ b/data/maps/landmarks.asm @@ -1,107 +1,107 @@ landmark: MACRO ; x, y, name - db \1, \2 + db \1 + 8, \2 + 16 dw \3 ENDM Landmarks: ; entries correspond to constants/landmark_constants.asm - landmark 0, 0, SpecialMapName - landmark 148, 116, NewBarkTownName - landmark 136, 116, Route29Name - landmark 108, 116, CherrygroveCityName - landmark 108, 96, Route30Name - landmark 104, 76, Route31Name - landmark 92, 76, VioletCityName - landmark 93, 74, SproutTowerName - landmark 92, 108, Route32Name - landmark 84, 92, RuinsOfAlphName - landmark 92, 140, UnionCaveName - landmark 90, 140, Route33Name - landmark 76, 140, AzaleaTownName - landmark 78, 138, SlowpokeWellName - landmark 60, 136, IlexForestName - landmark 60, 128, Route34Name - landmark 60, 108, GoldenrodCityName - landmark 58, 108, RadioTowerName - landmark 60, 92, Route35Name - landmark 60, 76, NationalParkName - landmark 72, 76, Route36Name - landmark 76, 68, Route37Name - landmark 76, 60, EcruteakCityName - landmark 78, 58, TinTowerName - landmark 74, 58, BurnedTowerName - landmark 60, 60, Route38Name - landmark 44, 64, Route39Name - landmark 44, 76, OlivineCityName - landmark 46, 78, LighthouseName - landmark 36, 72, BattleTowerName - landmark 36, 80, Route40Name - landmark 36, 108, WhirlIslandsName - landmark 36, 116, Route41Name - landmark 28, 116, CianwoodCityName - landmark 100, 60, Route42Name - landmark 92, 60, MtMortarName - landmark 116, 60, MahoganyTownName - landmark 116, 52, Route43Name - landmark 116, 44, LakeOfRageName - landmark 128, 60, Route44Name - landmark 138, 54, IcePathName - landmark 140, 60, BlackthornCityName - landmark 140, 52, DragonsDenName - landmark 140, 80, Route45Name - landmark 120, 88, DarkCaveName - landmark 132, 104, Route46Name - landmark 156, 84, SilverCaveName - landmark 60, 124, PalletTownName - landmark 60, 108, Route1Name - landmark 60, 92, ViridianCityName - landmark 60, 80, Route2Name - landmark 60, 68, PewterCityName - landmark 72, 68, Route3Name - landmark 84, 68, MtMoonName - landmark 96, 68, Route4Name - landmark 108, 68, CeruleanCityName - landmark 108, 60, Route24Name - landmark 116, 52, Route25Name - landmark 108, 76, Route5Name - landmark 116, 92, UndergroundName - landmark 108, 92, Route6Name - landmark 108, 100, VermilionCityName - landmark 96, 76, DiglettsCaveName - landmark 96, 84, Route7Name - landmark 124, 84, Route8Name - landmark 124, 68, Route9Name - landmark 140, 68, RockTunnelName - landmark 140, 72, Route10Name - landmark 140, 76, PowerPlantName - landmark 140, 84, LavenderTownName - landmark 148, 84, LavRadioTowerName - landmark 84, 84, CeladonCityName - landmark 108, 84, SaffronCityName - landmark 124, 100, Route11Name - landmark 140, 96, Route12Name - landmark 132, 116, Route13Name - landmark 124, 128, Route14Name - landmark 112, 132, Route15Name - landmark 76, 84, Route16Name - landmark 76, 108, Route17Name - landmark 88, 132, Route18Name - landmark 100, 132, FuchsiaCityName - landmark 100, 144, Route19Name - landmark 84, 148, Route20Name - landmark 76, 148, SeafoamIslandsName - landmark 60, 148, CinnabarIslandName - landmark 60, 136, Route21Name - landmark 44, 84, Route22Name - landmark 36, 68, VictoryRoadName - landmark 36, 60, Route23Name - landmark 36, 52, IndigoPlateauName - landmark 36, 108, Route26Name - landmark 28, 116, Route27Name - landmark 20, 116, TohjoFallsName - landmark 28, 84, Route28Name - landmark 148, 132, FastShipName + dbbw 0, 0, SpecialMapName + landmark 140, 100, NewBarkTownName + landmark 128, 100, Route29Name + landmark 100, 100, CherrygroveCityName + landmark 100, 80, Route30Name + landmark 96, 60, Route31Name + landmark 84, 60, VioletCityName + landmark 85, 58, SproutTowerName + landmark 84, 92, Route32Name + landmark 76, 76, RuinsOfAlphName + landmark 84, 124, UnionCaveName + landmark 82, 124, Route33Name + landmark 68, 124, AzaleaTownName + landmark 70, 122, SlowpokeWellName + landmark 52, 120, IlexForestName + landmark 52, 112, Route34Name + landmark 52, 92, GoldenrodCityName + landmark 50, 92, RadioTowerName + landmark 52, 76, Route35Name + landmark 52, 60, NationalParkName + landmark 64, 60, Route36Name + landmark 68, 52, Route37Name + landmark 68, 44, EcruteakCityName + landmark 70, 42, TinTowerName + landmark 66, 42, BurnedTowerName + landmark 52, 44, Route38Name + landmark 36, 48, Route39Name + landmark 36, 60, OlivineCityName + landmark 38, 62, LighthouseName + landmark 28, 56, BattleTowerName + landmark 28, 64, Route40Name + landmark 28, 92, WhirlIslandsName + landmark 28, 100, Route41Name + landmark 20, 100, CianwoodCityName + landmark 92, 44, Route42Name + landmark 84, 44, MtMortarName + landmark 108, 44, MahoganyTownName + landmark 108, 36, Route43Name + landmark 108, 28, LakeOfRageName + landmark 120, 44, Route44Name + landmark 130, 38, IcePathName + landmark 132, 44, BlackthornCityName + landmark 132, 36, DragonsDenName + landmark 132, 64, Route45Name + landmark 112, 72, DarkCaveName + landmark 124, 88, Route46Name + landmark 148, 68, SilverCaveName + landmark 52, 108, PalletTownName + landmark 52, 92, Route1Name + landmark 52, 76, ViridianCityName + landmark 52, 64, Route2Name + landmark 52, 52, PewterCityName + landmark 64, 52, Route3Name + landmark 76, 52, MtMoonName + landmark 88, 52, Route4Name + landmark 100, 52, CeruleanCityName + landmark 100, 44, Route24Name + landmark 108, 36, Route25Name + landmark 100, 60, Route5Name + landmark 108, 76, UndergroundName + landmark 100, 76, Route6Name + landmark 100, 84, VermilionCityName + landmark 88, 60, DiglettsCaveName + landmark 88, 68, Route7Name + landmark 116, 68, Route8Name + landmark 116, 52, Route9Name + landmark 132, 52, RockTunnelName + landmark 132, 56, Route10Name + landmark 132, 60, PowerPlantName + landmark 132, 68, LavenderTownName + landmark 140, 68, LavRadioTowerName + landmark 76, 68, CeladonCityName + landmark 100, 68, SaffronCityName + landmark 116, 84, Route11Name + landmark 132, 80, Route12Name + landmark 124, 100, Route13Name + landmark 116, 112, Route14Name + landmark 104, 116, Route15Name + landmark 68, 68, Route16Name + landmark 68, 92, Route17Name + landmark 80, 116, Route18Name + landmark 92, 116, FuchsiaCityName + landmark 92, 128, Route19Name + landmark 76, 132, Route20Name + landmark 68, 132, SeafoamIslandsName + landmark 52, 132, CinnabarIslandName + landmark 52, 120, Route21Name + landmark 36, 68, Route22Name + landmark 28, 52, VictoryRoadName + landmark 28, 44, Route23Name + landmark 28, 36, IndigoPlateauName + landmark 28, 92, Route26Name + landmark 20, 100, Route27Name + landmark 12, 100, TohjoFallsName + landmark 20, 68, Route28Name + landmark 140, 116, FastShipName NewBarkTownName: db "NEW BARK¯TOWN@" CherrygroveCityName: db "CHERRYGROVE¯CITY@" diff --git a/data/moves/animations.asm b/data/moves/animations.asm index cef14f5ab..95518af3d 100644 --- a/data/moves/animations.asm +++ b/data/moves/animations.asm @@ -4738,13 +4738,13 @@ BattleAnim_SludgeBomb_branch_cbc15: BattleAnim_Sludge_branch_cbc15: BattleAnim_Toxic_branch_cbc15: .loop - anim_sound 0, 1, SFX_UNKNOWN_7F + anim_sound 0, 1, SFX_TOXIC anim_obj ANIM_OBJ_1A, 132, 72, $0 anim_wait 8 - anim_sound 0, 1, SFX_UNKNOWN_7F + anim_sound 0, 1, SFX_TOXIC anim_obj ANIM_OBJ_1A, 116, 72, $0 anim_wait 8 - anim_sound 0, 1, SFX_UNKNOWN_7F + anim_sound 0, 1, SFX_TOXIC anim_obj ANIM_OBJ_1A, 148, 72, $0 anim_wait 8 anim_loop 5, .loop diff --git a/data/moves/critical_hit_moves.asm b/data/moves/critical_hit_moves.asm new file mode 100644 index 000000000..4a4730574 --- /dev/null +++ b/data/moves/critical_hit_moves.asm @@ -0,0 +1,9 @@ +CriticalHitMoves: + db KARATE_CHOP + db RAZOR_WIND + db RAZOR_LEAF + db CRABHAMMER + db SLASH + db AEROBLAST + db CROSS_CHOP + db -1 diff --git a/data/battle/metronome_exception_moves.asm b/data/moves/metronome_exception_moves.asm index a5aa44132..a5aa44132 100644 --- a/data/battle/metronome_exception_moves.asm +++ b/data/moves/metronome_exception_moves.asm diff --git a/data/sprites/emotes.asm b/data/sprites/emotes.asm index 76ca2f0b9..2371c4624 100644 --- a/data/sprites/emotes.asm +++ b/data/sprites/emotes.asm @@ -2,20 +2,20 @@ emote: MACRO ; graphics pointer, length, starting tile dw \1 db \2 tiles, BANK(\1) - dw vTiles1 tile \3 + dw vTiles0 tile \3 ENDM Emotes: ; entries correspond to EMOTE_* constants - emote ShockEmote, 4, $78 - emote QuestionEmote, 4, $78 - emote HappyEmote, 4, $78 - emote SadEmote, 4, $78 - emote HeartEmote, 4, $78 - emote BoltEmote, 4, $78 - emote SleepEmote, 4, $78 - emote FishEmote, 4, $78 - emote JumpShadowGFX, 1, $7c - emote FishingRodGFX, 2, $7c - emote BoulderDustGFX, 2, $7e - emote GrassRustleGFX, 1, $7e + emote ShockEmote, 4, $f8 + emote QuestionEmote, 4, $f8 + emote HappyEmote, 4, $f8 + emote SadEmote, 4, $f8 + emote HeartEmote, 4, $f8 + emote BoltEmote, 4, $f8 + emote SleepEmote, 4, $f8 + emote FishEmote, 4, $f8 + emote JumpShadowGFX, 1, $fc + emote FishingRodGFX, 2, $fc + emote BoulderDustGFX, 2, $fe + emote GrassRustleGFX, 1, $fe diff --git a/data/text/common_1.asm b/data/text/common_1.asm index a6e867498..c99f7eb29 100644 --- a/data/text/common_1.asm +++ b/data/text/common_1.asm @@ -93,7 +93,7 @@ UnknownText_0x1bc14f:: line "level @" deciram wCurPartyLevel, 1, 3 text "!@" - sound_dex_fanfare_50_79 + sound_dex_fanfare_50_79 ; plays SFX_DEX_FANFARE_50_79, identical to SFX_LEVEL_UP text_waitbutton db "@@" diff --git a/data/tilesets.asm b/data/tilesets.asm index b652a01ad..b95c20f40 100644 --- a/data/tilesets.asm +++ b/data/tilesets.asm @@ -8,7 +8,7 @@ ENDM ; Associated data: ; - The *GFX, *Meta, and *Coll are defined in gfx/tilesets.asm ; - The *PalMap are defined in gfx/tileset_palette_maps.asm -; - The *Anim are defined in engine/tileset_anims.asm +; - The *Anim are defined in engine/tilesets/tileset_anims.asm Tilesets:: ; entries correspond to TILESET_* constants diff --git a/engine/battle/core.asm b/engine/battle/core.asm index c3c7e9867..57c0d7990 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -3619,10 +3619,10 @@ CheckPlayerPartyForFitMon: ld e, a xor a ld hl, wPartyMon1HP - ld bc, wPartyMon2 - (wPartyMon1 + 1) + ld bc, PARTYMON_STRUCT_LENGTH - 1 .loop or [hl] - inc hl + inc hl ; + 1 or [hl] add hl, bc dec e @@ -6992,7 +6992,7 @@ GiveExperiencePoints: ld a, [wCurPartyMon] ld c, a ld b, CHECK_FLAG - ld d, $0 + ld d, FALSE predef SmallFarFlagAction ld a, c and a @@ -7006,7 +7006,7 @@ GiveExperiencePoints: ld e, l ld hl, wEnemyMonBaseStats - 1 push bc - ld c, $5 + ld c, NUM_EXP_STATS .loop1 inc hl ld a, [de] @@ -7286,13 +7286,13 @@ GiveExperiencePoints: ld [wMonType], a predef CopyMonToTempMon hlcoord 9, 0 - ld b, $a - ld c, $9 + ld b, 10 + ld c, 9 call TextBox hlcoord 11, 1 ld bc, 4 predef PrintTempMonStats - ld c, $1e + ld c, 30 call DelayFrames call WaitPressAorB_BlinkCursor call Call_LoadTempTileMapToTileMap diff --git a/engine/battle/effect_commands.asm b/engine/battle/effect_commands.asm index 3e6d928d2..eb30af88b 100644 --- a/engine/battle/effect_commands.asm +++ b/engine/battle/effect_commands.asm @@ -1210,7 +1210,9 @@ BattleCommand_Critical: ld [wCriticalHit], a ret -INCLUDE "data/battle/critical_hits.asm" +INCLUDE "data/moves/critical_hit_moves.asm" + +INCLUDE "data/battle/critical_hit_chances.asm" INCLUDE "engine/battle/move_effects/triple_kick.asm" diff --git a/engine/battle/move_effects/metronome.asm b/engine/battle/move_effects/metronome.asm index b8a6b586f..25197d7cd 100644 --- a/engine/battle/move_effects/metronome.asm +++ b/engine/battle/move_effects/metronome.asm @@ -40,4 +40,4 @@ BattleCommand_Metronome: call UpdateMoveData jp ResetTurn -INCLUDE "data/battle/metronome_exception_moves.asm" +INCLUDE "data/moves/metronome_exception_moves.asm" diff --git a/engine/battle/start_battle.asm b/engine/battle/start_battle.asm index 5c2a633a8..f5fc4a6b0 100644 --- a/engine/battle/start_battle.asm +++ b/engine/battle/start_battle.asm @@ -16,7 +16,7 @@ FindFirstAliveMonAndStartBattle: xor a ld [hMapAnims], a call DelayFrame - ld b, 6 + ld b, PARTY_LENGTH ld hl, wPartyMon1HP ld de, PARTYMON_STRUCT_LENGTH - 1 diff --git a/engine/events/battle_tower/load_trainer.asm b/engine/events/battle_tower/load_trainer.asm index 2f34950b6..f9be02b28 100644 --- a/engine/events/battle_tower/load_trainer.asm +++ b/engine/events/battle_tower/load_trainer.asm @@ -104,7 +104,7 @@ Function_LoadRandomBattleTowerMon: ld a, [wBTChoiceOfLvlGroup] dec a ld hl, BattleTowerMons - ld bc, BattleTowerMons2 - BattleTowerMons1 + ld bc, BattleTowerMons2 - BattleTowerMons1 ; size of one level group call AddNTimes ld a, [hRandomAdd] diff --git a/engine/events/celebi.asm b/engine/events/celebi.asm index 76bdbaa76..a34f3935a 100644 --- a/engine/events/celebi.asm +++ b/engine/events/celebi.asm @@ -31,7 +31,7 @@ CelebiShrineEvent: call GetCelebiSpriteTile inc d push de - ld a, $90 + ld a, 36 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a farcall DoNextFrameForAllSprites call CelebiEvent_CountDown diff --git a/engine/events/field_moves.asm b/engine/events/field_moves.asm index f5ad049f2..6adb80ba6 100644 --- a/engine/events/field_moves.asm +++ b/engine/events/field_moves.asm @@ -1,3 +1,7 @@ +FIELDMOVE_GRASS EQU $80 +FIELDMOVE_TREE EQU $84 +FIELDMOVE_FLY EQU $84 + PlayWhirlpoolSound: call WaitSFX ld de, SFX_SURF @@ -20,11 +24,11 @@ BlindingFlash: ShakeHeadbuttTree: farcall ClearSpriteAnims ld de, CutGrassGFX - ld hl, vTiles1 tile $00 + ld hl, vTiles0 tile FIELDMOVE_GRASS lb bc, BANK(CutGrassGFX), 4 call Request2bpp ld de, HeadbuttTreeGFX - ld hl, vTiles1 tile $04 + ld hl, vTiles0 tile FIELDMOVE_TREE lb bc, BANK(HeadbuttTreeGFX), 8 call Request2bpp call Cut_Headbutt_GetPixelFacing @@ -32,8 +36,8 @@ ShakeHeadbuttTree: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $84 - ld a, 36 * 4 + ld [hl], FIELDMOVE_TREE + ld a, 36 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a farcall DoNextFrameForAllSprites call HideHeadbuttTree @@ -48,7 +52,7 @@ ShakeHeadbuttTree: and a jr z, .done dec [hl] - ld a, 36 * 4 + ld a, 36 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a farcall DoNextFrameForAllSprites call DelayFrame @@ -111,7 +115,7 @@ OWCutAnimation: ; 0: Split tree in half ; 1: Mow the lawn ld a, e - and $1 + and 1 ld [wJumptableIndex], a call .LoadCutGFX call WaitSFX @@ -121,7 +125,7 @@ OWCutAnimation: ld a, [wJumptableIndex] bit 7, a jr nz, .finish - ld a, 36 * 4 + ld a, 36 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a callfar DoNextFrameForAllSprites call OWCutJumptable @@ -134,11 +138,11 @@ OWCutAnimation: .LoadCutGFX: callfar ClearSpriteAnims ; pointless to farcall ld de, CutGrassGFX - ld hl, vTiles1 tile $00 + ld hl, vTiles0 tile FIELDMOVE_GRASS lb bc, BANK(CutGrassGFX), 4 call Request2bpp ld de, CutTreeGFX - ld hl, vTiles1 tile $04 + ld hl, vTiles0 tile FIELDMOVE_TREE lb bc, BANK(CutTreeGFX), 4 call Request2bpp ret @@ -173,7 +177,7 @@ Cut_SpawnAnimateTree: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $84 + ld [hl], FIELDMOVE_TREE ld a, 32 ld [wFrameCounter], a ; Cut_StartWaiting @@ -226,7 +230,7 @@ Cut_SpawnLeaf: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $80 + ld [hl], FIELDMOVE_GRASS ld hl, SPRITEANIMSTRUCT_0E add hl, bc ld [hl], $4 @@ -313,7 +317,7 @@ FlyFromAnim: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $84 + ld [hl], FIELDMOVE_FLY ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID add hl, bc ld [hl], SPRITE_ANIM_SEQ_FLY_FROM @@ -323,7 +327,7 @@ FlyFromAnim: ld a, [wJumptableIndex] bit 7, a jr nz, .exit - ld a, 0 * 4 + ld a, 0 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a callfar DoNextFrameForAllSprites call FlyFunction_FrameTimer @@ -347,7 +351,7 @@ FlyToAnim: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $84 + ld [hl], FIELDMOVE_FLY ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID add hl, bc ld [hl], SPRITE_ANIM_SEQ_FLY_TO @@ -360,7 +364,7 @@ FlyToAnim: ld a, [wJumptableIndex] bit 7, a jr nz, .exit - ld a, 0 * 4 + ld a, 0 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a callfar DoNextFrameForAllSprites call FlyFunction_FrameTimer @@ -394,7 +398,7 @@ endr FlyFunction_InitGFX: callfar ClearSpriteAnims ld de, CutGrassGFX - ld hl, vTiles1 tile $00 + ld hl, vTiles0 tile FIELDMOVE_GRASS lb bc, BANK(CutGrassGFX), 4 call Request2bpp ld a, [wCurPartyMon] @@ -404,7 +408,7 @@ FlyFunction_InitGFX: add hl, de ld a, [hl] ld [wd265], a - ld e, $84 + ld e, FIELDMOVE_FLY farcall FlyFunction_GetMonIcon xor a ld [wJumptableIndex], a @@ -446,5 +450,5 @@ FlyFunction_FrameTimer: call _InitSpriteAnimStruct ld hl, SPRITEANIMSTRUCT_TILE_ID add hl, bc - ld [hl], $80 + ld [hl], FIELDMOVE_GRASS ret diff --git a/engine/events/fishing_gfx.asm b/engine/events/fishing_gfx.asm index 25d1ee77a..159f0022d 100644 --- a/engine/events/fishing_gfx.asm +++ b/engine/events/fishing_gfx.asm @@ -17,7 +17,7 @@ LoadFishingGFX: call .LoadGFX ld hl, vTiles0 tile $0a call .LoadGFX - ld hl, vTiles1 tile $7c + ld hl, vTiles0 tile $fc call .LoadGFX pop af diff --git a/engine/events/odd_egg.asm b/engine/events/odd_egg.asm index 10d7cf9aa..a6b244b1d 100644 --- a/engine/events/odd_egg.asm +++ b/engine/events/odd_egg.asm @@ -39,7 +39,7 @@ _GiveOddEgg: .done ld hl, OddEggs - ld a, OddEgg2 - OddEgg1 + ld a, OddEgg1End - OddEgg1 call AddNTimes ld de, wOddEggSpecies diff --git a/engine/games/unown_puzzle.asm b/engine/games/unown_puzzle.asm index fb88d93b6..40c6527d9 100644 --- a/engine/games/unown_puzzle.asm +++ b/engine/games/unown_puzzle.asm @@ -19,11 +19,11 @@ _UnownPuzzle: xor a call ByteFill ld hl, UnownPuzzleCursorGFX - ld de, vTiles1 tile $60 + ld de, vTiles0 tile $e0 ld bc, 4 tiles call CopyBytes ld hl, UnownPuzzleStartCancelLZ - ld de, vTiles1 tile $6d + ld de, vTiles0 tile $ed call Decompress call LoadUnownPuzzlePiecesGFX hlcoord 0, 0 diff --git a/engine/link/link.asm b/engine/link/link.asm index d72abb0a5..e5f354f57 100644 --- a/engine/link/link.asm +++ b/engine/link/link.asm @@ -2039,7 +2039,7 @@ CheckTimeCapsuleCompatibility: jr nc, .move_too_new dec c jr nz, .move_next - ld de, wPartyMon2 - (wPartyMon1 + NUM_MOVES) + ld de, PARTYMON_STRUCT_LENGTH - NUM_MOVES add hl, de dec b jr nz, .move_loop diff --git a/engine/menus/options_menu.asm b/engine/menus/options_menu.asm index 46fa33621..370eba3f6 100644 --- a/engine/menus/options_menu.asm +++ b/engine/menus/options_menu.asm @@ -165,7 +165,7 @@ GetTextSpeed: ; converts TEXT_DELAY_* value in a to OPT_TEXT_SPEED_* value in c, ; with previous/next TEXT_DELAY_* values in d/e ld a, [wOptions] - and $7 + and TEXT_DELAY_MASK cp TEXT_DELAY_SLOW jr z, .slow cp TEXT_DELAY_FAST @@ -467,7 +467,7 @@ Options_Frame: dec a .Save: - and $7 + maskbits NUM_FRAMES ld [hl], a UpdateFrame: ld a, [wTextBoxFrame] diff --git a/engine/menus/save.asm b/engine/menus/save.asm index 469c55abd..190f5f887 100644 --- a/engine/menus/save.asm +++ b/engine/menus/save.asm @@ -89,7 +89,7 @@ MoveMonWOMail_InsertMon_SaveGame: pop de ld a, e ld [wCurBox], a - ld a, $1 + ld a, TRUE ld [wSaveFileExists], a farcall StageRTCTimeForSave farcall BackupMysteryGift @@ -253,7 +253,7 @@ SavedTheGame: ret SaveGameData_: - ld a, 1 + ld a, TRUE ld [wSaveFileExists], a farcall StageRTCTimeForSave farcall BackupMysteryGift @@ -627,7 +627,7 @@ TryLoadSaveFile: ret TryLoadSaveData: - xor a + xor a ; FALSE ld [wSaveFileExists], a call CheckPrimarySaveFile ld a, [wSaveFileExists] @@ -690,7 +690,7 @@ CheckPrimarySaveFile: ld bc, wOptionsEnd - wOptions call CopyBytes call CloseSRAM - ld a, $1 + ld a, TRUE ld [wSaveFileExists], a .nope diff --git a/engine/movie/crystal_intro.asm b/engine/movie/crystal_intro.asm index 26fb31bb8..467c1671a 100644 --- a/engine/movie/crystal_intro.asm +++ b/engine/movie/crystal_intro.asm @@ -1481,7 +1481,7 @@ IntroScene28: cp $8 ret nz - ld de, SFX_UNKNOWN_CB + ld de, SFX_INTRO_WHOOSH call PlaySFX ret diff --git a/engine/movie/title.asm b/engine/movie/title.asm index 3717b4e73..eb639489f 100644 --- a/engine/movie/title.asm +++ b/engine/movie/title.asm @@ -246,8 +246,8 @@ SuicuneFrameIterator: ret .Frames: - db $80 ; vTiles4 tile $00 - db $88 ; vTiles4 tile $08 + db $80 ; vTiles3 tile $80 + db $88 ; vTiles3 tile $88 db $00 ; vTiles5 tile $00 db $08 ; vTiles5 tile $08 diff --git a/engine/overworld/decorations.asm b/engine/overworld/decorations.asm index 7ba177420..bea2e0cdb 100644 --- a/engine/overworld/decorations.asm +++ b/engine/overworld/decorations.asm @@ -1085,17 +1085,18 @@ DecorationDesc_GiantOrnament: db "@" ToggleMaptileDecorations: - lb de, 0, 4 + ; tile coordinates work the same way as for changeblock + lb de, 0, 4 ; bed coordinates ld a, [wDecoBed] call SetDecorationTile - lb de, 7, 4 + lb de, 7, 4 ; plant coordinates ld a, [wDecoPlant] call SetDecorationTile - lb de, 6, 0 + lb de, 6, 0 ; poster coordinates ld a, [wDecoPoster] call SetDecorationTile call SetPosterVisibility - lb de, 0, 0 + lb de, 0, 0 ; carpet top-left coordinates call PadCoords_de ld a, [wDecoCarpet] and a @@ -1103,15 +1104,15 @@ ToggleMaptileDecorations: call _GetDecorationSprite ld [hl], a push af - lb de, 0, 2 + lb de, 0, 2 ; carpet bottom-left coordinates call PadCoords_de pop af inc a - ld [hli], a + ld [hli], a ; carpet bottom-left block inc a - ld [hli], a + ld [hli], a ; carpet bottom-middle block dec a - ld [hl], a + ld [hl], a ; carpet bottom-right block ret SetPosterVisibility: @@ -1177,6 +1178,7 @@ _GetDecorationSprite: ret PadCoords_de: +; adjusts coordinates, the same way as Script_changeblock ld a, d add 4 ld d, a diff --git a/engine/overworld/player_movement.asm b/engine/overworld/player_movement.asm index c70357f13..a4926e7e5 100644 --- a/engine/overworld/player_movement.asm +++ b/engine/overworld/player_movement.asm @@ -562,8 +562,8 @@ DoPlayerMovement:: .GetAction: ; Poll player input and update movement info. - ld hl, .table - ld de, .table2 - .table1 + ld hl, .action_table + ld de, .action_table_1_end - .action_table_1 ld a, [wCurInput] bit D_DOWN_F, a jr nz, .d_down @@ -597,25 +597,20 @@ DoPlayerMovement:: ld [wWalkingTile], a ret -.table -; struct: -; walk direction -; facing -; x movement -; y movement -; tile collision pointer -.table1 - db STANDING, FACE_CURRENT, 0, 0 - dw wPlayerStandingTile -.table2 - db RIGHT, FACE_RIGHT, 1, 0 - dw wTileRight - db LEFT, FACE_LEFT, -1, 0 - dw wTileLeft - db UP, FACE_UP, 0, -1 - dw wTileUp - db DOWN, FACE_DOWN, 0, 1 - dw wTileDown +player_action: MACRO +; walk direction, facing, x movement, y movement, tile collision pointer + db \1, \2, \3, \4 + dw \5 +ENDM + +.action_table: +.action_table_1 + player_action STANDING, FACE_CURRENT, 0, 0, wPlayerStandingTile +.action_table_1_end + player_action RIGHT, FACE_RIGHT, 1, 0, wTileRight + player_action LEFT, FACE_LEFT, -1, 0, wTileLeft + player_action UP, FACE_UP, 0, -1, wTileUp + player_action DOWN, FACE_DOWN, 0, 1, wTileDown .CheckNPC: ; Returns 0 if there is an NPC in front that you can't move diff --git a/engine/pokemon/move_mon.asm b/engine/pokemon/move_mon.asm index 7074dafd8..128bbf200 100644 --- a/engine/pokemon/move_mon.asm +++ b/engine/pokemon/move_mon.asm @@ -1403,7 +1403,7 @@ CalcMonStats: ; hl is the path to the Stat EXP ; de points to where the final stats will be saved - ld c, $0 + ld c, STAT_HP - 1 ; first stat .loop inc c call CalcMonStatC @@ -1414,7 +1414,7 @@ CalcMonStats: ld [de], a inc de ld a, c - cp STAT_SDEF + cp STAT_SDEF ; last stat jr nz, .loop ret @@ -1434,14 +1434,14 @@ CalcMonStatC: push hl ld hl, wBaseStats dec hl ; has to be decreased, because 'c' begins with 1 - ld b, $0 + ld b, 0 add hl, bc ld a, [hl] ld e, a pop hl push hl ld a, c - cp STAT_SDEF + cp STAT_SDEF ; last stat jr nz, .not_spdef dec hl dec hl diff --git a/engine/tilesets/tileset_anims.asm b/engine/tilesets/tileset_anims.asm index 1e6abb968..2827b3a92 100644 --- a/engine/tilesets/tileset_anims.asm +++ b/engine/tilesets/tileset_anims.asm @@ -40,7 +40,7 @@ TilesetKantoAnim: dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, WaitTileAnimation dw NULL, AnimateFlowerTile dw NULL, WaitTileAnimation @@ -53,7 +53,7 @@ TilesetParkAnim: dw NULL, WaitTileAnimation dw vTiles2 tile $5f, AnimateFountain dw NULL, WaitTileAnimation - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, WaitTileAnimation dw NULL, AnimateFlowerTile dw NULL, WaitTileAnimation @@ -71,7 +71,7 @@ TilesetForestAnim: dw NULL, ForestTreeRightAnimation2 dw NULL, AnimateFlowerTile dw vTiles2 tile $14, AnimateWaterTile - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, StandingTileFrame8 dw NULL, DoneTileAnimation @@ -79,7 +79,7 @@ TilesetJohtoAnim: dw vTiles2 tile $14, AnimateWaterTile dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, WaitTileAnimation dw NULL, AnimateFlowerTile dw WhirlpoolFrames1, AnimateWhirlpoolTile @@ -122,7 +122,7 @@ TilesetPortAnim: dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation dw NULL, WaitTileAnimation @@ -178,7 +178,7 @@ TilesetDarkCaveAnim: dw NULL, FlickeringCaveEntrancePalette dw vTiles2 tile $14, WriteTileFromBuffer dw NULL, FlickeringCaveEntrancePalette - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, FlickeringCaveEntrancePalette dw vTiles2 tile $40, WriteTileToBuffer dw NULL, FlickeringCaveEntrancePalette @@ -199,7 +199,7 @@ TilesetIcePathAnim: dw NULL, FlickeringCaveEntrancePalette dw vTiles2 tile $35, WriteTileFromBuffer dw NULL, FlickeringCaveEntrancePalette - dw NULL, TileAnimationPalette + dw NULL, AnimateWaterPalette dw NULL, FlickeringCaveEntrancePalette dw vTiles2 tile $31, WriteTileToBuffer dw NULL, FlickeringCaveEntrancePalette @@ -852,7 +852,7 @@ endr ld sp, hl ret -TileAnimationPalette: +AnimateWaterPalette: ; Transition between color values 0-2 for color 0 in palette 3. ; No palette changes on DMG. diff --git a/home/map.asm b/home/map.asm index 550486081..a38b791fb 100644 --- a/home/map.asm +++ b/home/map.asm @@ -1176,7 +1176,7 @@ ScrollMapUp:: ld l, a ld a, [wBGMapAnchor + 1] ld h, a - ld bc, $0200 + ld bc, BG_MAP_WIDTH tiles add hl, bc ; cap d at HIGH(vBGMap0) ld a, h diff --git a/macros/code.asm b/macros/code.asm index 72fd4b0d2..9429884ca 100644 --- a/macros/code.asm +++ b/macros/code.asm @@ -1,11 +1,11 @@ ; Syntactic sugar macros lb: MACRO ; r, hi, lo - ld \1, (((\2) & $ff) << 8) | (((\3) & $ff)) + ld \1, ((\2) & $ff) << 8 | ((\3) & $ff) ENDM ln: MACRO ; r, hi, lo - ld \1, (((\2) & $f) << 4) | (((\3) & $f)) + ld \1, ((\2) & $f) << 4 | ((\3) & $f) ENDM ldpixel: MACRO diff --git a/mobile/mobile_22_2.asm b/mobile/mobile_22_2.asm index 260e62073..be1c897d8 100644 --- a/mobile/mobile_22_2.asm +++ b/mobile/mobile_22_2.asm @@ -586,7 +586,7 @@ Function8b690: ld a, BANK(GFX_17afa5) call FarCopyBytes ld hl, GFX_17afa5 + $514 + $160 - ld de, vTiles1 tile $6e + ld de, vTiles0 tile $ee ld bc, $10 ld a, BANK(GFX_17afa5) call FarCopyBytes diff --git a/mobile/mobile_46.asm b/mobile/mobile_46.asm index 43ddf5201..95e1f5ac5 100644 --- a/mobile/mobile_46.asm +++ b/mobile/mobile_46.asm @@ -5543,7 +5543,7 @@ Function11ac51: call Function11b314 call Function11acb7 call Function11ad6e - ld a, 30 * 4 + ld a, 30 * SPRITEOAMSTRUCT_LENGTH ld [wCurrSpriteOAMAddr], a farcall DoNextFrameForAllSprites farcall ReloadMapPart diff --git a/mobile/mobile_5c.asm b/mobile/mobile_5c.asm index 2874ce65a..0b4d05014 100644 --- a/mobile/mobile_5c.asm +++ b/mobile/mobile_5c.asm @@ -279,7 +279,7 @@ Function170d02: ld a, $1 ld [rVBK], a ld de, GFX_171848 - ld hl, vTiles1 tile $41 + ld hl, vTiles0 tile $c1 lb bc, BANK(GFX_171848), 24 call Get2bpp xor a diff --git a/mobile/mobile_5f.asm b/mobile/mobile_5f.asm index ed2b5188c..505d6cdbd 100644 --- a/mobile/mobile_5f.asm +++ b/mobile/mobile_5f.asm @@ -605,7 +605,7 @@ Function17d370: call ClearScreen farcall ReloadMapPart call DisableLCD - ld hl, vTiles1 tile $6e + ld hl, vTiles0 tile $ee ld de, $c608 ld bc, 1 tiles call CopyBytes @@ -620,7 +620,7 @@ Function17d370: ld bc, 1 tiles call ByteFill ld hl, $c608 - ld de, vTiles1 tile $6e + ld de, vTiles0 tile $ee ld bc, 1 tiles call CopyBytes xor a @@ -652,7 +652,7 @@ Function17d3f6: Function17d405: call DisableLCD - ld hl, vTiles1 tile $6e + ld hl, vTiles0 tile $ee ld de, $c608 ld bc, 1 tiles call CopyBytes @@ -667,7 +667,7 @@ Function17d405: ld bc, 1 tiles call ByteFill ld hl, $c608 - ld de, vTiles1 tile $6e + ld de, vTiles0 tile $ee ld bc, 1 tiles call CopyBytes xor a @@ -2507,7 +2507,7 @@ wRegisteredItem:: db ; d95c wPlayerState:: db ; d95d wHallOfFameCount:: dw -wTradeFlags:: flag_array PARTY_LENGTH ; d960 +wTradeFlags:: flag_array NUM_NPC_TRADES ; d960 ds 1 wMooMooBerries:: db ; d962 wUndergroundSwitchPositions:: db ; d963 |