Commit graph

84 commits

Author SHA1 Message Date
Martha Schilling 14f08c941d The Big One Again
Pushing everything I've done, currently doesn't build because the Galarian Birds filesize is too thicc for the section but I need to push this before I go mad
2024-08-25 19:39:01 +01:00
Martha Schilling fe651a7668 jojobear, our saviour
took out 4 bugs in one go, absolute legend
2024-01-02 11:17:58 +00:00
Llinos Evans 6678af8722 Silph Gauntlet reset-on-victory
This functionally turns the Silph Gauntlet into a battle tower of sorts.

I did notice some weirdness post-event-reset so definitely do some tests. It should be fine, though.
2023-12-24 18:13:41 +00:00
Llinos Evans afa5b76639 Add Powder Snow, fix Moltres
- Adds Powder Snow; GSC stats, was cut from RBY.
- Articuno, Jynx, Buu, Glaceon, Alolan Sandslash, and Alolan Ninetales get Powder Snow at L1.
- Glaceon also gets Powder Snow over Aurora Beam at L1; a nerf that makes it more accurate to its PLA learnset. Glaceon doesn't normally get this move.
- Moltres now gets Flamethrower at L51, fixing an error that GSC fixed. Leer is off by exactly 10 spaces. Leer has been made an L1 move, making it consistent with Articuno's Powder Snow. Does not affect legality, given the Tradeback Tutor.
- Because I'm pedantic, Zapdos gets Thunderbolt as an L1 move like Articuno's Ice Beam, so they all stay the same. Does not affect legality.
2023-11-25 18:28:36 +00:00
Llinos Evans f4b5e1d2f5 Add Uppercut
Misty's worst nightmare.

FIGHTING type
55 Power
15 PP
80 Accuracy
Effect: Flinch (30% chance)

Learned by Hitmonchan, Machop, and Mankey at L1. Primeape, Machoke, and Machamp have it in their L1 learnsets as well.

Learned by Carapthor at L10 as an evolution move. Also part of its L1 learnset.
2023-11-25 16:57:55 +00:00
Llinos Evans 63a28e410c Celeste Hill Gate & other things
- New Celeste Hill Gate location so the entrance into the location makes more sense. Also took the opportunity to include more lore. This replaces Pokemon Tower 4F.
- Fixed a bug that caused the Cat icon to not animate correctly.
- Made the infinite Nugget glitch work properly because I was stupid and didn't test it.
- Luxwan now uses the Small Bird icon to fit with the rest of the line.
- Nidoreign has a new Pokedex entry and classification, centred on the Nido's origins in the Moon Rabbit of Asian mythology.
2023-09-20 17:02:09 +01:00
Martha Schilling 508a4e790e The Big One.
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.
2023-09-19 23:34:25 +01:00
Llinos Evans bdb19859c2 Move Animation Photosensitivity Enhancements
This changes the animations for various vanilla moves with the aim of reducing photosensitive reactions. KEP is going to chiefly be played on emulators, and thus players will experience flashing that is meant to be dimmed by a Game Boy screen. This is dangerous, so here we are.

Many moves have been given black screens which 1) Look cool as fuck, Thunderbolt and Blizzard are really nice and 2) bypass flashing. Others have had their flashing reduced or outright removed.

Blizzard has been given special treatment, having the second part of its animation given an Ice Rise clip like Ice Beam. This, coupled with the darkness, looks ace.

Changed moves include:
Body Slam, Glare, Dazzling Gleam (oops), Disable, Blizzard, BubbleBeam, Confusion, Dream Eater, Explosion, Guillotine, Hyper Beam, Mega Kick, Mega Punch, Psychic, Reflect, Rock Slide, Selfdestruct, Spore, and Thunderbolt;
2023-09-07 16:03:07 +01:00
Llinos Evans 8bd3b8a703 Hall of Fame Crash Fix
I forgot to put a `ret` at the end of `ShowThis`, causing the sequence to break. It also fixes a bug that would trap you in your house if you cleared the game at all - LAST_MAP is set to the player's room due to how we changed the starting position.

The post-game Legendary respawns are NOT fixed with this, for reasons I don't yet know. It's most likely the faulty dex as a whole.

The post-game setup itself now works, though - Route 1 Oak appears, Crater Guard disappears, Bill's Garden becomes accessible, etc.

