Files
leggenda-del-regolo/video/SCALETTA.md
T

6.2 KiB

Video dimostrativo del prototipo — scaletta

Prima ripresa: 23 ottobre 2026, sul gioco com'era quel giorno (37 test verdi, scene fino al Trebbio). Si rifà ogni volta che il prototipo cresce: si aggiorna il copione video/demo-prototipo.mjs, poi gli stessi comandi.

Cosa si vede (durata attesa 7-8 minuti, tetto 10)

Solo sottotitoli in italiano in alto (le battute del gioco sono già nei fumetti) e la colonna sonora del gioco rimontata sopra il video (la VM registra lo schermo, non l'audio).

# Capitolo Cosa fa l'omino Didascalia
1 Titolo schermata del titolo con la dedica, musica del titolo titolo del gioco, «demo del prototipo»
2 Introduzione le quattro righe sopra il panorama, un clic per riga —
3 Piazza Colonna arriva, guarda la colonna e il manifesto, prova ad andare al Fiocco di Neve come si gioca: clic = azione più sensata, i verbi a destra
4 I vecchietti dialogo: le due leggende del Regolo, il Palio di quest'anno, «niente di strano stanotte?» i dialoghi a scelte
5 La squama guarda sotto la panchina, prende la squama, la guarda, la offre ai vecchietti l'inventario, «dai… a»
6 Campeggio e Bosco ai Frati due scene di passaggio, bandierine e tiglio il paese a gradini
7 Pieve e oratorio chiesa, campanile, statua; palco e tavolate dell'oratorio —
8 Villa Adami e la salita la villa, il leone di terracotta, la strada della scuola —
9 Fortezza bastione, porta incatenata, le impronte —
10 Trebbio viale dei cipressi, la torre fa da psicologo e dà l'indizio gli aiuti del castello
11 Il finale torna alla Fortezza, usa la squama sulle impronte, schermata di fine fine del prototipo, dedica

Come si rigira

Dalla cartella ~/Workspaces/qemu/qemu-iso-lab (la catena del «cameraman», gemello 30_Note/video-dimostrativi.md):

virsh --connect qemu:///system start lubuntu-studio
IP=$(virsh --connect qemu:///system domifaddr lubuntu-studio --source lease | awk '/ipv4/{sub("/.*","",$4); print $4}')
TOUR_VM=manzolo@$IP tools/tour/session.sh
# copia del gioco nella VM e server su 127.0.0.1:8000 (SRC= per girare su una copia ferma)
~/Workspaces/misc/LeggendaDelRegolo/video/prepara-ripresa.sh manzolo@$IP
PW=$(ls -d ~/.npm/_npx/*/node_modules/playwright | head -1)/index.mjs
TOUR_VM=manzolo@$IP PLAYWRIGHT_MODULE=$PW node tools/tour/rec.mjs ~/Workspaces/misc/LeggendaDelRegolo/video/demo-prototipo.mjs --dry   # prova a vuoto
~/Workspaces/misc/LeggendaDelRegolo/video/prepara-ripresa.sh manzolo@$IP   # azzera prima della ripresa vera
TOUR_VM=manzolo@$IP PLAYWRIGHT_MODULE=$PW node tools/tour/rec.mjs ~/Workspaces/misc/LeggendaDelRegolo/video/demo-prototipo.mjs
python3 ~/Workspaces/misc/LeggendaDelRegolo/video/monta.py artifacts/tour/out/demo-prototipo
virsh --connect qemu:///system shutdown lubuntu-studio

monta.py accorcia le didascalie, lancia build.py, rimonta la musica dai cambi registrati in musica.json e scrive video/out/demo-prototipo.mp4 (escluso da git).

Trappole

  • Il gioco va servito dentro la VM (prepara-ripresa.sh): niente rete fra host e VM da sistemare.
  • Le battute del gioco durano sayTime (circa 18 caratteri al secondo): il copione non le salta, aspetta che finiscano.
  • Una pressione più lunga di 450 ms sulla scena vale «guarda»: i clic di mv.py sono brevi, non usare trascinamenti.
  • Il salvataggio sta nel localStorage del profilo della VM: il setup del copione lo svuota, sennò compare «Continua».

La partita completa (25 ottobre 2026)

Copione video/partita-completa.mjs: il primo capitolo intero, dal pomeriggio alla sera (circa 10 minuti e mezzo), seguendo src/story/solution.js capitolo per capitolo, più il libro dell'oratorio in primo piano e i vecchietti che a sera sparlano di Andrea. Si gira con gli stessi comandi della demo (mbot studio up, mbot studio session, prepara-ripresa.sh, rec.mjs … --dry, di nuovo prepara-ripresa.sh, rec.mjs …), poi:

python3 video/monta.py ~/Workspaces/qemu/qemu-iso-lab/artifacts/tour/out/partita-completa
  • L'audio: la VM registra solo lo schermo. Il copione annota dentro la pagina ogni cambio di musica e ogni voce che parte (con l'orologio della VM) in video/out/partita-completa-audio.json; monta.py rimonta la colonna sonora dai file del gioco: musica bassa (VOLUME_SOTTO), voci piene. Il fruscio della pagina non c'è.
  • Il ritaglio (TAGLIO in monta.py) va rimisurato quando cambia l'impaginazione: convert -trim su una schermata della prova a vuoto.
  • Per Telegram (50 MB al massimo): due passate x264 -tune animation a 470 kbit/s → circa 45 MB.

Il trailer e la extended (29 ottobre 2026)

Copioni video/trailer.mjs (circa 1 min 30 s) e video/trailer-extended.mjs (circa 3 min 25 s, col giro completo del paese e i giochi giocati da soli). Niente clic: la scena è a tutto schermo, le scritte e gli stacchi al nero sono elementi aggiunti nella pagina, e la musica la sceglie il copione (out/<clip>-audio.json). Nel finale si cercano solo gli occhi gialli: il palio non si mostra (Andrea: si capirebbe dov'è). La extended rifatta il 30 ottobre (circa 4 min 15 s), su richiesta di Andrea: non deve mai far capire che il Regolo è in Fortezza. Quindi niente impronte e niente fessura: «la notte prima del Palio» è la piazza scurita con le finestre accese, il finale ha due occhi gialli nel nero, e il titolo sta sopra il panorama, perché l'illustrazione del titolo ha il Regolo fra le mura. In più ci sono Condor, campana, pesca, basket e pokerino: a ogni fotogramma gioca da solo un giocatore automatico (gioca(…)).

  • Prova locale, senza VM: OUT=/tmp/prova COPIONE=./trailer.mjs node video/prova-locale.mjs (una schermata per battuta, e i tempi).
  • Ripresa: come la partita completa, poi python3 video/monta.py <cartella> --trailer.
  • Il gioco va in pausa da solo dopo un minuto senza tocchi: il copione manda un finto pointermove ogni 10 s.
  • Una camminata lascia game.task in sospeso, e cambiando scena di colpo il gioco non si ferma più: si azzera.
  • Le battute saltate lasciano spezzoni di voce nel registro: prima di montare si tolgono quelli sotto il mezzo secondo (attenzione a «Let it be.», che dura un secondo ed è giusta).