Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GiECd9KMfjthRUnujCGSzZ
392 lines
37 KiB
Markdown
392 lines
37 KiB
Markdown
# Stato dei lavori
|
||
|
||
Ultimo aggiornamento: 25 ottobre 2026. Da leggere insieme a `PROGETTO.md` all'inizio di ogni sessione.
|
||
|
||
## Da riprendere (chiusura del 25 ottobre, notte)
|
||
|
||
Online su 50037.manzolo.it tutto fino agli effetti ambientali di Codex. Aperto, da decidere con Andrea:
|
||
- **Chi racconta**: Andrea vive il 2007 o lo racconta da adulto? Al bar c'è ancora il segnaposto «Questo lo sa solo
|
||
Andrea»; le battute sul futuro (padel, Locura) dipendono da questa scelta.
|
||
- **Il furto**: un piccolo colpo di scena durante l'indagine (testimonianza, contraddizione); reazioni del paese.
|
||
- **Enigmi con gli spiriti** (scrivano del Trebbio, leone, San Pietro: lo stile per altri spiriti c'è) e **aneddoti
|
||
segnaposto** da far sostituire a Francesco Bacci e agli amici.
|
||
- **Frasi che promettono enigmi inesistenti** (soldi per il bar, moduli al Comune, porte «interessanti»): da togliere.
|
||
- **Consensi** delle persone vere nominate o ritratte (Gianna, Pappia, i sette ritratti dei Ringraziamenti).
|
||
- **Secondo capitolo**: le gare (passamano, carrette, caccia al tesoro, bandierine/lavanderine) e forse lì la scelta
|
||
del rione; musica delle gare.
|
||
- Il **leone fantasma** somiglia un po' ai leoni dei cartoni: Andrea non l'ha ancora commentato.
|
||
|
||
## Dove siamo arrivati
|
||
|
||
- **La macchina del tempo da fuori (30 ottobre)**: dopo il cruscotto, la partenza giù per Via Liguri Magelli
|
||
(primo piano `corsa`, `src/engine/corsa.js`): accelera, il fulmine la prende, il bianco, e restano due sgommate di
|
||
fuoco che bruciano e si spengono; al ritorno dal 1997 l'arrivo: il fulmine in fondo alla strada, lei viene avanti e
|
||
ci passa accanto lasciando le strisce. La macchina da dietro e davanti (coi lampi) è di Codex.
|
||
- **Lo zio Mario negli orti al tramonto (30 ottobre)**: dal tramonto (`indizio_regolo`) non è più davanti alla
|
||
Ghiacciomobile ma accanto al suo orto (`orti_zio_mario`), con una battuta provvisoria [DA ANDREA].
|
||
- **La Condor al campone delle poste (29 ottobre)**: la gara col Taglia (Andrea Tagliaferri, consenso dato) con la
|
||
pistola ad aria compressa coi pallini gialli (`condor.js`, `condor-render.js`, primo piano `condor`, sfondo di Codex).
|
||
Come la cerbottana: il mirino ondeggia col respiro; tenere premuto trattiene il fiato (il mirino si ferma), lasciare
|
||
spara, troppo e il colpo parte da solo. Il pallino cala con la distanza (alla porta in fondo si mira sopra). Il
|
||
cartone sull'albero (10/5/2), le lattine sulla panchina (3), le bottigliette sulla traversa (5), il palloncino
|
||
all'altalena (6), la lattina tirata in aria dal Taglia a seria e a fassi male (8). Si deve battere il punteggio del
|
||
Taglia (22, 34, 44 secondo il livello, ±3). Il Taglia sta al campone (sprite di Codex dalla sua foto, più alto di Andrea); si gareggia
|
||
parlandogli. [DA ANDREA] le battute.
|
||
- **La macchina del tempo e il pokerino del 1997 (29 ottobre)**: dall'Arcu sotto la tenda del Trappola, «Bei tempi
|
||
quando qui si faceva i pokerini…»: compare la macchina del tempo in Via Liguri Magelli. Dentro, il cruscotto (Codex)
|
||
compone 10/07/1997 18:30, poi tremori, lampi e il bianco (primo piano `viaggio`, `src/engine/viaggio.js`, tempi in
|
||
`TRIP` di `game.js`): si arriva al Barrettino del 1997 (`barrettino_1997`, scena `viaggio: true`: niente mappa né
|
||
strade; la porta o il pulsante «Torna al 2007», `scene.back` e `game.goBack()`, riportano nel 2007 e la macchina
|
||
sparisce: per rifare il viaggio si richiede all'Arcu), con l'Arcu che viene a guardare, Vannino (dalla descrizione di Andrea) e Pierino Parigi (consenso del figlio
|
||
Marco, 29 ottobre), sprite di Codex. Il pokerino (`poker.js`, `poker-render.js`): cinque carte col cambio, mazzo
|
||
corto dal 7 all'asso (colore sopra il full, A-7-8-9-10 scala), invito 2, punto 5, cinque mani. [DA ANDREA] l'interno
|
||
del Barrettino (è una proposta di Codex) e le battute.
|
||
- **Nuovi posti dalle foto di Andrea (29 ottobre, sfondi di Codex)**: Via della Compagnia (fra Via de' Medici, la
|
||
Pieve e Villa Adami), Via Cafaggio in tre tratti fino alla rotonda, la Provinciale sotto i platani, la passeggiata
|
||
sulla Carza (cascatella, orti, dietro le poste, sotto il ponte delle poste, gli orti dello zio Mario), la strada fra
|
||
il bivio della Provinciale e la stazione. Le strade vecchie passano ora da questi posti. Battute provvisorie
|
||
[DA ANDREA]; foto originali in `assets/raw/foto/`.
|
||
- **La cerbottana (29 ottobre)**: in piazza, la bottega di Pierin di Frilli sotto la tenda rossa; si compra lo stucco
|
||
verde e si tira al muro della piazza (`muro-cerbottana.png`, Codex). Motore `cerbottana.js`, disegno
|
||
`cerbottana-render.js`: si mira, si tiene premuto per il fiato (giusto al 70%: poco cade sotto, troppo va sopra), il
|
||
mirino ondeggia col respiro, troppo a fiato pieno si tossisce. Bersaglio di gesso (10/5/2), lattine sul muretto
|
||
(3), barattolo appeso (8, seria e a fassi male); 12 pallini, servono 30/40/50 punti; i pallini restano sul muro.
|
||
Test in `cerbottana.test.mjs` e `npm run browser:cerbottana`. [DA ANDREA] le battute, com'era la bottega, se far
|
||
comparire Pierino (è scomparso da anni: decide Andrea).
|
||
- **Il terrazzo di casa a Cardetole (29 ottobre)**: dalla foto di Andrea dalla finestra (il paese che sale e lassù
|
||
la Fortezza), Codex l'ha dipinta e ci ha messo davanti il terrazzo (`terrazza-cardetole.png`). Ci si sale da
|
||
«casa di Andrea» a Cardetole; la battuta dell'apparecchiare ora è sulla porta-finestra. Battute provvisorie
|
||
[DA ANDREA]. Come Cardetole, dice dove abita Andrea: da decidere prima di Pages.
|
||
- **La Ghiacciomobile nel muro (29 ottobre)**: non è più al circolino di Campomigliaio. In Via Liguri Magelli, prima
|
||
del tramonto (`!indizio_regolo`), è schiantata dentro il muro giallo coi mattoni rotti e senza targa
|
||
(`via-liguri-magelli-muro.png`, ritocco di Codex); dal tramonto il muro è rifatto e c'è la targa. Il motore ha le
|
||
varianti di sfondo per scena (`backdrops`, con `when`; `game.backdrop()`). Lo zio Mario (sprite di Codex dalla
|
||
foto di Andrea) davanti alla macchina che si gratta la testa; scala della scena rifatta (le persone erano troppo
|
||
piccole). [DA ANDREA] le battute dello zio (scherzava su tutto, anche sulla morte) e quella dello schianto.
|
||
- **GP di Fortezza, guida semplice (29 ottobre)**: alla bona e Seria si tiene premuto per il gas e lasciando si
|
||
frena; lo sterzo segue la strada da solo (scansa le buche, sorpassa, prende la miscela), ma oltre la velocità che la
|
||
curva regge il motorino scivola fuori verso la paglia (`SIMPLE` in `gara.js`). Ginocchio in terra resta con lo
|
||
sterzo vero. Il pannello nasconde Sterza, Frena, swipe e sensibilità. Test in `gara.test.mjs` e
|
||
`npm run browser:gara`. Seria più difficile (parere di Codex, simulato): sopra il 110% del limite in curva si esce
|
||
di sicuro (stun 1,2 s), la curva pulita dà una spinta, rivali a 0,81; CURVA! (preavviso) e LASCIA! sul motorino.
|
||
In simulazione: chi frena giusto 1° in 46 s, tutto gas 4°-5° in 55-59 s.
|
||
- **La pista col gesso (29 ottobre, modifiche locali)**: le Micro Machines sul parcheggio di Cardetole contro il
|
||
Chiaru (Matteo Chiarusi, sprite di Codex dalla foto di Andrea, accanto alla pista). Motore in `micro.js`, disegno in
|
||
`micro-render.js`: pista disegnata a gesso dal codice sopra l'asfalto di Codex (`micro-parcheggio.png`), un giro,
|
||
una spinta a testa (mira e carica come al biliardo), le macchinine di Codex (`assets/closeups/micro/`). Penalità
|
||
alla francese, per tutte si torna dov'eri: fuori, tagliè (curva presa dalla parte di dentro o erba saltata),
|
||
cappottè (urto forte), accompagnè (dito tenuto oltre la carica piena). Tre livelli: alla bona la guida mostra dove
|
||
ci si ferma. Test in `tests/micro.test.mjs` e nel browser (`npm run browser:micro`). Battute del Chiaru provvisorie
|
||
[DA ANDREA]; il Chiaru ha dato il consenso (29 ottobre).
|
||
Poi: si sceglie la macchinina (sei, il Chiaru tiene la blu), la forza parte da zero appena si preme e la spinta
|
||
parte quando si lascia; saluto «Vado a fare un girino alle case rosse» / «Vorrai dire un giochino!» / «Ciao Mattè»;
|
||
Andrea chiama Bertovo «Fabri». Musica sua: `assets/audio/macchinine.mp3` (Andrea con Suno).
|
||
- **Bertovo ora si chiama «Trappizzio Berti»** in tutte le scritte (Andrea, 29 ottobre); l'id resta `bertovo`.
|
||
Fabrizio Berti e il suo libro «Memorie di sport e di paese» nei Ringraziamenti; l'idea delle cartoline in `IDEE.md`.
|
||
- **I rinquarti di Bertovo (28 ottobre, modifiche locali)**: variante del biliardo in `rinquarto.js` e
|
||
`rinquarto-render.js`, con fisica, mira, carica e suoni del biliardo. Sei posizioni riproducibili dal seme,
|
||
diretto coperto da una biglia e almeno una soluzione di sponda verificata con `simulate` per ciascuna.
|
||
Un tiro per posizione: punto al primo contatto col bersaglio dopo almeno 1/2/3 sponde (bona/seria/male),
|
||
senza prima toccare biglie viola o birilli. Guide: fino alla seconda sponda / 65 cm e prima sponda / nessuna;
|
||
vittoria con 3/3/2 punti su 6. Esito del tiro, contatore delle sponde e riepilogo finale persistente.
|
||
Integrati primo piano, pannello, aiuto e dialogo `bertovo` con scelta del livello; Bertovo resta senza sprite
|
||
e senza scena: **Andrea decide dove collocarlo**. Battute provvisorie segnate `[DA ANDREA]`.
|
||
Ripresa verificata con `node --test tests/*.test.mjs` (22 file, nessun rosso, comprese le voci già presenti)
|
||
e 14 test mirati in `tests/rinquarto.test.mjs`. Completata l'animazione dei birilli durante l'esito
|
||
e nel riepilogo finale: anche un urto appena prima dell'arresto termina la caduta senza cambiare punti o risultato.
|
||
Verifica visiva Playwright/SwiftShader ancora da eseguire: in questa sessione la sandbox impedisce l'avvio
|
||
del server locale e di Chromium (`Operation not permitted`). Nessun `make voci`, commit o pubblicazione.
|
||
|
||
- **Briscola all'oratorio (26 ottobre)**: alle tavolate siede «Il giocatore di carte» (segnaposto, [DA ANDREA: chi è],
|
||
sprite e battute provvisorie di Codex). Parlandoci si sceglie il mazzo (toscane o napoletane) e il livello
|
||
(«Alla bona», «Seria», «A fassi male»), poi briscola a due fedele alle regole, conteggio delle prese a fine
|
||
partita e rivincita. Facoltativa: nessun flag serve alla soluzione. Motore `src/engine/briscola.js` (Claude),
|
||
disegno `briscola-render.js` (Codex), dettagli e taratura in `docs/BRISCOLA.md`. Prova: `npm run browser:briscola`.
|
||
**Tressette ai 21** (stesso giocatore, «Un tressette ai 21?»): in quattro a coppie, busso/striscio/volo e accuse,
|
||
motore e tavolo di Claude, regole e taratura in `docs/TRESSETTE.md`, prova `npm run browser:tressette`.
|
||
**Scopa agli 11** («Una scopa?»): carte, mattoni (o denari), settebello, primiera e scope, presa a scelta fra
|
||
più possibili; `docs/SCOPA.md`, prova `npm run browser:scopa`. Con la scopa i giochi di carte sono finiti
|
||
(decisione di Andrea, 26 ottobre). Tressette rivisto dopo la revisione critica di Codex (in `docs/TRESSETTE.md`).
|
||
|
||
- **Multimedia (25 ottobre, modifiche locali)**: il libro sfogliabile già presente conserva immagini, battute e
|
||
riapertura dall'inventario; il fruscio ora segue il volume degli effetti, non quello delle voci.
|
||
Nuovi paesaggi sonori sintetizzati con Web Audio (`src/engine/soundscape.js`, profili in
|
||
`src/story/soundscapes.js`): vento, acqua, uccelli di giorno e grilli di sera, campane, bicchieri,
|
||
gocce e scricchiolii distanziati. In **Pausa → Ambiente ed effetti** si regola il volume, salvato nel browser.
|
||
Muto, pausa e pagina nascosta fermano anche i suoni già avviati.
|
||
La **torcia nella fessura** apre un primo piano: mouse, tocco/trascinamento o frecce spostano la luce;
|
||
Invio aiuta a cercare il prossimo dettaglio. Pietra → palio → occhi; la musica si abbassa durante la ricerca.
|
||
«Torna fuori»/Esc permette di riprovare; soltanto dopo gli occhi «Continua» avvia la conclusione.
|
||
Nessun progresso parziale viene salvato. La tela usa la foto vera del 2007, ritagliata durante il disegno.
|
||
Controllo mirato: `npm run browser -- --media-only`; il collaudo normale include anche queste prove.
|
||
Verificati `npm test` e `npm run browser`: soluzione completa, salvataggi, libro su desktop/telefono,
|
||
torcia con mouse/tastiera/tocco/trascinamento, pausa e muto, segnale Web Audio senza saturazione.
|
||
Schermate in `/tmp/regolo-shots/media-*.png` e `/tmp/regolo-shots/05b-fessura-*.png`.
|
||
I copioni video sono aggiornati ai gesti richiesti dalla torcia; il montaggio audio da file continua a
|
||
includere solo musica e voci (gli effetti Web Audio non vengono esportati dal copione).
|
||
|
||
- **Ambienti animati (25 ottobre)**: alle prove già presenti (bandiere del campeggio, fascio di luce nella Pieve,
|
||
ombre al Bosco ai Frati) si aggiungono 51 dettagli nelle altre 35 scene. Configurazione in
|
||
`src/story/ambience.js`, richiamata da `story.js`; nuovi disegni in `src/engine/ambient.js`:
|
||
piccioni in piazza, merli sui prati, gatto nel vicolo, farfalle, libellula sul ponticino, falena alla festa,
|
||
increspature nelle pozze e nel torrente, gocce della fontanella, tende, passaggi dietro le vetrate,
|
||
ombre di nuvole sul sentiero e sulle vigne. Riutilizzati anche ombre delle fronde, stoffe, finestre e lampioni.
|
||
Le ombre delle fronde ora sono piccoli gruppi irregolari, senza gli ovali in fila che sembravano sassi.
|
||
Tutte le 38 scene hanno almeno un effetto; quelli diurni si spengono di sera e gli animali fanno lunghe pause.
|
||
Acqua, tende e vetrate usano ritagli locali; nessun asset aggiunto, nessun nuovo hotspot o flag narrativo.
|
||
Le animazioni complesse di altalene/reti e il movimento isolato di grandi fronde restano da fare con elementi
|
||
grafici separati: per ora quei luoghi hanno ombre e piccoli animali, senza deformare il fondale.
|
||
Verificati `npm test`, `npm run browser` (partita completa e telefono), `npm run browser:effects`
|
||
(38 scene × 3 fasi × 4 istanti, ritagli, giorno/sera, pause degli animali, salvataggio invariato).
|
||
Le immagini di controllo sono in `/tmp/regolo-effects`; si rigenerano con `npm run browser:effects`.
|
||
|
||
**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), il GP di Fortezza (`gara.mp3`); 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.
|
||
- **Verso La Luna** (24 ottobre, foto di Andrea): dal bivio, a sinistra, il viale alberato della Provinciale
|
||
(`provinciale_viale`), poi la Provinciale lungo la Carza in secca con la luna (`verso_luna`; la Carza d'estate si
|
||
secca da quando hanno scavato le gallerie dell'alta velocità, d'inverno torna viva). In basso si va verso La Luna e
|
||
Campomigliaio (per ora solo battute). Da mettere: le case vecchie con la curva, il rettilineo col cartello della
|
||
rotonda, l'incrocio coi cartelli (`assets/raw/foto/luna-*.jpg`): ordine da chiedere ad Andrea.
|
||
- **Taccuino** (24 ottobre, dalla revisione di Codex): pulsante «Taccuino» e tasto N; le tappe in `story.notebook`
|
||
(fatte barrate, quella di adesso in evidenza) e in fondo il promemoria del Trebbio. Un test controlla che lungo la
|
||
soluzione si spuntino in ordine. Il palio era custodito a scuola e se n'è accorta la Gianna (Andrea, 24 ottobre:
|
||
in piazza all'inizio, alle porte della scuola, nel taccuino; la Gianna è una persona vera: serve il consenso).
|
||
Da decidere: se Andrea vive il 2007 o lo racconta da adulto (al bar c'è ancora il segnaposto «Questo lo sa solo Andrea»).
|
||
- **Ricerca nella mappa**: casella «Cerca un posto…», filtra mentre si scrive (`matchPlace`), Invio porta al primo.
|
||
- **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.
|
||
- Via Provinciale (dalla rotonda verso la Pieve) → a destra Via del Pignone → in cima Piazzetta Cambray Digny, che porta
|
||
in Piazza (a sinistra, dove prima c'era l'uscita per il Comune) e in Via de' Medici. Battute provvisorie sul murale.
|
||
Via del Pignone (sfondo di Codex da `assets/raw/foto/via-del-pignone.png`): sul muro di destra il
|
||
murale di Cistola (Davide Poggi), «il talento di via del Pignone», alla maniera dei murali di Maradona a Napoli
|
||
(volto da `assets/raw/riferimenti/cistola.png`). Consenso di Davide confermato da Andrea il 2026-10-27.
|
||
- Via dell'Antica Posta (foto di Andrea, 28 ottobre, sfondi di Codex): dalla Piazza, a sinistra, sale verso Piazzetta
|
||
Cambray Digny, che non è più collegata direttamente alla Piazza. A sinistra la Piazzetta del Comune (il retro del
|
||
municipio con la torre e le sculture); in cima il muro di Villa Schifanoia, il ponticello, le panchine e due gatti.
|
||
Dalla Piazzetta, a destra accanto al palazzo, si scende per la scalinata in un cortile coi garage che porta ai
|
||
giardini del Comune (lato sinistro della scena del Comune); la scalinata si prende anche dalla curva a sinistra in
|
||
cima a Via dell'Antica Posta. In Piazzetta tutto il lato sinistro porta in Via de' Medici. Da confermare con Andrea:
|
||
il nome vero della scalinata. Battute provvisorie.
|
||
- Il sentiero della Fortezza (foto di Andrea, 28 ottobre, sfondo di Codex): fra la Fortezza (a diritto) e la casa del
|
||
maestro Bacci (alle spalle), che non sono più collegate direttamente. La pozza c'è anche il 15 d'agosto (Andrea).
|
||
Il nome del sentiero è provvisorio.
|
||
- La salita dei cipressi (foto di Andrea, 28 ottobre, sfondo di Codex): la strada bianca fra la casa del maestro
|
||
Bacci (alle spalle) e il viale dei cipressi (lassù spuntano i cipressi). Nome provvisorio, battute provvisorie.
|
||
- Seconda copia del gioco sul VPS Contabo con `make deploy-vps` (dopo `make deploy`). Per renderla pubblica serve
|
||
nel proxy del VPS la regola per 50037.manzolo.it; poi si sposta il DNS su Aruba.
|
||
- Via Pietro Cipriani (fra Piazza e campeggio): Cinema Taiuti aperto con la locandina del Rattattù 2007 (stile da
|
||
`assets/raw/riferimenti/rattattu-locandina.png`, scaletta illeggibile). Al campo da basket del Circolo, «Fai due tiri»
|
||
(`src/engine/basket.js`, vista di lato, sfondo e sprite di Andrea col pallone da Codex): da solo, dieci palloni, a ogni
|
||
canestro si arretra fino alla linea da tre; tre livelli (quanti canestri per la gloria, quanta parabola mostra la
|
||
guida). Battute provvisorie. Idea di Andrea del 27 ottobre. Revisione critica di Codex (27 ottobre) applicata per
|
||
i punti gravi (angolo iniziale 64° con fascia di forza buona da ogni postazione, palo e tabellone da entrambi i lati,
|
||
canestro che conta subito, pose senza doppio pallone, guida fino al primo urto, obiettivo sempre in vista). Restano
|
||
le sue idee: «Riprova» dal risultato e record per livello; Andrea che arretra camminando; battute che dicono perché
|
||
è uscita (corto, lungo, ferro); l'angolo anche nei comandi HTML; testi del canvas piccoli sul telefono;
|
||
`basket_vinto` che lasci traccia nel paese; pannelli più compatti.
|
||
- Fuori paese, dal campo secondario (a destra): le Mozzète → il ponticino → Coldaia → la falegnameria → Gabbiano;
|
||
da Via Cipriani, indietro, Via Massorondinaio → campeggio. Sfondi da Street View, battute provvisorie.
|
||
- In Fortezza quattro ragazzi inventati si fanno le canne da pesca col bambù per il lago dell'Anatre (sprite di Codex,
|
||
`assets/raw/pescatori-sheet.png`, ritagliato 2x2 a mano: work, talk, laugh, proud); battuta finale di Andrea.
|
||
Parlandoci: «S'ha andà a fallo?!?» (Andrea, 28 ottobre) e si va a pescare: minigioco `src/engine/pesca.js`
|
||
(primo piano del lago, sfondo e Andrea con la canna di Codex; lancio tenendo premuto, tocchi finti e abboccata,
|
||
ferrata a tempo, recupero con la lenza che si può spezzare; sei lanci; pesci più grossi al largo, lo stivale sotto
|
||
riva; tre livelli). Battute provvisorie. Il lago come scena da visitare non c'è: serve una foto di Andrea.
|
||
Revisione di Codex (28 ottobre) applicata nei punti gravi (galleggiante che saltava, sesto lancio bloccato dal
|
||
pannello, invito a ferrare fuori tempo, lenza che non si spezzava mai, mira che si sbloccava) e in parecchi utili
|
||
(un gesto solo per ferrare e recuperare, pulsante Recupera/Molla, recupero breve per i pesci piccoli, attese ripetute
|
||
dimezzate, tocchi finti variabili, lenza dalla punta vera della canna, stivale con la sua battuta e senza peso,
|
||
risultato deciso all'ultimo pesce). Restano le sue idee: «Porta a casa la pescata» a gloria raggiunta; premio per
|
||
peso o varietà; i ragazzi che reagiscono (stivale, carpa, lenza rotta); paesaggio sonoro del lago (ora quello della
|
||
Fortezza); abboccata e tensione anche nei comandi HTML e un richiamo grande sul telefono; Esc col fuoco sui pulsanti.
|
||
- Il GP di Fortezza (Andrea, 28 ottobre): la gara dei cinquantini attorno alle mura della Fortezza, vista dall'alto
|
||
come le vecchie gare da sala giochi. Dall'Arcu sotto la tenda del Trappola in Via Liguri Magelli «Si fa una gara coi
|
||
motorini?», poi Alla bona, Seria o Ginocchio in terra; prima del via l'Arcu prende la rincorsa per accendere il Betino
|
||
in discesa. Minigioco `src/engine/gara.js`: gas tenendo premuto (Spazio, ↑, mouse, dito), sterzo con ← →,
|
||
trascinando di lato o coi pulsanti Sterza, ↓ frena; erba che frena, paglia che ferma, acceleratori, lattine di miscela
|
||
(sprint), buche (forte si casca); gli avversari sorpassano e scansano le buche. Prima del semaforo i piloti
|
||
arrivano in griglia uno alla volta col cartellino: il personaggio (sprite del gioco, o ritratto: Cistola dal murale,
|
||
Puntella sagoma finché manca il consenso), il motorino dipinto da Codex dalle foto (`assets/closeups/gp/`, foglio
|
||
`assets/raw/motorini-gp-sheet.png`, prompt `prompts/personaggi/motorini-gp-sheet.txt`), motore e testa; un tocco la salta. Gas, freno e sterzo hanno
|
||
fonti indipendenti (tasti, un dito sulla scena, pulsanti Gas, Sterza e Frena), il freno vince sul gas. Quadro di Codex
|
||
`assets/closeups/gp-fortezza.png` (prompt `prompts/closeups/gp-fortezza.txt`, guida dalla planimetria
|
||
`assets/raw/fortezza-planimetria.png`, satellite in `assets/raw/fortezza-satellite.png`); il tracciato è ricalcato
|
||
sulla strada dipinta. Disegno `gara-render.js`, test `tests/gara.test.mjs`. I piloti sono dati in
|
||
`src/story/piloti.js`: una riga per amico, `motore` e `testa` da 1 a 5, colori dalle foto. Corrono Puntella (SR
|
||
truccatissimo, motore 6, viola e giallo dalla sua foto, ritratto di Codex, testa «non pervenuta»), Bini (Andrea
|
||
Bini, consenso del 28 ottobre: Italjet Formula giallo, motore 5, ritratto di Codex), Cistola (CR 50 Z), Andrea (Malaguti Fifty rosso e nero), Tozzino (Booster blu
|
||
scuro, di serie, casco alla Damon Hill di Codex: `prompts/personaggi/casco-tozzino.txt`), l'Arcu (Betino). Col telefono
|
||
si guida con un dito: premuto è gas, lo swipe indica dove andare sullo schermo (Codex, 28 ottobre). Puntella (Marco Villani) ha dato il consenso il 28 ottobre; chi ha `consenso: null` in piloti.js non corre. Mancano: quanto erano
|
||
truccati gli altri, le battute di Andrea, il rumore del motore (c'è solo
|
||
quello dell'arrivo in griglia); i confini della paglia non si vedono sul quadro (revisione di Codex, punto 9).
|
||
- Strade attorno a casa (Andrea, 28 ottobre): la scena `area_camper` ora si chiama «Le villette del Giannini» (ci abita
|
||
lui; i camper stanno dietro il suo campo). Cardetole: in basso a destra «dal Giannini» (le villette), a destra il
|
||
ponticino della Carza, a sinistra il Trappola. Il campo del Giannini: a destra le villette, a sinistra il Trappola;
|
||
dal ponticino non ci si va. Via Liguri Magelli: lassù vicino al Betino si torna a casa, laggiù a destra il campo.
|
||
Da sapere: dove si gira, in fondo al ponticino, per Cardetole [DA ANDREA].
|
||
- Bertovo (Fabrizio Berti, consenso del 28 ottobre) al tavolo di mezzo del Circolo 4 Maggio, sprite di Codex dalla sua
|
||
foto (`prompts/personaggi/bertovo-sheet.txt`): parlandoci, i suoi rinquarti (`src/engine/rinquarto.js`). Dopo la
|
||
revisione di Codex: gara a punti (sulla stessa posizione tira prima Andrea, poi il tavolo torna com'era e tira
|
||
Bertovo, preciso secondo il livello), allenamento («Fammi vedere un rinquarto»: tira prima lui), posizioni misurate
|
||
(finestra di angoli buoni sempre più stretta), forza sempre piena, traiettoria con le sponde numerate e Prossima,
|
||
tocco che mira senza tirare, un dito solo per volta, frecce che girano finché tenute.
|
||
- Via Liguri Magelli (Street View di Andrea, 28 ottobre), a sinistra dal campo del Giannini: a destra la casa salmone
|
||
con la tenda del Trappola (il Barrettino, «Vai dal Trappola»: niente interno, [DA ANDREA]), l'Arcu sotto la tenda
|
||
(scherzo: «ti ho visto du' minuti fa a Campomigliaio» col Betino, poi la sfida del GP), davanti la targa «Qui riposa la
|
||
Ghiacciomobile, che si è schiantata lì», in cima alla salita il Betino dell'Arcu (tolto dal circolino di
|
||
Campomigliaio), che per partire ha bisogno della discesa. Prompt `prompts/backgrounds/via-liguri-magelli.txt`.
|
||
- 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.
|
||
9. ~~Consenso del Chiaru~~ Dato il 29 ottobre. Le sue battute vanno bene?
|
||
|
||
### 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.
|