Compare commits

..

22 Commits

Author SHA1 Message Date
2abd2c881a Sync bol compendiums 2026-01-12 23:01:53 +01:00
3fa5ca66d1 Minor fix for chronicles v1 2025-12-04 18:26:26 +01:00
6de15eeda7 Ajout alignement Mythic+
Some checks failed
Release Creation / build (release) Failing after 43s
2025-09-28 20:52:09 +02:00
724c096743 Ajout alignement Mythic+
Some checks failed
Release Creation / build (release) Failing after 39s
2025-09-28 20:47:31 +02:00
3e3a4b9ec1 Ajout alignement Mythic+
Some checks failed
Release Creation / build (release) Failing after 41s
2025-09-28 20:42:01 +02:00
425a2a1fc0 Fix odd difficulties
Some checks failed
Release Creation / build (release) Failing after 45s
2025-08-24 22:18:39 +02:00
203d7add66 FIx journals color
Some checks failed
Release Creation / build (release) Failing after 1m38s
2025-07-08 22:34:13 +02:00
8ae193dc34 Fix items sheets
Some checks failed
Release Creation / build (release) Failing after 1m0s
2025-05-15 18:18:40 +02:00
3904f595b5 Add repo
Some checks failed
Release Creation / build (release) Failing after 1m1s
2025-05-15 15:29:49 +02:00
1bf21fae7f Add repo 2025-05-15 14:29:11 +02:00
22579c21bc Update for Foundry v13
Some checks failed
Release Creation / build (release) Failing after 58s
2025-05-09 21:58:37 +02:00
50c5c31e7b Update for Foundry v13 2025-05-09 21:56:03 +02:00
a8c05cd4de Update for Foundry v13 2025-05-09 21:54:29 +02:00
e1cea78059 Update for Foundry v13 2025-05-09 21:54:10 +02:00
c2f9934f5f Fix welcome message 2025-03-31 07:21:30 +02:00
313c8a85fa Fix welcome message 2025-03-31 07:15:38 +02:00
74f6d4d54a Fix empty lands, Fix #33 2025-02-12 07:02:24 +01:00
2eb153ce14 Various fixes for translations 2025-02-11 21:55:04 +01:00
fe513e821a Fix AIS from ARESIA inputs 2025-02-11 21:45:30 +01:00
1b72c9c467 Various fixes for rulebook module 2025-02-10 20:28:13 +01:00
3c3a0901da Fix issues #30 and #31 2025-02-09 21:08:20 +01:00
3fc6d3e3df Fix issues #30 and #31 2025-02-09 21:08:02 +01:00
174 changed files with 1119 additions and 675 deletions

View File

@@ -1,6 +1,6 @@
name: Release Creation name: Release Creation
on: on:
release: release:
types: [published] types: [published]
@@ -8,47 +8,47 @@ jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner." - run: echo "💡 The ${{ gitea.repository }} repository will cloned to the runner."
#- uses: actions/checkout@v3
- uses: RouxAntoine/checkout@v3.5.4
with:
ref: 'v10'
# get part of the tag after the `v` #- uses: actions/checkout@v3
- name: Extract tag version number - uses: RouxAntoine/checkout@v3.5.4
id: get_version with:
uses: battila7/get-version-action@v2 ref: "v13"
# Substitute the Manifest and Download URLs in the module.json # get part of the tag after the `v`
- name: Substitute Manifest and Download Links For Versioned Ones - name: Extract tag version number
id: sub_manifest_link_version id: get_version
uses: microsoft/variable-substitution@v1 uses: battila7/get-version-action@v2
with:
files: 'system.json'
env:
version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/public/bol
manifest: https://www.uberwald.me/gitea/public/bol/releases/latest/system.json
download: https://www.uberwald.me/gitea/public/bol/releases/download/${{github.event.release.tag_name}}/bol.zip
# Create a zip file with all files required by the module to add to the release
- run: |
apt update -y
apt install -y zip
- run: zip -r ./bol.zip system.json template.json README.md LICENSE assets/ css/ fonts/ images/ lang/ module/ packs/ styles/ templates/ ui/ # Substitute the Manifest and Download URLs in the module.json
- name: Substitute Manifest and Download Links For Versioned Ones
- name: setup go id: sub_manifest_link_version
uses: https://github.com/actions/setup-go@v4 uses: microsoft/variable-substitution@v1
with: with:
go-version: '>=1.20.1' files: "system.json"
env:
- name: Use Go Action version: ${{steps.get_version.outputs.version-without-v}}
id: use-go-action url: https://www.uberwald.me/gitea/public/bol
uses: https://gitea.com/actions/release-action@main manifest: https://www.uberwald.me/gitea/public/bol/releases/latest/system.json
with: download: https://www.uberwald.me/gitea/public/bol/releases/download/${{github.event.release.tag_name}}/bol.zip
files: |-
./bol.zip # Create a zip file with all files required by the module to add to the release
system.json - run: |
api_key: '${{secrets.RELEASE_TOKEN_UBERWALD}}' apt update -y
apt install -y zip
- run: zip -r ./bol.zip system.json template.json README.md LICENSE assets/ compendiums/ css/ fonts/ images/ lang/ module/ packs/ styles/ templates/ ui/
- name: setup go
uses: https://github.com/actions/setup-go@v4
with:
go-version: ">=1.20.1"
- name: Use Go Action
id: use-go-action
uses: https://gitea.com/actions/release-action@main
with:
files: |-
./bol.zip
system.json
api_key: "${{secrets.RELEASE_TOKEN_BOL}}"

View File

@@ -1,25 +1,33 @@
Changes :
# v12.1.0 # v13.0.0
- Foundry v13 only
# v12.1.7
- Enhance welcome message
# v12.1.1
## French ## French
- Correction sur les conditions des sorts - Correction sur les conditions des sorts
- Jet d'armures correctement affichés - Jet d'armures correctement affichés
- Dégat à 0 possibles sur les armes/capacités - Dégat à 0 possibles sur les armes/capacités
## English ## English
- Corrected spell conditions - Corrected spell conditions
- Armor rolls are now correctly displayed - Armor rolls are now correctly displayed
- Weapon/capacity damage can now be set to 0 - Weapon/capacity damage can now be set to 0
# v12.1.0 # v12.1.0
- Gestion des Hordes - Gestion des Hordes
- Ajout de la traduction Espagnole - Ajout de la traduction Espagnole
- Nouvelles clés de traduction - Nouvelles clés de traduction
- Petites amélioration diverses - Petites amélioration diverses
# v11.1.2 # v11.1.2
- Ajout des traductions manquantes en anglais - Ajout des traductions manquantes en anglais
@@ -39,20 +47,19 @@ Changes :
# v11.0.8 # v11.0.8
- Correction sur les malus de bouclier (blocage) - Correction sur les malus de bouclier (blocage)
- Corrrection sur le malus d'init des boucliers qui était mal affiché dans la fiche d'item - Corrrection sur le malus d'init des boucliers qui était mal affiché dans la fiche d'item
# v10.4.0 # v10.4.0
- Ajout de la gestion d'effets - Ajout de la gestion d'effets
- Aide intégré - Aide intégré
- Intégration du PDF de la bougette - Intégration du PDF de la bougette
# v10.3.3 # v10.3.3
- Nouvelles clés de traduction - Nouvelles clés de traduction
- Lorsqu'une arme a un dé bonus, prise en compte plus claire du dé bonus et affichage de l'information dans la fenêtre de jet - Lorsqu'une arme a un dé bonus, prise en compte plus claire du dé bonus et affichage de l'information dans la fenêtre de jet
- Lorsqu'une arme relance les 1 sur ses dégats, l'information est affichée dans le tchat - Lorsqu'une arme relance les 1 sur ses dégats, l'information est affichée dans le tchat
- Termes corrects pour les PNJs (ie rival) - Termes corrects pour les PNJs (ie rival)
- Nouveaux équipements issus du Dieu Voilé - Nouveaux équipements issus du Dieu Voilé

View File

@@ -18,7 +18,7 @@
"description": "<h1>Medium Armour</h1><p>Combining some of the mobility of the lighter armour and better protection of heavy armour, this is the armour worn by the typical adventurer expecting to get into combat situations on a regular basis. Medium armour could represent fairly extensive coverage of leather armour, with stiffened leather in some of the more vital areas, or partial coverage of mail with leather in other areas. It could even represent a steel breastplate and minimal/no other armour.</p><p>Someone in medium armour can often remove portions of their armour to reduce it to light armour, as necessary.</p><h2>Medium armour effects</h2><ul><li>Roll a d6-2 (0-4 points of damage reduction).</li><li>If you prefer static numbers, medium armour absorbs 2 points of damage.</li><li>Wearing medium armour restricts magicians and imposes an extra 2 Arcane Points cost on a spell casting.</li></ul>" "description": "<h1>Medium Armour</h1><p>Combining some of the mobility of the lighter armour and better protection of heavy armour, this is the armour worn by the typical adventurer expecting to get into combat situations on a regular basis. Medium armour could represent fairly extensive coverage of leather armour, with stiffened leather in some of the more vital areas, or partial coverage of mail with leather in other areas. It could even represent a steel breastplate and minimal/no other armour.</p><p>Someone in medium armour can often remove portions of their armour to reduce it to light armour, as necessary.</p><h2>Medium armour effects</h2><ul><li>Roll a d6-2 (0-4 points of damage reduction).</li><li>If you prefer static numbers, medium armour absorbs 2 points of damage.</li><li>Wearing medium armour restricts magicians and imposes an extra 2 Arcane Points cost on a spell casting.</li></ul>"
}, },
"Casque": { "Casque": {
"name": "Casque", "name": "Helmet",
"description": "<h1>Helmet</h1><p>If you are wearing a helmet, this adds +1 to your protection if already wearing armour. Therefore, if in light armour and helmet, youd roll d6-2. In medium armour, roll d6-1. In heavy armour, roll d6.</p><p>Helmets give you a penalty in social situations and to your initiative (as its harder to notice things whilst wearing a helmet).</p><p>Most Heroes take their helmets off, unless preparing for battle.</p>" "description": "<h1>Helmet</h1><p>If you are wearing a helmet, this adds +1 to your protection if already wearing armour. Therefore, if in light armour and helmet, youd roll d6-2. In medium armour, roll d6-1. In heavy armour, roll d6.</p><p>Helmets give you a penalty in social situations and to your initiative (as its harder to notice things whilst wearing a helmet).</p><p>Most Heroes take their helmets off, unless preparing for battle.</p>"
}, },
"Grand bouclier": { "Grand bouclier": {

View File

@@ -14,7 +14,7 @@
"description": "" "description": ""
}, },
"Esprit -1": { "Esprit -1": {
"name": "Miond -1", "name": "Mind -1",
"description": "" "description": ""
}, },
"Vigueur -1": { "Vigueur -1": {

View File

@@ -175,7 +175,7 @@
}, },
"Traqué": { "Traqué": {
"name": "Hunted", "name": "Hunted",
"description": "<h1>Hunted</h1><p>Your character is ridiculously tight- lipped. Its a rare day on which he uses a sentence of more than three words, and its virtually unheard of for him to initiate conversation. His extreme reluctance to speak unfortunately means he never volunteers information without being asked. Take a penalty die in social situations.</p>" "description": "<h1>Hunted</h1><p>Perhaps you are wanted by the authorities, or have offended some powerful noble or pirate king. Regardless of whom, you constantly have to evade agents intent on capturing or even killing you. Roll a d6 whenever you enter a new city. On a 1, agents of your enemy (or your enemy himself, if you choose) will spot you and make your life unpleasant.</p>"
} }
} }
} }

View File

@@ -74,8 +74,8 @@
"description": "<h1>Shamballah</h1><p>Shamballahns are generally a dark-skinned and dark-haired people with purple, mauve, scarlet, and indigo eye colouring. They are very perceptive and make good hunters.</p>" "description": "<h1>Shamballah</h1><p>Shamballahns are generally a dark-skinned and dark-haired people with purple, mauve, scarlet, and indigo eye colouring. They are very perceptive and make good hunters.</p>"
}, },
"Terres Désolées": { "Terres Désolées": {
"name": "Terres Désolées", "name": "Empty Lands",
"description": "<h1>Terres Désolées</h1><p>Personne ne sait grand-chose au sujet des Terres Désolées, et moins encore sur les contrées qui sétendraient au-delà. Des gens vivent assurément dans cette région, sil faut en croire les récits de chasseurs et dexplorateurs qui ont relevé des traces de présence. Mais à ce jour, personne na découvert le moindre village ou hameau, et on ignore tout de lapparence de leurs habitants.</p><p>Si votre héros est originaire des Terres Désolées, il vous faudra travailler avec le MJ pour déterminer à quoi ressemble votre personnage. Mais attendezvous à ce quil soit toujours considéré comme un étranger, où quil se rende en Lémurie.</p>" "description": "<h1>Empty Lands</h1><p>No one knows what exists in and beyond the Empty Lands. People do live there, because hunters and explorers have seen evidence of them. However, no towns or even villages have been discovered, and no one has any idea of what the people are like. If you come from the Empty Lands, you will need to work with the GM to determine what your character is like. He or she will always be treated as an outsider.</p>"
}, },
"Tyrus": { "Tyrus": {
"name": "Tyrus", "name": "Tyrus",

View File

@@ -42,8 +42,8 @@
"description": "<h1>Staff Sling</h1><p>The staff sling is a two-handed version of the sling, with a longer range.</p>" "description": "<h1>Staff Sling</h1><p>The staff sling is a two-handed version of the sling, with a longer range.</p>"
}, },
"Cimeterre": { "Cimeterre": {
"name": "Cimeterre", "name": "Scimitar",
"description": "<h1>Épée</h1><p>larme favorite des héros. Elle se décline en différents modèles utilisés un peu partout en Lémurie, comme les sabres dabordage, les tulwars, les cimeterres ou les épées longues. Inscrivez le nom de larme que vous voulez sur la fiche de votre personnage en fonction de limage que vous vous faites de ce dernier. Mais au final, une épée reste une longue lame utilisée pour tuer lennemi.</p>" "description": "<h1>Scimitar (Sword)</h1><p>This weapon is a favourite amongst Heroes. This is the catch-all description for all manner of long-bladed, one-handed weapons used all over Lemuria, such as cutlasses, tulwars, scimitars, rapiers, broadswords and longswords. Call it what you want on your character sheet, because that will add flavour to your character, but at the end of the day a sword is a long blade used for killing.</p>"
}, },
"Dague": { "Dague": {
"name": "Dagger", "name": "Dagger",
@@ -123,19 +123,19 @@
}, },
"Masse darmes": { "Masse darmes": {
"name": "Mace", "name": "Mace",
"description": "<h1>Mace</h1><p>cA mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5 as they arent very effective used this way.</p>" "description": "<h1>Mace</h1><p>A mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5 as they arent very effective used this way.</p>"
}, },
"Masse darmes (Lancer)": { "Masse darmes (Lancer)": {
"name": "Masse darmes (Lancer)", "name": "Mace (Thrown)",
"description": "<h1>Masse darmes</h1><p>cette arme a la même forme quun gourdin, mais possède une tête en métal, souvent agrémentée de pointes ou dailettes pour plus defficacité. Les masses darmes à une main peuvent se lancer, mais à courte distance, car elles ne sont pas vraiment prévues pour cet usage.</p>" "description": "<h1>Mace</h1><p>A mace is similar to a club, but with a metal head, often with spikes or flanges. One-handed maces can be thrown at increments of 5 as they arent very effective used this way.</p>"
}, },
"Massue": { "Massue": {
"name": "Massue", "name": "Club",
"description": "<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>" "description": "<h1>Club</h1><p>This is a larger version of the cudgel. It is a stout length of wood, used in one hand to bludgeon and batter your opponent. Clubs usually have a wider or knobbed head and can be called war-clubs, knobkerries, or shillelaghs.</p>"
}, },
"Massue (Lancer)": { "Massue (Lancer)": {
"name": "Massue (Lancer)", "name": "Club (Thrown)",
"description": "<h1>Massue</h1><p>la version lourde du gourdin. Une massue consiste en un solide manche en bois dont lextrémité, plus volumineuse, sert à fracasser le crâne de ses adversaires, doù son autre nom de casse-tête.</p>" "description": "<h1>Club</h1><p>This is a larger version of the cudgel. It is a stout length of wood, used in one hand to bludgeon and batter your opponent. Clubs usually have a wider or knobbed head and can be called war-clubs, knobkerries, or shillelaghs.</p>"
}, },
"Morgenstern": { "Morgenstern": {
"name": "Morning Star", "name": "Morning Star",

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +0,0 @@
[Dolphin]
Timestamp=2024,11,2,20,30,2.2800000000000002
Version=4
ViewMode=1
VisibleRoles=Details_text,Details_size,Details_modificationtime,Details_creationtime,CustomizedDetails

View File

@@ -111,7 +111,7 @@
"BOL.ui.defender": "Verteidiger", "BOL.ui.defender": "Verteidiger",
"BOL.ui.difficulty": "Schwierigkeit", "BOL.ui.difficulty": "Schwierigkeit",
"BOL.ui.spellProperties": "Zaubereigenschaften", "BOL.ui.spellProperties": "Zaubereigenschaften",
"BOL.ui.duration": "Dauer", "BOL.ui.duration": "Dauer",
"BOL.ui.spellkeep": "Aufrechterhalten", "BOL.ui.spellkeep": "Aufrechterhalten",
"BOL.ui.concentrate": "Konzentrieren", "BOL.ui.concentrate": "Konzentrieren",
"BOL.ui.registerInit": "Register Init.", "BOL.ui.registerInit": "Register Init.",
@@ -134,7 +134,7 @@
"BOL.ui.makeAlchemy": "Alchemika herstellen", "BOL.ui.makeAlchemy": "Alchemika herstellen",
"BOL.ui.alchemyCostTotal": "Alchemiepunkte ingesamt", "BOL.ui.alchemyCostTotal": "Alchemiepunkte ingesamt",
"BOL.ui.alchemyInvest": "Alchemiepunkte investieren", "BOL.ui.alchemyInvest": "Alchemiepunkte investieren",
"BOL.ui.alchemyCurrent": "Aktuelle Alchemiepunkte in Objekten", "BOL.ui.alchemyCurrent": "Aktuelle Alchemiepunkte in Objekten",
"BOL.ui.advance": "Status", "BOL.ui.advance": "Status",
"BOL.ui.isadvantage": "Gibt zusätzlichen Würfel?", "BOL.ui.isadvantage": "Gibt zusätzlichen Würfel?",
"BOL.ui.isbonusdice": "Gibt zusätzlichen Würfel?", "BOL.ui.isbonusdice": "Gibt zusätzlichen Würfel?",
@@ -153,8 +153,8 @@
"BOL.ui.status": "Status", "BOL.ui.status": "Status",
"BOL.ui.toactivated": "Aktiv (>Deaktivieren)", "BOL.ui.toactivated": "Aktiv (>Deaktivieren)",
"BOL.ui.todeactivated": "Inaktiv (>Aktivieren)", "BOL.ui.todeactivated": "Inaktiv (>Aktivieren)",
"BOL.ui.armorAgiMalus": "Rüschtung+Schild-Malus (Geschick)", "BOL.ui.armorAgiMalus": "Rüschtung+Schild-Malus (Geschick)",
"BOL.ui.armorInitMalus": "Rüstungsmalus (Init)", "BOL.ui.armorInitMalus": "Rüstungsmalus (Init)",
"BOL.ui.attackValue": "Angriffswert", "BOL.ui.attackValue": "Angriffswert",
"BOL.ui.initMalus": "Init malus", "BOL.ui.initMalus": "Init malus",
"BOL.ui.createEquipment": "Create Equipment", "BOL.ui.createEquipment": "Create Equipment",
@@ -177,7 +177,7 @@
"BOL.featureSubtypes.fightOption": "Kampfoption", "BOL.featureSubtypes.fightOption": "Kampfoption",
"BOL.bougette.nomoney": "Mittellos", "BOL.bougette.nomoney": "Mittellos",
"BOL.bougette.tolive": "Zum Überleben", "BOL.bougette.tolive": "Zum Überleben",
"BOL.bougette.easylife": "Einfaches Leben", "BOL.bougette.easylife": "Einfaches Leben",
"BOL.bougette.luxury" : "Luxuriöses Leben", "BOL.bougette.luxury" : "Luxuriöses Leben",
"BOL.bougette.rich": "Reich!", "BOL.bougette.rich": "Reich!",
@@ -224,14 +224,14 @@
"BOL.protectionCategory.other": "Verschiedenes", "BOL.protectionCategory.other": "Verschiedenes",
"BOL.spellItem.charm": "Zauber", "BOL.spellItem.charm": "Zauber",
"BOL.spellItem.circle1": "Erster Kreis", "BOL.spellItem.circle1": "Erster Kreis",
"BOL.spellItem.circle2": "Zweiter Kreis", "BOL.spellItem.circle2": "Zweiter Kreis",
"BOL.spellItem.circle3": "Dritter Kreis", "BOL.spellItem.circle3": "Dritter Kreis",
"BOL.alchemyItem.common": "Häufig", "BOL.alchemyItem.common": "Häufig",
"BOL.alchemyItem.scarce": "Selten", "BOL.alchemyItem.scarce": "Selten",
"BOL.alchemyItem.legend": "Legendär", "BOL.alchemyItem.legend": "Legendär",
"BOL.alchemyItem.mythic": "Mystisch", "BOL.alchemyItem.mythic": "Mystisch",
"BOL.weaponCategory.melee": "Nahkampf", "BOL.weaponCategory.melee": "Nahkampf",
"BOL.weaponCategory.ranged": "Fernkampf", "BOL.weaponCategory.ranged": "Fernkampf",
@@ -290,6 +290,7 @@
"BOL.itemProperty.difficulty": "Schwierigkeit", "BOL.itemProperty.difficulty": "Schwierigkeit",
"BOL.itemProperty.natural": "Natürliche Waffe", "BOL.itemProperty.natural": "Natürliche Waffe",
"BOL.itemProperty.onlymodifier": "Nur Modifikator (d.h. Angriffe von Kreaturen)", "BOL.itemProperty.onlymodifier": "Nur Modifikator (d.h. Angriffe von Kreaturen)",
"BOL.itemProperty.attackMalusDice": "Angriffsmalus (Würfel)",
"BOL.itemStat.quantity": "Anzahl", "BOL.itemStat.quantity": "Anzahl",
"BOL.itemStat.weight": "Gewicht", "BOL.itemStat.weight": "Gewicht",
@@ -359,7 +360,7 @@
"BOL.ui.astrologerPoints": "Points d'Astrologie", "BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels", "BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?", "BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse", "BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)", "BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)", "BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes", "BOL.ui.horoscopes": "Horoscopes",
@@ -468,6 +469,7 @@
"BOL.chat.welcome4": "Im Discord findet ihr Support für die FoundryVTT-Implementierung dieses Systems: https://discord.gg/pPSDNJk", "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.welcome5": "Auf ein gutes Spiel in Lemuria!",
"BOL.chat.welcome6": "", "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.settings.rollArmor": "Roll for armor", "BOL.settings.rollArmor": "Roll for armor",
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked", "BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",

View File

@@ -47,7 +47,7 @@
"BOL.ui.astrologerPoints": "Points d'Astrologie", "BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels", "BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?", "BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse", "BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)", "BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)", "BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes", "BOL.ui.horoscopes": "Horoscopes",
@@ -132,7 +132,7 @@
"BOL.ui.defender": "Defender", "BOL.ui.defender": "Defender",
"BOL.ui.difficulty": "Difficulty", "BOL.ui.difficulty": "Difficulty",
"BOL.ui.spellProperties": "Spell Properties", "BOL.ui.spellProperties": "Spell Properties",
"BOL.ui.duration": "Duration", "BOL.ui.duration": "Duration",
"BOL.ui.spellkeep": "Maintain", "BOL.ui.spellkeep": "Maintain",
"BOL.ui.concentrate": "Concentrate", "BOL.ui.concentrate": "Concentrate",
"BOL.ui.registerInit": "Register Init.", "BOL.ui.registerInit": "Register Init.",
@@ -156,7 +156,7 @@
"BOL.ui.makeAlchemy": "Make Alchemy", "BOL.ui.makeAlchemy": "Make Alchemy",
"BOL.ui.alchemyCostTotal": "Alchemy Points Total Cost", "BOL.ui.alchemyCostTotal": "Alchemy Points Total Cost",
"BOL.ui.alchemyInvest": "Invest Alchemy Points", "BOL.ui.alchemyInvest": "Invest Alchemy Points",
"BOL.ui.alchemyCurrent": "Current Alchemy Points in Object", "BOL.ui.alchemyCurrent": "Current Alchemy Points in Object",
"BOL.ui.advance": "Status", "BOL.ui.advance": "Status",
"BOL.ui.isadvantage": "Provides a bonus dice?", "BOL.ui.isadvantage": "Provides a bonus dice?",
"BOL.ui.bonusmalus": "Additional bonus/penalty", "BOL.ui.bonusmalus": "Additional bonus/penalty",
@@ -173,8 +173,8 @@
"BOL.ui.status": "Status", "BOL.ui.status": "Status",
"BOL.ui.toactivated": "Active (>Deactivated)", "BOL.ui.toactivated": "Active (>Deactivated)",
"BOL.ui.todeactivated": "Inactive (>Active)", "BOL.ui.todeactivated": "Inactive (>Active)",
"BOL.ui.armorAgiMalus": "Armor+Shield Modifier (Agi)", "BOL.ui.armorAgiMalus": "Armor+Shield Modifier (Agi)",
"BOL.ui.armorInitMalus": "Armor Modifier (Init)", "BOL.ui.armorInitMalus": "Armor Modifier (Init)",
"BOL.ui.attackValue": "Attack Value", "BOL.ui.attackValue": "Attack Value",
"BOL.ui.attackModifier": "Attack Modifier", "BOL.ui.attackModifier": "Attack Modifier",
"BOL.ui.weaponbonus": "Cette arme bénéficie déja d'un Dé de Bonus (Arme Favorite prise en compte, par exemple)", "BOL.ui.weaponbonus": "Cette arme bénéficie déja d'un Dé de Bonus (Arme Favorite prise en compte, par exemple)",
@@ -251,7 +251,7 @@
"BOL.featureSubtypes.xplog": "XP Journal", "BOL.featureSubtypes.xplog": "XP Journal",
"BOL.bougette.nomoney": "Nothing", "BOL.bougette.nomoney": "Nothing",
"BOL.bougette.tolive": "To live", "BOL.bougette.tolive": "To live",
"BOL.bougette.easylife": "Easy Life", "BOL.bougette.easylife": "Easy Life",
"BOL.bougette.luxury" : "Luxury life", "BOL.bougette.luxury" : "Luxury life",
"BOL.bougette.rich": "Rich!", "BOL.bougette.rich": "Rich!",
@@ -299,15 +299,15 @@
"BOL.protectionCategory.helm": "Helm", "BOL.protectionCategory.helm": "Helm",
"BOL.protectionCategory.other": "Other", "BOL.protectionCategory.other": "Other",
"BOL.spellItem.charm": "Charm", "BOL.spellItem.charm": "Charm",
"BOL.spellItem.circle1": "First Circle", "BOL.spellItem.circle1": "First Circle",
"BOL.spellItem.circle2": "Second Circle", "BOL.spellItem.circle2": "Second Circle",
"BOL.spellItem.circle3": "Third Circle", "BOL.spellItem.circle3": "Third Circle",
"BOL.alchemyItem.common": "Common", "BOL.alchemyItem.common": "Common",
"BOL.alchemyItem.scarce": "Scarce", "BOL.alchemyItem.scarce": "Scarce",
"BOL.alchemyItem.legend": "Legendary", "BOL.alchemyItem.legend": "Legendary",
"BOL.alchemyItem.mythic": "Mythic", "BOL.alchemyItem.mythic": "Mythic",
"BOL.weaponCategory.melee": "Melee", "BOL.weaponCategory.melee": "Melee",
"BOL.weaponCategory.ranged": "Ranged", "BOL.weaponCategory.ranged": "Ranged",
@@ -365,6 +365,7 @@
"BOL.itemProperty.difficulty": "Difficulty", "BOL.itemProperty.difficulty": "Difficulty",
"BOL.itemProperty.natural": "Natural weapon", "BOL.itemProperty.natural": "Natural weapon",
"BOL.itemProperty.onlymodifier": "Modifier only (ie creatures attacks)", "BOL.itemProperty.onlymodifier": "Modifier only (ie creatures attacks)",
"BOL.itemProperty.attackMalusDice": "Attack Malus (Dice)",
"BOL.itemStat.quantity": "Quantity", "BOL.itemStat.quantity": "Quantity",
"BOL.itemStat.weight": "Weight", "BOL.itemStat.weight": "Weight",
@@ -458,7 +459,7 @@
"BOL.size.colossal": "Colossal", "BOL.size.colossal": "Colossal",
"BOL.chat.fightactive": "{name} activates the fight option {foName} for this round !", "BOL.chat.fightactive": "{name} activates the fight option {foName} for this round !",
"BOL.chat.fightunactive": "{name} deactivates the fight option {foName} for this round !", "BOL.chat.fightunactive": "{name} deactivates the fight option {foName} for this round !",
"BOL.chat.isdead": "{name} is dead !", "BOL.chat.isdead": "{name} is dead !",
"BOL.chat.epitaph": "Keep his name and memory in honor !", "BOL.chat.epitaph": "Keep his name and memory in honor !",
"BOL.chat.vitalityzero": "Lifeblood of {name} is now {hp} : he is going to fall unconscious !", "BOL.chat.vitalityzero": "Lifeblood of {name} is now {hp} : he is going to fall unconscious !",
@@ -543,17 +544,24 @@
"BOL.chat.criticalbuttonjournal": "Legendary/Heroic Success", "BOL.chat.criticalbuttonjournal": "Legendary/Heroic Success",
"BOL.chat.nodamage": "Do not apply damages", "BOL.chat.nodamage": "Do not apply damages",
"BOL.chat.armorRoll": "Armor roll", "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.dialog.soeasy": "So easy (+4)", "BOL.dialog.soeasy": "So easy (+4)",
"BOL.dialog.soeasy3": "So easy (+3)",
"BOL.dialog.veryeasy": "Very easy (+2)", "BOL.dialog.veryeasy": "Very easy (+2)",
"BOL.dialog.easy": "Easy (+1)", "BOL.dialog.easy": "Easy (+1)",
"BOL.dialog.moderate": "Moderate (0)", "BOL.dialog.moderate": "Moderate (0)",
"BOL.dialog.hard": "Hard (-1)", "BOL.dialog.hard": "Hard (-1)",
"BOL.dialog.tough": "Tough (-2)", "BOL.dialog.tough": "Tough (-2)",
"BOL.dialog.tough3": "Tough (-3)",
"BOL.dialog.demanding": "Demanding (-4)", "BOL.dialog.demanding": "Demanding (-4)",
"BOL.dialog.demanding5": "Demanding (-5)",
"BOL.dialog.formidable": "Formidable (-6)", "BOL.dialog.formidable": "Formidable (-6)",
"BOL.dialog.formidable7": "Formidable (-7)",
"BOL.dialog.heroic": "Heroic (-8)", "BOL.dialog.heroic": "Heroic (-8)",
"BOL.dialog.heroic9": "Heroic (-9)",
"BOL.dialog.mythic": "Mythic (-10)", "BOL.dialog.mythic": "Mythic (-10)",
"BOL.dialog.mythic11": "Mythic (-11)",
"BOL.dialog.divine": "Divine (-12)", "BOL.dialog.divine": "Divine (-12)",
"BOL.dialog.pointblank": "Point blank (+1)", "BOL.dialog.pointblank": "Point blank (+1)",
@@ -562,7 +570,7 @@
"BOL.dialog.long": "Long (-2)", "BOL.dialog.long": "Long (-2)",
"BOL.dialog.distant": "Distant (-4)", "BOL.dialog.distant": "Distant (-4)",
"BOL.dialog.extreme": "Extreme (-6)", "BOL.dialog.extreme": "Extreme (-6)",
"BOL.dialog.utmost": "Utmost (-8)", "BOL.dialog.utmost": "Utmost (-8)",
"BOL.ui.name": "Name", "BOL.ui.name": "Name",
"BOL.ui.xp": "Experience", "BOL.ui.xp": "Experience",
@@ -578,11 +586,11 @@
"BOL.ui.bionotes": "Notes", "BOL.ui.bionotes": "Notes",
"BOL.chat.welcome1": "Welcome to Barbarians of Lemuria (Ludospherik version)", "BOL.chat.welcome1": "Welcome to Barbarians of Lemuria (Ludospherik version)",
"BOL.chat.welcome2": "Books are necessary to play, and ca be found here : http://www.ludospherik.fr/content/14-barbarians-of-lemuria", "BOL.chat.welcome2": "Books are necessary to play, and <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>can be found here.</a> ",
"BOL.chat.welcome3": "The integrated maps are authorized by Guillaume Tavernier and Ludospherik. Thanks to them !.", "BOL.chat.welcome3": "The integrated maps are authorized by Emmanuel Roudier and Ludospherik. Thanks to them !.",
"BOL.chat.welcome4": "All support for this system is available on this Discord server : https://discord.gg/pPSDNJk", "BOL.chat.welcome4": "All support for this system is available on this Discord server : https://discord.gg/pPSDNJk",
"BOL.chat.welcome5": "Good game in Lemuria !", "BOL.chat.welcome5": "<strong>In order to see compendiums in English, you must install and enable the Babele module.</strong>",
"BOL.chat.welcome6": "", "BOL.chat.welcome6": "Good game in Lemuria !",
"BOL.settings.rollArmor": "Roll for armor", "BOL.settings.rollArmor": "Roll for armor",
"BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked", "BOL.settings.rollArmorTooltip": "Roll for armor value, fixed value if unchecked",

View File

@@ -132,7 +132,7 @@
"BOL.ui.defender": "Defensor", "BOL.ui.defender": "Defensor",
"BOL.ui.difficulty": "Dificultad", "BOL.ui.difficulty": "Dificultad",
"BOL.ui.spellProperties": "Propiedades Conjuro", "BOL.ui.spellProperties": "Propiedades Conjuro",
"BOL.ui.duration": "Duración", "BOL.ui.duration": "Duración",
"BOL.ui.spellkeep": "Mantenimiento", "BOL.ui.spellkeep": "Mantenimiento",
"BOL.ui.concentrate": "Concentración", "BOL.ui.concentrate": "Concentración",
"BOL.ui.registerInit": "Registrar Inic.", "BOL.ui.registerInit": "Registrar Inic.",
@@ -156,7 +156,7 @@
"BOL.ui.makeAlchemy": "Realizar Alquimia", "BOL.ui.makeAlchemy": "Realizar Alquimia",
"BOL.ui.alchemyCostTotal": "Coste Total Puntos Alquimia", "BOL.ui.alchemyCostTotal": "Coste Total Puntos Alquimia",
"BOL.ui.alchemyInvest": "Invertir Puntos Alquimia", "BOL.ui.alchemyInvest": "Invertir Puntos Alquimia",
"BOL.ui.alchemyCurrent": "Puntos Alquimia actuales en Objeto", "BOL.ui.alchemyCurrent": "Puntos Alquimia actuales en Objeto",
"BOL.ui.advance": "Estado", "BOL.ui.advance": "Estado",
"BOL.ui.isadvantage": "¿Da un dado ventaja?", "BOL.ui.isadvantage": "¿Da un dado ventaja?",
"BOL.ui.bonusmalus": "Ventaja/desventaja adicional", "BOL.ui.bonusmalus": "Ventaja/desventaja adicional",
@@ -245,7 +245,7 @@
"BOL.featureSubtypes.xplog": "Diario PX", "BOL.featureSubtypes.xplog": "Diario PX",
"BOL.bougette.nomoney": "Nada", "BOL.bougette.nomoney": "Nada",
"BOL.bougette.tolive": "Vivir justo", "BOL.bougette.tolive": "Vivir justo",
"BOL.bougette.easylife": "Vida simple", "BOL.bougette.easylife": "Vida simple",
"BOL.bougette.luxury" : "Vida lujosa", "BOL.bougette.luxury" : "Vida lujosa",
"BOL.bougette.rich": "¡Rico!", "BOL.bougette.rich": "¡Rico!",
@@ -293,15 +293,15 @@
"BOL.protectionCategory.helm": "Casco", "BOL.protectionCategory.helm": "Casco",
"BOL.protectionCategory.other": "Otro", "BOL.protectionCategory.other": "Otro",
"BOL.spellItem.charm": "Truco", "BOL.spellItem.charm": "Truco",
"BOL.spellItem.circle1": "Primer Círculo", "BOL.spellItem.circle1": "Primer Círculo",
"BOL.spellItem.circle2": "Segundo Círculo", "BOL.spellItem.circle2": "Segundo Círculo",
"BOL.spellItem.circle3": "Tercer Círculo", "BOL.spellItem.circle3": "Tercer Círculo",
"BOL.alchemyItem.common": "Común", "BOL.alchemyItem.common": "Común",
"BOL.alchemyItem.scarce": "Escaso", "BOL.alchemyItem.scarce": "Escaso",
"BOL.alchemyItem.legend": "Legendario", "BOL.alchemyItem.legend": "Legendario",
"BOL.alchemyItem.mythic": "Mítico", "BOL.alchemyItem.mythic": "Mítico",
"BOL.weaponCategory.melee": "Melé", "BOL.weaponCategory.melee": "Melé",
"BOL.weaponCategory.ranged": "Distancia", "BOL.weaponCategory.ranged": "Distancia",
@@ -359,6 +359,7 @@
"BOL.itemProperty.difficulty": "Dificultad", "BOL.itemProperty.difficulty": "Dificultad",
"BOL.itemProperty.natural": "Arma natural", "BOL.itemProperty.natural": "Arma natural",
"BOL.itemProperty.onlymodifier": "Sólo modificador (ej criatura)", "BOL.itemProperty.onlymodifier": "Sólo modificador (ej criatura)",
"BOL.itemProperty.attackMalusDice": "Dado Desventaja Ataque",
"BOL.itemStat.quantity": "Cantidad", "BOL.itemStat.quantity": "Cantidad",
"BOL.itemStat.weight": "Peso", "BOL.itemStat.weight": "Peso",
@@ -452,7 +453,7 @@
"BOL.size.colossal": "Colosal", "BOL.size.colossal": "Colosal",
"BOL.chat.fightactive": "¡Activa la opción de combate {foName} este asalto!", "BOL.chat.fightactive": "¡Activa la opción de combate {foName} este asalto!",
"BOL.chat.fightunactive": "¡Desactiva la opción de combate {foName} este asalto!", "BOL.chat.fightunactive": "¡Desactiva la opción de combate {foName} este asalto!",
"BOL.chat.isdead": "¡{name} esta muerto!", "BOL.chat.isdead": "¡{name} esta muerto!",
"BOL.chat.epitaph": "¡Guardar el honor de su nombre y su memoria!", "BOL.chat.epitaph": "¡Guardar el honor de su nombre y su memoria!",
"BOL.chat.vitalityzero": "Vitalidad de {name} es {hp}: ¡va a caer inconsciente!", "BOL.chat.vitalityzero": "Vitalidad de {name} es {hp}: ¡va a caer inconsciente!",
@@ -534,6 +535,7 @@
"BOL.chat.criticalinfo": "¡Esto es un éxito Asombroso o Legendario! Escoge tus opciones y efectos", "BOL.chat.criticalinfo": "¡Esto es un éxito Asombroso o Legendario! Escoge tus opciones y efectos",
"BOL.chat.criticalbuttonjournal": "Éxito Asombroso/Legendario", "BOL.chat.criticalbuttonjournal": "Éxito Asombroso/Legendario",
"BOL.chat.armorRoll": "Tirada de Armadura", "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.dialog.soeasy": "Demasiado fácil (+4)", "BOL.dialog.soeasy": "Demasiado fácil (+4)",
"BOL.dialog.veryeasy": "Muy fácil (+2)", "BOL.dialog.veryeasy": "Muy fácil (+2)",
@@ -553,7 +555,7 @@
"BOL.dialog.long": "Larga (-2)", "BOL.dialog.long": "Larga (-2)",
"BOL.dialog.distant": "Distante (-4)", "BOL.dialog.distant": "Distante (-4)",
"BOL.dialog.extreme": "Extrema (-6)", "BOL.dialog.extreme": "Extrema (-6)",
"BOL.dialog.utmost": "Límite (-8)", "BOL.dialog.utmost": "Límite (-8)",
"BOL.ui.name": "Nombre", "BOL.ui.name": "Nombre",
"BOL.ui.xp": "Experiencia", "BOL.ui.xp": "Experiencia",

View File

@@ -50,7 +50,7 @@
"BOL.ui.astrologerPoints": "Points d'Astrologie", "BOL.ui.astrologerPoints": "Points d'Astrologie",
"BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels", "BOL.ui.astrologerPointsLabel": "Points d'Astrologie actuels",
"BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?", "BOL.ui.ishoroscopemajor": "Horoscope Majeur (ie de groupe) ?",
"BOL.ui.answer": "Réponse", "BOL.ui.answer": "Réponse",
"BOL.ui.horoscopefavorable": "Favorable (1dB)", "BOL.ui.horoscopefavorable": "Favorable (1dB)",
"BOL.ui.horoscopeunfavorable": "Défavorable (1dM)", "BOL.ui.horoscopeunfavorable": "Défavorable (1dM)",
"BOL.ui.horoscopes": "Horoscopes", "BOL.ui.horoscopes": "Horoscopes",
@@ -137,7 +137,7 @@
"BOL.ui.duration": "Durée", "BOL.ui.duration": "Durée",
"BOL.ui.spellkeep": "Prolongation possible ?", "BOL.ui.spellkeep": "Prolongation possible ?",
"BOL.ui.concentrate": "Concentration à maintenir ?", "BOL.ui.concentrate": "Concentration à maintenir ?",
"BOL.ui.aggressive": "Sort aggressif ?", "BOL.ui.aggressive": "Sort aggressif ?",
"BOL.ui.registerInit": "Enregistrer comme Init. de combat", "BOL.ui.registerInit": "Enregistrer comme Init. de combat",
"BOL.ui.initMalus": "Malus d'initiative", "BOL.ui.initMalus": "Malus d'initiative",
"BOL.ui.magicnewrules": "Règles supplémentaires (cf. supplément fan-made Sorcellerie!)", "BOL.ui.magicnewrules": "Règles supplémentaires (cf. supplément fan-made Sorcellerie!)",
@@ -147,7 +147,7 @@
"BOL.ui.flaw":"Désanvatage", "BOL.ui.flaw":"Désanvatage",
"BOL.ui.cost":"Cout XP", "BOL.ui.cost":"Cout XP",
"BOL.ui.date":"Date", "BOL.ui.date":"Date",
"BOL.ui.isSorcerer": "Carrière de Sorcier ?", "BOL.ui.isSorcerer": "Carrière de Sorcier ?",
"BOL.ui.isAlchemist": "Carrière d'Alchimiste ?", "BOL.ui.isAlchemist": "Carrière d'Alchimiste ?",
"BOL.ui.isPriest": "Carrière de Prêtre/Druide ?", "BOL.ui.isPriest": "Carrière de Prêtre/Druide ?",
@@ -259,7 +259,7 @@
"BOL.bougette.easylife": "A l'aise", "BOL.bougette.easylife": "A l'aise",
"BOL.bougette.luxury": "Luxe&Volupté", "BOL.bougette.luxury": "Luxe&Volupté",
"BOL.bougette.rich": "Richissime", "BOL.bougette.rich": "Richissime",
"BOL.featureSubtypes.origin": "Origine", "BOL.featureSubtypes.origin": "Origine",
"BOL.featureSubtypes.race": "Race", "BOL.featureSubtypes.race": "Race",
"BOL.featureSubtypes.career": "Carrière", "BOL.featureSubtypes.career": "Carrière",
@@ -393,8 +393,9 @@
"BOL.itemProperty.crewDamageMultiplier": "Multiplicateur", "BOL.itemProperty.crewDamageMultiplier": "Multiplicateur",
"BOL.itemProperty.isboarding": "Abordage", "BOL.itemProperty.isboarding": "Abordage",
"BOL.itemProperty.isspur": "Eperonnage", "BOL.itemProperty.isspur": "Eperonnage",
"BOL.itemProperty.isbreakrow": "Briser les rames", "BOL.itemProperty.isbreakrow": "Briser les rames",
"BOL.itemProperty.attackMalusDice": "Malus d'attaque (Dés)",
"BOL.itemStat.quantity": "Quantité", "BOL.itemStat.quantity": "Quantité",
"BOL.itemStat.weight": "Poids", "BOL.itemStat.weight": "Poids",
"BOL.itemStat.price": "Prix", "BOL.itemStat.price": "Prix",
@@ -486,7 +487,7 @@
"BOL.size.colossal": "Monstrueuse", "BOL.size.colossal": "Monstrueuse",
"BOL.chat.fightactive": "{name} active son option de combat {foName} pour ce round !", "BOL.chat.fightactive": "{name} active son option de combat {foName} pour ce round !",
"BOL.chat.fightunactive": "{name} désactive son option de combat {foName} pour ce round !", "BOL.chat.fightunactive": "{name} désactive son option de combat {foName} pour ce round !",
"BOL.chat.isdead": "{name} est mort !", "BOL.chat.isdead": "{name} est mort !",
"BOL.chat.epitaph": "Que son nom soit honoré sur les champs de batailles de Lémurie !", "BOL.chat.epitaph": "Que son nom soit honoré sur les champs de batailles de Lémurie !",
"BOL.chat.vitalityzero": "La Vitalité de {name} est {hp} : il va s'écrouler au sol et sombrer dans l'inconscience !", "BOL.chat.vitalityzero": "La Vitalité de {name} est {hp} : il va s'écrouler au sol et sombrer dans l'inconscience !",
@@ -569,21 +570,29 @@
"BOL.chat.criticalinfo": "C'est un succès Héroïque ! Choisissez vos options et effets !", "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.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.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.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.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.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.", "BOL.chat.inforecup": "{name} vient de récupérer {recupHP} points de Vitalité après quelques minutes de repos.",
"BOL.chat.defenseReduceDamage2": "Vous pouvez également dépenser 1 Point d'Héroisme/Vilainie pour regagner [[/r 2d6KH(1D6B)]] points de vitalité, cela vous coutera votre prochaine action.",
"BOL.chat.armorRoll": "Jet d'armure ",
"BOL.dialog.soeasy": "Inmanquable (+4)", "BOL.dialog.soeasy": "Inmanquable (+4)",
"BOL.dialog.soeasy3": "Inmanquable (+3)",
"BOL.dialog.veryeasy": "Trés Facile (+2)", "BOL.dialog.veryeasy": "Trés Facile (+2)",
"BOL.dialog.easy": "Facile (+1)", "BOL.dialog.easy": "Facile (+1)",
"BOL.dialog.moderate": "Moyenne (0)", "BOL.dialog.moderate": "Moyenne (0)",
"BOL.dialog.hard": "Ardue (-1)", "BOL.dialog.hard": "Ardue (-1)",
"BOL.dialog.tough": "Difficile (-2)", "BOL.dialog.tough": "Difficile (-2)",
"BOL.dialog.tough3": "Difficile (-3)",
"BOL.dialog.demanding": "Très Difficile (-4)", "BOL.dialog.demanding": "Très Difficile (-4)",
"BOL.dialog.demanding5": "Très Difficile (-5)",
"BOL.dialog.formidable": "Impossible (-6)", "BOL.dialog.formidable": "Impossible (-6)",
"BOL.dialog.formidable7": "Impossible (-7)",
"BOL.dialog.heroic": "Héroïque (-8)", "BOL.dialog.heroic": "Héroïque (-8)",
"BOL.dialog.heroic9": "Héroïque (-9)",
"BOL.dialog.mythic": "Mythique (-10)", "BOL.dialog.mythic": "Mythique (-10)",
"BOL.dialog.mythic11": "Mythique (-11)",
"BOL.dialog.divine": "Divine (-12)", "BOL.dialog.divine": "Divine (-12)",
"BOL.dialog.pointblank": "Bout portant (+1)", "BOL.dialog.pointblank": "Bout portant (+1)",
@@ -611,16 +620,15 @@
"BOL.chat.welcome1": "Bienvenue dans Barbarians of Lemuria (Ludospherik version)", "BOL.chat.welcome1": "Bienvenue dans Barbarians of Lemuria (Ludospherik version)",
"BOL.chat.welcome2": "Les livres nécessaires pour jouer sont disponibles sur le site de <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>l'éditeur Ludospherik.</a>", "BOL.chat.welcome2": "Les livres nécessaires pour jouer sont disponibles sur le site de <a href='http://www.ludospherik.fr/content/14-barbarians-of-lemuria'>l'éditeur Ludospherik.</a>",
"BOL.chat.welcome3": "Les cartes intégrées au système le sont grace à l'aimable autorisation de leur auteur Guillaume Tavernier et des éditions Ludospherik. Merci à eux !.", "BOL.chat.welcome3": "Les cartes intégrées au système le sont grace à l'aimable autorisation d'Emmanuel Roudier et des éditions Ludospherik. Merci à eux !.",
"BOL.chat.welcome4": "Tout le support et le suivi de ce système est disponible via le <a href='https://discord.gg/pPSDNJk'>Discord Foundry FR</a>.", "BOL.chat.welcome4": "Tout le support et le suivi de ce système est disponible via le <a href='https://discord.gg/pPSDNJk'>Discord Foundry FR</a>.",
"BOL.chat.welcome5": "Consulter l'aide en ligne pour plus d'informations : @UUID[Compendium.bol.aides-de-jeu.JournalEntry.8ihDiCxC47fcdKVA]{Aide du Jeu}.", "BOL.chat.welcome5": "Consulter l'aide en ligne pour plus d'informations : @UUID[Compendium.bol.aides-de-jeu.JournalEntry.8ihDiCxC47fcdKVA]{Aide du Jeu}.<br>Si vous souhaitez jouer en anglais, n'oubliez pas d'activer le module Babele.",
"BOL.chat.welcome6": "Bon jeu en Lemurie !", "BOL.chat.welcome6": "Bon jeu en Lemurie !",
"BOL.chat.nodamage": "Ne pas appliquer les dommages", "BOL.chat.nodamage": "Ne pas appliquer les dommages",
"BOL.chat.pcwarning": "Attention ! Aucun personnage n'est relié au joueur !", "BOL.chat.pcwarning": "Attention ! Aucun personnage n'est relié au joueur !",
"BOL.chat.pcwarningmsg": "<b>ATTENTION</b> Le joueur n'est relié à aucun personnage !", "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.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.pcnotlinkedmsg": "<b>ATTENTION</b> Le token du personnage joueur n'est pas relié à l'acteur !",
"BOL.chat.armorRoll": "Jet d'armure",
"BOL.settings.rollArmor": "Effectuer des jets pour les armures", "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é)", "BOL.settings.rollArmorTooltip": "Effectue un jet de dés pour les armures (valeur fixe si désactivé)",
@@ -643,4 +651,4 @@
"EFFECT.StatusProne": "A terre", "EFFECT.StatusProne": "A terre",
"EFFECT.StatusDead": "Mort" "EFFECT.StatusDead": "Mort"
} }

View File

@@ -5,7 +5,7 @@
import { BoLRoll } from "../controllers/bol-rolls.js"; import { BoLRoll } from "../controllers/bol-rolls.js";
import { BoLUtility } from "../system/bol-utility.js"; import { BoLUtility } from "../system/bol-utility.js";
export class BoLActorSheet extends ActorSheet { export class BoLActorSheet extends foundry.appv1.sheets.ActorSheet {
/** @override */ /** @override */
static get defaultOptions() { static get defaultOptions() {
@@ -59,7 +59,7 @@ export class BoLActorSheet extends ActorSheet {
let system = foundry.utils.duplicate(game.bol.config.defaultNaturalProtection) let system = foundry.utils.duplicate(game.bol.config.defaultNaturalProtection)
this.actor.createEmbeddedDocuments('Item', [{ name: game.i18n.localize("BOL.ui.newNaturalProtection"), type: "item", system }], { renderSheet: true }); this.actor.createEmbeddedDocuments('Item', [{ name: game.i18n.localize("BOL.ui.newNaturalProtection"), type: "item", system }], { renderSheet: true });
}); });
html.find(".toggle-fight-option").click((ev) => { html.find(".toggle-fight-option").click((ev) => {
const li = $(ev.currentTarget).parents(".item") const li = $(ev.currentTarget).parents(".item")
this.actor.toggleFightOption(li.data("itemId")) this.actor.toggleFightOption(li.data("itemId"))
@@ -170,8 +170,8 @@ export class BoLActorSheet extends ActorSheet {
formData.charType = this.actor.getCharType() formData.charType = this.actor.getCharType()
formData.villainy = this.actor.getVillainy() formData.villainy = this.actor.getVillainy()
formData.isUndead = this.actor.isUndead() formData.isUndead = this.actor.isUndead()
formData.biography = await TextEditor.enrichHTML(this.object.system.details?.biography || "", { async: true }) formData.biography = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.details?.biography || "", { async: true })
formData.notes = await TextEditor.enrichHTML(this.object.system.details.notes || "", { async: true }) formData.notes = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.details.notes || "", { async: true })
formData.isSorcerer = this.actor.isSorcerer() formData.isSorcerer = this.actor.isSorcerer()
formData.isAlchemist = this.actor.isAlchemist() formData.isAlchemist = this.actor.isAlchemist()
formData.isAstrologer = this.actor.isAstrologer() formData.isAstrologer = this.actor.isAstrologer()

View File

@@ -5,7 +5,7 @@
import { BoLRoll } from "../controllers/bol-rolls.js"; import { BoLRoll } from "../controllers/bol-rolls.js";
import { BoLUtility } from "../system/bol-utility.js"; import { BoLUtility } from "../system/bol-utility.js";
export class BoLHordeSheet extends ActorSheet { export class BoLHordeSheet extends foundry.appv1.sheets.ActorSheet {
/** @override */ /** @override */
static get defaultOptions() { static get defaultOptions() {
@@ -116,7 +116,7 @@ export class BoLHordeSheet extends ActorSheet {
formData.options = this.options formData.options = this.options
formData.owner = this.document.isOwner formData.owner = this.document.isOwner
formData.editScore = this.options.editScore formData.editScore = this.options.editScore
formData.description = await TextEditor.enrichHTML(this.actor.system.description, {async: true}) formData.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.actor.system.description, {async: true})
formData.isGM = game.user.isGM formData.isGM = game.user.isGM

View File

@@ -5,7 +5,7 @@
import { BoLRoll } from "../controllers/bol-rolls.js"; import { BoLRoll } from "../controllers/bol-rolls.js";
import { BoLUtility } from "../system/bol-utility.js"; import { BoLUtility } from "../system/bol-utility.js";
export class BoLVehicleSheet extends ActorSheet { export class BoLVehicleSheet extends foundry.appv1.sheets.ActorSheet {
/** @override */ /** @override */
static get defaultOptions() { static get defaultOptions() {
@@ -127,7 +127,7 @@ export class BoLVehicleSheet extends ActorSheet {
formData.options = this.options formData.options = this.options
formData.owner = this.document.isOwner formData.owner = this.document.isOwner
formData.editScore = this.options.editScore formData.editScore = this.options.editScore
formData.description = await TextEditor.enrichHTML(this.actor.system.description, {async: true}) formData.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.actor.system.description, {async: true})
formData.isGM = game.user.isGM formData.isGM = game.user.isGM

View File

@@ -31,7 +31,7 @@ Hooks.once('init', async function () {
config: BOL config: BOL
}; };
// Game socket // Game socket
game.socket.on("system.bol", sockmsg => { game.socket.on("system.bol", sockmsg => {
BoLUtility.onSocketMessage(sockmsg); BoLUtility.onSocketMessage(sockmsg);
}) })
@@ -51,13 +51,13 @@ Hooks.once('init', async function () {
CONFIG.Combat.documentClass = BoLCombatManager; CONFIG.Combat.documentClass = BoLCombatManager;
// Register sheet application classes // Register sheet application classes
Actors.unregisterSheet("core", ActorSheet); foundry.documents.collections.Actors.unregisterSheet("core", foundry.appv1.sheets.ActorSheet);
Actors.registerSheet("bol", BoLActorSheet, { types: ["character", "encounter"], makeDefault: true }) foundry.documents.collections.Actors.registerSheet("bol", BoLActorSheet, { types: ["character", "encounter"], makeDefault: true })
Actors.registerSheet("bol", BoLVehicleSheet, { types: ["vehicle"], makeDefault: true }) foundry.documents.collections.Actors.registerSheet("bol", BoLVehicleSheet, { types: ["vehicle"], makeDefault: true })
Actors.registerSheet("bol", BoLHordeSheet, { types: ["horde"], makeDefault: true }) foundry.documents.collections.Actors.registerSheet("bol", BoLHordeSheet, { types: ["horde"], makeDefault: true })
Items.unregisterSheet("core", ItemSheet); foundry.documents.collections.Items.unregisterSheet("core", foundry.appv1.sheets.ItemSheet);
Items.registerSheet("bol", BoLItemSheet, { makeDefault: true }); foundry.documents.collections.Items.registerSheet("bol", BoLItemSheet, { makeDefault: true });
// Inot useful stuff // Inot useful stuff
BoLUtility.init() BoLUtility.init()
@@ -78,32 +78,38 @@ Hooks.once('init', async function () {
Babele.get().setSystemTranslationsDir("compendiums"); Babele.get().setSystemTranslationsDir("compendiums");
} }
}); });
/* -------------------------------------------- */ /* -------------------------------------------- */
function welcomeMessage() { function welcomeMessage() {
let content = `<div id="welcome-message-bol"><span class="rdd-roll-part">
<strong>` + game.i18n.localize("BOL.chat.welcome1") + `</strong><p>` +
game.i18n.localize("BOL.chat.welcome2") + "</p><p>" +
game.i18n.localize("BOL.chat.welcome3") + "</p><p>" +
game.i18n.localize("BOL.chat.welcome4") + "</p><p>" +
game.i18n.localize("BOL.chat.welcome5") + "</p>" +
game.i18n.localize("BOL.chat.welcome6")
let rulebook = game.modules.find( m => m.id === "bol-rulebook")
if ( !rulebook ) {
content += "<p>" + game.i18n.localize("BOL.chat.bolRulebookMessage") + "</p>"
}
ChatMessage.create({ ChatMessage.create({
user: game.user.id, user: game.user.id,
whisper: [game.user.id], whisper: [game.user.id],
content: `<div id="welcome-message-bol"><span class="rdd-roll-part"> content: content
<strong>` + game.i18n.localize("BOL.chat.welcome1") + `</strong><p>` +
game.i18n.localize("BOL.chat.welcome2") + "<p>" +
game.i18n.localize("BOL.chat.welcome3") + "<p>" +
game.i18n.localize("BOL.chat.welcome4") + "</p>" +
game.i18n.localize("BOL.chat.welcome5") + "<br>" +
game.i18n.localize("BOL.chat.welcome6")
}) })
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.find(m => m.id == "babele") ){
ChatMessage.create({ ChatMessage.create({
user: game.user.id, user: game.user.id,
whisper: [game.user.id], whisper: [game.user.id],
content: `<div id="welcome-message-bol"><span class="rdd-roll-part"> content: `<div id="welcome-message-bol"><span class="rdd-roll-part">
<strong>WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.` <strong>WARNING ! English language selected, but Babele module is not installed !<br>Please install babele from the module tab in Foundry interface.`
} ) } )
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("WARNING ! English language selected, but babele module is not installed !<br>Please install babele from the module tab in Foundry interface.")
} }
} }
@@ -160,13 +166,11 @@ Hooks.once('ready', async function () {
"d6B": "d6H (Bonus)", "d6B": "d6H (Bonus)",
"d6BB": "d6H + Bonus die", "d6BB": "d6H + Bonus die",
} }
if (game.i18n.lang === "fr") { if (game.i18n.lang === "fr") {
game.bol.config.damageValues = damageFR; game.bol.config.damageValues = damageFR;
} else { } else {
game.bol.config.damageValues = damageEN; game.bol.config.damageValues = damageEN;
} }
}) })

View File

@@ -19,9 +19,9 @@ export class BoLRoll {
static updateApplicableEffects(rollData) { static updateApplicableEffects(rollData) {
let appEffects = [] let appEffects = []
for (let effect of rollData.bolEffects) { for (let effect of rollData.bolEffects) {
if ( (effect.system.properties.identifier == "always") || if ((effect.system.properties.identifier == "always") ||
(effect.system.properties.identifier.includes(rollData.attribute.key)) || (effect.system.properties.identifier.includes(rollData.attribute.key)) ||
(rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key)) ){ (rollData.aptitude && effect.system.properties.identifier.includes(rollData.aptitude.key))) {
appEffects.push(effect) appEffects.push(effect)
} }
} }
@@ -76,7 +76,7 @@ export class BoLRoll {
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
static attributeCheck(actor, key="vigor", event=undefined, combatData=undefined) { static attributeCheck(actor, key = "vigor", event = undefined, combatData = undefined) {
let attribute = eval(`actor.system.attributes.${key}`) let attribute = eval(`actor.system.attributes.${key}`)
@@ -89,7 +89,7 @@ export class BoLRoll {
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
static aptitudeCheck(actor, key="init", event=undefined, combatData=undefined) { static aptitudeCheck(actor, key = "init", event = undefined, combatData = undefined) {
let aptitude = eval(`actor.system.aptitudes.${key}`) let aptitude = eval(`actor.system.aptitudes.${key}`)
let attrKey = this.getDefaultAttribute(key) let attrKey = this.getDefaultAttribute(key)
@@ -305,7 +305,7 @@ export class BoLRoll {
// Keep track of the final effect modifier // Keep track of the final effect modifier
this.rollData.effectModifier = effectModifier this.rollData.effectModifier = effectModifier
// Final number of dices // Final number of dices
this.rollData.nbDice = 2 + Math.abs(this.rollData.bmDice) this.rollData.nbDice = 2 + Math.abs(this.rollData.bmDice)
// Bonus or Malus ? // Bonus or Malus ?
if (this.rollData.bmDice == 0) { if (this.rollData.bmDice == 0) {
@@ -482,14 +482,19 @@ export class BoLRoll {
if (rollData.mode == "weapon") { if (rollData.mode == "weapon") {
rollData.weaponModifier = rollData.weapon.system.properties.attackModifiers ?? 0 rollData.weaponModifier = rollData.weapon.system.properties.attackModifiers ?? 0
rollData.attackBonusDice = rollData.weapon.system.properties.attackBonusDice rollData.attackBonusDice = rollData.weapon.system.properties.attackBonusDice
rollData.attackMalusDice = rollData.weapon.system.properties.attackMalusDice
if (rollData.attackBonusDice) { if (rollData.attackBonusDice) {
rollData.adv = "1B" rollData.adv = "1B"
rollData.bDice = 1 rollData.bDice = 1
} }
if (rollData.attackMalusDice) {
rollData.adv = "1M"
rollData.mDice = 1
}
if (defender) { // If target is selected if (defender) { // If target is selected
rollData.defence = defender.defenseValue rollData.defence = defender.defenseValue
rollData.armorMalus = defender.armorMalusValue rollData.armorMalus = defender.armorMalusValue
rollData.defenderHeroPoints = defender.getHeroPoints() rollData.defenderHeroPoints = defender.getHeroPoints()
rollData.shieldBlock = 'none' rollData.shieldBlock = 'none'
let shields = defender.shields let shields = defender.shields
//console.log("Defender stats", defender) //console.log("Defender stats", defender)
@@ -534,8 +539,9 @@ export class BoLRoll {
rollData.id = foundry.utils.randomID(16) rollData.id = foundry.utils.randomID(16)
rollData.weaponModifier = 0 rollData.weaponModifier = 0
rollData.attackBonusDice = false rollData.attackBonusDice = false
rollData.attackMalusDice = false
rollData.armorMalus = 0 rollData.armorMalus = 0
// Specific stuff // Specific stuff
this.preProcessWeapon(rollData, defender) this.preProcessWeapon(rollData, defender)
this.preProcessFightOption(rollData) this.preProcessFightOption(rollData)
this.updateArmorMalus(rollData) this.updateArmorMalus(rollData)
@@ -551,7 +557,7 @@ export class BoLRoll {
console.log("ROLLDATA", rollData) console.log("ROLLDATA", rollData)
// Then display+process the dialog // Then display+process the dialog
const rollOptionContent = await renderTemplate(rollOptionTpl, rollData); const rollOptionContent = await foundry.applications.handlebars.renderTemplate(rollOptionTpl, rollData);
let d = new Dialog({ let d = new Dialog({
title: rollData.label, title: rollData.label,
content: rollOptionContent, content: rollOptionContent,
@@ -582,7 +588,7 @@ export class BoLRoll {
rollbase = 0 rollbase = 0
} }
let diceData = BoLUtility.getDiceData() let diceData = BoLUtility.getDiceData()
let malusInit = rollData.combatData?.malusInit || 0 let malusInit = rollData.combatData?.malusInit || 0
const modifiers = rollbase + rollData.careerBonus + rollData.mod + rollData.weaponModifier - rollData.defence - rollData.modArmorMalus + rollData.shieldMalus + rollData.attackModifier + rollData.appliedArmorMalus + rollData.effectModifier - malusInit const modifiers = rollbase + rollData.careerBonus + rollData.mod + rollData.weaponModifier - rollData.defence - rollData.modArmorMalus + rollData.shieldMalus + rollData.attackModifier + rollData.appliedArmorMalus + rollData.effectModifier - malusInit
const formula = (isMalus) ? rollData.nbDice + "d" + diceData.diceFormula + "kl2 + " + modifiers : rollData.nbDice + "d" + diceData.diceFormula + "kh2 + " + modifiers const formula = (isMalus) ? rollData.nbDice + "d" + diceData.diceFormula + "kl2 + " + modifiers : rollData.nbDice + "d" + diceData.diceFormula + "kh2 + " + modifiers
rollData.formula = formula rollData.formula = formula
@@ -634,16 +640,16 @@ export class BoLDefaultRoll {
const diceTotal = activeDice.map(r => r.result).reduce((a, b) => a + b) const diceTotal = activeDice.map(r => r.result).reduce((a, b) => a + b)
this.rollData.roll = r this.rollData.roll = r
this.rollData.isFumble = (diceTotal <= diceData.criticalFailureValue) this.rollData.isFumble = (diceTotal <= diceData.criticalFailureValue)
if ( this.rollData.isFumble ) { if (this.rollData.isFumble) {
this.rollData.isSuccess = false this.rollData.isSuccess = false
this.rollData.isCritical = false this.rollData.isCritical = false
this.rollData.isRealCritical = false this.rollData.isRealCritical = false
this.rollData.isHeroic = false this.rollData.isHeroic = false
this.rollData.isFailure = true this.rollData.isFailure = true
} else { } else {
this.rollData.isCritical = (diceTotal >= diceData.criticalSuccessValue) this.rollData.isCritical = (diceTotal >= diceData.criticalSuccessValue)
if ( this.rollData.isCritical) { if (this.rollData.isCritical) {
this.rollData.isSuccess = true this.rollData.isSuccess = true
} else { } else {
this.rollData.isSuccess = (r.total >= diceData.successValue) this.rollData.isSuccess = (r.total >= diceData.successValue)
} }
@@ -805,13 +811,13 @@ export class BoLDefaultRoll {
/* -------------------------------------------- */ /* -------------------------------------------- */
_buildDamageChatMessage(rollData) { _buildDamageChatMessage(rollData) {
const rollMessageTpl = 'systems/bol/templates/chat/rolls/damage-roll-card.hbs'; const rollMessageTpl = 'systems/bol/templates/chat/rolls/damage-roll-card.hbs';
return renderTemplate(rollMessageTpl, rollData) return foundry.applications.handlebars.renderTemplate(rollMessageTpl, rollData)
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
_buildChatMessage(rollData) { _buildChatMessage(rollData) {
const rollMessageTpl = 'systems/bol/templates/chat/rolls/default-roll-card.hbs' const rollMessageTpl = 'systems/bol/templates/chat/rolls/default-roll-card.hbs'
return renderTemplate(rollMessageTpl, rollData) return foundry.applications.handlebars.renderTemplate(rollMessageTpl, rollData)
} }
} }

View File

@@ -4,7 +4,7 @@ import { BoLUtility } from "../system/bol-utility.js";
* Extend the basic ItemSheet with some very simple modifications * Extend the basic ItemSheet with some very simple modifications
* @extends {ItemSheet} * @extends {ItemSheet}
*/ */
export class BoLItemSheet extends ItemSheet { export class BoLItemSheet extends foundry.appv1.sheets.ItemSheet {
/** @override */ /** @override */
static get defaultOptions() { static get defaultOptions() {
@@ -13,6 +13,7 @@ export class BoLItemSheet extends ItemSheet {
template: "systems/bol/templates/item/item-sheet.hbs", template: "systems/bol/templates/item/item-sheet.hbs",
width: 650, width: 650,
height: 780, height: 780,
dragDrop: [{ dragSelector: null, dropSelector: null }],
tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description" }] tabs: [{ navSelector: ".sheet-tabs", contentSelector: ".sheet-body", initial: "description" }]
}); });
} }
@@ -27,7 +28,7 @@ export class BoLItemSheet extends ItemSheet {
data.category = itemData.system.category data.category = itemData.system.category
data.isGM = game.user.isGM; data.isGM = game.user.isGM;
data.itemProperties = this.item.itemProperties; data.itemProperties = this.item.itemProperties;
data.description = await TextEditor.enrichHTML(this.object.system.description, { async: true }) data.description = await foundry.applications.ux.TextEditor.implementation.enrichHTML(this.object.system.description, { async: true })
if (data.document.actor) { if (data.document.actor) {
data.careers = data.document.actor.careers data.careers = data.document.actor.careers
} }
@@ -102,6 +103,7 @@ export class BoLItemSheet extends ItemSheet {
activateListeners(html) { activateListeners(html) {
super.activateListeners(html); super.activateListeners(html);
// Everything below here is only needed if the sheet is editable // Everything below here is only needed if the sheet is editable
if (!this.options.editable) return; if (!this.options.editable) return;
// Roll handlers, click handlers, etc. would go here. // Roll handlers, click handlers, etc. would go here.

View File

@@ -12,8 +12,8 @@ export class BoLTokenHud {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async removeExtensionHud(app, html, tokenId) { static async removeExtensionHud(app, html, tokenId) {
html.find('.control-icon.bol-roll').remove() $(html).find('.control-icon.bol-roll').remove()
html.find('.control-icon.bol-action').remove() $(html).find('.control-icon.bol-action').remove()
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
@@ -25,7 +25,7 @@ export class BoLTokenHud {
const hudData = { actor: actor, actionsList: actor.buildListeActions(), rollsList: actor.buildRollList() } const hudData = { actor: actor, actionsList: actor.buildListeActions(), rollsList: actor.buildRollList() }
const controlIconActions = html.find('.control-icon[data-action=combat]'); const controlIconActions = $(html).find('.control-icon[data-action=combat]');
// initiative // initiative
await BoLTokenHud._configureSubMenu(controlIconActions, 'systems/bol/templates/token/hud-actor-actions.hbs', hudData, await BoLTokenHud._configureSubMenu(controlIconActions, 'systems/bol/templates/token/hud-actor-actions.hbs', hudData,
(event) => { (event) => {
@@ -43,7 +43,7 @@ export class BoLTokenHud {
} }
}) })
const controlIconTarget = html.find('.control-icon[data-action=target]'); const controlIconTarget = $(html).find('.control-icon[data-action=target]');
// att+apt+career // att+apt+career
await BoLTokenHud._configureSubMenu(controlIconTarget, 'systems/bol/templates/token/hud-actor-rolls.hbs', hudData, await BoLTokenHud._configureSubMenu(controlIconTarget, 'systems/bol/templates/token/hud-actor-rolls.hbs', hudData,
(event) => { (event) => {
@@ -59,7 +59,7 @@ export class BoLTokenHud {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async addTokenHudExtensions(app, html, tokenId) { static async addTokenHudExtensions(app, html, tokenId) {
const controlIconCombat = html.find('.control-icon[data-action=combat]') const controlIconCombat = $(html).find('.control-icon[data-action=combat]')
if (controlIconCombat.length > 0) { if (controlIconCombat.length > 0) {
BoLTokenHud.addExtensionHud(app, html, tokenId); BoLTokenHud.addExtensionHud(app, html, tokenId);
} }
@@ -67,7 +67,7 @@ export class BoLTokenHud {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async _configureSubMenu(insertionPoint, template, hudData, onMenuItem) { static async _configureSubMenu(insertionPoint, template, hudData, onMenuItem) {
const hud = $(await renderTemplate(template, hudData)) const hud = $(await foundry.applications.handlebars.renderTemplate(template, hudData))
const list = hud.find('div.bol-hud-list') const list = hud.find('div.bol-hud-list')
BoLTokenHud._toggleHudListActive(hud, list); BoLTokenHud._toggleHudListActive(hud, list);

View File

@@ -221,10 +221,10 @@ export class BoLCalendar extends Application {
let hn = defHeure.heure; let hn = defHeure.heure;
let chiffreAstral = this.getCurrentNombreAstral() ?? 0; let chiffreAstral = this.getCurrentNombreAstral() ?? 0;
heuresChancesMalchances[0] = { value : "+4", heures: [this.getHeureNumber((hn + chiffreAstral) % RDD_HEURES_PAR_JOUR).label]}; heuresChancesMalchances[0] = { value : "+4", heures: [this.getHeureNumber((hn + chiffreAstral) % RDD_HEURES_PAR_JOUR).label]};
heuresChancesMalchances[1] = { value : "+2", heures: [this.getHeureNumber((hn + chiffreAstral+4) % RDD_HEURES_PAR_JOUR).label, heuresChancesMalchances[1] = { value : "+2", heures: [this.getHeureNumber((hn + chiffreAstral+4) % RDD_HEURES_PAR_JOUR).label,
this.getHeureNumber((hn + chiffreAstral + 8) % RDD_HEURES_PAR_JOUR).label ] }; this.getHeureNumber((hn + chiffreAstral + 8) % RDD_HEURES_PAR_JOUR).label ] };
heuresChancesMalchances[2] = { value : "-4", heures: [this.getHeureNumber((hn + chiffreAstral+6) % RDD_HEURES_PAR_JOUR).label]}; heuresChancesMalchances[2] = { value : "-4", heures: [this.getHeureNumber((hn + chiffreAstral+6) % RDD_HEURES_PAR_JOUR).label]};
heuresChancesMalchances[3] = { value : "-2", heures: [this.getHeureNumber((hn + chiffreAstral+3) % RDD_HEURES_PAR_JOUR).label, heuresChancesMalchances[3] = { value : "-2", heures: [this.getHeureNumber((hn + chiffreAstral+3) % RDD_HEURES_PAR_JOUR).label,
this.getHeureNumber((hn + chiffreAstral + 9) % RDD_HEURES_PAR_JOUR).label ]}; this.getHeureNumber((hn + chiffreAstral + 9) % RDD_HEURES_PAR_JOUR).label ]};
} }
return heuresChancesMalchances; return heuresChancesMalchances;
@@ -331,7 +331,7 @@ export class BoLCalendar extends Application {
calendrierData.jourMoisOptions = RdDCalendrier.buildJoursMois(); calendrierData.jourMoisOptions = RdDCalendrier.buildJoursMois();
calendrierData.heuresOptions = [0, 1]; calendrierData.heuresOptions = [0, 1];
calendrierData.minutesOptions = Array(RDD_MINUTES_PAR_HEURES).fill().map((item, index) => 0 + index); calendrierData.minutesOptions = Array(RDD_MINUTES_PAR_HEURES).fill().map((item, index) => 0 + index);
let html = await renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-editor-template.html', calendrierData); let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-reve-de-dragon/templates/calendar-editor-template.html', calendrierData);
this.editeur = new RdDCalendrierEditeur(html, this, calendrierData) this.editeur = new RdDCalendrierEditeur(html, this, calendrierData)
} }
this.editeur.updateData(calendrierData); this.editeur.updateData(calendrierData);
@@ -360,7 +360,7 @@ export class BoLCalendar extends Application {
let heureNaissance = actor.getHeureNaissance(); let heureNaissance = actor.getHeureNaissance();
if ( heureNaissance) { if ( heureNaissance) {
heuresParActeur[actor.name] = this.getHeuresChanceMalchance(heureNaissance); heuresParActeur[actor.name] = this.getHeuresChanceMalchance(heureNaissance);
} }
} }
//console.log("ASTRO", astrologieArray); //console.log("ASTRO", astrologieArray);
calendrierData.astrologieData = astrologieArray; calendrierData.astrologieData = astrologieArray;
@@ -398,7 +398,7 @@ export class BoLCalendar extends Application {
let isRightMB = false; let isRightMB = false;
if ("which" in ev) { // Gecko (Firefox), WebKit (Safari/Chrome) & Opera if ("which" in ev) { // Gecko (Firefox), WebKit (Safari/Chrome) & Opera
isRightMB = ev.which == 3; isRightMB = ev.which == 3;
} else if ("button" in ev) { // IE, Opera } else if ("button" in ev) { // IE, Opera
isRightMB = ev.button == 2; isRightMB = ev.button == 2;
} }

View File

@@ -28,7 +28,7 @@ export class BoLUtility {
}) })
game.settings.register("bol", "auto-remove-dead", { game.settings.register("bol", "auto-remove-dead", {
name: game.i18n.localize("BOL.settings.removeDead"), name: game.i18n.localize("BOL.settings.removeDead"),
hint: game.i18n.localize("BOL.settings.removeDeadTooltip"), hint: game.i18n.localize("BOL.settings.removeDeadTooltip"),
scope: "world", scope: "world",
config: true, config: true,
default: false, default: false,
@@ -344,7 +344,7 @@ export class BoLUtility {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async chatMessageHandler(message, html, data) { static async chatMessageHandler(message, html, data) {
const chatCard = html.find('.flavor-text') const chatCard = $(html).find('.flavor-text')
if (chatCard.length > 0) { if (chatCard.length > 0) {
// If the user is the message author or the actor owner, proceed // If the user is the message author or the actor owner, proceed
const actor = game.actors.get(data.message.speaker.actor) const actor = game.actors.get(data.message.speaker.actor)
@@ -381,6 +381,8 @@ export class BoLUtility {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async chatListeners(html) { static async chatListeners(html) {
html = $(html);
// Damage handling // Damage handling
html.on("click", '.chat-damage-apply', event => { html.on("click", '.chat-damage-apply', event => {
let rollData = BoLUtility.getRollDataFromMessage(event) let rollData = BoLUtility.getRollDataFromMessage(event)
@@ -427,7 +429,7 @@ export class BoLUtility {
html.on("click", '.damage-handling', event => { html.on("click", '.damage-handling', event => {
event.preventDefault() event.preventDefault()
let attr = event.currentTarget.attributes['data-attack-id'] let attr = event.currentTarget.attributes['data-attack-id']
if ( !attr) { if (!attr) {
ui.notifications.warn("Impossible de trouver l'attaque correspondante, erreur de suivi de combat.") ui.notifications.warn("Impossible de trouver l'attaque correspondante, erreur de suivi de combat.")
return return
} }
@@ -482,8 +484,8 @@ export class BoLUtility {
let armorFormula = defender.getArmorFormula() let armorFormula = defender.getArmorFormula()
rollData.rollArmor = new Roll(armorFormula) rollData.rollArmor = new Roll(armorFormula)
await rollData.rollArmor.roll() await rollData.rollArmor.roll()
let msg = await rollData.rollArmor.toMessage({ flavor: "BOL.chat.armorRoll : " + armorFormula }); let msg = await rollData.rollArmor.toMessage({ flavor: game.i18n.localize("BOL.chat.armorRoll") + " : " + armorFormula });
if ( game.dice3d) { // wait animation end when DsN is there if (game.dice3d) { // wait animation end when DsN is there
await game.dice3d.waitFor3DAnimationByMessageID(msg.id); await game.dice3d.waitFor3DAnimationByMessageID(msg.id);
} }
rollData.armorProtect = (rollData.rollArmor.total < 0) ? 0 : rollData.rollArmor.total rollData.armorProtect = (rollData.rollArmor.total < 0) ? 0 : rollData.rollArmor.total
@@ -632,7 +634,7 @@ export class BoLUtility {
attackId: rollData.id, attackId: rollData.id,
attacker: rollData.attacker, attacker: rollData.attacker,
defender: defender, defender: defender,
defenderHeroPoints:defender.getHeroPoints(), defenderHeroPoints: defender.getHeroPoints(),
defenderWeapons: defenderWeapons, defenderWeapons: defenderWeapons,
damageTotal: rollData.damageTotal, damageTotal: rollData.damageTotal,
damagesIgnoresArmor: rollData.damagesIgnoresArmor, damagesIgnoresArmor: rollData.damagesIgnoresArmor,

View File

@@ -190,15 +190,21 @@ BOL.rangeModifiers = {
BOL.difficultyModifiers = { BOL.difficultyModifiers = {
"4": "BOL.dialog.soeasy", "4": "BOL.dialog.soeasy",
"3": "BOL.dialog.soeasy3",
"2": "BOL.dialog.veryeasy", "2": "BOL.dialog.veryeasy",
"1": "BOL.dialog.easy", "1": "BOL.dialog.easy",
"0": "BOL.dialog.moderate", "0": "BOL.dialog.moderate",
"-1": "BOL.dialog.hard", "-1": "BOL.dialog.hard",
"-2": "BOL.dialog.tough", "-2": "BOL.dialog.tough",
"-3": "BOL.dialog.tough3",
"-4": "BOL.dialog.demanding", "-4": "BOL.dialog.demanding",
"-5": "BOL.dialog.demanding5",
"-6": "BOL.dialog.formidable", "-6": "BOL.dialog.formidable",
"-7": "BOL.dialog.formidable7",
"-8": "BOL.dialog.heroic", "-8": "BOL.dialog.heroic",
"-9": "BOL.dialog.heroic9",
"-10": "BOL.dialog.mythic", "-10": "BOL.dialog.mythic",
"-11": "BOL.dialog.mythic11",
"-12": "BOL.dialog.divine" "-12": "BOL.dialog.divine"
} }

View File

@@ -15,7 +15,7 @@ export default function registerHooks() {
})) }))
Hooks.on('renderChatLog', (log, html, data) => BoLUtility.chatListeners(html)) Hooks.on('renderChatLog', (log, html, data) => BoLUtility.chatListeners(html))
Hooks.on('renderChatMessage', (message, html, data) => BoLUtility.chatMessageHandler(message, html, data)) Hooks.on('renderChatMessageHTML', (message, html, data) => BoLUtility.chatMessageHandler(message, html, data))
/** /**
* Create a macro when dropping an entity on the hotbar * Create a macro when dropping an entity on the hotbar
@@ -73,8 +73,8 @@ export default function registerHooks() {
button.addEventListener('click', () => { button.addEventListener('click', () => {
game.bol.charSummary.render(true) game.bol.charSummary.render(true)
}) })
html.find('.header-actions').after(button) $(html).find('.header-actions').after(button)
} }
}) })
} }

View File

@@ -60,11 +60,11 @@ export const preloadHandlebarsTemplates = async function () {
"systems/bol/templates/dialogs/effect-roll-part.hbs", "systems/bol/templates/dialogs/effect-roll-part.hbs",
"systems/bol/templates/dialogs/boons-roll-part.hbs", "systems/bol/templates/dialogs/boons-roll-part.hbs",
"systems/bol/templates/dialogs/flaws-roll-part.hbs", "systems/bol/templates/dialogs/flaws-roll-part.hbs",
"systems/bol/templates/dialogs/total-roll-part.hbs", "systems/bol/templates/dialogs/total-roll-part.hbs",
"systems/bol/templates/dialogs/fightoptions-roll-part.hbs", "systems/bol/templates/dialogs/fightoptions-roll-part.hbs",
"systems/bol/templates/dialogs/horoscope-roll-part.hbs" "systems/bol/templates/dialogs/horoscope-roll-part.hbs"
]; ];
// Load the template parts // Load the template parts
return loadTemplates(templatePaths); return foundry.applications.handlebars.loadTemplates(templatePaths);
}; };

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000674 MANIFEST-000953

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.204366 7f4bd8ff96c0 Recovering log #672 2026/01/05-17:48:52.795130 7f93ea7fc6c0 Recovering log #951
2025/01/24-22:58:11.312055 7f4bd8ff96c0 Delete type=3 #670 2026/01/05-17:48:52.804687 7f93ea7fc6c0 Delete type=3 #949
2025/01/24-22:58:11.312130 7f4bd8ff96c0 Delete type=0 #672 2026/01/05-17:48:52.804760 7f93ea7fc6c0 Delete type=0 #951
2025/01/24-23:03:05.072297 7f4bd3fff6c0 Level-0 table #677: started 2026/01/05-18:46:08.165267 7f93e9ffb6c0 Level-0 table #956: started
2025/01/24-23:03:05.072325 7f4bd3fff6c0 Level-0 table #677: 0 bytes OK 2026/01/05-18:46:08.165288 7f93e9ffb6c0 Level-0 table #956: 0 bytes OK
2025/01/24-23:03:05.105134 7f4bd3fff6c0 Delete type=0 #675 2026/01/05-18:46:08.171239 7f93e9ffb6c0 Delete type=0 #954
2025/01/24-23:03:05.134497 7f4bd3fff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.190776 7f93e9ffb6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.134550 7f4bd3fff6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.190816 7f93e9ffb6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.893801 7f9bde7fc6c0 Recovering log #668 2026/01/04-21:27:06.154359 7f93ebfff6c0 Recovering log #947
2025/01/24-22:56:58.904030 7f9bde7fc6c0 Delete type=3 #666 2026/01/04-21:27:06.163916 7f93ebfff6c0 Delete type=3 #945
2025/01/24-22:56:58.904088 7f9bde7fc6c0 Delete type=0 #668 2026/01/04-21:27:06.163965 7f93ebfff6c0 Delete type=0 #947
2025/01/24-22:57:20.999613 7f993ffff6c0 Level-0 table #673: started 2026/01/04-21:27:09.349413 7f93e9ffb6c0 Level-0 table #952: started
2025/01/24-22:57:20.999661 7f993ffff6c0 Level-0 table #673: 0 bytes OK 2026/01/04-21:27:09.349437 7f93e9ffb6c0 Level-0 table #952: 0 bytes OK
2025/01/24-22:57:21.043288 7f993ffff6c0 Delete type=0 #671 2026/01/04-21:27:09.356668 7f93e9ffb6c0 Delete type=0 #950
2025/01/24-22:57:21.081408 7f993ffff6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.356816 7f93e9ffb6c0 Manual compaction at level-0 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.081455 7f993ffff6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.356844 7f93e9ffb6c0 Manual compaction at level-1 from '!journal!3xJg1rCxnWvEmoxS' @ 72057594037927935 : 1 .. '!journal.pages!veAAxCtCKcFIsnln.0kUgZspxXO7VS8bd' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
packs/armors/000679.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000580 MANIFEST-000858

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.012287 7f4bd97fa6c0 Recovering log #578 2026/01/05-17:48:52.770002 7f93eb7fe6c0 Recovering log #856
2025/01/24-22:58:11.075603 7f4bd97fa6c0 Delete type=3 #576 2026/01/05-17:48:52.779610 7f93eb7fe6c0 Delete type=3 #854
2025/01/24-22:58:11.075671 7f4bd97fa6c0 Delete type=0 #578 2026/01/05-17:48:52.779657 7f93eb7fe6c0 Delete type=0 #856
2025/01/24-23:03:05.105257 7f4bd3fff6c0 Level-0 table #583: started 2026/01/05-18:46:08.184410 7f93e9ffb6c0 Level-0 table #861: started
2025/01/24-23:03:05.105282 7f4bd3fff6c0 Level-0 table #583: 0 bytes OK 2026/01/05-18:46:08.184436 7f93e9ffb6c0 Level-0 table #861: 0 bytes OK
2025/01/24-23:03:05.134279 7f4bd3fff6c0 Delete type=0 #581 2026/01/05-18:46:08.190634 7f93e9ffb6c0 Delete type=0 #859
2025/01/24-23:03:05.134512 7f4bd3fff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.190808 7f93e9ffb6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.134561 7f4bd3fff6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.190838 7f93e9ffb6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.850868 7f9bddffb6c0 Recovering log #574 2026/01/04-21:27:06.128994 7f93ea7fc6c0 Recovering log #852
2025/01/24-22:56:58.860980 7f9bddffb6c0 Delete type=3 #572 2026/01/04-21:27:06.139883 7f93ea7fc6c0 Delete type=3 #850
2025/01/24-22:56:58.861037 7f9bddffb6c0 Delete type=0 #574 2026/01/04-21:27:06.139937 7f93ea7fc6c0 Delete type=0 #852
2025/01/24-22:57:20.960265 7f993ffff6c0 Level-0 table #579: started 2026/01/04-21:27:09.336180 7f93e9ffb6c0 Level-0 table #857: started
2025/01/24-22:57:20.960286 7f993ffff6c0 Level-0 table #579: 0 bytes OK 2026/01/04-21:27:09.336219 7f93e9ffb6c0 Level-0 table #857: 0 bytes OK
2025/01/24-22:57:20.999485 7f993ffff6c0 Delete type=0 #577 2026/01/04-21:27:09.342820 7f93e9ffb6c0 Delete type=0 #855
2025/01/24-22:57:21.081395 7f993ffff6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.356794 7f93e9ffb6c0 Manual compaction at level-0 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.081429 7f993ffff6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.356834 7f93e9ffb6c0 Manual compaction at level-1 from '!items!G3dZTHIabA3LA1hY' @ 72057594037927935 : 1 .. '!items!xhEcsi3WHjbt2ro9' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
packs/boons/000843.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673 MANIFEST-000952

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.527878 7f4bd97fa6c0 Recovering log #671 2026/01/05-17:48:52.664159 7f93eaffd6c0 Recovering log #950
2025/01/24-22:58:10.595705 7f4bd97fa6c0 Delete type=3 #669 2026/01/05-17:48:52.674361 7f93eaffd6c0 Delete type=3 #948
2025/01/24-22:58:10.595759 7f4bd97fa6c0 Delete type=0 #671 2026/01/05-17:48:52.674426 7f93eaffd6c0 Delete type=0 #950
2025/01/24-23:03:04.779886 7f4bd3fff6c0 Level-0 table #676: started 2026/01/05-18:46:08.131395 7f93e9ffb6c0 Level-0 table #955: started
2025/01/24-23:03:04.779915 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK 2026/01/05-18:46:08.131423 7f93e9ffb6c0 Level-0 table #955: 0 bytes OK
2025/01/24-23:03:04.809134 7f4bd3fff6c0 Delete type=0 #674 2026/01/05-18:46:08.138592 7f93e9ffb6c0 Delete type=0 #953
2025/01/24-23:03:04.844346 7f4bd3fff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.138762 7f93e9ffb6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844386 7f4bd3fff6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.138775 7f93e9ffb6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.743871 7f9bddffb6c0 Recovering log #667 2026/01/04-21:27:06.028125 7f93ea7fc6c0 Recovering log #946
2025/01/24-22:56:58.753920 7f9bddffb6c0 Delete type=3 #665 2026/01/04-21:27:06.038087 7f93ea7fc6c0 Delete type=3 #944
2025/01/24-22:56:58.753974 7f9bddffb6c0 Delete type=0 #667 2026/01/04-21:27:06.038175 7f93ea7fc6c0 Delete type=0 #946
2025/01/24-22:57:20.657299 7f993ffff6c0 Level-0 table #672: started 2026/01/04-21:27:09.288246 7f93e9ffb6c0 Level-0 table #951: started
2025/01/24-22:57:20.657334 7f993ffff6c0 Level-0 table #672: 0 bytes OK 2026/01/04-21:27:09.288266 7f93e9ffb6c0 Level-0 table #951: 0 bytes OK
2025/01/24-22:57:20.695832 7f993ffff6c0 Delete type=0 #670 2026/01/04-21:27:09.295632 7f93e9ffb6c0 Delete type=0 #949
2025/01/24-22:57:20.771535 7f993ffff6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.302193 7f93e9ffb6c0 Manual compaction at level-0 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771602 7f993ffff6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.302223 7f93e9ffb6c0 Manual compaction at level-1 from '!items!039ZF3E3MtAGwbiX' @ 72057594037927935 : 1 .. '!items!zgspy1QKaxdEetEw' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/boons/MANIFEST-000952 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673 MANIFEST-000951

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.598406 7f4bda7fc6c0 Recovering log #671 2026/01/05-17:48:52.677346 7f93ebfff6c0 Recovering log #949
2025/01/24-22:58:10.661535 7f4bda7fc6c0 Delete type=3 #669 2026/01/05-17:48:52.687800 7f93ebfff6c0 Delete type=3 #947
2025/01/24-22:58:10.661593 7f4bda7fc6c0 Delete type=0 #671 2026/01/05-17:48:52.687851 7f93ebfff6c0 Delete type=0 #949
2025/01/24-23:03:04.743093 7f4bd3fff6c0 Level-0 table #676: started 2026/01/05-18:46:08.112587 7f93e9ffb6c0 Level-0 table #954: started
2025/01/24-23:03:04.743122 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK 2026/01/05-18:46:08.112663 7f93e9ffb6c0 Level-0 table #954: 0 bytes OK
2025/01/24-23:03:04.779757 7f4bd3fff6c0 Delete type=0 #674 2026/01/05-18:46:08.119196 7f93e9ffb6c0 Delete type=0 #952
2025/01/24-23:03:04.844334 7f4bd3fff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.138726 7f93e9ffb6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844395 7f4bd3fff6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.138769 7f93e9ffb6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.757318 7f9bdd7fa6c0 Recovering log #667 2026/01/04-21:27:06.040735 7f93eaffd6c0 Recovering log #945
2025/01/24-22:56:58.767702 7f9bdd7fa6c0 Delete type=3 #665 2026/01/04-21:27:06.051418 7f93eaffd6c0 Delete type=3 #943
2025/01/24-22:56:58.767770 7f9bdd7fa6c0 Delete type=0 #667 2026/01/04-21:27:06.051486 7f93eaffd6c0 Delete type=0 #945
2025/01/24-22:57:20.695957 7f993ffff6c0 Level-0 table #672: started 2026/01/04-21:27:09.295751 7f93e9ffb6c0 Level-0 table #950: started
2025/01/24-22:57:20.695985 7f993ffff6c0 Level-0 table #672: 0 bytes OK 2026/01/04-21:27:09.295768 7f93e9ffb6c0 Level-0 table #950: 0 bytes OK
2025/01/24-22:57:20.733474 7f993ffff6c0 Delete type=0 #670 2026/01/04-21:27:09.302037 7f93e9ffb6c0 Delete type=0 #948
2025/01/24-22:57:20.771558 7f993ffff6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.302205 7f93e9ffb6c0 Manual compaction at level-0 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771612 7f993ffff6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.302228 7f93e9ffb6c0 Manual compaction at level-1 from '!items!CoqlfsDV1gL5swbK' @ 72057594037927935 : 1 .. '!items!yofwG0YrsL902G77' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

BIN
packs/careers/000772.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673 MANIFEST-000951

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.723544 7f4bd9ffb6c0 Recovering log #671 2026/01/05-17:48:52.703286 7f93ea7fc6c0 Recovering log #949
2025/01/24-22:58:10.784164 7f4bd9ffb6c0 Delete type=3 #669 2026/01/05-17:48:52.712737 7f93ea7fc6c0 Delete type=3 #947
2025/01/24-22:58:10.784232 7f4bd9ffb6c0 Delete type=0 #671 2026/01/05-17:48:52.712782 7f93ea7fc6c0 Delete type=0 #949
2025/01/24-23:03:04.708366 7f4bd3fff6c0 Level-0 table #676: started 2026/01/05-18:46:08.157666 7f93e9ffb6c0 Level-0 table #954: started
2025/01/24-23:03:04.708441 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK 2026/01/05-18:46:08.157700 7f93e9ffb6c0 Level-0 table #954: 0 bytes OK
2025/01/24-23:03:04.742910 7f4bd3fff6c0 Delete type=0 #674 2026/01/05-18:46:08.165027 7f93e9ffb6c0 Delete type=0 #952
2025/01/24-23:03:04.844320 7f4bd3fff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.165139 7f93e9ffb6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.844366 7f4bd3fff6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.165158 7f93e9ffb6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.783697 7f9bdcff96c0 Recovering log #667 2026/01/04-21:27:06.066954 7f93ea7fc6c0 Recovering log #945
2025/01/24-22:56:58.794240 7f9bdcff96c0 Delete type=3 #665 2026/01/04-21:27:06.077513 7f93ea7fc6c0 Delete type=3 #943
2025/01/24-22:56:58.794286 7f9bdcff96c0 Delete type=0 #667 2026/01/04-21:27:06.077584 7f93ea7fc6c0 Delete type=0 #945
2025/01/24-22:57:20.733604 7f993ffff6c0 Level-0 table #672: started 2026/01/04-21:27:09.302290 7f93e9ffb6c0 Level-0 table #950: started
2025/01/24-22:57:20.733643 7f993ffff6c0 Level-0 table #672: 0 bytes OK 2026/01/04-21:27:09.302308 7f93e9ffb6c0 Level-0 table #950: 0 bytes OK
2025/01/24-22:57:20.771363 7f993ffff6c0 Delete type=0 #670 2026/01/04-21:27:09.309131 7f93e9ffb6c0 Delete type=0 #948
2025/01/24-22:57:20.771580 7f993ffff6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.329337 7f93e9ffb6c0 Manual compaction at level-0 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.771621 7f993ffff6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.329393 7f93e9ffb6c0 Manual compaction at level-1 from '!items!4S4xAfMXGnuU0O1a' @ 72057594037927935 : 1 .. '!items!zxY3sW0iCJBvwjOS' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000671 MANIFEST-000949

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.735608 7f4bda7fc6c0 Recovering log #669 2026/01/05-17:48:52.884139 7f93eaffd6c0 Recovering log #947
2025/01/24-22:58:11.787937 7f4bda7fc6c0 Delete type=3 #667 2026/01/05-17:48:52.893984 7f93eaffd6c0 Delete type=3 #945
2025/01/24-22:58:11.788018 7f4bda7fc6c0 Delete type=0 #669 2026/01/05-17:48:52.894046 7f93eaffd6c0 Delete type=0 #947
2025/01/24-23:03:05.274588 7f4bd3fff6c0 Level-0 table #674: started 2026/01/05-18:46:08.224243 7f93e9ffb6c0 Level-0 table #952: started
2025/01/24-23:03:05.274644 7f4bd3fff6c0 Level-0 table #674: 0 bytes OK 2026/01/05-18:46:08.224281 7f93e9ffb6c0 Level-0 table #952: 0 bytes OK
2025/01/24-23:03:05.308226 7f4bd3fff6c0 Delete type=0 #672 2026/01/05-18:46:08.230395 7f93e9ffb6c0 Delete type=0 #950
2025/01/24-23:03:05.418815 7f4bd3fff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.244434 7f93e9ffb6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.418858 7f4bd3fff6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.244477 7f93e9ffb6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.985856 7f9bdd7fa6c0 Recovering log #665 2026/01/04-21:27:06.242012 7f93ea7fc6c0 Recovering log #943
2025/01/24-22:56:58.997067 7f9bdd7fa6c0 Delete type=3 #663 2026/01/04-21:27:06.252013 7f93ea7fc6c0 Delete type=3 #941
2025/01/24-22:56:58.997144 7f9bdd7fa6c0 Delete type=0 #665 2026/01/04-21:27:06.252066 7f93ea7fc6c0 Delete type=0 #943
2025/01/24-22:57:21.358010 7f993ffff6c0 Level-0 table #670: started 2026/01/04-21:27:09.390639 7f93e9ffb6c0 Level-0 table #948: started
2025/01/24-22:57:21.358045 7f993ffff6c0 Level-0 table #670: 0 bytes OK 2026/01/04-21:27:09.390658 7f93e9ffb6c0 Level-0 table #948: 0 bytes OK
2025/01/24-22:57:21.395676 7f993ffff6c0 Delete type=0 #668 2026/01/04-21:27:09.396811 7f93e9ffb6c0 Delete type=0 #946
2025/01/24-22:57:21.395933 7f993ffff6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.410812 7f93e9ffb6c0 Manual compaction at level-0 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.395978 7f993ffff6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.410834 7f93e9ffb6c0 Manual compaction at level-1 from '!items!6fTZ6hOKR4pWbWOe' @ 72057594037927935 : 1 .. '!items!zwSNMO9HpiqUCMt8' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

BIN
packs/equipment/000773.ldb Normal file

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000674 MANIFEST-000952

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:10.904910 7f4bd8ff96c0 Recovering log #672 2026/01/05-17:48:52.742838 7f93eaffd6c0 Recovering log #950
2025/01/24-22:58:10.959379 7f4bd8ff96c0 Delete type=3 #670 2026/01/05-17:48:52.753021 7f93eaffd6c0 Delete type=3 #948
2025/01/24-22:58:10.959457 7f4bd8ff96c0 Delete type=0 #672 2026/01/05-17:48:52.753070 7f93eaffd6c0 Delete type=0 #950
2025/01/24-23:03:04.914639 7f4bd3fff6c0 Level-0 table #677: started 2026/01/05-18:46:08.151562 7f93e9ffb6c0 Level-0 table #955: started
2025/01/24-23:03:04.914673 7f4bd3fff6c0 Level-0 table #677: 0 bytes OK 2026/01/05-18:46:08.151582 7f93e9ffb6c0 Level-0 table #955: 0 bytes OK
2025/01/24-23:03:04.957862 7f4bd3fff6c0 Delete type=0 #675 2026/01/05-18:46:08.157521 7f93e9ffb6c0 Delete type=0 #953
2025/01/24-23:03:04.994334 7f4bd3fff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.165132 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/01/24-23:03:04.994412 7f4bd3fff6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.165154 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.822760 7f9bde7fc6c0 Recovering log #668 2026/01/04-21:27:06.103266 7f93eb7fe6c0 Recovering log #946
2025/01/24-22:56:58.833771 7f9bde7fc6c0 Delete type=3 #666 2026/01/04-21:27:06.114180 7f93eb7fe6c0 Delete type=3 #944
2025/01/24-22:56:58.833837 7f9bde7fc6c0 Delete type=0 #668 2026/01/04-21:27:06.114255 7f93eb7fe6c0 Delete type=0 #946
2025/01/24-22:57:20.808743 7f993ffff6c0 Level-0 table #673: started 2026/01/04-21:27:09.322146 7f93e9ffb6c0 Level-0 table #951: started
2025/01/24-22:57:20.808776 7f993ffff6c0 Level-0 table #673: 0 bytes OK 2026/01/04-21:27:09.322167 7f93e9ffb6c0 Level-0 table #951: 0 bytes OK
2025/01/24-22:57:20.844313 7f993ffff6c0 Delete type=0 #671 2026/01/04-21:27:09.329148 7f93e9ffb6c0 Delete type=0 #949
2025/01/24-22:57:20.923913 7f993ffff6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.329383 7f93e9ffb6c0 Manual compaction at level-0 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)
2025/01/24-22:57:20.923965 7f993ffff6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.329422 7f93e9ffb6c0 Manual compaction at level-1 from '!items!0ErhyqifZLDCmMfT' @ 72057594037927935 : 1 .. '!items!yE8UH6YAgNGjKDEu' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000673 MANIFEST-000951

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.508458 7f4bda7fc6c0 Recovering log #671 2026/01/05-17:48:52.833468 7f93eb7fe6c0 Recovering log #949
2025/01/24-22:58:11.563173 7f4bda7fc6c0 Delete type=3 #669 2026/01/05-17:48:52.842854 7f93eb7fe6c0 Delete type=3 #947
2025/01/24-22:58:11.563248 7f4bda7fc6c0 Delete type=0 #671 2026/01/05-17:48:52.842916 7f93eb7fe6c0 Delete type=0 #949
2025/01/24-23:03:05.173833 7f4bd3fff6c0 Level-0 table #676: started 2026/01/05-18:46:08.210715 7f93e9ffb6c0 Level-0 table #954: started
2025/01/24-23:03:05.173864 7f4bd3fff6c0 Level-0 table #676: 0 bytes OK 2026/01/05-18:46:08.210743 7f93e9ffb6c0 Level-0 table #954: 0 bytes OK
2025/01/24-23:03:05.206681 7f4bd3fff6c0 Delete type=0 #674 2026/01/05-18:46:08.216985 7f93e9ffb6c0 Delete type=0 #952
2025/01/24-23:03:05.274416 7f4bd3fff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.217118 7f93e9ffb6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.274453 7f4bd3fff6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.217151 7f93e9ffb6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.933062 7f9bdd7fa6c0 Recovering log #667 2026/01/04-21:27:06.191520 7f93eb7fe6c0 Recovering log #945
2025/01/24-22:56:58.942971 7f9bdd7fa6c0 Delete type=3 #665 2026/01/04-21:27:06.201833 7f93eb7fe6c0 Delete type=3 #943
2025/01/24-22:56:58.943021 7f9bdd7fa6c0 Delete type=0 #667 2026/01/04-21:27:06.201898 7f93eb7fe6c0 Delete type=0 #945
2025/01/24-22:57:21.081539 7f993ffff6c0 Level-0 table #672: started 2026/01/04-21:27:09.363375 7f93e9ffb6c0 Level-0 table #950: started
2025/01/24-22:57:21.081581 7f993ffff6c0 Level-0 table #672: 0 bytes OK 2026/01/04-21:27:09.363409 7f93e9ffb6c0 Level-0 table #950: 0 bytes OK
2025/01/24-22:57:21.123467 7f993ffff6c0 Delete type=0 #670 2026/01/04-21:27:09.370710 7f93e9ffb6c0 Delete type=0 #948
2025/01/24-22:57:21.240040 7f993ffff6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.384119 7f93e9ffb6c0 Manual compaction at level-0 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.240077 7f993ffff6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.384146 7f93e9ffb6c0 Manual compaction at level-1 from '!items!AoT2c0af4lY6aBsx' @ 72057594037927935 : 1 .. '!items!vGydqADwTsHZ9B3j' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
MANIFEST-000156 MANIFEST-000434

View File

@@ -1,8 +1,8 @@
2025/01/24-22:58:11.566054 7f4bd8ff96c0 Recovering log #154 2026/01/05-17:48:52.845257 7f93eaffd6c0 Recovering log #432
2025/01/24-22:58:11.619002 7f4bd8ff96c0 Delete type=3 #152 2026/01/05-17:48:52.856086 7f93eaffd6c0 Delete type=3 #430
2025/01/24-22:58:11.619069 7f4bd8ff96c0 Delete type=0 #154 2026/01/05-17:48:52.856148 7f93eaffd6c0 Delete type=0 #432
2025/01/24-23:03:05.235779 7f4bd3fff6c0 Level-0 table #159: started 2026/01/05-18:46:08.197169 7f93e9ffb6c0 Level-0 table #437: started
2025/01/24-23:03:05.235804 7f4bd3fff6c0 Level-0 table #159: 0 bytes OK 2026/01/05-18:46:08.197189 7f93e9ffb6c0 Level-0 table #437: 0 bytes OK
2025/01/24-23:03:05.274273 7f4bd3fff6c0 Delete type=0 #157 2026/01/05-18:46:08.204388 7f93e9ffb6c0 Delete type=0 #435
2025/01/24-23:03:05.274439 7f4bd3fff6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.217099 7f93e9ffb6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/01/24-23:03:05.274466 7f4bd3fff6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end) 2026/01/05-18:46:08.217134 7f93e9ffb6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)

View File

@@ -1,8 +1,8 @@
2025/01/24-22:56:58.945158 7f9bde7fc6c0 Recovering log #150 2026/01/04-21:27:06.203697 7f93eaffd6c0 Recovering log #428
2025/01/24-22:56:58.956395 7f9bde7fc6c0 Delete type=3 #148 2026/01/04-21:27:06.214195 7f93eaffd6c0 Delete type=3 #426
2025/01/24-22:56:58.956478 7f9bde7fc6c0 Delete type=0 #150 2026/01/04-21:27:06.214286 7f93eaffd6c0 Delete type=0 #428
2025/01/24-22:57:21.203496 7f993ffff6c0 Level-0 table #155: started 2026/01/04-21:27:09.377290 7f93e9ffb6c0 Level-0 table #433: started
2025/01/24-22:57:21.203530 7f993ffff6c0 Level-0 table #155: 0 bytes OK 2026/01/04-21:27:09.377314 7f93e9ffb6c0 Level-0 table #433: 0 bytes OK
2025/01/24-22:57:21.239914 7f993ffff6c0 Delete type=0 #153 2026/01/04-21:27:09.383925 7f93e9ffb6c0 Delete type=0 #431
2025/01/24-22:57:21.240069 7f993ffff6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.384140 7f93e9ffb6c0 Manual compaction at level-0 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)
2025/01/24-22:57:21.240091 7f993ffff6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end) 2026/01/04-21:27:09.384156 7f93e9ffb6c0 Manual compaction at level-1 from '!items!CLRp0k5qV8mD03pW' @ 72057594037927935 : 1 .. '!items!wYEpnhbyYaMkaNdL' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

BIN
packs/flaws/000843.ldb Normal file

Binary file not shown.

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