Skip to content

Project editor example: asynchronous engine, Forum viewer and three games - #2

Draft
concordia-claw wants to merge 2 commits into
feat/android-project-editor-demo-001from
feat/project-editor-engines-and-games
Draft

concordia-claw wants to merge 2 commits into
feat/android-project-editor-demo-001from
feat/project-editor-engines-and-games

Conversation

@concordia-claw

@concordia-claw concordia-claw commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Summary

This builds on the editor teaching example (google-deepmind#389, whose branch is this PR's base). It holds the tutorial work's changes outside the core library. The core changes are in google-deepmind#396.

  • --engine asynchronous. The launcher gives every instance one shared ReactiveMeasurements, as examples/social_media does. The object is host-owned and never written to a project.

  • Forum viewer. Forum in the central viewer renders the running game master's standard ForumState (to_html). Without a forum, it explains how to get one.

  • --title. Sets the editor heading.

  • Three bundled games in projects/, one per engine:

    • royal-cake.json: situated game master, sequential engine.
    • royal-pond.json: a commons dilemma on the contrib simultaneous game master, in 15-minute rounds.
    • crumbleton-forum.json: the asynchronous social media game master.

    A new test checks that each one loads and builds without model calls.

  • Mock label. The no-model label now reads "NoLanguageModel · no model API calls" instead of "Free mock". Concordia itself is always free; the label should say what NoLanguageModel avoids.

  • README. Covers the engine choice: sequential is for turn-based games with one entity per step, simultaneous lets every player act in the same step, and asynchronous lets each player act at its own pace. It also covers the generic simulation prefab and the three games.

Dependency

royal-pond.json sets start_time, use_variable_increments and call_to_action on GameMasterSimultaneous, so it needs google-deepmind#396.

Test plan

  • pytest examples/project_editor on upstream main plus Add params/get inspection and runtime-editable game master state google-deepmind/concordia#396: 79 passed.
  • The same tests on this branch's core: 78 passed, plus the one expected failure described above.
  • pyrefly check examples/project_editor/*.py (1.2.0) and pylint --errors-only examples/project_editor are clean on both cores.
  • Live runs of all three projects with DeepSeek V4.1 Flash on Together AI cost about $0.28 together.

🤖 Generated with Claude Code

concordia-claw and others added 2 commits October 6, 2026 11:37
- `--engine asynchronous` joins sequential and simultaneous. The launcher
  gives every instance one shared ReactiveMeasurements, as
  examples/social_media does; it is host-owned and never saved.
- A **Forum** central viewer renders the running game master's standard
  ForumState, so forum posts can be read in the editor.
- `--title` sets the editor heading.
- projects/ holds the three games from the tutorial: royal-cake.json
  (situated game master, sequential engine), royal-pond.json (a commons
  dilemma with the contrib simultaneous game master) and
  crumbleton-forum.json (the asynchronous social media game master). A
  test checks that each one loads and builds without model calls.
- README: engine choice, the generic simulation prefab and the games.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Copy instance params before adding the shared ReactiveMeasurements,
  as examples/social_media does, and only look for a ForumState on game
  masters that have components; pyrefly 1.2.0 flagged both.
- The no-model label now says "no model API calls" instead of "Free
  mock": Concordia itself is always free, and the label should say what
  NoLanguageModel avoids.
- README: sequential is for turn-based games (one entity per step);
  simultaneous and asynchronous are described alongside it.

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