diff options
| author | Ash Ketchum <no-reply@sl0p.foo> | 2026-07-15 12:40:29 +0200 |
|---|---|---|
| committer | Ash Ketchum <no-reply@sl0p.foo> | 2026-07-15 12:40:29 +0200 |
| commit | 1da3b452b19fd753f12136abc6a73fe6561e2687 (patch) | |
| tree | 233738fe82571f2e811a11f6e8b1937ac8bc6f83 /SL0P.md | |
| parent | explore: hide player (camera) + fix menu close (diff) | |
| download | pokeyellow-1da3b452b19fd753f12136abc6a73fe6561e2687.tar.gz pokeyellow-1da3b452b19fd753f12136abc6a73fe6561e2687.tar.xz pokeyellow-1da3b452b19fd753f12136abc6a73fe6561e2687.zip | |
explore: don't hide the player (fixes glitchy orphaned Pikachu)
Hiding the player left the Yellow Pikachu follower visible and chasing an
invisible player -- that's the 'glitchy sprite', and with no visible player the
movement looked like it wasn't responding. Reverted the UpdatePlayerSprite hide
hook. EXPLORE is now a plain visible noclip ghost-walk: you (and Pikachu) glide
through walls and across map seams, and control is obvious. Verified tap-by-tap
movement in every direction, through Pallet's fence.
Diffstat (limited to 'SL0P.md')
| -rw-r--r-- | SL0P.md | 12 |
1 files changed, 6 insertions, 6 deletions
@@ -37,7 +37,7 @@ A table-driven cheat menu. Cursor + A to pick, B to back out / close. | **ITEMS** | submenu: give ×99 of balls, Rare Candy, Full Restore, Max Revive, Max Elixer, PP Up, and all five evolution stones | | **NOWILD** | toggle wild encounters off (shows `ON`) | | **REPEL** | refill repel steps | -| **EXPLORE** | toggle noclip free-roam camera: hides the player + disables collision, so you glide through walls/NPCs/ledges and cross map connection seams seamlessly across the whole overworld. Pick it again to turn off. | +| **EXPLORE** | toggle noclip free-roam: disables collision so you (and Pikachu) walk through walls/NPCs/ledges and cross map connection seams seamlessly across the whole overworld. Pick it again to turn off. | Everything is in `engine/slop_menu.asm`. Adding a new entry = add a name to `SlopMenuText`, a `dw Handler` to `SlopMenuHandlers`, and bump `SLOP_MENU_COUNT`. @@ -49,11 +49,11 @@ repurposed unused `wUnusedObtainedBadges` at D356). **EXPLORE / noclip** hooks the home `CollisionCheckOnLand` (5-byte early-out when `wSlopNoclip` is set; ROM0 room was reclaimed by deleting the unreferenced -`Func_0db5` dead farcall in `LoadMapHeader`) and `UpdatePlayerSprite` in -`engine/overworld/movement.asm` (jump to its `.disableSprite` path to hide the -player). The engine's own player-walk + connection-crossing code then carries you -seamlessly across the world -- see `tools/render_overworld.py` for the ground- -truth map that proved connections join maps along shared edges with an offset. +`Func_0db5` dead farcall in `LoadMapHeader`). The engine's own player-walk + +connection-crossing code then carries you seamlessly across the world -- see +`tools/render_overworld.py` for the ground-truth map that proved connections join +maps along shared edges with an offset. (The player is left visible on purpose: +hiding it orphaned the Pikachu follower into a lone wandering sprite.) ## Build |
