Files
leggenda-del-regolo/CLAUDE.md
T

33 lines
3.3 KiB
Markdown

# La Leggenda del Regolo — note per Claude
Avventura grafica punta-e-clicca nello spirito delle avventure LucasArts, ambientata a San Piero a Sieve (Mugello)
nel 2007, durante il Palio della Fortezza. Protagonista: Andrea (l'utente), che nel 2007 ha 27 anni (è nato nel 1980). Tono comico con nostalgia.
**Il gioco è dedicato al Lele**, l'amico di Andrea che gli fece conoscere Monkey Island e che è scomparso troppo
presto. Trattare questo tema con delicatezza; come e quanto farlo comparire nel gioco lo decide Andrea.
Il documento di progetto è `docs/PROGETTO.md`: leggerlo prima di tutto, insieme a `docs/STATO.md` (dove siamo arrivati, cosa manca). Le parti segnate **[DA ANDREA]** aspettano
i suoi ricordi: non inventare persone, luoghi o fatti del paese al posto suoi; proporre, poi chiedere.
## Preferenze di lavoro (dalla collaborazione su Manzolo Rush)
- Rispondere in italiano. La shell è zsh.
- Il progetto gemello è `../ManzoloGame/` (Manzolo Rush): riusarne strumenti e metodi invece di reinventarli
(`tools/slice_sprites.py`, `scripts/build-site.sh`, `scripts/bump.sh`, `scripts/check-public.sh`, action di Pages).
- Nessun build step: ES modules statici, server locale con `python3 -m http.server`.
- Ogni funzionalità con il suo test; un test automatico percorre tutta la soluzione dell'avventura.
- Le prove nel browser sono a sezioni (`scripts/verify.mjs`, dal 2026-11-01): `make verify` rifà solo quelle i cui ingressi
sono cambiati dall'ultimo verde (la briscola se cambia la briscola, la partita intera se cambiano storia, motore, stile
o risorse). Un `chromium.launch` nuovo nelle prove usa `args: ARGS` di `tests/chromium.mjs`. Una prova nuova in `tests/*.browser.mjs` va aggiunta a `SUITES` (il test `verify.test.mjs` lo pretende).
- Verifica visiva nel browser con Playwright prima di dichiarare finito qualcosa di grafico. Chromium disegna sulla scheda
video del PC se c'è, altrimenti con swiftshader (`tests/chromium.mjs`, dal 2026-11-01: giro intero ~4 min invece di ~16).
- Pubblicare (tag/bump/push) solo quando Andrea lo chiede.
- Persone vere nel gioco solo con consenso; niente nomi, personaggi o musiche di giochi esistenti.
- Prompt delle immagini in `prompts/` e fogli grezzi in `assets/raw/`: esclusi da git.
- Sfondi nuovi: li genera **Codex** con il suo strumento immagini integrato, gratis e senza chiave API
(`codex exec`, ricetta in `docs/GENERAZIONE_SFONDI.md`, «Generare con Codex»). Si lancia da qui, senza chiedere la chiave ad Andrea.
- **Pubblicare (dal 2026-11-01)**: origin è https://git.manzolo.it/manzolo/leggenda-del-regolo, pubblico: prima `make check-public`, poi `git push origin main --tags`, solo se Andrea lo chiede.
`make deploy` costruisce l'immagine dal tag della versione, la spinge su `git.manzolo.it/manzolo/leggenda-regolo:vX.Y.Z` (e `:latest`); sul VPS il compose fissa quel tag e fa `docker compose pull && up -d`.
Per tornare indietro: sul VPS (`Workspaces/docker/leggenda-regolo/docker-compose.yml`) si rimette il tag precedente e si rifà pull e up.
Hook pre-push (`make hooks`, una volta per clone) lancia check-public; le Gitea Actions (`.gitea/workflows/test.yml`: test unitari a ogni push; sui tag, o a mano, anche le venti prove nel browser, una per job, poi la release) girano sul runner del PC, che si crea o riavvia con `make runner`.