Cerulean Cave is made accessible through the post-game setup until the gauntlet is officially done.
2023-09-07 01:20:53 +01:00
Llinos Evans dadd7ee6a6 Bug Fixes & Enhancements
- Most, if not all, Silph Co. warps have been fixed. Inappropriate ones have been removed.
- The Metal Coat can now be found where one corrupted Silph Co. warp was to fill dead space, and another is in the Power Plant, replacing Carbos.
- Bill now trades you Hisuian Arcanine after being saved.
- Bill's Grandfather now trades you Hisuian Electrode. Had to remove Crinkles, but Tangela is literally right next to Cinnabar, c'mon lol
- Toedscool can now be found behind Pallet Town, replacing Gloom and Weepinbell, making it more focused.
- Now you can't run from Omega! May expand this to more Pokemon depending on feedback and whether it's ok on processing. Main concern is making the run button too laggy - it raised some eyebrows.
2023-09-02 19:33:14 +01:00
Llinos Evans 754e1cdf28 suloku's modernised Exp. All
suloku dropped a really good guide on implementing modern Exp. All into RBY, making the item actually useful.

This basically fixes all the issues, but does expose one thing: Gaining Exp takes...a long time. So when you have one Pokemon KO another and have 5 others in waiting, the load time before leaving the battle will take about 3 seconds. This is definitely disorientating, but is still much, much, much faster than the original.
2023-07-27 21:54:31 +01:00
Llinos Evans 08b976a08b FRLG Legendary Battle theme
LuciShrimp strikes again! A demake of the Legendary Battle theme from FireRed/LeafGreen.

This theme is set to change down the line, possibly taking elements from the Emerald theme Mew uses to differentiate itself more. Mainly committing as the infrastructure has been put in place.
2023-07-23 21:06:28 +01:00
Llinos Evans 3ef4cea23d Fix crash when losing to Yujirou
The reason was because not all the infrastructure for an actual battle was set up - this fixes it. It still has some strange text that appears though.

Also did some minor optimisations on the Vermillion Dock stuff - I think the direction I am taking Faraway Island will work. However, something in that script causes any and all special warps to crash in some way. I am not sure what it is that does it.
2023-07-14 12:16:28 +01:00
Llinos Evans 3e542c959e Yujirou Enhancements
It felt weird that Koichi would have Gym Scaling, but Yujirou would not. So, I changed that to be a thing. I pegged his level scaling to Brock's, mainly because Normal-types are absolutely ballbustingly broken in this game and it makes sense from a progression standpoint. In doing that, I realised some variety in scaling (like, -1 +1, occasional 2 type stuff) could be interesting.

I also fixed multiple bugs;
- Gym Trainers correctly reset when you leave; no visible effect except to me debugging.
- Above also fixed Yujirou not having his loss sequence after, well, losing. Reported by shawesome.
- In fact, Yujirou will even display his loss text after losing, something I learned from doing Professor Oak's new Citrine Pass functionality.
2023-07-13 03:05:19 +01:00
Llinos Evans c4afafb9ac Groundwork
Letter is there, post-game warp is done, new post-game event where you receive the letter isn't working properly
2023-07-12 17:44:25 +01:00
Llinos Evans e2901cd854 Crocky has hair now
Another overdue sprite implementation. Had to slightly edit the back sprite as it was a pixel too wide, but the difference is extremely minimal. Also swapped raichu's pose as it was bad. It may need a bit of dusting off, the position may be crusty, etc.
2023-07-08 21:43:02 +01:00
Llinos Evans 9528f45ce2 minor bits and pieces
- Tweaked debug team for easier testing of actual trainers
- Hopefully(?) fixed nasty plot anim
2023-07-06 16:02:31 +01:00
Llinos Evans 6ba59391c1 Post-Playtest Bug Fixes
- Finishes the Vermilion Beauty event. One silly mistake involving the choice was fixed, and a workaround for wBeautyChoice failing in strange places implemented. Functionally the result I wanted.
- Implemented the Yellow spriteset for Vermilion City with minor adaptations. Fixes that funny issue I found on stream.
- Viridian Pre-Gym was fixed, reworking some events.
2023-07-05 17:59:21 +01:00
BlueZangoose a4f066d705 Text speed options: INSTANT, FAST, MED
The options menu on the main menu currently doesn't work. Options menu in-game works fine.
2023-07-03 23:50:46 +01:00
Llinos Evans 3866a69a25 Vermilion Officer Jenny, other things
- 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!
2023-06-30 21:51:05 +01:00
Llinos Evans a3c81c549c Charmander & Rod House move
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.
2023-06-28 16:31:14 +01:00
Llinos Evans c445892d7f S.S. Anne healer and other bits
This adds the S.S. Anne healer from FRLG that's notorious for gaslighting newer players who just think she's there.

