![]() This adds a map for Cinnabar Volcano's floors in the run-up to Moltres. I used a S.S. Anne style compression technique here, having 4 floors on a decently sized map that are just far enough apart for a player to never actually see them. This maintains their suspension of disbelief while giving us way more space to work with. I want to compress a lot of RBY maps like this if push comes to shove - there's a lot of places where this is possible. In the interests of compression, I started using the Agatha bank again, as I removed a lot of maps from there when making bank 22. There's some space for maps. Also I made 3 more blocks for cavern which caused it to overflow the bank it was in - fixed that by swapping with PreGym, which is probably much smaller. Cinnabar Volcano hasn't been changed yet in the interest of Martha finishing that bit up. |
||
---|---|---|
.github | ||
audio | ||
constants | ||
crysaudio | ||
data | ||
engine | ||
gfx | ||
home | ||
macros | ||
maps | ||
ram | ||
scripts | ||
text | ||
tools | ||
vc | ||
.gitattributes | ||
.gitignore | ||
audio.asm | ||
charmap.asm | ||
home.asm | ||
includes.asm | ||
INSTALL.md | ||
layout.link | ||
main.asm | ||
Makefile | ||
maps.asm | ||
ram.asm | ||
README.md | ||
rgbdscheck.asm | ||
roms.sha1 | ||
scan_includes.exe.stackdump | ||
text.asm |
Kanto Expansion Pak
This is a ROM Hack of Pokémon Red and Blue, aiming to expand the Kanto region with more interesting locations, evolutions added in later generations, and QoL changes.
If playing on an emulator, BGB is strongly recommended for its accuracy and features. VBA's inaccuracies can cause unintended glitches.
New Pokemon:
- The 34 known beta Pokemon that were cut from RBY have been fully implemented.
- Evolutions or Pre-evolutions of a Kanto Pokemon found in a future generation are included; eg. Kleavor, Glaceon, Annihilape
- Evolutions of Kanto Pokemon found in the SpaceWorld '97 demo are included; eg. Madaamu, Taaban
- Meltan and Melmetal have been added due to their introduction in a Kanto-based game, LGPE.
- All fully-evolved regional variants of Kanto Pokemon have been added.
Johto baby Pokemon and regional pre-evolutions were omitted due to memory constraints. This just barely works.
New Types:
- Dark, Steel and Fairy types are added
- Note that Dark and Steel use their type effectiveness from the SW97 demo
- Note that Bite is still Normal-type
- Note that the Clefairy, Mime Jr, and Jigglypuff lines are not Steel or Fairy-type, respectively
- This (and Bite) was done to ensure the original Kanto Pokemon were unaltered in any way
- While Magnemite, Magnetite, and Magneton are pure Electric, Magnezone is part-Steel.
- Scream Tail remains Psychic/Fairy.
Type Matchups for Steel and Dark for reference:
- Steel...
- Attacks are Super Effective vs: Rock, Fairy
- Attacks are Not Very Effective vs: Water, Electric
- Attacks do no Damage vs: Steel
- Pokemon are weak to: Water, Electric
- Pokemon resist: Poison, Rock, Fighting, Fairy
- Pokemon are Immune To: Steel
- Dark...
- Attacks are Super Effective vs: Ghost, Psychic, Dark
- Attacks are Not Very Effective vs: Normal, Fairy
- Pokemon are Weak to: Normal, Dark, Fairy
- Pokemon resist: Ghost, Psychic
New Items:
- The Ice, Poison and Heart Stones have been added.
- Additional evolution items include the Protector, Black Augurite, Up-Grade, Dubious Disc, Metal Coat and Candy Jar.
- The Old Sea Map has been added, allowing access to Faraway Island and Mew.
- The Citrine Pass has been added, allowing access to a new post-game area based on the unused "C" map.
- The Wing Fossil is a new item that allows Aerodactyl to be revived, as the Old Amber was instead used for Decilla.
New areas
- Celadon University is just north of Celadon.
- This is a reference to a Magikarp event from July 1998, and includes the lore from it and other areas of Pokemon's early worldbuilding.
- New infinitely re-battleable trainers for grinding.
- There's a Move Deleter and Move Relearner!
- Citrine City is a new island city that can be accessed in the postgame.
- Contains a house with a Move Tutor that can teach Tradeback moves without the need for GSC!
- Contains a Team Rocket house where they will sell you TMs and Evolution Items. Jessie and James are there too!
- Will contain a Battle Tower with infinite, randomised trainer parties!
- Garnet Cavern, located in Citrine City, houses several strong trainers and Pokémon.
- Brunswick Trail, south of Citrine City, is a route that leads to Celeste Hill.
- Celeste Hill activates an event where the Galarian Legendary Birds can be fought.
- Underwater Tunnel connects Route 25 and Route 10.
- Cinnabar Volcano is a new area that houses Moltres, allowing it to be obtained before Victory Road.
- Faraway Island from Pokemon Emerald has been added, where you can find Mew. It also has its own wild encounters, as well as an improved translation on its sign, enhancing its appearance from its source material.
- Mt. Moon Crater is a new area based on Area Zero in Pokemon Scarlet and Violet, accessible in the post-game. Here, you can encounter Scream Tail and Sandy Shocks via random encounter, just like the original!
- Bill's Garden is accessible in the post-game to access all "one-time deals", just like in the mythos!
- Silph Co. holds a special challenge for Pokemon League Champions...
Improved areas
- Some barriers to travel across the region have been removed (for example, Pewter City can be left without defeating Brock) allowing for more open world gameplay.
- To encourage this, Gym Leaders now have level scaling, giving more consistent challenge across the game.
- Cinnabar Lab's Trade Room now features the Trader, who will evolve trade-evolving Pokemon for you!
- Rock Tunnel has a more workable map, now being easier to go through and having new areas to explore. Includes a way to get renewable fossils, items, and other interesting bits and pieces. Overall, it makes Flash much more rewarding to bring, showing you where the items and content are instead of being an inconvenience.
- Diglett's Cave has a more detailed map with Onix, Wiglett, and Wugtrio also appearing!
- Route 25 has been given a facelift, adding Bill's Lighthouse!
- Cinnabar Island is a lot bigger, and has a new location added to it. The mansion seems different too...
- Pokemon Tower was shortened, being less intensive and adding room for more maps.
- Silph Co's pathing was completely overhauled to make navigating it less tedious.
- Viridian Gym now has a new area once you make Giovanni leave.
- The S.S. Anne now returns after getting the Marsh Badge!
- After entering the Hall of Fame, try visiting Route 1!
QoL Enhancements
- All 151 original Pokemon, plus an additional 100, can be obtained without the use of trading or glitches, including Mew!
- New Pokedex entries for most Pokemon are available, sourced from the original 1996 Pokedex book by Creatures Inc., restoring a ton of old Kanto lore. Thanks to Dr. Lava and Nob Ogasawara for their incredible work translating and writing about it!
- Pikachu and Eevee are now starters, featuring fully functional Rival lineups. If you pick Pikachu, he picks Eevee, and if you pick Eevee, he picks Pikachu!
- Item Descriptions are available!
- Press A beside surfable water, strength boulders or cut trees to use the HMs without needing to go into the Party menu.
- PP symbol is displayed in the battle menu. PP displayed before, it just looks nicer now. Done by changing a straggler Japanese character.
- Running Shoes by holding B. Also works with the bike! Surf speed is also doubled.
- Fast text has no frame delay between text scrolling, doubling the scroll speed. It's also been made the default option, so you don't need to go into the Options menu for it.
- Traded Pokemon ("Outsiders") can now be nicknamed at the Name Rater's House.
- Lorelei, Bruno, and Agatha now play the Gym Leader Battle theme.
- HP bar has been doubled in speed, having a 1 frame delay per pixel rather than 2.
- Trainer DVs are perfect-15s.
- The Old and Good Rods have been removed, and the Super Rod, now called the Fishing Rod, is obtained in Pewter City. All fishing encounter tables have been altered to roughly match the levels of the surrounding routes.
- The protagonist is referred to in a gender neutral manner.
- PC added to Celadon Hotel where the invisible event usually is. Why not?
- Artificial Save Delay has been removed.
- Ultra Balls now have a Ball Modifier of 4, instead of 8. This makes them better for general-purpose than Great Balls. Safari Balls have the same effect applied.
- Event moves can now be taught via TM/HM;
- TM16 (Pay Day) can be taught to Fearow and Rapidash ('98 Shogakukan)
- TM23 (Dragon Rage) can be taught to Magikarp (July '98 Shogakukan)
- HM02 (Fly) can be taught to the Pikachu line (Corocoro)
- HM03 (Surf) can be taught to the Pikachu line (Stadium / Corocoro)
- Psyduck learns Amnesia at Lv15 (Stadium)
- Yellow learnset changes are imported; eg. Flash Venonat, with tweaks made to ensure nothing is lost from RB either.
- The Game Corner in general is massively buffed, making everything far more worth going for;
- 3x Cherry now gives 100 coins (used to be 8)
- 3x Poliwag/Diglett/Jigglypuff now gives 200 coins (used to be 15)
- 3x BAR now gives 500 coins (used to be 100)
- 3x 7s now gives 999 coins (used to be 300)
- Game Corner prizes have been altered;
- Blue's superior prices are used, so Porygon only costs 6500 coins.
- New prizes include: Cubone, Blastyke, and Cactus.
- The Moon Stone is available over TM23 (Dragon Rage). Dragon Rage is accessible in Celadon University!
- Bag capacity increased from 20 to 30 items.
- Spinner tiles move faster.
Bug Fixes
Many non-multiplayer, non-battle related bugs have been fixed. The aforementioned have been preserved for the RBY battle experience. Bugs that are fixed are ones that objectively hurt the gameplay experience. Much of this can be attributed to the tutorials made by the good people at pret.
- Fixed various translation errors (eg. Route 14 Birdkeeper's "birds of prey" line, Koji and Atsuko in Fuschia.)
- Blaine is no longer addicted to Super Potions.
- CoolTrainerF no longer switches a lot.
- Transformed Pokemon aren't presumed to be Dittos! Mew and Animon function correctly with this at play.
- Status curing items don't remove modifiers anymore.
- Learning new moves plays the sound in the correct bank.
- Falling through a hole on a bike now properly resets the music, as you fall off a bike when going down.
- Using an Escape Rope no longer shows weird characters on DMG and spins correctly on DMG.
- The Item Finder will correctly find items at X/Y 0.0
- Glitch Pokémon will no longer corrupt the Hall of Fame.
- Strength smoke puffs now show properly.
- Game Corner has a ton of fixes;
- The slots no longer load too many tiles
- The lucky machine stops when it should if there's a 7
- The 40-coin hidden item is fixed, and there can always be a lucky machine.
- and a few other objective fixes.
- 2 invisible stars that show on the title screen are cut off; also, the "presents" logo from RG is re-used!
- The healing machine animates correctly!
- Using Minimize or Substitute, looking at the Pokedex, and then battling won't cause sprite corruption.
- OAM Updates can no longer be interrupted by V-Blank, avoiding some sprite corruption.
- Trainer Card transition no longer shows weird garbage on DMGs; this was due to not having enough time to load properly.
- Battle victory music plays at the right time; there were some situations where it would happen when you lost.
- Music in Oak's Lab is delayed a frame so it always plays with the correct channels; V-Blank could otherwise interrupt it.
- The hidden item sfx no longer gets cut off sometimes
- The audio engine no longer borrows from the high bytes of the wrong frequency.
- Oak no longer has his line overwrite itself when giving Poke Balls.
- Player correctly faces the Route 8 guard when stopped.
- Weird behaviour when going to 11F in Silph Co. and forcing a player to leave despite not moving is fixed.
- Fixed weirdness in Pokemon Tower where saving Mr. Fuji won't immediately let you leave. Also fixed coord termination on 2F which could cause some terribleness. and more!
- Trainer Name Pointers are removed, as the localised games don't need to use the file at all.
- Dakutens are removed, as the Japanese accents aren't used in English releases.
- Blank Leader Name code is removed; before, this would only be for the PNGs.
- Some grammar tweaks have been made (eg. If a move is disabled, it now has an upper-case D instead of a lower-case one.)
Known Bugs
- Only portions of spinner tiles animate.
- Occasionally, menu text sets itself to scroll.
- The lone Rocket in Viridian Gym's basement needs to be directly spoken to to be battled
- Pokedex is very laggy
Evolution Methods for new Pokemon
Due to the odd way some new Pokemon evolve, methods are listed here. Beta Pokemon are included with their original methods, given their obscurity. Some Pokemon will have methods from the Spaceworld '97 demo to be closer to (or functional in the context of) RBY. To accomodate things and ensure everything makes sense, some Pokemon have also had their methods changed.
Changed Methods:
- Shellder -> Cloyster | Use Ice Stone (Accomodating Taaban)
- Gloom -> Vileplume | Use Poison Stone (Accomodating Bellossom)
- Nidorino -> Nidoking | L36 (Prototype method, accomodating Nidoreign)
- Nidorina -> Nidoqueen | L36 (Prototype method, accomodating Nidoreign)
New Pokemon:
- Rhydon -> Rhyperior | Use Protector
- Lickitung -> Lickilicky | L32
- Scyther -> Scizor | L41 OR use Metal Coat
- Scyther -> Kleavor | Use Black Augurite
- Pinsir -> Purakkusu | L42 OR use Metal Coat
- Tangela -> Tangrowth | L44
- Onix -> Steelix | L38 OR use Metal Coat
- Slowpoke -> Slowking | Use Heart Stone
- Chansey -> Blissey | L45
- Magmar -> Magmortar | Use Fire Stone
- Electabuzz -> Electivire | Use Thunder Stone
- Magneton -> Magnezone | Use Thunder Stone
- Farfetch'd -> Sirfetch'd | Use Heart Stone
- Poliwhirl -> Politoed | Use Heart Stone
- Ditto -> Animon | Use Metal Coat
- Seadra -> Kingdra | Trade
- Primeape -> Annihilape | Trade
- Golbat -> Crobat | L44
- Marowak -> Guardia | Use Heart Stone
- Porygon -> Porygon2 | Use Up-Grade
- Porygon2 -> Porygon-Z | Use Dubious Disc
- Gloom -> Bellossom | Use Leaf Stone
- Weepinbell -> Tsubomitto | Use Poison Stone
- Shellder -> Taaban | Use Water Stone
Kanto Beta Pokemon:
- Blottle -> Pendraken | L30
- Bittybat -> Zubat | L15
- Cheep -> Jabetta | L30
- Mikon -> Vulpix | L15
- Raichu -> Gorochu | Trade
- Ribbito -> Croakozuna | L30
- Skimper -> Bawligua | L30
- Bawligua -> Cryithan | L50
- Konya -> Meowth | L14
- Decilla -> Gyaoon | L40
- Magnemite -> Magnetite | L20
- Magnetite -> Magneton | L30
- Gyopin -> Goldeen | L16
- Kotora -> Gaotora | L16
- Gaotora -> Gorotora | L36
- Puchikoon -> Ponyta | L20
- Blastyke -> Blastoise | L36
- Wartortle -> Totartle | L36, replaces Blastoise
- Kokana -> Kasanagi | L7
- Kasanagi -> Carapthor | L10
- Psyduck -> Weirduck | L22, Golduck level remains the same for Weirduck.
- Nidorino OR Nidorina -> Nidoreign | Moon Stone
Eeveelutions:
- Espeon | Heart Stone
- Umbreon | Poison Stone
- Leafeon | Leaf Stone
- Glaceon | Ice Stone
- Sylveon | Moon Stone
The Evolution Stone Glitch is being made a feature by moving the Pokemon's constants appropriately. It happens by defeating a Pokemon using a certain Pokemon, while levelling up the respective Pokemon that wants to evolve. Thus, by using a stone, you now have a way to save on them, making all evolutions replicable as long as the Pokemon is kept in possession. We're making each Pokemon that applies to this glitch thematically appropriate.
The following will apply:
- Clefable for Moon Stone
- Arcanine for Fire Stone
- Poliwrath for Water Stone
- Politoed for Heart Stone
- Victreebel for Leaf Stone
- Tsubomitto for Poison Stone
- Mr. Rime for Ice Stone
- Melmetal for Candy Jar
- Kleavor for Black Augurite
- Porygon2 for Up-Grade
- Porygon-Z for Dubious Disc
- Rhyperior for Protector
- Steelix for Metal Coat
Accessing Regional variants
Adding regional variants was difficult; we hit the exact cap by cutting their pre-evolutions. However, we managed to implement them quite nicely! Given many of these evolve via stones, we've given them their pre-evolution's learnsets to ensure they remain functional.
Much like in Let's Go Pikachu and Let's Go Eevee, traders are available who will trade you a regional variant in exchange for a Kantonian one. This goes as follows:
- Viridian City: Raticate
- Pewter City: Golem
- Cerulean City: Ninetales
- Vermillion City: Persian
- Lavender Town: Dugtrio
- Celadon City: Sandslash
- Saffron City: Raichu
- Fuchsia City: Marowak
- Cinnabar Island: Muk
- Indigo Plateau: Exeggutor Version exclusivity was factored in, instead moving Raticate and Golem to the cities without a trader.
Galarian and Paldean formes are accessed on the S.S. Anne, which now returns after receiving the Marsh Badge. Hisuian formes are found in the wild in Bill's Garden, which is accessible in the post-game.
Credits
- Plague von Karma - Creator of the Showdown Mod, Developer, Maps, and occasional spriter (assisting with Tsubomitto, Carapthor)
- Martha's Against Humanity - Developer, Pokémon implementation, tweaks of Albatross's sprites, a few maps (Citrine City, Cinnabar Volcano)
- Ema Skye - Developer, Maps, Showdown Mod assistance
- pret et al - Pokémon Red and Blue Disassembly Project, many tutorials helped us!
- ausma - Showdown Mod assistance
- Paulluxx - Showdown Mod assistance
- DuoM2 - Showdown Mod assistance
- Albatross - Many of the new sprites used in the hack (A significant number of post-Gen 1 evolutions, all regional variants, Meltan and Carapthor lines, etc.)
- Frrf - Assisting with the development of the Pikachu / Eevee Mode, debugging
- dannye33 - Assisting with crysaudio implementation
- erosunica - Assistance with developing Celadon University & Citrine City, plus sources for various subjects.
- Chatot4444 - Assisting with gym scaling code
- ZumiIsawhat? - Restorations of beta OST
- FrenchOrange - Reconstructions of various overworld beta sprites.
- Helix Chamber, RacieBeep, loumilouminosus, Orchid, GBCRetro, & catstorm26 - Prototype Pokémon sprites
- Vortiene - Reused a bit of code from their pureRGB hack. Assisted in bug fixes.
- jojobear13 & Mateo - Move deleter & move relearner functionality from Shin Pokered, followed this guide. Tweaks were made to make it compatible with the pokered version we worked off of.
- Rangi - Reused a bit of code from their Red* / Blue* hack to make HMs usable in the overworld!
- wrulfy - Technical advice
- 大吟醸 (Daiginjo) - Assistance in translating the Tamamushi University Student Book, allowing for an accurate adaptation of the location.
Original README.md proceeding;
Pokémon Red and Blue 
This is a disassembly of Pokémon Red and Blue.
It builds the following ROMs:
- Pokemon Red (UE) [S][!].gb
sha1: ea9bcae617fdf159b045185467ae58b2e4a48b9a
- Pokemon Blue (UE) [S][!].gb
sha1: d7037c83e1ae5b39bde3c30787637ba1d4c48ce2
- BLUEMONS.GB (debug build)
sha1: 5b1456177671b79b263c614ea0e7cc9ac542e9c4
- dmgapae0.e69.patch
sha1: 0fb5f743696adfe1dbb2e062111f08f9bc5a293a
- dmgapee0.e68.patch
sha1: ed4be94dc29c64271942c87f2157bca9ca1019c7
To set up the repository, see INSTALL.md.
See also
- Wiki (includes tutorials)
- Symbols
- Discord: pret
- IRC: libera#pret
Other disassembly projects: