Compare commits

..
13 Commits
Author SHA1 Message Date
uberwald 16b02a3221 Passe sur tout les éléments de traducton
Release Creation / build (release) Successful in 1m7s
2026-08-04 11:00:18 +02:00
uberwald 9597c2abc1 fix(i18n): complète les clés manquantes dans les fichiers de langue
- Ajoute les clés BOL.itemProperty.magicalProperties et BOL.ui.heropoints
  (manquantes dans toutes les langues, dont le FR)
- Traduit et ajoute 27 clés EN, 35 clés ES et 100 clés DE manquantes
  (chat, itemProperty, ui, featureSubtypes) en s'appuyant sur le FR
- Résultat : 0 clé référencée par le code/templates manquante dans les
  4 fichiers de langue (fr/en/es/de)
2026-08-04 10:00:51 +02:00
uberwald 048bcb566a fix(i18n): localisation des templates et des infobulles du système
- Corrige les 9 occurrences de {{localize " BOL.ui.delete"}} avec espace parasite
  dans les templates (bio, équipement, armes de véhicule)
- Localise les textes restants codés en dur : placeholders Nom, libellé Type,
  options de type de véhicule, attaque à mains nues, Bonus, Majeur (de groupe)/
  Mineur, XP, Add/Delete/Log, Action/Jets (HUD)
- Ajoute les clés BOL.ui.* manquantes (bonus, log, add, rolls, action,
  unarmedAttack, vehicleType, majorgroup, minor) et complète fr/en/es/de
  pour hullDamage, crewDamage, fireDamage, attackModifier, vehicleWeapons,
  undead
2026-08-04 09:50:44 +02:00
uberwald 6719deb8fc fix(i18n): localisation des notifications et messages d'erreur du système 2026-08-04 09:14:29 +02:00
uberwald de1fa8ba72 fix(i18n): lien du succès héroïque localisé (EN/FR) et avertissement XP traduit 2026-08-04 08:31:08 +02:00
uberwald 215a8a1a45 Sync compendiums
Release Creation / build (release) Successful in 3m4s
2026-08-03 06:41:09 +02:00
uberwald 1b24d0223a feat: publicité des modules premium en tchat quand ils ne sont pas activés 2026-08-03 06:38:54 +02:00
uberwald 33d4c26619 fix(style): lisibilité des journaux (texte sombre sur fond blanc en vue et édition) 2026-08-03 06:19:05 +02:00
uberwald cc81acce5b fix(appv2): correction sauvegarde champs description HTML
- Remplacer les balises <prose-mirror> brutes par {{formInput}}
  pour les champs HTMLField (biographie, notes, description)
