Readme update, Lake of Rage changes, and must be 8-bit fixes
A slapdash of various little bits and pieces. - Lake of Rage has a small culture entry at the top to illustrate what we're setting out to do. I mentioned the shell middens and canonised it alongside GSC. - Move constants now have their 16-bit IDs set up - Palfixed Feradactyl and Pupperon, fixed former's credit with confirmation from pokeoctober - Wiped out the must be 8-bit errors on various Pokemon's `base_stats.asm` files. - Fixed some aspects of Strong Arm and Water Sport calling garbage data; this was due to them using 8-bit comparison systems where there needed to be 16-bits. This fixes a good bit of their HM usage. Battle bugs need resolving (presumably due to a lack of gfx?) - Fixed AI scoring with Water Sport (hopefully) - Updated the readme with some of our progress over the past 5 months.
67
README.md
|
@ -1,6 +1,8 @@
|
|||
# Johto Expansion Pak
|
||||
This is a ROM Hack of Pokemon Crystal, playing upon the Kanto Expansion Pak's old philosophy. It adds Johto- and Kanto-related Pokemon to Crystal, more interesting locations, and QoL changes.
|
||||
|
||||
Being so much more elaborate than Kanto, with what is essentially an entirely different game in its development stages, the Johto Expansion Pak is a far more ambitious project than KEP. Most notably, there is a much-extended storyline.
|
||||
|
||||
If playing on an emulator, BGB is strongly recommended for its accuracy and features. Inaccurate emulators, such as VBA and TGB Dual, can experience unintended glitches. This hack is fully playable on official hardware as well.
|
||||
|
||||
# New Pokemon
|
||||
|
@ -9,14 +11,14 @@ Using the Kanto Expansion Pak's original criteria, the ethos of the Johto Expans
|
|||
What falls under "Johto- and Kanto-related" is a Pokemon is the following, so long as they are, in fact, related:
|
||||
- Is a regional variant (Eg. Hisuian Sneasel)
|
||||
- Evolves from or into a Pokemon (eg. Tangrowth, Honchkrow)
|
||||
- Was cut from the final game (eg. Bellignan, Tricules, Phandarin; "beta" Pokemon)
|
||||
- Or from a future title and was related to a Kanto/Johto Pokemon (eg. Lizargun/Charmada)
|
||||
- Was cut from the final game (eg. Bellignan, Tricules, Phandarin; "beta" Pokemon) or cut from a future title while being related to a Kanto/Johto Pokemon (eg. Lizargun/Charmada)
|
||||
- Is a regional convergent (eg. Wugtrio, Toedscruel; "Okagyaradosu" qualifies for this)
|
||||
- Is a Paradox equivalent (eg. Walking Wake)
|
||||
- Would qualify for the Kanto Expansion Pak (eg. Omegadge, Melmetal)
|
||||
|
||||
Any Pokemon that you can think of that would come under this, is absolutely in. Dex total is 466!
|
||||
Any Pokemon that you can think of that would come under this, is absolutely in. Dex total is 483!
|
||||
|
||||
With respect to Pokemon from the May 1998 Sprite Cache, creative liberties based on their designs are taken. Given the lack of...anything for these Pokemon, they're heavily customised. Similar philosophies to the Kanto Expansion Pak's RG Asset Leak Pokemon are used.
|
||||
Many prototype Pokemon have very little information around them: You'll be hard-pressed to find stats, cries, movesets, anything for some. With the Kanto Expansion Pak, we used all context clues available to try and formulate a picture-perfect, accurate representation to the best of our abilities. We've done this with the May 1998 Sprite Cache Pokemon, among others. Whenever something confirmed exists, it is used, and that then informs the interpretation. We also take Nob Ogasawara names as canon whenever they appear.
|
||||
|
||||
Mega Evolutions, Gigantamax forms, etc, are not in active consideration.
|
||||
|
||||
|
@ -24,7 +26,13 @@ Mega Evolutions, Gigantamax forms, etc, are not in active consideration.
|
|||
- There is now an enby character option named Topaz, purple-themed.
|
||||
- You can now name your mother, just as it was in Gold and Silver's prototype stages!
|
||||
- There is a new Nihon region, based on the 1998 version before it got scrapped for Johto.
|
||||
- The Fairy-type is now available, though Pokemon are not retroactively changed, per the Kanto Expansion Pak philosophy (you wouldn't want a Fairy-type Granbull pre-split, would you?)
|
||||
- The Fairy-type is now available, using the though Pokemon are not retroactively changed, per the Kanto Expansion Pak philosophy (you wouldn't want a Fairy-type Granbull pre-split, would you?)
|
||||
- Additionally, Fairy uses the proto-XY discovery from the 2024 Teraleak, being closer to GSC. Thus...
|
||||
- Fairy attacks are Super Effective vs: Fighting, Bug, Dragon, Dark
|
||||
- Fairy attacks are Not Very Effective vs: Fire, Ice, Steel
|
||||
- Fairy-type Pokemon are weak to: Fire, Ice, Steel
|
||||
- Fairy-type Pokemon resist: Fighting, Bug, Dark
|
||||
- Fairy-type Pokemon are Immune To: Dragon
|
||||
- Fossil revival is back in town! Get fossils using Rock Smash and revive them at Ruins of Alph or the newly-added Pewter Museum of Science!
|
||||
- Breakable rocks now give useful items...
|
||||
- 1% MAX_REVIVE
|
||||
|
@ -51,38 +59,61 @@ Mega Evolutions, Gigantamax forms, etc, are not in active consideration.
|
|||
- The Antique Pot has been added to accomodate a Shuckle evolution!
|
||||
- New Club and Wing Fossils; the former for Xylodon, a May98 Prototype Pokemon, and the latter for Feradactyl, (seemingly) an Aerodactyl pre-evolution from the same prototype.
|
||||
- The unused Honey Pot from prototype GSC has been added! 2 days after placing Sweet Honey, you can encounter either Munchlax, Beedrill, Ursaring, or Heracross!
|
||||
- Unused moves from the SpaceWorld demo have been re-implemented and distributed amongst the Pokemon. This includes the unused HMs, each with unique effects, sometimes calling back to other titles.
|
||||
|
||||
## Technical Changes
|
||||
- Numerous important registers, such as map and Pokemon IDs, now support 16-bit IDs, allowing for significantly more additions to the game. This makes JEP possible.
|
||||
- Important to note is the fact Crystal has ~30% free ROM space, which, given the sheer amount of content inside, makes this bountiful. This, too, makes JEP possible. Regardless, expanded ROMs can be played from good flash cartridges, so ROM space is not a concern to the team.
|
||||
- Tilesets now handle up to 255 titles (from 192), allowing for slightly nicer maps. We also have flipped tiles available for more complexity.
|
||||
- Can now have up to 17 object events.
|
||||
- Footprint pictures were optimised to make dex additions easier on memory. Before, they were mapped to a single bank - optimal for 8-bits, but not for 16!
|
||||
- Lots of unnecessary, unreferenced code was removed as and when it became necessary.
|
||||
|
||||
## QoL Changes
|
||||
- Pokemon learnsets have been given a large upheaval, now being easier to use. A conservative approach was employed to ensure the GSC feel was preserved. Move additions have been made based on prototype and future game material (eg. Sing Pidgeot using proto-RG), but odd ones (eg. Aeroblast Skarmory) were omitted.
|
||||
- A Trader NPC is available in a new Lake of Rage town area, allowing you to access trade evolutions natively.
|
||||
- DVs, Stat Exp., and Hidden Power now display on the stat screen.
|
||||
- Kurt now makes Apricorn Balls instantly. He's had his coffee and is listening to his favourite music.
|
||||
- Instant text is now an option!
|
||||
- Clock reset procedure is now like vanilla GS, requiring just Down + B.
|
||||
- Tilesets now handle up to 255 titles (from 192), allowing for slightly nicer maps.
|
||||
- Can now have up to 17 object events.
|
||||
- Gen 6 Experience System!
|
||||
- Poke Balls now all have unique palettes.
|
||||
- The high friendship evolution threshold is now 170, making Friend Balls sufficient for instant evolution and hatching from Eggs takes minimal effort.
|
||||
- The high friendship evolution threshold is now 170, making Friend Balls sufficient for instant evolution. Hatching Pokemon from eggs also makes friendship-based evolution take minimal effort.
|
||||
- Items previously only obtainable via the Time Capsule are now distributed to specific Pokemon (5%: Polkadot Bow Snubbull, TwistedSpoon Kadabra, Metal Powder Ditto/Mimmeo, Light Ball Pikachu; 50%: Lucky Punch Chansey)
|
||||
- During the intro, when knowing the PokeGear instructions, you now immediately skip some of the text relating to it, making starting the game slightly less agonising.
|
||||
- During the intro, when knowing the PokeGear instructions, you can now skip some of the text relating to it, making starting the game slightly less agonising.
|
||||
- Present Glitch was returned in full, now always having the funny damage calculations the move is known for in GSC.
|
||||
|
||||
## Map Changes
|
||||
Numerous new maps are available, featuring new locations, the iconic Sevii Islands, and the Nihon region!
|
||||
|
||||
Additionally, there have been many wild encounter tweaks. View this document for details. (will link when hack is in a playable state)
|
||||
|
||||
- The Nihon region now exists! A victory lap after conquering Kanto and Johto, expect some serious challenge and spirited reconstruction of the iconic proto-Region!
|
||||
- The Sevii Islands have been appended to Kanto, complete with a new and unique quest, reconstructions of cut routes, and more!
|
||||
- Johto wild encounters have been changed to be more weighted towards Johto Pokemon; eg. Murkrow is available about Ecruteak at night, Misdreavus largely replaces Gastly, etc. Levels have been adjusted.
|
||||
- Kanto wild encounters have generally higher levels to aid in improving the level curve.
|
||||
- Rock Smash now has variable and larger wild data, featuring rare, location-based Pokemon (eg. Corsola on the shore), and level adjustments to make them more appropriate.
|
||||
- Viridian Forest has been restored.
|
||||
- The Pewter Museum of Science has been restored.
|
||||
- Cerulean Cave has been restored, complete with a Mewtwo fight!
|
||||
- The Kanto Safari Zone map from the prototype has been restored.
|
||||
- The prototype Lake of Rage village has been restored, complete with an Evolution Stone shop and Trader NPC! In general, it's themed around Pokemon evolution.
|
||||
- Kanto wild encounters have generally higher levels to aid in improving the level curve. Likewise, it's weighted towards Kanto Pokemon.
|
||||
- Numerous new NPC sprites from prototype materials, RBY, and more, are restored and distributed throughout the regions, hoping for a more colourful feel.
|
||||
- Rock Smash now has variable and higher-quality wild data, featuring rare, location-based Pokemon (eg. Corsola on the shore), and level adjustments to make them more appropriate.
|
||||
- Pokemon Centres are now dynamic across all three main regions, possessing themed floorings and map design.
|
||||
- HGSS locations have been appended to Johto, making it slightly bigger.
|
||||
- The Sinjoh Ruins exists, being built for obtaining Hisuian Pokemon. Try catching all the Unown!
|
||||
- The Pokemon Communications Centre from JP GSC has been added and tweaked into a Regional Variant Trade hub, increasing with badge count.
|
||||
- The GS Ball event has been restored, now being obtainable after beating the Elite Four and trying to exit the building.
|
||||
- The Egg Ticket and Eon Mail events have been restored, now being associated with Buena's Password. Redeeming the Egg Ticket gives you an Odd Egg with the usual Pokemon pool and Shiny chances; this is soft resettable if you like that sort of thing.
|
||||
- The News Machine now simply references events from the old competitive scene, similar to what was done at the time. Considerations are being made for progression-based bits and pieces.
|
||||
- Additionally, old lore relating to the area has now been restored, including something about the Unown!
|
||||
- The Bug Catching Contest now gives slightly more rewards, including a familiar Gligar...
|
||||
- Mania & Shuckie now have a reworked reward system, giving the player a special item...
|
||||
- The prototype Lake of Rage village has been restored, complete with an Evolution Stone shop and Trader NPC! In general, it's themed around Pokemon evolution.
|
||||
- The Haunted House from proto-GSC has been added south of Blackthorn City!
|
||||
- Viridian Forest has been restored.
|
||||
- The Pewter Museum of Science has been restored.
|
||||
- Like the spooky Lavender Town? Experience a new location filled with spooks and haunts!
|
||||
- The Kanto Safari Zone map from the prototype has been restored.
|
||||
- The Summer Beach House has been added south of Fuchsia City, now being a Surf tutor for Pikachu!
|
||||
- Cerulean Cave has been restored, complete with a Mewtwo fight!
|
||||
- Walls can be climbed using Strong Arm, functionality identical to HGSS Rock Climb.
|
||||
- Deep water now exists for Dive, with various locations across Johto, Kanto, and Nihon featuring it.
|
||||
|
||||
# Credits
|
||||
As the open source nature of this project implies, people are free to reuse what's here for their own ends, **so long as credit is given to this hack and those who worked on what you reuse.** Additionally, we strongly urge you to make any projects using JEP's content open source. JEP strongly supports the [free software movement](https://www.fsf.org/about/) and its four essential freedoms. If you have any questions on the topic of content reuse, contact @ plague_von_karma on Discord.
|
||||
|
@ -106,7 +137,7 @@ If you use our implementations of anything at all, it is encouraged to submit Pu
|
|||
- zuperZACH (Spriter)
|
||||
|
||||
## Sprite Credits
|
||||
Individualised prite credits can be found within the respective Pokemon's folders. These exist to ensure any sprite imports come with an adequate level of credit for JEP's (and other unaffiliated) artists.
|
||||
Individualised Pokemon sprite credits can be found within the respective Pokemon's folders. These exist to ensure any sprite imports come with an adequate level of credit for JEP's (and other unaffiliated) artists.
|
||||
|
||||
### JEP Developers
|
||||
JEP-affiliated spriters require sprites to be used with direct credit for non-commerical purposes. Credit the artist in any case of using them.
|
||||
|
@ -120,7 +151,7 @@ JEP-affiliated spriters require sprites to be used with direct credit for non-co
|
|||
|
||||
### Unaffiliated
|
||||
- [nuuk](https://x.com/nuukiie): Azurill, Electivire, Farigiraf, Glaceon, Honchkrow, Leafeon, Magmortar, Magnezone, Mamoswine, Porygon-Z, Sylveon, Wyrdeer, Clodsire (back)
|
||||
- Scarlax, Pix, BloodlessNX, Kam, Poket, BimbelyGimbly: Animated sprites from [Pokemon October](https://github.com/pokeachromicdevs/pokeoctober): Bellignan, Caretorker (Adbarstork), Inoshika (Aggroswine), Bipulla, Sonegg (Clefling), Kolta (Coalta), Coinpur, Dodaerie, Bundra (Germifrost), Kiwooked (Kiwacki), Eucala (Koalyptus), Trebir, Burgela, Gorotora, Pockle (Shuqlour, edited by Martha), Moibelle, Molambino, Dokuroar (Necrorex), Orfry, Smujj, Stricheel, SW99 Feraligatr (edited by Plague von Karma), Belledam
|
||||
- Scarlax, Pix, BloodlessNX, Kam, Poket, BimbelyGimbly: Animated sprites from [Pokemon October](https://github.com/pokeachromicdevs/pokeoctober): Bellignan, Caretorker (Adbarstork), Inoshika (Aggroswine), Bipulla, Sonegg (Clefling), Kolta (Coalta), Coinpur, Dodaerie, Bundra (Germifrost), Kiwooked (Kiwacki), Eucala (Koalyptus), Trebir, Burgela, Gorotora, Pockle (Shuqlour, edited by Martha), Moibelle, Molambino, Dokuroar (Necrorex), Orfry, Smujj, Stricheel, SW99 Feraligatr (edited by Plague von Karma), Belledam, Feradactyl (Gargranite)
|
||||
- Gorotora is edited from RacieBeep's Yellow sprite in the Helix Chamber PokeThon ROM Hack. A full list of Helix Chamber sprites are available [here](https://cdn.discordapp.com/attachments/1014321591657709569/1015347305483878521/unknown.png). Helix Chamber spriters have a "must credit" policy.
|
||||
- SoupPotato et al: Various sprites from [Pokemon Gold & Silver '97 Reforged](https://github.com/SoupPotato/gold97); Palssio (Cruize), Pressio (Aquallo) Donmarin (Aquarius), Grenmar (Bombsheal, with edits), Jungela (Gelania), Elebebi (Elebabe), Mimmeo (Metto), Kazappelin (Numbpuff), Disturban (Turban), Angore (Anchorage), Folage (Silkane), Luxwan
|
||||
- SCMidna: Munchlax
|
||||
|
|
|
@ -261,23 +261,23 @@
|
|||
const ROCK_SLASH ; FD
|
||||
const CROSS_CUTTER ; FE
|
||||
const MEGAPHONE ; FF
|
||||
const MYSTIC_ICE ; G0
|
||||
const BOUNCE
|
||||
const BRIGHT_MOSS
|
||||
const COIN_HURL
|
||||
const UPROOT
|
||||
const SYNCHRONIZE
|
||||
const STRONG_ARM
|
||||
const UPPERCUT
|
||||
const WATER_SPORT
|
||||
const WIND_RIDE
|
||||
const DAZZLING_GLEAM
|
||||
const DISARMING_VOICE
|
||||
const DRAINING_KISS
|
||||
const FAIRY_WIND
|
||||
const MOONBLAST
|
||||
const PLAY_ROUGH
|
||||
const STRANGE_STEAM ; BONG WEEZING RIIIIIIISE UP
|
||||
const MYSTIC_ICE ; 100
|
||||
const BOUNCE ; 101
|
||||
const BRIGHT_MOSS ; 102
|
||||
const COIN_HURL ; 103
|
||||
const UPROOT ; 104
|
||||
const SYNCHRONIZE ; 105
|
||||
const STRONG_ARM ; 106
|
||||
const UPPERCUT ; 107
|
||||
const WATER_SPORT ; 108
|
||||
const WIND_RIDE ; 109
|
||||
const DAZZLING_GLEAM ; 10A
|
||||
const DISARMING_VOICE ; 10B
|
||||
const DRAINING_KISS ; 10C
|
||||
const FAIRY_WIND ; 10D
|
||||
const MOONBLAST ; 10E
|
||||
const PLAY_ROUGH ; 10D
|
||||
const STRANGE_STEAM ; 10E BONG WEEZING RIIIIIIISE UP
|
||||
DEF NUM_ATTACKS EQU const_value - 1
|
||||
|
||||
if NUM_ATTACKS > $3fff
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db AMBIPOM ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 75, 100, 66, 115, 60, 66
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db AZURILL ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 50, 20, 40, 20, 20, 40
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db BONSLY ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 50, 80, 95, 10, 10, 45
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db CARETORKER ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 90, 65, 65, 72, 75, 118
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db FOXFIRE ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 55, 85, 50, 115, 100, 70
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db GRENMAR ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 80, 80, 70, 55, 105, 80
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db HIPPUNK ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 90, 75, 75, 30, 80, 80
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db HONCHKROW ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 100, 125, 52, 71, 105, 52
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db KAZAPPELIN ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 75, 95, 75, 65, 115, 85
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db LURREEL ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 70, 85, 105, 55, 105, 65
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db MANTYKE ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 45, 20, 50, 50, 60, 120
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db QATU ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 50, 60, 55, 80, 80, 55
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db QWILFATHER ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 75, 115, 85, 85, 75, 75
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db REROAD ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 90, 85, 75, 70, 85, 70
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db STRICHEEL ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 50, 60, 65, 20, 60, 35
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db SUNBUD ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 55, 45, 45, 30, 65, 65
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
db WYRDEER ; species ID placeholder
|
||||
db 0 ; species ID placeholder
|
||||
|
||||
db 103, 105, 72, 65, 105, 75
|
||||
; hp atk def spd sat sdf
|
||||
|
|
|
@ -1677,7 +1677,8 @@ AI_Smart_Surf:
|
|||
AI_Smart_Whirlpool:
|
||||
; Greatly encourage this move if the player is underwater and the enemy is faster.
|
||||
ld a, [wLastPlayerCounterMove]
|
||||
cp WATER_SPORT
|
||||
ld bc, WATER_SPORT
|
||||
call CompareMove
|
||||
ret nz
|
||||
ld a, [wPlayerSubStatus4]
|
||||
bit SUBSTATUS_UNDERWATER, a
|
||||
|
|
|
@ -8315,7 +8315,7 @@ InitEnemyWildmon:
|
|||
ld a, [wCurPartySpecies]
|
||||
call GetPokemonIndexFromID
|
||||
ld a, l
|
||||
sub UNOWN
|
||||
sub UNOWN ; FIXME: This flags a must be 8-bit warning. I don't think it's actually a problem, considering Unown is within the 8-bit boundary of Pokemon, but it may be worth checking out.
|
||||
if HIGH(UNOWN) == 0
|
||||
or h
|
||||
else
|
||||
|
|
|
@ -5645,14 +5645,11 @@ BattleCommand_Charge:
|
|||
call LoadMoveAnim
|
||||
ld a, BATTLE_VARS_MOVE_ANIM
|
||||
call GetBattleVar
|
||||
cp FLY
|
||||
jr z, .got_move_type
|
||||
cp DIG
|
||||
jr z, .got_move_type
|
||||
cp BOUNCE
|
||||
jr z, .got_move_type
|
||||
cp WATER_SPORT
|
||||
jr z, .got_move_type
|
||||
|
||||
ld hl, .fly_dig_moves ; attempt to resolve 16-bit issue with bounce and water sport - this can probably be made more efficient with a farcallable list
|
||||
call CheckMoveInList
|
||||
pop hl
|
||||
jr c, .got_move_type
|
||||
call BattleCommand_RaiseSub
|
||||
xor a
|
||||
|
||||
|
@ -5753,6 +5750,13 @@ BattleCommand_Charge:
|
|||
text_jump HidUnderwaterText
|
||||
db "@"
|
||||
|
||||
.fly_dig_moves
|
||||
dw FLY
|
||||
dw DIG
|
||||
dw BOUNCE
|
||||
dw WATER_SPORT
|
||||
dw -1
|
||||
|
||||
BattleCommand_TrapTarget:
|
||||
ld a, [wAttackMissed]
|
||||
and a
|
||||
|
|
|
@ -427,7 +427,7 @@ Function17042c:
|
|||
; If a == 0 and b >= $fc, overwrite the current trainer's data with
|
||||
; Unknown_17047e, and exit the inner loop.
|
||||
ld a, b
|
||||
cp NUM_POKEMON + 1
|
||||
cp NUM_POKEMON + 1 ; FIXME: Flags a must be 8-bit error. Needs to be updated to match the 16-bit standard of comparing with Number of Pokemon. What is that? iunno.
|
||||
jr nc, .copy_data
|
||||
|
||||
.next_iteration
|
||||
|
|
|
@ -1977,8 +1977,8 @@ TryStrongArmOW::
|
|||
jr c, .cant_climb
|
||||
|
||||
; Now check if Strong Arm is in the party. This takes longer, thus the above going first.
|
||||
ld d, STRONG_ARM
|
||||
call CheckPartyMove
|
||||
ld hl, STRONG_ARM
|
||||
call CheckPartyMoveIndex
|
||||
jr c, .cant_climb
|
||||
|
||||
ld a, BANK(AskStrongArmScript)
|
||||
|
@ -2146,8 +2146,8 @@ TryWaterSportOW::
|
|||
ld de, ENGINE_CASCADEBADGE
|
||||
call CheckEngineFlag
|
||||
jr c, .cant
|
||||
ld d, WATER_SPORT
|
||||
call CheckPartyMove
|
||||
ld hl, WATER_SPORT
|
||||
call CheckPartyMoveIndex
|
||||
jr c, .cant
|
||||
call GetPartyNickname
|
||||
ld a, BANK(AskWaterSportScript)
|
||||
|
|
|
@ -942,8 +942,6 @@ DecillaFrontpic: INCBIN "gfx/pokemon/decilla/front.animated.2bpp.lz"
|
|||
DecillaBackpic: INCBIN "gfx/pokemon/decilla/back.2bpp.lz"
|
||||
GawarhedFrontpic: INCBIN "gfx/pokemon/elebebi/front.animated.2bpp.lz"
|
||||
GawarhedBackpic: INCBIN "gfx/pokemon/gawarhed/back.2bpp.lz"
|
||||
KabutopsFossilPic: INCBIN "gfx/trainers/kabutops.2bpp.lz"
|
||||
AerodactylFossilPic: INCBIN "gfx/trainers/aerodactyl.2bpp.lz"
|
||||
|
||||
SECTION "Pics 24", ROMX
|
||||
|
||||
|
@ -1064,3 +1062,7 @@ SigalPic: INCBIN "gfx/trainers/sigal.2bpp.lz"
|
|||
KuyePic: INCBIN "gfx/trainers/kuye.2bpp.lz"
|
||||
ShamPic: INCBIN "gfx/trainers/executive_f.2bpp.lz"
|
||||
CarlPic: INCBIN "gfx/trainers/executive_m.2bpp.lz"
|
||||
|
||||
; spillover
|
||||
KabutopsFossilPic: INCBIN "gfx/trainers/kabutops.2bpp.lz"
|
||||
AerodactylFossilPic: INCBIN "gfx/trainers/aerodactyl.2bpp.lz"
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 436 B |
|
@ -1,4 +1,4 @@
|
|||
Sprite taken from Pokemon October, originally uncredited but seems to have been made by Poket.
|
||||
Sprited by Poket and used in Pokemon October.
|
||||
https://github.com/pokeachromicdevs/pokeoctober/tree/demo-2/gfx%2Fpokemon%2Fgargranite
|
||||
|
||||
https://x.com/Pokets3/status/1711804029083258977
|
||||
|
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 567 B |
Before Width: | Height: | Size: 352 B After Width: | Height: | Size: 321 B |
Before Width: | Height: | Size: 758 B After Width: | Height: | Size: 669 B |
|
@ -1,3 +1,10 @@
|
|||
; The Lake of Rage has had its original layout restored and edited to work with JEP.
|
||||
; It's based on Lake Biwa, a 4 million year old lake known for its natural beauty and humongous catfish.
|
||||
; The catfish are said to know when earthquakes will occur through detecting unusual vibrations or water chemistry. In Japanese mythology, Onamazu 大鯰 (lit. giant amur catfish) is said to cause earthquakes underground.
|
||||
; What does this mean? Gyarados is a flying catfish. Also, this inspired Whiscash. In pracice? Absolutely nothing.
|
||||
; *ahem* anyway, this context is what's informing the changes made to the Lake of Rage.
|
||||
; Given the forced evolution, we've themed the new town around evolution. Evolution stones, the trader NPC, and so on, all found here.
|
||||
|
||||
object_const_def
|
||||
const LAKEOFRAGE_LANCE
|
||||
const LAKEOFRAGE_GRAMPS
|
||||
|
@ -126,8 +133,53 @@ LakeOfRageSuperNerdScript:
|
|||
LakeOfRageCooltrainerFScript:
|
||||
jumptextfaceplayer LakeOfRageCooltrainerFText
|
||||
|
||||
; Did you know DPP canonically takes place at the same time as GSC?
|
||||
; Let's canonise that in JEP.
|
||||
|
||||
; This will technically be two individuals.
|
||||
; The first is the guy from the Battle Zone, who gets there first. A happy larrikin for sure.
|
||||
; The second is the exploration team from the DP intro. They got here too late, so...oops.
|
||||
LakeOfRageCameramanScript:
|
||||
jumptextfaceplayer LakeOfRageCameramanText
|
||||
faceplayer
|
||||
opentext
|
||||
checkevent EVENT_LAKE_OF_RAGE_RED_GYARADOS
|
||||
iftrue .GyaradosDefeated
|
||||
writetext LakeOfRageCameramanText
|
||||
waitbutton
|
||||
closetext
|
||||
end
|
||||
|
||||
.GyaradosDefeated:
|
||||
writetext LakeOfRageCameramanText_GyaradosDefeated
|
||||
waitbutton
|
||||
closetext
|
||||
end
|
||||
|
||||
LakeOfRageCameramanText: ; Reference to the Battle Zone
|
||||
text "Hohoho!"
|
||||
|
||||
para "Am I lucky to"
|
||||
line "have been here"
|
||||
cont "when that MAGIKARP"
|
||||
cont "evolved!"
|
||||
|
||||
para "This film is"
|
||||
line "gonna make me"
|
||||
cont "rich!"
|
||||
done
|
||||
|
||||
; Slightly doctored for the poor innocent Game Boy screen...
|
||||
LakeOfRageCameramanText_GyaradosDefeated:
|
||||
text "Despite the team's"
|
||||
line "best efforts, the"
|
||||
cont "red GYARADOS has"
|
||||
cont "eluded detection."
|
||||
|
||||
para "It has failed to"
|
||||
line "appear, even fl-"
|
||||
cont "eetingly, to our"
|
||||
cont "crestfallen team!"
|
||||
done
|
||||
|
||||
LakeOfRageSign:
|
||||
jumptext LakeOfRageSignText
|
||||
|
@ -515,24 +567,11 @@ FishingGurusHouseSignText:
|
|||
line "HOUSE"
|
||||
done
|
||||
|
||||
LakeOfRageCameramanText: ; Reference to the Battle Zone
|
||||
text "Hohoho!"
|
||||
|
||||
para "Am I lucky to"
|
||||
line "have been here"
|
||||
cont "when that MAGIKARP"
|
||||
cont "evolved!"
|
||||
|
||||
para "This film is"
|
||||
line "gonna make me"
|
||||
cont "rich!"
|
||||
done
|
||||
|
||||
LakeOfRagePryceSign:
|
||||
jumptext LakeOfRagePryceSignText
|
||||
|
||||
LakeOfRagePryceSignText:
|
||||
text "PRYCE's House"
|
||||
text "PRYCE'S HOUSE"
|
||||
done
|
||||
|
||||
LakeOfRage_MapEvents:
|
||||
|
|
|
@ -33,8 +33,8 @@ LakeOfRageMartGrampsText:
|
|||
line "me evolve my"
|
||||
cont "RAICHU!"
|
||||
|
||||
para "...what's with"
|
||||
line "that look?"
|
||||
para "Huh? Sure it does!"
|
||||
line "Try it yourself!"
|
||||
done
|
||||
|
||||
LakeOfRageMart_MapEvents:
|
||||
|
|
|
@ -13,7 +13,20 @@ LakeOfRagePokecenter1FNurseScript:
|
|||
jumpstd PokecenterNurseScript
|
||||
|
||||
LakeOfRagePokecenter1FGentlemanScript:
|
||||
jumptextfaceplayer LakeOfRagePokecenter1FGentlemanText
|
||||
faceplayer
|
||||
opentext
|
||||
checkevent EVENT_LAKE_OF_RAGE_RED_GYARADOS
|
||||
iftrue .GyaradosDefeated
|
||||
writetext LakeOfRagePokecenter1FGentlemanText
|
||||
waitbutton
|
||||
closetext
|
||||
end
|
||||
|
||||
.GyaradosDefeated:
|
||||
writetext LakeOfRagePokecenter1FGentlemanText_GyaradosDefeated
|
||||
waitbutton
|
||||
closetext
|
||||
end
|
||||
|
||||
LakeOfRagePokecenter1FScientistScript:
|
||||
jumptextfaceplayer LakeOfRagePokecenter1FScientistText
|
||||
|
@ -56,6 +69,17 @@ LakeOfRagePokecenter1FGentlemanText:
|
|||
|
||||
done
|
||||
|
||||
LakeOfRagePokecenter1FGentlemanText_GyaradosDefeated:
|
||||
text "The LAKE OF RAGE"
|
||||
line "is known for its"
|
||||
cont "shell middens." ; Lake Biwa has a giant shell midden called the Awazu site, which dates back to the Jomon period (~10,000 years ago).
|
||||
|
||||
para "They date back"
|
||||
line "thousands of"
|
||||
cont "years!"
|
||||
|
||||
done
|
||||
|
||||
LakeOfRagePokecenter1FYoungsterText:
|
||||
text "Dad said I have"
|
||||
line "to stay inside."
|
||||
|
|