Skip to content

The Butcher Remembers — playable demo (2D client, .soul export, reputation, cost overlay)#279

Merged
prakashUXtech merged 2 commits into
devfrom
feat/game-demo
Jul 24, 2026
Merged

The Butcher Remembers — playable demo (2D client, .soul export, reputation, cost overlay)#279
prakashUXtech merged 2 commits into
devfrom
feat/game-demo

Conversation

@prakashUXtech

Copy link
Copy Markdown
Contributor

Top of the stack. The 90-second demo as a runnable local app: a browser client over the GameWorld event stream, with the soul-file and reputation moments wired as buttons.

Run it

uv run python examples/butcher_remembers/server.py --scripted
# open http://localhost:8777

Engines: --engine templated (default, deterministic, free) · --engine claude (live LLM lines via claude -p, ~20-40s each) · --engine deepseek (needs DEEPSEEK_API_KEY; falls back to templated with a warning if missing).

What's in here

  • Server + client (367a885): stdlib-only HTTP server bridging the async GameWorld; canvas client with tavern zones, speech bubbles, a per-NPC grudge ledger (color-coded, shows the remembered grievance), and a director-phase chip.
  • The demo moments (f843f4b): free-play input with a keyword kind-classifier; ⬇ Export bjorn.soul (a real zip downloads — the artifact moment) and ⬆ import to rewind him; "ask the innkeeper about me" — Astrid, who has never met Ragnar, reads his player.soul and reacts to his notoriety; a cost overlay (claude meters at $0 here, same traffic re-priced for DeepSeek).

Review notes

  • The scripted arc plays the canonical beats (befriend → betray → theft → return-still-hostile → clean-player control) and is what the demo video would record.
  • Playtest verdicts (fun/feel) are explicitly the captain's — this PR delivers the machinery.

Tests

46/46 in tests/profiles/game/, including: import-reverts-the-grudge round-trip, the reputation gut-punch (clean player warm, notorious player cited), classifier unit cases, and cost-endpoint shape. Smoke-verified live over HTTP.

@github-actions

github-actions Bot commented Jul 2, 2026

Copy link
Copy Markdown

Issues (must fix)

  • PR title does not follow Conventional Commits format (e.g. feat: add recall API, fix(memory): handle empty tiers).
  • No linked issue found. PRs should reference an issue (Fixes #123).
  • No evidence of local testing found. Please include terminal output or screenshots.

Heads up

  • Large PR detected (1888 lines across 6 files). Consider splitting into smaller PRs.

Please update your PR to address these points.

@github-actions

Copy link
Copy Markdown

This PR has been automatically marked as stale because it has not had activity in the last 14 days. It will be closed in 7 days if no further activity occurs. If you're still working on this, please push an update or leave a comment.

@github-actions github-actions Bot added the stale label Jul 16, 2026
@prakashUXtech prakashUXtech added the pinned Exempt from stale bot auto-close label Jul 21, 2026
@prakashUXtech
prakashUXtech changed the base branch from feat/game-brain to dev July 24, 2026 13:52
@prakashUXtech prakashUXtech reopened this Jul 24, 2026
@prakashUXtech
prakashUXtech merged commit 935394a into dev Jul 24, 2026
10 checks passed
@prakashUXtech
prakashUXtech deleted the feat/game-demo branch July 24, 2026 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-work pinned Exempt from stale bot auto-close stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant