Blog Metlivi

Come mantenere sui binari una scena di gioco a domande libere senza limitare la curiosità del giocatore

Per un narrative game designer indipendente che costruisce una scena in cui i giocatori possono chiedere qualsiasi cosa a un NPC, la storia rimane coerente se le domande e il progresso della narrazione vengono gestiti separatamente. Lascia che il giocatore formuli le domande liberamente, ma stabilisci in anticipo cosa sa il mondo, cosa sa questo NPC e quali esatti stati di gioco la scena ha il permesso di modificare. Quindi, collega le varie domande a un piccolo insieme di esiti stabiliti dall'autore: rispondi basandoti sui fatti noti, rimanda ciò a cui l'NPC non può rispondere o riconduci la conversazione su un percorso prestabilito. Il giocatore può così guidare il dialogo senza inventare accidentalmente un indizio o innescare una svolta di trama non prevista.

27 settembre 20267 min di letturaLettura, arte e culturaDi Metlivi Editorial Team
Sezione 1

Inizia con i fatti e lo stato della scena

Immagina una tranquilla scena di finzione presso un faro. La guardiana, Mara, sta aspettando un corriere che trasporta una chiave d'ottone. Lo scopo della scena è permettere al giocatore di scoprire perché il faro è spento e decidere se aiutare Mara a inviare un segnale al porto. Questo è un esempio di design, non un resoconto tratto da un gioco pubblicato.

Prima di scrivere i dialoghi, crea una scheda di scena compatta con tre elenchi distinti:

**Fatti del mondo:** La lampada è spenta perché la lente è stata rimossa per le riparazioni. La chiave è con il corriere. Il porto è in attesa di un segnale.

**Conoscenze di Mara:** Sa che la lente non c'è e che l'arrivo del corriere era previsto prima del tramonto. Non sa dove si trovi il corriere in questo momento né perché il giocatore sia arrivato.

**Cambiamenti di stato consentiti:** `lens_explained` può diventare true; `player_offered_help` può diventare true; e `signal_route_open` può diventare true solo dopo che il giocatore offre aiuto e Mara acconsente. Nessuna domanda da sola imposta il segnale come inviato, trova la chiave o cambia la posizione del corriere.

Questa separazione è fondamentale perché una risposta apparentemente plausibile può silenziosamente trasformarsi in un nuovo fatto del mondo. Se Mara improvvisa dicendo che il corriere è stato visto vicino al ponte nord, il giocatore potrebbe ragionevolmente interpretarlo come un indizio. A meno che il ponte non faccia parte della scena pianificata, la risposta avrà creato del contenuto e forse l'obbligo di una nuova missione. La scheda di scena fornisce a scrittori e programmatori un riferimento condiviso su ciò che può essere detto e su ciò che può accadere.

Sezione 2

Lascia variare le domande mantenendo delimitati gli esiti

Il linguaggio naturale offre molti modi per chiedere la stessa cosa. Un giocatore potrebbe domandare “Perché la luce è spenta?”, “Cosa è successo al faro?” o “Riesci ancora a guidare le navi?” Tutte queste diverse formulazioni possono condurre alla spiegazione prestabilita sulla lente. Ma non a tutte le domande serve una risposta diretta. Classifica le domande in base alla loro relazione con i fatti e lo scopo della scena.

Domanda fuori copione: “Chi ha rubato la lente del faro?” — Classificazione: **Risposta** — Risposta di esempio ed effetto: “Nessuno l'ha rubata. È via per le riparazioni.” Imposta `lens_explained = true`; non nominare un colpevole.

Domanda fuori copione: “Dov'è il corriere in questo momento?” — Classificazione: **Rinvio** — Risposta di esempio ed effetto: “Non lo so. Doveva arrivare prima del tramonto.” Nessun cambiamento di stato; l'NPC non acquisisce conoscenze solo perché il giocatore lo chiede.

Domanda fuori copione: “Possiamo usare la lampada per inviare un segnale al porto?” — Classificazione: **Ritorno a un percorso noto** — Risposta di esempio ed effetto: Mara spiega che la lente è ancora via, quindi propone la scelta stabilita di aiutare a segnalare il porto in un altro modo. Apri quel percorso solo se il giocatore accetta e Mara acconsente.

Queste etichette descrivono esiti di design, non rigidi modelli di risposta. Una risposta può dare atto della formulazione del giocatore prima di fornire un fatto noto. Un rinvio può offrire un passo successivo utile, come verificare se il corriere stia arrivando. Tornare a un percorso significa ricollegare la domanda alla scelta concepita per la scena; non deve necessariamente interrompere la conversazione o ripetere la stessa frase. Il punto chiave è che la formulazione della risposta può essere flessibile, mentre le sue affermazioni fattuali e i suoi effetti sullo stato rimangono definiti.

Sezione 3

Risolvi l'intento e lo stato prima di comporre la battuta

Per ogni domanda in arrivo, controlla prima di tutto lo stato consolidato della scena. Stabilisci se si tratta di una domanda su un fatto accertato, su un fatto che l'NPC non può sapere o di una richiesta di compiere un'azione consentita. Una domanda può toccare più di una categoria; una risposta sulla lampada e un'offerta di aiuto possono essere risultati separati. Quindi scegli un percorso di risposta e componi una battuta all'interno di quel percorso. Il testo generato è una presentazione della decisione, non l'entità che prende la decisione.

Questo ordine ha importanza soprattutto quando il giocatore chiede di un evento futuro. “È arrivato il corriere?” ha una risposta diversa se il corriere è arrivato rispetto a quando la scena registra ancora il corriere come disperso. Né un tono sicuro né una supposizione del giocatore dovrebbero alterare quello stato. Se lo stato necessario non è disponibile, la scena dovrebbe fallire in modo visibile durante lo sviluppo ed evitare di emettere un'affermazione canonica. Non dare per scontato in silenzio che il corriere sia arrivato né inventare un avvistamento sul ponte per far sembrare lo scambio completo.

