Retro Hackers LogoGuestLog in

Summer Tree
News
Database
Users
Projects
Game Ports
Videos
Music
Material
Feedback

Pokémon Silver - All Glitches Fixed

Original game : Pokémon: Silver Version

Platform : GB

Author : splch

Release date : 18 May 2022

Category : Bug Fix

Patch version : 1.0

Modifications : G, S, L, T, P

Downloads : 534

ROM Information

Database match: Pokemon - Silver Version (USA, Europe) (SGB Enhanced) (GB Compatible)
Database: No-Intro: Game Boy/Color (v. 20210227-015730)
File/ROM SHA-1: 49B163F7E57702BC939D642A18F591DE55D92DAE
File/ROM CRC32: 8AD48636

Hack description

This ROM hack removes every reported glitch from Pokemon [Gold / Silver](https://github.com/pret/pokegold/blob/master/docs/bugs_and_glitches.md) and [Crystal](https://github.com/pret/pokecrystal/blob/master/docs/bugs_and_glitches.md).

Specifically, this hack fixes:

- Using the Coin Case can cause arbitrary code execution
- Entering the Hall of Fame without a save file can corrupt the PC boxes
- The Lucky Number Show does not find winning ID numbers in inactive boxes 10-14
- Present's text overflows when it fails to heal an enemy Pokémon with a long name
- You can fish in the water in Cerulean Gym
- "Route 15″ is not capitalized in a signpost

Multi-player battle engine

- Perish Song and Spikes can leave a Pokémon with 0 HP and not faint
- Thick Club and Light Ball can make (Special) Attack wrap around above 1024
- Metal Powder can increase damage taken with boosted (Special) Defense
- Reflect and Light Screen can make (Special) Defense wrap around above 1024
- Moves with a 100% secondary effect chance will not trigger it in 1/256 uses
- Belly Drum sharply boosts Attack even with under 50% HP
- Berserk Gene's confusion lasts for 256 turns or the previous Pokémon's confusion count
- Confusion damage is affected by type-boosting items and Explosion/Self-Destruct doubling
- Moves that lower Defense can do so after breaking a Substitute
- Counter and Mirror Coat still work if the opponent uses an item
- A Disabled but PP Up–enhanced move may not trigger Struggle
- A Pokémon that fainted from Pursuit will have its old status condition when revived
- Lock-On and Mind Reader don't always bypass Fly and Dig
- Beat Up can desynchronize link battles
- Beat Up works incorrectly with only one Pokémon in the party
- Beat Up may fail to raise Substitute
- Beat Up may trigger King's Rock even if it failed
- Present damage is incorrect in link battles
- Return and Frustration deal no damage when the user's happiness is low or high, respectively
- Dragon Scale, not Dragon Fang, boosts Dragon-type moves
- Switching out or switching against a Pokémon with max HP below 4 freezes the game
- Moves that do damage and increase your stats do not increase stats after a KO
- HP bar animation is slow for high HP
- HP bar animation off-by-one error for low HP

Single-player battle engine

- A Transformed Pokémon can use Sketch and learn otherwise unobtainable moves
- Catching a Transformed Pokémon always catches a Ditto
- Experience underflow for level 1 Pokémon with Medium-Slow growth rate
- The Dude's catching tutorial may crash if his Poké Ball can't be used
- BRN/PSN/PAR do not affect catch rate
- Moon Ball does not boost catch rate
- Love Ball boosts catch rate for the wrong gender
- Fast Ball only boosts catch rate for three Pokémon
- Heavy Ball uses wrong weight value for three Pokémon
- Glacier Badge may not boost Special Defense depending on the value of Special Attack
- "Smart" AI encourages Mean Look if its own Pokémon is badly poisoned
- "Smart" AI discourages Conversion2 after the first turn
- "Smart" AI does not encourage Solar Beam, Flame Wheel, or Moonlight during Sunny Day
- AI does not discourage Future Sight when it's already been used
- AI makes a false assumption about 'CheckTypeMatchup'
- AI use of Full Heal or Full Restore does not cure Nightmare status
- AI use of Full Heal does not cure confusion status
- Wild Pokémon can always Teleport regardless of level difference
- 'RIVAL2' has lower DVs than 'RIVAL1'
- 'HELD_CATCH_CHANCE' has no effect - Credits sequence changes move selection menu behavior

Game engine

- 'LoadMetatiles' wraps around past 128 blocks
- Surfing directly across a map connection does not load the new map
- Swimming NPCs aren't limited by their movement radius
- Pokémon deposited in the Day-Care might lose experience

Graphics

- In-battle "'...'" ellipsis is too high
- Two tiles in the 'port' tileset are drawn incorrectly
- The Ruins of Alph research center's roof color at night looks wrong
- A hatching Unown egg would not show the right letter
- Using a Park Ball in non-Contest battles has a corrupt animation
- Battle transitions fail to account for the enemy's level
- Some trainer NPCs have inconsistent overworld sprites

Audio

- Slot machine payout sound effects cut each other off
- Team Rocket battle music is not used for Executives or Scientists
- No bump noise if standing on tile '$3E'
- Playing Entei's Pokédex cry can distort Raikou's and Suicune's

Text

- Five-digit experience gain is printed incorrectly
- Only the first three evolution entries can have Stone compatibility reported correctly
- 'EVOLVE_STAT' can break Stone compatibility reporting
- A "HOF Master!" title for 200-Time Famers is defined but inaccessible

Scripted events

- Daisy's grooming doesn't always increase happiness
- Magikarp in Lake of Rage are shorter, not longer
- Magikarp length limits have a unit conversion error
- Magikarp lengths can be miscalculated
- 'CheckOwnMon' only checks the first five letters of OT names
- 'CheckOwnMonAnywhere' does not check the Day-Care
- The unused 'phonecall' script command may crash

Internal engine routines

- 'ScriptCall' can overflow 'wScriptStack' and crash
- 'LoadSpriteGFX' does not limit the capacity of 'UsedSprites'
- 'ChooseWildEncounter' doesn't really validate the wild Pokémon species
- 'TryObjectEvent' arbitrary code execution
- 'ReadObjectEvents' overflows into 'wObjectMasks'
- 'BattleAnimCmd_ClearObjs' only clears the first 6⅔ objects

Screenshots

Contributions

ContributorType of contributionDescription
pretOriginal WorkDisassembling Pokemon Gold / Silver / Crystal and documenting bugs
splchHackingBuilding ASM

Reviews

No reviews yet...