16 Commits

Author SHA1 Message Date
e9c0fbd818 Fix URL scheme
All checks were successful
Release Creation / build (release) Successful in 1m30s
2025-03-19 13:55:30 +01:00
aaabb7ed75 Correction sur XP, echec critique et tir réussi
All checks were successful
Release Creation / build (release) Successful in 53s
2025-03-18 20:38:30 +01:00
fee7a3a9fb Gestion opposition en combat melee 2025-03-11 20:16:26 +01:00
31517030f6 Gestion opposition en combat melee
All checks were successful
Release Creation / build (release) Successful in 39s
2025-03-11 20:10:06 +01:00
c5cbf2a6d1 Gestion du genre dans la creation de perso 2025-03-11 13:45:04 +01:00
a30f813d94 Fix genre 2025-03-10 16:56:25 +01:00
090f6be601 Fix genre 2025-03-10 16:56:10 +01:00
60db1f65e4 Prit fix sur equipement et armes d'hast 2025-03-10 15:52:37 +01:00
d532765d2b Correction sur creation PNJ
All checks were successful
Release Creation / build (release) Successful in 2m0s
2025-03-01 22:01:01 +01:00
b6016742ae Enable PNJ 2025-03-01 19:42:15 +01:00
761f95d6d9 Ajout comp libres
All checks were successful
Release Creation / build (release) Successful in 44s
2025-02-25 22:29:05 +01:00
c24f4fe502 Ajout comp libres
All checks were successful
Release Creation / build (release) Successful in 1m13s
2025-02-25 21:29:52 +01:00
caedcf5e21 Update release 2025-02-24 19:53:03 +01:00
fe0814e498 Conserve l'historique des réponses
All checks were successful
Release Creation / build (release) Successful in 1m26s
2025-02-22 22:44:00 +01:00
544f9f467a Import and fix helper pictures 2025-02-21 17:49:49 +01:00
ce5771f930 Import and fix helper pictures 2025-02-21 17:47:49 +01:00
146 changed files with 321 additions and 194 deletions

View File

@ -27,7 +27,7 @@ jobs:
env: env:
version: ${{steps.get_version.outputs.version-without-v}} version: ${{steps.get_version.outputs.version-without-v}}
url: https://www.uberwald.me/gitea/${{gitea.repository}} url: https://www.uberwald.me/gitea/${{gitea.repository}}
manifest: https://www.uberwald.me/gitea/public/${{gitea.repository}}/releases/download/latest/system.json manifest: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/latest/system.json
download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/fvtt-te-deum-${{github.event.release.tag_name}}.zip download: https://www.uberwald.me/gitea/${{gitea.repository}}/releases/download/${{github.event.release.tag_name}}/fvtt-te-deum-${{github.event.release.tag_name}}.zip
# Create a zip file with all files required by the module to add to the release # Create a zip file with all files required by the module to add to the release

View File

@ -1,4 +1,4 @@
# Système Foundry pour Te Deum pour un massacre (French RPG, Open Sesam Games, Official) # Système Foundry pour Te Deum pour un Massacre (French RPG, Open Sesame Games, Official)
This is a base game system with functionnal character sheets for the game Te Deum pour un massacre. This is a base game system with functionnal character sheets for the game Te Deum pour un massacre.
@ -6,6 +6,11 @@ This is a base game system with functionnal character sheets for the game Te Deu
- Original code realised by Uberwald (https://www.uberwald.me/) - Original code realised by Uberwald (https://www.uberwald.me/)
Snapshot of the system :
![Alt text](https://www.lahiette.com/leratierbretonnien/wp-content/uploads/2025/02/tedeum_snapshot.webp "a title")
# Copyright mentions # Copyright mentions
Copyright 2025 Open Sesame Games Copyright 2025 Open Sesame Games

View File

@ -0,0 +1,25 @@
# 12.0.23
- Correction sur les jets réussie en tir
- Correction sur le dés négatif pour les échecs critiques
- Correction sur l'XP et édition de l'XP en mode MJ
# 12.0.22
- Correction pour les armes d'hast
- Correction sur la zone libre d'équipement
- Bouton + pour créer un équipement à nouveau opérationnel
- Modification de la gestion des jets en combat, avec gestion opposition ou degats immédiats
- Gestion du genre dans la création de personnage
# 12.0.21
- Creation de PNJ OK
# 12.0.20
- Corrections sur la création de perso
# 12.0.19
- Initial release !

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

View File

@ -56,7 +56,9 @@ export class TeDeumActorPJSheet extends ActorSheet {
santeModifier: this.actor.getSanteModifier(), santeModifier: this.actor.getSanteModifier(),
educations: this.actor.getEducations(), educations: this.actor.getEducations(),
description: await TextEditor.enrichHTML(this.object.system.description, { async: true }), description: await TextEditor.enrichHTML(this.object.system.description, { async: true }),
equipmentfree: await TextEditor.enrichHTML(this.object.system.equipmentfree, { async: true }),
notes: await TextEditor.enrichHTML(this.object.system.notes, { async: true }), notes: await TextEditor.enrichHTML(this.object.system.notes, { async: true }),
histoire: await TextEditor.enrichHTML(this.object.system.histoire, { async: true }),
options: this.options, options: this.options,
owner: this.document.isOwner, owner: this.document.isOwner,
editScore: this.options.editScore, editScore: this.options.editScore,

View File

@ -34,7 +34,7 @@ export class TeDeumActor extends Actor {
return actor; return actor;
} }
if (data.type == 'pj') { if (data.type == 'pj' || data.type == 'pnj') {
const skills = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences") const skills = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences")
data.items = data.items || [] data.items = data.items || []
for (let skill of skills) { for (let skill of skills) {
@ -65,6 +65,14 @@ export class TeDeumActor extends Actor {
super._preUpdate(changed, options, user); super._preUpdate(changed, options, user);
} }
getCompetenceScore(compName) {
let competence = this.items.find(item => item.type == "competence" && item.name.toLowerCase() == compName.toLowerCase())
if (competence) {
return competence.system.score
}
return 0
}
/* -------------------------------------------- */ /* -------------------------------------------- */
_onUpdate(changed, options, userId) { _onUpdate(changed, options, userId) {
let updates = [] let updates = []
@ -352,11 +360,13 @@ export class TeDeumActor extends Actor {
providence.value = Math.min(Math.max(providence.value + value, 0), 6) providence.value = Math.min(Math.max(providence.value + value, 0), 6)
this.update({ "system.providence": providence }) this.update({ "system.providence": providence })
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
modifyXP(key, value) { async modifyXP(key, value) {
let xp = this.system.caracteristiques[key].experience let xp = this.system.caracteristiques[key].experience
xp = Math.max(xp + value, 0) xp = Math.max(xp + value, 0)
this.update({ [`system.caracteristiques.${key}.experience`]: xp }) await this.update({ [`system.caracteristiques.${key}.experience`]: xp })
this.sheet?.render(true)
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
@ -622,7 +632,8 @@ export class TeDeumActor extends Actor {
// Setup competence + carac // Setup competence + carac
if (!compName) { if (!compName) {
compName = weapon.system.competence let compIdx = weapon.system.competence
compName = game.system.tedeum.config.armeCompetences[compIdx]?.label
} }
let competence = this.items.find(item => item.type == "competence" && item.name.toLowerCase() == compName.toLowerCase()) let competence = this.items.find(item => item.type == "competence" && item.name.toLowerCase() == compName.toLowerCase())
if (competence) { if (competence) {

View File

@ -11,6 +11,7 @@ export class TeDeumCharacterCreator {
this.religion = undefined this.religion = undefined
this.caracBonus = {} this.caracBonus = {}
this.competenceBonus = {} this.competenceBonus = {}
this.suiviReponses = []
this.competences = TeDeumUtility.getCompetencesForDropDown() this.competences = TeDeumUtility.getCompetencesForDropDown()
for (let k in game.system.tedeum.config.caracteristiques) { for (let k in game.system.tedeum.config.caracteristiques) {
@ -168,6 +169,8 @@ export class TeDeumCharacterCreator {
let selectedResponse = question.reponses[context.responseKey] let selectedResponse = question.reponses[context.responseKey]
let compName = context.competences[context.responseKey] || selectedResponse.compName let compName = context.competences[context.responseKey] || selectedResponse.compName
this.increaseCompetence(compName) this.increaseCompetence(compName)
this.suiviReponses.push({ etape: stage.name, question: question.question, reponse: selectedResponse.reponse, compName: compName })
} }
} }
@ -371,6 +374,7 @@ export class TeDeumCharacterCreator {
title: "Création de personnage - La Pouponnière", title: "Création de personnage - La Pouponnière",
subtitle: "Choix de la Pouponnière", subtitle: "Choix de la Pouponnière",
label: "Valider le choix de la Pouponnière", label: "Valider le choix de la Pouponnière",
hasGenre: false,
choices: pouponniereItems, choices: pouponniereItems,
caracBonus: this.caracBonus, caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus competenceBonus: this.competenceBonus
@ -400,11 +404,12 @@ export class TeDeumCharacterCreator {
/*--------------------------------------------*/ /*--------------------------------------------*/
async renderPetitsGrimauds(stage) { async renderPetitsGrimauds(stage) {
// Filter available pouponniere from origineSociale // Filter available pouponniere from origineSociale
let grimaudsItems = stage.items.filter(item => item.system.accessible[this.origineSociale.id].isaccessible) let grimaudsItems = stage.items.filter(item => item.system.accessible[this.origineSociale.id].isaccessible && (item.system.genre === this.sexe || item.system.genre === "Mixte"))
let context = { let context = {
title: "Les Petits Grimauds", title: "Les Petits Grimauds",
label: "Valider le choix des Petits Grimauds", label: "Valider le choix des Petits Grimauds",
hasGenre: true,
choices: grimaudsItems, choices: grimaudsItems,
caracBonus: this.caracBonus, caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus competenceBonus: this.competenceBonus
@ -434,12 +439,13 @@ export class TeDeumCharacterCreator {
/*--------------------------------------------*/ /*--------------------------------------------*/
async renderRosesDeLaVie(stage) { async renderRosesDeLaVie(stage) {
// Filter available pouponniere from origineSociale // Filter available pouponniere from origineSociale
let rosesItems = stage.items.filter(item => item.system.accessible[this.origineSociale.id].isaccessible) let rosesItems = stage.items.filter(item => item.system.accessible[this.origineSociale.id].isaccessible && (item.system.genre === this.sexe || item.system.genre === "Mixte"))
let context = { let context = {
title: "Création de personnage - Les Roses de la Vie", title: "Création de personnage - Les Roses de la Vie",
label: "Valider le choix des Roses de la Vie", label: "Valider le choix des Roses de la Vie",
choices: rosesItems, choices: rosesItems,
hasGenre: true,
caracBonus: this.caracBonus, caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus competenceBonus: this.competenceBonus
@ -485,6 +491,7 @@ export class TeDeumCharacterCreator {
title: "Création de personnage - L'Age Viril", title: "Création de personnage - L'Age Viril",
label: "Valider le choix de l'Age Viril", label: "Valider le choix de l'Age Viril",
choices: ageVirilItems, choices: ageVirilItems,
hasGenre: false,
caracBonus: this.caracBonus, caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus competenceBonus: this.competenceBonus
} }
@ -573,8 +580,22 @@ export class TeDeumCharacterCreator {
newArgent /= this.ageViril.system.cagnotteDivider newArgent /= this.ageViril.system.cagnotteDivider
await actor.update({ [`system.fortune.${this.origineSociale.cagnotteUnit}`]: newArgent}) await actor.update({ [`system.fortune.${this.origineSociale.cagnotteUnit}`]: newArgent})
let histoire = ""
for (let reponse of this.suiviReponses) {
histoire += `<p>${reponse.question}<br>${reponse.reponse} (${reponse.compName})</p>`
}
await actor.update({ "system.histoire": histoire})
actor.render(true) actor.render(true)
context.pointsCompetence = {
"savoir": { score: actor.getCompetenceScore("Mémoriser"), label: "Savoir" },
"sensibilite": { score: actor.getCompetenceScore("Perception"), label: "Sensibilité" },
"entregent": { score: actor.getCompetenceScore("Charme"), label: "Entregent" },
"puissance": { score: actor.getCompetenceScore("Effort"), label: "Puissance" },
"complexion": { score: actor.getCompetenceScore("Endurance"), label: "Complexion" },
"adresse": { score: actor.getCompetenceScore("Initiative"), label: "Adresse" },
}
const content = await renderTemplate("systems/fvtt-te-deum/templates/dialogs/character-creator-finished.hbs", context) const content = await renderTemplate("systems/fvtt-te-deum/templates/dialogs/character-creator-finished.hbs", context)
const label = "Terminer" const label = "Terminer"
const choiceResult = await foundry.applications.api.DialogV2.wait({ const choiceResult = await foundry.applications.api.DialogV2.wait({

View File

@ -5,7 +5,7 @@ export class TeDeumCombat extends Combat {
/* -------------------------------------------- */ /* -------------------------------------------- */
async rollInitiative(ids, formula = undefined, messageOptions = {} ) { async rollInitiative(ids, formula = undefined, messageOptions = {} ) {
console.log("Roll INIT !") //console.log("Roll INIT !")
ids = typeof ids === "string" ? [ids] : ids; ids = typeof ids === "string" ? [ids] : ids;
for (let cId of ids) { for (let cId of ids) {
const c = this.combatants.get(cId); const c = this.combatants.get(cId);

View File

@ -117,6 +117,11 @@ export const TEDEUM_CONFIG = {
melee: { label: "Mêlée", value: "melee" }, melee: { label: "Mêlée", value: "melee" },
tir: { label: "Tir", value: "tir" } tir: { label: "Tir", value: "tir" }
}, },
genreEducation: {
"homme": { label: "Homme", value: "Homme" },
"femme": { label: "Femme", value: "Femme" },
"mixte": { label: "Mixte", value: "Mixte" }
},
armeAllonges: { armeAllonges: {
courte: { label: "Courte", value: "courte" }, courte: { label: "Courte", value: "courte" },
moyenne: { label: "Moyenne", value: "moyenne" }, moyenne: { label: "Moyenne", value: "moyenne" },
@ -153,10 +158,10 @@ export const TEDEUM_CONFIG = {
livre: { label: "Livres", id: "livre", value: 100 } livre: { label: "Livres", id: "livre", value: 100 }
}, },
etapesEducation: { etapesEducation: {
pouponniere: { label: "La Pouponnière", value: "pouponniere", agemin: 0, agemax: 6, nbCompetences: 2, nbCaracteristiques: 3, hasQuestionnaire: true, hasDebouches: false, hasMultiplier: false, canCompetencesOpt: false }, pouponniere: { label: "La Pouponnière", value: "pouponniere", agemin: 0, agemax: 6, nbCompetences: 2, nbCaracteristiques: 3, hasGenre: false, hasQuestionnaire: true, hasDebouches: false, hasMultiplier: false, canCompetencesOpt: false },
petitsgrimauds: { label: "La classe des Petits Grimauds", value: "petitsgrimauds", agemin: 7, agemax: 12, nbCompetences: 10, nbCaracteristiques: 3, hasDebouches: false, hasQuestionnaire: true, hasMultiplier: false, canCompetencesOpt: false }, petitsgrimauds: { label: "La classe des Petits Grimauds", value: "petitsgrimauds", agemin: 7, agemax: 12, nbCompetences: 10, hasGenre: true, nbCaracteristiques: 3, hasDebouches: false, hasQuestionnaire: true, hasMultiplier: false, canCompetencesOpt: false },
rosevie: { label: "Les Roses de la Vie", value: "rosevie", agemin: 13, agemax: 16, nbCompetences: 2, nbCaracteristiques: 3, hasQuestionnaire: true, hasDebouches: true, hasMultiplier: false, canCompetencesOpt: false }, rosevie: { label: "Les Roses de la Vie", value: "rosevie", agemin: 13, agemax: 16, nbCompetences: 2, nbCaracteristiques: 3, hasGenre: true, hasQuestionnaire: true, hasDebouches: true, hasMultiplier: false, canCompetencesOpt: false },
ageviril: { label: "L'Age Viril", value: "ageviril", agemin: 17, agemax: 17, nbCompetences: 9, nbCaracteristiques: 2, hasQuestionnaire: false, hasDebouches: false, hasMultiplier: true, canCompetencesOpt: true }, ageviril: { label: "L'Age Viril", value: "ageviril", agemin: 17, agemax: 17, nbCompetences: 9, nbCaracteristiques: 2, hasGenre: false, hasQuestionnaire: false, hasDebouches: false, hasMultiplier: true, canCompetencesOpt: true },
}, },
origineSociale: { origineSociale: {
noblesseepee: { label: "Noblesse d'épée", id: "noblesseepee", caracteristiques: { entregent: 1, puissance: 1 }, cagnotte: 10, cagnotteUnit: "livres", value: 1 }, noblesseepee: { label: "Noblesse d'épée", id: "noblesseepee", caracteristiques: { entregent: 1, puissance: 1 }, cagnotte: 10, cagnotteUnit: "livres", value: 1 },

View File

@ -160,6 +160,7 @@ export class TeDeumUtility {
formData.hasMultiplier = etape.hasMultiplier; formData.hasMultiplier = etape.hasMultiplier;
formData.hasDebouches = etape.hasDebouches; formData.hasDebouches = etape.hasDebouches;
formData.canCompetencesOpt = etape.canCompetencesOpt; formData.canCompetencesOpt = etape.canCompetencesOpt;
formData.hasGenre = etape.hasGenre;
} }
/*-------------------------------------------- */ /*-------------------------------------------- */
@ -200,11 +201,13 @@ export class TeDeumUtility {
ui.notifications.info("Opposition démarrée avec " + rollData.alias); ui.notifications.info("Opposition démarrée avec " + rollData.alias);
} else { } else {
// Perform the opposition // Perform the opposition
let isAttackWinner = true
let rWinner = this.currentOpposition let rWinner = this.currentOpposition
let rLooser = rollData let rLooser = rollData
if (rWinner.total < rLooser.total) { if (rWinner.total < rLooser.total) {
rWinner = rollData rWinner = rollData
rLooser = this.currentOpposition rLooser = this.currentOpposition
isAttackWinner = false
} }
this.currentOpposition = undefined // Reset opposition this.currentOpposition = undefined // Reset opposition
let oppositionData = { let oppositionData = {
@ -215,14 +218,32 @@ export class TeDeumUtility {
content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-opposition-result.hbs`, oppositionData) content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-opposition-result.hbs`, oppositionData)
}) })
await msg.setFlag("world", "te-deum-rolldata", rollData) await msg.setFlag("world", "te-deum-rolldata", rollData)
// Si le gagnant est l'attaquant, appliquer les dégats sur la victime
if ( isAttackWinner && rWinner.isSuccess && rWinner.mode == "arme" && rWinner.arme?.system.typeArme == "melee" && rWinner.defenderTokenId) {
this.appliquerDegats(rWinner)
}
console.log("Rolldata result", rollData) console.log("Rolldata result", rollData)
} }
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
static async appliquerDegats(rollData) {
await this.processAttaqueMelee(rollData)
let defenderToken = canvas.tokens.placeables.find(t => t.id == rollData.defenderTokenId)
if (defenderToken) {
let actor = defenderToken.actor
await actor.appliquerDegats(rollData)
} else {
ui.notifications.error("Impossible de trouver la cible de l'attaque, aucun degats appliqué")
}
}
/* -------------------------------------------- */ /* -------------------------------------------- */ /* -------------------------------------------- */ /* -------------------------------------------- */
static async chatListeners(html) { static async chatListeners(html) {
html.on("click", '.chat-command-button', event => { html.on("click", '.chat-command-opposition', event => {
let messageId = TeDeumUtility.findChatMessageId(event.currentTarget) let messageId = TeDeumUtility.findChatMessageId(event.currentTarget)
let message = game.messages.get(messageId) let message = game.messages.get(messageId)
let rollData = message.getFlag("world", "te-deum-rolldata") let rollData = message.getFlag("world", "te-deum-rolldata")
@ -230,6 +251,14 @@ export class TeDeumUtility {
TeDeumUtility.manageOpposition(rollData, messageId) TeDeumUtility.manageOpposition(rollData, messageId)
} }
}) })
html.on("click", '.chat-command-appliquer-degats', event => {
let messageId = TeDeumUtility.findChatMessageId(event.currentTarget)
let message = game.messages.get(messageId)
let rollData = message.getFlag("world", "te-deum-rolldata")
if (rollData) {
TeDeumUtility.appliquerDegats(rollData, messageId)
}
})
} }
/* -------------------------------------------- */ /* -------------------------------------------- */
@ -408,10 +437,11 @@ export class TeDeumUtility {
} }
} }
if (rollData.diceSum == 1) { if (rollData.diceSum == 1) {
let critiqueRoll = await new Roll(rollData.carac.negativeDice).roll() let critiqueRoll = await new Roll(rollData.carac.negativeDice)
await critiqueRoll.evaluate()
await this.showDiceSoNice(critiqueRoll, game.settings.get("core", "rollMode")) await this.showDiceSoNice(critiqueRoll, game.settings.get("core", "rollMode"))
rollData.critiqueRoll = foundry.utils.duplicate(critiqueRoll) rollData.critiqueRoll = foundry.utils.duplicate(critiqueRoll)
if (critiqueRoll.total > rollData.competence.score) { if (critiqueRoll.total > rollData.competence.system.score) {
rollData.isEchecCritique = true rollData.isEchecCritique = true
} }
} }
@ -465,10 +495,6 @@ export class TeDeumUtility {
/* -------------------------------------------- */ /* -------------------------------------------- */
static async processAttaqueMelee(rollData) { static async processAttaqueMelee(rollData) {
if (rollData.arme?.system.typeArme != "melee") {
return
}
if (rollData.isSuccess) {
await this.getLocalisation(rollData) await this.getLocalisation(rollData)
let actor = game.actors.get(rollData.actorId) let actor = game.actors.get(rollData.actorId)
let bDegats = actor.getBonusDegats() let bDegats = actor.getBonusDegats()
@ -477,7 +503,6 @@ export class TeDeumUtility {
rollData.degatsRoll = foundry.utils.duplicate(degatsRoll) rollData.degatsRoll = foundry.utils.duplicate(degatsRoll)
rollData.degats = degatsRoll.total rollData.degats = degatsRoll.total
} }
}
/* -------------------------------------------- */ /* -------------------------------------------- */
static async processAttaqueDistance(rollData) { static async processAttaqueDistance(rollData) {
@ -489,7 +514,7 @@ export class TeDeumUtility {
await this.getLocalisation(rollData) await this.getLocalisation(rollData)
// Now the degats // Now the degats
let degatsRoll = await new Roll(rollData.arme.system.degats).roll() let degatsRoll = await new Roll(rollData.arme.system.degats).roll()
await this.showDiceSoNice(locRoll, game.settings.get("core", "rollMode")) await this.showDiceSoNice(rollData.locRoll, game.settings.get("core", "rollMode"))
rollData.degatsRoll = foundry.utils.duplicate(degatsRoll) rollData.degatsRoll = foundry.utils.duplicate(degatsRoll)
rollData.degats = degatsRoll.total rollData.degats = degatsRoll.total
} }
@ -519,7 +544,6 @@ export class TeDeumUtility {
await this.computeResults(rollData) await this.computeResults(rollData)
await this.processAttaqueDistance(rollData) await this.processAttaqueDistance(rollData)
await this.processAttaqueMelee(rollData)
let msg = await this.createChatWithRollMode(rollData.alias, { let msg = await this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-generic-result.hbs`, rollData) content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-generic-result.hbs`, rollData)
@ -535,15 +559,6 @@ export class TeDeumUtility {
if (rollData.isReussiteCritique || rollData.isEchecCritique) { if (rollData.isReussiteCritique || rollData.isEchecCritique) {
actor.modifyXP(rollData.carac.key, 1) actor.modifyXP(rollData.carac.key, 1)
} }
// gestion degats automatique
if (rollData.arme && rollData.defenderTokenId) {
let defenderToken = canvas.tokens.placeables.find(t => t.id == rollData.defenderTokenId)
if (defenderToken) {
let actor = defenderToken.actor
await actor.appliquerDegats(rollData)
}
}
} }
/* -------------------------------------------- */ /* -------------------------------------------- */

View File

@ -15,6 +15,8 @@ export class TeDeumEducationSchema extends foundry.abstract.TypeDataModel {
}, {}) }, {})
); );
schema.genre = new fields.StringField({required: true, initial: "Homme", choices: ["masculin", "mixte", "Homme", "Femme", "Mixte"]});
schema.nbChoixCarac = new fields.NumberField({ ...requiredInteger, initial: 1, min: 1 }); schema.nbChoixCarac = new fields.NumberField({ ...requiredInteger, initial: 1, min: 1 });
schema.caracteristiques = new fields.SchemaField(Array.fromRange(3, 1).reduce((caracs, i) => { schema.caracteristiques = new fields.SchemaField(Array.fromRange(3, 1).reduce((caracs, i) => {
caracs[`carac${i}`] = new fields.SchemaField({ caracs[`carac${i}`] = new fields.SchemaField({

View File

@ -41,6 +41,7 @@ export class TeDeumPJSchema extends foundry.abstract.TypeDataModel {
schema.description = new fields.HTMLField({required: true, blank: true}); schema.description = new fields.HTMLField({required: true, blank: true});
schema.connaissances = new fields.HTMLField({required: true, blank: true}); schema.connaissances = new fields.HTMLField({required: true, blank: true});
schema.histoire = new fields.HTMLField({required: true, blank: true});
schema.vetements = new fields.HTMLField({required: true, blank: true}); schema.vetements = new fields.HTMLField({required: true, blank: true});
schema.equipmentfree = new fields.HTMLField({required: true, blank: true}); schema.equipmentfree = new fields.HTMLField({required: true, blank: true});

View File

@ -1 +1 @@
MANIFEST-000014 MANIFEST-000081

View File

@ -1,15 +1,7 @@
2025/02/21-17:37:17.636121 7f5931ffb6c0 Recovering log #12 2025/03/18-20:02:55.715587 7fbe66ffd6c0 Recovering log #79
2025/02/21-17:37:17.694242 7f5931ffb6c0 Delete type=3 #10 2025/03/18-20:02:55.727775 7fbe66ffd6c0 Delete type=3 #77
2025/02/21-17:37:17.694432 7f5931ffb6c0 Delete type=0 #12 2025/03/18-20:02:55.727902 7fbe66ffd6c0 Delete type=0 #79
2025/02/21-17:40:09.864856 7f5693fff6c0 Level-0 table #17: started 2025/03/18-20:34:57.401764 7fbe663ff6c0 Level-0 table #84: started
2025/02/21-17:40:09.868441 7f5693fff6c0 Level-0 table #17: 6588 bytes OK 2025/03/18-20:34:57.401796 7fbe663ff6c0 Level-0 table #84: 0 bytes OK
2025/02/21-17:40:09.875550 7f5693fff6c0 Delete type=0 #15 2025/03/18-20:34:57.408016 7fbe663ff6c0 Delete type=0 #82
2025/02/21-17:40:09.886661 7f5693fff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.415964 7fbe663ff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/02/21-17:40:09.893774 7f5693fff6c0 Manual compaction at level-1 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 15 : 1
2025/02/21-17:40:09.893799 7f5693fff6c0 Compacting 1@1 + 1@2 files
2025/02/21-17:40:09.898306 7f5693fff6c0 Generated table #18@1: 5 keys, 3660 bytes
2025/02/21-17:40:09.898361 7f5693fff6c0 Compacted 1@1 + 1@2 files => 3660 bytes
2025/02/21-17:40:09.904952 7f5693fff6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2025/02/21-17:40:09.905193 7f5693fff6c0 Delete type=2 #5
2025/02/21-17:40:09.905447 7f5693fff6c0 Delete type=2 #17
2025/02/21-17:40:09.923689 7f5693fff6c0 Manual compaction at level-1 from '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 15 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,7 @@
2025/02/21-17:31:59.431540 7f5930ff96c0 Recovering log #8 2025/03/11-18:04:31.143055 7f24c6ffd6c0 Recovering log #75
2025/02/21-17:31:59.442045 7f5930ff96c0 Delete type=3 #6 2025/03/11-18:04:31.153035 7f24c6ffd6c0 Delete type=3 #73
2025/02/21-17:31:59.442169 7f5930ff96c0 Delete type=0 #8 2025/03/11-18:04:31.153146 7f24c6ffd6c0 Delete type=0 #75
2025/02/21-17:36:32.701871 7f5693fff6c0 Level-0 table #13: started 2025/03/11-18:27:51.833675 7f24c4bff6c0 Level-0 table #80: started
2025/02/21-17:36:32.701921 7f5693fff6c0 Level-0 table #13: 0 bytes OK 2025/03/11-18:27:51.833743 7f24c4bff6c0 Level-0 table #80: 0 bytes OK
2025/02/21-17:36:32.708271 7f5693fff6c0 Delete type=0 #11 2025/03/11-18:27:51.840981 7f24c4bff6c0 Delete type=0 #78
2025/02/21-17:36:32.718706 7f5693fff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.853984 7f24c4bff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/02/21-17:36:32.732878 7f5693fff6c0 Manual compaction at level-1 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/aides/MANIFEST-000081 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000117 MANIFEST-000183

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.195165 7f5930ff96c0 Recovering log #115 2025/03/18-20:02:55.593062 7fbe67fff6c0 Recovering log #181
2025/02/21-17:37:17.251788 7f5930ff96c0 Delete type=3 #113 2025/03/18-20:02:55.605860 7fbe67fff6c0 Delete type=3 #179
2025/02/21-17:37:17.251907 7f5930ff96c0 Delete type=0 #115 2025/03/18-20:02:55.605967 7fbe67fff6c0 Delete type=0 #181
2025/02/21-17:40:09.792578 7f5693fff6c0 Level-0 table #120: started 2025/03/18-20:34:57.329715 7fbe663ff6c0 Level-0 table #186: started
2025/02/21-17:40:09.792658 7f5693fff6c0 Level-0 table #120: 0 bytes OK 2025/03/18-20:34:57.329814 7fbe663ff6c0 Level-0 table #186: 0 bytes OK
2025/02/21-17:40:09.799539 7f5693fff6c0 Delete type=0 #118 2025/03/18-20:34:57.336235 7fbe663ff6c0 Delete type=0 #184
2025/02/21-17:40:09.813519 7f5693fff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.356288 7fbe663ff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2025/02/21-17:31:59.314972 7f59327fc6c0 Recovering log #111 2025/03/11-18:04:31.045395 7f24c5ffb6c0 Recovering log #177
2025/02/21-17:31:59.325624 7f59327fc6c0 Delete type=3 #109 2025/03/11-18:04:31.056356 7f24c5ffb6c0 Delete type=3 #175
2025/02/21-17:31:59.325779 7f59327fc6c0 Delete type=0 #111 2025/03/11-18:04:31.056467 7f24c5ffb6c0 Delete type=0 #177
2025/02/21-17:36:32.629703 7f5693fff6c0 Level-0 table #116: started 2025/03/11-18:27:51.772304 7f24c4bff6c0 Level-0 table #182: started
2025/02/21-17:36:32.629742 7f5693fff6c0 Level-0 table #116: 0 bytes OK 2025/03/11-18:27:51.772338 7f24c4bff6c0 Level-0 table #182: 0 bytes OK
2025/02/21-17:36:32.638568 7f5693fff6c0 Delete type=0 #114 2025/03/11-18:27:51.778305 7f24c4bff6c0 Delete type=0 #180
2025/02/21-17:36:32.653420 7f5693fff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.798039 7f24c4bff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/armes/MANIFEST-000183 Normal file

Binary file not shown.

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

0
packs/armures/000185.log Normal file
View File

View File

@ -1 +1 @@
MANIFEST-000117 MANIFEST-000183

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.256489 7f5931ffb6c0 Recovering log #115 2025/03/18-20:02:55.610587 7fbe66ffd6c0 Recovering log #181
2025/02/21-17:37:17.318730 7f5931ffb6c0 Delete type=3 #113 2025/03/18-20:02:55.621230 7fbe66ffd6c0 Delete type=3 #179
2025/02/21-17:37:17.318861 7f5931ffb6c0 Delete type=0 #115 2025/03/18-20:02:55.621425 7fbe66ffd6c0 Delete type=0 #181
2025/02/21-17:40:09.806879 7f5693fff6c0 Level-0 table #120: started 2025/03/18-20:34:57.336450 7fbe663ff6c0 Level-0 table #186: started
2025/02/21-17:40:09.806939 7f5693fff6c0 Level-0 table #120: 0 bytes OK 2025/03/18-20:34:57.336506 7fbe663ff6c0 Level-0 table #186: 0 bytes OK
2025/02/21-17:40:09.813255 7f5693fff6c0 Delete type=0 #118 2025/03/18-20:34:57.343480 7fbe663ff6c0 Delete type=0 #184
2025/02/21-17:40:09.813572 7f5693fff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.356316 7fbe663ff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2025/02/21-17:31:59.330152 7f5930ff96c0 Recovering log #111 2025/03/11-18:04:31.059498 7f24c6ffd6c0 Recovering log #177
2025/02/21-17:31:59.341768 7f5930ff96c0 Delete type=3 #109 2025/03/11-18:04:31.068855 7f24c6ffd6c0 Delete type=3 #175
2025/02/21-17:31:59.341926 7f5930ff96c0 Delete type=0 #111 2025/03/11-18:04:31.068919 7f24c6ffd6c0 Delete type=0 #177
2025/02/21-17:36:32.638873 7f5693fff6c0 Level-0 table #116: started 2025/03/11-18:27:51.778439 7f24c4bff6c0 Level-0 table #182: started
2025/02/21-17:36:32.638950 7f5693fff6c0 Level-0 table #116: 0 bytes OK 2025/03/11-18:27:51.778466 7f24c4bff6c0 Level-0 table #182: 0 bytes OK
2025/02/21-17:36:32.645471 7f5693fff6c0 Delete type=0 #114 2025/03/11-18:27:51.784375 7f24c4bff6c0 Delete type=0 #180
2025/02/21-17:36:32.653459 7f5693fff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.798058 7f24c4bff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

View File

View File

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

View File

@ -1 +1 @@
MANIFEST-000114 MANIFEST-000180

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.133219 7f59327fc6c0 Recovering log #112 2025/03/18-20:02:55.575835 7fbe677fe6c0 Recovering log #178
2025/02/21-17:37:17.190379 7f59327fc6c0 Delete type=3 #110 2025/03/18-20:02:55.586561 7fbe677fe6c0 Delete type=3 #176
2025/02/21-17:37:17.190537 7f59327fc6c0 Delete type=0 #112 2025/03/18-20:02:55.586685 7fbe677fe6c0 Delete type=0 #178
2025/02/21-17:40:09.785663 7f5693fff6c0 Level-0 table #117: started 2025/03/18-20:34:57.343590 7fbe663ff6c0 Level-0 table #183: started
2025/02/21-17:40:09.785737 7f5693fff6c0 Level-0 table #117: 0 bytes OK 2025/03/18-20:34:57.343614 7fbe663ff6c0 Level-0 table #183: 0 bytes OK
2025/02/21-17:40:09.792355 7f5693fff6c0 Delete type=0 #115 2025/03/18-20:34:57.349686 7fbe663ff6c0 Delete type=0 #181
2025/02/21-17:40:09.813482 7f5693fff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.356337 7fbe663ff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2025/02/21-17:31:59.298905 7f59317fa6c0 Recovering log #108 2025/03/11-18:04:31.031690 7f24c57fa6c0 Recovering log #174
2025/02/21-17:31:59.309924 7f59317fa6c0 Delete type=3 #106 2025/03/11-18:04:31.041244 7f24c57fa6c0 Delete type=3 #172
2025/02/21-17:31:59.310033 7f59317fa6c0 Delete type=0 #108 2025/03/11-18:04:31.041294 7f24c57fa6c0 Delete type=0 #174
2025/02/21-17:36:32.618180 7f5693fff6c0 Level-0 table #113: started 2025/03/11-18:27:51.791921 7f24c4bff6c0 Level-0 table #179: started
2025/02/21-17:36:32.618265 7f5693fff6c0 Level-0 table #113: 0 bytes OK 2025/03/11-18:27:51.791971 7f24c4bff6c0 Level-0 table #179: 0 bytes OK
2025/02/21-17:36:32.629549 7f5693fff6c0 Delete type=0 #111 2025/03/11-18:27:51.797892 7f24c4bff6c0 Delete type=0 #177
2025/02/21-17:36:32.653376 7f5693fff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.798085 7f24c4bff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

View File

View File

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

View File

@ -1 +1 @@
MANIFEST-000122 MANIFEST-000191

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.322674 7f59317fa6c0 Recovering log #120 2025/03/18-20:02:55.625718 7fbe6c9fa6c0 Recovering log #189
2025/02/21-17:37:17.380428 7f59317fa6c0 Delete type=3 #118 2025/03/18-20:02:55.637706 7fbe6c9fa6c0 Delete type=3 #187
2025/02/21-17:37:17.380608 7f59317fa6c0 Delete type=0 #120 2025/03/18-20:02:55.637826 7fbe6c9fa6c0 Delete type=0 #189
2025/02/21-17:40:09.799751 7f5693fff6c0 Level-0 table #125: started 2025/03/18-20:34:57.349890 7fbe663ff6c0 Level-0 table #194: started
2025/02/21-17:40:09.799807 7f5693fff6c0 Level-0 table #125: 0 bytes OK 2025/03/18-20:34:57.349944 7fbe663ff6c0 Level-0 table #194: 0 bytes OK
2025/02/21-17:40:09.806651 7f5693fff6c0 Delete type=0 #123 2025/03/18-20:34:57.356029 7fbe663ff6c0 Delete type=0 #192
2025/02/21-17:40:09.813547 7f5693fff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.356358 7fbe663ff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2025/02/21-17:31:59.347176 7f5931ffb6c0 Recovering log #116 2025/03/11-18:04:31.072608 7f24c67fc6c0 Recovering log #184
2025/02/21-17:31:59.357805 7f5931ffb6c0 Delete type=3 #114 2025/03/11-18:04:31.084241 7f24c67fc6c0 Delete type=3 #182
2025/02/21-17:31:59.358054 7f5931ffb6c0 Delete type=0 #116 2025/03/11-18:04:31.084398 7f24c67fc6c0 Delete type=0 #184
2025/02/21-17:36:32.660378 7f5693fff6c0 Level-0 table #121: started 2025/03/11-18:27:51.784510 7f24c4bff6c0 Level-0 table #190: started
2025/02/21-17:36:32.660437 7f5693fff6c0 Level-0 table #121: 0 bytes OK 2025/03/11-18:27:51.784541 7f24c4bff6c0 Level-0 table #190: 0 bytes OK
2025/02/21-17:36:32.666840 7f5693fff6c0 Delete type=0 #119 2025/03/11-18:27:51.791721 7f24c4bff6c0 Delete type=0 #188
2025/02/21-17:36:32.681433 7f5693fff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.798072 7f24c4bff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

View File

View File

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

0
packs/graces/000184.log Normal file
View File

View File

@ -1 +1 @@
MANIFEST-000116 MANIFEST-000182

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.386428 7f59327fc6c0 Recovering log #114 2025/03/18-20:02:55.645262 7fbe677fe6c0 Recovering log #180
2025/02/21-17:37:17.439969 7f59327fc6c0 Delete type=3 #112 2025/03/18-20:02:55.657308 7fbe677fe6c0 Delete type=3 #178
2025/02/21-17:37:17.440130 7f59327fc6c0 Delete type=0 #114 2025/03/18-20:02:55.657414 7fbe677fe6c0 Delete type=0 #180
2025/02/21-17:40:09.813728 7f5693fff6c0 Level-0 table #119: started 2025/03/18-20:34:57.370748 7fbe663ff6c0 Level-0 table #185: started
2025/02/21-17:40:09.813806 7f5693fff6c0 Level-0 table #119: 0 bytes OK 2025/03/18-20:34:57.370813 7fbe663ff6c0 Level-0 table #185: 0 bytes OK
2025/02/21-17:40:09.820069 7f5693fff6c0 Delete type=0 #117 2025/03/18-20:34:57.377323 7fbe663ff6c0 Delete type=0 #183
2025/02/21-17:40:09.840912 7f5693fff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.384883 7fbe663ff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,7 @@
2025/02/21-17:31:59.365093 7f59317fa6c0 Recovering log #110 2025/03/11-18:04:31.089058 7f24c57fa6c0 Recovering log #176
2025/02/21-17:31:59.377140 7f59317fa6c0 Delete type=3 #108 2025/03/11-18:04:31.099719 7f24c57fa6c0 Delete type=3 #174
2025/02/21-17:31:59.377276 7f59317fa6c0 Delete type=0 #110 2025/03/11-18:04:31.099830 7f24c57fa6c0 Delete type=0 #176
2025/02/21-17:36:32.645760 7f5693fff6c0 Level-0 table #115: started 2025/03/11-18:27:51.804396 7f24c4bff6c0 Level-0 table #181: started
2025/02/21-17:36:32.645838 7f5693fff6c0 Level-0 table #115: 0 bytes OK 2025/03/11-18:27:51.804421 7f24c4bff6c0 Level-0 table #181: 0 bytes OK
2025/02/21-17:36:32.653163 7f5693fff6c0 Delete type=0 #113 2025/03/11-18:27:51.810625 7f24c4bff6c0 Delete type=0 #179
2025/02/21-17:36:32.653494 7f5693fff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end) 2025/03/11-18:27:51.823828 7f24c4bff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)

Binary file not shown.

Binary file not shown.

View File

View File

View File

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

View File

@ -1 +1 @@
MANIFEST-000116 MANIFEST-000182

View File

@ -1,7 +1,7 @@
2025/02/21-17:37:17.445029 7f5930ff96c0 Recovering log #114 2025/03/18-20:02:55.662488 7fbe67fff6c0 Recovering log #180
2025/02/21-17:37:17.501603 7f5930ff96c0 Delete type=3 #112 2025/03/18-20:02:55.673613 7fbe67fff6c0 Delete type=3 #178
2025/02/21-17:37:17.501757 7f5930ff96c0 Delete type=0 #114 2025/03/18-20:02:55.673721 7fbe67fff6c0 Delete type=0 #180
2025/02/21-17:40:09.820238 7f5693fff6c0 Level-0 table #119: started 2025/03/18-20:34:57.356547 7fbe663ff6c0 Level-0 table #185: started
2025/02/21-17:40:09.820287 7f5693fff6c0 Level-0 table #119: 0 bytes OK 2025/03/18-20:34:57.356623 7fbe663ff6c0 Level-0 table #185: 0 bytes OK
2025/02/21-17:40:09.826744 7f5693fff6c0 Delete type=0 #117 2025/03/18-20:34:57.363717 7fbe663ff6c0 Delete type=0 #183
2025/02/21-17:40:09.840932 7f5693fff6c0 Manual compaction at level-0 from '!items!1icaxIywAwDXQcMz' @ 72057594037927935 : 1 .. '!items!ysGehYm1VkMWrI22' @ 0 : 0; will stop at (end) 2025/03/18-20:34:57.384818 7fbe663ff6c0 Manual compaction at level-0 from '!items!1icaxIywAwDXQcMz' @ 72057594037927935 : 1 .. '!items!ysGehYm1VkMWrI22' @ 0 : 0; will stop at (end)

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