- 37
- Posts
- 7
- Years
- Curitiba, Brazil
- Seen Oct 12, 2025
Hello folks, I hope you're fine!
I have a question about Binary Hacking, on Pokémon FireRed.
Is it possible to restore the Generation 1 behavior for sleep? If so, how could I do it (eg: BSP/scripting? Hex edit?)?
More specifically, what I want to achieve is: in Generation 1 core games, a Pokémon does not attack after waking up. It will only attack on the next turn.
Other significant changes:
- In RBY, Sleep could last from 1 to 7 turns (later gens: 1 to 6 turns on Generation 2, 1 to 4 turns on Generation 3)
- The move Rest made the user sleep for 2 turns instead of 3 (including the turn when the user used Rest). In both cases, the user will attack on the 4th turn after Rest (but the wake up turn is 3 for RBY and 4 for later gens).
I don't think it would be possible with scripting, as BSP only works with the effect of a move, not with the cancellers themselves.
I also searched this forum (and other sources on Google), but I never found any information concerning this.
Do you guys have any ideas on how to solve this without resorting to decomps (as it would be hard to make everything from scratch, although using decomps to find offsets to change might be useful)?
I have a question about Binary Hacking, on Pokémon FireRed.
Is it possible to restore the Generation 1 behavior for sleep? If so, how could I do it (eg: BSP/scripting? Hex edit?)?
More specifically, what I want to achieve is: in Generation 1 core games, a Pokémon does not attack after waking up. It will only attack on the next turn.
Other significant changes:
- In RBY, Sleep could last from 1 to 7 turns (later gens: 1 to 6 turns on Generation 2, 1 to 4 turns on Generation 3)
- The move Rest made the user sleep for 2 turns instead of 3 (including the turn when the user used Rest). In both cases, the user will attack on the 4th turn after Rest (but the wake up turn is 3 for RBY and 4 for later gens).
I don't think it would be possible with scripting, as BSP only works with the effect of a move, not with the cancellers themselves.
I also searched this forum (and other sources on Google), but I never found any information concerning this.
Do you guys have any ideas on how to solve this without resorting to decomps (as it would be hard to make everything from scratch, although using decomps to find offsets to change might be useful)?
Last edited: