Files
leggenda-del-regolo/docs/STATO.md
T

14 KiB
Raw Blame History

Stato dei lavori

Ultimo aggiornamento: 24 ottobre 2026. Da leggere insieme a PROGETTO.md all'inizio di ogni sessione.

Dove siamo arrivati

Si gioca in Docker su http://localhost:8080 (make up; Manzolo Rush è stato fermato per liberare la porta) e, online dal 2026-10-23, su https://50037.manzolo.it (50037 è il CAP di San Piero), finché non va su GitHub Pages. Si aggiorna con make deploy: pubblica l'ultimo commit, immagine costruita e provata sul PC e spedita al container leggenda-regolo di home-server (NPM centrale → NPM interno di home-server → container).

  • Motore (src/engine/): camminata con percorsi su aree concave, profondità, sette verbi + clic intelligente, clic destro / pressione lunga = guarda, inventario con "usa… con" e "dai… a", dialoghi a scelte (anche una tantum), salvataggio automatico con "Continua", fumetti sopra chi parla, impaginazione desktop e telefono.
  • Scene con sfondi veri (assets/scenes/), collegate come il paese a gradini (PROGETTO.md, «La mappa»): Piazza Colonna ↔ Pieve (livello 0) → Villa Adami (livello 1) → salita di Villa Adami con la casa del leone → Fortezza (fuori dalle mura) → sentiero → Castello del Trebbio.
  • Altre scene (ottobre 2026, dalle foto di Andrea con Codex): Via de' Medici, Oratorio, Ingresso del campeggio, Bosco ai Frati, viale dei cipressi. Schermata del titolo (Fortezza al tramonto col Regolo) e introduzione a righe sul panorama del Mugello.
  • Musica di Andrea (Suno) in assets/audio/: titolo e introduzione, paese, ricordi (Trebbio e fine); volume e muto.
  • Andrea vero dal foglio sprite (assets/characters/, tools/slice_sprites.py + tools/prepare_character.py): cammina, parla, si china a prendere, di spalle davanti alle porte.
  • Storia di prova (src/story/story.js): il palio è sparito, i vecchietti litigano sulle due leggende, la squama sotto la panchina, le impronte sotto la Fortezza → fine del prototipo. Il Trebbio fa da "psicologo": parlando con la torre si riceve un indizio in base ai progressi.
  • Cartello d'apertura «Manzolo (Poca) Art Presents» (5 s, si salta) prima del titolo.
  • Voci (make voci, XTTS-v2 sulla GeForce): 112 battute, cinque voci (Andrea, vecchietta, vecchietto, castello, leone); il fumetto dura quanto la voce, la musica si abbassa mentre si parla, il muto spegne anche le voci. Controllate tutte con Whisper il 2026-10-23. Il leone ora parla (battute provvisorie).
  • Mappa (pulsante in alto a sinistra o tasto P): i posti già visti, con le strade fra loro; un clic ci porta. Un posto nuovo entra con map: [x, y] nella sua scena (percentuali della pianta, disposta come «il paese a gradini»).
  • Crediti dal titolo e dalla fine (story.credits), dedica al Lele in testa; musichetta a 8 bit del cartello (tools/jingle.py).
  • Primo indovinello: la statua di San Pietro alla Pieve chiede quanti bastioni ha la Fortezza (la risposta la dà il bastione stesso); la chiave apre l'oratorio, che da lì resta aperto, e la chiave sparisce. Verbo Butta: solo gli oggetti droppable (per ora il libro), quelli che servono alla storia no. Pulsante Pausa (o Esc).
  • Il libro della storia infinita sulle tavolate dell'oratorio; le idee in attesa in docs/IDEE.md.
  • Test: make test (29 test, compresa la soluzione completa da src/story/solution.js) e make browser (partita completa con clic veri in Chromium, ripresa del salvataggio, telefono).

Materiale ricevuto da Andrea (in assets/raw/, escluso da git)

File Cosa Uso previsto
piazza-colonna.png, fortezza-esterno.png, trebbio.png sfondi puliti 16:9 già nel gioco
andrea-sheet.png foglio sprite di Andrea già nel gioco
pieve-prova-1.png Pieve (con interfaccia e personaggio) da rifare pulito 16:9
andrea-arcu-prova-1.png, andrea-arcu-lele-prova-1.png Andrea (sinistra), l'Arcu (centro), il Lele (destra) riferimento personaggi
passamano-prova-1.png, carretta-prova-1.png, vaglio-rena-prova-1.png le sfide del Palio tavole illustrate; per giocarle servono versioni larghe e vuote
palio.png il premio con cornice dorata sbagliato: il palio era un quadro dei ragazzi delle medie, senza cornice
piazza-prova-1.png, trebbio-prova-1.png, fortezza-prova-1.png prime prove superate

I prompt fissi (stile, scene, foglio sprite) sono in prompts/STILE.md, escluso da git.

Nuove fotografie e generatore

  • Le tre foto aggiunte in assets/raw/temp/ sono archiviate senza modifiche in assets/raw/foto/: pieve-dalla-salita.jpg, salita-villa-adami.jpg e da-fare/oratorio-pieve.jpg (oratorio rimandato).
  • Geografia precisata da Andrea: dalla Pieve si sale lasciandola alle spalle, si sbuca a Villa Adami e si prende la salita verso la Fortezza. La seconda foto mostra il bivio presso Villa Adami, non le mura della Fortezza.
  • tools/genera.py prepara batch via Images Edit (gpt-image-2), master 1536×864, prompt in prompts/backgrounds/, registro e confronto in assets/generated/. Guida: docs/GENERAZIONE_SFONDI.md. Preparazione verificata senza chiamate API, con test offline e --dry-run; la generazione reale richiede conferma.
  • Generate le due vedute con lo strumento immagini integrato, dopo la preparazione: master in assets/generated/, copie a 640×360 e 64 colori in assets/scenes/pieve-dalla-salita.png e assets/scenes/salita-villa-adami.png. Prompt effettivi prompts/backgrounds/*.integrated.txt; provenienza nel registro. Da valutare prima di collegarle alla storia e definire camminata e hotspot. Il percorso API dello script è verificato con un client simulato, non con chiamate reali.

Cosa manca

Prossimi passi

  • Revisione di Codex del 24 ottobre, parte tecnica fatta:
    • salvataggi a punti fermi: si salva solo quando ogni sequenza è finita (Game.commit, Game.savable). Uscire a metà di una risposta o della casetta riporta a prima, e la squama presa resta salvata anche senza cambiare scena. Un test interrompe ogni passo della soluzione e della catena del ghiacciolo;
    • Salva su file (pausa) e Carica (titolo), per portare la partita su un altro dispositivo;
    • cursore delle voci («bla», 50% di partenza) accanto a quello della musica. Il muto zittisce subito la voce in corso, e la pausa la ferma e poi la riprende;
    • col dito un oggetto mancato di poco (circa 22 pixel di schermo) si prende lo stesso; i verbi in orizzontale vanno su due colonne;
    • sfondi caricati per vicinanza alla scena di partenza (o a quella salvata), tre alla volta; a gioco fermo non si ridisegna;
    • ?debug: area calpestabile coi vertici numerati, hotspot con id, punti at/talkAt/speakers, coordinate del puntatore; Maiusc+clic segna e copia un punto, K copia il poligono, X azzera, G nasconde;
    • corretto: i crediti dal titolo restavano dietro il titolo.
    • seconda passata di Codex: Carica controlla versione e contenuto (checkSave) prima di sostituire il salvataggio del browser; col dito gli oggetti piccoli (sotto i 24×24) vincono sui grandi che li contengono (la squama sulla panchina); uno sfondo fallito si riprova dopo 2, 4 e 8 secondi, poi basta.
  • Primo capitolo chiuso (24 ottobre): squama e impronte portano a una fessura nel bastione; la torcia illumina un angolo del palio (l'omino con la maglia rossa e le braccia alzate, dal quadro vero: foto in assets/raw/palio-2007-foto.jpg, già descritto sul manifesto in piazza) e due occhi gialli che spariscono. La soluzione (40 passi, tragitti calcolati da route) passa per indovinello, oratorio e catena del ghiacciolo; il Trebbio ha un indizio per ogni tappa della torcia. Da fare: il disegno della fessura è provvisorio (forme in art); un taccuino con l'obiettivo corrente.
  • Mappa a gradini (24 ottobre): una scheda per posto, con la miniatura dello sfondo (make miniature, assets/scenes/mini/) e il nome, in quattro fasce dalla Fortezza ai campi; le strade fra le schede. Sta in una schermata sul desktop; sul telefono si scorre in verticale.
  • Campomigliaio: tre foto dell'Arcu (Marco Arcuri, nei crediti fra «Idee e consigli») trasformate da Codex: il ponte a due arcate sul torrente, il Circolo SMS, la strada principale. Pronte in assets/scenes/campomigliaio-{ponte,circolo,strada}.png, ancora da collegare (camminata, hotspot, uscite, posto sulla mappa). Andrea, 24 ottobre: ci si arriva dal bivio della Via Provinciale (verso stazione e forno), andando a sinistra; ma prima viene La Luna, che Andrea deve ancora fotografare: si collega bivio → La Luna → Campomigliaio.
  • Scelta del rione (24 ottobre): dopo «Nuova partita», «Per chi corri quest'anno?» fra i quattro rioni (story.rioni: Piazza rossi, Pieve bianchi, Cardetole verdi, Campomigliaio blu); resta nella partita come flag rione:<id>. Cambiano la riga dell'introduzione e le battute su Pieve, Cardetole, Campomigliaio e la colonna. Le parti future col rione (l'Arcu, il capitano) vanno scritte per ogni scelta. Per ora si sceglie solo Campomigliaio (Andrea, 24 ottobre, per non moltiplicare battute e voci): Piazza, Pieve e Cardetole si vedono chiusi (locked: true in story.rioni). Quando si decide di sbloccarli: togliere locked, rileggere le battute per rione già scritte (introduzione, colonna, Pieve, strada per Cardetole e per Campomigliaio: cercare rione: in story.js), scrivere per ogni rione le parti nuove nate nel frattempo (l'Arcu, il capitano), make voci, e aggiornare il test «per ora si corre solo per Campomigliaio».
  • Audio sul telefono: passando a un'altra app (pagina nascosta) musica, voce e musichetta si fermano subito e la partita va in pausa; la musica riparte con Riprendi.
  • Pronuncia (tools/pronuncia.json): le parole che XTTS legge male, scritte come vanno lette; vale solo per la voce. Per ora «celo» → «ce l'ho». Le 32 voci nuove del 24 ottobre non sono state controllate con Whisper (qui non installato).
  • Sessione del 23-24 ottobre: il paese è quasi tutto in gioco (circa 40 scene, sfondi di Codex dalle foto di Andrea), collegato come quello vero; un test controlla che ogni strada vada e torni. Nuovi: carattere a pixel Press Start 2P, pulsante «?» per vedere cosa si tocca, mappa scorrevole sul telefono, titolo e introduzione a tutto schermo, inventario che si scorre, doppio clic per correre, pausa automatica.
  • La catena del ghiacciolo (tennis della chiesa): la Tosca offre bibite e ghiacciolo; ghiacciolo nella cedrata → stecco; gomma all'oratorio; stecco e gomma ripescano la chiavetta dalla griglia del ponticino; la chiavetta apre la casetta dell'area feste, dove c'è la torcia (per il buio della Fortezza). Le bibite si bevono con un clic; un oggetto cliccato due volte si usa da solo.
  • Da fare: sprite della Tosca al chiosco (serve una foto o una descrizione); ascoltare le voci nuove (nomi come Tosca e Tozzino); La Luna e Campomigliaio (foto in arrivo); la Pizzeria da Baffo (quadro da ridisegnare senza personaggi Disney); le idee su chiavi e indovinelli in docs/IDEE.md, a partire dalla chiave della Fortezza.
  • Prima di GitHub Pages: consensi delle persone nominate (Tosca, ing. Tozzi, Mariano Mirannalti per la sua foto), sfondi da foto prese da internet (docs/IMMAGINI.md), Cardetole (dice dove abita Andrea).
  • Vecchietta e vecchietto sono in gioco sulla panchina della Piazza (assets/characters/, da assets/raw/vecchiett?-sheet.png): consenso delle persone ritratte confermato da Andrea il 2026-10-23; mancano i loro nomi.
  • Andrea rifatto dalla sua foto del 2007 (assets/raw/andrea-sheet-prova-2.png; il vecchio foglio resta in andrea-sheet.png).
  • Strada del campeggio (poi Bosco ai Frati) e strada della scuola: per ora battute, scene da fare con le foto di Andrea.

Domande per Andrea

  1. Cosa c'era dipinto sul palio del 2007? Risposto: foto in assets/raw/palio-2007-foto.jpg (la strada che sale alla Fortezza con le bandiere, i ragazzi in fila, uno con la maglia rossa e le braccia alzate).
  2. Il passamano dei mattoni: sul sentiero nel bosco o sulle mura della Fortezza?
  3. Aggiungere i verbi Spingi e Tira (carretta, tiro alla fune)?
  4. «La Colonna» era davvero il bar della piazza nel 2007? Chi c'era?
  5. Consenso di Marco (l'Arcu), Mitrugno e Paleo; chi era Paleo; se e come ricordare Cipollone.
  6. Il nonno: confermare il nome (Settimo Villani) e decidere come usare la sua leggenda nel finale.
  7. Il Lele: come e quanto farlo comparire (con calma).
  8. Battute e modi di dire del paese.

Grafica

  • Sfondi puliti 16:9 di Pieve, Cardetole, Campomigliaio, interno della Fortezza (sotterranei).
  • Fogli sprite: l'Arcu, i vecchietti (seduti: fermi e mentre parlano), poi gli altri personaggi.
  • Interfaccia nello stile delle immagini di Andrea: cornice, inventario a icone (icone degli oggetti su sfondo verde).

Motore

  • Personaggi non giocanti con sprite (al posto dei blocchi colorati dei vecchietti).
  • Tavole illustrate (immagine a tutto schermo con testo) per l'inizio e la fine delle sfide.
  • Scorrimento della visuale per le scene panoramiche (se serviranno).
  • Musica e suoni; titoli di coda con la dedica.
  • Pubblicazione su GitHub Pages riusando build-site.sh, bump.sh, check-public.sh di Manzolo Rush (solo quando Andrea lo chiede).

Storia

  • La prima zona vera (Piazza + Pieve) con un enigma del Palietto: passamano dei mattoni, carretta o vaglio della rena.
  • La catena completa degli enigmi del documento, con gli indizi del Trebbio per ognuno.