Skip to content

FRLG AutoStory: type the player's name in the new game - #177

Closed
dayfine wants to merge 38 commits into
frlg/autostory-mvpfrom
frlg/autostory-player-name
Closed

dayfine wants to merge 38 commits into
frlg/autostory-mvpfrom
frlg/autostory-player-name

Conversation

@dayfine

@dayfine dayfine commented Nov 2, 2026 •

Copy link
Copy Markdown
Owner

Depends on #120 and #81. Base frlg/autostory-mvp (#120), with frlg/naming-screen (#81) merged in; the diff shows #81's files plus this change.

AutoStory's 00.01 now names the player instead of confirming an empty name.

  • New Player name option, default "Kosmos". Empty keeps today's default-name behaviour.
  • The intro types it on the first keyboard with FRLG: type names on the in-game naming screen #81's type_name(); the rival's keyboard still confirms an empty name, so the rival keeps the default name.
  • A name the keyboard can't type is a setup error before the run starts.

Testing: the full app builds locally (macOS, at #179's tip). I didn't run unit tests locally because test mode can flip the lab app's panel. Ubuntu CI is dispatched: https://github.com/dayfine/Arduino-Source/actions/runs/41528875876

Console checks: nobody has seen #81's naming timings on a Switch yet (the first presses right after the keyboard fades in, and the 2 s wait before the "So your name is…?" text).

🤖 Generated with Claude Code

https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E

dayfine and others added 7 commits October 29, 2026 23:45
Adds the naming screen keyboard from pret/pokefirered's naming_screen.c
(three pages, the button column, wrap-around and page-change cursor
rules), a planner that turns a name into the fewest presses, a
type_name() routine that presses them, and a detector for the screen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
plan_naming_keys() plans the presses that type a name and stops before
START A; plan_naming_input() is now that plan plus START A.
type_name_without_confirming() types the name and leaves the naming screen
open, which is where SID Helper starts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
…tostory-player-name

# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/PokemonFRLG_Tests.cpp
A PLAYER_NAME option (default "Kosmos") is typed on the player's keyboard
in 00.01 with the naming screen's type_name(). Empty keeps the default
name, as before. The rival's keyboard still confirms an empty name.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
dayfine and others added 4 commits November 2, 2026 14:05
# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/Programs/AutoStory/PokemonFRLG_AutoStoryEvents.h
# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/Programs/AutoStory/PokemonFRLG_AutoStoryActions.cpp
#	SerialPrograms/Source/VideoGames/PokemonFRLG/Programs/AutoStory/PokemonFRLG_AutoStoryActions.h
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
dayfine added a commit that referenced this pull request Nov 2, 2026
… CI per tip

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
dayfine and others added 17 commits November 2, 2026 15:53
Windows Clang fails on -Wmissing-field-initializers where
AutoStory::program() builds StoryEnv without player_name, which it sets
right after. Behavior is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/PokemonFRLG_Tests.cpp
…-player-name

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/PokemonFRLG_Tests.cpp
dayfine and others added 10 commits November 3, 2026 02:44
… in a dark cave) into frlg/autostory-player-name
…mpts out of step) into frlg/autostory-player-name
…utostory-player-name

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
…e) into frlg/autostory-player-name

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E

# Conflicts:
#	SerialPrograms/Source/VideoGames/PokemonFRLG/Programs/AutoStory/PokemonFRLG_AutoStory.cpp
… within code health's 50 lines

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AKYzhrMnPK61XHWEch4a6E
@dayfine

dayfine commented Nov 3, 2026

Copy link
Copy Markdown
Owner Author

Superseded by #214 (FRLG stack consolidated into stage PRs; will be resplit for upstream).

@dayfine dayfine closed this Nov 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant