Rescue Team:Dungeon RNG Manipulation: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
'''Quicksave RNG Manipulation''' is an {{RescueTeam|Development Oversights|unintended mechanic}} in {{GameTitle|RescueTeam|l|i|}}. Even though {{RescueTeam|Dungeon}}s are supposed to be random, by {{RescueTeam|Quicksaving}} it is possible to know in advance what the floor layouts, {{RescueTeam|Pokémon}} spawns, {{RescueTeam|Trap}} and {{RescueTeam|Special Tile}} spawns, and {{RescueTeam|Item}} spawns are in advance, as well as how other Pokémon in the dungeons will behave depending on the player's inputs. | '''Quicksave RNG Manipulation''' is an {{RescueTeam|Development Oversights|unintended mechanic}} in {{GameTitle|RescueTeam|l|i|}}. Even though {{RescueTeam|Dungeon}}s are supposed to be random, by {{RescueTeam|Quicksaving}} it is possible to know in advance what the floor layouts, {{RescueTeam|Pokémon}} spawns, {{RescueTeam|Trap}} and {{RescueTeam|Special Tile}} spawns, and {{RescueTeam|Item}} spawns are in advance, as well as how other Pokémon in the dungeons will behave depending on the player's inputs. Inputs don't affect layouts and dungeon spawns, they affect the behavior of other Pokémon. | ||
==Useful Applications== | ==Useful Applications== | ||
Line 9: | Line 9: | ||
==Technical Details== | ==Technical Details== | ||
After a quicksave, a 4 bytes value in the RAM<ref group="ram">0x203B458 in Red Rescue Team (North America)</ref> is set to 1. This value is used to decide what the next floor will look like and what it will contain, and is updated when going to the next floor. The way it is updated when going to the next floor isn't random and is always calculated in the same way, as long as the player stays in the dungeon.<ref>https://github.com/pret/pmd-red/blob/master/src/dungeon_random.c</ref> The value is reset to 1 after a quicksave, even if the player already quicksaved on an earlier floor of the same dungeon, and the calculation restarts from 1 every time, so the way the dungeon looks depends on which floor the quicksave was made. | |||
===Addresses=== | |||
<references group="ram" /> | |||
==Version Differences== | ==Version Differences== | ||
Line 40: | Line 44: | ||
* <ref>https://www.youtube.com/watch?v=CdOhiOw7YcM</ref> | * <ref>https://www.youtube.com/watch?v=CdOhiOw7YcM</ref> | ||
* <ref>https://www.youtube.com/watch?v=WUt4nJmM3Pg</ref> | * <ref>https://www.youtube.com/watch?v=WUt4nJmM3Pg</ref> | ||
--> | |||
<references/> | <references/> | ||
[[Category:Rescue Team Development Oversights]] | [[Category:Rescue Team Development Oversights]] | ||
[[Category:Rescue Team Technical Documentation]] | [[Category:Rescue Team Technical Documentation]] |
Revision as of 14:41, 11 October 2024
Quicksave RNG Manipulation is an unintended mechanic in Template:GameTitle. Even though Dungeons are supposed to be random, by Quicksaving it is possible to know in advance what the floor layouts, Pokémon spawns, Trap and Special Tile spawns, and Item spawns are in advance, as well as how other Pokémon in the dungeons will behave depending on the player's inputs. Inputs don't affect layouts and dungeon spawns, they affect the behavior of other Pokémon.
Useful Applications
Quicksave RNG Manipulation can be used to:
- make the dungeons always look the same when playing them
- complete difficult dungeons by simply following instructions
- guarantee recruits
- collect rare items, multiple times
Technical Details
After a quicksave, a 4 bytes value in the RAM[ram 1] is set to 1. This value is used to decide what the next floor will look like and what it will contain, and is updated when going to the next floor. The way it is updated when going to the next floor isn't random and is always calculated in the same way, as long as the player stays in the dungeon.[1] The value is reset to 1 after a quicksave, even if the player already quicksaved on an earlier floor of the same dungeon, and the calculation restarts from 1 every time, so the way the dungeon looks depends on which floor the quicksave was made.
Addresses
- ↑ 0x203B458 in Red Rescue Team (North America)