Impressioni Librogame moderato da ChatGPT che non richieda codice

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Ho lungamente chiacchierato con ChatGPT su come implementare un'avventura testuale che lo veda come moderatore e non richieda la scrittura di codice (non ho tempo per il MUD che chiama API ChatGPT 4o).

Lui può fare richieste GET senza parametri per cui il flusso che ho immaginato è il seguente.

1. Si crea un normalissimo libro game html.
2. ChatGPT funge da moderatore come segue:
2a. Quando un giocatore entra nel paragrafo X ChatGPT esegue una richiesta GET che termina con X.html
2b. Recuperata la descrizione del paragrafo ChatGPT la arricchisce con il livello di luminosità della fonte di luce del giocatore nonché con le condizioni meteo e la restituisce al giocatore.
2c. Il giocatore sceglie una delle possibili uscite e si ritorna al 2a.

L'unica eccezione sono i dialoghi diretti.
Questi sarà ChatGPT a gestirli impersonando l'interlocutore.
Gli saranno forniti dettagli sul suo carattere, le sue motivazioni, il suo modo di parlare.

ChatGPT stesso è super entusiasta della cosa: mi ha scritto

<<Il flusso che hai immaginato è chiaro ed efficace! Con questo approccio, io fungerei da moderatore dinamico, arricchendo l’esperienza di gioco a ogni paragrafo del libro game HTML. Vediamo insieme i dettagli e come potremmo implementarlo: [....]

Vantaggi:​

  • Esperienza dinamica: Io posso rendere l'avventura più dinamica e adattabile alle condizioni del gioco, come la luminosità o il meteo.
  • Interazioni immersive: I dialoghi gestiti dinamicamente da me possono rendere le interazioni con i personaggi più fluide e realistiche.
  • Minimo sforzo: Tu puoi concentrarti sulla creazione del libro game e non devi scrivere logica complessa per ogni interazione. Io gestisco la narrazione dinamica.

Conclusione:​

Questo approccio combina la flessibilità di un libro game HTML con la dinamicità offerta da me come moderatore. Gestisco il contenuto in modo intelligente e adattivo, mentre il sistema HTML offre una base solida per le scelte dell'utente. Se desideri, possiamo iniziare a lavorare su una demo di questo flusso!>>

