16 Commits
12.0.19 ... v12

Author SHA1 Message Date
88ca98945f Fix #3 2025-04-20 09:25:48 +02:00
edfb2105d3 Various enhancements + fixes
All checks were successful
Release Creation / build (release) Successful in 56s
2025-04-12 00:18:45 +02:00
84cc59c57d Fix and enhancements
All checks were successful
Release Creation / build (release) Successful in 2m23s
2025-04-05 23:15:46 +02:00
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
150 changed files with 503 additions and 234 deletions

View File

@ -27,7 +27,7 @@ jobs:
env:
version: ${{steps.get_version.outputs.version-without-v}}
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
# 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.

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

@ -42,6 +42,7 @@ export class TeDeumActorPJSheet extends ActorSheet {
providence: this.actor.prepareProvidence(),
arbreCompetences: this.actor.prepareArbreCompetences(),
equipements: this.actor.getEquipements(),
simples: this.actor.getSimples(),
armures: this.actor.getArmures(),
graces: this.actor.getGraces(),
blessures: this.actor.getBlessures(),
@ -56,6 +57,7 @@ export class TeDeumActorPJSheet extends ActorSheet {
santeModifier: this.actor.getSanteModifier(),
educations: this.actor.getEducations(),
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 }),
histoire: await TextEditor.enrichHTML(this.object.system.histoire, { async: true }),
options: this.options,
@ -96,7 +98,12 @@ export class TeDeumActorPJSheet extends ActorSheet {
})
html.find('.item-add').click(ev => {
let dataType = $(ev.currentTarget).data("type")
this.actor.createEmbeddedDocuments('Item', [{ name: "NewItem", type: dataType }], { renderSheet: true })
this.actor.createEmbeddedDocuments('Item', [{ name: "Nouveau " + dataType, type: dataType }], { renderSheet: true })
})
html.find('.competence-add').click(ev => {
let dataType = $(ev.currentTarget).data("type")
let caracKey = $(ev.currentTarget).data("carac-key")
this.actor.createEmbeddedDocuments('Item', [{ name: "Nouvelle " + dataType, type: dataType, system: {caracteristique: caracKey} }], { renderSheet: true })
})
html.find('.subactor-edit').click(ev => {

View File

@ -34,7 +34,7 @@ export class TeDeumActor extends Actor {
return actor;
}
if (data.type == 'pj') {
if (data.type == 'pj' || data.type == 'pnj') {
const skills = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences")
data.items = data.items || []
for (let skill of skills) {
@ -65,6 +65,14 @@ export class TeDeumActor extends Actor {
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) {
let updates = []
@ -119,6 +127,8 @@ export class TeDeumActor extends Actor {
if (updates.length > 0) {
this.updateEmbeddedDocuments('Item', updates)
}
super._onUpdate(changed, options, userId);
}
/* -------------------------------------------- */
@ -190,6 +200,11 @@ export class TeDeumActor extends Actor {
TeDeumUtility.sortArrayObjectsByName(comp)
return comp;
}
getSimples() {
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'simple') || [])
TeDeumUtility.sortArrayObjectsByName(comp)
return comp;
}
getArmures() {
let comp = foundry.utils.duplicate(this.items.filter(item => item.type == 'armure') || [])
TeDeumUtility.sortArrayObjectsByName(comp)
@ -295,7 +310,11 @@ export class TeDeumActor extends Actor {
c.key = key
c.name = game.system.tedeum.config.caracteristiques[key].label
c.generalqualite = game.system.tedeum.config.descriptionValeur[c.value].qualite
if (this.system.genre.toLowerCase() == "homme") {
c.qualite = game.system.tedeum.config.descriptionValeur[c.value][key]
} else {
c.qualite = game.system.tedeum.config.descriptionValeurFemme[c.value][key]
}
c.dice = game.system.tedeum.config.descriptionValeur[c.value].dice
c.negativeDice = game.system.tedeum.config.descriptionValeur[c.value].negativeDice
}
@ -314,7 +333,11 @@ export class TeDeumActor extends Actor {
prepareProvidence() {
let providence = foundry.utils.deepClone(this.system.providence)
providence.name = "Providence"
providence.qualite = game.system.tedeum.config.providence[providence.value].labelM
if (this.system.genre.toLowerCase() == "homme") {
providence.qualite = game.system.tedeum.config.providence[providence.value].labelH
} else {
providence.qualite = game.system.tedeum.config.providence[providence.value].labelF
}
providence.dice = game.system.tedeum.config.providence[providence.value].diceValue
providence.description = "La Providence représente la Volonté Divine à l'œuvre pour guider ou sauver un être humain. Les PJ montent dans léchelle de la Providence en menant à bien leurs missions et en se montrant vertueux. Les points de Providence peuvent servir à augmenter temporairement une caractéris- tique, à modifier la gravité d'une blessure, et à résister au vieillissement. Chaque person- nage commence avec un score initial de 1 en Providence (au niveau Pauvre pécheur)."
return providence
@ -352,11 +375,13 @@ export class TeDeumActor extends Actor {
providence.value = Math.min(Math.max(providence.value + value, 0), 6)
this.update({ "system.providence": providence })
}
/* -------------------------------------------- */
modifyXP(key, value) {
async modifyXP(key, value) {
let xp = this.system.caracteristiques[key].experience
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 +647,8 @@ export class TeDeumActor extends Actor {
// Setup competence + carac
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())
if (competence) {

View File

@ -374,6 +374,7 @@ export class TeDeumCharacterCreator {
title: "Création de personnage - La Pouponnière",
subtitle: "Choix de la Pouponnière",
label: "Valider le choix de la Pouponnière",
hasGenre: false,
choices: pouponniereItems,
caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus
@ -403,11 +404,12 @@ export class TeDeumCharacterCreator {
/*--------------------------------------------*/
async renderPetitsGrimauds(stage) {
// 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 = {
title: "Les Petits Grimauds",
label: "Valider le choix des Petits Grimauds",
hasGenre: true,
choices: grimaudsItems,
caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus
@ -437,12 +439,13 @@ export class TeDeumCharacterCreator {
/*--------------------------------------------*/
async renderRosesDeLaVie(stage) {
// 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 = {
title: "Création de personnage - Les Roses de la Vie",
label: "Valider le choix des Roses de la Vie",
choices: rosesItems,
hasGenre: true,
caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus
@ -488,6 +491,7 @@ export class TeDeumCharacterCreator {
title: "Création de personnage - L'Age Viril",
label: "Valider le choix de l'Age Viril",
choices: ageVirilItems,
hasGenre: false,
caracBonus: this.caracBonus,
competenceBonus: this.competenceBonus
}
@ -581,9 +585,17 @@ export class TeDeumCharacterCreator {
histoire += `<p>${reponse.question}<br>${reponse.reponse} (${reponse.compName})</p>`
}
await actor.update({ "system.histoire": histoire})
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 label = "Terminer"
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 = {} ) {
console.log("Roll INIT !")
//console.log("Roll INIT !")
ids = typeof ids === "string" ? [ids] : ids;
for (let cId of ids) {
const c = this.combatants.get(cId);

View File

@ -57,7 +57,7 @@ export const TEDEUM_CONFIG = {
descriptionValeurOdd: {
1: { valeur: 1, qualite: "Mauvais", dice: "d4", negativeDice: "d20", savoir: "Sot", sensibilite: "Obtus", entregent: "Rustaud", puissance: "Menu", complexion: "Anémique", adresse: "Empesé" },
2: { valeur: 2, qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limité", sensibilite: "Etriqué", entregent: "Frustre", puissance: "Délicat", complexion: "Languide", adresse: "Gauche" },
2: { valeur: 2, qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limité", sensibilite: "Etriqué", entregent: "Fruste", puissance: "Délicat", complexion: "Languide", adresse: "Gauche" },
3: { valeur: 3, qualite: "Correct", dice: "d8", negativeDice: "d10", savoir: "Mêlé", sensibilite: "Ouvert", entregent: "Badin", puissance: "Membru", complexion: "Dispos", adresse: "Ingambe" },
4: { valeur: 4, qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" },
5: { valeur: 5, qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" },
@ -71,12 +71,20 @@ export const TEDEUM_CONFIG = {
},
descriptionValeur: {
1: { valeur: 1, qualite: "Mauvais", dice: "d4", negativeDice: "d20", savoir: "Sot", sensibilite: "Obtus", entregent: "Rustaud", puissance: "Menu", complexion: "Anémique", adresse: "Empesé" },
2: { valeur: 2, qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limité", sensibilite: "Etriqué", entregent: "Frustre", puissance: "Délicat", complexion: "Languide", adresse: "Gauche" },
2: { valeur: 2, qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limité", sensibilite: "Etriqué", entregent: "Fruste", puissance: "Délicat", complexion: "Languide", adresse: "Gauche" },
3: { valeur: 3, qualite: "Correct", dice: "d8", negativeDice: "d10", savoir: "Mêlé", sensibilite: "Ouvert", entregent: "Badin", puissance: "Membru", complexion: "Dispos", adresse: "Ingambe" },
4: { valeur: 4, qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettré", sensibilite: "Fin", entregent: "Disert", puissance: "Vigoureux", complexion: "Gaillard", adresse: "Leste" },
5: { valeur: 5, qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtil", entregent: "Galant", puissance: "Musculeux", complexion: "Sanguin", adresse: "Preste" },
6: { valeur: 6, qualite: "Admirable", dice: "d20", negativeDice: "d4", savoir: "Humaniste", sensibilite: "Spirituel", entregent: "Sémillant", puissance: "Hercule", complexion: "Aguerri", adresse: "Alerte" },
},
descriptionValeurFemme: {
1: { valeur: 1, qualite: "Mauvais", dice: "d4", negativeDice: "d20", savoir: "Sotte", sensibilite: "Obtuse", entregent: "Rustaude", puissance: "Menue", complexion: "Anémique", adresse: "Empesée" },
2: { valeur: 2, qualite: "Médiocre", dice: "d6", negativeDice: "d12", savoir: "Limitée", sensibilite: "Etriquée", entregent: "Fruste", puissance: "Délicate", complexion: "Languide", adresse: "Gauche" },
3: { valeur: 3, qualite: "Correct", dice: "d8", negativeDice: "d10", savoir: "Mêlée", sensibilite: "Ouverte", entregent: "Badine", puissance: "Membrue", complexion: "Dispose", adresse: "Ingambe" },
4: { valeur: 4, qualite: "Bon", dice: "d10", negativeDice: "d8", savoir: "Lettrée", sensibilite: "Fine", entregent: "Diserte", puissance: "Vigoureuse", complexion: "Gaillarde", adresse: "Leste" },
5: { valeur: 5, qualite: "Excellent", dice: "d12", negativeDice: "d6", savoir: "Docte", sensibilite: "Subtile", entregent: "Galante", puissance: "Musculeuse", complexion: "Sanguine", adresse: "Preste" },
6: { valeur: 6, qualite: "Admirable", dice: "d20", negativeDice: "d4", savoir: "Humaniste", sensibilite: "Spirituelle", entregent: "Sémillante", puissance: "Hercule", complexion: "Aguerrie", adresse: "Alerte" },
},
diceValeur: ["d4", "d6", "d8", "d10", "d12", "d20"],
degatsArmure: {
sansarmure: { label: "Sans armure" },
@ -117,6 +125,11 @@ export const TEDEUM_CONFIG = {
melee: { label: "Mêlée", value: "melee" },
tir: { label: "Tir", value: "tir" }
},
genreEducation: {
"homme": { label: "Homme", value: "Homme" },
"femme": { label: "Femme", value: "Femme" },
"mixte": { label: "Mixte", value: "Mixte" }
},
armeAllonges: {
courte: { label: "Courte", value: "courte" },
moyenne: { label: "Moyenne", value: "moyenne" },
@ -152,11 +165,16 @@ export const TEDEUM_CONFIG = {
sol: { label: "Sols", id: "sol", value: 10 },
livre: { label: "Livres", id: "livre", value: 100 }
},
monnaieUnit: {
"1": { label: "Deniers", id: "denier", value: 1 },
"10": { label: "Sols", id: "sol", value: 10 },
"100": { label: "Livres", id: "livre", value: 100 }
},
etapesEducation: {
pouponniere: { label: "La Pouponnière", value: "pouponniere", agemin: 0, agemax: 6, nbCompetences: 2, nbCaracteristiques: 3, 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 },
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 },
ageviril: { label: "L'Age Viril", value: "ageviril", agemin: 17, agemax: 17, nbCompetences: 9, nbCaracteristiques: 2, hasQuestionnaire: false, hasDebouches: false, hasMultiplier: true, canCompetencesOpt: true },
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, 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, 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, hasGenre: false, hasQuestionnaire: false, hasDebouches: false, hasMultiplier: true, canCompetencesOpt: true },
},
origineSociale: {
noblesseepee: { label: "Noblesse d'épée", id: "noblesseepee", caracteristiques: { entregent: 1, puissance: 1 }, cagnotte: 10, cagnotteUnit: "livres", value: 1 },

View File

@ -92,6 +92,13 @@ export class TeDeumUtility {
Handlebars.registerHelper('isGM', function () {
return game.user.isGM
})
Handlebars.registerHelper('monnaie', function (value) {
let monnaie = game.system.tedeum.config.monnaieUnit[String(value)]
if (monnaie) {
return monnaie.label
}
return value
})
// Load compendium data
const competences = await TeDeumUtility.loadCompendium("fvtt-te-deum.competences")
@ -160,6 +167,7 @@ export class TeDeumUtility {
formData.hasMultiplier = etape.hasMultiplier;
formData.hasDebouches = etape.hasDebouches;
formData.canCompetencesOpt = etape.canCompetencesOpt;
formData.hasGenre = etape.hasGenre;
}
/*-------------------------------------------- */
@ -200,11 +208,13 @@ export class TeDeumUtility {
ui.notifications.info("Opposition démarrée avec " + rollData.alias);
} else {
// Perform the opposition
let isAttackWinner = true
let rWinner = this.currentOpposition
let rLooser = rollData
if (rWinner.total < rLooser.total) {
rWinner = rollData
rLooser = this.currentOpposition
isAttackWinner = false
}
this.currentOpposition = undefined // Reset opposition
let oppositionData = {
@ -215,14 +225,32 @@ export class TeDeumUtility {
content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-opposition-result.hbs`, oppositionData)
})
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)
}
}
/* -------------------------------------------- */ /* -------------------------------------------- */
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) {
html.on("click", '.chat-command-button', event => {
html.on("click", '.chat-command-opposition', event => {
let messageId = TeDeumUtility.findChatMessageId(event.currentTarget)
let message = game.messages.get(messageId)
let rollData = message.getFlag("world", "te-deum-rolldata")
@ -230,6 +258,14 @@ export class TeDeumUtility {
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 +444,11 @@ export class TeDeumUtility {
}
}
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"))
rollData.critiqueRoll = foundry.utils.duplicate(critiqueRoll)
if (critiqueRoll.total > rollData.competence.score) {
if (critiqueRoll.total > rollData.competence.system.score) {
rollData.isEchecCritique = true
}
}
@ -465,10 +502,6 @@ export class TeDeumUtility {
/* -------------------------------------------- */
static async processAttaqueMelee(rollData) {
if (rollData.arme?.system.typeArme != "melee") {
return
}
if (rollData.isSuccess) {
await this.getLocalisation(rollData)
let actor = game.actors.get(rollData.actorId)
let bDegats = actor.getBonusDegats()
@ -477,7 +510,6 @@ export class TeDeumUtility {
rollData.degatsRoll = foundry.utils.duplicate(degatsRoll)
rollData.degats = degatsRoll.total
}
}
/* -------------------------------------------- */
static async processAttaqueDistance(rollData) {
@ -489,7 +521,7 @@ export class TeDeumUtility {
await this.getLocalisation(rollData)
// Now the degats
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.degats = degatsRoll.total
}
@ -519,7 +551,6 @@ export class TeDeumUtility {
await this.computeResults(rollData)
await this.processAttaqueDistance(rollData)
await this.processAttaqueMelee(rollData)
let msg = await this.createChatWithRollMode(rollData.alias, {
content: await renderTemplate(`systems/fvtt-te-deum/templates/chat/chat-generic-result.hbs`, rollData)
@ -535,15 +566,6 @@ export class TeDeumUtility {
if (rollData.isReussiteCritique || rollData.isEchecCritique) {
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.caracteristiques = new fields.SchemaField(Array.fromRange(3, 1).reduce((caracs, i) => {
caracs[`carac${i}`] = new fields.SchemaField({

View File

@ -13,4 +13,10 @@ export class TeDeumEquipementSchema extends foundry.abstract.TypeDataModel {
return schema;
}
get monnaieLabel() {
console.log("monnaieLabel", this.monnaie,game.system.tedeum.config.monnaieUnit)
return game.system.tedeum.config.monnaieUnit[String(this.monnaie)]?.label;
}
}

View File

@ -9,7 +9,8 @@ export class TeDeumMaladieSchema extends foundry.abstract.TypeDataModel {
schema.virulence = new fields.StringField({required: true, choices: ["fatigue", "epuisement", "souffrance", "agonie"], initial: "fatigue"});
schema.fievre = new fields.StringField({required: true, choices: ["aucune", "legere", "forte", "grave"], initial: "aucune"});
schema.symptomes = new fields.HTMLField({ required: true, blank: true });
schema.appliquee = new fields.BooleanField({initial: false}),
schema.complications = new fields.HTMLField({ required: true, blank: true });
schema.appliquee = new fields.BooleanField({initial: false});
schema.description = new fields.HTMLField({ required: true, blank: true });

View File

@ -40,18 +40,20 @@ export class TeDeumPJSchema extends foundry.abstract.TypeDataModel {
});
schema.description = new fields.HTMLField({required: true, blank: true});
schema.notes = 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.equipmentfree = new fields.HTMLField({required: true, blank: true});
schema.genre = new fields.StringField({required: true, choices: game.system.tedeum.config.genre, initial: "Femme"});
schema.age = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.statutocial = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.chargestitre = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.charges = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.religion = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.lieunaissance = new fields.StringField({ required: false, blank: true, initial: undefined });
schema.age = new fields.StringField({ required: false, blank: true, initial: "" });
schema.datenaissance = new fields.StringField({ required: false, blank: true, initial: "" });
schema.statutocial = new fields.StringField({ required: false, blank: true, initial: "" });
schema.chargestitre = new fields.StringField({ required: false, blank: true, initial: "" });
schema.charges = new fields.StringField({ required: false, blank: true, initial: "" });
schema.religion = new fields.StringField({ required: false, blank: true, initial: "" });
schema.lieunaissance = new fields.StringField({ required: false, blank: true, initial: "" });
return schema;
}

View File

@ -1 +1 @@
MANIFEST-000023
MANIFEST-000095

View File

@ -1,8 +1,7 @@
2025/02/22-22:33:49.671443 7f59317fa6c0 Recovering log #21
2025/02/22-22:33:49.682157 7f59317fa6c0 Delete type=3 #19
2025/02/22-22:33:49.682211 7f59317fa6c0 Delete type=0 #21
2025/02/22-22:43:19.821691 7f5693fff6c0 Level-0 table #26: started
2025/02/22-22:43:19.821739 7f5693fff6c0 Level-0 table #26: 0 bytes OK
2025/02/22-22:43:19.827819 7f5693fff6c0 Delete type=0 #24
2025/02/22-22:43:19.828050 7f5693fff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/02/22-22:43:19.841442 7f5693fff6c0 Manual compaction at level-1 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/04/20-09:24:48.041836 7fa413fff6c0 Recovering log #93
2025/04/20-09:24:48.069770 7fa413fff6c0 Delete type=3 #91
2025/04/20-09:24:48.069934 7fa413fff6c0 Delete type=0 #93
2025/04/20-09:25:06.962777 7fa4127fc6c0 Level-0 table #98: started
2025/04/20-09:25:06.962842 7fa4127fc6c0 Level-0 table #98: 0 bytes OK
2025/04/20-09:25:06.970328 7fa4127fc6c0 Delete type=0 #96
2025/04/20-09:25:06.988174 7fa4127fc6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)

View File

@ -1,8 +1,7 @@
2025/02/21-17:44:00.297169 7f5931ffb6c0 Recovering log #16
2025/02/21-17:44:00.350341 7f5931ffb6c0 Delete type=3 #14
2025/02/21-17:44:00.350497 7f5931ffb6c0 Delete type=0 #16
2025/02/21-17:47:55.710312 7f5693fff6c0 Level-0 table #22: started
2025/02/21-17:47:55.710349 7f5693fff6c0 Level-0 table #22: 0 bytes OK
2025/02/21-17:47:55.716766 7f5693fff6c0 Delete type=0 #20
2025/02/21-17:47:55.743124 7f5693fff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/02/21-17:47:55.743202 7f5693fff6c0 Manual compaction at level-1 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.405694 7f6df09f96c0 Recovering log #89
2025/04/11-23:06:48.416695 7f6df09f96c0 Delete type=3 #87
2025/04/11-23:06:48.416810 7f6df09f96c0 Delete type=0 #89
2025/04/12-00:18:27.794309 7f6deabff6c0 Level-0 table #94: started
2025/04/12-00:18:27.794331 7f6deabff6c0 Level-0 table #94: 0 bytes OK
2025/04/12-00:18:27.828514 7f6deabff6c0 Delete type=0 #92
2025/04/12-00:18:27.828757 7f6deabff6c0 Manual compaction at level-0 from '!journal!uNwJgi4kXBCiZmAH' @ 72057594037927935 : 1 .. '!journal.pages!uNwJgi4kXBCiZmAH.onhNU0mXhOpdNZJF' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/aides/MANIFEST-000095 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
MANIFEST-000125
MANIFEST-000198

View File

@ -1,7 +1,7 @@
2025/02/22-22:33:49.571959 7f5930ff96c0 Recovering log #123
2025/02/22-22:33:49.581451 7f5930ff96c0 Delete type=3 #121
2025/02/22-22:33:49.581507 7f5930ff96c0 Delete type=0 #123
2025/02/22-22:43:19.756476 7f5693fff6c0 Level-0 table #128: started
2025/02/22-22:43:19.756512 7f5693fff6c0 Level-0 table #128: 0 bytes OK
2025/02/22-22:43:19.763078 7f5693fff6c0 Delete type=0 #126
2025/02/22-22:43:19.770534 7f5693fff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)
2025/04/20-09:24:47.881295 7fa412ffd6c0 Recovering log #195
2025/04/20-09:24:47.897306 7fa412ffd6c0 Delete type=3 #193
2025/04/20-09:24:47.897426 7fa412ffd6c0 Delete type=0 #195
2025/04/20-09:25:06.915266 7fa4127fc6c0 Level-0 table #201: started
2025/04/20-09:25:06.915317 7fa4127fc6c0 Level-0 table #201: 0 bytes OK
2025/04/20-09:25:06.922256 7fa4127fc6c0 Delete type=0 #199
2025/04/20-09:25:06.929081 7fa4127fc6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,14 @@
2025/02/21-17:43:59.860699 7f59317fa6c0 Recovering log #119
2025/02/21-17:43:59.916350 7f59317fa6c0 Delete type=3 #117
2025/02/21-17:43:59.916493 7f59317fa6c0 Delete type=0 #119
2025/02/21-17:47:55.663886 7f5693fff6c0 Level-0 table #124: started
2025/02/21-17:47:55.663923 7f5693fff6c0 Level-0 table #124: 0 bytes OK
2025/02/21-17:47:55.670649 7f5693fff6c0 Delete type=0 #122
2025/02/21-17:47:55.677247 7f5693fff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.304335 7f6df11fa6c0 Recovering log #191
2025/04/11-23:06:48.314473 7f6df11fa6c0 Delete type=3 #189
2025/04/11-23:06:48.314529 7f6df11fa6c0 Delete type=0 #191
2025/04/12-00:18:27.071344 7f6deabff6c0 Level-0 table #196: started
2025/04/12-00:18:27.085927 7f6deabff6c0 Level-0 table #196: 1371 bytes OK
2025/04/12-00:18:27.118250 7f6deabff6c0 Delete type=0 #194
2025/04/12-00:18:27.311443 7f6deabff6c0 Manual compaction at level-0 from '!folders!InCQeTRdT5jXMX82' @ 72057594037927935 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at '!items!GZ3Q17VzRvdlrtdF' @ 40 : 1
2025/04/12-00:18:27.311451 7f6deabff6c0 Compacting 1@0 + 1@1 files
2025/04/12-00:18:27.331173 7f6deabff6c0 Generated table #197@0: 38 keys, 31023 bytes
2025/04/12-00:18:27.331200 7f6deabff6c0 Compacted 1@0 + 1@1 files => 31023 bytes
2025/04/12-00:18:27.373984 7f6deabff6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2025/04/12-00:18:27.374177 7f6deabff6c0 Delete type=2 #174
2025/04/12-00:18:27.374459 7f6deabff6c0 Delete type=2 #196
2025/04/12-00:18:27.426656 7f6deabff6c0 Manual compaction at level-0 from '!items!GZ3Q17VzRvdlrtdF' @ 40 : 1 .. '!items!wxIHkrq98eQ3cOvp' @ 0 : 0; will stop at (end)

Binary file not shown.

BIN
packs/armes/MANIFEST-000198 Normal file

Binary file not shown.

View File

Binary file not shown.

Binary file not shown.

Binary file not shown.

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

View File

@ -1 +1 @@
MANIFEST-000125
MANIFEST-000197

View File

@ -1,7 +1,7 @@
2025/02/22-22:33:49.584858 7f59317fa6c0 Recovering log #123
2025/02/22-22:33:49.595075 7f59317fa6c0 Delete type=3 #121
2025/02/22-22:33:49.595272 7f59317fa6c0 Delete type=0 #123
2025/02/22-22:43:19.749434 7f5693fff6c0 Level-0 table #128: started
2025/02/22-22:43:19.749479 7f5693fff6c0 Level-0 table #128: 0 bytes OK
2025/02/22-22:43:19.756348 7f5693fff6c0 Delete type=0 #126
2025/02/22-22:43:19.770523 7f5693fff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)
2025/04/20-09:24:47.903860 7fa413fff6c0 Recovering log #195
2025/04/20-09:24:47.919442 7fa413fff6c0 Delete type=3 #193
2025/04/20-09:24:47.919592 7fa413fff6c0 Delete type=0 #195
2025/04/20-09:25:06.908159 7fa4127fc6c0 Level-0 table #200: started
2025/04/20-09:25:06.908228 7fa4127fc6c0 Level-0 table #200: 0 bytes OK
2025/04/20-09:25:06.915011 7fa4127fc6c0 Delete type=0 #198
2025/04/20-09:25:06.929064 7fa4127fc6c0 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:43:59.921453 7f5931ffb6c0 Recovering log #119
2025/02/21-17:43:59.978668 7f5931ffb6c0 Delete type=3 #117
2025/02/21-17:43:59.978782 7f5931ffb6c0 Delete type=0 #119
2025/02/21-17:47:55.657052 7f5693fff6c0 Level-0 table #124: started
2025/02/21-17:47:55.657095 7f5693fff6c0 Level-0 table #124: 0 bytes OK
2025/02/21-17:47:55.663742 7f5693fff6c0 Delete type=0 #122
2025/02/21-17:47:55.677232 7f5693fff6c0 Manual compaction at level-0 from '!folders!2wTJBj3dicRKzNOE' @ 72057594037927935 : 1 .. '!items!ufvhWG5V8pX0qrtR' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.318150 7f6df09f96c0 Recovering log #191
2025/04/11-23:06:48.328364 7f6df09f96c0 Delete type=3 #189
2025/04/11-23:06:48.328522 7f6df09f96c0 Delete type=0 #191
2025/04/12-00:18:27.192248 7f6deabff6c0 Level-0 table #196: started
2025/04/12-00:18:27.192320 7f6deabff6c0 Level-0 table #196: 0 bytes OK
2025/04/12-00:18:27.261480 7f6deabff6c0 Delete type=0 #194
2025/04/12-00:18:27.426624 7f6deabff6c0 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-000122
MANIFEST-000194

View File

@ -1,7 +1,7 @@
2025/02/22-22:33:49.555798 7f59327fc6c0 Recovering log #120
2025/02/22-22:33:49.566915 7f59327fc6c0 Delete type=3 #118
2025/02/22-22:33:49.567025 7f59327fc6c0 Delete type=0 #120
2025/02/22-22:43:19.763211 7f5693fff6c0 Level-0 table #125: started
2025/02/22-22:43:19.763237 7f5693fff6c0 Level-0 table #125: 0 bytes OK
2025/02/22-22:43:19.770353 7f5693fff6c0 Delete type=0 #123
2025/02/22-22:43:19.770546 7f5693fff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)
2025/04/20-09:24:47.857871 7fa4137fe6c0 Recovering log #192
2025/04/20-09:24:47.873833 7fa4137fe6c0 Delete type=3 #190
2025/04/20-09:24:47.873948 7fa4137fe6c0 Delete type=0 #192
2025/04/20-09:25:06.901277 7fa4127fc6c0 Level-0 table #197: started
2025/04/20-09:25:06.901384 7fa4127fc6c0 Level-0 table #197: 0 bytes OK
2025/04/20-09:25:06.907939 7fa4127fc6c0 Delete type=0 #195
2025/04/20-09:25:06.929038 7fa4127fc6c0 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:43:59.798767 7f5930ff96c0 Recovering log #116
2025/02/21-17:43:59.855271 7f5930ff96c0 Delete type=3 #114
2025/02/21-17:43:59.855472 7f5930ff96c0 Delete type=0 #116
2025/02/21-17:47:55.650583 7f5693fff6c0 Level-0 table #121: started
2025/02/21-17:47:55.650666 7f5693fff6c0 Level-0 table #121: 0 bytes OK
2025/02/21-17:47:55.656867 7f5693fff6c0 Delete type=0 #119
2025/02/21-17:47:55.677212 7f5693fff6c0 Manual compaction at level-0 from '!folders!4OPhigzcPv46qbWW' @ 72057594037927935 : 1 .. '!items!yx4k7lQHGcom99mk' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.289349 7f6debfff6c0 Recovering log #188
2025/04/11-23:06:48.299353 7f6debfff6c0 Delete type=3 #186
2025/04/11-23:06:48.299496 7f6debfff6c0 Delete type=0 #188
2025/04/12-00:18:27.261661 7f6deabff6c0 Level-0 table #193: started
2025/04/12-00:18:27.261699 7f6deabff6c0 Level-0 table #193: 0 bytes OK
2025/04/12-00:18:27.311309 7f6deabff6c0 Delete type=0 #191
2025/04/12-00:18:27.426641 7f6deabff6c0 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-000130
MANIFEST-000206

View File

@ -1,7 +1,7 @@
2025/02/22-22:33:49.598250 7f5931ffb6c0 Recovering log #128
2025/02/22-22:33:49.609114 7f5931ffb6c0 Delete type=3 #126
2025/02/22-22:33:49.609187 7f5931ffb6c0 Delete type=0 #128
2025/02/22-22:43:19.742523 7f5693fff6c0 Level-0 table #133: started
2025/02/22-22:43:19.742609 7f5693fff6c0 Level-0 table #133: 0 bytes OK
2025/02/22-22:43:19.749216 7f5693fff6c0 Delete type=0 #131
2025/02/22-22:43:19.770500 7f5693fff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)
2025/04/20-09:24:47.923568 7fa418ffa6c0 Recovering log #203
2025/04/20-09:24:47.940475 7fa418ffa6c0 Delete type=3 #201
2025/04/20-09:24:47.940632 7fa418ffa6c0 Delete type=0 #203
2025/04/20-09:25:06.922414 7fa4127fc6c0 Level-0 table #209: started
2025/04/20-09:25:06.922447 7fa4127fc6c0 Level-0 table #209: 0 bytes OK
2025/04/20-09:25:06.928838 7fa4127fc6c0 Delete type=0 #207
2025/04/20-09:25:06.929095 7fa4127fc6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,14 @@
2025/02/21-17:43:59.982694 7f59327fc6c0 Recovering log #124
2025/02/21-17:44:00.043945 7f59327fc6c0 Delete type=3 #122
2025/02/21-17:44:00.044048 7f59327fc6c0 Delete type=0 #124
2025/02/21-17:47:55.670798 7f5693fff6c0 Level-0 table #129: started
2025/02/21-17:47:55.670851 7f5693fff6c0 Level-0 table #129: 0 bytes OK
2025/02/21-17:47:55.677050 7f5693fff6c0 Delete type=0 #127
2025/02/21-17:47:55.677262 7f5693fff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.331428 7f6deb7fe6c0 Recovering log #199
2025/04/11-23:06:48.343033 7f6deb7fe6c0 Delete type=3 #197
2025/04/11-23:06:48.343104 7f6deb7fe6c0 Delete type=0 #199
2025/04/12-00:18:27.118439 7f6deabff6c0 Level-0 table #204: started
2025/04/12-00:18:27.137069 7f6deabff6c0 Level-0 table #204: 6892 bytes OK
2025/04/12-00:18:27.191998 7f6deabff6c0 Delete type=0 #202
2025/04/12-00:18:27.374641 7f6deabff6c0 Manual compaction at level-0 from '!folders!9PQi3Lv54rpcxavo' @ 72057594037927935 : 1 .. '!items!zGlRtP7zSnkjuuue' @ 0 : 0; will stop at '!items!eILBnECWQOFfkxIL' @ 443 : 1
2025/04/12-00:18:27.374657 7f6deabff6c0 Compacting 1@0 + 1@1 files
2025/04/12-00:18:27.393149 7f6deabff6c0 Generated table #205@0: 71 keys, 263379 bytes
2025/04/12-00:18:27.393180 7f6deabff6c0 Compacted 1@0 + 1@1 files => 263379 bytes
2025/04/12-00:18:27.425988 7f6deabff6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2025/04/12-00:18:27.426166 7f6deabff6c0 Delete type=2 #186
2025/04/12-00:18:27.426484 7f6deabff6c0 Delete type=2 #204
2025/04/12-00:18:27.426669 7f6deabff6c0 Manual compaction at level-0 from '!items!eILBnECWQOFfkxIL' @ 443 : 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/000199.log Normal file
View File

View File

@ -1 +1 @@
MANIFEST-000124
MANIFEST-000197

View File

@ -1,7 +1,7 @@
2025/02/22-22:33:49.615053 7f59327fc6c0 Recovering log #122
2025/02/22-22:33:49.625185 7f59327fc6c0 Delete type=3 #120
2025/02/22-22:33:49.625256 7f59327fc6c0 Delete type=0 #122
2025/02/22-22:43:19.770657 7f5693fff6c0 Level-0 table #127: started
2025/02/22-22:43:19.770730 7f5693fff6c0 Level-0 table #127: 0 bytes OK
2025/02/22-22:43:19.776949 7f5693fff6c0 Delete type=0 #125
2025/02/22-22:43:19.797410 7f5693fff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)
2025/04/20-09:24:47.948681 7fa4137fe6c0 Recovering log #194
2025/04/20-09:24:47.965382 7fa4137fe6c0 Delete type=3 #192
2025/04/20-09:24:47.965487 7fa4137fe6c0 Delete type=0 #194
2025/04/20-09:25:06.935620 7fa4127fc6c0 Level-0 table #200: started
2025/04/20-09:25:06.935652 7fa4127fc6c0 Level-0 table #200: 0 bytes OK
2025/04/20-09:25:06.942921 7fa4127fc6c0 Delete type=0 #198
2025/04/20-09:25:06.956261 7fa4127fc6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)

View File

@ -1,7 +1,14 @@
2025/02/21-17:44:00.049637 7f5930ff96c0 Recovering log #118
2025/02/21-17:44:00.112380 7f5930ff96c0 Delete type=3 #116
2025/02/21-17:44:00.112480 7f5930ff96c0 Delete type=0 #118
2025/02/21-17:47:55.677403 7f5693fff6c0 Level-0 table #123: started
2025/02/21-17:47:55.677440 7f5693fff6c0 Level-0 table #123: 0 bytes OK
2025/02/21-17:47:55.687654 7f5693fff6c0 Delete type=0 #121
2025/02/21-17:47:55.710065 7f5693fff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at (end)
2025/04/11-23:06:48.348395 7f6debfff6c0 Recovering log #190
2025/04/11-23:06:48.358966 7f6debfff6c0 Delete type=3 #188
2025/04/11-23:06:48.359028 7f6debfff6c0 Delete type=0 #190
2025/04/12-00:18:27.516559 7f6deabff6c0 Level-0 table #195: started
2025/04/12-00:18:27.532890 7f6deabff6c0 Level-0 table #195: 2579 bytes OK
2025/04/12-00:18:27.581168 7f6deabff6c0 Delete type=0 #193
2025/04/12-00:18:27.688801 7f6deabff6c0 Manual compaction at level-0 from '!items!17mjvwS8R3B6LloG' @ 72057594037927935 : 1 .. '!items!zUYIVOuFpRur9aAR' @ 0 : 0; will stop at '!items!o71YhfDj6rschyQM' @ 59 : 1
2025/04/12-00:18:27.688816 7f6deabff6c0 Compacting 1@0 + 1@1 files
2025/04/12-00:18:27.707304 7f6deabff6c0 Generated table #196@0: 49 keys, 19688 bytes
2025/04/12-00:18:27.707343 7f6deabff6c0 Compacted 1@0 + 1@1 files => 19688 bytes
2025/04/12-00:18:27.739125 7f6deabff6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2025/04/12-00:18:27.739315 7f6deabff6c0 Delete type=2 #173
2025/04/12-00:18:27.739599 7f6deabff6c0 Delete type=2 #195
2025/04/12-00:18:27.828729 7f6deabff6c0 Manual compaction at level-0 from '!items!o71YhfDj6rschyQM' @ 59 : 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.

Binary file not shown.

BIN
packs/maladies/000196.ldb Normal file

Binary file not shown.

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