diff --git a/module/actor-sheet.js b/module/actor-sheet.js index a5162e2..0c60564 100644 --- a/module/actor-sheet.js +++ b/module/actor-sheet.js @@ -6,7 +6,7 @@ import { SoSUtility } from "./sos-utility.js"; /* -------------------------------------------- */ -export class SoSActorSheet extends ActorSheet { +export class SoSActorSheet extends foundry.appv1.sheets.ActorSheet { /** @override */ static get defaultOptions() { @@ -47,14 +47,14 @@ export class SoSActorSheet extends ActorSheet { formData.edgecard = this.actor.getEdgesCard(); formData.deckSize = this.actor.getDeckSize(); - formData.skills = this.actor.items.filter( item => item.type == 'skill').sort( (a, b) => { + formData.skills = this.actor.items.filter( item => item.type == 'skill').sort( (a, b) => { if ( a.name > b.name ) return 1; return -1; }); - + formData.skill1 = formData.skills.slice(0, Math.ceil(formData.skills.length/2) ) formData.skill2 = formData.skills.slice(Math.ceil(formData.skills.length/2), formData.skills.length ) - formData.consequences = this.actor.items.filter( item => item.type == 'consequence').sort( (a, b) => { + formData.consequences = this.actor.items.filter( item => item.type == 'consequence').sort( (a, b) => { if ( a.name > b.name ) return 1; return -1; }); @@ -62,7 +62,7 @@ export class SoSActorSheet extends ActorSheet { // Build the gear tree formData.gearsRoot = formData.gears.filter(item => item.system.containerid == ""); - for ( let container of formData.gearsRoot) { + for ( let container of formData.gearsRoot) { if ( container.type == 'container') { container.system.contains = [] container.system.containerEnc = 0; @@ -125,7 +125,7 @@ export class SoSActorSheet extends ActorSheet { const item = this.actor.wornObject( li.data("item-id") ); this.render(true); }); - + // Delete Inventory Item html.find('.item-delete').click(ev => { const li = $(ev.currentTarget).parents(".item"); @@ -160,7 +160,7 @@ export class SoSActorSheet extends ActorSheet { let woundName = event.currentTarget.attributes.woundname.value; //console.log("Competence changed :", skillName); this.actor.updateWound(woundName, parseInt(event.target.value)); - }); + }); html.find('.reset-deck-full').click((event) => { this.actor.resetDeckFull(); this.render(true); @@ -187,13 +187,13 @@ export class SoSActorSheet extends ActorSheet { html.find('.lock-unlock-sheet').click((event) => { this.options.editStatSkill = !this.options.editStatSkill; this.render(true); - }); + }); html.find('.item-link a').click((event) => { const itemId = $(event.currentTarget).data("item-id"); const item = this.actor.getOwnedItem(itemId); item.sheet.render(true); - }); - + }); + } /* -------------------------------------------- */ @@ -203,7 +203,7 @@ export class SoSActorSheet extends ActorSheet { super._onDrop(event); } } - + /* -------------------------------------------- */ /** @override */ setPosition(options = {}) { diff --git a/module/actor.js b/module/actor.js index 4b379aa..e4e2709 100644 --- a/module/actor.js +++ b/module/actor.js @@ -14,8 +14,8 @@ export class SoSActor extends Actor { /** * Override the create() function to provide additional SoS functionality. * - * This overrided create() function adds initial items - * Namely: Basic skills, money, + * This overrided create() function adds initial items + * Namely: Basic skills, money, * * @param {Object} data Barebones actor data which this function adds onto. * @param {Object} options (Unused) Additional options which customize the creation workflow. @@ -64,7 +64,7 @@ export class SoSActor extends Actor { if ( !this.system.cardDeck && this.hasPlayerOwner ) { this.system.cardDeck = new SoSCardDeck(); this.system.cardDeck.initCardDeck( this, this.system.internals.deck ); - } + } if ( !this.hasPlayerOwner ) { this.system.cardDeck = game.system.sos.gmDeck.GMdeck; console.log("DECK : ", this.system.cardDeck); @@ -91,28 +91,28 @@ export class SoSActor extends Actor { this.saveDeck(); } /* -------------------------------------------- */ - drawNewEdge( ) { + drawNewEdge( ) { this.system.cardDeck.drawEdge( 1 ); this.saveDeck(); } /* -------------------------------------------- */ - discardEdge( cardName ) { + discardEdge( cardName ) { this.system.cardDeck.discardEdge( cardName ); this.saveDeck(); } - + /* -------------------------------------------- */ resetDeck( ) { this.system.cardDeck.resetDeck(); this.saveDeck(); } - + /* -------------------------------------------- */ saveDeck( ) { - let deck = { deck: foundry.utils.duplicate(this.system.cardDeck.data.deck), + let deck = { deck: foundry.utils.duplicate(this.system.cardDeck.data.deck), discard: foundry.utils.duplicate(this.system.cardDeck.data.discard), - cardEdge: foundry.utils.duplicate(this.system.cardDeck.data.cardEdge) + cardEdge: foundry.utils.duplicate(this.system.cardDeck.data.cardEdge) } if ( this.hasPlayerOwner ) { this.update( { 'system.internals.deck': deck }); @@ -123,22 +123,22 @@ export class SoSActor extends Actor { /* -------------------------------------------- */ getDefense( ) { - return this.system.scores.defense; - } + return this.system.scores.defense; + } /* -------------------------------------------- */ computeDefense() { return { value: Math.ceil((this.system.stats.speed.value + this.system.stats.perception.value + this.system.stats.dexterity.value) / 2) + this.system.scores.defense.bonusmalus, critical: this.system.stats.speed.value + this.system.stats.perception.value + this.system.stats.dexterity.value + this.system.scores.defense.bonusmalus } - } + } /* -------------------------------------------- */ getEdge( ) { return this.system.scores.edge.value; - } + } /* -------------------------------------------- */ getEncumbrance( ) { return this.system.scores.encumbrance.value; - } + } computeEncumbrance( ) { return this.system.stats.strength.value + this.system.scores.encumbrance.bonusmalus; } @@ -161,7 +161,7 @@ export class SoSActor extends Actor { computeWound() { return Math.ceil( (this.system.stats.strength.value + this.system.stats.endurance.value) / 2) + this.system.scores.wound.bonusmalus; } - + /* -------------------------------------------- */ getSkillExperience( skillName ) { return this.items.filter( item => item.type == 'skillexperience' && item.system.skill == skillName); @@ -170,21 +170,21 @@ export class SoSActor extends Actor { /* -------------------------------------------- */ async wornObject( itemID) { let item = this.items.get(itemID); - if (item && item.system) { + if (item?.system) { let update = { _id: item.id, "system.worn": !item.system.worn }; await this.updateEmbeddedDocuments("Item", [update]); } } - + /* -------------------------------------------- */ async equipObject(itemID) { let item = this.items.get(itemID) - if (item && item.system) { + if (item?.system) { let update = { _id: item.id, "system.equiped": !item.system.equiped }; await this.updateEmbeddedDocuments("Item", [update]); } } - + /* -------------------------------------------- */ async controlScores() { // Defense check @@ -257,10 +257,10 @@ export class SoSActor extends Actor { bonusConsequence: 0, woundMalus: 0 } - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); new SoSFlipDialog(flipData, html).render(true); } - + /* -------------------------------------------- */ async rollSkill( skill ) { let flipData = { @@ -280,10 +280,10 @@ export class SoSActor extends Actor { bonusSkillXP: 0 } flipData.statList['nostat'] = { label: "No stat (ie defaulting skills)", value: 0, cardsuit: "none" } - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); new SoSFlipDialog(flipData, html).render(true); } - + /* -------------------------------------------- */ async rollWeapon( weapon ) { let target = SoSUtility.getTarget(); @@ -321,7 +321,7 @@ export class SoSActor extends Actor { console.log(flipData); flipData.statList['nostat'] = { label: "No stat (ie defaulting skills)", value: 0, cardsuit: "none" } - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html', flipData); new SoSFlipDialog(flipData, html).render(true); } @@ -329,12 +329,12 @@ export class SoSActor extends Actor { async checkDeath( ) { if ( this.system.scores.currentwounds.value >= this.system.scores.wound.value*2) { let woundData = { - name: this.name, + name: this.name, wounds: this.system.wounds, currentWounds: this.system.scores.currentwounds.value, - totalWounds: this.system.scores.wound.value + totalWounds: this.system.scores.wound.value } - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-character-death.html', woundData ); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-character-death.html', woundData ); ChatMessage.create( { content: html, whisper: ChatMessage.getWhisperRecipients(this.name).concat(ChatMessage.getWhisperRecipients("GM") ) } ) } } @@ -360,15 +360,15 @@ export class SoSActor extends Actor { currentWounds.value = sumWound; await this.update( { 'data.scores.currentwounds': currentWounds, 'data.wounds': wounds } ); - let woundData = { - name: this.name, + let woundData = { + name: this.name, consequenceName: consequenceName, - severity: severity, + severity: severity, wounds: wounds, currentWounds: sumWound, totalWounds: this.system.scores.wound.value } - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-consequence.html', woundData ); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-consequence.html', woundData ); ChatMessage.create( { content: html, whisper: ChatMessage.getWhisperRecipients(this.name).concat(ChatMessage.getWhisperRecipients("GM")) } ) this.checkDeath(); @@ -387,10 +387,10 @@ export class SoSActor extends Actor { let alreadyInside = this.items.filter( item => item.system.containerid && item.system.containerid == containerId); if ( alreadyInside.length >= container.system.container ) { ui.notifications.warn("Container is already full !"); - } else { + } else { setTimeout(function() { this.updateEmbeddedDocuments( "Item", [{ _id: object.id, 'system.containerid':containerId }])}, 800 ) } - } else if ( object && object.system.containerid) { // remove from container + } else if ( object?.system?.containerid) { // remove from container setTimeout(function() { this.updateEmbeddedDocuments( "Item", [{ _id: object.id, 'system.containerid':"" }])}, 800 ) } } @@ -398,8 +398,8 @@ export class SoSActor extends Actor { /* -------------------------------------------- */ async applyWounds( flipData ) { if ( flipData.damageStatus == 'no_damage') { - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-nodamage-taken.html', flipData ); - ChatMessage.create( { content: html, whisper: ChatMessage.getWhisperRecipients(this.name).concat(ChatMessage.getWhisperRecipients("GM")) } ); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-nodamage-taken.html', flipData ); + ChatMessage.create( { content: html, whisper: ChatMessage.getWhisperRecipients(this.name).concat(ChatMessage.getWhisperRecipients("GM")) } ); return; } @@ -436,7 +436,7 @@ export class SoSActor extends Actor { flipData.wounds = wounds; flipData.currentWounds = sumWound; flipData.totalWounds = this.system.scores.wound.value; - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-taken.html', flipData ); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-taken.html', flipData ); ChatMessage.create( { content: html, whisper: ChatMessage.getWhisperRecipients(this.name).concat(ChatMessage.getWhisperRecipients("GM")) } ); this.checkDeath(); diff --git a/module/item-sheet.js b/module/item-sheet.js index c70f5ac..9e8e39a 100644 --- a/module/item-sheet.js +++ b/module/item-sheet.js @@ -4,7 +4,7 @@ import { SoSUtility } from "./sos-utility.js"; * Extend the basic ItemSheet with some very simple modifications * @extends {ItemSheet} */ -export class SoSItemSheet extends ItemSheet { +export class SoSItemSheet extends foundry.appv1.sheets.ItemSheet { /** @override */ static get defaultOptions() { @@ -40,7 +40,7 @@ export class SoSItemSheet extends ItemSheet { sheetBody.css("height", bodyHeight); return position; } - + /* -------------------------------------------- */ async getData() { const objectData = this.object @@ -60,7 +60,7 @@ export class SoSItemSheet extends ItemSheet { description: await TextEditor.enrichHTML(this.object.system.description, {async: true}), }; - formData.isGM = game.user.isGM; + formData.isGM = game.user.isGM; if ( objectData.type == 'skillexperience') { formData.skillList = await SoSUtility.loadCompendiumNames("foundryvtt-shadows-over-sol.skills") } @@ -68,14 +68,14 @@ export class SoSItemSheet extends ItemSheet { formData.skillExperienceList = this.object.options.actor.getSkillExperience( objectData.name ) } if ( objectData.type == 'geneline') { - formData.weakness = await TextEditor.enrichHTML(this.object.system.weakness, {async: true}) + formData.weakness = await TextEditor.enrichHTML(this.object.system.weakness, {async: true}) } if ( objectData.type == 'malady') { - formData.notes = await TextEditor.enrichHTML(this.object.system.notes, {async: true}) + formData.notes = await TextEditor.enrichHTML(this.object.system.notes, {async: true}) } return formData; } - + /* -------------------------------------------- */ /** @override */ activateListeners(html) { @@ -83,7 +83,7 @@ export class SoSItemSheet extends ItemSheet { // Everything below here is only needed if the sheet is editable if (!this.options.editable) return; - + // Update Inventory Item html.find('.item-edit').click(ev => { const li = $(ev.currentTarget).parents(".item"); @@ -95,9 +95,9 @@ export class SoSItemSheet extends ItemSheet { const li = $(ev.currentTarget).parents(".item"); this.object.options.actor.deleteOwnedItem( li.data("item-id") ).then( this.render(true)); }); - + } - + /* -------------------------------------------- */ get template() { diff --git a/module/sos-card-deck.js b/module/sos-card-deck.js index 833d378..6ed515e 100644 --- a/module/sos-card-deck.js +++ b/module/sos-card-deck.js @@ -5,30 +5,30 @@ const NB_POKER_CARD = 54; const IDX2CARDFAMILY = ['c', 'd', 'h', 's']; /* -------------------------------------------- */ -export class SoSCardDeck { +export class SoSCardDeck { /* -------------------------------------------- */ - async initCardDeck(actor, savedDeck = undefined ) { - + async initCardDeck(actor, savedDeck = undefined) { + this.data = {}; - + this.data.deck = []; this.data.discard = []; this.data.cardState = []; - this.data.cardEdge = []; + this.data.cardEdge = []; - if ( savedDeck.deck && savedDeck.deck.length > 0 ) { + if (savedDeck.deck && savedDeck.deck.length > 0) { this.data.deck = foundry.utils.duplicate(savedDeck.deck); } - if ( savedDeck.discard && savedDeck.discard.length > 0 ) { + if (savedDeck.discard && savedDeck.discard.length > 0) { this.data.discard = foundry.utils.duplicate(savedDeck.discard); } - if ( savedDeck.cardEdge && savedDeck.cardEdge.length > 0 ) { + if (savedDeck.cardEdge && savedDeck.cardEdge.length > 0) { this.data.cardEdge = foundry.utils.duplicate(savedDeck.cardEdge); } - this.data.actor = actor; - if ( this.data.deck.length == 0 && this.data.discard.length == 0) { + this.data.actor = actor; + if (this.data.deck.length == 0 && this.data.discard.length == 0) { await this.shuffleDeck(); } } @@ -38,58 +38,56 @@ export class SoSCardDeck { this.cleanCardList(); // Randomize deck while (this.data.deck.length != NB_POKER_CARD) { - let roll = await new Roll("1d54").roll(); - let idx = roll.total; + let idx = Math.floor(Math.random() * 55); if (!this.data.cardState[idx - 1]) { if (idx == 53) { // Red Joker - this.data.deck.push( { cardName: 'jr' } ); + this.data.deck.push({ cardName: 'jr' }); } else if (idx == 54) { // Black Joker this.data.deck.push({ cardName: 'jb' }); } else { let familyIdx = idx % 4; - let cardIdx = String( (idx % 13) + 1); - cardIdx = (cardIdx.length < 2) ? "0"+cardIdx: cardIdx; + let cardIdx = String((idx % 13) + 1); + cardIdx = (cardIdx.length < 2) ? "0" + cardIdx : cardIdx; let cardName = IDX2CARDFAMILY[familyIdx] + cardIdx; - this.data.deck.push( { cardName: cardName } ); + this.data.deck.push({ cardName: cardName }); } this.data.cardState[idx - 1] = true; } - } + } } /* -------------------------------------------- */ async resetDeck() { - let newdeck = foundry.utils.duplicate(this.data.deck).concat( foundry.utils.duplicate (this.data.discard) ) + let newdeck = foundry.utils.duplicate(this.data.deck).concat(foundry.utils.duplicate(this.data.discard)) this.data.discard = [] // Reinit discard pile - this.data.deck = [] + this.data.deck = [] let decklen = newdeck.length let cardState = [] - for (let i = 0; i card.cardName != cardName); - this.data.cardEdge = newEdge; // New edge list - this.data.discard.push( { cardName: cardName }); // And push in the discard pile - } /* -------------------------------------------- */ - drawEdge( edgeNumber = 1 ) { - for (let i=0; i card.cardName != cardName); + this.data.cardEdge = newEdge; // New edge list + this.data.discard.push({ cardName: cardName }); // And push in the discard pile + } + + /* -------------------------------------------- */ + drawEdge(edgeNumber = 1) { + for (let i = 0; i < edgeNumber; i++) { + this.data.cardEdge.push(this.data.deck.pop()); console.log("DRAW EDGE", this.data.cardEdge); } } @@ -110,133 +108,133 @@ export class SoSCardDeck { } /* -------------------------------------------- */ - getCardSuit( cardName ) { - if ( cardName[0] == 'c') return 'club'; - if ( cardName[0] == 'd') return 'diamond'; - if ( cardName[0] == 'h') return 'hearts'; - if ( cardName[0] == 's') return 'spade'; - if ( cardName[0] == 'j') return 'joker'; + getCardSuit(cardName) { + if (cardName[0] == 'c') return 'club'; + if (cardName[0] == 'd') return 'diamond'; + if (cardName[0] == 'h') return 'hearts'; + if (cardName[0] == 's') return 'spade'; + if (cardName[0] == 'j') return 'joker'; } /* -------------------------------------------- */ - drawFromDeck() { + drawFromDeck() { let card = this.data.deck.pop(); - this.data.discard.push( card ); + this.data.discard.push(card); return card; } /* -------------------------------------------- */ - getFromEdge( cardName) { - let card = this.data.cardEdge.find( card => card.cardName == cardName); // Get the card - let newEdge = this.data.cardEdge.filter(card => card.cardName != cardName); // Remove used card + getFromEdge(cardName) { + let card = this.data.cardEdge.find(card => card.cardName == cardName); // Get the card + let newEdge = this.data.cardEdge.filter(card => card.cardName != cardName); // Remove used card this.data.cardEdge = newEdge; return card; } /* -------------------------------------------- */ - getCardValue( cardName ) { + getCardValue(cardName) { console.log(cardName); - if (cardName[0] == 'j' ) return 0; // Joker case - let parsed = cardName.match( /\w(\d\d)/i ); - let value = Number( parsed[1] ); - if ( value > 10 ) value -= 10; + if (cardName[0] == 'j') return 0; // Joker case + let parsed = cardName.match(/\w(\d\d)/i); + let value = Number(parsed[1]); + if (value > 10) value -= 10; return value; } /* -------------------------------------------- */ isCardFace(cardName) { - if (cardName[0] == 'j' ) return false; // Joker case - let parsed = cardName.match( /\w(\d\d)/i ); - let value = Number( parsed[1] ); - return (value > 10) ? true : false; + if (cardName[0] == 'j') return false; // Joker case + let parsed = cardName.match(/\w(\d\d)/i); + let value = Number(parsed[1]); + return (value > 10); } - + /* -------------------------------------------- */ - setJoker( flipData ) { + setJoker(flipData) { console.log("THIS IS A JOKER !!!!"); flipData.cardSlot[0].total = 0; - flipData.cardSlot[0].card1Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[0].card1.cardName}.webp`; + flipData.cardSlot[0].card1Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[0].card1.cardName}.webp`; flipData.isJoker = true; } /* -------------------------------------------- */ - isJoker( cardName) { + isJoker(cardName) { return cardName[0] == 'j'; } /* -------------------------------------------- */ - async doFlipFromDeckOrEdge( flipData ) { - flipData.cardSlot = [ { total: 0}]; + async doFlipFromDeckOrEdge(flipData) { + flipData.cardSlot = [{ total: 0 }]; flipData.isTrump = false; flipData.isJoker = false; flipData.fullTrump = false; - if ( flipData.edgeLuck ) { - flipData.cardOrigin == "Deck"; // Force Deck + if (flipData.edgeLuck) { + flipData.cardOrigin = "Deck"; // Force Deck } // Select card origin - if ( flipData.cardOrigin == "Deck") { + if (flipData.cardOrigin == "Deck") { flipData.cardSlot[0].card1 = this.drawFromDeck(); } else { - flipData.cardSlot[0].card1 = this.getFromEdge( flipData.edgeName ); - } + flipData.cardSlot[0].card1 = this.getFromEdge(flipData.edgeName); + } let cardsuit = this.getCardSuit(flipData.cardSlot[0].card1.cardName); - if ( cardsuit == 'joker' ) { - this.setJoker( flipData ); + if (cardsuit == 'joker') { + this.setJoker(flipData); } else { //console.log("First card : ", flipData.cardSlot[0].card1); // Face check for first card - flipData.cardSlot[0].value1 = this.getCardValue(flipData.cardSlot[0].card1.cardName); - flipData.cardSlot[0].isFace1 = this.isCardFace(flipData.cardSlot[0].card1.cardName); - flipData.cardSlot[0].card1Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[0].card1.cardName}.webp`; + flipData.cardSlot[0].value1 = this.getCardValue(flipData.cardSlot[0].card1.cardName); + flipData.cardSlot[0].isFace1 = this.isCardFace(flipData.cardSlot[0].card1.cardName); + flipData.cardSlot[0].card1Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[0].card1.cardName}.webp`; flipData.cardSlot[0].card2 = false; - if ( flipData.cardSlot[0].isFace1 ) { - flipData.cardSlot[0].card2 = this.drawFromDeck(); + if (flipData.cardSlot[0].isFace1) { + flipData.cardSlot[0].card2 = this.drawFromDeck(); flipData.isJoker = this.isJoker(flipData.cardSlot[0].card2.cardName); - flipData.cardSlot[0].value2 = this.getCardValue(flipData.cardSlot[0].card2.cardName); + flipData.cardSlot[0].value2 = this.getCardValue(flipData.cardSlot[0].card2.cardName); flipData.cardSlot[0].isFace2 = this.isCardFace(flipData.cardSlot[0].card2.cardName); flipData.cardSlot[0].card2Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[0].card2.cardName}.webp`; } else { flipData.cardSlot[0].value2 = 0; // Safe init } - flipData.cardSlot[0].total = flipData.cardSlot[0].value1 + flipData.cardSlot[0].value2; + flipData.cardSlot[0].total = flipData.cardSlot[0].value1 + flipData.cardSlot[0].value2; // Trump check - flipData.cardSlot[0].cardsuit = cardsuit; - if ( !flipData.isJoker && ( cardsuit == flipData.stat.cardsuit || flipData.edgeLuck) ) { + flipData.cardSlot[0].cardsuit = cardsuit; + if (!flipData.isJoker && (cardsuit == flipData.stat.cardsuit || flipData.edgeLuck)) { // This is a trump ! flipData.cardSlot[1] = { total: 0 }; flipData.isTrump = true; flipData.cardSlot[1].card1 = this.drawFromDeck(); flipData.isJoker = this.isJoker(flipData.cardSlot[1].card1.cardName); flipData.cardSlot[1].card1Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[1].card1.cardName}.webp`; - flipData.cardSlot[1].cardsuit = this.getCardSuit(flipData.cardSlot[1].card1.cardName); - flipData.cardSlot[1].value1 = this.getCardValue(flipData.cardSlot[1].card1.cardName); - flipData.cardSlot[1].isFace1 = this.isCardFace(flipData.cardSlot[1].card1.cardName); - if ( !flipData.isJoker && flipData.cardSlot[1].isFace1 ) { - flipData.cardSlot[1].card2 = this.drawFromDeck(); + flipData.cardSlot[1].cardsuit = this.getCardSuit(flipData.cardSlot[1].card1.cardName); + flipData.cardSlot[1].value1 = this.getCardValue(flipData.cardSlot[1].card1.cardName); + flipData.cardSlot[1].isFace1 = this.isCardFace(flipData.cardSlot[1].card1.cardName); + if (!flipData.isJoker && flipData.cardSlot[1].isFace1) { + flipData.cardSlot[1].card2 = this.drawFromDeck(); flipData.isJoker = this.isJoker(flipData.cardSlot[1].card2.cardName); - flipData.cardSlot[1].value2 = this.getCardValue(flipData.cardSlot[1].card2.cardName); - flipData.cardSlot[1].isFace2 = this.isCardFace(flipData.cardSlot[1].card2.cardName); + flipData.cardSlot[1].value2 = this.getCardValue(flipData.cardSlot[1].card2.cardName); + flipData.cardSlot[1].isFace2 = this.isCardFace(flipData.cardSlot[1].card2.cardName); flipData.cardSlot[1].card2Path = `systems/foundryvtt-shadows-over-sol/img/cards/${flipData.cardSlot[1].card2.cardName}.webp`; } else { flipData.cardSlot[1].value2 = 0; // Safe init } - if ( flipData.cardSlot[1].cardsuit == cardsuit ) { + if (flipData.cardSlot[1].cardsuit == cardsuit) { flipData.fullTrump = true; } - flipData.cardSlot[1].total = flipData.cardSlot[1].value1 + flipData.cardSlot[1].value2; + flipData.cardSlot[1].total = flipData.cardSlot[1].value1 + flipData.cardSlot[1].value2; } } // Card Total flipData.cardTotal = flipData.cardSlot[0].total; flipData.cardSlotIndex = 0; - if ( flipData.fullTrump ) { + if (flipData.fullTrump) { flipData.cardTotal = flipData.cardSlot[0].total + flipData.cardSlot[1].total; } else if (flipData.isTrump) { - if (flipData.cardSlot[0].total > flipData.cardSlot[1].total ) { + if (flipData.cardSlot[0].total > flipData.cardSlot[1].total) { flipData.cardSlotIndex = 0; flipData.cardTotal = flipData.cardSlot[0].total; } else { @@ -246,66 +244,66 @@ export class SoSCardDeck { } // Compute final result and compare - if ( flipData.mode == 'stat' || flipData.mode == 'weapon' ) { + if (flipData.mode == 'stat' || flipData.mode == 'weapon') { flipData.baseScore = flipData.stat.value + flipData.malusConsequence + flipData.bonusConsequence + flipData.woundMalus; } else if (flipData.mode == 'skill') { - flipData.baseScore = Math.floor(flipData.stat.value/2) + flipData.skill.system.value + flipData.malusConsequence + flipData.bonusConsequence + flipData.woundMalus; + flipData.baseScore = Math.floor(flipData.stat.value / 2) + flipData.skill.system.value + flipData.malusConsequence + flipData.bonusConsequence + flipData.woundMalus; } flipData.finalScore = flipData.baseScore + flipData.cardTotal + Number(flipData.modifier); flipData.magnitude = flipData.finalScore - flipData.tn; - flipData.result = (flipData.magnitude >= 0) ? "Success": "Failure"; + flipData.result = (flipData.magnitude >= 0) ? "Success" : "Failure"; - //console.log(flipData); this.data.actor.saveDeck(); - flipData.alias = this.data.actor.name; - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-flip.html', flipData); - ChatMessage.create( { content: html }); + flipData.alias = this.data.actor.name; + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-flip.html', flipData); + ChatMessage.create({ content: html }); - if ( flipData.mode == 'weapon' && flipData.magnitude >= 0 && !flipData.isJoker) { // Success - this.processWeapon( flipData ); + if (flipData.mode == 'weapon' && flipData.magnitude >= 0 && !flipData.isJoker) { // Success + this.processWeapon(flipData); } if (flipData.isJoker) { // Critical mismatch ! // TODO } } - + /* -------------------------------------------- */ - async processWeapon( flipData ) { + async processWeapon(flipData) { flipData.damageCardsuit = flipData.cardSlot[flipData.cardSlotIndex].cardsuit; - let damageKey = 'damage_'+ flipData.damageCardsuit; + let damageKey = 'damage_' + flipData.damageCardsuit; flipData.damageString = flipData.weapon.system[damageKey]; - if (flipData.damageString.includes('Str') ) { - let damageRegexp = flipData.damageString.match( /Str([\d])?\+?([\d])?([LMSC])/i ); - flipData.damageValue = (flipData.actor.system.stats.strength.value * Number(damageRegexp[1]?damageRegexp[1]:1)) + Number(damageRegexp[2]?damageRegexp[2]:0); + if (flipData.damageString.includes('Str')) { + let damageRegexp = flipData.damageString.match(/Str([\d])?\+?([\d])?([LMSC])/i); + flipData.damageValue = (flipData.actor.system.stats.strength.value * Number(damageRegexp[1] ? damageRegexp[1] : 1)) + Number(damageRegexp[2] ? damageRegexp[2] : 0); flipData.damageSeverity = damageRegexp[3]; } else { - let damageRegexp = flipData.damageString.match( /(\d*)([LMSC])/i ); + let damageRegexp = flipData.damageString.match(/(\d*)([LMSC])/i); flipData.damageValue = damageRegexp[1]; flipData.damageSeverity = damageRegexp[2]; } - + // Now process damage - if ( flipData.target) { - if ( game.user.isGM ) { // Direct access - SoSUtility.applyDamage( flipData ); + if (flipData.target) { + if (game.user.isGM) { // Direct access + SoSUtility.applyDamage(flipData); } else { game.socket.emit("system.foundryvtt-shadows-over-sol", { - msg: "msg_request_defense", data: flipData } ); + msg: "msg_request_defense", data: flipData + }); } } else { - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-only.html', flipData ); - ChatMessage.create( { content: html }); + let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/chat-damage-only.html', flipData); + ChatMessage.create({ content: html }); } } /* -------------------------------------------- */ - getDeckHTML( ) { + getDeckHTML() { return ""; } /* -------------------------------------------- */ - getEdgeHTML( ) { + getEdgeHTML() { let html = ""; for (let edge of this.data.cardEdge) { html += `` @@ -313,21 +311,21 @@ export class SoSCardDeck { return html; } - /* -------------------------------------------- */ - getEdgeHTMLForFlip( ) { - let html = ""; - for (let edge of this.data.cardEdge) { - html += `` - } - return html; - } - /* -------------------------------------------- */ - getDiscardTopHTML( ) { + getEdgeHTMLForFlip() { let html = ""; - console.log( "DISCARD: ", this.data.discard ); - if ( this.data.discard.length > 0) { - let card = this.data.discard[this.data.discard.length-1]; + for (let edge of this.data.cardEdge) { + html += `` + } + return html; + } + + /* -------------------------------------------- */ + getDiscardTopHTML() { + let html = ""; + console.log("DISCARD: ", this.data.discard); + if (this.data.discard.length > 0) { + let card = this.data.discard[this.data.discard.length - 1]; html = ``; } return html; diff --git a/module/sos-main.js b/module/sos-main.js index 8b46c48..6966399 100644 --- a/module/sos-main.js +++ b/module/sos-main.js @@ -37,14 +37,14 @@ Hooks.once("init", async function () { // preload handlebars templates SoSUtility.preloadHandlebarsTemplates(); // Create useful storage space - let html = await renderTemplate('systems/foundryvtt-shadows-over-sol/templates/gm-deck.html', {} ); + let html = await foundry.applications.handlebars.renderTemplate('systems/foundryvtt-shadows-over-sol/templates/gm-deck.html', {} ); let gmDeck = new SoSGMDeck(html); - game.system.sos = { + game.system.sos = { gmDeck: gmDeck, } /* -------------------------------------------- */ - // Set an initiative formula for the system + // Set an initiative formula for the system CONFIG.Combat.initiative = { formula: "1d3", decimals: 2 @@ -64,10 +64,10 @@ Hooks.once("init", async function () { /* -------------------------------------------- */ // Register sheet application classes - Actors.unregisterSheet("core", ActorSheet); - Actors.registerSheet("foundryvtt-shadows-over-sol", SoSActorSheet, { types: ["character"], makeDefault: true }); - Items.unregisterSheet("core", ItemSheet); - Items.registerSheet("foundryvtt-shadows-over-sol", SoSItemSheet, { makeDefault: true }); + foundry.documents.collections.Actors.unregisterSheet("core", foundry.appv1.sheets.ActorSheet); + foundry.documents.collections.Actors.registerSheet("foundryvtt-shadows-over-sol", SoSActorSheet, { types: ["character"], makeDefault: true }); + foundry.documents.collections.Items.unregisterSheet("core", foundry.appv1.sheets.ItemSheet); + foundry.documents.collections.Items.registerSheet("foundryvtt-shadows-over-sol", SoSItemSheet, { makeDefault: true }); // Init/registers Hooks.on('renderChatLog', (log, html, data) => { @@ -77,7 +77,7 @@ Hooks.once("init", async function () { Hooks.on('updateCombat', (combat, round, diff, id) => { SoSUtility.updateCombat(combat, round, diff, id); }); - + }); /* -------------------------------------------- */ @@ -105,7 +105,7 @@ Hooks.once("ready", function () { } ClassCounter.registerUsageCount() SoSUtility.ready() - + welcomeMessage(); }); diff --git a/module/sos-utility.js b/module/sos-utility.js index 22d2a98..8788a0c 100644 --- a/module/sos-utility.js +++ b/module/sos-utility.js @@ -27,7 +27,7 @@ export class SoSUtility { 'systems/foundryvtt-shadows-over-sol/templates/dialog-flip.html' ] - return loadTemplates(templatePaths); + return foundry.applications.handlebars.loadTemplates(templatePaths); } /* -------------------------------------------- */ @@ -137,14 +137,14 @@ export class SoSUtility { /* -------------------------------------------- */ static async registerChatCallbacks(html) { - html.on("click", '#button-declare-actions', event => { + $(html).on("click", '#button-declare-actions', event => { SoSUtility.openDeclareActions(event); }); - html.on("click", '#button-end-action', event => { + $(html).on("click", '#button-end-action', event => { SoSUtility.closeAction(event); }); - html.on("click", '#button-reaction-cover', event => { + $(html).on("click", '#button-reaction-cover', event => { let uniqId = event.currentTarget.attributes['data-uniq-id'].value; if (game.user.isGM) { SoSUtility.reactionCover(uniqId); @@ -153,7 +153,7 @@ export class SoSUtility { } }); - html.on("click", '#button-reaction-melee', event => { + $(html).on("click", '#button-reaction-melee', event => { let uniqId = event.currentTarget.attributes['data-uniq-id'].value; if (game.user.isGM) { SoSUtility.reactionMelee(uniqId); @@ -161,7 +161,7 @@ export class SoSUtility { game.socket.emit("system.foundryvtt-shadows-over-sol", { name: "msg_reaction_melee", data: { uniqId: uniqId } }); } }); - html.on("click", '#button-reaction-hit', event => { + $(html).on("click", '#button-reaction-hit', event => { let uniqId = event.currentTarget.attributes['data-uniq-id'].value; if (game.user.isGM) { SoSUtility.reactionHit(uniqId); diff --git a/packs/combat-actions/000011.ldb b/packs/combat-actions/000011.ldb deleted file mode 100644 index 922ad16..0000000 Binary files a/packs/combat-actions/000011.ldb and /dev/null differ diff --git a/packs/combat-actions/000009.log b/packs/combat-actions/000014.log similarity index 100% rename from packs/combat-actions/000009.log rename to packs/combat-actions/000014.log diff --git a/packs/combat-actions/000016.ldb b/packs/combat-actions/000016.ldb new file mode 100644 index 0000000..1aa80ef Binary files /dev/null and b/packs/combat-actions/000016.ldb differ diff --git a/packs/combat-actions/CURRENT b/packs/combat-actions/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/combat-actions/CURRENT +++ b/packs/combat-actions/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/combat-actions/LOG b/packs/combat-actions/LOG index 57ff2ac..35ab9ae 100644 --- a/packs/combat-actions/LOG +++ b/packs/combat-actions/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.244518 7f20a6a006c0 Recovering log #6 -2024/05/31-12:37:50.292179 7f20a6a006c0 Delete type=0 #6 -2024/05/31-12:37:50.292229 7f20a6a006c0 Delete type=3 #4 -2024/05/31-12:57:42.325821 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.325873 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.332227 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.355930 7f20a5a006c0 Manual compaction at level-0 from '!items!06L0cwm4CIuCFetU' @ 72057594037927935 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at '!items!uSQw858IiBrWkeSj' @ 20 : 1 -2024/05/31-12:57:42.355939 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.359540 7f20a5a006c0 Generated table #11@0: 20 keys, 15155 bytes -2024/05/31-12:57:42.359578 7f20a5a006c0 Compacted 1@0 + 0@1 files => 15155 bytes -2024/05/31-12:57:42.365779 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.365873 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.386374 7f20a5a006c0 Manual compaction at level-0 from '!items!uSQw858IiBrWkeSj' @ 20 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.452183 7f8a977fe6c0 Recovering log #9 +2025/05/02-18:33:12.463328 7f8a977fe6c0 Delete type=0 #9 +2025/05/02-18:33:12.463421 7f8a977fe6c0 Delete type=3 #7 +2025/05/02-18:57:05.868691 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.872912 7f8a967fc6c0 Level-0 table #15: 15248 bytes OK +2025/05/02-18:57:05.879476 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.921712 7f8a967fc6c0 Manual compaction at level-0 from '!items!06L0cwm4CIuCFetU' @ 72057594037927935 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at '!items!uSQw858IiBrWkeSj' @ 60 : 1 +2025/05/02-18:57:05.921740 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.927062 7f8a967fc6c0 Generated table #16@0: 20 keys, 15248 bytes +2025/05/02-18:57:05.927105 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 15248 bytes +2025/05/02-18:57:05.933657 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.933830 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.934033 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.945373 7f8a967fc6c0 Manual compaction at level-0 from '!items!uSQw858IiBrWkeSj' @ 60 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at (end) diff --git a/packs/combat-actions/LOG.old b/packs/combat-actions/LOG.old index b6e583a..57ff2ac 100644 --- a/packs/combat-actions/LOG.old +++ b/packs/combat-actions/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.345049 7f04c4c006c0 Recovering log #3 -2024/05/31-12:37:00.345498 7f04c4c006c0 Level-0 table #5: started -2024/05/31-12:37:00.358604 7f04c4c006c0 Level-0 table #5: 22912 bytes OK -2024/05/31-12:37:00.406080 7f04c4c006c0 Delete type=0 #3 -2024/05/31-12:37:00.406202 7f04c4c006c0 Delete type=3 #2 +2024/05/31-12:37:50.244518 7f20a6a006c0 Recovering log #6 +2024/05/31-12:37:50.292179 7f20a6a006c0 Delete type=0 #6 +2024/05/31-12:37:50.292229 7f20a6a006c0 Delete type=3 #4 +2024/05/31-12:57:42.325821 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.325873 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.332227 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.355930 7f20a5a006c0 Manual compaction at level-0 from '!items!06L0cwm4CIuCFetU' @ 72057594037927935 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at '!items!uSQw858IiBrWkeSj' @ 20 : 1 +2024/05/31-12:57:42.355939 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.359540 7f20a5a006c0 Generated table #11@0: 20 keys, 15155 bytes +2024/05/31-12:57:42.359578 7f20a5a006c0 Compacted 1@0 + 0@1 files => 15155 bytes +2024/05/31-12:57:42.365779 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.365873 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.386374 7f20a5a006c0 Manual compaction at level-0 from '!items!uSQw858IiBrWkeSj' @ 20 : 1 .. '!items!uSQw858IiBrWkeSj' @ 0 : 0; will stop at (end) diff --git a/packs/combat-actions/MANIFEST-000007 b/packs/combat-actions/MANIFEST-000007 deleted file mode 100644 index a86c839..0000000 Binary files a/packs/combat-actions/MANIFEST-000007 and /dev/null differ diff --git a/packs/combat-actions/MANIFEST-000012 b/packs/combat-actions/MANIFEST-000012 new file mode 100644 index 0000000..2d68bba Binary files /dev/null and b/packs/combat-actions/MANIFEST-000012 differ diff --git a/packs/consequences/000011.ldb b/packs/consequences/000011.ldb deleted file mode 100644 index 0f8496f..0000000 Binary files a/packs/consequences/000011.ldb and /dev/null differ diff --git a/packs/consequences/000009.log b/packs/consequences/000014.log similarity index 100% rename from packs/consequences/000009.log rename to packs/consequences/000014.log diff --git a/packs/consequences/000016.ldb b/packs/consequences/000016.ldb new file mode 100644 index 0000000..0a6ba1f Binary files /dev/null and b/packs/consequences/000016.ldb differ diff --git a/packs/consequences/CURRENT b/packs/consequences/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/consequences/CURRENT +++ b/packs/consequences/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/consequences/LOG b/packs/consequences/LOG index f496465..1067e04 100644 --- a/packs/consequences/LOG +++ b/packs/consequences/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:49.951711 7f20a74006c0 Recovering log #6 -2024/05/31-12:37:50.022164 7f20a74006c0 Delete type=0 #6 -2024/05/31-12:37:50.022219 7f20a74006c0 Delete type=3 #4 -2024/05/31-12:57:42.253682 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.253739 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.260074 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.279344 7f20a5a006c0 Manual compaction at level-0 from '!items!3GB0NAetYAVHIzmu' @ 72057594037927935 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at '!items!vHcRT3kQVWPHSz38' @ 13 : 1 -2024/05/31-12:57:42.279371 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.282723 7f20a5a006c0 Generated table #11@0: 13 keys, 7666 bytes -2024/05/31-12:57:42.282737 7f20a5a006c0 Compacted 1@0 + 0@1 files => 7666 bytes -2024/05/31-12:57:42.288596 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.288688 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.318921 7f20a5a006c0 Manual compaction at level-0 from '!items!vHcRT3kQVWPHSz38' @ 13 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.375278 7f8a96ffd6c0 Recovering log #9 +2025/05/02-18:33:12.386944 7f8a96ffd6c0 Delete type=0 #9 +2025/05/02-18:33:12.387036 7f8a96ffd6c0 Delete type=3 #7 +2025/05/02-18:57:05.771010 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.774670 7f8a967fc6c0 Level-0 table #15: 7713 bytes OK +2025/05/02-18:57:05.780959 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.813724 7f8a967fc6c0 Manual compaction at level-0 from '!items!3GB0NAetYAVHIzmu' @ 72057594037927935 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at '!items!vHcRT3kQVWPHSz38' @ 39 : 1 +2025/05/02-18:57:05.813735 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.817581 7f8a967fc6c0 Generated table #16@0: 13 keys, 7713 bytes +2025/05/02-18:57:05.817635 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 7713 bytes +2025/05/02-18:57:05.824551 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.824661 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.824810 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.848004 7f8a967fc6c0 Manual compaction at level-0 from '!items!vHcRT3kQVWPHSz38' @ 39 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at (end) diff --git a/packs/consequences/LOG.old b/packs/consequences/LOG.old index 1d5a478..f496465 100644 --- a/packs/consequences/LOG.old +++ b/packs/consequences/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:36:59.630199 7f04bf4006c0 Recovering log #3 -2024/05/31-12:36:59.631365 7f04bf4006c0 Level-0 table #5: started -2024/05/31-12:36:59.641960 7f04bf4006c0 Level-0 table #5: 10948 bytes OK -2024/05/31-12:36:59.690838 7f04bf4006c0 Delete type=0 #3 -2024/05/31-12:36:59.690928 7f04bf4006c0 Delete type=3 #2 +2024/05/31-12:37:49.951711 7f20a74006c0 Recovering log #6 +2024/05/31-12:37:50.022164 7f20a74006c0 Delete type=0 #6 +2024/05/31-12:37:50.022219 7f20a74006c0 Delete type=3 #4 +2024/05/31-12:57:42.253682 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.253739 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.260074 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.279344 7f20a5a006c0 Manual compaction at level-0 from '!items!3GB0NAetYAVHIzmu' @ 72057594037927935 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at '!items!vHcRT3kQVWPHSz38' @ 13 : 1 +2024/05/31-12:57:42.279371 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.282723 7f20a5a006c0 Generated table #11@0: 13 keys, 7666 bytes +2024/05/31-12:57:42.282737 7f20a5a006c0 Compacted 1@0 + 0@1 files => 7666 bytes +2024/05/31-12:57:42.288596 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.288688 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.318921 7f20a5a006c0 Manual compaction at level-0 from '!items!vHcRT3kQVWPHSz38' @ 13 : 1 .. '!items!vHcRT3kQVWPHSz38' @ 0 : 0; will stop at (end) diff --git a/packs/consequences/MANIFEST-000007 b/packs/consequences/MANIFEST-000007 deleted file mode 100644 index 728c476..0000000 Binary files a/packs/consequences/MANIFEST-000007 and /dev/null differ diff --git a/packs/consequences/MANIFEST-000012 b/packs/consequences/MANIFEST-000012 new file mode 100644 index 0000000..ad9bbaa Binary files /dev/null and b/packs/consequences/MANIFEST-000012 differ diff --git a/packs/gears/000011.ldb b/packs/gears/000011.ldb deleted file mode 100644 index 8c03a9d..0000000 Binary files a/packs/gears/000011.ldb and /dev/null differ diff --git a/packs/gears/000009.log b/packs/gears/000014.log similarity index 100% rename from packs/gears/000009.log rename to packs/gears/000014.log diff --git a/packs/gears/000016.ldb b/packs/gears/000016.ldb new file mode 100644 index 0000000..5854366 Binary files /dev/null and b/packs/gears/000016.ldb differ diff --git a/packs/gears/CURRENT b/packs/gears/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/gears/CURRENT +++ b/packs/gears/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/gears/LOG b/packs/gears/LOG index 37ff894..5a7b77d 100644 --- a/packs/gears/LOG +++ b/packs/gears/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.024957 7f20a6a006c0 Recovering log #6 -2024/05/31-12:37:50.068244 7f20a6a006c0 Delete type=0 #6 -2024/05/31-12:37:50.068393 7f20a6a006c0 Delete type=3 #4 -2024/05/31-12:57:42.272250 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.272277 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.279124 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.308486 7f20a5a006c0 Manual compaction at level-0 from '!items!1Gj3ATIVykyAQ5fD' @ 72057594037927935 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at '!items!zMiaz2HLsddO22H3' @ 99 : 1 -2024/05/31-12:57:42.308494 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.312365 7f20a5a006c0 Generated table #11@0: 99 keys, 58930 bytes -2024/05/31-12:57:42.312382 7f20a5a006c0 Compacted 1@0 + 0@1 files => 58930 bytes -2024/05/31-12:57:42.318551 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.318708 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.318989 7f20a5a006c0 Manual compaction at level-0 from '!items!zMiaz2HLsddO22H3' @ 99 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.392224 7f8a9cffa6c0 Recovering log #9 +2025/05/02-18:33:12.403118 7f8a9cffa6c0 Delete type=0 #9 +2025/05/02-18:33:12.403200 7f8a9cffa6c0 Delete type=3 #7 +2025/05/02-18:57:05.781173 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.785800 7f8a967fc6c0 Level-0 table #15: 59307 bytes OK +2025/05/02-18:57:05.792099 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.824917 7f8a967fc6c0 Manual compaction at level-0 from '!items!1Gj3ATIVykyAQ5fD' @ 72057594037927935 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at '!items!zMiaz2HLsddO22H3' @ 297 : 1 +2025/05/02-18:57:05.824929 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.829957 7f8a967fc6c0 Generated table #16@0: 99 keys, 59307 bytes +2025/05/02-18:57:05.829994 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 59307 bytes +2025/05/02-18:57:05.836156 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.836257 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.836406 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.848030 7f8a967fc6c0 Manual compaction at level-0 from '!items!zMiaz2HLsddO22H3' @ 297 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at (end) diff --git a/packs/gears/LOG.old b/packs/gears/LOG.old index 3524d9e..37ff894 100644 --- a/packs/gears/LOG.old +++ b/packs/gears/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:36:59.694104 7f04c4c006c0 Recovering log #3 -2024/05/31-12:36:59.695341 7f04c4c006c0 Level-0 table #5: started -2024/05/31-12:37:00.103755 7f04c4c006c0 Level-0 table #5: 87512 bytes OK -2024/05/31-12:37:00.158532 7f04c4c006c0 Delete type=0 #3 -2024/05/31-12:37:00.158786 7f04c4c006c0 Delete type=3 #2 +2024/05/31-12:37:50.024957 7f20a6a006c0 Recovering log #6 +2024/05/31-12:37:50.068244 7f20a6a006c0 Delete type=0 #6 +2024/05/31-12:37:50.068393 7f20a6a006c0 Delete type=3 #4 +2024/05/31-12:57:42.272250 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.272277 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.279124 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.308486 7f20a5a006c0 Manual compaction at level-0 from '!items!1Gj3ATIVykyAQ5fD' @ 72057594037927935 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at '!items!zMiaz2HLsddO22H3' @ 99 : 1 +2024/05/31-12:57:42.308494 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.312365 7f20a5a006c0 Generated table #11@0: 99 keys, 58930 bytes +2024/05/31-12:57:42.312382 7f20a5a006c0 Compacted 1@0 + 0@1 files => 58930 bytes +2024/05/31-12:57:42.318551 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.318708 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.318989 7f20a5a006c0 Manual compaction at level-0 from '!items!zMiaz2HLsddO22H3' @ 99 : 1 .. '!items!zMiaz2HLsddO22H3' @ 0 : 0; will stop at (end) diff --git a/packs/gears/MANIFEST-000007 b/packs/gears/MANIFEST-000007 deleted file mode 100644 index 84f52d1..0000000 Binary files a/packs/gears/MANIFEST-000007 and /dev/null differ diff --git a/packs/gears/MANIFEST-000012 b/packs/gears/MANIFEST-000012 new file mode 100644 index 0000000..6161f37 Binary files /dev/null and b/packs/gears/MANIFEST-000012 differ diff --git a/packs/genelines/000011.ldb b/packs/genelines/000011.ldb deleted file mode 100644 index dac98bf..0000000 Binary files a/packs/genelines/000011.ldb and /dev/null differ diff --git a/packs/genelines/000009.log b/packs/genelines/000014.log similarity index 100% rename from packs/genelines/000009.log rename to packs/genelines/000014.log diff --git a/packs/genelines/000016.ldb b/packs/genelines/000016.ldb new file mode 100644 index 0000000..c1c8800 Binary files /dev/null and b/packs/genelines/000016.ldb differ diff --git a/packs/genelines/CURRENT b/packs/genelines/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/genelines/CURRENT +++ b/packs/genelines/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/genelines/LOG b/packs/genelines/LOG index 7e7e752..570bce0 100644 --- a/packs/genelines/LOG +++ b/packs/genelines/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.295525 7f20a7e006c0 Recovering log #6 -2024/05/31-12:37:50.344755 7f20a7e006c0 Delete type=0 #6 -2024/05/31-12:37:50.344847 7f20a7e006c0 Delete type=3 #4 -2024/05/31-12:57:42.332388 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.332415 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.338850 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.365997 7f20a5a006c0 Manual compaction at level-0 from '!items!3o49zG4Xtc1I29j2' @ 72057594037927935 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at '!items!vDOAmovqE53dQzlh' @ 8 : 1 -2024/05/31-12:57:42.366005 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.369253 7f20a5a006c0 Generated table #11@0: 8 keys, 7865 bytes -2024/05/31-12:57:42.369293 7f20a5a006c0 Compacted 1@0 + 0@1 files => 7865 bytes -2024/05/31-12:57:42.376725 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.376841 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.386385 7f20a5a006c0 Manual compaction at level-0 from '!items!vDOAmovqE53dQzlh' @ 8 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.467305 7f8a97fff6c0 Recovering log #9 +2025/05/02-18:33:12.477711 7f8a97fff6c0 Delete type=0 #9 +2025/05/02-18:33:12.477882 7f8a97fff6c0 Delete type=3 #7 +2025/05/02-18:57:05.879741 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.884118 7f8a967fc6c0 Level-0 table #15: 7901 bytes OK +2025/05/02-18:57:05.891258 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.934202 7f8a967fc6c0 Manual compaction at level-0 from '!items!3o49zG4Xtc1I29j2' @ 72057594037927935 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at '!items!vDOAmovqE53dQzlh' @ 24 : 1 +2025/05/02-18:57:05.934218 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.938408 7f8a967fc6c0 Generated table #16@0: 8 keys, 7901 bytes +2025/05/02-18:57:05.938450 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 7901 bytes +2025/05/02-18:57:05.944795 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.944948 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.945159 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.945392 7f8a967fc6c0 Manual compaction at level-0 from '!items!vDOAmovqE53dQzlh' @ 24 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at (end) diff --git a/packs/genelines/LOG.old b/packs/genelines/LOG.old index 3f57dfe..7e7e752 100644 --- a/packs/genelines/LOG.old +++ b/packs/genelines/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.409789 7f04bfe006c0 Recovering log #3 -2024/05/31-12:37:00.410672 7f04bfe006c0 Level-0 table #5: started -2024/05/31-12:37:00.432255 7f04bfe006c0 Level-0 table #5: 11820 bytes OK -2024/05/31-12:37:00.469946 7f04bfe006c0 Delete type=0 #3 -2024/05/31-12:37:00.470035 7f04bfe006c0 Delete type=3 #2 +2024/05/31-12:37:50.295525 7f20a7e006c0 Recovering log #6 +2024/05/31-12:37:50.344755 7f20a7e006c0 Delete type=0 #6 +2024/05/31-12:37:50.344847 7f20a7e006c0 Delete type=3 #4 +2024/05/31-12:57:42.332388 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.332415 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.338850 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.365997 7f20a5a006c0 Manual compaction at level-0 from '!items!3o49zG4Xtc1I29j2' @ 72057594037927935 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at '!items!vDOAmovqE53dQzlh' @ 8 : 1 +2024/05/31-12:57:42.366005 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.369253 7f20a5a006c0 Generated table #11@0: 8 keys, 7865 bytes +2024/05/31-12:57:42.369293 7f20a5a006c0 Compacted 1@0 + 0@1 files => 7865 bytes +2024/05/31-12:57:42.376725 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.376841 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.386385 7f20a5a006c0 Manual compaction at level-0 from '!items!vDOAmovqE53dQzlh' @ 8 : 1 .. '!items!vDOAmovqE53dQzlh' @ 0 : 0; will stop at (end) diff --git a/packs/genelines/MANIFEST-000007 b/packs/genelines/MANIFEST-000007 deleted file mode 100644 index fac1d06..0000000 Binary files a/packs/genelines/MANIFEST-000007 and /dev/null differ diff --git a/packs/genelines/MANIFEST-000012 b/packs/genelines/MANIFEST-000012 new file mode 100644 index 0000000..346d7cd Binary files /dev/null and b/packs/genelines/MANIFEST-000012 differ diff --git a/packs/injuries/000011.ldb b/packs/injuries/000011.ldb deleted file mode 100644 index deae8ac..0000000 Binary files a/packs/injuries/000011.ldb and /dev/null differ diff --git a/packs/injuries/000009.log b/packs/injuries/000014.log similarity index 100% rename from packs/injuries/000009.log rename to packs/injuries/000014.log diff --git a/packs/injuries/000016.ldb b/packs/injuries/000016.ldb new file mode 100644 index 0000000..755806b Binary files /dev/null and b/packs/injuries/000016.ldb differ diff --git a/packs/injuries/CURRENT b/packs/injuries/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/injuries/CURRENT +++ b/packs/injuries/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/injuries/LOG b/packs/injuries/LOG index 664ca7d..15e61c2 100644 --- a/packs/injuries/LOG +++ b/packs/injuries/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.071905 7f20a7e006c0 Recovering log #6 -2024/05/31-12:37:50.130041 7f20a7e006c0 Delete type=0 #6 -2024/05/31-12:37:50.130137 7f20a7e006c0 Delete type=3 #4 -2024/05/31-12:57:42.260202 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.260227 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.266171 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.288778 7f20a5a006c0 Manual compaction at level-0 from '!items!2ZUnK7mjIeizobUM' @ 72057594037927935 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at '!items!xZL7aO0xOOZvB2cs' @ 53 : 1 -2024/05/31-12:57:42.288786 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.292530 7f20a5a006c0 Generated table #11@0: 53 keys, 14817 bytes -2024/05/31-12:57:42.292553 7f20a5a006c0 Compacted 1@0 + 0@1 files => 14817 bytes -2024/05/31-12:57:42.298878 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.298975 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.318947 7f20a5a006c0 Manual compaction at level-0 from '!items!xZL7aO0xOOZvB2cs' @ 53 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.407811 7f8a977fe6c0 Recovering log #9 +2025/05/02-18:33:12.418251 7f8a977fe6c0 Delete type=0 #9 +2025/05/02-18:33:12.418341 7f8a977fe6c0 Delete type=3 #7 +2025/05/02-18:57:05.792307 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.796541 7f8a967fc6c0 Level-0 table #15: 14986 bytes OK +2025/05/02-18:57:05.803084 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.836521 7f8a967fc6c0 Manual compaction at level-0 from '!items!2ZUnK7mjIeizobUM' @ 72057594037927935 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at '!items!xZL7aO0xOOZvB2cs' @ 159 : 1 +2025/05/02-18:57:05.836533 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.840280 7f8a967fc6c0 Generated table #16@0: 53 keys, 14986 bytes +2025/05/02-18:57:05.840317 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 14986 bytes +2025/05/02-18:57:05.847355 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.847537 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.847800 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.848050 7f8a967fc6c0 Manual compaction at level-0 from '!items!xZL7aO0xOOZvB2cs' @ 159 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at (end) diff --git a/packs/injuries/LOG.old b/packs/injuries/LOG.old index 7f14182..664ca7d 100644 --- a/packs/injuries/LOG.old +++ b/packs/injuries/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.162792 7f04c56006c0 Recovering log #3 -2024/05/31-12:37:00.163468 7f04c56006c0 Level-0 table #5: started -2024/05/31-12:37:00.172845 7f04c56006c0 Level-0 table #5: 21537 bytes OK -2024/05/31-12:37:00.220464 7f04c56006c0 Delete type=0 #3 -2024/05/31-12:37:00.220541 7f04c56006c0 Delete type=3 #2 +2024/05/31-12:37:50.071905 7f20a7e006c0 Recovering log #6 +2024/05/31-12:37:50.130041 7f20a7e006c0 Delete type=0 #6 +2024/05/31-12:37:50.130137 7f20a7e006c0 Delete type=3 #4 +2024/05/31-12:57:42.260202 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.260227 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.266171 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.288778 7f20a5a006c0 Manual compaction at level-0 from '!items!2ZUnK7mjIeizobUM' @ 72057594037927935 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at '!items!xZL7aO0xOOZvB2cs' @ 53 : 1 +2024/05/31-12:57:42.288786 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.292530 7f20a5a006c0 Generated table #11@0: 53 keys, 14817 bytes +2024/05/31-12:57:42.292553 7f20a5a006c0 Compacted 1@0 + 0@1 files => 14817 bytes +2024/05/31-12:57:42.298878 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.298975 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.318947 7f20a5a006c0 Manual compaction at level-0 from '!items!xZL7aO0xOOZvB2cs' @ 53 : 1 .. '!items!xZL7aO0xOOZvB2cs' @ 0 : 0; will stop at (end) diff --git a/packs/injuries/MANIFEST-000007 b/packs/injuries/MANIFEST-000007 deleted file mode 100644 index f14b50c..0000000 Binary files a/packs/injuries/MANIFEST-000007 and /dev/null differ diff --git a/packs/injuries/MANIFEST-000012 b/packs/injuries/MANIFEST-000012 new file mode 100644 index 0000000..399149c Binary files /dev/null and b/packs/injuries/MANIFEST-000012 differ diff --git a/packs/languages/000011.ldb b/packs/languages/000011.ldb deleted file mode 100644 index 164ac4c..0000000 Binary files a/packs/languages/000011.ldb and /dev/null differ diff --git a/packs/languages/000009.log b/packs/languages/000014.log similarity index 100% rename from packs/languages/000009.log rename to packs/languages/000014.log diff --git a/packs/languages/000016.ldb b/packs/languages/000016.ldb new file mode 100644 index 0000000..607f0d4 Binary files /dev/null and b/packs/languages/000016.ldb differ diff --git a/packs/languages/CURRENT b/packs/languages/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/languages/CURRENT +++ b/packs/languages/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/languages/LOG b/packs/languages/LOG index 213594a..14eeef1 100644 --- a/packs/languages/LOG +++ b/packs/languages/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.189585 7f20a74006c0 Recovering log #6 -2024/05/31-12:37:50.241798 7f20a74006c0 Delete type=0 #6 -2024/05/31-12:37:50.241887 7f20a74006c0 Delete type=3 #4 -2024/05/31-12:57:42.339058 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.339101 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.345459 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.376981 7f20a5a006c0 Manual compaction at level-0 from '!items!0OaXJm1iih3gYI6P' @ 72057594037927935 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at '!items!xbpEhhdqx4o5KUJA' @ 15 : 1 -2024/05/31-12:57:42.376991 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.380150 7f20a5a006c0 Generated table #11@0: 15 keys, 1725 bytes -2024/05/31-12:57:42.380181 7f20a5a006c0 Compacted 1@0 + 0@1 files => 1725 bytes -2024/05/31-12:57:42.386148 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.386245 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.386396 7f20a5a006c0 Manual compaction at level-0 from '!items!xbpEhhdqx4o5KUJA' @ 15 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.437502 7f8a96ffd6c0 Recovering log #9 +2025/05/02-18:33:12.448138 7f8a96ffd6c0 Delete type=0 #9 +2025/05/02-18:33:12.448254 7f8a96ffd6c0 Delete type=3 #7 +2025/05/02-18:57:05.848203 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.851561 7f8a967fc6c0 Level-0 table #15: 1753 bytes OK +2025/05/02-18:57:05.857944 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.891623 7f8a967fc6c0 Manual compaction at level-0 from '!items!0OaXJm1iih3gYI6P' @ 72057594037927935 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at '!items!xbpEhhdqx4o5KUJA' @ 45 : 1 +2025/05/02-18:57:05.891652 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.895427 7f8a967fc6c0 Generated table #16@0: 15 keys, 1753 bytes +2025/05/02-18:57:05.895465 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 1753 bytes +2025/05/02-18:57:05.901779 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.901906 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.902085 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.945325 7f8a967fc6c0 Manual compaction at level-0 from '!items!xbpEhhdqx4o5KUJA' @ 45 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at (end) diff --git a/packs/languages/LOG.old b/packs/languages/LOG.old index dc1eed3..213594a 100644 --- a/packs/languages/LOG.old +++ b/packs/languages/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.283664 7f04bf4006c0 Recovering log #3 -2024/05/31-12:37:00.285227 7f04bf4006c0 Level-0 table #5: started -2024/05/31-12:37:00.295941 7f04bf4006c0 Level-0 table #5: 2524 bytes OK -2024/05/31-12:37:00.342228 7f04bf4006c0 Delete type=0 #3 -2024/05/31-12:37:00.342291 7f04bf4006c0 Delete type=3 #2 +2024/05/31-12:37:50.189585 7f20a74006c0 Recovering log #6 +2024/05/31-12:37:50.241798 7f20a74006c0 Delete type=0 #6 +2024/05/31-12:37:50.241887 7f20a74006c0 Delete type=3 #4 +2024/05/31-12:57:42.339058 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.339101 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.345459 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.376981 7f20a5a006c0 Manual compaction at level-0 from '!items!0OaXJm1iih3gYI6P' @ 72057594037927935 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at '!items!xbpEhhdqx4o5KUJA' @ 15 : 1 +2024/05/31-12:57:42.376991 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.380150 7f20a5a006c0 Generated table #11@0: 15 keys, 1725 bytes +2024/05/31-12:57:42.380181 7f20a5a006c0 Compacted 1@0 + 0@1 files => 1725 bytes +2024/05/31-12:57:42.386148 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.386245 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.386396 7f20a5a006c0 Manual compaction at level-0 from '!items!xbpEhhdqx4o5KUJA' @ 15 : 1 .. '!items!xbpEhhdqx4o5KUJA' @ 0 : 0; will stop at (end) diff --git a/packs/languages/MANIFEST-000007 b/packs/languages/MANIFEST-000007 deleted file mode 100644 index 0e13b15..0000000 Binary files a/packs/languages/MANIFEST-000007 and /dev/null differ diff --git a/packs/languages/MANIFEST-000012 b/packs/languages/MANIFEST-000012 new file mode 100644 index 0000000..d5e2281 Binary files /dev/null and b/packs/languages/MANIFEST-000012 differ diff --git a/packs/skills/000011.ldb b/packs/skills/000011.ldb deleted file mode 100644 index 315e21b..0000000 Binary files a/packs/skills/000011.ldb and /dev/null differ diff --git a/packs/skills/000009.log b/packs/skills/000014.log similarity index 100% rename from packs/skills/000009.log rename to packs/skills/000014.log diff --git a/packs/skills/000016.ldb b/packs/skills/000016.ldb new file mode 100644 index 0000000..15f96af Binary files /dev/null and b/packs/skills/000016.ldb differ diff --git a/packs/skills/CURRENT b/packs/skills/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/skills/CURRENT +++ b/packs/skills/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/skills/LOG b/packs/skills/LOG index 21cc783..22305e7 100644 --- a/packs/skills/LOG +++ b/packs/skills/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:49.885012 7f20acc006c0 Recovering log #6 -2024/05/31-12:37:49.948288 7f20acc006c0 Delete type=0 #6 -2024/05/31-12:37:49.948350 7f20acc006c0 Delete type=3 #4 -2024/05/31-12:57:42.266276 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.266304 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.272138 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.299102 7f20a5a006c0 Manual compaction at level-0 from '!items!0xlCQMyGIQJWPBM1' @ 72057594037927935 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at '!items!ukWyqxOnKGRp7Owm' @ 25 : 1 -2024/05/31-12:57:42.299113 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.302367 7f20a5a006c0 Generated table #11@0: 25 keys, 11402 bytes -2024/05/31-12:57:42.302389 7f20a5a006c0 Compacted 1@0 + 0@1 files => 11402 bytes -2024/05/31-12:57:42.308292 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.308373 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.318969 7f20a5a006c0 Manual compaction at level-0 from '!items!ukWyqxOnKGRp7Owm' @ 25 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.359919 7f8a977fe6c0 Recovering log #9 +2025/05/02-18:33:12.370657 7f8a977fe6c0 Delete type=0 #9 +2025/05/02-18:33:12.370768 7f8a977fe6c0 Delete type=3 #7 +2025/05/02-18:57:05.760331 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.764162 7f8a967fc6c0 Level-0 table #15: 11468 bytes OK +2025/05/02-18:57:05.770815 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.803292 7f8a967fc6c0 Manual compaction at level-0 from '!items!0xlCQMyGIQJWPBM1' @ 72057594037927935 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at '!items!ukWyqxOnKGRp7Owm' @ 75 : 1 +2025/05/02-18:57:05.803308 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.806927 7f8a967fc6c0 Generated table #16@0: 25 keys, 11468 bytes +2025/05/02-18:57:05.806982 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 11468 bytes +2025/05/02-18:57:05.813204 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.813374 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.813581 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.847979 7f8a967fc6c0 Manual compaction at level-0 from '!items!ukWyqxOnKGRp7Owm' @ 75 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at (end) diff --git a/packs/skills/LOG.old b/packs/skills/LOG.old index a5c33e8..21cc783 100644 --- a/packs/skills/LOG.old +++ b/packs/skills/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:36:59.552707 7f04bfe006c0 Recovering log #3 -2024/05/31-12:36:59.558358 7f04bfe006c0 Level-0 table #5: started -2024/05/31-12:36:59.579826 7f04bfe006c0 Level-0 table #5: 15330 bytes OK -2024/05/31-12:36:59.626405 7f04bfe006c0 Delete type=0 #3 -2024/05/31-12:36:59.626466 7f04bfe006c0 Delete type=3 #2 +2024/05/31-12:37:49.885012 7f20acc006c0 Recovering log #6 +2024/05/31-12:37:49.948288 7f20acc006c0 Delete type=0 #6 +2024/05/31-12:37:49.948350 7f20acc006c0 Delete type=3 #4 +2024/05/31-12:57:42.266276 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.266304 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.272138 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.299102 7f20a5a006c0 Manual compaction at level-0 from '!items!0xlCQMyGIQJWPBM1' @ 72057594037927935 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at '!items!ukWyqxOnKGRp7Owm' @ 25 : 1 +2024/05/31-12:57:42.299113 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.302367 7f20a5a006c0 Generated table #11@0: 25 keys, 11402 bytes +2024/05/31-12:57:42.302389 7f20a5a006c0 Compacted 1@0 + 0@1 files => 11402 bytes +2024/05/31-12:57:42.308292 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.308373 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.318969 7f20a5a006c0 Manual compaction at level-0 from '!items!ukWyqxOnKGRp7Owm' @ 25 : 1 .. '!items!ukWyqxOnKGRp7Owm' @ 0 : 0; will stop at (end) diff --git a/packs/skills/MANIFEST-000007 b/packs/skills/MANIFEST-000007 deleted file mode 100644 index c721f90..0000000 Binary files a/packs/skills/MANIFEST-000007 and /dev/null differ diff --git a/packs/skills/MANIFEST-000012 b/packs/skills/MANIFEST-000012 new file mode 100644 index 0000000..57b5664 Binary files /dev/null and b/packs/skills/MANIFEST-000012 differ diff --git a/packs/subcultures/000011.ldb b/packs/subcultures/000011.ldb deleted file mode 100644 index 6fed8cb..0000000 Binary files a/packs/subcultures/000011.ldb and /dev/null differ diff --git a/packs/subcultures/000009.log b/packs/subcultures/000014.log similarity index 100% rename from packs/subcultures/000009.log rename to packs/subcultures/000014.log diff --git a/packs/subcultures/000016.ldb b/packs/subcultures/000016.ldb new file mode 100644 index 0000000..14d5f0c Binary files /dev/null and b/packs/subcultures/000016.ldb differ diff --git a/packs/subcultures/CURRENT b/packs/subcultures/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/subcultures/CURRENT +++ b/packs/subcultures/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/subcultures/LOG b/packs/subcultures/LOG index 8f0dcc1..614de77 100644 --- a/packs/subcultures/LOG +++ b/packs/subcultures/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.347603 7f20acc006c0 Recovering log #6 -2024/05/31-12:37:50.403306 7f20acc006c0 Delete type=0 #6 -2024/05/31-12:37:50.403397 7f20acc006c0 Delete type=3 #4 -2024/05/31-12:57:42.397507 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.397541 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.403638 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.419891 7f20a5a006c0 Manual compaction at level-0 from '!items!0xmW2R5sieo5k4d9' @ 72057594037927935 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at '!items!xaHXF4xCPb598RYA' @ 8 : 1 -2024/05/31-12:57:42.419910 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.423850 7f20a5a006c0 Generated table #11@0: 8 keys, 4158 bytes -2024/05/31-12:57:42.423886 7f20a5a006c0 Compacted 1@0 + 0@1 files => 4158 bytes -2024/05/31-12:57:42.430495 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.430590 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.436970 7f20a5a006c0 Manual compaction at level-0 from '!items!xaHXF4xCPb598RYA' @ 8 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.481820 7f8a9cffa6c0 Recovering log #9 +2025/05/02-18:33:12.493791 7f8a9cffa6c0 Delete type=0 #9 +2025/05/02-18:33:12.493880 7f8a9cffa6c0 Delete type=3 #7 +2025/05/02-18:57:05.975023 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.978984 7f8a967fc6c0 Level-0 table #15: 4196 bytes OK +2025/05/02-18:57:05.985478 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.985708 7f8a967fc6c0 Manual compaction at level-0 from '!items!0xmW2R5sieo5k4d9' @ 72057594037927935 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at '!items!xaHXF4xCPb598RYA' @ 24 : 1 +2025/05/02-18:57:05.985717 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.989558 7f8a967fc6c0 Generated table #16@0: 8 keys, 4196 bytes +2025/05/02-18:57:05.989614 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 4196 bytes +2025/05/02-18:57:05.996681 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.996848 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.997033 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:06.017682 7f8a967fc6c0 Manual compaction at level-0 from '!items!xaHXF4xCPb598RYA' @ 24 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at (end) diff --git a/packs/subcultures/LOG.old b/packs/subcultures/LOG.old index d61ef0c..8f0dcc1 100644 --- a/packs/subcultures/LOG.old +++ b/packs/subcultures/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.473437 7f04bf4006c0 Recovering log #3 -2024/05/31-12:37:00.473817 7f04bf4006c0 Level-0 table #5: started -2024/05/31-12:37:00.494156 7f04bf4006c0 Level-0 table #5: 6179 bytes OK -2024/05/31-12:37:00.530987 7f04bf4006c0 Delete type=0 #3 -2024/05/31-12:37:00.531064 7f04bf4006c0 Delete type=3 #2 +2024/05/31-12:37:50.347603 7f20acc006c0 Recovering log #6 +2024/05/31-12:37:50.403306 7f20acc006c0 Delete type=0 #6 +2024/05/31-12:37:50.403397 7f20acc006c0 Delete type=3 #4 +2024/05/31-12:57:42.397507 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.397541 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.403638 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.419891 7f20a5a006c0 Manual compaction at level-0 from '!items!0xmW2R5sieo5k4d9' @ 72057594037927935 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at '!items!xaHXF4xCPb598RYA' @ 8 : 1 +2024/05/31-12:57:42.419910 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.423850 7f20a5a006c0 Generated table #11@0: 8 keys, 4158 bytes +2024/05/31-12:57:42.423886 7f20a5a006c0 Compacted 1@0 + 0@1 files => 4158 bytes +2024/05/31-12:57:42.430495 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.430590 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.436970 7f20a5a006c0 Manual compaction at level-0 from '!items!xaHXF4xCPb598RYA' @ 8 : 1 .. '!items!xaHXF4xCPb598RYA' @ 0 : 0; will stop at (end) diff --git a/packs/subcultures/MANIFEST-000007 b/packs/subcultures/MANIFEST-000007 deleted file mode 100644 index ea555c8..0000000 Binary files a/packs/subcultures/MANIFEST-000007 and /dev/null differ diff --git a/packs/subcultures/MANIFEST-000012 b/packs/subcultures/MANIFEST-000012 new file mode 100644 index 0000000..86e151f Binary files /dev/null and b/packs/subcultures/MANIFEST-000012 differ diff --git a/packs/weaknesses/000011.ldb b/packs/weaknesses/000011.ldb deleted file mode 100644 index a2e35e8..0000000 Binary files a/packs/weaknesses/000011.ldb and /dev/null differ diff --git a/packs/weaknesses/000009.log b/packs/weaknesses/000014.log similarity index 100% rename from packs/weaknesses/000009.log rename to packs/weaknesses/000014.log diff --git a/packs/weaknesses/000016.ldb b/packs/weaknesses/000016.ldb new file mode 100644 index 0000000..633d48a Binary files /dev/null and b/packs/weaknesses/000016.ldb differ diff --git a/packs/weaknesses/CURRENT b/packs/weaknesses/CURRENT index 875cf23..ef20c6d 100644 --- a/packs/weaknesses/CURRENT +++ b/packs/weaknesses/CURRENT @@ -1 +1 @@ -MANIFEST-000007 +MANIFEST-000012 diff --git a/packs/weaknesses/LOG b/packs/weaknesses/LOG index df00be0..a3bc01c 100644 --- a/packs/weaknesses/LOG +++ b/packs/weaknesses/LOG @@ -1,13 +1,14 @@ -2024/05/31-12:37:50.133633 7f20acc006c0 Recovering log #6 -2024/05/31-12:37:50.185827 7f20acc006c0 Delete type=0 #6 -2024/05/31-12:37:50.185917 7f20acc006c0 Delete type=3 #4 -2024/05/31-12:57:42.319061 7f20a5a006c0 Level-0 table #10: started -2024/05/31-12:57:42.319098 7f20a5a006c0 Level-0 table #10: 0 bytes OK -2024/05/31-12:57:42.325607 7f20a5a006c0 Delete type=0 #8 -2024/05/31-12:57:42.345684 7f20a5a006c0 Manual compaction at level-0 from '!items!FxCIbJm3T44kC0sG' @ 72057594037927935 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at '!items!VDYXsT8AZ6krv93p' @ 4 : 1 -2024/05/31-12:57:42.345699 7f20a5a006c0 Compacting 1@0 + 0@1 files -2024/05/31-12:57:42.349053 7f20a5a006c0 Generated table #11@0: 4 keys, 837 bytes -2024/05/31-12:57:42.349088 7f20a5a006c0 Compacted 1@0 + 0@1 files => 837 bytes -2024/05/31-12:57:42.355720 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] -2024/05/31-12:57:42.355816 7f20a5a006c0 Delete type=2 #5 -2024/05/31-12:57:42.386362 7f20a5a006c0 Manual compaction at level-0 from '!items!VDYXsT8AZ6krv93p' @ 4 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at (end) +2025/05/02-18:33:12.422912 7f8a97fff6c0 Recovering log #9 +2025/05/02-18:33:12.433805 7f8a97fff6c0 Delete type=0 #9 +2025/05/02-18:33:12.433884 7f8a97fff6c0 Delete type=3 #7 +2025/05/02-18:57:05.858128 7f8a967fc6c0 Level-0 table #15: started +2025/05/02-18:57:05.861347 7f8a967fc6c0 Level-0 table #15: 850 bytes OK +2025/05/02-18:57:05.868519 7f8a967fc6c0 Delete type=0 #13 +2025/05/02-18:57:05.902236 7f8a967fc6c0 Manual compaction at level-0 from '!items!FxCIbJm3T44kC0sG' @ 72057594037927935 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at '!items!VDYXsT8AZ6krv93p' @ 12 : 1 +2025/05/02-18:57:05.902256 7f8a967fc6c0 Compacting 1@0 + 1@1 files +2025/05/02-18:57:05.908428 7f8a967fc6c0 Generated table #16@0: 4 keys, 850 bytes +2025/05/02-18:57:05.908475 7f8a967fc6c0 Compacted 1@0 + 1@1 files => 850 bytes +2025/05/02-18:57:05.920970 7f8a967fc6c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2025/05/02-18:57:05.921175 7f8a967fc6c0 Delete type=2 #11 +2025/05/02-18:57:05.921455 7f8a967fc6c0 Delete type=2 #15 +2025/05/02-18:57:05.945349 7f8a967fc6c0 Manual compaction at level-0 from '!items!VDYXsT8AZ6krv93p' @ 12 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at (end) diff --git a/packs/weaknesses/LOG.old b/packs/weaknesses/LOG.old index e41336d..df00be0 100644 --- a/packs/weaknesses/LOG.old +++ b/packs/weaknesses/LOG.old @@ -1,5 +1,13 @@ -2024/05/31-12:37:00.223304 7f04bfe006c0 Recovering log #3 -2024/05/31-12:37:00.223338 7f04bfe006c0 Level-0 table #5: started -2024/05/31-12:37:00.234424 7f04bfe006c0 Level-0 table #5: 965 bytes OK -2024/05/31-12:37:00.281050 7f04bfe006c0 Delete type=0 #3 -2024/05/31-12:37:00.281171 7f04bfe006c0 Delete type=3 #2 +2024/05/31-12:37:50.133633 7f20acc006c0 Recovering log #6 +2024/05/31-12:37:50.185827 7f20acc006c0 Delete type=0 #6 +2024/05/31-12:37:50.185917 7f20acc006c0 Delete type=3 #4 +2024/05/31-12:57:42.319061 7f20a5a006c0 Level-0 table #10: started +2024/05/31-12:57:42.319098 7f20a5a006c0 Level-0 table #10: 0 bytes OK +2024/05/31-12:57:42.325607 7f20a5a006c0 Delete type=0 #8 +2024/05/31-12:57:42.345684 7f20a5a006c0 Manual compaction at level-0 from '!items!FxCIbJm3T44kC0sG' @ 72057594037927935 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at '!items!VDYXsT8AZ6krv93p' @ 4 : 1 +2024/05/31-12:57:42.345699 7f20a5a006c0 Compacting 1@0 + 0@1 files +2024/05/31-12:57:42.349053 7f20a5a006c0 Generated table #11@0: 4 keys, 837 bytes +2024/05/31-12:57:42.349088 7f20a5a006c0 Compacted 1@0 + 0@1 files => 837 bytes +2024/05/31-12:57:42.355720 7f20a5a006c0 compacted to: files[ 0 1 0 0 0 0 0 ] +2024/05/31-12:57:42.355816 7f20a5a006c0 Delete type=2 #5 +2024/05/31-12:57:42.386362 7f20a5a006c0 Manual compaction at level-0 from '!items!VDYXsT8AZ6krv93p' @ 4 : 1 .. '!items!VDYXsT8AZ6krv93p' @ 0 : 0; will stop at (end) diff --git a/packs/weaknesses/MANIFEST-000007 b/packs/weaknesses/MANIFEST-000007 deleted file mode 100644 index 0b726fc..0000000 Binary files a/packs/weaknesses/MANIFEST-000007 and /dev/null differ diff --git a/packs/weaknesses/MANIFEST-000012 b/packs/weaknesses/MANIFEST-000012 new file mode 100644 index 0000000..9ff12da Binary files /dev/null and b/packs/weaknesses/MANIFEST-000012 differ diff --git a/styles/simple.css b/styles/simple.css index fcedc08..d7eecbc 100644 --- a/styles/simple.css +++ b/styles/simple.css @@ -7,7 +7,7 @@ font-family: "Neuropol"; src: url('../fonts/neuropol.ttf') format("truetype"); } - + :root { /* =================== 1. ACTOR SHEET FONT STYLES =========== */ --window-header-title-font-family: Neuropol; @@ -36,7 +36,7 @@ --actor-label-font-weight: 700; --actor-label-color: #464331c4; - /* =================== 2. DEBUGGING HIGHLIGHTERS ============ */ + /* =================== 2. DEBUGGING HIGHLIGHTERS ============ */ --debug-background-color-red: #ff000054; --debug-background-color-blue: #1d00ff54; --debug-background-color-green: #54ff0054; @@ -46,7 +46,6 @@ --debug-box-shadow-green: inset 0 0 2px green; } -/*@import url("https://fonts.googleapis.com/css2?family=Martel:wght@400;800&family=Roboto:wght@300;400;500&display=swap");*/ /* Global styles & Font */ .window-app { font-family: Garamond; @@ -62,7 +61,7 @@ } /* For title, sidebar character and scene */ .sheet nav.sheet-tabs {font-family: "Garamond";} /* For nav and title */ -.window-app input, .foundryvtt-shadows-over-sol .item-form, .sheet header.sheet-header .flex-group-center.flex-compteurs, .sheet header.sheet-header .flex-group-center.flex-fatigue, select, button, .item-checkbox, #sidebar, #players, #navigation #nav-toggle { +.window-app input, .foundryvtt-shadows-over-sol .item-form, .sheet header.sheet-header .flex-group-center.flex-compteurs, .sheet header.sheet-header .flex-group-center.flex-fatigue { font-family: "Garamond"; /* For sheet parts */ } @@ -241,7 +240,7 @@ table {border: 1px solid #7a7971;} .card-icon { height: 128px; width: 90px !important; - flex-grow: 1; + flex-grow: 1; } .card-img { height: 128px; @@ -558,7 +557,7 @@ ul, li { box-shadow: inset 0px 0px 1px #00000096; border-radius: 0.25rem; padding: 0.125rem; - flex: 1 1 5rem; + flex: 1 1 5rem; background: rgba(195, 152, 22, 0.5); } @@ -674,10 +673,10 @@ ul, li { margin-right: 0.25rem; margin-left: 0.25rem; } -.blessures-title { +.blessures-title { font-weight: bold; } -.alchimie-title { +.alchimie-title { font-weight: bold; } .blessure-data { @@ -724,7 +723,7 @@ ul, li { /* ======================================== */ .tokenhudext { - display: flex; + display: flex; flex: 0 !important; font-family: Neuropol; font-weight: 600; @@ -826,7 +825,7 @@ ul, li { .sidebar-tab .directory-list .entity { border-top: 1px dashed rgba(0,0,0,0.25); border-bottom: 0 none; - padding: 0.25rem 0; + padding: 0.25rem 0; } .sidebar-tab .directory-list .entity:hover { @@ -924,7 +923,7 @@ ul, li { border-radius: 0px; } -#hotbar .bar-controls { +#hotbar .bar-controls { background: rgba(30, 25, 20, 1); border: 1px solid rgba(72, 46, 28, 1); } @@ -976,12 +975,12 @@ ul, li { /* Tooltip text */ .tooltip .tooltiptext { text-align: center; - + /* Position the tooltip text */ top: 20px; position: absolute; z-index: 1; - + /* Fade in tooltip */ visibility: hidden; opacity: 0; @@ -990,7 +989,7 @@ ul, li { .tooltip .ttt-fatigue{ width: 360px; - + background: rgba(30, 25, 20, 0.9); /*border-image: url(img/ui/bg_control.jpg) 21 repeat;*/ border-image-slice: 6 6 6 6 fill; diff --git a/system.json b/system.json index 15d6116..9711a62 100644 --- a/system.json +++ b/system.json @@ -4,10 +4,10 @@ "description": "Shadows over Sol for FoundryVTT", "url": "https://www.uberwald.me/gitea/public/foundryvtt-shadows-over-sol/", "license": "LICENSE.txt", - "version": "12.0.0", + "version": "13.0.0", "compatibility": { - "minimum": "11", - "verified": "12" + "minimum": "13", + "verified": "13" }, "esmodules": [ "module/sos-main.js" @@ -107,8 +107,8 @@ } ], "socket": true, - "manifest": "https://www.uberwald.me/gitea/public/foundryvtt-shadows-over-sol/raw/branch/v10/system.json", - "download": "https://www.uberwald.me/gitea/public/foundryvtt-shadows-over-sol/archive/foundryvtt-shadows-over-sol-12.0.0.zip", + "manifest": "https://www.uberwald.me/gitea/public/foundryvtt-shadows-over-sol/raw/branch/main/system.json", + "download": "https://www.uberwald.me/gitea/public/foundryvtt-shadows-over-sol/archive/foundryvtt-shadows-over-sol-13.0.0.zip", "grid": { "distance": 5, "units": "ft"