Przejdź do głównej treści
Fabled

Twórca modułu

Manifest, zasoby i możliwości

Opisz moduł bez podawania kodu pakietu bezpośredniej władzy nad Fabled.

Manifest kanoniczny

Kanoniczna nazwa pliku to fabled.module.json. Interfejs CLI może odczytać starszy plik fabled-module.json tylko wtedy, gdy nie ma pliku kanonicznego; projekt zawierający oba zostaje odrzucony. manifestVersion to obecnie 1, identyfikatory pakietów to publisher-id.module-slug, a wydania używają dokładnych wersji semantycznych.

  • Tożsamość: identyfikator, nazwa, opis, wersja, wydawca i licencja.
  • Kompatybilność: fabledApi plus minimalna, zweryfikowana i opcjonalna maksymalna wersja Fabled; gameSystems może zawierać * lub jawne identyfikatory systemowe.
  • Środowisko wykonawcze: poziom środowiska wykonawczego, cele, zdarzenia aktywacyjne, wkłady, wymagane uprawnienia, relacje i deklaracje prywatności.
  • Stan: dataSchemaVersion z opcjonalnym magazynem, migracjami i umowami serwisowymi.
  • Dane pakietu: każdy zasób deklaruje bezpieczną ścieżkę względną, typ, długość bajtu i skrót SHA-256 małymi literami; locales mapują znaczniki BCP-47 na zasoby locale.

Cele i wkład

ModelBieżące wartości wersji 1
Celekonto, kampania, vtt, postać, kuźnia
Wkładypolecenia, rozmieszczenie poleceń, panele, efekty VTT, pakiety zawartości, obsługa zdarzeń, tematy w czasie rzeczywistym, ustawienia
Miejsca docelowepolecenie globalne, kompozytor czatu, blok/ustawienia kampanii, akcja/arkusz postaci, pasek narzędzi VTT/menu kontekstowe/nakładka wyboru
Poziomy środowiska wykonawczegodeklaratywny, autorytatywnyDeclarative, workerPreview, ServerPreview

Poproś o najmniejszą kopertę możliwości

Uprawnienia to żądania, a nie uprawnienia. Każda wymagana lub opcjonalna funkcja wymaga konkretnego, czytelnego dla człowieka powodu. Fabled sprawdza, czy taka możliwość istnieje, jest dostępna dla wybranego poziomu docelowego i środowiska wykonawczego oraz czy posiada wymagane konto, użytkownika, kampanię lub łączną zgodę.

  • Przeczytaj przykłady: widoczne lub posiadane treści/elementy, podsumowanie kampanii, widoczna scena, kontrolowane lub widoczne tokeny, obecność, widoczny czat i kości, stan modułu i własne ustawienia.
  • Przykłady działań: samodzielne rzuty kostką, posty na czacie użytkowników, kontrolowane wywoływanie frameworka, efekty audio/VTT kampanii, zapisy tokenów/drzwi/mgły/inicjatyw, ustawienia zakresu, pamięć należąca do modułu i publikowanie modułów w czasie rzeczywistym.
  • plik network.fetch.declared istnieje w katalogu, ale jest obecnie niedostępny i nie ma dopuszczonych celów.

Zasoby, ustawienia, pamięć i usługi

Automatyzacja JSON, treść, efekt, ramka, ustawienia regionalne, schemat i zasoby migracji są strukturalnie ograniczone. Obraz binarny, dźwięk, proces roboczy, zestaw WebAssembly i inne zasoby pozostają danymi pakietu, chyba że zostaną zużyte przez sprawdzoną umowę hosta/środowiska wykonawczego.

  • Ustawienia mogą obejmować urządzenie, konto, kampanię lub kampanię użytkownika i wykorzystywać wartości logiczne, całkowite, liczbowe, ciągi znaków lub kolory.
  • Pamięć może obejmować urządzenie, konto, kampanię, kampanię użytkownika, scenę lub jednostkę, żądać do 5 MiB i deklarować usunięcie po odinstalowaniu lub przechowywanie przez 30 dni.
  • Zmiany wersji schematu danych wymagają ciągłych, ograniczonych i idempotentnych zasobów migracji.
  • Dostarczone i wykorzystane usługi deklarują wersje, schematy, operacje, polecenia i wymagane możliwości; konsument nie może pożyczyć władzy dostawcy.