Files
wfrp-4e-de/module.json
T
alzer 1b6fe3cefa Fix: Babele-Registrierung in Hooks.once('babele.init', ...) verschoben (Kernursache fuer 'Items werden nicht uebersetzt')
Laut Babele 2.8+ Developer Migration Guide muessen register()/
registerConverters() vor dem Aufbau von Babeles eigener Runtime-Session
erfolgen, ueber einen dedizierten Hook 'babele.init' - nicht in Foundrys
allgemeinem 'init'-Hook. Registrierungen, die zu spaet erfolgen, werden
seit Babele 2.8+ still verworfen ('late calls are rejected'), sobald die
Runtime-Session installiert ist.

Das erklaert das beobachtete Verhalten vollstaendig: Babele las unsere
Uebersetzungsdateien zwar erfolgreich ein (Konsole zeigte 'successfully
loaded'), aber ohne erfolgreiche Registrierung blieb inspectMapping()
fuer betroffene Packs leer (layers: [], effective.mapping: {}), und
isTranslated()/translate() lieferten false/{} zurueck - obwohl die
Match-Daten (id/name) nachweislich korrekt waren. Journals funktionierten
vermutlich ueber eingebaute Babele-Standardmappings, die keine eigene
Registrierung benoetigen.

Fix: game.babele.register(...) und game.babele.registerConverters(...)
laufen jetzt in einem eigenen Hooks.once('babele.init', ...) statt im
bisherigen Hooks.once('init', ...). Ausserdem den fehlerhaften Typ-Check
'game.babele !== "undefined"' (String-Vergleich statt typeof) korrigiert.

Version auf 8.6.15 angehoben.
2026-07-27 19:35:18 +02:00

142 lines
3.1 KiB
JSON

{
"title": "WFRP4e - Deutsche Übersetzung.",
"description": "Deutsche Übersetzung von Warhammer Fantasy Roleplay 4e.",
"authors": [
{
"name": "LeRatierBretonnien, dene_oma, ailura",
"flags": {}
}
],
"url": "https://gitea.palmenalzer.de/alzer/wfrp-4e-de",
"version": "8.6.15",
"esmodules": [
"modules/babele-register.js",
"modules/addon-register.js",
"modules/import-stat-2.js",
"modules/loadScripts.js"
],
"styles": [
"patch-styles.css"
],
"languages": [
{
"lang": "de",
"name": "Deutsch (German)",
"path": "de.json",
"flags": {}
}
],
"packs": [
{
"label": "Geriche und Gasthäuser",
"type": "RollTable",
"name": "gerichte-gasthaeuser",
"path": "packs/gerichte-gasthaeuser",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "NONE",
"ASSISTANT": "OWNER"
}
},
{
"label": "Dons de Rhya",
"type": "JournalEntry",
"name": "dons-de-rhya",
"path": "packs/dons-de-rhya",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"label": "Aides de Jeu FR",
"type": "JournalEntry",
"name": "aides-de-jeu-fr",
"path": "packs/aides-de-jeu-fr",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"label": "Herbes & Potions",
"type": "Item",
"name": "antidotes-and-remedes",
"path": "packs/antidotes-and-remedes",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "NONE",
"ASSISTANT": "OWNER"
}
},
{
"label": "Tables des Traductions",
"type": "JournalEntry",
"name": "tables-des-traductions",
"path": "packs/tables-des-traductions",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "OBSERVER",
"ASSISTANT": "OWNER"
}
},
{
"label": "Apothicarium",
"type": "JournalEntry",
"name": "apothicarium",
"path": "packs/apothicarium",
"system": "wfrp4e",
"flags": {},
"ownership": {
"PLAYER": "NONE",
"ASSISTANT": "OWNER"
}
}
],
"packFolders": [
{
"name": "Module WFRP4 DE",
"sorting": "m",
"color": "#00435c",
"packs": [
"apothicarium",
"tables-des-traductions",
"antidotes-and-remedes",
"aides-de-jeu-fr",
"dons-de-rhya",
"gerichte-gasthaeuser"
],
"folders": []
}
],
"manifest": "https://gitea.palmenalzer.de/alzer/wfrp-4e-de/raw/branch/main/module.json",
"download": "https://gitea.palmenalzer.de/alzer/wfrp-4e-de/archive/main.zip",
"id": "wh4-de-translation",
"compatibility": {
"minimum": "13",
"verified": "14"
},
"relationships": {
"systems": [
{
"id": "wfrp4e",
"type": "system",
"compatibility": {}
}
],
"requires": [
{
"id": "babele",
"type": "module",
"compatibility": {}
}
]
}
}