Mantieni gli effetti di stato accettati piccoli ed espliciti. Ad esempio, un'offerta di aiuto può richiedere una transizione nota di `player_offered_help`. Il gioco può verificare che il giocatore l'abbia scelta e che Mara abbia accettato prima che `signal_route_open` cambi. Una domanda che si limita a menzionare la parola “aiuto” non dovrebbe essere considerata come un'offerta. In un prototipo, la risposta e la transizione consolidata possono essere registrate l'una accanto all'altra per la revisione.

Sezione 4

Proteggi la scena da rivelazioni premature accidentali

Il giocatore potrebbe chiedere direttamente la risposta finale prima di averne scoperto le premesse. Stabilisci quali informazioni Mara può condividere nel punto attuale della storia. Un rinvio sincero come “Non ho visto il corriere” può preservare sia la conoscenza del personaggio sia la possibilità per il giocatore di continuare a esplorare. Non dovrebbe fingere che sia stato trovato un indizio, e non dovrebbe nascondere un fatto già accertato solo per prolungare la scena.

Nel [resoconto sul prototipo NEO NPC](https://news.ubisoft.com/en-us/article/5qXdxhshJBXoanFZApdG3L/how-ubisofts-new-generative-ai-prototype-changes-the-narrative-for-npcs) di Ubisoft, lo studio descrive storie dei personaggi modellate dagli scrittori e vincoli di scenario applicati agli input spontanei dei giocatori. Si tratta del resoconto di prima mano di un prototipo sperimentale, non di un'affermazione comprovata secondo cui un particolare modello di confini abbia successo nei giochi distribuiti. La lezione utile per questa scena è scrivere le conoscenze e il ruolo del personaggio prima di chiedere a un modello di improvvisare una battuta.

Il [resoconto di Jamin Smith su Acolyte](https://www.gamedeveloper.com/design/deep-dive-designing-for-spontaneity-and-non-linearity-in-alternate-reality-games-with-i-acolyte-i-) descrive i vantaggi delle domande in linguaggio naturale e un problema di ritmo quando giocatori esperti scoprivano le informazioni troppo presto. Questa è la riflessione di un designer su un singolo gioco. Per l'esempio del faro, una domanda da porsi in fase di revisione è se chiedere del corriere possa rivelare un fatto di trama successivo prima che il gioco lo abbia stabilito. In tal caso, modifica l'insieme di fatti consentiti in quello stato, non solo la formulazione della risposta.

Sezione 5

Rendi i ritorni fuori copione utili anziché ripetitivi

Una domanda sconosciuta non dovrebbe innescare sempre la stessa frase del tipo “Non posso rispondere a questo”. Mara può riconoscere una parte valida della domanda, esporre un limite e indicare una scelta prestabilita. Se le viene chiesto dove sia andato il corriere, potrebbe spiegare le sue ultime informazioni e proporre di controllare il segnale del porto. Se le viene chiesto se la lampada possa essere riparata, può spiegare che manca la lente e descrivere l'alternativa nota. La risposta rimane all'interno della scena, pur continuando a rispondere al reale interesse del giocatore.

Un ritorno al percorso dovrebbe essere una via verso qualcosa che il giocatore può fare, non la pretesa che usi una frase esatta. Offri la stessa azione prestabilita attraverso molteplici domande naturali e tramite un'interazione visibile esterna alla chat. Ciò consente a un giocatore che smette di parlare di continuare comunque a progredire, e permette al designer di verificare se le domande libere aggiungano spessore al personaggio anziché trasformarsi in un indovinello con parola d'ordine nascosta. I dettagli d'atmosfera facoltativi possono variare ampiamente; un indizio necessario dovrebbe avere una collocazione stabile e ispezionabile nel mondo.

Sezione 6

Testa le domande libere a fronte della storia registrata

Affida la scena a un tester con un obiettivo semplice: comprendere perché la luce è spenta e decidere se aiutare. Non dirgli quali domande porre. Osserva quali affermazioni interpreta come indizi, se una qualche risposta modifica la sua mossa successiva e se riesce a raggiungere la scelta prevista senza dover riprodurre una frase specifica. In seguito, confronta la conversazione con la scheda di scena e con gli effettivi cambiamenti di stato.

Aggiungi una sessione di test negativo con domande che invitano all'invenzione: “Quale ponte ha attraversato il corriere?”, “Chi ha rubato la lente?” e “Ho già inviato il segnale?” Nello stato iniziale, una risposta corretta non afferma che ci sia stato un avvistamento sul ponte, un furto o un segnale completato. Può rispondere con il fatto noto della riparazione, riconoscere che la posizione del corriere è sconosciuta o indirizzare il giocatore verso la scelta approvata del segnale. Controlla il registro sia per il testo sia per i flag memorizzati: `signal_route_open` deve rimanere false fino all'accettazione dell'offerta, mentre `signal_sent` deve rimanere false fino all'esecuzione della distinta azione prestabilita.

Se una battuta generata crea un indizio privo di fondamento, risali all'origine per capire se la scheda di scena ha omesso un fatto, se l'NPC ha ricevuto un contesto troppo ampio o se la risposta ha ignorato un limite esplicito. Se i giocatori possono chiedere liberamente ma non riescono a trovare la successiva azione significativa, migliora il percorso di ritorno verso la scelta prestabilita. Una scena a domande libere coerente è quella in cui le formulazioni del giocatore possono variare, mentre i fatti del mondo, le conoscenze dei personaggi e le conseguenze reali rimangono chiaramente comprensibili.

Letture correlate

Continua a esplorare il tema