Port field moves from the menu, SEL with Select, and moving Pokémon in Bill's PC
Checks / web (push) Canceled after 0s
Checks / web (push) Canceled after 0s
Field moves chosen in the party menu run their original checks and the ROM's from-menu scripts (Cut, Surf, Strength, Flash, Whirlpool, Waterfall, Sweet Scent), and Softboiled and Milk Drink share HP. SEL registers a key item that Select then uses, replacing the Key Items shortcut, and Bill's PC moves Pokémon between the party and every box. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
45275ba83b
commit
3456aa4e11
25 files changed
+1129
-186
No files matched your search
@@ -34,7 +34,7 @@ flowchart LR
|
||||
| `src/reference`, `src/emulator` | Original-game reference, excluded from the native build |
|
||||
| `reference/public` | Licensed emulator files for the reference build only |
|
||||
|
||||
`GameRuntime` is a lifecycle interface, not an emulator contract. Native state is validated JSON, schema version 3. It holds the map, position, facing, name/avatar, player ID and in-game tile count; event and engine flags and sprite variables; scene values, phone contacts, a queued special call, the rival's name, the game clock's minute offset, the weekday offset and DST flag, whether the introduction is still pending; positions of objects that scripts moved; and the party, bag, Pokédex sets, money and room decoration slots. Older saves without decorations migrate to the original bed and Town Map poster. Decoration imports validate slot categories, ownership and unique doll placement. Early version-3 backups without a money field migrate to the starting balance. It contains no graphics, music, dialogue, GB memory or ROM bytes. Versions 1 and 2 migrate with new-game defaults. Party Pokémon are validated by recomputing their stats from the ROM. The backup envelope retains the historical `coreId` field; native backups use it for their runtime/schema ID.
|
||||
`GameRuntime` is a lifecycle interface, not an emulator contract. Native state is validated JSON, schema version 3. It holds the map, position, facing, name/avatar, player ID and in-game tile count; event and engine flags and sprite variables; scene values, phone contacts, a queued special call, the rival's name, the game clock's minute offset, the weekday offset and DST flag, whether the introduction is still pending; positions of objects that scripts moved; and the party, bag, Pokédex sets, money, registered item and room decoration slots. Older saves without decorations migrate to the original bed and Town Map poster. Decoration imports validate slot categories, ownership and unique doll placement. Early version-3 backups without a money field migrate to the starting balance. It contains no graphics, music, dialogue, GB memory or ROM bytes. Versions 1 and 2 migrate with new-game defaults. Party Pokémon are validated by recomputing their stats from the ROM. The backup envelope retains the historical `coreId` field; native backups use it for their runtime/schema ID.
|
||||
|
||||
Saves made during an unfinished walk or jump retain its source tile and completed step count, so loading cannot skip a landing event or map transition. Directional mats wait for exit input; doors, stairs and caves force an animated downward step after arrival.
|
||||
|
||||
@@ -56,11 +56,13 @@ state in version-3 saves, with defaults for older saves. Forced terrain and
|
||||
turn-in-place timing run through the idle movement path. Dynamic warps and
|
||||
elevators retain their return destination. Block mutations use a per-map working
|
||||
copy and a revision counter, so rollback and the minimap see the same terrain.
|
||||
Surf, Cut and Strength use the ROM scripts. Select opens the Key Items
|
||||
menu, pausing overworld ticks while choosing the Bicycle. Start opens
|
||||
Surf, Cut and Strength use the ROM scripts. Select runs the registered item
|
||||
through the same module as the start menu. Start opens
|
||||
`scripts/start-menu.ts`, a native run on a script draft like the introduction:
|
||||
the party menu and pack change only the draft, which commits when the menu
|
||||
closes, and an item that queues a script (the Bicycle) starts it afterwards.
|
||||
closes, and an item or field move that queues a script (the Bicycle, Cut,
|
||||
Surf …) starts it afterwards with the context the world checked (the
|
||||
Pokémon, the block to cut, the surfing state or a Sweet Scent encounter).
|
||||
The start menu, party menu and pocket cursors live in the world's memory,
|
||||
not in saves, and are cleared after each battle. `scripts/evolution.ts`
|
||||
translates `EvolveAfterBattle`, `LearnLevelMoves` and `LearnMove` over a
|
||||
|
||||
Reference in new issue
Block a user