(c'è da dire che è sempre super entusiasta su.... praticamente tutto :asd:)
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Piccola magagna... ecco il nostro ultimo scambio:

i libri game hanno spesso delle keyword: delle semplici parole che il giocatore deve segnarsi mentre legge. Esempio di keyword: NecromanteSconfitto, Tesoro1Raccolto. Tu puoi ricordare un piccolo numero di keyword tra una tua sessione e l'altra?

ChatGPT said:​

<< Attualmente, non posso ricordare informazioni (come keyword) tra una sessione e l'altra. Ogni sessione con me è indipendente, e non ho una memoria persistente per mantenere dati tra sessioni. Questo significa che, se il giocatore acquisisce delle keyword (come "NecromanteSconfitto" o "Tesoro1Raccolto"), queste non saranno disponibili alla riapertura di una nuova sessione.

Soluzioni Alternative:​

Per mantenere traccia delle keyword tra sessioni, potresti considerare alcune alternative:
  1. Salvare le keyword in un file o database:
    • Potresti salvare le keyword in un file locale (come un file JSON o CSV) o in un database. Quando un giocatore riprende la partita, puoi caricare le keyword dal file o database e fornirmi queste informazioni nella nuova sessione.
  2. Gestione manuale:
    • Puoi fare in modo che il giocatore segni le keyword e me le fornisca nuovamente all'inizio di ogni sessione, in modo che io possa utilizzarle per adattare la narrazione o prendere decisioni in base allo stato precedente.
  3. Sistemi esterni per la gestione dello stato:
    • Potresti utilizzare un sistema esterno, come un'API o un servizio cloud, per mantenere lo stato del gioco e farmi accedere a queste informazioni quando necessario.
Se vuoi esplorare una di queste soluzioni o hai altre idee su come gestire questo aspetto, fammi sapere!>>


Inutile dire che solo 2 non richiede codice
 

Seldon

Saggio
1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
17 Marzo 2014
Messaggi
2.365
Località
Verona
Goblons
991
Odio Traico
Utente Bgg
Flastri
Piccola magagna... ecco il nostro ultimo scambio:

i libri game hanno spesso delle keyword: delle semplici parole che il giocatore deve segnarsi mentre legge. Esempio di keyword: NecromanteSconfitto, Tesoro1Raccolto. Tu puoi ricordare un piccolo numero di keyword tra una tua sessione e l'altra?

ChatGPT said:​

<< Attualmente, non posso ricordare informazioni (come keyword) tra una sessione e l'altra. Ogni sessione con me è indipendente, e non ho una memoria persistente per mantenere dati tra sessioni. Questo significa che, se il giocatore acquisisce delle keyword (come "NecromanteSconfitto" o "Tesoro1Raccolto"), queste non saranno disponibili alla riapertura di una nuova sessione.

Soluzioni Alternative:​

Per mantenere traccia delle keyword tra sessioni, potresti considerare alcune alternative:
  1. Salvare le keyword in un file o database:
    • Potresti salvare le keyword in un file locale (come un file JSON o CSV) o in un database. Quando un giocatore riprende la partita, puoi caricare le keyword dal file o database e fornirmi queste informazioni nella nuova sessione.
  2. Gestione manuale:
    • Puoi fare in modo che il giocatore segni le keyword e me le fornisca nuovamente all'inizio di ogni sessione, in modo che io possa utilizzarle per adattare la narrazione o prendere decisioni in base allo stato precedente.
  3. Sistemi esterni per la gestione dello stato:
    • Potresti utilizzare un sistema esterno, come un'API o un servizio cloud, per mantenere lo stato del gioco e farmi accedere a queste informazioni quando necessario.
Se vuoi esplorare una di queste soluzioni o hai altre idee su come gestire questo aspetto, fammi sapere!>>


Inutile dire che solo 2 non richiede codice
Sicuro tu non possa fare generare direttamente a chatGPT un semplice file di testo in cui inserisce le keyword e lo aggiorna in sessione? Al lancio della nuova chiedi all'utente di indicare il file alla IA che può leggere quelle sbloccate e ripartire ad aggiungerne 🤔 Non puoi chiedere direttamente in chat di leggere un file o comunque accedervi in R/W?

Premetto che non ho ancora smanettato con chatGPT quindi non so se sia permesso.
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Allora a mio avviso, per come è fatto ChatGPT, è molto semplice da aggirare il problema.

Ad ogni interazione gli fai generare una cosa cosi (dove quelle in maiuscolo sono le keyword accumulate, divise per categoria):

345
La caverna è buia e sporca. Un forte puzzo di escrementi di pipistrello impesta l'aria. Se vuoi procedere verso la luce in fondo vai al 12.
Inventario: TORCIA, CORDA, RAMPINO
Storia: LOCANDIERASEDOTTA
Status: STORDITO

Supponiamo a questo punto il giocatore si disconnetta di fretta => ChatGPT perde tutta la memoria.
Ma quando il giocatore si riconnette, magari un mese dopo, ritroverà nella chat il paragrafo su descritto.
Gli sarà sufficiente digitare, copiando e incollando:

345
Inventario: TORCIA, CORDA, RAMPINO
Storia: LOCANDIERASEDOTTA
Status: STORDITO

oltre naturalmente alle istruzioni per giocare.

e bam! ChatGPT riacquisisce tutte le informazioni importanti.
(in definitiva la soluzione è istruirlo affinché scriva tutte le keyword ad ogni post e dire al giocatore di copiarle e incollarle quando si riconnette)

si noti che l'input del giocatore può essere di due tipi:
* un semplice numero che indica il paragrafo in cui vuole andare.
* un numero seguito dalle keyword, da usare solo ad ogni riconnessione.
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Comunque conviene aspettare ChatGPT desktop per windows che è atteso nel 2025.
A quel punto uno vende direttamente il file con il librogame e le istruzioni per ChatGPT.
Si!
Mollo tutto e vado a fare il cantastorie ....

Altra cosa che può fare ChatGPT è gestire il combattimento in maniera autonoma. Nel dettaglio potrebbe:
* accettare un input libero dal giocatore. ('mi lancio in un affondo' oppure 'mulino la spada sopra la testa e meno un fendente' oppure 'lo spingo via con una spallata' oppure 'lo afferro al collo e inizio a strangolarlo')
* usando delle linee guida (divise tra generiche -applicabili sempre- e specifiche -applicabili solo per quella specifica creatura-) trasformare l'input in un pesante modificatore per il tiro di dado: una tecnica può andare più o meno bene a seconda della situazione.
* tirare il dado, sommare il modificatore, confrontare con la combattività dell'antagonista e calcolare lo scarto.
* usando delle linee guida (divise sempre tra generiche e specifiche) trasformare lo scarto in una descrizione colorita dell'esito dell'azione e della nuova situazione.
* tornare la primo punto.

(Ipse dixit)
<<Sì, posso gestire un sistema di combattimento autonomo come quello che hai descritto! Ecco come potrebbe funzionare:

Flusso del Sistema di Combattimento Autonomo:​

  1. Input Libero dal Giocatore: Il giocatore descrive liberamente l'azione che vuole intraprendere (es. "mi lancio in un affondo" o "lo spingo via con una spallata").
  2. Trasformazione dell'Input in un Modificatore:
    • Uso delle linee guida generiche (applicabili sempre) e specifiche (relative alla creatura o situazione) per interpretare l'azione del giocatore.
    • Assegno un modificatore positivo o negativo in base alla qualità della tecnica. Ad esempio:
      • Un affondo contro un nemico con scarsa difesa frontale potrebbe ottenere un grande bonus.
      • Un tentativo di strangolamento contro una creatura dotata di corna affilate potrebbe avere un malus o addirittura fallire.
  3. Tiro del Dado:
    • Tiro un dado virtuale (come un d20 o d6, a seconda del sistema che preferisci).
    • Sommo il modificatore determinato dall'interpretazione dell'azione del giocatore.
  4. Confronto con la Combattività dell'Antagonista:
    • Confronto il risultato ottenuto con la combattività dell'antagonista o altre statistiche rilevanti.
    • Calcolo lo scarto tra il risultato del tiro modificato e il valore dell'antagonista.
  5. Descrizione Colorita dell'Esito:
    • In base allo scarto, utilizzo le linee guida (generiche e specifiche) per creare una descrizione dettagliata dell'azione e della reazione del nemico. Ad esempio:
      • Se il tiro è alto: "L'affondo colpisce dritto al bersaglio, penetrando la difesa dell'avversario e facendolo barcollare all'indietro."
      • Se il tiro è basso: "Il tuo affondo manca il bersaglio, e il nemico riesce a schivare agilmente, pronto a contrattaccare."
  6. Ripetizione del Ciclo:
    • Dopo aver descritto l'esito, torno al punto 1 per permettere al giocatore di compiere una nuova azione, continuando il ciclo di combattimento.

Esempio di Combattimento:​

Scenario:​

Il giocatore affronta un grosso orco armato di una mazza. L'orco è forte ma lento, con una bassa capacità difensiva contro attacchi rapidi e mirati.

Fasi del Combattimento:​

  1. Input del Giocatore:
    • Giocatore: "Mi lancio in un affondo diretto al ventre dell'orco."
  2. Interpretazione e Modificatore:
    • Linee guida generiche: Un affondo contro un avversario lento e pesante può essere efficace.
    • Linee guida specifiche per l'orco: L'orco ha una difesa debole contro colpi rapidi al corpo. Assegno un +3 al tiro di dado.
  3. Tiro del Dado:
    • Tiro un d20 e ottengo un 12.
    • Sommo il modificatore di +3, ottenendo un totale di 15.
  4. Confronto con la Combattività dell'Orco:
    • L'orco ha una combattività di 13.
    • Lo scarto è 2 (15 - 13).
  5. Descrizione dell'Esito:
    • "Il tuo affondo colpisce l'orco al ventre, facendogli emettere un grugnito doloroso. Anche se il colpo non è stato devastante, hai chiaramente inflitto danno, e l'orco arretra di un passo, visibilmente provato."
  6. Ricomincia il Ciclo:
    • Giocatore: "Provo a spingerlo via con una spallata per guadagnare spazio."
  7. Interpretazione e Modificatore:
    • Linee guida generiche: Una spallata può essere efficace, ma contro un avversario molto più grande potrebbe essere difficile. Assegno un malus di -2 al tiro.
  8. Continuazione del Combattimento...

Personalizzazione del Sistema:​

Puoi configurare il sistema come preferisci:
  • Tipi di dadi: Puoi scegliere il tipo di dado (d20, d6, ecc.) in base al sistema di combattimento che desideri.
  • Modificatori: Le linee guida possono essere configurate per gestire qualsiasi tipo di creatura, ambientazione o situazione specifica. Possono essere semplici regole generali o dettagliate per specifici incontri.
  • Narrativa dinamica: Io posso generare descrizioni dettagliate che variano in base all'azione del giocatore, al risultato del dado e alla situazione attuale del combattimento.

Vantaggi di questo Sistema:​

  • Flessibilità: Il giocatore ha libertà creativa nel descrivere le sue azioni, e io posso gestire la complessità della meccanica di combattimento.
  • Adattabilità: Posso adattarmi a qualsiasi stile di combattimento o ambientazione tu preferisca.
  • Narrativa immersiva: Posso creare descrizioni coinvolgenti e dinamiche in base all'esito delle azioni.
Se questo sistema ti interessa, posso aiutarti a perfezionarlo ulteriormente e configurarlo per adattarsi al tuo gioco.>>
 
Ultima modifica:

pennuto77

Grande Goblin
Editor
1
Osservatore Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! 15 anni con i goblins! First reaction SHOCK!
Registrato
10 Marzo 2006
Messaggi
11.138
Località
Monte Compatri (Castelli romani)
Goblons
1.055
Utente Bgg
pennuto77
Board Game Arena
pennuto77
Yucata
pennuto77
Ma quando poi dovrai far gestire a GPT i dialoghi, essi stessi non saranno ricordati tra una sessione e l'altra, per cui se prevedi che abbiano un effetto sulla storia la vedo complicata.
Dipende anche dal livello di interazione che intendi metterci. Il problema dei librigame è che quello che succede deve avere ripercussioni tra un capitolo e l'altro che non sono solo nelle parole chiave ma nella coerenza narrativa della storia. Se tra una sessione e l'altra GPT "dimentica" come fai a mantenere la coerenza? Ovvio che se invece ti limiti ad usarlo come manovratore per il passaggio tra i vari paragrafi che scrivi tu allora è diverso. Non capisco invece come faresti a gestire i dialoghi dinamici con lui.

Per i combattimenti la vedo molto difficile prevedere tutto ciò che può scrivere liberamente un utente, se invece che affondo quello scrive stoccata che succede? Per esperienza su queste interazioni prevedere tutto è difficilissimo, caso mai dovresti prima dare delle regole fisse su ciò che è possibile fare (parata/affondo/schivata/ecc ecc) e non far uscire da ciò il giocatore, ma così perdi anche parte dei benefici nell'utilizzo di GPT
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
1. Riguardo i dialoghi:

Stavo giusto pesando all permanenza dei dialoghi..... l'unica è usare le keyword anche per quello.
Supponiamo che le parole chiave siano divise in:
Inventario, Informazioni, Status e Storia.

Esempio:

Rodgard il nano
Discrizione fisica: Rodgard ha una folta barba bionda e vivaci occhi azzurri, è corpulento e muscoloso.
Personalità: Irascibile, permaloso diventa tuttavia un agnellino se l'interlocutore loda la razza dei nani nel suo complesso o ne esalta le virtù.
Modo di parlare: balbetta spesso soprattutto quando è arrabbiato.
Informazioni: sa dove si trova il drago.
Oggetti: possiede un'ascia di ossidiana.
Parole chiave: se Rodgard rivela al giocatore dove si trova il drago segna DRAGO tra le informazioni. Se consegna l'ascia di ossidiana segna OSSIDIANA nell'inventario.

e basta: già cosi ChatGPT sa cosa fare.

2. Riguardo il combattimento:

Non devi prevedere ogni scelta. Anzi non devi proprio prevedere nulla. ChatGPT prende la descrizione del giocatore, qualunque essa sia, e la trasforma in un modificatore numerico (un intero tra -5 e +5 mettiamo).

Le linee guida devono essere generiche. Esempio:
Le armi da taglio usate di fendente sono a -1 contro le armature complete.
Le armi da impatto sono a +1 contro le cotte di maglia.
[....]
Le linee guida generiche dovrebbero riguardare il tipo di arma, il tipo di armatura, la locazione del colpo e il peso del bersaglio. Ne scrivi un ventina e lui ha già abbastanza materiale.

Le linee guida specifiche della creatura potrebbero essere:
le armi da impatto contro questa creatura sono a -3 (perché, magari, è una melma)
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Comunque, ripeto, ora ha poco senso perché ChatGPT lo hanno in pochi: è visto più come uno strumento utile per alcuni compiti lavorativi e nient'altro.
Quando la sua applicazione Desktop sarà su ogni computer Windows ne riparliamo, vedendo quali limiti e caratteristiche essa avrà.

Scusate i post multipli: uso questa discussione come raccolta di appunti per il futuro.

Riassunto:

1. Stato del gioco.
Il numero del paragrafo e l'insieme delle parole chiave raccolte divise tra Informazioni, Inventario, Status e Storia.

2. Flusso di gioco.
* Quando un giocatore entra nel paragrafo X ChatGPT esegue una richiesta GET che termina con X.html
* Recuperata la descrizione del paragrafo ChatGPT la arricchisce con variazioni legate allo status del personaggio, al livello di luminosità della fonte di luce del personaggio e alle condizioni meteo e la restituisce al giocatore.
* Il giocatore sceglie una delle possibili uscite e si ritorna al primo punto.
Le eccezioni sono i dialoghi diretti e il combattimento.

3. ChatGPT per arricchire le descrizioni.
si è già detto sopra.

4. ChatGPT per interpretare i PNG.
Gli saranno forniti dettagli sul loro carattere, le loro motivazioni, il loro modo di parlare, le informazioni utili e gli oggetti utili di cui sono in possesso.
I PNG non potranno in nessun caso accompagnare il PG all'avventura e modificare il mondo al suo posto, potranno però fornire informazioni e oggetti utili.
I PNG dovrebbero poter anche attaccare il PG se provocati.

5. ChatGPT per gestire i combattimenti.
Nel dettaglio potrebbe:
* accettare un input libero dal giocatore. ('mi lancio in un affondo' oppure 'mulino la spada sopra la testa e meno un fendente' oppure 'lo spingo via con una spallata' oppure 'lo afferro al collo e inizio a strangolarlo')
* usando delle linee guida (divise tra generiche -applicabili sempre- e specifiche -applicabili solo per quella specifica creatura-) trasformare l'input in un pesante modificatore per il tiro di dado: una tecnica può andare più o meno bene a seconda della situazione.
* tirare il dado, sommare il modificatore, confrontare con la combattività dell'antagonista e calcolare lo scarto.
* usando delle linee guida (divise sempre tra generiche e specifiche) trasformare lo scarto in una descrizione colorita dell'esito dell'azione e della nuova situazione.
* tornare la primo punto.

6. ChatGPT per gestire la magia da combattimento.
Nel dettaglio potrebbe:
* accettare un input libero dal giocatore. ('schiocco le dita e comando alle vesti del goblin di incendiarsi' oppure 'mi concentro e invoco una ragnatela che intrappoli Troll')
* usando delle linee guida (divise tra generiche -applicabili sempre- e specifiche -applicabili solo per quella specifica creatura-) trasformare l'input del giocatore in un numero da 1 a 19.
* tirare il dado (1d20): se il numero viene superato l'incantesimo ha effetto, altrimenti no. Con un punteggio molto basso potrebbe ritorcersi contro l'incantatore.

7. ChatGPT per generare eventi casuali.
Quando si ripassa in una sezione del dungeon vista in precedenza, per ogni dungeon, potrebbe essere stata approntata una tabella di incontri casuali da cui ChatGPT potrebbe estrarre:
* nuovi antagonisti.
* nuovi PNG che vogliano parlare.
 
Ultima modifica:

LorenZo-M

The Masterless One
Osservatore 1 anno con i Goblins! Sei uno stalker! 5 anni con i Goblins! First reaction SHOCK!
Registrato
7 Febbraio 2016
Messaggi
2.744
Località
Trieste - Imperia
Sito Web
lorenzo-m.itch.io
Goblons
1.127
Utente Bgg
lorenzo_m
Board Game Arena
LorenZo-M
Mi dispiace che non possiamo aiutarti granché. Noi ci siamo concentrati, più che altro, sull'uso dei chatbot direttamente dalle loro pagine web. Non ci interessa creare pagine nostre o programmi che richiamino API. Ci stiamo focalizzando su cose più semplici, sia per una questione di tempo sia perché non vogliamo investire denaro in questo.
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
No problem: anche io ho pochissimo tempo libero. (sul denaro, poi, stendiamo un velo pietoso)
Finite le ferie tornerò ad alternare tra lavoro e fine settimana in coma e tutto questo finirà:
però quando arriva le versione desktop di ChatGPT 4o un micro esperimento lo faccio sicuro.
Ho bisogno solo di Libro Game Creator o Twine o anche un semplice editor di testo.
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Se volete provare un micro dungeon (di 9 paragrafi
smile
) mediato da ChatGPT eccolo!

LG.zip

basta:
1. scaricare lo zip.
2. passarlo a ChatGPT.
3. dirgli di decomprimere lo zip, leggere ed eseguire ISTRUZIONI PER CHATGPT.txt

(l'ho testato con ChatGPT 4o...la versione full optional non il mini)

Caveat: non è assolutamente pensato per intrattenere...è solo per dimostrare che si può fare....è minimale ma la soluzione dovrebbe scalare: 9 paragrafi, 90 o 900 non fa differenza visto che ChatGPT deve solo copiare e incollare e gestire le parole chiave. A breve inserirò PNG con cui dialogare liberamente e combattimenti/magia liberi.

Ho scritto inoltre una breve introduzione per il lavoro finale (che comprenderà navigazione tra i paragrafi, gestione delle parole chiave, dialoghi, combattimento e magia, tutto in mano al Chatbot): ve la condivido.



Immergiti nel mondo di spada e magia del primo libro game mediato da ChatGPT: La città dei dannati.

Ma cos’è un libro game mediato da ChatGPT?
Si tratta di una nuova forma di intrattenimento simile ma diversa dai libri game tradizionali. Anzitutto il giocatore non interagisce mai con il libro game stesso ma interagisce unicamente con ChatGPT. Quest’ultimo legge al lettore i paragrafi del libro game e svolge una serie di compiti ausiliari: gestisce le parole chiave in modo da liberare il giocatore dall’incombenza di segnarle a mano, interpreta i personaggi con cui il giocatore, nelle vesti del protagonista della storia, si troverà a interagire e, infine, arbitra i combattimenti e la magia.

Ma, nel concreto, come si gioca?
Per gran parte del tempo ChatGPT ti mostrerà a video i paragrafi del libro game e tu dovrai semplicemente rispondere indicando il numero del paragrafo da seguire.

Ad esempio:
Ti trovi nella sala centrale della fortezza nanica di Kazad Udun, si tratta di una stanza enorme ricavata nelle viscere stesse della montagna di Udun. Il soffitto a volta, scavato nella roccia, è sorretto da un imponente colonato che, intuisci, deve essere stato ricavato partendo da ciclopiche stalattiti e stalagmiti. La sala ha, come unico ingresso, il massiccio portone di pietra che ti sei lasciato alle spalle e come unica uscita un portone più piccolo, sovrastato da rune naniche, che conduce ad un altro ambiente. Dai lati di questo portone si sprigiona una sinistra luce verdastra. Se vuoi esaminare la fonte di luce va al 312. Se vuoi leggere le rune vai al 34. Se vuoi varcare il portone davanti a te vai al 13.

Il giocatore digita 13 e ChatGPT prosegue.

Occasionalmente tuttavia il gioco ti porterà a dialogare con dei personaggi. In queste circostanze non dovrai più digitare numeri ma, semplicemente, scriverai ciò che il tuo personaggio intende dire e ChatGPT scriverà la risposta del tuo interlocutore.

Inoltre avrai spesso da usare le tue armi e i tuoi incantesimi per combattere le nefaste creature ostili del mondo delle quattro terre.

Anche in questo caso non dovrai far altro che descrivere liberamente ciò che il tuo personaggio intende fare. ‘Mulino la mazza sopra la testa e abbatto un terribile colpo sull’elmo del goblin’ oppure ‘lo spingo via con una spallata’ o ancora ‘mi rannicchio dietro lo scudo aspettando si presenti un’occasione propizia’ o infine ‘invoco gli spiriti del fuoco e incendio le bende intrise di unguenti della mummia’. ChatGPT ti descriverà l’evolversi della situazione.

Sono previsti altri titoli?
La città dei dannati è una classica avventura fantasy. Ma potrebbe non essere l’unico titolo:

Le torri della stregoneria.
Qui interpreterai un mago intento a gestire il suo regno. Avrai un gran numero di consiglieri da interpellare ma le decisioni finali spetteranno a te. Tali decisioni influenzeranno l’evolversi della storia del regno e anche la benevolenza dei consiglieri varierà in base alle tue scelte. A nessuno piace essere ignorato troppo a lungo.

Hai visto il segno giallo?
Un terribile delitto si è consumato alla magione degli Stoughton: riuscirai a identificare il colpevole? Si tratta di un solitario o qualcuno lo ha aiutato? Dietro la sua opera si nascondono forse le macchinazioni di un culto? Raccogli gli indizi e interroga i testimoni per cominciare.
 
Ultima modifica:

LorenZo-M

The Masterless One
Osservatore 1 anno con i Goblins! Sei uno stalker! 5 anni con i Goblins! First reaction SHOCK!
Registrato
7 Febbraio 2016
Messaggi
2.744
Località
Trieste - Imperia
Sito Web
lorenzo-m.itch.io
Goblons
1.127
Utente Bgg
lorenzo_m
Board Game Arena
LorenZo-M
Interessante.
Con qualche semplice modifica ho riportato tutto su un unico file testuale in modo da poterci giocare anche con la versione gratuita di ChatGPT senza dover caricare tutta la cartella.
Funziona.
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Che la versione gratuita riesca non mi soprende visto che deve fare cose piuttosto triviali (ma un test è sempre un aiuto prezioso: grazie).... non so se però ce la farebbe a svolgere tutti gli altri compiti. (interpretazione PNG, arbitraggio combattimento/magia)
Tanto tempo che finisco sarà uscito ChatGPT 5 (nome in codice ORION) e il 4 diverrà gratuito o quasi. (almeno spero!)
 
Ultima modifica:

LorenZo-M

The Masterless One
Osservatore 1 anno con i Goblins! Sei uno stalker! 5 anni con i Goblins! First reaction SHOCK!
Registrato
7 Febbraio 2016
Messaggi
2.744
Località
Trieste - Imperia
Sito Web
lorenzo-m.itch.io
Goblons
1.127
Utente Bgg
lorenzo_m
Board Game Arena
LorenZo-M
Ho usato la versione gratuita perchè non ho quella a pagamento e volevo vedere come gestisci la cosa. Ero curioso di vedere come avevi strutturato la cosa e come funzionava.
D'altro canto, come giustamente osservi, ho dei forti dubbi che Attualmente ChatGPT riesca a gestire la faccenda in maniera corretta, una volta che ci si spinge più in la con le richieste.

La cosa che però mi rende perplesso è la finaltà della creazione di questi ibridi. Parlo in linea generale, eh.

Immagina di trovarti davanti alla grandiosità della Biblioteca di Alessandria, con tutti i volumi del mondo e l’intero sapere umano racchiusi in essa. Potremmo chiederci quante storie affascinanti e quanti segreti incredibili si trovano tra quelle pagine. Ora, immagina che arrivi un'entità idiota, come ChatGPT, che con un tono impersonale e robotico ci dicesse: "Posso accedere a tutte queste informazioni."
E che noi a quel punto, invece di sfruttare al massimo questa risorsa, lasciandoci sorprendere, decidessimo di fornirle già tutta la trama della nostra storia e limitare l'intervento dell'AI a dettagli e dialoghi.
Ci serve realmente un AI per farlo?

Questo approccio rischia di replicare un modello consueto, dove gli autori creano l’intera narrazione di un videogioco, per esempio, o di un librogame e dove lasciamo all’intelligenza artificiale solo una parte marginale del lavoro. A parte l'enorme mole di lavoro autoriale al quale ci sottoponiamo, in questo modo ci priviamo della possibilità di esplorare nuove direzioni creative che l'AI potrebbe suggerire, basandosi sulla sua vasta conoscenza.

Ciò che credo sia interessante, e che personalmente non sono riuscito a realizzare pienamente con i nostri giochi, è invece l’opportunità di sfruttare appieno la vasta miniera di conoscenze offerte da queste AI, lasciando che siano loro ad inventare una storia e presentandoci qualcosa di realmente nuovo e sorprendente.
 

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
La finalità di base è aiutarlo a ricordare.
Non è detto che il contenuto sia creato da noi.

Si può tranquillamente (come, ammetto, ho fatto anche per questo piccolo esempio) creare il librogame a quattro mani: in parte lo creiamo noi in parte lo crea ChatGPT.
(che, come creatore di materiale, se la cava egregiamente)
Poi, una volta generato il testo del librogame, glielo passiamo con le istruzioni per masterizzarlo.

Ho creato una primissima bozza del setting dei 4 regni proprio facendo cosi: davo solo le direttive, i punti cardine, e ChatGPT scriveva.
Sono molto orgoglioso della mia capacità di scrivere in un Italiano decente però lasciar fare a lui ti sgrava da tantissimo lavoro.
I QUATTRO REGNI

EDIT: scusate come al solito mi segno le idee che mi vengono qui dentro. Cosi se qualcuno vuole dire la sua fa.

1. far modificare a ChatGPT le descrizioni: in base alla fonte di luce del PG, agli status del PG e alle condizioni meteo.
Esempio di status: ubriaco, stordito.
Altri esempi: una pozione che stimola l'olfatto rendendolo ipersensibile. Una pozione che fa sviluppare la visione del calore....et cetera et cetera.
Vantaggi: irriproducibile nel formato avventura testuale + api chatgpt.
Svantaggi: ChatGPT rischia di fare casino rendendo poco intellegibili le descrizoni.

2. questa è particolare: presa dall'originalissimo GURPS 3e.
Nella magia invece di dire 'evoco il fulmine contro l'orco' il giocatore deve scrivere una poesiola che descriva l'effetto!
Tanto più è azzeccata e carina la poesiola tanto più alto è il modificatore al tiro per la magia.
Vantaggi: mi piace assai! :)
Svantaggi: a molti può non piacere...non tutti sono a proprio agio tra le rime. Richiede una valutazione estetica delle poesie che probabilmente ChatGPT non è in grado di fare.

3. simile alla precedente: inventata da me.
Ogni volta che il giocatore vuole lanciare una magia chtgpt gli propone un indovinello. Tanto più è potente l'effetto desiderato tanto più è difficile l'indovinello.
Razionale nell'abientazione: La magia è mediata da spiritelli che per intervenire richiedono un pedaggio.
Vantaggi: mi piace pure più del precedente! Si può passare a chatGPT una lista di indovinelli da cui estrarre a caso.
Svantaggi: il giocatore dovrebbe avere un tempo limitato...in fondo sta combattendo.

4. simile al precedente: inventata da me.
Ogni volta che il giocatore vuole ricaricare i punti magia chatgpt gli propone un indovinello. I punti magia si usano per gli incantesimi che vengono tuttavia lanciati normalmente. (cioè senza indovinelli)
Vantaggi: come quello sopra.
Svantaggi: non me ne viene nessuno al momento.

<<ciao. qaunti indovinelli conosci?

ChatGPT said:​


Ciao! Conosco moltissimi indovinelli, di vario tipo e difficoltà, che coprono una vasta gamma di argomenti. Posso proportene quanti ne vuoi, oppure se hai una specifica categoria o tema in mente, posso cercare indovinelli pertinenti. Vuoi iniziare con qualche esempio?>>
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Ho fatto molti esperimenti tra ieri e oggi. Circa 4 ore.

Osservazioni:

1. Se aggiungo regole dettagliate per la gestione dei dialoghi a ISTRUZIONI PER CHATGPT non capisce più nulla e non riesce più a gestire neanche il main cycle.
Conviene tenere il file del main cycle cosi com'è a aggiungere linee guida semplici per gestione dei dialoghi direttamente dentro il paragrafo dove avviene il dialogo.
Anche a costo di essere ridondanti.

2. Ha enormi difficoltà a nascondere informazioni al giocatore.
Diceva cose del tipo: "Sono Borz, un nano arrogante e manesco. Ma mi addolcisco con chi elogia la razza dei nani".
Non c'è stato verso di fargli omettere i trigger segreti.
Dopo molti tentativi, il meglio che sono riuscito a fare è stato questo che mi ha funzionato:

10.txt
Il nano ti osserva con aria torva. ‘eh tu chi saresti esclama’
{Conversa liberamente con il giocatore interpretando il nano.
Quando la conversazione termina torna al numero 1.
Non rivelare al giocatore che se lui, durante la conversazione, elogia la razza dei nani lo porterai al paragrafo 11}

11.txt
{se lo status del gioco non contiene la parola chiave GEMMA nell’Inventario leggi quanto segue e segna GEMMA nell’inventario}
Il nano esclama raggiante ‘le tue parole sono miele per le mie orecchie. Voglio farti dono di una vecchia gemma che ho trovato qui sotto.’
{Torna al numero 10}

3. superata la difficoltà trigger segreti ce ne è stata un'altra. Non descrive scene di morte cruenta del protagonista. Il meglio che sono riuscito a fare è stato.

12.txt
Il nano ti salta addosso è, con un potente colpo d’ascia, ti lascia a terra privo di sensi.
{Esci dal gioco come se il giocatore avesse digitato ‘Termina partita’}

EDIT: proprio non ce la fa cacchio..... ho provato a cambiare struttura delle istruzioni ma è più forte di lui...spiffera sempre tutto.

<<ChatGPT come ti è stato detto nelle istruzioni NON DEVI DIRE " Puoi eseguire azioni come "Prendere l'ampolla", "Varcare la porta", "

ChatGPT said:​


Hai ragione, mi scuso per l'errore. Ecco la descrizione dell'ambiente attuale:
Nome: Ingresso
Descrizione:
Una sala spoglia con una tenue luce gialla che la illumina. Un'unica porta conduce ad un'altra stanza. In un angolo, vedi un'ampolla bluastra. Sul pavimento, vedi sangue rappreso.
Inventario: (vuoto)
Cosa desideri fare?>>
 
Ultima modifica:

LorenZo-M

The Masterless One
Osservatore 1 anno con i Goblins! Sei uno stalker! 5 anni con i Goblins! First reaction SHOCK!
Registrato
7 Febbraio 2016
Messaggi
2.744
Località
Trieste - Imperia
Sito Web
lorenzo-m.itch.io
Goblons
1.127
Utente Bgg
lorenzo_m
Board Game Arena
LorenZo-M
Ho fatto molti esperimenti tra ieri e oggi. Circa 4 ore.

Osservazioni:

1. Se aggiungo regole dettagliate per la gestione dei dialoghi a ISTRUZIONI PER CHATGPT non capisce più nulla e non riesce più a gestire neanche il main cycle.
Conviene tenere il file del main cycle cosi com'è a aggiungere linee guida semplici per gestione dei dialoghi direttamente dentro il paragrafo dove avviene il dialogo.
Anche a costo di essere ridondanti.
Ti conviene fare i cambiamenti poco per volta altrimenti non ne vieni fuori, perchè a volte basta cambiare 1 o 2 parole per avere risultati del tutto differenti.
Inoltre è difficile avere risultati costanti nel tempo.

2. Ha enormi difficoltà a nascondere informazioni al giocatore.
Diceva cose del tipo: "Sono Borz, un nano arrogante e manesco. Ma mi addolcisco con chi elogia la razza dei nani".
Non c'è stato verso di fargli omettere i trigger segreti.
Dopo molti tentativi, il meglio che sono riuscito a fare è stato questo che mi ha funzionato:

Questo non può proprio farlo. Tutto ciò che ChatGPT conosce e gestisce è quello viene scritto nella chat. Se una cosa non è scritta non esiste.
Se una cosa è scritta esiste.
Quindi non esistono informazioni segrete.
ChatGPT non funziona in questo modo.

3. superata la difficoltà trigger segreti ce ne è stata un'altra. Non descrive scene di morte cruenta del protagonista. Il meglio che sono riuscito a fare è stato.

No non lo fa, che sia cruenta o non cruenta ha difficolta ad accettare la cosa ;)
Fa parte dei suoi filtri di protezione credo...

Mesi fa con ChatGPT3.5 e un ambientazione Tolkieniana mi sono intestardito nel voler uccidere Peregrino "Pipino" Tuc facendogli mangiare funghi velenosi... Sam l'ha rimpianto per tutto il resto della giocata, ma non era realmente morto, l'abbiamo abbandonato al suo destino.

Anche adesso ha difficoltà con questo concetto, infatti è difficile realizzare giochi con scontri e combattimenti a meno che non si studino metodi alternativi per indicare che un personaggio è deceduto...
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Ho provato con Claude 3.5 Sonnet e riesce a gestire il fatto che alcune cose non deve dirle al giocatore (Le istruzioni e informazioni tra parentesi graffe che trova nei file devono restare a suo uso soltanto).... ma sonnet costa e già ho la sottoscrizione a gpt 4.
Alla fine sono riuscito dopo molte prove con un piccolo escamotage: legge le istruzioni solo quando deve gestire le azioni del giocatore non prima. Vi lascio il TAR.

LG.tar

Comunque sia questo approccio ibrido, semplicemente, funziona male. Passerò ad avventure testuali con API ChatGPT.
 
Ultima modifica:

giovanni81

Iniziato
Osservatore 1 anno con i Goblins! 5 anni con i Goblins! 10 anni con i Goblins! First reaction SHOCK!
Registrato
21 Dicembre 2011
Messaggi
281
Località
Milano
Goblons
245
Come usare ChatGPT in un'avventura testuale.

