Salta al contenuto principale
Fabled

Creatore di moduli

Manifesto, risorse e capacità

Descrive un modulo senza dare autorità diretta al codice del pacchetto su Fabled.

Il manifesto canonico

Il nome file canonico è fabled.module.json. La CLI può leggere il legacy fabled-module.json solo quando il file canonico è assente; un progetto che li contiene entrambi viene rifiutato. manifestVersion è attualmente 1, gli ID dei pacchetti sono publisher-id.module-slug e le versioni utilizzano versioni semantiche esatte.

  • Identità: ID, nome, descrizione, versione, editore e licenza.
  • Compatibilità: fabledApi più versioni Fabled minima, verificata e massima opzionale; gameSystems può contenere * o ID di sistema espliciti.
  • Runtime: livello runtime, destinazioni, eventi di attivazione, contributi, autorizzazioni richieste, relazioni e dichiarazioni sulla privacy.
  • Stato: dataSchemaVersion con archiviazione, migrazioni e contratti di servizio opzionali.
  • Dati del pacchetto: ogni risorsa dichiara un percorso relativo, un tipo, una lunghezza in byte e un digest SHA-256 minuscolo sicuro; le impostazioni locali mappano i tag BCP-47 sulle risorse locali.

Obiettivi e contributi

ModelloValori v1 attuali
Obiettiviaccount, campagna, vtt, personaggio, forgia
Contributicomandi, posizionamento dei comandi, pannelli, effetti VTT, pacchetti di contenuti, gestori di eventi, argomenti in tempo reale, impostazioni
Spazi di posizionamentocomando globale, compositore chat, pannello/impostazioni campagna, foglio/azione personaggio, barra degli strumenti VTT/menu contestuale/overlay di selezione
Livelli di runtimedichiarativo, autorevoleDichiarativo, lavoratorePreview, serverPreview

Richiedi la capacità più piccola

Le autorizzazioni sono richieste, non autorità. Ogni funzionalità richiesta o opzionale necessita di un motivo specifico leggibile dall'uomo. Fabled verifica che la funzionalità esista, sia disponibile per la destinazione e il livello di runtime selezionati e disponga dell'account, dell'utente, della campagna o del consenso combinato richiesti.

  • Leggi esempi: contenuti/elementi visibili o di proprietà, riepilogo della campagna, scena visibile, token controllati o visibili, presenza, chat e dadi visibili, integrità del modulo e impostazioni personalizzate.
  • Esempi di azioni: tiri di dado personali, post di chat degli utenti, invocazione di framework controllati, effetti audio/VTT della campagna, scritture token/porta/nebbia/iniziativa, impostazioni con ambito, archiviazione di proprietà del modulo e pubblicazione in tempo reale del modulo.
  • network.fetch.declared esiste nel catalogo ma al momento non è disponibile e non ha target ammessi.

Risorse, impostazioni, spazio di archiviazione e servizi

Le risorse di automazione, contenuto, effetto, frame, impostazioni locali, schema e migrazione JSON sono strutturalmente delimitate. Immagine binaria, audio, lavoratore, WebAssembly e altre risorse rimangono dati del pacchetto a meno che non vengano utilizzati da un contratto host/runtime rivisto.

  • Le impostazioni possono avere come ambito dispositivo, account, campagna o utenteCampaign e utilizzare valori booleani, interi, numerici, stringhe o colori.
  • Lo spazio di archiviazione può avere ambito dispositivo, account, campagna, campagna utente, scena o entità, richiede fino a 5 MiB e dichiara l'eliminazione alla disinstallazione o la conservazione per 30 giorni.
  • Le modifiche alla versione dello schema dei dati richiedono asset di migrazione contigui, limitati e idempotenti.
  • I servizi forniti e utilizzati dichiarano versioni, schemi, operazioni, comandi e funzionalità richieste; un consumatore non può prendere in prestito l'autorità di un fornitore.