Zum Hauptinhalt springen
Fabled

Modulersteller

Manifest, Vermögenswerte und Fähigkeiten

Beschreiben Sie ein Modul, ohne dem Paketcode direkte Autorität über Fabled zu erteilen.

Das kanonische Manifest

Der kanonische Dateiname ist fabled.module.json. Die CLI kann die alte Datei „fabled-module.json“ nur lesen, wenn die kanonische Datei fehlt. ein Projekt, das beides enthält, wird abgelehnt. manifestVersion ist derzeit 1, Paket-IDs lauten „publisher-id.module-slug“ und Releases verwenden exakte semantische Versionen.

  • Identität: ID, Name, Beschreibung, Version, Herausgeber und Lizenz.
  • Kompatibilität: fabledApi plus minimale, verifizierte und optionale maximale Fabled-Versionen; gameSystems kann * oder explizite System-IDs enthalten.
  • Laufzeit: Laufzeitebene, Ziele, Aktivierungsereignisse, Beiträge, angeforderte Berechtigungen, Beziehungen und Datenschutzerklärungen.
  • Status: dataSchemaVersion mit optionalem Speicher, Migrationen und Serviceverträgen.
  • Paketdaten: Jedes Asset deklariert einen sicheren relativen Pfad, Typ, Bytelänge und einen SHA-256-Digest in Kleinbuchstaben; Gebietsschemas ordnen BCP-47-Tags Gebietsschema-Assets zu.

Ziele und Beiträge

ModellAktuelle v1-Werte
ZieleKonto, Kampagne, VTT, Charakter, Schmiede
BeiträgeBefehle, Befehlsplatzierungen, Bedienfelder, VTT-Effekte, Inhaltspakete, Ereignishandler, Echtzeitthemen, Einstellungen
Platzierungsplätzeglobaler Befehl, Chat-Composer, Kampagnenblatt/-einstellungen, Charakteraktion/-blatt, VTT-Symbolleiste/Kontextmenü/Auswahl-Overlay
Laufzeitebenendeklarativ, autorisierendDeklarativ, workerPreview, serverPreview

Fordern Sie den kleinsten Leistungsumfang an

Berechtigungen sind Anfragen, keine Autorität. Für jede erforderliche oder optionale Funktion ist ein spezifischer, für Menschen lesbarer Grund erforderlich. Fabled überprüft, ob die Funktion vorhanden ist, für die ausgewählte Ziel- und Laufzeitebene verfügbar ist und über die erforderliche Konto-, Benutzer-, Kampagnen- oder kombinierte Zustimmung verfügt.

  • Beispiele lesen: sichtbare oder eigene Inhalte/Elemente, Kampagnenzusammenfassung, sichtbare Szene, kontrollierte oder sichtbare Token, Präsenz, sichtbarer Chat und Würfel, Modulzustand und eigene Einstellungen.
  • Aktionsbeispiele: Selbstwürfelwürfe, Benutzer-Chat-Beiträge, kontrollierter Framework-Aufruf, Kampagnen-Audio/VTT-Effekte, Token-/Tür-/Nebel-/Initiative-Schreibvorgänge, bereichsbezogene Einstellungen, moduleigener Speicher und Modul-Echtzeitveröffentlichung.
  • network.fetch.declared existiert im Katalog, ist aber derzeit nicht verfügbar und hat keine zugelassenen Ziele.

Assets, Einstellungen, Speicher und Dienste

JSON-Automatisierung, Inhalt, Effekt, Frame, Gebietsschema, Schema und Migrationsressourcen sind strukturell begrenzt. Binärbild, Audio, Worker, WebAssembly und andere Assets bleiben Paketdaten, es sei denn, ein überprüfter Host-/Laufzeitvertrag verbraucht sie.

  • Einstellungen können geräte-, konto-, kampagnen- oder benutzerkampagnenbezogen sein und boolesche, ganzzahlige, numerische, Zeichenfolgen- oder Farbwerte verwenden.
  • Der Speicher kann geräte-, konto-, kampagnen-, benutzer-, szenen- oder entitätsbezogen sein, fordert bis zu 5 MiB an und deklariert „Löschen bei Deinstallation“ oder 30-tägige Aufbewahrung.
  • Änderungen der Datenschemaversion erfordern zusammenhängende, begrenzte, idempotente Migrationsressourcen.
  • Bereitgestellte und genutzte Dienste deklarieren Versionen, Schemata, Vorgänge, Befehle und erforderliche Funktionen; Ein Verbraucher kann sich die Autorität eines Anbieters nicht leihen.