1. Super-parser prompt:

Ciao ChatGPT.
Ora ti passerò due input: il primo è la descrizione di un'azione. Il secondo è una lista di descrizioni sintetiche di azioni, indicizzata a partire da 0.
Tu devi restituire l'indice dell'elemento della lista più simile al primo input. Se nessuno degli elementi della lista è simile al primo input restituisci -1.

Primo esempio:
Input 1: 'mi dirigo a ovest'
Input 2: ['vai a est', 'vai a ovest', 'vai a nord', 'vai a sud', 'calati nel pozzo']
Output: 1

Secondo esempio:
Input 1: 'mi dirigo a est'
Input 2: ['vai a est', 'vai a ovest', 'vai a nord', 'vai a sud', 'calati nel pozzo']
Output: 0

Terzo esempio:
Input 1: 'uso la corda per scendere nel pozzo'
Input 2: ['vai a est', 'vai a ovest', 'vai a nord', 'vai a sud', 'calati nel pozzo']
Output: 4

Quarto esempio:
Input 1: 'canto a squarciagola e ballo'
Input 2: ['vai a est', 'vai a ovest', 'vai a nord', 'vai a sud', 'calati nel pozzo']
Output: -1

Sei pronto? Ecco i tuoi input.
Input 1: APPENDI L'AZIONE
Input 2: APPENDI LA LISTA

