Round 15: README.md Steam page placeholder (Miri + Mellanie) - Created README.md with game description for Steam page - Placeholder structure with lorem ipsum for undetermined content Round 16: Faction development (Miri, Paula, Gestalt) - Full development of six factions with lore, politics, mechanics - 3D reputation system (Trust × Usefulness × Exposure) - Mechanical grounding with "First 30 Minutes" test - v0.1 recommendation: Commission + Severance - Session flagged for team input Process changes (D-022): - Retired DISCUSSION.md, work directly in round files - Qatux mandatory in all team interactions - Updated CLAUDE.md and agent personas Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
68 lines
2.7 KiB
Markdown
68 lines
2.7 KiB
Markdown
# The Settled Reach
|
|
|
|
A top-down immersive sim — occlusion-based detective game with combat elements, set in an original science fiction universe. Single-character perspective, asymmetric information as core mechanic, Rimworld-style storyteller. Godot 4 client + Rust/bevy_ecs simulation server via subprocess/IPC (D-020).
|
|
|
|
**Official Title:** The Settled Reach (D-021)
|
|
**Repository name:** commonwealth (historical code name, retained for path stability)
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
DECISIONS.md # Confirmed decisions (D-001+), open questions (Q-001+)
|
|
TEAM.md # Team roster and roles
|
|
docs/
|
|
discussions/ # Discussion rounds (all rounds archived here per D-022)
|
|
briefings/ # Per-agent context briefings (maintained by Qatux)
|
|
architecture/ # Technical architecture documents
|
|
design/ # Game design documents
|
|
db/
|
|
commonwealth.db # SQLite ticketing database
|
|
schema.sql # Database schema
|
|
connectors/ # Connector scripts for SQLite and Qdrant
|
|
config.json # Endpoint configuration
|
|
sqlite_connector.py # SQLite mini MCP
|
|
qdrant_connector.py # Qdrant + ollama mini MCP
|
|
.claude/
|
|
agents/ # Agent personality files
|
|
skills/ # Skill definitions
|
|
```
|
|
|
|
## Agent Instructions
|
|
|
|
### Before starting work
|
|
1. Read your briefing at `docs/briefings/{your-name}.md` for current project context
|
|
2. Read `DECISIONS.md` for confirmed decisions relevant to your work
|
|
3. Check `docs/discussions/` for recent discussion rounds if needed
|
|
|
|
### SQLite access
|
|
**Never use the `sqlite3` CLI** - it crashes in Claude Code due to a known std::bad_alloc bug.
|
|
|
|
Use the whitelistable wrapper scripts:
|
|
```bash
|
|
db/connectors/sqlite-query "SELECT * FROM tickets WHERE status='in_progress'"
|
|
db/connectors/sqlite-exec "UPDATE tickets SET status='done' WHERE id=1"
|
|
```
|
|
|
|
### Qdrant / document search
|
|
```bash
|
|
db/connectors/qdrant-search "asymmetric information design"
|
|
db/connectors/qdrant-index docs/briefings/tyre.md
|
|
db/connectors/qdrant-health
|
|
db/connectors/qdrant-count
|
|
```
|
|
|
|
### File conventions
|
|
- Decision IDs: `D-NNN` (confirmed), `Q-NNN` (open questions), `R-NNN` (rejected)
|
|
- Discussion rounds: numbered sequentially, archived to `docs/discussions/` when complete
|
|
- Briefings: one per agent, updated after decision-producing rounds
|
|
- Tickets: managed via `/ticket` skill or `sqlite_connector.py` directly
|
|
|
|
### Commit conventions
|
|
Use conventional commits with project-specific scopes:
|
|
`agents`, `skills`, `docs`, `briefings`, `discussions`, `schema`, `db`, `config`, `engine`, `simulation`, `client`, `ui`, `audio`, `assets`, `meta`
|
|
|
|
### Local services
|
|
- Qdrant: `http://tower-of-joy:6333/`
|
|
- Ollama: `http://tower-of-joy:11434/` (nomic-embed-text)
|
|
- Collection: `commonwealth` (768 dimensions, cosine distance)
|