Adding Running Shoes (aka Speeding up walking) in Pokémon Red (pokered)
One item I feel that is missing from the Pokémon Generation 1 games are the Running Shoes. When ‘on’ they increase the speed at which you move around the game. You are able to achieve this with the Bicycle, but this is only present later in the game. In this post I will document how I simply added this running ability globally whilst the ‘B button’ is pressed.
.moveAhead2 ld hl, wFlags_0xcd60 res 2, [hl] + ld a, [hJoyHeld] + and B_BUTTON + jr nz, .speedUp ld a, [wWalkBikeSurfState] dec a ; riding a bike? jr nz, .normalPlayerSpriteAdvancement ld a, [wd736] bit 6, a ; jumping a ledge? jr nz, .normalPlayerSpriteAdvancement + .speedUp call DoBikeSpeedup .normalPlayerSpriteAdvancement call AdvancePlayerSprite
With this small modification, if the ‘B button’ is pressed we jump directly to the new
speedUp label which instructs the engine to perform the bike speedup.
This in-turn provides us with the ability to ‘run’ throughout the game, at the same speed as if you were on a bike.