- Onglets passent en basculement CSS sans re-render
- Ajout de systemFields au contexte des feuilles d'acteur
2026-07-30 21:23:25 +02:00
uberwald c56903c8e4 Fix release numbering 2026-06-14 23:22:30 +02:00
uberwald d27d580d8c Fix for Babele translation
Release Creation / build (release) Successful in 56s
2026-05-25 23:02:08 +02:00
uberwald 967383f5b3 COrrection sur icones des effets
Release Creation / build (release) Successful in 55s
2026-04-25 09:20:15 +02:00
uberwald e4cc556705 Fix beguiling boon
Release Creation / build (release) Successful in 48s
2026-04-18 17:48:30 +02:00
182 changed files with 826 additions and 435 deletions
+1 -1
View File
@@ -59,5 +59,5 @@ jobs:
version: ${{github.event.release.tag_name}}
manifest: "https://www.uberwald.me/gitea/public/bol/releases/download/latest/system.json"
notes: "https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/bol.zip"
compatibility-minimum: "13"
compatibility-minimum: "14"
compatibility-verified: "14"
+51
View File
@@ -0,0 +1,51 @@
# BoL — FoundryVTT Game System
FoundryVTT game system for Barbarians of Lemuria (French edition, Ludospherik). System id `bol`. Compatible Foundry v13v14.
## Commands
| Command | Action |
|---------|--------|
| `npm run css` | Compile LESS → `css/bol.css` (one-shot) |
| `npm run watch` / `npm start` | Watch `styles/**/*.less`, recompile on change |
No test or lint scripts exist.
## Entry Point & Architecture
`module/bol.js` — wires everything in `Hooks.once('init', ...)` and `Hooks.once('ready', ...)`.
| Path | Role |
|------|------|
| `module/bol.js` | System init, sheet/data model registration, socket setup |
| `module/system/config.js` | `BOL` constants, `System.debugMode` flag |
| `module/system/bol-utility.js` | Static helpers, settings (`bol` namespace), socket handler (`system.bol`) |
| `module/controllers/bol-rolls.js` | All roll logic — `BoLRoll` static methods |
| `module/models/` | DataModel classes (`.mjs`) for Actor/Item types |
| `module/applications/sheets/` | **AppV2 sheets** (`ActorSheetV2`/`ItemSheetV2` + `HandlebarsApplicationMixin`) |
| `styles/` | LESS sources → compiled to `css/bol.css` |
| `templates/` | Handlebars `.hbs` partials |
| `lang/` | `fr.json`, `en.json`, `de.json`, `es.json` |
## Key Conventions
- **AppV2 sheets** — base classes are `foundry.applications.sheets.ActorSheetV2` / `ItemSheetV2` mixed with `HandlebarsApplicationMixin`. Do NOT use `foundry.appv1.sheets.*`.
- **`game.bol`** — system exposes `BoLActor`, `BoLItem`, `BoLRoll`, `BoLUtility`, `Macros`, `BOL` config, `models`, `sheets` on this namespace after init.
- **i18n prefix** — all keys start with `BOL.`; use `game.i18n.localize("BOL.xxx")`.
- **FR-first** — `fr.json` is most complete. EN compendium translation requires [Babele](https://gitlab.com/riccisi/foundryvtt-babele) module. A warning fires at startup if EN is selected without Babele.
- **`System.debugMode = true`** in `module/system/config.js:8` — set to `false` before release.
- **LESS only** — never edit `css/bol.css` directly. Edit `.less` files under `styles/`, recompile with `npm run css`.
- **Data models** — `template.json` defines schema via `Actor.types` (character, encounter, horde, vehicle) and `Item.types` (item, feature). All data lives under `.system`.
- **Sheet partials** — registered in `module/system/templates.js`. Add new partials there.
- **Static classes** — `BoLRoll` and `BoLUtility` are purely static; never instantiate.
- **`template.json.SAVED`** in root is the data model reference; the actual `template.json` may need regeneration.
- **`package.json` and lockfile are in `.gitignore`** — npm is dev-only for LESS compilation. Not needed to run the system in Foundry.
- **`{{formInput}}` for HTML fields** — always use `{{formInput fieldDef enriched=x value=y name="system.path" toggled=isEditable}}` for `HTMLField` in AppV2 sheets. Never use raw `<prose-mirror>` elements; they break form submission.
- **Tab switching** — use CSS-only toggle (no `this.render()`) to preserve ProseMirror editor state. See `base-item-sheet.mjs` pattern.
## CI & Release
- CI triggers **only on release publish** (`.gitea/workflows/main.yml`).
- Release zips: `system.json template.json README.md LICENSE assets/ compendiums/ css/ fonts/ images/ lang/ module/ packs/ styles/ templates/ ui/`.
- Version/URL manifest/download are substituted in `system.json` during CI.
- Published to Foundry package registry via `foundryvtt-publish-package-action`.
+4
View File
@@ -96,6 +96,10 @@
"name": "Plains-Born",
"description": "<h1>Plains-Born</h1><p>You grew up on the plains. When tracking, trapping, hunting, or carrying out other similar activities (not fighting) in a plains environment, you receive a bonus die.</p>"
},
"Envoûtant": {
"name": "Beguiling",
"description": "<h1>Beguiling</h1><p> Your looks and bearing are such that people who might be attracted to your type are enchanted by you. Once per day you may suggest a course of action to a number of rabble equal to appeal + d6, who will do their best to please you, even if it potentially puts them in danger.</p><p>You must have the temptress career to take this boon.</p>"
},
"Fortuné": {
"name": "Great Wealth",
"description": "<h1>Great Wealth</h1><p>You have a source of income or an inheritance. Roll a bonus die on any attempt to obtain any goods, services, or other items you need whilst in your home city.</p>"
+25 -11
View File
@@ -1512,6 +1512,21 @@ h2.bad {
.bol-welcome-card .welcome-body a {
color: darkred;
}
.bol-welcome-card .welcome-body .welcome-premium {
margin-top: 6px;
padding: 6px 10px;
font-size: 0.8rem;
color: #191813;
background: linear-gradient(135deg, #fdf7e6, #f6e8c8);
border: 1px solid #c9a227;
border-left: 4px solid #c9a227;
border-radius: 3px;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.bol-welcome-card .welcome-body .welcome-premium a {
color: #7a5c00;
font-weight: bold;
}
.bol-welcome-card .welcome-footer {
margin-top: 8px;
padding: 4px 10px;
@@ -1522,15 +1537,6 @@ h2.bad {
border-radius: 4px;
letter-spacing: 0.5px;
}
.bol-welcome-card .welcome-warning {
margin-top: 6px;
padding: 4px 8px;
font-size: 0.8rem;
color: #7a0000;
background: #fff3f3;
border: 1px solid #e57373;
border-radius: 3px;
}
/* Component Styles */
/* ----------------------------------------- */
/* Common Sheet Styles */
@@ -1538,8 +1544,16 @@ h2.bad {
body.system-bol img#logo {
content: url("/systems/bol/ui/logo2.webp");
}
.journal-page-content {
/* Reserved for future use */
.journal-page-content,
.journal-page-content p,
.journal-page-content div,
.journal-page-content span {
color: #191813 !important;
}
.sheet.journal-entry prose-mirror.journal-page-content,
prose-mirror.journal-page-content {
background-color: white;
background: white;
}
.bol.dialog > section.window-content {
background: white;
+142 -1
View File
@@ -55,6 +55,16 @@
"BOL.ui.equip": "Anlegen",
"BOL.ui.delete": "Löschen",
"BOL.ui.roll" : "Würfeln",
"BOL.ui.bonus": "Bonus",
"BOL.ui.log": "Protokoll",
"BOL.ui.add": "Hinzufügen",
"BOL.ui.rolls": "Würfe",
"BOL.ui.action": "Aktion",
"BOL.ui.unarmedAttack": "Unbewaffneter Angriff",
"BOL.ui.vehicleType.boat": "Schiff",
"BOL.ui.vehicleType.flyingboat": "Flugschiff",
"BOL.ui.vehicleType.chariot": "Streitwagen/Karre",
"BOL.ui.vehicleType.other": "Anderes",
"BOL.ui.equipment" : "Ausrüstung",
"BOL.ui.equipmentProperties" : "Ausrüstungseigenschaften",
"BOL.ui.weaponAttack" : "Waffenangriff",
@@ -156,6 +166,15 @@
"BOL.ui.armorAgiMalus": "Rüschtung+Schild-Malus (Geschick)",
"BOL.ui.armorInitMalus": "Rüstungsmalus (Init)",
"BOL.ui.attackValue": "Angriffswert",
"BOL.ui.attackModifier": "Angriffsmodifikator",
"BOL.ui.vehicleWeapons": "Fahrzeugwaffen",
"BOL.ui.hullDamage": "Rumpfschaden",
"BOL.ui.crewDamage": "Besatzungsschaden",
"BOL.ui.fireDamage": "Feuer ?",
"BOL.ui.undead": "Untot",
"BOL.ui.minor": "Gering",
"BOL.ui.major": "Groß",
"BOL.ui.majorgroup": "Große Gruppe",
"BOL.ui.initMalus": "Init malus",
"BOL.ui.createEquipment": "Create Equipment",
@@ -175,6 +194,9 @@
"BOL.featureSubtypes.language": "Sprache",
"BOL.featureSubtypes.gods": "Glauben & Götter",
"BOL.featureSubtypes.fightOption": "Kampfoption",
"BOL.featureSubtypes.effect": "Effekt",
"BOL.featureSubtypes.horoscope": "Horoskop",
"BOL.featureSubtypes.xplog": "XP-Protokoll",
"BOL.bougette.nomoney": "Mittellos",
"BOL.bougette.tolive": "Zum Überleben",
@@ -291,6 +313,17 @@
"BOL.itemProperty.natural": "Natürliche Waffe",
"BOL.itemProperty.onlymodifier": "Nur Modifikator (d.h. Angriffe von Kreaturen)",
"BOL.itemProperty.attackMalusDice": "Angriffsmalus (Würfel)",
"BOL.itemProperty.crewDamageMultiplier": "Multiplikator",
"BOL.itemProperty.crewdamage": "Schadenswert für die Besatzung",
"BOL.itemProperty.hullDamageMultiplier": "Multiplikator",
"BOL.itemProperty.hulldamage": "Schadenswert für den Rumpf",
"BOL.itemProperty.isboarding": "Entern",
"BOL.itemProperty.isbreakrow": "Ruder brechen",
"BOL.itemProperty.iscrewdamage": "Besatzungsschaden",
"BOL.itemProperty.isfiredamage": "Feuerschaden",
"BOL.itemProperty.ishulldamage": "Rumpfschaden",
"BOL.itemProperty.isspur": "Rammstoß",
"BOL.itemProperty.vehicleDamageType": "Fahrzeugschadenstyp",
"BOL.itemStat.quantity": "Anzahl",
"BOL.itemStat.weight": "Gewicht",
@@ -379,6 +412,23 @@
"BOL.notification.MacroMultipleTokensSelected": "Du hast mehrere Token ausgewählt",
"BOL.notification.MacroNoActorAvailable": "Es konnte kein Akteur gefunden werden",
"BOL.notification.MacroNoTokenSelected": "Du musst einen Token auswählen",
"BOL.notification.MacroNoItemFound": "{actor} : kein(e) {type} gefunden.",
"BOL.notification.MacroSpecifyNameOrIndex": "Geben Sie einen Namen oder einen Index an : {names}",
"BOL.notification.MacroBadIndex": "{actor} : Index {index} für {type} ungültig.",
"BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" nicht gefunden.",
"BOL.notification.MacroUnknownAttribute": "Unbekanntes Attribut : \"{key}\". Werte : vigor, agility, mind, appeal",
"BOL.notification.MacroUnknownAptitude": "Unbekannte Fertigkeit : \"{key}\". Werte : init, melee, ranged, def",
"BOL.notification.MacroUnknownRollType": "Unbekannter Wurftyp : \"{type}\". Gültige Typen : attribute, aptitude, weapon, spell, alchemy, horoscope",
"BOL.notification.MacroNoPower": "Nicht genug Kraftpunkte !",
"BOL.notification.FullDefense": "{actor} ist in voller Verteidigung ! Er kann in dieser Runde nicht angreifen.",
"BOL.notification.WeaponNotFound": "Waffe nicht gefunden !",
"BOL.notification.AlchemyNotFound": "Alchemie nicht gefunden !",
"BOL.notification.SpellNotFound": "Diesen Zauber nicht gefunden !",
"BOL.notification.NotEnoughCreationPrep": "Nicht genug Schöpfungspunkte in die Vorbereitung investiert !",
"BOL.notification.NoPower": "Nicht genug Kraftpunkte !",
"BOL.notification.AttackNotFound": "Der entsprechende Angriff wurde nicht gefunden, Fehler bei der Kampfverfolgung.",
"BOL.notification.NoBirthHour": "{actor} hat keine Geburtsstunde, oder sie ist falsch : {hour}",
"BOL.notification.BadBirthHour": "{hour} entspricht keiner Geburtsstunde",
"BOL.size.tiny": "Winzig",
"BOL.size.verysmall": "Sehr klein",
@@ -462,6 +512,54 @@
"BOL.ui.biosigns": "Erkennungszeichen",
"BOL.ui.biodescription": "Beschreibung",
"BOL.ui.bionotes": "Notizen",
"BOL.ui.aggressive": "Aggressiver Zauber?",
"BOL.ui.armornoformula": "Die Rüstung {protect.name} hat keine Formel für den Schutz!",
"BOL.ui.astrologerRank": "Rang des Astrologen",
"BOL.ui.astrology": "Astrologie und Horoskope",
"BOL.ui.astrologyMajor": "Großes Horoskop erstellen",
"BOL.ui.astrologyMajorGroup": "Großes Gruppen-Horoskop erstellen",
"BOL.ui.astrologyMinor": "Kleines Horoskop erstellen",
"BOL.ui.astrologyNoPoints": "Du hast nicht genug Astrologiepunkte!",
"BOL.ui.attributaptitude": "Attribut oder Fertigkeit",
"BOL.ui.boleffects": "Effekte (automatisch)",
"BOL.ui.confirmdelete": "Bist du sicher, dass du diesen Gegenstand löschen willst?",
"BOL.ui.cost": "XP-Kosten",
"BOL.ui.createNaturalProtection": "Natürlichen Schutz erstellen",
"BOL.ui.createNaturalWeapon": "Natürliche Waffe erstellen",
"BOL.ui.creature": "Kreatur",
"BOL.ui.daemon": "Dämon",
"BOL.ui.date": "Datum",
"BOL.ui.deletetitle": "Löschung",
"BOL.ui.effects": "Aktive Effekte",
"BOL.ui.heropoints": "Helden-/Bösewicht-Punkte",
"BOL.ui.hordeAttack": "Hordenangriff",
"BOL.ui.hordeHP": "Vitalität (1 Mitglied)",
"BOL.ui.hordeSize": "Hordengröße",
"BOL.ui.hordehp": "Vitalität (gesamt)",
"BOL.ui.horoscopeCost": "Kosten in Astrologiepunkten",
"BOL.ui.horoscopeDiceMax": "Maximale Würfel",
"BOL.ui.horoscopeDiceRemaining": "Verbleibende Würfel",
"BOL.ui.horoscopeGroup": "Gruppen-Horoskope",
"BOL.ui.isAstrologer": "Astrologenkarriere?",
"BOL.ui.isspecial": "Speziell?",
"BOL.ui.itemnotfound": "Das Objekt dieser Makro konnte nicht gefunden werden",
"BOL.ui.magicnewrules": "Zusätzliche Regeln (vgl. Fan-Zusatz Zauberei!)",
"BOL.ui.makeHoroscope": "Horoskop erstellen",
"BOL.ui.modifier": "Modifikator",
"BOL.ui.newEquipment": "Neue Ausrüstung",
"BOL.ui.newNaturalProtection": "Natürlicher Schutz",
"BOL.ui.newNaturalWeapon": "Natürliche Waffe",
"BOL.ui.nomorealchemypoints": "Nicht genug Schöpfungspunkte!",
"BOL.ui.notenoughxp": "Nicht genug Erfahrungspunkte!",
"BOL.ui.pclistbutton": "Kompakte Ansicht",
"BOL.ui.rabble": "Meute",
"BOL.ui.selectactor": "Wähle deinen Charakter aus, um die Makro zu verwenden",
"BOL.ui.tough": "Zäh",
"BOL.ui.value": "Wert",
"BOL.ui.villain": "Rivale",
"BOL.ui.warninitiative": "Deine Initiative ist nicht verfügbar. Führe für diesen Kampf einen Initiative-Wurf aus.",
"BOL.ui.weaponbonus": "Diese Waffe hat bereits einen Bonuswürfel (z. B. Lieblingswaffe berücksichtigt)",
"BOL.ui.xplog": "XP-Protokoll",
"BOL.chat.welcome1": "Willkommen zu Barbarians of Lemuria (französische Ludospherik-Version, deutsche Übersetzung von Truant Spiele)",
"BOL.chat.welcome2": "Zum Spielen werden zwingend die passenden BoL Bücher benötigt. Die französischen Originalbücher für dieses System gibt es hier: http://www.ludospherik.fr/content/14-barbarians-of-lemuria<br>Die deutsche Übersetzung gibt es bei Truant Spiele: https://truant.com/produkt/barbarians-of-lemuria-2",
@@ -469,7 +567,50 @@
"BOL.chat.welcome4": "Im Discord findet ihr Support für die FoundryVTT-Implementierung dieses Systems: https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "Auf ein gutes Spiel in Lemuria!",
"BOL.chat.welcome6": "",
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
"BOL.chat.msgonlygm": "Nachricht nur für den GM",
"BOL.chat.babelewarning": "⚠ WARNUNG ! Englisch ist ausgewählt, aber das Babele-Modul ist nicht installiert !<br>Bitte installieren Sie babele über den Modul-Reiter in der Foundry-Oberfläche.",
"BOL.chat.bolRulebookMessage": "Don't miss the premium Rulebook module (including Sagas), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-rulebook' target='_blank'>https://foundryvtt.com/packages/bol-rulebook</a>",
"BOL.chat.bolChroniclesMessage": "Discover the premium Chronicles of Lemuria module (vol. 1), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-chronicles-1' target='_blank'>https://foundryvtt.com/packages/bol-chronicles-1</a>",
"BOL.chat.applyrecup": "Einige Minuten ausruhen (+{recupHP} Vitalität)",
"BOL.chat.armorRoll": "Rüstungswurf ",
"BOL.chat.bougettefailure": "Du hast zu viel ausgegeben, dein Budget hat sich verringert...",
"BOL.chat.bougettesuccess": "Dein Budget bleibt unverändert!",
"BOL.chat.criticalbuttonjournal": "Heroischer/Legendärer Erfolg",
"BOL.chat.criticalinfo": "Das ist ein heroischer Erfolg! Wähle deine Optionen und Effekte!",
"BOL.chat.criticallegendaryinfo": "Das ist ein legendärer Erfolg! Wähle deine Optionen und Effekte!",
"BOL.chat.damageresume": "{name} hat Verletzungen erlitten ...",
"BOL.chat.defenseReduceDamage2": "Du kannst außerdem 1 Helden-/Bösewicht-Punkt ausgeben, um [[/r 2d6KH(1D6B)]] Vitalitätspunkte zurückzugewinnen; das kostet dich deine nächste Aktion.",
"BOL.chat.fumblemessage": "Wenn du die Konsequenzen eines katastrophalen Fehlschlags akzeptierst (Wahl des Spielleiters), erhältst du 1 zusätzlichen Heldenpunkt",
"BOL.chat.heroicreminder": "Zusätzlich zu den Aktionen der Schaltflächen unten kannst du: <ul><li>Gemetzel: Greife denselben Gegner ein zweites Mal an</li><li>Präziser Schlag: Ein Maluswürfel für deinen Gegner auf eine gewählte Lokalisation</li><li>Entwaffnung</li><li>Massaker an der Meute</li><li>Umwerfen: Wirf deinen Gegner um (max. 1 Größe mehr)</li></ul>Wenn du zusätzlich einen Heldenpunkt ausgibst, können all diese Effekte verdoppelt werden",
"BOL.chat.horoscope": "Horoskop",
"BOL.chat.horoscopedeleted": "Das/die verwendete(n) Horoskop(e) wurde(n) automatisch entfernt.",
"BOL.chat.horoscopemajorfailure": "Dein großes Horoskop ist ein Fehlschlag: {horoscopeName} verliert für dieses Abenteuer 1 Heldenpunkt. Dieser Punkt wurde automatisch abgezogen.",
"BOL.chat.horoscopemajorgroupfailure": "Dein großes Gruppen-Horoskop ist ein Fehlschlag. Du und deine Freunde erleiden für dieses Abenteuer {careerBonus} Maluswürfel.",
"BOL.chat.horoscopemajorgroupsuccess": "Dein großes Gruppen-Horoskop ist ein Erfolg. Du und deine Freunde erhalten für dieses Abenteuer {careerBonus} Bonuswürfel.",
"BOL.chat.horoscopemajorsuccess": "Dein großes Horoskop ist ein Erfolg: {horoscopeName} erhält für dieses Abenteuer 1 zusätzlichen Heldenpunkt. Dieser Punkt wurde automatisch hinzugefügt.",
"BOL.chat.horoscopeminorfailure": "Dein kleines Horoskop ist ein Fehlschlag: Bearbeite den Namen des Horoskops auf deinem Blatt. Du erleidest für diese Situation 1 Maluswürfel.",
"BOL.chat.horoscopeminorsuccess": "Dein kleines Horoskop ist ein Erfolg: Bearbeite den Namen des Horoskops auf deinem Blatt. Du erhältst für diese Situation 1 Bonuswürfel.",
"BOL.chat.horoscopepoints": "Kosten: {points} Astrologiepunkte",
"BOL.chat.initiative": "Initiative-Rang (10 bis 1)",
"BOL.chat.legendaryreminder": "Zusätzlich zu den Aktionen der Schaltflächen unten kannst du 2 Aktionen ausführen: <ul><li>Gemetzel: Greife denselben Gegner ein zweites Mal an</li><li>Präziser Schlag: Ein Maluswürfel für deinen Gegner auf eine gewählte Lokalisation</li><li>Entwaffnung</li><li>Massaker an der Meute</li><li>Umwerfen: Wirf deinen Gegner um (max. 1 Größe mehr)</li></ul>",
"BOL.chat.losshp": "{name} hat {lossHP} Vitalitätspunkte verloren. Wenn er sich ein paar Minuten ausruht, kann er {recupHP} Vitalitätspunkte zurückgewinnen.",
"BOL.chat.nodamage": "Keinen Schaden anwenden",
"BOL.chat.nodamagesummary": "Es wurde kein Schaden erlitten ....",
"BOL.chat.pcnotlinked": "Das Token des Spielercharakters ist nicht mit dem Actor verknüpft",
"BOL.chat.pcnotlinkedmsg": "<b>ACHTUNG</b> Das Token des Spielercharakters ist nicht mit dem Actor verknüpft!",
"BOL.chat.pcwarning": "Achtung! Kein Charakter ist mit dem Spieler verknüpft!",
"BOL.chat.pcwarningmsg": "<b>ACHTUNG</b> Der Spieler ist mit keinem Charakter verknüpft!",
"BOL.chat.rangeinfo": "Wurf von {attackerName} auf {defenderName}",
"BOL.chat.rangenotvisible": "Die Sichtlinie zwischen den Beteiligten ist blockiert.",
"BOL.chat.rangeprefix": "Geschätzte Entfernung: ",
"BOL.chat.rangetitle": "SL-Information",
"BOL.chat.rangevisible": "Die Sichtlinie zwischen den Beteiligten ist frei.",
"BOL.chat.rangeweaponinfo": "Waffe: {weaponName} - Basisreichweite {weaponRange}",
"BOL.chat.rollbougette": "Budgetwurf",
"BOL.chat.rolldamage12Legend": "Schaden +12",
"BOL.chat.selecttarget": "Ziel wählen:",
"BOL.chat.usedhoroscope": "Verwendetes Horoskop",
"BOL.chat.weaponreroll1": "Zur Information: Diese Waffe würfelt Einsen bei ihrem Schaden neu.",
"BOL.settings.rollArmor": "Roll for armor",
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",
+66 -2
View File
@@ -78,6 +78,16 @@
"BOL.ui.equip": "Equip",
"BOL.ui.delete": "Delete",
"BOL.ui.roll" : "Roll",
"BOL.ui.bonus": "Bonus",
"BOL.ui.log": "Log",
"BOL.ui.add": "Add",
"BOL.ui.rolls": "Rolls",
"BOL.ui.action": "Action",
"BOL.ui.unarmedAttack": "Unarmed attack",
"BOL.ui.vehicleType.boat": "Ship",
"BOL.ui.vehicleType.flyingboat": "Flying ship",
"BOL.ui.vehicleType.chariot": "Chariot/Cart",
"BOL.ui.vehicleType.other": "Other",
"BOL.ui.equipment" : "Equipment",
"BOL.ui.equipmentProperties" : "Equipment properties",
"BOL.ui.weaponAttack" : "Weapon attack",
@@ -177,6 +187,10 @@
"BOL.ui.armorInitMalus": "Armor Modifier (Init)",
"BOL.ui.attackValue": "Attack Value",
"BOL.ui.attackModifier": "Attack Modifier",
"BOL.ui.vehicleWeapons": "Vehicle weapons",
"BOL.ui.hullDamage": "Hull damage",
"BOL.ui.crewDamage": "Crew damage",
"BOL.ui.fireDamage": "Fire ?",
"BOL.ui.weaponbonus": "Cette arme bénéficie déja d'un Dé de Bonus (Arme Favorite prise en compte, par exemple)",
"BOL.ui.initMalus": "Init malus",
"BOL.ui.creature": "Creature",
@@ -195,6 +209,7 @@
"BOL.ui.deletetitle": "Delete",
"BOL.ui.confirmdelete": "Are you sure to delete this item ?",
"BOL.ui.nomorealchemypoints": "No more Creation Point !",
"BOL.ui.notenoughxp": "Not enough experience points !",
"BOL.ui.armornoformula": "The Armor {protect.name} has no protection formula !",
"BOL.ui.selectactor": "Select the actors to apply the macro",
"BOL.ui.itemnotfound": "Impossible to find the object of this macro",
@@ -366,6 +381,18 @@
"BOL.itemProperty.natural": "Natural weapon",
"BOL.itemProperty.onlymodifier": "Modifier only (ie creatures attacks)",
"BOL.itemProperty.attackMalusDice": "Attack Malus (Dice)",
"BOL.itemProperty.crewDamageMultiplier": "Multiplier",
"BOL.itemProperty.crewdamage": "Crew damage value",
"BOL.itemProperty.hullDamageMultiplier": "Multiplier",
"BOL.itemProperty.hulldamage": "Hull damage value",
"BOL.itemProperty.isboarding": "Boarding",
"BOL.itemProperty.isbreakrow": "Break the oars",
"BOL.itemProperty.iscrewdamage": "Crew damage",
"BOL.itemProperty.isfiredamage": "Fire damage",
"BOL.itemProperty.ishulldamage": "Hull damage",
"BOL.itemProperty.isspur": "Ramming",
"BOL.itemProperty.magicalProperties": "Magical properties",
"BOL.itemProperty.vehicleDamageType": "Vehicle damage type",
"BOL.itemStat.quantity": "Quantity",
"BOL.itemStat.weight": "Weight",
@@ -444,6 +471,23 @@
"BOL.notification.MacroMultipleTokensSelected": "You have selected several tokens!",
"BOL.notification.MacroNoActorAvailable": "No actor could be targeted!",
"BOL.notification.MacroNoTokenSelected": "You must select a token!",
"BOL.notification.MacroNoItemFound": "{actor} : no {type} found.",
"BOL.notification.MacroSpecifyNameOrIndex": "Specify a name or an index : {names}",
"BOL.notification.MacroBadIndex": "{actor} : index {index} invalid for {type}.",
"BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" not found.",
"BOL.notification.MacroUnknownAttribute": "Unknown attribute : \"{key}\". Values : vigor, agility, mind, appeal",
"BOL.notification.MacroUnknownAptitude": "Unknown aptitude : \"{key}\". Values : init, melee, ranged, def",
"BOL.notification.MacroUnknownRollType": "Unknown roll type : \"{type}\". Valid types : attribute, aptitude, weapon, spell, alchemy, horoscope",
"BOL.notification.MacroNoPower": "Not enough Power points !",
"BOL.notification.FullDefense": "{actor} is in Full Defense ! He cannot attack this round.",
"BOL.notification.WeaponNotFound": "Unable to find weapon !",
"BOL.notification.AlchemyNotFound": "Unable to find Alchemy !",
"BOL.notification.SpellNotFound": "Unable to find this spell !",
"BOL.notification.NotEnoughCreationPrep": "Not enough Creation Points invested in the Preparation !",
"BOL.notification.NoPower": "Not enough Power points !",
"BOL.notification.AttackNotFound": "Unable to find the corresponding attack, combat tracking error.",
"BOL.notification.NoBirthHour": "{actor} has no birth hour, or it is incorrect : {hour}",
"BOL.notification.BadBirthHour": "{hour} does not correspond to a birth hour",
"BOL.size.tiny": "Tiny",
"BOL.size.verysmall": "Very Small",
@@ -545,7 +589,8 @@
"BOL.chat.criticalbuttonjournal": "Legendary/Heroic Success",
"BOL.chat.nodamage": "Do not apply damages",
"BOL.chat.armorRoll": "Armor roll",
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
"BOL.chat.bolRulebookMessage": "Don't miss the premium Rulebook module (including Sagas), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-rulebook' target='_blank'>https://foundryvtt.com/packages/bol-rulebook</a>",
"BOL.chat.bolChroniclesMessage": "Discover the premium Chronicles of Lemuria module (vol. 1), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-chronicles-1' target='_blank'>https://foundryvtt.com/packages/bol-chronicles-1</a>",
"BOL.dialog.soeasy": "So easy (+4)",
"BOL.dialog.soeasy3": "So easy (+3)",
@@ -592,6 +637,15 @@
"BOL.chat.welcome4": "All support for this system is available on this Discord server : https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "<strong>In order to see compendiums in English, you must install and enable the Babele module.</strong>",
"BOL.chat.welcome6": "Good game in Lemuria !",
"BOL.chat.msgonlygm": "Message only to the GM",
"BOL.chat.babelewarning": "⚠ WARNING ! English language selected, but Babele module is not installed !<br>Please install babele from the module tab in Foundry interface.",
"BOL.chat.applyrecup": "Recover during a few minutes (+{recupHP} Vitality)",
"BOL.chat.defenseReduceDamage2": "You can also spend 1 Heroism/Villainy Point to regain [[/r 2d6KH(1D6B)]] vitality points, this will cost you your next action.",
"BOL.chat.losshp": "{name} lost {lossHP} Vitality points. If he rests a few minutes, he can recover {recupHP} Vitality points.",
"BOL.chat.pcnotlinked": "The player character token is not linked to the actor",
"BOL.chat.pcnotlinkedmsg": "<b>WARNING</b> The player character token is not linked to the actor!",
"BOL.chat.pcwarning": "Warning! No character is linked to the player!",
"BOL.chat.pcwarningmsg": "<b>WARNING</b> The player is not linked to any character!",
"BOL.settings.rollArmor": "Roll for armor",
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",
@@ -615,5 +669,15 @@
"BOL.ui.charSummaryTitle": "Character Summary",
"BOL.ui.colGroupAttributes": "Attributes",
"BOL.ui.colGroupAptitudes": "Aptitudes",
"BOL.ui.colGroupResources": "Resources"
"BOL.ui.colGroupResources": "Resources",
"BOL.ui.aggressive": "Aggressive spell?",
"BOL.ui.capacityProperties": "Capacity properties",
"BOL.ui.cost": "XP cost",
"BOL.ui.date": "Date",
"BOL.ui.heropoints": "Heroism/Villainy Points",
"BOL.ui.isbonusdice": "Provides a bonus die?",
"BOL.ui.ismalusdice": "Provides a penalty die?",
"BOL.ui.magicnewrules": "Additional rules (cf. fan-made supplement Sorcery!)",
"BOL.ui.value": "Value",
"BOL.ui.xplog": "XP Log"
}
+73 -1
View File
@@ -77,6 +77,16 @@
"BOL.ui.equip": "Equipar",
"BOL.ui.delete": "Borrar",
"BOL.ui.roll" : "Tirar",
"BOL.ui.bonus": "Bonificación",
"BOL.ui.log": "Registro",
"BOL.ui.add": "Añadir",
"BOL.ui.rolls": "Tiradas",
"BOL.ui.action": "Acción",
"BOL.ui.unarmedAttack": "Ataque sin armas",
"BOL.ui.vehicleType.boat": "Barco",
"BOL.ui.vehicleType.flyingboat": "Nave Voladora",
"BOL.ui.vehicleType.chariot": "Carro",
"BOL.ui.vehicleType.other": "Otro",
"BOL.ui.equipment" : "Equipo",
"BOL.ui.equipmentProperties" : "Propiedades Equipo",
"BOL.ui.weaponAttack" : "Ataque Arma",
@@ -177,6 +187,10 @@
"BOL.ui.armorInitMalus": "Mod. Armadura (Inic)",
"BOL.ui.attackValue": "Valor Ataque",
"BOL.ui.attackModifier": "Mod. Ataque",
"BOL.ui.vehicleWeapons": "Armas de vehículo",
"BOL.ui.hullDamage": "Daño casco",
"BOL.ui.crewDamage": "Daño tripulación",
"BOL.ui.fireDamage": "¿Fuego?",
"BOL.ui.weaponbonus": "Esta arma se beneficia de un Dado de ventaja (ej Arma Personal)",
"BOL.ui.initMalus": "Desventaja Inic.",
"BOL.ui.creature": "Criatura",
@@ -195,6 +209,7 @@
"BOL.ui.deletetitle": "Borrar",
"BOL.ui.confirmdelete": "¿Seguro que quieres borrar este objeto?",
"BOL.ui.nomorealchemypoints": "¡Sin Puntos de Creación!",
"BOL.ui.notenoughxp": "¡No hay suficientes puntos de experiencia!",
"BOL.ui.armornoformula": "La Armadura {protect.name} no dispone de fórmula de protección!",
"BOL.ui.selectactor": "Selecciona un actora para aplicar la macro",
"BOL.ui.itemnotfound": "Imposible encontrar el objeto de esta macro",
@@ -360,6 +375,18 @@
"BOL.itemProperty.natural": "Arma natural",
"BOL.itemProperty.onlymodifier": "Sólo modificador (ej criatura)",
"BOL.itemProperty.attackMalusDice": "Dado Desventaja Ataque",
"BOL.itemProperty.crewDamageMultiplier": "Multiplicador",
"BOL.itemProperty.crewdamage": "Valor del daño a la tripulación",
"BOL.itemProperty.hullDamageMultiplier": "Multiplicador",
"BOL.itemProperty.hulldamage": "Valor del daño al casco",
"BOL.itemProperty.isboarding": "Abordaje",
"BOL.itemProperty.isbreakrow": "Romper los remos",
"BOL.itemProperty.iscrewdamage": "Daño a la tripulación",
"BOL.itemProperty.isfiredamage": "Daño de fuego",
"BOL.itemProperty.ishulldamage": "Daño al casco",
"BOL.itemProperty.isspur": "Ariete",
"BOL.itemProperty.magicalProperties": "Propiedades mágicas",
"BOL.itemProperty.vehicleDamageType": "Tipo de daño de vehículo",
"BOL.itemStat.quantity": "Cantidad",
"BOL.itemStat.weight": "Peso",
@@ -438,6 +465,23 @@
"BOL.notification.MacroMultipleTokensSelected": "¡Has seleccionado varios tokens!",
"BOL.notification.MacroNoActorAvailable": "¡No se pudo marcar el actor como objetivo!",
"BOL.notification.MacroNoTokenSelected": "¡Debes seleccionar un token!",
"BOL.notification.MacroNoItemFound": "{actor} : no se encontró ningún {type}.",
"BOL.notification.MacroSpecifyNameOrIndex": "Especifica un nombre o un índice : {names}",
"BOL.notification.MacroBadIndex": "{actor} : índice {index} no válido para {type}.",
"BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" no encontrado.",
"BOL.notification.MacroUnknownAttribute": "Atributo desconocido : \"{key}\". Valores : vigor, agility, mind, appeal",
"BOL.notification.MacroUnknownAptitude": "Aptitud desconocida : \"{key}\". Valores : init, melee, ranged, def",
"BOL.notification.MacroUnknownRollType": "Tipo de tirada desconocido : \"{type}\". Tipos válidos : attribute, aptitude, weapon, spell, alchemy, horoscope",
"BOL.notification.MacroNoPower": "¡No quedan suficientes puntos de Poder!",
"BOL.notification.FullDefense": "{actor} está en Defensa Total ! ¡No puede atacar este asalto!",
"BOL.notification.WeaponNotFound": "¡No se pudo encontrar el arma!",
"BOL.notification.AlchemyNotFound": "¡No se pudo encontrar la alquimia!",
"BOL.notification.SpellNotFound": "¡No se pudo encontrar este hechizo!",
"BOL.notification.NotEnoughCreationPrep": "¡No hay suficientes puntos de Creación invertidos en la Preparación!",
"BOL.notification.NoPower": "¡No quedan suficientes puntos de Poder!",
"BOL.notification.AttackNotFound": "No se pudo encontrar el ataque correspondiente, error de seguimiento de combate.",
"BOL.notification.NoBirthHour": "{actor} no tiene hora de nacimiento, o es incorrecta : {hour}",
"BOL.notification.BadBirthHour": "{hour} no corresponde a una hora de nacimiento",
"BOL.size.tiny": "Minúsculo",
"BOL.size.verysmall": "Muy pequeño",
@@ -535,7 +579,8 @@
"BOL.chat.criticalinfo": "¡Esto es un éxito Asombroso o Legendario! Escoge tus opciones y efectos",
"BOL.chat.criticalbuttonjournal": "Éxito Asombroso/Legendario",
"BOL.chat.armorRoll": "Tirada de Armadura",
"BOL.chat.bolRulebookMessage": "Don't miss the full Rulebook module (including Sagas) available at : https://www.ludospherik-editions.com/en_gb/ !",
"BOL.chat.bolRulebookMessage": "Don't miss the premium Rulebook module (including Sagas), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-rulebook' target='_blank'>https://foundryvtt.com/packages/bol-rulebook</a>",
"BOL.chat.bolChroniclesMessage": "Discover the premium Chronicles of Lemuria module (vol. 1), available on the Foundry website : <a href='https://foundryvtt.com/packages/bol-chronicles-1' target='_blank'>https://foundryvtt.com/packages/bol-chronicles-1</a>",
"BOL.dialog.soeasy": "Demasiado fácil (+4)",
"BOL.dialog.veryeasy": "Muy fácil (+2)",
@@ -569,6 +614,20 @@
"BOL.ui.biosigns": "Marcas",
"BOL.ui.biodescription": "Descripción",
"BOL.ui.bionotes": "Notas",
"BOL.ui.aggressive": "¿Hechizo agresivo?",
"BOL.ui.capacityProperties": "Propiedades de capacidad",
"BOL.ui.cost": "Coste XP",
"BOL.ui.date": "Fecha",
"BOL.ui.heropoints": "Puntos de Heroísmo/Villanía",
"BOL.ui.hordeAttack": "Ataque de horda",
"BOL.ui.hordeHP": "Vitalidad (1 miembro)",
"BOL.ui.hordeSize": "Tamaño de la horda",
"BOL.ui.hordehp": "Vitalidad (total)",
"BOL.ui.isbonusdice": "¿Proporciona un dado de bonificación?",
"BOL.ui.ismalusdice": "¿Proporciona un dado de penalización?",
"BOL.ui.magicnewrules": "Reglas adicionales (cf. suplemento hecho por fans ¡Hechicería!)",
"BOL.ui.value": "Valor",
"BOL.ui.xplog": "Registro de XP",
"BOL.chat.welcome1": "Bienvenidos a Bárbaros de Lemuria (Ludospherik)",
"BOL.chat.welcome2": "Para jugar es necesario usar el manual, que lo podéis conseguir aquí: https://www.ludospherik-editions.com/en_gb/",
@@ -576,6 +635,19 @@
"BOL.chat.welcome4": "Todo el soporte para el sistema es a través del servidor Discord: https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "¡Buena partida en Lemuria!",
"BOL.chat.welcome6": "",
"BOL.chat.msgonlygm": "Mensaje solo para el GM",
"BOL.chat.babelewarning": "⚠ ¡ADVERTENCIA! ¡El idioma inglés está seleccionado, pero el módulo Babele no está instalado!<br>Instale babele desde la pestaña de módulos en la interfaz de Foundry.",
"BOL.chat.applyrecup": "Recuperarse durante unos minutos (+{recupHP} Vitalidad)",
"BOL.chat.criticallegendaryinfo": "¡Es un éxito Legendario! ¡Elige tus opciones y efectos!",
"BOL.chat.defenseReduceDamage2": "También puedes gastar 1 Punto de Heroísmo/Villanía para recuperar [[/r 2d6KH(1D6B)]] puntos de vitalidad, esto te costará tu próxima acción.",
"BOL.chat.legendaryreminder": "Además de las acciones indicadas en los botones de abajo, puedes realizar 2 acciones entre: <ul><li>Carnicería: Atacar una segunda vez al mismo adversario</li><li>Golpe preciso: Un dado de penalización a tu adversario en una localización elegida</li><li>Desarme</li><li>Masacrar a la chusma</li><li>Derribo: Tira a tu adversario (1 tamaño más como máximo)</li></ul>",
"BOL.chat.losshp": "{name} ha perdido {lossHP} puntos de Vitalidad. Si descansa unos minutos, puede recuperar {recupHP} puntos de Vitalidad.",
"BOL.chat.pcnotlinked": "El token del personaje jugador no está vinculado al actor",
"BOL.chat.pcnotlinkedmsg": "<b>ATENCIÓN</b> ¡El token del personaje jugador no está vinculado al actor!",
"BOL.chat.pcwarning": "¡Atención! ¡Ningún personaje está vinculado al jugador!",
"BOL.chat.pcwarningmsg": "<b>ATENCIÓN</b> ¡El jugador no está vinculado a ningún personaje!",
"BOL.chat.rolldamage12Legend": "Daño +12",
"BOL.chat.selecttarget": "Elegir un objetivo:",
"BOL.settings.rollArmor": "Tiradas de armadura",
"BOL.settings.rollArmorTooltip": "Tiradas de armadura, si no esta activo usará el valor fijo",
+35 -2
View File
@@ -78,6 +78,16 @@
"BOL.ui.equip": "Équiper",
"BOL.ui.delete": "Supprimer",
"BOL.ui.roll": "Utiliser",
"BOL.ui.bonus": "Bonus",
"BOL.ui.log": "Journal",
"BOL.ui.add": "Ajouter",
"BOL.ui.rolls": "Jets",
"BOL.ui.action": "Action",
"BOL.ui.unarmedAttack": "Attaque à mains nues",
"BOL.ui.vehicleType.boat": "Navire",
"BOL.ui.vehicleType.flyingboat": "Nef Volante",
"BOL.ui.vehicleType.chariot": "Chariot/Carriole",
"BOL.ui.vehicleType.other": "Autre",
"BOL.ui.equipment": "Équipement",
"BOL.ui.equipmentProperties": "Propriétés d'équipement",
"BOL.ui.weaponAttack": "Attaque d'arme",
@@ -229,6 +239,7 @@
"BOL.ui.deletetitle": "Suppression",
"BOL.ui.confirmdelete": "Vous êtes sûr de vouloir supprimer cet item ?",
"BOL.ui.nomorealchemypoints": "Plus assez de Points de Création !",
"BOL.ui.notenoughxp": "Pas assez de points d'expérience !",
"BOL.ui.armornoformula": "L'armure {protect.name} n'a pas de formule pour la protection !",
"BOL.ui.selectactor": "Selectionnez votre personnage pour utiliser la macro",
"BOL.ui.itemnotfound": "Impossible de trouver l'objet de cette macro",
@@ -395,6 +406,7 @@
"BOL.itemProperty.isspur": "Eperonnage",
"BOL.itemProperty.isbreakrow": "Briser les rames",
"BOL.itemProperty.attackMalusDice": "Malus d'attaque (Dés)",
"BOL.itemProperty.magicalProperties": "Propriétés magiques",
"BOL.itemStat.quantity": "Quantité",
"BOL.itemStat.weight": "Poids",
@@ -472,6 +484,23 @@
"BOL.notification.MacroMultipleTokensSelected": "Vous avez sélectionné plusieurs tokens",
"BOL.notification.MacroNoActorAvailable": "Aucun acteur n'a pu être ciblé",
"BOL.notification.MacroNoTokenSelected": "Vous devez sélectionner un token",
"BOL.notification.MacroNoItemFound": "{actor} : aucun(e) {type} trouvé(e).",
"BOL.notification.MacroSpecifyNameOrIndex": "Précisez le nom ou l'index : {names}",
"BOL.notification.MacroBadIndex": "{actor} : index {index} invalide pour {type}.",
"BOL.notification.MacroItemNotFound": "{actor} : {type} \"{name}\" introuvable.",
"BOL.notification.MacroUnknownAttribute": "Attribut inconnu : \"{key}\". Valeurs : vigor, agility, mind, appeal",
"BOL.notification.MacroUnknownAptitude": "Aptitude inconnue : \"{key}\". Valeurs : init, melee, ranged, def",
"BOL.notification.MacroUnknownRollType": "Type de jet inconnu : \"{type}\". Types valides : attribute, aptitude, weapon, spell, alchemy, horoscope",
"BOL.notification.MacroNoPower": "Plus assez de points de Pouvoir !",
"BOL.notification.FullDefense": "{actor} est en Défense Totale ! Il ne peut pas attaquer ce round.",
"BOL.notification.WeaponNotFound": "Impossible de trouver l'arme !",
"BOL.notification.AlchemyNotFound": "Impossible de trouver l'alchimie !",
"BOL.notification.SpellNotFound": "Impossible de trouver ce sort !",
"BOL.notification.NotEnoughCreationPrep": "Pas assez de Points de Création investis dans la Préparation !",
"BOL.notification.NoPower": "Plus assez de points de Pouvoir !",
"BOL.notification.AttackNotFound": "Impossible de trouver l'attaque correspondante, erreur de suivi de combat.",
"BOL.notification.NoBirthHour": "{actor} n'a pas d'heure de naissance, ou elle est incorrecte : {hour}",
"BOL.notification.BadBirthHour": "{hour} ne correspond pas à une heure de naissance",
"BOL.size.tiny": "Minuscule",
"BOL.size.verysmall": "Très petite",
@@ -571,7 +600,8 @@
"BOL.chat.criticalinfo": "C'est un succès Héroïque ! Choisissez vos options et effets !",
"BOL.chat.criticallegendaryinfo": "C'est un succès Légendaire ! Choisissez vos options et effets !",
"BOL.chat.criticalbuttonjournal": "Succès Héroïque/Légendaire",
"BOL.chat.bolRulebookMessage": "N'oubliez pas le module complet du Livre de Règle et des Sagas disponible ici : https://www.ludospherik-editions.com !",
"BOL.chat.bolRulebookMessage": "N'oubliez pas le module premium du Livre de Règle et des Sagas, disponible sur le site Foundry : <a href='https://foundryvtt.com/packages/bol-rulebook' target='_blank'>https://foundryvtt.com/packages/bol-rulebook</a>",
"BOL.chat.bolChroniclesMessage": "Découvrez le module premium des Chroniques de Lémurie (vol. 1), disponible sur le site Foundry : <a href='https://foundryvtt.com/packages/bol-chronicles-1' target='_blank'>https://foundryvtt.com/packages/bol-chronicles-1</a>",
"BOL.chat.losshp": "{name} a perdu {lossHP} points de Vitalité. Si il se repose quelques minutes, il peut récupérer {recupHP} points de Vitalité.",
"BOL.chat.applyrecup": "Récupérer pendant quelques minutes (+{recupHP} Vitalité)",
"BOL.chat.inforecup": "{name} vient de récupérer {recupHP} points de Vitalité après quelques minutes de repos.",
@@ -630,6 +660,8 @@
"BOL.chat.pcwarningmsg": "<b>ATTENTION</b> Le joueur n'est relié à aucun personnage !",
"BOL.chat.pcnotlinked": "Le token du personnage joueur n'est pas relié à l'acteur",
"BOL.chat.pcnotlinkedmsg": "<b>ATTENTION</b> Le token du personnage joueur n'est pas relié à l'acteur !",
"BOL.chat.msgonlygm": "Message réservé au MJ uniquement",
"BOL.chat.babelewarning": "⚠ ATTENTION ! La langue anglaise est sélectionnée, mais le module Babele n'est pas installé !<br>Veuillez installer babele depuis l'onglet des modules dans l'interface de Foundry.",
"BOL.settings.rollArmor": "Effectuer des jets pour les armures",
"BOL.settings.rollArmorTooltip": "Effectue un jet de dés pour les armures (valeur fixe si désactivé)",
@@ -656,5 +688,6 @@
"BOL.ui.charSummaryTitle": "Résumé des Personnages",
"BOL.ui.colGroupAttributes": "Attributs",
"BOL.ui.colGroupAptitudes": "Aptitudes",
"BOL.ui.colGroupResources": "Ressources"
"BOL.ui.colGroupResources": "Ressources",
"BOL.ui.heropoints": "Points d'Héroïsme/Vilainie"
}
+5 -5
View File
@@ -301,7 +301,7 @@ export class BoLActor extends Actor {
this.update({ [`system.attributes.${key}`]: attr, [`system.xp`]: xp })
this.addXPLog("attribute", key, nextXP, attr.value)
} else {
ui.notifications.warn("Pas assez de points d'expérience !")
ui.notifications.warn(game.i18n.localize("BOL.ui.notenoughxp"))
}
}
}
@@ -318,7 +318,7 @@ export class BoLActor extends Actor {
this.update({ [`system.aptitudes.${key}`]: apt, [`system.xp`]: xp })
this.addXPLog("aptitude", key, nextXP, apt.value)
} else {
ui.notifications.warn("Pas assez de points d'expérience !")
ui.notifications.warn(game.i18n.localize("BOL.ui.notenoughxp"))
}
}
}
@@ -335,7 +335,7 @@ export class BoLActor extends Actor {
this.updateEmbeddedDocuments('Item', [{ _id: career._id, 'system.rank': career.system.rank + 1 }])
this.addXPLog("career", career.name, nextXP, career.system.rank + 1)
} else {
ui.notifications.warn("Pas assez de points d'expérience !")
ui.notifications.warn(game.i18n.localize("BOL.ui.notenoughxp"))
}
}
}
@@ -866,12 +866,12 @@ export class BoLActor extends Actor {
if (this.system.resources.hp.value <= 0) {
if (!prone) {
await this.createEmbeddedDocuments("ActiveEffect", [
{ name: game.i18n.localize('EFFECT.StatusProne'), icon: 'icons/svg/falling.svg', statuses: 'prone' }
{ name: game.i18n.localize('EFFECT.StatusProne'), img: 'icons/svg/falling.svg', statuses: ['prone'] }
])
}
if (this.system.resources.hp.value < -5 && !dead) {
await this.createEmbeddedDocuments("ActiveEffect", [
{ name: game.i18n.localize('EFFECT.StatusDead'), icon: 'icons/svg/skull.svg', statuses: 'dead' }
{ name: game.i18n.localize('EFFECT.StatusDead'), img: 'icons/svg/skull.svg', statuses: ['dead'] }
])
}
ChatMessage.create({
+2 -2
View File
@@ -84,8 +84,8 @@ export class BoLHordeSheet extends foundry.appv1.sheets.ActorSheet {
// Delete Inventory Item
html.find('.item-delete').click(ev => {
Dialog.confirm({
title: "Suppression",
content: `Vous êtes sûr de vouloir supprimer cet item ?`,
title: game.i18n.localize("BOL.ui.deletetitle"),
content: game.i18n.localize("BOL.ui.confirmdelete"),
yes: () => {
const li = $(ev.currentTarget).parents(".item");
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")])
+2 -2
View File
@@ -94,8 +94,8 @@ export class BoLVehicleSheet extends foundry.appv1.sheets.ActorSheet {
// Delete Inventory Item
html.find('.item-delete').click(ev => {
Dialog.confirm({
title: "Suppression",
content: `Vous êtes sûr de vouloir supprimer cet item ?`,
title: game.i18n.localize("BOL.ui.deletetitle"),
content: game.i18n.localize("BOL.ui.confirmdelete"),
yes: () => {
const li = $(ev.currentTarget).parents(".item");
this.actor.deleteEmbeddedDocuments("Item", [li.data("itemId")])
@@ -49,6 +49,7 @@ export default class BoLBaseActorSheet extends HandlebarsApplicationMixin(foundr
return {
actor,
system: actor.system,
systemFields: actor.system.schema.fields,
config: game.bol.config,
isGM: game.user.isGM,
isEditable: this.isEditable,
@@ -112,7 +113,8 @@ export default class BoLBaseActorSheet extends HandlebarsApplicationMixin(foundr
link.addEventListener("click", (event) => {
event.preventDefault()
this.tabGroups[group] = tab
this.render()
nav.querySelectorAll("[data-tab]").forEach(l => l.classList.toggle("active", l.dataset.tab === tab))
this.element.querySelectorAll(`[data-group="${group}"][data-tab]`).forEach(c => c.classList.toggle("active", c.dataset.tab === tab))
})
})
+12 -9
View File
@@ -101,30 +101,33 @@ Hooks.once('init', async function () {
// Register hooks
registerHooks()
if (typeof Babele !== 'undefined') {
Babele.get().setSystemTranslationsDir("compendiums");
}
});
/* -------------------------------------------- */
Hooks.once("babele.init", (babele) => {
console.log("Initializing Babele translations")
babele.setSystemTranslationsDir("compendiums");
});
/* -------------------------------------------- */
async function welcomeMessage() {
const noRulebook = !game.modules.find(m => m.id === "bol-rulebook")
const noRulebook = !game.modules.get("bol-rulebook")?.active
const noChronicles = !game.modules.get("bol-chronicles-1")?.active
const content = await foundry.applications.handlebars.renderTemplate(
"systems/bol/templates/chat/chat-welcome.hbs",
{ noRulebook }
{ noRulebook, noChronicles }
)
ChatMessage.create({ user: game.user.id, whisper: [game.user.id], content })
if (game.user.isGM && game.i18n.lang == 'en' && !game.modules.find(m => m.id == "babele")) {
if (game.user.isGM && game.i18n.lang == 'en' && !game.modules.get("babele")?.active) {
const babeleWarning = game.i18n.localize("BOL.chat.babelewarning")
ChatMessage.create({
user: game.user.id,
whisper: [game.user.id],
content: `<div class="bol-welcome-card"><div class="welcome-body"><p class="welcome-warning">⚠ WARNING ! English language selected, but Babele module is not installed !<br>Please install babele from the module tab in Foundry interface.</p></div></div>`
content: `<div class="bol-welcome-card"><div class="welcome-body"><p class="welcome-warning">${babeleWarning}</p></div></div>`
})
ui.notifications.warn("WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.")
ui.notifications.warn(babeleWarning)
}
}
+7 -7
View File
@@ -154,7 +154,7 @@ export class BoLRoll {
// Manage specific case
let fightOption = actor.getActiveFightOption()
if (fightOption && fightOption.system.properties.fightoptiontype == "fulldefense") {
ui.notifications.warn(`{{actor.name}} est en Défense Totale ! Il ne peut pas attaquer ce round.`)
ui.notifications.warn(game.i18n.format("BOL.notification.FullDefense", { actor: actor.name }))
return
}
@@ -175,7 +175,7 @@ export class BoLRoll {
const li = $(event.currentTarget).parents(".item")
let weapon = actor.items.get(li.data("item-id"))
if (!weapon) {
ui.notifications.warn("Unable to find weapon !")
ui.notifications.warn(game.i18n.localize("BOL.notification.WeaponNotFound"))
return
}
weapon = foundry.utils.duplicate(weapon)
@@ -187,7 +187,7 @@ export class BoLRoll {
const li = $(event.currentTarget).parents(".item");
let alchemy = actor.items.get(li.data("item-id"));
if (!alchemy) {
ui.notifications.warn("Unable to find Alchemy !");
ui.notifications.warn(game.i18n.localize("BOL.notification.AlchemyNotFound"));
return;
}
alchemy = foundry.utils.duplicate(alchemy)
@@ -198,7 +198,7 @@ export class BoLRoll {
static alchemyCheckWithItem(actor, alchemy) {
let alchemyData = alchemy.system
if (alchemyData.properties.pccurrent < alchemyData.properties.pccost) {
ui.notifications.warn("Pas assez de Points de Création investis dans la Préparation !")
ui.notifications.warn(game.i18n.localize("BOL.notification.NotEnoughCreationPrep"))
return
}
@@ -260,13 +260,13 @@ export class BoLRoll {
/* -------------------------------------------- */
static spellCheck(actor, event) {
if (actor.system.resources.power.value <= 0) {
ui.notifications.warn("Plus assez de points de Pouvoir !")
ui.notifications.warn(game.i18n.localize("BOL.notification.NoPower"))
return
}
const li = $(event.currentTarget).parents(".item")
let spell = actor.items.get(li.data("item-id"))
if (!spell) {
ui.notifications.warn("Impossible de trouver ce sort !")
ui.notifications.warn(game.i18n.localize("BOL.notification.SpellNotFound"))
return
}
spell = foundry.utils.duplicate(spell)
@@ -583,7 +583,7 @@ export class BoLRoll {
callback: (event, button, dialog) => {
console.log("Submit Roll!!!!");
if (rollData.mode == 'spell' && rollData.ppCurrent < rollData.ppCost) {
ui.notifications.warn("Pas assez de Points de Pouvoir !")
ui.notifications.warn(game.i18n.localize("BOL.notification.NoPower"))
return false
}
rollData.registerInit = (rollData.aptitude && rollData.aptitude.key == 'init') ?
+2 -2
View File
@@ -246,10 +246,10 @@ export class BoLCalendar extends Application {
}
}
else if (name) {
ui.notifications.warn(name + " n'a pas d'heure de naissance, ou elle est incorrecte : " + heureNaissance);
ui.notifications.warn(game.i18n.format("BOL.notification.NoBirthHour", { actor: name, hour: heureNaissance }));
}
else {
ui.notifications.warn(heureNaissance + " ne correspond pas à une heure de naissance");
ui.notifications.warn(game.i18n.format("BOL.notification.BadBirthHour", { hour: heureNaissance }));
}
return 0;
}
+2 -2
View File
@@ -445,7 +445,7 @@ export class BoLUtility {
event.preventDefault()
let attr = event.currentTarget.attributes['data-attack-id']
if (!attr) {
ui.notifications.warn("Impossible de trouver l'attaque correspondante, erreur de suivi de combat.")
ui.notifications.warn(game.i18n.localize("BOL.notification.AttackNotFound"))
return
}
let attackId = event.currentTarget.attributes['data-attack-id'].value
@@ -583,7 +583,7 @@ export class BoLUtility {
this.blindMessageToGM(chatOptions);
chatOptions.whisper = [game.user.id];
chatOptions.content = "Message only to the GM";
chatOptions.content = game.i18n.localize("BOL.chat.msgonlygm");
}
else {
chatOptions.whisper = this.getUsers(user => user.isGM);
+42 -42
View File
@@ -413,108 +413,108 @@ BOL.bolEffectModifier = {
BOL.statusEffects = [
{
"id": "dead",
"label": "EFFECT.StatusDead",
"icon": "icons/svg/skull.svg"
"name": "EFFECT.StatusDead",
"img": "icons/svg/skull.svg"
},
{
"id": "unconscious",
"label": "EFFECT.StatusUnconscious",
"icon": "icons/svg/unconscious.svg"
"name": "EFFECT.StatusUnconscious",
"img": "icons/svg/unconscious.svg"
},
{
"id": "sleep",
"label": "EFFECT.StatusAsleep",
"icon": "icons/svg/sleep.svg"
"name": "EFFECT.StatusAsleep",
"img": "icons/svg/sleep.svg"
},
{
"id": "stun",
"label": "EFFECT.StatusStunned",
"icon": "icons/svg/daze.svg"
"name": "EFFECT.StatusStunned",
"img": "icons/svg/daze.svg"
},
{
"id": "prone",
"label": "EFFECT.StatusProne",
"icon": "icons/svg/falling.svg"
"name": "EFFECT.StatusProne",
"img": "icons/svg/falling.svg"
},
{
"id": "restrain",
"label": "EFFECT.StatusRestrained",
"icon": "icons/svg/net.svg"
"name": "EFFECT.StatusRestrained",
"img": "icons/svg/net.svg"
},
{
"id": "paralysis",
"label": "EFFECT.StatusParalysis",
"icon": "icons/svg/paralysis.svg"
"name": "EFFECT.StatusParalysis",
"img": "icons/svg/paralysis.svg"
},
{
"id": "fly",
"label": "EFFECT.StatusFlying",
"icon": "icons/svg/wing.svg"
"name": "EFFECT.StatusFlying",
"img": "icons/svg/wing.svg"
},
{
"id": "blind",
"label": "EFFECT.StatusBlind",
"icon": "icons/svg/blind.svg"
"name": "EFFECT.StatusBlind",
"img": "icons/svg/blind.svg"
},
{
"id": "deaf",
"label": "EFFECT.StatusDeaf",
"icon": "icons/svg/deaf.svg"
"name": "EFFECT.StatusDeaf",
"img": "icons/svg/deaf.svg"
},
{
"id": "silence",
"label": "EFFECT.StatusSilenced",
"icon": "icons/svg/silenced.svg"
"name": "EFFECT.StatusSilenced",
"img": "icons/svg/silenced.svg"
},
{
"id": "fear",
"label": "EFFECT.StatusFear",
"icon": "icons/svg/terror.svg"
"name": "EFFECT.StatusFear",
"img": "icons/svg/terror.svg"
},
{
"id": "burning",
"label": "EFFECT.StatusBurning",
"icon": "icons/svg/fire.svg"
"name": "EFFECT.StatusBurning",
"img": "icons/svg/fire.svg"
},
{
"id": "frozen",
"label": "EFFECT.StatusFrozen",
"icon": "icons/svg/frozen.svg"
"name": "EFFECT.StatusFrozen",
"img": "icons/svg/frozen.svg"
},
{
"id": "shock",
"label": "EFFECT.StatusShocked",
"icon": "icons/svg/lightning.svg"
"name": "EFFECT.StatusShocked",
"img": "icons/svg/lightning.svg"
},
{
"id": "disease",
"label": "EFFECT.StatusDisease",
"icon": "icons/svg/biohazard.svg"
"name": "EFFECT.StatusDisease",
"img": "icons/svg/biohazard.svg"
},
{
"id": "poison",
"label": "EFFECT.StatusPoison",
"icon": "icons/svg/poison.svg"
"name": "EFFECT.StatusPoison",
"img": "icons/svg/poison.svg"
},
{
"id": "curse",
"label": "EFFECT.StatusCursed",
"icon": "icons/svg/sun.svg"
"name": "EFFECT.StatusCursed",
"img": "icons/svg/sun.svg"
},
{
"id": "invisible",
"label": "EFFECT.StatusInvisible",
"icon": "icons/svg/invisible.svg"
"name": "EFFECT.StatusInvisible",
"img": "icons/svg/invisible.svg"
},
{
"id": "target",
"label": "EFFECT.StatusTarget",
"icon": "icons/svg/target.svg"
"name": "EFFECT.StatusTarget",
"img": "icons/svg/target.svg"
},
{
"id": "eye",
"label": "EFFECT.StatusMarked",
"icon": "icons/svg/eye.svg"
"name": "EFFECT.StatusMarked",
"img": "icons/svg/eye.svg"
}
]
+7
View File
@@ -141,6 +141,13 @@ export const registerHandlebarsHelpers = function () {
return key == "creature" || key == "daemon";
})
// Journal entry documenting Heroic/Legendary success options, localized
Handlebars.registerHelper('criticalJournalId', function () {
return game.i18n.lang === "en"
? "cNk3xcQ1F7I3Uk8Q" // Rules summary (EN)
: "veAAxCtCKcFIsnln"; // Vademecum des Joueurs (FR)
})
// Handle v12 removal of this helper
Handlebars.registerHelper('select', function (selected, options) {
const escapedValue = RegExp.escape(Handlebars.escapeExpression(selected));
+8 -8
View File
@@ -82,19 +82,19 @@ export class Macros {
static _findItem(actor, type, nameOrIndex) {
const items = actor.items.filter(i => i.type === type)
if (items.length === 0) {
ui.notifications.warn(`${actor.name} : aucun(e) ${type} trouvé(e).`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroNoItemFound", { actor: actor.name, type }))
return undefined
}
if (nameOrIndex === undefined || nameOrIndex === null) {
if (items.length === 1) return foundry.utils.duplicate(items[0])
const names = items.map((it, i) => `[${i}] ${it.name}`).join(', ')
ui.notifications.warn(`Précisez le nom ou l'index : ${names}`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroSpecifyNameOrIndex", { names }))
return undefined
}
if (typeof nameOrIndex === "number") {
const item = items[nameOrIndex]
if (!item) {
ui.notifications.warn(`${actor.name} : index ${nameOrIndex} invalide pour ${type}.`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroBadIndex", { actor: actor.name, index: nameOrIndex, type }))
return undefined
}
return foundry.utils.duplicate(item)
@@ -102,7 +102,7 @@ export class Macros {
const lower = String(nameOrIndex).toLowerCase()
const found = items.find(i => i.name.toLowerCase().includes(lower))
if (!found) {
ui.notifications.warn(`${actor.name} : ${type} "${nameOrIndex}" introuvable.`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroItemNotFound", { actor: actor.name, type, name: nameOrIndex }))
return undefined
}
return foundry.utils.duplicate(found)
@@ -118,7 +118,7 @@ export class Macros {
actor = actor ?? this.getSpeakersActor()
if (!actor) return
if (!actor.system.attributes[key]) {
ui.notifications.warn(`Attribut inconnu : "${key}". Valeurs : vigor, agility, mind, appeal`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroUnknownAttribute", { key }))
return
}
return BoLRoll.attributeCheck(actor, key)
@@ -134,7 +134,7 @@ export class Macros {
actor = actor ?? this.getSpeakersActor()
if (!actor) return
if (!actor.system.aptitudes[key]) {
ui.notifications.warn(`Aptitude inconnue : "${key}". Valeurs : init, melee, ranged, def`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroUnknownAptitude", { key }))
return
}
return BoLRoll.aptitudeCheck(actor, key)
@@ -164,7 +164,7 @@ export class Macros {
actor = actor ?? this.getSpeakersActor()
if (!actor) return
if ((actor.system.resources.power?.value ?? 1) <= 0) {
ui.notifications.warn("Plus assez de points de Pouvoir !")
ui.notifications.warn(game.i18n.localize("BOL.notification.MacroNoPower"))
return
}
const spell = this._findItem(actor, "spell", nameOrIndex)
@@ -214,7 +214,7 @@ export class Macros {
case "alchemy": return this.rollAlchemy(key, actor)
case "horoscope": return this.rollHoroscope(key ?? "minor", actor)
default:
ui.notifications.warn(`Type de jet inconnu : "${type}". Types valides : attribute, aptitude, weapon, spell, alchemy, horoscope`)
ui.notifications.warn(game.i18n.format("BOL.notification.MacroUnknownRollType", { type }))
}
}
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001138
MANIFEST-001239
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.733439 7ff3bebfd6c0 Recovering log #1135
2026/04/11-21:28:04.743122 7ff3bebfd6c0 Delete type=3 #1133
2026/04/11-21:28:04.743177 7ff3bebfd6c0 Delete type=0 #1135
2026/04/11-21:28:49.377435 7ff3bdbfb6c0 Level-0 table #1141: started
2026/04/11-21:28:49.377469 7ff3bdbfb6c0 Level-0 table #1141: 0 bytes OK
2026/04/11-21:28:49.413622 7ff3bdbfb6c0 Delete type=0 #1139
2026/04/11-21:28:49.456441 7ff3bdbfb6c0 Manual compaction at level-0 from '!journal!6cCdSvQgEHJ1bvX4' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.571109 7f3591bfd6c0 Recovering log #1238
2026/08/04-08:21:29.591159 7f3591bfd6c0 Delete type=0 #1238
2026/08/04-08:21:29.591228 7f3591bfd6c0 Delete type=3 #1237
2026/08/04-09:53:52.957051 7f3590bfb6c0 Level-0 table #1242: started
2026/08/04-09:53:52.957089 7f3590bfb6c0 Level-0 table #1242: 0 bytes OK
2026/08/04-09:53:52.998497 7f3590bfb6c0 Delete type=0 #1240
2026/08/04-09:53:53.115038 7f3590bfb6c0 Manual compaction at level-0 from '!journal!6cCdSvQgEHJ1bvX4' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
+3 -14
View File
@@ -1,14 +1,3 @@
2026/04/11-21:19:06.264443 7ff3bf3fe6c0 Recovering log #1130
2026/04/11-21:19:06.275289 7ff3bf3fe6c0 Delete type=3 #1128
2026/04/11-21:19:06.275358 7ff3bf3fe6c0 Delete type=0 #1130
2026/04/11-21:27:57.082652 7ff3bdbfb6c0 Level-0 table #1136: started
2026/04/11-21:27:57.086593 7ff3bdbfb6c0 Level-0 table #1136: 2472 bytes OK
2026/04/11-21:27:57.092696 7ff3bdbfb6c0 Delete type=0 #1134
2026/04/11-21:27:57.111697 7ff3bdbfb6c0 Manual compaction at level-0 from '!journal!6cCdSvQgEHJ1bvX4' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at '!journal.pages!8ihDiCxC47fcdKVA.MOWru5Dbvs4iozXm' @ 325 : 1
2026/04/11-21:27:57.111705 7ff3bdbfb6c0 Compacting 1@0 + 1@1 files
2026/04/11-21:27:57.115555 7ff3bdbfb6c0 Generated table #1137@0: 23 keys, 27230 bytes
2026/04/11-21:27:57.115568 7ff3bdbfb6c0 Compacted 1@0 + 1@1 files => 27230 bytes
2026/04/11-21:27:57.121399 7ff3bdbfb6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/11-21:27:57.121501 7ff3bdbfb6c0 Delete type=2 #1132
2026/04/11-21:27:57.121625 7ff3bdbfb6c0 Delete type=2 #1136
2026/04/11-21:27:57.121723 7ff3bdbfb6c0 Manual compaction at level-0 from '!journal.pages!8ihDiCxC47fcdKVA.MOWru5Dbvs4iozXm' @ 325 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2026/08/04-08:20:57.432442 7f5160dfe6c0 Recovering log #1235
2026/08/04-08:20:57.444689 7f5160dfe6c0 Delete type=3 #1233
2026/08/04-08:20:57.444770 7f5160dfe6c0 Delete type=0 #1235
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001039
MANIFEST-001138
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.708004 7ff3be3fc6c0 Recovering log #1037
2026/04/11-21:28:04.718300 7ff3be3fc6c0 Delete type=3 #1035
2026/04/11-21:28:04.718366 7ff3be3fc6c0 Delete type=0 #1037
2026/04/11-21:28:49.305595 7ff3bdbfb6c0 Level-0 table #1042: started
2026/04/11-21:28:49.305624 7ff3bdbfb6c0 Level-0 table #1042: 0 bytes OK
2026/04/11-21:28:49.334673 7ff3bdbfb6c0 Delete type=0 #1040
2026/04/11-21:28:49.456420 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.528298 7f3591bfd6c0 Recovering log #1136
2026/08/04-08:21:29.545330 7f3591bfd6c0 Delete type=3 #1134
2026/08/04-08:21:29.545404 7f3591bfd6c0 Delete type=0 #1136
2026/08/04-09:53:52.998701 7f3590bfb6c0 Level-0 table #1141: started
2026/08/04-09:53:52.998737 7f3590bfb6c0 Level-0 table #1141: 0 bytes OK
2026/08/04-09:53:53.035632 7f3590bfb6c0 Delete type=0 #1139
2026/08/04-09:53:53.115056 7f3590bfb6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.240951 7ff3be3fc6c0 Recovering log #1033
2026/04/11-21:19:06.250426 7ff3be3fc6c0 Delete type=3 #1031
2026/04/11-21:19:06.250488 7ff3be3fc6c0 Delete type=0 #1033
2026/04/11-21:27:57.098718 7ff3bdbfb6c0 Level-0 table #1038: started
2026/04/11-21:27:57.098740 7ff3bdbfb6c0 Level-0 table #1038: 0 bytes OK
2026/04/11-21:27:57.104599 7ff3bdbfb6c0 Delete type=0 #1036
2026/04/11-21:27:57.121701 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.750852 7f0ff57ff6c0 Recovering log #1132
2026/08/03-06:19:48.761758 7f0ff57ff6c0 Delete type=3 #1130
2026/08/03-06:19:48.761842 7f0ff57ff6c0 Delete type=0 #1132
2026/08/03-06:38:26.817856 7f0fa6ffd6c0 Level-0 table #1137: started
2026/08/03-06:38:26.817889 7f0fa6ffd6c0 Level-0 table #1137: 0 bytes OK
2026/08/03-06:38:26.824151 7f0fa6ffd6c0 Delete type=0 #1135
2026/08/03-06:38:26.824513 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001133
MANIFEST-001232
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.608888 7ff3be3fc6c0 Recovering log #1131
2026/04/11-21:28:04.618597 7ff3be3fc6c0 Delete type=3 #1129
2026/04/11-21:28:04.618657 7ff3be3fc6c0 Delete type=0 #1131
2026/04/11-21:28:49.095706 7ff3bdbfb6c0 Level-0 table #1136: started
2026/04/11-21:28:49.095741 7ff3bdbfb6c0 Level-0 table #1136: 0 bytes OK
2026/04/11-21:28:49.132472 7ff3bdbfb6c0 Delete type=0 #1134
2026/04/11-21:28:49.170383 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.355610 7f3591bfd6c0 Recovering log #1230
2026/08/04-08:21:29.376426 7f3591bfd6c0 Delete type=3 #1228
2026/08/04-08:21:29.376535 7f3591bfd6c0 Delete type=0 #1230
2026/08/04-09:53:52.678512 7f3590bfb6c0 Level-0 table #1235: started
2026/08/04-09:53:52.678542 7f3590bfb6c0 Level-0 table #1235: 0 bytes OK
2026/08/04-09:53:52.734515 7f3590bfb6c0 Delete type=0 #1233
2026/08/04-09:53:52.803577 7f3590bfb6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.144409 7ff3be3fc6c0 Recovering log #1127
2026/04/11-21:19:06.153957 7ff3be3fc6c0 Delete type=3 #1125
2026/04/11-21:19:06.154021 7ff3be3fc6c0 Delete type=0 #1127
2026/04/11-21:27:57.045260 7ff3bdbfb6c0 Level-0 table #1132: started
2026/04/11-21:27:57.045286 7ff3bdbfb6c0 Level-0 table #1132: 0 bytes OK
2026/04/11-21:27:57.051070 7ff3bdbfb6c0 Delete type=0 #1130
2026/04/11-21:27:57.057054 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.636406 7f0ff4ffe6c0 Recovering log #1226
2026/08/03-06:19:48.647892 7f0ff4ffe6c0 Delete type=3 #1224
2026/08/03-06:19:48.647974 7f0ff4ffe6c0 Delete type=0 #1226
2026/08/03-06:38:26.769280 7f0fa6ffd6c0 Level-0 table #1231: started
2026/08/03-06:38:26.769359 7f0fa6ffd6c0 Level-0 table #1231: 0 bytes OK
2026/08/03-06:38:26.776073 7f0fa6ffd6c0 Delete type=0 #1229
2026/08/03-06:38:26.797077 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001132
MANIFEST-001231
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.620767 7ff3bfbff6c0 Recovering log #1130
2026/04/11-21:28:04.630558 7ff3bfbff6c0 Delete type=3 #1128
2026/04/11-21:28:04.630621 7ff3bfbff6c0 Delete type=0 #1130
2026/04/11-21:28:49.058278 7ff3bdbfb6c0 Level-0 table #1135: started
2026/04/11-21:28:49.058305 7ff3bdbfb6c0 Level-0 table #1135: 0 bytes OK
2026/04/11-21:28:49.095507 7ff3bdbfb6c0 Delete type=0 #1133
2026/04/11-21:28:49.170373 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.380656 7f35913fc6c0 Recovering log #1229
2026/08/04-08:21:29.401993 7f35913fc6c0 Delete type=3 #1227
2026/08/04-08:21:29.402068 7f35913fc6c0 Delete type=0 #1229
2026/08/04-09:53:52.630733 7f3590bfb6c0 Level-0 table #1234: started
2026/08/04-09:53:52.630808 7f3590bfb6c0 Level-0 table #1234: 0 bytes OK
2026/08/04-09:53:52.678363 7f3590bfb6c0 Delete type=0 #1232
2026/08/04-09:53:52.803556 7f3590bfb6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.155820 7ff3bfbff6c0 Recovering log #1126
2026/04/11-21:19:06.166134 7ff3bfbff6c0 Delete type=3 #1124
2026/04/11-21:19:06.166197 7ff3bfbff6c0 Delete type=0 #1126
2026/04/11-21:27:57.031682 7ff3bdbfb6c0 Level-0 table #1131: started
2026/04/11-21:27:57.031756 7ff3bdbfb6c0 Level-0 table #1131: 0 bytes OK
2026/04/11-21:27:57.038391 7ff3bdbfb6c0 Delete type=0 #1129
2026/04/11-21:27:57.057035 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.651558 7f0ff57ff6c0 Recovering log #1225
2026/08/03-06:19:48.662260 7f0ff57ff6c0 Delete type=3 #1223
2026/08/03-06:19:48.662354 7f0ff57ff6c0 Delete type=0 #1225
2026/08/03-06:38:26.782903 7f0fa6ffd6c0 Level-0 table #1230: started
2026/08/03-06:38:26.782939 7f0fa6ffd6c0 Level-0 table #1230: 0 bytes OK
2026/08/03-06:38:26.790042 7f0fa6ffd6c0 Delete type=0 #1228
2026/08/03-06:38:26.797110 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001132
MANIFEST-001231
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.644730 7ff3bfbff6c0 Recovering log #1130
2026/04/11-21:28:04.655618 7ff3bfbff6c0 Delete type=3 #1128
2026/04/11-21:28:04.655815 7ff3bfbff6c0 Delete type=0 #1130
2026/04/11-21:28:49.132705 7ff3bdbfb6c0 Level-0 table #1135: started
2026/04/11-21:28:49.132747 7ff3bdbfb6c0 Level-0 table #1135: 0 bytes OK
2026/04/11-21:28:49.170220 7ff3bdbfb6c0 Delete type=0 #1133
2026/04/11-21:28:49.170391 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.426266 7f35923fe6c0 Recovering log #1229
2026/08/04-08:21:29.442494 7f35923fe6c0 Delete type=3 #1227
2026/08/04-08:21:29.442560 7f35923fe6c0 Delete type=0 #1229
2026/08/04-09:53:52.882869 7f3590bfb6c0 Level-0 table #1234: started
2026/08/04-09:53:52.882905 7f3590bfb6c0 Level-0 table #1234: 0 bytes OK
2026/08/04-09:53:52.919503 7f3590bfb6c0 Delete type=0 #1232
2026/08/04-09:53:52.956792 7f3590bfb6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.179631 7ff3bebfd6c0 Recovering log #1126
2026/04/11-21:19:06.189451 7ff3bebfd6c0 Delete type=3 #1124
2026/04/11-21:19:06.189498 7ff3bebfd6c0 Delete type=0 #1126
2026/04/11-21:27:57.051143 7ff3bdbfb6c0 Level-0 table #1131: started
2026/04/11-21:27:57.051164 7ff3bdbfb6c0 Level-0 table #1131: 0 bytes OK
2026/04/11-21:27:57.056960 7ff3bdbfb6c0 Delete type=0 #1129
2026/04/11-21:27:57.057062 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.681657 7f0ff4ffe6c0 Recovering log #1225
2026/08/03-06:19:48.692268 7f0ff4ffe6c0 Delete type=3 #1223
2026/08/03-06:19:48.692351 7f0ff4ffe6c0 Delete type=0 #1225
2026/08/03-06:38:26.790164 7f0fa6ffd6c0 Level-0 table #1230: started
2026/08/03-06:38:26.790190 7f0fa6ffd6c0 Level-0 table #1230: 0 bytes OK
2026/08/03-06:38:26.796894 7f0fa6ffd6c0 Delete type=0 #1228
2026/08/03-06:38:26.797197 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001130
MANIFEST-001229
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.822069 7ff3bebfd6c0 Recovering log #1128
2026/04/11-21:28:04.831801 7ff3bebfd6c0 Delete type=3 #1126
2026/04/11-21:28:04.831849 7ff3bebfd6c0 Delete type=0 #1128
2026/04/11-21:28:49.681591 7ff3bdbfb6c0 Level-0 table #1133: started
2026/04/11-21:28:49.681658 7ff3bdbfb6c0 Level-0 table #1133: 0 bytes OK
2026/04/11-21:28:49.718700 7ff3bdbfb6c0 Delete type=0 #1131
2026/04/11-21:28:49.761295 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.736235 7f3592bff6c0 Recovering log #1227
2026/08/04-08:21:29.753212 7f3592bff6c0 Delete type=3 #1225
2026/08/04-08:21:29.753288 7f3592bff6c0 Delete type=0 #1227
2026/08/04-09:53:53.269403 7f3590bfb6c0 Level-0 table #1232: started
2026/08/04-09:53:53.269440 7f3590bfb6c0 Level-0 table #1232: 0 bytes OK
2026/08/04-09:53:53.308866 7f3590bfb6c0 Delete type=0 #1230
2026/08/04-09:53:53.444562 7f3590bfb6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.351355 7ff3bfbff6c0 Recovering log #1124
2026/04/11-21:19:06.361887 7ff3bfbff6c0 Delete type=3 #1122
2026/04/11-21:19:06.361938 7ff3bfbff6c0 Delete type=0 #1124
2026/04/11-21:27:57.154739 7ff3bdbfb6c0 Level-0 table #1129: started
2026/04/11-21:27:57.154770 7ff3bdbfb6c0 Level-0 table #1129: 0 bytes OK
2026/04/11-21:27:57.160975 7ff3bdbfb6c0 Delete type=0 #1127
2026/04/11-21:27:57.175182 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.879803 7f0ff57ff6c0 Recovering log #1223
2026/08/03-06:19:48.890084 7f0ff57ff6c0 Delete type=3 #1221
2026/08/03-06:19:48.890177 7f0ff57ff6c0 Delete type=0 #1223
2026/08/03-06:38:26.891447 7f0fa6ffd6c0 Level-0 table #1228: started
2026/08/03-06:38:26.891477 7f0fa6ffd6c0 Level-0 table #1228: 0 bytes OK
2026/08/03-06:38:26.898218 7f0fa6ffd6c0 Delete type=0 #1226
2026/08/03-06:38:26.913139 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001133
MANIFEST-001232
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.683176 7ff3bebfd6c0 Recovering log #1131
2026/04/11-21:28:04.693337 7ff3bebfd6c0 Delete type=3 #1129
2026/04/11-21:28:04.693387 7ff3bebfd6c0 Delete type=0 #1131
2026/04/11-21:28:49.233539 7ff3bdbfb6c0 Level-0 table #1136: started
2026/04/11-21:28:49.233570 7ff3bdbfb6c0 Level-0 table #1136: 0 bytes OK
2026/04/11-21:28:49.271356 7ff3bdbfb6c0 Delete type=0 #1134
2026/04/11-21:28:49.305506 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.488367 7f3592bff6c0 Recovering log #1230
2026/08/04-08:21:29.504785 7f3592bff6c0 Delete type=3 #1228
2026/08/04-08:21:29.504886 7f3592bff6c0 Delete type=0 #1230
2026/08/04-09:53:52.803860 7f3590bfb6c0 Level-0 table #1235: started
2026/08/04-09:53:52.803910 7f3590bfb6c0 Level-0 table #1235: 0 bytes OK
2026/08/04-09:53:52.842964 7f3590bfb6c0 Delete type=0 #1233
2026/08/04-09:53:52.956755 7f3590bfb6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.215905 7ff3be3fc6c0 Recovering log #1127
2026/04/11-21:19:06.225729 7ff3be3fc6c0 Delete type=3 #1125
2026/04/11-21:19:06.225801 7ff3be3fc6c0 Delete type=0 #1127
2026/04/11-21:27:57.070299 7ff3bdbfb6c0 Level-0 table #1132: started
2026/04/11-21:27:57.070342 7ff3bdbfb6c0 Level-0 table #1132: 0 bytes OK
2026/04/11-21:27:57.076462 7ff3bdbfb6c0 Delete type=0 #1130
2026/04/11-21:27:57.082540 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.722782 7f0ff57ff6c0 Recovering log #1226
2026/08/03-06:19:48.732938 7f0ff57ff6c0 Delete type=3 #1224
2026/08/03-06:19:48.733013 7f0ff57ff6c0 Delete type=0 #1226
2026/08/03-06:38:26.811182 7f0fa6ffd6c0 Level-0 table #1231: started
2026/08/03-06:38:26.811213 7f0fa6ffd6c0 Level-0 table #1231: 0 bytes OK
2026/08/03-06:38:26.817698 7f0fa6ffd6c0 Delete type=0 #1229
2026/08/03-06:38:26.824339 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001132
MANIFEST-001231
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.771459 7ff3bebfd6c0 Recovering log #1130
2026/04/11-21:28:04.782419 7ff3bebfd6c0 Delete type=3 #1128
2026/04/11-21:28:04.782481 7ff3bebfd6c0 Delete type=0 #1130
2026/04/11-21:28:49.490812 7ff3bdbfb6c0 Level-0 table #1135: started
2026/04/11-21:28:49.490847 7ff3bdbfb6c0 Level-0 table #1135: 0 bytes OK
2026/04/11-21:28:49.523118 7ff3bdbfb6c0 Delete type=0 #1133
2026/04/11-21:28:49.606517 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.651551 7f3591bfd6c0 Recovering log #1229
2026/08/04-08:21:29.671782 7f3591bfd6c0 Delete type=3 #1227
2026/08/04-08:21:29.671869 7f3591bfd6c0 Delete type=0 #1229
2026/08/04-09:53:53.239483 7f3590bfb6c0 Level-0 table #1234: started
2026/08/04-09:53:53.239521 7f3590bfb6c0 Level-0 table #1234: 0 bytes OK
2026/08/04-09:53:53.268877 7f3590bfb6c0 Delete type=0 #1232
2026/08/04-09:53:53.269377 7f3590bfb6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.302307 7ff3bfbff6c0 Recovering log #1126
2026/04/11-21:19:06.312721 7ff3bfbff6c0 Delete type=3 #1124
2026/04/11-21:19:06.312775 7ff3bfbff6c0 Delete type=0 #1126
2026/04/11-21:27:57.121860 7ff3bdbfb6c0 Level-0 table #1131: started
2026/04/11-21:27:57.121898 7ff3bdbfb6c0 Level-0 table #1131: 0 bytes OK
2026/04/11-21:27:57.127875 7ff3bdbfb6c0 Delete type=0 #1129
2026/04/11-21:27:57.147924 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.822051 7f0fa7fff6c0 Recovering log #1225
2026/08/03-06:19:48.832528 7f0fa7fff6c0 Delete type=3 #1223
2026/08/03-06:19:48.832595 7f0fa7fff6c0 Delete type=0 #1225
2026/08/03-06:38:26.861128 7f0fa6ffd6c0 Level-0 table #1230: started
2026/08/03-06:38:26.861152 7f0fa6ffd6c0 Level-0 table #1230: 0 bytes OK
2026/08/03-06:38:26.869011 7f0fa6ffd6c0 Delete type=0 #1228
2026/08/03-06:38:26.883307 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000615
MANIFEST-000714
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.784582 7ff3be3fc6c0 Recovering log #613
2026/04/11-21:28:04.794288 7ff3be3fc6c0 Delete type=3 #611
2026/04/11-21:28:04.794347 7ff3be3fc6c0 Delete type=0 #613
2026/04/11-21:28:49.523267 7ff3bdbfb6c0 Level-0 table #618: started
2026/04/11-21:28:49.523294 7ff3bdbfb6c0 Level-0 table #618: 0 bytes OK
2026/04/11-21:28:49.563196 7ff3bdbfb6c0 Delete type=0 #616
2026/04/11-21:28:49.606526 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.675807 7f35923fe6c0 Recovering log #712
2026/08/04-08:21:29.692121 7f35923fe6c0 Delete type=3 #710
2026/08/04-08:21:29.692200 7f35923fe6c0 Delete type=0 #712
2026/08/04-09:53:53.202018 7f3590bfb6c0 Level-0 table #717: started
2026/08/04-09:53:53.202055 7f3590bfb6c0 Level-0 table #717: 0 bytes OK
2026/08/04-09:53:53.239275 7f3590bfb6c0 Delete type=0 #715
2026/08/04-09:53:53.269141 7f3590bfb6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.314651 7ff3bebfd6c0 Recovering log #609
2026/04/11-21:19:06.324515 7ff3bebfd6c0 Delete type=3 #607
2026/04/11-21:19:06.324590 7ff3bebfd6c0 Delete type=0 #609
2026/04/11-21:27:57.135220 7ff3bdbfb6c0 Level-0 table #614: started
2026/04/11-21:27:57.135248 7ff3bdbfb6c0 Level-0 table #614: 0 bytes OK
2026/04/11-21:27:57.141172 7ff3bdbfb6c0 Delete type=0 #612
2026/04/11-21:27:57.147942 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.835817 7f0ff57ff6c0 Recovering log #708
2026/08/03-06:19:48.845651 7f0ff57ff6c0 Delete type=3 #706
2026/08/03-06:19:48.845733 7f0ff57ff6c0 Delete type=0 #708
2026/08/03-06:38:26.869191 7f0fa6ffd6c0 Level-0 table #713: started
2026/08/03-06:38:26.869223 7f0fa6ffd6c0 Level-0 table #713: 0 bytes OK
2026/08/03-06:38:26.875780 7f0fa6ffd6c0 Delete type=0 #711
2026/08/03-06:38:26.883321 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
View File
+1 -1
View File
@@ -1 +1 @@
MANIFEST-001133
MANIFEST-001232
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:28:04.632656 7ff3be3fc6c0 Recovering log #1131
2026/04/11-21:28:04.642627 7ff3be3fc6c0 Delete type=3 #1129
2026/04/11-21:28:04.642693 7ff3be3fc6c0 Delete type=0 #1131
2026/04/11-21:28:49.022252 7ff3bdbfb6c0 Level-0 table #1136: started
2026/04/11-21:28:49.022296 7ff3bdbfb6c0 Level-0 table #1136: 0 bytes OK
2026/04/11-21:28:49.058141 7ff3bdbfb6c0 Delete type=0 #1134
2026/04/11-21:28:49.170360 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!0wCqg1UpGd50uJrS' @ 72057594037927935 : 1 .. '!items!znd0K3b7HzYpdehs' @ 0 : 0; will stop at (end)
2026/08/04-08:21:29.405032 7f3592bff6c0 Recovering log #1230
2026/08/04-08:21:29.422770 7f3592bff6c0 Delete type=3 #1228
2026/08/04-08:21:29.422843 7f3592bff6c0 Delete type=0 #1230
2026/08/04-09:53:52.734650 7f3590bfb6c0 Level-0 table #1235: started
2026/08/04-09:53:52.734681 7f3590bfb6c0 Level-0 table #1235: 0 bytes OK
2026/08/04-09:53:52.765393 7f3590bfb6c0 Delete type=0 #1233
2026/08/04-09:53:52.803591 7f3590bfb6c0 Manual compaction at level-0 from '!items!0wCqg1UpGd50uJrS' @ 72057594037927935 : 1 .. '!items!znd0K3b7HzYpdehs' @ 0 : 0; will stop at (end)
+7 -7
View File
@@ -1,7 +1,7 @@
2026/04/11-21:19:06.167811 7ff3bf3fe6c0 Recovering log #1127
2026/04/11-21:19:06.177763 7ff3bf3fe6c0 Delete type=3 #1125
2026/04/11-21:19:06.177819 7ff3bf3fe6c0 Delete type=0 #1127
2026/04/11-21:27:57.038506 7ff3bdbfb6c0 Level-0 table #1132: started
2026/04/11-21:27:57.038536 7ff3bdbfb6c0 Level-0 table #1132: 0 bytes OK
2026/04/11-21:27:57.045178 7ff3bdbfb6c0 Delete type=0 #1130
2026/04/11-21:27:57.057045 7ff3bdbfb6c0 Manual compaction at level-0 from '!items!0wCqg1UpGd50uJrS' @ 72057594037927935 : 1 .. '!items!znd0K3b7HzYpdehs' @ 0 : 0; will stop at (end)
2026/08/03-06:19:48.667201 7f0fa7fff6c0 Recovering log #1226
2026/08/03-06:19:48.678016 7f0fa7fff6c0 Delete type=3 #1224
2026/08/03-06:19:48.678104 7f0fa7fff6c0 Delete type=0 #1226
2026/08/03-06:38:26.776208 7f0fa6ffd6c0 Level-0 table #1231: started
2026/08/03-06:38:26.776233 7f0fa6ffd6c0 Level-0 table #1231: 0 bytes OK
2026/08/03-06:38:26.782751 7f0fa6ffd6c0 Delete type=0 #1229
2026/08/03-06:38:26.797096 7f0fa6ffd6c0 Manual compaction at level-0 from '!items!0wCqg1UpGd50uJrS' @ 72057594037927935 : 1 .. '!items!znd0K3b7HzYpdehs' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
View File

Some files were not shown because too many files have changed in this diff Show More