Skip to content

feat(pocket3d): a Demo row on the title that plays a fixed script of presses, for filming a console - #595

Open
doodlewind wants to merge 1 commit into
mainfrom
feat/pocket3d-demo
Open

doodlewind wants to merge 1 commit into
mainfrom
feat/pocket3d-demo

Conversation

@doodlewind

Copy link
Copy Markdown
Collaborator

What

  • engine/pocket3d/crates/pocket3d-demo (no_std, no dependencies): reads a demo script and plays it a frame at a time in place of the pad.
    • Steps: wait, press <buttons> [xN] [gap], hold, until <mark> [limit], call <words>.
    • Demo::tick(pad, mark) returns the buttons for the frame, a step for the game to carry out (Call), or the end (Finished, Stopped, Lost { line, mark }).
    • The first button the real pad presses ends it. A button that was already down when the demo began (the ○ that chose the row) only counts after it is let go.
  • skills/pocket3d-interface: every Pocket3D title ends with a Demo row. The flow owns the demo: input(pad) returns the buttons the frame plays with, and every host passes that to both the simulation and the guest. Also added a checklist item and two common mistakes.
  • engine/pocket3d/README.md: a row for the new crate. handheld-kernels.yml: a demo job running cargo test.

Checks

  • cargo test --manifest-path engine/pocket3d/crates/pocket3d-demo/Cargo.toml: 6 passed. cargo clippy: no warnings.
  • First game to use it: Athena Crisis Pocket (private repo, branch feat/demo).
    • The desktop flow test plays its 3-scene script with the real AI and a stand-in for the guest's lists. It ends Finished, and two runs send the same state lines.
    • On a real PSP over PSPLINK, choosing Demo from the title played all three scenes and came back to the title as finished after about 60 s.

🤖 Generated with Claude Code

…presses, for filming a console

pocket3d-demo reads a script (wait, press, hold, until <mark>, call <words>)
and plays it a frame at a time in place of the pad; the first real press ends
it. The interface skill makes the Demo row part of every Pocket3D title.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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