manzoloandClaude Opus 5.5 b9d2f1161c Mappa a gradini con le miniature; Campomigliaio dalle foto dell'Arcu; Marco Arcuri nei crediti
- la mappa: una scheda per posto con la miniatura del suo sfondo e il nome, in quattro fasce come il paese
  a gradini, le strade disegnate fra le schede; sta in una schermata sul desktop
- tools/miniature.py (make miniature): le miniature 128x72 a 64 colori in assets/scenes/mini/
- tre sfondi di Campomigliaio generati da Codex dalle foto di Marco Arcuri (ponte, Circolo SMS, strada),
  pronti a 640x360 ma non ancora collegati
- Marco Arcuri «l'Arcu» nei crediti, fra le fotografie

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ApqNBvNbNCwXqR2RLo8QJh
2026-10-24 14:15:02 +02:00

La Leggenda del Regolo

Avventura grafica punta-e-clicca ambientata a San Piero a Sieve, nella settimana del Palio della Fortezza del 2007. Il palio, il quadro dipinto dai ragazzi delle medie, è sparito: un ragazzo del paese deve ritrovarlo prima della festa.

Al Lele, che mi ha fatto conoscere Monkey Island.

Progetto in fase di ideazione: il documento di progetto è in docs/PROGETTO.md. Per ora c'è un prototipo del motore con due scene di prova e grafica provvisoria.

Generare sfondi dalle fotografie

Il generatore Python è tools/genera.py; istruzioni e prompt delle due nuove vedute sono descritti in docs/GENERAZIONE_SFONDI.md. Lavora sulle foto di San Piero a Sieve, conserva i master a 1536×864 e permette di prepararne copie a 640×360 per il gioco.

python3 tools/genera.py --dry-run   # elenco delle foto, nessuna API e nessun file scritto

Voci dei personaggi

Ogni battuta ha la sua voce, generata con XTTS-v2 sulla GPU (licenza solo non commerciale): un mp3 per battuta in assets/voices/, la voce di ogni personaggio in tools/voci.json (castello e leone con altezza ed eco proprie).

make voci                    # solo le battute nuove o cambiate; i file che non servono più si tolgono
make voci RIFAI='Ci sei?'    # ritenta una battuta storpiata (XTTS è casuale: di solito il secondo tentativo va)
make voci-elenco             # cosa manca, senza generare

Il test tests/voices.test.mjs fallisce se una battuta non ha la sua voce: dopo aver cambiato un testo, make voci.

Giocare in locale

python3 -m http.server 8000   # poi http://localhost:8000

Clic = azione più sensata (parla, guarda, vai); clic destro o pressione lunga = guarda; un verbo scelto vale per il clic successivo. Spazio salta la battuta, i numeri scelgono nel dialogo, Esc annulla il verbo.

In Docker

make up     # http://localhost:8080 (DOCKER_PORT=… per cambiarla)
make down

Struttura

  • src/engine/: motore senza storia (game.js logica e coda delle azioni, geometry.js area calpestabile e percorsi, command.js verbi e clic, render.js disegno, storage.js salvataggio);
  • src/story/: la storia come dati (story.js) e la sua soluzione completa (solution.js);
  • src/main.js: collega tutto alla pagina;
  • assets/scenes/: sfondi a 640×360, preparati con tools/prepare_background.py dagli originali in assets/raw/.
  • assets/characters/: fogli dei personaggi, tagliati con tools/slice_sprites.py e allineati con tools/prepare_character.py (istruzioni in testa al file).

Test

npm test          # logica, storia coerente, soluzione percorsa dall'inizio alla fine
npm install && npx playwright install chromium-headless-shell
npm run browser   # partita completa con clic veri in Chromium, salvataggio, telefono
S
Description
La Leggenda del Regolo, avventura di famiglia (gioco nel browser)
Readme MIT
135 MiB
2026-11-01 15:19:51 +01:00
Languages
JavaScript 87.9%
Python 6.8%
HTML 2.2%
CSS 2.1%
Makefile 0.5%
Other 0.4%