This also adds an extremely early Mewtwo theme. It's far from finished, just happens to be in this commit as I was testing it in debug - thanks to Luci for working on this!

Updated bug list as well with things my friend Crunter found.
2023-06-21 21:06:08 +01:00
Llinos Evans 7ed5c0ae95 1/256 Text and other transparency enhancements
- In the event of a 1/256 miss, the game will now state the Pokemon evaded the attack to signify its occurrence. This is part of an effort to make misses, overall, more transparent.
- Battle Debug now loads some items to assist with testing.
- Misleading Guard Spec message in Celadon has been changed to refer to X Special, which it was actually describing.
- Removed "it can spook the target sometimes" text when getting the TM for Rock Slide, because it's a LIE
2023-06-12 14:41:13 +01:00
Llinos Evans 749abc67b7 Gym Leader Rematches!
This commit adds a large fundamental change to KEP, that being Gym Rematches.

This is achieved alongside a rework to the script that makes those post-game-gating NPCs shift around. If you add a new one, just add its constant to the lists you'll see in the Hall of Fame script.

It also fixes a few bugs:
- Fixed a bug where Cinnabar Gym loaded a fleet of Blaines. This occurred due to the way he is coded at base, and a misunderstanding I had when implementing his scaling. This is now fixed by standardising his gym script instead, while letting the gym trainers still use the old one.
- Fixed a bug where the Up-Grade NPC would not appear after beating Silph Co. 11F. However, Giovanni currently seems to have trouble with his text. This floor needs some re-coding anyway, given we need to add Jessie and James to it.

And some misc. changes:
- Changed the first Moon Stone in Mt. Moon to a Poison Stone for the Nidoking speedrunners
- Debug Mode now has a line of code to set up the post-game easily
- Changed Surge's initial battle text to Yellow's
- Added Sabrina's more accurate LGPE initial battle text, referring to the spoon she bent by accident
2023-06-09 11:17:31 +01:00
Llinos Evans 35851ef6a9 LGPE Beauty Event
This is basically done, but has a few glitches to iron out that I don't have time to do today. So, I'm sending this in as-is with the intent to finish (or someone else can idc) it later.

I initially thought to restrict this to after Vermilion Gym but Persian is really bad and Arcanine doesn't compare to the L30 Dugtrio, so I think it's ok. Just barely balances itself out.

Bugs:
- GiveMonName doesn't work properly for the Vermilion Beauty after receiving the Pokemon, jank ensues.
- Text scrolls immediately when receiving the Pokemon from the Vermilion Beauty.
2023-06-07 11:17:47 +01:00
Llinos Evans d0b7d56e5e Zero damage text
In RBY, there are extremely minor situations where zero damage can be dealt. These usually involve quad resists and profound level differences.

To quote the disassembly:
; this only occurs if a move that would do 2 or 3 damage is 0.25x effective against the target
However, Psywave is also capable of this.

Thus, a new case has been added for when this occurs, which is triggered through a new WRAM entry. Easiest way to do it without having to restructure how misses are handled.

This is overall minor, but it'll probably make at least one person laugh, and that's all I need.
2023-06-05 13:37:43 +01:00
Llinos Evans 1a68db3227 Post-Playtest Hotfixes
- Eevee and Pikachu family's growth rates are changed to Medium Slow. This gives them a much better early-game power spike that tapers off momentarily. They will level up faster until Level 68.
- Yujirou's levels and one pre-gym trainer are slightly nerfed, being easier for players starting out.
- Caterpie and Weedle in Viridian Forest have level deviation, and Pikachu is tapped on the wrist to not make the starter too redundant; change here is pending.
- Debug uses Pikachu and Eevee starters for future starter-based testing.
2023-06-05 02:17:54 +01:00
Llinos Evans 0aa26308f2 Bug fix, ball miss text enhancements
This fixes a bug where Meltans would invade Trainer Battles under the effects of the Mystery Box.

I also did some minor groundwork where the Candy Jar check is a function. I intend to change it so that catching a Pokemon would incur it too. I ended up with glitches when doing that, though.

