Compare commits
8 Commits
fvtt-dark-
...
fvtt-dark-
| Author | SHA1 | Date | |
|---|---|---|---|
| c7ccc50db0 | |||
| 1f8275e153 | |||
| e19e6df228 | |||
| 714485b688 | |||
| ceed6efc0b | |||
| 06e265586b | |||
| 78edf6b80b | |||
| 60112d1a79 |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -8,7 +8,3 @@ todo.md
|
||||
/jsconfig.json
|
||||
/package.json
|
||||
/package-lock.json
|
||||
/packs/*/
|
||||
/packs/*/CURRENT
|
||||
/packs/*/LOG
|
||||
/packs/*/LOCK
|
||||
|
||||
@@ -40,6 +40,7 @@ export class DarkStarsActorSheet extends ActorSheet {
|
||||
skills: this.actor.getSkills( ),
|
||||
perks: this.actor.getPerks( ),
|
||||
weapons: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getWeapons()) ),
|
||||
ammos: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getAmmos()) ),
|
||||
armors: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getArmors())),
|
||||
shields: this.actor.checkAndPrepareEquipments( duplicate(this.actor.getShields())),
|
||||
equipments: this.actor.checkAndPrepareEquipments(duplicate(this.actor.getEquipmentsOnly()) ),
|
||||
@@ -109,6 +110,11 @@ export class DarkStarsActorSheet extends ActorSheet {
|
||||
this.actor.delSubActor(actorId);
|
||||
});
|
||||
|
||||
html.find('.edit-weapon-ammo').change(ev => {
|
||||
const li = $(ev.currentTarget).parents(".item")
|
||||
let weaponId = li.data("item-id")
|
||||
this.actor.setWeaponAmmo( weaponId, ev.currentTarget.value )
|
||||
})
|
||||
html.find('.skill-used-id').change(event => {
|
||||
const li = $(event.currentTarget).parents(".item");
|
||||
this.actor.setSkillUsed( li.data("item-id"), event.currentTarget.checked );
|
||||
|
||||
@@ -87,6 +87,11 @@ export class DarkStarsActor extends Actor {
|
||||
deriv.si.value = Math.round( ((attr.dex.value + attr.sel.value) / 5) + 0.5) + deriv.si.bonus
|
||||
|
||||
secondary.hp.max = ((attr.con.value + attr.siz.value ) * 2) + secondary.hp.bonus
|
||||
for(let key in this.system.hitlocations) {
|
||||
let loc = this.system.hitlocations[key]
|
||||
loc.max = Math.floor(secondary.hp.max * loc.ratio)
|
||||
}
|
||||
|
||||
secondary.fp.max = 10 + attr.str.value + attr.con.value + secondary.fp.bonus
|
||||
}
|
||||
|
||||
@@ -158,6 +163,13 @@ export class DarkStarsActor extends Actor {
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
checkAndPrepareEquipment(item) {
|
||||
// Dynamic assign ammo for the weapon
|
||||
if (item.type == "weapon" && item.system.needammo) {
|
||||
let ammo = this.items.find(ammo => ammo.type == "ammo" && item.system.ammoid == ammo.id)
|
||||
if (ammo) {
|
||||
item.ammo = duplicate(ammo)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -177,6 +189,12 @@ export class DarkStarsActor extends Actor {
|
||||
/* -------------------------------------------- */
|
||||
getWeapons() {
|
||||
let comp = duplicate(this.items.filter(item => item.type == 'weapon') || []);
|
||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||
return comp;
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getAmmos() {
|
||||
let comp = duplicate(this.items.filter(item => item.type == 'ammo') || []);
|
||||
DarkStarsUtility.sortArrayObjectsByName(comp)
|
||||
return comp;
|
||||
}
|
||||
@@ -188,7 +206,13 @@ export class DarkStarsActor extends Actor {
|
||||
}
|
||||
return item;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
setWeaponAmmo(weaponId, ammoId) {
|
||||
let weapon = this.items.get(weaponId)
|
||||
if(weapon) {
|
||||
this.updateEmbeddedDocuments('Item', [ {_id: weapon.id, 'system.ammoid': ammoId} ])
|
||||
}
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
setSkillUsed( skillId, checked) {
|
||||
let skill = this.items.get(skillId)
|
||||
@@ -391,12 +415,14 @@ export class DarkStarsActor extends Actor {
|
||||
}
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getInitiativeScore(combatId, combatantId) {
|
||||
if (this.type == 'character') {
|
||||
this.rollMR(true, combatId, combatantId)
|
||||
}
|
||||
console.log("Init required !!!!")
|
||||
return -1;
|
||||
hasLastWord() {
|
||||
return this.items.find(i => i.type == "perk" && i.name.toLowerCase() === "last word")
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
getInitiativeScore() {
|
||||
let initFormula = (this.system.derivated.si.value + this.system.derivated.si.bonus) + "d6"
|
||||
let initRoll = new Roll(initFormula).roll({ async: false })
|
||||
return initRoll.total
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@@ -622,6 +648,7 @@ export class DarkStarsActor extends Actor {
|
||||
rollData.mode = "weapon"
|
||||
rollData.skill = skill
|
||||
rollData.weapon = weapon
|
||||
this.checkAndPrepareEquipment(weapon)
|
||||
rollData.img = weapon.img
|
||||
this.startRoll(rollData)
|
||||
} else {
|
||||
|
||||
@@ -2,29 +2,46 @@ import { DarkStarsUtility } from "./dark-stars-utility.js";
|
||||
|
||||
/* -------------------------------------------- */
|
||||
export class DarkStarsCombat extends Combat {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollInitiative(ids, formula = undefined, messageOptions = {} ) {
|
||||
ids = typeof ids === "string" ? [ids] : ids;
|
||||
for (let cId = 0; cId < ids.length; cId++) {
|
||||
const c = this.combatants.get(ids[cId]);
|
||||
let id = c._id || c.id;
|
||||
let initBonus = c.actor ? c.actor.getInitiativeScore( this.id, id ) : -1;
|
||||
await this.updateEmbeddedDocuments("Combatant", [ { _id: id, initiative: initBonus } ]);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
processOtherTurns(c, initScore) {
|
||||
let toCreate = []
|
||||
let token = canvas.tokens.get(c.tokenId)
|
||||
let hasLastWord = token.actor.hasLastWord()
|
||||
while ( (initScore > 5) || (hasLastWord && initScore >= 5)) {
|
||||
initScore -= 5;
|
||||
toCreate.push({tokenId: c.tokenId, sceneId: c.sceneId, actorId: c.actorId, hidden: c.hidden, initiative: initScore, flags: { world: { isDuplicated: true} } } );
|
||||
}
|
||||
this.createEmbeddedDocuments("Combatant", toCreate);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
async rollInitiative(ids, formula = undefined, messageOptions = {}) {
|
||||
ids = typeof ids === "string" ? [ids] : ids;
|
||||
for (let cId of ids) {
|
||||
const c = this.combatants.get(cId);
|
||||
let id = c._id || c.id;
|
||||
let initScore = c.actor ? c.actor.getInitiativeScore(this.id, id) : -1;
|
||||
await this.updateEmbeddedDocuments("Combatant", [{ _id: id, initiative: initScore }]);
|
||||
setTimeout(() => this.processOtherTurns(c, initScore), 400)
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
nextRound() {
|
||||
super.nextRound()
|
||||
let toDelete = []
|
||||
for (let c of this.combatants) {
|
||||
if (c.flags?.world?.isDuplicated) {
|
||||
toDelete.push(c._id)
|
||||
}
|
||||
}
|
||||
this.deleteEmbeddedDocuments("Combatant", toDelete);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
_onUpdate(changed, options, userId) {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async checkTurnPosition() {
|
||||
while (game.combat.turn > 0) {
|
||||
await game.combat.previousTurn()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ export class DarkStarsUtility {
|
||||
Handlebars.registerHelper('locationLabel', function (key) {
|
||||
return __locationNames[key]
|
||||
})
|
||||
|
||||
|
||||
|
||||
this.gameSettings()
|
||||
|
||||
@@ -240,14 +240,14 @@ export class DarkStarsUtility {
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static getAimingMalus(location) {
|
||||
static getAimingMalus(location) {
|
||||
if (location == "arm" || location == "head") {
|
||||
return -50
|
||||
}
|
||||
if (location == "torso" || location == "leg") {
|
||||
return -30
|
||||
}
|
||||
if (location == "hand" ) {
|
||||
if (location == "hand") {
|
||||
return -70
|
||||
}
|
||||
return 0
|
||||
@@ -255,14 +255,22 @@ export class DarkStarsUtility {
|
||||
/* -------------------------------------------- */
|
||||
static getAimingLocation(roll) {
|
||||
if (roll == 1) return "head"
|
||||
if (roll >=2 && roll <=4 ) return "chest"
|
||||
if (roll >=5 && roll <=6 ) return "abdomen"
|
||||
if (roll == 7 ) return "leftarm"
|
||||
if (roll == 8 ) return "rightarm"
|
||||
if (roll == 9 ) return "rightleg"
|
||||
if (roll == 10 ) return "leftleg"
|
||||
if (roll >= 2 && roll <= 4) return "chest"
|
||||
if (roll >= 5 && roll <= 6) return "abdomen"
|
||||
if (roll == 7) return "leftarm"
|
||||
if (roll == 8) return "rightarm"
|
||||
if (roll == 9) return "rightleg"
|
||||
if (roll == 10) return "leftleg"
|
||||
return "abdomen"
|
||||
}
|
||||
/* -------------------------------------------- */
|
||||
static locationMultiplier(location) {
|
||||
if (location == "head") return 0.3
|
||||
if (location.includes("arm")) return 0.2
|
||||
if (location.includes("leg")) return 0.4
|
||||
if (location == "chest") return 0.5
|
||||
return 0.3 // Abdomen case
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static async rollDarkStars(rollData) {
|
||||
@@ -271,13 +279,13 @@ export class DarkStarsUtility {
|
||||
|
||||
// ability/save/size => 0
|
||||
rollData.percentValue = 0
|
||||
if ( rollData.skill ) {
|
||||
if (rollData.skill) {
|
||||
rollData.percentValue = rollData.skill.total
|
||||
}
|
||||
rollData.percentValue += rollData.bonusMalus
|
||||
rollData.percentValue += rollData.bonusMalus
|
||||
rollData.diceFormula = "1d100"
|
||||
|
||||
if (rollData.isAboveEffectiveRange) {
|
||||
if (rollData.isAboveEffectiveRange) {
|
||||
rollData.percentValue -= 30
|
||||
rollData.percentValue = Math.max(0, rollData.percentValue)
|
||||
}
|
||||
@@ -299,18 +307,23 @@ export class DarkStarsUtility {
|
||||
rollData.isCriticalFailure = rollData.diceResult == 100
|
||||
rollData.isSuccess = rollData.diceResult == 1 || rollData.diceResult <= rollData.percentValue
|
||||
rollData.isFailure = rollData.diceResult == 100 || rollData.diceResult > rollData.percentValue
|
||||
rollData.degrees = Math.floor(rollData.percentValue/10) - Math.floor(rollData.diceResult/10)
|
||||
|
||||
rollData.degrees = Math.floor(rollData.percentValue / 10) - Math.floor(rollData.diceResult / 10)
|
||||
rollData.damageMultiplier = rollData.isCriticalSuccess ? 2 : 1
|
||||
|
||||
if (rollData.reroll) {
|
||||
actor.modifyRerolls(-1)
|
||||
rollData.rerolls = 0 // DIsable rerolls
|
||||
}
|
||||
|
||||
if (rollData.weaponAiming == "none" ) {
|
||||
let rollLoc = new Roll("1d10").roll({async: false})
|
||||
rollData.weaponAiming = this.getAimingLocation(rollLoc.total)
|
||||
if (rollData.mode == "weapon") {
|
||||
if (rollData.weaponAiming == "none") {
|
||||
let rollLoc = new Roll("1d10").roll({ async: false })
|
||||
rollData.weaponAiming = this.getAimingLocation(rollLoc.total)
|
||||
}
|
||||
// Compute
|
||||
rollData.locationMultiplier = this.locationMultiplier(rollData.weaponAiming)
|
||||
}
|
||||
|
||||
|
||||
let msg = await this.createChatWithRollMode(rollData.alias, {
|
||||
content: await renderTemplate(`systems/fvtt-dark-stars/templates/chat/chat-generic-result.hbs`, rollData)
|
||||
})
|
||||
@@ -418,7 +431,7 @@ export class DarkStarsUtility {
|
||||
let rollData = {
|
||||
rollId: randomID(16),
|
||||
rollMode: game.settings.get("core", "rollMode"),
|
||||
bonusMalus : 0,
|
||||
bonusMalus: 0,
|
||||
isAboveEffectiveRange: false,
|
||||
weaponAiming: "none"
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:21:21.592351 7f81067fc6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.605971 7f81067fc6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.606020 7f81067fc6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.423091 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.423116 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.429490 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.429754 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:21:29.429781 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.391876 7fc51a7fc6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.406730 7fc51a7fc6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.406904 7fc51a7fc6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.134268 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.134315 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.142035 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.168857 7fc299bff6c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/24-07:04:13.168941 7fc299bff6c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:19:52.584026 7f8106ffd6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.594122 7f8106ffd6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.594261 7f8106ffd6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.319162 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.319186 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.328276 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.360058 7f7e677006c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:20:09.360132 7f7e677006c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.818735 7fc51b7fe6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.828413 7fc51b7fe6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.828468 7fc51b7fe6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.235245 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.235287 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.288685 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.402896 7fc299bff6c0 Manual compaction at level-0 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:38:21.445657 7fc299bff6c0 Manual compaction at level-1 from '!items!3O3MjRkrmX4HeaPY' @ 72057594037927935 : 1 .. '!items!q9JGWL4y4udYrzvD' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:21:21.649569 7f81067fc6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.659028 7f81067fc6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.659086 7f81067fc6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.450398 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.450420 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.457998 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.458158 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.461489 7fc51a7fc6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.476262 7fc51a7fc6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.476363 7fc51a7fc6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.180225 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.180270 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.188564 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.206576 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:19:52.637604 7f8106ffd6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.647527 7f8106ffd6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.647580 7f8106ffd6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.288792 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.288837 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.295889 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.319037 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.866233 7fc51b7fe6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.876627 7fc51b7fe6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.876726 7fc51b7fe6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.562992 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.563052 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.606768 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.649491 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:21:21.661284 7f8105ffb6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.672219 7f8105ffb6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.672266 7f8105ffb6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.471453 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.471474 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.477920 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.485644 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.478831 7fc51b7fe6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.493332 7fc51b7fe6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.493444 7fc51b7fe6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.169114 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.169161 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.180064 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.206554 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:19:52.652211 7f8105ffb6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.662437 7f8105ffb6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.662513 7f8105ffb6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.296001 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.296025 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.303698 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.319048 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.878355 7fc51a7fc6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.889689 7fc51a7fc6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.889751 7fc51a7fc6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.520237 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.520269 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.562758 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.649457 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
BIN
packs/cybernetics/000005.ldb
Normal file
BIN
packs/cybernetics/000005.ldb
Normal file
Binary file not shown.
1
packs/cybernetics/CURRENT
Normal file
1
packs/cybernetics/CURRENT
Normal file
@@ -0,0 +1 @@
|
||||
MANIFEST-000046
|
||||
0
packs/cybernetics/LOCK
Normal file
0
packs/cybernetics/LOCK
Normal file
8
packs/cybernetics/LOG
Normal file
8
packs/cybernetics/LOG
Normal file
@@ -0,0 +1,8 @@
|
||||
2023/10/23-23:27:50.534411 7fc51a7fc6c0 Recovering log #44
|
||||
2023/10/23-23:27:50.547268 7fc51a7fc6c0 Delete type=3 #42
|
||||
2023/10/23-23:27:50.547364 7fc51a7fc6c0 Delete type=0 #44
|
||||
2023/10/24-07:04:13.206805 7fc299bff6c0 Level-0 table #49: started
|
||||
2023/10/24-07:04:13.206870 7fc299bff6c0 Level-0 table #49: 0 bytes OK
|
||||
2023/10/24-07:04:13.213996 7fc299bff6c0 Delete type=0 #47
|
||||
2023/10/24-07:04:13.214197 7fc299bff6c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
|
||||
2023/10/24-07:04:13.214231 7fc299bff6c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
|
||||
8
packs/cybernetics/LOG.old
Normal file
8
packs/cybernetics/LOG.old
Normal file
@@ -0,0 +1,8 @@
|
||||
2023/10/23-16:21:18.916086 7fc51b7fe6c0 Recovering log #40
|
||||
2023/10/23-16:21:18.926380 7fc51b7fe6c0 Delete type=3 #38
|
||||
2023/10/23-16:21:18.926444 7fc51b7fe6c0 Delete type=0 #40
|
||||
2023/10/23-16:38:21.687516 7fc299bff6c0 Level-0 table #45: started
|
||||
2023/10/23-16:38:21.687571 7fc299bff6c0 Level-0 table #45: 0 bytes OK
|
||||
2023/10/23-16:38:21.736925 7fc299bff6c0 Delete type=0 #43
|
||||
2023/10/23-16:38:21.737272 7fc299bff6c0 Manual compaction at level-0 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:38:21.737344 7fc299bff6c0 Manual compaction at level-1 from '!items!0JlVJvgxQQWY8lpO' @ 72057594037927935 : 1 .. '!items!zjxV4mcELwbZU8Et' @ 0 : 0; will stop at (end)
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:21:21.608294 7f8105ffb6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.621354 7f8105ffb6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.621556 7f8105ffb6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.429880 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.429923 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.436342 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.458121 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.410339 7fc51b7fe6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.422120 7fc51b7fe6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.422217 7fc51b7fe6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.161070 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.161129 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.168664 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.168925 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:19:52.596990 7f8105ffb6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.606316 7f8105ffb6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.606355 7f8105ffb6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.265453 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.265478 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.272936 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.288595 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.830319 7fc51a7fc6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.840025 7fc51a7fc6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.840086 7fc51a7fc6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.349441 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.349501 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.402714 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.445484 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
0
packs/genetics/000004.log
Normal file
0
packs/genetics/000004.log
Normal file
1
packs/genetics/CURRENT
Normal file
1
packs/genetics/CURRENT
Normal file
@@ -0,0 +1 @@
|
||||
MANIFEST-000002
|
||||
0
packs/genetics/LOCK
Normal file
0
packs/genetics/LOCK
Normal file
5
packs/genetics/LOG
Normal file
5
packs/genetics/LOG
Normal file
@@ -0,0 +1,5 @@
|
||||
2023/10/19-11:34:56.763463 7f8105ffb6c0 Delete type=3 #1
|
||||
2023/10/19-11:42:11.816999 7f7e677006c0 Level-0 table #5: started
|
||||
2023/10/19-11:42:11.817033 7f7e677006c0 Level-0 table #5: 0 bytes OK
|
||||
2023/10/19-11:42:11.824095 7f7e677006c0 Delete type=0 #3
|
||||
2023/10/19-11:42:11.824348 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
BIN
packs/genetics/MANIFEST-000002
Normal file
BIN
packs/genetics/MANIFEST-000002
Normal file
Binary file not shown.
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:21:21.686224 7f81077fe6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.695950 7f81077fe6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.696001 7f81077fe6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.464823 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.464848 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.471318 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.485633 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:21:29.485659 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.513819 7fc51bfff6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.529859 7fc51bfff6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.530088 7fc51bfff6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.188715 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.188752 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.198296 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.206600 7fc299bff6c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/24-07:04:13.206646 7fc299bff6c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:19:52.677440 7f81067fc6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.687648 7f81067fc6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.687706 7f81067fc6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.311815 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.311835 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.318909 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.319074 7f7e677006c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:20:09.319094 7f7e677006c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.903797 7fc51affd6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.914282 7fc51affd6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.914341 7fc51affd6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.649612 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.649693 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.687274 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.737212 7fc299bff6c0 Manual compaction at level-0 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:38:21.737295 7fc299bff6c0 Manual compaction at level-1 from '!items!0LA7gMBDogO56AZK' @ 72057594037927935 : 1 .. '!items!zwZoHMkWYtMCNx9f' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:21:21.623245 7f8106ffd6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.634568 7f8106ffd6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.634612 7f8106ffd6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.436593 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.436653 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.443853 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.458132 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.426680 7fc51affd6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.441090 7fc51affd6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.441243 7fc51affd6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.151969 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.152034 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.160843 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.168906 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
2023/10/19-14:19:52.608998 7f81077fe6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.618936 7f81077fe6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.619022 7f81077fe6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.273109 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.273154 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.279774 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.288612 7f7e677006c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.841422 7fc51bfff6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.851392 7fc51bfff6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.851494 7fc51bfff6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.402937 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.402989 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.445303 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.520208 7fc299bff6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000082
|
||||
MANIFEST-000118
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:21:21.674379 7f8106ffd6c0 Recovering log #80
|
||||
2023/10/19-14:21:21.684244 7f8106ffd6c0 Delete type=3 #78
|
||||
2023/10/19-14:21:21.684289 7f8106ffd6c0 Delete type=0 #80
|
||||
2023/10/19-14:21:29.458222 7f7e677006c0 Level-0 table #85: started
|
||||
2023/10/19-14:21:29.458243 7f7e677006c0 Level-0 table #85: 0 bytes OK
|
||||
2023/10/19-14:21:29.464567 7f7e677006c0 Delete type=0 #83
|
||||
2023/10/19-14:21:29.485621 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:21:29.485652 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.495684 7fc51affd6c0 Recovering log #116
|
||||
2023/10/23-23:27:50.509347 7fc51affd6c0 Delete type=3 #114
|
||||
2023/10/23-23:27:50.509455 7fc51affd6c0 Delete type=0 #116
|
||||
2023/10/24-07:04:13.198474 7fc299bff6c0 Level-0 table #121: started
|
||||
2023/10/24-07:04:13.198516 7fc299bff6c0 Level-0 table #121: 0 bytes OK
|
||||
2023/10/24-07:04:13.206393 7fc299bff6c0 Delete type=0 #119
|
||||
2023/10/24-07:04:13.206623 7fc299bff6c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/24-07:04:13.206665 7fc299bff6c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:19:52.664543 7f81077fe6c0 Recovering log #76
|
||||
2023/10/19-14:19:52.674507 7f81077fe6c0 Delete type=3 #74
|
||||
2023/10/19-14:19:52.674550 7f81077fe6c0 Delete type=0 #76
|
||||
2023/10/19-14:20:09.303815 7f7e677006c0 Level-0 table #81: started
|
||||
2023/10/19-14:20:09.303835 7f7e677006c0 Level-0 table #81: 0 bytes OK
|
||||
2023/10/19-14:20:09.311711 7f7e677006c0 Delete type=0 #79
|
||||
2023/10/19-14:20:09.319064 7f7e677006c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:20:09.319087 7f7e677006c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.891042 7fc51bfff6c0 Recovering log #112
|
||||
2023/10/23-16:21:18.901616 7fc51bfff6c0 Delete type=3 #110
|
||||
2023/10/23-16:21:18.901698 7fc51bfff6c0 Delete type=0 #112
|
||||
2023/10/23-16:38:21.606929 7fc299bff6c0 Level-0 table #117: started
|
||||
2023/10/23-16:38:21.606959 7fc299bff6c0 Level-0 table #117: 0 bytes OK
|
||||
2023/10/23-16:38:21.649170 7fc299bff6c0 Delete type=0 #115
|
||||
2023/10/23-16:38:21.649544 7fc299bff6c0 Manual compaction at level-0 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:38:21.737175 7fc299bff6c0 Manual compaction at level-1 from '!items!5YJWuGaagmi1dgbv' @ 72057594037927935 : 1 .. '!items!yo7mOkfbbOogx8na' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1 +1 @@
|
||||
MANIFEST-000083
|
||||
MANIFEST-000119
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:21:21.636140 7f81077fe6c0 Recovering log #81
|
||||
2023/10/19-14:21:21.647041 7f81077fe6c0 Delete type=3 #79
|
||||
2023/10/19-14:21:21.647106 7f81077fe6c0 Delete type=0 #81
|
||||
2023/10/19-14:21:29.443983 7f7e677006c0 Level-0 table #86: started
|
||||
2023/10/19-14:21:29.444004 7f7e677006c0 Level-0 table #86: 0 bytes OK
|
||||
2023/10/19-14:21:29.450269 7f7e677006c0 Delete type=0 #84
|
||||
2023/10/19-14:21:29.458143 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:21:29.458168 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-23:27:50.444226 7fc51bfff6c0 Recovering log #117
|
||||
2023/10/23-23:27:50.457066 7fc51bfff6c0 Delete type=3 #115
|
||||
2023/10/23-23:27:50.457195 7fc51bfff6c0 Delete type=0 #117
|
||||
2023/10/24-07:04:13.142242 7fc299bff6c0 Level-0 table #122: started
|
||||
2023/10/24-07:04:13.142289 7fc299bff6c0 Level-0 table #122: 0 bytes OK
|
||||
2023/10/24-07:04:13.151711 7fc299bff6c0 Delete type=0 #120
|
||||
2023/10/24-07:04:13.168881 7fc299bff6c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/24-07:04:13.168957 7fc299bff6c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
2023/10/19-14:19:52.621240 7f81067fc6c0 Recovering log #77
|
||||
2023/10/19-14:19:52.633991 7f81067fc6c0 Delete type=3 #75
|
||||
2023/10/19-14:19:52.634214 7f81067fc6c0 Delete type=0 #77
|
||||
2023/10/19-14:20:09.352445 7f7e677006c0 Level-0 table #82: started
|
||||
2023/10/19-14:20:09.352506 7f7e677006c0 Level-0 table #82: 0 bytes OK
|
||||
2023/10/19-14:20:09.359851 7f7e677006c0 Delete type=0 #80
|
||||
2023/10/19-14:20:09.360117 7f7e677006c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/19-14:20:09.374760 7f7e677006c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:21:18.853136 7fc51affd6c0 Recovering log #113
|
||||
2023/10/23-16:21:18.864323 7fc51affd6c0 Delete type=3 #111
|
||||
2023/10/23-16:21:18.864379 7fc51affd6c0 Delete type=0 #113
|
||||
2023/10/23-16:38:21.445678 7fc299bff6c0 Level-0 table #118: started
|
||||
2023/10/23-16:38:21.445739 7fc299bff6c0 Level-0 table #118: 0 bytes OK
|
||||
2023/10/23-16:38:21.519996 7fc299bff6c0 Delete type=0 #116
|
||||
2023/10/23-16:38:21.606911 7fc299bff6c0 Manual compaction at level-0 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
2023/10/23-16:38:21.649518 7fc299bff6c0 Manual compaction at level-1 from '!items!265V8wzrrH3EEgtM' @ 72057594037927935 : 1 .. '!items!zx96NZdE3GrK999G' @ 0 : 0; will stop at (end)
|
||||
|
||||
@@ -1334,9 +1334,6 @@ Focus FOC: #ff0084
|
||||
.color-class-foc {
|
||||
background-color: #ff0084;
|
||||
}
|
||||
.color-class-common {
|
||||
background: rgba(185, 183, 40, 0.45);
|
||||
}
|
||||
.status-small-label {
|
||||
font-size: 0.65rem;
|
||||
}
|
||||
@@ -1420,26 +1417,31 @@ Focus FOC: #ff0084
|
||||
}
|
||||
.item-name-label-header-long {
|
||||
flex-grow:2;
|
||||
margin-top: 4px;
|
||||
max-width: 14rem;
|
||||
min-width: 14rem;
|
||||
}
|
||||
.item-name-label-header-long2 {
|
||||
flex-grow:2;
|
||||
margin-top: 4px;
|
||||
max-width: 24rem;
|
||||
min-width: 24rem;
|
||||
}
|
||||
.item-name-label {
|
||||
flex-grow:2;
|
||||
margin-top: 4px;
|
||||
max-width: 10rem;
|
||||
min-width: 10rem;
|
||||
}
|
||||
.item-name-label-long {
|
||||
flex-grow:2;
|
||||
margin-top: 4px;
|
||||
max-width: 12rem;
|
||||
min-width: 12rem;
|
||||
}
|
||||
.item-name-label-long2 {
|
||||
flex-grow:2;
|
||||
margin-top: 4px;
|
||||
max-width: 22rem;
|
||||
min-width: 22rem;
|
||||
}
|
||||
@@ -1493,7 +1495,9 @@ Focus FOC: #ff0084
|
||||
min-width:2rem;
|
||||
max-width: 2rem;
|
||||
}
|
||||
|
||||
.margin-left-4 {
|
||||
margin-left: 4px;
|
||||
}
|
||||
.dice-pool-stack {
|
||||
flex: 1 1 5rem;
|
||||
display: flex !important;
|
||||
@@ -1509,7 +1513,19 @@ Focus FOC: #ff0084
|
||||
margin-bottom: 1rem;
|
||||
background-color: #403f3e40;
|
||||
}
|
||||
|
||||
.stat-column-size {
|
||||
max-width: 12rem;
|
||||
min-width: 12rem;
|
||||
margin-right: 4px;
|
||||
}
|
||||
.derivated-column-size {
|
||||
max-width: 14rem;
|
||||
min-width: 14rem;
|
||||
margin-right: 4px;
|
||||
}
|
||||
.hplocation-column {
|
||||
margin-left: 4px;
|
||||
}
|
||||
.dice-pool-image {
|
||||
border: 0;
|
||||
margin-left: 4px;
|
||||
|
||||
@@ -109,14 +109,14 @@
|
||||
"styles": [
|
||||
"styles/simple.css"
|
||||
],
|
||||
"version": "11.0.6",
|
||||
"version": "11.0.11",
|
||||
"compatibility": {
|
||||
"minimum": "11",
|
||||
"verified": "11"
|
||||
},
|
||||
"title": "Dark Stars RPG",
|
||||
"manifest": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/raw/branch/main/system.json",
|
||||
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/archive/fvtt-dark-stars-v11.0.6.zip",
|
||||
"download": "https://www.uberwald.me/gitea/uberwald/fvtt-dark-stars/archive/fvtt-dark-stars-v11.0.11.zip",
|
||||
"url": "https://www.uberwald.me/gitea/uberwald/",
|
||||
"background": "images/ui/dark_stars_welcome_page.webp",
|
||||
"id": "fvtt-dark-stars"
|
||||
|
||||
@@ -173,6 +173,7 @@
|
||||
"hitlocations": {
|
||||
"head": {
|
||||
"label": "Head",
|
||||
"ratio": 0.3,
|
||||
"dice": [
|
||||
1
|
||||
],
|
||||
@@ -182,6 +183,7 @@
|
||||
},
|
||||
"chest": {
|
||||
"label": "Chest",
|
||||
"ratio": 0.5,
|
||||
"dice": [
|
||||
2,
|
||||
4
|
||||
@@ -192,6 +194,7 @@
|
||||
},
|
||||
"abdomen": {
|
||||
"label": "Abdomen",
|
||||
"ratio": 0.3,
|
||||
"dice": [
|
||||
5,
|
||||
6
|
||||
@@ -202,6 +205,7 @@
|
||||
},
|
||||
"leftarm": {
|
||||
"label": "Left Arm",
|
||||
"ratio": 0.2,
|
||||
"dice": [
|
||||
7
|
||||
],
|
||||
@@ -211,6 +215,7 @@
|
||||
},
|
||||
"rightarm": {
|
||||
"label": "Right Arm",
|
||||
"ratio": 0.2,
|
||||
"dice": [
|
||||
8
|
||||
],
|
||||
@@ -220,6 +225,7 @@
|
||||
},
|
||||
"rightleg": {
|
||||
"label": "Right Leg",
|
||||
"ratio": 0.4,
|
||||
"dice": [
|
||||
9
|
||||
],
|
||||
@@ -229,6 +235,7 @@
|
||||
},
|
||||
"leftleg": {
|
||||
"label": "Left Leg",
|
||||
"ratio": 0.4,
|
||||
"dice": [
|
||||
10
|
||||
],
|
||||
@@ -278,7 +285,8 @@
|
||||
"weapon",
|
||||
"money",
|
||||
"genetic",
|
||||
"cyber"
|
||||
"cyber",
|
||||
"ammo"
|
||||
],
|
||||
"skill": {
|
||||
"base": "",
|
||||
@@ -394,11 +402,24 @@
|
||||
"quantity": 0,
|
||||
"description": ""
|
||||
},
|
||||
"ammo": {
|
||||
"ava": "",
|
||||
"damage": "",
|
||||
"bulk": 0,
|
||||
"br": 0,
|
||||
"cost": 0,
|
||||
"sp": 0,
|
||||
"quantity": 0,
|
||||
"properties": ""
|
||||
},
|
||||
"weapon": {
|
||||
"weapontype": "",
|
||||
"associatedskill": "",
|
||||
"skill": "",
|
||||
"penetrationmin": "",
|
||||
"penetrationmax": "",
|
||||
"needammo": false,
|
||||
"ammoid": "",
|
||||
"hashpdamage": true,
|
||||
"damage": "",
|
||||
"hasfatiguedamage": false,
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<div class="tab main" data-group="primary" data-tab="main">
|
||||
|
||||
<div class="flexrow">
|
||||
<ul class="stat-list alternate-list item-list">
|
||||
<ul class="stat-list alternate-list item-list stat-column-size">
|
||||
{{#each system.attributes as |attr key|}}
|
||||
<li class="item stat flexrow list-item list-item-shadow">
|
||||
<label class="item-field-label-medium">{{attr.label}}</label>
|
||||
@@ -38,7 +38,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul class="stat-list alternate-list item-list">
|
||||
<ul class="stat-list alternate-list item-list derivated-column-size">
|
||||
{{#each system.derivated as |deriv key|}}
|
||||
<li class="item stat flexrow list-item list-item-shadow">
|
||||
<label class="item-field-label-medium">{{deriv.label}}</label>
|
||||
@@ -60,6 +60,26 @@
|
||||
<label class="item-field-label-short"> / {{second.max}}</label>
|
||||
{{/if}}
|
||||
<input type="text" class="item-field-label-short padd-right" name="system.secondary.{{key}}.bonus" value="{{second.bonus}}" data-dtype="Number"/>
|
||||
|
||||
{{#if (eq key "hp")}}
|
||||
<ul class="stat-list alternate-list item-list hplocation-column">
|
||||
<li class="item stat flexrow list-item list-item-shadow">
|
||||
<label class="item-field-label-short">Loc.</label>
|
||||
<label class="item-field-label-short">Cur</label>
|
||||
<label class="item-field-label-short">Max</label>
|
||||
<label class="item-field-label-short">Armor</label>
|
||||
</li>
|
||||
{{#each @root.system.hitlocations as |loc key|}}
|
||||
<li class="item stat flexrow list-item list-item-shadow">
|
||||
<label class="item-field-label-short">{{loc.label}}</label>
|
||||
<input type="text" class="item-field-label-short padd-right" name="system.hitlocations.{{key}}.value" value="{{loc.value}}" data-dtype="Number"/>
|
||||
<label class="item-field-label-short"> / {{loc.max}}</label>
|
||||
<input type="text" class="item-field-label-short padd-right" name="system.hitlocations.{{key}}.armor" value="{{loc.armor}}" data-dtype="Number"/>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
|
||||
{{/each}}
|
||||
</li>
|
||||
<li class="item stat flexrow list-item list-item-shadow">
|
||||
@@ -102,7 +122,7 @@
|
||||
<li class="item flexrow list-item list-item-shadow" data-item-id="{{skill._id}}">
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img" src="{{skill.img}}" />
|
||||
</a>
|
||||
<span class="item-field-label-vlong2"><a class="roll-skill">{{skill.name}}</a></span>
|
||||
<span class="item-field-label-vlong2"><i class="fa-solid fa-dice-d10"></i><a class="roll-skill">{{skill.name}}</a></span>
|
||||
<span class="item-field-label-medium">{{skill.system.value}}</span>
|
||||
<span class="item-field-label-long">{{skill.derivated.label}} ({{skill.derivated.value}})</span>
|
||||
<span class="item-field-label-medium">{{skill.system.bonus}}</span>
|
||||
@@ -125,6 +145,11 @@
|
||||
<span class="item-name-label-header-long2">
|
||||
<h3><label class="items-title-text">Perks</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Type</label>
|
||||
</span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label"> </label>
|
||||
</span>
|
||||
@@ -134,6 +159,8 @@
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img" src="{{perk.img}}" />
|
||||
</a>
|
||||
<span class="item-field-label-vlong2">{{perk.name}}</span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
||||
</div>
|
||||
@@ -150,37 +177,67 @@
|
||||
<div>
|
||||
<ul class="stat-list alternate-list">
|
||||
<li class="item flexrow list-item items-title-bg">
|
||||
<span class="item-name-label-header-long">
|
||||
<span class="item-name-label-header">
|
||||
<h3><label class="items-title-text">Weapons</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Type</label>
|
||||
</span>
|
||||
<span class="item-field-label-long">
|
||||
<label class="short-label">Skill</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<span class="item-field-label-long">
|
||||
<label class="short-label">Ammo</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium margin-left-4">
|
||||
<label class="short-label">Damage</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="short-label">BR</label>
|
||||
</span>
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Penetration</label>
|
||||
</span>
|
||||
</li>
|
||||
{{#each equippedWeapons as |weapon key|}}
|
||||
<li class="item flexrow list-item list-item-shadow" data-item-id="{{weapon._id}}">
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{weapon.img}}" /></a>
|
||||
<span class="item-name-label-long"><a class ="roll-weapon">{{weapon.name}}</a></span>
|
||||
<span class="item-name-label"><a class ="roll-weapon"><i class="fa-solid fa-dice-d10"></i>{{weapon.name}}</a></span>
|
||||
|
||||
<span class="item-field-label-short">{{upperFirst weapon.system.weapontype}}</span>
|
||||
<span class="item-field-label-medium">{{upperFirst weapon.system.weapontype}}</span>
|
||||
|
||||
<span class="item-field-label-long">{{weapon.system.skill}}</span>
|
||||
|
||||
<span class="item-field-label-long">{{weapon.system.damage}}</span>
|
||||
<span class="item-field-label-long">{{upperFirst weapon.system.skill}}</span>
|
||||
|
||||
{{#if weapon.system.needammo}}
|
||||
<select class="item-field-label-long edit-weapon-ammo" type="text" data-dtype="String">
|
||||
{{#select system.ammoid}}
|
||||
<option value="">None</option>
|
||||
{{#each @root.ammos as |ammo index|}}
|
||||
<option value="{{ammo._id}}">{{ammo.name}}</option>
|
||||
{{/each}}
|
||||
{{/select}}
|
||||
</select>
|
||||
{{#if weapon.ammo}}
|
||||
<span class="item-field-label-medium margin-left-4"><label>{{weapon.ammo.system.damage}}</label></span>
|
||||
{{else}}
|
||||
<span class="item-field-label-medium margin-left-4"><label>-</label></span>
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<span class="item-field-label-long"><label>N/A</label></span>
|
||||
<span class="item-field-label-medium margin-left-4"><label>{{weapon.system.damage}}</label></span>
|
||||
{{/if}}
|
||||
|
||||
<span class="item-field-label-short">{{weapon.system.br}}</span>
|
||||
|
||||
<span class="item-field-label-medium">{{weapon.system.penetrationmin}} - {{weapon.system.penetrationmax}}</span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
||||
</div>
|
||||
|
||||
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
@@ -296,12 +353,20 @@
|
||||
<span class="item-name-label-header">
|
||||
<h3><label class="items-title-text">Weapons</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Attack</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="short-label">Damage</label>
|
||||
|
||||
<span class="item-field-label-vlong">
|
||||
<label class="short-label">Ammo</label>
|
||||
</span>
|
||||
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Damage</label>
|
||||
</span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a>
|
||||
</div>
|
||||
@@ -311,8 +376,27 @@
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{weapon.img}}" /></a>
|
||||
<span class="item-name-label">{{weapon.name}}</span>
|
||||
<span class="item-field-label-short"><label>{{weapon.system.ability}}</label></span>
|
||||
<span class="item-field-label-short"><label>{{weapon.system.damage}}</label></span>
|
||||
|
||||
<span class="item-field-label-medium"><label>{{upperFirst weapon.system.weapontype}}</label></span>
|
||||
|
||||
{{#if weapon.system.needammo}}
|
||||
<select class="item-field-label-vlong edit-weapon-ammo" type="text" data-dtype="String">
|
||||
{{#select system.ammoid}}
|
||||
<option value="">None</option>
|
||||
{{#each @root.ammos as |ammo index|}}
|
||||
<option value="{{ammo._id}}">{{ammo.name}}</option>
|
||||
{{/each}}
|
||||
{{/select}}
|
||||
</select>
|
||||
{{#if weapon.ammo}}
|
||||
<span class="item-field-label-medium"><label>{{weapon.ammo.system.damage}}</label></span>
|
||||
{{else}}
|
||||
<span class="item-field-label-medium"><label>-</label></span>
|
||||
{{/if}}
|
||||
{{else}}
|
||||
<span class="item-field-label-vlong"><label>N/A</label></span>
|
||||
<span class="item-field-label-medium"><label>{{weapon.system.damage}}</label></span>
|
||||
{{/if}}
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
@@ -324,15 +408,47 @@
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
<ul class="item-list alternate-list">
|
||||
<li class="item flexrow list-item items-title-bg">
|
||||
<span class="item-name-label-header">
|
||||
<h3><label class="items-title-text">Ammos</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="short-label">Quantity</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<label class="short-label">Damage</label>
|
||||
</span>
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-add" data-type="weapon" title="Create Item"><i class="fas fa-plus"></i></a>
|
||||
</div>
|
||||
</li>
|
||||
{{#each ammos as |ammo key|}}
|
||||
<li class="item flexrow list-item list-item-shadow" data-item-id="{{ammo._id}}">
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{ammo.img}}" /></a>
|
||||
<span class="item-name-label">{{ammo.name}}</span>
|
||||
<span class="item-field-label-short"><label>{{ammo.system.quantity}}</label></span>
|
||||
<span class="item-field-label-short"><label>{{ammo.system.damage}}</label></span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
<a class="item-control item-delete" title="Delete Item"><i class="fas fa-trash"></i></a>
|
||||
</div>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
<ul class="item-list alternate-list">
|
||||
<li class="item flexrow list-item items-title-bg">
|
||||
<span class="item-name-label-header">
|
||||
<h3><label class="items-title-text">Armors</label></h3>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Type</label>
|
||||
</span>
|
||||
<span class="item-field-label-short">
|
||||
<span class="item-field-label-medium">
|
||||
<label class="short-label">Absorption</label>
|
||||
</span>
|
||||
|
||||
@@ -346,8 +462,8 @@
|
||||
<a class="item-edit item-name-img" title="Edit Item"><img class="sheet-competence-img"
|
||||
src="{{armor.img}}" /></a>
|
||||
<span class="item-name-label">{{armor.name}}</span>
|
||||
<span class="item-field-label-short">{{upper armor.system.armortype}}</span>
|
||||
<span class="item-field-label-short">{{armor.system.absorprionroll}}</span>
|
||||
<span class="item-field-label-medium">{{upper armor.system.armortype}}</span>
|
||||
<span class="item-field-label-medium">{{armor.system.absorprionroll}}</span>
|
||||
|
||||
<div class="item-filler"> </div>
|
||||
<div class="item-controls item-controls-fixed">
|
||||
|
||||
@@ -24,14 +24,13 @@
|
||||
{{/if}}
|
||||
{{#if weapon}}
|
||||
<li>Weapon : {{weapon.name}}</li>
|
||||
<li>Location hit : {{upperFirst weaponAiming}} ({{locationMalus}})</li>
|
||||
{{/if}}
|
||||
{{#if isAboveEffectiveRange}}
|
||||
<li>Above effective range: yes, -30% applied</li>
|
||||
{{/if}}
|
||||
|
||||
<li>Bonus/Malus: {{bonusMalus}}% </li>
|
||||
<li>Final score: {{percentValue}}% </li>
|
||||
<li>Target Number: {{percentValue}}% </li>
|
||||
<li>Result: {{diceResult}} </li>
|
||||
<li>Degrees: {{degrees}} </li>
|
||||
|
||||
@@ -50,12 +49,21 @@
|
||||
{{/if}}
|
||||
|
||||
{{#if (and weapon isSuccess)}}
|
||||
{{#if weapon.system.hashpdamage}}
|
||||
<li>Roll HP Damage: [[/r {{weapon.system.damage}}]]</li>
|
||||
{{/if}}
|
||||
{{#if weapon.system.hasfatiguedamage}}
|
||||
<li>Roll Fatigue Damage: [[/r {{weapon.system.fatiguedamage}}]]</li>
|
||||
<li>Location hit : {{upperFirst weaponAiming}} ({{locationMalus}})</li>
|
||||
{{#if weapon.ammo}}
|
||||
<li>Roll Ammo Damage ({{weapon.ammo.name}}): [[/r {{weapon.ammo.system.damage}}*{{damageMultiplier}}]]</li>
|
||||
<li>BR: {{weapon.ammo.system.br}}</li>
|
||||
|
||||
{{else}}
|
||||
{{#if weapon.system.hashpdamage}}
|
||||
<li>Roll HP Damage: [[/r {{weapon.system.damage}}*{{damageMultiplier}}]]</li>
|
||||
{{/if}}
|
||||
{{#if weapon.system.hasfatiguedamage}}
|
||||
<li>Roll Fatigue Damage: [[/r {{weapon.ammo.system.fatiguedamage}}*{{damageMultiplier}}]]</li>
|
||||
{{/if}}
|
||||
<li>BR: {{weapon.system.br}}</li>
|
||||
{{/if}}
|
||||
<li>Penetration : {{mul weapon.system.penetrationmin damageMultiplier}} - {{mul weapon.system.penetrationmax damageMultiplier}}</li>
|
||||
{{/if}}
|
||||
|
||||
{{#if (and (not isSuccess) rerolls)}}
|
||||
|
||||
56
templates/items/item-ammo-sheet.hbs
Normal file
56
templates/items/item-ammo-sheet.hbs
Normal file
@@ -0,0 +1,56 @@
|
||||
<form class="{{cssClass}}" autocomplete="off">
|
||||
<header class="sheet-header">
|
||||
<img class="item-sheet-img" src="{{img}}" data-edit="img" title="{{name}}"/>
|
||||
<div class="header-fields">
|
||||
<h1 class="charname"><input name="name" type="text" value="{{name}}" placeholder="Name"/></h1>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
{{> systems/fvtt-dark-stars/templates/partials/partial-item-nav.hbs}}
|
||||
|
||||
|
||||
{{!-- Sheet Body --}}
|
||||
<section class="sheet-body">
|
||||
|
||||
{{> systems/fvtt-dark-stars/templates/partials/partial-item-description.hbs}}
|
||||
|
||||
<div class="tab details" data-group="primary" data-tab="details">
|
||||
|
||||
<div class="tab" data-group="primary">
|
||||
<ul>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Damage formula</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Bulk</label>
|
||||
<input type="text" class="input-numeric-short padd-right" name="system.bulk" value="{{system.bulk}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">BR</label>
|
||||
<input type="text" class="input-numeric-short padd-right" name="system.br" value="{{system.br}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">SP</label>
|
||||
<input type="text" class="input-numeric-short padd-right" name="system.sp" value="{{system.sp}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Properties</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.properties" value="{{system.properties}}" data-dtype="String"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Quantity</label>
|
||||
<input type="text" class="input-numeric-short padd-right" name="system.quantity" value="{{system.quantity}}"
|
||||
data-dtype="Number" />
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Cost</label>
|
||||
<input type="text" class="input-numeric-short padd-right" name="system.cost" value="{{system.cost}}" data-dtype="Number"/>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
</form>
|
||||
@@ -47,22 +47,30 @@
|
||||
<input type="text" class="right item-field-label-long" name="system.penetrationmax" value="{{system.penetrationmax}}" data-dtype="String"/>
|
||||
</li>
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-vlong">HP damage ?</label>
|
||||
<label class="attribute-value checkbox"><input type="checkbox" name="system.hashpdamage" {{checked system.hashpdamage}}/></label>
|
||||
<li class="flexrow"><label class="item-field-label-vlong">Needs Ammunition ?</label>
|
||||
<label class="attribute-value checkbox"><input type="checkbox" name="system.needammo" {{checked system.needammo}}/></label>
|
||||
</li>
|
||||
{{#if system.hashpdamage}}
|
||||
<li class="flexrow"><label class="item-field-label-vlong">HP Damage formula</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage ?</label>
|
||||
<label class="attribute-value checkbox"><input type="checkbox" name="system.hasfatiguedamage" {{checked system.hasfatiguedamage}}/></label>
|
||||
</li>
|
||||
{{#if system.hasfatiguedamage}}
|
||||
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage formula</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.fatiguedamage" value="{{system.fatiguedamage}}" data-dtype="String"/>
|
||||
</li>
|
||||
{{#if system.needammo}}
|
||||
|
||||
{{else}}
|
||||
<li class="flexrow"><label class="item-field-label-vlong">HP damage ?</label>
|
||||
<label class="attribute-value checkbox"><input type="checkbox" name="system.hashpdamage" {{checked system.hashpdamage}}/></label>
|
||||
</li>
|
||||
{{#if system.hashpdamage}}
|
||||
<li class="flexrow"><label class="item-field-label-vlong">HP Damage formula</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.damage" value="{{system.damage}}" data-dtype="String"/>
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage ?</label>
|
||||
<label class="attribute-value checkbox"><input type="checkbox" name="system.hasfatiguedamage" {{checked system.hasfatiguedamage}}/></label>
|
||||
</li>
|
||||
{{#if system.hasfatiguedamage}}
|
||||
<li class="flexrow"><label class="item-field-label-vlong">Fatigue damage formula</label>
|
||||
<input type="text" class="right item-field-label-long" name="system.fatiguedamage" value="{{system.fatiguedamage}}" data-dtype="String"/>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
|
||||
<li class="flexrow"><label class="item-field-label-long">Bulk</label>
|
||||
|
||||
Reference in New Issue
Block a user