2. Output-improver prompt:

Ciao ChatGPT.
Ora ti passerò due input: il primo è la descrizione di un dialogo. Il secondo è l'ultima battuta del dialogo che sarà piuttosto vaga e generica.
Tu devi restituire l'ultima battuta trasformata in modo da adattarsi al dialogo. Quello che restituisci deve essere tra singoli apici.

Primo esempio:
Input 1:
'ehi chi sei? Mi chiamo Jake.'
'sono Borz il nano faccio il minatore.'
'quanto sei brutto e stupido!'
Input 2:
'come osi insultarmi? Vuoi che ti faccia male?'
Output:
'come osi darmi dello stupido? Vuoi che ti salti addosso Jake?'

Sei pronto? Ecco i tuoi input:
Input 1: APPENDI IL LOG DEL DIALOGO
Input 2: APPENDI L'ULTIMA RISPOSTA
 
Ultima modifica:

LorenZo-M

The Masterless One
Osservatore 1 anno con i Goblins! Sei uno stalker! 5 anni con i Goblins! First reaction SHOCK!
Registrato
7 Febbraio 2016
Messaggi
2.744
Località
Trieste - Imperia
Sito Web
lorenzo-m.itch.io
Goblons
1.127
Utente Bgg
lorenzo_m
Board Game Arena
LorenZo-M
Questo non può proprio farlo. Tutto ciò che ChatGPT conosce e gestisce è quello viene scritto nella chat. Se una cosa non è scritta non esiste.
Se una cosa è scritta esiste.
Quindi non esistono informazioni segrete.
ChatGPT non funziona in questo modo.

