Ricette di scena

Descrivi una scena. Importa una mappa.

Una ricetta è un breve file JSON di operazioni di alto livello. L'app lo espande in geometria allineata alla griglia: i pavimenti si piastrellano, i muri si incontrano agli angoli, le aperture stanno sugli spigoli. È così che sono fatte le scene iniziali, ed è abbastanza piccolo perché un assistente IA lo scriva da una frase.

Castle Gate at Dusk: mura di cinta, un corpo di guardia e un cortile
Castle Gate at Dusk è una ricetta.

Come funziona

  1. Chiedi«Un santuario lungo la strada in una pineta al tramonto, con un ladro in attesa sul ciglio.»
  2. L'assistente scrive una ricettaUsando le guide incluse: lo schema delle ricette, una guida alla costruzione con checklist QA e il catalogo degli asset con ogni id e il suo ingombro.
  3. ImportalaFile ▸ Importa JSON scena. I modelli si scaricano dalla libreria; il builder segnala eventuali avvisi.
  4. Arreda e giocaOra è una scena normale: dipingi, trascina, aggiungi luci, premi Play.

Com'è fatta una ricetta

Nove operazioni fanno una mappa giocabile. I rettangoli sono in celle della griglia, gli asset sono id della libreria e il builder pensa al resto: i muri perimetrali hanno angoli corretti, la dispersione evita il santuario, la torcia illumina l'altare.

  • floor riempie rettangoli o segue un percorso, mescolando materiali e ruotando le tessere a caso per un terreno naturale.
  • walls stende una famiglia di muri attorno a un rettangolo con varchi per le porte, o lungo i lati scelti.
  • prop, line, scatter e clutter piazzano oggetti per cella, lungo un percorso o a caso evitando delle zone.
  • light, effect e mini aggiungono torce, fuoco e fumo, e token con PF e anelli.

La cartella ai/ del repository contiene lo schema, la guida alla costruzione e il catalogo completo. Con Claude Code l'intero flusso è un solo comando: /create-scene.

{
  "format": "vtt-recipe",
  "name": "Roadside shrine",
  "grid": { "size": 1 },
  "environment": { "preset": "dusk" },
  "ops": [
    { "op": "floor", "asset": ["realistic-surfaces/grass_floor", "realistic-surfaces/grass_patchy_floor"],
      "rect": [0, 0, 19, 15], "randomYaw": true, "blend": 4 },
    { "op": "floor", "asset": "realistic-surfaces/dirt_floor", "path": [[0, 8], [19, 8]], "width": 2 },
    { "op": "floor", "asset": "realistic-surfaces/flagstone_floor", "rect": [8, 3, 11, 5] },
    { "op": "walls", "asset": "realistic-surfaces/stone_wall", "rect": [8, 3, 11, 5], "sides": "NEW" },
    { "op": "prop", "asset": "realistic-surfaces/stone_altar", "at": [9.5, 3.5] },
    { "op": "scatter", "asset": ["realistic-surfaces/fir_tree", "realistic-surfaces/pine_tree"],
      "area": [0, 0, 19, 6], "count": 14, "avoid": [[7, 2, 12, 6]] },
    { "op": "light", "type": "torch", "at": [9.5, 1.2, 4.5], "intensity": 5, "distance": 6 },
    { "op": "effect", "type": "fire", "at": [9.5, 0.6, 4.5] },
    { "op": "mini", "asset": "characters/rogue", "at": [3, 9], "label": "Pip", "ring": "ally" }
  ]
}

Domande

Con quale IA funziona?

Con qualsiasi assistente che sappia leggere le guide e scrivere JSON. Le guide sono scritte per Claude Code, che ha un comando /create-scene nel repository, ma il formato è semplice.

E se l'IA usa un asset che non esiste?

Il builder valida ogni id rispetto alla libreria e segnala cosa manca. Le scene iniziali sono testate a zero avvisi.

Posso scrivere le ricette a mano?

Sì, ed è più veloce di quanto sembri: il santuario qui sopra è nove righe di intenzione. I test del repository controllano qualsiasi ricetta metti nella cartella degli esempi.

Importa la tua prima ricetta

Registrati, apri il tavolo, File ▸ Importa JSON scena.