A new game now runs NewGame's InitGender and OakSpeech natively before the bedroom: Boy or Girl, InitClock's hour and minute steppers with their YES/NO confirmations, Oak's speech with Wooper, and NamePlayer's preset names or naming field (a blank name takes CHRIS or KRIS). Texts, menus and time strings come from a new INTRO profile table verified by check:reference; Oak's and the player's pictures decode from TrainerPicPointers, ChrisPic/KrisPic and TrainerPalettes. The chosen time is kept as a minute offset from the device clock, which time of day, the weekday, NPC hours and the daily reset now read. The intro runs only when nothing is saved; a save made during it starts it again. Saves gain intro and clock.minuteOffset, migrated by absence. The shell's name and character fields are gone. Intentional change: the steppers start at the device time rather than 10:00. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
5a0fe1e313
commit
b13fd20be4
28 files changed
+975
-101
No files matched your search
+37
-1
@@ -1,6 +1,6 @@
|
||||
# Recovered Claude session
|
||||
|
||||
Latest continuation: see **The PC and boxes: 2026-09-25** at the end of
|
||||
Latest continuation: see **The introduction's naming and clock: 2026-09-25** at the end of
|
||||
this file. Earlier sections are historical snapshots.
|
||||
|
||||
Recovered on 2026-09-23 from the local Claude Code transcript
|
||||
@@ -475,3 +475,39 @@ Not committed.
|
||||
Next (PLAN section 2): the introduction's naming and clock screens; player
|
||||
switching and non-ball items in battle; MOVE PKMN W/O MAIL and the stats
|
||||
screen with the party menu; a continuous opening playthrough.
|
||||
|
||||
## The introduction's naming and clock: 2026-09-25
|
||||
|
||||
The PC increment above was committed as `3bdca00`. This increment finishes
|
||||
the next open item of PLAN section 2.
|
||||
|
||||
- `scripts/intro.ts` (`IntroRun`): `InitGender`, `OakSpeech` with
|
||||
`InitClock` and `NamePlayer`, as a native generator the world runs like a
|
||||
script (`GameWorld.beginIntro`). Texts, menus, preset names and time
|
||||
strings come from the ROM through a new `INTRO` profile table verified by
|
||||
`check:reference`.
|
||||
- New effects: `portrait` (Oak's trainer picture or the player's, decoded
|
||||
by `PokemonData.trainerPic`, `playerPic` and `trainerPalette`) and a
|
||||
`clock` stepper choice.
|
||||
- Game clock: `clock.minuteOffset` is added to the device time for time of
|
||||
day, weekday, NPC hours and the daily reset. The host's `deviceWeekday`
|
||||
became `clockDay`.
|
||||
- `GameSession.load` calls the runtime's optional `newGame()` when nothing
|
||||
is saved. Saves gained `intro` (true while pending; a save made then
|
||||
restarts the introduction). The shell's name/character fields are gone.
|
||||
- Browser fixture specs strip `this.world?.beginIntro();` from the served
|
||||
runtime, since their worlds stand in for saved sessions. Fresh-load tests
|
||||
play the intro with `tests/intro-driver.ts`.
|
||||
|
||||
Not presented: palette fades, Wooper's cry, the picture slide while
|
||||
naming, `ShrinkPlayer` and music. Intentional change: the steppers start at
|
||||
the device time instead of 10:00.
|
||||
|
||||
Checks: 298 unit tests with the local ROM; native and reference builds;
|
||||
reference, vendor and release checks; `git diff --check`; 87
|
||||
Chromium/WebKit browser tests passed, 19 skipped intentionally (including
|
||||
the new intro flow and a reload during it, in both browsers). Not committed.
|
||||
|
||||
Next (PLAN section 2): player switching and non-ball items in battle; MOVE
|
||||
PKMN W/O MAIL and the stats screen with the party menu; a continuous opening
|
||||
playthrough.
|
||||
Reference in new issue
Block a user