The "ball miss" message is now modular, with a new message being spat out when not in the Safari Zone. The message talks about it being "too strong" and "breaking the ball", making it far more intense and matching some early anime scenes.
2023-06-04 10:52:00 +01:00
Llinos Evans 9c953339af Candy Jar finished
- Fixed a bug where the Candy Jar would load `wIsInBattle`'s 01, causing it to zero itself out every time.
- Fixed a bug where the Candy Jar would display `wMysteryBoxActive` due to the way `text_bcd` was being used. Replaced with `text_decimal` so it actually displays properly as well. No hex!!
- Added a test function for the evolution in the debug party because that's cool
2023-05-31 23:56:22 +01:00
Llinos Evans 228de2b718 Groundwork for the Candy Jar rework
This does everything except the incrementation.

If you defeat a Meltan, `wCandyJarCount` increments by 1, capping at 40. This is represented in-game as 10, going up to 400, simply by adding a 0 at the end. This, in effect, replicates the Meltan quest from Pokemon Go.

Once 40/400 is reached, the Candy Jar will become an evolution stone, evolving Meltan. Instead of consuming the Jar, the Candies inside are zeroed out.

Currently, the Candy Jar increments, but only once, thus why this is being committed on a separate branch. The bug appears to be at `engine\battle\core.asm`, line 842-861, likely 854-856. It's possible that it could be due to its position in WRAM, or that it's a `db` instead of a `dw`.
2023-05-31 13:37:55 +01:00
Llinos Evans 934f8adcac Mystery Box functionality
It was a long shot, but I did it! I added the Mystery Box from Pokemon GO! Very happy with the results here.

So here's how it works: When used, the game will replace Pokemon encountered with Meltan until the player leaves the map. This is sort of how it works in GO, with the player unable to close it and naturally petering out as they play.

Now multiple Meltan can be obtained, and in abundance, just like GO. Technically, someone could use this as a pseudo-Repel to replace hard encounters with easy ones.

Oh, and I'm pretty sure this happens vs static encounters as well, but it's awkward to account for I think that's hilarious, so...
2023-05-31 05:03:22 +01:00
Llinos Evans 9576b04563 Decrease flashing damage animation loop
In vanilla RBY, Pokemon flash 6 times when taking damage from moves like Tackle or Fury Attack. This is really slow and sells the impact way too much, drawing out battles by a lot. I tried 3 but it looked just slightly too fast, so I went with 4.
2023-05-17 23:46:07 +01:00
Llinos Evans b03e9ffc6e Credit additions
This modifies the credits to have a KEP staff version. It's a little awkward aesthetically! But this should be used and expanded on in the future - people don't read readmes, so the people who've helped should be credited.
2023-05-15 18:01:28 +01:00
Llinos Evans 4de0a13543 So it "works"...
This now, technically, works.

However, the Battle Tent was seemingly made with the assumption trainers are Pokemon, which our hack has moved from. I've made it so it can load it as a trainer battle properly, but you will deathwarp. I need to implement a scripted loss system.
2023-05-13 19:07:16 +01:00
Llinos Evans ec61a039b8 Battle Tent Port
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.
2023-05-13 02:50:31 +01:00
Llinos Evans 36baa9e623 Boy/Girl option
This adds the boy/girl selection from later generations, using the pret tutorial and a spriteset from Pokemon Anniversary Red. I made some alterations, namely inserting the option later into the speech to be less clunky, and having the Nidorino become a Nidorina if you pick the feminine option.

I decided to make the third name option Seren, a common Welsh name for girls. It means "star", which is really cute! But...most people will probably say it's a Panel de Pon reference, which is cool too.
2023-05-13 00:08:39 +01:00
Llinos Evans 9bc7505195 Groundwork for James Bottle Caps
Currently, he doesn't deduct a Bottle Cap and he only fills out Attack and Defence. DVs are stored as a 16-bit address, so I need to find a way to make `a` work with it...
2023-05-11 08:43:19 +01:00
Llinos Evans 53e96553dd Fix evolution bug
Caused by `base_stats.asm` not being in the same bank aa `evos_moves`.
2023-05-02 21:59:08 +01:00
Llinos Evans 2bb2282beb new cuno sprite 2023-05-01 00:47:10 +01:00
Llinos Evans 760121d8fd Adding the last of the used moves
Dark Void and friends aren't in and probably won't be, I dunno yet.

I think Kowtow Cleave is really badass so I gave it to Night Slash too.

