Whoa, this one's been in the making for a while now. This one has been my attempt to fix as much as I could within a little over a month. Here's what I've got for you.
- Fixed a bug in Silph Gauntlet where the trainers would not see you unless you spoke to them
- Removed the unnecessary Gawarhed and Wugtrio static encounters. In what was once Gawarhed's place is a Rare Candy.
- Implemented a working ferry system (huge thanks to Red++) that allows travelling to Faraway Island and Citrine City with the right tickets. Currently both maps use a copy of the SS Anne, which may be revised later.
- Bittybat, Magnetite and Burgela have been removed to fix a Pokedex bug where entries wouldn't display correctly if the total number wasn't a multiple of 8.
- Fixed a bug where fishing up a Wiglett and Wugtrio would play the trainer battle and Champion battle themes respectively
- Restructured the Pokedex a little. Don't worry, Lickitung's still number 108!
- All references to betamon in the disassembly have had their names updated to match the new Ogasawara ones
- Removed Blastyke as a Game Corner prize, replacing it with Squeamata.
- Garnet Cavern is now properly listed as a dungeon map
- Fixed an issue where trying to leave Bill's House after entering the garden would put you back in the garden
- Moved Silph Gauntlet's Beauty down 1 floor to make the number of trainers on each floor more consistent
- Finished Gauntlet 6F except for the trainer text (PvK please help)
- Gavillain's stats updated to match KEP 1.4 on the Showdown server. It's now a Dragon/Electric type with less Ice coverage.
- Fixed Clefable's and Wigglytuff's starting movesets from an earlier commit
- Fixed an ABSOLUTELY HORRIBLE, EGREGIOUSLY FRUSTRATING BUG that caused the Pokedex's seen counter to rarely update. This is what caused this commit to be delayed for so long. No joke.
- New sprites, courtesy of Albatross, for Sylveon's back sprite, Alolan Marowak, Alolan Muk, Galarian Weezing and Magnezone!
- Fixed a bug preventing the trade for Haunter from being accessed.
- Oak no longer appears in the lab prematurely you can all stop reporting that now
- Added some text warning about only needing to do Hyper Training once. The function as-is is really weird to add a conditional to and I'm a bit too tired to pull it off.
More still need to be done but I'm separating the commits so I don't get overwhelmed lol
- Fixes a bug with the Up-Grade NPC in Saffron. He now properly shows up only after defeating Giovanni.
- Fixes a bug where Silph could be entered before receiving the Poke Flute.
- Silph Gauntlet 5F has a complete remodel, more closely matching the original map found in the leaks.
- One of the Fuchsia Gym Trainers no longer uses a repeat Arbok.
- Wiglett and Wugtrio could learn Rock Slide via TM, which has now been fixed.
- Jacky uses a Porygon in place of Machop, as it ties into his polygonal, Virtua Fighter-inspired sprite.
- Chief uses a Gengar instead of Porygon2 to represent the Silph Scope.
- Omega's and Giovanni 2's levels have been toned down slightly.
- Lance now uses Crocky over Aerodactyl.
- Yujirou's non-initial teams have had their levels reduced to be the same level as the previously-fought Gym Leader, rather than the upcoming one.
- Updated README with additional credits.
This adds three trainers to Brunswick Trail, as well as the lover NPCs Martha wanted to write dialogue for (with placeholders for now).
Most trainers are merely commenting on the strong and energetic Pokemon, which I think matches the racing theme it has going on. This can be changed if need-be.
I have also removed all the noise on the Fake Tree sprite that got added when I imported the tile. Now, it's far more convincing.
- The Zapdos in Brunswick Glade now vanish correctly, due to fixing a desync in the hide/show data
- Brunswick Glade's palette displays correctly
- Improved Citrine City's theme a little
- Changed palettes for Cryithan's line to reflect their upcoming redesign
- Updated Cryithan's sprite
This adds the intermittent area before Brunswick Grotto, where you'll encounter Galarian Zapdos periodically.
It seems the hide/show constants are desynchronised again, as the copies in the glade won't disappear.
That's a fair chunk out of my day...
This commit finishes everything about Silph Co. 11F. DON'T. TOUCH IT. Unless there's a bug, but OTHERWISE, do NOT touch it. Holy shit.
Here's everything featured;
- Jessie and James fight, ported over.
- Rocket grunt changed to the appointment one from the strange room on the other side that really shouldn't be there tbh
- Omega fight now doesn't have the "watch out" text as I needed to do a micro-optimisation TRUST ME it was NECESSARY (it was not, in fact, necessary)
- Giovanni now reuses Beedrill and has a generally stronger team, scaling with the fifth Rival fight.
- Omega refight has been added after some toiling with the Team Rocket intro text that absolutely should not have happened but did for some reason AAA
- Rocket trio text somewhat tweaked
Oh and I ported over the balance patch on the stats, including some neo-Cryithan onboarding.
- Adds Officer Jenny from Yellow to Vermilion City. Due to spriteset restrictions, Roingus Girl has been removed; the self-insert felt a little weird anyway.
- Fuchsia City's map has been redone a little bit to more closely resemble the LGPE version, being far more walkable and aesthetically appealing.
- A Firefighter has been added to Cerulean Gym!
This adds Damien, the Charmander trainer, with text changed to be more accurate to his character.
I've also moved the Pewter Rod House nearby, as it makes more sense for it to be in the Water-type area. However, it seems to load oddly.
I have also integrated the Pikachu/Eevee Mode more, with architecture that it can make it more easily modified. This'll come into play for the Squirtle event.
I have also erased further misinformation the game gives about burns, and changed the Viridian Pre-Gym accordingly, to talk about confusion, which lacks a Trainer Tips sign.
In the name of making Pikachu/Eevee mode more accurate to Yellow, the starter trio are being made obtainable. However, I am also improving it in some respects to make it more accurate.
In the anime, the Hidden Village is between Cerulean and Vermillion, so Yellow's implementation is inaccurate. It also pushes the Jynx trader out of the house, which is undesirable.
Thus, Melanie has been placed in the Day Care to give more reason to go there, as well as make the Day Care look more like the one from FireRed and LeafGreen. In the name of this, a PC has been added as well, allowing for easier utility around the Day Care itself.
Bulbasaur is currently allergic to hiding for some reason but we'll figure that out later.
This is a large-scale compression of KEP's current hide/show constants. RBY's works extremely oddly and is limited to 256 entries.
The problem with how RBY's hide/show stuff works, is that even though there are tons of unused constants, you...can't actually remove them. The constant list is tied to the hide/show data entries, so if you replace it with something else, well, now you just have two objects tied to the same constant. If you made the Route 2 item a boss, and someone picked up the item on Route 2, the boss would also disappear, and vice versa. So, we have to get creative.
I have reduced what we have to 248, but I think I miscounted when doing the funny list somewhere in the actual list when making sure the hex stuff is ok. Either that, or there's an error somewhere that Martha will, by some obscene miracle of humanity, discover. Anyway, this was achieved by turning multiple current overworld items into hidden ones, keeping them in the game whilst keeping to that all-important limit.
I also removed the items in Pokemon Tower 4F for this, just needed a little boost. Well, as you can see by the number, I technically didn't, I just miscounted like 20 times. Look, it's 10:11 PM, my stomach is in pain from an insane injection, and I don't even know if that map will come back, cut me some slack. Or add it back. You definitely can.
This restructures the Fighting Dojo to match the new map, as well as add a few more features and safety mechanisms.
- Koichi, the Karate Master, now plays the Gym Leader theme when fought.
- Hitmontop is now an optional reward.
- Post-Game Rematch is available in addition to the gym scaling to be consistent with other Gym Leaders.
- A safety lock is on the Poke Balls prior to defeating the Karate Master, as the new structure now demands it. Indeed, this is why the reward area in vanilla is like that.
- Architecturally, there is now only one EVENT_GOT_HITMON constant, which is all that was actually needed in the vanilla game. Extreme microoptimisation, as event constants appear to be 16-bit.
This sets up most of the content necessary for Galarian Articuno's event. In SwSh, it has 2 copies, so I'm doing that here too.
Right now, the fight doesn't work properly and the copies don't hide properly. Otherwise, it's roughly how we want it to be.
- Properly adds Brunswick Grotto, as well as Celeste Hill Outside and Celeste Hill Cave
- Citrine City received a minor redesign, putting the path to Brunswick Trail more to the west
- Added complete event for Galarian Zapdos as well as an encounterable, but unfinished Galarian Moltres, so all 3 birds can currently be caught
The warp at the moment is an absolute travesty, something on that tileset needs to change. Either that or we figure out something else.
Everything in the Grotto is done, except for making Galarian Zapdos disappear after being defeated. At least, to my knowledge...
Pokemon Tower 3F is dead until future notice - Martha said she wanted to compress the Diglett's Cave maps, though.
This adds all the required architecture for the new maps to work, as well as Kinchou01 to play when in Celeste Hill itself.
This doesn't add the events, though.
- Attempted to fix the Mt. Moon J&J encounter (did not work, will look at the script file)
- Fixed a few bugged warps relating to Mt. Moon Square/Crater
- Fixed the credits text layout (just need to figure out how to decrease the delay between them, so it still matches the music...)
- Added the Crater guard back
- Changed the silhouettes in the credits to be more prominent Pokemon (Leader and E4 aces, plus some postgame teasers in Omega for the Chief fight, and the legendary wings)
I am not sure why the fossils don't show properly at the moment - it isn't related to going past $FF, as the Old Amber shows.
Dome and Wing specifically don't show properly and need fixing down the line.
- Changes Bill's Garden to be a more fitting Overworld-tileset map
- Gives Cinnabar Volcano a unique palette, being a slightly less-bright version of the RedMon palette
- A few small changes/improvements to the Rival teams
- Reduced wild encounter levels in Silph Gauntlet a little
- Adds a 100% chance for a Magmar encounter when fishing in the Cinnabar Volcano lava
- Hides more 'secret' areas off the Pokedex area listing, namely Mt. Moon Crater and Faraway Island
- Improves Jabetta's sprite a little
This adds the Mt Moon Square House, faithfully recreated from GSC. I haven't yet sorted out the important details regarding the Crater Guard and such, though.
Making the map involved making a new desk tile and making house tile $36 be considered a counter tile. Hopefully there aren't any adverse consequences but I've never seen anything of that nature.
I noticed there are a ton of Clefairy text bits, so I refactored it to be a single line farcalled from `text_7.asm`. This also involved an interesting thing with the Pokemon Fan Club where the Pikachu fan has a Clefairy, so I fixed that too.
I figured that adding the dance was a little difficult right now, so we have Clefairys walking around instead.
I haven't figured out a good place to add the ladders yet (since there should be two entrances) but we'll figure that out eventually. It's plausible that we just make the Crater the southern warp, but I like how out-of-the-way the current one is.
Oh, and I fixed the Crater warps.
Overall, functional, but not finished.
This adds Victory4 in its original form over Mt. Moon Square's music, which could possibly have the initial jingle removed. I noticed the GSC version was being used, which wasn't ideal.
Mt. Moon Square's map is added, with accessibility where the Crater's originally was (for now). One warp on the south part of the map doesn't go anywhere (actually it's a glitch city). The shop and Clefairy event aren't done yet.
The Mt. Moon Crater Guard has been removed with the pretence of re-adding him on the Square map once it's finished.
I'm trying out having the text in the raw script file without farcalling, which seems to be more optimal than doing it the way the devs originally did it. The Battle Tent does this too.
This is...most of the stuff necessary for the Battle Tent to work. I've faithfully restored most things so far, including doing a few grammar tweaks.
Main issue is that we get a really strange softlock when the Pokemon selection menu comes up. Not sure why, but point is, it can't progress to the next bit for debugging like this. Committing now to ask for assistance.
This update does a good few things. Giovanni now uses his unused encounter theme in all pre-fights, which is followed by the regular evil trainer theme when you're about to fight him. This feels very correct. His team has also been minorly altered.
I backported LGPE's pre-fight monologue for Giovanni in Rocket Hideout B4F. Adapted for RB's story, of course, no Cubones here. The original text is very awkward and abrupt, and it also makes the encounter theme feel much more effective in delivery. I think a lot of people can appreciate this.
I also backported Jessie and James for Rocket Hideout B4F while I was at it. I had to change their event script quite a bit for it to fit, and their walking seems...awkward. Regardless, it's functional. The rest will be done with time.
To make future dev door testing easier, I'm keeping all warps I've previously used in comments.
With the way KEP is shaping up, the Rocket Hideout can easily stay with little issue. I don't expect it to be a problem at all. Therefore, in the interest of keeping Lavender Tower's progression the same, it's being restored. I do expect some Lavender Tower floors to be nommed, though.
I expect Silph to also be salvageable but I also really hate Silph.
Oh, also, the Game Corner guard has been buffed. He sucks. They call that a guard??
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.
I messed up Garnet Cavern's 2F name for some reason
Also added all the warps which are, ironically, exactly the same as the international Cerulean Cave. Added the event for Galarian Articuno but gee I hope the constant skip doesn't cause any issues
Currently just uses the RG Unknown Dungeon map, which should be changed accordingly. The warps and stuff outside of basic entry aren't implemented.
Has a halved encounter rate compared to other maps, which matches the idea that caverns don't sustain much wildlife.
Mt Moon theme may not be used in the final product.
- Fixed an issue where KEP's new static encounters would sometimes not disappear correctly
- Fixed an issue where boulders wouldn't fall down holes
- Fixed issues where the SS Anne Rival and Oak in the Indigo Plateau wouldn't appear, causing a softlock
- Fixed an issue where the Mt. Moon fossils wouldn't disappear
- Added several items back after they were previously removed
This adds the first half of an event where you will find the Galarian Birds. It is not finished yet.
It currently bugs out when Galarian Zapdos tries to run away and I don't know why. Frame-by-frame, it seems to be when the player has to move. I've tried different things to make this less bad, but they don't work.
Here's how it's meant to go:
1) Articuno flies away (done)
2) Zapdos barges past the player like Silver does in GSC (bugs out)
3) Moltres moves in front of the player and engages (not done)
If anyone has a better way to do this, please let me know!
Minor changes;
- Connection for Brunswick-Citrine looks nicer
- Celeste has a few changes to make the event run easier.
The groundwork for Brunswick Trail events has been done. Wild data, Cactus event, and Zapdos-G events are set up, plus an NPC. This also makes the Fake Tree sprite available.
I made the warp at the tunnel in Brunswick goes directly to Celeste Hill and back. Warp tile made functional.
Many bugs right now:
- Cactus doesn't disappear after battling it. Also, making this work how I want it to is hard.
- Pokemon are encountered on every tile, which is likely because it's considered to be indoors. In trying to fix this, I seemed to completely screw up the maps, so this isn't being committed. Handle this with care.
- I made a spriteset specifically for Citrine, but it doesn't seem to be working for Brunswick, likely because Brunswick is an indoor map and thus isn't just taking it.
Misc. changes:
- Moved Sandy Shocks to a 4% encounter slot in Mt. Moon Crater to be equal to Scream Tail.
- Restored the proper translation for the "rotten PRESIDENT" scientist, courtesy of Dr. Lava and Nob Ogasawara.
Now has new music (the Mt. Moon Square theme from GSC, which was originally planned as a victory theme in Gen 1), as well as functioning wild encounters and items.
This is a cave that connects Bill's Lighthouse and Route 10, only accessible after Surf is obtained. Contains a static Dragonite as a reference to the anime!
This code has a lot of problems with solutions that me and Frrf can't seem to figure out. We've taken a lot of references from Erika's Gym but we've got many bugs after Yujirou is defeated, such as one case where you end up instantly doing the rematch fight, which is insane because there's no way this can actually happen.
What's committed is a fight that can be re-fought when it shouldn't.
Seems to interact oddly with Saffron but I believe this is because of the way Team Rocket works. The event itself works fine.
Also added the Up-Grade, as before, Porygon was evolving via Trade.
Uses text referencing LGPE, and has a similar location.
Because of the sprite limit in Saffron, the Pidgeot NPC has been removed.
Thanks to Frrf for helping me fix the broken code I initially sent in. This commit refines the mode so that the Oak Lab cutscene is finished and the party picking process is all concrete.
Also, given Surge is a fight, the S.S. Anne Pikachu rival can have Raichu, surely...
Also, the UnusedNames files were, in fact, needed...otherwise, the item names get all corrupted. Probably left some code behind.
So we officially have a new funky mode!
So some bits of this are untested, but the base starters are unaffected. I had to work a lot with the sprite limits so Oak's lab has been changed a bit.
This adds a Pikachu and Eevee "mode" to the game, allowing you to pick them as starters. When doing so, the Rival will always pick the opposite.
There are some glitches;
- Picking Charmander makes Blue erase himself from existence
- Picking from anywhere other than the front of the table may have odd results.
- Oak has to be shown in the lab at the start from now on for some reason; side effect of removing the dexes, there's definitely a fix for this.
These are from me not finishing the ball picking process - it was a little weird.
Parties based on starters have been updated but I had to cut out a lot of unused trainer slots.
Also the unused names were removed.
Rowan NPC added to Cinnabar Lab, just a little cute thing.
Bill's Garden could see many revisions, what's here is the bare minimum. Here's what's done:
- Nidorino NPC blocks it off and is unlocked in the post-game. This currently contradicts the myth - I have a plan for this soon.
- Wild Pokemon are the "non-reproducibles" given in Stadium; starters and eevee are mandatory given those were common in the myth
- Hisui forms should be added when possible
- I had to remake Martha's map in the forest tileset so leaving would be possible
- Everything is at a point where it functions
- Replaces the Old Rod with the Candy Sack, an item to evolve Meltan into Melmetal. Meltan and Melmetal aren't in yet.
- Improves Gym Leader and Elite Four AI by a lot. They still use items, they're just better. Fixes XSpecial use while we're at it; before, it didn't actually increase the stat...
- The Scarlet Book now takes up both shelves, one section for each Paradox Pokemon. I also moved the bookshelf so it looks nicer.
- Text in Celadon University has been reduced significantly, taking up less memory and being a bit more RBY-like. It has also been made more accurate (thanks to Daiginjo for translating my booklet!)
- The Magikarp researcher in Celadon University now gives TM Dragon Rage (no longer unused!)
- Added a guard for Mt. Moon Crater.
- Removed TrainerNamePointers, Blank Leader Name Code, and Dakutens/Hakutens using a guide published by YakiNeen.
- PP no longer uses a shitty graphic and is instead properly implemented into the font, optimising the status screen. Also displays in-battle which is kinda cool.
- Lorelei, Bruno, and Agatha now play the Gym Leader theme, not just Lance.
Still unsure how to fix Celadon University's trainers, all I know is a lot of the information should be taken from the Oak fight I did. The code is radically different and doesn't call trainer headers at all. You'll likely want to start from scratch.
The Mt. Moon Crater Guard's text is a little wonky, not sure what's up there. May have been from the way I accessed Mt. Moon in testing. Anyway, if you want to mess around feel free.
This was surprisingly easy to add, albeit a bit awkward. I learned how to add trainer battles without headers this way, so I may go back to CeladonU and restructure with this in mind.
This commit adds a fully functioning Professor Oak fight, using the Rival party choice script as a launchpad. You can desynchronise the choices easily, just a few number changes. I used the S. S. Anne 2F and Route 22 scripts to hodgepodge it together.
Because of how I did this, Oak is fully re-fightable, taking inspiration from XY Serena's daily re-fights.
I tried to add a Yes/No prompt, but it would still pull you into the fight, presumably because it's calling a beforebattle script before the code. It's a bit of a hassle and my CeladonU code sucked, so I decided to leave it out for now.
It's intended to be unlocked once you enter the Hall of Fame, thus that change there. That hasn't been tested properly so uhhhh *shrug*