Macro (CBS)
Scripting a graffe dentro qualsiasi testo di prompt.
Sintassi
Le macro sono token a doppie graffe espansi al momento della richiesta. Funzionano nei campi dei personaggi, nelle voci dei lorebook, nei preset, nei saluti e nel testo normale della chat, e si annidano.
{{char}} smiles at {{user}}.
{{random::sunny::rainy::foggy}}
{{calc::1+2*3}}Gli argomenti si separano con doppi due punti. Le macro sconosciute si espandono a nulla invece di dare errore, così un refuso non rompe mai una richiesta.
Macro di base
| Macro | Si espande in |
|---|---|
{{char}} | Il nome del personaggio corrente (chat di gruppo: il parlante corrente). |
{{user}} | Il nome della tua persona. |
{{persona}} | La descrizione della tua persona. |
{{description}} | Il campo descrizione del personaggio corrente. |
{{lastmessage}} | Il testo del messaggio più recente. |
{{time}} / {{date}} | Ora / data correnti nella tua lingua e fuso orario. |
Casualità
random sceglie un argomento nuovo a ogni espansione, pick fa una scelta stabile per la conversazione, e roll lancia dadi in notazione d.
{{random::a::b::c}} {{pick::a::b::c}} {{roll::d20}}Tiri e valori casuali hanno un seme per turno: una rigenerazione riusa gli stessi valori, quindi lo swipe non rilancia i dadi.
Variabili
Le variabili di chat persistono per ramo di conversazione; le variabili globali persistono in tutte le chat. Impostale in qualsiasi testo con macro o dagli script trigger.
{{setvar::mood::happy}}
{{getvar::mood}}
{{setglobalvar::visits::1}}La memoria per ramo significa che passare a un altro ramo ripristina il suo stato delle variabili; i rami fratelli non si passano mai valori a vicenda.
Forme a blocco
I blocchi avvolgono contenuto: if rende il corpo solo se la condizione è vera, each cicla sugli array con sostituzione di slot, e when aggiunge rami else per riga.
{{#if {{equal::{{getvar::mood}}::happy}}}}
{{char}} is in a great mood.
{{/if}}
{{#each {{array::red::green::blue}} item}}
Color: {{slot::item}}
{{/each}}pure ed escape proteggono le graffe letterali dall'espansione; ogni tag di chiusura chiude il blocco aperto più interno.
Commenti e letterali
Le macro commento svaniscono prima che il modello le veda, perfette per appunti nei campi della scheda. Usa i blocchi pure quando devi mostrare la sintassi delle macro alla lettera.
{{// note to self, never sent to the model}}
{{#pure}}{{char}} stays literal here{{/pure}}