Scream Tail and Barunda now have Disarming Voice, which also has its own sound, which is basically Sing but a bit different.

Fake Tears was given its own subanimation to account for the fact it's basically a Water Gun used on yourself.

The FIGHT debug function helps a lot with this whole thing, so test with that.
2023-04-29 21:00:17 +01:00
Llinos Evans 7931dad49d Debug Battle doesn't replace attacks with Pound
I've commented out the code relating to this, which allows for us to test move animations better. It also frees up a WRAM slot.
2023-04-29 18:51:42 +01:00
Llinos Evans 9b387cab7e Expanding on Pokemon icon usage
This adds Pikachu, Cat, and "Small Bird" menu icons. The cat has a custom animation done by myself.

The Jigglypuff in the Pokemon Centre now uses the new sprite, nice 'n' pretty. Officer Jenny is also in Cerulean. The Pokemon from Melanie's house in Yellow have been put in Mr. Fuji's House, given the purpose of the house in RB is different. I think it ends up fitting very nicely.

Chansey has been given its proper sprite in Fuschia. Yellow didn't actually do this, as Chansey doesn't have a walk cycle, causing the stuff that exists to go unused. I wanted it, though, so I had Chansey just not walk and turn around. Oh, and it's in all the Pokemon Centres now. Yeah, that's a...lot of changed files.
2023-04-23 21:25:45 +01:00
Llinos Evans 09ad875023 Finish Rocket House, Yellow sprite backport
Some big dubs for KEP today. This commit backports the Yellow overworld spriteset, and also adds the cat sprite for Meowth. This allows Jessie and James to use their overworld sprites in the Rocket House and serves as groundwork for backporting their other events.

There are altered Daisy and Nurse Joy sprites that may or may not warrant usage. That can be discussed.

Naturally, this also means there's a ton of overworld sprites to use elsewhere. Revamps of the "Bulbasaur house" in Cerulean and the Surfing Pikachu sprite change come to mind.

An & symbol has been backported from GSC for Jessie and James's trainer class as well.
2023-04-23 17:59:28 +01:00
Llinos Evans 2f01628cd9 Groundwork for Tradeback Move Tutor
Currently the move tutor is a little bit broken - the IDs are 1 above how they should be. Shell speculates that it's searching at the table starting from Kangaskhan due to the way the decrements shake up but it may just be making things more complicated than they are.

Big cheese code is `PrepareTradebackMoveList`, it's where things are mucking up.

Also, the code can be significantly optimised, as it's currently being adapted from the function above, `PrepareRelearnableMoveList`; It doesn't need to check levels, for example.

Note that the relearner functions properly, so use it as a reference. I may have removed something important.

Technically, we could have NO_MON as an entry which may make things shake out properly. But I'd rather have a proper fix.
2023-04-23 06:11:05 +01:00
Llinos Evans 437602bf21 hm m yes carapthor
Altered the back sprite to be accurate to beetle wing cases, and changed the S.S. Anne Gentleman to use Carapthor (and Mr. Rime).
2023-04-22 17:07:05 +01:00
dannye 772520c2c2 Merge branch 'master' of https://github.com/pret/pokered 2023-04-19 20:04:38 -05:00
Llinos Evans 094869ab5e Citrine geography rework, Metal Coat
Lots of things here. Citrine now has its own tileset featuring content from the prototype asset leak. This includes new grass, signs, and so on. Lots of tinkering had to be done to make it look good, but it does! Collision and everything is done, but grass needs to animate properly. I'm committing as-is because making the grass animate is actually very difficult.

Also added the Metal Coat and fixed the issues with prior evolution methods - evo items first, level-up second. It is currently unobtainable.
2023-04-17 18:40:30 +01:00
Llinos Evans 77fd55ea49 Add regional trades, break trade limit
All over the place! S.S. Anne doesn't work properly though.

Thanks to Chatot4444 for bypassing the trade limit.
2023-04-09 18:56:19 +01:00
Llinos Evans 7e3d48513b Add Meltan Event
A guy in a Safari Zone Rest House will hand you a Meltan he found lost. It's built off the Lapras guy in Silph.

Also changes the positions of some trader NPCs in the Pokemon Centres to match the others.
2023-04-09 14:48:04 +01:00
Llinos Evans 4389e86fd1 Revert "Revert "Merge branch 'master' of https://github.com/PlagueVonKarma/kep-hack""
This reverts commit e772de43d5.
2023-04-09 14:03:02 +01:00