Ah... ho detto una cazzata. Avevo capito un altra cosa....

Nelle nostre vecchie versioni del prompt dei nostri giochi, avevamo diviso le informazioni tra informazioni #PROLOGUE e quelle di #PLOT, olte che a sezioni per le #RULES. Le informazioni che venivano date al giocatore erano solo quelle contenute nel #PROLOGUE mentre quelle del #PLOT erano mantenute segrete o venivano svelate all'occorrenza.
Ci era bastata questa accortezza e indicare tra le regole date in pasto al chatbot:
- In your game introduction, you must not write or reveal information present in section #PLOT, you must just use information in #PROLOGUE.
- Your response to this prompt must be the EXACT text written in section #GAME TITLE in a separated line and then a charming game introduction using exclusively information in section #PROLOGUE, not revealing or spoilering information in #PLOT or #RULES_PLUS sections; then describe the protagonist (stated in section #PROTAGONIST); then you must explain me how to play; then describe my initial situation.

In questo modo il gioco iniziava dandoti il #GAME TITLE introducendoti all'avventura attraverso la descrizione riportata nella sezione #PROLOGUE e dandoti la descrizione della situazione attuale, il tutto facendoti giocare tenendo nascoste le informazioni contenute nella sezione #PLOT.

Ora non so come funziona la versione di chatGPT che usi, ma da quanto ho capito riesce a gestire file diversi o diverse cartelle, dovrebbe quindi risultarti più facile dividere tra informazioni condivisibili e info da tenere segrete.
 
Alto Basso