From 3356b340a7d98847b456478e95a49a87a64fb82b Mon Sep 17 00:00:00 2001 From: siruimei07 Date: Thu, 8 Oct 2026 18:48:26 +0800 Subject: [PATCH 01/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20three=20or=20mor?= =?UTF-8?q?e=20overlapping=20=E5=90=8C=E5=90=8D=E6=95=88=E6=9E=9C=E5=8F=96?= =?UTF-8?q?=E6=9C=80=E9=AB=98=20applications=20resume=20strongest=20first?= =?UTF-8?q?=20=E2=80=94=20the=20middle=20one=20no=20longer=20drops=20out?= =?UTF-8?q?=20when=20the=20strongest=20ends=20(GitHub=20#342,=20PR=20#348?= =?UTF-8?q?=20by=20@siruimei07);=20golden:=20diy-059,=20diy-122,=20diy-123?= =?UTF-8?q?,=20diy-124,=20diy-133,=20diy-138=20move?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The contributor's code (status.js _applyValuedStatus and both test files, applied as written from PR #348), so they are the author of this commit; the maintainer side added the 同名效果取最高 label back to the JSDoc and a docs/SIM.md line. buff.data.tail held ONE waiting application (the later-ending one): a third, weaker but longer one replaced a middle one that was still running, so when the strongest ended the effect jumped to the weakest (#342: 30 % / 25 % / 20 % 减防 — DEF 1000 → 700 → 800 instead of 750 → 800 → 1000). The tail is now a chain ordered by strength (decreasing) and end (increasing): a weaker application is inserted in it, a stronger one takes over with the old value and its chain behind it, an equal refresh trims waiters that end before it, and an expiry resumes the next live waiter with the rest of the chain. removeStatus / removeBuff still drop the whole chain; two-application data shapes are unchanged. Golden: six 自选 battles that stack three same-name applications on one unit — diy-059 / diy-122 / diy-123 / diy-124 (庇护 from several operators), diy-133 (Mon3tr's ASPD talent buff talent:monstr:aspd), diy-138 (脆弱) — the middle application now resumes. --- docs/SIM.md | 4 +- server/sim/battle/status.js | 34 +++-- test/content/strongest-status-overlap.test.js | 56 ++++++++ test/golden/diy.json | 104 +++++++-------- test/sim/strongest-status.test.js | 125 ++++++++++++++++++ 5 files changed, 261 insertions(+), 62 deletions(-) create mode 100644 test/content/strongest-status-overlap.test.js create mode 100644 test/sim/strongest-status.test.js diff --git a/docs/SIM.md b/docs/SIM.md index 08a53a3f..1d660a6e 100644 --- a/docs/SIM.md +++ b/docs/SIM.md @@ -596,7 +596,9 @@ and the 浮空 weight rule, then `statusApplied { source, target, status, durati = the target carried no buff of that status before (a refresh / a weaker "取最高" application is not an entry: "进入…时"). Effects follow the official term table (`gamedata_const.termDescriptionDict`, `ba.*`). Same-key statuses refresh to the longer duration, except the "同名效果取最高" ones marked *strongest* below: the strongest value wins, a weaker application never overrides it and, -if it outlasts it, resumes when the strong one expires (pass `refresh` to opt out); `stackAs` = the strength such an +if it outlasts it, resumes when the strong one expires (pass `refresh` to opt out) — every such waiting application keeps +its own end, and they resume strongest first (`buff.data.tail` is a chain ordered by strength: of 30 % / 25 % / 20 % +applied one after another, the 25 % follows the 30 %, then the 20 % — GitHub #342, PR #348); `stackAs` = the strength such an application competes with instead of its `value`, which stays its effect (Raidian S3's 虚弱: PRTS 备注 "在叠加时视为90%…的 虚弱(仅影响叠加优先级,不影响实际效果)"). `battle.applyStrongest(target, key, { duration, value, mods: (v) => mods, source })` gives a content effect that is not a diff --git a/server/sim/battle/status.js b/server/sim/battle/status.js index b4aeefb0..9b93244e 100644 --- a/server/sim/battle/status.js +++ b/server/sim/battle/status.js @@ -274,23 +274,39 @@ export class BattleStatus { } /** - * "同名效果取最高": keep the strongest value; a weaker one that outlasts it resumes afterwards (buff.data.tail). A + * "同名效果取最高": keep the strongest value, then resume weaker effects in order of strength at their original expiry times. + * `buff.data.tail` links the waiting effects, with decreasing strength and increasing expiry times. A * `plain` template (applyStrongest) is an ordinary invisible buff, not a status. `stackAs` (finite): the strength this * application competes with instead of its value (applyStatus opts.stackAs); kept in `data.stackAs` / the tail. */ _applyValuedStatus(target, key, tpl, duration, value, source, stackAs = null) { const as = Number.isFinite(stackAs) ? stackAs : null; const strength = (v, s = null) => Math.abs(Number.isFinite(s) ? s : Number.isFinite(v) ? v : tpl.valued); - // (no stackAs: the very objects of before — data { value, tail }, tails { value, until }) const entry = (v, s, extra) => (Number.isFinite(s) ? { value: v, stackAs: s, ...extra } : { value: v, ...extra }); + const after = (tail, until) => { + while (tail && tail.until <= until) tail = tail.tail; + return tail || null; + }; + const insertTail = (tail, incoming) => { + if (!tail) return incoming; + const diff = strength(incoming.value, incoming.stackAs) - strength(tail.value, tail.stackAs); + if (diff > 1e-12) return { ...incoming, tail: after(tail, incoming.until) }; + if (diff < -1e-12) { + if (incoming.until <= tail.until) return tail; + return { ...tail, tail: insertTail(tail.tail, incoming) }; + } + // Equal-priority waiting effects keep the longest-lived application's value, including its stackAs. + const kept = incoming.until > tail.until ? incoming : tail; + return { ...kept, tail: after(tail.tail, kept.until) }; + }; const make = (v, dur, tail, s = null) => ({ ...(tpl.buff || null), // extra buff fields of the status (抵抗: the 麻痹 decay tick) key, duration: dur, refresh: 'replace', mods: tpl.mods(v), flags: tpl.flags || null, status: tpl.plain ? null : key, visible: !tpl.plain, source, data: entry(v, s, { tail }), onExpire: ({ battle, unit, buff }) => { - const t = buff.data.tail; - if (t && t.until - battle.time > 1e-6 && unit.alive) battle.addBuff(unit, make(t.value, t.until - battle.time, null, t.stackAs)); + const t = after(buff.data.tail, battle.time + 1e-6); + if (t && unit.alive) battle.addBuff(unit, make(t.value, t.until - battle.time, t.tail || null, t.stackAs)); }, }); const old = target.buffs.find((b) => b.key === key && (tpl.plain || b.status === key)); @@ -299,17 +315,17 @@ export class BattleStatus { const oldAs = old.data && Number.isFinite(old.data.stackAs) ? old.data.stackAs : null; const oldEnd = this.time + old.timeLeft, newEnd = this.time + duration; const oldTail = old.data && old.data.tail; - const longerTail = (a, b) => (!a ? b : !b ? a : (b.until > a.until ? b : a)); if (strength(value, as) > strength(oldV, oldAs) + 1e-12) { - // stronger: takes over now; the weaker old one (or its tail) resumes if it lasts longer - const tail = longerTail(oldEnd > newEnd ? entry(oldV, oldAs, { until: oldEnd }) : null, oldTail && oldTail.until > newEnd ? oldTail : null); + // Stronger: take over now, retaining every old effect that can still become active afterwards. + const tail = after(entry(oldV, oldAs, { until: oldEnd, tail: oldTail }), newEnd); this.addBuff(target, make(value, duration, tail, as)); } else if (strength(value, as) < strength(oldV, oldAs) - 1e-12) { - // weaker: never overrides; remembered as the tail when it outlasts the running one - if (newEnd > oldEnd && (!oldTail || newEnd > oldTail.until)) old.data = { ...old.data, value: oldV, tail: entry(value, as, { until: newEnd }) }; + // Weaker: insert among the waiting effects instead of replacing the one with the latest expiry. + if (newEnd > oldEnd) old.data = { ...old.data, value: oldV, tail: insertTail(oldTail, entry(value, as, { until: newEnd })) }; } else if (duration > old.timeLeft) { old.timeLeft = duration; old.duration = Math.max(old.duration, duration); + old.data.tail = after(oldTail, newEnd); } } diff --git a/test/content/strongest-status-overlap.test.js b/test/content/strongest-status-overlap.test.js new file mode 100644 index 00000000..498cc304 --- /dev/null +++ b/test/content/strongest-status-overlap.test.js @@ -0,0 +1,56 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { makeBattle, enemyRec } from '../helpers/battleHarness.js'; + +test('Dorothy, Pozëmka, and Schwarz DEF reductions fall back to the strongest unexpired application', () => { + const h = makeBattle({ + autoFinish: false, + timeLimit: 10, + flags: { dpInit: 0, dpPerSec: 0 }, + defs: { enemies: { enemy_dummy: enemyRec({ key: 'enemy_dummy', hp: 1e9, def: 1000, speed: 0 }) } }, + units: [ + { uid: 1, diy: { slot: 'chess_char_6_diy1_a', charId: 'char_4048_doroth', skillIndex: 0, uniEquipId: null }, elite: true, row: 10, col: 4 }, + { uid: 2, kind: 'token', tokenId: 'token_10025_doroth_recttp', ownerUid: 1, row: 9, col: 6 }, + { uid: 3, diy: { slot: 'chess_char_6_diy2_a', charId: 'char_4055_bgsnow', skillIndex: 0, uniEquipId: null }, elite: true, row: 10, col: 5 }, + { uid: 4, kind: 'token', tokenId: 'token_10026_bgsnow_subbow', ownerUid: 3, row: 9, col: 5 }, + { uid: 5, diy: { slot: 'chess_char_5_diy1_a', charId: 'char_340_shwaz', skillIndex: 2, uniEquipId: null }, elite: true, row: 9, col: 4 }, + ], + }); + h.step(); + // Keep the real kits and projectile travel; prevent extra attacks refreshing their reductions. + for (const unit of h.allies()) unit.atkCd = 100; + const trap = h.unit(2), typewriter = h.unit(4), schwarz = h.unit(5); + const enemy = h.spawn('enemy_dummy', { pos: [9, 6] }); + h.step(); + assert.equal(enemy.s.def, 700, 'Dorothy S1 applies the initial 30% reduction'); + + h.run(0.9 - h.b.time); + assert.equal(h.b.forceAttack(typewriter, [enemy]), true); + h.run(1.8 - h.b.time); + schwarz.skill.gainSp(999); + schwarz.atkCd = 0; + h.step(); + assert.equal(schwarz.skill.active, true, 'Schwarz S3 guarantees her armor-piercing talent'); + schwarz.atkCd = 100; + h.run(2.1 - h.b.time); + + const reductions = h.hooksOf('statusApplied').filter((event) => event.target === enemy && event.status === 'defDown'); + assert.deepEqual(reductions.map(({ source, value, duration }) => [source.id, value, duration]), [ + [trap.id, 0.3, 5], + [typewriter.id, 0.25, 5], + [schwarz.id, 0.2, 5], + ]); + for (const [index, expectedTime] of [[0, 0], [1, 1], [2, 2]]) { + assert.ok(Math.abs(reductions[index].t - expectedTime) < 0.1, `reduction ${index + 1} lands near ${expectedTime}s`); + } + assert.equal(enemy.s.def, 700, 'weaker applications do not reduce the active strength'); + + h.run(5.1 - h.b.time); + assert.equal(enemy.s.def, 750, 'the typewriter reduction survives Dorothy S1 expiring'); + h.run(6.1 - h.b.time); + assert.equal(enemy.s.def, 800, 'Schwarz reduction survives the typewriter reduction expiring'); + h.run(7.1 - h.b.time); + assert.equal(enemy.s.def, 1000, 'DEF returns to its base value after the final application expires'); + assert.deepEqual(h.b.errors, []); + h.invariants(); +}); diff --git a/test/golden/diy.json b/test/golden/diy.json index c467dac7..4c23ba5a 100644 --- a/test/golden/diy.json +++ b/test/golden/diy.json @@ -2403,15 +2403,15 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":51,"total":96,"perfect":false,"leaks":45,"leaksUncounted":0,"coins":0,"dmg":294912,"bossDmg":0,"heal":232713,"deaths":15,"layerGains":{}}}, + "players": {"p1":{"killed":51,"total":96,"perfect":false,"leaks":45,"leaksUncounted":0,"coins":0,"dmg":294912,"bossDmg":0,"heal":232708,"deaths":15,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_shu",3270,1,118,5,16598,16808,5472,47,2], ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_shu",3270,1,120,1,2287,16353,17674,22,1], ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_shu",3270,1,119,5,30488,15560,32515,90,3], ["p1",4,"op","chess_char_6_diy1_a",0,null,2333.85,1,117,3,24548,27318,9004,88,2], ["p1",5,"op","chess_char_6_diy2_a",1,null,2513,1,99,1,8037,34719,37158,50,2], - ["p1",6,"op","chess_char_6_diy1_a",2,null,0,0,104,6,30371,33925,18939,121,1], - ["p1",7,"op","chess_char_6_diy2_b",0,"none",0,0,102,6,40221,40728,12451,139,3], + ["p1",6,"op","chess_char_6_diy1_a",2,null,0,0,104,6,30371,33925,18935,121,1], + ["p1",7,"op","chess_char_6_diy2_b",0,"none",0,0,102,6,40221,40723,12451,139,3], ["p1",8,"op","chess_char_6_diy1_b",1,"none",0,0,95,3,17536,32106,25999,78,2], ["p1",9,"op","chess_char_6_diy2_b",2,"none",0,0,5,3,17720,6178,25141,72,2], ["p1",10,"op","chess_char_6_diy1_b",0,"uniequip_002_shu",0,0,8,0,15926,8337,2961,37,0], @@ -2421,11 +2421,11 @@ ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1229_darmy":[27,18,9,42204,86393],"enemy_1229_darmy_2":[57,33,18,151066,218478],"enemy_9007_acelem":[12,0,11,64874,94148]}, + "enemies": {"enemy_1229_darmy":[27,18,9,42200,86393],"enemy_1229_darmy_2":[57,33,18,151051,218478],"enemy_9007_acelem":[12,0,11,64889,94148]}, "hooks": [1,120,6900,1655,1655,4214,4508,24466,66,104,21,20,0,16520,0,98,96,38,1,66,0,42,0], "events": {"atk":1711,"deploy":21,"die":66,"dmg":4508,"engage":12,"fx":146,"heal":369,"leak":38,"skill":41,"spawn":111,"status":104}, "fx": {"beam":16,"burst":42,"healField":46,"teleport":42}, - "snaps": "37fbb702 9cbcf13c 0a89a448 750d277b d9592437 862401cb 093e7be6 1be132e4 3c1f9fb3 49416bde 2829f9ff 004d18cc 4a040151 bbe05ad5 c52beaeb 202f1244 3901f434 601d0167 a4eb9728 5fc3c9a2 2267d1c9 4e912d69 fd2bfd2e" + "snaps": "37fbb702 9cbcf13c 0a89a448 750d277b d9592437 be9b7730 7dbdaeb3 ac878763 fcb3fa2d 0d8b02dc 4a580dd9 9469a886 763426bb cd35262b 13c864f5 dcf9735a cfb24522 27704e21 83f9d1ea 25515c68 00b3c803 21fe5f4f 6cf1426c" }, "diy-060": { "about": "5_diy1_a=pallas/S1 5_diy2_a=pallas/S2 5_diy1_a=pallas/S3 5_diy2_b=pallas/S1 5_diy1_b=pallas/S2 5_diy2_b=pallas/S3 5_diy1_b=pallas/S1/002_pallas 5_diy2_b=pallas/S2/002_pallas 5_diy1_b=pallas/S3/002_pallas 5_diy2_b=pallas/S1/003_pallas 5_diy1_b=pallas/S2/003_pallas 5_diy2_b=pallas/S3/003_pallas", @@ -5248,29 +5248,29 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":0,"total":123,"perfect":false,"leaks":123,"leaksUncounted":0,"coins":0,"dmg":306066,"bossDmg":0,"heal":32670,"deaths":17,"layerGains":{}}}, + "players": {"p1":{"killed":0,"total":123,"perfect":false,"leaks":123,"leaksUncounted":0,"coins":0,"dmg":307696,"bossDmg":0,"heal":37911,"deaths":17,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_radian",1158,1,4,0,33930,0,0,127,4], - ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_radian",1158,1,5,0,41774,0,0,124,4], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_radian",1158,1,11,0,60012,0,0,137,3], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_radian",993,1,13,0,40817,0,0,140,4], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_radian",993,1,6,0,43040,0,0,121,4], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_radian",1158,1,4,0,34135,0,0,127,4], + ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_radian",1158,1,5,0,41953,0,0,124,4], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_radian",1158,1,11,0,60038,0,0,137,3], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_radian",993,1,13,0,40604,0,0,140,4], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_radian",993,1,6,0,42960,0,0,121,4], ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_radian",993,1,14,0,62016,0,0,132,3], - ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,147,0,1742,13278,7559,25,1], - ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,148,0,5534,14951,4707,35,1], + ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,149,0,3483,17332,8610,34,1], + ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,147,0,5147,16241,5568,34,1], ["p1",9,"op","chess_char_5_diy1_a",2,null,0,0,130,0,1625,4555,220,8,0], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,149,0,8888,10867,5572,46,1], + ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,148,0,9046,11213,5918,46,1], ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,133,0,3696,5730,435,15,0], - ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,134,0,2992,10413,14176,43,1], + ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,134,0,2992,9964,17159,47,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[54,0,53,29077,128397],"enemy_1422_lrsldr_2":[39,0,39,21409,104996],"enemy_1425_lrcmra_2":[30,0,30,9310,72672]}, - "hooks": [1,149,6900,1053,1053,986,986,1657,17,139,26,26,0,29616,226,17,123,122,1,18,0,0,0], - "events": {"atk":1053,"deploy":23,"die":17,"dmg":986,"engage":12,"fx":9,"heal":67,"leak":122,"skill":52,"spawn":138,"status":234}, + "enemies": {"enemy_1010_demon":[54,0,53,37546,132382],"enemy_1422_lrsldr_2":[39,0,39,17859,103701],"enemy_1425_lrcmra_2":[30,0,30,9630,71612]}, + "hooks": [1,149,6900,1072,1072,1001,1001,2279,17,139,26,26,0,30067,226,17,123,122,1,20,0,0,0], + "events": {"atk":1072,"deploy":23,"die":17,"dmg":1001,"engage":12,"fx":9,"heal":71,"leak":122,"skill":52,"spawn":138,"status":234}, "fx": {"shield":8,"undying":1}, - "snaps": "422f4ca7 82d85ded 1385aefd a28b5e3b a21d6686 d83862af 7e5ba79d e77bedc9 b9807ab8 28b73dbc 909a17e9 b7d76569 d8a709e8 011fc05a 22f68ccc 8d128c96 d14e6a62 7b6b8033 bc6418b2 000d2486 8070923b 23199b14 c39148dc" + "snaps": "422f4ca7 82d85ded f9912cdd d2129b24 b99085df a39a1c44 8adc939d 29eff8bc 80335586 a23ffeab ddb0ec35 0c8321e8 31df363f 198f71d3 407a9f76 14edeeda 025ea6cd 9741503f 4b8237b4 98be51c7 45f5682e b173bb87 5b2dd744" }, "diy-123": { "about": "5_diy1_b=slent2/S1/002_slent2 5_diy2_b=slent2/S2/002_slent2 5_diy1_b=slent2/S3/002_slent2 5_diy2_b=slent2/S1/003_slent2 5_diy1_b=slent2/S2/003_slent2 5_diy2_b=slent2/S3/003_slent2 6_diy1_a=slent2/S1 6_diy2_a=slent2/S2 6_diy1_a=slent2/S3 6_diy2_b=slent2/S1 6_diy1_b=slent2/S2 6_diy2_b=slent2/S3", @@ -5290,26 +5290,26 @@ "bossHpLeft": null, "rngDraws": 11, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":12,"total":36,"perfect":false,"leaks":24,"leaksUncounted":0,"coins":0,"dmg":163954,"bossDmg":0,"heal":112142,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":12,"total":36,"perfect":false,"leaks":24,"leaksUncounted":0,"coins":0,"dmg":158628,"bossDmg":0,"heal":111125,"deaths":21,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_slent2",0,0,57,0,8245,5577,12709,42,2], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_slent2",0,0,54,0,22019,9588,6117,65,3], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_slent2",0,0,56,0,3686,6734,13453,37,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_slent2",0,0,52,0,21984,8140,11594,47,2], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_slent2",819.96,1,60,0,28128,4330,2400,38,2], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_slent2",1068.01,1,58,0,17952,2762,11014,44,1], - ["p1",7,"op","chess_char_6_diy1_a",0,null,724.73,1,55,0,10681,2855,6823,50,2], - ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,53,0,12848,6062,5102,58,2], - ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,48,1,5235,7339,11935,51,1], - ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,47,0,10824,44211,14116,51,2], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,59,0,13464,3751,878,38,2], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,51,0,8888,50121,16001,60,1] + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_slent2",0,0,57,0,11446,6763,12809,48,2], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_slent2",1865,1,54,0,21728,5602,7475,71,3], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_slent2",1116.5,1,56,0,7663,8790,15155,51,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_slent2",0,0,53,0,19296,9125,8872,43,2], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_slent2",0,0,60,0,23328,4125,1375,31,2], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_slent2",0,0,58,0,12288,3897,9218,35,1], + ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,55,0,7895,4480,6020,42,2], + ["p1",8,"op","chess_char_6_diy2_a",1,null,1392.65,1,52,0,16254,3375,4934,67,2], + ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,50,1,7402,9240,11944,58,1], + ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,49,0,10824,49145,18299,58,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,59,0,12056,4225,1168,35,2], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,51,0,8448,39925,13856,59,1] ], - "enemies": {"enemy_1005_yokai_2":[12,12,0,334,2893],"enemy_1005_yokai_3":[12,0,8,76865,64685],"enemy_9009_acfort":[12,0,11,74270,96377]}, - "hooks": [1,60,6900,1019,1019,858,858,1795,33,52,21,21,0,24163,0,0,36,19,1,32,0,0,0], - "events": {"atk":1103,"deploy":24,"die":33,"dmg":858,"engage":12,"fx":49,"heal":250,"leak":19,"skill":42,"spawn":48,"status":28}, - "fx": {"beam":46,"undying":3}, - "snaps": "a5b373d8 cade2571 25bd2c7f 01adb744 fbb45b57 6848708b 0a96115c 7e128c01 21df8c78 e6903500 2f41b832 aa0ba68b 8641acbf 21932ee2 038f1d76 a983d0f1 3ced4395 63969cf1 ccc7caac 2ce3eb58 ecd3dfd9 4ef03b03 eb5d21bd" + "enemies": {"enemy_1005_yokai_2":[12,12,0,335,2893],"enemy_1005_yokai_3":[12,0,8,77142,51740],"enemy_9009_acfort":[12,0,11,71214,103995]}, + "hooks": [1,60,6900,1033,1033,846,846,1544,33,52,22,20,0,24223,0,0,36,19,1,36,0,0,0], + "events": {"atk":1104,"deploy":24,"die":33,"dmg":846,"engage":12,"fx":49,"heal":260,"leak":19,"skill":42,"spawn":48,"status":29}, + "fx": {"beam":45,"undying":4}, + "snaps": "a5b373d8 cade2571 25bd2c7f 01adb744 fbb45b57 e30ff540 3b72daed 51b4c8b9 06683530 b735ddf5 82033c8c 713018f8 4395803f 890d91a1 2e056bbf 2e2e98df d852cfe2 19169929 86dc378b 79c1efd7 d9de2b5f 90c00c25 ea46d144" }, "diy-124": { "about": "6_diy1_b=slent2/S1/002_slent2 6_diy2_b=slent2/S2/002_slent2 6_diy1_b=slent2/S3/002_slent2 6_diy2_b=slent2/S1/003_slent2 6_diy1_b=slent2/S2/003_slent2 6_diy2_b=slent2/S3/003_slent2 5_diy1_a=haruka/S1 5_diy2_a=haruka/S2 5_diy1_a=haruka/S3 5_diy2_b=haruka/S1 5_diy1_b=haruka/S2 5_diy2_b=haruka/S3", @@ -5329,15 +5329,15 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":147,"perfect":false,"leaks":144,"leaksUncounted":0,"coins":0,"dmg":388624,"bossDmg":0,"heal":186324,"deaths":1,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":147,"perfect":false,"leaks":144,"leaksUncounted":0,"coins":0,"dmg":388624,"bossDmg":0,"heal":186275,"deaths":1,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_slent2",2298,1,6,0,21267,0,30997,124,4], ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_slent2",2298,1,11,0,30498,0,13312,138,5], ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_slent2",2298,1,14,0,17697,0,14062,99,2], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_slent2",1965,1,4,0,31024,0,5800,77,4], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_slent2",1965,1,4,0,31024,0,5870,76,4], ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_slent2",1965,1,5,0,52007,0,10668,130,5], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_slent2",2358,1,7,0,33734,19361,24981,114,2], - ["p1",7,"op","chess_char_5_diy1_a",0,null,1556.5,1,12,1,18973,0,14769,124,5], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_slent2",2358,1,7,0,33734,19312,24981,114,2], + ["p1",7,"op","chess_char_5_diy1_a",0,null,1556.5,1,12,1,18973,0,14651,124,5], ["p1",8,"op","chess_char_5_diy2_a",1,null,1556.5,1,15,0,36496,0,16816,75,2], ["p1",9,"op","chess_char_5_diy1_a",2,null,1556.5,1,8,1,31939,48618,9950,102,3], ["p1",10,"op","chess_char_5_diy2_b",0,"none",1531.8,1,10,1,20540,21770,18960,127,5], @@ -5347,11 +5347,11 @@ ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon_2":[36,0,34,129029,143213],"enemy_1071_dftman":[51,1,50,10701,69708],"enemy_1072_dlancer":[60,2,56,49435,175702]}, - "hooks": [1,163,6900,1602,1602,1824,1824,1019,4,144,42,38,0,42759,60,66,147,140,1,4,0,0,0], - "events": {"atk":1836,"deploy":13,"die":4,"dmg":1818,"engage":12,"fx":794,"heal":616,"leak":140,"skill":80,"spawn":162,"status":757}, + "enemies": {"enemy_1010_demon_2":[36,0,34,129029,143213],"enemy_1071_dftman":[51,1,50,10701,69708],"enemy_1072_dlancer":[60,2,56,49387,175702]}, + "hooks": [1,163,6900,1601,1601,1824,1824,1018,4,144,42,38,0,42759,60,66,147,140,1,4,0,0,0], + "events": {"atk":1835,"deploy":13,"die":4,"dmg":1818,"engage":12,"fx":794,"heal":614,"leak":140,"skill":80,"spawn":162,"status":757}, "fx": {"aoe":98,"heal":310,"levitate":60,"shield":326}, - "snaps": "1b8091e0 73c802f9 110ffccb 73e97743 2c3d94d2 37aed2ff 5fdabeab 69cb41ab 491632d5 aef350f1 30f8d397 418bbed0 483f862b e8d524ca 1a85cf2d 0771fb68 0ed53d18 5abc2708 a6f0038b 0f8d27f3 f803bfaf 669dc197 e8d45f8a" + "snaps": "1b8091e0 73c802f9 110ffccb 73e97743 2c3d94d2 37aed2ff 5fdabeab 69cb41ab 491632d5 aef350f1 30f8d397 418bbed0 483f862b e8d524ca 1a85cf2d 0771fb68 0ed53d18 5abc2708 83618567 204d2f27 488b9d83 57bbc743 6a9e58ce" }, "diy-125": { "about": "5_diy1_b=haruka/S1/002_haruka 5_diy2_b=haruka/S2/002_haruka 5_diy1_b=haruka/S3/002_haruka 6_diy1_a=haruka/S1 6_diy2_a=haruka/S2 6_diy1_a=haruka/S3 6_diy2_b=haruka/S1 6_diy1_b=haruka/S2 6_diy2_b=haruka/S3 6_diy1_b=haruka/S1/002_haruka 6_diy2_b=haruka/S2/002_haruka 6_diy1_b=haruka/S3/002_haruka", @@ -5822,22 +5822,22 @@ ["p1",3,"op","chess_char_6_diy1_a",2,null,1810.9,1,11,0,0,0,53690,111,2], ["p1",4,"op","chess_char_6_diy2_b",0,"none",2005.9,1,13,0,0,0,46002,87,4], ["p1",5,"op","chess_char_6_diy1_b",1,"none",2005.9,1,6,18,704057,0,15788,61,3], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",2005.9,1,14,0,0,0,26930,79,3], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",2005.9,1,14,0,0,0,27264,78,3], ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,7,0,0,81970,41023,72,12], ["p1",8,"op","chess_char_5_diy2_a",1,null,1492,1,9,0,0,98191,51694,93,4], - ["p1",9,"op","chess_char_5_diy1_a",2,null,217.03,1,10,0,0,107130,60043,84,0], + ["p1",9,"op","chess_char_5_diy1_a",2,null,217.03,1,10,0,0,107130,60487,84,0], ["p1",10,"op","chess_char_5_diy2_b",0,"none",1653,1,12,0,0,22049,53056,73,18], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",1653,1,15,0,0,64626,18934,43,2], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",1653,1,15,0,0,64626,18156,43,2], ["p1",12,"op","chess_char_5_diy2_b",2,"none",1653,1,8,0,0,90649,44508,81,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1006_shield_3":[21,0,16,372723,566446],"enemy_1043_zomsbr":[66,60,5,22690,479046],"enemy_1402_tgshd_2":[36,10,20,69202,794079]}, - "hooks": [1,138,6900,1408,1408,1120,1120,13592,71,112,55,52,70,22853,566,8,123,41,1,71,0,0,0], - "events": {"atk":2335,"deploy":12,"die":71,"dmg":1110,"engage":2,"fx":458,"heal":1178,"leak":41,"skill":107,"spawn":138,"status":209}, + "hooks": [1,138,6900,1407,1407,1120,1120,13591,71,112,55,52,70,22853,566,8,123,41,1,71,0,0,0], + "events": {"atk":2334,"deploy":12,"die":71,"dmg":1110,"engage":2,"fx":458,"heal":1178,"leak":41,"skill":107,"spawn":138,"status":209}, "fx": {"aoe":70,"expose":272,"healAoe":70,"shield":40,"takeoff":6}, - "snaps": "0a2a0a58 9edb0805 ec947f3f 7ffcd830 23c8b514 9268451b 1587cab5 93203dcf 675b3282 b8e42ac4 d194e3af c0d85745 cb282efe f152e307 02944050 4dab08fa 73f1afb0 1a6a7b38 89999054 6738780f f5ef296b 9876bcdc 9e74e0c9" + "snaps": "0a2a0a58 9edb0805 ec947f3f 7ffcd830 23c8b514 9268451b 1587cab5 93203dcf 675b3282 b8e42ac4 d194e3af c0d85745 4520de90 8fa30b22 3c71ad2d 7af3c5a9 1b07ebf9 d6841316 a0cdffb6 e3a8979b d1066696 fe5e3f62 b6c3a091" }, "diy-134": { "about": "5_diy1_b=monstr/S1/002_monstr 5_diy2_b=monstr/S2/002_monstr 5_diy1_b=monstr/S3/002_monstr 6_diy1_a=monstr/S1 6_diy2_a=monstr/S2 6_diy1_a=monstr/S3 6_diy2_b=monstr/S1 6_diy1_b=monstr/S2 6_diy2_b=monstr/S3 6_diy1_b=monstr/S1/002_monstr 6_diy2_b=monstr/S2/002_monstr 6_diy1_b=monstr/S3/002_monstr", @@ -6036,7 +6036,7 @@ ], "enemies": {"enemy_1288_duskls":[27,4,22,19614,114889],"enemy_1288_duskls_2":[57,12,45,7003,313267],"enemy_1292_duskld":[51,9,38,77789,451811]}, "hooks": [1,153,6900,1638,1638,2202,2465,332,35,140,20,18,0,28180,18680,57,135,105,1,84,0,0,6], - "events": {"atk":1961,"deploy":18,"die":35,"dmg":2465,"engage":9,"fx":119,"heal":279,"leak":105,"skill":42,"spawn":147,"status":1300}, + "events": {"atk":1961,"deploy":18,"die":35,"dmg":2465,"engage":9,"fx":119,"heal":279,"leak":105,"skill":42,"spawn":147,"status":1298}, "fx": {"aoe":5,"dodge":43,"ember":49,"revive":22}, "snaps": "3e9a4d11 f9a475f7 d909dafe 07c79a9f 76e65988 7dff2527 631c9a48 90e879b4 cfe3ca91 ccb275cc 2445e31f 2132570f ae5cb98a c2376534 c8afbc93 fbbb00d5 98187a92 3228cfb6 f8b78613 5724ac77 b963f388 bb322dda fee7681a" } diff --git a/test/sim/strongest-status.test.js b/test/sim/strongest-status.test.js new file mode 100644 index 00000000..8c056517 --- /dev/null +++ b/test/sim/strongest-status.test.js @@ -0,0 +1,125 @@ +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { makeBattle, enemyRec } from '../helpers/battleHarness.js'; + +function setup() { + const h = makeBattle({ + defs: { enemies: { enemy_test: enemyRec({ key: 'enemy_test', hp: 1e6, atk: 100, def: 1000, speed: 0 }) } }, + enemies: [{ key: 'enemy_test', pos: [11, 8] }], content: 'none', autoFinish: false, + }); + h.step(); + return { h, e: h.enemy('enemy_test') }; +} + +const orders = [[0, 1, 2], [0, 2, 1], [1, 0, 2], [1, 2, 0], [2, 0, 1], [2, 1, 0]]; +const approx = (actual, expected) => assert.ok(Math.abs(actual - expected) < 1e-6, `${actual} ≈ ${expected}`); + +for (const plain of [false, true]) { + for (const order of orders) { + test(`${plain ? 'applyStrongest' : 'fragile'}: three effects expire in strength order after application order ${order}`, () => { + const { h, e } = setup(); + const effects = [{ value: 0.8, duration: 2 }, { value: 0.6, duration: 5 }, { value: 0.3, duration: 10 }]; + const key = plain ? 'test:strongest' : 'fragile'; + for (const i of order) { + if (plain) h.b.applyStrongest(e, key, { ...effects[i], mods: (v) => ({ dmgTakenMul: 1 + v }) }); + else h.b.applyStatus(e, key, effects[i]); + } + for (const [elapsed, multiplier, damage] of [[0, 1.8, 180], [2.1, 1.6, 160], [3, 1.3, 130], [5, 1, 100]]) { + if (elapsed) h.run(elapsed); + approx(e.s.dmgTakenMul, multiplier); + assert.equal(h.b.dealDamage(null, e, { amount: 100, type: 'true' }), damage); + assert.equal(e.buffs.filter((b) => b.key === key).length, multiplier === 1 ? 0 : 1); + } + assert.deepEqual(h.b.errors, []); + }); + } +} + +test('strongest statuses: a weaker effect that expires under the winner never resumes', () => { + const { h, e } = setup(); + h.b.applyStatus(e, 'fragile', { value: 0.6, duration: 3 }); + h.b.applyStatus(e, 'fragile', { value: 0.3, duration: 10 }); + h.b.applyStatus(e, 'fragile', { value: 0.8, duration: 5 }); + h.run(5.1); + approx(e.s.dmgTakenMul, 1.3); + h.run(5); + assert.equal(e.findBuff('fragile'), null); +}); + +test('strongest statuses: equal-strength refresh skips expired fallbacks but keeps the later one', () => { + const { h, e } = setup(); + for (const [value, duration] of [[0.8, 2], [0.6, 5], [0.3, 10]]) h.b.applyStatus(e, 'fragile', { value, duration }); + h.run(1); + h.b.applyStatus(e, 'fragile', { value: 0.8, duration: 6 }); + h.b.applyStatus(e, 'fragile', { value: 0.8, duration: 1 }); + h.run(5.1); + approx(e.s.dmgTakenMul, 1.8); + h.run(1); + approx(e.s.dmgTakenMul, 1.3); + h.run(3); + assert.equal(e.findBuff('fragile'), null); +}); + +test('strongest statuses: refreshing a waiting effect preserves the weaker later fallback', () => { + const { h, e } = setup(); + for (const [value, duration] of [[0.8, 2], [0.6, 5], [0.3, 10]]) h.b.applyStatus(e, 'fragile', { value, duration }); + h.run(1); + h.b.applyStatus(e, 'fragile', { value: 0.6, duration: 6 }); + h.run(4.1); + approx(e.s.dmgTakenMul, 1.6); + h.run(2); + approx(e.s.dmgTakenMul, 1.3); + h.run(3); + assert.equal(e.findBuff('fragile'), null); +}); + +test('strongest statuses: stackAs controls every fallback without changing its actual effect', () => { + const { h, e } = setup(); + h.b.applyStatus(e, 'weaken', { value: 0.1, stackAs: 0.9, duration: 2 }); + h.b.applyStatus(e, 'weaken', { value: 0.2, stackAs: 0.8, duration: 5 }); + h.b.applyStatus(e, 'weaken', { value: 0.3, duration: 10 }); + approx(e.s.atk, 90); + h.run(2.1); + approx(e.s.atk, 80); + h.run(3); + approx(e.s.atk, 70); + h.run(5); + approx(e.s.atk, 100); +}); + +test('strongest statuses: equal-priority waiting effects keep the longest-lived application value', () => { + const { h, e } = setup(); + h.b.applyStatus(e, 'weaken', { value: 0.9, duration: 2 }); + h.b.applyStatus(e, 'weaken', { value: 0.1, stackAs: 0.8, duration: 5 }); + h.b.applyStatus(e, 'weaken', { value: 0.3, duration: 10 }); + h.b.applyStatus(e, 'weaken', { value: 0.2, stackAs: 0.8, duration: 7 }); + h.b.applyStatus(e, 'weaken', { value: 0.4, stackAs: 0.8, duration: 6 }); + h.b.applyStatus(e, 'weaken', { value: 0.5, stackAs: 0.8, duration: 7 }); + h.run(2.1); + approx(e.s.atk, 80); + h.run(3); + approx(e.s.atk, 80); + h.run(2); + approx(e.s.atk, 70); + h.run(3); + approx(e.s.atk, 100); +}); + +for (const plain of [false, true]) { + test(`${plain ? 'removeBuff' : 'removeStatus'} discards every waiting strongest effect`, () => { + const { h, e } = setup(); + const key = plain ? 'test:strongest' : 'fragile'; + for (const [value, duration] of [[0.8, 2], [0.6, 5], [0.3, 10]]) { + if (plain) h.b.applyStrongest(e, key, { value, duration, mods: (v) => ({ dmgTakenMul: 1 + v }) }); + else h.b.applyStatus(e, key, { value, duration }); + } + assert.equal(plain ? h.b.removeBuff(e, key) : h.b.removeStatus(e, key), 1); + h.b.applyStatus(e, 'fragile', { value: 0.1, duration: 1 }); + h.run(2.1); + approx(e.s.dmgTakenMul, 1); + h.run(8); + approx(e.s.dmgTakenMul, 1); + assert.equal(e.findBuff(key), null); + assert.deepEqual(h.b.errors, []); + }); +} From 5a50f7b5fa329690b73ff84fa4e45e4f7d1c9ebe Mon Sep 17 00:00:00 2001 From: LimitlessHPPK Date: Thu, 8 Oct 2026 18:56:12 +0800 Subject: [PATCH 02/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20the=20module=20t?= =?UTF-8?q?rait=20line=20=E3=80=8C=E6=94=BB=E5=87=BB=E8=8C=83=E5=9B=B4?= =?UTF-8?q?=E5=86=85=E5=AD=98=E5=9C=A8N=E5=90=8D=E5=8F=8A=E4=BB=A5?= =?UTF-8?q?=E4=B8=8A=E6=95=8C=E4=BA=BA=E6=97=B6=E6=94=BB=E5=87=BB=E9=80=9F?= =?UTF-8?q?=E5=BA=A6+X=E3=80=8D=20(REA-Y:=20=E5=9C=A3=E7=BA=A6=E9=80=81?= =?UTF-8?q?=E8=91=AC=E4=BA=BA,=20=E9=9A=90=E5=BE=B7=E6=9D=A5=E5=B8=8C)=20i?= =?UTF-8?q?s=20applied=20by=20the=20engine=20instead=20of=20the=20two=20ki?= =?UTF-8?q?ts=20=E2=80=94=20on=20and=20off=20on=20the=20tick=20the=20count?= =?UTF-8?q?=20changes;=20a=20scan=20of=20every=20chess,=20=E8=A1=A5?= =?UTF-8?q?=E4=BD=8D=20and=20=E8=87=AA=E9=80=89=20loadout=20shows=20no=20o?= =?UTF-8?q?ther=20operator=20gains=20it=20(PR=20#293=20by=20@LimitlessHPPK?= =?UTF-8?q?);=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The contributor's code (server/sim/content/traitMods.js, the battle/players.js _setupUnit wiring after kit.install, the crowdAspd removal from shared/tier5.js and the two kits, test/sim/trait_attack_speed.test.js), applied from PR #293, so they are the author of this commit. Maintainer additions: the coverage lock also scans the 补位 stand-ins (266) and every legal 自选 combination (pool operator × slot form × skill × non-other-mode module) — none gains the rule; 黑键 / 维伊 MSC-Y 「拥有已储存的攻击能量时,攻击速度+30」 (their 自选 kits own it) is listed as kit-owned instead of 'unknown'; the comment's history note named a commit this repository does not have, and its line-number references are now names; docs/ARCHITECTURE.md and kits/README.md name the file. Official: battle_equip_table uniequip_003_excu2 (display trait + hidden talent attack_speed 12, trigger_cnt[equip] 2) and uniequip_003_etlchi (trait attack_speed 12, cnt 2), both 「攻击范围内存在2名及以上敌人时攻击速度+12」; 仇白's uniequip_003_qiubai carries the same sentence on her named talent, which her kit keeps reading (not seen by the engine). Before: shared/tier5.js crowdAspd polled every 0.2 s and gave a 0.3 s buff — measured +12 0.167 s after the second enemy arrived and 0.267 s after it died (scratchpad repro); now one tick each. Golden: unchanged (no sampled snapshot moves). --- docs/ARCHITECTURE.md | 2 +- server/sim/battle/players.js | 8 + server/sim/content/kits/README.md | 5 + .../content/kits/ops/chess_char_5_01-excu2.js | 6 +- .../kits/ops/chess_char_5_06-etlchi.js | 8 +- server/sim/content/kits/shared/tier5.js | 9 +- server/sim/content/traitMods.js | 218 +++++++++ test/sim/trait_attack_speed.test.js | 416 ++++++++++++++++++ 8 files changed, 658 insertions(+), 14 deletions(-) create mode 100644 server/sim/content/traitMods.js create mode 100644 test/sim/trait_attack_speed.test.js diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index 4ffb3469..8037a4d8 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -93,7 +93,7 @@ so old imports keep working: `public/js/ui/gameLogic.js` (`public/js/ui/gameLogi | `server/sim/content/enemies/` | the enemy kits by special type (`invisible.js`, `times.js`, `element.js`, `dot.js`, `reflection.js`, `fly.js`, `special.js`) and `leaders.js`; `server/sim/content/enemies.js` dispatches them, `server/sim/content/bosses.js` scripts the leaders | | `server/sim/content/garrisons/`, `items/`, `bands/` | 特质, equipment and strategies: `battle.js` is the battle side, `meta.js` the prep side (`registerMeta`, META §2) | | `server/sim/content/bonds/` | the 23 bonds: `core.js` the 8 core bonds (both sides), `server/sim/content/bonds/addon/` the 15 add-on bonds (`battle.js`, `meta.js`) | -| `server/sim/content/` (the rest) | `tokens.js` (summons), `devices.js` (terrain and stage devices), `generic.js` (the kit built from a skill's data when a chess has none), `choices.js` (机变 cards in battle) | +| `server/sim/content/` (the rest) | `tokens.js` (summons), `devices.js` (terrain and stage devices), `generic.js` (the kit built from a skill's data when a chess has none), `choices.js` (机变 cards in battle), `traitMods.js` (the module trait line the engine applies to every operator: 「攻击范围内存在N名及以上敌人时攻击速度+X」) | | `shared/` | imported by the server and the browser: `protocol.js`, `constants.js`, `i18n.js`, `i18nData.js` and `i18nPacks.js` (languages), `packs.js` (the content-pack format), `standIn.js` (补位), `diy.js` (自选编队), `highGround.js`, `loadoutRecord.js` | ### Client (`public/`) diff --git a/server/sim/battle/players.js b/server/sim/battle/players.js index bed7dc89..ba1758cf 100644 --- a/server/sim/battle/players.js +++ b/server/sim/battle/players.js @@ -10,6 +10,7 @@ import { SkillRuntime } from '../skills.js'; import { resolveProfile } from '../professions.js'; import { normalizeToken } from '../simdata.js'; import { setupUnitKit } from '../content/index.js'; +import { installTraitAttackSpeed } from '../content/traitMods.js'; import { clone } from './util.js'; export class BattlePlayers { @@ -217,6 +218,13 @@ export class BattlePlayers { if (t && typeof t.install === 'function') this._safe(() => t.install(this, u), 'talent.install', u); } if (typeof u.kit.install === 'function') this._safe(() => u.kit.install(this, u), 'kit.install', u); + // trait lines the ENGINE owns for every operator (content/traitMods.js: the module attack-speed riders whose + // condition is a pure function of the field — 「攻击范围内存在N名及以上敌人时攻击速度+X」). Runs after kit.install: + // a kit that implements its own line for this trait is never double-counted — traitMods.js refuses every condition + // shape a kit already owns (`reason: 'kit'`), and the kits whose line it DOES take over (the two REA-Y ones) had + // their hand-written copy deleted in the same change. Calling it before kit.install would let a kit's own buff and + // this rule both land on the same unit. + this._safe(() => installTraitAttackSpeed(this, u), 'traitMods.attackSpeed', u); return u.kit; } } diff --git a/server/sim/content/kits/README.md b/server/sim/content/kits/README.md index 30fdcd3b..85e1c647 100644 --- a/server/sim/content/kits/README.md +++ b/server/sim/content/kits/README.md @@ -74,6 +74,11 @@ export default { `../shared/tierN.js` are usable too, but same-named helpers are not interchangeable: `num` of tier 1 / 4 also reads numeric strings, those of tiers 3 / 5 / 6 do not; `toggleBuff`, `talentBb`, `moduleBb`, `instantKind` take different arguments per tier. Read the helper before using it. +- **Not in a kit**: a module's trait line 「攻击范围内存在N名及以上敌人时攻击速度+X」 (REA-Y: 圣约送葬人, 隐德来希) is applied + to every operator by the engine (`../traitMods.js`, called from `battle/players.js` `_setupUnit` after `kit.install`); + a kit adding it too would count it twice. The other conditional attack-speed lines of modules stay in their kits — + traitMods.js lists them and refuses them, and `test/sim/trait_attack_speed.test.js` scans every chess, 补位 and 自选 + loadout so a new record with an unknown shape is noticed. - **The battle API** documented in docs/SIM.md: units (§2), buffs / mods / statuses (§3), the damage & heal pipeline (§4), the hook bus and its re-entrancy rule (§5), the engine helpers content must use (§6), the skill runtime (§7.1); engine modules by relative path (`../../../constants.js`, `targeting.js`, `body.js` for huge enemies, `dir.js` for diff --git a/server/sim/content/kits/ops/chess_char_5_01-excu2.js b/server/sim/content/kits/ops/chess_char_5_01-excu2.js index a23f37ce..6f89725d 100644 --- a/server/sim/content/kits/ops/chess_char_5_01-excu2.js +++ b/server/sim/content/kits/ops/chess_char_5_01-excu2.js @@ -2,7 +2,7 @@ // Conventions of the tier-5 kits: ../shared/tier5.js; kit contract and rules: ../README.md. import { - num, on, talent, batPct, mods, inFaction, isOp, selectedId, lazySkills, skillRange, crowdAspd, + num, on, talent, batPct, mods, inFaction, isOp, selectedId, lazySkills, skillRange, } from '../shared/tier5.js'; const isLaterano = (u) => inFaction(u, 'lateranoShip', ['laterano']); @@ -100,7 +100,9 @@ export default { } }, ], install(battle, unit) { - crowdAspd(battle, unit, 'excu2:module', num(tm.attack_speed), num(tm['trigger_cnt[equip]'])); + // REA-Y "攻击范围内存在2名及以上敌人时攻击速度+12": the ENGINE owns this trait line now + // (server/sim/content/traitMods.js, applied from battle/players.js _setupUnit for every operator) — a second + // implementation here would count the same 12 points twice. if (sid === 'skchr_excu2_3') { // S3: +attack@atk ATK per bullet spent battle.on('ammoUsed', (c) => { if (c.unit !== unit || !unit.skill?.active) return; diff --git a/server/sim/content/kits/ops/chess_char_5_06-etlchi.js b/server/sim/content/kits/ops/chess_char_5_06-etlchi.js index 7b7bed42..c717288f 100644 --- a/server/sim/content/kits/ops/chess_char_5_06-etlchi.js +++ b/server/sim/content/kits/ops/chess_char_5_06-etlchi.js @@ -3,7 +3,7 @@ import { mitigate } from '../../../damage.js'; import { - RING1, num, on, talent, talentRec, traitBb, skillGrid, mods, dist, lazySkills, instantKind, crowdAspd, + RING1, num, on, talent, talentRec, skillGrid, mods, dist, lazySkills, instantKind, } from '../shared/tier5.js'; /** 隐德来希 S3 "每次攻击对心烛至少造成35%攻击力的伤害". */ @@ -23,7 +23,7 @@ export default { // for atk_scale × ATK phys every `interval` s — ground enemies only unless the carrier has taken off (PRTS 备注). // Module REA-Y (elite): ASPD +12 with ≥ 2 enemies in range. chess_char_5_06_a: (bb, chess, def) => { - const t0 = talent(chess, 0), t1 = talent(chess, 1), tb = traitBb(chess); + const t0 = talent(chess, 0), t1 = talent(chess, 1); const hpScale = num(bb['attack@max_hp_scale'], 0.6), defScale = num(bb['attack@def_scale'], 1), resScale = num(bb['attack@magic_resistance_scale'], 1); const nCandles = Math.max(1, num(bb['attack@max_target'], 3)); const candleKey = talentRec(chess, 2)?.bbStr?.take_extra_enemy_key ?? CANDLE_KEY; @@ -140,7 +140,9 @@ export default { } }, ], install(battle, unit) { - crowdAspd(battle, unit, 'etlchi:module', num(tb.attack_speed), num(tb.cnt)); + // REA-Y "攻击范围内存在2名及以上敌人时攻击速度+12": the ENGINE owns this trait line now + // (server/sim/content/traitMods.js, applied from battle/players.js _setupUnit for every operator) — a second + // implementation here would count the same 12 points twice. const mine = (e) => e && e.mem && e.mem.candleOwner === unit; // "心烛只受隐德来希攻击的影响": other sources' element gauges never fill a candle either battle.on('elementHit', (c) => { if (mine(c.target) && c.source !== unit) c.dmg.cancel = true; }, { owner: unit }); diff --git a/server/sim/content/kits/shared/tier5.js b/server/sim/content/kits/shared/tier5.js index 14b622ae..97eb4796 100644 --- a/server/sim/content/kits/shared/tier5.js +++ b/server/sim/content/kits/shared/tier5.js @@ -96,13 +96,6 @@ const skillRange = (chess, def, extra = null) => { const g = skillGrid(chess, def); return g || extra ? { ...(g ? { rangeGrid: g } : {}), ...(extra || {}) } : undefined; }; -/** "攻击范围内存在N名及以上敌人时攻击速度+X" (modules REA-Y). */ -function crowdAspd(battle, unit, key, aspd, cnt) { - if (!aspd || !(cnt > 0)) return; - whileOn(battle, unit, 0.2, () => { - if (battle.enemiesInKeys(unit.rangeKeys, unit, unit.profile).length >= cnt) battle.addBuff(unit, { key, duration: 0.3, mods: { aspd } }); - }); -} /** "攻击范围内存在元素损伤爆发的敌人时,技力自然恢复速度+X/秒" (modules PRI-Y). */ function burstSpUp(battle, unit, key, sp) { if (!(sp > 0)) return; @@ -208,6 +201,6 @@ function enemiesInGrid(battle, unit, grid, n = 0, { ignoreStealth = false } = {} export { HALF_HP, NEVER, AURA_IV, AURA_DUR, RING1, num, on, inRange, talent, talentRec, traitBb, skillGrid, maxCharges, batPct, - mods, dist, inFaction, isAbyssal, isOp, selectedId, lazySkills, instantKind, skillRange, crowdAspd, burstSpUp, + mods, dist, inFaction, isAbyssal, isOp, selectedId, lazySkills, instantKind, skillRange, burstSpUp, leaderOf, elementHit, whileOn, spAura, burstDamageUp, lowHpHealUp, moduleRangeUp, permBuff, enemiesInGrid, }; diff --git a/server/sim/content/traitMods.js b/server/sim/content/traitMods.js new file mode 100644 index 00000000..653be484 --- /dev/null +++ b/server/sim/content/traitMods.js @@ -0,0 +1,218 @@ +// server/sim/content/traitMods.js — trait (特性) modifiers the ENGINE consumes for every operator (DESIGN §5, §16). +// +// WHY THIS FILE EXISTS. Several modules add a line to the operator's TRAIT, and the official tables split that line in +// two: `battle_equip_table` `overrideTraitDataBundle.candidates[].blackboard` carries the NUMBER +// (`{key:'attack_speed', value:12}`) while the CONDITION exists only in the candidate's sentence +// (`additionalDescription` / `overrideDescripton` → data/chess.json `trait.moduleDesc` / `trait.desc`). build-data.mjs +// (`applyModuleTraitParts`) folds that blackboard into `trait.bb` unconditionally, so the number reached +// `resolveProfile` (professions.js — it spreads `def.traitBb` into the profile) and stopped there: no sim file read +// `profile.attack_speed` (every other reader of an `attack_speed` blackboard — bonds, devices, enemies — maps it to +// `mods.aspd` itself), and a module reading 「攻击范围内存在2名及以上敌人时攻击速度+12」 therefore did nothing at all. +// +// THE RULE (engine-level, no operator-id whitelist). Any operator whose resolved def carries `attack_speed` on a +// trait-level blackboard AND whose own trait text states a condition this file can evaluate gets that stat while — and +// only while — the condition holds. The condition is read from the clause the official sentence puts BEFORE 「攻击速度」. +// +// THIS FILE EVALUATES EXACTLY ONE CONDITION SHAPE, on purpose: +// 「攻击范围内存在N名及以上敌人时」 — the REA-Y module line (圣约送葬人 chess_char_5_01_b +12, 隐德来希 +// chess_char_5_06_b +12). It is the shape the engine was missing, and its state is a pure function of the battlefield +// (the engine's own targeting), so it needs nothing from a kit. +// A condition this file does not evaluate installs NOTHING — never a permanently-on stat. `traitAttackSpeedRule(def)` +// reports what it found (`clause`, `value`, `condition`, `reason`) so callers and tests can see the decision. +// +// WHY NOT MORE — the other trait attack-speed lines already have a hand-written implementation in the owning kit, and +// adding a generic rule for them would apply the same stat TWICE. Each is listed here with where it lives (one kit file +// per operator since 0.2.0, `kits/ops/-.js`): +// 被击倒时不撤退…攻击速度+30(单次部署只触发1次) 斯卡蒂 chess_char_3_05_b (DRE-Y) → ops/chess_char_3_05-skadi.js +// 耀骑士临光 6_17_b (DRE-Y) 同理 → ops/chess_char_6_17-nearl2.js +// 未阻挡敌人时攻击速度+8 史尔特尔 5_07_b (AFT-X) → ops/chess_char_5_07-surtr.js +// 未阻挡敌人时攻击速度+8 维娜·维多利亚 6_07_b (AFT-X) → ops/chess_char_6_07-siege2.js +// 不阻挡敌人时…攻击速度+10 号角 5_08_b (FOR-Y) → ops/chess_char_5_08-horn.js +// 能够阻挡一个敌人,生命值高于50%时攻击速度+10 山 5_17_b (FGT-Y) → ops/chess_char_5_17-f12yin.js +// 范围内存在地面敌人时攻击速度+8 空弦 3_21_b (MAR-Y) → shared/tier3.js groundAspd +// 能天使 3_01_b (MAR-Y) 同理 → ops/chess_char_3_01-angel.js +// 攻击范围内存在受到元素损伤的友方单位时攻击速度+8 纯烬艾雅法拉 6_20_b (WDM-Y) → ops/chess_char_6_20-agoat2.js +// 拥有已储存的攻击能量时,攻击速度+30 黑键 / 维伊 (自选, MSC-Y) → ops/op-ebnhlz.js / ops/op-veen.js +// Generalising one of those means deleting the kit implementation in the same change; until then this file refuses them +// (`condition: null`), which is also what keeps them bit-for-bit unchanged. +// +// Two more boundaries found by scanning every record × every module choice (the scan is pinned by +// test/sim/trait_attack_speed.test.js): +// * 仇白 (chess_char_6_15_b) LOR-Y states the same 「攻击范围内存在2名及以上敌人时攻击速度+12」, but its build-data +// candidate targets a NAMED talent, so the number lands in `talents[i]` and never on a trait-level blackboard — her +// kit reads exactly that. This file therefore does not see the line at all, which is the right outcome: applying it +// here as well would double it. +// * A module that ALREADY wanted its line applied here can carry the number on a hidden talent (index −1) instead +// of the trait blackboard — 圣约送葬人 REA-Y does (`uniequip_003_excu2` `talentChanges[0].bb.attack_speed`), while +// 隐德来希 REA-Y carries it straight on `trait.bb`. Both routes are read (see `attackSpeedSources`). +// +// 自选 picks (shared/diy.js) are scanned too: 黑键 / 维伊 MSC-Y 「拥有已储存的攻击能量时,攻击速度+30」 rides a hidden +// module talent like 圣约送葬人's, and their 自选 kits own it (ops/op-ebnhlz.js, ops/op-veen.js — refused as 'kit'). +// +// Tests: test/sim/trait_attack_speed.test.js. PR #293 by @LimitlessHPPK (0.2.2); wired from battle/players.js _setupUnit. + +/** Finite number or `d` (blackboard values may be strings). Kept local: this file is imported by the engine itself + * (battle/players.js), so it must not pull a kit file into the static import graph — the kits load through guarded + * dynamic imports (content/kits/index.js) precisely so a broken kit degrades instead of breaking the server. */ +const num = (v, d = 0) => (typeof v === 'number' && Number.isFinite(v) ? v : d); + +/** Trait blackboard of a raw chess record (`chess.trait.bb`, the module's lines folded in by build-data.mjs). */ +const traitBb = (chess) => (chess && typeof chess.trait === 'object' && chess.trait ? chess.trait.bb ?? {} : {}); + +/** + * The condition shapes this file evaluates, in match order. Each takes the clause before 「攻击速度」 and returns + * `(battle, unit) => boolean`, or null when the clause is not that shape. + */ +const CONDITIONS = [ + /** + * 「攻击范围内存在N名及以上敌人时」 (modules REA-Y). N is read from the SENTENCE and defaults to 2: the official + * module's own blackboard does carry the same count (`trigger_cnt[equip]` / `cnt` = 2 on the two REA-Y records), but + * the number that decides what the TEXT promises has to come from the text — a blackboard count is a kit-side + * implementation detail (records carry `cnt` / `trigger_cnt[equip]` for other talents too). Reading it here instead + * would make this file's decision depend on the module's internal layout. + * Counted through the engine's own targeting — `battle.enemiesInKeys(unit.rangeKeys, unit, unit.profile)`: the unit's + * live range keys (a skill that widens the range widens this too) and its own profile, so 隐匿 / 不可选中 / 飞行 follow + * the operator's real attack rules. That is the call the two REA-Y kits used before this file took the line over + * (shared/tier5.js `crowdAspd`, deleted in the same change so the stat is counted once). + */ + function crowdInRange(clause) { + if (!/攻击范围内(?:存在|有)/.test(clause)) return null; + if (!/敌人/.test(clause)) return null; // excludes 「…存在受到元素损伤的友方单位时」 + const m = clause.match(/存在\s*(\d+)\s*名/); + const need = m ? Math.max(1, +m[1]) : 2; + return (battle, unit) => battle.enemiesInKeys(unit.rangeKeys, unit, unit.profile).length >= need; + }, +]; + +/** + * Trait attack-speed conditions a hand-written kit already owns (documented above; refused here, never applied). + * Every entry is one that a real record in data/chess.json hits — the closed list is checked against the shipped data + * by test/sim/trait_attack_speed.test.js, so a new record that carries one of these lands in 'kit', and anything else + * lands in 'unknown' (nothing installed either way; both are inert, the difference is only in the report). + */ +const KIT_OWNED = [ + /被击倒时不撤退/, // DRE-Y — 斯卡蒂 3_05_b / 耀骑士临光 6_17_b + /未阻挡敌人时/, // AFT-X — 史尔特尔 5_07_b / 维娜·维多利亚 6_07_b + /不阻挡敌人时/, // FOR-Y — 号角 5_08_b + /生命值高于\s*\d+(?:\.\d+)?\s*%/, // FGT-Y — 山 5_17_b + /存在地面敌人/, // MAR-Y — 空弦 3_21_b / 能天使 3_01_b (shared/tier3.js groundAspd) + /受到元素损伤的友方单位/, // WDM-Y — 纯烬艾雅法拉 6_20_b + /拥有已储存的攻击能量时/, // MSC-Y — 黑键 / 维伊 (自选 picks; ops/op-ebnhlz.js, ops/op-veen.js) +]; + +/** + * Lines that only ever apply in another game mode — 集成战略 (ISW modules, e.g. 水月 ISW-A `attack_speed: 50`). This + * mode is 卫戍协议, and the rest of the repo already ignores their mode-gated halves (shared/loadoutRecord.js + * `traitRangeExtend` skips 空弦 ISW-A for exactly this reason), so they are refused here too. + */ +const MODE_SPECIFIC = [/在集成战略中/]; + +/** The buff key the engine rule installs (one per operator; `refresh:'keep'` so a check never extends its duration). */ +export const TRAIT_ASPD_BUFF = 'trait:attack_speed'; + +/** Strip the official inline markup (`<@ba.vup>+12`, `<$ba.dt.element>元素损伤`) from a trait sentence. */ +export const plainText = (s) => String(s ?? '').replace(/<[^>]*>/g, ''); + +/** + * The clause a trait sentence puts before its LAST 「攻击速度」 mention — the condition. '' when the sentence has no + * 「攻击速度」 at all (e.g. 圣约送葬人's REA-Y record, whose own trait sentence is about the reaper self-heal), or when + * the attack-speed part comes first and is unconditional (「攻击速度+18,攻击力+3%」 → clause '', since nothing + * precedes it). + */ +export function conditionClause(text) { + const s = plainText(text); + const i = s.lastIndexOf('攻击速度'); + return i <= 0 ? '' : s.slice(0, i).trim(); +} + +/** The trait/statement texts of `def` a condition may be read from, most specific (the module's added line) first. */ +function traitClauses(def) { + const raw = def?.raw ?? {}; + const t = raw.trait && typeof raw.trait === 'object' ? raw.trait : {}; + const out = []; + for (const s of [t.moduleDescRaw, t.moduleDesc, t.descRaw, t.desc, typeof raw.trait === 'string' ? raw.trait : null]) { + const p = plainText(s).trim(); + if (p && !out.includes(p)) out.push(p); + } + return out; +} + +/** + * The blackboards of `def` a trait-level attack-speed line may live on, most authoritative first: the trait blackboard + * (the module line build-data folds in — 隐德来希 REA-Y), then the hidden module talents (data index −1) — the route + * 圣约送葬人 REA-Y and the MAR-Y / WDM-Y lines above take. A line merged into a NAMED talent is deliberately not read + * here (仇白 LOR-Y: her kit owns it). + */ +function attackSpeedSources(def) { + const out = []; + const tb = traitBb(def?.raw ?? {}); + if (Number.isFinite(tb.attack_speed)) out.push(tb); + const talents = def?.raw?.talents; + if (Array.isArray(talents)) { + for (const t of talents) { + if (!t || t.index !== -1 || !t.bb || !Number.isFinite(t.bb.attack_speed)) continue; + if (!out.includes(t.bb)) out.push(t.bb); + } + } + return out; +} + +/** + * The trait attack-speed line of `def` as the engine will apply it. + * @param {object} def normalised unit def (sim/simdata.js) + * @returns {{value:number, condition:((battle:object, unit:object)=>boolean)|null, clause:string, + * source:string|null, reason:string}|null} + * null = this def has no trait attack-speed line at all. + * `condition !== null` = the engine applies `value` while it holds. + * `condition === null` = nothing is installed; `reason` says why: 'kit' (a hand-written kit owns the condition), + * 'mode' (the line only applies in 集成战略), 'unknown' (a clause shape this file does not know), 'no-text' (the data + * build dropped the sentence). + */ +export function traitAttackSpeedRule(def) { + const sources = attackSpeedSources(def); + if (!sources.length) return null; + const value = num(sources[0].attack_speed); + if (!value) return null; + for (const text of traitClauses(def)) { + const clause = conditionClause(text); + if (!clause) continue; + for (const match of CONDITIONS) { + const condition = match(clause); + if (condition) return { value, condition, clause, source: text, reason: 'ok' }; + } + if (MODE_SPECIFIC.some((re) => re.test(clause))) return { value, condition: null, clause, source: text, reason: 'mode' }; + if (KIT_OWNED.some((re) => re.test(clause))) return { value, condition: null, clause, source: text, reason: 'kit' }; + return { value, condition: null, clause, source: text, reason: 'unknown' }; + } + return { value, condition: null, clause: '', source: null, reason: 'no-text' }; +} + +/** + * Apply a def's trait attack-speed line to an operator: the stat is on exactly while its condition holds. Called once + * per operator from `BattlePlayers._setupUnit` (after `kit.install`). Evaluated on the engine's `tick` hook (one step = + * constants.TICK) so entering / leaving the condition changes the real attack cadence — ai.js `updateAlly` sets + * `u.atkCd = u.s.interval`, and `unit.s.interval = bat × 100 / aspd` (units.js stat aggregation). The buff is `refresh:'keep'` — a + * re-check can never extend or blank the stat, and the engine drops non-`persist` buffs on death, while the + * `deploy` / `battleStart` checks put it back on the next deployment. + * @param {object} battle + * @param {object} unit + * @returns {object|null} the rule it resolved (`condition: null` when it installed nothing), or null without a line + */ +export function installTraitAttackSpeed(battle, unit) { + if (!unit || unit.kind !== 'op' || unit._traitAspdInstalled) return null; + let rule = null; + try { rule = traitAttackSpeedRule(unit.def); } catch { rule = null; } + if (!rule || !rule.condition) return rule; + unit._traitAspdInstalled = true; + const mods = { aspd: rule.value }; + const check = () => { + const want = !!unit.alive && !!unit.deployed && rule.condition(battle, unit); + const has = !!unit.findBuff(TRAIT_ASPD_BUFF); + if (want && !has) battle.addBuff(unit, { key: TRAIT_ASPD_BUFF, mods, refresh: 'keep', tags: ['trait'] }); + else if (!want && has) battle.removeBuff(unit, TRAIT_ASPD_BUFF); + }; + battle.on('tick', check, { owner: unit }); + battle.on('battleStart', check, { owner: unit }); + battle.on('deploy', (ctx) => { if (ctx.unit === unit) check(); }, { owner: unit }); + return rule; +} diff --git a/test/sim/trait_attack_speed.test.js b/test/sim/trait_attack_speed.test.js new file mode 100644 index 00000000..28fce689 --- /dev/null +++ b/test/sim/trait_attack_speed.test.js @@ -0,0 +1,416 @@ +// test/sim/trait_attack_speed.test.js — the ENGINE-level consumption of a trait's attack-speed rider +// (server/sim/content/traitMods.js, wired from server/sim/battle/players.js `_setupUnit` after `kit.install`; PR #293 by +// @LimitlessHPPK). +// +// Background (the def shape is docs/SIM.md `traitBb`; the profile merge is professions.js resolveProfile): build-data.mjs folds +// a module's trait blackboard into `trait.bb` unconditionally, so `{key:'attack_speed', value:12}` reached +// `resolveProfile` and stopped there — nothing read it, because the CONDITION only exists in the module sentence +// (「攻击范围内存在2名及以上敌人时攻击速度+12」). The line was therefore inert as DATA, and the two operators that +// carry it implemented it by hand in their kits (shared/tier5.js `crowdAspd`, deleted by this change): the engine now +// applies the same line for everyone. +// +// The tests below pin the four things that make this a fix rather than a special case: +// 1. the two REA-Y beneficiaries get +12 ASPD POINTS, and only while the engine's own targeting sees the required +// enemies — no bonus with 1 enemy in range, a measurably shorter attack interval from 2, back to base when the +// condition is left, and back on when it holds again; +// 2. the SAME engine rule serves both, although their numbers live on DIFFERENT blackboards (圣约送葬人 REA-Y: +// a hidden module talent, index −1; 隐德来希 REA-Y: `trait.bb` folded in by build-data) — there is no operator-id +// whitelist anywhere in the path; +// 3. operators with no such line are untouched; +// 4. the trait attack-speed lines a hand-written kit already implemented are neither double-counted nor changed +// (史尔特尔 / 维娜·维多利亚 / 山 / 空弦 / 斯卡蒂), and the whole shipped data set is closed against silent gaps. +// +// ASPD is a POINT score, not a percentage: `aspd = clamp(base + Σaspd, 20, 600)` and +// `interval = bat × (1 + ΣbatPct) × 100 / aspd` (the units.js header), so +12 means 100 → 112 (interval × 100/112), which is +// how every existing module / item / enemy implementation reads `attack_speed` too. +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { makeBattle, enemyRec, checkInvariants } from '../helpers/battleHarness.js'; +import { getDefaultSource } from '../../server/sim/simdata.js'; +import { TICK } from '../../server/sim/constants.js'; +import { traitAttackSpeedRule, installTraitAttackSpeed, conditionClause, plainText, TRAIT_ASPD_BUFF } from '../../server/sim/content/traitMods.js'; +import { diySlotIds, diySlot, diyPool, isDiyModule } from '../../shared/diy.js'; +import { unitForm } from '../../shared/standIn.js'; + +const ds = getDefaultSource(); +const HOOKS = ['attack', 'damaged', 'deploy', 'skillStart', 'skillEnd', 'tick']; +const dummy = (key, o = {}) => enemyRec({ key, hp: 1e7, speed: 0, ...o }); +const DEFS = { enemies: { enemy_dummy: dummy('enemy_dummy') } }; +/** Battle + one tick (t = 0 spawns exist afterwards). `autoFinish:false`: the battles below outlive their enemies. */ +const run = (o) => makeBattle({ seed: 7, autoFinish: false, timeLimit: 400, hooks: HOOKS, captureNoisy: true, ...o }).step(); +/** No skill casts while a window is measured (a silence buff, as the other kit tests do). */ +const mute = (h, u) => h.b.addBuff(u, { key: 'test:mute', flags: { silence: true } }); +const approx = (a, b, msg = '', rel = 1e-9) => assert.ok(Math.abs(a - b) <= rel * Math.max(1, Math.abs(b)), `${msg} ${a} ≈ ${b}`); +const median = (a) => { const s = [...a].sort((x, y) => x - y); return s[s.length >> 1]; }; +/** The enemies the ENGINE counts for `u` (the call traitMods.js itself makes: live range keys + its own profile). */ +const inRange = (h, u) => h.b.enemiesInKeys(u.rangeKeys, u, u.profile); +/** The cadence the engine can actually produce: `atkCd` counts down in whole ticks, so a gap is ⌈interval/TICK⌉ ticks. */ +const cadence = (interval) => Math.ceil(interval / TICK - 1e-9) * TICK; +/** Run `seconds` and return the gaps (s) between `u`'s consecutive ordinary attacks inside that window. */ +function attackGaps(h, u, seconds) { + const t0 = h.b.time; + h.run(seconds); + const ts = h.hooksOf('attack').filter((c) => c.attacker === u && !c.isSkill && c.t >= t0 - 1e-9).map((c) => c.t); + const gaps = []; + for (let i = 1; i < ts.length; i++) gaps.push(ts[i] - ts[i - 1]); + return gaps; +} +/** `chessId` on the board with `moduleId`, 1 dummy in range (the placement every REA-Y module test uses). */ +function board(id, o = {}) { + return run({ defs: DEFS, units: [{ chessId: id, row: 10, col: 4, ...o }], enemies: [{ key: 'enemy_dummy', pos: [10, 5] }] }); +} +/** Spawn dummies on the candidate tiles (skipping occupied ones) until `n` of them stand in `u`'s own range. */ +function spawnInRange(h, u, n, tiles = [[10, 5], [11, 5], [9, 5], [9, 4], [8, 5]]) { + const occupied = new Set(h.enemies().map((e) => `${Math.round(e.y)},${Math.round(e.x)}`)); + const out = []; + for (const pos of tiles) { + if (inRange(h, u).length >= n) break; + if (occupied.has(pos.join(','))) continue; + out.push(h.spawn('enemy_dummy', { pos })); + occupied.add(pos.join(',')); + h.step(); + } + assert.ok(inRange(h, u).length >= n, `${u.defId}: ${n} enemies stand in its range (${inRange(h, u).length})`); + return out; +} +const done = (h) => { checkInvariants(h.b); assert.equal(h.b.errors.length, 0, JSON.stringify(h.b.errors[0])); }; + +/** The two operators the engine serves; `legacy` = the buff key their deleted hand-written copy used. */ +const REA_Y = [ + // 圣约送葬人 chess_char_5_01_b: the module's number rides a HIDDEN module talent (`talentChanges[0].bb.attack_speed`) + { id: 'chess_char_5_01_b', moduleId: 'uniequip_003_excu2', legacy: 'excu2:module', base: 100 }, + // 隐德来希 chess_char_5_06_b: build-data folds it straight into `trait.bb` + { id: 'chess_char_5_06_b', moduleId: 'uniequip_003_etlchi', legacy: 'etlchi:module', base: 105 }, +]; + +// ================================================================================================================= +// 1. the two REA-Y beneficiaries: entered, left and re-entered, with the cadence measured + +test('圣约送葬人 / 隐德来希 REA-Y: 1 名敌人 → 正好 base,2 名 → 正好 +12 点(不是 +24)且实测攻击间隔按 ASPD 比缩短,击杀后恢复,重新进范围再加回', () => { + for (const { id, moduleId, legacy, base } of REA_Y) { + const h = board(id, { moduleId }); + const u = h.unit(id); + const rule = traitAttackSpeedRule(u.def); + assert.equal(rule.value, 12, `${id}: the REA-Y line is +12`); + assert.equal(rule.reason, 'ok', `${id}: the engine owns it`); + assert.equal(rule.clause, '攻击范围内存在2名及以上敌人时', `${id}: read from the module sentence`); + assert.equal(u.base.aspd, base, `${id}: base ASPD`); + mute(h, u); // a skill that widened the range would move the measured condition under our feet + + // --- one enemy in range: the 「存在2名及以上敌人」 clause does not hold, so nothing is installed + h.run(1); + assert.equal(inRange(h, u).length, 1, `${id}: exactly one enemy stands in its range`); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, `${id}: 1 enemy → the module line is NOT installed`); + assert.equal(u.findBuff(legacy), null, `${id}: the kit copy of the line is gone (${legacy})`); + assert.equal(u.s.aspd, u.base.aspd, `${id}: 1 enemy → exactly the base (NOT base + 12: no kit + engine double count)`); + approx(u.s.interval, u.base.bat * 100 / u.base.aspd, `${id}: interval = bat × 100 / aspd`); + const g1 = attackGaps(h, u, 8); + assert.ok(g1.length >= 4, `${id}: enough attacks to measure (${g1.length})`); + approx(median(g1), cadence(u.s.interval), `${id}: baseline cadence matches the interval`, 0.02); + + // --- a second enemy walks in: the stat is on within one tick + const interval0 = u.s.interval; + const second = h.spawn('enemy_dummy', { pos: [11, 5] }); + h.step(); + assert.equal(inRange(h, u).length, 2, `${id}: the second enemy is in range (the engine's own targeting)`); + assert.equal(u.s.aspd, u.base.aspd + 12, `${id}: 2 enemies → +12 ASPD POINTS`); + assert.notEqual(u.s.aspd, u.base.aspd + 24, `${id}: the engine rule only — the hand-written copy is deleted`); + approx(u.s.interval, u.base.bat * 100 / (u.base.aspd + 12), `${id}: the shortened interval`); + assert.ok(u.s.interval < interval0 - 1e-9, `${id}: the attack interval really shrank`); + const buff = u.findBuff(TRAIT_ASPD_BUFF); + assert.ok(buff, `${id}: the engine rule installed the buff`); + assert.equal(buff.mods.aspd, 12, `${id}: 12 points`); + const g2 = attackGaps(h, u, 8); + approx(median(g2), cadence(u.s.interval), `${id}: buffed cadence matches the shortened interval`, 0.02); + assert.ok(median(g2) < median(g1) - 0.02, `${id}: measured gaps shrank (${median(g2).toFixed(4)} < ${median(g1).toFixed(4)})`); + approx(median(g1) / median(g2), (u.base.aspd + 12) / u.base.aspd, `${id}: the measured cadence ratio is the ASPD ratio`, 0.03); + + // --- the condition is left: the stat goes away again + h.b.dealDamage(null, second, { type: 'true', amount: 1e9 }); + h.step(); + assert.equal(second.alive, false, `${id}: the second enemy is dead`); + assert.equal(u.s.aspd, u.base.aspd, `${id}: back to the baseline`); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, `${id}: buff removed`); + const g3 = attackGaps(h, u, 8); + approx(median(g3), cadence(u.s.interval), `${id}: cadence back to the baseline interval`, 0.02); + approx(median(g3), median(g1), `${id}: and back to the measured baseline cadence`, 0.03); + + // --- and it comes back on a new enemy + h.spawn('enemy_dummy', { pos: [11, 5] }); + h.step(); + assert.equal(u.s.aspd, u.base.aspd + 12, `${id}: re-entering the condition re-applies it`); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF)?.mods.aspd, 12, `${id}: still 12 points`); + done(h); + } +}); + +test('两名受益者的取值来源不同(隐藏天赋 / traitBb),引擎两条路都读;默认模组都没有这条词条', () => { + // 圣约送葬人 REA-Y: `talentChanges[0]` targets the hidden talent, so the number is NOT on the trait blackboard + const excu2 = ds.getChess('chess_char_5_01_b', { moduleId: 'uniequip_003_excu2' }); + const hidden = (excu2.raw.talents ?? []).filter((t) => t.index === -1); + assert.equal(excu2.raw.trait.bb.attack_speed, undefined, '圣约送葬人: the number is not on trait.bb'); + assert.equal(hidden.length, 1, '圣约送葬人: …it is on the hidden module talent (index −1)'); + assert.equal(hidden[0].bb.attack_speed, 12, '圣约送葬人: +12 there'); + const r1 = traitAttackSpeedRule(excu2); + assert.equal(r1.value, 12); + assert.equal(r1.reason, 'ok'); + assert.equal(r1.clause, '攻击范围内存在2名及以上敌人时'); + assert.equal(plainText(r1.source), '攻击范围内存在2名及以上敌人时攻击速度+12'); + + // 隐德来希 REA-Y: build-data folded the line into trait.bb, and she has no hidden module talent at all + const etlchi = ds.getChess('chess_char_5_06_b', { moduleId: 'uniequip_003_etlchi' }); + assert.equal(etlchi.raw.trait.bb.attack_speed, 12, '隐德来希: the number is on trait.bb'); + assert.deepEqual((etlchi.raw.talents ?? []).filter((t) => t.index === -1), [], '隐德来希: no hidden module talent'); + const r2 = traitAttackSpeedRule(etlchi); + assert.equal(r2.value, 12); + assert.equal(r2.reason, 'ok'); + assert.equal(r2.clause, '攻击范围内存在2名及以上敌人时'); + assert.equal(plainText(r2.source), '攻击范围内存在2名及以上敌人时攻击速度+12'); + + // the module has to be EQUIPPED: without it neither carries the line (no permanent rider on the default loadout) + assert.equal(traitAttackSpeedRule(ds.getChess('chess_char_5_01_b')), null, '圣约送葬人 默认模组: no such line'); + assert.equal(traitAttackSpeedRule(ds.getChess('chess_char_5_06_b')), null, '隐德来希 默认模组: no such line'); +}); + +// ================================================================================================================= +// 2. regression — operators without the line + +test('回归: 没有该词条的干员完全不变(3 名敌人也不动)', () => { + for (const id of ['chess_char_1_01_a', 'chess_char_5_01_a']) { // 隐现; 圣约送葬人的 NORMAL 棋子(未装备 REA-Y) + assert.equal(traitAttackSpeedRule(ds.getChess(id)), null, `${id}: no trait attack-speed line`); + const h = board(id); + const u = h.unit(id); + mute(h, u); + h.run(0.5); + const as0 = u.s.aspd; + spawnInRange(h, u, 3); + h.run(0.5); + assert.equal(u.s.aspd, as0, `${id}: ASPD unchanged with 3 enemies in range`); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, `${id}: no engine buff`); + done(h); + } +}); + +test('回归: 手写实现的那几条特性词条,引擎显式拒绝接管(防止二次加成)', () => { + const cases = [ + ['chess_char_3_05_b', null, 30, 'kit'], // DRE-Y 被击倒时不撤退 +30(kit: ops/chess_char_3_05-skadi.js) + ['chess_char_6_17_b', 'uniequip_003_nearl2', 30, 'kit'], // DRE-Y 耀骑士临光 + ['chess_char_5_07_b', null, 8, 'kit'], // AFT-X 未阻挡 +8(史尔特尔) + ['chess_char_6_07_b', null, 8, 'kit'], // AFT-X 维娜·维多利亚 + ['chess_char_5_08_b', 'uniequip_003_horn', 10, 'kit'], // FOR-Y 号角 不阻挡敌人时 +10 + ['chess_char_5_17_b', null, 10, 'kit'], // FGT-Y 生命值高于50% +10(山) + ['chess_char_3_21_b', null, 8, 'kit'], // MAR-Y 空弦 范围内地面敌人 +8 + ['chess_char_3_01_b', 'uniequip_003_angel', 8, 'kit'], // MAR-Y 能天使 + ['chess_char_6_20_b', 'uniequip_003_agoat2', 8, 'kit'], // WDM-Y 纯烬艾雅法拉 + ['chess_char_4_09_b', 'uniequip_004_mizuki', 50, 'mode'], // ISW-A 水月(集成战略专用,本模式不适用) + ]; + for (const [id, moduleId, value, reason] of cases) { + const def = ds.getChess(id, moduleId ? { moduleId } : null); + const r = traitAttackSpeedRule(def); + assert.ok(r, `${id}: carries a trait attack-speed line`); + assert.equal(r.value, value, `${id}: value`); + assert.equal(r.condition, null, `${id}: the engine installs nothing`); + assert.equal(r.reason, reason, `${id}: refused as '${reason}'`); + assert.ok(r.clause.length > 0, `${id}: the clause it read is reported (${JSON.stringify(r.clause)})`); + } +}); + +test('回归: 史尔特尔 / 维娜·维多利亚 / 山 / 空弦 / 斯卡蒂 的数值与改动前一致(各自的 kit 路径照旧)', () => { + // 史尔特尔 AFT-X: 未阻挡敌人时 +8 + { + const h = run({ defs: DEFS, units: [{ chessId: 'chess_char_5_07_b', row: 10, col: 4 }], enemies: [{ key: 'enemy_dummy', pos: [10, 9] }] }); + const u = h.unit('chess_char_5_07_b'); + mute(h, u); + const as = u.def.traitBb.attack_speed; + assert.equal(as, 8, '史尔特尔: trait.bb 上的 +8'); + h.run(1); + assert.equal(u.blocking.length, 0, '未阻挡'); + assert.equal(u.s.aspd, u.base.aspd + as, '未阻挡: kit 的 +8'); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, 'engine 未接管'); + done(h); + } + // 维娜·维多利亚 AFT-X: 未阻挡敌人时 +8 + { + const h = run({ defs: DEFS, units: [{ chessId: 'chess_char_6_07_b', row: 10, col: 4 }], enemies: [{ key: 'enemy_dummy', pos: [10, 9] }] }); + const u = h.unit('chess_char_6_07_b'); + mute(h, u); + const as = u.def.traitBb.attack_speed; + assert.equal(as, 8, '维娜·维多利亚: trait.bb 上的 +8'); + h.run(1); + assert.equal(u.blocking.length, 0, '未阻挡'); + assert.equal(u.s.aspd, u.base.aspd + as, '未阻挡: kit 的 +8'); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, 'engine 未接管'); + done(h); + } + // 山 FGT-Y: 生命值高于 50% 时 +10 + { + const h = board('chess_char_5_17_b'); + const u = h.unit('chess_char_5_17_b'); + mute(h, u); + const as = u.def.traitBb.attack_speed; + assert.equal(as, 10, '山: trait.bb 上的 +10'); + h.run(1); + assert.ok(u.hpRatio > 0.5, 'full HP'); + assert.equal(u.s.aspd, u.base.aspd + as, 'HP > 50 %: kit 的 +10'); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, 'engine 未接管'); + done(h); + } + // 空弦 MAR-Y: 范围内存在地面敌人时 +8 —— 数值在隐藏天赋上(与圣约送葬人同一个来源),kit(shared/tier3.js groundAspd)负责 + { + const h = board('chess_char_3_21_b'); + const u = h.unit('chess_char_3_21_b'); + mute(h, u); + const as = (u.def.raw.talents ?? []).find((t) => t.index === -1)?.bb.attack_speed; + assert.equal(as, 8, '空弦: MAR-Y 的 +8 在隐藏天赋 (index −1) 上'); + h.run(1); + assert.equal(u.s.aspd, u.base.aspd + as, '地面敌人在范围内: kit 的 +8'); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, 'engine 未接管'); + done(h); + } + // 斯卡蒂 DRE-Y: 被击倒时不撤退 + 攻击速度 +30(kit 的 trait:skadi_tide) + { + const h = run({ defs: DEFS, units: [{ chessId: 'chess_char_3_05_b', row: 10, col: 4 }], enemies: [{ key: 'enemy_dummy', pos: [10, 9] }] }); + const u = h.unit('chess_char_3_05_b'); + mute(h, u); + const as = u.def.traitBb.attack_speed; + assert.equal(as, 30, '斯卡蒂: trait.bb 上的 +30'); + h.run(0.5); + assert.equal(u.s.aspd, u.base.aspd, 'before the lethal blow'); + h.b.dealDamage(null, u, { type: 'true', amount: 1e9 }); + h.step(); + assert.equal(u.alive, true, 'DRE-Y 不撤退'); + assert.ok(u.findBuff('trait:skadi_tide'), 'kit 的复活 buff'); + assert.equal(u.s.aspd, u.base.aspd + as, '复活后 +30(只有 kit 这一份)'); + assert.equal(u.findBuff(TRAIT_ASPD_BUFF), null, 'engine 未接管'); + done(h); + } +}); + +// ================================================================================================================= +// 3. the rule itself: what it reads, and that it installs nothing when unsure + +test('规则解析: 条件子句 + 取值被显式报出;读不出条件 / 不认识的形状 → 什么都不装', () => { + const def = ds.getChess('chess_char_5_01_b', { moduleId: 'uniequip_003_excu2' }); + const r = traitAttackSpeedRule(def); + assert.equal(r.value, 12); + assert.equal(r.reason, 'ok'); + assert.equal(r.clause, '攻击范围内存在2名及以上敌人时'); + assert.equal(typeof r.condition, 'function'); + assert.equal(plainText(r.source), '攻击范围内存在2名及以上敌人时攻击速度+12'); + assert.equal(conditionClause(r.source), '攻击范围内存在2名及以上敌人时'); + + // a line whose 「攻击速度」 comes first is unconditional → no clause → nothing installed (never a permanent stat) + const tail = { ...def, raw: { ...def.raw, trait: { desc: '攻击速度+9,攻击力+1%', bb: { attack_speed: 9 } } } }; + const rt = traitAttackSpeedRule(tail); + assert.equal(rt.value, 9); + assert.equal(rt.reason, 'no-text', 'no condition clause → refused'); + assert.equal(rt.clause, ''); + assert.equal(rt.source, null); + assert.equal(rt.condition, null, 'the engine installs nothing'); + + // an unknown clause shape + const odd = { ...def, raw: { ...def.raw, trait: { desc: '心情好的时候攻击速度+9', bb: { attack_speed: 9 } } } }; + const ro = traitAttackSpeedRule(odd); + assert.equal(ro.value, 9); + assert.equal(ro.reason, 'unknown'); + assert.equal(ro.condition, null, 'an unrecognised condition never becomes a permanent stat'); + + // no trait attack-speed line at all + assert.equal(traitAttackSpeedRule(ds.getChess('chess_char_1_01_a')), null); + assert.equal(traitAttackSpeedRule(null), null); + // tokens are never touched + assert.equal(installTraitAttackSpeed({}, { kind: 'token' }), null); +}); + +test('规则解析: 仇白 LOR-Y 同文案但数值写进具名天赋 —— 引擎连这条词条都看不到(她的 kit 负责,绝不二次加成)', () => { + const def = ds.getChess('chess_char_6_15_b', { moduleId: 'uniequip_003_qiubai' }); + assert.equal(def.raw.trait.bb.attack_speed, undefined, 'trait.bb 上没有攻速'); + assert.deepEqual((def.raw.talents ?? []).filter((t) => t.index === -1), [], '也没有隐藏天赋'); + assert.equal(def.raw.talents[0].bb.attack_speed, 12, '数值在具名天赋 入隙 (index 0) 上'); + assert.equal(def.raw.talents[0].bb.cnt, 2, '连条件计数也一起'); + assert.equal(traitAttackSpeedRule(def), null, '引擎看不到 → 由 kits/ops/chess_char_6_15-qiubai.js 消费'); +}); + +test('覆盖锁定: 全数据 266 个棋子 × 全部模组选择里,被引擎接管的只有那两条 REA-Y,其余全部显式拒绝(unknown = 0)', () => { + const installed = []; + const refused = []; + const reasons = {}; + let scanned = 0; + for (const id of ds.chessIds()) { + const rec = ds.rawChess(id); + if (!rec) continue; + const choices = [null, ...(rec.modules || []).map((m) => ({ moduleId: m.uniEquipId })), { moduleId: 'none' }]; + for (const lo of choices) { + let d; + try { d = ds.getChess(id, lo); } catch { continue; } + if (!d) continue; + scanned++; + const r = traitAttackSpeedRule(d); + if (!r) continue; + const tag = `${id}|${lo?.moduleId ?? 'default'}|${r.value}|${r.reason}`; + if (r.condition) installed.push(tag); + else { refused.push(tag); reasons[r.reason] = (reasons[r.reason] ?? 0) + 1; } + } + } + assert.ok(scanned > 500, `the whole data set was scanned (${scanned} defs)`); + assert.deepEqual(installed.sort(), [ + 'chess_char_5_01_b|uniequip_003_excu2|12|ok', // 圣约送葬人 REA-Y(数值在隐藏天赋上) + 'chess_char_5_06_b|uniequip_003_etlchi|12|ok', // 隐德来希 REA-Y(数值在 trait.bb 上) + ]); + assert.deepEqual(Object.keys(reasons).sort(), ['kit', 'mode'], 'no silent gap — every refusal carries a known reason'); + assert.equal(reasons.unknown ?? 0, 0, 'nothing falls through as unknown'); + assert.ok((reasons.kit ?? 0) >= 13, `every other carrier is refused explicitly (${reasons.kit} kit)`); + assert.equal(reasons.mode, 1, '集成战略专用的一条(水月 ISW-A)'); + assert.ok(refused.length >= 13, `refused lines (${refused.length})`); + for (const t of refused) { + assert.ok(/\|(kit|mode)$/.test(t), `refused with a known reason: ${t}`); + } + assert.ok(refused.some((t) => t.startsWith('chess_char_3_05_b|default|30|kit')), '斯卡蒂 DRE-Y is in the list'); + assert.ok(refused.some((t) => t.startsWith('chess_char_3_21_b|default|8|kit')), '空弦 MAR-Y is in the list'); + assert.ok(refused.some((t) => t.startsWith('chess_char_4_09_b|uniequip_004_mizuki|50|mode')), '水月 ISW-A is in the list'); +}); + +test('覆盖锁定(补位 / 自选): 每个补位干员和每个自选组合(池内干员 × 两种形态 × 技能 × 可选模组)都不被引擎接管', () => { + // 0.2.2 maintainer addition to PR #293: the battle also fields 补位 stand-ins (getChess(id, { standIn: true })) and + // 自选 picks (getChess(slot, { diy })) — 6★ operators whose own modules carry trait attack-speed lines. None may gain + // the engine rule: their lines are either absent or owned by their kits (黑键 / 维伊 MSC-Y, 赤刃明霄陈 AFT, 重岳 / 贝洛内 + // FGT-Y, 止颂 DRE-Y → 'kit'); a module of another game mode is not a legal pick (isDiyModule, validateDiyPicks). + const applied = []; + const reasons = {}; + const tally = { standIn: 0, diy: 0 }; + const see = (kind, tag, d) => { + tally[kind]++; + const r = traitAttackSpeedRule(d); + if (!r) return; + if (r.condition) applied.push(`${kind} ${tag}`); + reasons[r.reason] = (reasons[r.reason] ?? 0) + 1; + }; + for (const id of ds.chessIds()) { + let d; + try { d = ds.getChess(id, { standIn: true }); } catch { d = null; } + if (d) see('standIn', `${id}|${d.charId}`, d); + } + const backups = ds.rawBackups(); + for (const slotId of diySlotIds(ds)) { + const slot = diySlot(slotId, ds); + for (const chessId of [slot.baseId, slot.goldenId]) { + const status = ds.rawChess(chessId)?.status; + for (const charId of diyPool(slot.tier, { data: ds })) { + const form = unitForm(backups, charId, status); + if (!form) continue; + const skills = (form.skills ?? []).map((sk) => sk.index); + for (const skillIndex of skills.length ? skills : [null]) { + for (const uniEquipId of [null, ...(form.modules ?? []).filter(isDiyModule).map((m) => m.uniEquipId)]) { + let d; + try { d = ds.getChess(chessId, { diy: { charId, skillIndex, uniEquipId } }); } catch { d = null; } + if (d) see('diy', `${chessId}|${charId}|${skillIndex}|${uniEquipId}`, d); + } + } + } + } + } + assert.ok(tally.standIn > 100, `every stand-in was scanned (${tally.standIn})`); + assert.ok(tally.diy > 1000, `every 自选 combination was scanned (${tally.diy})`); + assert.deepEqual(applied, [], 'no stand-in or 自选 pick gains the engine rule'); + assert.deepEqual(Object.keys(reasons).sort(), ['kit'], 'every line they carry is a kit-owned shape (no unknown, no other mode)'); +}); From a0cd6826e571602f8df4585920e10c5863fbe469 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 19:03:55 +0800 Subject: [PATCH 03/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E5=BC=82?= =?UTF-8?q?=E5=AE=A2=20S3's=20=E9=9B=B7=E6=9A=B4=20covers=20range=20x-1=20?= =?UTF-8?q?=E2=80=94=20the=2013-tile=20diamond=20=E2=80=94=20around=20the?= =?UTF-8?q?=20tile=20of=20the=20target's=20centre,=20not=20a=201.5-tile=20?= =?UTF-8?q?circle=20around=20its=20position=20(GitHub=20#322,=20PR=20#329?= =?UTF-8?q?=20by=20@IceCodeNew,=20re-implemented);=20golden:=20roster-016/?= =?UTF-8?q?018/048,=20fields=20boss-boss=5F1/3/5-pair=20+=20hidden-boss=5F?= =?UTF-8?q?9-pair,=20matches=20solo-HARD-1,=20solo-ABYSS-1,=20coop2-HARD-4?= =?UTF-8?q?,=20coop2-ABYSS-10-boosted,=20coop2-NORMAL-70-diy=20move?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PRTS 异客 S3 备注: 「开启技能时选择技能范围内的目标,以其判定中心所在格为中心生成一个x-1的雷暴区域」; range_table x-1 is the 13-tile diamond (|Δrow| + |Δcol| ≤ 2); x-3 (|技能范围|) stays the search range. The storm's tile is the rounding of the target's centre (body.js posKey), fixed for its 4 s; a strike picks among the enemies she can select whose body is on those tiles (enemiesInKeys, as her other range checks); each strike still chains on its own bounce radius. The fx ring is drawn at radius 2 (visual only). Until now: [ASSUMED] radius 1.5 around the target's exact position — an enemy two tiles straight off the target's tile was never struck, one at (+1.55, +1.05) off the tile centre was. Re-implemented from the PR's claim (its golden files were not taken). Golden: every moved scenario fields 异客 casting S3 — the zone holds other enemies and the random pick draws from another list. --- .../kits/ops/chess_char_6_05-pasngr.js | 15 +- server/sim/content/kits/shared/tier6.js | 3 +- test/content/kits_t6.test.js | 26 ++ test/golden/fields.json | 417 +++++++++--------- test/golden/matches.json | 44 +- test/golden/roster.json | 159 ++++--- 6 files changed, 348 insertions(+), 316 deletions(-) diff --git a/server/sim/content/kits/ops/chess_char_6_05-pasngr.js b/server/sim/content/kits/ops/chess_char_6_05-pasngr.js index e0733833..fcba4ee2 100644 --- a/server/sim/content/kits/ops/chess_char_6_05-pasngr.js +++ b/server/sim/content/kits/ops/chess_char_6_05-pasngr.js @@ -10,7 +10,12 @@ import { powi } from '../../../detmath.js'; // ------------------------------------------------------------------------------------------------------------------ // 异客 chess_char_6_05 (链术师) — S3 辉煌裂片; 机理分析; 孤卒 -const STORM_RADIUS = 1.5; // [ASSUMED] storm zone radius (not in data) +/** S3 雷暴区域: PRTS 备注 「以其判定中心所在格为中心生成一个x-1的雷暴区域」 — range x-1 (range_table: the diamond of radius 2, + * 13 tiles) around the tile of the target's centre (GitHub #322, PR #329). Until 0.2.2 a 1.5-tile circle around the + * target's exact position [ASSUMED]. The chain of each strike bounces on its own radius, inside or outside the zone. */ +const STORM_GRID = Object.freeze([[2, 0], [1, -1], [1, 0], [1, 1], [0, -2], [0, -1], [0, 0], [0, 1], [0, 2], [-1, -1], [-1, 0], [-1, 1], [-2, 0]]); +/** The storm fx's ring radius (tiles): the diamond's reach — drawn only, the zone is STORM_GRID. */ +const STORM_FX_RADIUS = 2; function pasngr(bb, chess, def) { const t0 = tbb(def, 0), t1 = tbb(def, 1), tb = def?.traitBb || {}; @@ -69,16 +74,18 @@ function pasngr(bb, chess, def) { const cands = enemiesIn(battle, unit, keys); if (!cands.length) return; const tgt = cands.reduce((a, b) => (b.hp > a.hp ? b : a)); - const cx = tgt.x, cy = tgt.y; + // 判定中心所在格: the tile of the target's centre (the rounding of body.js posKey); fixed for the storm's 4 s + const cx = Math.round(tgt.x), cy = Math.round(tgt.y); + const zoneKeys = absoluteRangeKeys(STORM_GRID, cy, cx, 1, 0); const dur = num(bb.duration, 4), iv = Math.max(0.1, num(bb.interval, 0.5)), scale = num(bb.atk_scale, 1); const n = Math.max(1, Math.round(dur / iv)); - battle.fx('storm', { x: cx, y: cy, id: unit.id, duration: dur, r: STORM_RADIUS }); + battle.fx('storm', { x: cx, y: cy, id: unit.id, duration: dur, r: STORM_FX_RADIUS }); let k = 0; const seq = unit.deploySeq; const h = battle.every(iv, () => { if (!live(unit) || unit.deploySeq !== seq) { h.cancel(); return; } // the storm ends when she leaves the field if (++k >= n) h.cancel(); - const zone = battle.foesInRadius(cx, cy, STORM_RADIUS).filter((e) => canTargetEnemy(unit, e, ANY)); + const zone = enemiesIn(battle, unit, zoneKeys); // every enemy she can select whose body is on the 13 tiles const e = battle.rng.pick(zone); if (e) strike(battle, unit, e, scale); }, { owner: unit }); diff --git a/server/sim/content/kits/shared/tier6.js b/server/sim/content/kits/shared/tier6.js index 0f9999b7..ea34befb 100644 --- a/server/sim/content/kits/shared/tier6.js +++ b/server/sim/content/kits/shared/tier6.js @@ -27,7 +27,8 @@ // 6_04 浊心斯卡蒂 S3 HP drain is non-lethal (like the geek drain); 鼓舞 = flat ATK added after the target's multipliers; // 海嗣 is inert (no attack) and only extends her aura (and her DEFAULT trigger); it expires after its // duration and is re-summoned after its redeploy time when DP ≥ its cost (auto-redeploy emulation). -// 6_05 异客 storm zone radius 1.5 tiles (not in data); strikes chain like her trait (4 targets, trait falloff); +// 6_05 异客 storm zone = range x-1 (the 13-tile diamond) around the tile of the target's centre (PRTS S3 备注); +// strikes chain like her trait (4 targets, trait falloff) on their own bounce radius; // the storm stops when she leaves the field. // 6_06 佩佩 splash stun via `damaged` (isSplash) hook; module ×1.15 when ≥3 enemies in the splash area. // 6_07 维娜 "attack enemies blocked by allies in talent range" = those enemies' tiles are added to her range; diff --git a/test/content/kits_t6.test.js b/test/content/kits_t6.test.js index 0d225237..f1722893 100644 --- a/test/content/kits_t6.test.js +++ b/test/content/kits_t6.test.js @@ -1097,6 +1097,32 @@ test('异客: the S3 storm stops when she leaves the field', () => { assert.equal(h.eventsOf('fx').filter((e) => e[1] === 'lightning').length, n, 'no strike after her retreat'); }); +test('异客: the S3 storm is range x-1 — the 13-tile diamond — around the tile of the target\'s centre (PRTS 备注; GitHub #322, PR #329)', () => { + // the storm's target stands off its tile centre at (5.4, 10.4) — tile (10, 5) — and is removed right after the cast, so + // every strike starts on the probe (no chain bounce from the target) when, and only when, the probe is in the zone + const strikes = ([dx, dy]) => { + const h = battle({ units: [{ chessId: 'chess_char_6_05_a', row: 10, col: 3 }], autoFinish: false }); + h.step(); + const u = h.unit('chess_char_6_05_a'); + const tgt = h.spawn('enemy_dummy2', { pos: [10, 5], mods: { hpMul: 2 } }); + tgt.x = 5.4; tgt.y = 10.4; + h.step(); + assert.ok(u.skill.activate('test', { free: true })); + const storm = h.eventsOf('fx').find((e) => e[1] === 'storm'); + assert.deepEqual([storm[2], storm[3]], [5, 10], 'the storm sits on the centre of the target\'s tile'); + h.b.dealDamage(null, tgt, { amount: 1e12, type: 'true' }); + const p = h.spawn('enemy_dummy', { pos: [10, 5] }); + p.x = 5 + dx; p.y = 10 + dy; + h.run(4.2); + checkInvariants(h.b); + return h.dmg.filter((d) => d.src === u.id && d.tgt === p.id && d.tags.includes('storm')).length; + }; + // in the diamond (|Δrow| + |Δcol| ≤ 2 by tile): (2, 0) / (0, −2) / (1.95, 0.4) lay outside the old 1.5 circle + for (const off of [[0, 0], [2, 0], [0, -2], [-2, 0], [1.45, 1.45], [1.95, 0.4]]) assert.equal(strikes(off), 8, `(${off}) struck by all 8 strikes`); + // outside it: tile (+2, +1), and tile (+3, 0) — (1.55, 1.05) was inside the old circle around the target's position + for (const off of [[2, 1], [1.55, 1.05], [0, 2.6]]) assert.equal(strikes(off), 0, `(${off}) never struck`); +}); + test('蕾缪安: 通缉 needs a continuous 8 s stay in a 拉特兰 range (leaving restarts the count)', () => { const h = battle({ units: [{ chessId: 'chess_char_6_01_a', row: 12, col: 2 }, { chessId: 'test_lat_a', row: 10, col: 2 }], diff --git a/test/golden/fields.json b/test/golden/fields.json index 89f0b465..a1568be1 100644 --- a/test/golden/fields.json +++ b/test/golden/fields.json @@ -23,36 +23,36 @@ "killed": 20, "total": 20, "unspawned": 0, - "bossHpLeft": 860227, - "rngDraws": 465, + "bossHpLeft": 757974, + "rngDraws": 450, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1654181,"bossDmg":1231515,"heal":19498,"deaths":1,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1792443,"bossDmg":1508258,"heal":66028,"deaths":1,"layerGains":{}} + "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1829160,"bossDmg":1406273,"heal":22241,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1719718,"bossDmg":1435752,"heal":63732,"deaths":0,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",2234.8,1,13,0,0,13169,12811,0,1], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",1997.61,1,15,0,0,3014,537,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,17,2,25157,2919,1127,5,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1470,1,7,5,459003,0,0,71,1], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1933,1,9,0,0,1266,0,0,0], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1219.11,1,19,1,107433,13649,2379,0,5], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,9,580897,1076,1076,98,10], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,2042,0,0,0], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,0,351605,2090,1133,51,51], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,63,1,78633,3517,100,143,4], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",1317.39,1,13,0,0,14130,13618,0,1], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,15,0,0,3434,1310,0,0], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,17,3,36610,2365,439,5,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",764.36,1,7,4,473435,974,0,71,1], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1933,1,9,0,0,754,0,0,0], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1219.11,1,19,0,105231,11005,2072,0,5], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,8,659439,0,0,99,10], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,0,0,0,0], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,1,355289,2720,1289,51,51], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",925.86,1,21,1,122388,6297,3048,213,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,28,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,22,0,11014,1990,0,10,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,6,846545,20760,0,191,3], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,16,2,147542,1160,0,0,2], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,68,0,0,2314,0,0,0], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,2968,0,134,4], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",2059.08,1,8,0,0,4454,0,0,0], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",619.79,1,10,0,9427,9216,133,0,0], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,2045,8642,12,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2470,0,204,4], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,12,0,289048,4343,0,0,3], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,27,0,0,1420,57252,46,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,9,846708,23488,0,191,3], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2612.11,1,16,1,75440,1160,0,0,1], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",551.11,1,18,0,0,2133,0,0,0], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,1808,0,134,4], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",1743.26,1,8,0,0,3233,0,0,0], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1395.45,1,10,0,7542,9717,133,0,0], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,1044,6778,10,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2921,0,204,4], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",464.73,1,12,0,290148,4047,0,0,3], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,27,0,0,2964,56821,49,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], @@ -64,25 +64,26 @@ ["p1","~2","token","token_10030_mlyss_wtrman",null,null,0,0,49,0,4603,2788,336,7,1], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,51,0,0,0,0,0,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,55,0,3329,0,0,25,null], - ["p1","~2","token","token_10017_skadi2_dedant",null,null,138,0,60,0,0,0,0,0,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,64,1,23084,0,0,32,1], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,58,0,39947,928,130,53,1], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,125.89,0,61,0,7780,1864,0,12,null], + ["p1","~2","token","token_10017_skadi2_dedant",null,null,138,0,62,0,0,0,0,0,null], ["p2","~3","token","token_10019_nearl2_sword",null,null,6127.12,0,65,0,3329,593,0,25,null], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1442,0,69,0,6040,0,0,12,null], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,70,0,0,0,0,0,null], - ["p2","~4","token","token_10019_nearl2_sword",null,null,6600,1,72,0,3318,0,0,5,null], - ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1442,1,74,0,3,0,0,3,null] + ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1442,0,67,0,6040,0,0,12,null], + ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,69,0,0,0,0,0,null], + ["p1","~6","token","token_10030_mlyss_wtrman",null,null,1442,1,71,0,674,0,0,4,null], + ["p2","~4","token","token_10019_nearl2_sword",null,null,6600,1,72,0,3318,0,0,5,null] ], "enemies": { "enemy_1005_yokai": [4,4,0,0,13759], - "enemy_1006_shield_2": [14,14,0,24795,601974], + "enemy_1006_shield_2": [14,14,0,26659,601974], "enemy_1061_zomshd": [2,2,0,3356,90856], - "enemy_9013_acstmk": [1,0,0,45645,2739773], - "enemy_9016_acstmr": [8,7,0,0,261] + "enemy_9013_acstmk": [1,0,0,46873,2842026], + "enemy_9016_acstmr": [8,7,0,0,262] }, - "hooks": [1,72,6000,1206,1206,3099,3496,3972,31,41,95,89,9,39824,2903,15,29,0,1,32,0,23,0], - "events": {"atk":1542,"deploy":37,"die":41,"dmg":3212,"engage":18,"fx":658,"heal":385,"skill":184,"spawn":69,"status":710}, - "fx": {"airstrike":5,"beam":54,"blessing":1,"blink":1,"bombard":9,"bombardShell":9,"burst":23,"copy":3,"dp":4,"drone":335,"droneLock":17,"drones":3,"finale":2,"firewall":1,"garrisonGrant":1,"lightning":124,"link":1,"lock":9,"radiantSword":4,"shell":8,"slash":2,"snow":5,"split":3,"storm":10,"summon":8,"talent":4,"tide":5,"wanted":7}, - "snaps": "4b23de24 b826ead4 8478a42a 5f198411 d8f2bcc3 1887ff31 4c303f89 eb6f8150 4dfd4f69 9992c24d 2addc854 8d1008cc 5356698a b471ba51 316422fb c3bf9985 bfae7486 4e4d06f2 d87e4df8 2727e182" + "hooks": [1,71,6000,1315,1315,3203,3599,4686,29,40,95,90,9,40549,2884,15,29,0,1,29,0,22,0], + "events": {"atk":1651,"deploy":36,"die":40,"dmg":3315,"engage":19,"fx":656,"heal":392,"skill":185,"spawn":70,"status":709}, + "fx": {"airstrike":4,"beam":54,"blink":1,"bombard":9,"bombardShell":9,"burst":22,"copy":3,"dp":5,"drone":335,"droneLock":17,"drones":3,"finale":1,"firewall":1,"garrisonGrant":1,"lightning":125,"link":1,"lock":9,"radiantSword":4,"shell":8,"slash":1,"snow":5,"split":4,"storm":10,"summon":8,"talent":4,"tide":5,"wanted":7}, + "snaps": "4b23de24 b826ead4 8478a42a 5f198411 d8f2bcc3 2aabeecc d9a8f12b 5625089b 88c141c0 9d5256e8 fa991756 48716941 5922e4cb 8cdc8c3e e587968c b4e9f94f 173fd436 7eae1ec2 3daeae7e 9e00b42a" }, "boss-boss_1-solo": { "about": "假想敌:胄 solo pool 1800000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -258,56 +259,56 @@ "round": 14, "seed": 1428555614, "waveId": "act1autochess_h07_03", - "time": 193.43, - "ticks": 5803, + "time": 191.33, + "ticks": 5740, "reason": "cleared", "killed": 19, "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1423, + "rngDraws": 1408, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1572377,"bossDmg":1451138,"heal":8263,"deaths":4,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2612061,"bossDmg":2548862,"heal":37169,"deaths":3,"layerGains":{}} + "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1598736,"bossDmg":1477507,"heal":4950,"deaths":4,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2585697,"bossDmg":2522493,"heal":40534,"deaths":3,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2781,0,1], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2673,0,1], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,11,0,0,0,0,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,0,22,1430,182,22,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1960.01,1,13,6,882653,4034,609,59,8], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",949.1,1,17,4,348059,8347,1419,62,3], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,62,1,26518,15143,2047,0,3], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,66,2,174259,8329,1184,52,3], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,0,67,0,42,16,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,0,41,0,0,11,12], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,96779,0,0,195,5], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,1,43,3444,505,43,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1745.65,1,13,2,914910,4480,538,59,8], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",252.98,1,17,4,348597,8106,407,62,3], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,62,0,26511,12270,434,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,66,2,169698,7389,372,48,3], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,1,32,0,20,15,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,0,38,0,0,10,10], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,95529,0,0,193,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,26,0,0,0,0,0,null], - ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,463521,0,0,198,3], + ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,462835,0,0,197,3], ["p2",13,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,60,0,25,2767,0,7,1], - ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,55,0,9,3172,480,9,1], - ["p2",15,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6287.75,1,32,0,318017,2551,0,90,3], - ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,6,209954,2551,646,71,4], - ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,0,1410660,6075,1629,347,6], - ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,4783,57,1], - ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,77225,1525,0,137,4], + ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,57,0,9,3172,480,9,1], + ["p2",15,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6287.75,1,32,0,315064,2551,0,89,3], + ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,7,206450,2551,646,71,4], + ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,1,1392349,6026,1618,341,6], + ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,4850,56,1], + ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,76316,1525,0,135,4], ["p2",20,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,59,0,103614,1541,0,19,2], - ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2296,29631,59,2], + ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2296,32939,56,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["-","~4","device","trap_1105_accrate",null,null,100,1,4,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43967,0,0,87,1], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43364,0,0,86,1], ["p2","~1","token","token_10019_nearl2_sword",null,null,8280,0,41,0,9679,0,0,0,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1989.96,0,42,0,3,0,0,3,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1586.2,0,50,0,4,0,0,4,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,51,0,9679,0,0,0,null], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,54,0,0,0,0,0,null], - ["p1","~1","token","token_10040_siege2_vlion",null,null,3039.44,0,56,0,4,2481,0,4,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,57,0,1,0,0,1,null], + ["p1","~1","token","token_10040_siege2_vlion",null,null,4834.05,0,54,0,6,686,0,6,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,55,1,1,0,0,1,null], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,56,0,0,0,0,0,null], ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,61,0,9679,0,0,0,null], - ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,64,0,0,0,0,0,null], + ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,63,0,0,0,0,0,null], ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1586.2,0,65,0,0,0,0,0,null] ], "enemies": { @@ -315,21 +316,20 @@ "enemy_1198_msfshu_2": [6,6,0,0,102], "enemy_1209_sfden_2": [2,2,0,0,154793], "enemy_1210_msfden_2": [2,2,0,0,386], - "enemy_9021_acduml": [1,1,0,1286,4000000], - "enemy_9023_acdums": [9,7,0,53675,348] + "enemy_9021_acduml": [1,1,0,0,4000000], + "enemy_9023_acdums": [9,7,0,51573,343] }, - "hooks": [1,66,5803,1515,1515,4109,4992,3727,27,41,66,60,358,42326,2036,3,22,0,1,27,0,12,0], - "events": {"atk":1784,"deploy":40,"die":41,"dmg":4700,"engage":20,"fx":1252,"heal":433,"skill":126,"spawn":59,"status":886}, + "hooks": [1,66,5740,1515,1515,4047,4898,2384,27,41,64,59,352,41270,2004,3,22,0,1,26,0,9,0], + "events": {"atk":1799,"deploy":40,"die":41,"dmg":4608,"engage":20,"fx":1249,"heal":429,"skill":123,"spawn":59,"status":880}, "fx": { - "airstrike": 128, + "airstrike": 131, "appear": 2, "beam": 11, - "blessing": 1, "blink": 2, - "bombard": 68, + "bombard": 69, "bombardShell": 69, "buff": 3, - "burst": 12, + "burst": 9, "copy": 1, "disappear": 2, "displace": 1, @@ -337,19 +337,19 @@ "drone": 208, "droneLock": 18, "drones": 2, - "explode": 455, + "explode": 446, "finale": 1, "firewall": 1, "garrisonGrant": 1, - "lightning": 32, + "lightning": 41, "link": 7, "lock": 69, "lure": 3, "phase": 43, "radiantSword": 3, - "scorchBurst": 5, + "scorchBurst": 1, "slash": 11, - "snow": 45, + "snow": 46, "split": 4, "steal": 6, "storm": 3, @@ -360,7 +360,7 @@ "tide": 3, "wanted": 1 }, - "snaps": "8c6eb9d3 f5f9a5b4 160c191e 00bb0683 7dd5622f 4b0281e0 6b9388d5 d238f18e 0d5c7c32 c5a0818c 04311046 f68b2536 1eb1629f b8281779 5c9abae1 b74b5a58 4ca28388 6c1d2341 c8e29d0c 0892f5e8" + "snaps": "8c6eb9d3 f5f9a5b4 160c191e 00bb0683 dfed73aa 594d60ee 77b49060 2fdffb91 5dbd4597 d841c866 8db47d4e 3d40713d 38282749 d71e8b73 02a1d069 a8056feb 06679af5 803f508c f9ba3dfb aadf1d1d" }, "boss-boss_3-solo": { "about": "假想敌:管 solo pool 2000000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -549,100 +549,101 @@ "round": 14, "seed": 2302764647, "waveId": "act2autochess_h07_05", - "time": 128.53, - "ticks": 3856, + "time": 133.67, + "ticks": 4010, "reason": "cleared", - "killed": 18, - "total": 19, + "killed": 21, + "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1055, + "rngDraws": 1068, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":18,"total":19,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1203964,"bossDmg":884209,"heal":18083,"deaths":2,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1184403,"bossDmg":675791,"heal":65228,"deaths":1,"layerGains":{}} + "p1": {"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1395002,"bossDmg":992386,"heal":27672,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1093758,"bossDmg":567614,"heal":66447,"deaths":1,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,24421,1782,7413,9,2], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",0,0,12,0,34939,4696,0,8,1], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3914.04,1,14,0,70411,3401,423,29,2], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2028.6,1,1,1,563579,2298,1308,41,3], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,1,58403,887,0,15,2], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",2205.24,1,3,0,14550,8476,757,0,3], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1989.96,1,18,1,160434,2156,453,9,6], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,91022,3776,6991,55,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1824.36,1,20,3,123974,4575,548,20,20], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",0,0,9,0,35679,2432,47,45,2], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,83881,6608,12367,25,2], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",4055.82,1,12,1,89789,2931,42,21,2], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",4279.38,1,14,0,93051,8699,19,39,2], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2028.6,1,1,6,488163,2222,958,42,4], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,1,105530,1370,0,25,2], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",2205.24,1,3,0,19226,8775,554,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1989.96,1,18,2,217799,4129,453,21,7], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,69010,3091,11264,39,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1824.36,1,20,2,130257,4575,548,22,22], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2612.34,1,9,0,75493,4481,460,93,3], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,22,0,0,0,0,0,null], - ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,10,0,17904,1810,142,31,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4677.12,1,60,4,367230,8033,0,114,5], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,2,155798,9830,0,34,4], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",462.64,1,15,0,19207,3617,1020,17,1], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",7293.79,1,56,4,211027,13812,0,61,3], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,2,251161,2788,2336,27,2], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4486.14,1,17,0,55123,7766,2955,8,1], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2998,16967,29,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,21440,1047,0,29,3], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,63,1,80761,1541,0,11,2], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,5444,41951,33,2], + ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,10,0,12026,1668,0,21,1], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4677.12,1,69,5,337357,8718,0,94,7], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,0,138400,4725,0,30,3], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",836.8,1,15,0,33928,3917,1672,28,1], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6547.48,1,67,2,194567,12526,0,53,3], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,3,183358,2788,2379,25,2], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4561.13,1,17,0,74662,7836,3907,8,1], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2298,9840,19,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,26615,1236,0,35,3], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,66,0,88959,1541,0,12,2], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,4690,48648,35,2], ["p2","~1","token","token_10019_nearl2_sword",null,null,1907.57,0,32,0,8360,6372,0,11,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,2301.84,0,36,0,4615,0,0,11,null], - ["p1","~1","token","token_10040_siege2_vlion",null,null,1434.97,0,39,0,3325,3275,0,8,null], - ["p2","~2","token","token_10019_nearl2_sword",null,null,6171.28,0,46,0,7553,429,0,0,null], - ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,48,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,0,0,53,0,707,1668,0,2,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,7526.44,1,58,0,6744,754,0,0,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,4822.74,1,62,0,0,697,0,0,null] + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,2301.84,0,36,0,5082,0,0,11,null], + ["p1","~1","token","token_10040_siege2_vlion",null,null,2760.11,0,39,0,0,1446,0,0,null], + ["p2","~2","token","token_10019_nearl2_sword",null,null,6171.28,0,47,0,7553,429,0,0,null], + ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1820.54,1,57,0,4744,1079,1008,8,1], + ["p2","~3","token","token_10019_nearl2_sword",null,null,7543.59,0,61,0,0,736,0,0,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,3148,1,63,0,950,2372,0,2,null] ], "enemies": { "enemy_1010_demon_2": [2,2,0,1410,128995], - "enemy_2009_csaudc": [4,4,0,1342,137594], - "enemy_2010_csdcr": [2,2,0,2735,103196], - "enemy_2016_csphtm": [2,2,0,85016,1560000], - "enemy_2017_csphts": [11,10,0,4530,458583] + "enemy_2009_csaudc": [4,4,0,2459,137594], + "enemy_2010_csdcr": [2,2,0,2819,103196], + "enemy_2016_csphtm": [2,2,0,89739,1560000], + "enemy_2017_csphts": [13,13,0,3912,558976] }, - "hooks": [1,61,3856,721,721,2033,2392,2545,25,40,68,57,43,28751,1223,39,21,0,1,23,0,16,87], - "events": {"atk":916,"deploy":40,"die":40,"dmg":2192,"engage":22,"fx":594,"heal":389,"skill":125,"spawn":51,"status":599}, + "hooks": [1,67,4010,792,792,2078,2476,3029,25,45,76,63,55,30831,1272,36,23,0,1,25,0,18,82], + "events": {"atk":994,"deploy":44,"die":45,"dmg":2280,"engage":22,"fx":647,"heal":431,"skill":139,"spawn":53,"status":611}, "fx": { - "airstrike": 12, - "blink": 20, - "bombard": 27, - "bombardShell": 27, - "burst": 16, - "cleanse": 2, - "copy": 1, - "dodge": 87, - "dp": 2, - "drone": 115, - "droneLock": 8, + "airstrike": 19, + "blink": 26, + "bombard": 30, + "bombardShell": 31, + "burst": 18, + "cleanse": 1, + "copy": 2, + "dodge": 82, + "dp": 3, + "drone": 126, + "droneLock": 6, "drones": 2, "emergency": 1, - "explode": 36, - "extraAttack": 5, - "finale": 4, + "explode": 35, + "extraAttack": 12, + "finale": 3, "firewall": 2, "garrisonGrant": 1, - "lightning": 71, - "link": 3, - "lock": 27, + "lightning": 81, + "link": 4, + "lock": 36, "lure": 2, + "palsy": 1, "radiantSword": 3, "scorchBurst": 2, - "shield": 11, - "slash": 37, - "snow": 22, - "split": 2, + "shield": 10, + "slash": 28, + "snow": 27, + "split": 1, "steal": 1, - "storm": 6, + "storm": 7, "strike": 3, - "summon": 16, - "sunBurst": 4, + "summon": 18, + "sunBurst": 6, "talent": 4, "telegraph": 2, "tide": 3, - "wanted": 7 + "wanted": 8 }, - "snaps": "7db84769 07f86d88 93f09fef c359f639 8c1c3866 2e4a5893 f241408f 1d2dafff 2e0c6f08 0716004e 656c6621 e7fc5f6b 5fdc9566" + "snaps": "7db84769 7269bb14 debc6927 1fe57af1 cd893fd9 4b9ffc29 a87b92f9 65adf128 79c69642 251697e3 c7f29e14 68a15c0e f27d78d6 6d478d9c" }, "boss-boss_5-solo": { "about": "卢西恩,“猩红血钻” solo pool 780000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -1111,106 +1112,104 @@ "killed": 8, "total": 8, "unspawned": 0, - "bossHpLeft": 3570058, - "rngDraws": 1579, + "bossHpLeft": 4244980, + "rngDraws": 1157, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1989162,"bossDmg":803960,"heal":23383,"deaths":4,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":3240431,"bossDmg":1176195,"heal":126751,"deaths":10,"layerGains":{}} + "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1611573,"bossDmg":677322,"heal":28230,"deaths":6,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1730098,"bossDmg":630000,"heal":65212,"deaths":19,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",5343.08,1,15,0,1906,10482,12401,28,3], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2910.14,1,11,0,19692,205,0,21,1], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",1761.93,1,17,0,50071,1601,0,31,2], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",0,0,7,2,1548110,3561,0,55,8], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1074.65,1,9,0,33675,10123,0,46,2], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",463.12,1,55,0,25244,10860,954,0,4], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",2451.4,1,13,1,90440,0,0,0,11], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,19,1,42621,0,7847,77,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",0,0,21,1,144190,13392,0,29,29], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,63,1,24647,9390,349,66,2], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",6441.45,1,15,0,1766,11140,18644,21,3], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2431.91,1,11,0,21819,1330,0,27,1], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",815.35,1,17,0,62713,3165,0,40,2], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",0,0,7,1,1153427,3205,0,48,7], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1748.62,1,9,0,33475,1566,0,46,2], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,69,0,25244,9252,341,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",2451.4,1,13,2,95402,0,0,0,11], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,19,0,41704,0,7018,76,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",0,0,21,1,147157,11079,0,29,29], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,62,2,20281,7768,444,76,3], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,28,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,24,0,0,1640,318,4,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",0,0,62,1,459553,38345,0,197,3], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",0,0,60,0,497307,16632,0,66,5], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,66,0,13781,7737,2820,42,2], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",1302.59,1,61,0,512511,25088,0,68,3], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",765.29,1,8,0,477111,13038,0,78,3], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2215,1,14,0,969378,5435,3408,291,6], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",3038.4,1,20,0,0,0,24080,78,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1439,1,10,0,98857,0,0,131,4], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1695.1,1,59,1,183585,13999,0,2,5], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1592.1,1,25,0,0,14000,96443,80,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",0,0,60,1,469390,31523,0,144,3], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",0,0,58,0,179542,5534,0,37,3], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,67,0,49984,5541,3227,73,3], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",0,0,66,0,286835,21134,0,32,2], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",1,1,68,1,317814,5773,0,53,3], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1320.67,1,71,0,158716,11682,6486,156,3], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",0,0,64,0,0,7081,8002,38,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",0,0,10,0,51570,1554,115,82,2], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",0,0,57,0,209502,14361,0,2,5], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",0,0,63,0,0,11080,47381,40,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["-","~4","device","trap_1105_accrate",null,null,100,1,4,0,0,0,0,0,null], ["-","~5","device","trap_1105_accrate",null,null,100,1,5,0,0,0,0,0,null], ["-","~6","device","trap_1105_accrate",null,null,100,1,6,0,0,0,0,0,null], - ["p2","~1","token","token_10019_nearl2_sword",null,null,2280.4,0,47,0,6744,6000,0,5,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1322,1,48,0,1766,2370,1514,30,1], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1102.65,0,49,0,595,675,0,11,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,0,0,51,0,661,1322,0,10,null], + ["p2","~1","token","token_10019_nearl2_sword",null,null,1574.25,0,47,0,6744,6706,0,5,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1252,1,48,0,1761,2255,1464,31,1], + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1102.65,0,49,0,651,475,0,9,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,0,0,51,0,629,1322,0,10,null], ["p1","~4","token","token_10030_mlyss_wtrman",null,null,0,0,53,0,794,1322,0,12,null], ["p1","~1","token","token_10040_siege2_vlion",null,null,3730,0,54,0,4750,270,0,10,null], - ["p1","~1","token","token_10017_skadi2_dedant",null,null,138,0,56,0,0,0,0,0,null], - ["p2","~2","token","token_10019_nearl2_sword",null,null,0,0,57,0,21605,6600,0,12,null], - ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,64,0,0,0,0,0,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,3926.59,0,65,0,0,97,0,0,null], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,1,67,0,0,0,0,0,null] + ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,56,0,0,0,0,0,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,3996.4,0,65,0,0,4,0,0,null], + ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,1,70,0,0,0,0,0,null] ], "enemies": { - "enemy_1267_nhpbr_2": [6,6,0,5992,141894], - "enemy_9007_acelem": [2,2,0,22960,309587], - "enemy_9017_achunt_2": [2,0,0,57558,2029942], - "enemy_9018_actrpa": [1,0,0,42972,765851], - "enemy_9019_actrpb": [1,0,0,26761,756394], - "enemy_9020_actrpc": [1,0,0,18223,1328263] + "enemy_1267_nhpbr_2": [6,6,0,3969,141894], + "enemy_9007_acelem": [2,2,0,22690,309587], + "enemy_9017_achunt_2": [2,0,0,40843,1355020], + "enemy_9018_actrpa": [1,0,0,30056,448482], + "enemy_9019_actrpb": [1,0,0,23875,432827], + "enemy_9020_actrpc": [1,0,0,31097,751645] }, - "hooks": [1,65,6000,1653,1653,7414,13693,3721,26,37,100,94,326,46845,2814,18,13,0,1,27,0,18,0], - "events": {"atk":2008,"deploy":46,"die":37,"dmg":13203,"engage":24,"fx":2168,"heal":883,"skill":194,"spawn":52,"status":833}, + "hooks": [1,69,6000,1243,1243,5667,10546,2914,36,46,91,86,218,35981,1870,12,13,0,1,50,0,17,0], + "events": {"atk":1517,"deploy":50,"die":46,"dmg":10349,"engage":23,"fx":2039,"heal":486,"skill":177,"spawn":50,"status":699}, "fx": { - "airstrike": 117, - "beam": 31, - "blessing": 1, + "airstrike": 65, + "beam": 19, "blink": 4, - "bombard": 68, - "bombardShell": 68, - "burst": 18, + "bombard": 60, + "bombardShell": 60, + "burst": 17, "camouflage": 1, "copy": 2, "dash": 24, - "displace": 24, - "dp": 2, - "drone": 275, + "dp": 3, + "drone": 272, "droneLock": 15, "drones": 5, - "extraAttack": 12, - "finale": 5, + "extraAttack": 23, + "finale": 3, "firewall": 3, + "firewallBlock": 1, "garrisonGrant": 1, - "lightning": 119, - "link": 1141, - "lock": 72, + "lightning": 125, + "link": 1139, + "lock": 63, "lure": 2, "phase": 11, - "radiantSword": 2, + "radiantSword": 1, "revive": 3, "scorchBurst": 3, - "shieldBreak": 9, - "slash": 55, - "snow": 25, + "shieldBreak": 8, + "slash": 33, + "snow": 27, "split": 3, - "steal": 6, + "steal": 2, "storm": 11, - "summon": 4, + "summon": 3, "sunBurst": 3, - "talent": 7, - "tide": 4, - "wanted": 6, + "talent": 6, + "tide": 3, + "undying": 2, + "wanted": 7, "zone": 6 }, - "snaps": "2a921421 d160972c 4e5b9396 7b13edd2 689bae2b f9a15be0 67150ecd 3a4286df 13119f08 b1b42c22 b5c0b449 f4bddab7 22e104fd fd2f838a b7964c3e 83e4b794 62994daa 16b9850d 3f3a5054 498cda94" + "snaps": "2a921421 d160972c dc04fbe2 00a50255 096996eb 5d99e107 98202c7a 1c34eeb5 a126f6eb d43ee6b7 dce75029 ada34041 e2ea907e d8796cf5 44dfa6b3 c9096767 0a9e97e5 e9ec2c29 3c0cfcb7 38970ef6" }, "hidden-boss_9-solo": { "about": "假想敌:铳 solo pool 2800000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", diff --git a/test/golden/matches.json b/test/golden/matches.json index a8c1f602..9efb0352 100644 --- a/test/golden/matches.json +++ b/test/golden/matches.json @@ -280,15 +280,15 @@ }, { "round": 11, - "ai_0": [1,27,12,0,1,5,8,"4a74f628",257,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/86, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",34,34,0,96] + "ai_0": [1,27,12,0,1,5,8,"4a74f628",256,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/85, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",34,34,0,96] }, { "round": 12, - "ai_0": [1,27,13,0,0,6,8,"c9c17eab",335,"arcaneShip 1/0, kazimierzShip 1/84, kjeragShip 0/2, preciShip 1/42, raidShip 1/114, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",31,31,0,111] + "ai_0": [1,27,13,0,0,6,8,"c9c17eab",334,"arcaneShip 1/0, kazimierzShip 1/84, kjeragShip 0/2, preciShip 1/42, raidShip 1/113, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",31,31,0,111] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"b6fe7f54",432,"arcaneShip 1/6, kazimierzShip 1/104, kjeragShip 0/2, miraShip 1/3, preciShip 1/60, raidShip 1/134, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/33",115,115,0,125] + "ai_0": [1,27,12,0,0,6,8,"b6fe7f54",431,"arcaneShip 1/6, kazimierzShip 1/104, kjeragShip 0/2, miraShip 1/3, preciShip 1/60, raidShip 1/133, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/33",115,115,0,125] } ], "players": { @@ -302,9 +302,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 425, - "stats": {"activatedLayers":512,"bossDamage":1333883,"dmgDealt":3325553,"gold":151,"itemsEquipped":18,"kills":419,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":21}, + "stats": {"activatedLayers":511,"bossDamage":1333883,"dmgDealt":3325553,"gold":151,"itemsEquipped":18,"kills":419,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":21}, "lineup": ["4_14_b@12,8[5_01_e_a+2_01_e_b]","3_19_a@11,7[3_02_e_b]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,6","6_17_a@10,8[4_10_e_b+4_05_e_a]","1_08_a@9,5[1_01_e_a+1_02_e_a]","5_07_a@9,6","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/18","kazimierzShip 1/104","kjeragShip 0/2","miraShip 1/3","preciShip 1/80","raidShip 1/134","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/10","suntShip 1/0","swiftShip 1/53"] + "bonds": ["arcaneShip 1/18","kazimierzShip 1/104","kjeragShip 0/2","miraShip 1/3","preciShip 1/80","raidShip 1/133","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/10","suntShip 1/0","swiftShip 1/53"] } } }, @@ -427,15 +427,15 @@ }, { "round": 11, - "ai_0": [1,18,12,0,1,5,8,"4a74f628",256,"kazimierzShip 1/60, kjeragShip 0/2, preciShip 1/26, raidShip 1/91, sargonShip 0/8, siracusaShip 1/55, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",29,34,5,96] + "ai_0": [1,19,12,0,1,5,8,"4a74f628",260,"kazimierzShip 1/60, kjeragShip 0/2, preciShip 1/26, raidShip 1/91, sargonShip 0/8, siracusaShip 1/59, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",30,34,4,96] }, { "round": 12, - "ai_0": [1,8,13,0,0,6,8,"c9c17eab",350,"arcaneShip 1/0, kazimierzShip 1/96, kjeragShip 0/2, preciShip 1/50, raidShip 1/119, sargonShip 0/8, siracusaShip 1/61, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",21,31,10,111] + "ai_0": [1,11,13,0,0,6,8,"c9c17eab",354,"arcaneShip 1/0, kazimierzShip 1/96, kjeragShip 0/2, preciShip 1/50, raidShip 1/119, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",23,31,8,111] }, { "round": 13, - "ai_0": [1,3,12,0,0,6,8,"c27bbe57",455,"arcaneShip 1/6, kazimierzShip 1/116, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/147, sargonShip 0/8, siracusaShip 1/81, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",110,115,5,125] + "ai_0": [1,5,12,0,0,6,8,"c27bbe57",459,"arcaneShip 1/6, kazimierzShip 1/116, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/147, sargonShip 0/8, siracusaShip 1/85, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",109,115,6,125] } ], "players": { @@ -449,9 +449,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 340, - "stats": {"activatedLayers":492,"bossDamage":696666,"dmgDealt":4051066,"gold":137,"itemsEquipped":16,"kills":398,"leaks":24,"lpLost":24,"merges":4,"perfectRounds":9,"refreshes":13}, + "stats": {"activatedLayers":496,"bossDamage":696666,"dmgDealt":4099361,"gold":137,"itemsEquipped":16,"kills":401,"leaks":22,"lpLost":22,"merges":4,"perfectRounds":9,"refreshes":13}, "lineup": ["3_19_a@12,5[3_02_e_b]","4_14_b@12,7[2_01_e_a+5_01_e_a]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,3","5_07_a@10,7","6_17_a@10,8[4_10_e_b]","1_08_a@9,4[1_01_e_a+1_02_e_a]","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/12","kazimierzShip 1/116","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/147","sargonShip 0/8","siracusaShip 1/95","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] + "bonds": ["arcaneShip 1/12","kazimierzShip 1/116","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/147","sargonShip 0/8","siracusaShip 1/99","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] } } }, @@ -710,7 +710,7 @@ { "round": 13, "ai_0": [0,0,0,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/3, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",null,null,null,113], - "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/30, kazimierzShip 0/2, preciShip 0/93, sargonShip 0/102, skillfulShip 0/24, swiftShip 0/8",40,49,9,135] + "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/30, kazimierzShip 0/2, preciShip 0/95, sargonShip 0/104, skillfulShip 0/24, swiftShip 0/8",40,49,9,135] } ], "players": { @@ -724,7 +724,7 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 2, "reward": 255, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1653549,"gold":113,"itemsEquipped":9,"kills":172,"leaks":62,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1651834,"gold":113,"itemsEquipped":9,"kills":172,"leaks":62,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, "lineup": [], "bonds": ["deputShip 0/6","emptyShip 0/2","kazimierzShip 0/2","kjeragShip 0/2","raidShip 0/3","siracusaShip 0/52","skillfulShip 0/12","soloShip 0/9","steadShip 0/16","suntShip 0/6","swiftShip 0/8"] }, @@ -738,9 +738,9 @@ "title": {"id":"comment_5","name":"万事俱备","picId":"comment_icon_5","text":"装备配发数量最多"}, "trophies": 3, "reward": 298, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3769501,"gold":135,"itemsEquipped":18,"kills":260,"leaks":38,"lpLost":29,"merges":3,"perfectRounds":9,"refreshes":16}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3784936,"gold":135,"itemsEquipped":18,"kills":260,"leaks":38,"lpLost":29,"merges":3,"perfectRounds":9,"refreshes":16}, "lineup": [], - "bonds": ["arcaneShip 0/30","kazimierzShip 0/2","preciShip 0/93","sargonShip 0/102","skillfulShip 0/24","swiftShip 0/8"] + "bonds": ["arcaneShip 0/30","kazimierzShip 0/2","preciShip 0/95","sargonShip 0/104","skillfulShip 0/24","swiftShip 0/8"] } } }, @@ -1485,7 +1485,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2267,"bossDamage":6609998,"dmgDealt":23342655,"gold":149,"itemsEquipped":23,"kills":290,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, + "stats": {"activatedLayers":2267,"bossDamage":6786913,"dmgDealt":24304725,"gold":149,"itemsEquipped":23,"kills":291,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, "lineup": ["3_16_b@12,8[3_01_e_a+1_01_e_b]","4_09_b@11,5","3_11_b@11,8[3_02_e_a+6_06_e_a]","1_02_b@10,4[1_02_e_a+4_02_e_a]","5_14_a@10,8[3_03_e_a+1_05_e_a]","6_20_a@9,6","3_20_a@9,8[3_07_e_a+3_08_e_a]","6_05_a@9,9[2_04_e_a+5_02_e_b]"], "bonds": ["arcaneShip 0/316","deputShip 1/312","egirShip 0/300","emptyShip 0/300","indomShip 0/300","investShip 0/300","kazimierzShip 0/302","kjeragShip 1/343","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/343","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 0/319","soloShip 1/310","steadShip 1/341","suntShip 1/310","swiftShip 1/308","victoriaShip 0/300","visiShip 0/300","yanShip 0/300"] }, @@ -1499,7 +1499,7 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2301,"bossDamage":7282442,"dmgDealt":25059114,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, + "stats": {"activatedLayers":2301,"bossDamage":7103127,"dmgDealt":23983658,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, "lineup": ["2_10_a@11,5[2_03_e_b+3_09_e_a]","5_03_a@11,8[1_02_e_a+5_02_e_a]","1_06_a@10,3[1_05_e_a+3_02_e_a]","3_16_a@10,4[3_03_e_b+4_04_e_b]","5_06_a@10,8[3_09_e_b+3_09_e_b]","4_21_b@9,6[4_06_e_a+3_10_e_b]","5_02_a@9,8[4_09_e_a+3_06_e_b]","1_17_b@9,9[3_08_e_a+1_01_e_a]"], "bonds": ["arcaneShip 1/327","deputShip 1/318","egirShip 0/300","emptyShip 0/300","indomShip 1/308","investShip 0/300","kazimierzShip 0/300","kjeragShip 0/300","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/404","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 1/308","soloShip 0/310","steadShip 0/323","suntShip 1/304","swiftShip 0/300","victoriaShip 1/332","visiShip 0/300","yanShip 0/305"] } @@ -1688,17 +1688,17 @@ }, { "round": 11, - "h_0": [1,27,14,0,0,6,8,"b74093b9",310,"preciShip 2/8, raidShip 1/67, sargonShip 1/116, steadShip 1/32, victoriaShip 1/38, visiShip 1/49",19,19,0,102], + "h_0": [1,27,14,0,0,6,8,"b74093b9",306,"preciShip 2/8, raidShip 1/65, sargonShip 1/116, steadShip 1/30, victoriaShip 1/38, visiShip 1/49",19,19,0,102], "ai_0": [1,28,14,0,0,5,8,"d2ce576d",120,"kjeragShip 0/2, miraShip 1/8, raidShip 1/20, sargonShip 0/2, siracusaShip 1/56, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/15, yanShip 1/21",19,19,0,103] }, { "round": 12, - "h_0": [1,27,12,0,2,6,8,"4ad2225f",388,"preciShip 2/32, raidShip 1/82, sargonShip 1/140, steadShip 1/42, victoriaShip 1/38, visiShip 1/54",33,33,0,112], + "h_0": [1,27,12,0,2,6,8,"4ad2225f",388,"preciShip 2/32, raidShip 1/80, sargonShip 1/140, steadShip 1/40, victoriaShip 1/40, visiShip 1/56",33,33,0,112], "ai_0": [1,28,12,0,2,6,8,"3482ec70",113,"kjeragShip 0/2, miraShip 1/12, raidShip 1/25, sargonShip 0/2, siracusaShip 1/56, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/20, yanShip 0/21",21,33,12,114] }, { "round": 13, - "h_0": [1,27,14,2,0,6,8,"e9d4c984",444,"preciShip 2/56, raidShip 1/97, sargonShip 1/182, steadShip 0/42, suntShip 1/0, victoriaShip 1/44, visiShip 1/65",50,50,0,125], + "h_0": [1,27,14,0,2,6,8,"e9d4c984",452,"preciShip 2/56, raidShip 1/101, sargonShip 1/182, steadShip 0/40, suntShip 1/0, victoriaShip 1/46, visiShip 1/67",50,50,0,125], "ai_0": [1,28,14,0,0,6,8,"53bc4bba",184,"arcaneShip 1/16, kjeragShip 0/2, miraShip 0/12, raidShip 1/30, sargonShip 0/2, siracusaShip 1/72, skillfulShip 1/8, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/25, yanShip 1/33",29,50,21,127] } ], @@ -1713,9 +1713,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":460,"bossDamage":1142027,"dmgDealt":5122186,"gold":139,"itemsEquipped":26,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, + "stats": {"activatedLayers":468,"bossDamage":1141856,"dmgDealt":5122032,"gold":139,"itemsEquipped":26,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, "lineup": ["6_08_a@12,8[5_01_e_a+3_08_e_a]","5_02_a@11,8[3_11_e_a+5_01_e_b]","6_05_a@10,6[2_01_e_b+3_08_e_b]","4_04_a@10,7[4_11_e_a]","4_23_b@10,8","5_diy1_a@9,6[3_01_e_a+4_04_e_b]","6_07_a@9,8[4_05_e_a+3_04_e_a]","3_05_b@9,9[4_02_e_b]"], - "bonds": ["preciShip 2/56","raidShip 1/102","sargonShip 1/182","steadShip 0/42","suntShip 1/0","victoriaShip 1/50","visiShip 1/70"] + "bonds": ["preciShip 2/56","raidShip 1/106","sargonShip 1/182","steadShip 0/40","suntShip 1/0","victoriaShip 1/52","visiShip 1/72"] }, "ai_0": { "alive": true, @@ -1727,7 +1727,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":240,"bossDamage":432973,"dmgDealt":3036593,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, + "stats": {"activatedLayers":240,"bossDamage":433144,"dmgDealt":3036747,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, "lineup": ["6_16_a@12,8[2_01_e_a]","2_04_a@11,7","5_12_a@11,8[1_05_e_b+3_03_e_b]","5_20_b@10,6[1_01_e_a+3_11_e_a]","3_03_b@10,8[3_02_e_a+4_04_e_a]","4_16_a@9,7[3_07_e_a+4_08_e_a]","1_08_b@9,8[1_02_e_a+4_06_e_a]","4_04_a@9,9[4_11_e_a+4_12_e_a]"], "bonds": ["arcaneShip 1/28","kjeragShip 0/2","miraShip 0/12","raidShip 1/35","sargonShip 0/2","siracusaShip 1/92","skillfulShip 1/16","soloShip 1/0","steadShip 0/2","suntShip 1/0","visiShip 1/30","yanShip 1/39"] } diff --git a/test/golden/roster.json b/test/golden/roster.json index b36ae75f..022b5487 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -1016,40 +1016,40 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 87, + "killed": 92, "total": 126, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 576, + "rngDraws": 580, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":87,"total":126,"perfect":false,"leaks":39,"leaksUncounted":0,"coins":6,"dmg":4144019,"bossDmg":0,"heal":71137,"deaths":9,"layerGains":{"preciShip":4}} + "p1": {"killed":92,"total":126,"perfect":false,"leaks":34,"leaksUncounted":0,"coins":6,"dmg":4413978,"bossDmg":0,"heal":82323,"deaths":8,"layerGains":{"preciShip":4}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",1353.95,1,115,8,466769,7558,1098,87,4], - ["p1",2,"op","chess_char_6_03_a",2,null,1302.82,1,108,2,60032,17828,6704,48,2], - ["p1",3,"op","chess_char_6_06_a",2,null,0,0,151,9,418619,19914,422,91,2], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,9,226865,26968,5973,297,2], - ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,140799,0,0,47,5], - ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,1,322660,3069,854,126,3], - ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,1,29902,1242,1037,14,4], - ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,52244,80,4], - ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,35,805723,1346,119,83,4], - ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,19,1300307,1242,169,76,3], - ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,1,71446,10286,1562,0,4], - ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,0,300898,2559,955,69,5], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",2863.48,1,115,8,547728,6081,1130,87,4], + ["p1",2,"op","chess_char_6_03_a",2,null,2703,1,108,3,96724,21638,8650,75,2], + ["p1",3,"op","chess_char_6_06_a",2,null,2223,1,142,8,482800,21116,738,97,3], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,6,219859,29728,8163,298,2], + ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,138378,0,0,46,5], + ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,2,283224,3069,854,125,3], + ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,2,30193,1242,1037,14,4], + ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,58777,82,4], + ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,34,857246,1346,119,83,4], + ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,26,1374046,1242,169,76,3], + ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,2,75912,10286,1730,0,4], + ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,0,307866,2559,955,69,5], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,13,0,0,0,0,0,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,60,0,0,0,0,0,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,111,0,0,0,0,0,null], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,148,0,0,0,0,0,null] + ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,149,0,0,0,0,0,null] ], "enemies": { "enemy_10045_parrot": [1,0,1,0,49131], - "enemy_10098_crhro": [1,1,0,8717,185752], - "enemy_10124_uashld_2": [12,3,6,43100,1102888], + "enemy_10098_crhro": [1,1,0,9588,185752], + "enemy_10124_uashld_2": [12,6,5,49762,1290422], "enemy_1019_jshoot_2": [1,1,0,1515,16718], - "enemy_1043_zomsbr": [72,56,16,133,1008813], - "enemy_1061_zomshd": [30,21,8,17571,1673893], + "enemy_1043_zomsbr": [72,56,16,151,1022835], + "enemy_1061_zomshd": [30,23,7,16313,1746604], "enemy_1072_dlancer": [1,1,0,352,37150], "enemy_1165_duhond": [1,1,0,127,17337], "enemy_1196_msfyin_2": [1,1,0,0,9], @@ -1060,10 +1060,10 @@ "enemy_2001_duckmi_2": [1,0,1,0,13530], "enemy_9006_actoxi": [1,0,1,0,3658] }, - "hooks": [1,150,6900,1031,1111,7275,7468,68979,96,135,42,40,22,39588,1096,52,126,35,1,105,2,6,6], - "events": {"atk":2342,"bounty":3,"deploy":24,"die":100,"dmg":7403,"engage":10,"fx":539,"heal":125,"layer":2,"leak":35,"skill":82,"spawn":142,"status":2634}, - "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":6,"crit":46,"dodge":6,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":141,"lock":22,"lure":3,"revive":1,"snow":73,"soul":1,"sp":2,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, - "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 d1d36151 a862bf89 bd738773 54785a54 82f3a510 45d4ecfb ad4dd27f 4fcc42fe a68d6587 4210cb26 1b937847 5950e793 b1442398 8ea99017 6da4d589" + "hooks": [1,150,6900,1070,1146,7889,8141,69291,100,137,43,40,22,39797,1133,51,126,33,1,109,2,10,7], + "events": {"atk":2528,"bounty":3,"deploy":24,"die":104,"dmg":8076,"engage":10,"fx":554,"heal":128,"layer":2,"leak":33,"skill":83,"spawn":142,"status":2686}, + "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":10,"crit":39,"dodge":7,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":157,"lock":22,"lure":3,"revive":1,"snow":75,"soul":1,"sp":1,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, + "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 4b057061 c76044d5 1e3183dd 69b18662 97b0a95e ea897c2c 02baa76c cc3b79ca 5fe0ed47 a83d31e0 017f9645 bb7476b6 45f4958f 3b6429a1 4e60499c" }, "roster-017": { "about": "pass 0 band 6: chess_char_6_15_a chess_char_6_19_a chess_char_6_07_a chess_char_6_17_a chess_char_6_08_a chess_char_6_09_a chess_char_6_11_a chess_char_6_12_a chess_char_6_13_a chess_char_6_14_a chess_char_6_16_a chess_char_6_18_a", @@ -1153,7 +1153,7 @@ "total": 120, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 483, + "rngDraws": 502, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -1163,9 +1163,9 @@ "leaks": 0, "leaksUncounted": 0, "coins": 12, - "dmg": 1561453, + "dmg": 1560928, "bossDmg": 0, - "heal": 30059, + "heal": 29179, "deaths": 1, "layerGains": {"lateranoShip":12,"preciShip":12,"sargonShip":26} } @@ -1174,50 +1174,50 @@ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",4558.4,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3620.85,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3820.43,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20701,40,2], - ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,12,169583,0,0,16,5], - ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,5,53428,1556,548,8,2], - ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,3,31605,8646,121,0,4], - ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,207958,8900,2823,36,7], - ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,3,77599,0,1994,8,1], - ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,0,14472,0,0,4,4], - ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,18,148198,1500,188,142,4], - ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,57,774576,7688,564,73,4], + ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20204,39,2], + ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,12,169697,0,0,16,5], + ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,5,53428,1556,486,8,2], + ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,29961,8646,173,0,4], + ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,204487,8432,2713,36,7], + ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,3,63902,0,1900,8,1], + ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,0,14472,0,0,5,5], + ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,20,138355,1500,50,136,4], + ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,58,801146,7190,535,73,4], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,16,0,0,0,0,0,null], - ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,4,48440,1886,0,89,1], + ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,1,50974,1886,0,89,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6556,3093,866,11,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6556,3091,864,11,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,123.2,0,59,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1003.7,0,70,2,9216,2375,839,12,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,2008.19,0,99,1,9168,996,777,12,null], + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1113.22,0,70,0,8395,2266,839,12,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,2008.19,0,99,2,8901,996,777,12,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,101,0,0,0,0,0,null], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1171.51,0,131,1,10654,1773,638,12,null], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,603.66,0,131,1,10654,2271,638,12,null], ["p1","~3","token","token_10017_skadi2_dedant",null,null,123.2,1,137,0,0,0,0,0,null] ], "enemies": { "enemy_1005_yokai": [1,1,0,0,1327], "enemy_1009_lurker": [1,1,0,0,3650], "enemy_1023_jmage": [1,1,0,697,3650], - "enemy_1092_mdgint": [1,1,0,754,165888], + "enemy_1092_mdgint": [1,1,0,751,165888], "enemy_1166_dusbr": [1,1,0,0,4977], "enemy_1197_sfshu_2": [1,1,0,0,5557], "enemy_1198_msfshu_2": [3,3,0,0,21], "enemy_1210_msfden_2": [1,1,0,0,75], "enemy_1229_darmy": [27,27,0,0,188117], "enemy_1229_darmy_2": [57,57,0,0,520059], - "enemy_1275_dwlock_2": [21,21,0,24231,487711], + "enemy_1275_dwlock_2": [21,21,0,23653,487711], "enemy_1283_sgkill": [1,1,0,2234,19907], - "enemy_1364_spnaxe_2": [1,1,0,917,62641], + "enemy_1364_spnaxe_2": [1,1,0,917,62117], "enemy_1367_dseed": [2,2,0,0,9953], "enemy_1439_dslntf": [1,1,0,0,49766], "enemy_2002_bearmi_2": [1,1,0,0,18248], "enemy_9008_acbunn": [1,1,0,2434,19907] }, - "hooks": [1,145,5849,513,513,1336,1487,3519,124,130,34,30,37,24659,381,5,122,0,1,124,11,6,0], - "events": {"atk":606,"bounty":6,"deploy":21,"die":130,"dmg":1407,"engage":12,"fx":260,"heal":185,"layer":11,"skill":64,"spawn":145,"status":385}, - "fx": {"beam":4,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":87,"link":1,"lock":37,"lure":2,"scorchBurst":17,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, - "snaps": "19eb7843 2593e6ad ced96303 5ffc34ca 8cbd7231 1e7d8197 948c256c bd58965c b2457d86 151be715 19fcaae7 098875f8 0e3baca8 3c739f96 4210ffa1 2d576f76 35e8b3e6 e853bd87 a170c428 32d5be0d" + "hooks": [1,145,5849,507,507,1318,1468,3393,124,130,35,31,37,24779,382,5,122,0,1,124,11,6,0], + "events": {"atk":596,"bounty":6,"deploy":21,"die":130,"dmg":1388,"engage":12,"fx":256,"heal":179,"layer":11,"skill":66,"spawn":145,"status":387}, + "fx": {"beam":4,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, + "snaps": "19eb7843 2593e6ad ced96303 58bf6c6a 57b56210 fb902b8c 2edac827 24d6e4e1 4fd0b828 109f10aa 67cb9d6c ce16ff8f a012eb0e 55ce4c3e 7158e61d d736ac42 c7169d95 af7956c1 aa3be1fe fc315fa7" }, "roster-019": { "about": "pass 0 band 7: chess_char_6_15_b chess_char_6_19_b chess_char_5_01_b chess_char_5_05_b chess_char_6_17_b chess_char_6_13_b chess_char_6_14_b chess_char_6_16_b chess_char_6_18_b chess_char_6_20_b chess_char_5_02_b chess_char_5_03_b", @@ -2948,57 +2948,56 @@ "round": 13, "seed": 328939409, "waveId": "act1autochess_h06", - "time": 205.47, - "ticks": 6164, + "time": 204.23, + "ticks": 6127, "reason": "cleared", - "killed": 34, - "total": 87, + "killed": 51, + "total": 86, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 145, + "rngDraws": 277, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 34, - "total": 87, + "killed": 51, + "total": 86, "perfect": false, - "leaks": 53, + "leaks": 35, "leaksUncounted": 0, - "coins": 2, - "dmg": 1294259, + "coins": 0, + "dmg": 1359874, "bossDmg": 0, - "heal": 11340, - "deaths": 7, - "layerGains": {"egirShip":5,"swiftShip":78} + "heal": 8755, + "deaths": 5, + "layerGains": {"egirShip":5,"swiftShip":62} } }, "units": [ - ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,99,10,142277,13040,68,27,11], - ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,81,9,136856,12306,407,36,2], - ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,10844,14,5], - ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,52,10,581523,1800,0,46,40], - ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,59,0,251904,1314,22,46,5], - ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,100,5,181698,5922,0,25,3], + ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,64,19,258702,5492,68,46,18], + ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,81,1,42223,6473,68,19,1], + ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,8597,11,5], + ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,51,3,264406,2572,0,31,27], + ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,58,2,250771,1314,22,46,5], + ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,65,25,543772,6036,0,46,11], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_10027_vtsk": [1,0,1,12336,20415], - "enemy_10098_crhro": [1,0,1,4066,17712], - "enemy_1045_hammer_2": [19,4,15,13006,404659], - "enemy_1061_zomshd": [60,28,32,4033,906454], + "enemy_10027_vtsk": [1,0,1,13505,16174], + "enemy_10098_crhro": [1,0,1,3357,9770], + "enemy_1045_hammer_2": [19,11,8,0,443111], + "enemy_1061_zomshd": [60,39,21,3592,888063], "enemy_1166_dusbr_2": [1,1,0,0,7299], - "enemy_1207_sfji": [1,1,0,0,18248], - "enemy_1208_msfji": [1,0,1,0,0], - "enemy_1292_duskld": [1,0,1,0,2528], - "enemy_1430_lrrook": [1,0,1,0,18234], - "enemy_2017_csphts": [1,0,1,1723,1260] + "enemy_1207_sfji": [1,0,1,0,8734], + "enemy_1292_duskld": [1,0,1,0,2868], + "enemy_1430_lrrook": [1,0,1,0,46482], + "enemy_2017_csphts": [1,0,1,2215,2257] }, - "hooks": [1,103,6164,249,249,2817,2826,30376,41,94,66,66,0,9498,399,25,87,53,1,74,9,1,0], - "events": {"atk":463,"bounty":1,"deploy":13,"die":41,"dmg":2826,"engage":5,"fx":129,"heal":44,"layer":9,"leak":53,"skill":132,"spawn":96,"status":835}, - "fx": {"burst":1,"dollEnd":1,"explode":1,"garrison":8,"layer":1,"lightning":58,"shield":5,"slash":11,"sp":28,"storm":3,"substitute":3,"summon":1,"swap":2,"telegraph":1,"weightless":5}, - "snaps": "114138f7 91b6a2fa cc32ef2d c73b8b92 cfc9b573 b1f8d939 67a68be3 fbe5df15 f7521760 ef229a79 2c9fc754 fd4c140e 7704bbb0 20c916c8 38931f1b 403b9470 3735233a 40c9ddae c1216447 f0ba8a3b addc333e" + "hooks": [1,100,6127,238,238,2150,2158,21451,56,91,67,67,0,10009,674,24,86,35,1,83,8,0,1], + "events": {"atk":490,"deploy":11,"die":56,"dmg":2158,"engage":5,"fx":311,"heal":32,"layer":8,"leak":35,"skill":134,"spawn":95,"status":1019}, + "fx": {"dodge":1,"dollEnd":1,"explode":2,"garrison":7,"layer":1,"lightning":223,"shield":5,"slash":18,"sp":35,"storm":11,"substitute":1,"telegraph":1,"weightless":5}, + "snaps": "114138f7 91b6a2fa 7610acfd 3d21f676 8b814efe f52c75c7 7bf31005 97bafb07 219c56f9 4f52058d fb2c665c 9e07511a c65f6592 2f5b9396 d20a5349 7cff5211 3a98f4c8 d3c065bc 6e8f918b f69dface ad3b6031" }, "roster-049": { "about": "pass 3 band 5: chess_char_4_23_b chess_char_3_04_b chess_char_4_09_b chess_char_3_21_b chess_char_4_13_b", From b2510524b0e8b85c89d40071aa1f5b7125428ea1 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 19:10:37 +0800 Subject: [PATCH 04/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E6=AD=8C?= =?UTF-8?q?=E8=95=BE=E8=92=82=E5=A8=85=20S3's=20skill-end=20=E6=8D=95?= =?UTF-8?q?=E7=BD=91=20pulls=20the=20enemies=20within=201=20tile=20of=20th?= =?UTF-8?q?e=20tornado,=20not=201.5=20=E2=80=94=20the=20tornado=20keeps=20?= =?UTF-8?q?1.5=20(GitHub=20#324,=20PR=20#329=20by=20@IceCodeNew,=20re-impl?= =?UTF-8?q?emented);=20golden:=20fields=20boss-boss=5F4-pair=20moves?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PRTS 歌蕾蒂娅 S3 备注: 「龙卷风半径1.5」 and 「技能结束时的拖拽为捕网,捕网半径为1,无伤害」. The kit reused the tornado's radius for the final pull (its 1.5 was marked [ASSUMED]; PRTS now backs it). The slow and the pulses keep 1.5; only the skill-end pull (to her front, as before) uses 1. Golden: boss-boss_4-pair fields 歌蕾蒂娅 — fewer enemies are dragged to her front at the skill end, the fight runs differently (11 kills instead of 14, one leak). --- .../content/kits/ops/chess_char_4_12-glady.js | 9 +- test/content/kits_t4.test.js | 21 ++++ test/golden/fields.json | 108 +++++++++--------- 3 files changed, 81 insertions(+), 57 deletions(-) diff --git a/server/sim/content/kits/ops/chess_char_4_12-glady.js b/server/sim/content/kits/ops/chess_char_4_12-glady.js index 98e7700c..9cfbe3eb 100644 --- a/server/sim/content/kits/ops/chess_char_4_12-glady.js +++ b/server/sim/content/kits/ops/chess_char_4_12-glady.js @@ -12,14 +12,17 @@ const ABYSSAL = new Set(['char_143_ghost', 'char_263_skadi', 'char_474_glady', ' const isAbyssal = (u) => u?.def?.raw?.groupId === 'abyssal' || ABYSSAL.has(u?.def?.charId ?? u?.def?.raw?.charId); export default withDefaults({ - // ===== 歌蕾蒂娅 (hookmaster) S3 缺水的碎漩狂舞 — bind a far target, tornado: slow, 85 % arts pulses + pull, final pull + // ===== 歌蕾蒂娅 (hookmaster) S3 缺水的碎漩狂舞 — bind a far target, tornado (r 1.5): slow, 85 % arts pulses + pull, + // final pull (the 捕网, r 1) // S1 缺水的大洋裂断 (charges: next attack pulls the target to her front, 150 %/180 %); S2 缺水的掌握怒海 (BAT +0.5 s, // wider range, ≤ 2 targets — blocked first — at 135 %/150 % and pulled to her front); module HOK-Y (淡金坠饰): // a pull towards herself of an enemy farther than 2.5 tiles is one force level stronger chess_char_4_12_a: (bb, chess, def) => { const t0 = tbb(def, 0), t1 = tbb(def, 1), mb = moduleBb(def); const tb = def.traitBb || {}; - const R = 1.5; // [ASSUMED] tornado radius (no blackboard key) + // S3 radii (no blackboard key) — PRTS 备注: 「龙卷风半径1.5」 (slow, pulses) and 「技能结束时的拖拽为捕网,捕网半径为1,无伤害」 + // (the skill-end pull; until 0.2.2 it reused the tornado's 1.5 — GitHub #324, PR #329) + const R = 1.5, NET_R = 1; const force = num(bb.force, num(bb['attack@force'], 0)); const iv = Math.max(0.1, num(bb.interval, 1.5)); const g = grid(def.skill?.rangeGrid); @@ -76,7 +79,7 @@ export default withDefaults({ const T = unit.mem.tornado; unit.mem.tornado = null; if (!T || reason === 'death' || !unit.alive) return; - for (const e of battle.foesInRadius(T.x, T.y, R)) pullSelf(battle, unit, e, force); + for (const e of battle.foesInRadius(T.x, T.y, NET_R)) pullSelf(battle, unit, e, force); // the 捕网 battle.fx('pull', { x: T.x, y: T.y, id: unit.id }); }, }, diff --git a/test/content/kits_t4.test.js b/test/content/kits_t4.test.js index 2f32ad02..6e4d49ec 100644 --- a/test/content/kits_t4.test.js +++ b/test/content/kits_t4.test.js @@ -454,6 +454,27 @@ test('歌蕾蒂娅 S3: binds the farthest target, tornado pulses 85 % ATK arts e checkInvariants(h.b); }); +test('歌蕾蒂娅 S3: the skill-end 捕网 has radius 1, the tornado 1.5 (PRTS 备注; GitHub #324, PR #329)', () => { + const id = 'chess_char_4_12_a'; + const h = makeBattle({ defs: { enemies: { enemy_dummy: dummy() } }, units: [{ chessId: id, row: 10, col: 3 }], timeLimit: 200, autoFinish: false }); + h.step(); + const u = h.unit(id); + h.spawn('enemy_dummy', { pos: [10, 6] }); // the farthest enemy: bound, the tornado sits on it + h.step(); + assert.ok(u.skill.activate('test', { free: true })); + assert.deepEqual([u.mem.tornado.x, u.mem.tornado.y], [6, 10]); + const at = (x, y) => { const e = h.spawn('enemy_dummy', { pos: [10, 6] }); e.x = x; e.y = y; return e; }; + const inner = at(6, 9.1), outer = at(6, 11.25); // 0.9 and 1.25 from the centre + h.step(); + for (const e of [inner, outer]) assert.ok(e.findBuff(`glady:slow:${u.id}`), 'both inside the tornado (slowed)'); + const p0 = [inner.x, inner.y, outer.x, outer.y]; + u.skill.end('test'); + h.run(0.6); + assert.ok(Math.hypot(inner.x - p0[0], inner.y - p0[1]) > 0.3, 'the net pulls the enemy 0.9 from the centre'); + assert.deepEqual([outer.x, outer.y], [p0[2], p0[3]], 'the one 1.25 from the centre stays: outside the net'); + checkInvariants(h.b); +}); + test('歌蕾蒂娅 阿戈尔的波涛: 深海猎人 regen 2.5 %/s and −25 % damage from 海怪; elite drag damage', () => { const id = 'chess_char_4_12_a', t0 = D(id).talents[0].bb; const sea = withTags(dummy({ key: 'enemy_sea', atk: 0 }), ['seamonster']); diff --git a/test/golden/fields.json b/test/golden/fields.json index a1568be1..d48ca3e4 100644 --- a/test/golden/fields.json +++ b/test/golden/fields.json @@ -425,81 +425,81 @@ "time": 200, "ticks": 6000, "reason": "forced", - "killed": 14, + "killed": 11, "total": 14, "unspawned": 0, - "bossHpLeft": 7089603, - "rngDraws": 790, + "bossHpLeft": 7409377, + "rngDraws": 605, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":14,"total":14,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1232553,"bossDmg":447559,"heal":54877,"deaths":14,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1161150,"bossDmg":862838,"heal":6691,"deaths":14,"layerGains":{}} + "p1": {"killed":11,"total":14,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":979196,"bossDmg":339107,"heal":30297,"deaths":17,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":0,"dmg":978164,"bossDmg":651515,"heal":4827,"deaths":19,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",0,0,54,0,155980,8234,420,28,2], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1373.6,1,60,2,14823,8720,1235,14,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,49,0,52926,18466,3193,26,12], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",1187.98,1,52,0,28347,13246,275,19,2], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",911.19,1,55,2,447919,3364,21815,111,19], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",298.05,1,61,2,96428,10840,743,39,4], - ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1227.14,1,19,1,132749,4452,335,209,6], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1176.62,1,57,6,174306,2559,513,45,19], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,50,0,0,4335,26014,44,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1293.14,1,15,0,129076,4452,335,71,3], - ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2307.16,1,62,0,0,7381,302,0,1], - ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",272.31,1,26,0,286831,5830,290,256,8], - ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",1851.09,1,56,0,25219,5607,202,31,7], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,53,0,105158,8892,178,187,5], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2548.55,1,59,0,245655,5827,262,55,5], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,51,0,203707,3584,462,170,3], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1573.58,1,14,0,0,4452,515,0,0], - ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,20,0,75126,9258,2532,87,5], - ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,4,1,66605,3677,1688,66,19], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1224.14,1,58,0,152849,2733,262,72,13], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",705.31,1,59,4,131873,7528,420,24,1], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1900.22,1,58,0,17700,9171,1117,15,2], + ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,49,0,44334,13392,2872,19,9], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,56,0,16983,9690,38,10,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",792.86,1,61,4,373855,3374,10736,110,15], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,55,1,81328,10164,552,32,4], + ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",0,0,19,0,109465,4097,137,150,4], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1058.29,1,63,1,97795,2559,395,36,12], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,52,0,0,4335,13944,32,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,68,0,105862,4163,87,50,2], + ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2188.83,1,66,0,377,7381,183,1,1], + ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",2149,1,64,0,189683,6159,30,182,7], + ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",1732.75,1,62,0,29484,5607,83,37,9], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,57,0,104682,11074,310,154,6], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,53,0,211676,5907,57,42,4], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,54,0,148737,3584,462,128,2], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,14,0,0,3172,310,0,0], + ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,67,0,64191,5877,2900,74,5], + ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1501.32,1,60,1,69313,2825,348,69,20], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1105.8,1,65,0,160021,2518,143,71,13], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,10,0,18789,882694],"enemy_1521_dslily":[1,0,0,106920,1310397]}, - "hooks": [1,60,6000,1412,1519,3473,3619,7435,42,44,137,135,14,39147,1338,16,15,0,1,42,0,41,1], - "events": {"atk":1655,"deploy":45,"die":44,"dmg":3602,"engage":17,"fx":970,"heal":326,"skill":272,"spawn":37,"status":1032}, + "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,7,3,17928,766125],"enemy_1521_dslily":[1,0,0,95770,990623]}, + "hooks": [1,66,6000,1164,1243,2884,3011,5758,47,52,120,117,15,33717,1094,14,15,3,1,50,0,31,1], + "events": {"atk":1392,"deploy":51,"die":49,"dmg":2997,"engage":18,"fx":781,"heal":197,"leak":3,"skill":237,"spawn":37,"status":944}, "fx": { - "aoe": 35, - "appear": 5, + "aoe": 24, + "appear": 7, "blink": 2, - "burst": 41, - "charge": 7, - "counter": 14, - "crit": 87, - "dilemma": 5, - "disappear": 5, - "displace": 31, + "burst": 31, + "charge": 9, + "counter": 15, + "crit": 62, + "dilemma": 4, + "disappear": 7, + "displace": 28, "dodge": 1, "explosion": 13, - "frostNova": 19, + "frostNova": 20, "grow": 1, - "iceSpike": 163, + "iceSpike": 119, "overclock": 1, - "pull": 5, - "quadShot": 3, - "ripple": 23, + "pull": 4, + "quadShot": 2, + "ripple": 14, "rockfall": 18, - "sentry": 1, - "sermon": 1, - "shadowWeave": 1, - "shield": 4, - "soul": 6, - "sp": 18, - "stealth": 8, - "swordRain": 31, - "swordStorm": 5, + "sentry": 3, + "sermon": 2, + "shadowWeave": 4, + "shield": 5, + "soul": 4, + "sp": 6, + "stealth": 7, + "swordRain": 35, + "swordStorm": 6, "tentacle": 6, "tide": 5, "tornado": 5, - "tornadoPulse": 25, + "tornadoPulse": 20, "weightless": 4, - "zone": 371 + "zone": 287 }, - "snaps": "c2a7999d 8a4c19ba a9160fe3 7790e2d3 b4c7df2c aeea651a 14cb22cd 25ce984d 1dae4eaa 3b5bc6f4 cea353c7 a707d801 93c5ab85 abfa7f42 649abe2c 3a9580f7 d78d904b 13046d3f 101d5dee 5b6642d4" + "snaps": "c2a7999d e9680942 e3840c7b 42c88c80 94a6e7f9 e3adc041 fb0ab7c9 a417daa3 276e9da9 3fe787bd efdfd5a6 be8d612e 6d73c0e0 c042c02d 8eb02031 e24fb236 cdcefb5e 80d6b414 6b9e081e 0da412b8" }, "boss-boss_4-solo": { "about": "盐风主教昆图斯 solo pool 4200000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", From 7e8b435f7c2a26ca90dc71d834ad9063c74b7b77 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 19:13:30 +0800 Subject: [PATCH 05/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E4=BF=A1?= =?UTF-8?q?=E4=BB=B0=E6=90=85=E6=8B=8C=E6=9C=BA=20S1=20reloads=20the=20lat?= =?UTF-8?q?est-deployed=20=E6=8B=89=E7=89=B9=E5=85=B0=20ammo=20user=20on?= =?UTF-8?q?=20his=208=20surrounding=20tiles,=20not=20the=20nearest=20(GitH?= =?UTF-8?q?ub=20#325,=20PR=20#329=20by=20@IceCodeNew,=20re-implemented);?= =?UTF-8?q?=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PRTS 信仰搅拌机 S1 备注: 「补弹范围为周围8格,仅选择可补弹的干员为目标,优先选择最后部署的干员」. The candidates (his own 拉特兰 operators within 1.5 tiles — the 8 surrounding tiles — whose ammo skill runs) are now sorted by the battle-wide deploySeq, latest first (a redeploy is a new deployment), ties by unit id; until now by distance [ASSUMED]. The unused detmath hypot import goes. Golden: unchanged (no corpus battle has two such candidates in a different order). --- .../kits/ops/chess_char_4_01-rmixer.js | 7 +++--- test/content/kits_alt_t4.test.js | 24 +++++++++++++++++++ 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/server/sim/content/kits/ops/chess_char_4_01-rmixer.js b/server/sim/content/kits/ops/chess_char_4_01-rmixer.js index 03e2d796..581eb90f 100644 --- a/server/sim/content/kits/ops/chess_char_4_01-rmixer.js +++ b/server/sim/content/kits/ops/chess_char_4_01-rmixer.js @@ -7,7 +7,6 @@ import { AURA, num, tbb, grid, nationOf, enemiesOnRange, targetsInRange, whileDeployed, reveal, skillActive, isSel, alt, instantKind, withDefaults, } from '../shared/tier4.js'; -import { hypot } from '../../../detmath.js'; /** Is module `id` the active one? (elites; `'none'` / normal chess ⇒ false) */ const moduleIs = (def, id) => !!(def?.raw?.module?.active && def.raw.module.id === id); @@ -31,7 +30,9 @@ export default withDefaults({ return { skills: alt(def, { // 铳骑主考官: the next attack is a triple hit of atk_scale each and reloads `charge` bullet(s) into ONE other - // 拉特兰 operator around him (8 tiles, [ASSUMED] nearest first) whose ammo skill runs + // 拉特兰 operator around him whose ammo skill runs — PRTS 备注 「补弹范围为周围8格,仅选择可补弹的干员为目标,优先选择最后 + // 部署的干员」: the latest deployment first (battle-wide deploySeq: a redeploy is a new deployment). Until 0.2.2 the + // nearest first [ASSUMED] (GitHub #325, PR #329) skchr_rmixer_1: () => ({ kind: instantKind(def), attack: { @@ -40,7 +41,7 @@ export default withDefaults({ const n = num(bb.charge, 1); const cand = battle.alliesInRadius(unit.x, unit.y, 1.5, unit.ownerId) .filter((a) => a !== unit && a.kind === 'op' && nationOf(a) === 'laterano' && a.skill && a.skill.active && a.skill.kind === 'ammo') - .sort((a, b) => hypot(a.x - unit.x, a.y - unit.y) - hypot(b.x - unit.x, b.y - unit.y) || a.id - b.id); + .sort((a, b) => b.deploySeq - a.deploySeq || a.id - b.id); if (!cand[0] || !(n > 0)) return; cand[0].skill.addAmmo(n); battle.fx('reload', { x: cand[0].x, y: cand[0].y, id: cand[0].id, n }); diff --git a/test/content/kits_alt_t4.test.js b/test/content/kits_alt_t4.test.js index a9cb69d7..13ff6751 100644 --- a/test/content/kits_alt_t4.test.js +++ b/test/content/kits_alt_t4.test.js @@ -113,6 +113,30 @@ test('信仰搅拌机 S1 铳骑主考官 (自动触发 ⇒ DEFAULT: hurt SP, fir } }); +test('信仰搅拌机 S1 reloads the latest-deployed 拉特兰 ammo user around him, not the nearest (PRTS 备注; GitHub #325, PR #329)', () => { + for (const redeploy of [false, true]) { + // 隐现 ×2: the orthogonal neighbour deployed first, the diagonal one after it (both on his 8 surrounding tiles) + const h = battle([U('chess_char_4_01_a', 10, 5, 0), U('chess_char_1_01_a', 10, 4, null, null, { uid: 2 }), U('chess_char_1_01_a', 9, 4, null, null, { uid: 3 })]); + h.step(); + const u = h.unit('chess_char_4_01_a'), near = h.unit(2), far = h.unit(3); + if (redeploy) { // a redeploy is the latest deployment + h.b.retreat(near, { reason: 'raid' }); + assert.ok(h.b._deploy(near)); + } + const latest = redeploy ? near : far, other = redeploy ? far : near; + assert.ok(latest.deploySeq > other.deploySeq); + for (const a of [near, far]) { assert.ok(a.skill.activate('test', { free: true })); a.skill.ammoLeft = 5; } + const e = h.spawn('enemy_dummy', { pos: [10, 6] }); + assert.ok(u.skill.activate('test', { free: true })); + h.b.forceAttack(u, [e]); + h.run(0.5); + const reloads = h.eventsOf('fx').filter((x) => x[1] === 'reload'); + assert.ok(reloads.length > 0, 'a reload happened'); + assert.ok(reloads.every((x) => x[4].id === latest.id), `${redeploy ? 'after a redeploy, the redeployed one' : 'the later-deployed diagonal one'} is reloaded`); + checkInvariants(h.b); + } +}); + test('信仰搅拌机 S2 八臂电锯侠: ammo skill, ATK/DEF up; a lethal hit is negated for ammo_cost bullets; with fewer it is still negated, every bullet goes and the skill ends (PRTS 备注)', () => { for (const id of pair('chess_char_4_01_a')) { const bb = D(id, 1).skill.bb; From ca671f2fd00d9bfecd93394ff139efd37dd452bd Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 19:16:34 +0800 Subject: [PATCH 06/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E5=A4=A7?= =?UTF-8?q?=E5=B8=9D=20=E5=8A=A0=E6=80=A5=E8=B0=83=E6=B4=BE=20stacks=20wit?= =?UTF-8?q?hout=20a=20cap=20=E2=80=94=20the=2021st=20deployment=20and=20ev?= =?UTF-8?q?ery=20later=20one=20still=20halve=20the=20next=20redeploy=20(Gi?= =?UTF-8?q?tHub=20#328,=20PR=20#329=20by=20@IceCodeNew,=20re-implemented);?= =?UTF-8?q?=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PRTS 卫戍协议:盟约 下半 and its PRTS盟约记录: 「我方干员每次部署后再部署时间减少50%」 with the note 「※该策略效果可无限 叠加」; the data's buff (act1autochess_band16_buff, respawn_time −0.5) names no cap. The per-deployment ×0.5 stack was capped at 20 (since the initial import, no source); maxStacks is now unbounded, the multiplicative stack itself is unchanged (the "each deployment" reading was [ASSUMED] cumulative — the 无限叠加 note backs it). Golden: unchanged (no corpus battle deploys one operator more than 20 times under 大帝). --- server/sim/content/bands/battle.js | 7 ++++--- test/content/bands.test.js | 12 ++++++++++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/server/sim/content/bands/battle.js b/server/sim/content/bands/battle.js index 77a02cc3..dd5a2aa7 100644 --- a/server/sim/content/bands/battle.js +++ b/server/sim/content/bands/battle.js @@ -16,8 +16,9 @@ // act1autochess_band13_buff 克莱门莎 崇高牺牲 a operator knocked down ⇒ +its tier (等阶) layers // (bond_add_type by_charlevel; no "已激活" in the text ⇒ requireActive false) // act1autochess_band16_buff 大帝 加急调派 "每次部署后再部署时间减少50%": every deployment of an operator stacks one -// redeploy ×(1 + respawn_time) for the rest of the battle [ASSUMED cumulative: -// "每次" — the first redeploy is −50 % under either reading] +// redeploy ×(1 + respawn_time) for the rest of the battle, with no cap (PRTS +// 卫戍协议:盟约 下半 / PRTS盟约记录 备注 "※该策略效果可无限叠加"; a 20-stack cap +// until 0.2.2 — GitHub #328, PR #329) // act1autochess_band17_buff 桑葚 药枚实验 at combat start the player's units on the front-most (最右边) column: each // attack has `prob` to gain 1 shield layer (max 1) // act1autochess_band18_buff 休谟斯 回收利用 a ground (地面) operator's skill ends ⇒ a random operator on its 4 @@ -106,7 +107,7 @@ const BY_KEY = { battle.on('deploy', (c) => { const u = c.unit; if (!isOp(u) || u.ownerId !== ps.playerId) return; - battle.addBuff(u, { key, mods: { redeployMul: mul }, refresh: 'stack', stacks: 1, maxStacks: 20, persist: true, allowDead: true }); + battle.addBuff(u, { key, mods: { redeployMul: mul }, refresh: 'stack', stacks: 1, maxStacks: Infinity, persist: true, allowDead: true }); }); }, diff --git a/test/content/bands.test.js b/test/content/bands.test.js index aeb3b2bc..783604f8 100644 --- a/test/content/bands.test.js +++ b/test/content/bands.test.js @@ -587,6 +587,18 @@ test('大帝 加急调派: every deployment halves the operator\'s next redeploy cover('band_emperor'); }); +test('大帝 加急调派 stacks without a cap: the 21st and 22nd deployments still halve the next redeploy (PRTS "※该策略效果可无限叠加"; GitHub #328, PR #329)', () => { + const h = fight({ band: 'band_emperor', units: [{ chessId: 't_op', row: 10, col: 4 }] }); + h.step(1); + const u = h.unit('t_op'); + for (let n = 1; n <= 22; n++) { + h.b.retreat(u, { reason: 'raid' }); + close(u.respawnAt - u.deathAt, 20 / 2 ** n, `after deployment ${n}`); + if (n < 22) assert.ok(h.b._deploy(u), `deployment ${n + 1}`); + } + assert.equal(u.findBuff('band:band_emperor').stacks, 22); +}); + test('桑葚 药枚实验: the units on the right-most column get a 25 % chance per attack of 1 shield layer (max 1)', () => { const ops = { t_op: op('t_op'), t_b: op('t_b') }; for (const [v, want] of [[0.24, 1], [0.26, 0]]) { From bfef34ffa37887f06867d2aeea8711f2b493bef1 Mon Sep 17 00:00:00 2001 From: Sukvii Date: Thu, 8 Oct 2026 19:23:49 +0800 Subject: [PATCH 07/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E5=81=87?= =?UTF-8?q?=E6=83=B3=E6=95=8C=EF=BC=9A=E9=AA=A8=E5=88=BA=20changes=20model?= =?UTF-8?q?=20with=20its=20=E9=9A=90=E5=8C=BF=20at=20once=20=E2=80=94=20th?= =?UTF-8?q?e=20three-headed=20snake=20(*=5FA)=20while=20hidden,=20its=20*?= =?UTF-8?q?=5FB=20set=20when=20blocked=20or=20revealed,=20back=20to=20*=5F?= =?UTF-8?q?A=20when=20hidden=20again=20(GitHub=20#296,=20PR=20#365=20by=20?= =?UTF-8?q?@Sukvii,=20render=20part);=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The contributor's code (render/spine.js syncFormPose, the render/units.js wiring and FORMS entry, the headless test/render/forms.test.js block), applied from PR #365, so they are the author of this commit. Maintainer side: the hard-coded Spine id became a STEALTH_FORMS table (form while the stealth bit is off), comments and docs/ASSETS.md reworded. Not ported: the PR's sim targeting rewrite (content/enemies/invisible.js), its enemies_bosses tests, its roster.json and the Chrome suite (forms.browser.test.js, not run here). Seen (#296, FrogThai): a blocked 骨刺 kept the snake. The sim already sends UF.STEALTH only while its 隐匿 is effective (not blocked, not revealed — targeting.js enemyStealthed); the view now keys the FORMS 'revealed' clip set (Idle_B / Move_B / Die_B / Attack_B, all in the skeleton) off that bit in UnitView.sync — before a DIE of the same snapshot — and re-poses at once: a running attack continues in the other attack clip at the same point relative to its strike frame (Attack_A hit 0.533 s, Attack_B 0.733 s; a pending wind-up still strikes on time), a stun / idle restarts on the new set without a crossfade, and a frozen skeleton is posed with update(0); a model loaded later is posed the same way. Golden: unchanged (render only). --- docs/ASSETS.md | 6 +- public/js/render/spine.js | 35 +++++++ public/js/render/units.js | 25 +++++ test/render/forms.test.js | 191 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 256 insertions(+), 1 deletion(-) diff --git a/docs/ASSETS.md b/docs/ASSETS.md index caf5f83a..bb60d646 100644 --- a/docs/ASSETS.md +++ b/docs/ASSETS.md @@ -273,8 +273,12 @@ catch-up frames and hidden tabs (`keepsState`), the game screen's pre-entry buff event queue (`render/interp.js isCosmeticEvent`) too — or, for a view built mid-battle, UnitInfo `form`, which `render/app/info.js renderInfo` passes to the view; a `change` clip plays once first, an `end` clip is timed from the fx's `dur` to finish as that state ends, keeping the current form's death clip until the next form's fx). A blocked or revealed 隐匿 enemy is drawn solid: the sim sends the -stealth bit only while its 隐匿 is on: +stealth bit only while its 隐匿 is on — and 假想敌:骨刺 changes model with that bit, not with an fx (`STEALTH_FORMS`, GitHub +#296, PR #365): the manifest's `*_A` (the three-headed snake) while the bit is on, its `*_B` set (form `revealed`) the +moment it is blocked or revealed, `*_A` again when its 隐匿 is back; no change clip, a running attack, stun or freeze +pose carried over (`render/spine.js syncFormPose`). The forms: - 掠海漂移体's crawl (`Change`, then `*_02`); +- 假想敌:骨刺 (`*_A` / `*_B`, above); - 转译基底·α's three forms (`A_Die_B` / `_C` / `_D`, 2 s each, then `B_*` 寻仇者, `C_*` 幽灵, `D_*` 特战术师); - the 深池逐火 embers (`Die`, then `Idle_2` / `Move_2` / `Die_2`; `Revive` ends as it stands up) and 假想敌:再生's puppet (`A_Die`, then `B_*`; `B_Revive`); diff --git a/public/js/render/spine.js b/public/js/render/spine.js index 8025f17b..c344c92e 100644 --- a/public/js/render/spine.js +++ b/public/js/render/spine.js @@ -200,6 +200,41 @@ export class SpineActor { else if (this.mode === 'stun' && this.has(this.roles.stun?.loop)) this._play(this.roles.stun.loop, true); } + /** + * Re-pose on the clip set in force right after an immediate form switch (render/units.js STEALTH_FORMS: 假想敌:骨刺's + * stealth bit; PR #365): a running attack goes on in the new set's attack clip at the same point relative to its + * strike frame (a pending wind-up still strikes at windUntil), a stun / the resting state restarts on the new set's + * clip without a crossfade, and the skeleton is posed at once — also while a freeze holds it (`frozen`). + */ + syncFormPose() { + if (this.dead) return; + if (this.mode === 'attack') { + const track = this.spine.state.tracks[0]; + const clip = this._attackClip(); + if (!track || !clip) return; + const dur = this.dur(clip.loop); + const oldHit = this._hitTime(this.current, this.dur(this.current)); + const hit = this._hitTime(clip.loop, dur); + const start = clampN(track.trackTime + hit - oldHit, 0, dur); + const lead = this.wound && this.windUntil != null + ? Math.max(0, this.windUntil - this.clock) : 0; + const ts = lead > 0 ? Math.max(0, hit - start) / lead : track.timeScale; + const tailTs = lead > 0 ? this.windTs : ts; + this._play(clip.loop, track.loop, { start, timeScale: ts, mix: 0 }); + this.attackUntil = this.clock + lead + + Math.max(0, dur - (lead > 0 ? hit : start)) / tailTs; + } else if (this.mode === 'stun') { + const name = this.has(this.roles.stun?.loop) ? this.roles.stun.loop : this._baseName(); + this._play(name, true, { mix: 0 }); + } else if (this.mode === 'base') { + this._play(this._baseName(), true, { mix: 0 }); + } else { + return; + } + // Apply the new attachments even when normal updates are frozen. + this.spine.update(0); + } + /** Play a form's transition clip once; attacks and the resting state wait for it (mode 'change'). */ _change(clip) { if (this.mode !== 'change') this.stunWanted = this.mode === 'stun'; diff --git a/public/js/render/units.js b/public/js/render/units.js index 4e38aaf7..31788b5c 100644 --- a/public/js/render/units.js +++ b/public/js/render/units.js @@ -190,6 +190,9 @@ export const EL_BAR = Object.freeze({ icon: 0.15, min: 8, max: 15, enemy: 0.8, g * → UnitView.setForm), per Spine id; the mode's roles override the manifest's (data/assets.json anims), `change` plays * once first: * - 掠海漂移体 (PRTS: 受晕眩/沉睡/冻结影响后进入爬行模式 — for good) crawls on its *_02 clips after 'Change'; + * - 假想敌:骨刺 (GitHub #296, PR #365): not an fx — its form follows the snapshot's stealth bit (STEALTH_FORMS): the + * manifest's *_A (the three-headed snake) while its 隐匿 is on, 'revealed' *_B the moment it is blocked or revealed, *_A + * again when the 隐匿 is back; no change clip, a running attack / stun pose carried over (SpineActor.syncFormPose); * - 暴鸰 flies on its bomb-less *_2 clips once its one bomb left (the official prefab's mode S1: Move→Move_2, Idle→Idle_2, * Die→Die_2; user feedback after 0.1.0, D4: the bomb used to stay under the drone — no change clip, the drop is its * Attack clip); @@ -224,6 +227,12 @@ export const EL_BAR = Object.freeze({ icon: 0.15, min: 8, max: 15, enemy: 0.8, g * built for the knock-out — and one rebuilt while it is down — the 替身's death clip; it stands up as the 本体. * A kind without a clip set of this skeleton (barriers, charges, …) changes nothing. 吉兆飞鳞's 晕眩模式 is its Stun clip. */ +/** + * Enemy forms that follow the snapshot's stealth bit (UF.STEALTH: the sim sends it only while the enemy's 隐匿 is on — + * not blocked, not revealed) instead of a sim fx, per Spine id: the FORMS kind drawn while the bit is OFF; the manifest's + * clips while it is on. Switched at once (UnitView.sync, and for a model loaded later the load callback). + */ +export const STEALTH_FORMS = Object.freeze({ enemy_9008_acbunn: 'revealed' }); const loop = (name, via = null) => Object.freeze(via ? { begin: null, loop: name, end: null, via } : { begin: null, loop: name, end: null }); const clipSet = (idle, move, die, attack = null) => Object.freeze({ idle, deploy: idle, die, move: loop(move), @@ -274,6 +283,9 @@ export const FORMS = Object.freeze({ enemy_2025_syufo: Object.freeze({ crawl: Object.freeze({ change: 'Change', roles: clipSet('Idle_02', 'Move_02', 'Die_02', 'Attack_02') }), }), + enemy_9008_acbunn: Object.freeze({ + revealed: Object.freeze({ change: null, roles: clipSet('Idle_B', 'Move_B', 'Die_B', 'Attack_B') }), + }), enemy_10081_mpplai: Object.freeze({ translator_fuchou: Object.freeze({ change: 'A_Die_B', roles: clipSet('B_Idle', 'B_Move', 'B_Die', 'B_Attack') }), translator_youling: Object.freeze({ change: 'A_Die_C', roles: clipSet('C_Idle', 'C_Move', 'C_Die') }), @@ -600,6 +612,8 @@ export class UnitView { if (this.flags & UF.SKILL) this.actor.setSkill(true); this.actor.setBase(this._baseFromAnim()); if (deployed != null) { this.actor.deploy(); if (deployed > 0) this.actor.update(deployed); } + // a stealth-driven form (STEALTH_FORMS): the pose of the clip set in force now, even under a frozen stun + if (STEALTH_FORMS[id]) this.actor.syncFormPose(); } }, () => { if (req === this._spineReq) { this._spineBusy = false; this._stuckAt = 0; } @@ -747,6 +761,17 @@ export class UnitView { const prevFlags = this.flags; this.flags = s.flags | 0; this.anim = s.anim | 0; + // a stealth-driven form (STEALTH_FORMS: 假想敌:骨刺) follows this snapshot's stealth bit at once — before a DIE in the + // same snapshot, so it dies in the form it had + const stealthForm = this.isEnemy && this.alive ? STEALTH_FORMS[this.info.spine || this.info.defId] : null; + if (stealthForm) { + const form = this.flags & UF.STEALTH ? null : stealthForm; + if (form !== this.form) { + this.setForm(form); + this.actor?.syncFormPose(); + if (this.imp) this.imp.dirty = true; + } + } if (this.isEnemy && Math.abs(s.vx) > 0.08) this.visFacing = s.vx < 0 ? -1 : 1; if ((prevFlags ^ this.flags) & UF.SKILL) this.setSkill(!!(this.flags & UF.SKILL)); if (this.anim === ANIM.DIE && this.alive) this.die(); diff --git a/test/render/forms.test.js b/test/render/forms.test.js index 66b4e6ff..94723378 100644 --- a/test/render/forms.test.js +++ b/test/render/forms.test.js @@ -19,6 +19,9 @@ import { installFakePixi, fakeViewCtx } from './fakepixi.js'; import { presetCamera } from '../../public/js/render/projection.js'; import { UF, ANIM } from '../../shared/constants.js'; import { makeBattle, chessRec } from '../helpers/battleHarness.js'; +import * as enemiesMod from '../../server/sim/content/enemies.js'; +import { enemyStealthed } from '../../server/sim/targeting.js'; +import { flagsOf } from '../../server/sim/snapshot.js'; const ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '../..'); const assets = JSON.parse(readFileSync(path.join(ROOT, 'data/assets.json'), 'utf8')); @@ -133,6 +136,194 @@ async function enemy(id, info = {}) { return v; } +describe('骨刺 effective stealth drives A/B clips', () => { + const BONE = 'enemy_9008_acbunn'; + const near = (a, b) => assert.ok(Math.abs(a - b) < 1e-6, `${a} ≈ ${b}`); + function arena() { + const h = makeBattle({ + content: 'generic', extraContent: [enemiesMod], seed: 7, autoFinish: false, + defs: { chess: { wall: chessRec({ id: 'wall', profession: 'TANK', stats: { atk: 0, maxHp: 1e7, def: 0, res: 0, blockCnt: 3 }, rangeGrid: [[0, 0]], skill: null }) } }, + kits: { wall: () => ({ trait: { noAttack: true } }) }, units: [{ chessId: 'wall', row: 9, col: 6 }], + }); + h.step(); + const e = h.spawn(BONE, { pos: [9, 6], routeIndex: 0, mods: { speedMul: 0 } }); + return { h, e, wall: h.unit('wall') }; + } + function pose(v, h, e, hidden) { + const flags = flagsOf(e); + assert.equal(enemyStealthed(e), hidden); + assert.equal(!!(flags & UF.STEALTH), hidden); + v.sync({ ...sample(flags), x: e.x, y: e.y }, h.b.time); + assert.equal(v.form, hidden ? null : 'revealed'); + assert.equal(clip(v), hidden ? 'Idle_A' : 'Idle_B'); + v.fadeIn = 1; + v.update(1 / 60, cam(), h.b.time); + assert.equal(v.root.alpha, hidden ? 0.45 : 1); + } + + test('骨刺: actual blocking, blocker stun, reveal and expiry give A → B → A → B → A', async () => { + const { h, e, wall } = arena(); + const v = await enemy(BONE); + try { + pose(v, h, e, true); + h.step(2); assert.equal(e.blockedBy, wall); pose(v, h, e, false); + h.b.applyStatus(wall, 'stun', { duration: 30, force: true }); + h.step(2); assert.equal(e.blockedBy, null); pose(v, h, e, true); + h.b.addBuff(e, { key: 'test:reveal', duration: 1, flags: { reveal: true } }); + pose(v, h, e, false); + h.run(1.1); pose(v, h, e, true); + } finally { v.destroy(); } + }); + + test('骨刺: overlapping block and reveal keep B until both end', async () => { + const { h, e, wall } = arena(); + const v = await enemy(BONE); + try { + h.step(2); assert.equal(e.blockedBy, wall); + h.b.addBuff(e, { key: 'test:reveal', duration: 0.1, flags: { reveal: true } }); + pose(v, h, e, false); + h.run(0.2); assert.equal(e.blockedBy, wall); pose(v, h, e, false); + h.b.addBuff(e, { key: 'test:reveal', duration: 1, flags: { reveal: true } }); + h.b.applyStatus(wall, 'stun', { duration: 30, force: true }); + h.step(2); assert.equal(e.blockedBy, null); pose(v, h, e, false); + h.run(1.1); pose(v, h, e, true); + } finally { v.destroy(); } + }); + + test('骨刺: switching an ongoing attack maps A 0.8 ↔ B 1.0 without another attack or a repeated-snapshot restart', async () => { + const v = await enemy(BONE); + try { + v.sync(sample(UF.STEALTH), 1); + v.atkInterval = 4; + v.onAttack(null, 1.1); + v.actor.clock = 2; + v.actor.spine.state.tracks[0].trackTime = 0.8; + const last = v.lastAtk, interval = v.atkInterval; + v.imp = { dirty: false }; + v.sync(sample(0), 2); + assert.equal(clip(v), 'Attack_B'); + near(v.actor.spine.state.tracks[0].trackTime, 1); + near(v.actor.attackUntil, 2.5); + assert.equal(v.imp.dirty, true); + const track = v.actor.spine.state.tracks[0]; + v.sync(sample(0), 2.1); + assert.equal(v.actor.spine.state.tracks[0], track); + v.sync(sample(UF.STEALTH), 2.2); + assert.equal(clip(v), 'Attack_A'); + near(v.actor.spine.state.tracks[0].trackTime, 0.8); + near(v.actor.attackUntil, 2.7); + assert.equal(v.lastAtk, last); + assert.equal(v.atkInterval, interval); + assert.equal(v.actor.wound, false); + v.imp = null; + } finally { v.imp = null; v.destroy(); } + }); + + for (const fromB of [false, true]) { + test(`骨刺: ${fromB ? 'B → A truncated' : 'A → B'} wind-up retains its deadline and tail speed`, async () => { + const v = await enemy(BONE); + try { + v.sync(sample(fromB ? 0 : UF.STEALTH), 1); + v.actor.clock = 2; + const lead = fromB ? 0.633 : 0.333; + assert.ok(v.actor.windUp(4, lead)); + v.actor.spine.state.tracks[0].trackTime = fromB ? 0.1 : 0.2; + const until = v.actor.windUntil, last = v.lastAtk, interval = v.atkInterval; + v.sync(sample(fromB ? UF.STEALTH : 0), 2); + const track = v.actor.spine.state.tracks[0]; + assert.equal(clip(v), fromB ? 'Attack_A' : 'Attack_B'); + near(track.trackTime, fromB ? 0 : 0.4); + near(track.timeScale, fromB ? 0.533 / lead : 1); + assert.equal(v.actor.windUntil, until); + assert.equal(v.actor.windTs, 1); + assert.equal(v.actor.wound, true); + near(v.actor.attackUntil, 2 + lead + 1.5 - (fromB ? 0.533 : 0.733)); + assert.equal(v.lastAtk, last); + assert.equal(v.atkInterval, interval); + v.sync(sample(fromB ? UF.STEALTH : 0), 2.1); + assert.equal(v.actor.spine.state.tracks[0], track); + v.actor.update(lead + 0.001); + assert.equal(track.timeScale, 1, 'the original tail speed resumes'); + } finally { v.destroy(); } + }); + } + + for (const control of [UF.FROZEN, UF.STUNNED, UF.SLEEP]) { + test(`骨刺: control ${control} keeps the skeleton frozen while B/A attachments are applied immediately`, async () => { + const v = await enemy(BONE); + try { + v.sync(sample(UF.STEALTH | control), 1); + let zeroUpdates = 0; + const update = v.actor.spine.update.bind(v.actor.spine); + v.actor.spine.update = (dt) => { if (dt === 0) zeroUpdates++; update(dt); }; + for (const hidden of [false, true]) { + v.sync(sample(control | (hidden ? UF.STEALTH : 0)), 2); + assert.equal(clip(v), hidden ? 'Idle_A' : 'Idle_B'); + assert.equal(v.actor.mode, 'stun'); + assert.equal(v.actor.frozen, true); + assert.equal(v.actor.spine.state.tracks[0].mixDuration, 0); + } + assert.equal(zeroUpdates, 2); + v.sync(sample(UF.STEALTH, ANIM.MOVE), 3); + assert.equal(v.actor.frozen, false); + assert.equal(clip(v), 'Move_A'); + } finally { v.destroy(); } + }); + } + + test('骨刺: a first snapshot with flags = 0 selects B even though previous flags were also 0', async () => { + const v = await enemy(BONE); + try { + assert.equal(v.flags, 0); + v.sync(sample(0), 1); + assert.equal(v.form, 'revealed'); + assert.equal(clip(v), 'Idle_B'); + } finally { v.destroy(); } + }); + + for (const finalFlags of [0, UF.STEALTH, UF.FROZEN]) { + test(`骨刺: delayed model loading applies the latest snapshot (${finalFlags}), including frozen B`, async () => { + const a = store(BONE); + let resolve; + a.spine.acquire = () => new Promise((r) => { resolve = r; }); + const v = new UnitView(fakeViewCtx(fake.P, { assets: a, cam }), { id: 9, side: 'enemy', kind: 'enemy', defId: BONE, spine: BONE, maxHp: 1000 }); + const proto = fake.P.spine.Spine.prototype, update = proto.update; + let zeroUpdates = 0; + proto.update = function (dt) { if (dt === 0) zeroUpdates++; return update.call(this, dt); }; + try { + v.sync(sample(0), 1); + assert.equal(v.actor, null); + assert.equal(v.form, 'revealed'); + v.sync(sample(finalFlags), 2); + resolve({ animations: Object.keys(a.spineEntry().animations).map((name) => ({ name })) }); + await tick(); await tick(); + assert.ok(v.actor); + assert.equal(clip(v), finalFlags & UF.STEALTH ? 'Idle_A' : 'Idle_B'); + assert.ok(zeroUpdates > 0, 'the loaded pose is applied at zero time'); + assert.equal(v.actor.frozen, !!(finalFlags & UF.FROZEN)); + } finally { proto.update = update; v.destroy(); } + }); + } + + for (const hidden of [true, false]) { + test(`骨刺: ${hidden ? 'A' : 'B'} idle, move and death; a DIE snapshot selects its form before dying`, async () => { + const flags = hidden ? UF.STEALTH : 0, suffix = hidden ? 'A' : 'B'; + const v = await enemy(BONE), w = await enemy(BONE); + try { + v.sync(sample(flags, ANIM.MOVE), 1); assert.equal(clip(v), `Move_${suffix}`); + v.sync(sample(flags, ANIM.IDLE), 2); assert.equal(clip(v), `Idle_${suffix}`); + v.die(); assert.equal(clip(v), `Die_${suffix}`); + w.sync(sample(hidden ? 0 : UF.STEALTH), 1); + w.sync(sample(flags, ANIM.DIE), 2); assert.equal(clip(w), `Die_${suffix}`); + w.sync(sample(hidden ? 0 : UF.STEALTH, ANIM.DIE), 3); + frames(w, 10); + assert.equal(clip(w), `Die_${suffix}`, 'death keeps its chosen form'); + assert.equal(w.form, hidden ? null : 'revealed'); + } finally { v.destroy(); w.destroy(); } + }); + } +}); + describe('转译基底·α forms (user report after 0.1.0, #5)', () => { const TR = 'enemy_10081_mpplai'; test('every clip of the three forms exists in the skeleton; the change clips last the official 2 s; the manifest keeps the original form', () => { From c250ff66f44d8715bccac298fc2fd56a4985aa60 Mon Sep 17 00:00:00 2001 From: Sukvii Date: Thu, 8 Oct 2026 19:28:53 +0800 Subject: [PATCH 08/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E5=81=87?= =?UTF-8?q?=E6=83=B3=E6=95=8C=EF=BC=9A=E9=AA=A8=E5=88=BA=20targets=20as=20?= =?UTF-8?q?PRTS=20writes=20=E2=80=94=20its=20normal=20attack=20ignores=20i?= =?UTF-8?q?ts=20block=20(by=20priority,=20not=20the=20blocker=20first),=20?= =?UTF-8?q?never=20a=20flying=20unit,=20and=20its=203=20hidden=20targets?= =?UTF-8?q?=20come=20from=20its=20normal=20attack's=20reach=20(PR=20#365?= =?UTF-8?q?=20by=20@Sukvii,=20sim=20part,=20each=20line=20checked=20agains?= =?UTF-8?q?t=20PRTS);=20golden:=20roster-018=20moves?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The sim lines are the PR's (content/enemies/invisible.js kitBoneSpike: profile blockFree and canTarget, the hidden selection over rangeRadius + the ally collider), so the contributor is the author of this commit; the maintainer side checked each rule, kept the engine's single target when the hidden list is empty, and wrote the tests. Official: PRTS 假想敌:骨刺, 级别0 天赋 (on the page since 2025-11, PRTS editors): 「自身普通攻击索敌不受阻挡影响」 「不会攻击 飞行单位,隐匿(解除阻挡0秒后恢复)」 「隐匿期间可同时攻击3个目标」; enemy_database's level description 「隐匿;隐匿状态下同时攻击 3个目标。」 (the handbook line keeps 「数个目标」) — the 3 is no longer [ASSUMED]. blockFree works as for 自制投石机 (a 隐匿 / 迷彩 blocker is no target); canTarget as the engine's other 不会攻击飞行单位 enemies; the hidden 3 are picked among the allies its normal attack could hit (ai.js attackTargets: rangeRadius + ALLY_COLLIDER_RADIUS, PRTS 作战机制 碰撞体积) — they were picked within the bare 2.0. Stealth back 0 s after a block was already so. Golden: roster-018 — the 骨刺 in it lands one more attack (on 异客; dmg 2434 → 2771), the same move PR #365 reported. --- server/sim/content/enemies/invisible.js | 21 +++++++-- test/content/enemies_bosses.test.js | 61 +++++++++++++++++++++++++ test/golden/roster.json | 14 +++--- 3 files changed, 86 insertions(+), 10 deletions(-) diff --git a/server/sim/content/enemies/invisible.js b/server/sim/content/enemies/invisible.js index 9e5fc7b5..2b751a94 100644 --- a/server/sim/content/enemies/invisible.js +++ b/server/sim/content/enemies/invisible.js @@ -2,6 +2,7 @@ // content/enemies.js). import { canTargetAlly, enemyStealthed } from '../../targeting.js'; +import { ALLY_COLLIDER_RADIUS } from '../../constants.js'; import { T, elem, hurt, targetsNear, byPriority, auraBuff } from './helpers.js'; import { stealth, onHitStatus, skill, kitStealth } from './archetypes.js'; import { hypot } from '../../detmath.js'; @@ -9,7 +10,8 @@ import { hypot } from '../../detmath.js'; // --------------------------------------------------------------------------------------------------------------- // constants (numbers that exist nowhere in the data) -/** "数个目标" of 假想敌:骨刺 while stealthed [ASSUMED]. */ +/** 假想敌:骨刺's targets at once while its 隐匿 holds: 3 — the level's own description 「隐匿;隐匿状态下同时攻击3个目标。」 + * (enemy_database; the handbook line says 「数个目标」) and PRTS 天赋 「隐匿期间可同时攻击3个目标」 (GitHub #365). */ const ACBUNN_TARGETS = 3; /** 重弩突袭者 直击 reach along a row/column [ASSUMED]; the skill's length and its charge before the bolt (PRTS 直击 "蓄力1.4s后 @@ -114,11 +116,24 @@ function kitShadowBlade(ab) { }]; } +/** + * 假想敌:骨刺 — PRTS 天赋 (级别0): 「自身普通攻击索敌不受阻挡影响」 — profile `blockFree` (as 自制投石机): blocked, and so out of its + * 隐匿, it still picks by priority among the allies in reach, not its blocker first, and a 隐匿 / 迷彩 blocker is no target + * (targeting.js canTargetAlly); 「不会攻击飞行单位」 — profile `canTarget`; 「隐匿(解除阻挡0秒后恢复)」 — stealth(); 「隐匿期间 + * 可同时攻击3个目标」: while its 隐匿 holds, the first ACBUNN_TARGETS by priority among the allies its normal attack could hit + * (ai.js attackTargets: the same reach — rangeRadius + the ally collider — and the same rules); one otherwise. Until + * 0.2.2 (PR #365 by @Sukvii, the PRTS lines checked for this port): blocker first, flyers hit, the 3 picked within the bare + * rangeRadius. + */ function kitBoneSpike() { return [stealth(), { + spawn(b, e) { + e.profile.blockFree = true; + e.profile.canTarget = (u) => !u.isFlying; + }, before(c, b, e) { - if (!enemyStealthed(e)) return; // 隐匿状态下同时攻击数个目标 (back 0 s after a block) - const l = byPriority(e, targetsNear(b, e, e.base.rangeRadius)); + if (!enemyStealthed(e)) return; + const l = byPriority(e, targetsNear(b, e, e.base.rangeRadius + ALLY_COLLIDER_RADIUS).filter(e.profile.canTarget)); if (l.length) c.targets = l.slice(0, ACBUNN_TARGETS); }, }]; diff --git a/test/content/enemies_bosses.test.js b/test/content/enemies_bosses.test.js index 4e32d67a..aa945336 100644 --- a/test/content/enemies_bosses.test.js +++ b/test/content/enemies_bosses.test.js @@ -186,6 +186,67 @@ test(`${nm('enemy_9008_acbunn')}: attacks several targets at once while stealthe assert.ok(atk.targets.length >= 2, `targets ${atk.targets.length}`); }); +// 骨刺 — PRTS 天赋 (级别0) 「自身普通攻击索敌不受阻挡影响 / 不会攻击飞行单位,隐匿(解除阻挡0秒后恢复) / 隐匿期间可同时攻击3个目标」 +// and the level description 「隐匿;隐匿状态下同时攻击3个目标。」 (PR #365, the targeting part checked against PRTS). +function boneArena(o = {}) { + const h = arena({ + units: ['t_wall', 't_wall2', 't_wall3', 't_wall4'].map((chessId, i) => ({ chessId, row: 9 + (i % 2), col: 6 + Math.floor(i / 2) })), + captureNoisy: true, hooks: ['attack'], ...o, + }); + h.step(); + for (const u of h.allies()) h.b.addBuff(u, { key: 'test:noBlock', persist: true, flags: { noBlock: true } }); + const e = put(h, 'enemy_9008_acbunn', [9, 6]); + return { h, e }; +} +/** The targets of `e`'s next attack. */ +function boneNext(h, e) { + const n = h.hooksOf('attack').filter((c) => c.attacker === e).length; + assert.ok(h.runUntil(() => h.hooksOf('attack').filter((c) => c.attacker === e).length > n, 8), 'a new attack'); + return h.hooksOf('attack').filter((c) => c.attacker === e)[n].targets; +} + +test(`${nm('enemy_9008_acbunn')}: 3 targets while hidden, 1 once blocked or revealed — by priority, not its blocker first; 3 again when hidden`, () => { + for (const cause of ['block', 'reveal']) { + const { h, e } = boneArena(); + const wall = h.unit('t_wall'), taunter = h.unit('t_wall4'); + assert.equal(new Set(boneNext(h, e)).size, 3, `${cause}: hidden — three distinct targets of the four in reach`); + h.b.addBuff(taunter, { key: 'test:taunt', mods: { taunt: 5 } }); + if (cause === 'block') { h.b.removeBuff(wall, 'test:noBlock'); h.step(2); assert.equal(e.blockedBy, wall); } + else h.b.addBuff(e, { key: 'test:reveal', persist: true, flags: { reveal: true } }); + assert.deepEqual(boneNext(h, e), [taunter], `${cause}: one target, the taunt-5 one (索敌不受阻挡影响)`); + if (cause === 'block') { h.b.addBuff(wall, { key: 'test:noBlock', persist: true, flags: { noBlock: true } }); h.b.releaseBlocked(wall); } + else h.b.removeBuff(e, 'test:reveal'); + assert.equal(boneNext(h, e).length, 3, `${cause}: hidden again (0 s after the block) — three`); + checkInvariants(h.b); + } +}); + +test(`${nm('enemy_9008_acbunn')}: never targets a flying unit (炎佑, taunt 5), hidden or revealed`, () => { + for (const revealed of [false, true]) { + const { h, e } = boneArena({ content: 'full', extraContent: [] }); + const [air] = spawnYanyou(h.b, 'p1', { count: 1, hp: 50000 }); + assert.ok(air?.isFlying); + air.x = 6.5; air.y = 9; + h.b.applyStatus(air, 'stun', { duration: 30, force: true }); + h.b.addBuff(air, { key: 'test:taunt', mods: { taunt: 5 } }); + if (revealed) h.b.addBuff(e, { key: 'test:reveal', persist: true, flags: { reveal: true } }); + const t = boneNext(h, e); + assert.equal(t.length, revealed ? 1 : 3); + assert.ok(!t.includes(air), `${revealed ? 'revealed' : 'hidden'}: the flyer is no target`); + } +}); + +test(`${nm('enemy_9008_acbunn')}: its 3 hidden targets come from its normal attack's reach (2 + the 0.25 ally collider)`, () => { + const { h, e } = boneArena(); + const edge = h.unit('t_wall3'), outside = h.unit('t_wall4'); + edge.x = e.x + 2.1; edge.y = e.y; + outside.x = e.x + 2.3; outside.y = e.y; + h.b.addBuff(edge, { key: 'test:taunt', mods: { taunt: 5 } }); + const t = boneNext(h, e); + assert.ok(t.includes(edge), 'the ally 2.1 away is one of the three'); + assert.ok(!t.includes(outside), 'the one 2.3 away is out of reach'); +}); + test(`${nm('enemy_1175_dushdo_2')}: stealth; next to 深池伙友卫队精英 its attack interval drops by traitAbility.base_attack_time`, () => { const h = arena(); h.step(); diff --git a/test/golden/roster.json b/test/golden/roster.json index 022b5487..0b606e69 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -1165,7 +1165,7 @@ "coins": 12, "dmg": 1560928, "bossDmg": 0, - "heal": 29179, + "heal": 29516, "deaths": 1, "layerGains": {"lateranoShip":12,"preciShip":12,"sargonShip":26} } @@ -1174,11 +1174,11 @@ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",4558.4,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3620.85,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3820.43,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20204,39,2], + ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20541,39,2], ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,12,169697,0,0,16,5], ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,5,53428,1556,486,8,2], ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,29961,8646,173,0,4], - ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,204487,8432,2713,36,7], + ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,204487,8769,2713,36,7], ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,3,63902,0,1900,8,1], ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,0,14472,0,0,5,5], ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,20,138355,1500,50,136,4], @@ -1212,12 +1212,12 @@ "enemy_1367_dseed": [2,2,0,0,9953], "enemy_1439_dslntf": [1,1,0,0,49766], "enemy_2002_bearmi_2": [1,1,0,0,18248], - "enemy_9008_acbunn": [1,1,0,2434,19907] + "enemy_9008_acbunn": [1,1,0,2771,19907] }, - "hooks": [1,145,5849,507,507,1318,1468,3393,124,130,35,31,37,24779,382,5,122,0,1,124,11,6,0], - "events": {"atk":596,"bounty":6,"deploy":21,"die":130,"dmg":1388,"engage":12,"fx":256,"heal":179,"layer":11,"skill":66,"spawn":145,"status":387}, + "hooks": [1,145,5849,507,507,1319,1469,3395,124,130,35,31,37,24779,382,5,122,0,1,124,11,6,0], + "events": {"atk":597,"bounty":6,"deploy":21,"die":130,"dmg":1389,"engage":12,"fx":256,"heal":181,"layer":11,"skill":66,"spawn":145,"status":387}, "fx": {"beam":4,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, - "snaps": "19eb7843 2593e6ad ced96303 58bf6c6a 57b56210 fb902b8c 2edac827 24d6e4e1 4fd0b828 109f10aa 67cb9d6c ce16ff8f a012eb0e 55ce4c3e 7158e61d d736ac42 c7169d95 af7956c1 aa3be1fe fc315fa7" + "snaps": "19eb7843 2593e6ad ced96303 58bf6c6a 57b56210 fb902b8c 2edac827 dc1e40f6 4919a6eb 503315c1 d3bf6a2b 9ca37124 7959a1b9 ab8cf469 6e9a303e 47d433a9 d5193bce 9f52967e 7a198ce1 eab6362c" }, "roster-019": { "about": "pass 0 band 7: chess_char_6_15_b chess_char_6_19_b chess_char_5_01_b chess_char_5_05_b chess_char_6_17_b chess_char_6_13_b chess_char_6_14_b chess_char_6_16_b chess_char_6_18_b chess_char_6_20_b chess_char_5_02_b chess_char_5_03_b", From 4128965a9faef687355a8d999e3a51eb70143bd7 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 20:14:44 +0800 Subject: [PATCH 09/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20an=20instant=20s?= =?UTF-8?q?kill=20with=20no=20attack=20of=20its=20own=20takes=20one=20atta?= =?UTF-8?q?ck=20cycle=20=E2=80=94=20=E5=BC=95=E6=98=9F=E6=A3=98=E5=88=BA?= =?UTF-8?q?=20S1=20under=20=E8=BF=85=E6=8D=B7=20no=20longer=20recasts=20ev?= =?UTF-8?q?ery=20tick,=20and=20attack=20speed=20paces=20such=20casts=20(Gi?= =?UTF-8?q?tHub=20#298);=20golden:=2084=20scenarios=20move=20(below)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Seen (#298, FrogThai): 度算浪波 (AUTO, instant, SP_FULL, cost 6, no attack) with 迅捷's refund (12 + 15 at ≥ 40 layers) cast 60 times in 2 s — every tick — at ASPD 100 and at ASPD 600 alike (repro): skill.tick checks tick rules before the attack loop and an instant cast ended without touching the attack cooldown. Now (skills.js): such a cast (instant / charges, no spec.attack) sets atkCd to at least the attack interval, and the casts checked in skill.tick (the tick rules, the DEFAULT of units that never attack, content trigger ranges) wait while the cooldown runs beyond this tick — a remainder ≤ dt is this tick's slot, which the cast claims before updateAlly's attack. A cast right before an attack (onAboutToAttack, DEFAULT) is followed by that attack as before; timed skills, "next attack" skills and TAKE_DAMAGE / kit casts' gating are unchanged (a TAKE_DAMAGE or kit cast also takes the cycle). [ASSUMED] one attack interval (PRTS prints no 前后摇 for such casts). Measured: 2 casts / 0 attacks in 2 s at interval 1.36 s, 9 at 0.25 s; with no enemy it still fires at full SP (#124). Not taken: PR #313's 3 s operation cooldown for AUTO skills (it conflicts with #124). Docs: SIM.md §7 trigger rules, PLAYING.md 技能自动释放. Golden — every moved battle fields an instant no-attack skill cast from the tick, which now waits for / takes the attack cycle (德克萨斯 S2, the 先锋 DP skill skcom_charge_cost, 赫默 S2, 雪猎 S2, 莱恩哈特 S2, 凛御银灰 S1 / S2, 异客 S3, 锏 S2, 伺夜 S1 / S2, 焰尾 S1 / S2, 引星棘刺 S1, 忍冬 S2, 郁金香 S3 (补位); 自选 陈 / 艾丽妮 / 嵯峨 S2, 左乐 S3, 重岳 S2, 温蒂 S3, 望 S1 / S2, 多萝西, 黑键 S2): roster (22): roster-001 roster-003 roster-005 roster-008 roster-010 roster-012 roster-014 roster-015 roster-016 roster-018 roster-020 roster-021 roster-028 roster-029 roster-031 roster-033 roster-034 roster-039 roster-040 roster-041 roster-042 roster-048;bonds (9): bond-deputShip-low bond-indomShip-low bond-raidShip-high bond-skillfulShip-low bond-soloShip-high bond-suntShip-low bond-victoriaShip-high bond-visiShip-high bond-visiShip-low;fields (9): boss-boss_1-pair boss-boss_2-pair boss-boss_3-pair boss-boss_4-pair boss-boss_5-pair boss-boss_6-pair hidden-boss_10-pair hidden-boss_8-pair hidden-boss_9-solo;matches (16): coop2-ABYSS-10-boosted coop2-HARD-4 coop2-NORMAL-14-standins coop2-NORMAL-3 coop2-NORMAL-70-diy coop2-NORMAL-8-serverrun coop3-ABYSS-5 coop4-ABYSS-7 coop4-FUNNY-6 solo-ABYSS-1 solo-FUNNY-1 solo-FUNNY-2 solo-HARD-1 solo-HARD-2 solo-HARD-9-boosted solo-NORMAL-1;standins (6): standin-01 standin-03 standin-04 standin-08 standin-09 standin-10;diy (22): diy-001 diy-002 diy-003 diy-004 diy-005 diy-007 diy-013 diy-014 diy-015 diy-033 diy-034 diy-035 diy-036 diy-037 diy-109 diy-110 diy-111 diy-112 diy-114 diy-115 diy-116 diy-137 Tests adapted to the rule: op_wang (the second 立即获得两枚棋子 waits out her cycle), playtest6-skills (锏 S2's first cast may wait one attack interval). --- docs/PLAYING.md | 2 +- docs/SIM.md | 7 +- server/sim/skills.js | 17 +- test/content/bonds_addon.test.js | 29 + test/content/op_wang.test.js | 2 + test/golden/bonds.json | 164 +++--- test/golden/diy.json | 737 +++++++++++++------------ test/golden/fields.json | 590 ++++++++++---------- test/golden/matches.json | 304 +++++----- test/golden/roster.json | 886 +++++++++++++++--------------- test/golden/standins.json | 319 +++++------ test/sim/playtest6-skills.test.js | 7 +- 12 files changed, 1541 insertions(+), 1523 deletions(-) diff --git a/docs/PLAYING.md b/docs/PLAYING.md index f357981a..fc3c7920 100644 --- a/docs/PLAYING.md +++ b/docs/PLAYING.md @@ -76,7 +76,7 @@ - 作战中:海嗣、狼群、流形、支援装置开战时就在摆放的位置部署;医疗探机、诅咒娃娃开战时也在摆放的位置免费部署一次(持续 10 / 15 秒,和官方一样不需要先开技能),之后所属干员每次发动技能时再次在原位出现;所属干员被击倒、再部署回场时,技能给的那一个如果还没出现,会立刻出现。巫恋退场时诅咒娃娃随之撤退,赫默退场时已出现的医疗探机不受影响。医疗探机、诅咒娃娃、海嗣(以及自选干员的工程蓄水炮、沙地兽、打字机、本能的召唤)这类不会受到攻击、到时间就离场的召唤物不受任何伤害(活性源石也一样)、也不会被治疗,它们的血条就是倒计时:随时间减少,空了就离场。医疗探机、诅咒娃娃、支援装置、海嗣没有摆放就不会出现;狼群、流形(战术家的援军)没有摆放时会在战术点出现。狼群最后一只狼影被击倒后进入战术点形态:暂时离开战斗(不阻挡、不攻击、不会被攻击,格子仍然占着),经过狼影的恢复时间(25 秒)后在原地满血、带着 1 只狼影回来,之后重新开始每 25 秒加 1 只狼影;伺夜退场时狼群随之撤退,伺夜再部署回场时狼群重新带着 2 只狼影出现。 - **阻挡**看接触:干员阻挡中心距离约 0.7 格以内、与它接触的敌人(地面干员挡不住飞行和近地悬浮的敌人)。敌人卡在两名干员之间时,阻挡它的干员倒下、撤退或被晕眩后,另一名仍与它接触、还有空余阻挡数的干员会**立刻接替阻挡**;都没有空位时敌人才会走掉。被冻结或晕眩的敌人同样会被接触到的干员挡住:干员再部署到它身边就会阻挡它,隐匿的敌人也随之破隐(沉睡、浮空、恐惧的敌人仍然挡不住)。迎面走来的敌人会停在干员格子前面。**阻挡了就一定能打到**:任何干员(包括站在近战位的远程干员和召唤物)总能攻击自己阻挡的敌人,不管它在不在攻击范围内、在干员哪一侧,并且优先攻击它(医疗干员除外:咒愈师以外的医疗挡住敌人时照常治疗队友,不会攻击它;「停止攻击」类技能期间也除外;技能原文另有限制的也按原文:普罗旺斯二技能开启时不以生命值高于 80% 的敌人为目标,寒檀二技能的冰凌随机落在攻击范围内的地块上)。 - 开战时干员按**逐列从左到右、每列从上到下**的顺序部署(最左一列最先,与阿戈尔吞噬「更靠左和靠上」的顺序相同),召唤物在所有干员之后。被阻挡的敌人先打阻挡它的干员;没被阻挡的远程敌人先打嘲讽等级高的,同级时打最后部署的(召唤物、最右一列靠下的干员和刚再部署的干员更容易挨打)。隐匿的干员只会被它阻挡的敌人攻击,没被它挡住的敌人的溅射、爆炸、范围技能、留下的伤害区域(包括假想敌:蚀裂被击倒后喷出的毒雾)以及深池伙友卫队、扎罗的减攻速光环也落不到它身上(和官方一样;写明「无视无法选择」的效果如污染秽蚀照常能打到,寒霜的减攻速光环和“墓碑”这类地图效果照常生效);**迷彩**(如忍冬三技能期间击倒敌人后、寒芒克洛丝一技能)同样只会被它阻挡的敌人攻击,也显示为半透明,但躲不开溅射、爆炸和范围伤害(同时打范围内所有单位的普通攻击——如“斩胄之剑”“破胄之锤”“灵幛”——打不到它),也不算隐匿(不触发叙拉古等「隐匿时」效果)。叙拉古的隐匿按时(32 秒 + 每层 0.4 秒)结束;忍冬的迷彩按官方持续到她下一次开技能。**蒂比起飞**期间只挡飞行敌人,地面敌人不会选她为目标(普通攻击、溅射、技能范围、燃烧区域和要选中目标的减益都落不到她身上);飞行和悬浮敌人、写明「无视无法选择」的效果(如污染秽蚀)照常能打到她;地面敌人的光环和全场效果(如“墓碑”让全场攻击力、防御力减半)、她攻击敌人时招来的反制(如重装侦察兵的暴露)照常生效,起飞前已挂上的持续伤害也照常跳。 -- **技能自动释放**按官方「技能策略」:一般的手动技能在技能就绪、即将攻击 / 治疗且初始攻击范围内有敌人(治疗技能:有受伤的队友)时释放;**带独立技能范围**的技能(如德克萨斯「剑雨」、凛御银灰「御敌的锋锐」、锏「归于宁静」,不含「攻击范围扩大」类)在**技能范围内出现敌人**时就释放,不必先攻击;**开启后攻击范围比平时大**的手动技能(如莫斯提马「序时之匙」、银灰「真银斩」、史尔特尔「黄昏」、白面鸮「脑啡肽」)在**开启后的攻击范围内出现敌人**(治疗技能:有受伤的队友)时就释放,不必等敌人走进平时的攻击范围,这是本作按玩家反馈有意与官方不同的地方;**重装干员**的手动技能在受到伤害时释放(例外:深巡、雷蛇的二技能,号角的二、三技能,灰毫的一、二技能按玩家反馈改为攻击范围内有敌人时就释放(深巡二技能按开启后更远的攻击范围判断),余的二技能「厚礼上宾」改为周围两格(技能范围)内有敌人时就释放,这是本作有意与官方不同的地方;深巡一技能仍要受到伤害);执旗手 / 战术家 / 吟游者技能就绪即释放,解放者 / 阵法术师在初始攻击范围内有敌人时释放(开启后攻击范围扩大的技能——薄绿「风语」、蜜蜡「沙暴扩散」、卡涅利安「食噬之印」、玛恩纳「未宽解的悲哀」,以及安洁莉娜「秘杖·反重力模式」——同样按开启后的攻击范围判断)。**自动触发**的技能按其本身规则:只作用于队友的(如引星棘刺「度算浪波」、浊心斯卡蒂「同葬无光之愿」、纯烬艾雅法拉「无声润物」)技力满就释放,不用等敌人或伤员;伺夜「领袖的呼唤」「领袖的馈赠」只在场上有狼群时释放:狼群处于战术点形态时,「领袖的呼唤」也会释放并让它立刻带着 1 只狼影回到场上(狼影未满时改为加 1 只狼影,已满时把狼群的生命值回满),「领袖的馈赠」也会释放(立即获得费用,强化留给回来的狼群的下一次攻击);又如古米「备用军粮」在身边(技能范围内)有受伤的队友时就会发动,下一次攻击改为治疗该队友(不用先接敌;她的二技能「食粮烹制」是手动技能,按重装规则在受到伤害时释放);塞雷娅「急救」在她即将攻击时、身边有生命不高于一半的队友才发动,这次攻击直接改为治疗;新约能天使二技能的护盾按官方给攻击范围内**仇恨最高**的队友(嘲讽等级高的优先,同级时给最后部署的),不一定是站在最前面挨打的那个。手动技能的自动释放有 3 秒冷却:开战部署后先等 3 秒,之后同一干员两次自动释放至少间隔 3 秒(可充能的技能不会同时放完)。 +- **技能自动释放**按官方「技能策略」:一般的手动技能在技能就绪、即将攻击 / 治疗且初始攻击范围内有敌人(治疗技能:有受伤的队友)时释放;**带独立技能范围**的技能(如德克萨斯「剑雨」、凛御银灰「御敌的锋锐」、锏「归于宁静」,不含「攻击范围扩大」类)在**技能范围内出现敌人**时就释放,不必先攻击;**开启后攻击范围比平时大**的手动技能(如莫斯提马「序时之匙」、银灰「真银斩」、史尔特尔「黄昏」、白面鸮「脑啡肽」)在**开启后的攻击范围内出现敌人**(治疗技能:有受伤的队友)时就释放,不必等敌人走进平时的攻击范围,这是本作按玩家反馈有意与官方不同的地方;**重装干员**的手动技能在受到伤害时释放(例外:深巡、雷蛇的二技能,号角的二、三技能,灰毫的一、二技能按玩家反馈改为攻击范围内有敌人时就释放(深巡二技能按开启后更远的攻击范围判断),余的二技能「厚礼上宾」改为周围两格(技能范围)内有敌人时就释放,这是本作有意与官方不同的地方;深巡一技能仍要受到伤害);执旗手 / 战术家 / 吟游者技能就绪即释放,解放者 / 阵法术师在初始攻击范围内有敌人时释放(开启后攻击范围扩大的技能——薄绿「风语」、蜜蜡「沙暴扩散」、卡涅利安「食噬之印」、玛恩纳「未宽解的悲哀」,以及安洁莉娜「秘杖·反重力模式」——同样按开启后的攻击范围判断)。**自动触发**的技能按其本身规则:只作用于队友的(如引星棘刺「度算浪波」、浊心斯卡蒂「同葬无光之愿」、纯烬艾雅法拉「无声润物」)技力满就释放,不用等敌人或伤员;立即生效、本身不是一次攻击的技能(如度算浪波、先锋的回费技能)每次释放占用一次攻击间隔,攻速越快放得越勤,迅捷返还的技力再多也不会每一帧都放(GitHub #298);伺夜「领袖的呼唤」「领袖的馈赠」只在场上有狼群时释放:狼群处于战术点形态时,「领袖的呼唤」也会释放并让它立刻带着 1 只狼影回到场上(狼影未满时改为加 1 只狼影,已满时把狼群的生命值回满),「领袖的馈赠」也会释放(立即获得费用,强化留给回来的狼群的下一次攻击);又如古米「备用军粮」在身边(技能范围内)有受伤的队友时就会发动,下一次攻击改为治疗该队友(不用先接敌;她的二技能「食粮烹制」是手动技能,按重装规则在受到伤害时释放);塞雷娅「急救」在她即将攻击时、身边有生命不高于一半的队友才发动,这次攻击直接改为治疗;新约能天使二技能的护盾按官方给攻击范围内**仇恨最高**的队友(嘲讽等级高的优先,同级时给最后部署的),不一定是站在最前面挨打的那个。手动技能的自动释放有 3 秒冷却:开战部署后先等 3 秒,之后同一干员两次自动释放至少间隔 3 秒(可充能的技能不会同时放完)。 - **推开 / 拉拽**按官方「力度 − 重量」决定距离:例如野鬃二技能(中等力度)把重量 0 / 1 / 2 / 3 的敌人推开约 2.1 / 1.7 / 0.4 / 0.1 格,重量 4 以上推不动——轻型敌人反而推得更远。野鬃二技能沿她的朝向推开:正前方 45° 以内按上面的距离,身后、侧面或贴身的敌人只被轻推一下(约 0.4 格以内);琳琅诗怀雅三技能的金币则从她身边向外推开,落在她前方 2–4 格的范围(官方「范围2-4」)内的地面敌人和她阻挡的敌人身上。攻击速度最低为 20(沼泽、寒霜等减速叠满时也不会更慢)。 - **生命回复不是治疗**(与官方一致):吟游者的特性(魔王、浊心斯卡蒂及其海嗣)、调香师的天赋、瑕光二技能、铃兰三技能、锡人炼金单元给友军的「每秒恢复生命」是提高对方的**生命回复速度**,不是治疗:收割者 / 不屈者 / 武者(如隐德来希、圣约送葬人、折桠)这类「无法被友方治疗」的干员和处于禁疗的干员也能吃到,治疗量加成(如「受到的治疗效果提升」)也不会放大它;铃兰三技能开启后的第一秒没有回复。直接治疗(医疗干员的治疗、技能的「恢复…生命」)仍然对这些干员无效。 - **元素损伤条**在单位自己的血条正下方:左边是元素图标,白条是剩余的元素值,只有真正爆发时才会耗尽;爆发后条变成元素的颜色、图标闪烁,在冷却期间慢慢回满(这段时间不会再积累元素损伤)。 diff --git a/docs/SIM.md b/docs/SIM.md index 1d660a6e..20330556 100644 --- a/docs/SIM.md +++ b/docs/SIM.md @@ -921,7 +921,12 @@ instance) and skip `'counter'` / `'reflect'` damage. When the guard trips, the l (`Battle._deploy` initial; `battle.flags.startOpCooldown`, default 3 — the test harness sets 0 unless told otherwise); AUTO skills are exempt; kits with their own automatic cast of a MANUAL skill check `skill.opCooling` (波登可 S1, 雪猎 special bullets, 流形 copy). While a cast "next attack" (instant / charges with an attack override) waits for its - attack, no further charge is cast. `gainSp` is ignored while a duration/ammo/toggle skill + attack, no further charge is cast. An instant / charges skill with no attack override of its own (a throw, a heal, a + buff, a DP gain …) takes one attack cycle: its cast sets the unit's attack cooldown to at least its attack interval, and + the casts checked every tick (the rules above, the DEFAULT of units that never attack, content trigger ranges) wait while + that cooldown runs — attack speed paces them, and an SP refund that refills the bar at once (迅捷) no longer recasts one + every tick (GitHub #298, 引星棘刺 S1; [ASSUMED] one attack interval: PRTS prints no 前后摇 for such casts); a cast right + before an attack (DEFAULT) is followed by that attack as before. `gainSp` is ignored while a duration/ammo/toggle skill runs (its bar shows the skill), whatever the reason, and — any reason but `'init'` — while the unit has the `noSp` flag (阻回: "停止并阻止任意形式的技力回复"; the operators' 凋亡 burst, §3). - Kinds: `duration` (mods for `duration` s), `ammo` (mods until `ammo` attacks were made, optional duration cap), diff --git a/server/sim/skills.js b/server/sim/skills.js index 18316a1c..50d83240 100644 --- a/server/sim/skills.js +++ b/server/sim/skills.js @@ -351,6 +351,10 @@ export class SkillRuntime { if (this.active && this.isTimed) return; // a cast "next attack" still waits for its attack: another charge now would be spent on the same attack if (this.pending || this._opCooling()) return; + // an instant / charge cast with no attack of its own takes the unit's attack cycle (activate: atkCd ≥ interval after + // it — GitHub #298), so the casts checked here wait while that cycle runs. skill.tick runs before updateAlly: a + // remainder ≤ dt ends this tick and the cast claims it (else the attack about to be made would take the cycle first) + if (!this.isTimed && !this.spec.attack && u.atkCd > dt + 1e-9) return; if (TICK_RULES.has(this.rule)) { if (this._tickRuleSatisfied()) this.activate(this.rule); } else if (this.rule !== 'TAKE_DAMAGE' && this.rule !== 'NEVER') { @@ -451,7 +455,8 @@ export class SkillRuntime { if (this.pending || this._opCooling()) return false; if (!this._defaultCondition()) return false; if (this.triggerAllies && !this._allyTriggerSatisfied()) return false; - return this.activate('DEFAULT'); + this._beforeAttack = true; // the attack follows this cast in the same check (ai.js updateAlly): it owns the cycle + try { return this.activate('DEFAULT'); } finally { this._beforeAttack = false; } } /** TAKE_DAMAGE trigger + INCREASE_WHEN_TAKEN_DAMAGE SP. */ @@ -499,7 +504,15 @@ export class SkillRuntime { // bullets added in skillStart (拉特兰's ×(1.05 + 0.015 × layers), 逃犯引渡手续, talents): the bar's full mark // (community report #35: the extra bullets sat above a full bar until fewer than the base count were left) if (this.active && this.ammoLeft > this.ammoMax) this.ammoMax = this.ammoLeft; - if (!this.isTimed && !this.pending) this.end('instant'); + if (!this.isTimed && !this.pending) { + this.end('instant'); + // an instant / charge skill with no attack of its own (no spec.attack: a throw, a heal, a buff …) takes one attack + // cycle — its cast in place of an attack, so attack speed paces it (GitHub #298: 引星棘刺 S1 度算浪波, an SP_FULL + // cast, was recast every tick once 迅捷's refund refilled its bar at once, whatever the attack speed). [ASSUMED] + // one attack interval: PRTS prints no 前后摇 for such casts. A cast made right before an attack (DEFAULT) is + // followed by that attack as before; a cast onEnd opened again owns the cycle. + if (!this.active && !this.spec.attack && !this._beforeAttack && u.alive && u.s.interval > 0) u.atkCd = Math.max(u.atkCd, u.s.interval); + } return true; } diff --git a/test/content/bonds_addon.test.js b/test/content/bonds_addon.test.js index 3031e222..d7c90a33 100644 --- a/test/content/bonds_addon.test.js +++ b/test/content/bonds_addon.test.js @@ -71,6 +71,35 @@ test('迅捷: member skill end +12 SP (p=1 at high L), ≥40 layers every operat assert.equal(off.s_x, 0); }); +test('迅捷 refills 引星棘刺 S1 at once: the instant cast still takes one attack cycle each, so attack speed paces it (GitHub #298)', () => { + // S1 度算浪波: AUTO, no duration, no attack of its own, SP_FULL, cost 6; 迅捷 refunds 12 + 15 SP at ≥ 40 layers + const casts = (aspd = 0, enemy = true) => { + const h = makeBattle({ + seed: 1, bonds: { swiftShip: bond(2, 229, 3) }, autoFinish: false, timeLimit: 30, + units: [{ chessId: 'chess_char_5_15_b', skillIndex: 0, row: 10, col: 4 }], + enemies: enemy ? [{ key: 'enemy_still', route: { motion: 'WALK', start: [10, 6], end: [10, 6], checkpoints: [] } }] : [], + defs: { enemies: { enemy_still: enemyRec({ key: 'enemy_still', hp: 1e9, atk: 0, speed: 0, blockCnt: 0 }) } }, + }); + h.step(); + const u = h.unit('chess_char_5_15_b'); + if (aspd) h.b.addBuff(u, { key: 'test:aspd', mods: { aspd } }); + if (enemy) assert.ok(h.b.enemiesInKeys(u.rangeKeys, u, u.profile).length, 'an enemy stays in range'); + u.atkCd = 0; + u.skill.gainSp(u.skill.spCost, 'test'); + const n0 = u.skill.activations, a0 = u.stats.attacks; + h.run(2); + checkInvariants(h.b); + return { n: u.skill.activations - n0, attacks: u.stats.attacks - a0, interval: u.s.interval }; + }; + const base = casts(); + assert.ok(base.n >= 2 && base.n <= 3, `one cast per attack interval (${base.interval.toFixed(2)} s): ${base.n} in 2 s, not every tick`); + assert.equal(base.attacks, 0, 'each cast takes the attack cycle'); + const fast = casts(500); + assert.ok(fast.n >= 8 && fast.n <= 9, `ASPD +500 (interval ${fast.interval.toFixed(2)} s): ${fast.n} casts`); + const alone = casts(0, false); + assert.ok(alone.n >= 2 && alone.n <= 3, `no enemy: still fires at full SP (#124), one per cycle — ${alone.n}`); +}); + test('迅捷 / 突袭: SP gifts after end do not recharge a zero-SP deployment skill or trigger a ready raid', () => { const h = makeBattle({ defs: { chess: { t_deploy: chessRec({ id: 't_deploy', bonds: ['swiftShip', 'raidShip'], skill: { spCost: 0 } }) } }, diff --git a/test/content/op_wang.test.js b/test/content/op_wang.test.js index a3e21e3b..26e96ea3 100644 --- a/test/content/op_wang.test.js +++ b/test/content/op_wang.test.js @@ -269,6 +269,8 @@ test('her stock (the owner\'s decision of 2026-10-06): the placed 棋子 occupy assert.deepEqual([u.skill.activations, w.stock], [1, 7], `${S}: 立即获得两枚棋子`); h.step(); assert.ok(!u.s.flags.noSp, `${S}: below the cap, no 阻回`); + assert.ok(u.atkCd > 0, `${S}: the cast took her attack cycle (GitHub #298)`); + h.run(u.atkCd); // the next cast waits it out u.skill.gainSp(999); h.step(); assert.deepEqual([u.skill.activations, w.stock], [2, 8], `${S}: 最多拥有8枚`); diff --git a/test/golden/bonds.json b/test/golden/bonds.json index 92fb0ba8..9a6351ff 100644 --- a/test/golden/bonds.json +++ b/test/golden/bonds.json @@ -93,33 +93,33 @@ "round": 5, "seed": 4108057433, "waveId": "act1autochess_05", - "time": 61.37, - "ticks": 1841, + "time": 61.7, + "ticks": 1851, "reason": "cleared", - "killed": 18, + "killed": 19, "total": 21, "unspawned": 0, "bossHpLeft": null, "rngDraws": 29, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":18,"total":21,"perfect":false,"leaks":3,"leaksUncounted":0,"coins":0,"dmg":70850,"bossDmg":0,"heal":0,"deaths":1,"layerGains":{}}}, + "players": {"p1":{"killed":19,"total":21,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":0,"dmg":67869,"bossDmg":0,"heal":0,"deaths":1,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,5,12243,2334,0,30,1], + ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,4,12371,2334,0,28,1], ["p1",2,"op","chess_char_1_06_a",1,null,1137,1,4,3,2907,0,0,13,1], ["p1",3,"op","chess_char_1_13_a",1,null,913,1,6,3,3059,0,0,12,1], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,8,0,5974,0,0,9,1], ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,9,1,13794,0,0,27,1], ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,10,0,7040,0,0,8,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,5,5,20865,0,0,23,3], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,5,7,17755,0,0,20,3], ["p1",8,"op","chess_char_3_13_a",1,null,1064,1,7,1,4968,0,0,29,6], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[5,4,1,358,26835],"enemy_1251_lysyta":[15,13,2,36,35523],"enemy_1328_cbjedi":[1,1,0,1940,9000]}, - "hooks": [1,31,1841,178,178,223,218,0,19,22,15,15,0,9915,13,9,21,3,1,19,0,0,0], - "events": {"atk":195,"deploy":8,"die":19,"dmg":218,"engage":8,"fx":36,"leak":3,"skill":30,"spawn":31,"status":21}, + "enemies": {"enemy_1249_lysdb_2":[5,5,0,299,27000],"enemy_1251_lysyta":[15,14,1,36,35947],"enemy_1328_cbjedi":[1,0,1,1999,5430]}, + "hooks": [1,31,1851,170,170,216,211,0,20,22,15,15,0,9963,12,9,21,2,1,20,0,0,0], + "events": {"atk":187,"deploy":8,"die":20,"dmg":211,"engage":8,"fx":36,"leak":2,"skill":30,"spawn":31,"status":20}, "fx": {"aoe":1,"displace":11,"pull":11,"shieldBreak":5,"strike":3,"taunt":1,"volley":3,"zone":1}, - "snaps": "c6b020b2 1c788562 16d41c60 842c0335 f0c64705 3571b4d8 5874690e" + "snaps": "c6b020b2 1c788562 16d41c60 48683985 95826952 716a3765 19a1c415" }, "bond-deputShip-high": { "about": "助力 high: tier 2 layers 999; chess_char_4_11_b chess_char_1_06_b chess_char_1_13_b chess_char_2_14_b chess_char_1_06_a chess_char_1_13_a chess_char_4_10_b chess_char_4_12_b token_10041_cathy_catsld token_10041_cathy_catsld", @@ -329,38 +329,38 @@ "round": 5, "seed": 1441167629, "waveId": "act1autochess_05", - "time": 60.37, - "ticks": 1811, + "time": 66.1, + "ticks": 1983, "reason": "cleared", "killed": 18, "total": 18, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 7, + "rngDraws": 8, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":18,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":86976,"bossDmg":0,"heal":1315,"deaths":2,"layerGains":{"indomShip":2}} + "p1": {"killed":18,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":86976,"bossDmg":0,"heal":1498,"deaths":2,"layerGains":{"indomShip":2}} }, "units": [ - ["p1",1,"op","chess_char_1_20_a",1,null,2198,1,5,0,421,0,0,25,0], - ["p1",2,"op","chess_char_4_11_a",1,null,673.38,1,6,0,0,2328,0,0,1], - ["p1",3,"op","chess_char_2_12_a",1,null,0,0,8,0,879,1267,0,29,1], + ["p1",1,"op","chess_char_1_20_a",1,null,1939.6,1,5,0,506,258,0,30,0], + ["p1",2,"op","chess_char_4_11_a",1,null,205.2,1,6,0,0,2714,0,0,1], + ["p1",3,"op","chess_char_2_12_a",1,null,0,0,8,1,1011,1267,0,29,1], ["p1",4,"op","chess_char_4_09_a",1,null,1978.85,1,9,6,41517,159,0,13,1], ["p1",5,"op","chess_char_4_10_a",1,null,1288,1,7,5,23480,0,0,17,1], - ["p1",6,"op","chess_char_4_12_a",2,null,1570.34,1,10,0,0,1498,1315,0,0], + ["p1",6,"op","chess_char_4_12_a",2,null,1754,1,10,0,0,1498,1498,0,0], ["p1",7,"op","chess_char_4_13_a",1,null,0,0,11,1,7622,1587,0,14,2], - ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,4,6,13056,0,0,10,4], + ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,4,5,12839,0,0,10,4], ["p1",9,"token","token_10041_cathy_catsld",null,null,100,1,12,0,0,0,0,0,null], ["p1",10,"token","token_10041_cathy_catsld",null,null,100,1,13,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1158_divman":[15,15,0,1970,57024],"enemy_1160_hvyslr":[2,2,0,3378,23040],"enemy_1161_tidmag":[1,1,0,1491,6912]}, - "hooks": [1,31,1811,174,174,287,292,900,20,20,10,9,0,5536,104,6,18,0,1,20,1,0,3], - "events": {"atk":219,"deploy":10,"die":20,"dmg":292,"engage":6,"fx":23,"layer":1,"skill":19,"spawn":31,"status":81}, + "enemies": {"enemy_1158_divman":[15,15,0,1982,57024],"enemy_1160_hvyslr":[2,2,0,4011,23040],"enemy_1161_tidmag":[1,1,0,1491,6912]}, + "hooks": [1,31,1983,182,182,294,299,1026,20,20,10,10,0,5951,105,8,18,0,1,20,1,0,3], + "events": {"atk":227,"deploy":10,"die":20,"dmg":299,"engage":6,"fx":23,"layer":1,"skill":20,"spawn":31,"status":82}, "fx": {"dilemma":1,"dodge":3,"explosion":4,"frostNova":2,"garrison":1,"levitate":7,"overclock":1,"shield":1,"slippery":1,"splash":2}, - "snaps": "15bffd6e 1f9e2a5c 1d558857 c10b9d63 0115b968 e655e297" + "snaps": "15bffd6e 1f9e2a5c 1d558857 c10b9d63 18a8a23f b0528480 309db994" }, "bond-indomShip-high": { "about": "不屈 high: tier 2 layers 999; chess_char_1_20_b chess_char_3_16_b chess_char_4_23_b chess_char_5_01_b chess_char_2_12_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -1024,10 +1024,10 @@ "units": [ ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",3513,1,4,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,5,0,0,0,0,0,0], - ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",23974.92,1,45,4,125645,1409,60,18,2], + ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",23974.92,1,45,4,126350,1409,60,18,2], ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",2118,1,10,0,0,0,0,0,0], ["p1",5,"op","chess_char_1_18_b",1,"uniequip_002_utage",19368.26,1,30,20,363852,15487,3850,55,8], - ["p1",6,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,6824,0,0,4,3], + ["p1",6,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,6120,0,0,3,3], ["p1",7,"op","chess_char_4_20_b",2,"uniequip_002_fartth",1419,1,7,0,12539,0,0,13,0], ["p1",8,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1584,1,9,0,0,0,0,0,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1035,10 +1035,10 @@ ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1010_demon":[7,7,0,737,130637],"enemy_1422_lrsldr_2":[14,14,0,0,191601],"enemy_1425_lrcmra_2":[3,3,0,2743,186624]}, - "hooks": [1,45,1847,95,95,98,106,73,24,34,13,12,0,2318,0,16,24,0,1,24,1,0,0], - "events": {"atk":97,"deploy":18,"die":34,"dmg":105,"engage":4,"fx":23,"heal":56,"layer":1,"skill":27,"spawn":35,"status":9}, + "hooks": [1,45,1847,94,94,97,105,73,24,34,13,12,0,2318,0,16,24,0,1,24,1,0,0], + "events": {"atk":96,"deploy":18,"die":34,"dmg":104,"engage":4,"fx":23,"heal":56,"layer":1,"skill":27,"spawn":35,"status":9}, "fx": {"aoe":8,"blink":10,"explosion":3,"garrison":1,"garrisonGrant":1}, - "snaps": "0a05b1f6 39ecd6ec 50f683c0 211b8f82 df2ca856 517841e8 c8ca2f28" + "snaps": "0a05b1f6 39ecd6ec 50f683c0 211b8f82 3c8b82c6 47e876cb 381f2f0f" }, "bond-sargonShip-low": { "about": "萨尔贡 low: tier 1 layers 1; chess_char_2_08_a chess_char_1_12_a chess_char_4_22_a chess_char_2_06_a chess_char_4_21_a chess_char_4_25_a chess_char_4_26_a chess_char_3_01_a", @@ -1208,23 +1208,23 @@ "errors": {"count":0,"kinds":[]}, "players": {"p1":{"killed":19,"total":19,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":71550,"bossDmg":0,"heal":0,"deaths":0,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,1999.05,1,5,2,9348,335,0,22,1], + ["p1",1,"op","chess_char_3_12_a",2,null,1999.05,1,5,2,9448,335,0,22,1], ["p1",2,"op","chess_char_1_14_a",1,null,1145,1,7,2,2332,0,0,8,0], ["p1",3,"op","chess_char_2_04_a",1,null,977,1,9,3,8416,0,0,28,1], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,11,2,10205,0,0,11,1], ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,4,1,6596,0,0,18,1], - ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,6,3,7225,0,0,12,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,8,5,17162,0,0,16,2], - ["p1",8,"op","chess_char_3_14_a",1,null,1251,1,10,1,10266,0,0,27,1], + ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,6,4,7646,0,0,12,1], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,8,4,16654,0,0,15,2], + ["p1",8,"op","chess_char_3_14_a",1,null,1251,1,10,1,10253,0,0,27,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1010_demon":[3,3,0,162,20250],"enemy_1010_demon_2":[1,1,0,173,13500],"enemy_1071_dftman":[15,15,0,0,37800]}, - "hooks": [1,30,1565,155,155,225,225,0,19,19,8,7,0,7825,42,3,19,0,1,19,0,0,0], - "events": {"atk":209,"deploy":8,"die":19,"dmg":225,"engage":8,"fx":45,"skill":15,"spawn":30,"status":70}, + "hooks": [1,30,1565,154,154,225,225,0,19,19,8,7,0,7825,42,3,19,0,1,19,0,0,0], + "events": {"atk":208,"deploy":8,"die":19,"dmg":225,"engage":8,"fx":45,"skill":15,"spawn":30,"status":70}, "fx": {"aoe":1,"displace":19,"pull":19,"sleep":2,"strike":2,"volley":2}, - "snaps": "3fec6d69 cbf41b37 34a06f5a 37ca1c5e 4f72797a ab4a5590" + "snaps": "3fec6d69 cbf41b37 34a06f5a babe5e21 c0253a23 507f4cc7" }, "bond-skillfulShip-high": { "about": "灵巧 high: tier 1 layers 999; chess_char_5_08_b chess_char_5_05_b chess_char_5_07_b chess_char_1_14_b chess_char_2_04_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b", @@ -1310,41 +1310,41 @@ "round": 10, "seed": 3252010875, "waveId": "act1autochess_h03", - "time": 91, - "ticks": 2730, + "time": 92.8, + "ticks": 2784, "reason": "cleared", "killed": 66, "total": 66, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 48, + "rngDraws": 40, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":66,"total":66,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":155889,"bossDmg":0,"heal":2860,"deaths":3,"layerGains":{}}}, + "players": {"p1":{"killed":66,"total":66,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":155889,"bossDmg":0,"heal":2193,"deaths":3,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,6,15,28905,0,0,35,2], - ["p1",2,"op","chess_char_1_08_b",1,"uniequip_002_texas",0,0,7,4,6105,3310,62,24,3], - ["p1",3,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,8,8,12927,6562,398,28,1], - ["p1",4,"op","chess_char_5_14_b",1,"none",2174,1,79,4,19333,2174,0,19,6], - ["p1",5,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,77,14,21786,3845,1107,29,1], - ["p1",6,"op","chess_char_5_12_b",0,"uniequip_002_dusk",1787,1,4,1,17523,0,0,15,12], - ["p1",7,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,5,12,21375,0,1293,22,5], - ["p1",8,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,9,8,27935,0,0,27,3], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,6,11,34713,0,0,36,2], + ["p1",2,"op","chess_char_1_08_b",1,"uniequip_002_texas",0,0,7,2,3899,2986,62,23,3], + ["p1",3,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,8,9,18163,5826,397,30,1], + ["p1",4,"op","chess_char_5_14_b",1,"none",2174,1,78,6,17871,2199,25,14,4], + ["p1",5,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,77,11,20567,3693,955,25,1], + ["p1",6,"op","chess_char_5_12_b",0,"uniequip_002_dusk",1787,1,4,3,14202,0,0,15,11], + ["p1",7,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,5,17,15910,0,754,19,4], + ["p1",8,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,9,7,30563,0,0,28,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [14,14,0,1393,69673], + "enemy_1195_sfyin": [14,14,0,1202,69673], "enemy_1196_msfyin": [28,28,0,0,140], - "enemy_1197_sfshu": [5,5,0,0,31104], + "enemy_1197_sfshu": [5,5,0,212,31104], "enemy_1198_msfshu": [15,15,0,0,105], - "enemy_1207_sfji": [2,2,0,14498,54743], + "enemy_1207_sfji": [2,2,0,13290,54743], "enemy_1208_msfji": [2,2,0,0,124] }, - "hooks": [1,79,2730,216,216,542,541,519,69,69,33,31,0,9330,93,15,66,0,1,79,0,0,1], - "events": {"atk":313,"deploy":10,"die":69,"dmg":541,"engage":8,"fx":142,"heal":12,"skill":64,"spawn":77,"status":201}, - "fx": {"aoe":11,"crit":6,"dodge":1,"dp":3,"sp":3,"substitute":2,"summon":21,"swap":1,"weightless":3,"zone":91}, - "snaps": "0d5fce4b 008db012 69aeb33a 4ce7c8d2 b1642f13 224f1fa4 94c69830 28a9268a 8c7e5ae4 7bef3667" + "hooks": [1,79,2784,206,206,533,533,487,69,69,29,27,0,8926,102,15,66,0,1,77,0,0,0], + "events": {"atk":315,"deploy":10,"die":69,"dmg":533,"engage":8,"fx":112,"heal":7,"skill":56,"spawn":77,"status":227}, + "fx": {"aoe":10,"crit":8,"dp":3,"sp":2,"substitute":2,"summon":21,"swap":1,"weightless":3,"zone":62}, + "snaps": "b0c0c83e f39a6668 83cf591b 9229d361 f090095a 8d0be3e8 20e0f1da b8ed0bb5 6f554cce 35164258" }, "bond-steadShip-low": { "about": "坚守 low: tier 1 layers 1; chess_char_1_02_a chess_char_1_10_a chess_char_4_11_a chess_char_4_04_a chess_char_4_07_a chess_char_4_09_a chess_char_4_06_a chess_char_4_10_a token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1432,34 +1432,34 @@ "round": 5, "seed": 3833599911, "waveId": "act1autochess_05", - "time": 54.67, - "ticks": 1640, + "time": 58.27, + "ticks": 1748, "reason": "cleared", "killed": 21, "total": 21, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 16, + "rngDraws": 17, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":93600,"bossDmg":0,"heal":156,"deaths":0,"layerGains":{}}}, + "players": {"p1":{"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":93600,"bossDmg":0,"heal":163,"deaths":0,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_1_02_b",1,"uniequip_002_yak",3404,1,4,0,0,0,0,0,0], - ["p1",2,"op","chess_char_4_17_a",1,null,2728.97,1,5,4,7529,120,0,18,0], - ["p1",3,"op","chess_char_4_18_a",1,null,4587.2,1,8,3,13081,15,15,12,2], - ["p1",4,"op","chess_char_4_16_a",2,null,375.92,1,10,4,15651,1011,141,33,2], - ["p1",5,"op","chess_char_1_01_b",1,"uniequip_002_inside",1421,1,6,9,26143,0,0,40,2], + ["p1",2,"op","chess_char_4_17_a",1,null,2713.96,1,5,4,8798,135,0,21,0], + ["p1",3,"op","chess_char_4_18_a",1,null,4587.2,1,8,3,12605,0,0,14,1], + ["p1",4,"op","chess_char_4_16_a",2,null,174.44,1,10,3,17729,1235,163,34,2], + ["p1",5,"op","chess_char_1_01_b",1,"uniequip_002_inside",1421,1,6,6,26630,0,0,41,2], ["p1",6,"op","chess_char_4_12_a",2,null,1754,1,7,0,0,0,0,0,0], - ["p1",7,"op","chess_char_4_13_a",1,null,1587,1,9,0,11748,0,0,27,5], - ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,11,1,19448,0,0,14,3], + ["p1",7,"op","chess_char_4_13_a",1,null,1587,1,9,2,11761,0,0,27,5], + ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,11,3,16077,0,0,12,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[5,5,0,947,34560],"enemy_1251_lysyta":[15,15,0,199,47520],"enemy_1328_cbjedi":[1,1,0,0,11520]}, - "hooks": [1,32,1640,168,168,220,211,7,22,21,14,13,18,5957,498,13,21,0,1,22,0,0,0], - "events": {"atk":168,"deploy":8,"die":21,"dmg":207,"engage":6,"fx":42,"heal":2,"skill":29,"spawn":32,"status":92}, - "fx": {"block":4,"explosion":3,"frostNova":5,"rockslide":2,"shieldBreak":9,"swordRain":9,"swordStorm":2,"thorns":8}, - "snaps": "f3784c2e f22c4f68 76488d82 17b365d3 22e29248 f3ab9bd0" + "enemies": {"enemy_1249_lysdb_2":[5,5,0,1148,34560],"enemy_1251_lysyta":[15,15,0,222,47520],"enemy_1328_cbjedi":[1,1,0,0,11520]}, + "hooks": [1,32,1748,175,175,230,221,6,22,21,13,12,19,6105,537,14,21,0,1,22,0,0,0], + "events": {"atk":175,"deploy":8,"die":21,"dmg":217,"engage":6,"fx":43,"heal":1,"skill":27,"spawn":32,"status":97}, + "fx": {"block":4,"explosion":3,"frostNova":5,"rockslide":1,"shieldBreak":9,"swordRain":10,"swordStorm":2,"thorns":9}, + "snaps": "f3784c2e 6bb2c54c a04c63a9 735e9546 1bd4e255 b911c2f8" }, "bond-suntShip-high": { "about": "绝技 high: tier 2 layers 999; chess_char_1_02_b chess_char_1_04_b chess_char_4_19_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_4_20_a chess_char_4_21_a", @@ -1644,12 +1644,12 @@ "units": [ ["p1",1,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,5,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2383,1,7,0,0,0,0,0,0], - ["p1",3,"op","chess_char_1_06_b",1,"uniequip_002_vendla",1402,1,8,5,32912,0,1739,8,1], + ["p1",3,"op","chess_char_1_06_b",1,"uniequip_002_vendla",1402,1,8,5,34965,0,1739,8,1], ["p1",4,"op","chess_char_2_05_b",1,"uniequip_002_harold",16282.11,1,10,0,0,5478,5097,10,1], - ["p1",5,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,11,7,90884,1358,0,42,1], + ["p1",5,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,11,7,91358,1358,0,42,1], ["p1",6,"op","chess_char_3_08_b",1,"uniequip_002_mint",1986,1,4,0,0,0,0,0,0], ["p1",7,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,6,0,0,0,0,0,0], - ["p1",8,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,9,0,17292,0,0,7,6], + ["p1",8,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,9,0,14764,0,0,6,6], ["p1",9,"token","token_10041_cathy_catsld",null,null,100,1,12,0,0,0,0,0,null], ["p1",10,"token","token_10041_cathy_catsld",null,null,100,1,13,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1657,10 +1657,10 @@ ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1005_yokai_2":[4,4,0,1618,15428],"enemy_1041_lazerd_2":[3,3,0,5218,44790],"enemy_1042_frostd":[5,5,0,0,80870]}, - "hooks": [1,25,1933,80,80,77,77,12,12,12,9,9,0,4899,274,0,12,0,1,12,0,0,0], - "events": {"atk":80,"deploy":10,"die":12,"dmg":77,"engage":3,"fx":10,"heal":12,"skill":18,"spawn":25,"status":18}, + "hooks": [1,25,1933,79,79,75,75,12,12,12,9,9,0,4899,274,0,12,0,1,12,0,0,0], + "events": {"atk":79,"deploy":10,"die":12,"dmg":75,"engage":3,"fx":10,"heal":12,"skill":18,"spawn":25,"status":18}, "fx": {"counter":2,"explosion":6,"overload":1,"taunt":1}, - "snaps": "b01a1349 5efdcb6d 160222f4 c2d36b62 a656eb66 cd4afa75 8afb50d8" + "snaps": "b01a1349 5efdcb6d 160222f4 3e5aaecc 6035e2a8 aa13b4ae 8aa749da" }, "bond-visiShip-low": { "about": "远见 low: tier 1 layers 1; chess_char_3_12_a chess_char_3_03_a chess_char_2_02_a chess_char_3_08_a chess_char_3_09_a chess_char_3_10_a chess_char_3_11_a chess_char_3_13_a token_10000_silent_healrb", @@ -1684,19 +1684,19 @@ "units": [ ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,0,196,2334,0,7,1], ["p1",2,"op","chess_char_3_03_a",1,null,1378,1,6,0,0,0,0,0,0], - ["p1",3,"op","chess_char_2_02_a",1,null,1400,1,1,0,0,0,3267,14,2], + ["p1",3,"op","chess_char_2_02_a",1,null,1400,1,1,0,0,0,3267,13,2], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,4,2,21129,596,0,8,1], - ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,5,3,22928,721,0,26,1], + ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,5,3,23624,721,0,26,1], ["p1",6,"op","chess_char_3_10_a",1,null,0,0,2,2,9387,2752,0,10,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,7,6,32494,848,0,25,3], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,7,6,31797,848,0,25,3], ["p1",8,"op","chess_char_3_13_a",1,null,1064,1,8,3,12149,1487,0,37,7], ["p1",9,"token","token_10000_silent_healrb",null,null,1000,1,29,0,0,0,1487,20,null] ], "enemies": {"enemy_1116_liprr":[11,11,0,2293,54450],"enemy_1116_liprr_2":[4,4,0,932,27000],"enemy_1118_lidbox_2":[2,1,1,5514,16832]}, - "hooks": [1,28,1822,193,193,205,205,34,18,21,16,16,0,8280,2,27,17,1,1,18,0,0,0], - "events": {"atk":228,"deploy":11,"die":20,"dmg":205,"engage":6,"fx":56,"heal":34,"leak":1,"skill":32,"spawn":26,"status":27}, + "hooks": [1,28,1822,192,192,206,206,33,18,21,16,16,0,8231,2,27,17,1,1,18,0,0,0], + "events": {"atk":227,"deploy":11,"die":20,"dmg":206,"engage":6,"fx":56,"heal":33,"leak":1,"skill":32,"spawn":26,"status":27}, "fx": {"aoe":1,"displace":19,"liberate":4,"phase":5,"pull":19,"strike":3,"summon":2,"volley":3}, - "snaps": "1774960c 545a8597 f49caf36 7f8a2b12 0c35034b be56aa15" + "snaps": "1774960c 545a8597 be4ea4cb 587e5565 5bd3504d f9fe857c" }, "bond-visiShip-high": { "about": "远见 high: tier 1 layers 999; chess_char_4_17_b chess_char_4_18_b chess_char_3_03_b chess_char_4_19_b chess_char_4_16_b chess_char_2_02_b chess_char_4_20_b chess_char_4_21_b token_10000_silent_healrb", @@ -1734,7 +1734,7 @@ "hooks": [1,34,2147,149,149,230,286,43,22,25,14,13,0,3634,17,17,18,0,1,22,0,0,6], "events": {"atk":154,"deploy":14,"die":25,"dmg":286,"engage":4,"fx":83,"heal":23,"skill":29,"spawn":29,"status":31}, "fx": {"dodge":6,"featherArrow":1,"flame":3,"garrisonGrant":1,"healField":1,"pulse":41,"riposte":6,"summon":4,"swordRain":16,"swordStorm":4}, - "snaps": "f1fbb18d 4106079f 6eece11c ceb2a7fb 2b3db28c dc4cc84f 815c04df 64a1b8f1" + "snaps": "f1fbb18d 4106079f c1e57def d8980d1a 29dc63ad 7c0c9946 93a52cda 1f614e54" }, "bond-yanShip-low": { "about": "炎 low: tier 1 layers 1; chess_char_3_16_a chess_char_3_03_a chess_char_3_18_a chess_char_1_03_a chess_char_2_04_a chess_char_3_14_a chess_char_3_17_a chess_char_3_19_a token_10028_vigil_wolf", diff --git a/test/golden/diy.json b/test/golden/diy.json index 4c23ba5a..adddf669 100644 --- a/test/golden/diy.json +++ b/test/golden/diy.json @@ -26,9 +26,9 @@ "bossHpLeft": null, "rngDraws": 4, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":0,"total":93,"perfect":false,"leaks":93,"leaksUncounted":0,"coins":0,"dmg":94713,"bossDmg":0,"heal":0,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":0,"total":93,"perfect":false,"leaks":93,"leaksUncounted":0,"coins":0,"dmg":94422,"bossDmg":0,"heal":0,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,122,0,2236,4929,0,9,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,122,0,1944,4929,0,8,1], ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,125,0,7082,4929,0,11,2], ["p1",3,"op","chess_char_5_diy1_a",2,null,1643,1,126,0,2581,3286,0,9,0], ["p1",4,"op","chess_char_5_diy2_b",0,"none",2046,1,127,0,7167,4092,0,17,0], @@ -44,11 +44,11 @@ ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1267_nhpbr_2":[36,0,36,10810,50613],"enemy_1270_nhstlk_2":[27,0,27,23976,34754],"enemy_9006_actoxi":[30,0,30,22924,9347]}, - "hooks": [1,127,6241,284,284,321,321,0,29,122,13,13,0,11180,0,56,93,93,1,29,0,0,0], - "events": {"atk":300,"deploy":31,"die":29,"dmg":321,"engage":12,"fx":20,"leak":93,"skill":26,"spawn":108,"status":28}, + "enemies": {"enemy_1267_nhpbr_2":[36,0,36,10810,50613],"enemy_1270_nhstlk_2":[27,0,27,23976,34462],"enemy_9006_actoxi":[30,0,30,22924,9347]}, + "hooks": [1,127,6241,283,283,320,320,0,29,122,13,13,0,11152,0,56,93,93,1,29,0,0,0], + "events": {"atk":299,"deploy":31,"die":29,"dmg":320,"engage":12,"fx":20,"leak":93,"skill":26,"spawn":108,"status":28}, "fx": {"aoe":9,"dp":11}, - "snaps": "efc41242 c4198e33 f06ff7fc 0d6babb1 b8a6d0c5 d4e6fb29 0404b4ba 9830ba20 469dea94 ad0b2241 23a1dbf3 26d076e9 0046b7bc 62023a05 ea663222 f6806b48 b3eb6848 bfff8055 60dce1de a0f16215 f2f8e1b9" + "snaps": "efc41242 c4198e33 98db8825 23a1db3c 1234686c 36672728 2591cd1f 0f6c0cf9 0af61dcd 4bf68084 3f8b3a9e f61164b4 b5446c41 453112dc 5822e50b 614bc055 e2971045 dbbf7794 9e3c095f 6ef5f198 4c0407a0" }, "diy-002": { "about": "6_diy1_a=siege/S1 6_diy2_a=siege/S2 6_diy1_a=siege/S3 6_diy2_b=siege/S1 6_diy1_b=siege/S2 6_diy2_b=siege/S3 6_diy1_b=siege/S1/002_siege 6_diy2_b=siege/S2/002_siege 6_diy1_b=siege/S3/002_siege 6_diy2_b=siege/S1/003_siege 6_diy1_b=siege/S2/003_siege 6_diy2_b=siege/S3/003_siege", @@ -68,26 +68,26 @@ "bossHpLeft": null, "rngDraws": 13, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":67202,"bossDmg":0,"heal":0,"deaths":27,"layerGains":{}}}, + "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":62237,"bossDmg":0,"heal":0,"deaths":27,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,152,0,8250,4929,0,22,1], ["p1",2,"op","chess_char_6_diy2_a",1,null,1643,1,144,0,293,3286,0,4,2], ["p1",3,"op","chess_char_6_diy1_a",2,null,1643,1,139,0,165,3286,0,3,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"none",2046,1,145,0,137,4092,0,5,2], + ["p1",4,"op","chess_char_6_diy2_b",0,"none",2046,1,145,0,109,4092,0,4,2], ["p1",5,"op","chess_char_6_diy1_b",1,"none",2046,1,155,0,350,4092,0,9,2], ["p1",6,"op","chess_char_6_diy2_b",2,"none",2046,1,156,1,12373,4092,0,18,2], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_siege",2046,1,131,0,999,4092,0,11,2], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_siege",2046,1,157,0,9555,4092,0,11,4], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_siege",2046,1,158,0,3515,4092,0,9,1], - ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_siege",0,0,93,1,13748,4612,0,29,1], + ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_siege",0,0,88,1,8812,4612,0,18,1], ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_siege",0,0,133,0,14383,6918,0,13,3], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_siege",0,0,129,0,3434,6918,0,12,0] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,14915,4353],"enemy_1043_zomsbr":[66,2,64,8872,54785],"enemy_1402_tgshd_2":[36,0,36,30714,8064]}, - "hooks": [1,158,6699,280,280,296,296,5667,29,150,21,21,0,18100,4,52,123,121,1,29,0,0,0], - "events": {"atk":296,"deploy":35,"die":29,"dmg":296,"engage":12,"fx":94,"leak":121,"skill":42,"spawn":135,"status":42}, - "fx": {"aoe":11,"dp":17,"expose":66}, - "snaps": "7acd95d2 d5ddf37a 90864812 b53c702e b8222c46 13a2c99c c2196384 54dec050 10570ed5 11f4df07 59b1bf5b 0435a8a0 ebc65f03 9c1ccd13 e935730b 072da7e0 e2e91ed7 0e41e117 c7483f4c 077b7df6 2454d679 200c32a6 b86f0367" + "enemies": {"enemy_1006_shield_3":[21,0,21,16057,4353],"enemy_1043_zomsbr":[66,2,64,7929,49916],"enemy_1402_tgshd_2":[36,0,36,30515,7968]}, + "hooks": [1,158,6699,259,259,275,275,4652,29,150,21,21,0,17810,4,52,123,121,1,29,0,0,0], + "events": {"atk":275,"deploy":35,"die":29,"dmg":275,"engage":12,"fx":91,"leak":121,"skill":42,"spawn":135,"status":42}, + "fx": {"aoe":11,"dp":17,"expose":63}, + "snaps": "7acd95d2 d5ddf37a 8b93d855 d72432a7 78e66100 9cab879f 8c105a45 0405189f 1cf351e7 4983331d 3ef88965 e24504fe 3b41373a df1d7ca8 e3d6ba50 840f2148 6e87bb34 6e486f70 6cb0235c 52ac4fc4 97d9391d 42825d37 228719be" }, "diy-003": { "about": "5_diy1_a=chen/S1 5_diy2_a=chen/S2 5_diy1_a=chen/S3 5_diy2_b=chen/S1 5_diy1_b=chen/S2 5_diy2_b=chen/S3 5_diy1_b=chen/S1/002_chen 5_diy2_b=chen/S2/002_chen 5_diy1_b=chen/S3/002_chen 5_diy2_b=chen/S1/003_chen 5_diy1_b=chen/S2/003_chen 5_diy2_b=chen/S3/003_chen", @@ -101,35 +101,35 @@ "time": 210.43, "ticks": 6313, "reason": "cleared", - "killed": 13, + "killed": 12, "total": 93, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 68, + "rngDraws": 72, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":13,"total":93,"perfect":false,"leaks":80,"leaksUncounted":0,"coins":0,"dmg":333946,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":12,"total":93,"perfect":false,"leaks":81,"leaksUncounted":0,"coins":0,"dmg":312280,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,1720.27,1,118,1,15585,4844,0,23,4], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,97,0,26342,4376,0,10,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,110,2,19325,4376,0,14,2], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,117,1,25069,7941,0,26,6], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,72,1,62183,5294,0,14,3], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,64,1,21805,5294,0,11,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,1564.35,1,118,1,15185,5000,0,23,4], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,97,2,24349,4376,0,10,2], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,110,0,6516,4376,0,12,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,117,0,25037,7941,0,25,6], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,70,3,61975,5294,0,13,3], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,64,1,20936,5294,0,10,1], ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_chen",0,0,63,0,10463,5294,0,14,3], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_chen",0,0,7,2,49946,2647,0,13,4], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_chen",0,0,7,2,49946,2647,0,12,4], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_chen",0,0,11,1,37784,2647,0,8,2], ["p1",10,"op","chess_char_5_diy2_b",0,"uniequip_003_chen",0,0,68,2,22180,5294,0,19,6], - ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_chen",0,0,8,0,18888,2647,0,5,2], - ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_chen",0,0,9,2,24375,2647,0,4,2], + ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_chen",0,0,8,0,18198,2647,0,4,2], + ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_chen",0,0,9,0,19708,2647,0,5,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1267_nhpbr_2":[36,8,28,7340,87142],"enemy_1270_nhstlk_2":[27,3,24,16469,137330],"enemy_9006_actoxi":[30,2,28,28815,109475]}, - "hooks": [1,118,6313,305,305,696,683,0,34,114,37,37,0,693,21,48,93,80,1,34,0,0,13], - "events": {"atk":305,"deploy":22,"die":34,"dmg":683,"engage":12,"fx":94,"leak":80,"skill":74,"spawn":108,"status":69}, - "fx": {"blink":7,"dodge":13,"slash":64,"zone":10}, - "snaps": "f480f99c a7cf6994 df8f3fe3 95c9c96f 0fe98e70 2ae1a6b3 d9969516 10c847d3 44761931 0928d769 b88bb89d 0427ede4 b98ab8a9 90de5dbf 66bbb339 eaddfeae d8d1e7f5 2827ec45 003127e2 a81c748a d9c73d8b" + "enemies": {"enemy_1267_nhpbr_2":[36,7,29,5848,78588],"enemy_1270_nhstlk_2":[27,3,24,19529,121151],"enemy_9006_actoxi":[30,2,28,27465,112540]}, + "hooks": [1,118,6313,301,301,653,640,0,33,114,36,36,0,672,21,47,93,81,1,33,0,0,13], + "events": {"atk":301,"deploy":22,"die":33,"dmg":640,"engage":12,"fx":79,"leak":81,"skill":72,"spawn":108,"status":69}, + "fx": {"blink":6,"dodge":13,"slash":51,"zone":9}, + "snaps": "f480f99c 63b00a5d 0159d1b1 3fa5a0b7 e831abe1 eb3c950a 02e7b609 3d01984a fa50cdf9 b6a4eae8 9e37b0e4 24166462 ed5ea044 9a515efe 0ed2afc6 e967b67f 2e6615f1 6cff3095 04fc60af a63942f7 8326936b" }, "diy-004": { "about": "6_diy1_a=chen/S1 6_diy2_a=chen/S2 6_diy1_a=chen/S3 6_diy2_b=chen/S1 6_diy1_b=chen/S2 6_diy2_b=chen/S3 6_diy1_b=chen/S1/002_chen 6_diy2_b=chen/S2/002_chen 6_diy1_b=chen/S3/002_chen 6_diy2_b=chen/S1/003_chen 6_diy1_b=chen/S2/003_chen 6_diy2_b=chen/S3/003_chen", @@ -140,38 +140,38 @@ "round": 13, "seed": 1210847140, "waveId": "act1autochess_h06", - "time": 213.03, - "ticks": 6391, + "time": 211.87, + "ticks": 6356, "reason": "cleared", "killed": 3, "total": 111, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 97, + "rngDraws": 90, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":111,"perfect":false,"leaks":108,"leaksUncounted":0,"coins":0,"dmg":396113,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":111,"perfect":false,"leaks":108,"leaksUncounted":0,"coins":0,"dmg":374358,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,136,0,12152,6564,0,21,5], - ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,110,0,24884,4376,0,15,2], + ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,136,0,9366,6564,0,18,4], + ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,110,0,24041,4376,0,14,2], ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,120,0,8170,4376,0,9,1], ["p1",4,"op","chess_char_6_diy2_b",0,"none",0,0,129,0,8810,5294,0,15,4], - ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,78,0,70416,5294,0,20,4], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,13,1,50274,2647,0,21,3], + ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,78,0,68991,5294,0,18,4], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,13,1,33137,2647,0,18,2], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chen",0,0,74,0,26378,5294,0,23,11], - ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chen",0,0,73,0,63538,5294,0,20,3], - ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chen",0,0,5,2,26641,2647,0,7,2], + ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chen",0,0,73,0,66095,5294,0,18,3], + ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chen",0,0,5,2,27954,2647,0,8,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chen",0,0,8,0,12770,2647,0,8,4], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chen",0,0,71,0,33362,5294,0,11,2], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chen",0,0,76,0,58719,5294,0,17,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chen",0,0,71,0,34864,5294,0,12,2], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chen",0,0,76,0,53782,5294,0,13,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[54,1,53,36926,203804],"enemy_1320_wdrrl_2":[18,0,18,0,71854],"enemy_1422_lrsldr_2":[39,2,37,14035,214045]}, - "hooks": [1,136,6391,286,286,1977,1963,0,25,133,43,43,0,755,30,45,111,108,1,25,0,0,14], - "events": {"atk":286,"deploy":22,"die":25,"dmg":1963,"engage":12,"fx":104,"leak":108,"skill":86,"spawn":126,"status":47}, - "fx": {"blink":8,"dodge":14,"slash":82}, - "snaps": "79526538 77f0248f b781988f 11792ab0 007f7eb2 51898c72 b05dbc85 ec2856d1 ba45a6c9 653ddff8 79a525a8 af805096 785425db dca4e013 445d676a 6e7b4138 913fc782 8bb5750f fc4a7f4d 311f0afd f56a0c3d 351e76a8" + "enemies": {"enemy_1010_demon":[54,1,53,39092,209916],"enemy_1320_wdrrl_2":[18,0,18,0,67079],"enemy_1422_lrsldr_2":[39,2,37,11729,190603]}, + "hooks": [1,136,6356,266,266,1934,1921,0,25,133,41,41,0,713,29,44,111,108,1,25,0,0,13], + "events": {"atk":266,"deploy":22,"die":25,"dmg":1921,"engage":12,"fx":93,"leak":108,"skill":82,"spawn":126,"status":45}, + "fx": {"blink":7,"dodge":13,"slash":73}, + "snaps": "9fa9af36 6b4b689a e6bcb4ab 7cad44cc 305b18f0 5faa3caf 269e791a 4ed8d848 409c57f6 0544a3ca 32f89b20 6203d641 6681b61e d1c610cd 8162df7f da4bcaca e2316925 052a8270 f1680582 e232df73 ed040a95 d06a15dd" }, "diy-005": { "about": "5_diy1_a=irene/S1 5_diy2_a=irene/S2 5_diy1_a=irene/S3 5_diy2_b=irene/S1 5_diy1_b=irene/S2 5_diy2_b=irene/S3 5_diy1_b=irene/S1/002_irene 5_diy2_b=irene/S2/002_irene 5_diy1_b=irene/S3/002_irene 5_diy2_b=irene/S1/003_irene 5_diy1_b=irene/S2/003_irene 5_diy2_b=irene/S3/003_irene", @@ -185,32 +185,32 @@ "time": 198.7, "ticks": 5961, "reason": "cleared", - "killed": 8, + "killed": 6, "total": 60, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 596, + "rngDraws": 586, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":8,"total":60,"perfect":false,"leaks":52,"leaksUncounted":0,"coins":0,"dmg":188702,"bossDmg":0,"heal":0,"deaths":15,"layerGains":{}}}, + "players": {"p1":{"killed":6,"total":60,"perfect":false,"leaks":54,"leaksUncounted":0,"coins":0,"dmg":183229,"bossDmg":0,"heal":0,"deaths":15,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,67,0,4708,4402,0,31,3], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,64,0,9499,4402,0,24,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,70,0,33458,4402,0,30,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,57,0,6042,5376,0,39,6], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,51,0,12406,5376,0,33,2], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",1274,1,81,8,103688,6790,0,42,2], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_irene",0,0,77,0,18901,8064,0,49,7], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,69,0,4167,4402,0,30,3], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,68,0,12369,4402,0,32,2], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,60,0,30748,4402,0,38,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,57,0,6440,5376,0,30,4], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,51,0,13723,5376,0,31,2], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",1274,1,81,6,99736,6790,0,42,2], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_irene",0,0,77,0,16045,8064,0,49,7], ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_irene",2688,1,1,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_irene",2688,1,3,0,0,0,0,0,0], ["p1",10,"op","chess_char_5_diy2_b",0,"uniequip_003_irene",2688,1,5,0,0,0,0,0,0], ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_irene",2688,1,7,0,0,0,0,0,0], ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_irene",2688,1,9,0,0,0,0,0,0] ], - "enemies": {"enemy_1045_hammer_2":[12,0,12,20218,28971],"enemy_1061_zomshd":[48,8,40,18594,221211]}, - "hooks": [1,81,5961,368,368,2364,2364,19410,23,75,23,23,0,232,56,70,60,52,1,23,0,0,0], - "events": {"atk":368,"deploy":21,"die":23,"dmg":2364,"engage":7,"fx":37,"leak":52,"skill":46,"spawn":72,"status":110}, - "fx": {"aoe":33,"slash":4}, - "snaps": "e7f7f1a6 88c5a1be f8ea18a0 4bb8e65b cde7007d 116bd18a 3ef4250e 451f8696 9269a4d0 21bf56fb 69a00e38 457646c3 89c87642 55afc29d 25881687 2c2ddd3f 9519d5db 89566be9 08bb7fac 98dc1374" + "enemies": {"enemy_1045_hammer_2":[12,0,12,16810,27100],"enemy_1061_zomshd":[48,6,42,22002,218849]}, + "hooks": [1,81,5961,383,383,2383,2383,22625,21,75,21,21,0,238,57,71,60,54,1,21,0,0,0], + "events": {"atk":383,"deploy":21,"die":21,"dmg":2383,"engage":7,"fx":33,"leak":54,"skill":42,"spawn":72,"status":112}, + "fx": {"aoe":29,"slash":4}, + "snaps": "e7f7f1a6 88c5a1be 549bc926 f6da3ba2 bce042d6 fe3d5699 5a553669 4557fbee c03f9142 22f09491 f2e1e379 8030946c 868e49f6 a3cfda87 d03e7570 296124b2 25f7f5aa e22a9cfd e70e298e f1bd5519" }, "diy-006": { "about": "5_diy1_b=irene/S1/004_irene 5_diy2_b=irene/S2/004_irene 5_diy1_b=irene/S3/004_irene 6_diy1_a=irene/S1 6_diy2_a=irene/S2 6_diy1_a=irene/S3 6_diy2_b=irene/S1 6_diy1_b=irene/S2 6_diy2_b=irene/S3 6_diy1_b=irene/S1/002_irene 6_diy2_b=irene/S2/002_irene 6_diy1_b=irene/S3/002_irene", @@ -263,34 +263,34 @@ "time": 219.93, "ticks": 6598, "reason": "cleared", - "killed": 11, + "killed": 10, "total": 123, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 240, + "rngDraws": 251, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":11,"total":123,"perfect":false,"leaks":112,"leaksUncounted":0,"coins":0,"dmg":122639,"bossDmg":0,"heal":9654,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":10,"total":123,"perfect":false,"leaks":113,"leaksUncounted":0,"coins":0,"dmg":121673,"bossDmg":0,"heal":11404,"deaths":22,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_003_irene",0,0,147,2,25927,8064,0,27,5], - ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_003_irene",0,0,123,1,4844,5376,0,13,0], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_003_irene",0,0,142,1,10518,8064,0,19,0], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_004_irene",0,0,130,1,15332,8964,0,23,3], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_004_irene",0,0,82,2,24461,5976,0,20,1], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_004_irene",0,0,78,1,10510,5976,0,16,0], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_003_irene",0,0,147,2,24533,8064,0,26,5], + ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_003_irene",0,0,142,0,9147,8064,0,23,0], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_003_irene",0,0,123,1,8757,5376,0,17,0], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_004_irene",0,0,80,0,5735,5976,0,12,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_004_irene",0,0,82,2,23557,5976,0,17,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_004_irene",0,0,130,2,18603,8964,0,29,0], ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,71,1,9312,8513,2777,37,9], - ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,3,0,1086,3428,560,16,1], + ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,3,0,1306,4128,1260,21,1], ["p1",9,"op","chess_char_5_diy1_a",2,null,0,0,5,0,1275,3988,1120,13,1], ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,7,1,7019,5540,2038,31,7], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,9,1,11462,5190,1688,38,1], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,9,1,11536,6240,2738,36,1], ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,11,0,893,4972,1470,24,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,29257,7269],"enemy_1043_zomsbr":[66,11,55,5085,104884],"enemy_1402_tgshd_2":[36,0,36,39710,10486]}, - "hooks": [1,147,6598,430,430,599,592,5059,33,145,28,28,0,3761,11,54,123,112,1,33,0,0,7], - "events": {"atk":442,"deploy":22,"die":33,"dmg":592,"engage":12,"fx":206,"heal":144,"leak":112,"skill":56,"spawn":137,"status":47}, - "fx": {"dodge":7,"expose":198,"slash":1}, - "snaps": "97ee0d28 436c4959 168c0d1e 5259cfc8 14349936 c84a76da c9e8432b 94be8ab3 50952e2a 63b834fe 697389cb 97394528 3c47e905 5539e25c 168d21d0 0c6b3810 3a9781d5 904bc7bd 32ab3f3f 27840655 895145ec dec1022d" + "enemies": {"enemy_1006_shield_3":[21,0,21,33715,10254],"enemy_1043_zomsbr":[66,10,56,5371,102486],"enemy_1402_tgshd_2":[36,0,36,36716,8933]}, + "hooks": [1,147,6598,444,444,620,615,4997,32,145,27,27,0,3755,10,52,123,113,1,32,0,0,5], + "events": {"atk":456,"deploy":22,"die":32,"dmg":615,"engage":12,"fx":200,"heal":169,"leak":113,"skill":54,"spawn":137,"status":44}, + "fx": {"dodge":5,"expose":194,"slash":1}, + "snaps": "97ee0d28 436c4959 f8f6d1b1 8e5b0905 fc0e2a6f 9fc1d785 7a94d59f c4e2472d bfa5a549 e99c2901 ceabdb4d f31909b2 770494fb f2a45163 0b9a2d27 b035a3bb 1bd935ab 25609d87 bfedcc68 93c64aeb d35352b8 899f8782" }, "diy-008": { "about": "5_diy1_b=helage/S1/002_helage 5_diy2_b=helage/S2/002_helage 5_diy1_b=helage/S3/002_helage 5_diy2_b=helage/S1/003_helage 5_diy1_b=helage/S2/003_helage 5_diy2_b=helage/S3/003_helage 6_diy1_a=helage/S1 6_diy2_a=helage/S2 6_diy1_a=helage/S3 6_diy2_b=helage/S1 6_diy1_b=helage/S2 6_diy2_b=helage/S3", @@ -515,12 +515,12 @@ "bossHpLeft": null, "rngDraws": 93, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":1,"total":132,"perfect":false,"leaks":131,"leaksUncounted":0,"coins":0,"dmg":35367,"bossDmg":0,"heal":16535,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":1,"total":132,"perfect":false,"leaks":131,"leaksUncounted":0,"coins":0,"dmg":33905,"bossDmg":0,"heal":16535,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,159,0,4067,6028,29,13,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,159,0,3708,6028,29,12,1], ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,161,0,3129,5442,615,6,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,154,0,17438,6402,129,17,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,148,0,4776,9352,353,12,1], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,154,0,16758,6402,129,17,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,148,0,4353,9352,353,11,1], ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,143,0,2783,6329,44,3,1], ["p1",6,"op","chess_char_5_diy2_b",2,"none",2004,1,162,0,3174,5346,381,8,0], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_cgbird",0,0,94,0,0,3168,3804,6,1], @@ -530,11 +530,11 @@ ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_cgbird",0,0,134,0,0,7042,1630,5,0], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_cgbird",0,0,2,0,0,2293,3485,7,1] ], - "enemies": {"enemy_1019_jshoot_2":[57,1,56,15602,15051],"enemy_1381_winman":[27,0,27,2602,20075],"enemy_1389_winbab_2":[48,0,48,49173,241]}, - "hooks": [1,162,6578,403,403,298,235,475,30,161,12,12,0,8079,0,22,132,131,1,30,0,0,63], - "events": {"atk":420,"deploy":30,"die":30,"dmg":235,"engage":6,"fx":91,"heal":41,"leak":131,"skill":24,"spawn":144,"status":39}, + "enemies": {"enemy_1019_jshoot_2":[57,1,56,15602,15051],"enemy_1381_winman":[27,0,27,2602,18613],"enemy_1389_winbab_2":[48,0,48,49173,241]}, + "hooks": [1,162,6578,401,401,295,232,475,30,161,12,12,0,8070,0,22,132,131,1,30,0,0,63], + "events": {"atk":417,"deploy":30,"die":30,"dmg":232,"engage":6,"fx":91,"heal":41,"leak":131,"skill":24,"spawn":144,"status":39}, "fx": {"aoe":3,"buff":17,"dodge":63,"dp":5,"dying":1,"shield":2}, - "snaps": "44e36f67 803755c7 98764cc5 9dcf3861 9f66766a 57ae474e fc5da333 0e585ec7 267895ba 164f4b63 702efaa0 c165cf97 36f9db27 de08ae12 58e5a1d5 6b6b4d5c b309e918 ac6628e8 f51af240 3f2ac29d eacce7b2 d1876098" + "snaps": "44e36f67 803755c7 c86391ce a6434165 3620eecd c68e3419 416111e8 201b59cc e02f7079 f7e80bac a7aa64ef ffc3a42c 2d43e6d0 0bba8459 4b53783a 9b8aa487 46103e77 f1e3f4a3 3dcd562b 74e9ca36 1c23d495 ea32cf27" }, "diy-014": { "about": "5_diy1_b=saga/S1/002_saga 5_diy2_b=saga/S2/002_saga 5_diy1_b=saga/S3/002_saga 5_diy2_b=saga/S1/003_saga 5_diy1_b=saga/S2/003_saga 5_diy2_b=saga/S3/003_saga 6_diy1_a=saga/S1 6_diy2_a=saga/S2 6_diy1_a=saga/S3 6_diy2_b=saga/S1 6_diy1_b=saga/S2 6_diy2_b=saga/S3", @@ -545,38 +545,38 @@ "round": 13, "seed": 2178544450, "waveId": "act1autochess_h06", - "time": 230, - "ticks": 6900, - "reason": "timeout", - "killed": 15, + "time": 212.63, + "ticks": 6379, + "reason": "cleared", + "killed": 14, "total": 129, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 193, + "rngDraws": 162, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":15,"total":129,"perfect":false,"leaks":114,"leaksUncounted":0,"coins":0,"dmg":216027,"bossDmg":0,"heal":28709,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":14,"total":129,"perfect":false,"leaks":115,"leaksUncounted":0,"coins":0,"dmg":203325,"bossDmg":0,"heal":23243,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_saga",0,0,157,0,17907,9721,3484,54,2], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_saga",0,0,151,2,21590,7210,973,19,4], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_saga",0,0,156,0,15197,9326,3089,39,2], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_saga",0,0,165,0,17512,12098,6086,61,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_saga",1166.21,1,166,1,41422,10198,5352,80,7], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_saga",2004,1,168,0,67196,7694,3686,63,2], - ["p1",7,"op","chess_char_6_diy1_a",0,null,1609,1,169,0,344,5937,1110,15,0], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_saga",0,0,157,0,625,7996,1759,22,1], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_saga",0,0,160,2,23291,9173,2936,32,5], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_saga",0,0,152,0,21176,9447,3210,43,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_saga",0,0,154,0,8686,8441,2429,29,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_saga",2004,1,166,0,37565,7905,3897,51,5], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_saga",2004,1,168,0,74839,7518,3510,67,2], + ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,138,0,344,5937,1110,15,0], ["p1",8,"op","chess_char_6_diy2_a",1,null,1609,1,142,0,1369,3218,0,8,1], ["p1",9,"op","chess_char_6_diy1_a",2,null,1609,1,167,0,19784,4856,1638,31,1], ["p1",10,"op","chess_char_6_diy2_b",0,"none",2004,1,139,0,1160,4633,625,14,2], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",2004,1,145,0,10793,4321,313,5,6], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",2004,1,162,0,1753,6361,2353,21,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",2004,1,145,0,12576,4321,313,4,5], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",2004,1,164,0,1910,5825,1817,24,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_10124_uashld_2":[18,0,18,24942,4911],"enemy_1043_zomsbr":[66,15,51,14763,187317],"enemy_1061_zomshd":[45,0,44,45868,23799]}, - "hooks": [1,169,6900,761,761,862,732,23037,44,157,30,30,0,24748,0,71,129,113,1,47,0,0,130], - "events": {"atk":808,"deploy":37,"die":44,"dmg":732,"engage":12,"fx":216,"leak":113,"skill":60,"spawn":144,"status":74}, - "fx": {"aoe":18,"buff":30,"dodge":130,"dp":23,"dying":15}, - "snaps": "1abeaa08 349a7663 d9d126e2 f6fa8e40 19eca3eb d9181f10 14313c13 50b872e5 595c4eac 19fd72e5 b0d1a496 e691ae8c 7ba9e112 292b5519 b35a3934 22510f9f 496053a5 8bbeae65 e1830bf9 5c783bad f03c6638 0c42f4c9 730ba87d" + "enemies": {"enemy_10124_uashld_2":[18,0,18,25691,5430],"enemy_1043_zomsbr":[66,14,52,11487,172601],"enemy_1061_zomshd":[45,0,45,42091,25293]}, + "hooks": [1,168,6379,636,636,744,638,20268,43,158,27,27,0,20459,0,68,129,115,1,44,0,0,106], + "events": {"atk":685,"deploy":36,"die":43,"dmg":638,"engage":12,"fx":185,"leak":115,"skill":54,"spawn":144,"status":72}, + "fx": {"aoe":16,"buff":29,"dodge":106,"dp":20,"dying":14}, + "snaps": "1abeaa08 349a7663 2bbcf434 2c6ab233 9f54f5d4 b2147339 4cac072f ded19d11 cf19719c f203bea5 ba3ebc83 8d827ea7 31a6d161 ae14b6cb 89bb8b07 d98db669 ce6c6485 8955b3df 270299c6 d563a728 7c53d5a6 e4fd9c57" }, "diy-015": { "about": "6_diy1_b=saga/S1/002_saga 6_diy2_b=saga/S2/002_saga 6_diy1_b=saga/S3/002_saga 6_diy2_b=saga/S1/003_saga 6_diy1_b=saga/S2/003_saga 6_diy2_b=saga/S3/003_saga 5_diy1_a=amgoat/S1 5_diy2_a=amgoat/S2 5_diy1_a=amgoat/S3 5_diy2_b=amgoat/S1 5_diy1_b=amgoat/S2 5_diy2_b=amgoat/S3", @@ -587,38 +587,38 @@ "round": 13, "seed": 2805115174, "waveId": "act1autochess_h06", - "time": 229.1, - "ticks": 6873, + "time": 228.73, + "ticks": 6862, "reason": "cleared", - "killed": 34, + "killed": 37, "total": 129, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 872, + "rngDraws": 825, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":34,"total":129,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":722219,"bossDmg":0,"heal":32097,"deaths":20,"layerGains":{}}}, + "players": {"p1":{"killed":37,"total":129,"perfect":false,"leaks":92,"leaksUncounted":0,"coins":0,"dmg":737757,"bossDmg":0,"heal":26376,"deaths":22,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_saga",2129,1,161,0,7229,10013,5755,58,3], - ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_saga",0,0,130,0,24242,10209,5951,58,5], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_saga",2129,1,160,0,9416,9618,5360,35,2], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_saga",835.75,1,159,0,9836,8519,3343,58,2], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_saga",0,0,151,0,44062,11631,5619,66,5], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_saga",1756.86,1,158,0,25120,10324,6069,78,3], - ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,24263,0,0,42,2], - ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,10,192317,0,0,122,29], - ["p1",9,"op","chess_char_5_diy1_a",2,null,1359,1,15,8,231867,0,0,175,3], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",1614,1,147,3,32140,3228,0,52,3], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",1614,1,144,2,103610,3228,0,50,17], - ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,138,0,18118,4842,0,28,0], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_saga",2129,1,161,0,3024,10209,5951,58,2], + ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_saga",0,0,128,1,25020,8055,3797,48,5], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_saga",0,0,158,0,11406,10316,3929,36,2], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_saga",0,0,154,0,11016,8517,2505,57,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_saga",0,0,146,0,36356,10092,4080,61,4], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_saga",1749.87,1,160,0,24818,10375,6113,80,3], + ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,23047,0,0,40,2], + ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,9,201381,0,0,130,31], + ["p1",9,"op","chess_char_5_diy1_a",2,null,1359,1,15,8,235409,0,0,172,3], + ["p1",10,"op","chess_char_5_diy2_b",0,"none",1614,1,148,4,33425,3228,0,53,3], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",1614,1,144,6,114997,3228,0,49,18], + ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,138,0,17859,4842,0,28,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_10124_uashld_2":[18,0,18,23548,144119],"enemy_1043_zomsbr":[66,30,36,1260,273745],"enemy_1061_zomshd":[45,4,41,38939,439739]}, - "hooks": [1,161,6873,1155,1155,3756,3625,65025,54,149,74,72,0,33095,0,56,129,95,1,64,0,0,131], - "events": {"atk":1372,"deploy":29,"die":54,"dmg":3625,"engage":12,"fx":227,"leak":95,"skill":146,"spawn":144,"status":39}, - "fx": {"aoe":10,"buff":14,"dodge":131,"dp":15,"dying":11,"explosion":46}, - "snaps": "c3e412fb fd471102 2f04632e 575bd906 59100a58 8cda76dc 10f2ee3f 982f809b b038b892 c1669f0f 962ca3b5 2be63d6e 8c587896 420f4a68 cc1643f4 c98d0941 2cc462f6 667f91a3 9861a0ca 9585cc68 6f3f277d 2b4450b7 e766cb34" + "enemies": {"enemy_10124_uashld_2":[18,0,18,23109,131605],"enemy_1043_zomsbr":[66,32,34,1519,267053],"enemy_1061_zomshd":[45,5,40,36369,469587]}, + "hooks": [1,161,6862,1134,1134,3667,3553,62365,59,151,75,73,0,32494,0,62,129,92,1,73,0,0,114], + "events": {"atk":1347,"deploy":29,"die":59,"dmg":3553,"engage":12,"fx":217,"leak":92,"skill":148,"spawn":144,"status":48}, + "fx": {"aoe":9,"buff":16,"dodge":114,"dp":13,"dying":16,"explosion":49}, + "snaps": "c3e412fb fd471102 200ad48b 3769305b 79bb938a 3dcc7fb1 7c06b8f8 c6fab00a a0806241 4952a600 849adb7f 34ee61a4 b80fe71e 1f84658e b58561b0 22422a0d 0b644a0c 17c7af75 3c36a4ef 237a261a d917d1fe 0fe7213e 11cc6549" }, "diy-016": { "about": "5_diy1_b=amgoat/S1/002_amgoat 5_diy2_b=amgoat/S2/002_amgoat 5_diy1_b=amgoat/S3/002_amgoat 5_diy2_b=amgoat/S1/003_amgoat 5_diy1_b=amgoat/S2/003_amgoat 5_diy2_b=amgoat/S3/003_amgoat 6_diy1_a=amgoat/S1 6_diy2_a=amgoat/S2 6_diy1_a=amgoat/S3 6_diy2_b=amgoat/S1 6_diy1_b=amgoat/S2 6_diy2_b=amgoat/S3", @@ -1317,37 +1317,37 @@ "round": 13, "seed": 2802554051, "waveId": "act1autochess_h06", - "time": 212.43, - "ticks": 6373, + "time": 212.13, + "ticks": 6364, "reason": "cleared", - "killed": 93, + "killed": 92, "total": 96, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 1024, + "rngDraws": 985, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":93,"total":96,"perfect":false,"leaks":3,"leaksUncounted":0,"coins":0,"dmg":1570277,"bossDmg":0,"heal":43952,"deaths":3,"layerGains":{}}}, + "players": {"p1":{"killed":92,"total":96,"perfect":false,"leaks":4,"leaksUncounted":0,"coins":0,"dmg":1567225,"bossDmg":0,"heal":37247,"deaths":4,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,72,6,30028,9846,4060,51,13], - ["p1",2,"op","chess_char_5_diy2_a",1,null,860.2,1,100,5,90131,11716,6790,85,5], - ["p1",3,"op","chess_char_5_diy1_a",2,null,2631.87,1,6,11,152236,2639,2378,54,8], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",1062.91,1,9,5,102558,10744,8274,74,38], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",2676.5,1,10,15,213724,13832,12976,157,7], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",1201.02,1,12,31,413013,11806,9474,182,12], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,71,6,34634,9216,3430,62,14], + ["p1",2,"op","chess_char_5_diy2_a",1,null,2076.5,1,100,4,106602,11430,7721,100,5], + ["p1",3,"op","chess_char_5_diy1_a",2,null,2893,1,6,9,162531,3059,3059,64,9], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",2147.91,1,111,3,28948,7648,2730,34,12], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",2113.25,1,10,10,224941,13475,12055,144,7], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",3104.6,1,12,31,439082,8680,8251,163,13], ["p1",7,"op","chess_char_6_diy1_b",0,"none",1404,1,3,0,0,0,0,0,5], - ["p1",8,"op","chess_char_6_diy2_b",1,"none",1404,1,4,7,122108,0,0,84,3], + ["p1",8,"op","chess_char_6_diy2_b",1,"none",1404,1,4,9,124636,0,0,91,3], ["p1",9,"op","chess_char_6_diy1_b",2,"none",1404,1,13,3,51985,0,0,21,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_002_veen",1594,1,14,0,64607,0,0,18,5], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_002_veen",1594,1,5,4,147178,0,0,89,3], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_002_veen",1594,1,11,6,182711,0,0,127,1], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_002_veen",1594,1,5,9,141592,0,0,94,3], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_002_veen",1594,1,11,8,187668,0,0,129,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1229_darmy":[27,27,0,3247,211632],"enemy_1229_darmy_2":[57,54,3,21621,571110],"enemy_9007_acelem":[12,12,0,22220,806216]}, - "hooks": [1,112,6373,1008,1008,3720,3784,1024,96,99,102,99,48,40887,22,49,96,3,1,96,0,5,0], - "events": {"atk":1057,"deploy":14,"die":96,"dmg":3576,"engage":11,"fx":154,"heal":634,"leak":3,"skill":201,"spawn":110,"status":130}, - "fx": {"aoe":20,"beam":16,"burst":5,"shield":12,"veenBounce":39,"veenVolley":62}, - "snaps": "b61162d5 279a020a e94c7813 d1425ebd 96d79e12 3949be7a 59b5c3ca 7be0767e 46d967a1 bf60fa47 1a1c1894 61ce4ad0 3f630a8a de7aee4f ad44870b ab8a54a6 44db7105 bcd9aabb fcaf3b5a d454bad1 f54a76a3 68e5f308" + "enemies": {"enemy_1229_darmy":[27,27,0,2976,211632],"enemy_1229_darmy_2":[57,53,4,14887,568858],"enemy_9007_acelem":[12,12,0,21184,806216]}, + "hooks": [1,113,6364,976,976,3813,3874,985,96,100,79,75,48,40054,24,46,96,4,1,96,0,5,0], + "events": {"atk":1042,"deploy":15,"die":96,"dmg":3624,"engage":11,"fx":152,"heal":538,"leak":4,"skill":154,"spawn":110,"status":139}, + "fx": {"aoe":22,"beam":15,"burst":5,"shield":12,"veenBounce":40,"veenVolley":58}, + "snaps": "b61162d5 279a020a fe76c038 3e1ab060 32ccbc61 5afce8f1 16ab3200 1b24795c 7656bba0 2877768d eb4b765d ad5a4bde 1172a034 ec0ebb6d 1d6881ef 0287d5ff 26eba3f3 5d01a1a0 8f86910a f2420f40 a259951d 3884d916" }, "diy-034": { "about": "5_diy1_b=zuole/S1/002_zuole 5_diy2_b=zuole/S2/002_zuole 5_diy1_b=zuole/S3/002_zuole 5_diy2_b=zuole/S1/003_zuole 5_diy1_b=zuole/S2/003_zuole 5_diy2_b=zuole/S3/003_zuole 6_diy1_a=zuole/S1 6_diy2_a=zuole/S2 6_diy1_a=zuole/S3 6_diy2_b=zuole/S1 6_diy1_b=zuole/S2 6_diy2_b=zuole/S3", @@ -1361,35 +1361,35 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 20, + "killed": 19, "total": 147, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 2831, + "rngDraws": 2856, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":20,"total":147,"perfect":false,"leaks":127,"leaksUncounted":0,"coins":0,"dmg":1597733,"bossDmg":0,"heal":124711,"deaths":17,"layerGains":{}}}, + "players": {"p1":{"killed":19,"total":147,"perfect":false,"leaks":128,"leaksUncounted":0,"coins":0,"dmg":1601057,"bossDmg":0,"heal":123624,"deaths":17,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_zuole",0,0,5,3,122872,29643,26110,152,120], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_zuole",0,0,171,0,64196,15779,5180,58,3], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_zuole",3028.15,1,10,4,338684,7472,6967,170,13], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_zuole",1692.08,1,153,5,107018,22494,17670,121,78], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_zuole",0,0,103,2,105933,16012,9510,65,3], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_zuole",624.05,1,6,1,200510,17032,14042,199,14], - ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,124,1,34188,13976,8190,64,36], - ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,136,0,32018,10826,5040,46,3], - ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,8,0,145052,15085,12192,184,15], - ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,167,0,9865,16829,6230,42,30], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,93,1,44754,10496,3430,30,2], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",1679.08,1,15,3,392643,12005,10151,209,17], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_zuole",375.06,1,171,0,36108,23174,12950,80,61], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_zuole",0,0,103,2,72264,12036,4970,45,2], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_zuole",3013.56,1,10,4,312102,9288,8769,170,13], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_zuole",0,0,139,1,57461,23472,17910,101,72], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_zuole",0,0,108,3,114714,16183,10490,73,4], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_zuole",1496.62,1,6,0,235834,12940,10603,174,13], + ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,157,1,13974,16776,10990,81,48], + ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,112,1,17344,8586,2800,29,2], + ["p1",9,"op","chess_char_6_diy1_a",2,null,1688.77,1,8,1,211388,12121,10917,173,19], + ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,167,3,123803,27786,20720,118,97], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,93,0,45165,10426,3360,30,2], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,15,3,360902,12678,9145,188,15], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1166_dusbr_2":[39,11,28,15356,469100],"enemy_1169_duphlx_2":[57,7,48,79554,658468],"enemy_1170_dushld_2":[51,2,47,83285,470165]}, - "hooks": [1,171,6900,1792,1792,3283,3294,2835,37,160,334,334,0,41102,131,48,147,123,1,41,0,0,0], - "events": {"atk":1901,"deploy":21,"die":37,"dmg":3091,"engage":12,"fx":74,"heal":1728,"leak":123,"skill":668,"spawn":162,"status":494}, - "fx": {"aoe":59,"revive":4,"shield":11}, - "snaps": "9b9bfe1e d43c7a0e c40281aa 6e64e3ce 4fad8636 36782105 09b748d1 25cc94c1 b430025a e9e80a79 d7721ed6 9ebc4c25 af2bd0f5 1f564cd9 bf9ad884 b285ba57 aa808b19 1f7b4e3f b637b674 97018793 b5ecbff9 c04a19ab e2d38481" + "enemies": {"enemy_1166_dusbr_2":[39,9,30,8938,443635],"enemy_1169_duphlx_2":[57,8,47,74016,643139],"enemy_1170_dushld_2":[51,2,47,92992,514284]}, + "hooks": [1,171,6900,1688,1688,3282,3292,2860,36,160,348,348,0,39796,136,50,147,124,1,40,0,0,0], + "events": {"atk":1797,"deploy":21,"die":36,"dmg":3103,"engage":12,"fx":74,"heal":1713,"leak":124,"skill":696,"spawn":162,"status":498}, + "fx": {"aoe":60,"revive":4,"shield":10}, + "snaps": "9b9bfe1e d02c2053 75f80100 d3aefb64 37686fe5 4084ba75 027aeac9 42b9d6a6 1cacad40 ed85e8c8 a54958a0 6d07d448 289dc119 179e5a1b a71ff47e 1a81febb 5ce41a44 95763206 7d68cbd5 7ec3afc9 b7464549 85ecca8b 1ea96b8e" }, "diy-035": { "about": "6_diy1_b=zuole/S1/002_zuole 6_diy2_b=zuole/S2/002_zuole 6_diy1_b=zuole/S3/002_zuole 6_diy2_b=zuole/S1/003_zuole 6_diy1_b=zuole/S2/003_zuole 6_diy2_b=zuole/S3/003_zuole 5_diy1_a=chyue/S1 5_diy2_a=chyue/S2 5_diy1_a=chyue/S3 5_diy2_b=chyue/S1 5_diy1_b=chyue/S2 5_diy2_b=chyue/S3", @@ -1400,35 +1400,35 @@ "round": 13, "seed": 4056308894, "waveId": "act1autochess_h06", - "time": 216.63, - "ticks": 6499, + "time": 222.27, + "ticks": 6668, "reason": "cleared", - "killed": 48, + "killed": 49, "total": 150, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 800, + "rngDraws": 819, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":48,"total":150,"perfect":false,"leaks":102,"leaksUncounted":0,"coins":0,"dmg":285899,"bossDmg":0,"heal":19857,"deaths":8,"layerGains":{}}}, + "players": {"p1":{"killed":49,"total":150,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":292306,"bossDmg":0,"heal":23053,"deaths":8,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_zuole",3533,1,4,10,57296,12407,12407,179,68], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_zuole",3533,1,4,10,57217,13042,13042,187,72], ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_zuole",3533,1,1,0,0,0,0,0,0], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_zuole",3533,1,5,2,16388,0,0,0,5], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_zuole",3533,1,5,1,9778,0,0,0,4], ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_zuole",3913,1,6,0,0,0,0,0,0], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_zuole",2712.28,1,7,3,23486,6171,4970,75,5], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_zuole",3913,1,9,15,88808,2480,2480,120,9], - ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,98,3,18830,4320,0,92,15], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_zuole",1279.63,1,7,5,29965,8723,6090,90,7], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_zuole",3452,1,9,14,88899,4382,3921,124,9], + ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,98,3,19469,4320,0,94,16], ["p1",8,"op","chess_char_5_diy2_a",1,null,2160,1,2,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_diy1_a",2,null,2160,1,3,0,0,0,0,0,0], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,110,5,23193,4950,0,89,18], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",2475,1,168,9,39580,4950,0,82,9], - ["p1",12,"op","chess_char_5_diy2_b",2,"none",2475,1,167,1,18319,4950,0,78,6] + ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,107,4,21072,4950,0,89,18], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,105,11,47606,4950,0,93,10], + ["p1",12,"op","chess_char_5_diy2_b",2,"none",2475,1,167,1,18299,4950,0,78,6] ], - "enemies": {"enemy_1249_lysdb_2":[60,25,35,4646,144000],"enemy_1251_lysyta":[51,14,37,82,45888],"enemy_1329_cbshld":[39,9,30,29329,96011]}, - "hooks": [1,168,6499,913,913,1107,1080,503,56,158,135,135,0,22779,15,48,150,102,1,56,0,0,0], - "events": {"atk":913,"deploy":18,"die":56,"dmg":1050,"engage":7,"fx":64,"heal":288,"leak":102,"skill":270,"spawn":162,"status":62}, - "fx": {"aoe":27,"shield":5,"shieldBreak":32}, - "snaps": "09423caa b3a86bd7 6483cac2 f29bb4ad 8bbdebb8 0fd2713d 9c3b5f08 cd180d79 05e49fda a7c08cc7 3be4b06e dd1847a4 fa8f646f b377cb7b 986df5ff 2ac56c42 f3bc817e 1ca57598 be233956 8b864bea d41cd9e5 3c8e7e37" + "enemies": {"enemy_1249_lysdb_2":[60,25,35,5169,147432],"enemy_1251_lysyta":[51,15,36,68,48816],"enemy_1329_cbshld":[39,9,30,31357,96058]}, + "hooks": [1,167,6668,965,965,1145,1121,515,57,158,142,142,0,22655,14,51,150,101,1,57,0,0,0], + "events": {"atk":965,"deploy":17,"die":57,"dmg":1089,"engage":7,"fx":65,"heal":334,"leak":101,"skill":284,"spawn":162,"status":56}, + "fx": {"aoe":27,"shield":7,"shieldBreak":31}, + "snaps": "09423caa e7e673fb c845a79b 7a0b2d9d 05a1596e de7fa3ea c995a0ea 11c40708 f84f1277 5805ee4e d5ef9b28 fa2782a8 27ea32eb 5db67db1 8a10b282 5d40b886 704c028c e5f8b8f9 ae06934a 5cf7ff3a d066e289 26b44504 5f626119" }, "diy-036": { "about": "5_diy1_b=chyue/S1/002_chyue 5_diy2_b=chyue/S2/002_chyue 5_diy1_b=chyue/S3/002_chyue 5_diy2_b=chyue/S1/003_chyue 5_diy1_b=chyue/S2/003_chyue 5_diy2_b=chyue/S3/003_chyue 6_diy1_a=chyue/S1 6_diy2_a=chyue/S2 6_diy1_a=chyue/S3 6_diy2_b=chyue/S1 6_diy1_b=chyue/S2 6_diy2_b=chyue/S3", @@ -1439,45 +1439,44 @@ "round": 13, "seed": 2415735691, "waveId": "act1autochess_h06", - "time": 203.83, - "ticks": 6115, + "time": 206.17, + "ticks": 6185, "reason": "cleared", - "killed": 106, - "total": 223, + "killed": 117, + "total": 229, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 526, + "rngDraws": 548, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":106,"total":223,"perfect":false,"leaks":117,"leaksUncounted":0,"coins":0,"dmg":230330,"bossDmg":0,"heal":0,"deaths":26,"layerGains":{}}}, + "players": {"p1":{"killed":117,"total":229,"perfect":false,"leaks":112,"leaksUncounted":0,"coins":0,"dmg":235722,"bossDmg":0,"heal":0,"deaths":26,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_chyue",2648.69,1,218,9,6652,5406,0,51,10], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_chyue",0,0,208,7,11931,8055,0,43,5], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_chyue",0,0,198,8,7773,8055,0,37,2], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_chyue",2475,1,250,11,31407,4950,0,77,15], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_chyue",2475,1,254,18,49193,4950,0,77,8], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_chyue",2253.04,1,201,10,31116,5172,0,84,7], - ["p1",7,"op","chess_char_6_diy1_a",0,null,778.95,1,205,13,42405,5701,0,82,14], - ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,131,10,5481,4320,0,47,7], - ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,124,10,220,4320,0,54,4], - ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,118,8,32762,4950,0,56,12], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,142,2,10886,4950,0,14,10], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,154,0,504,4950,0,14,0], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_chyue",0,0,239,4,13091,8055,0,41,7], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_chyue",0,0,217,7,8585,8055,0,35,5], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_chyue",0,0,205,6,12935,8055,0,39,3], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_chyue",2475,1,223,14,4478,4950,0,62,12], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_chyue",1658.62,1,105,32,79900,3291,0,148,14], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_chyue",2347.92,1,211,13,29239,5077,0,78,7], + ["p1",7,"op","chess_char_6_diy1_a",0,null,838.04,1,214,11,41263,5642,0,82,14], + ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,126,8,2194,4320,0,41,7], + ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,119,10,1284,4320,0,54,4], + ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,113,8,32746,4950,0,56,12], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,136,4,9482,4950,0,13,10], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,144,0,524,4950,0,14,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [39,18,21,898,61918], - "enemy_1196_msfyin": [36,21,15,0,73], - "enemy_1197_sfshu": [48,29,19,3205,120269], - "enemy_1198_msfshu": [87,37,50,0,226], - "enemy_1207_sfji": [12,1,11,61676,47844], - "enemy_1208_msfji": [1,0,1,0,1] + "enemy_1195_sfyin": [39,20,19,651,68553], + "enemy_1196_msfyin": [40,23,17,0,75], + "enemy_1197_sfshu": [48,30,18,3474,124416], + "enemy_1198_msfshu": [90,44,46,0,280], + "enemy_1207_sfji": [12,0,12,62491,42398] }, - "hooks": [1,257,6115,815,815,888,881,0,132,249,94,94,0,9703,3,76,223,117,1,132,0,0,7], - "events": {"atk":815,"deploy":31,"die":132,"dmg":881,"engage":12,"fx":89,"leak":117,"skill":188,"spawn":238,"status":24}, - "fx": {"aoe":33,"buff":1,"dodge":7,"summon":48}, - "snaps": "3bbe012e d31f4ea8 cb8f67bb 242b9a30 f3ce30d3 e9830293 cf0729b3 988d2c83 02f42254 4f557eea 8e95bd4c 83c92c27 cefc8d7b 213319ae 9f9a26fc f4d90af3 71c1e322 dc08f466 512b9fd0 d6074647 bfccfff2" + "hooks": [1,262,6185,847,847,949,946,0,143,255,95,95,0,11576,1,76,229,112,1,143,0,0,3], + "events": {"atk":847,"deploy":30,"die":143,"dmg":946,"engage":12,"fx":91,"leak":112,"skill":190,"spawn":244,"status":20}, + "fx": {"aoe":37,"buff":1,"dodge":3,"summon":50}, + "snaps": "7ff101ed 96f6335f 2539346b f079396d ee3daafe 8a58a351 d1aac54c 84ca2a95 fa58c8a0 6a230f98 c892e835 57da99fe 4337d40c 527a4077 97fab8e0 fe62af0a bfd251bb 45a22df1 caab033b 5d25e986 a5359291" }, "diy-037": { "about": "5_diy1_a=huang/S1 5_diy2_a=huang/S2 5_diy1_a=huang/S3 5_diy2_b=huang/S1 5_diy1_b=huang/S2 5_diy2_b=huang/S3 6_diy1_b=chyue/S1/002_chyue 6_diy2_b=chyue/S2/002_chyue 6_diy1_b=chyue/S3/002_chyue 6_diy2_b=chyue/S1/003_chyue 6_diy1_b=chyue/S2/003_chyue 6_diy2_b=chyue/S3/003_chyue", @@ -1488,38 +1487,38 @@ "round": 13, "seed": 775009396, "waveId": "act1autochess_h06", - "time": 218.97, - "ticks": 6569, + "time": 213.37, + "ticks": 6401, "reason": "cleared", - "killed": 15, + "killed": 13, "total": 114, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 392, + "rngDraws": 372, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":15,"total":114,"perfect":false,"leaks":99,"leaksUncounted":0,"coins":0,"dmg":482787,"bossDmg":0,"heal":14094,"deaths":25,"layerGains":{}}}, + "players": {"p1":{"killed":13,"total":114,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":483353,"bossDmg":0,"heal":14094,"deaths":24,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,112,1,17993,6345,2115,20,5], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,127,0,8049,6345,2115,19,0], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,135,1,52184,6345,2115,9,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,96,2,31821,7749,2583,21,5], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,87,1,40745,7749,2583,26,0], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,84,2,90738,7749,2583,21,1], - ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chyue",1732.64,1,144,3,49556,6472,0,84,19], - ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chyue",0,0,141,2,80117,8205,0,93,9], - ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chyue",2735,1,145,1,14015,5470,0,42,4], - ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chyue",0,0,85,1,16872,4950,0,35,6], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chyue",865,1,143,1,52179,6560,0,48,5], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chyue",0,0,77,0,28518,4950,0,51,4], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,111,0,11302,6345,2115,19,4], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,126,0,10528,6345,2115,21,0], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,135,0,48630,6345,2115,7,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,94,3,29695,7749,2583,22,5], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,88,0,45529,7749,2583,30,0], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,85,3,87839,7749,2583,25,1], + ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chyue",479.69,1,141,2,42975,7725,0,78,18], + ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chyue",479.69,1,143,2,94724,7725,0,82,8], + ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chyue",2735,1,144,1,7909,5470,0,42,3], + ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chyue",2475,1,145,0,20198,4950,0,34,6], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chyue",0,0,74,2,56352,4950,0,45,5], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chyue",0,0,77,0,27672,4950,0,52,4], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1381_winman":[27,6,21,3398,152272],"enemy_1381_winman_2":[48,9,39,32298,292988],"enemy_1387_winshd":[39,0,39,34389,172487]}, - "hooks": [1,145,6569,793,793,3231,3220,12,40,139,59,59,0,10364,15,68,114,99,1,42,0,0,13], - "events": {"atk":1006,"deploy":28,"die":40,"dmg":3114,"engage":12,"fx":64,"heal":12,"leak":99,"skill":118,"spawn":129,"status":34}, - "fx": {"aoe":39,"dodge":13,"heal":12}, - "snaps": "7bd6fdc6 a8f0b6e0 4e2363a1 bbf647fd b9c77eec 8864c444 2fc7397d 74d6ad62 2c7afd85 d34880e2 9c85fb7f 3757e915 4b0cf4eb 8f141028 eb7b23d4 bc37491a 2c596db6 605c1373 96bd9972 64d94ed9 d9673eb8 50f071c1" + "enemies": {"enemy_1381_winman":[27,6,21,4195,142957],"enemy_1381_winman_2":[48,7,41,26620,296069],"enemy_1387_winshd":[39,0,39,39935,179287]}, + "hooks": [1,145,6401,775,775,3215,3210,12,37,138,55,55,0,9977,18,66,114,101,1,39,0,0,7], + "events": {"atk":1002,"deploy":28,"die":37,"dmg":3104,"engage":12,"fx":59,"heal":12,"leak":101,"skill":110,"spawn":129,"status":40}, + "fx": {"aoe":40,"dodge":7,"heal":12}, + "snaps": "d3c5a22e 48d45420 5dc080e9 9240a907 65dbdebb 8ca7c9b0 ffcbdec5 dd6b8435 855625f9 cd9b81af 0105c531 e5c390b5 8fb89367 81ee3d5d e37326d0 ffcd7054 83e8480b 5e255f75 d03419a4 13ca797b a29da92c 35511aa2" }, "diy-038": { "about": "5_diy1_b=huang/S1/002_huang 5_diy2_b=huang/S2/002_huang 5_diy1_b=huang/S3/002_huang 5_diy2_b=huang/S1/003_huang 5_diy1_b=huang/S2/003_huang 5_diy2_b=huang/S3/003_huang 6_diy1_a=huang/S1 6_diy2_a=huang/S2 6_diy1_a=huang/S3 6_diy2_b=huang/S1 6_diy1_b=huang/S2 6_diy2_b=huang/S3", @@ -4630,29 +4629,29 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":99270,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":99510,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_a",0,null,1803,1,150,0,0,3606,0,0,0], ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,124,0,0,3606,0,0,0], ["p1",3,"op","chess_char_6_diy1_a",2,null,865.31,1,149,0,0,4544,0,0,0], ["p1",4,"op","chess_char_6_diy2_b",0,"none",0,0,79,0,0,4230,0,0,0], ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,134,0,0,4230,0,0,0], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,142,0,32111,4230,0,13,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,142,0,32351,4230,0,13,1], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_weedy",0,0,5,0,3599,2325,0,4,1], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_weedy",0,0,90,1,6006,4650,0,7,0], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_weedy",0,0,85,1,11699,4650,0,7,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_weedy",0,0,82,0,11535,4230,0,12,4], ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_weedy",0,0,86,0,32542,4230,0,29,0], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_weedy",0,0,6,0,1778,2115,0,3,1], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_weedy",0,0,6,0,1778,2115,0,3,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1019_jshoot_2":[57,1,56,31655,36790],"enemy_1299_ymkilr_2":[27,0,27,13739,7133],"enemy_1422_lrsldr_2":[39,1,38,1252,55347]}, - "hooks": [1,150,6596,384,384,886,886,0,24,145,9,9,0,16367,6,24,123,121,1,24,0,0,0], - "events": {"atk":430,"deploy":24,"die":24,"dmg":886,"engage":7,"fx":12,"leak":121,"skill":18,"spawn":138,"status":12}, + "enemies": {"enemy_1019_jshoot_2":[57,1,56,31655,36790],"enemy_1299_ymkilr_2":[27,0,27,13739,7133],"enemy_1422_lrsldr_2":[39,1,38,1252,55587]}, + "hooks": [1,150,6596,384,384,886,886,0,24,145,8,8,0,16335,6,24,123,121,1,24,0,0,0], + "events": {"atk":430,"deploy":24,"die":24,"dmg":886,"engage":7,"fx":12,"leak":121,"skill":16,"spawn":138,"status":12}, "fx": {"displace":10,"frostNova":2}, - "snaps": "1ec1058a 353e98bb 34fd9a38 0d51d5b3 93bfc303 1b893497 43d88492 331d5c62 b4a648f7 784992d9 7539f598 aa80f976 b8df1f53 a3b4697d 3e382f0f 78b3385f 3fa32035 f698fb44 7272ecca 864aacc5 d65347bc 4448e28c" + "snaps": "1ec1058a 353e98bb c891647e 774af3ff 45a4fc65 a06c21d5 23c0ac48 4d250a54 37cf8645 b2697143 e2890c36 dfbb3440 22693b45 ecaf0a1f e501e721 6c138961 c8148a8b c92af84a bcb5d730 7269dc1f 52f312ca 856e078e" }, "diy-110": { "about": "5_diy1_a=wang/S1 5_diy2_a=wang/S2 5_diy1_a=wang/S3 5_diy2_b=wang/S1 5_diy1_b=wang/S2 5_diy2_b=wang/S3 5_diy1_b=wang/S1/002_wang 5_diy2_b=wang/S2/002_wang 5_diy1_b=wang/S3/002_wang 6_diy1_a=wang/S1 6_diy2_a=wang/S2 6_diy1_a=wang/S3", @@ -4672,28 +4671,28 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":7,"total":102,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":303676,"bossDmg":0,"heal":0,"deaths":9,"layerGains":{}}}, + "players": {"p1":{"killed":7,"total":102,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":302431,"bossDmg":0,"heal":0,"deaths":9,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,1169,1,3,0,19106,0,0,214,1], - ["p1",2,"op","chess_char_5_diy2_a",1,null,1169,1,4,0,23179,0,0,220,1], - ["p1",3,"op","chess_char_5_diy1_a",2,null,1169,1,11,0,26970,0,0,17,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",1375,1,13,1,15972,0,0,123,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",1375,1,5,0,25278,0,0,232,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,1169,1,3,0,17866,0,0,214,1], + ["p1",2,"op","chess_char_5_diy2_a",1,null,1169,1,4,0,24090,0,0,221,1], + ["p1",3,"op","chess_char_5_diy1_a",2,null,1169,1,11,1,27181,0,0,17,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",1375,1,13,1,15943,0,0,122,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",1375,1,5,0,24878,0,0,231,1], ["p1",6,"op","chess_char_5_diy2_b",2,"none",1375,1,8,0,52464,0,0,10,1], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_wang",1475,1,12,1,41118,0,0,220,1], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_wang",1475,1,14,1,36196,0,0,209,1], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_wang",1475,1,12,1,40652,0,0,219,1], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_wang",1475,1,14,0,36017,0,0,209,1], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_wang",1475,1,9,3,53254,0,0,10,1], - ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,120,1,1657,3507,0,23,1], - ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,116,0,4481,3507,0,21,1], + ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,120,0,1774,3507,0,22,1], + ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,116,1,4313,3507,0,20,1], ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,111,0,3999,3507,0,14,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1166_dusbr_2":[45,7,38,1169,218475],"enemy_1170_dushld_2":[27,0,27,7014,38542],"enemy_9011_acrefr":[30,0,30,2338,77219]}, - "hooks": [1,122,6423,1324,1324,2168,2168,0,16,111,11,8,0,6464,0,10,102,95,1,16,0,0,0], - "events": {"atk":1324,"deploy":18,"die":16,"dmg":2168,"engage":12,"fx":41,"leak":95,"skill":19,"spawn":116,"status":102}, + "enemies": {"enemy_1166_dusbr_2":[45,7,38,1169,217310],"enemy_1170_dushld_2":[27,0,27,7014,38382],"enemy_9011_acrefr":[30,0,30,2338,77299]}, + "hooks": [1,122,6423,1320,1320,2162,2162,0,16,111,11,8,0,6464,0,10,102,95,1,16,0,0,0], + "events": {"atk":1320,"deploy":18,"die":16,"dmg":2162,"engage":12,"fx":41,"leak":95,"skill":19,"spawn":116,"status":102}, "fx": {"explode":20,"summon":21}, - "snaps": "d22aeabc 8047cbf2 e717defb d9a3c230 430799ae e933d86a 7972089a b532fabb 14cc29bb 50645694 aaec97cf 50ca7561 8b5d77b1 1192c94f 8511ad29 c46ecc62 fe6ab715 a19a7084 b5e8dbcf fe91d504 6e3982ad 42028be4" + "snaps": "d22aeabc 03955588 dbf27bbe 4d5246a4 e999adb8 4c485ed5 80e54acf 44641d76 fa4a593f f8aacfda 15fa9ba5 a55aed9e 52111617 ae7ee233 ccd4fac4 e5043def e7ada8a7 46b3231b f8ba41ab cf3792a3 382f7135 fb12184c" }, "diy-111": { "about": "6_diy1_b=wang/S1 6_diy2_b=wang/S2 6_diy1_b=wang/S3 6_diy2_b=wang/S1/002_wang 6_diy1_b=wang/S2/002_wang 6_diy2_b=wang/S3/002_wang 5_diy1_a=doroth/S1 5_diy2_a=doroth/S2 5_diy1_a=doroth/S3 5_diy2_b=doroth/S1 5_diy1_b=doroth/S2 5_diy2_b=doroth/S3", @@ -4713,12 +4712,12 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":20,"total":150,"perfect":false,"leaks":130,"leaksUncounted":0,"coins":0,"dmg":374425,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, + "players": {"p1":{"killed":20,"total":150,"perfect":false,"leaks":130,"leaksUncounted":0,"coins":0,"dmg":374571,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"none",1375,1,4,2,54468,0,0,219,1], - ["p1",2,"op","chess_char_6_diy2_b",1,"none",1375,1,5,2,55888,0,0,221,1], + ["p1",1,"op","chess_char_6_diy1_b",0,"none",1375,1,4,2,54471,0,0,219,1], + ["p1",2,"op","chess_char_6_diy2_b",1,"none",1375,1,5,2,56168,0,0,221,1], ["p1",3,"op","chess_char_6_diy1_b",2,"none",1375,1,13,6,56653,0,0,14,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_wang",1525,1,15,1,47674,0,0,234,1], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_wang",1525,1,15,1,47602,0,0,233,1], ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_wang",1525,1,6,2,59306,0,0,212,1], ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_wang",1525,1,16,4,34625,0,0,17,1], ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,176,0,2865,3558,0,22,0], @@ -4735,13 +4734,13 @@ ["p1","~3","token","token_10025_doroth_recttp",null,null,1000,0,103,0,2465,0,0,0,null], ["p1","~4","token","token_10025_doroth_recttp",null,null,1000,0,114,0,7637,0,0,0,null], ["p1","~5","token","token_10025_doroth_recttp",null,null,1000,0,170,0,2163,0,0,0,null], - ["p1","~6","token","token_10025_doroth_recttp",null,null,1000,0,182,0,6353,0,0,0,null] + ["p1","~6","token","token_10025_doroth_recttp",null,null,1000,0,182,0,6289,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[60,6,54,6336,178226],"enemy_1251_lysyta":[51,13,38,1640,141718],"enemy_1329_cbshld":[39,1,38,15253,54481]}, - "hooks": [1,183,6619,1189,1189,1262,1206,0,38,174,6,4,0,3124,26,24,150,130,1,38,0,0,0], - "events": {"atk":1189,"deploy":30,"die":44,"dmg":1206,"engage":12,"fx":94,"leak":130,"skill":10,"spawn":171,"status":50}, + "enemies": {"enemy_1249_lysdb_2":[60,6,54,6336,177826],"enemy_1251_lysyta":[51,13,38,1640,142358],"enemy_1329_cbshld":[39,1,38,15253,54388]}, + "hooks": [1,183,6619,1188,1188,1261,1205,0,38,174,6,4,0,3124,26,24,150,130,1,38,0,0,0], + "events": {"atk":1188,"deploy":30,"die":44,"dmg":1205,"engage":12,"fx":94,"leak":130,"skill":10,"spawn":171,"status":50}, "fx": {"explode":18,"shieldBreak":56,"summon":20}, - "snaps": "d2b2f468 773a3305 6b7fe130 cb8641e3 9df06882 9b4a332c cfc8e6ff 2f659595 7e9ced6d 84d57559 1171bc52 bd897f78 1b266b01 fdff47d7 317606db 0740345f b9643155 ccaf151b 79573b97 430e4274 5e82ffc4 24b25fbd" + "snaps": "d2b2f468 210dad75 78b5d415 80ebfb89 8968ffd9 ec8f2b4d 0952962f ca569a82 21da3fab 021d1f0e afac5335 473e72a4 1f7f513f 9117b2e0 3dbc538b cf3eeb14 bebc9a02 39114e28 d1dba025 09188c4a 08b3ca61 fb3eca6c" }, "diy-112": { "about": "5_diy1_b=doroth/S1/002_doroth 5_diy2_b=doroth/S2/002_doroth 5_diy1_b=doroth/S3/002_doroth 5_diy2_b=doroth/S1/003_doroth 5_diy1_b=doroth/S2/003_doroth 5_diy2_b=doroth/S3/003_doroth 6_diy1_a=doroth/S1 6_diy2_a=doroth/S2 6_diy1_a=doroth/S3 6_diy2_b=doroth/S1 6_diy1_b=doroth/S2 6_diy2_b=doroth/S3", @@ -4761,14 +4760,14 @@ "bossHpLeft": null, "rngDraws": 19, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":0,"total":105,"perfect":false,"leaks":105,"leaksUncounted":0,"coins":0,"dmg":86240,"bossDmg":0,"heal":0,"deaths":33,"layerGains":{}}}, + "players": {"p1":{"killed":0,"total":105,"perfect":false,"leaks":105,"leaksUncounted":0,"coins":0,"dmg":85790,"bossDmg":0,"heal":0,"deaths":33,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_doroth",0,0,153,0,3660,4545,0,25,0], ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_doroth",0,0,158,0,1491,4545,0,20,0], ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_doroth",0,0,164,0,7839,4545,0,19,0], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_doroth",0,0,167,0,8374,4185,0,21,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_doroth",1395,1,170,0,5064,2790,0,25,1], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_doroth",0,0,87,0,3651,2790,0,21,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_doroth",0,0,167,0,7985,4185,0,20,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_doroth",1395,1,170,0,5033,2790,0,24,1], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_doroth",0,0,87,0,3620,2790,0,20,1], ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,148,0,101,3558,0,4,0], ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,143,0,928,3558,0,16,0], ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,138,0,680,3558,0,14,0], @@ -4800,11 +4799,11 @@ ["p1","~23","token","token_10025_doroth_recttp",null,null,1000,0,168,0,0,0,0,0,null], ["p1","~24","token","token_10025_doroth_recttp",null,null,1000,0,169,0,0,0,0,0,null] ], - "enemies": {"enemy_1158_divman":[51,0,51,14982,42443],"enemy_1160_hvyslr_2":[24,0,24,6967,11258],"enemy_1161_tidmag_2":[30,0,30,23285,32538]}, - "hooks": [1,163,6430,361,361,363,400,0,33,162,3,3,0,2964,36,10,105,105,1,33,0,0,0], - "events": {"atk":370,"deploy":58,"die":57,"dmg":400,"engage":12,"fx":39,"leak":105,"skill":6,"spawn":141,"status":70}, + "enemies": {"enemy_1158_divman":[51,0,51,14982,42443],"enemy_1160_hvyslr_2":[24,0,24,6967,11198],"enemy_1161_tidmag_2":[30,0,30,23285,32149]}, + "hooks": [1,163,6430,358,358,360,397,0,33,162,3,3,0,2925,36,10,105,105,1,33,0,0,0], + "events": {"atk":367,"deploy":58,"die":57,"dmg":397,"engage":12,"fx":39,"leak":105,"skill":6,"spawn":141,"status":70}, "fx": {"explode":12,"mark":3,"summon":24}, - "snaps": "2b5dc14c bae96393 7b307634 850471bd 224dd955 9c59c02d 485012e9 b6404b2f 717eaf30 32721cc2 bfc45c1a 7a3d4738 fc803612 f73d55cd 73a6ef4b cc57a923 1d83e51c 30a4037f 6584de6a b89bf7d3 b40a54ae 437b24b6" + "snaps": "2b5dc14c 4c787979 68dbdf91 ae9551b5 bf1a3bbf 8be5ce7f 8414d3b3 c19cdcb9 348f4d76 43322710 8f9893f0 ad536d3e 6ab7928c 2ada7dd7 95bdaa9d 60643c45 8fa625da 2be5bcc5 c47299bc 33f720ad 86922420 74e6e4d0" }, "diy-113": { "about": "5_diy1_a=aglna2/S1 5_diy2_a=aglna2/S2 5_diy1_a=aglna2/S3 5_diy2_b=aglna2/S1 5_diy1_b=aglna2/S2 5_diy2_b=aglna2/S3 6_diy1_b=doroth/S1/002_doroth 6_diy2_b=doroth/S2/002_doroth 6_diy1_b=doroth/S3/002_doroth 6_diy2_b=doroth/S1/003_doroth 6_diy1_b=doroth/S2/003_doroth 6_diy2_b=doroth/S3/003_doroth", @@ -4870,48 +4869,48 @@ "round": 13, "seed": 4120508441, "waveId": "act1autochess_h06", - "time": 205.97, - "ticks": 6179, + "time": 207.2, + "ticks": 6216, "reason": "cleared", - "killed": 106, - "total": 189, + "killed": 105, + "total": 192, "unspawned": 0, "bossHpLeft": null, "rngDraws": 8, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":106,"total":189,"perfect":false,"leaks":83,"leaksUncounted":0,"coins":0,"dmg":604810,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, + "players": {"p1":{"killed":105,"total":192,"perfect":false,"leaks":87,"leaksUncounted":0,"coins":0,"dmg":610917,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,162,10,98104,3768,0,58,2], - ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,202,16,43127,3768,0,51,2], - ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,186,8,44934,3768,0,43,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"none",2216,1,191,15,90315,2216,0,76,2], - ["p1",5,"op","chess_char_6_diy1_b",1,"none",1446,1,216,16,102990,5202,0,44,1], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,170,10,80176,4432,0,47,1], + ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,162,9,104987,3768,0,60,2], + ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,202,17,41640,3768,0,52,2], + ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,185,8,49256,3768,0,46,1], + ["p1",4,"op","chess_char_6_diy2_b",0,"none",2216,1,191,16,95148,2216,0,77,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"none",1281.99,1,219,16,103627,5366,0,45,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,170,8,76347,4432,0,47,1], ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,1,33720,0,0,54,0], + ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,4,26250,0,0,54,0], ["p1",9,"op","chess_char_5_diy1_a",2,null,278.33,1,15,1,69590,1081,0,68,4], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,167,2,7065,3140,0,27,2], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,159,2,7098,3140,0,21,4], + ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,167,1,8696,3140,0,29,2], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,159,2,6703,3140,0,18,4], ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,187,2,16680,4710,0,16,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,37,2,1637,0,0,0,null], - ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,52,0,2288,0,0,0,null], - ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,67,0,2725,0,0,0,null], + ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,52,0,3269,0,0,0,null], + ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,67,0,2724,0,0,0,null], ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,81,0,4361,0,0,0,null] ], "enemies": { - "enemy_1197_sfshu": [15,9,6,233,53765], - "enemy_1197_sfshu_2": [39,23,16,7938,171426], - "enemy_1198_msfshu": [27,21,6,0,112], - "enemy_1198_msfshu_2": [69,42,27,0,348], - "enemy_9010_acpupp": [39,11,28,21238,449669] + "enemy_1197_sfshu": [15,9,6,233,54369], + "enemy_1197_sfshu_2": [39,24,15,8055,167010], + "enemy_1198_msfshu": [27,20,7,0,102], + "enemy_1198_msfshu_2": [72,41,31,0,342], + "enemy_9010_acpupp": [39,11,28,21145,461017] }, - "hooks": [1,219,6179,587,587,2744,2520,0,124,211,20,18,61,13129,23,42,189,83,1,137,0,0,0], - "events": {"atk":973,"deploy":27,"die":128,"dmg":2520,"engage":11,"fx":145,"leak":83,"skill":38,"spawn":208,"status":442}, - "fx": {"aoe":4,"dash":3,"displace":8,"ember":13,"pull":8,"shieldBreak":36,"summon":36,"takeoff":9,"telegraph":13,"volley":15}, - "snaps": "39df8f19 dc0b29a2 9e238c17 43dd1e57 a6a34d5f a555ab38 25a0c85d 1ad33783 acbe4560 13b28161 da34a727 b95db8d6 23e509f7 faaca8f2 9f5d7dc2 a8cc015f 4ced24ff 3dece084 287324b5 6dbabf08 a99101bd" + "hooks": [1,222,6216,596,596,2750,2528,0,123,214,20,18,61,13100,19,40,192,87,1,135,0,0,0], + "events": {"atk":988,"deploy":27,"die":127,"dmg":2528,"engage":11,"fx":145,"leak":87,"skill":38,"spawn":211,"status":446}, + "fx": {"aoe":4,"dash":3,"displace":8,"ember":12,"pull":8,"shieldBreak":37,"summon":37,"takeoff":9,"telegraph":12,"volley":15}, + "snaps": "39df8f19 af060c25 8c957866 eaf522ed 8b52b30d 33152c52 0a34f781 5abdd087 47cd1ee5 38d5ca56 a7d03d2a adda0195 d884c719 cd5fe3d1 d3fc464f 00c9e148 b8c42329 755d5d02 ab6540d7 f6bce4af a5a87cca" }, "diy-115": { "about": "5_diy1_b=ebnhlz/S1/002_ebnhlz 5_diy2_b=ebnhlz/S2/002_ebnhlz 5_diy1_b=ebnhlz/S3/002_ebnhlz 5_diy2_b=ebnhlz/S1/003_ebnhlz 5_diy1_b=ebnhlz/S2/003_ebnhlz 5_diy2_b=ebnhlz/S3/003_ebnhlz 5_diy1_b=ebnhlz/S1/004_ebnhlz 5_diy2_b=ebnhlz/S2/004_ebnhlz 5_diy1_b=ebnhlz/S3/004_ebnhlz 6_diy1_a=ebnhlz/S1 6_diy2_a=ebnhlz/S2 6_diy1_a=ebnhlz/S3", @@ -4922,63 +4921,63 @@ "round": 12, "seed": 2479968306, "waveId": "act1autochess_h05", - "time": 205.6, - "ticks": 6168, + "time": 200.03, + "ticks": 6001, "reason": "cleared", - "killed": 154, - "total": 232, + "killed": 157, + "total": 243, "unspawned": 0, "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":154,"total":232,"perfect":false,"leaks":78,"leaksUncounted":0,"coins":0,"dmg":511834,"bossDmg":0,"heal":0,"deaths":10,"layerGains":{}}}, + "players": {"p1":{"killed":157,"total":243,"perfect":false,"leaks":86,"leaksUncounted":0,"coins":0,"dmg":517346,"bossDmg":0,"heal":0,"deaths":8,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_ebnhlz",1570,1,10,4,57606,0,0,47,5], ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_ebnhlz",1570,1,11,7,31893,0,0,29,0], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_ebnhlz",1570,1,1,6,12372,0,0,24,4], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_ebnhlz",1650,1,3,17,38893,0,0,76,8], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_ebnhlz",1650,1,5,8,48337,0,0,62,7], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_ebnhlz",1650,1,7,11,130273,0,0,49,4], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_ebnhlz",1570,1,9,0,0,0,0,0,3], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_ebnhlz",1570,1,12,6,63169,0,0,49,14], - ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_ebnhlz",1570,1,269,3,6725,3140,0,10,1], - ["p1",10,"op","chess_char_6_diy1_a",0,null,706.13,1,260,5,11720,3371,0,28,2], - ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,255,4,17497,4077,0,20,0], - ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,254,2,17986,4077,0,15,1], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_ebnhlz",1570,1,1,3,8448,0,0,24,4], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_ebnhlz",1650,1,3,23,46037,0,0,74,8], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_ebnhlz",1650,1,5,7,55625,0,0,56,7], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_ebnhlz",1650,1,7,14,131481,0,0,54,4], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_ebnhlz",1570,1,9,2,4,0,0,2,3], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_ebnhlz",1570,1,12,2,56423,0,0,43,14], + ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_ebnhlz",0,0,200,4,8982,3140,0,9,2], + ["p1",10,"op","chess_char_6_diy1_a",0,null,1025.48,1,276,4,10325,3052,0,29,2], + ["p1",11,"op","chess_char_6_diy2_a",1,null,81.61,1,272,5,16298,3995,0,22,0], + ["p1",12,"op","chess_char_6_diy1_a",2,null,53.27,1,262,2,18863,4024,0,15,1], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,29,0,0,0,0,0,null], ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,30,0,13232,0,0,0,null], ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,50,0,5752,0,0,0,null], - ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,73,0,5177,0,0,0,null], - ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,75,0,0,0,0,0,null], - ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,93,0,5177,0,0,0,null], - ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,114,0,14956,0,0,0,null], - ["p1","~8","token","token_10024_ebnhlz_rcube",null,null,1000,0,120,0,0,0,0,0,null], - ["p1","~9","token","token_10024_ebnhlz_rcube",null,null,1000,0,132,0,2876,0,0,0,null], - ["p1","~10","token","token_10024_ebnhlz_rcube",null,null,1000,0,150,0,2305,0,0,0,null], - ["p1","~11","token","token_10024_ebnhlz_rcube",null,null,1000,0,160,0,0,0,0,0,null], - ["p1","~12","token","token_10024_ebnhlz_rcube",null,null,1000,0,168,0,5177,0,0,0,null], - ["p1","~13","token","token_10024_ebnhlz_rcube",null,null,1000,0,199,0,9778,0,0,0,null], - ["p1","~14","token","token_10024_ebnhlz_rcube",null,null,1000,0,207,0,0,0,0,0,null], - ["p1","~15","token","token_10024_ebnhlz_rcube",null,null,1000,0,214,0,2876,0,0,0,null], - ["p1","~16","token","token_10024_ebnhlz_rcube",null,null,1000,0,231,0,2880,0,0,0,null], - ["p1","~17","token","token_10024_ebnhlz_rcube",null,null,1000,0,240,0,0,0,0,0,null], - ["p1","~18","token","token_10024_ebnhlz_rcube",null,null,1000,0,243,0,5177,0,0,0,null], - ["p1","~19","token","token_10024_ebnhlz_rcube",null,null,1000,0,259,0,0,0,0,0,null], - ["p1","~20","token","token_10024_ebnhlz_rcube",null,null,1000,1,268,0,0,0,0,0,null], - ["p1","~21","token","token_10024_ebnhlz_rcube",null,null,1000,1,270,0,0,0,0,0,null] + ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,75,0,5177,0,0,0,null], + ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,77,0,0,0,0,0,null], + ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,95,0,5177,0,0,0,null], + ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,121,0,14956,0,0,0,null], + ["p1","~8","token","token_10024_ebnhlz_rcube",null,null,1000,0,124,0,0,0,0,0,null], + ["p1","~9","token","token_10024_ebnhlz_rcube",null,null,1000,0,139,0,2876,0,0,0,null], + ["p1","~10","token","token_10024_ebnhlz_rcube",null,null,1000,0,159,0,2304,0,0,0,null], + ["p1","~11","token","token_10024_ebnhlz_rcube",null,null,1000,0,168,0,0,0,0,0,null], + ["p1","~12","token","token_10024_ebnhlz_rcube",null,null,1000,0,180,0,5177,0,0,0,null], + ["p1","~13","token","token_10024_ebnhlz_rcube",null,null,1000,0,208,0,9778,0,0,0,null], + ["p1","~14","token","token_10024_ebnhlz_rcube",null,null,1000,0,218,0,0,0,0,0,null], + ["p1","~15","token","token_10024_ebnhlz_rcube",null,null,1000,0,225,0,2876,0,0,0,null], + ["p1","~16","token","token_10024_ebnhlz_rcube",null,null,1000,0,242,0,2880,0,0,0,null], + ["p1","~17","token","token_10024_ebnhlz_rcube",null,null,1000,0,251,0,0,0,0,0,null], + ["p1","~18","token","token_10024_ebnhlz_rcube",null,null,1000,0,254,0,5177,0,0,0,null], + ["p1","~19","token","token_10024_ebnhlz_rcube",null,null,1000,0,269,0,0,0,0,0,null], + ["p1","~20","token","token_10024_ebnhlz_rcube",null,null,1000,1,280,0,0,0,0,0,null], + ["p1","~21","token","token_10024_ebnhlz_rcube",null,null,1000,1,283,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [45,23,22,8794,160820], - "enemy_1196_msfyin": [46,33,13,0,194], - "enemy_1197_sfshu": [39,26,13,5871,197074], - "enemy_1198_msfshu": [78,60,18,0,464], + "enemy_1195_sfyin": [45,27,18,8900,161080], + "enemy_1196_msfyin": [54,40,14,0,228], + "enemy_1197_sfshu": [39,27,12,5310,202092], + "enemy_1198_msfshu": [81,51,30,0,459], "enemy_1199_sfjin": [12,12,0,0,186325], - "enemy_1200_msfjin": [12,0,12,0,459] + "enemy_1200_msfjin": [12,0,12,0,434] }, - "hooks": [1,273,6168,461,461,2423,2548,0,164,261,49,47,0,30421,0,28,232,78,1,164,0,0,0], - "events": {"atk":461,"deploy":41,"die":183,"dmg":2548,"engage":11,"fx":193,"leak":78,"skill":96,"spawn":265}, - "fx": {"aoe":13,"displace":17,"pull":17,"summon":82,"volley":64}, - "snaps": "948c5168 c32d266d 43ba134b 4372fae1 6e4bf334 4c5fe4c1 6dfbc99b bc7d903c 631d9949 3a438571 2e0c2541 2a1dae92 a90b81e6 ca4ec2b1 454f0153 6e8de2d3 0dd5e1fa d3cd56d3 feeb4a26 da6eab43 8a27c708" + "hooks": [1,283,6001,453,453,2416,2533,0,165,270,50,48,0,29909,0,28,243,86,1,165,0,0,0], + "events": {"atk":453,"deploy":40,"die":184,"dmg":2533,"engage":12,"fx":196,"leak":86,"skill":98,"spawn":276}, + "fx": {"aoe":13,"displace":16,"pull":16,"summon":87,"volley":64}, + "snaps": "948c5168 1d265509 9d93f83f aa576c62 72631e8e 3d369e7e 865b36e1 f6fffa0e 12146209 105808e4 000d0135 acbc1b8c a2742d1c faa8de84 92a58837 217056e7 dc8c85a1 00af9228 c1c9f863 61d2d1ef" }, "diy-116": { "about": "6_diy1_b=ebnhlz/S1 6_diy2_b=ebnhlz/S2 6_diy1_b=ebnhlz/S3 6_diy2_b=ebnhlz/S1/002_ebnhlz 6_diy1_b=ebnhlz/S2/002_ebnhlz 6_diy2_b=ebnhlz/S3/002_ebnhlz 6_diy1_b=ebnhlz/S1/003_ebnhlz 6_diy2_b=ebnhlz/S2/003_ebnhlz 6_diy1_b=ebnhlz/S3/003_ebnhlz 6_diy2_b=ebnhlz/S1/004_ebnhlz 6_diy1_b=ebnhlz/S2/004_ebnhlz 6_diy2_b=ebnhlz/S3/004_ebnhlz", @@ -4992,39 +4991,39 @@ "time": 217.6, "ticks": 6528, "reason": "cleared", - "killed": 3, + "killed": 4, "total": 123, "unspawned": 0, "bossHpLeft": null, "rngDraws": 10, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":123,"perfect":false,"leaks":120,"leaksUncounted":0,"coins":0,"dmg":293861,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":4,"total":123,"perfect":false,"leaks":119,"leaksUncounted":0,"coins":0,"dmg":287062,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_b",0,"none",0,0,114,1,20547,3140,0,25,2], - ["p1",2,"op","chess_char_6_diy2_b",1,"none",0,0,91,0,27538,3140,0,18,4], + ["p1",2,"op","chess_char_6_diy2_b",1,"none",0,0,91,0,24678,3140,0,15,4], ["p1",3,"op","chess_char_6_diy1_b",2,"none",0,0,131,0,21860,3140,0,9,1], ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_ebnhlz",0,0,142,1,15719,3140,0,16,1], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_ebnhlz",0,0,151,0,18745,4710,0,11,1], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_ebnhlz",0,0,151,0,17293,4710,0,10,1], ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_ebnhlz",0,0,78,0,12168,3140,0,7,0], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_003_ebnhlz",0,0,74,0,21305,3490,0,5,0], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_003_ebnhlz",0,0,7,0,13689,1745,0,5,0], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_003_ebnhlz",0,0,9,0,25461,1745,0,8,1], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_004_ebnhlz",0,0,76,0,11814,3140,0,5,0], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_004_ebnhlz",0,0,4,0,29832,1570,0,6,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_004_ebnhlz",0,0,4,0,27900,1570,0,5,2], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_004_ebnhlz",0,0,6,0,26897,1570,0,7,1], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,26,0,1907,0,0,0,null], ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,27,0,18005,0,0,0,null], ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,28,0,5052,0,0,0,null], ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,37,1,5491,0,0,0,null], - ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,38,0,11294,0,0,0,null], + ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,38,1,10738,0,0,0,null], ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,99,0,2724,0,0,0,null], ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,122,0,3814,0,0,0,null] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,6953,122938],"enemy_1043_zomsbr":[66,2,64,16695,90295],"enemy_1402_tgshd_2":[36,1,35,10022,80628]}, - "hooks": [1,151,6528,191,191,342,369,12466,24,151,13,13,0,9395,0,26,123,120,1,24,0,1,0], - "events": {"atk":191,"deploy":28,"die":31,"dmg":369,"engage":12,"fx":116,"leak":120,"skill":26,"spawn":142,"status":44}, - "fx": {"aoe":7,"burst":1,"displace":12,"expose":64,"pull":12,"summon":7,"volley":13}, - "snaps": "691ad5fa 5cba8432 c52d9f6d 791d3fcc f5b1cc32 3d6075f5 5ef4c19a 53164dcf 2f1a5ea4 d47ebc6f 7a076464 66fa0c1a b8e47a22 3d87a654 faa2ab12 0e9fbf65 f854368c df256b93 9f1da643 8c6a7db9 51ddbd95 c7846e9e" + "enemies": {"enemy_1006_shield_3":[21,0,21,6953,119555],"enemy_1043_zomsbr":[66,3,63,16695,86879],"enemy_1402_tgshd_2":[36,1,35,10022,80628]}, + "hooks": [1,151,6528,186,186,336,362,11435,25,151,13,13,0,9395,0,26,123,119,1,25,0,1,0], + "events": {"atk":186,"deploy":28,"die":32,"dmg":362,"engage":12,"fx":114,"leak":119,"skill":26,"spawn":142,"status":42}, + "fx": {"aoe":7,"burst":1,"displace":11,"expose":64,"pull":11,"summon":7,"volley":13}, + "snaps": "691ad5fa 91e1e114 f563bec0 6ddc350a 5b0a75c6 297369b1 9d924f0f 731afea6 86bb2a3f bdef720e 35e7e9bd bca55a60 b1e0f719 8a801d81 2fd72e97 4683186d 58329cf9 6e109e35 1358c210 ffaa4f2b 3bea76c1 d2d091a8" }, "diy-117": { "about": "5_diy1_a=mgllan/S1 5_diy2_a=mgllan/S2 5_diy1_a=mgllan/S3 5_diy2_b=mgllan/S1 5_diy1_b=mgllan/S2 5_diy2_b=mgllan/S3 5_diy1_b=mgllan/S1/002_mgllan 5_diy2_b=mgllan/S2/002_mgllan 5_diy1_b=mgllan/S3/002_mgllan 5_diy2_b=mgllan/S1/003_mgllan 5_diy1_b=mgllan/S2/003_mgllan 5_diy2_b=mgllan/S3/003_mgllan", @@ -5974,32 +5973,32 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 68, + "killed": 82, "total": 147, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 118, + "rngDraws": 156, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":68,"total":147,"perfect":false,"leaks":79,"leaksUncounted":0,"coins":0,"dmg":425402,"bossDmg":0,"heal":0,"deaths":16,"layerGains":{}}}, + "players": {"p1":{"killed":82,"total":147,"perfect":false,"leaks":65,"leaksUncounted":0,"coins":0,"dmg":535000,"bossDmg":0,"heal":0,"deaths":14,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",2,null,0,0,2,1,6827,2604,0,80,1], - ["p1",2,"op","chess_char_6_diy2_b",2,"uniequip_002_acfend",2085.04,1,4,2,14361,1346,0,132,2], - ["p1",3,"op","chess_char_5_diy1_a",0,null,0,0,166,4,22225,3730,0,92,2], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_002_sharp2",0,0,156,16,106408,4748,0,99,2], - ["p1",5,"op","chess_char_6_diy1_a",2,null,1529,1,172,14,44128,3058,0,45,4], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_acpion",1904,1,171,24,182563,3808,0,54,4], - ["p1",7,"op","chess_char_5_diy1_a",2,null,1154,1,170,1,6563,8078,0,80,0], + ["p1",1,"op","chess_char_6_diy1_a",2,null,0,0,2,1,4910,2604,0,72,1], + ["p1",2,"op","chess_char_6_diy2_b",2,"uniequip_002_acfend",1591.36,1,4,3,16976,1840,0,131,2], + ["p1",3,"op","chess_char_5_diy1_a",0,null,558.8,1,168,7,36184,3171,0,123,3], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_002_sharp2",0,0,156,22,118286,4748,0,108,2], + ["p1",5,"op","chess_char_6_diy1_a",2,null,1529,1,170,7,59160,3058,0,57,3], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_acpion",1904,1,171,26,246360,3808,0,67,5], + ["p1",7,"op","chess_char_5_diy1_a",2,null,1154,1,169,0,10943,6924,0,106,0], ["p1",8,"op","chess_char_5_diy2_b",2,"uniequip_002_acspec",1448,1,1,0,0,0,0,0,0], ["p1",9,"op","chess_char_6_diy1_a",2,null,2638,1,3,0,0,0,0,0,0], ["p1",10,"op","chess_char_6_diy2_b",2,"uniequip_002_acguad",3531,1,5,0,0,0,0,0,0], - ["p1",11,"op","chess_char_5_diy1_a",2,null,1160,1,9,0,17771,0,0,110,2], - ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_002_acsupo",1430,1,10,1,24555,0,0,122,2] + ["p1",11,"op","chess_char_5_diy1_a",2,null,1160,1,9,0,17442,0,0,108,2], + ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_002_acsupo",1430,1,10,1,24739,0,0,120,2] ], - "enemies": {"enemy_1166_dusbr_2":[39,22,17,381,107418],"enemy_1169_duphlx_2":[57,28,29,3024,195834],"enemy_1170_dushld_2":[51,18,32,23967,242247]}, - "hooks": [1,172,6900,1024,1024,4900,5024,0,84,162,19,26,0,27771,5929,73,147,78,1,84,0,0,0], - "events": {"atk":1087,"deploy":25,"die":84,"dmg":4988,"engage":9,"fx":207,"leak":78,"skill":56,"spawn":159,"status":804}, - "fx": {"aoe":90,"displace":10,"dodge":4,"dp":46,"slash":57}, - "snaps": "9fc009d3 b712fd02 dd9e6536 ad3afaa9 5e080f95 8c342958 c6b9d04c 6a6288c5 e4728d4d bdcd36f8 1d15491e 3af989d1 db86f390 2b31bb23 3d3a3c2a 09c7eba6 bfb4bdf6 ca3579cc 1af3c782 ec939b4e 4cc81145 6ef95d94 e8fb67c3" + "enemies": {"enemy_1166_dusbr_2":[39,26,13,738,122423],"enemy_1169_duphlx_2":[57,32,24,1917,223147],"enemy_1170_dushld_2":[51,24,26,23498,309235]}, + "hooks": [1,171,6900,1118,1118,5218,5352,0,96,159,20,25,0,27831,6343,80,147,63,1,96,0,0,0], + "events": {"atk":1218,"deploy":24,"die":96,"dmg":5328,"engage":9,"fx":206,"leak":63,"skill":55,"spawn":159,"status":791}, + "fx": {"aoe":90,"displace":5,"dodge":6,"dp":41,"slash":64}, + "snaps": "026aecb9 bf923d80 209eff84 ab04263b 283e4a33 0b615c4a 01af549d 0ba0a503 12568b8f 4739be63 1d43c70e faa1f476 bf08e2ce 1a762b2b 2cd921eb 71c5feef 45c1991f fdb17887 2f8eaf96 3d489e61 c993e921 1d3f175c 06948658" }, "diy-138": { "about": "6_diy1_a=sharp2 6_diy2_b=sharp2 6_diy1_a=acspec 6_diy2_b=acspec 6_diy1_a=acnipe 6_diy2_b=acnipe 6_diy1_a=accast 6_diy2_b=accast 6_diy1_a=acmedc 6_diy2_b=acmedc 6_diy1_a=acsupo 6_diy2_b=acsupo", diff --git a/test/golden/fields.json b/test/golden/fields.json index d48ca3e4..2c55f091 100644 --- a/test/golden/fields.json +++ b/test/golden/fields.json @@ -23,36 +23,36 @@ "killed": 20, "total": 20, "unspawned": 0, - "bossHpLeft": 757974, - "rngDraws": 450, + "bossHpLeft": 930055, + "rngDraws": 428, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1829160,"bossDmg":1406273,"heal":22241,"deaths":0,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1719718,"bossDmg":1435752,"heal":63732,"deaths":0,"layerGains":{}} + "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1664254,"bossDmg":1264461,"heal":17297,"deaths":2,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1712542,"bossDmg":1405484,"heal":69070,"deaths":0,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",1317.39,1,13,0,0,14130,13618,0,1], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,15,0,0,3434,1310,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,17,3,36610,2365,439,5,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",764.36,1,7,4,473435,974,0,71,1], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1933,1,9,0,0,754,0,0,0], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1219.11,1,19,0,105231,11005,2072,0,5], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,8,659439,0,0,99,10], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,0,0,0,0], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,1,355289,2720,1289,51,51], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",925.86,1,21,1,122388,6297,3048,213,5], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",2193.8,1,13,0,0,12000,12744,0,1], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,15,0,0,3666,1626,0,0], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",2431.19,1,17,2,62485,2404,439,8,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",496.22,1,7,3,298927,1948,0,72,0], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1058.53,1,9,0,0,2954,0,0,0], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,19,2,96978,11988,1604,0,4], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,5,673023,1299,0,89,10], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,1670,0,0,0], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,2,345088,1576,333,51,51], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",0,0,21,1,112724,4407,217,199,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,28,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,22,0,11014,1990,0,10,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,9,846708,23488,0,191,3], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2612.11,1,16,1,75440,1160,0,0,1], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",551.11,1,18,0,0,2133,0,0,0], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,1808,0,134,4], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",1743.26,1,8,0,0,3233,0,0,0], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1395.45,1,10,0,7542,9717,133,0,0], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,1044,6778,10,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2921,0,204,4], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",464.73,1,12,0,290148,4047,0,0,3], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,27,0,0,2964,56821,49,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,8,847854,24671,0,191,3], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,16,1,75440,2505,0,0,1], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",988.63,1,18,0,0,1530,0,0,0], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,2366,0,134,4], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",2886.8,1,8,0,0,0,0,0,0], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1329,1,10,0,0,6419,0,0,0], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,1254,7882,12,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2052,0,204,4], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,12,1,289368,3120,0,0,3], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1279.15,1,27,0,0,6638,61188,51,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], @@ -60,14 +60,14 @@ ["-","~5","device","trap_1105_accrate",null,null,100,1,5,0,0,0,0,0,null], ["-","~6","device","trap_1105_accrate",null,null,100,1,6,0,0,0,0,0,null], ["p2","~1","token","token_10019_nearl2_sword",null,null,8280,0,38,0,3329,0,0,25,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1989.96,0,39,0,6710,0,0,12,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1989.96,0,39,1,6710,0,0,12,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,0,0,49,0,4603,2788,336,7,1], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,51,0,0,0,0,0,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,55,0,3329,0,0,25,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,58,0,39947,928,130,53,1], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,125.89,0,61,0,7780,1864,0,12,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,58,0,40618,0,0,53,1], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,61,1,5370,0,0,12,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,138,0,62,0,0,0,0,0,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,6127.12,0,65,0,3329,593,0,25,null], + ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,65,0,3329,0,0,25,null], ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1442,0,67,0,6040,0,0,12,null], ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,69,0,0,0,0,0,null], ["p1","~6","token","token_10030_mlyss_wtrman",null,null,1442,1,71,0,674,0,0,4,null], @@ -75,15 +75,15 @@ ], "enemies": { "enemy_1005_yokai": [4,4,0,0,13759], - "enemy_1006_shield_2": [14,14,0,26659,601974], + "enemy_1006_shield_2": [14,14,0,25620,601974], "enemy_1061_zomshd": [2,2,0,3356,90856], - "enemy_9013_acstmk": [1,0,0,46873,2842026], - "enemy_9016_acstmr": [8,7,0,0,262] + "enemy_9013_acstmk": [1,0,0,45199,2669945], + "enemy_9016_acstmr": [8,7,0,0,261] }, - "hooks": [1,71,6000,1315,1315,3203,3599,4686,29,40,95,90,9,40549,2884,15,29,0,1,29,0,22,0], - "events": {"atk":1651,"deploy":36,"die":40,"dmg":3315,"engage":19,"fx":656,"heal":392,"skill":185,"spawn":70,"status":709}, - "fx": {"airstrike":4,"beam":54,"blink":1,"bombard":9,"bombardShell":9,"burst":22,"copy":3,"dp":5,"drone":335,"droneLock":17,"drones":3,"finale":1,"firewall":1,"garrisonGrant":1,"lightning":125,"link":1,"lock":9,"radiantSword":4,"shell":8,"slash":1,"snow":5,"split":4,"storm":10,"summon":8,"talent":4,"tide":5,"wanted":7}, - "snaps": "4b23de24 b826ead4 8478a42a 5f198411 d8f2bcc3 2aabeecc d9a8f12b 5625089b 88c141c0 9d5256e8 fa991756 48716941 5922e4cb 8cdc8c3e e587968c b4e9f94f 173fd436 7eae1ec2 3daeae7e 9e00b42a" + "hooks": [1,71,6000,1298,1298,3141,3524,3308,31,42,93,89,0,38997,2827,15,29,0,1,31,0,20,0], + "events": {"atk":1633,"deploy":36,"die":42,"dmg":3245,"engage":19,"fx":639,"heal":411,"skill":182,"spawn":70,"status":697}, + "fx": {"beam":54,"blink":1,"burst":20,"copy":3,"dp":5,"drone":335,"droneLock":17,"drones":3,"finale":1,"firewall":1,"firewallBlock":1,"garrisonGrant":1,"lightning":142,"link":1,"radiantSword":4,"shell":8,"slash":1,"snow":5,"split":4,"storm":10,"summon":8,"talent":4,"tide":4,"wanted":6}, + "snaps": "4b23de24 2521ca6e b1278a47 3ce8e1c1 9955e54c d1c202f8 734b5df6 19e71eda 23a4e796 b120b32c 911e52d6 83c8f372 cf64b071 c6df7c08 aa974f98 c667ccf5 b178bec7 3212121f 02280327 6eb2e18c" }, "boss-boss_1-solo": { "about": "假想敌:胄 solo pool 1800000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -143,75 +143,42 @@ "killed": 8, "total": 8, "unspawned": 0, - "bossHpLeft": 5311560, - "rngDraws": 839, + "bossHpLeft": 5319463, + "rngDraws": 817, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":612448,"bossDmg":313008,"heal":16689,"deaths":0,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":937710,"bossDmg":372608,"heal":6945,"deaths":2,"layerGains":{}} + "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":620083,"bossDmg":312903,"heal":17142,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":922173,"bossDmg":364810,"heal":7380,"deaths":2,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,9,0,183438,1132,0,53,3], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,11,0,3903,11319,305,35,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,7,0,30509,953,294,58,17], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,13,0,10026,0,0,66,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,1,0,79315,0,168,32,8], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,11,0,3903,11998,298,35,1], + ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,7,0,27686,727,209,53,15], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,13,0,11328,0,0,66,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,1,0,79857,0,168,33,9], ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",2418.5,1,3,0,78933,0,0,44,4], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",2769.3,1,17,1,26033,0,0,43,2], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,19,2,168011,1748,1748,55,18], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,5,0,0,0,14119,21,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,15,0,32280,1383,55,35,2], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,19,2,175750,1748,1748,56,19], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,5,0,0,0,14663,21,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,15,0,33154,1383,55,36,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",836.62,1,12,0,0,3919,1500,0,2], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",3545.85,1,51,2,253580,496,458,287,8], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2099.31,1,8,0,4500,1149,865,24,8], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",2671.35,1,52,1,112288,6746,1602,147,13], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,10,0,62072,0,0,54,3], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,2,1,303642,0,0,181,3], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",2671.35,1,52,1,112443,6746,1602,147,13], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",1942.91,1,10,0,62061,1270,435,54,3], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,2,1,300913,0,0,181,3], ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,4,0,0,0,0,0,0], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",1418.27,1,18,1,69028,3331,2517,58,3], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,40,0,44456,1991,2,63,18], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,88144,0,0,57,14], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,75192,0,0,45,14], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], - "enemies": {"enemy_1005_yokai_2":[6,6,0,3179,62190],"enemy_1430_lrrook":[2,2,0,0,802449],"enemy_9017_achunt":[2,0,0,30987,688440]}, - "hooks": [1,50,6000,1312,1325,2789,2834,4850,11,26,131,125,21,35636,978,0,10,0,1,11,0,13,1], - "events": {"atk":1342,"deploy":40,"die":26,"dmg":2826,"engage":17,"fx":602,"heal":43,"skill":256,"spawn":32,"status":489}, - "fx": { - "aoe": 38, - "appear": 2, - "blink": 16, - "burst": 13, - "catShield": 1, - "charge": 8, - "counter": 21, - "crit": 88, - "dilemma": 3, - "disappear": 2, - "dodge": 1, - "explosion": 14, - "frostNova": 18, - "garrisonGrant": 1, - "iceSpike": 39, - "overclock": 2, - "pull": 3, - "quadShot": 2, - "ripple": 13, - "sentry": 6, - "sermon": 1, - "shadowWeave": 11, - "shield": 6, - "soul": 5, - "sp": 11, - "stealth": 8, - "swordRain": 96, - "swordStorm": 13, - "tornado": 3, - "tornadoPulse": 15, - "weightless": 4, - "zone": 138 - }, - "snaps": "7917cfe4 ec53e8ac 09d8b201 823345e1 5d4f2a95 9efdd7ee 56e0addd 78c7726c 4ee3695b 20aee5b5 ba3311c0 d4d127c9 0c500cac d842272b 4cbf4a87 2525db60 e8039c1e 209c57b0 af85310c 92ca4257" + "enemies": {"enemy_1005_yokai_2":[6,6,0,3179,62190],"enemy_1430_lrrook":[2,2,0,0,802449],"enemy_9017_achunt":[2,0,0,32709,680537]}, + "hooks": [1,50,6000,1298,1311,2767,2814,5084,11,26,131,125,21,35553,970,0,10,0,1,11,0,13,0], + "events": {"atk":1328,"deploy":40,"die":26,"dmg":2806,"engage":17,"fx":610,"heal":43,"skill":256,"spawn":32,"status":495}, + "fx": {"aoe":37,"appear":2,"blink":16,"burst":13,"catShield":1,"charge":8,"counter":21,"crit":94,"dilemma":3,"disappear":2,"explosion":14,"frostNova":18,"garrisonGrant":1,"iceSpike":39,"overclock":2,"pull":3,"quadShot":2,"ripple":14,"sentry":6,"sermon":1,"shadowWeave":11,"shield":6,"soul":5,"sp":12,"stealth":8,"swordRain":96,"swordStorm":13,"tornado":3,"tornadoPulse":15,"weightless":4,"zone":140}, + "snaps": "7917cfe4 ec53e8ac 09d8b201 5b976666 fb352402 e042d46d af8197d8 d6f5354b cc8fd3cc 2d7692d5 247523f6 8beb10cb 4ad72128 84d7a8da 2885a2e0 5db4bf51 3b9873b7 2f4ed228 8a9ddb6f 025dc40c" }, "boss-boss_2-solo": { "about": "假想敌:铳 solo pool 3000000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -259,57 +226,57 @@ "round": 14, "seed": 1428555614, "waveId": "act1autochess_h07_03", - "time": 191.33, - "ticks": 5740, + "time": 191.63, + "ticks": 5749, "reason": "cleared", "killed": 19, "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1408, + "rngDraws": 1401, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1598736,"bossDmg":1477507,"heal":4950,"deaths":4,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2585697,"bossDmg":2522493,"heal":40534,"deaths":3,"layerGains":{}} + "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1610484,"bossDmg":1496562,"heal":5599,"deaths":4,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2573949,"bossDmg":2503438,"heal":42751,"deaths":2,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2673,0,1], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2855,0,1], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,11,0,0,0,0,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,1,43,3444,505,43,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1745.65,1,13,2,914910,4480,538,59,8], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",252.98,1,17,4,348597,8106,407,62,3], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,62,0,26511,12270,434,0,3], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,66,2,169698,7389,372,48,3], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,1,32,0,20,15,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,0,38,0,0,10,10], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,95529,0,0,193,5], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,1,39,2533,410,39,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2131.5,1,13,2,920672,4223,452,59,8], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",465.37,1,17,1,347176,7176,595,62,3], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,61,1,26512,14945,799,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,65,2,177434,7516,464,46,3], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,0,46,0,25,21,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,2,52,0,0,13,13], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,95437,0,0,193,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,26,0,0,0,0,0,null], - ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,462835,0,0,197,3], - ["p2",13,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,60,0,25,2767,0,7,1], - ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,57,0,9,3172,480,9,1], + ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,460132,0,0,197,3], + ["p2",13,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,12,1,29,279,0,4,2], + ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,57,0,14,3527,840,14,1], ["p2",15,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6287.75,1,32,0,315064,2551,0,89,3], - ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,7,206450,2551,646,71,4], - ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,1,1392349,6026,1618,341,6], - ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,4850,56,1], - ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,76316,1525,0,135,4], - ["p2",20,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,59,0,103614,1541,0,19,2], - ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2296,32939,56,2], + ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,7,208088,3717,591,71,4], + ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,1,1385539,6026,1856,342,6], + ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,5233,59,1], + ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,76066,1525,0,136,4], + ["p2",20,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,59,1,104821,1541,0,18,2], + ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2354,34231,62,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["-","~4","device","trap_1105_accrate",null,null,100,1,4,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43364,0,0,86,1], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43104,0,0,86,1], ["p2","~1","token","token_10019_nearl2_sword",null,null,8280,0,41,0,9679,0,0,0,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1989.96,0,42,0,3,0,0,3,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1586.2,0,50,0,4,0,0,4,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1586.2,0,50,0,2,0,0,2,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,51,0,9679,0,0,0,null], - ["p1","~1","token","token_10040_siege2_vlion",null,null,4834.05,0,54,0,6,686,0,6,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,55,1,1,0,0,1,null], + ["p1","~1","token","token_10040_siege2_vlion",null,null,4717.87,0,54,0,5,729,0,5,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,55,0,2,0,0,2,null], ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,56,0,0,0,0,0,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,61,0,9679,0,0,0,null], - ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,63,0,0,0,0,0,null], - ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1586.2,0,65,0,0,0,0,0,null] + ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,60,0,4839,0,0,0,null], + ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,62,0,0,0,0,0,null], + ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1586.2,0,64,0,0,0,0,0,null] ], "enemies": { "enemy_1197_sfshu_2": [2,2,0,0,28809], @@ -317,13 +284,13 @@ "enemy_1209_sfden_2": [2,2,0,0,154793], "enemy_1210_msfden_2": [2,2,0,0,386], "enemy_9021_acduml": [1,1,0,0,4000000], - "enemy_9023_acdums": [9,7,0,51573,343] + "enemy_9023_acdums": [9,7,0,51490,343] }, - "hooks": [1,66,5740,1515,1515,4047,4898,2384,27,41,64,59,352,41270,2004,3,22,0,1,26,0,9,0], - "events": {"atk":1799,"deploy":40,"die":41,"dmg":4608,"engage":20,"fx":1249,"heal":429,"skill":123,"spawn":59,"status":880}, + "hooks": [1,65,5749,1527,1527,4018,4874,2597,26,40,68,63,356,42385,2036,2,22,0,1,25,0,9,2], + "events": {"atk":1811,"deploy":39,"die":40,"dmg":4585,"engage":20,"fx":1238,"heal":444,"skill":131,"spawn":59,"status":885}, "fx": { - "airstrike": 131, - "appear": 2, + "airstrike": 123, + "appear": 1, "beam": 11, "blink": 2, "bombard": 69, @@ -331,25 +298,27 @@ "buff": 3, "burst": 9, "copy": 1, - "disappear": 2, - "displace": 1, + "disappear": 1, + "displace": 2, + "dodge": 2, "dp": 5, "drone": 208, "droneLock": 18, "drones": 2, - "explode": 446, - "finale": 1, + "explode": 427, + "extraAttack": 3, + "finale": 2, "firewall": 1, "garrisonGrant": 1, - "lightning": 41, + "lightning": 42, "link": 7, "lock": 69, "lure": 3, - "phase": 43, + "phase": 40, "radiantSword": 3, - "scorchBurst": 1, - "slash": 11, - "snow": 46, + "scorchBurst": 2, + "slash": 22, + "snow": 47, "split": 4, "steal": 6, "storm": 3, @@ -360,7 +329,7 @@ "tide": 3, "wanted": 1 }, - "snaps": "8c6eb9d3 f5f9a5b4 160c191e 00bb0683 dfed73aa 594d60ee 77b49060 2fdffb91 5dbd4597 d841c866 8db47d4e 3d40713d 38282749 d71e8b73 02a1d069 a8056feb 06679af5 803f508c f9ba3dfb aadf1d1d" + "snaps": "8c6eb9d3 f5f9a5b4 deebc1f0 9a9b3a98 117b4fbd d4bf2220 5738ced2 ee5b78e0 e1e68e22 1ab80972 15e77ea7 92e89c14 df05b8c1 e977bd21 25c98814 2ba5d134 84f9daaf 76dfe6e9 ae7de71a 645a1fbc" }, "boss-boss_3-solo": { "about": "假想敌:管 solo pool 2000000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -425,51 +394,51 @@ "time": 200, "ticks": 6000, "reason": "forced", - "killed": 11, + "killed": 13, "total": 14, "unspawned": 0, - "bossHpLeft": 7409377, - "rngDraws": 605, + "bossHpLeft": 7389717, + "rngDraws": 586, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":11,"total":14,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":979196,"bossDmg":339107,"heal":30297,"deaths":17,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":0,"dmg":978164,"bossDmg":651515,"heal":4827,"deaths":19,"layerGains":{}} + "p1": {"killed":13,"total":14,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1121725,"bossDmg":365686,"heal":31791,"deaths":17,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":942104,"bossDmg":644596,"heal":5446,"deaths":19,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",705.31,1,59,4,131873,7528,420,24,1], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1900.22,1,58,0,17700,9171,1117,15,2], - ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,49,0,44334,13392,2872,19,9], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,56,0,16983,9690,38,10,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",792.86,1,61,4,373855,3374,10736,110,15], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,55,1,81328,10164,552,32,4], - ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",0,0,19,0,109465,4097,137,150,4], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1058.29,1,63,1,97795,2559,395,36,12], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,52,0,0,4335,13944,32,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,68,0,105862,4163,87,50,2], - ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2188.83,1,66,0,377,7381,183,1,1], - ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",2149,1,64,0,189683,6159,30,182,7], - ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",1732.75,1,62,0,29484,5607,83,37,9], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,57,0,104682,11074,310,154,6], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,53,0,211676,5907,57,42,4], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,54,0,148737,3584,462,128,2], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,14,0,0,3172,310,0,0], - ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,67,0,64191,5877,2900,74,5], - ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1501.32,1,60,1,69313,2825,348,69,20], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1105.8,1,65,0,160021,2518,143,71,13], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",705.31,1,59,3,132384,7528,420,23,1], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1255.26,1,63,0,15112,8720,1117,13,1], + ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,54,1,70195,14740,3411,17,15], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,57,1,18627,9568,132,10,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",792.86,1,58,4,431347,3267,11818,110,16], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,56,0,83715,10134,655,36,4], + ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",0,0,19,1,118029,4097,137,153,4], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1058.29,1,60,1,138900,2559,395,35,13], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,51,0,0,3684,13571,27,2], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,15,0,113416,4163,137,53,2], + ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2188.83,1,64,0,0,7381,183,0,1], + ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",2149,1,61,0,191635,6914,30,182,7], + ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,44,1,26806,5085,212,33,9], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,55,0,101816,10219,318,151,6], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,52,1,214376,6123,57,43,4], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,53,0,146704,3584,462,127,2], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,14,0,0,3711,310,0,0], + ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,20,0,64191,4894,1615,74,4], + ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,4,0,68165,4105,2116,67,20], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1105.8,1,62,0,128410,2626,143,59,13], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,7,3,17928,766125],"enemy_1521_dslily":[1,0,0,95770,990623]}, - "hooks": [1,66,6000,1164,1243,2884,3011,5758,47,52,120,117,15,33717,1094,14,15,3,1,50,0,31,1], - "events": {"atk":1392,"deploy":51,"die":49,"dmg":2997,"engage":18,"fx":781,"heal":197,"leak":3,"skill":237,"spawn":37,"status":944}, + "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,9,1,13167,852934],"enemy_1521_dslily":[1,0,0,100334,1010283]}, + "hooks": [1,62,6000,1140,1226,3016,3146,6060,49,52,125,124,13,34922,1209,12,15,1,1,50,0,36,1], + "events": {"atk":1362,"deploy":47,"die":51,"dmg":3132,"engage":17,"fx":811,"heal":212,"leak":1,"skill":249,"spawn":37,"status":979}, "fx": { - "aoe": 24, + "aoe": 31, "appear": 7, "blink": 2, - "burst": 31, + "burst": 36, "charge": 9, - "counter": 15, - "crit": 62, + "counter": 13, + "crit": 56, "dilemma": 4, "disappear": 7, "displace": 28, @@ -484,22 +453,22 @@ "ripple": 14, "rockfall": 18, "sentry": 3, - "sermon": 2, + "sermon": 1, "shadowWeave": 4, "shield": 5, - "soul": 4, - "sp": 6, + "soul": 6, + "sp": 14, "stealth": 7, - "swordRain": 35, + "swordRain": 33, "swordStorm": 6, "tentacle": 6, "tide": 5, - "tornado": 5, + "tornado": 4, "tornadoPulse": 20, "weightless": 4, - "zone": 287 + "zone": 307 }, - "snaps": "c2a7999d e9680942 e3840c7b 42c88c80 94a6e7f9 e3adc041 fb0ab7c9 a417daa3 276e9da9 3fe787bd efdfd5a6 be8d612e 6d73c0e0 c042c02d 8eb02031 e24fb236 cdcefb5e 80d6b414 6b9e081e 0da412b8" + "snaps": "e1b26d39 fb345f9c de90aa26 134f050b 934380b5 ef784059 46ed635c 2564cdaf cbc74ae8 40f5a140 960208b3 648097b6 e77fcdaf 8c417f12 aa831fd9 415c03fb dd9d5f58 01e5ab8b c2cc05e5 321d35e6" }, "boss-boss_4-solo": { "about": "盐风主教昆图斯 solo pool 4200000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -549,89 +518,90 @@ "round": 14, "seed": 2302764647, "waveId": "act2autochess_h07_05", - "time": 133.67, - "ticks": 4010, + "time": 135.8, + "ticks": 4074, "reason": "cleared", "killed": 21, "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1068, + "rngDraws": 1020, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1395002,"bossDmg":992386,"heal":27672,"deaths":0,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1093758,"bossDmg":567614,"heal":66447,"deaths":1,"layerGains":{}} + "p1": {"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1410782,"bossDmg":978706,"heal":22540,"deaths":2,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1077978,"bossDmg":581294,"heal":66970,"deaths":2,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,83881,6608,12367,25,2], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",4055.82,1,12,1,89789,2931,42,21,2], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",4279.38,1,14,0,93051,8699,19,39,2], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2028.6,1,1,6,488163,2222,958,42,4], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,1,105530,1370,0,25,2], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",2205.24,1,3,0,19226,8775,554,0,3], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1989.96,1,18,2,217799,4129,453,21,7], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,69010,3091,11264,39,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1824.36,1,20,2,130257,4575,548,22,22], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2612.34,1,9,0,75493,4481,460,93,3], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,72285,6247,12727,25,2], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3967.06,1,12,1,89789,3091,0,21,2], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",4279.38,1,14,1,99557,8853,0,41,2], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",0,0,1,2,508756,1793,0,33,3], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,0,127244,1370,0,27,2], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,3,0,8834,4970,44,0,2], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1720.49,1,18,2,233221,4438,453,17,7], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,59399,3150,8768,39,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1414.51,1,20,4,132261,5021,548,23,23], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2612.34,1,9,1,57943,6501,0,94,3], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,22,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,10,0,12026,1668,0,21,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4677.12,1,69,5,337357,8718,0,94,7], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,0,138400,4725,0,30,3], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",836.8,1,15,0,33928,3917,1672,28,1], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6547.48,1,67,2,194567,12526,0,53,3], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,3,183358,2788,2379,25,2], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4561.13,1,17,0,74662,7836,3907,8,1], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2298,9840,19,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,26615,1236,0,35,3], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,66,0,88959,1541,0,12,2], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,4690,48648,35,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4029.61,1,68,5,330952,10300,0,98,7], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,1,129166,4303,0,24,3], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,15,0,15514,3341,900,15,1], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",5955.52,1,65,5,228364,16542,0,59,3], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,0,172140,1887,1479,25,2], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4561.13,1,17,0,57784,6910,2537,8,1], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2298,8600,17,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,28828,1236,0,37,3], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,67,0,91765,1541,0,11,2], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,6239,53455,36,2], ["p2","~1","token","token_10019_nearl2_sword",null,null,1907.57,0,32,0,8360,6372,0,11,null], ["p1","~1","token","token_10030_mlyss_wtrman",null,null,2301.84,0,36,0,5082,0,0,11,null], ["p1","~1","token","token_10040_siege2_vlion",null,null,2760.11,0,39,0,0,1446,0,0,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6171.28,0,47,0,7553,429,0,0,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1820.54,1,57,0,4744,1079,1008,8,1], - ["p2","~3","token","token_10019_nearl2_sword",null,null,7543.59,0,61,0,0,736,0,0,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,3148,1,63,0,950,2372,0,2,null] + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,348.12,1,57,0,2959,1622,0,7,1], + ["p1","~2","token","token_10040_siege2_vlion",null,null,3064.4,1,63,0,1425,2456,0,3,null], + ["p2","~3","token","token_10019_nearl2_sword",null,null,6070.77,1,66,0,7553,2209,0,0,null] ], "enemies": { "enemy_1010_demon_2": [2,2,0,1410,128995], "enemy_2009_csaudc": [4,4,0,2459,137594], - "enemy_2010_csdcr": [2,2,0,2819,103196], - "enemy_2016_csphtm": [2,2,0,89739,1560000], - "enemy_2017_csphts": [13,13,0,3912,558976] + "enemy_2010_csdcr": [2,2,0,3301,103196], + "enemy_2016_csphtm": [2,2,0,97228,1560000], + "enemy_2017_csphts": [13,13,0,2929,558976] }, - "hooks": [1,67,4010,792,792,2078,2476,3029,25,45,76,63,55,30831,1272,36,23,0,1,25,0,18,82], - "events": {"atk":994,"deploy":44,"die":45,"dmg":2280,"engage":22,"fx":647,"heal":431,"skill":139,"spawn":53,"status":611}, + "hooks": [1,67,4074,776,776,2040,2415,1643,28,47,75,62,40,29419,1290,39,23,0,1,26,0,18,90], + "events": {"atk":976,"deploy":44,"die":47,"dmg":2239,"engage":22,"fx":649,"heal":431,"skill":137,"spawn":53,"status":578}, "fx": { - "airstrike": 19, + "airstrike": 14, "blink": 26, - "bombard": 30, - "bombardShell": 31, + "bombard": 27, + "bombardShell": 27, "burst": 18, "cleanse": 1, "copy": 2, - "dodge": 82, + "displace": 1, + "dodge": 90, "dp": 3, - "drone": 126, - "droneLock": 6, + "drone": 132, + "droneLock": 9, "drones": 2, "emergency": 1, - "explode": 35, - "extraAttack": 12, + "explode": 36, + "extraAttack": 5, "finale": 3, "firewall": 2, "garrisonGrant": 1, - "lightning": 81, + "lightning": 93, "link": 4, - "lock": 36, + "lock": 27, "lure": 2, "palsy": 1, "radiantSword": 3, "scorchBurst": 2, - "shield": 10, - "slash": 28, - "snow": 27, + "shield": 9, + "slash": 29, + "snow": 28, "split": 1, "steal": 1, "storm": 7, @@ -640,10 +610,10 @@ "sunBurst": 6, "talent": 4, "telegraph": 2, - "tide": 3, - "wanted": 8 + "tide": 2, + "wanted": 7 }, - "snaps": "7db84769 7269bb14 debc6927 1fe57af1 cd893fd9 4b9ffc29 a87b92f9 65adf128 79c69642 251697e3 c7f29e14 68a15c0e f27d78d6 6d478d9c" + "snaps": "7db84769 7269bb14 debc6927 1fe57af1 cd893fd9 d8fe99d4 f5588465 b0dfe98b e63df0b4 a84335ab e6831e30 e366c853 d6fa0b19 c4ef1734" }, "boss-boss_5-solo": { "about": "卢西恩,“猩红血钻” solo pool 780000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -707,34 +677,34 @@ "killed": 4, "total": 6, "unspawned": 0, - "bossHpLeft": 7017881, + "bossHpLeft": 7026894, "rngDraws": 570, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":4,"total":6,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":869760,"bossDmg":436648,"heal":2876,"deaths":5,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1033990,"bossDmg":505471,"heal":580,"deaths":19,"layerGains":{}} + "p1": {"killed":4,"total":6,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":870536,"bossDmg":436605,"heal":2876,"deaths":5,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1024201,"bossDmg":496501,"heal":580,"deaths":19,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,3,1,147578,0,0,30,2], ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",3537,1,1,0,0,0,0,0,0], ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,5,1,25423,0,0,0,10], ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",4654.6,1,11,1,4568,0,0,6,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,7,1,303339,0,551,64,13], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,13,0,179149,0,0,76,6], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,7,1,304158,0,551,64,13], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,13,0,179132,0,0,76,6], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,66,0,19506,1629,0,43,2], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,67,0,135206,3222,0,46,14], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,67,0,135181,3222,0,46,14], ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,65,0,2158,3220,2325,3,1], ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,9,0,52833,0,0,38,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,49,0,4798,9646,260,10,1], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",190.91,1,63,0,118842,15240,280,209,6], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2383,1,6,0,0,0,0,0,0], ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,61,0,58463,13682,40,128,7], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,14,0,205534,0,0,117,6], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,14,0,205560,0,0,117,6], ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,8,0,493990,0,0,140,2], ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,12,0,0,0,0,0,0], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,47,0,28737,2232,0,110,5], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,58,0,47100,5967,0,39,9], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,59,0,76526,4878,0,22,4], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,59,0,66710,4878,0,18,4], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], @@ -744,10 +714,10 @@ "enemy_10030_vtwand": [5,5,0,0,0], "enemy_10085_hllevi_2": [2,0,2,0,761019], "enemy_1010_demon": [4,4,0,12402,200612], - "enemy_9032_aclionk": [1,0,0,47314,942119] + "enemy_9032_aclionk": [1,0,0,47314,933106] }, - "hooks": [1,65,6000,1074,1088,2031,2044,359,41,45,91,88,0,30474,660,8,20,2,1,29,0,2,0], - "events": {"atk":1139,"deploy":45,"die":43,"dmg":1988,"engage":15,"fx":618,"heal":11,"leak":2,"skill":179,"spawn":42,"status":942}, + "hooks": [1,65,6000,1070,1084,2027,2040,359,41,45,91,88,0,30474,660,8,20,2,1,29,0,2,0], + "events": {"atk":1135,"deploy":45,"die":43,"dmg":1984,"engage":15,"fx":618,"heal":11,"leak":2,"skill":179,"spawn":42,"status":943}, "fx": { "aoe": 30, "appear": 4, @@ -783,7 +753,7 @@ "weightless": 6, "zone": 260 }, - "snaps": "8ef2441b ee06d28e 0f318fc5 8e4156fd 466da928 f03b4c62 86a1deba 85583d64 215fecf5 ccd39d46 4a08d997 af901ca4 08ece609 76458391 47fbc660 009a9bbe 48624b1a 42116d05 63ab6257 f103fa00" + "snaps": "309fe362 41288d71 fd8d9460 7a7c8681 b6779f32 439f7eae 2221291c 2e75d378 0e200ec0 90b1fcb1 0d7d6e44 6b1f9464 3e30289c 3d6605cf 83e091b6 da3e7520 e7050060 630dbf75 454d0bc9 762024fa" }, "boss-boss_6-solo": { "about": "阿利斯泰尔,帝国余晖 solo pool 3980000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -960,48 +930,48 @@ "killed": 16, "total": 18, "unspawned": 0, - "bossHpLeft": 12585770, + "bossHpLeft": 12588751, "rngDraws": 666, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":16,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2677042,"bossDmg":1550396,"heal":69312,"deaths":17,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":560253,"bossDmg":262771,"heal":9942,"deaths":25,"layerGains":{}} + "p1": {"killed":16,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2679155,"bossDmg":1550396,"heal":69312,"deaths":17,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":557256,"bossDmg":259791,"heal":9942,"deaths":25,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",7814,1,90,1,335665,24097,655,20,3], ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",7074,1,87,0,4861,9337,790,6,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",4348,1,71,2,352602,19433,5661,5,16], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,70,1,48055,29763,5829,84,2], + ["p1",3,"op","chess_char_5_14_b",1,"none",4348,1,71,3,352825,19433,5661,5,16], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,70,0,50770,29763,5820,84,2], ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",0,0,74,5,875533,5355,11555,71,9], ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,75,2,761501,15781,75,35,3], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",3258,1,81,0,5686,3481,223,18,2], ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1855.46,1,80,2,211918,4930,342,30,11], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",3082.61,1,72,0,0,14900,44126,38,4], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,84,2,81221,10225,55,13,2], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",3082.61,1,72,0,0,14900,44136,38,4], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,84,1,80395,10225,55,13,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,76,0,0,8420,223,0,2], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,82,0,27913,14513,155,91,4], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,91,0,6283,14796,2285,9,3], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,94,0,128154,14639,377,60,8], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,94,1,131821,14639,377,60,9], ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,69,1,120204,9521,430,31,3], ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,89,0,14218,3122,0,84,2], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1432.92,1,86,0,76985,4157,348,76,3], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1432.92,1,86,0,77050,4157,348,76,3], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",884.71,1,79,0,60016,5447,1868,33,3], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,60,0,64038,7927,3949,72,22], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,61,0,62441,3559,307,25,4], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,61,0,55712,3559,307,21,4], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], "enemies": { - "enemy_10027_vtsk": [6,4,1,138057,1019681], + "enemy_10027_vtsk": [6,4,1,137810,1021857], "enemy_1005_yokai": [4,4,0,0,10699], "enemy_1229_darmy_2": [8,8,0,6104,294231], - "enemy_9013_acstmk_2": [1,0,0,63941,1814230], + "enemy_9013_acstmk_2": [1,0,0,63941,1811249], "enemy_9014_acstma": [6,5,0,5613,38754], - "enemy_9015_acstmb": [3,2,0,9688,83569], + "enemy_9015_acstmb": [3,2,0,9935,83569], "enemy_9016_acstmr": [8,7,0,0,150] }, - "hooks": [1,92,6000,904,910,2960,3146,7480,72,75,107,101,6,25061,1027,17,36,1,1,61,0,5,9], - "events": {"atk":1083,"deploy":56,"die":74,"dmg":3143,"engage":18,"fx":651,"heal":136,"leak":1,"skill":208,"spawn":58,"status":990}, + "hooks": [1,92,6000,900,906,2963,3149,7480,73,75,108,102,6,25062,1029,17,36,1,1,63,0,5,9], + "events": {"atk":1079,"deploy":56,"die":74,"dmg":3146,"engage":18,"fx":652,"heal":136,"leak":1,"skill":210,"spawn":58,"status":991}, "fx": { "aoe": 42, "appear": 7, @@ -1038,14 +1008,14 @@ "stealth": 4, "summon": 4, "swordRain": 103, - "swordStorm": 8, + "swordStorm": 9, "telegraph": 6, "tornado": 3, "tornadoPulse": 15, "weightless": 3, "zone": 180 }, - "snaps": "cac31b2c d1e28667 87626189 11a56b43 640cf8cf 9a92be69 12784d9a 195ea951 99de9374 65451b7e 90846f89 9bcf64aa 0cf3dfb9 5737ca93 68f962d8 98c8303b e5af0a0e 3c947908 ce14aa80 61dc2e23" + "snaps": "afaad0c6 cbb17d45 015cb153 1cb3711c ba26830d 673d0bd7 694349d6 f4d4034c f1fa580d d6ba5a30 1a2d7093 1bc8b57c f31772eb 796811d5 32ca89eb 77ec45ac 8867b743 29cdd0f0 abd9e3e2 b8cbf512" }, "hidden-boss_8-solo": { "about": "假想敌:胄 solo pool 7200000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -1226,13 +1196,13 @@ "killed": 3, "total": 3, "unspawned": 0, - "bossHpLeft": 1932856, + "bossHpLeft": 1932951, "rngDraws": 128, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":3,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2753803,"bossDmg":867144,"heal":73158,"deaths":5,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":3,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2753660,"bossDmg":867049,"heal":73158,"deaths":5,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,1,1,368359,8434,0,127,4], - ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,3,0,1265,3442,23540,46,35], + ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,3,0,1122,3442,23540,40,35], ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",11263.65,1,33,0,413261,29216,17173,39,5], ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3747,1,7,1,1380629,16819,16926,201,5], ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,9,0,128392,14229,3714,76,3], @@ -1248,15 +1218,15 @@ "enemy_10067_ftsjc": [1,1,0,1161,21565], "enemy_5601_entlec": [6,5,0,0,160038], "enemy_9007_acelem": [2,2,0,632,119439], - "enemy_9017_achunt_2": [1,0,0,32010,867144], - "enemy_9018_actrpa": [1,0,0,14160,440951], - "enemy_9019_actrpb": [1,0,0,19148,445768], - "enemy_9020_actrpc": [1,0,0,13881,698896] + "enemy_9017_achunt_2": [1,0,0,32010,867049], + "enemy_9018_actrpa": [1,0,0,14160,440939], + "enemy_9019_actrpb": [1,0,0,19148,445744], + "enemy_9020_actrpc": [1,0,0,13881,698884] }, - "hooks": [1,36,6000,876,876,3337,7978,7359,13,17,109,104,118,25510,1863,10,13,0,1,120,0,2,0], - "events": {"atk":1327,"deploy":23,"die":17,"dmg":7399,"engage":10,"fx":851,"heal":385,"skill":213,"spawn":25,"status":317}, + "hooks": [1,36,6000,870,870,3331,7966,7359,13,17,109,104,118,25510,1863,10,13,0,1,120,0,2,0], + "events": {"atk":1321,"deploy":23,"die":17,"dmg":7387,"engage":10,"fx":851,"heal":385,"skill":213,"spawn":25,"status":317}, "fx": {"anchor":5,"aoe":3,"beam":22,"burst":2,"candle":6,"charge":7,"dash":12,"downed":1,"ember":2,"explode":1,"healAoe":35,"link":597,"overload":4,"palsy":3,"phase":12,"reborn":1,"shieldBreak":10,"splash":118,"substitute":3,"swap":3,"teleport":4}, - "snaps": "9f379cb4 794e9645 d2f1f9f3 6f045130 3ba3cbda c2dffcd7 002617f9 8eb229f1 44fa10f5 02a4f054 024d05f4 4f2b850e 264e7810 e232b25c fb23ac72 ffe30a9a 966d17a8 f21eca66 c335c5c3 dadd437f" + "snaps": "9f379cb4 794e9645 d2f1f9f3 6f045130 a644a605 3dcabff0 e46972a2 c31f97e6 f96ab5e9 550b50cf 7fc8b816 37d606b0 59ba06be 89d462ce dd5067ad 3bd6cd55 eb0a24fa e22b95bb 1ac00400 fd3ebf77" }, "hidden-boss_10-pair": { "about": "假想敌:管 pair pool 15200000: chess_char_5_19_b chess_char_4_01_b chess_char_5_14_b chess_char_5_17_b chess_char_5_15_b chess_char_5_20_b chess_char_5_21_b chess_char_5_22_b chess_char_5_23_b chess_char_4_02_b | chess_char_4_11_b chess_char_4_04_b chess_char_4_07_b chess_char_4_16_b chess_char_4_09_b chess_char_4_06_b chess_char_4_10_b chess_char_4_12_b chess_char_4_13_b chess_char_4_14_b token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1273,34 +1243,34 @@ "killed": 10, "total": 12, "unspawned": 0, - "bossHpLeft": 14635261, - "rngDraws": 918, + "bossHpLeft": 14607553, + "rngDraws": 831, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":10,"total":12,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":459267,"bossDmg":234580,"heal":65462,"deaths":5,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":520827,"bossDmg":330160,"heal":13987,"deaths":24,"layerGains":{}} + "p1": {"killed":10,"total":12,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":484519,"bossDmg":259343,"heal":55534,"deaths":4,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":523278,"bossDmg":333105,"heal":12378,"deaths":23,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,5,1,8,0,0,4,1], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,9,0,4,135,135,5,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",3804.5,1,15,1,13,4026,4026,3,5], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,17,4,37557,16976,8824,162,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1989,1,66,6,268925,2436,20528,44,10], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,19,0,39201,31941,907,22,2], - ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,63,0,73883,6323,567,181,5], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,3,0,14,0,0,12,5], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,7,0,0,900,30294,38,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,67,0,39662,2415,182,24,2], - ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,59,0,9,7056,313,9,1], - ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,52,0,114391,9692,1390,156,5], - ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,64,0,6168,8119,1447,6,4], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,65,1,64558,18411,1406,159,8], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,54,0,108553,6094,538,33,3], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,12,0,107199,3077,1516,194,3], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,56,0,9951,3760,432,10,1], - ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,51,0,19876,6152,1123,40,3], - ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1670.06,1,58,1,32048,7063,4756,80,17], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,57,0,58074,4319,1067,34,8], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,5,0,0,0,0,0,0], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",3537,1,9,0,0,0,0,0,0], + ["p1",3,"op","chess_char_5_14_b",1,"none",3804.5,1,15,0,8,0,0,0,4], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,17,3,34536,13209,5035,117,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1989,1,64,6,298293,2567,28073,48,12], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,19,0,46582,23818,560,33,3], + ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,65,1,65098,8158,1040,158,5], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,3,0,0,0,0,0,0], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,7,0,0,0,20255,28,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,13,2,40002,2520,572,29,3], + ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,59,0,9,7091,348,9,1], + ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,53,0,118516,9836,1228,166,5], + ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,63,0,7200,8104,1432,12,7], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",443.03,1,62,1,66265,21903,2696,177,7], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,54,0,107181,6074,518,32,3], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,12,0,105514,3015,1454,194,3], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,56,0,9951,3708,380,10,1], + ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,51,0,19547,6722,1387,39,3], + ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1272.51,1,58,0,33198,5042,2337,82,20], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,57,1,55897,3850,598,23,6], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,23,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,24,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1308,58 +1278,56 @@ ], "enemies": { "enemy_1402_tgshd_2": [2,2,0,6812,173864], - "enemy_9010_acpupp": [2,2,0,8972,240778], - "enemy_9021_acduml_2": [1,0,0,1756,564739], - "enemy_9022_acdumm": [1,0,0,2732,0], - "enemy_9023_acdums": [12,10,0,113969,714] + "enemy_9010_acpupp": [2,2,0,8692,240776], + "enemy_9021_acduml_2": [1,0,0,1086,592447], + "enemy_9022_acdumm": [1,0,0,2189,0], + "enemy_9023_acdums": [12,10,0,102073,710] }, - "hooks": [1,65,6000,1089,1207,4470,5144,10933,44,45,88,86,5,25814,1152,16,18,0,1,48,0,41,0], - "events": {"atk":1225,"deploy":45,"die":45,"dmg":4708,"engage":19,"fx":1961,"heal":597,"skill":174,"spawn":42,"status":974}, + "hooks": [1,63,6000,1050,1144,4396,4983,9052,42,43,87,85,0,25484,1138,14,18,0,1,45,0,37,0], + "events": {"atk":1173,"deploy":43,"die":43,"dmg":4612,"engage":15,"fx":1937,"heal":552,"skill":172,"spawn":42,"status":988}, "fx": { - "aoe": 13, + "aoe": 4, "appear": 7, "beam": 22, "blink": 2, - "burst": 41, - "charge": 4, - "counter": 5, - "crit": 109, + "burst": 37, + "charge": 7, + "crit": 102, "dilemma": 3, - "disappear": 9, - "displace": 7, + "disappear": 8, + "displace": 6, "ember": 3, - "explode": 902, - "explosion": 8, + "explode": 880, + "explosion": 6, "expose": 181, - "frostNova": 17, + "frostNova": 20, "garrisonGrant": 1, - "iceSpike": 159, + "iceSpike": 131, "levitate": 6, "overclock": 1, - "phase": 93, + "phase": 94, "pull": 2, "quadShot": 3, "revive": 1, - "ripple": 20, + "ripple": 23, "sentry": 4, - "sermon": 1, "shadowWeave": 5, - "shield": 2, + "shield": 1, "shieldBreak": 8, "slippery": 1, - "sp": 6, + "sp": 7, "splash": 2, "stealth": 5, "summon": 8, - "swordRain": 70, - "swordStorm": 8, + "swordRain": 76, + "swordStorm": 7, "telegraph": 3, "tornado": 3, "tornadoPulse": 14, - "weightless": 2, - "zone": 200 + "weightless": 3, + "zone": 240 }, - "snaps": "f891236c f6672d61 695d2e11 dd4444a7 42309327 9cec6e57 b8fe3b31 cfaa0d6b 4be820e6 693491bb cddbaa3a 1e1a7871 945cbd12 d9b820e0 034525ef 35395d78 56b4abc5 8f47eaee d52f39d7 520c8b02" + "snaps": "f891236c f6672d61 695d2e11 830e2071 8024dd4b 9594349c e4ef8aa5 668bdd9b 71381274 d51252c4 c881ecb5 ad1e27f8 397f5d2c e7fbf6e3 5e771d86 56b6f3bc 2b44355a 7cb1a6e6 4e5f6f28 652ed232" }, "hidden-boss_10-solo": { "about": "假想敌:管 solo pool 7600000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", diff --git a/test/golden/matches.json b/test/golden/matches.json index 9efb0352..0b8b2815 100644 --- a/test/golden/matches.json +++ b/test/golden/matches.json @@ -16,7 +16,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":null,"factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":74740,"virtualMs":68100}, + "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":78277,"virtualMs":68100}, "rng": {"setup":16,"shop":81,"waves":0,"draft":0,"bots":5205,"meta":0}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -29,7 +29,7 @@ {"round":7,"ai_0":[1,27,10,0,0,4,8,"bc01603b",31,"indomShip 2/5, kjeragShip 1/7, preciShip 0/2, sargonShip 0/4, steadShip 2/19",27,27,0,49]}, { "round": 8, - "ai_0": [1,27,11,0,0,4,8,"144e1f0b",44,"deputShip 1/2, emptyShip 1/2, indomShip 0/5, kjeragShip 1/10, preciShip 0/2, sargonShip 0/4, steadShip 2/28, swiftShip 1/2",14,14,0,58] + "ai_0": [1,27,11,0,0,4,8,"dd16cc25",46,"deputShip 1/2, emptyShip 1/2, indomShip 0/5, kjeragShip 1/9, preciShip 0/2, sargonShip 0/4, steadShip 2/31, swiftShip 1/2",14,14,0,58] } ], "players": { @@ -43,9 +43,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 100, - "stats": {"activatedLayers":77,"bossDamage":125260,"dmgDealt":669067,"gold":71,"itemsEquipped":14,"kills":167,"leaks":0,"lpLost":0,"merges":2,"perfectRounds":8,"refreshes":4}, + "stats": {"activatedLayers":79,"bossDamage":121723,"dmgDealt":654940,"gold":71,"itemsEquipped":14,"kills":167,"leaks":0,"lpLost":0,"merges":2,"perfectRounds":8,"refreshes":4}, "lineup": ["2_14_a@12,3","1_13_a@11,3","3_14_a@11,8[5_02_e_b+2_01_e_a]","3_10_a@10,3","3_16_a@10,4[3_03_e_a+2_04_e_a]","5_14_a@10,7[4_08_e_a+4_05_e_a]","3_05_a@10,8","3_20_b@9,8[5_02_e_b+1_01_e_a]"], - "bonds": ["deputShip 2/9","emptyShip 1/6","indomShip 0/5","kjeragShip 1/17","preciShip 0/2","sargonShip 0/8","steadShip 1/39","swiftShip 1/6"] + "bonds": ["deputShip 2/9","emptyShip 1/6","indomShip 0/5","kjeragShip 1/16","preciShip 0/2","sargonShip 0/8","steadShip 1/42","swiftShip 1/6"] } } }, @@ -59,7 +59,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":null,"factions":["ELEMENT","DOT","REFLECTION"]}, - "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":94860,"virtualMs":68100}, + "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":106436,"virtualMs":68100}, "rng": {"setup":16,"shop":161,"waves":0,"draft":0,"bots":5205,"meta":43}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -83,7 +83,7 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 100, - "stats": {"activatedLayers":128,"bossDamage":105140,"dmgDealt":663269,"gold":78,"itemsEquipped":16,"kills":143,"leaks":0,"lpLost":0,"merges":0,"perfectRounds":8,"refreshes":18}, + "stats": {"activatedLayers":128,"bossDamage":93564,"dmgDealt":650377,"gold":78,"itemsEquipped":16,"kills":143,"leaks":0,"lpLost":0,"merges":0,"perfectRounds":8,"refreshes":18}, "lineup": ["3_20_a@12,3[4_07_e_a+3_04_e_b]","2_14_a@12,4","2_05_a@12,6","3_10_a@11,3","4_14_a@11,8[4_02_e_a+4_08_e_a]","1_06_a@10,3[5_02_e_a+2_03_e_a]","1_02_a@10,4[3_08_e_a+2_01_e_b]","4_11_a@10,8[4_04_e_a+1_01_e_a]"], "bonds": ["deputShip 2/40","emptyShip 1/12","kjeragShip 1/28","steadShip 0/26","swiftShip 1/18","victoriaShip 1/30"] } @@ -99,7 +99,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":true,"roundsPassed":15,"hiddenReached":true,"hiddenCleared":true,"reason":"victory","teamLp":26,"bossPoolLeft":0,"virtualMs":112800}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":108935,"virtualMs":112800}, "rng": {"setup":25,"shop":233,"waves":0,"draft":10,"bots":8919,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -133,31 +133,31 @@ }, { "round": 11, - "ai_0": [1,27,12,0,0,5,8,"43abaaad",175,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/43, sargonShip 0/8, siracusaShip 1/80, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/35",24,24,0,96] + "ai_0": [1,27,12,0,0,5,8,"43abaaad",171,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/43, sargonShip 0/8, siracusaShip 1/76, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/35",24,24,0,96] }, { "round": 12, - "ai_0": [1,27,12,0,0,6,8,"f5257e92",211,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/54, sargonShip 0/8, siracusaShip 1/100, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/40",31,31,0,109] + "ai_0": [1,27,12,0,0,6,8,"f5257e92",213,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/54, sargonShip 0/8, siracusaShip 1/102, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/40",31,31,0,109] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"20f861b4",335,"arcaneShip 2/18, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/65, sargonShip 0/8, siracusaShip 1/204, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/45",115,115,0,121] + "ai_0": [1,27,12,0,0,6,8,"20f861b4",331,"arcaneShip 2/18, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/65, sargonShip 0/8, siracusaShip 1/200, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/45",115,115,0,121] } ], "players": { "ai_0": { "alive": true, "victory": true, - "roundsPassed": 15, + "roundsPassed": 14, "eliminatedRound": null, - "lp": 26, + "lp": 0, "bandId": "band_ermengard", "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 400, - "stats": {"activatedLayers":398,"bossDamage":1327500,"dmgDealt":3388979,"gold":144,"itemsEquipped":16,"kills":388,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":18}, + "stats": {"activatedLayers":394,"bossDamage":1218565,"dmgDealt":3286772,"gold":144,"itemsEquipped":16,"kills":388,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":18}, "lineup": ["6_08_a@12,8","1_17_b@11,7","4_14_a@11,8[5_03_e_a]","6_18_a@10,4[3_02_e_a+3_05_e_a]","6_02_a@10,5","4_10_a@10,6[3_02_e_b+3_08_e_b]","1_19_b@10,8[4_05_e_a]","1_08_a@9,9[1_01_e_a+1_02_e_b]"], - "bonds": ["arcaneShip 2/34","kazimierzShip 0/10","kjeragShip 0/2","miraShip 1/3","preciShip 2/79","sargonShip 0/8","siracusaShip 1/224","soloShip 1/3","steadShip 0/2","suntShip 1/0","swiftShip 1/55","yanShip 0/6"] + "bonds": ["arcaneShip 2/34","kazimierzShip 0/10","kjeragShip 0/2","miraShip 1/3","preciShip 2/79","sargonShip 0/8","siracusaShip 1/220","soloShip 1/3","steadShip 0/2","suntShip 1/0","swiftShip 1/55","yanShip 0/6"] } } }, @@ -246,8 +246,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":3046117,"virtualMs":113700}, - "rng": {"setup":25,"shop":254,"waves":0,"draft":42,"bots":8253,"meta":13}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":2646340,"virtualMs":113700}, + "rng": {"setup":25,"shop":254,"waves":0,"draft":42,"bots":8249,"meta":13}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"ai_0":[1,27,4,0,0,1,2,"cc1bac8f",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -260,35 +260,35 @@ }, { "round": 6, - "ai_0": [1,27,9,0,0,3,8,"3b1cee08",42,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/16, sargonShip 0/8, siracusaShip 1/17, soloShip 1/1, steadShip 1/8, suntShip 1/0, swiftShip 0/8",56,56,0,41] + "ai_0": [1,27,9,0,0,3,8,"3b1cee08",44,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/17, sargonShip 0/8, siracusaShip 1/17, soloShip 1/1, steadShip 1/9, suntShip 1/0, swiftShip 0/8",56,56,0,41] }, { "round": 7, - "ai_0": [1,27,10,0,0,4,8,"a80ad2e7",64,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/30, sargonShip 0/8, siracusaShip 1/23, soloShip 1/1, steadShip 1/10, suntShip 1/0, swiftShip 0/8",28,28,0,52] + "ai_0": [1,27,10,0,0,4,8,"a80ad2e7",66,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/31, sargonShip 0/8, siracusaShip 1/23, soloShip 1/1, steadShip 1/11, suntShip 1/0, swiftShip 0/8",28,28,0,52] }, { "round": 8, - "ai_0": [1,27,11,0,0,4,8,"811212e1",89,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/42, sargonShip 0/8, siracusaShip 1/33, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/13",19,19,0,62] + "ai_0": [1,26,11,0,0,4,8,"efbd69c0",90,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/43, sargonShip 0/8, siracusaShip 1/33, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/13",18,19,1,62] }, { "round": 9, - "ai_0": [1,27,12,0,0,4,8,"04feac9c",148,"kazimierzShip 1/20, kjeragShip 0/2, preciShip 1/9, raidShip 1/55, sargonShip 0/8, siracusaShip 1/45, soloShip 1/1, steadShip 0/10, swiftShip 1/18",34,34,0,73] + "ai_0": [1,26,12,0,0,4,8,"dd1c039a",151,"kazimierzShip 1/20, kjeragShip 0/2, preciShip 1/9, raidShip 1/56, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/11, swiftShip 1/18",34,34,0,73] }, { "round": 10, - "ai_0": [1,27,12,0,0,5,8,"24bfb351",197,"kazimierzShip 1/36, kjeragShip 0/2, preciShip 1/18, raidShip 1/72, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/10, swiftShip 1/23",24,24,0,85] + "ai_0": [1,26,12,0,0,5,8,"24bfb351",200,"kazimierzShip 1/36, kjeragShip 0/2, preciShip 1/18, raidShip 1/73, sargonShip 0/8, siracusaShip 1/49, soloShip 1/1, steadShip 0/11, swiftShip 1/23",24,24,0,85] }, { "round": 11, - "ai_0": [1,27,12,0,1,5,8,"4a74f628",256,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/85, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",34,34,0,96] + "ai_0": [1,26,12,0,1,5,8,"adf69e01",260,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/87, sargonShip 0/8, siracusaShip 1/67, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/23",34,34,0,96] }, { "round": 12, - "ai_0": [1,27,13,0,0,6,8,"c9c17eab",334,"arcaneShip 1/0, kazimierzShip 1/84, kjeragShip 0/2, preciShip 1/42, raidShip 1/113, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",31,31,0,111] + "ai_0": [1,26,13,0,0,6,8,"5a5036c8",352,"arcaneShip 1/0, kazimierzShip 1/92, kjeragShip 0/2, preciShip 1/50, raidShip 1/115, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/23",31,31,0,111] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"b6fe7f54",431,"arcaneShip 1/6, kazimierzShip 1/104, kjeragShip 0/2, miraShip 1/3, preciShip 1/60, raidShip 1/133, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/33",115,115,0,125] + "ai_0": [1,26,12,0,0,6,8,"f0a3a8b1",449,"arcaneShip 1/6, kazimierzShip 1/108, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/139, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/33",115,115,0,125] } ], "players": { @@ -302,9 +302,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 425, - "stats": {"activatedLayers":511,"bossDamage":1333883,"dmgDealt":3325553,"gold":151,"itemsEquipped":18,"kills":419,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":21}, - "lineup": ["4_14_b@12,8[5_01_e_a+2_01_e_b]","3_19_a@11,7[3_02_e_b]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,6","6_17_a@10,8[4_10_e_b+4_05_e_a]","1_08_a@9,5[1_01_e_a+1_02_e_a]","5_07_a@9,6","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/18","kazimierzShip 1/104","kjeragShip 0/2","miraShip 1/3","preciShip 1/80","raidShip 1/133","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/10","suntShip 1/0","swiftShip 1/53"] + "stats": {"activatedLayers":529,"bossDamage":1733660,"dmgDealt":3671937,"gold":151,"itemsEquipped":18,"kills":418,"leaks":1,"lpLost":1,"merges":4,"perfectRounds":12,"refreshes":21}, + "lineup": ["3_19_a@11,7[3_02_e_b]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,5","4_14_b@10,6[5_01_e_a+2_01_e_b]","6_17_a@10,8[4_10_e_b+4_05_e_a]","5_07_a@9,5","1_08_a@9,6[1_01_e_a+1_02_e_a]","1_19_b@9,9[3_08_e_a+3_01_e_a]"], + "bonds": ["arcaneShip 1/18","kazimierzShip 1/108","kjeragShip 0/2","miraShip 1/3","preciShip 1/88","raidShip 1/139","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/11","suntShip 1/0","swiftShip 1/53"] } } }, @@ -318,7 +318,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_10","factions":["ELEMENT","DOT","REFLECTION"]}, - "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":252834,"virtualMs":107800}, + "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":178663,"virtualMs":107800}, "rng": {"setup":25,"shop":225,"waves":0,"draft":42,"bots":8430,"meta":87}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -347,23 +347,23 @@ }, { "round": 9, - "ai_0": [1,22,13,0,2,4,8,"afd23664",66,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 2/16, raidShip 1/19, sargonShip 0/4, steadShip 2/15, swiftShip 1/10",31,32,1,77] + "ai_0": [1,21,13,0,1,4,8,"afd23664",64,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 2/16, raidShip 1/18, sargonShip 0/4, steadShip 2/14, swiftShip 1/10",30,32,2,77] }, { "round": 10, - "ai_0": [1,22,14,0,1,5,8,"92d744b0",97,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/35, raidShip 1/25, sargonShip 0/8, steadShip 2/16, swiftShip 1/15",30,30,0,91] + "ai_0": [1,21,13,0,1,5,8,"92d744b0",95,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/35, raidShip 1/24, sargonShip 0/8, steadShip 2/15, swiftShip 1/15",30,30,0,91] }, { "round": 11, - "ai_0": [1,12,13,0,0,5,8,"33cc6155",135,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/54, raidShip 1/30, sargonShip 0/8, steadShip 1/16, swiftShip 1/20, visiShip 1/9",10,24,14,104] + "ai_0": [1,11,13,0,0,5,8,"33cc6155",133,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/54, raidShip 1/29, sargonShip 0/8, steadShip 1/15, swiftShip 1/20, visiShip 1/9",11,24,13,104] }, { "round": 12, - "ai_0": [1,2,14,0,3,6,8,"82d55357",178,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/72, raidShip 1/36, sargonShip 0/8, steadShip 1/17, swiftShip 1/25, visiShip 1/22",31,45,14,116] + "ai_0": [1,1,14,0,3,6,8,"88b3bac2",181,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/77, raidShip 1/35, sargonShip 0/8, steadShip 1/16, swiftShip 1/25, visiShip 1/22",28,45,17,116] }, { "round": 13, - "ai_0": [1,2,15,0,0,6,8,"930b7e8b",202,"arcaneShip 0/8, kazimierzShip 1/22, kjeragShip 1/24, lateranoShip 1/12, maniShip 1/0, preciShip 2/86, raidShip 0/36, sargonShip 0/8, steadShip 1/17, suntShip 1/0, swiftShip 1/41, visiShip 0/26",29,29,0,131] + "ai_0": [1,1,15,0,0,6,8,"930b7e8b",206,"arcaneShip 0/8, kazimierzShip 1/22, kjeragShip 1/24, lateranoShip 1/12, maniShip 1/0, preciShip 2/91, raidShip 0/35, sargonShip 0/8, steadShip 1/16, suntShip 1/0, swiftShip 1/41, visiShip 0/26",29,29,0,131] } ], "players": { @@ -377,9 +377,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 340, - "stats": {"activatedLayers":202,"bossDamage":527166,"dmgDealt":2586900,"gold":141,"itemsEquipped":13,"kills":263,"leaks":35,"lpLost":27,"merges":4,"perfectRounds":9,"refreshes":18}, + "stats": {"activatedLayers":206,"bossDamage":601337,"dmgDealt":2652409,"gold":141,"itemsEquipped":13,"kills":262,"leaks":38,"lpLost":28,"merges":4,"perfectRounds":9,"refreshes":18}, "lineup": ["4_20_a@12,5","2_01_b@12,6[3_11_e_a+4_08_e_a]","6_01_a@12,7[6_09_e_a+4_03_e_a]","1_01_a@11,8[1_05_e_a]","6_11_a@10,3","4_01_a@10,7[2_01_e_a+3_11_e_b]","6_19_a@10,8[4_10_e_a+4_11_e_a]","1_02_b@9,4"], - "bonds": ["arcaneShip 0/8","kazimierzShip 1/22","kjeragShip 1/24","lateranoShip 1/12","maniShip 1/0","preciShip 2/86","raidShip 0/36","sargonShip 0/8","steadShip 1/17","suntShip 1/0","swiftShip 1/41","visiShip 0/26"] + "bonds": ["arcaneShip 0/8","kazimierzShip 1/22","kjeragShip 1/24","lateranoShip 1/12","maniShip 1/0","preciShip 2/91","raidShip 0/35","sargonShip 0/8","steadShip 1/16","suntShip 1/0","swiftShip 1/41","visiShip 0/26"] } } }, @@ -393,8 +393,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":2303334,"virtualMs":107800}, - "rng": {"setup":25,"shop":191,"waves":0,"draft":42,"bots":8022,"meta":6}, + "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":2240767,"virtualMs":107800}, + "rng": {"setup":25,"shop":191,"waves":0,"draft":42,"bots":8025,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"ai_0":[1,27,4,0,0,1,2,"cc1bac8f",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -415,27 +415,27 @@ }, { "round": 8, - "ai_0": [1,23,11,0,0,4,8,"168e9940",90,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/45, sargonShip 0/8, siracusaShip 1/31, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/13",15,19,4,62] + "ai_0": [1,18,11,0,0,4,8,"811212e1",89,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/44, sargonShip 0/8, siracusaShip 1/31, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/13",10,19,9,62] }, { "round": 9, - "ai_0": [1,23,12,0,0,4,8,"7332bfff",154,"kazimierzShip 1/24, kjeragShip 0/2, preciShip 1/9, raidShip 1/61, sargonShip 0/8, siracusaShip 1/41, soloShip 1/1, steadShip 0/12, swiftShip 1/18",34,34,0,73] + "ai_0": [1,18,12,0,0,4,8,"04feac9c",158,"kazimierzShip 1/24, kjeragShip 0/2, preciShip 1/9, raidShip 1/61, sargonShip 0/8, siracusaShip 1/45, soloShip 1/1, steadShip 0/12, swiftShip 1/18",34,34,0,73] }, { "round": 10, - "ai_0": [1,23,12,0,0,5,8,"c76794a5",202,"kazimierzShip 1/40, kjeragShip 0/2, preciShip 1/18, raidShip 1/79, sargonShip 0/8, siracusaShip 1/41, soloShip 1/1, steadShip 0/12, swiftShip 1/23",24,24,0,85] + "ai_0": [1,18,12,0,0,5,8,"044ee349",188,"kazimierzShip 1/32, kjeragShip 0/2, preciShip 1/18, raidShip 1/67, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/12, swiftShip 1/23",24,24,0,85] }, { "round": 11, - "ai_0": [1,19,12,0,1,5,8,"4a74f628",260,"kazimierzShip 1/60, kjeragShip 0/2, preciShip 1/26, raidShip 1/91, sargonShip 0/8, siracusaShip 1/59, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",30,34,4,96] + "ai_0": [1,16,12,0,1,5,8,"9f83eeae",247,"kazimierzShip 1/52, kjeragShip 0/2, preciShip 1/26, raidShip 1/80, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",32,34,2,96] }, { "round": 12, - "ai_0": [1,11,13,0,0,6,8,"c9c17eab",354,"arcaneShip 1/0, kazimierzShip 1/96, kjeragShip 0/2, preciShip 1/50, raidShip 1/119, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",23,31,8,111] + "ai_0": [1,8,13,0,0,6,8,"5a5036c8",341,"arcaneShip 1/0, kazimierzShip 1/88, kjeragShip 0/2, preciShip 1/50, raidShip 1/108, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",23,31,8,111] }, { "round": 13, - "ai_0": [1,5,12,0,0,6,8,"c27bbe57",459,"arcaneShip 1/6, kazimierzShip 1/116, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/147, sargonShip 0/8, siracusaShip 1/85, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",109,115,6,125] + "ai_0": [1,2,12,0,0,6,8,"a2dcf31f",454,"arcaneShip 1/6, kazimierzShip 1/108, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/144, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",109,115,6,125] } ], "players": { @@ -449,9 +449,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 340, - "stats": {"activatedLayers":496,"bossDamage":696666,"dmgDealt":4099361,"gold":137,"itemsEquipped":16,"kills":401,"leaks":22,"lpLost":22,"merges":4,"perfectRounds":9,"refreshes":13}, + "stats": {"activatedLayers":491,"bossDamage":759233,"dmgDealt":4110348,"gold":137,"itemsEquipped":16,"kills":397,"leaks":25,"lpLost":25,"merges":4,"perfectRounds":9,"refreshes":13}, "lineup": ["3_19_a@12,5[3_02_e_b]","4_14_b@12,7[2_01_e_a+5_01_e_a]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,3","5_07_a@10,7","6_17_a@10,8[4_10_e_b]","1_08_a@9,4[1_01_e_a+1_02_e_a]","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/12","kazimierzShip 1/116","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/147","sargonShip 0/8","siracusaShip 1/99","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] + "bonds": ["arcaneShip 1/12","kazimierzShip 1/108","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/144","sargonShip 0/8","siracusaShip 1/105","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] } } }, @@ -532,7 +532,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act2autochess_m04","bossId":"boss_3","hiddenBossId":"boss_8","factions":["FLY","TIMES","DOT"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":37,"bossPoolLeft":0,"virtualMs":119900}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":33,"bossPoolLeft":0,"virtualMs":119900}, "rng": {"setup":25,"shop":413,"waves":0,"draft":40,"bots":21608,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -588,18 +588,18 @@ }, { "round": 11, - "ai_0": [1,39,12,0,0,5,8,"c43f7697",148,"arcaneShip 1/23, egirShip 1/55, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/25",22,23,1,101], + "ai_0": [1,39,12,0,0,5,8,"c43f7697",148,"arcaneShip 1/23, egirShip 1/55, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/25",21,23,2,101], "ai_1": [1,21,12,0,0,5,8,"6a60d378",135,"arcaneShip 1/22, indomShip 1/2, kazimierzShip 1/42, kjeragShip 0/2, preciShip 2/60, sargonShip 0/10, steadShip 1/9, suntShip 1/0, swiftShip 0/11",23,23,0,99] }, { "round": 12, - "ai_0": [1,37,12,0,0,6,8,"e51a7992",183,"arcaneShip 1/26, egirShip 1/82, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/30",103,105,2,114], + "ai_0": [1,37,12,0,0,6,8,"e51a7992",188,"arcaneShip 1/26, egirShip 1/87, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/30",103,105,2,114], "ai_1": [1,16,12,0,0,6,8,"c13a70f2",199,"arcaneShip 2/22, indomShip 0/2, kazimierzShip 1/62, kjeragShip 0/10, preciShip 2/88, sargonShip 0/10, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/27",100,105,5,111] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"eb5334f8",252,"arcaneShip 2/46, egirShip 1/110, preciShip 0/10, raidShip 0/7, sargonShip 0/10, siracusaShip 1/44, skillfulShip 1/16, soloShip 1/6, suntShip 1/0, swiftShip 1/30",24,34,10,126], - "ai_1": [1,10,12,0,2,6,8,"32067aa7",279,"arcaneShip 1/24, indomShip 0/2, kazimierzShip 1/86, kjeragShip 0/10, miraShip 1/0, preciShip 2/120, sargonShip 0/10, siracusaShip 1/6, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/43",28,34,6,124] + "ai_0": [1,27,12,0,0,6,8,"eb5334f8",263,"arcaneShip 2/49, egirShip 1/118, preciShip 0/10, raidShip 0/7, sargonShip 0/10, siracusaShip 1/44, skillfulShip 1/16, soloShip 1/6, suntShip 1/0, swiftShip 1/30",23,34,11,126], + "ai_1": [1,6,12,0,2,6,8,"87853944",263,"arcaneShip 1/24, indomShip 0/2, kazimierzShip 1/78, kjeragShip 0/10, miraShip 1/0, preciShip 2/120, sargonShip 0/10, siracusaShip 1/6, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/35",23,34,11,124] } ], "players": { @@ -610,26 +610,26 @@ "eliminatedRound": null, "lp": 27, "bandId": "band_sarkazb", - "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, + "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":284,"bossDamage":171386,"dmgDealt":2739198,"gold":137,"itemsEquipped":16,"kills":324,"leaks":19,"lpLost":18,"merges":4,"perfectRounds":8,"refreshes":17}, + "stats": {"activatedLayers":295,"bossDamage":176128,"dmgDealt":2744034,"gold":137,"itemsEquipped":16,"kills":321,"leaks":21,"lpLost":18,"merges":4,"perfectRounds":8,"refreshes":17}, "lineup": ["6_16_a@11,8[3_07_e_a]","4_10_b@10,5[3_01_e_a+1_02_e_b]","3_18_a@9,3[4_05_e_a]","5_05_a@9,4","5_13_a@9,5","2_13_a@9,6","3_09_a@9,8[4_07_e_a+1_05_e_b]","1_08_b@9,9[4_03_e_a+4_04_e_a]"], - "bonds": ["arcaneShip 2/60","egirShip 1/110","preciShip 0/10","raidShip 0/7","sargonShip 0/10","siracusaShip 1/52","skillfulShip 1/24","soloShip 1/6","suntShip 1/0","swiftShip 1/32"] + "bonds": ["arcaneShip 2/63","egirShip 1/118","preciShip 0/10","raidShip 0/7","sargonShip 0/10","siracusaShip 1/52","skillfulShip 1/24","soloShip 1/6","suntShip 1/0","swiftShip 1/32"] }, "ai_1": { "alive": true, "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 10, + "lp": 6, "bandId": "band_dusk", "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":295,"bossDamage":1246114,"dmgDealt":3946458,"gold":139,"itemsEquipped":19,"kills":308,"leaks":22,"lpLost":18,"merges":5,"perfectRounds":7,"refreshes":13}, + "stats": {"activatedLayers":279,"bossDamage":1241372,"dmgDealt":3738672,"gold":139,"itemsEquipped":19,"kills":304,"leaks":27,"lpLost":22,"merges":5,"perfectRounds":7,"refreshes":13}, "lineup": ["1_17_b@11,7","4_20_b@11,8[5_02_e_a+1_02_e_a]","4_10_a@10,5","6_19_a@10,7[4_08_e_b+4_06_e_a]","1_19_b@10,8[2_04_e_b+4_05_e_a]","5_02_a@9,7","5_20_a@9,8","1_08_b@9,9"], - "bonds": ["arcaneShip 1/28","indomShip 0/2","kazimierzShip 1/86","kjeragShip 0/10","miraShip 1/0","preciShip 2/120","sargonShip 0/10","siracusaShip 1/18","soloShip 1/0","steadShip 0/9","suntShip 1/0","swiftShip 1/43"] + "bonds": ["arcaneShip 1/28","indomShip 0/2","kazimierzShip 1/78","kjeragShip 0/10","miraShip 1/0","preciShip 2/120","sargonShip 0/10","siracusaShip 1/18","soloShip 1/0","steadShip 0/9","suntShip 1/0","swiftShip 1/35"] } } }, @@ -644,7 +644,7 @@ "boost": null, "setup": {"stageId":"act1autochess_m04","bossId":"boss_4","hiddenBossId":"boss_10","factions":["FLY","TIMES","REFLECTION"]}, "end": {"victory":false,"roundsPassed":12,"hiddenReached":false,"hiddenCleared":false,"reason":"eliminated","teamLp":null,"bossPoolLeft":null,"virtualMs":117800}, - "rng": {"setup":25,"shop":375,"waves":0,"draft":73,"bots":13595,"meta":6}, + "rng": {"setup":25,"shop":365,"waves":0,"draft":73,"bots":13595,"meta":9}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -679,7 +679,7 @@ }, { "round": 7, - "ai_0": [1,25,10,0,0,4,8,"1ec7b320",17,"kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/6, skillfulShip 1/6, soloShip 1/3, steadShip 2/2, swiftShip 0/8",26,28,2,49], + "ai_0": [1,25,10,0,0,4,8,"fbc6374d",17,"kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/6, skillfulShip 1/6, soloShip 1/3, steadShip 2/2, swiftShip 0/8",24,28,4,49], "ai_1": [1,26,11,0,1,4,8,"b417fbf1",19,"arcaneShip 1/8, kazimierzShip 0/2, preciShip 1/5, sargonShip 0/8, skillfulShip 1/6, swiftShip 0/8",28,28,0,54] }, { @@ -694,23 +694,23 @@ }, { "round": 10, - "ai_0": [1,19,16,0,0,5,8,"9b53670a",75,"deputShip 1/4, kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/34, skillfulShip 1/10, soloShip 1/7, steadShip 1/16, suntShip 1/4, swiftShip 0/8",5,8,3,88], + "ai_0": [1,19,16,0,0,5,8,"9b53670a",75,"deputShip 1/4, kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/34, skillfulShip 1/10, soloShip 1/7, steadShip 1/16, suntShip 1/4, swiftShip 0/8",5,8,3,89], "ai_1": [1,26,14,0,4,5,8,"aa0f2565",129,"arcaneShip 2/16, kazimierzShip 0/2, preciShip 1/43, sargonShip 1/52, skillfulShip 1/18, suntShip 1/0, swiftShip 0/8",8,8,0,91] }, { "round": 11, - "ai_0": [1,9,12,0,1,5,8,"9a1f89d4",88,"deputShip 1/6, emptyShip 1/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 1/3, siracusaShip 1/50, skillfulShip 1/12, soloShip 1/9, steadShip 0/16, suntShip 1/6, swiftShip 0/8",13,27,14,100], - "ai_1": [1,16,16,0,2,5,8,"b7d6fa51",183,"arcaneShip 2/26, kazimierzShip 0/2, preciShip 1/64, sargonShip 1/73, skillfulShip 1/20, suntShip 1/0, swiftShip 0/8",13,27,14,108] + "ai_0": [1,9,12,0,1,5,8,"9a1f89d4",88,"deputShip 1/6, emptyShip 1/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 1/3, siracusaShip 1/50, skillfulShip 1/12, soloShip 1/9, steadShip 0/16, suntShip 1/6, swiftShip 0/8",13,27,14,101], + "ai_1": [1,16,16,0,2,5,8,"b7d6fa51",181,"arcaneShip 2/24, kazimierzShip 0/2, preciShip 1/64, sargonShip 1/73, skillfulShip 1/20, suntShip 1/0, swiftShip 0/8",13,27,14,108] }, { "round": 12, - "ai_0": [0,0,13,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/3, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",24,50,26,113], - "ai_1": [1,6,14,0,2,6,8,"41045310",233,"arcaneShip 2/26, kazimierzShip 0/2, preciShip 1/88, sargonShip 1/97, skillfulShip 1/22, suntShip 1/0, swiftShip 0/8",36,50,14,121] + "ai_0": [0,0,13,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/4, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",17,50,33,116], + "ai_1": [1,6,14,0,2,6,8,"fc6b9147",233,"arcaneShip 1/26, kazimierzShip 0/2, preciShip 1/88, sargonShip 1/97, skillfulShip 1/22, soloShip 1/0, suntShip 1/0, swiftShip 0/8",35,50,15,122] }, { "round": 13, - "ai_0": [0,0,0,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/3, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",null,null,null,113], - "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/30, kazimierzShip 0/2, preciShip 0/95, sargonShip 0/104, skillfulShip 0/24, swiftShip 0/8",40,49,9,135] + "ai_0": [0,0,0,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/4, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",null,null,null,116], + "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/34, kazimierzShip 0/2, preciShip 0/94, sargonShip 0/103, skillfulShip 0/24, swiftShip 0/8",6,49,43,134] } ], "players": { @@ -724,9 +724,9 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 2, "reward": 255, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1651834,"gold":113,"itemsEquipped":9,"kills":172,"leaks":62,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1599953,"gold":116,"itemsEquipped":10,"kills":163,"leaks":71,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, "lineup": [], - "bonds": ["deputShip 0/6","emptyShip 0/2","kazimierzShip 0/2","kjeragShip 0/2","raidShip 0/3","siracusaShip 0/52","skillfulShip 0/12","soloShip 0/9","steadShip 0/16","suntShip 0/6","swiftShip 0/8"] + "bonds": ["deputShip 0/6","emptyShip 0/2","kazimierzShip 0/2","kjeragShip 0/2","raidShip 0/4","siracusaShip 0/52","skillfulShip 0/12","soloShip 0/9","steadShip 0/16","suntShip 0/6","swiftShip 0/8"] }, "ai_1": { "alive": false, @@ -738,9 +738,9 @@ "title": {"id":"comment_5","name":"万事俱备","picId":"comment_icon_5","text":"装备配发数量最多"}, "trophies": 3, "reward": 298, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3784936,"gold":135,"itemsEquipped":18,"kills":260,"leaks":38,"lpLost":29,"merges":3,"perfectRounds":9,"refreshes":16}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3145908,"gold":134,"itemsEquipped":16,"kills":227,"leaks":73,"lpLost":30,"merges":2,"perfectRounds":9,"refreshes":15}, "lineup": [], - "bonds": ["arcaneShip 0/30","kazimierzShip 0/2","preciShip 0/95","sargonShip 0/104","skillfulShip 0/24","swiftShip 0/8"] + "bonds": ["arcaneShip 0/34","kazimierzShip 0/2","preciShip 0/94","sargonShip 0/103","skillfulShip 0/24","swiftShip 0/8"] } } }, @@ -786,7 +786,7 @@ "round": 5, "ai_0": [1,23,10,0,0,2,8,"be84400f",34,"deputShip 1/12, indomShip 1/3, kazimierzShip 1/7, skillfulShip 0/5, soloShip 1/2, suntShip 1/2, swiftShip 1/8",53,53,0,34], "ai_1": [1,45,9,0,0,3,8,"1f27df00",13,"kazimierzShip 0/7, swiftShip 1/13, yanShip 0/2",53,53,0,32], - "ai_2": [1,27,9,0,0,3,8,"9bdbc0d9",12,"deputShip 1/2, siracusaShip 1/2, soloShip 1/8, yanShip 0/1",49,53,4,32] + "ai_2": [1,27,9,0,0,3,8,"d675cac3",12,"deputShip 1/2, siracusaShip 1/2, soloShip 1/8, yanShip 0/1",51,53,2,32] }, { "round": 6, @@ -842,7 +842,7 @@ "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, "trophies": 2, "reward": 191, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1678337,"gold":86,"itemsEquipped":8,"kills":221,"leaks":37,"lpLost":30,"merges":4,"perfectRounds":6,"refreshes":12}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1678325,"gold":86,"itemsEquipped":8,"kills":219,"leaks":37,"lpLost":30,"merges":4,"perfectRounds":6,"refreshes":12}, "lineup": [], "bonds": ["deputShip 0/28","indomShip 0/53","kazimierzShip 0/34","siracusaShip 0/24","skillfulShip 0/19","soloShip 0/18","suntShip 0/18","swiftShip 0/66"] }, @@ -870,7 +870,7 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 2, "reward": 255, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3450226,"gold":118,"itemsEquipped":9,"kills":218,"leaks":98,"lpLost":33,"merges":6,"perfectRounds":2,"refreshes":17}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3450237,"gold":118,"itemsEquipped":9,"kills":220,"leaks":96,"lpLost":33,"merges":6,"perfectRounds":2,"refreshes":17}, "lineup": [], "bonds": ["deputShip 0/20","indomShip 0/20","kazimierzShip 0/8","kjeragShip 0/8","siracusaShip 0/142","skillfulShip 0/4","soloShip 0/26","suntShip 0/18","swiftShip 0/14","yanShip 0/1"] } @@ -949,14 +949,14 @@ { "round": 9, "ai_0": [1,26,12,0,0,4,8,"dcbc34d9",119,"deputShip 2/46, kjeragShip 0/7, sargonShip 1/27, steadShip 2/38, visiShip 1/8",30,30,0,75], - "ai_1": [1,45,12,0,0,4,8,"7121c5ba",115,"deputShip 2/18, emptyShip 1/4, preciShip 1/27, sargonShip 0/2, siracusaShip 1/44, swiftShip 1/22",30,30,0,71], + "ai_1": [1,45,12,0,0,4,8,"7121c5ba",117,"deputShip 2/18, emptyShip 1/4, preciShip 1/29, sargonShip 0/2, siracusaShip 1/44, swiftShip 1/22",30,30,0,71], "ai_2": [1,28,12,0,0,4,8,"e97cc791",111,"deputShip 1/6, preciShip 1/31, sargonShip 0/8, siracusaShip 1/54, steadShip 0/16, swiftShip 1/20, yanShip 0/1",30,30,0,73], "ai_3": [1,31,12,0,0,4,8,"db03c900",105,"deputShip 1/14, kjeragShip 0/5, preciShip 1/59, siracusaShip 1/32, yanShip 0/7",30,30,0,76] }, { "round": 10, "ai_0": [1,26,12,0,2,5,8,"3152a1f4",147,"deputShip 2/53, kjeragShip 0/7, sargonShip 1/31, steadShip 1/46, visiShip 1/17",29,29,0,88], - "ai_1": [1,45,12,0,0,5,8,"f74dcafb",151,"deputShip 2/22, emptyShip 1/8, preciShip 1/38, sargonShip 0/2, siracusaShip 1/52, swiftShip 1/31",29,29,0,81], + "ai_1": [1,45,12,0,0,5,8,"f74dcafb",153,"deputShip 2/22, emptyShip 1/8, preciShip 1/40, sargonShip 0/2, siracusaShip 1/52, swiftShip 1/31",29,29,0,81], "ai_2": [1,28,12,0,0,5,8,"982bbf6e",139,"deputShip 1/8, preciShip 1/46, sargonShip 0/8, siracusaShip 1/58, steadShip 0/16, swiftShip 1/27, yanShip 0/1",29,29,0,84], "ai_3": [1,31,12,0,0,5,8,"cd9b063c",118,"deputShip 0/14, kjeragShip 1/5, preciShip 1/73, siracusaShip 1/40, yanShip 0/7",29,29,0,89] }, @@ -965,21 +965,21 @@ "ai_0": [1,26,14,0,2,5,8,"69ce1996",166,"deputShip 1/59, emptyShip 1/2, kjeragShip 0/7, sargonShip 1/33, steadShip 1/48, visiShip 1/24",28,28,0,102], "ai_1": [1,45,12,0,0,5,8,"b6e4200a",185,"deputShip 1/24, emptyShip 1/10, preciShip 1/55, sargonShip 0/2, siracusaShip 1/58, swiftShip 1/38",28,28,0,91], "ai_2": [1,28,12,0,0,5,8,"4247f433",215,"deputShip 1/10, preciShip 1/77, sargonShip 0/8, siracusaShip 1/88, steadShip 0/16, swiftShip 1/40, yanShip 0/1",28,28,0,96], - "ai_3": [1,31,12,0,0,5,7,"70f89a1a",148,"deputShip 0/14, kjeragShip 1/7, preciShip 1/85, siracusaShip 1/56, yanShip 0/7",28,28,0,101] + "ai_3": [1,31,12,0,0,5,7,"70f89a1a",151,"deputShip 0/14, kjeragShip 1/10, preciShip 1/85, siracusaShip 1/56, yanShip 0/7",28,28,0,101] }, { "round": 12, "ai_0": [1,26,14,0,0,6,8,"a03db7f8",190,"deputShip 2/67, emptyShip 1/6, kjeragShip 0/7, sargonShip 1/37, steadShip 1/52, visiShip 1/28",44,46,2,116], "ai_1": [1,45,12,0,0,6,8,"2ef23907",233,"deputShip 1/26, emptyShip 1/12, preciShip 1/86, sargonShip 0/2, siracusaShip 1/64, swiftShip 1/45",46,46,0,104], - "ai_2": [1,28,12,0,0,6,8,"1186c81c",273,"deputShip 2/14, preciShip 1/104, sargonShip 0/8, siracusaShip 1/106, steadShip 0/16, swiftShip 1/49, yanShip 0/1",46,46,0,107], - "ai_3": [1,31,12,0,0,6,7,"948cb792",176,"deputShip 1/16, kjeragShip 0/9, preciShip 1/102, siracusaShip 1/58, yanShip 0/7",46,46,0,113] + "ai_2": [1,28,12,0,0,6,8,"1186c81c",279,"deputShip 2/14, preciShip 1/110, sargonShip 0/8, siracusaShip 1/106, steadShip 0/16, swiftShip 1/49, yanShip 0/1",46,46,0,107], + "ai_3": [1,31,12,0,0,6,7,"948cb792",176,"deputShip 1/16, kjeragShip 0/12, preciShip 1/102, siracusaShip 1/58, yanShip 0/7",46,46,0,113] }, { "round": 13, "ai_0": [1,26,12,0,2,6,8,"aad6c541",158,"deputShip 1/73, emptyShip 1/8, indomShip 1/2, kjeragShip 0/7, preciShip 1/2, sargonShip 1/39, steadShip 0/52, victoriaShip 1/4, visiShip 1/30",32,32,0,129], "ai_1": [1,45,12,0,0,6,8,"a908af7f",281,"deputShip 1/28, emptyShip 1/14, preciShip 2/121, sargonShip 0/2, siracusaShip 1/66, swiftShip 1/52",32,32,0,116], - "ai_2": [1,28,12,0,0,6,8,"2a09b693",322,"deputShip 1/16, preciShip 1/120, sargonShip 0/8, siracusaShip 1/130, steadShip 0/16, swiftShip 1/56, yanShip 0/1",32,32,0,119], - "ai_3": [1,31,12,0,2,6,7,"551cd12a",195,"deputShip 0/18, kjeragShip 0/9, preciShip 2/117, siracusaShip 1/76, visiShip 1/2, yanShip 0/7",32,32,0,126] + "ai_2": [1,28,12,0,0,6,8,"2a09b693",328,"deputShip 1/16, preciShip 1/128, sargonShip 0/8, siracusaShip 1/128, steadShip 0/16, swiftShip 1/56, yanShip 0/1",32,32,0,119], + "ai_3": [1,31,12,0,2,6,7,"551cd12a",195,"deputShip 0/18, kjeragShip 0/12, preciShip 2/117, siracusaShip 1/76, visiShip 1/2, yanShip 0/7",32,32,0,126] } ], "players": { @@ -993,7 +993,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":194,"bossDamage":177715,"dmgDealt":1588497,"gold":144,"itemsEquipped":22,"kills":292,"leaks":2,"lpLost":0,"merges":4,"perfectRounds":12,"refreshes":26}, + "stats": {"activatedLayers":194,"bossDamage":174047,"dmgDealt":1594715,"gold":144,"itemsEquipped":22,"kills":292,"leaks":2,"lpLost":0,"merges":4,"perfectRounds":12,"refreshes":26}, "lineup": ["6_12_a@11,6[3_11_e_a+3_04_e_a]","6_11_a@11,7","3_13_b@11,8[5_01_e_a+3_05_e_a]","2_14_a@10,3","4_07_a@9,3[4_04_e_b+3_08_e_a]","6_06_a@9,4[6_09_e_a+3_02_e_a]","6_08_a@9,8[2_04_e_a+3_01_e_a]","1_06_b@9,9"], "bonds": ["deputShip 1/79","emptyShip 1/10","indomShip 1/7","kjeragShip 0/7","maniShip 1/2","preciShip 2/4","sargonShip 1/41","steadShip 0/52","victoriaShip 1/16","visiShip 1/35","yanShip 0/5"] }, @@ -1007,7 +1007,7 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":307,"bossDamage":289540,"dmgDealt":1755183,"gold":128,"itemsEquipped":19,"kills":283,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":10}, + "stats": {"activatedLayers":307,"bossDamage":253911,"dmgDealt":1706980,"gold":128,"itemsEquipped":19,"kills":283,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":10}, "lineup": ["2_14_b@11,3","5_02_a@11,6[2_01_e_a]","6_08_a@11,7[4_02_e_a+3_06_e_a]","5_10_a@11,8[4_03_e_b+3_04_e_b]","6_20_a@10,3","1_08_b@10,8[1_01_e_b+3_03_e_a]","4_14_a@9,8[4_11_e_a+1_05_e_a]","3_18_a@9,9[5_09_e_a+1_01_e_a]"], "bonds": ["deputShip 1/30","emptyShip 1/16","preciShip 2/134","sargonShip 0/2","siracusaShip 1/68","swiftShip 1/59"] }, @@ -1021,9 +1021,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":362,"bossDamage":208184,"dmgDealt":1636146,"gold":129,"itemsEquipped":22,"kills":295,"leaks":0,"lpLost":0,"merges":3,"perfectRounds":13,"refreshes":22}, + "stats": {"activatedLayers":368,"bossDamage":220894,"dmgDealt":1647388,"gold":129,"itemsEquipped":22,"kills":295,"leaks":0,"lpLost":0,"merges":3,"perfectRounds":13,"refreshes":22}, "lineup": ["4_21_a@11,3","1_07_b@11,7[4_03_e_a+1_01_e_b]","1_13_b@11,8[1_05_e_b+1_05_e_a]","5_20_a@10,3[4_02_e_a+5_01_e_a]","3_18_a@10,4[5_02_e_a+4_06_e_b]","2_16_b@9,4[4_04_e_a+2_01_e_b]","5_02_a@9,8","4_14_a@9,9[3_06_e_a+4_05_e_b]"], - "bonds": ["deputShip 1/18","preciShip 1/127","sargonShip 0/8","siracusaShip 1/154","steadShip 0/16","swiftShip 1/63","yanShip 0/1"] + "bonds": ["deputShip 1/18","preciShip 1/135","sargonShip 0/8","siracusaShip 1/152","steadShip 0/16","swiftShip 1/63","yanShip 0/1"] }, "ai_3": { "alive": true, @@ -1035,9 +1035,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":225,"bossDamage":464561,"dmgDealt":1896222,"gold":141,"itemsEquipped":35,"kills":283,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":14}, + "stats": {"activatedLayers":225,"bossDamage":491148,"dmgDealt":1931985,"gold":141,"itemsEquipped":35,"kills":283,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":14}, "lineup": ["6_18_a@12,8[3_01_e_b]","6_20_a@11,3","6_08_a@11,6","6_12_a@11,7[3_11_e_b+3_01_e_b]","5_20_a@11,8[3_08_e_a+5_02_e_b]","2_16_b@10,8[4_06_e_b]","4_14_b@9,8[6_03_e_a+4_09_e_a]","4_16_a@9,9[4_05_e_a+4_11_e_a]"], - "bonds": ["deputShip 0/18","kjeragShip 0/9","preciShip 2/131","siracusaShip 1/92","visiShip 1/2","yanShip 0/7"] + "bonds": ["deputShip 0/18","kjeragShip 0/12","preciShip 2/131","siracusaShip 1/92","visiShip 1/2","yanShip 0/7"] } } }, @@ -1165,7 +1165,7 @@ "title": null, "trophies": 1, "reward": 149, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":967466,"gold":63,"itemsEquipped":6,"kills":63,"leaks":36,"lpLost":27,"merges":1,"perfectRounds":5,"refreshes":7}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":964637,"gold":63,"itemsEquipped":6,"kills":63,"leaks":36,"lpLost":27,"merges":1,"perfectRounds":5,"refreshes":7}, "lineup": [], "bonds": ["arcaneShip 0/4","kazimierzShip 0/17","kjeragShip 0/2","preciShip 0/21","sargonShip 0/4","steadShip 0/14","swiftShip 0/13"] }, @@ -1193,7 +1193,7 @@ "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, "trophies": 1, "reward": 149, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":800275,"gold":65,"itemsEquipped":8,"kills":56,"leaks":40,"lpLost":26,"merges":1,"perfectRounds":3,"refreshes":3}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":797756,"gold":65,"itemsEquipped":8,"kills":56,"leaks":40,"lpLost":26,"merges":1,"perfectRounds":3,"refreshes":3}, "lineup": [], "bonds": ["arcaneShip 0/20","deputShip 0/8","kjeragShip 0/17","preciShip 0/13","sargonShip 0/2","skillfulShip 0/5","soloShip 0/9","steadShip 0/4"] } @@ -1209,8 +1209,8 @@ "combat": "server", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_1","hiddenBossId":"boss_9","factions":["FLY","DOT","REFLECTION"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":39,"bossPoolLeft":0,"virtualMs":121400}, - "rng": {"setup":25,"shop":511,"waves":0,"draft":34,"bots":18063,"meta":112}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":57,"bossPoolLeft":0,"virtualMs":122900}, + "rng": {"setup":25,"shop":476,"waves":0,"draft":34,"bots":18068,"meta":124}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -1245,38 +1245,38 @@ }, { "round": 7, - "ai_0": [1,29,13,0,2,4,8,"94f5b782",57,"arcaneShip 1/8, deputShip 2/6, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/25, soloShip 1/18, steadShip 0/2",27,27,0,53], + "ai_0": [1,29,13,0,2,4,8,"94f5b782",55,"arcaneShip 1/8, deputShip 2/6, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/23, soloShip 1/18, steadShip 0/2",27,27,0,53], "ai_1": [1,28,11,0,3,4,8,"c6add328",15,"arcaneShip 0/2, kjeragShip 0/13, preciShip 2/7, siracusaShip 1/0, soloShip 1/0, steadShip 1/8",27,27,0,49] }, { "round": 8, - "ai_0": [1,29,13,0,1,4,8,"d070c283",88,"arcaneShip 2/18, deputShip 2/10, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/38, soloShip 1/22, steadShip 0/2",24,24,0,66], + "ai_0": [1,29,13,0,1,4,8,"d070c283",86,"arcaneShip 2/18, deputShip 2/10, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/36, soloShip 1/22, steadShip 0/2",24,24,0,66], "ai_1": [1,28,14,0,0,4,8,"3a8e9585",24,"arcaneShip 0/2, emptyShip 1/0, kjeragShip 1/13, preciShip 1/7, siracusaShip 1/4, soloShip 1/0, steadShip 0/8",13,23,10,63] }, { "round": 9, - "ai_0": [1,29,13,0,0,4,8,"7ca04eb4",151,"arcaneShip 2/38, deputShip 1/12, indomShip 0/8, kjeragShip 0/2, miraShip 1/2, preciShip 0/4, siracusaShip 1/62, soloShip 1/24, steadShip 0/2, suntShip 1/2, victoriaShip 1/11, visiShip 0/8",15,15,0,79], + "ai_0": [1,29,13,0,0,4,8,"7ca04eb4",149,"arcaneShip 2/38, deputShip 1/12, indomShip 0/8, kjeragShip 0/2, miraShip 1/2, preciShip 0/4, siracusaShip 1/60, soloShip 1/24, steadShip 0/2, suntShip 1/2, victoriaShip 1/11, visiShip 0/8",15,15,0,79], "ai_1": [1,28,12,0,0,4,8,"1575876e",76,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/28, preciShip 2/40, siracusaShip 1/8, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",15,15,0,75] }, { "round": 10, - "ai_0": [1,29,12,0,2,5,8,"42c3188f",176,"arcaneShip 2/42, deputShip 1/14, indomShip 0/8, kjeragShip 0/2, miraShip 1/4, preciShip 0/4, siracusaShip 1/72, soloShip 1/26, steadShip 0/2, suntShip 1/4, victoriaShip 1/14, visiShip 0/8",24,24,0,92], + "ai_0": [1,29,12,0,2,5,8,"42c3188f",174,"arcaneShip 2/42, deputShip 1/14, indomShip 0/8, kjeragShip 0/2, miraShip 1/4, preciShip 0/4, siracusaShip 1/70, soloShip 1/26, steadShip 0/2, suntShip 1/4, victoriaShip 1/14, visiShip 0/8",24,24,0,92], "ai_1": [1,28,12,0,0,5,8,"d4d2685b",107,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/61, siracusaShip 1/8, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",23,23,0,86] }, { "round": 11, - "ai_0": [1,29,14,0,0,5,8,"bbafb340",217,"arcaneShip 2/50, deputShip 1/16, indomShip 0/8, kjeragShip 0/2, miraShip 1/6, preciShip 0/4, siracusaShip 1/94, soloShip 1/28, steadShip 0/2, suntShip 1/6, victoriaShip 1/17, visiShip 0/8",23,23,0,107], + "ai_0": [1,29,14,0,0,5,8,"3f588d13",215,"arcaneShip 2/50, deputShip 1/16, indomShip 0/8, kjeragShip 0/2, miraShip 1/6, preciShip 0/4, siracusaShip 1/92, soloShip 1/28, steadShip 0/2, suntShip 1/6, victoriaShip 1/17, visiShip 0/8",22,23,1,107], "ai_1": [1,28,12,0,0,5,8,"164a05d7",130,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/74, siracusaShip 1/18, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",23,23,0,97] }, { "round": 12, - "ai_0": [1,29,12,0,0,6,8,"68ce3885",234,"arcaneShip 2/52, deputShip 1/18, indomShip 0/8, kjeragShip 0/2, miraShip 1/8, preciShip 0/4, siracusaShip 1/98, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",34,47,13,119], - "ai_1": [1,28,12,0,0,6,8,"94e71f96",174,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/98, siracusaShip 1/38, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",46,46,0,108] + "ai_0": [1,29,12,0,0,6,8,"79353407",232,"arcaneShip 2/52, deputShip 1/18, indomShip 0/8, kjeragShip 0/2, miraShip 1/8, preciShip 0/4, siracusaShip 1/96, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",29,46,17,119], + "ai_1": [1,28,12,0,0,6,8,"94e71f96",166,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/98, siracusaShip 1/30, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",46,46,0,108] }, { "round": 13, - "ai_0": [1,19,12,0,0,6,8,"e4c62459",238,"arcaneShip 2/60, deputShip 0/18, indomShip 0/8, kjeragShip 0/2, maniShip 1/0, miraShip 1/8, preciShip 0/4, siracusaShip 1/112, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",22,39,17,129], - "ai_1": [1,20,12,0,0,6,8,"804960b4",215,"arcaneShip 0/4, indomShip 0/8, kjeragShip 1/38, preciShip 2/121, siracusaShip 1/56, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",31,39,8,120] + "ai_0": [1,29,12,0,0,6,8,"30f0ecf3",243,"arcaneShip 2/60, deputShip 0/18, indomShip 0/8, kjeragShip 0/2, maniShip 1/0, miraShip 1/12, preciShip 0/4, siracusaShip 1/104, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/29, visiShip 0/8",39,39,0,132], + "ai_1": [1,28,12,0,0,6,8,"1b87e75a",202,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/122, siracusaShip 1/42, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",39,39,0,122] } ], "players": { @@ -1285,28 +1285,28 @@ "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 19, + "lp": 29, "bandId": "band_doberm", - "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, + "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":283,"bossDamage":779391,"dmgDealt":3811993,"gold":142,"itemsEquipped":20,"kills":276,"leaks":31,"lpLost":11,"merges":4,"perfectRounds":10,"refreshes":23}, - "lineup": ["5_20_a@11,3[4_07_e_a+1_01_e_a]","5_12_a@11,6[6_09_e_a+3_08_e_b]","6_11_a@11,7","2_10_a@10,3[3_05_e_a+3_11_e_b]","4_10_a@10,7[4_09_e_a+1_05_e_a]","1_08_b@10,8[1_02_e_a+5_03_e_a]","4_11_b@9,8[4_08_e_a]","6_07_a@9,9[4_10_e_a+4_05_e_a]"], - "bonds": ["arcaneShip 2/74","deputShip 0/18","indomShip 0/8","kjeragShip 0/2","maniShip 1/0","miraShip 1/12","preciShip 0/4","siracusaShip 1/130","soloShip 1/30","steadShip 0/2","suntShip 1/8","victoriaShip 1/29","visiShip 0/8"] + "stats": {"activatedLayers":287,"bossDamage":269480,"dmgDealt":3592668,"gold":145,"itemsEquipped":24,"kills":282,"leaks":19,"lpLost":1,"merges":3,"perfectRounds":10,"refreshes":21}, + "lineup": ["2_10_a@12,3[3_05_e_a+3_11_e_b]","5_20_a@11,3[4_07_e_a+1_01_e_a]","5_12_a@11,6[4_10_e_a+1_05_e_b]","6_11_a@11,7","1_13_b@10,3[3_09_e_a]","4_10_a@10,7[6_09_e_a+5_09_e_b]","1_08_b@10,8[1_02_e_a+5_03_e_a]","6_07_a@9,9[3_08_e_a+4_05_e_b]"], + "bonds": ["arcaneShip 2/71","deputShip 0/18","indomShip 0/8","kjeragShip 0/2","maniShip 1/0","miraShip 1/16","preciShip 0/4","siracusaShip 1/127","soloShip 1/30","steadShip 0/2","suntShip 1/8","victoriaShip 1/35","visiShip 0/8"] }, "ai_1": { "alive": true, "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 20, + "lp": 28, "bandId": "band_malkie", - "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, + "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":215,"bossDamage":570609,"dmgDealt":4056057,"gold":132,"itemsEquipped":21,"kills":261,"leaks":20,"lpLost":8,"merges":3,"perfectRounds":10,"refreshes":22}, - "lineup": ["3_20_a@12,3[4_03_e_a+5_01_e_a]","5_10_a@11,3[1_01_e_a+3_04_e_b]","5_02_a@11,6","1_17_a@11,7[5_07_e_a+1_02_e_b]","3_11_b@10,3[3_03_e_a+5_02_e_b]","1_08_b@10,8[3_11_e_a+3_06_e_a]","1_02_b@9,4[4_10_e_a+4_08_e_b]","6_18_a@9,9[5_02_e_b+4_11_e_a]"], - "bonds": ["arcaneShip 0/4","indomShip 0/8","kjeragShip 1/38","preciShip 2/121","siracusaShip 1/56","soloShip 1/0","steadShip 0/8","suntShip 1/0","victoriaShip 0/8","visiShip 0/8"] + "stats": {"activatedLayers":218,"bossDamage":1080520,"dmgDealt":4726216,"gold":133,"itemsEquipped":26,"kills":274,"leaks":12,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":19}, + "lineup": ["3_20_b@11,3[3_04_e_b+1_02_e_b]","5_02_a@11,6","3_11_b@11,7[3_03_e_a+5_02_e_b]","6_18_a@10,3[3_06_e_a+5_02_e_b]","6_05_a@10,7[4_08_e_b+5_02_e_b]","1_08_b@10,8[3_11_e_a+5_03_e_a]","5_10_a@9,8[1_01_e_a+5_07_e_a]","6_19_a@9,9[4_10_e_a+4_03_e_a]"], + "bonds": ["arcaneShip 0/2","indomShip 0/8","kazimierzShip 0/8","kjeragShip 1/46","preciShip 2/122","siracusaShip 1/42","soloShip 1/0","steadShip 0/8","suntShip 1/0","swiftShip 1/8","victoriaShip 0/8","visiShip 0/8"] } } }, @@ -1370,7 +1370,7 @@ }, { "round": 12, - "ai_0": [1,399,14,0,0,6,8,"bc6cba50",2478,"arcaneShip 1/310, deputShip 0/300, egirShip 0/300, emptyShip 0/300, indomShip 1/300, investShip 0/300, kazimierzShip 1/308, kjeragShip 0/310, lateranoShip 0/300, maniShip 0/300, miraShip 0/300, preciShip 1/314, raidShip 0/300, sargonShip 0/300, siracusaShip 0/306, skillfulShip 0/316, soloShip 1/307, steadShip 1/310, suntShip 1/300, swiftShip 1/329, victoriaShip 0/300, visiShip 0/300, yanShip 0/300",115,115,0,112] + "ai_0": [1,399,14,0,0,6,8,"bc6cba50",2478,"arcaneShip 1/310, deputShip 0/300, egirShip 0/300, emptyShip 0/300, indomShip 1/300, investShip 0/300, kazimierzShip 1/308, kjeragShip 0/310, lateranoShip 0/300, maniShip 0/300, miraShip 0/300, preciShip 1/314, raidShip 0/300, sargonShip 0/300, siracusaShip 0/306, skillfulShip 0/316, soloShip 1/307, steadShip 1/310, suntShip 1/300, swiftShip 1/329, victoriaShip 0/300, visiShip 0/300, yanShip 0/300",114,114,0,112] }, { "round": 13, @@ -1388,7 +1388,7 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 425, - "stats": {"activatedLayers":2528,"bossDamage":4580000,"dmgDealt":6435237,"gold":174,"itemsEquipped":21,"kills":384,"leaks":1,"lpLost":1,"merges":6,"perfectRounds":12,"refreshes":34}, + "stats": {"activatedLayers":2528,"bossDamage":4580000,"dmgDealt":6435847,"gold":174,"itemsEquipped":21,"kills":383,"leaks":1,"lpLost":1,"merges":6,"perfectRounds":12,"refreshes":34}, "lineup": ["2_01_a@12,6","4_02_b@12,7[5_02_e_a+1_02_e_b]","6_11_a@12,8","1_17_b@11,5[3_08_e_b+2_01_e_b]","1_19_b@11,8[1_05_e_b]","4_14_b@10,4[4_03_e_b+2_01_e_b]","2_18_b@10,5[1_02_e_a+3_04_e_a]","4_07_b@9,9[6_09_e_a+1_02_e_b]"], "bonds": ["arcaneShip 1/314","deputShip 0/300","egirShip 0/300","emptyShip 0/300","indomShip 0/300","investShip 0/300","kazimierzShip 1/308","kjeragShip 0/310","lateranoShip 1/300","maniShip 1/300","miraShip 0/300","preciShip 2/338","raidShip 0/300","sargonShip 0/300","siracusaShip 0/306","skillfulShip 0/316","soloShip 0/307","steadShip 1/313","suntShip 2/300","swiftShip 1/355","victoriaShip 0/300","visiShip 0/300","yanShip 0/300"] } @@ -1482,10 +1482,10 @@ "eliminatedRound": null, "lp": 400, "bandId": "band_sarkazb", - "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, + "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2267,"bossDamage":6786913,"dmgDealt":24304725,"gold":149,"itemsEquipped":23,"kills":291,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, + "stats": {"activatedLayers":2267,"bossDamage":8510947,"dmgDealt":28875636,"gold":149,"itemsEquipped":23,"kills":293,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, "lineup": ["3_16_b@12,8[3_01_e_a+1_01_e_b]","4_09_b@11,5","3_11_b@11,8[3_02_e_a+6_06_e_a]","1_02_b@10,4[1_02_e_a+4_02_e_a]","5_14_a@10,8[3_03_e_a+1_05_e_a]","6_20_a@9,6","3_20_a@9,8[3_07_e_a+3_08_e_a]","6_05_a@9,9[2_04_e_a+5_02_e_b]"], "bonds": ["arcaneShip 0/316","deputShip 1/312","egirShip 0/300","emptyShip 0/300","indomShip 0/300","investShip 0/300","kazimierzShip 0/302","kjeragShip 1/343","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/343","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 0/319","soloShip 1/310","steadShip 1/341","suntShip 1/310","swiftShip 1/308","victoriaShip 0/300","visiShip 0/300","yanShip 0/300"] }, @@ -1496,10 +1496,10 @@ "eliminatedRound": null, "lp": 400, "bandId": "band_doberm", - "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, + "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2301,"bossDamage":7103127,"dmgDealt":23983658,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, + "stats": {"activatedLayers":2301,"bossDamage":5378453,"dmgDealt":19998936,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, "lineup": ["2_10_a@11,5[2_03_e_b+3_09_e_a]","5_03_a@11,8[1_02_e_a+5_02_e_a]","1_06_a@10,3[1_05_e_a+3_02_e_a]","3_16_a@10,4[3_03_e_b+4_04_e_b]","5_06_a@10,8[3_09_e_b+3_09_e_b]","4_21_b@9,6[4_06_e_a+3_10_e_b]","5_02_a@9,8[4_09_e_a+3_06_e_b]","1_17_b@9,9[3_08_e_a+1_01_e_a]"], "bonds": ["arcaneShip 1/327","deputShip 1/318","egirShip 0/300","emptyShip 0/300","indomShip 1/308","investShip 0/300","kazimierzShip 0/300","kjeragShip 0/300","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/404","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 1/308","soloShip 0/310","steadShip 0/323","suntShip 1/304","swiftShip 0/300","victoriaShip 1/332","visiShip 0/300","yanShip 0/305"] } @@ -1515,8 +1515,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":"boss_10","factions":["DOT","INVISIBLE","REFLECTION"]}, - "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":107915,"virtualMs":119900}, - "rng": {"setup":25,"shop":511,"waves":0,"draft":34,"bots":18074,"meta":23}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":30,"bossPoolLeft":0,"virtualMs":121400}, + "rng": {"setup":25,"shop":542,"waves":0,"draft":34,"bots":18059,"meta":26}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -1556,63 +1556,63 @@ }, { "round": 8, - "h_0": [1,28,13,0,0,4,8,"905534ef",50,"arcaneShip 1/4, kazimierzShip 0/8, preciShip 1/9, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/19, yanShip 0/5",15,15,0,64], + "h_0": [1,28,13,0,0,4,8,"905534ef",53,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/9, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/19, yanShip 0/5",15,15,0,64], "ai_0": [1,23,12,0,0,4,8,"01511dde",72,"arcaneShip 0/2, deputShip 0/12, kazimierzShip 0/8, lateranoShip 1/0, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/10, skillfulShip 1/21, suntShip 1/6, swiftShip 1/35",15,15,0,64] }, { "round": 9, - "h_0": [1,28,12,0,0,4,8,"4035df41",63,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/14, siracusaShip 1/18, suntShip 1/0, swiftShip 1/24, yanShip 0/13",17,23,6,76], + "h_0": [1,28,12,0,0,4,8,"92ac83e2",63,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/14, siracusaShip 1/18, suntShip 1/0, swiftShip 1/24, yanShip 0/13",16,23,7,76], "ai_0": [1,23,12,0,0,4,8,"b8494f7f",142,"arcaneShip 0/2, deputShip 1/14, kazimierzShip 0/8, lateranoShip 1/21, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/24, skillfulShip 1/34, suntShip 1/8, swiftShip 1/41",23,23,0,75] }, { "round": 10, - "h_0": [1,28,12,0,0,5,8,"1a942a0c",66,"arcaneShip 0/7, kazimierzShip 0/8, preciShip 1/19, siracusaShip 1/18, skillfulShip 1/0, suntShip 1/0, swiftShip 1/29, yanShip 0/13",31,31,0,88], + "h_0": [1,28,12,0,0,5,8,"dca920d5",80,"arcaneShip 1/12, kazimierzShip 0/8, preciShip 1/21, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/29, yanShip 0/13",30,31,1,88], "ai_0": [1,23,12,0,1,5,8,"f21d9f0c",176,"arcaneShip 0/2, deputShip 1/22, kazimierzShip 0/8, lateranoShip 1/29, miraShip 1/2, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/26, skillfulShip 1/42, suntShip 1/10, swiftShip 1/45",31,31,0,87] }, { "round": 11, - "h_0": [1,28,12,0,2,5,8,"a1840a82",60,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/4, preciShip 0/19, siracusaShip 1/18, skillfulShip 1/0, soloShip 1/0, suntShip 1/0, swiftShip 1/38, yanShip 0/13",20,25,5,102], + "h_0": [1,27,12,0,2,5,8,"def68119",90,"arcaneShip 1/12, kazimierzShip 0/8, miraShip 1/0, preciShip 1/26, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/34, yanShip 0/13",20,25,5,102], "ai_0": [1,23,13,0,0,5,8,"e76ee4ed",224,"arcaneShip 0/2, deputShip 1/30, kazimierzShip 0/8, lateranoShip 1/39, miraShip 1/4, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/40, skillfulShip 1/52, suntShip 1/12, swiftShip 1/47",25,25,0,98] }, { "round": 12, - "h_0": [1,28,14,0,0,6,8,"efcfaab5",123,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/18, preciShip 1/24, siracusaShip 1/34, soloShip 1/0, suntShip 1/0, swiftShip 1/47, yanShip 0/13",15,31,16,116], - "ai_0": [1,23,12,0,1,6,8,"3f2e303b",262,"arcaneShip 0/2, deputShip 1/32, kazimierzShip 0/8, lateranoShip 1/57, miraShip 1/6, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/42, skillfulShip 1/62, suntShip 1/14, swiftShip 1/49",31,31,0,112] + "h_0": [1,27,14,0,0,6,8,"13e7bef4",100,"arcaneShip 1/12, kazimierzShip 0/8, miraShip 1/0, preciShip 1/31, siracusaShip 1/18, suntShip 1/0, swiftShip 1/39, yanShip 0/13",14,31,17,117], + "ai_0": [1,23,12,0,1,6,8,"4c2311f2",262,"arcaneShip 0/2, deputShip 1/32, kazimierzShip 0/8, lateranoShip 1/57, miraShip 1/6, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/42, skillfulShip 1/62, suntShip 1/14, swiftShip 1/49",31,31,0,112] }, { "round": 13, - "h_0": [1,18,12,0,2,6,8,"ae30a774",187,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/26, preciShip 1/48, sargonShip 1/24, siracusaShip 1/38, suntShip 1/0, swiftShip 1/51, yanShip 0/13",15,57,42,129], - "ai_0": [1,13,13,0,2,6,8,"38248b3d",202,"arcaneShip 0/2, deputShip 0/32, kazimierzShip 0/8, lateranoShip 1/71, miraShip 1/6, preciShip 1/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/54, skillfulShip 0/68, suntShip 1/14, swiftShip 1/55",10,57,47,127] + "h_0": [1,17,12,0,0,6,8,"b622b233",158,"arcaneShip 1/18, emptyShip 1/0, kazimierzShip 0/8, miraShip 1/0, preciShip 2/42, raidShip 1/24, siracusaShip 1/30, suntShip 1/0, swiftShip 1/44, yanShip 0/13",15,57,42,129], + "ai_0": [1,13,13,0,2,6,8,"e0005cff",264,"arcaneShip 0/2, deputShip 0/32, kazimierzShip 0/8, lateranoShip 1/71, miraShip 1/6, preciShip 0/2, raidShip 1/2, sargonShip 0/2, siracusaShip 1/54, skillfulShip 1/68, suntShip 1/14, swiftShip 1/49",37,57,20,126] } ], "players": { "h_0": { "alive": true, - "victory": false, - "roundsPassed": 13, + "victory": true, + "roundsPassed": 14, "eliminatedRound": null, - "lp": 0, + "lp": 17, "bandId": "band_amedic", - "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, - "trophies": 3, - "reward": 320, - "stats": {"activatedLayers":219,"bossDamage":248468,"dmgDealt":2618336,"gold":145,"itemsEquipped":18,"kills":245,"leaks":69,"lpLost":10,"merges":6,"perfectRounds":9,"refreshes":24}, - "lineup": ["3_13_b@12,3","5_10_a@12,7[1_02_e_b]","5_15_a@11,3[3_11_e_a]","5_02_a@11,8","3_19_b@10,3[6_01_e_b]","1_08_b@10,7[4_11_e_b+4_02_e_a]","4_16_a@10,8[4_03_e_b+3_07_e_a]","6_05_a@9,8[3_01_e_a+1_01_e_a]"], - "bonds": ["arcaneShip 0/11","kazimierzShip 0/16","kjeragShip 0/8","miraShip 1/30","preciShip 1/52","sargonShip 1/24","siracusaShip 1/44","soloShip 1/0","suntShip 1/0","swiftShip 1/69","yanShip 0/13"] + "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, + "trophies": 4, + "reward": 400, + "stats": {"activatedLayers":134,"bossDamage":348609,"dmgDealt":2710861,"gold":139,"itemsEquipped":18,"kills":251,"leaks":72,"lpLost":11,"merges":5,"perfectRounds":8,"refreshes":23}, + "lineup": ["5_10_a@12,3[1_02_e_b+6_01_e_a]","6_16_a@12,7","5_20_a@11,3[1_01_e_a+3_11_e_a]","4_14_b@11,8[3_05_e_a+1_02_e_b]","6_12_a@10,3[4_03_e_a+2_01_e_a]","5_07_a@10,7","4_16_a@10,8[4_03_e_b+3_07_e_a]","1_17_b@9,8"], + "bonds": ["arcaneShip 2/24","emptyShip 1/0","kazimierzShip 0/8","miraShip 1/0","preciShip 2/52","raidShip 1/24","siracusaShip 1/34","suntShip 1/0","swiftShip 0/44","yanShip 0/13"] }, "ai_0": { "alive": true, - "victory": false, - "roundsPassed": 13, + "victory": true, + "roundsPassed": 14, "eliminatedRound": null, - "lp": 0, + "lp": 13, "bandId": "band_chiave", - "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, - "trophies": 3, - "reward": 320, - "stats": {"activatedLayers":163,"bossDamage":423617,"dmgDealt":3743301,"gold":141,"itemsEquipped":21,"kills":274,"leaks":47,"lpLost":10,"merges":6,"perfectRounds":12,"refreshes":19}, - "lineup": ["6_12_a@12,3","5_10_a@12,7","3_21_b@11,3[1_05_e_b+4_08_e_b]","5_20_a@11,8[3_08_e_b+3_07_e_b]","3_01_b@10,3[5_09_e_a+6_05_e_a]","4_16_a@10,7[4_11_e_a+4_02_e_a]","6_06_a@10,8","6_01_a@9,8"], - "bonds": ["arcaneShip 0/2","deputShip 0/32","emptyShip 1/0","kazimierzShip 0/8","lateranoShip 1/79","miraShip 1/6","preciShip 1/2","raidShip 0/2","sargonShip 0/2","siracusaShip 1/62","skillfulShip 0/68","suntShip 1/14","swiftShip 0/55","visiShip 1/0"] + "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, + "trophies": 4, + "reward": 400, + "stats": {"activatedLayers":311,"bossDamage":431391,"dmgDealt":4178804,"gold":139,"itemsEquipped":20,"kills":303,"leaks":20,"lpLost":10,"merges":8,"perfectRounds":12,"refreshes":24}, + "lineup": ["3_21_b@12,3[1_05_e_b+1_01_e_a]","5_20_a@12,7","3_01_b@11,3[6_05_e_a+2_01_e_a]","1_13_b@11,8","4_10_b@10,3[3_08_e_a]","4_16_a@10,7[4_11_e_a+4_02_e_a]","6_17_a@10,8[4_04_e_a]","6_01_a@9,8","4_21_a@9,9"], + "bonds": ["arcaneShip 0/2","deputShip 1/34","kazimierzShip 0/8","lateranoShip 1/87","miraShip 1/14","preciShip 0/2","raidShip 1/4","sargonShip 0/2","siracusaShip 1/80","skillfulShip 1/76","suntShip 1/16","swiftShip 0/49"] } }, "standIns": { @@ -1627,10 +1627,10 @@ [7,"3_18_a→char_609_acguad 4_16_a→char_615_acspec"], [8,"3_18_a→char_609_acguad 4_16_a→char_615_acspec"], [9,"3_18_a→char_609_acguad 4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], - [10,"3_18_a→char_609_acguad 4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], + [10,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], [11,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], - [12,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 6_05_a→char_611_acnipe"], - [13,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 6_05_a→char_611_acnipe"] + [12,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 5_20_a→char_614_acsupo"], + [13,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 5_20_a→char_614_acsupo"] ] } }, @@ -1645,7 +1645,7 @@ "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_7","hiddenBossId":"boss_10","factions":["ELEMENT","INVISIBLE","REFLECTION"]}, "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":55,"bossPoolLeft":0,"virtualMs":119900}, - "rng": {"setup":25,"shop":617,"waves":0,"draft":34,"bots":15731,"meta":12}, + "rng": {"setup":25,"shop":617,"waves":0,"draft":34,"bots":15731,"meta":11}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"h_0":[1,27,4,0,0,5,1,"3e4697a0",0,"",5,5,0,3],"ai_0":[1,28,4,0,0,1,2,"a1734bc6",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -1693,12 +1693,12 @@ }, { "round": 12, - "h_0": [1,27,12,0,2,6,8,"4ad2225f",388,"preciShip 2/32, raidShip 1/80, sargonShip 1/140, steadShip 1/40, victoriaShip 1/40, visiShip 1/56",33,33,0,112], + "h_0": [1,27,12,0,2,6,8,"4ad2225f",392,"preciShip 2/32, raidShip 1/84, sargonShip 1/140, steadShip 1/44, victoriaShip 1/38, visiShip 1/54",33,33,0,112], "ai_0": [1,28,12,0,2,6,8,"3482ec70",113,"kjeragShip 0/2, miraShip 1/12, raidShip 1/25, sargonShip 0/2, siracusaShip 1/56, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/20, yanShip 0/21",21,33,12,114] }, { "round": 13, - "h_0": [1,27,14,0,2,6,8,"e9d4c984",452,"preciShip 2/56, raidShip 1/101, sargonShip 1/182, steadShip 0/40, suntShip 1/0, victoriaShip 1/46, visiShip 1/67",50,50,0,125], + "h_0": [1,27,14,0,0,6,8,"e9d4c984",438,"preciShip 2/56, raidShip 1/103, sargonShip 1/182, steadShip 0/44, suntShip 1/0, victoriaShip 1/38, visiShip 1/59",50,50,0,125], "ai_0": [1,28,14,0,0,6,8,"53bc4bba",184,"arcaneShip 1/16, kjeragShip 0/2, miraShip 0/12, raidShip 1/30, sargonShip 0/2, siracusaShip 1/72, skillfulShip 1/8, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/25, yanShip 1/33",29,50,21,127] } ], @@ -1713,9 +1713,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":468,"bossDamage":1141856,"dmgDealt":5122032,"gold":139,"itemsEquipped":26,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, - "lineup": ["6_08_a@12,8[5_01_e_a+3_08_e_a]","5_02_a@11,8[3_11_e_a+5_01_e_b]","6_05_a@10,6[2_01_e_b+3_08_e_b]","4_04_a@10,7[4_11_e_a]","4_23_b@10,8","5_diy1_a@9,6[3_01_e_a+4_04_e_b]","6_07_a@9,8[4_05_e_a+3_04_e_a]","3_05_b@9,9[4_02_e_b]"], - "bonds": ["preciShip 2/56","raidShip 1/106","sargonShip 1/182","steadShip 0/40","suntShip 1/0","victoriaShip 1/52","visiShip 1/72"] + "stats": {"activatedLayers":454,"bossDamage":1136590,"dmgDealt":5116869,"gold":137,"itemsEquipped":25,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, + "lineup": ["6_08_a@12,8[5_01_e_a+3_08_e_a]","5_02_a@11,8[3_11_e_a+5_01_e_b]","6_05_a@10,6[2_01_e_b+3_08_e_b]","4_04_a@10,7[4_11_e_a]","4_23_b@10,8","5_diy1_a@9,6[3_01_e_a+4_04_e_b]","6_07_a@9,8[3_04_e_a]","3_05_b@9,9[4_02_e_b]"], + "bonds": ["preciShip 2/56","raidShip 1/108","sargonShip 1/182","steadShip 0/44","suntShip 1/0","victoriaShip 1/44","visiShip 1/64"] }, "ai_0": { "alive": true, @@ -1727,7 +1727,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":240,"bossDamage":433144,"dmgDealt":3036747,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, + "stats": {"activatedLayers":240,"bossDamage":438410,"dmgDealt":3041910,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, "lineup": ["6_16_a@12,8[2_01_e_a]","2_04_a@11,7","5_12_a@11,8[1_05_e_b+3_03_e_b]","5_20_b@10,6[1_01_e_a+3_11_e_a]","3_03_b@10,8[3_02_e_a+4_04_e_a]","4_16_a@9,7[3_07_e_a+4_08_e_a]","1_08_b@9,8[1_02_e_a+4_06_e_a]","4_04_a@9,9[4_11_e_a+4_12_e_a]"], "bonds": ["arcaneShip 1/28","kjeragShip 0/2","miraShip 0/12","raidShip 1/35","sargonShip 0/2","siracusaShip 1/92","skillfulShip 1/16","soloShip 1/0","steadShip 0/2","suntShip 1/0","visiShip 1/30","yanShip 1/39"] } diff --git a/test/golden/roster.json b/test/golden/roster.json index 0b606e69..d66021ac 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -24,47 +24,47 @@ "total": 31, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 63, + "rngDraws": 59, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":26,"total":31,"perfect":false,"leaks":5,"leaksUncounted":0,"coins":8,"dmg":178506,"bossDmg":0,"heal":12998,"deaths":6,"layerGains":{}}}, + "players": {"p1":{"killed":26,"total":31,"perfect":false,"leaks":5,"leaksUncounted":0,"coins":8,"dmg":175893,"bossDmg":0,"heal":12146,"deaths":6,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_1_02_a",1,null,3115.05,1,7,0,0,792,0,0,1], - ["p1",2,"op","chess_char_1_04_a",1,null,2758.75,1,9,5,21996,544,0,44,2], - ["p1",3,"op","chess_char_1_10_a",0,null,1171.3,1,48,1,2993,2147,2862,24,13], - ["p1",4,"op","chess_char_1_08_a",1,null,0,0,12,4,27726,8360,0,27,2], + ["p1",1,"op","chess_char_1_02_a",1,null,3413.8,1,7,0,0,470,0,0,1], + ["p1",2,"op","chess_char_1_04_a",1,null,2758.75,1,9,3,22365,259,0,44,2], + ["p1",3,"op","chess_char_1_10_a",0,null,600.05,1,48,1,2231,2387,2541,20,13], + ["p1",4,"op","chess_char_1_08_a",1,null,0,0,12,7,30185,9333,0,31,2], ["p1",5,"op","chess_char_1_12_a",1,null,0,0,15,3,21392,5549,1509,23,1], - ["p1",6,"op","chess_char_1_01_a",1,null,1403.75,1,4,3,9478,0,0,21,1], + ["p1",6,"op","chess_char_1_01_a",1,null,1403.75,1,4,3,10421,0,0,23,1], ["p1",7,"op","chess_char_1_03_a",1,null,964.63,1,5,0,0,898,0,0,0], - ["p1",8,"op","chess_char_1_06_a",1,null,0,0,11,4,14905,2765,5774,37,1], + ["p1",8,"op","chess_char_1_06_a",1,null,0,0,11,2,14672,1854,5358,36,1], ["p1",9,"op","chess_char_1_07_a",0,null,0,0,13,4,17329,2979,0,27,0], - ["p1",10,"op","chess_char_1_09_a",1,null,2032.5,1,6,1,25161,5400,0,23,1], + ["p1",10,"op","chess_char_1_09_a",1,null,2152.5,1,6,0,25109,5400,0,23,1], ["p1",11,"op","chess_char_1_13_a",1,null,0,0,14,0,11348,4262,0,25,1], - ["p1",12,"op","chess_char_1_14_a",1,null,997.48,1,8,1,26177,2355,0,15,1], + ["p1",12,"op","chess_char_1_14_a",1,null,1058.43,1,8,3,20842,1959,0,15,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], - ["p1","~1","token","char_605_cmedic",null,null,1202,1,16,0,0,0,2853,32,2] + ["p1","~1","token","char_605_cmedic",null,null,1202,1,16,0,0,0,2737,32,2] ], "enemies": { "enemy_10001_trslim": [1,1,0,9,4320], - "enemy_1005_yokai_3": [1,1,0,6138,28800], + "enemy_1005_yokai_3": [1,1,0,5873,28800], "enemy_1010_demon_2": [1,1,0,3684,14400], "enemy_1026_aghost": [1,1,0,0,3648], - "enemy_1112_emppnt_2": [1,0,0,0,8001], - "enemy_1116_liprr": [18,17,0,283,91496], - "enemy_1168_dumage": [1,1,0,1384,4320], + "enemy_1112_emppnt_2": [1,0,0,0,7519], + "enemy_1116_liprr": [18,17,0,265,90996], + "enemy_1168_dumage": [1,1,0,1621,4320], "enemy_1198_msfshu_2": [1,1,0,0,4], "enemy_1229_darmy_2": [1,1,0,669,5280], - "enemy_1288_duskls": [1,1,0,251,4805], - "enemy_1381_winman": [1,1,0,13,5568], - "enemy_1500_skulsr": [1,0,0,720,4020], - "enemy_2004_balloon": [1,0,0,0,3844], + "enemy_1288_duskls": [1,1,0,396,4805], + "enemy_1381_winman": [1,1,0,26,5568], + "enemy_1500_skulsr": [1,0,0,983,3307], + "enemy_2004_balloon": [1,0,0,0,2927], "enemy_9010_acpupp": [1,0,0,0,0] }, - "hooks": [1,48,2700,375,375,667,669,326,32,32,26,24,16,15535,115,29,31,0,1,33,0,0,0], - "events": {"atk":419,"bounty":4,"deploy":14,"die":32,"dmg":669,"engage":10,"fx":76,"heal":322,"skill":51,"spawn":47,"status":128}, - "fx": {"aoe":2,"bombard":8,"bombardShell":9,"counter":15,"crit":15,"dp":2,"ember":1,"explode":6,"heal":13,"phase":1,"summon":1,"taunt":1,"telegraph":1,"zone":1}, - "snaps": "4fb2b17d c3ab03ad ba4fbecd be5ad383 5c83697d 2c7bd427 95651ac0 d4f0d811 4c663319" + "hooks": [1,48,2700,377,377,664,666,325,32,32,26,23,16,15660,113,30,31,0,1,33,0,0,0], + "events": {"atk":423,"bounty":4,"deploy":14,"die":32,"dmg":666,"engage":10,"fx":76,"heal":321,"skill":50,"spawn":47,"status":134}, + "fx": {"aoe":2,"bombard":8,"bombardShell":9,"counter":15,"crit":16,"dp":2,"ember":1,"explode":5,"heal":12,"liberate":1,"phase":1,"summon":1,"taunt":1,"telegraph":1,"zone":1}, + "snaps": "4fb2b17d c3ab03ad ba4fbecd be5ad383 5c83697d e9741d62 82d0eeff f215e669 22d6d8d7" }, "roster-002": { "about": "pass 0 band 2: chess_char_1_02_b chess_char_1_20_a chess_char_1_04_b chess_char_1_08_b chess_char_1_18_a chess_char_1_19_a chess_char_1_17_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_1_07_b chess_char_1_09_b", @@ -142,22 +142,22 @@ "rngDraws": 59, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":83,"total":85,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":14,"dmg":119766,"bossDmg":0,"heal":20323,"deaths":3,"layerGains":{"preciShip":3}} + "p1": {"killed":83,"total":85,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":14,"dmg":119766,"bossDmg":0,"heal":19933,"deaths":3,"layerGains":{"preciShip":3}} }, "units": [ ["p1",1,"op","chess_char_1_10_b",0,"uniequip_002_sunbr",2493,1,5,0,0,0,288,2,2], ["p1",2,"op","chess_char_1_12_b",1,"uniequip_002_estell",2589,1,7,7,2056,288,0,26,1], - ["p1",3,"op","chess_char_1_20_b",1,"uniequip_002_liskam",2892,1,10,17,24011,363,0,70,1], + ["p1",3,"op","chess_char_1_20_b",1,"uniequip_002_liskam",2725.1,1,10,17,24011,363,0,70,1], ["p1",4,"op","chess_char_1_18_b",1,"uniequip_002_utage",809.38,1,11,10,22101,9469,6924,99,1], - ["p1",5,"op","chess_char_1_19_b",1,"uniequip_002_wildmn",0,0,14,6,43152,8749,0,83,2], + ["p1",5,"op","chess_char_1_19_b",1,"uniequip_002_wildmn",0,0,14,6,43152,8460,0,83,2], ["p1",6,"op","chess_char_1_13_b",1,"uniequip_002_podego",2446.5,1,8,5,1049,0,0,4,2], ["p1",7,"op","chess_char_1_14_b",1,"uniequip_002_greyy",1505,1,12,8,2578,2093,0,20,1], ["p1",8,"op","chess_char_1_17_b",1,"uniequip_002_indigo",0,0,15,7,9634,1613,0,9,1], ["p1",9,"op","chess_char_2_01_a",1,null,1694,1,4,9,3985,0,0,22,1], - ["p1",10,"op","chess_char_2_02_a",1,null,1400,1,6,0,0,0,7363,39,4], + ["p1",10,"op","chess_char_2_02_a",1,null,1400,1,6,0,0,0,6885,35,4], ["p1",11,"op","chess_char_2_04_a",1,null,977,1,9,14,11200,0,0,58,3], - ["p1",12,"op","chess_char_2_05_a",1,null,0,0,13,0,0,5030,2430,22,1], - ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,106,0,0,0,3318,55,null], + ["p1",12,"op","chess_char_2_05_a",1,null,0,0,13,0,0,5096,2802,22,1], + ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,106,0,0,0,3034,50,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] @@ -174,17 +174,17 @@ "enemy_1197_sfshu": [9,9,0,211,20250], "enemy_1198_msfshu": [27,27,0,0,81], "enemy_1200_msfjin": [1,1,0,0,27], - "enemy_1234_dsubrl_2": [1,1,0,9584,12600], + "enemy_1234_dsubrl_2": [1,1,0,9520,12600], "enemy_1292_duskld": [1,1,0,992,9010], "enemy_1387_winshd": [1,0,0,286,10513], "enemy_1502_crowns": [1,1,0,144,5400], - "enemy_2008_flking": [1,0,0,10423,0], + "enemy_2008_flking": [1,0,0,10264,0], "enemy_9016_acstmr": [1,1,0,0,7] }, - "hooks": [1,105,3300,579,579,660,773,241,86,90,20,19,0,15985,207,29,85,0,1,92,1,0,0], - "events": {"atk":656,"bounty":7,"deploy":17,"die":90,"dmg":749,"engage":9,"fx":101,"heal":212,"layer":1,"skill":39,"spawn":101,"status":228}, + "hooks": [1,105,3300,570,570,660,773,232,86,90,20,19,0,15887,207,29,85,0,1,94,1,0,0], + "events": {"atk":647,"bounty":7,"deploy":17,"die":90,"dmg":749,"engage":9,"fx":101,"heal":203,"layer":1,"skill":39,"spawn":101,"status":230}, "fx": {"aoe":1,"blink":1,"displace":8,"ember":1,"explode":9,"garrison":1,"heal":2,"phase":1,"pulse":41,"reveal":1,"sleep":7,"summon":25,"undying":1,"zone":2}, - "snaps": "ffe12829 556d50e1 da7db459 81849f4b 4e232e69 eedbef98 c39ed31b ac57d325 1cfe2ef9 4afd989a 6671745c" + "snaps": "ffe12829 556d50e1 38dd64c5 7e6a2c12 6b52768c f98cdb17 6bd2a8be fe0ddc28 58adad65 ac0ffb21 0b14202d" }, "roster-004": { "about": "pass 0 band 2: chess_char_2_08_a chess_char_2_17_a chess_char_2_18_a chess_char_2_07_a chess_char_2_09_a chess_char_2_11_a chess_char_2_13_a chess_char_2_16_a chess_char_2_12_a chess_char_2_06_a chess_char_2_10_a chess_char_2_14_a", @@ -261,44 +261,44 @@ "total": 84, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 276, + "rngDraws": 274, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":84,"total":84,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":12,"dmg":309533,"bossDmg":0,"heal":31086,"deaths":0,"layerGains":{}}}, + "players": {"p1":{"killed":84,"total":84,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":12,"dmg":309533,"bossDmg":0,"heal":31961,"deaths":0,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_2_07_b",1,"uniequip_002_ghost",2712.64,1,2,0,0,1305,1100,0,0], ["p1",2,"op","chess_char_2_08_b",1,"uniequip_002_bubble",3373,1,4,0,380,984,0,0,1], - ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",2133,1,6,24,82237,0,0,55,2], - ["p1",4,"op","chess_char_2_11_b",1,"uniequip_002_kazema",2214,1,8,13,86408,10911,0,88,3], - ["p1",5,"op","chess_char_2_12_b",1,"uniequip_002_gravel",1612,1,10,2,7049,7614,0,124,1], + ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",2133,1,6,24,82154,0,0,55,2], + ["p1",4,"op","chess_char_2_11_b",1,"uniequip_002_kazema",2214,1,8,13,86408,11311,0,88,3], + ["p1",5,"op","chess_char_2_12_b",1,"uniequip_002_gravel",1612,1,10,2,7049,7713,0,124,1], ["p1",6,"op","chess_char_2_19_a",1,null,1021.2,1,11,1,14887,1271,166,26,3], - ["p1",7,"op","chess_char_2_01_b",1,"uniequip_002_excu",2146,1,12,20,36317,4761,0,22,1], - ["p1",8,"op","chess_char_2_02_b",1,"uniequip_002_silent",1614,1,1,0,0,0,7247,27,6], - ["p1",9,"op","chess_char_2_04_b",1,"uniequip_002_grabds",1270,1,3,10,36449,2115,0,50,3], - ["p1",10,"op","chess_char_2_05_b",1,"uniequip_002_harold",1971.2,1,5,0,0,405,8938,38,2], - ["p1",11,"op","chess_char_2_06_b",0,"uniequip_002_papyrs",1639,1,7,0,0,677,10543,25,12], + ["p1",7,"op","chess_char_2_01_b",1,"uniequip_002_excu",2146,1,12,20,36317,5137,0,22,1], + ["p1",8,"op","chess_char_2_02_b",1,"uniequip_002_silent",1614,1,1,0,0,0,7165,25,5], + ["p1",9,"op","chess_char_2_04_b",1,"uniequip_002_grabds",1270,1,3,10,36532,2115,0,50,3], + ["p1",10,"op","chess_char_2_05_b",1,"uniequip_002_harold",1971.2,1,5,0,0,405,10227,36,2], + ["p1",11,"op","chess_char_2_06_b",0,"uniequip_002_papyrs",1639,1,7,0,0,677,11249,26,13], ["p1",12,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,9,8,45805,1044,0,107,2], - ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,104,0,0,0,3092,30,null] + ["p1",13,"token","token_10000_silent_healrb",null,null,1000,0,103,0,0,0,2054,20,null] ], "enemies": { - "enemy_10027_vtsk": [1,1,0,7637,24000], + "enemy_10027_vtsk": [1,1,0,7736,24000], "enemy_1006_shield_2": [1,1,0,0,8000], "enemy_10122_uacann_2": [1,1,0,5114,8000], "enemy_1042_frostd": [1,1,0,0,5200], "enemy_1119_vofsd": [1,1,0,125,8800], "enemy_1170_dushld": [1,1,0,2,5600], "enemy_1202_msfzhi": [1,1,0,0,2], - "enemy_1249_lysdb_2": [15,15,0,124,72000], + "enemy_1249_lysdb_2": [15,15,0,62,72000], "enemy_1251_lysyta": [52,52,0,62,114400], "enemy_1299_ymkilr_2": [1,1,0,0,8800], - "enemy_1328_cbjedi": [6,6,0,5346,48000], - "enemy_1402_tgshd_2": [1,1,0,871,10400], - "enemy_1509_mousek": [1,1,0,7109,17600], - "enemy_2010_csdcr": [1,1,0,1375,9600] + "enemy_1328_cbjedi": [6,6,0,4950,48000], + "enemy_1402_tgshd_2": [1,1,0,1165,10400], + "enemy_1509_mousek": [1,1,0,7673,17600], + "enemy_2010_csdcr": [1,1,0,1751,9600] }, - "hooks": [1,103,4052,673,673,1687,1680,767,84,90,36,35,0,27763,135,52,84,0,1,84,0,0,0], - "events": {"atk":861,"bounty":6,"deploy":19,"die":90,"dmg":1636,"engage":7,"fx":78,"heal":130,"skill":71,"spawn":97,"status":425}, - "fx": {"counter":2,"explode":4,"expose":19,"overload":2,"phase":1,"shield":9,"shieldBreak":16,"sleep":7,"summon":6,"telegraph":5,"zone":7}, - "snaps": "99134ae2 39c2f442 4a4772c7 aff7ca8c be32611d 3dbafbfd 9c01cc62 47a08316 e1109597 74ee34f3 0b4e6d0e 6d040b8e e6f19c6a 6ce6bc93" + "hooks": [1,102,4052,660,660,1687,1680,755,84,90,36,35,0,27675,134,51,84,0,1,84,0,0,0], + "events": {"atk":849,"bounty":6,"deploy":18,"die":90,"dmg":1636,"engage":7,"fx":78,"heal":119,"skill":71,"spawn":97,"status":430}, + "fx": {"counter":2,"explode":4,"expose":19,"overload":2,"phase":1,"shield":10,"shieldBreak":16,"sleep":7,"summon":5,"telegraph":5,"zone":7}, + "snaps": "99134ae2 39c2f442 017e72cb 3522437c 970674df 0d61fe70 642c55f2 5f8c48d5 d4d5ce99 376de8da b81ea77f 90f9a1c1 1026c0cc f8a03198" }, "roster-006": { "about": "pass 0 band 3: chess_char_2_17_b chess_char_2_18_b chess_char_3_06_a chess_char_2_13_b chess_char_2_16_b chess_char_3_02_a chess_char_3_03_a chess_char_3_04_a chess_char_3_05_a chess_char_2_14_b chess_char_2_19_b chess_char_3_01_a", @@ -448,7 +448,7 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 45, + "killed": 46, "total": 87, "unspawned": 0, "bossHpLeft": null, @@ -456,13 +456,13 @@ "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 45, + "killed": 46, "total": 87, "perfect": false, - "leaks": 42, + "leaks": 41, "leaksUncounted": 1, "coins": 8, - "dmg": 509318, + "dmg": 504317, "bossDmg": 0, "heal": 5038, "deaths": 15, @@ -470,18 +470,18 @@ } }, "units": [ - ["p1",1,"op","chess_char_3_06_b",1,"uniequip_002_philae",0,0,6,1,9908,8728,0,11,1], + ["p1",1,"op","chess_char_3_06_b",1,"uniequip_002_philae",0,0,6,2,8597,8678,0,10,1], ["p1",2,"op","chess_char_3_12_b",2,"uniequip_002_blemsh",0,0,20,10,43599,5860,5038,20,1], ["p1",3,"op","chess_char_3_02_b",1,"uniequip_002_ayer",0,0,10,1,33106,2711,0,45,1], - ["p1",4,"op","chess_char_3_03_b",1,"uniequip_002_swire",0,0,7,1,15696,2511,0,23,1], + ["p1",4,"op","chess_char_3_03_b",1,"uniequip_002_swire",0,0,7,0,16297,2511,0,23,1], ["p1",5,"op","chess_char_3_04_b",1,"uniequip_002_swire2",0,0,126,6,77967,18788,0,42,0], ["p1",6,"op","chess_char_3_05_b",2,"uniequip_002_skadi",3123.21,1,124,13,85727,23739,0,41,2], - ["p1",7,"op","chess_char_3_21_a",2,null,0,0,2,3,24933,1464,0,22,1], + ["p1",7,"op","chess_char_3_21_a",2,null,0,0,2,4,22383,1464,0,24,1], ["p1",8,"op","chess_char_3_01_b",2,"uniequip_002_angel",0,0,3,2,78698,1887,0,50,2], ["p1",9,"op","chess_char_3_08_b",1,"uniequip_002_mint",0,0,4,1,25619,6586,0,9,1], ["p1",10,"op","chess_char_3_09_b",1,"uniequip_002_haini",613.6,1,137,0,34921,2041,0,30,1], - ["p1",11,"op","chess_char_3_10_b",1,"uniequip_002_pinecn",0,0,1,2,12042,2220,0,10,1], - ["p1",12,"op","chess_char_3_11_b",1,"uniequip_002_snhunt",0,0,5,5,67101,1850,0,36,9], + ["p1",11,"op","chess_char_3_10_b",1,"uniequip_002_pinecn",0,0,1,2,9169,2220,0,10,1], + ["p1",12,"op","chess_char_3_11_b",1,"uniequip_002_snhunt",0,0,5,5,68232,1850,0,36,9], ["p1","~1","token","token_10031_swire2_gdtrap",null,null,1000,0,13,0,0,0,0,0,null], ["p1","~2","token","token_10031_swire2_gdtrap",null,null,1000,0,45,0,0,0,0,0,null], ["p1","~3","token","token_10031_swire2_gdtrap",null,null,1000,0,46,0,0,0,0,0,null], @@ -515,22 +515,22 @@ "enemy_10030_vtwand": [1,0,0,0,0], "enemy_1007_slime": [1,1,0,0,950], "enemy_10138_xdsnow": [1,1,0,13,9504], - "enemy_1045_hammer_2": [1,0,1,10435,19290], + "enemy_1045_hammer_2": [1,0,1,12016,19194], "enemy_1148_dssbr": [1,1,0,0,4838], - "enemy_1172_dugago_2": [1,0,1,3146,18990], + "enemy_1172_dugago_2": [1,0,1,3146,19016], "enemy_1203_sfhu_2": [1,1,0,3612,15120], "enemy_1204_msfhu_2": [4,0,4,0,29], "enemy_1254_lypa_2": [1,1,0,1003,17280], "enemy_1305_mhslim_2": [1,1,0,614,3110], - "enemy_1415_mmkabi_2": [1,0,1,724,26704], - "enemy_1513_dekght": [1,0,1,8165,11440], - "enemy_2021_syfish": [60,37,23,2548,276038], - "enemy_2025_syufo": [13,2,8,36905,106023] + "enemy_1415_mmkabi_2": [1,0,1,74,25158], + "enemy_1513_dekght": [1,0,1,7560,7396], + "enemy_2021_syfish": [60,37,23,2515,276038], + "enemy_2025_syufo": [13,3,7,36563,106682] }, - "hooks": [1,137,5100,539,539,1062,1157,387,60,130,21,23,0,8443,80,45,88,39,1,66,12,12,0], - "events": {"atk":624,"bounty":4,"deploy":49,"die":91,"dmg":1084,"engage":12,"fx":231,"heal":386,"layer":12,"leak":39,"skill":47,"spawn":128,"status":130}, + "hooks": [1,137,5100,537,537,1051,1146,386,61,130,21,23,0,8460,80,46,88,38,1,67,12,12,0], + "events": {"atk":617,"bounty":4,"deploy":49,"die":92,"dmg":1073,"engage":12,"fx":231,"heal":385,"layer":12,"leak":38,"skill":47,"spawn":128,"status":130}, "fx": {"aoe":20,"blink":3,"buff":1,"burst":12,"coin":29,"displace":32,"explode":34,"garrison":8,"layer":4,"pull":32,"revive":6,"shield":1,"shieldBreak":1,"strike":9,"summon":29,"telegraph":1,"volley":9}, - "snaps": "17903402 6c8167ba 07381013 82bb886b 608b7ec4 249d7653 0d98c4e2 486693a5 84927b5d 4ec21382 2bb263b6 816b9d4f 845b7cfc 1702154b d531c7dc 0cff75b4 79d1c073" + "snaps": "17903402 6c8167ba 07381013 82bb886b 608b7ec4 249d7653 bbfcfdac 51384d69 1e174583 a3caa0d3 d021ba02 5bf81122 997b55c3 3b7dbeeb ee15f1bc 9a7e2cb1 3931de9d" }, "roster-009": { "about": "pass 0 band 4: chess_char_3_16_b chess_char_4_01_a chess_char_3_18_b chess_char_4_04_a chess_char_3_13_b chess_char_3_14_b chess_char_3_17_b chess_char_3_19_b chess_char_3_20_b chess_char_3_21_b chess_char_4_02_a chess_char_4_06_a token_10028_vigil_wolf", @@ -605,28 +605,28 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 45, + "killed": 43, "total": 102, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 99, + "rngDraws": 69, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":45,"total":102,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":4,"dmg":442763,"bossDmg":0,"heal":3335,"deaths":23,"layerGains":{"preciShip":12}} + "p1": {"killed":43,"total":102,"perfect":false,"leaks":59,"leaksUncounted":0,"coins":4,"dmg":420964,"bossDmg":0,"heal":3307,"deaths":23,"layerGains":{"preciShip":12}} }, "units": [ - ["p1",1,"op","chess_char_4_17_a",1,null,0,0,5,0,3672,2849,0,7,0], - ["p1",2,"op","chess_char_4_18_a",1,null,0,0,6,0,3167,4489,1622,4,4], - ["p1",3,"op","chess_char_4_11_a",1,null,2144,1,133,0,1453,2934,0,3,1], - ["p1",4,"op","chess_char_4_19_a",2,null,0,0,90,1,12530,3120,0,27,1], + ["p1",1,"op","chess_char_4_17_a",1,null,0,0,5,0,2395,2849,0,5,0], + ["p1",2,"op","chess_char_4_18_a",1,null,0,0,6,0,3912,4489,1622,4,4], + ["p1",3,"op","chess_char_4_11_a",1,null,2144,1,133,0,1453,2952,0,3,1], + ["p1",4,"op","chess_char_4_19_a",2,null,0,0,90,0,15256,3120,0,38,1], ["p1",5,"op","chess_char_4_07_a",1,null,1738,1,134,0,1793,3476,0,2,1], - ["p1",6,"op","chess_char_4_16_a",2,null,0,0,126,6,107272,7475,1245,36,8], - ["p1",7,"op","chess_char_4_09_a",1,null,0,0,120,0,30872,2672,0,19,1], - ["p1",8,"op","chess_char_4_10_a",1,null,0,0,107,0,35046,4379,0,18,1], - ["p1",9,"op","chess_char_4_12_a",2,null,0,0,104,2,27366,3976,468,20,1], - ["p1",10,"op","chess_char_4_13_a",1,null,0,0,96,1,30170,3174,0,50,4], - ["p1",11,"op","chess_char_4_14_a",1,null,0,0,88,15,154931,2552,0,26,2], - ["p1",12,"op","chess_char_4_20_a",2,null,0,0,4,4,34490,1217,0,13,1], + ["p1",6,"op","chess_char_4_16_a",2,null,0,0,126,2,97522,7475,1245,36,6], + ["p1",7,"op","chess_char_4_09_a",1,null,0,0,120,0,36179,2672,0,22,1], + ["p1",8,"op","chess_char_4_10_a",1,null,0,0,107,1,33806,4379,0,18,1], + ["p1",9,"op","chess_char_4_12_a",2,null,0,0,104,3,27995,3948,440,20,1], + ["p1",10,"op","chess_char_4_13_a",1,null,0,0,96,3,32173,3174,0,51,4], + ["p1",11,"op","chess_char_4_14_a",1,null,0,0,88,13,136363,2552,0,25,2], + ["p1",12,"op","chess_char_4_20_a",2,null,0,0,4,4,32117,1217,0,13,1], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,17,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -635,26 +635,26 @@ ], "enemies": { "enemy_10034_cnvsax": [1,1,0,344,42998], - "enemy_1005_yokai": [24,17,7,0,62851], - "enemy_1005_yokai_2": [27,8,14,4793,74644], - "enemy_1005_yokai_3": [6,0,5,17691,104777], + "enemy_1005_yokai": [24,16,8,0,61636], + "enemy_1005_yokai_2": [27,7,15,4640,77644], + "enemy_1005_yokai_3": [6,0,5,17164,99596], "enemy_10083_hlbird": [1,1,0,0,6450], - "enemy_10144_xdelk_2": [1,0,1,2927,43644], - "enemy_1050_lslime": [1,0,1,9204,17718], - "enemy_1158_divman": [1,1,0,461,14189], - "enemy_1174_duholy_2": [1,0,1,2161,5126], - "enemy_1204_msfhu_2": [1,0,1,0,10], - "enemy_1267_nhpbr_2": [1,0,1,160,8090], - "enemy_1269_nhfly": [33,17,16,4510,35939], - "enemy_1321_wdarft": [1,0,1,0,5210], - "enemy_1422_lrsldr_2": [1,0,1,0,21116], + "enemy_10144_xdelk_2": [1,0,1,2867,32954], + "enemy_1050_lslime": [1,0,1,8973,16930], + "enemy_1158_divman": [1,1,0,457,14189], + "enemy_1174_duholy_2": [1,0,1,2161,4973], + "enemy_1204_msfhu_2": [1,0,1,0,9], + "enemy_1267_nhpbr_2": [1,0,1,505,10260], + "enemy_1269_nhfly": [33,17,16,5129,27530], + "enemy_1321_wdarft": [1,0,1,0,3974], + "enemy_1422_lrsldr_2": [1,0,1,1,21820], "enemy_1516_jakill": [1,0,1,62,0], "enemy_2034_sythef_2": [1,0,1,0,0] }, - "hooks": [1,132,5100,457,457,1127,1077,332,71,119,25,26,0,8109,376,12,102,51,1,200,3,0,41], - "events": {"atk":557,"bounty":2,"deploy":27,"die":68,"dmg":985,"engage":12,"fx":195,"heal":7,"layer":3,"leak":51,"skill":52,"spawn":119,"status":335}, - "fx": {"block":9,"catShield":2,"charge":1,"dilemma":1,"dodge":41,"explode":18,"explosion":2,"featherArrow":1,"flame":1,"frostNova":4,"garrison":3,"garrisonGrant":1,"overclock":1,"phase":1,"pull":1,"riposte":2,"rockslide":4,"shieldBreak":5,"slippery":1,"summon":11,"swordRain":46,"swordStorm":8,"telegraph":2,"thorns":16,"tornado":1,"tornadoPulse":5,"undying":7}, - "snaps": "06e15d5c 9c6e5b81 2ecc1e6a 71fee850 b79ab0d2 457ad226 ff2b9874 4cc2db7e f0f9ed59 2f89b40a aad31065 cbcace62 0b121c2c 860ca274 3c5123e2 f265b649 88aa7607" + "hooks": [1,132,5100,448,448,1098,1067,312,67,119,23,24,0,8034,394,12,102,53,1,199,3,0,24], + "events": {"atk":552,"bounty":2,"deploy":27,"die":66,"dmg":983,"engage":12,"fx":175,"heal":7,"layer":3,"leak":53,"skill":48,"spawn":119,"status":361}, + "fx": {"block":7,"catShield":2,"charge":1,"dilemma":1,"dodge":24,"explode":19,"explosion":2,"featherArrow":1,"flame":1,"frostNova":4,"garrison":3,"garrisonGrant":1,"overclock":1,"phase":1,"pull":1,"riposte":2,"rockslide":4,"shieldBreak":5,"slippery":1,"summon":11,"swordRain":51,"swordStorm":6,"telegraph":2,"thorns":11,"tornado":1,"tornadoPulse":5,"undying":7}, + "snaps": "06e15d5c 06520b29 b51a2671 1784d7e5 b5851d3e 9d75a687 dedcdea7 eb3926e2 daa5e6d1 9f1462b1 2f8edbb3 d8f17e8d 5aee7443 67957369 9c226ca2 7a410b4f 647a5d16" }, "roster-011": { "about": "pass 0 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_21_a chess_char_4_24_a chess_char_4_25_a chess_char_4_26_a chess_char_4_02_b chess_char_4_06_b", @@ -725,31 +725,31 @@ "round": 10, "seed": 1517795683, "waveId": "act1autochess_h03", - "time": 161.57, - "ticks": 4847, + "time": 163.6, + "ticks": 4908, "reason": "cleared", "killed": 99, "total": 100, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 175, + "rngDraws": 220, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":99,"total":100,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":10,"dmg":998389,"bossDmg":0,"heal":23063,"deaths":10,"layerGains":{"preciShip":8}} + "p1": {"killed":99,"total":100,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":10,"dmg":987874,"bossDmg":0,"heal":22733,"deaths":11,"layerGains":{"preciShip":8}} }, "units": [ - ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",3473.8,1,7,0,296,39,0,19,0], - ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,9,3,53084,1472,1472,38,4], - ["p1",3,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,125,1,3687,3521,0,4,1], - ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",0,0,106,6,45749,4236,0,44,3], - ["p1",5,"op","chess_char_4_22_b",2,"uniequip_002_svrash",1372.95,1,123,9,132105,6334,0,32,3], - ["p1",6,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,122,2,15810,6813,337,33,6], + ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",2932.2,1,7,0,472,581,0,14,0], + ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,9,5,83347,2200,2200,33,8], + ["p1",3,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,124,0,933,3681,0,1,1], + ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",0,0,112,4,52250,4236,0,59,4], + ["p1",5,"op","chess_char_4_22_b",2,"uniequip_002_svrash",0,0,123,9,133657,7707,0,33,3], + ["p1",6,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,116,1,23055,6476,0,29,6], ["p1",7,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,5,1,7024,1114,1114,15,2], - ["p1",9,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,11,21,172212,3503,0,85,35], - ["p1",10,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1526,1,13,44,474001,7606,0,56,23], - ["p1",11,"op","chess_char_4_20_b",2,"uniequip_002_fartth",0,0,6,12,94420,1419,0,26,4], - ["p1",12,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1484,1,14,0,0,9230,20139,100,2], + ["p1",8,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,5,2,4348,557,557,15,1], + ["p1",9,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,11,19,193913,3320,0,92,36], + ["p1",10,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1576,1,13,45,409812,7706,0,35,23], + ["p1",11,"op","chess_char_4_20_b",2,"uniequip_002_fartth",0,0,6,14,86087,1419,0,30,5], + ["p1",12,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1534,1,14,0,0,9049,19975,100,2], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,17,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], @@ -765,19 +765,19 @@ "enemy_1183_mlasrt": [1,1,0,988,7488], "enemy_1207_sfji_2": [1,1,0,0,16128], "enemy_1208_msfji_2": [4,4,0,0,140], - "enemy_1267_nhpbr": [45,45,0,13136,233280], - "enemy_1267_nhpbr_2": [24,24,0,7050,152064], + "enemy_1267_nhpbr": [45,45,0,13333,233280], + "enemy_1267_nhpbr_2": [24,24,0,7950,152064], "enemy_1270_nhstlk": [1,1,0,0,13824], - "enemy_1270_nhstlk_2": [15,15,0,7570,276480], + "enemy_1270_nhstlk_2": [15,15,0,8869,276480], "enemy_1325_cbgpro_2": [1,1,0,0,5299], "enemy_1425_lrcmra_2": [1,1,0,980,28800], - "enemy_1525_blkswb": [1,0,1,12334,50799], - "enemy_2050_smsha": [1,1,0,3231,46080] + "enemy_1525_blkswb": [1,0,1,11679,41825], + "enemy_2050_smsha": [1,1,0,3134,46080] }, - "hooks": [1,125,4847,485,485,1427,1424,821,110,113,83,82,0,17042,1514,29,100,1,1,119,1,0,3], - "events": {"atk":636,"bounty":5,"deploy":22,"die":112,"dmg":1415,"engage":10,"fx":275,"heal":212,"layer":1,"leak":1,"skill":167,"spawn":117,"status":1018}, - "fx": {"beam":6,"blink":2,"block":2,"displace":11,"dodge":3,"explode":6,"explosion":23,"featherArrow":4,"flame":3,"frostNova":35,"garrison":1,"garrisonGrant":1,"healField":2,"overclock":1,"palsy":1,"pull":2,"revive":4,"riposte":2,"rockslide":4,"shieldBreak":9,"slash":30,"summon":1,"swordRain":28,"swordStorm":6,"telegraph":3,"thorns":1,"tornado":2,"tornadoPulse":10,"truesilver":3,"zone":69}, - "snaps": "ccfbde35 4d2aba8a 8dfe85b0 528967cd 3dbb0c86 c73d7931 d025c97a c9dab1f0 ecebc7c3 77ac09b9 fe0c30b6 3bcdfc52 7d4f4208 bdb5d1fa 39999c60 d73cc178 9d069a0a" + "hooks": [1,125,4908,482,482,1463,1463,536,111,114,89,89,0,16774,1593,27,100,1,1,124,1,0,2], + "events": {"atk":654,"bounty":5,"deploy":22,"die":113,"dmg":1453,"engage":10,"fx":270,"heal":226,"layer":1,"leak":1,"skill":180,"spawn":117,"status":1168}, + "fx": {"beam":9,"blink":2,"displace":9,"dodge":2,"explode":5,"explosion":23,"featherArrow":5,"flame":4,"frostNova":36,"garrison":1,"garrisonGrant":1,"healField":2,"overclock":1,"palsy":2,"pull":1,"revive":4,"riposte":2,"rockslide":8,"shieldBreak":10,"slash":29,"summon":1,"swordRain":23,"swordStorm":6,"telegraph":3,"thorns":3,"tornado":1,"tornadoPulse":5,"truesilver":3,"zone":69}, + "snaps": "bc2309ae cac080d1 c8920067 79751dc7 2861eaeb a0aa9436 2b74efdb 04062d35 2049676f b6f72a1e 8d2d2bf8 15f0debb ae42d8cf ca59752a ffc852a1 9e8113d7 1c40ca06" }, "roster-013": { "about": "pass 0 band 5: chess_char_4_23_b chess_char_5_08_a chess_char_5_01_a chess_char_5_05_a chess_char_5_06_a chess_char_5_07_a chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b chess_char_5_02_a chess_char_5_03_a chess_char_5_10_a", @@ -859,43 +859,29 @@ "round": 12, "seed": 2531322120, "waveId": "act1autochess_h05", - "time": 202.67, - "ticks": 6080, + "time": 197.67, + "ticks": 5930, "reason": "cleared", - "killed": 48, + "killed": 25, "total": 183, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 500, + "rngDraws": 468, "errors": {"count":0,"kinds":[]}, - "players": { - "p1": { - "killed": 48, - "total": 183, - "perfect": false, - "leaks": 135, - "leaksUncounted": 0, - "coins": 2, - "dmg": 1669744, - "bossDmg": 0, - "heal": 36171, - "deaths": 25, - "layerGains": {"visiShip":6} - } - }, + "players": {"p1":{"killed":25,"total":183,"perfect":false,"leaks":158,"leaksUncounted":0,"coins":2,"dmg":1390177,"bossDmg":0,"heal":35727,"deaths":26,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_11_a",1,null,0,0,5,0,161,4864,2699,5,4], - ["p1",2,"op","chess_char_5_19_a",2,null,3241,1,216,1,44918,9945,0,5,2], - ["p1",3,"op","chess_char_5_13_a",1,null,346.6,1,10,10,240895,30649,0,91,1], - ["p1",4,"op","chess_char_5_14_a",1,null,1732,1,219,0,35614,10945,787,21,6], - ["p1",5,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,84,7,118325,9072,4444,33,2], - ["p1",6,"op","chess_char_5_17_a",1,null,2250,1,218,7,101934,32298,7319,119,8], - ["p1",7,"op","chess_char_5_12_a",0,null,1404,1,8,0,56731,0,0,35,25], - ["p1",8,"op","chess_char_5_15_a",1,null,926,1,12,11,625635,984,6782,129,10], - ["p1",9,"op","chess_char_5_20_a",2,null,0,0,14,0,27378,1167,3,9,1], - ["p1",10,"op","chess_char_5_21_a",1,null,1279,1,4,9,348762,0,0,167,4], - ["p1",11,"op","chess_char_5_22_a",1,null,0,0,6,3,68396,1237,0,33,7], - ["p1",12,"op","chess_char_5_23_a",1,null,0,0,98,0,0,9521,13947,26,1], + ["p1",1,"op","chess_char_5_11_a",1,null,0,0,5,2,3176,4853,6169,9,4], + ["p1",2,"op","chess_char_5_19_a",2,null,0,0,174,2,72276,11501,0,10,3], + ["p1",3,"op","chess_char_5_13_a",1,null,0,0,10,2,89491,17971,2,49,1], + ["p1",4,"op","chess_char_5_14_a",1,null,0,0,210,0,34013,10033,830,17,5], + ["p1",5,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,83,5,80750,7037,2409,26,1], + ["p1",6,"op","chess_char_5_17_a",1,null,2250,1,218,2,91090,36751,6407,110,11], + ["p1",7,"op","chess_char_5_12_a",0,null,1404,1,8,0,63515,0,0,35,28], + ["p1",8,"op","chess_char_5_15_a",1,null,926,1,12,5,520417,1058,5153,129,9], + ["p1",9,"op","chess_char_5_20_a",2,null,0,0,14,0,27648,1799,0,9,1], + ["p1",10,"op","chess_char_5_21_a",1,null,1279,1,4,5,315124,0,0,140,3], + ["p1",11,"op","chess_char_5_22_a",1,null,1237,1,216,2,91682,1237,0,54,8], + ["p1",12,"op","chess_char_5_23_a",1,null,0,0,88,0,0,7168,14566,24,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,0,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], @@ -904,24 +890,24 @@ "enemies": { "enemy_10043_sailor": [1,1,0,135,16423], "enemy_10094_crstf": [1,1,0,0,11944], - "enemy_1017_defdrn": [1,0,1,0,7123], - "enemy_1069_icebrk_2": [1,0,1,0,24872], - "enemy_1161_tidmag_2": [1,0,1,14631,8043], - "enemy_1195_sfyin_2": [1,0,1,0,9113], - "enemy_1208_msfji_2": [1,0,1,0,20], - "enemy_1249_lysdb_2": [60,20,40,28097,677560], - "enemy_1251_lysyta": [63,25,38,13934,368444], - "enemy_1254_lypa_2": [48,1,47,44927,464222], - "enemy_1272_nhtank": [1,0,1,10257,35137], - "enemy_1329_cbshld": [1,0,1,0,5006], - "enemy_1430_lrrook": [1,0,1,0,24204], - "enemy_1539_reid": [1,0,1,889,15006], - "enemy_2085_skzjxd": [1,0,1,0,2629] + "enemy_1017_defdrn": [1,0,1,0,9242], + "enemy_1069_icebrk_2": [1,0,1,0,22939], + "enemy_1161_tidmag_2": [1,0,1,12998,13724], + "enemy_1195_sfyin_2": [1,0,1,0,7424], + "enemy_1208_msfji_2": [1,0,1,0,34], + "enemy_1249_lysdb_2": [60,8,52,27675,598483], + "enemy_1251_lysyta": [63,15,48,6485,266606], + "enemy_1254_lypa_2": [48,0,48,47273,392874], + "enemy_1272_nhtank": [1,0,1,6033,11701], + "enemy_1329_cbshld": [1,0,1,0,5385], + "enemy_1430_lrrook": [1,0,1,0,20723], + "enemy_1539_reid": [1,0,1,995,2902], + "enemy_2085_skzjxd": [1,0,1,0,9775] }, - "hooks": [1,219,6080,770,868,5115,5110,3213,74,210,71,71,9,24174,728,87,183,135,1,88,1,8,18], - "events": {"atk":1129,"bounty":1,"deploy":33,"die":75,"dmg":5110,"engage":12,"fx":463,"heal":212,"layer":1,"leak":135,"skill":142,"spawn":199,"status":1543}, - "fx": {"aoe":17,"burst":8,"charge":4,"crit":20,"dodge":18,"extraAttack":9,"garrison":1,"healAoe":4,"iceSpike":122,"shieldBreak":60,"sp":24,"substitute":6,"summon":1,"swap":6,"weightless":1,"zone":162}, - "snaps": "92d6171d a14af2a9 3bf2fd11 f6ecd555 4ac6277e 2784431f 04c94017 a3665bd0 1cd29745 07218cd9 7223440e 4425b22e febfb834 893f5aa5 d58169eb bdce5a88 23c988b2 c7031869 33fd06c1 cba1596a 9878059e" + "hooks": [1,218,5930,718,792,3669,3681,2865,52,211,75,75,6,23449,551,73,183,158,1,64,0,6,12], + "events": {"atk":1011,"bounty":1,"deploy":32,"die":53,"dmg":3677,"engage":12,"fx":393,"heal":167,"leak":158,"skill":150,"spawn":199,"status":1212}, + "fx": {"aoe":17,"burst":6,"charge":2,"crit":26,"dodge":12,"dollEnd":1,"extraAttack":6,"healAoe":4,"iceSpike":92,"shieldBreak":60,"sp":23,"substitute":2,"summon":1,"swap":1,"weightless":1,"zone":139}, + "snaps": "92d6171d a372879e ab095245 c1ddd075 5b5c1326 356afac5 520ae96e e1432733 756928ce 3dde9453 decbf4c8 82889bda 168ea4ce d2c557b5 cfc460b4 d80d2f7f 3be2e1f8 61f76a77 d8cf923b ab6a497f" }, "roster-015": { "about": "pass 0 band 6: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_14_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b chess_char_5_15_b", @@ -932,14 +918,14 @@ "round": 12, "seed": 1904822123, "waveId": "act1autochess_h05", - "time": 180.83, - "ticks": 5425, + "time": 191.83, + "ticks": 5755, "reason": "cleared", "killed": 107, "total": 107, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 200, + "rngDraws": 218, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -949,34 +935,34 @@ "leaks": 0, "leaksUncounted": 0, "coins": 12, - "dmg": 1870890, + "dmg": 1869314, "bossDmg": 0, - "heal": 53573, + "heal": 49562, "deaths": 0, "layerGains": {"indomShip":20} } }, "units": [ - ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,8,10,133996,9109,0,60,4], - ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4784.8,1,6,0,0,10800,13006,0,79], - ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",13035.36,1,140,40,643200,40970,22958,47,6], - ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3672,1,11,3,37848,492,94,16,3], - ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3069.46,1,12,0,5213,13165,0,3,1], - ["p1",6,"op","chess_char_5_14_b",1,"none",2174,1,13,16,322116,5249,358,39,41], - ["p1",7,"op","chess_char_5_07_b",2,"uniequip_002_surtr",2680,1,135,14,196134,24694,2556,41,2], + ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,8,13,198073,9601,0,77,4], + ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,6,0,0,11460,11815,0,88], + ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",13459.65,1,140,31,645760,35839,20981,43,6], + ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3522,1,11,4,31881,492,95,12,3], + ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",2711.68,1,12,0,5213,13885,0,3,1], + ["p1",6,"op","chess_char_5_14_b",1,"none",2174,1,13,14,301628,5348,470,23,47], + ["p1",7,"op","chess_char_5_07_b",2,"uniequip_002_surtr",1,0,101,15,229740,23499,2505,43,2], ["p1",8,"op","chess_char_5_02_b",2,"uniequip_002_titi",1439,1,4,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_03_b",2,"uniequip_002_blaze2",1472,1,5,0,0,0,0,0,0], - ["p1",10,"op","chess_char_5_10_b",2,"uniequip_002_lisa",1480,1,15,1,37856,19552,1289,44,4], - ["p1",11,"op","chess_char_5_12_b",0,"uniequip_002_dusk",714.8,1,7,3,40451,394,0,6,6], - ["p1",12,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,10,20,451379,2283,12845,9,7], + ["p1",10,"op","chess_char_5_10_b",2,"uniequip_002_lisa",1480,1,15,2,40961,20231,1396,45,4], + ["p1",11,"op","chess_char_5_12_b",0,"uniequip_002_dusk",714.8,1,7,2,22225,0,0,5,5], + ["p1",12,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,10,26,391135,2853,11833,7,6], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,0,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,0,3,0,0,0,0,0,null], - ["p1","~1","token","token_10015_dusk_drgn",null,null,1352.19,0,45,0,2698,1111,466,5,null], + ["p1","~1","token","token_10015_dusk_drgn",null,null,1402.19,0,45,0,2698,1061,466,5,null], ["p1","~1","token","token_10039_ulpia_block",null,null,3500,0,56,0,0,0,0,0,null], - ["p1","~2","token","token_10039_ulpia_block",null,null,3500,0,88,0,0,0,0,0,null], - ["p1","~3","token","token_10039_ulpia_block",null,null,3500,0,104,0,0,0,0,0,null], - ["p1","~4","token","token_10039_ulpia_block",null,null,3500,0,126,0,0,0,0,0,null], + ["p1","~2","token","token_10039_ulpia_block",null,null,3500,0,78,0,0,0,0,0,null], + ["p1","~3","token","token_10039_ulpia_block",null,null,3500,0,98,0,0,0,0,0,null], + ["p1","~4","token","token_10039_ulpia_block",null,null,3500,0,127,0,0,0,0,0,null], ["p1","~5","token","token_10039_ulpia_block",null,null,3500,1,141,0,0,0,0,0,null] ], "enemies": { @@ -989,20 +975,20 @@ "enemy_1196_msfyin": [1,1,0,0,3], "enemy_1209_sfden": [1,1,0,0,21773], "enemy_1210_msfden": [1,1,0,0,54], - "enemy_1267_nhpbr_2": [36,36,0,23523,307930], - "enemy_1270_nhstlk_2": [27,27,0,16273,671846], - "enemy_1272_nhtank_2": [1,1,0,1200,23328], + "enemy_1267_nhpbr_2": [36,36,0,21040,307930], + "enemy_1270_nhstlk_2": [27,27,0,17810,671846], + "enemy_1272_nhtank_2": [1,1,0,750,23328], "enemy_1329_cbshld_2": [1,1,0,1845,20218], "enemy_1433_dsbasi": [1,1,0,287,6687], "enemy_2001_duckmi": [1,1,0,0,27994], "enemy_2085_skzjxd_2": [1,1,0,0,20218], - "enemy_5601_entlec": [3,3,0,0,6304], - "enemy_9006_actoxi": [30,30,0,10741,699840] + "enemy_5601_entlec": [3,3,0,0,4728], + "enemy_9006_actoxi": [30,30,0,8896,699840] }, - "hooks": [1,142,5425,343,343,2083,2705,4099,110,120,153,151,0,15568,4219,52,110,0,1,225,2,0,0], - "events": {"atk":402,"bounty":6,"deploy":29,"die":120,"dmg":2098,"engage":10,"fx":465,"heal":1553,"layer":2,"skill":304,"spawn":131,"status":720}, - "fx": {"anchor":6,"aoe":45,"candle":3,"ember":2,"garrison":2,"healAoe":79,"overload":4,"revive":1,"sp":101,"substitute":1,"summon":3,"swap":1,"telegraph":1,"teleport":9,"zone":207}, - "snaps": "22cf0582 8a0c0b85 516b60a1 84aa4163 e05892d0 18489b1b 648324df 80fac9f4 376b8bee 85dbe4cb e627378e d788a444 4b8ef6d8 e2cf34c7 e37bfa3f c7e3226a 4c5d887f 61f8d5f0" + "hooks": [1,141,5755,332,332,2043,2652,4262,110,120,166,164,0,15336,4198,56,110,0,1,230,2,0,0], + "events": {"atk":397,"bounty":6,"deploy":28,"die":120,"dmg":2059,"engage":10,"fx":473,"heal":1549,"layer":2,"skill":330,"spawn":131,"status":685}, + "fx": {"anchor":6,"aoe":51,"candle":3,"ember":2,"garrison":2,"healAoe":88,"overload":4,"sp":115,"substitute":1,"summon":3,"swap":1,"telegraph":1,"teleport":9,"zone":187}, + "snaps": "22cf0582 8a0c0b85 516b60a1 c5e8a5ec 592d3252 27981b58 1b24e129 d1d27d3b 618e064f 78c1139b 1dc092e5 2baf866a 100a1ed4 35c05303 e96ea8bb c7df11ae 127c12e7 8d9f12c6 cfe7e0a9 a7e54375" }, "roster-016": { "about": "pass 0 band 6: chess_char_5_19_b chess_char_6_03_a chess_char_6_06_a chess_char_5_17_b chess_char_5_20_b chess_char_5_21_b chess_char_5_22_b chess_char_5_23_b chess_char_6_01_a chess_char_6_02_a chess_char_6_04_a chess_char_6_05_a token_10017_skadi2_dedant", @@ -1016,40 +1002,40 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 92, + "killed": 89, "total": 126, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 580, + "rngDraws": 563, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":92,"total":126,"perfect":false,"leaks":34,"leaksUncounted":0,"coins":6,"dmg":4413978,"bossDmg":0,"heal":82323,"deaths":8,"layerGains":{"preciShip":4}} + "p1": {"killed":89,"total":126,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":6,"dmg":4249277,"bossDmg":0,"heal":72328,"deaths":9,"layerGains":{"preciShip":4}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",2863.48,1,115,8,547728,6081,1130,87,4], - ["p1",2,"op","chess_char_6_03_a",2,null,2703,1,108,3,96724,21638,8650,75,2], - ["p1",3,"op","chess_char_6_06_a",2,null,2223,1,142,8,482800,21116,738,97,3], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,6,219859,29728,8163,298,2], - ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,138378,0,0,46,5], - ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,2,283224,3069,854,125,3], - ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,2,30193,1242,1037,14,4], - ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,58777,82,4], - ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,34,857246,1346,119,83,4], - ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,26,1374046,1242,169,76,3], - ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,2,75912,10286,1730,0,4], - ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,0,307866,2559,955,69,5], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",1755.69,1,115,9,547740,7078,1020,87,4], + ["p1",2,"op","chess_char_6_03_a",2,null,2703,1,108,3,69252,12521,6326,71,2], + ["p1",3,"op","chess_char_6_06_a",2,null,0,0,151,11,434256,23810,737,92,2], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,6,230479,27940,6520,282,2], + ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,141253,0,0,47,5], + ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,2,288498,3069,854,125,3], + ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,1,30490,1242,1037,10,4], + ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,52972,80,4], + ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,32,763032,1346,119,83,4], + ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,21,1402837,1242,169,76,3], + ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,1,69684,10477,1619,0,4], + ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,2,271756,2559,955,66,5], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,13,0,0,0,0,0,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,60,0,0,0,0,0,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,111,0,0,0,0,0,null], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,149,0,0,0,0,0,null] + ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,148,0,0,0,0,0,null] ], "enemies": { "enemy_10045_parrot": [1,0,1,0,49131], - "enemy_10098_crhro": [1,1,0,9588,185752], - "enemy_10124_uashld_2": [12,6,5,49762,1290422], + "enemy_10098_crhro": [1,1,0,8717,185752], + "enemy_10124_uashld_2": [12,4,5,46923,1233696], "enemy_1019_jshoot_2": [1,1,0,1515,16718], - "enemy_1043_zomsbr": [72,56,16,151,1022835], - "enemy_1061_zomshd": [30,23,7,16313,1746604], + "enemy_1043_zomsbr": [72,57,15,198,1020987], + "enemy_1061_zomshd": [30,21,9,12955,1640957], "enemy_1072_dlancer": [1,1,0,352,37150], "enemy_1165_duhond": [1,1,0,127,17337], "enemy_1196_msfyin_2": [1,1,0,0,9], @@ -1060,10 +1046,10 @@ "enemy_2001_duckmi_2": [1,0,1,0,13530], "enemy_9006_actoxi": [1,0,1,0,3658] }, - "hooks": [1,150,6900,1070,1146,7889,8141,69291,100,137,43,40,22,39797,1133,51,126,33,1,109,2,10,7], - "events": {"atk":2528,"bounty":3,"deploy":24,"die":104,"dmg":8076,"engage":10,"fx":554,"heal":128,"layer":2,"leak":33,"skill":83,"spawn":142,"status":2686}, - "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":10,"crit":39,"dodge":7,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":157,"lock":22,"lure":3,"revive":1,"snow":75,"soul":1,"sp":1,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, - "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 4b057061 c76044d5 1e3183dd 69b18662 97b0a95e ea897c2c 02baa76c cc3b79ca 5fe0ed47 a83d31e0 017f9645 bb7476b6 45f4958f 3b6429a1 4e60499c" + "hooks": [1,150,6900,1028,1104,7579,7788,69629,98,136,42,40,22,39646,1064,56,126,34,1,108,2,8,7], + "events": {"atk":2436,"bounty":3,"deploy":24,"die":102,"dmg":7723,"engage":10,"fx":535,"heal":119,"layer":2,"leak":34,"skill":82,"spawn":142,"status":2577}, + "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":8,"crit":50,"dodge":7,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":130,"lock":22,"lure":3,"revive":1,"snow":75,"soul":1,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, + "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 c55375d3 93d6cede 7f742e95 c42e54d2 2f62bf3a 207462c2 e9334de2 9f2b3eb9 7f9fd209 9edeb211 39afd4ea a9c35312 e35d41d3 f91a268e 13a48921" }, "roster-017": { "about": "pass 0 band 6: chess_char_6_15_a chess_char_6_19_a chess_char_6_07_a chess_char_6_17_a chess_char_6_08_a chess_char_6_09_a chess_char_6_11_a chess_char_6_12_a chess_char_6_13_a chess_char_6_14_a chess_char_6_16_a chess_char_6_18_a", @@ -1153,7 +1139,7 @@ "total": 120, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 502, + "rngDraws": 475, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -1163,9 +1149,9 @@ "leaks": 0, "leaksUncounted": 0, "coins": 12, - "dmg": 1560928, + "dmg": 1554720, "bossDmg": 0, - "heal": 29516, + "heal": 29089, "deaths": 1, "layerGains": {"lateranoShip":12,"preciShip":12,"sargonShip":26} } @@ -1174,50 +1160,50 @@ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",4558.4,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3620.85,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3820.43,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20541,39,2], - ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,12,169697,0,0,16,5], - ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,5,53428,1556,486,8,2], - ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,29961,8646,173,0,4], - ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,204487,8769,2713,36,7], - ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,3,63902,0,1900,8,1], - ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,0,14472,0,0,5,5], - ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,20,138355,1500,50,136,4], - ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,58,801146,7190,535,73,4], + ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20869,40,2], + ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,10,175020,0,0,17,5], + ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,7,53557,1259,228,10,2], + ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,27480,8646,112,0,4], + ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,21,205514,8769,2705,34,7], + ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,4,78754,0,1162,10,1], + ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,1,9965,0,0,6,6], + ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,16,142127,1500,78,139,4], + ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,54,777489,7159,798,73,4], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,16,0,0,0,0,0,null], - ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,1,50974,1886,0,89,1], + ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,3,50321,2192,0,89,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6556,3091,864,11,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6976,3112,885,11,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,123.2,0,59,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1113.22,0,70,0,8395,2266,839,12,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,2008.19,0,99,2,8901,996,777,12,null], + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,615.43,0,70,0,7635,2764,839,12,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1510.39,0,99,1,9228,1493,777,11,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,101,0,0,0,0,0,null], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,603.66,0,131,1,10654,2271,638,12,null], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1171.51,0,131,1,10654,1773,638,12,null], ["p1","~3","token","token_10017_skadi2_dedant",null,null,123.2,1,137,0,0,0,0,0,null] ], "enemies": { "enemy_1005_yokai": [1,1,0,0,1327], "enemy_1009_lurker": [1,1,0,0,3650], "enemy_1023_jmage": [1,1,0,697,3650], - "enemy_1092_mdgint": [1,1,0,751,165888], + "enemy_1092_mdgint": [1,1,0,772,165888], "enemy_1166_dusbr": [1,1,0,0,4977], "enemy_1197_sfshu_2": [1,1,0,0,5557], "enemy_1198_msfshu_2": [3,3,0,0,21], "enemy_1210_msfden_2": [1,1,0,0,75], "enemy_1229_darmy": [27,27,0,0,188117], "enemy_1229_darmy_2": [57,57,0,0,520059], - "enemy_1275_dwlock_2": [21,21,0,23653,487711], - "enemy_1283_sgkill": [1,1,0,2234,19907], - "enemy_1364_spnaxe_2": [1,1,0,917,62117], + "enemy_1275_dwlock_2": [21,21,0,24352,487711], + "enemy_1283_sgkill": [1,1,0,2541,19907], + "enemy_1364_spnaxe_2": [1,1,0,388,55909], "enemy_1367_dseed": [2,2,0,0,9953], "enemy_1439_dslntf": [1,1,0,0,49766], "enemy_2002_bearmi_2": [1,1,0,0,18248], "enemy_9008_acbunn": [1,1,0,2771,19907] }, - "hooks": [1,145,5849,507,507,1319,1469,3395,124,130,35,31,37,24779,382,5,122,0,1,124,11,6,0], - "events": {"atk":597,"bounty":6,"deploy":21,"die":130,"dmg":1389,"engage":12,"fx":256,"heal":181,"layer":11,"skill":66,"spawn":145,"status":387}, - "fx": {"beam":4,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, - "snaps": "19eb7843 2593e6ad ced96303 58bf6c6a 57b56210 fb902b8c 2edac827 dc1e40f6 4919a6eb 503315c1 d3bf6a2b 9ca37124 7959a1b9 ab8cf469 6e9a303e 47d433a9 d5193bce 9f52967e 7a198ce1 eab6362c" + "hooks": [1,145,5849,514,514,1317,1462,3382,124,130,36,32,37,24842,344,5,122,0,1,124,11,6,0], + "events": {"atk":608,"bounty":6,"deploy":21,"die":130,"dmg":1382,"engage":12,"fx":255,"heal":175,"layer":11,"skill":68,"spawn":145,"status":379}, + "fx": {"beam":3,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, + "snaps": "19eb7843 bd0f8e67 f2152e6f 44f1594e 52e8aae9 78ca771d 6bd28927 1ebd5bbb 6cc66311 58b6c8f4 ff3ea59d be8837fa e22ad395 8f52ea74 6d8c9455 7f955f1e 74562ce4 59488ddd 1c4af3fe 435647c5" }, "roster-019": { "about": "pass 0 band 7: chess_char_6_15_b chess_char_6_19_b chess_char_5_01_b chess_char_5_05_b chess_char_6_17_b chess_char_6_13_b chess_char_6_14_b chess_char_6_16_b chess_char_6_18_b chess_char_6_20_b chess_char_5_02_b chess_char_5_03_b", @@ -1313,7 +1299,7 @@ ["p1",1,"op","chess_char_1_02_a",0,null,6437.42,1,3,0,1704,1216,282,11,1], ["p1",2,"op","chess_char_1_04_a",0,null,4318.46,1,5,3,8847,1618,0,36,1], ["p1",3,"op","chess_char_1_10_a",1,null,2619.95,1,7,0,622,3569,4493,11,1], - ["p1",4,"op","chess_char_1_08_a",0,null,0,0,11,1,5828,5656,0,18,2], + ["p1",4,"op","chess_char_1_08_a",0,null,0,0,11,1,5828,5656,0,18,1], ["p1",5,"op","chess_char_1_12_a",0,null,0,0,12,6,50470,11219,5731,45,1], ["p1",6,"op","chess_char_1_01_a",0,null,3020.87,1,8,0,9628,0,0,23,1], ["p1",7,"op","chess_char_1_03_a",0,null,0,0,9,0,6833,2800,0,10,1], @@ -1338,10 +1324,10 @@ "enemy_1422_lrsldr_2": [1,1,0,85,7920], "enemy_2005_axetro": [1,0,0,12574,403] }, - "hooks": [1,57,2700,527,526,673,721,5609,36,39,26,24,6,12672,50,35,43,3,1,36,0,3,0], - "events": {"atk":597,"bounty":4,"deploy":12,"die":36,"dmg":703,"engage":12,"fx":48,"heal":53,"leak":3,"skill":50,"spawn":57,"status":149}, - "fx": {"buff":1,"burst":3,"crit":28,"dp":2,"explode":10,"summon":2,"telegraph":2}, - "snaps": "7569fa79 a7c3130a 6e861c2b f81be7ba 7f7d11f4 b000e94a a637c5f7 adaab972 f533cb58" + "hooks": [1,57,2700,527,526,673,721,5609,36,39,25,23,6,12653,50,35,43,3,1,36,0,3,0], + "events": {"atk":597,"bounty":4,"deploy":12,"die":36,"dmg":703,"engage":12,"fx":47,"heal":53,"leak":3,"skill":48,"spawn":57,"status":149}, + "fx": {"buff":1,"burst":3,"crit":28,"dp":1,"explode":10,"summon":2,"telegraph":2}, + "snaps": "7569fa79 8b9e6870 272698d7 c199249a 1d7b1752 e247f83e a0ed8e55 53dd714d bfb37a8f" }, "roster-021": { "about": "pass 1 band 2: chess_char_1_02_b chess_char_1_20_a chess_char_1_04_b chess_char_1_08_b chess_char_1_18_a chess_char_1_19_a chess_char_1_17_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_1_07_b chess_char_1_09_b", @@ -1366,14 +1352,14 @@ ["p1",1,"op","chess_char_1_02_b",0,"none",2691.48,1,5,1,1377,1324,620,12,1], ["p1",2,"op","chess_char_1_20_a",0,null,0,0,6,1,3979,2198,0,22,1], ["p1",3,"op","chess_char_1_04_b",0,"none",0,0,11,2,5797,2904,0,36,1], - ["p1",4,"op","chess_char_1_08_b",0,"none",2205.83,1,42,4,15460,3324,0,43,3], - ["p1",5,"op","chess_char_1_18_a",0,null,2530,1,15,4,18977,1561,1561,42,4], + ["p1",4,"op","chess_char_1_08_b",0,"none",2195.05,1,42,6,14695,3335,0,41,3], + ["p1",5,"op","chess_char_1_18_a",0,null,2530,1,15,2,18892,1561,1561,42,4], ["p1",6,"op","chess_char_1_19_a",0,null,0,0,9,0,4634,1482,0,30,1], ["p1",7,"op","chess_char_1_17_a",0,null,769.58,1,7,1,14524,369,0,11,2], ["p1",8,"op","chess_char_1_01_b",0,"none",856.58,1,10,1,21351,484,0,81,6], - ["p1",9,"op","chess_char_1_03_b",0,"none",770.58,1,12,5,68773,540,0,38,2], - ["p1",10,"op","chess_char_1_06_b",0,"none",1297,1,14,2,33825,559,559,71,2], - ["p1",11,"op","chess_char_1_07_b",1,"none",1527,1,4,5,26239,0,0,23,1], + ["p1",9,"op","chess_char_1_03_b",0,"none",770.58,1,12,5,68889,540,0,38,2], + ["p1",10,"op","chess_char_1_06_b",0,"none",1297,1,14,2,34514,559,559,71,2], + ["p1",11,"op","chess_char_1_07_b",1,"none",1527,1,4,5,26286,0,0,23,1], ["p1",12,"op","chess_char_1_09_b",0,"none",2085,1,8,3,23202,0,0,76,25], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], @@ -1382,20 +1368,20 @@ "enemies": { "enemy_10043_sailor": [1,1,0,0,4950], "enemy_10124_uashld_2": [1,1,0,1762,22500], - "enemy_1081_sotisd": [1,1,0,888,13500], - "enemy_1116_liprr": [12,12,0,270,59400], + "enemy_1081_sotisd": [1,1,0,1110,13500], + "enemy_1116_liprr": [12,12,0,280,59400], "enemy_1116_liprr_2": [6,6,0,288,40500], "enemy_1121_lifbos": [3,3,0,2981,54000], "enemy_1174_duholy": [1,1,0,1907,13500], "enemy_1229_darmy_2": [1,1,0,3634,4950], "enemy_1325_cbgpro_2": [1,1,0,55,4140], - "enemy_1504_cqbw": [1,1,0,2962,9000], + "enemy_1504_cqbw": [1,1,0,2740,9000], "enemy_2085_skzjxd_2": [1,1,0,0,11700] }, - "hooks": [1,45,2903,576,576,703,715,718,33,34,49,47,36,9579,105,31,29,0,1,33,0,0,0], - "events": {"atk":646,"bounty":4,"deploy":13,"die":34,"dmg":704,"engage":12,"fx":44,"heal":24,"skill":96,"spawn":44,"status":247}, + "hooks": [1,45,2903,575,575,704,716,718,33,34,49,47,36,9552,106,31,29,0,1,33,0,0,0], + "events": {"atk":646,"bounty":4,"deploy":13,"die":34,"dmg":706,"engage":12,"fx":44,"heal":24,"skill":96,"spawn":44,"status":248}, "fx": {"crit":23,"dp":3,"explode":3,"liberate":7,"phase":2,"shield":2,"sp":1,"telegraph":3}, - "snaps": "4f2a4a77 82c17939 5293de0c 1abb45b2 2a448a3f 52cfbfb0 111f098b 256623ab 958ae00a 3ae05a03" + "snaps": "4f2a4a77 82c17939 2ff9d2cb c2302df0 cefc20d9 a856ac53 4e372ec1 34b9cec7 2afaf515 1188dae4" }, "roster-022": { "about": "pass 1 band 2: chess_char_1_10_b chess_char_1_12_b chess_char_1_20_b chess_char_1_18_b chess_char_1_19_b chess_char_1_13_b chess_char_1_14_b chess_char_1_17_b chess_char_2_01_a chess_char_2_02_a chess_char_2_04_a chess_char_2_05_a", @@ -1743,16 +1729,16 @@ "bossHpLeft": null, "rngDraws": 83, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":5,"total":62,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":0,"dmg":170765,"bossDmg":0,"heal":0,"deaths":28,"layerGains":{}}}, + "players": {"p1":{"killed":5,"total":62,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":0,"dmg":170231,"bossDmg":0,"heal":0,"deaths":28,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_3_16_b",0,"none",0,0,4,0,70,4069,0,8,1], ["p1",2,"op","chess_char_4_01_a",0,null,0,0,7,0,0,3614,0,0,0], ["p1",3,"op","chess_char_3_18_b",0,"uniequip_003_vulpis",0,0,91,0,0,5275,0,0,0], ["p1",4,"op","chess_char_4_04_a",0,null,0,0,92,0,19919,24112,0,45,6], ["p1",5,"op","chess_char_3_13_b",0,"none",0,0,1,0,11655,1802,0,31,1], - ["p1",6,"op","chess_char_3_14_b",0,"none",0,0,85,0,28825,4151,0,33,1], + ["p1",6,"op","chess_char_3_14_b",0,"none",0,0,85,1,28541,4151,0,33,1], ["p1",7,"op","chess_char_3_17_b",0,"none",0,0,78,3,40093,7884,0,26,10], - ["p1",8,"op","chess_char_3_19_b",0,"uniequip_003_vigil",0,0,2,2,22230,2429,0,32,3], + ["p1",8,"op","chess_char_3_19_b",0,"uniequip_003_vigil",0,0,2,1,21981,2429,0,32,3], ["p1",9,"op","chess_char_3_20_b",0,"none",0,0,68,0,3939,3795,0,16,1], ["p1",10,"op","chess_char_3_21_b",0,"uniequip_003_archet",0,0,61,0,23197,4603,0,24,10], ["p1",11,"op","chess_char_4_02_a",0,null,0,0,65,0,9689,5869,0,7,0], @@ -1767,15 +1753,15 @@ "enemy_1174_duholy_2": [1,0,1,1351,711], "enemy_1234_dsubrl": [1,0,1,3858,0], "enemy_1328_cbjedi": [1,0,1,0,0], - "enemy_1381_winman": [21,3,18,8940,113211], + "enemy_1381_winman": [21,3,18,8940,112677], "enemy_1389_winbab_2": [15,0,12,36819,7599], "enemy_1509_mousek": [1,0,1,1107,24], "enemy_9006_actoxi": [1,0,1,515,661] }, - "hooks": [1,91,5100,430,430,540,552,0,34,88,34,34,0,4575,15,29,62,54,1,37,0,0,18], - "events": {"atk":457,"deploy":29,"die":34,"dmg":521,"engage":11,"fx":81,"leak":54,"skill":68,"spawn":75,"status":93}, + "hooks": [1,91,5100,430,430,540,552,0,34,88,34,34,0,4575,15,28,62,54,1,37,0,0,18], + "events": {"atk":457,"deploy":29,"die":34,"dmg":520,"engage":11,"fx":81,"leak":54,"skill":68,"spawn":75,"status":93}, "fx": {"camouflage":1,"crit":4,"dodge":18,"dp":3,"phase":1,"pulse":11,"revive":1,"sentry":10,"shadowWeave":10,"shield":4,"shieldBreak":2,"summon":2,"telegraph":1,"volley":8,"wolfShadowLost":4,"zone":1}, - "snaps": "fb203b8d c35cab02 eb33b223 941b416a 9c471120 13d82146 2e568a2d 83c53ba1 2f786a51 bf56ddea f22fb2ff 64ee19ad a8119525 6cc0219a 4c6597da e01e3ae0 ef255300" + "snaps": "fb203b8d c35cab02 eb33b223 07662c9b e58be09c 74cfb771 df970e2a 3db5742e fa692b86 fcab8aad b923921c 423e244e 94f3c202 f1d97299 ef8531d9 7aa0a083 e01cf7e7" }, "roster-029": { "about": "pass 1 band 4: chess_char_4_17_a chess_char_4_18_a chess_char_4_11_a chess_char_4_19_a chess_char_4_07_a chess_char_4_16_a chess_char_4_09_a chess_char_4_10_a chess_char_4_12_a chess_char_4_13_a chess_char_4_14_a chess_char_4_20_a token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1793,16 +1779,16 @@ "total": 85, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 106, + "rngDraws": 108, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":77,"total":85,"perfect":false,"leaks":8,"leaksUncounted":0,"coins":4,"dmg":339651,"bossDmg":0,"heal":2842,"deaths":8,"layerGains":{"preciShip":4}} + "p1": {"killed":77,"total":85,"perfect":false,"leaks":8,"leaksUncounted":0,"coins":4,"dmg":339629,"bossDmg":0,"heal":2842,"deaths":8,"layerGains":{"preciShip":4}} }, "units": [ - ["p1",1,"op","chess_char_4_17_a",0,null,1139.6,1,95,2,32065,2678,0,86,2], + ["p1",1,"op","chess_char_4_17_a",0,null,1139.6,1,95,2,32065,2731,0,86,2], ["p1",2,"op","chess_char_4_18_a",0,null,2852.34,1,5,2,7244,2557,1892,15,1], ["p1",3,"op","chess_char_4_11_a",0,null,0,0,7,2,6421,3478,0,14,0], - ["p1",4,"op","chess_char_4_19_a",0,null,1560,1,98,1,2253,2139,0,23,5], + ["p1",4,"op","chess_char_4_19_a",0,null,1560,1,98,1,2230,2139,0,22,5], ["p1",5,"op","chess_char_4_07_a",0,null,1738,1,96,4,6120,2735,0,33,1], ["p1",6,"op","chess_char_4_16_a",0,null,464,1,70,5,35686,10610,0,76,4], ["p1",7,"op","chess_char_4_09_a",0,null,1316,1,14,18,81673,520,0,37,17], @@ -1819,19 +1805,19 @@ "enemies": { "enemy_10081_mpplai": [1,1,0,0,2000], "enemy_1026_aghost": [1,1,0,0,3040], - "enemy_1148_dssbr": [45,42,3,269,99280], - "enemy_1148_dssbr_2": [27,26,1,1207,76595], + "enemy_1148_dssbr": [45,42,3,1269,99280], + "enemy_1148_dssbr_2": [27,26,1,207,76595], "enemy_1160_hvyslr_2": [1,1,0,4353,11200], "enemy_1200_msfjin_2": [1,1,0,0,28], - "enemy_1272_nhtank_2": [1,0,1,9391,6626], + "enemy_1272_nhtank_2": [1,0,1,9391,6603], "enemy_1407_hummbd": [1,1,0,10,3600], - "enemy_1439_dslntf": [6,4,2,6841,129462], + "enemy_1439_dslntf": [6,4,2,6894,129462], "enemy_2002_bearmi_2": [1,0,1,527,7821] }, - "hooks": [1,106,4996,536,536,1039,1872,1111,85,93,48,48,0,22944,864,28,85,8,1,85,1,9,5], - "events": {"atk":578,"bounty":2,"deploy":19,"die":85,"dmg":1865,"engage":10,"fx":56,"heal":456,"layer":1,"leak":8,"skill":97,"spawn":101,"status":174}, - "fx": {"block":13,"burst":9,"dodge":5,"dp":5,"explode":1,"expose":1,"garrison":1,"garrisonGrant":1,"phase":1,"riposte":4,"shieldBreak":7,"swordRain":4,"zone":4}, - "snaps": "3456cb23 713f3cc1 34792b50 4ccb1502 81f08e79 961242f9 806545e9 c15fe545 e243dc99 b17e0b14 48682658 11546480 2341a177 1f7b7abe 6e860b2f 1d3e5452 f85927b6" + "hooks": [1,106,4996,537,537,1040,1872,1112,85,93,48,48,0,22937,864,28,85,8,1,85,1,9,5], + "events": {"atk":579,"bounty":2,"deploy":19,"die":85,"dmg":1865,"engage":10,"fx":57,"heal":457,"layer":1,"leak":8,"skill":97,"spawn":101,"status":174}, + "fx": {"block":14,"burst":9,"dodge":5,"dp":5,"explode":1,"expose":1,"garrison":1,"garrisonGrant":1,"phase":1,"riposte":4,"shieldBreak":7,"swordRain":4,"zone":4}, + "snaps": "3456cb23 713f3cc1 34792b50 4ccb1502 81f08e79 3025bc2d 7320999d e5f828e0 c65af8c4 692ee49a 5793c2e6 c95b8b9a b2eae431 39fbb5d1 54ee5312 a05d41bf dfc773cd" }, "roster-030": { "about": "pass 1 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_21_a chess_char_4_24_a chess_char_4_25_a chess_char_4_26_a chess_char_4_02_b chess_char_4_06_b", @@ -1897,28 +1883,28 @@ "time": 190, "ticks": 5700, "reason": "timeout", - "killed": 64, + "killed": 62, "total": 76, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 141, + "rngDraws": 103, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":64,"total":76,"perfect":false,"leaks":12,"leaksUncounted":0,"coins":6,"dmg":808362,"bossDmg":0,"heal":46581,"deaths":6,"layerGains":{"preciShip":8}} + "p1": {"killed":62,"total":76,"perfect":false,"leaks":14,"leaksUncounted":0,"coins":6,"dmg":815070,"bossDmg":0,"heal":40547,"deaths":7,"layerGains":{"preciShip":8}} }, "units": [ - ["p1",1,"op","chess_char_4_17_b",0,"uniequip_003_hsguma",294.8,1,94,0,8514,6981,0,54,2], - ["p1",2,"op","chess_char_4_18_b",0,"uniequip_003_mudrok",5522.9,1,99,5,76661,9083,3182,50,2], - ["p1",3,"op","chess_char_4_11_b",0,"none",2544,1,86,0,6128,6333,0,32,0], - ["p1",4,"op","chess_char_4_19_b",0,"uniequip_003_flamtl",1943,1,83,4,74590,3126,0,76,13], - ["p1",5,"op","chess_char_4_22_b",0,"none",2379,1,12,11,125646,18243,0,123,41], - ["p1",6,"op","chess_char_4_16_b",0,"uniequip_003_texas2",1609,1,14,10,118693,20183,0,168,2], + ["p1",1,"op","chess_char_4_17_b",0,"uniequip_003_hsguma",660.92,1,94,0,7699,6615,0,52,2], + ["p1",2,"op","chess_char_4_18_b",0,"uniequip_003_mudrok",5333.81,1,99,4,96324,9475,3385,63,3], + ["p1",3,"op","chess_char_4_11_b",0,"none",2544,1,88,0,7036,6333,0,37,0], + ["p1",4,"op","chess_char_4_19_b",0,"uniequip_003_flamtl",1943,1,83,10,91137,3468,0,86,13], + ["p1",5,"op","chess_char_4_22_b",0,"none",2379,1,100,7,71910,14776,0,82,27], + ["p1",6,"op","chess_char_4_16_b",0,"uniequip_003_texas2",1609,1,14,12,120468,19452,0,170,2], ["p1",7,"op","chess_char_4_10_b",0,"none",1514,1,8,0,0,0,0,0,0], ["p1",8,"op","chess_char_4_12_b",0,"uniequip_003_glady",4456.2,1,9,0,59468,0,0,30,26], - ["p1",9,"op","chess_char_4_13_b",0,"uniequip_003_gnosis",1974,1,13,13,141663,0,0,100,100], - ["p1",10,"op","chess_char_4_14_b",0,"none",0,0,73,3,30168,3092,0,14,3], - ["p1",11,"op","chess_char_4_20_b",0,"uniequip_003_fartth",1499,1,6,17,166831,0,0,82,4], - ["p1",12,"op","chess_char_4_21_b",0,"none",1524,1,10,0,0,0,43399,61,4], + ["p1",9,"op","chess_char_4_13_b",0,"uniequip_003_gnosis",1974,1,13,10,147453,0,0,102,102], + ["p1",10,"op","chess_char_4_14_b",0,"none",0,0,73,2,42907,3092,0,22,3], + ["p1",11,"op","chess_char_4_20_b",0,"uniequip_003_fartth",1499,1,6,16,170668,0,0,85,4], + ["p1",12,"op","chess_char_4_21_b",0,"none",1524,1,10,0,0,0,37163,60,4], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,15,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1926,20 +1912,20 @@ ], "enemies": { "enemy_1006_shield_2": [1,1,0,366,16589], - "enemy_1010_demon": [21,17,4,34710,234366], + "enemy_1010_demon": [21,16,5,30519,224029], "enemy_1019_jshoot_2": [1,1,0,129,4479], "enemy_1148_dssbr": [1,1,0,0,4645], "enemy_1198_msfshu": [1,1,0,0,5], "enemy_1269_nhfly": [1,1,0,533,0], - "enemy_1320_wdrrl_2": [6,2,3,11472,116114], + "enemy_1320_wdrrl_2": [6,2,3,11484,134072], "enemy_1387_winshd": [1,1,0,2918,19907], - "enemy_1422_lrsldr_2": [42,39,3,1365,371802], - "enemy_1539_reid": [1,0,1,15550,40456] + "enemy_1422_lrsldr_2": [42,38,4,1250,367913], + "enemy_1539_reid": [1,0,1,16012,43432] }, - "hooks": [1,97,5700,1034,1034,1118,1102,123,70,81,197,195,0,16443,2326,63,76,11,1,85,1,0,8], - "events": {"atk":1088,"bounty":3,"deploy":19,"die":70,"dmg":1090,"engage":10,"fx":84,"heal":115,"layer":1,"leak":11,"skill":395,"spawn":92,"status":429}, - "fx": {"block":8,"charge":4,"displace":19,"dodge":8,"dp":13,"explode":4,"garrison":1,"garrisonGrant":1,"revive":1,"riposte":8,"shieldBreak":12,"swordRain":2,"telegraph":1,"undying":2}, - "snaps": "8285ab52 9e70080e a7c10a1e 192dab0b 40a84501 f7c55fa6 88ea3b8a 8d6efb4d 630fcfc6 772e22aa 624415dc f071b098 39ef0344 0961f483 027e3ae9 6bad7832 df731dc0 16849966 f7249471" + "hooks": [1,98,5700,1012,1012,1109,1091,110,69,82,186,185,0,16521,2038,57,76,13,1,80,1,0,11], + "events": {"atk":1056,"bounty":3,"deploy":20,"die":69,"dmg":1079,"engage":10,"fx":88,"heal":103,"layer":1,"leak":13,"skill":374,"spawn":92,"status":449}, + "fx": {"block":7,"charge":3,"displace":19,"dodge":11,"dp":13,"explode":4,"garrison":1,"garrisonGrant":1,"revive":1,"riposte":11,"shieldBreak":12,"swordRain":2,"telegraph":1,"undying":2}, + "snaps": "8285ab52 9e70080e a7c10a1e 192dab0b 36f26690 1662e05b e1176369 d711dec6 c9b27c9f d6dd0717 fde76e74 b4688fc9 4225ffcc 4ed526dd 405d7443 d82105bb 476c307b bb5d649d 8ecf6fce" }, "roster-032": { "about": "pass 1 band 5: chess_char_4_23_b chess_char_5_08_a chess_char_5_01_a chess_char_5_05_a chess_char_5_06_a chess_char_5_07_a chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b chess_char_5_02_a chess_char_5_03_a chess_char_5_10_a", @@ -2017,64 +2003,64 @@ "round": 12, "seed": 3754088384, "waveId": "act1autochess_h05", - "time": 210.5, - "ticks": 6315, + "time": 220.03, + "ticks": 6601, "reason": "cleared", - "killed": 46, + "killed": 62, "total": 167, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 418, + "rngDraws": 708, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 46, + "killed": 62, "total": 167, "perfect": false, - "leaks": 121, + "leaks": 105, "leaksUncounted": 0, "coins": 2, - "dmg": 412266, + "dmg": 567551, "bossDmg": 0, - "heal": 39432, - "deaths": 29, - "layerGains": {"indomShip":65} + "heal": 78063, + "deaths": 23, + "layerGains": {"indomShip":55} } }, "units": [ - ["p1",1,"op","chess_char_5_11_a",0,null,2474.56,1,200,2,22853,11105,5555,42,5], - ["p1",2,"op","chess_char_5_19_a",0,null,3221.7,1,202,3,42457,18975,143,16,2], - ["p1",3,"op","chess_char_5_13_a",0,null,0,0,163,10,104087,26324,70,36,1], - ["p1",4,"op","chess_char_5_14_a",0,null,1732,1,201,2,8120,5409,1482,23,3], - ["p1",5,"op","chess_char_5_06_b",0,"uniequip_003_etlchi",0,0,157,14,130469,13814,5951,32,8], - ["p1",6,"op","chess_char_5_17_a",0,null,0,0,198,0,9636,19979,192,19,6], - ["p1",7,"op","chess_char_5_12_a",1,null,0,0,3,3,14164,3044,75,13,2], - ["p1",8,"op","chess_char_5_15_a",0,null,926,1,203,6,18667,926,14185,84,25], - ["p1",9,"op","chess_char_5_20_a",0,null,0,0,187,0,7091,3476,152,15,1], - ["p1",10,"op","chess_char_5_21_a",0,null,0,0,190,0,5581,7990,180,9,0], - ["p1",11,"op","chess_char_5_22_a",0,null,1237,1,204,6,46595,1389,0,72,2], - ["p1",12,"op","chess_char_5_23_a",0,null,0,0,156,0,0,5131,11429,21,8], + ["p1",1,"op","chess_char_5_11_a",0,null,2505.72,1,198,6,38893,21029,11772,78,12], + ["p1",2,"op","chess_char_5_19_a",0,null,3241,1,200,5,51500,13953,150,25,3], + ["p1",3,"op","chess_char_5_13_a",0,null,1518.19,1,163,7,146882,26657,118,49,2], + ["p1",4,"op","chess_char_5_14_a",0,null,1732,1,167,1,14211,11333,4806,39,4], + ["p1",5,"op","chess_char_5_06_b",0,"uniequip_003_etlchi",0,0,158,17,155310,14251,6391,35,8], + ["p1",6,"op","chess_char_5_17_a",0,null,2250,1,202,0,18076,26135,192,34,9], + ["p1",7,"op","chess_char_5_12_a",1,null,1342.62,1,3,3,15727,3936,242,15,3], + ["p1",8,"op","chess_char_5_15_a",0,null,926,1,4,9,29280,0,28867,114,32], + ["p1",9,"op","chess_char_5_20_a",0,null,0,0,188,0,7281,4288,200,16,1], + ["p1",10,"op","chess_char_5_21_a",0,null,0,0,193,0,4781,8961,180,8,0], + ["p1",11,"op","chess_char_5_22_a",0,null,1237,1,5,14,83062,697,0,123,4], + ["p1",12,"op","chess_char_5_23_a",0,null,1422,1,11,0,0,13842,25127,41,22], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["p1","~1","token","token_10015_dusk_drgn",null,null,1226.94,0,38,0,2547,787,17,8,null] ], "enemies": { - "enemy_1005_yokai_3": [1,0,1,4843,11508], - "enemy_1009_lurker": [72,16,56,703,105924], - "enemy_10159_mntrjn": [1,0,1,0,25020], - "enemy_1019_jshoot_2": [51,24,27,16056,139867], + "enemy_1005_yokai_3": [1,0,1,6363,11119], + "enemy_1009_lurker": [72,24,48,1078,148232], + "enemy_10159_mntrjn": [1,0,1,0,24974], + "enemy_1019_jshoot_2": [51,27,24,19121,173189], "enemy_1118_lidbox_2": [1,1,0,39,14774], "enemy_1196_msfyin": [1,1,0,0,3], - "enemy_1252_lysytb_2": [1,0,1,206,12737], - "enemy_1364_spnaxe_2": [1,0,1,13143,13996], - "enemy_1404_msnip": [36,4,32,76406,127059], - "enemy_1516_jakill": [1,0,1,6954,7274], - "enemy_9011_acrefr": [1,0,1,0,5226] + "enemy_1252_lysytb_2": [1,0,1,241,12325], + "enemy_1364_spnaxe_2": [1,0,1,7280,15481], + "enemy_1404_msnip": [36,9,27,105830,206983], + "enemy_1516_jakill": [1,0,1,5916,8197], + "enemy_9011_acrefr": [1,0,1,0,3596] }, - "hooks": [1,204,6315,955,955,3544,3574,1860,75,197,63,63,0,22106,192,109,167,121,1,80,13,0,6], - "events": {"atk":1040,"bounty":1,"deploy":35,"die":76,"dmg":3536,"engage":12,"fx":118,"heal":363,"layer":13,"leak":121,"skill":126,"spawn":182,"status":263}, - "fx": {"aoe":3,"dodge":6,"dollEnd":4,"garrison":13,"healAoe":5,"hpShare":1,"palsy":1,"reborn":2,"revive":8,"shield":35,"sp":8,"substitute":5,"summon":1,"swap":1,"zone":25}, - "snaps": "0092f82c d956b3ce a0ea1881 5a64de8a 599b4202 9e1ae601 5374146f 16bd3aaf fde61ed2 91162832 b910803a ac839a60 a1563b88 f4c5c089 2603620b 128b4ac4 3c6b3ca2 b40bc0ae ad9e9e42 6f2dd105 b73c731d" + "hooks": [1,202,6601,1313,1313,4209,4258,4062,85,191,100,99,0,34051,248,154,167,105,1,89,11,0,8], + "events": {"atk":1423,"bounty":1,"deploy":33,"die":86,"dmg":4187,"engage":12,"fx":169,"heal":682,"layer":11,"leak":105,"skill":199,"spawn":182,"status":385}, + "fx": {"aoe":4,"crit":6,"dodge":8,"dollEnd":3,"garrison":11,"healAoe":12,"hpShare":2,"palsy":1,"reborn":2,"revive":11,"shield":66,"sp":5,"substitute":4,"summon":1,"swap":1,"zone":32}, + "snaps": "0092f82c f4836b67 17c58ff9 db1376e8 5d7d41d2 f220322b 8bde1ddc 5b777032 7d7db450 c8a0d56d a986b292 25f56315 dfebbe01 63bf13a2 a2573acb 42c76399 6fd27744 7b6d39f9 3f3829d0 fbd4bdcf c6faabee 5a61f663" }, "roster-034": { "about": "pass 1 band 6: chess_char_5_08_b chess_char_5_11_b chess_char_5_19_b chess_char_5_13_b chess_char_5_14_b chess_char_5_07_b chess_char_5_17_b chess_char_5_10_b chess_char_5_12_b chess_char_5_15_b chess_char_5_20_b chess_char_5_21_b", @@ -2088,47 +2074,47 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 82, + "killed": 90, "total": 104, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 619, + "rngDraws": 614, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":82,"total":104,"perfect":false,"leaks":22,"leaksUncounted":0,"coins":6,"dmg":4801724,"bossDmg":0,"heal":139288,"deaths":1,"layerGains":{}}}, + "players": {"p1":{"killed":90,"total":104,"perfect":false,"leaks":14,"leaksUncounted":0,"coins":8,"dmg":5067807,"bossDmg":0,"heal":147591,"deaths":1,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_b",0,"uniequip_003_horn",2381.35,1,7,25,1560529,36004,1132,96,83], - ["p1",2,"op","chess_char_5_11_b",0,"uniequip_003_demkni",4194.43,1,10,2,85198,10165,49823,194,31], - ["p1",3,"op","chess_char_5_19_b",0,"none",3682,1,11,5,218886,7679,577,124,5], - ["p1",4,"op","chess_char_5_13_b",0,"uniequip_003_ghost2",3448.92,1,13,4,163179,41498,641,210,5], - ["p1",5,"op","chess_char_5_14_b",0,"none",3217.16,1,15,0,16840,27606,11049,217,16], - ["p1",6,"op","chess_char_5_07_b",0,"uniequip_003_surtr",2680,1,8,4,292063,15460,635,104,49], - ["p1",7,"op","chess_char_5_17_b",0,"uniequip_003_f12yin",2337.47,1,100,6,203715,3444,325,86,35], - ["p1",8,"op","chess_char_5_10_b",0,"uniequip_003_lisa",1470,1,4,5,177131,0,0,116,6], - ["p1",9,"op","chess_char_5_12_b",1,"uniequip_003_dusk",1667,1,5,22,1559480,0,0,91,5], - ["p1",10,"op","chess_char_5_15_b",0,"none",1907.5,1,12,0,58039,0,75108,166,128], - ["p1",11,"op","chess_char_5_20_b",0,"uniequip_003_aglina",1352,1,14,5,208929,1794,0,138,6], - ["p1",12,"op","chess_char_5_21_b",0,"none",3330.35,1,6,4,257734,0,0,50,3], + ["p1",1,"op","chess_char_5_08_b",0,"uniequip_003_horn",2050.56,1,7,17,1536539,41898,420,96,80], + ["p1",2,"op","chess_char_5_11_b",0,"uniequip_003_demkni",2689.06,1,10,2,29486,12487,60429,193,37], + ["p1",3,"op","chess_char_5_19_b",0,"none",3682,1,11,7,218351,8132,115,140,5], + ["p1",4,"op","chess_char_5_13_b",0,"uniequip_003_ghost2",3075.69,1,13,3,99774,41650,360,210,5], + ["p1",5,"op","chess_char_5_14_b",0,"none",3261,1,15,0,16161,26656,9219,199,20], + ["p1",6,"op","chess_char_5_07_b",0,"uniequip_003_surtr",1348.66,1,8,6,335602,19370,385,131,52], + ["p1",7,"op","chess_char_5_17_b",0,"uniequip_003_f12yin",1279.31,1,117,11,387303,4557,380,140,67], + ["p1",8,"op","chess_char_5_10_b",0,"uniequip_003_lisa",1470,1,4,3,165201,0,0,115,6], + ["p1",9,"op","chess_char_5_12_b",1,"uniequip_003_dusk",1667,1,5,32,1665923,0,0,90,6], + ["p1",10,"op","chess_char_5_15_b",0,"none",1907.5,1,12,0,20040,0,76283,99,70], + ["p1",11,"op","chess_char_5_20_b",0,"uniequip_003_aglina",1352,1,14,2,222036,1794,0,138,7], + ["p1",12,"op","chess_char_5_21_b",0,"none",3330.35,1,6,7,371392,0,0,66,3], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_10018_sgrobh": [1,1,0,8642,46438], - "enemy_10094_crstf": [1,1,0,184,24767], - "enemy_1043_zomsbr": [1,1,0,38,16245], + "enemy_10018_sgrobh": [1,1,0,7268,46438], + "enemy_10094_crstf": [1,1,0,158,24767], + "enemy_1043_zomsbr": [1,1,0,19,16095], "enemy_1165_duhond_2": [1,1,0,114,24767], "enemy_1204_msfhu": [1,1,0,0,12], - "enemy_1288_duskls": [1,1,0,3189,30964], - "enemy_1381_winman": [27,23,4,16850,933397], - "enemy_1381_winman_2": [39,31,7,37691,1724781], - "enemy_1387_winshd": [30,22,5,75259,1942830], - "enemy_1425_lrcmra_2": [1,0,1,1682,43433], - "enemy_2009_csaudc": [1,0,1,0,14091] + "enemy_1288_duskls": [1,0,1,0,30959], + "enemy_1381_winman": [27,27,0,17712,969626], + "enemy_1381_winman_2": [39,31,7,30509,1687726], + "enemy_1387_winshd": [30,25,3,91706,2063090], + "enemy_1425_lrcmra_2": [1,1,0,9058,154793], + "enemy_2009_csaudc": [1,1,0,0,49534] }, - "hooks": [1,120,6900,2592,2592,3942,3943,6279,83,102,372,368,0,35187,5677,97,104,18,1,84,0,0,6], - "events": {"atk":3006,"bounty":3,"deploy":13,"die":84,"dmg":3929,"engage":12,"fx":368,"heal":1084,"leak":18,"skill":740,"spawn":119,"status":797}, - "fx": {"aoe":16,"crit":21,"dodge":6,"ember":1,"healAoe":31,"hpShare":5,"sp":140,"zone":148}, - "snaps": "de3bd2e2 3bc7daf8 18ea893d 1ba5ff71 e9295c82 a68eee00 eca0d338 0a422d3c a30fc3a9 d6b53fa1 e4292430 9a138543 6f59d994 c998b7e9 26b9bbcd 2f9a6a6f 437b79cf acf535b3 9e8b5733 b227076b c64de105 4080fab7 3d4e320a" + "hooks": [1,120,6900,2634,2634,4056,4053,4687,91,103,358,353,0,32100,5761,102,104,11,1,92,0,0,9], + "events": {"atk":3137,"bounty":4,"deploy":13,"die":92,"dmg":4043,"engage":12,"fx":321,"heal":1049,"leak":11,"skill":711,"spawn":119,"status":811}, + "fx": {"aoe":20,"crit":32,"dodge":9,"ember":1,"healAoe":37,"hpShare":5,"sp":127,"zone":90}, + "snaps": "de3bd2e2 39a4f04d 938d6e2f 6a8ba08b 0b40b2fe 94790546 a24a7a7d dc62d32c a9869a32 3a07aa66 96304745 366c6b95 60cd1e82 8c35892a 4635395f 7e6ccb9b d720d2ea 416f59e4 1d59d0d5 96b1e36e 94267b1d 5dfffecd e1af0b3c" }, "roster-035": { "about": "pass 1 band 6: chess_char_6_03_a chess_char_6_06_a chess_char_6_07_a chess_char_5_22_b chess_char_5_23_b chess_char_6_01_a chess_char_6_02_a chess_char_6_04_a chess_char_6_05_a chess_char_6_08_a chess_char_6_09_a chess_char_6_11_a token_10017_skadi2_dedant token_10030_mlyss_wtrman", @@ -2397,7 +2383,7 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 47, + "killed": 46, "total": 52, "unspawned": 0, "bossHpLeft": null, @@ -2405,32 +2391,32 @@ "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 47, + "killed": 46, "total": 52, "perfect": false, - "leaks": 5, + "leaks": 6, "leaksUncounted": 1, "coins": 6, - "dmg": 440079, + "dmg": 440196, "bossDmg": 0, - "heal": 13648, + "heal": 13481, "deaths": 1, - "layerGains": {"miraShip":1,"raidShip":27} + "layerGains": {"miraShip":1,"raidShip":28} } }, "units": [ - ["p1",1,"op","chess_char_3_12_a",1,null,4481.28,1,29,8,53301,3605,3608,222,9], - ["p1",2,"op","chess_char_3_12_b",1,"none",5637.12,1,31,6,51231,479,479,143,7], + ["p1",1,"op","chess_char_3_12_a",1,null,4504.62,1,29,7,51498,3584,3585,222,9], + ["p1",2,"op","chess_char_3_12_b",1,"none",5666.48,1,31,6,53068,508,508,143,7], ["p1",3,"op","chess_char_3_18_a",1,null,1481,1,10,0,7643,0,0,0,7], - ["p1",4,"op","chess_char_3_18_b",1,"none",1715.43,1,57,4,77894,5011,3036,137,9], - ["p1",5,"op","chess_char_3_04_a",2,null,1864,1,9,4,38720,34,34,94,3], - ["p1",6,"op","chess_char_3_05_a",1,null,5876,1,11,3,26580,4580,4580,80,1], + ["p1",4,"op","chess_char_3_18_b",1,"none",1646.25,1,57,3,77123,5093,3049,131,9], + ["p1",5,"op","chess_char_3_04_a",2,null,1864,1,9,4,38378,51,51,90,3], + ["p1",6,"op","chess_char_3_05_a",1,null,5876,1,11,4,28190,4377,4377,78,1], ["p1",7,"op","chess_char_3_04_b",2,"uniequip_004_swire2",2658.89,1,73,5,40260,275,275,54,3], - ["p1",8,"op","chess_char_3_05_b",1,"none",6821.76,1,61,3,32949,1630,1636,23,3], - ["p1",9,"op","chess_char_3_01_a",1,null,1511.94,1,1,2,4527,0,0,47,2], - ["p1",10,"op","chess_char_3_19_a",1,null,1439,1,4,1,31340,0,0,101,4], - ["p1",11,"op","chess_char_3_21_a",1,null,1364,1,7,9,66107,0,0,177,17], - ["p1",12,"op","chess_char_3_01_b",1,"none",1965.6,1,2,2,7790,0,0,47,2], + ["p1",8,"op","chess_char_3_05_b",1,"none",6857.29,1,61,3,32949,1630,1636,23,3], + ["p1",9,"op","chess_char_3_01_a",1,null,1511.94,1,1,1,4466,0,0,48,2], + ["p1",10,"op","chess_char_3_19_a",1,null,1439,1,4,1,31081,0,0,99,4], + ["p1",11,"op","chess_char_3_21_a",1,null,1364,1,7,10,65935,0,0,174,17], + ["p1",12,"op","chess_char_3_01_b",1,"none",1965.6,1,2,2,7868,0,0,48,2], ["p1",13,"token","token_10028_vigil_wolf",null,null,880,1,5,0,1737,0,0,7,null] ], "enemies": { @@ -2440,16 +2426,16 @@ "enemy_1169_duphlx": [1,1,0,13,4320], "enemy_1208_msfji_2": [1,1,0,0,32], "enemy_1302_ymtro_2": [1,1,0,0,32400], - "enemy_1381_winman": [21,21,0,1157,131544], - "enemy_1381_winman_2": [12,12,0,1085,101088], - "enemy_1387_winshd": [12,7,0,8431,121750], + "enemy_1381_winman": [21,21,0,1183,131544], + "enemy_1381_winman_2": [12,12,0,1119,101088], + "enemy_1387_winshd": [12,6,0,8276,121866], "enemy_1438_dspred": [1,1,0,2934,14256], "enemy_2034_sythef": [1,1,0,25,8640] }, - "hooks": [1,74,5100,1392,1392,1946,1946,3274,48,55,67,64,0,15874,103,85,53,0,1,48,7,0,0], - "events": {"atk":1392,"bounty":3,"deploy":21,"die":55,"dmg":1946,"engage":12,"fx":146,"heal":8,"layer":7,"skill":131,"spawn":66,"status":167}, - "fx": {"aoe":31,"blink":4,"bondMilestone":1,"buff":6,"coin":50,"displace":8,"dp":20,"garrison":7,"shield":1,"volley":17,"wolfShadow":1}, - "snaps": "b7d44319 4fc048ae 28ee4e6e c9c603c2 55d0890f 7dc46b6f 45f82890 a80e21f1 4798eff8 d051d766 d7744b9f bb5fd3de c958366f 0c72b3be 3c5f8167 11cd7bde 9e47cb83" + "hooks": [1,74,5100,1380,1380,1941,1941,3224,47,54,67,64,0,15873,103,87,53,0,1,47,8,0,0], + "events": {"atk":1380,"bounty":3,"deploy":21,"die":54,"dmg":1941,"engage":12,"fx":147,"heal":8,"layer":8,"skill":131,"spawn":66,"status":167}, + "fx": {"aoe":31,"blink":4,"bondMilestone":1,"buff":6,"coin":50,"displace":8,"dp":20,"garrison":8,"shield":1,"volley":17,"wolfShadow":1}, + "snaps": "c0eb778a 0ef5a00f 1e41a09e e9c064ac df541da6 755856db 7e873b2c 0c850720 4c4f9989 cab82556 ccb4d1e8 d0bb92cb 2c214855 11eb34c3 14292e76 2f77680e 5c3a1e6b" }, "roster-040": { "about": "pass 2 band 4: chess_char_4_01_a chess_char_4_17_a chess_char_4_18_a chess_char_4_04_a chess_char_4_07_a chess_char_4_16_a chess_char_4_09_a chess_char_3_19_b chess_char_3_21_b chess_char_4_02_a chess_char_4_12_a chess_char_4_13_a token_10028_vigil_wolf", @@ -2469,7 +2455,7 @@ "bossHpLeft": null, "rngDraws": 290, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":28,"total":65,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":4,"dmg":539070,"bossDmg":0,"heal":532,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":28,"total":65,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":4,"dmg":538376,"bossDmg":0,"heal":532,"deaths":29,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_4_01_a",1,null,0,0,3,1,4146,2638,0,43,1], ["p1",2,"op","chess_char_4_17_a",2,null,0,0,6,0,15255,2849,0,27,1], @@ -2478,7 +2464,7 @@ ["p1",5,"op","chess_char_4_07_a",2,null,0,0,84,0,2834,8690,0,12,1], ["p1",6,"op","chess_char_4_16_a",1,null,520.98,1,102,0,60790,8201,0,23,7], ["p1",7,"op","chess_char_4_09_a",2,null,1179.06,1,101,1,13963,1493,0,18,0], - ["p1",8,"op","chess_char_3_19_b",1,"none",0,0,92,6,63680,3296,0,75,2], + ["p1",8,"op","chess_char_3_19_b",1,"none",0,0,92,6,62986,3296,0,74,2], ["p1",9,"op","chess_char_3_21_b",1,"uniequip_004_archet",0,0,94,6,149953,3180,0,64,7], ["p1",10,"op","chess_char_4_02_a",1,null,0,0,88,4,62899,2856,0,20,1], ["p1",11,"op","chess_char_4_12_a",1,null,0,0,89,4,41821,4040,532,37,1], @@ -2491,7 +2477,7 @@ "enemies": { "enemy_1005_yokai": [24,15,9,0,61406], "enemy_1005_yokai_2": [27,10,12,9640,95871], - "enemy_1005_yokai_3": [6,0,5,21276,242322], + "enemy_1005_yokai_3": [6,0,5,21276,241628], "enemy_10065_ftzlc": [1,1,0,0,16339], "enemy_10162_mnctpt": [1,0,1,5059,43013], "enemy_1119_vofsd": [1,1,0,0,47298], @@ -2501,10 +2487,10 @@ "enemy_1517_xi": [1,0,1,5916,1676], "enemy_9016_acstmr": [1,0,1,0,0] }, - "hooks": [1,102,5100,642,642,976,1028,371,57,91,28,27,29,9673,247,15,65,31,1,63,0,2,9], - "events": {"atk":719,"bounty":2,"deploy":35,"die":60,"dmg":1021,"engage":12,"fx":91,"leak":31,"skill":55,"spawn":81,"status":269}, + "hooks": [1,102,5100,641,641,975,1026,371,57,91,28,27,29,9673,247,15,65,31,1,63,0,2,9], + "events": {"atk":718,"bounty":2,"deploy":35,"die":60,"dmg":1019,"engage":12,"fx":91,"leak":31,"skill":55,"spawn":81,"status":269}, "fx": {"beam":5,"block":2,"buff":3,"burst":2,"coldWind":1,"dodge":9,"dp":2,"iceSpike":1,"overclock":1,"overload":1,"revive":4,"rockfall":1,"sentry":6,"shadowWeave":19,"shield":6,"shieldBreak":7,"stone":1,"summon":1,"swordStorm":7,"telegraph":2,"volley":7,"wake":1,"wolfShadow":1,"zone":1}, - "snaps": "1a929dbc 7451dcc4 0ee48092 20e4366e 344bb7d6 c4ddc413 f7b86fa8 ba9b29f8 5fd594a5 5be4437d 366984c4 7d7082b1 98b0b2f1 2eca0438 b1da6518 1e074864 280e1bad" + "snaps": "1a929dbc 7451dcc4 0ee48092 20e4366e 344bb7d6 c4ddc413 f7b86fa8 ba9b29f8 5fd594a5 5be4437d 366984c4 fe75c716 9ff2b88a d0d50ca4 c0469f95 176d1275 1f74fe38" }, "roster-041": { "about": "pass 2 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_19_a chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_20_a chess_char_4_24_a chess_char_4_25_a chess_char_4_02_b chess_char_4_12_b", @@ -2522,40 +2508,40 @@ "total": 47, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 39, + "rngDraws": 41, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":46,"total":47,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":8,"dmg":526018,"bossDmg":0,"heal":15976,"deaths":5,"layerGains":{}}}, + "players": {"p1":{"killed":46,"total":47,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":8,"dmg":527411,"bossDmg":0,"heal":14007,"deaths":5,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_4_23_a",1,null,0,0,6,1,36052,2179,0,57,2], - ["p1",2,"op","chess_char_4_01_b",1,"none",4593.08,1,9,1,5749,397,0,62,1], - ["p1",3,"op","chess_char_4_19_a",1,null,0,0,59,0,1924,5063,0,43,3], - ["p1",4,"op","chess_char_4_22_a",1,null,2022,1,7,0,203,707,18,6,1], - ["p1",5,"op","chess_char_4_04_b",2,"uniequip_002_ines",0,0,52,4,69846,16432,0,119,2], + ["p1",2,"op","chess_char_4_01_b",1,"none",4862.79,1,9,1,5731,128,0,56,1], + ["p1",3,"op","chess_char_4_19_a",1,null,0,0,59,0,2016,5102,0,44,3], + ["p1",4,"op","chess_char_4_22_a",1,null,2022,1,7,0,339,707,18,11,1], + ["p1",5,"op","chess_char_4_04_b",2,"uniequip_002_ines",0,0,52,5,72285,14160,0,114,2], ["p1",6,"op","chess_char_4_07_b",2,"none",2233,1,8,0,0,0,0,0,0], - ["p1",7,"op","chess_char_4_09_b",2,"uniequip_004_mizuki",1756,1,12,24,295735,1193,0,52,2], - ["p1",8,"op","chess_char_4_20_a",1,null,1217,1,2,2,20266,0,0,81,3], - ["p1",9,"op","chess_char_4_24_a",2,null,1726,1,3,11,64854,0,0,25,4], + ["p1",7,"op","chess_char_4_09_b",2,"uniequip_004_mizuki",1756,1,12,24,289250,1456,0,52,2], + ["p1",8,"op","chess_char_4_20_a",1,null,1217,1,2,2,20196,0,0,80,3], + ["p1",9,"op","chess_char_4_24_a",2,null,1726,1,3,10,70154,0,0,26,4], ["p1",10,"op","chess_char_4_25_a",1,null,1221,1,4,0,3366,0,0,0,3], ["p1",11,"op","chess_char_4_02_b",1,"none",2966.25,1,1,0,0,0,0,0,0], ["p1",12,"op","chess_char_4_12_b",1,"none",4562.3,1,5,3,28023,0,0,72,4], - ["p1","~1","token","char_613_acmedc",null,null,1314,1,13,0,0,0,15959,19,2] + ["p1","~1","token","char_613_acmedc",null,null,1314,1,13,0,0,0,13989,19,2] ], "enemies": { "enemy_1001_bigbo": [1,1,0,2198,17600], "enemy_10097_crshd": [1,1,0,0,8000], "enemy_1045_hammer": [1,1,0,864,8000], - "enemy_1045_hammer_2": [6,5,0,16620,92229], - "enemy_1061_zomshd": [33,33,0,4296,371379], + "enemy_1045_hammer_2": [6,5,0,13899,93761], + "enemy_1061_zomshd": [33,33,0,4514,371239], "enemy_1166_dusbr": [1,1,0,0,2400], "enemy_1204_msfhu_2": [1,1,0,0,5], "enemy_1288_duskls_2": [1,1,0,0,4805], "enemy_1427_lrnazg": [1,1,0,649,12000], "enemy_2010_csdcr": [1,1,0,1080,9600] }, - "hooks": [1,63,5700,638,638,1045,1040,16158,51,52,27,24,45,26424,83,49,47,0,1,52,0,0,11], - "events": {"atk":949,"bounty":4,"deploy":16,"die":52,"dmg":1003,"engage":9,"fx":178,"heal":36,"skill":51,"spawn":60,"status":342}, - "fx": {"aoe":3,"beam":2,"devour":4,"displace":53,"dodge":11,"ember":1,"garrisonGrant":1,"link":3,"mote":56,"overload":3,"reweave":3,"riposte":5,"ripple":2,"sentry":4,"shadowWeave":18,"shield":3,"snow":1,"summon":1,"wake":4}, - "snaps": "903d6a08 54ed0b39 a5926312 e06609d8 d934b95c f7f55901 ea89d0e0 89193a86 d2705c22 d4e888ca 3ac948ff 97bcf3d4 3390f555 7b4ec718 55959646 3dc3ef0b 4446f6f0 e98ede33 e9343e0a" + "hooks": [1,63,5700,633,633,1039,1034,16137,51,52,27,24,45,26514,82,52,47,0,1,52,0,0,12], + "events": {"atk":943,"bounty":4,"deploy":16,"die":52,"dmg":997,"engage":9,"fx":181,"heal":33,"skill":51,"spawn":60,"status":337}, + "fx": {"aoe":3,"beam":2,"devour":4,"displace":53,"dodge":12,"ember":1,"garrisonGrant":1,"link":3,"mote":56,"overload":3,"reweave":3,"riposte":6,"ripple":2,"sentry":4,"shadowWeave":20,"shield":2,"snow":1,"summon":1,"wake":4}, + "snaps": "903d6a08 54ed0b39 a5926312 e06609d8 d467c143 474db40e ef76d5dd d540479e 9f2062fa e2fde6d2 b7bb1b47 eedffd5c 4ff651cd bf49a63b eb00c702 27fd578e 4d45eaa2 244bd636 51e74803" }, "roster-042": { "about": "pass 2 band 5: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_5_01_a chess_char_4_16_b chess_char_4_13_b chess_char_4_20_b chess_char_4_24_b chess_char_4_25_b chess_char_5_02_a", @@ -2594,14 +2580,14 @@ ["p1",1,"op","chess_char_4_17_b",2,"none",4566.9,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_18_b",2,"none",6783,1,5,0,0,0,0,0,0], ["p1",3,"op","chess_char_4_23_b",1,"uniequip_004_gvial2",3667.3,1,7,1,14104,123,123,6,1], - ["p1",4,"op","chess_char_4_19_b",1,"none",2525.9,1,10,0,23540,1439,0,5,4], + ["p1",4,"op","chess_char_4_19_b",1,"none",2525.9,1,10,0,22710,1439,0,4,4], ["p1",5,"op","chess_char_4_22_b",1,"uniequip_002_svrash",3339.7,1,11,3,38288,7309,4592,48,1], ["p1",6,"op","chess_char_5_01_a",2,null,0,0,56,4,51648,11544,3873,52,1], ["p1",7,"op","chess_char_4_16_b",1,"none",658.3,1,73,14,149695,5766,656,115,6], ["p1",8,"op","chess_char_4_13_b",2,"uniequip_004_gnosis",2553.2,1,8,5,33793,0,0,42,3], ["p1",9,"op","chess_char_4_20_b",1,"none",1844.7,1,9,15,99818,998,0,47,2], ["p1",10,"op","chess_char_4_24_b",2,"none",2571.4,1,12,8,161836,6702,551,45,4], - ["p1",11,"op","chess_char_4_25_b",1,"uniequip_002_cetsyr",2172.3,1,4,2,15745,0,0,0,3], + ["p1",11,"op","chess_char_4_25_b",1,"uniequip_002_cetsyr",2172.3,1,4,2,16576,0,0,0,3], ["p1",12,"op","chess_char_5_02_a",1,null,1570.4,1,6,7,117674,633,11937,24,4], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] @@ -2619,10 +2605,10 @@ "enemy_1512_mcmstr": [1,1,0,5348,92160], "enemy_9008_acbunn": [1,1,0,1028,13824] }, - "hooks": [1,77,4804,498,498,1222,1233,1563,67,64,29,26,3,16171,1879,43,59,0,1,70,50,0,6], - "events": {"atk":610,"bounty":4,"deploy":16,"die":64,"dmg":1050,"engage":9,"fx":182,"heal":131,"layer":50,"skill":55,"spawn":73,"status":288}, + "hooks": [1,77,4804,497,497,1221,1232,1563,67,64,29,26,3,16171,1879,43,59,0,1,70,50,0,6], + "events": {"atk":609,"bounty":4,"deploy":16,"die":64,"dmg":1049,"engage":9,"fx":182,"heal":131,"layer":50,"skill":55,"spawn":73,"status":288}, "fx": {"aoe":4,"bombard":5,"bombardShell":5,"coldWind":3,"devour":4,"displace":1,"dodge":6,"explode":22,"extraAttack":9,"garrison":26,"garrisonGrant":1,"iceSpike":3,"link":2,"mote":33,"overload":1,"revive":1,"reweave":3,"shieldBreak":1,"sleepGuard":4,"snow":1,"swordStorm":6,"telegraph":2,"zone":39}, - "snaps": "6e6cd551 0a57f9de 2e71cf0f 17a84a1d 76ac0e19 3bc65f34 335a0eba 3d3be75c 70af313e 8ab9d9eb e18092b4 f3302e53 c52c8f3b e39fbb70 b6a62e34 fbd754d1" + "snaps": "6e6cd551 0a57f9de 2e71cf0f 17a84a1d 76ac0e19 3bc65f34 335a0eba 3d3be75c 70af313e d8c31dcf 31612605 211be5e6 c4ebc4e2 270bee85 60a12105 2fa7741c" }, "roster-043": { "about": "pass 2 band 5: chess_char_5_08_a chess_char_5_11_a chess_char_5_05_a chess_char_5_06_a chess_char_5_13_a chess_char_5_14_a chess_char_5_07_a chess_char_5_17_a chess_char_5_03_a chess_char_5_10_a chess_char_5_12_a chess_char_5_15_a", @@ -2948,56 +2934,56 @@ "round": 13, "seed": 328939409, "waveId": "act1autochess_h06", - "time": 204.23, - "ticks": 6127, + "time": 208.53, + "ticks": 6256, "reason": "cleared", - "killed": 51, + "killed": 30, "total": 86, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 277, + "rngDraws": 123, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 51, + "killed": 30, "total": 86, "perfect": false, - "leaks": 35, + "leaks": 56, "leaksUncounted": 0, "coins": 0, - "dmg": 1359874, + "dmg": 1176934, "bossDmg": 0, - "heal": 8755, - "deaths": 5, - "layerGains": {"egirShip":5,"swiftShip":62} + "heal": 9794, + "deaths": 7, + "layerGains": {"egirShip":5,"swiftShip":72} } }, "units": [ - ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,64,19,258702,5492,68,46,18], - ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,81,1,42223,6473,68,19,1], - ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,8597,11,5], - ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,51,3,264406,2572,0,31,27], - ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,58,2,250771,1314,22,46,5], - ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,65,25,543772,6036,0,46,11], + ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,101,7,84836,10123,102,21,6], + ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,80,5,134578,12604,112,37,2], + ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,9559,11,4], + ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,51,12,572538,1800,0,45,39], + ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,58,0,227972,1314,22,46,5], + ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,99,5,157009,7588,0,23,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_10027_vtsk": [1,0,1,13505,16174], - "enemy_10098_crhro": [1,0,1,3357,9770], - "enemy_1045_hammer_2": [19,11,8,0,443111], - "enemy_1061_zomshd": [60,39,21,3592,888063], - "enemy_1166_dusbr_2": [1,1,0,0,7299], - "enemy_1207_sfji": [1,0,1,0,8734], - "enemy_1292_duskld": [1,0,1,0,2868], - "enemy_1430_lrrook": [1,0,1,0,46482], - "enemy_2017_csphts": [1,0,1,2215,2257] + "enemy_10027_vtsk": [1,0,1,11074,12891], + "enemy_10098_crhro": [1,0,1,3835,10311], + "enemy_1045_hammer_2": [19,4,15,11239,396430], + "enemy_1061_zomshd": [60,25,35,6109,830122], + "enemy_1166_dusbr_2": [1,1,0,231,7299], + "enemy_1207_sfji": [1,0,1,0,1816], + "enemy_1292_duskld": [1,0,1,0,2528], + "enemy_1430_lrrook": [1,0,1,0,19741], + "enemy_2017_csphts": [1,0,1,1723,1260] }, - "hooks": [1,100,6127,238,238,2150,2158,21451,56,91,67,67,0,10009,674,24,86,35,1,83,8,0,1], - "events": {"atk":490,"deploy":11,"die":56,"dmg":2158,"engage":5,"fx":311,"heal":32,"layer":8,"leak":35,"skill":134,"spawn":95,"status":1019}, - "fx": {"dodge":1,"dollEnd":1,"explode":2,"garrison":7,"layer":1,"lightning":223,"shield":5,"slash":18,"sp":35,"storm":11,"substitute":1,"telegraph":1,"weightless":5}, - "snaps": "114138f7 91b6a2fa 7610acfd 3d21f676 8b814efe f52c75c7 7bf31005 97bafb07 219c56f9 4f52058d fb2c665c 9e07511a c65f6592 2f5b9396 d20a5349 7cff5211 3a98f4c8 d3c065bc 6e8f918b f69dface ad3b6031" + "hooks": [1,102,6256,240,240,2807,2816,29990,37,93,59,59,0,9156,341,23,86,56,1,69,8,1,0], + "events": {"atk":434,"deploy":13,"die":37,"dmg":2816,"engage":5,"fx":98,"heal":37,"layer":8,"leak":56,"skill":118,"spawn":95,"status":733}, + "fx": {"burst":1,"dollEnd":1,"explode":1,"garrison":7,"layer":1,"lightning":40,"shield":4,"slash":6,"sp":23,"storm":3,"substitute":3,"swap":2,"telegraph":1,"weightless":5}, + "snaps": "114138f7 91b6a2fa f0c40ac9 ec26c383 665999c5 3264a031 3bd52571 4ab93c4c 3824d793 281d4890 848fd5d1 01b47471 1ef86280 835ca61b 8ec3f7bc 36d90f09 f02b3e41 a9cb62eb b36f3813 a1acd77e 86555a83" }, "roster-049": { "about": "pass 3 band 5: chess_char_4_23_b chess_char_3_04_b chess_char_4_09_b chess_char_3_21_b chess_char_4_13_b", diff --git a/test/golden/standins.json b/test/golden/standins.json index 6e3f6062..a3d7051e 100644 --- a/test/golden/standins.json +++ b/test/golden/standins.json @@ -20,58 +20,58 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 19, + "killed": 20, "total": 50, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 544, + "rngDraws": 532, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 19, + "killed": 20, "total": 50, "perfect": false, - "leaks": 31, + "leaks": 30, "leaksUncounted": 0, "coins": 4, - "dmg": 266231, + "dmg": 241025, "bossDmg": 0, - "heal": 17643, - "deaths": 24, + "heal": 16760, + "deaths": 23, "layerGains": {"raidShip":13,"visiShip":2} } }, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,0,0,74,4,60651,4029,0,28,3], - ["p1",2,"op","chess_char_4_09_a",0,null,0,0,1,1,29760,2984,0,18,1], - ["p1",3,"op","chess_char_3_05_a",2,null,2081.5,1,76,2,31495,11964,0,47,2], - ["p1",4,"op","chess_char_3_18_a",2,null,0,0,7,1,10578,3995,0,17,1], - ["p1",5,"op","chess_char_4_04_a",1,null,0,0,92,1,17499,7084,0,74,10], - ["p1",6,"op","chess_char_4_07_a",1,null,0,0,79,1,19230,13744,0,43,1], - ["p1",7,"op","chess_char_4_16_a",1,null,215.72,1,94,1,9789,11775,0,117,14], - ["p1",8,"op","chess_char_3_01_a",2,null,1271,1,5,0,22413,0,0,149,2], - ["p1",9,"op","chess_char_3_04_a",2,null,1218,1,86,0,0,1599,17643,36,2], - ["p1",10,"op","chess_char_3_21_a",2,null,716.85,1,6,6,42226,555,0,132,2], - ["p1",11,"op","chess_char_4_02_a",1,null,1272,1,89,1,7563,1272,0,68,1], - ["p1",12,"op","chess_char_4_13_a",1,null,0,0,83,1,15028,1624,0,33,2] + ["p1",1,"op","chess_char_3_12_a",2,null,0,0,73,3,47867,4677,0,18,2], + ["p1",2,"op","chess_char_4_09_a",0,null,0,0,1,4,30036,2984,0,18,1], + ["p1",3,"op","chess_char_3_05_a",2,null,0,0,77,3,30660,12398,0,46,2], + ["p1",4,"op","chess_char_3_18_a",2,null,0,0,7,1,18366,2638,0,32,1], + ["p1",5,"op","chess_char_4_04_a",1,null,951,1,94,1,10801,6131,0,85,10], + ["p1",6,"op","chess_char_4_07_a",1,null,0,0,75,1,13544,8857,0,31,1], + ["p1",7,"op","chess_char_4_16_a",1,null,769.82,1,89,1,8358,15154,0,114,14], + ["p1",8,"op","chess_char_3_01_a",2,null,1271,1,5,0,18482,0,0,156,3], + ["p1",9,"op","chess_char_3_04_a",2,null,1218,1,86,0,0,1980,16760,34,2], + ["p1",10,"op","chess_char_3_21_a",2,null,716.85,1,6,5,40715,555,0,124,2], + ["p1",11,"op","chess_char_4_02_a",1,null,1272,1,91,1,10743,2034,0,58,1], + ["p1",12,"op","chess_char_4_13_a",1,null,812,1,93,0,11454,812,0,18,1] ], "enemies": { - "enemy_10001_trslim": [1,1,0,8,4860], + "enemy_10001_trslim": [1,1,0,17,4860], "enemy_1000_gopro_2": [1,1,0,0,1836], - "enemy_10018_sgrobh": [1,1,0,3753,8100], - "enemy_1001_bigbo": [1,0,1,1235,2656], - "enemy_10027_vtsk": [1,0,1,12888,1289], + "enemy_10018_sgrobh": [1,1,0,4515,8100], + "enemy_1001_bigbo": [1,0,1,1235,2633], + "enemy_10027_vtsk": [1,0,1,13440,2341], "enemy_10031_cnvsld": [1,0,1,0,0], - "enemy_10034_cnvsax": [1,0,1,1235,5687], + "enemy_10034_cnvsax": [1,0,1,808,1774], "enemy_10042_prtrop": [1,0,1,0,0], - "enemy_1116_liprr_2": [21,13,8,5313,129729], - "enemy_1119_vofsd": [12,2,8,12831,69965], - "enemy_1121_lifbos_2": [9,1,6,15758,42109] + "enemy_1116_liprr_2": [21,13,8,6180,124677], + "enemy_1119_vofsd": [12,3,8,14633,55002], + "enemy_1121_lifbos_2": [9,1,7,10809,39802] }, - "hooks": [1,94,5100,874,874,1402,1411,3740,43,84,41,38,0,18511,42,43,50,27,1,46,5,0,2], - "events": {"atk":983,"bounty":2,"deploy":44,"die":57,"dmg":1411,"engage":11,"fx":90,"heal":36,"layer":5,"leak":27,"skill":79,"spawn":62,"status":157}, - "fx": {"beam":12,"blink":14,"dodge":2,"dp":7,"garrison":5,"liberate":12,"phase":13,"slash":24,"telegraph":1}, - "snaps": "8b8be66d b3674b6a 84ebce5a c4efeba6 05a2d3cd bf6f3985 249c5ebd 2bf68848 6faa6eb8 0275f0fb f4b16de1 f88b620c 3545e4d2 aa0d5a15 ecf73cfe 95a2451e a178591a" + "hooks": [1,94,5100,846,846,1340,1344,3022,43,85,40,37,0,18468,28,40,50,28,1,45,5,0,3], + "events": {"atk":956,"bounty":2,"deploy":44,"die":57,"dmg":1344,"engage":11,"fx":78,"heal":34,"layer":5,"leak":28,"skill":77,"spawn":62,"status":131}, + "fx": {"beam":8,"blink":14,"dodge":4,"dp":5,"garrison":5,"liberate":14,"phase":11,"slash":16,"telegraph":1}, + "snaps": "8b8be66d 956c486c d56f1b8a 01e934c3 41a33047 6b039b9c 58145bb4 2c9c0c6a ec67901c de32bc9a c3bfaafb 4e912ddc 432cd753 c556201d 46aacdd1 dcb0d5a9 0114b0f8" }, "standin-02": { "about": "normal band 5 as stand-ins: chess_char_4_17_a→char_610_acfend chess_char_4_18_a→char_602_cdfend chess_char_5_05_a→char_602_cdfend chess_char_4_19_a→char_608_acpion chess_char_5_01_a→char_600_cpione chess_char_4_22_a→char_609_acguad chess_char_4_23_a→char_609_acguad chess_char_5_06_a→char_609_acguad chess_char_4_20_a→char_603_csnipe chess_char_4_24_a→char_604_ccast chess_char_5_02_a→char_604_ccast chess_char_5_03_a→char_612_accast", @@ -138,44 +138,44 @@ "time": 190, "ticks": 5700, "reason": "timeout", - "killed": 41, + "killed": 42, "total": 74, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 278, + "rngDraws": 282, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":41,"total":74,"perfect":false,"leaks":33,"leaksUncounted":0,"coins":8,"dmg":322054,"bossDmg":0,"heal":40884,"deaths":10,"layerGains":{}}}, + "players": {"p1":{"killed":42,"total":74,"perfect":false,"leaks":32,"leaksUncounted":0,"coins":8,"dmg":319021,"bossDmg":0,"heal":44930,"deaths":10,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_a",2,null,2206.8,1,91,0,5895,3841,0,57,1], - ["p1",2,"op","chess_char_5_14_a",2,null,0,0,90,23,138688,7595,0,63,6], - ["p1",3,"op","chess_char_5_19_a",0,null,349.6,1,89,6,47622,15311,0,100,3], - ["p1",4,"op","chess_char_5_07_a",2,null,2564,1,92,0,12112,3824,0,24,1], - ["p1",5,"op","chess_char_5_13_a",2,null,1801,1,11,7,56384,10325,0,123,4], - ["p1",6,"op","chess_char_5_17_a",2,null,20,1,81,1,7284,4998,0,77,0], - ["p1",7,"op","chess_char_5_10_a",2,null,932,1,2,1,7776,0,0,58,2], - ["p1",8,"op","chess_char_5_11_a",2,null,1224,1,3,0,0,0,40884,67,2], - ["p1",9,"op","chess_char_5_12_a",2,null,1160,1,4,0,19936,0,0,79,2], - ["p1",10,"op","chess_char_5_15_a",2,null,0,0,84,2,8336,14152,0,96,2], - ["p1",11,"op","chess_char_5_18_a",2,null,0,0,1,1,11149,1272,0,22,1], - ["p1",12,"op","chess_char_5_20_a",2,null,0,0,5,0,6872,1972,0,38,2] + ["p1",1,"op","chess_char_5_08_a",2,null,930.4,1,6,0,10870,8837,0,131,2], + ["p1",2,"op","chess_char_5_14_a",2,null,445,1,90,24,153939,6310,0,64,6], + ["p1",3,"op","chess_char_5_19_a",0,null,0,0,89,7,34634,13981,0,90,2], + ["p1",4,"op","chess_char_5_07_a",2,null,2564,1,91,0,663,3824,0,12,1], + ["p1",5,"op","chess_char_5_13_a",2,null,704,1,11,7,61469,10854,0,127,4], + ["p1",6,"op","chess_char_5_17_a",2,null,1154,1,93,1,3911,5206,0,72,0], + ["p1",7,"op","chess_char_5_10_a",2,null,932,1,2,0,10452,0,0,74,2], + ["p1",8,"op","chess_char_5_11_a",2,null,1224,1,3,0,0,0,44930,72,2], + ["p1",9,"op","chess_char_5_12_a",2,null,1160,1,4,0,21685,0,0,85,2], + ["p1",10,"op","chess_char_5_15_a",2,null,0,0,84,2,8461,14776,0,100,2], + ["p1",11,"op","chess_char_5_18_a",2,null,1272,1,94,1,5483,1272,0,19,1], + ["p1",12,"op","chess_char_5_20_a",2,null,1972,1,92,0,7456,1972,0,34,1] ], "enemies": { "enemy_1006_shield_2": [1,1,0,582,8000], - "enemy_1006_shield_3": [1,0,1,11325,14488], + "enemy_1006_shield_3": [1,0,1,13540,16777], "enemy_10073_mpcar": [1,1,0,12,1600], "enemy_1007_slime": [1,1,0,0,440], "enemy_10081_mpplai": [1,1,0,0,2000], "enemy_10087_hlchgr": [1,1,0,38,4800], "enemy_10094_crstf": [1,1,0,28,3200], - "enemy_10097_crshd": [1,1,0,0,8000], - "enemy_1166_dusbr_2": [42,28,14,2956,110452], - "enemy_1170_dushld_2": [12,5,6,26204,45033], - "enemy_9011_acrefr": [12,1,7,22144,124041] + "enemy_10097_crshd": [1,0,1,958,3407], + "enemy_1166_dusbr_2": [42,29,13,2894,108859], + "enemy_1170_dushld_2": [12,5,6,29261,54020], + "enemy_9011_acrefr": [12,2,5,19716,115919] }, - "hooks": [1,92,5700,1025,1025,1522,1523,112,51,79,26,26,0,27108,3400,51,74,28,1,52,0,0,10], - "events": {"atk":1128,"bounty":4,"deploy":18,"die":51,"dmg":1522,"engage":11,"fx":134,"heal":106,"leak":28,"skill":55,"spawn":86,"status":609}, - "fx": {"aoe":30,"displace":1,"dodge":16,"dp":29,"phase":1,"slash":48,"sp":1,"spGain":8}, - "snaps": "530ce9ab 3259d8c0 918a3cff a85e2d90 3b23751a 8f259c98 9faf0458 b98e7e80 e64fb37d 38b17953 2458f514 b2894d2f 6c036845 609d268d 5a2493c6 23bae8dc e4a6485d 424e64d1 745ddf7a" + "hooks": [1,94,5700,1131,1131,1741,1749,134,52,78,25,27,0,28955,3503,55,74,26,1,52,0,1,12], + "events": {"atk":1231,"bounty":4,"deploy":20,"die":52,"dmg":1743,"engage":11,"fx":170,"heal":122,"leak":26,"skill":56,"spawn":86,"status":640}, + "fx": {"aoe":60,"burst":1,"displace":1,"dodge":20,"dp":30,"phase":1,"slash":48,"sp":1,"spGain":8}, + "snaps": "530ce9ab 3259d8c0 918a3cff a85e2d90 3b23751a 403c9dcf efcb9491 add68383 14687f3d 9be4f49b 5d03502b b913a379 f0d88771 65b13150 a9a574ed 8ba4eb88 928b8a4d a28dbd38 b246bf1a" }, "standin-04": { "about": "normal band 6 as stand-ins: chess_char_6_03_a→char_610_acfend chess_char_6_02_a→char_608_acpion chess_char_6_07_a→char_617_sharp2 chess_char_6_10_a→char_617_sharp2 chess_char_6_11_a→char_608_acpion chess_char_6_06_a→char_609_acguad chess_char_5_22_a→char_611_acnipe chess_char_6_01_a→char_611_acnipe chess_char_6_04_a→char_614_acsupo chess_char_6_05_a→char_611_acnipe chess_char_6_08_a→char_612_accast chess_char_6_09_a→char_613_acmedc", @@ -186,31 +186,43 @@ "round": 12, "seed": 428893583, "waveId": "act1autochess_h05", - "time": 201.43, - "ticks": 6043, + "time": 208, + "ticks": 6240, "reason": "cleared", - "killed": 158, + "killed": 132, "total": 158, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 612, + "rngDraws": 626, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":1471553,"bossDmg":0,"heal":29310,"deaths":8,"layerGains":{"sargonShip":5}} + "p1": { + "killed": 132, + "total": 158, + "perfect": false, + "leaks": 26, + "leaksUncounted": 0, + "coins": 8, + "dmg": 1273630, + "bossDmg": 0, + "heal": 25492, + "deaths": 11, + "layerGains": {"sargonShip":5} + } }, "units": [ - ["p1",1,"op","chess_char_6_03_a",2,null,0,0,169,0,1288,5814,0,12,1], - ["p1",2,"op","chess_char_6_02_a",2,null,0,0,171,5,21360,3058,0,2,4], - ["p1",3,"op","chess_char_6_07_a",0,null,0,0,6,19,254549,1865,0,146,3], - ["p1",4,"op","chess_char_6_10_a",0,null,1865,1,177,6,128769,1865,0,109,2], - ["p1",5,"op","chess_char_6_11_a",2,null,1529,1,174,28,230418,10062,0,75,10], - ["p1",6,"op","chess_char_6_06_a",2,null,2149.08,1,158,16,114781,20845,0,115,4], - ["p1",7,"op","chess_char_5_22_a",2,null,1272,1,3,2,27889,0,0,23,2], - ["p1",8,"op","chess_char_6_01_a",2,null,1272,1,4,36,251215,0,0,157,2], - ["p1",9,"op","chess_char_6_04_a",2,null,1160,1,13,5,66116,0,0,122,2], - ["p1",10,"op","chess_char_6_05_a",2,null,1272,1,14,18,242842,2453,0,127,2], - ["p1",11,"op","chess_char_6_08_a",2,null,1372,1,5,21,132325,0,0,40,2], - ["p1",12,"op","chess_char_6_09_a",2,null,1224,1,11,0,0,0,29310,46,2], + ["p1",1,"op","chess_char_6_03_a",2,null,0,0,160,0,1530,5735,0,12,1], + ["p1",2,"op","chess_char_6_02_a",2,null,0,0,163,5,14262,3058,0,2,3], + ["p1",3,"op","chess_char_6_07_a",0,null,0,0,175,7,132136,3730,0,84,1], + ["p1",4,"op","chess_char_6_10_a",0,null,0,0,174,4,98395,3730,0,82,2], + ["p1",5,"op","chess_char_6_11_a",2,null,0,0,150,12,83552,7740,0,35,4], + ["p1",6,"op","chess_char_6_06_a",2,null,2638,1,165,13,111922,20468,0,114,3], + ["p1",7,"op","chess_char_5_22_a",2,null,1272,1,3,5,43091,0,0,34,2], + ["p1",8,"op","chess_char_6_01_a",2,null,1272,1,4,41,296378,0,0,157,3], + ["p1",9,"op","chess_char_6_04_a",2,null,1160,1,13,5,62041,0,0,118,2], + ["p1",10,"op","chess_char_6_05_a",2,null,1272,1,14,15,203216,2453,0,121,2], + ["p1",11,"op","chess_char_6_08_a",2,null,1372,1,5,25,227108,0,0,54,2], + ["p1",12,"op","chess_char_6_09_a",2,null,1224,1,11,0,0,0,25492,39,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], @@ -219,17 +231,17 @@ "enemy_10099_crvln": [1,1,0,2453,20736], "enemy_1009_lurker": [1,1,0,23,3041], "enemy_1010_demon": [1,1,0,0,10368], - "enemy_1010_demon_2": [28,28,0,11599,580608], + "enemy_1010_demon_2": [28,21,7,12612,527097], "enemy_10112_ymgds": [1,1,0,0,6912], - "enemy_10116_ymgtop": [1,1,0,2924,13824], - "enemy_10118_ymgprc": [1,1,0,10510,69120], - "enemy_1071_dftman": [63,63,0,587,243855], - "enemy_1072_dlancer": [60,60,0,16287,497664] + "enemy_10116_ymgtop": [1,1,0,2398,13824], + "enemy_10118_ymgprc": [1,0,1,5138,12807], + "enemy_1071_dftman": [63,62,1,251,243295], + "enemy_1072_dlancer": [60,43,17,22461,414164] }, - "hooks": [1,177,6043,1060,1060,2060,2055,76,166,166,36,35,0,37056,3588,58,158,0,1,168,2,0,13], - "events": {"atk":1212,"bounty":4,"deploy":17,"die":166,"dmg":2055,"engage":11,"fx":181,"heal":58,"layer":2,"skill":71,"spawn":172,"status":436}, - "fx": {"aoe":5,"dodge":17,"dp":47,"garrison":2,"revive":1,"slash":91,"sp":14,"spGain":2,"telegraph":2}, - "snaps": "484fd662 4f4e076d 081948b0 d7bf1df0 c0aa2905 1b27e150 ab6cac50 d1148fdb fccd25dd 3bdf0cd3 bc78cb58 5914e59f e9a5d19b c18806ba 780d90bd f332e4d3 1b1a7814 b06c5778 2ebf5ca8 a00fc7c0 e0236981" + "hooks": [1,178,6240,938,938,1920,1911,67,143,169,27,26,0,34691,3961,57,158,26,1,144,2,0,17], + "events": {"atk":1074,"bounty":4,"deploy":18,"die":143,"dmg":1911,"engage":11,"fx":106,"heal":47,"layer":2,"leak":26,"skill":53,"spawn":172,"status":443}, + "fx": {"aoe":6,"dodge":18,"dp":24,"garrison":2,"revive":1,"slash":40,"sp":10,"spGain":3,"telegraph":2}, + "snaps": "484fd662 4f4e076d c10d51e5 383709ef a59de77b 9f2c5b1e 7a70b803 2669ad41 7fd7e456 e1f4734e 1218d65d 5c7d2330 d869c05d 93de1153 cc0bd6bd 4e2d749f 1a92d669 4cd5e851 79f5a0ed 563a633b a9d3711f" }, "standin-05": { "about": "normal band 6 as stand-ins: chess_char_6_17_a→char_608_acpion chess_char_6_13_a→char_615_acspec chess_char_6_19_a→char_615_acspec chess_char_6_12_a→char_612_accast chess_char_6_15_a→char_614_acsupo chess_char_6_18_a→char_612_accast chess_char_6_20_a→char_613_acmedc", @@ -411,50 +423,50 @@ "round": 12, "seed": 2456427706, "waveId": "act1autochess_h05", - "time": 226.63, - "ticks": 6799, + "time": 201.33, + "ticks": 6040, "reason": "cleared", - "killed": 42, + "killed": 39, "total": 179, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 981, + "rngDraws": 901, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":42,"total":179,"perfect":false,"leaks":137,"leaksUncounted":0,"coins":2,"dmg":1733157,"bossDmg":0,"heal":77968,"deaths":13,"layerGains":{}}}, + "players": {"p1":{"killed":39,"total":179,"perfect":false,"leaks":140,"leaksUncounted":0,"coins":2,"dmg":1695740,"bossDmg":0,"heal":87735,"deaths":11,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_acfend",3242.12,1,7,5,122124,8280,0,159,4], - ["p1",2,"op","chess_char_5_14_b",2,"uniequip_002_acpion",1904,1,201,14,520028,10508,0,46,6], - ["p1",3,"op","chess_char_5_19_b",0,"uniequip_002_sharp2",4154.5,1,207,5,264095,31935,0,79,3], - ["p1",4,"op","chess_char_5_07_b",2,"none",3334,1,205,2,42880,20656,0,36,3], - ["p1",5,"op","chess_char_5_13_b",2,"uniequip_002_acguad",3411,1,206,4,80947,12473,0,40,2], - ["p1",6,"op","chess_char_5_17_b",2,"uniequip_002_acspec",1448,1,188,4,90888,27092,0,116,0], - ["p1",7,"op","chess_char_5_10_b",2,"none",1131,1,4,2,64373,0,0,134,4], - ["p1",8,"op","chess_char_5_11_b",2,"uniequip_002_acmedc",2262.4,1,5,0,0,0,77968,77,3], - ["p1",9,"op","chess_char_5_12_b",2,"uniequip_002_acsupo",1430,1,11,3,105459,0,0,135,3], - ["p1",10,"op","chess_char_5_15_b",2,"none",1510,1,13,0,83399,0,0,215,4], - ["p1",11,"op","chess_char_5_18_b",2,"uniequip_002_acnipe",2380.5,1,6,3,266479,0,0,178,3], - ["p1",12,"op","chess_char_5_20_b",2,"uniequip_002_acsupo",1430,1,14,0,92485,0,0,125,3], + ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_acfend",0,0,167,3,30499,14505,0,48,1], + ["p1",2,"op","chess_char_5_14_b",2,"uniequip_002_acpion",1904,1,196,7,355016,7363,0,33,6], + ["p1",3,"op","chess_char_5_19_b",0,"uniequip_002_sharp2",4154.5,1,138,14,541096,33293,0,150,3], + ["p1",4,"op","chess_char_5_07_b",2,"none",2619.79,1,203,1,36493,29192,0,35,3], + ["p1",5,"op","chess_char_5_13_b",2,"uniequip_002_acguad",0,0,129,4,64143,12851,0,28,2], + ["p1",6,"op","chess_char_5_17_b",2,"uniequip_002_acspec",1448,1,191,6,88815,22335,0,132,0], + ["p1",7,"op","chess_char_5_10_b",2,"none",1131,1,4,1,56803,0,0,122,4], + ["p1",8,"op","chess_char_5_11_b",2,"uniequip_002_acmedc",2262.4,1,5,0,0,0,87735,68,3], + ["p1",9,"op","chess_char_5_12_b",2,"uniequip_002_acsupo",1430,1,11,2,90755,0,0,129,3], + ["p1",10,"op","chess_char_5_15_b",2,"none",1510,1,13,0,87446,0,0,226,4], + ["p1",11,"op","chess_char_5_18_b",2,"uniequip_002_acnipe",2380.5,1,6,1,249269,0,0,155,3], + ["p1",12,"op","chess_char_5_20_b",2,"uniequip_002_acsupo",1430,1,14,0,95405,0,0,125,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { "enemy_1072_dlancer": [1,1,0,1609,37150], - "enemy_1081_sotisd": [1,0,1,749,28802], - "enemy_1092_mdgint": [1,0,1,0,0], - "enemy_1116_liprr": [1,0,1,0,7850], + "enemy_1081_sotisd": [1,0,1,0,27122], + "enemy_1092_mdgint": [1,0,1,0,939], + "enemy_1116_liprr": [1,0,1,0,3657], "enemy_1116_liprr_2": [1,0,1,0,1829], - "enemy_1118_lidbox_2": [1,0,1,0,809], + "enemy_1118_lidbox_2": [1,0,1,0,1880], "enemy_1119_vofsd": [1,0,1,0,889], - "enemy_1121_lifbos": [1,0,1,4806,7013], - "enemy_1249_lysdb_2": [60,18,42,37448,866144], - "enemy_1251_lysyta": [63,22,41,7583,520464], - "enemy_1254_lypa_2": [48,1,47,58748,262208] + "enemy_1121_lifbos": [1,0,1,0,1492], + "enemy_1249_lysdb_2": [60,19,41,38886,898028], + "enemy_1251_lysyta": [63,19,44,11507,481127], + "enemy_1254_lypa_2": [48,0,48,67538,241627] }, - "hooks": [1,207,6799,1790,1790,3161,3225,149,55,192,38,43,0,26658,17254,63,179,137,1,55,0,0,6], - "events": {"atk":2022,"bounty":1,"deploy":25,"die":55,"dmg":3200,"engage":11,"fx":302,"heal":133,"leak":137,"skill":88,"spawn":194,"status":1230}, - "fx": {"aoe":120,"displace":8,"dodge":31,"dp":20,"liberate":1,"phase":1,"shieldBreak":60,"slash":48,"sp":1,"spGain":12}, - "snaps": "c4ba1bfb fae78ec3 4853328f 674d8548 bcbe6142 1a53e0eb 214c2462 a608c08f 504eb3ba 4e0e6e68 d4d1daf8 a6dc8003 1ce13419 a363753a 07e954ca 3e70563d 7e686001 0f4877a6 ba4f9efe e6778a6d 6675e221 520b5fe5 4464a0d3" + "hooks": [1,203,6040,1581,1581,2484,2674,133,50,190,35,33,0,20704,16926,62,179,140,1,50,0,0,5], + "events": {"atk":1862,"bounty":1,"deploy":21,"die":50,"dmg":2665,"engage":11,"fx":186,"heal":114,"leak":140,"skill":72,"spawn":194,"status":1169}, + "fx": {"aoe":30,"displace":4,"dodge":25,"dp":13,"shieldBreak":59,"slash":42,"sp":2,"spGain":11}, + "snaps": "c4ba1bfb fae78ec3 1fa5eef8 039fd078 af235e6e 054172b9 425c4c8c 6ddd3467 b69784e7 524ba19b 18e4cf1f 8204edda 4751bfcf de0c311c 58e3839d 7854857e 798259ed b5f265cc a4da5617 46c62d39 ff4422be" }, "standin-09": { "about": "elite band 7 as stand-ins: chess_char_6_03_b→char_610_acfend chess_char_6_02_b→char_608_acpion chess_char_6_07_b→char_617_sharp2 chess_char_6_10_b→char_617_sharp2 chess_char_6_11_b→char_608_acpion chess_char_6_06_b→char_609_acguad chess_char_5_22_b→char_611_acnipe chess_char_6_01_b→char_611_acnipe chess_char_6_04_b→char_614_acsupo chess_char_6_05_b→char_611_acnipe chess_char_6_08_b→char_612_accast chess_char_6_09_b→char_613_acmedc", @@ -465,31 +477,31 @@ "round": 13, "seed": 2308517178, "waveId": "act1autochess_h06", - "time": 198.43, - "ticks": 5953, + "time": 200, + "ticks": 6000, "reason": "cleared", "killed": 158, "total": 158, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 232, + "rngDraws": 227, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":924222,"bossDmg":0,"heal":29638,"deaths":1,"layerGains":{"sargonShip":20}} + "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":924362,"bossDmg":0,"heal":29540,"deaths":1,"layerGains":{"sargonShip":20}} }, "units": [ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_acfend",4974.95,1,8,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_02_b",2,"uniequip_002_acpion",1904,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",0,"uniequip_002_sharp2",2494,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_10_b",0,"uniequip_002_sharp2",2494,1,11,27,129672,0,0,173,3], - ["p1",5,"op","chess_char_6_11_b",2,"uniequip_002_acpion",1904,1,13,35,186014,11957,0,60,20], - ["p1",6,"op","chess_char_6_06_b",2,"uniequip_002_acguad",3531,1,14,18,61248,763,0,155,4], + ["p1",4,"op","chess_char_6_10_b",0,"uniequip_002_sharp2",2494,1,11,29,125600,0,0,176,3], + ["p1",5,"op","chess_char_6_11_b",2,"uniequip_002_acpion",1764,1,13,38,196516,12620,0,60,21], + ["p1",6,"op","chess_char_6_06_b",2,"uniequip_002_acguad",3531,1,14,9,58773,763,0,155,4], ["p1",7,"op","chess_char_5_22_b",2,"uniequip_002_acnipe",1587,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_6_01_b",2,"uniequip_002_acnipe",1643,1,5,0,948,0,0,4,1], - ["p1",9,"op","chess_char_6_04_b",2,"uniequip_002_acsupo",2465,1,141,7,73191,2465,0,92,2], - ["p1",10,"op","chess_char_6_05_b",2,"uniequip_002_acnipe",1643,1,7,20,89868,0,0,93,2], - ["p1",11,"op","chess_char_6_08_b",2,"uniequip_002_accast",1819,1,10,51,383282,0,0,78,2], - ["p1",12,"op","chess_char_6_09_b",2,"uniequip_002_acmedc",1394,1,12,0,0,16988,29638,83,3], + ["p1",8,"op","chess_char_6_01_b",2,"uniequip_002_acnipe",1643,1,5,1,3102,0,0,3,1], + ["p1",9,"op","chess_char_6_04_b",2,"uniequip_002_acsupo",2465,1,141,5,76474,2465,0,92,2], + ["p1",10,"op","chess_char_6_05_b",2,"uniequip_002_acnipe",1643,1,7,27,85889,0,0,89,2], + ["p1",11,"op","chess_char_6_08_b",2,"uniequip_002_accast",1819,1,10,49,378007,0,0,78,2], + ["p1",12,"op","chess_char_6_09_b",2,"uniequip_002_acmedc",1254,1,12,0,0,16506,29540,83,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] @@ -503,14 +515,14 @@ "enemy_1160_hvyslr_2": [1,1,0,133,13440], "enemy_1161_tidmag": [1,1,0,554,5760], "enemy_1161_tidmag_2": [1,1,0,1758,7680], - "enemy_1249_lysdb_2": [60,60,0,2085,345600], + "enemy_1249_lysdb_2": [60,60,0,1587,345600], "enemy_1251_lysyta": [51,51,0,0,134640], - "enemy_1329_cbshld": [39,39,0,2290,374400] + "enemy_1329_cbshld": [39,39,0,2550,374400] }, - "hooks": [1,174,5953,812,812,1599,1718,168,159,159,37,36,0,29335,2593,62,158,0,1,159,3,1,17], - "events": {"atk":917,"bounty":4,"deploy":13,"die":159,"dmg":1707,"engage":7,"fx":298,"heal":127,"layer":3,"skill":73,"spawn":173,"status":324}, - "fx": {"aoe":2,"burst":1,"dodge":19,"dp":55,"garrison":3,"shieldBreak":60,"slash":144,"sp":12,"strike":2}, - "snaps": "526d4c63 f61576c6 e1be6631 53288d14 7de80a4f 26575d3b 14b2dc7b 09bff769 03f7af9b 266de1dd a9bf82a4 d80af3de da82ae39 706186e0 9d862b1f bcccab65 19598dab ba7df686 a486add4 e9e501f2" + "hooks": [1,174,6000,815,815,1617,1751,167,159,159,38,37,0,30317,2645,60,158,0,1,159,3,1,16], + "events": {"atk":935,"bounty":4,"deploy":13,"die":159,"dmg":1736,"engage":7,"fx":305,"heal":127,"layer":3,"skill":75,"spawn":173,"status":329}, + "fx": {"aoe":2,"burst":1,"dodge":20,"dp":59,"garrison":3,"shieldBreak":60,"slash":151,"sp":9}, + "snaps": "526d4c63 1859af86 456d2e9f 5622e14c bc1f2617 596e1903 6ca4b3e3 315a2d0c 2d3a6d12 027a16b9 53090134 13013c39 3d4042c3 06223fb4 080242fe c8fca403 521b3acf c34580a5 3512496b 19915c56" }, "standin-10": { "about": "elite band 7 as stand-ins: chess_char_6_17_b→char_608_acpion chess_char_6_13_b→char_615_acspec chess_char_6_19_b→char_615_acspec chess_char_6_12_b→char_612_accast chess_char_6_15_b→char_614_acsupo chess_char_6_18_b→char_612_accast chess_char_6_20_b→char_613_acmedc", @@ -521,46 +533,47 @@ "round": 13, "seed": 3949114127, "waveId": "act1autochess_h06", - "time": 230, - "ticks": 6900, - "reason": "timeout", + "time": 211.87, + "ticks": 6356, + "reason": "cleared", "killed": 28, - "total": 131, + "total": 132, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 263, + "rngDraws": 240, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":28,"total":131,"perfect":false,"leaks":103,"leaksUncounted":0,"coins":2,"dmg":538265,"bossDmg":0,"heal":10974,"deaths":25,"layerGains":{"raidShip":6}} + "p1": {"killed":28,"total":132,"perfect":false,"leaks":104,"leaksUncounted":0,"coins":6,"dmg":593929,"bossDmg":0,"heal":11529,"deaths":24,"layerGains":{"raidShip":6}} }, "units": [ - ["p1",1,"op","chess_char_6_17_b",2,"uniequip_002_acpion",954.91,1,164,10,211581,13444,0,77,10], - ["p1",2,"op","chess_char_6_13_b",2,"uniequip_002_acspec",0,0,165,5,46991,13356,0,106,0], - ["p1",3,"op","chess_char_6_19_b",2,"uniequip_002_acspec",1484,1,166,4,75038,16324,0,138,0], - ["p1",4,"op","chess_char_6_12_b",2,"uniequip_002_accast",2265.49,1,4,4,78264,281,0,32,2], - ["p1",5,"op","chess_char_6_15_b",2,"uniequip_002_acsupo",0,0,147,2,54506,6494,0,39,3], - ["p1",6,"op","chess_char_6_18_b",2,"uniequip_002_accast",1819,1,8,3,71885,900,0,43,2], - ["p1",7,"op","chess_char_6_20_b",2,"uniequip_002_acmedc",1464,1,9,0,0,4263,10974,19,1], + ["p1",1,"op","chess_char_6_17_b",2,"uniequip_002_acpion",0,0,164,14,259423,14873,0,61,9], + ["p1",2,"op","chess_char_6_13_b",2,"uniequip_002_acspec",1484,1,165,3,35167,11872,0,80,0], + ["p1",3,"op","chess_char_6_19_b",2,"uniequip_002_acspec",0,0,163,5,89851,14840,0,145,0], + ["p1",4,"op","chess_char_6_12_b",2,"uniequip_002_accast",1984.39,1,4,5,80524,562,0,34,2], + ["p1",5,"op","chess_char_6_15_b",2,"uniequip_002_acsupo",0,0,142,0,47114,6494,0,31,3], + ["p1",6,"op","chess_char_6_18_b",2,"uniequip_002_accast",1819,1,8,1,81851,1331,0,47,2], + ["p1",7,"op","chess_char_6_20_b",2,"uniequip_002_acmedc",1464,1,9,0,0,3912,11529,20,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], "enemies": { - "enemy_1006_shield_3": [21,1,20,16907,164634], - "enemy_1043_zomsbr": [66,22,44,908,136175], - "enemy_1162_magmot": [1,0,1,4704,11483], + "enemy_1006_shield_3": [21,1,20,18495,205451], + "enemy_1043_zomsbr": [66,18,48,278,120391], + "enemy_1161_tidmag": [1,1,0,0,9953], + "enemy_1162_magmot": [1,1,0,3790,19907], "enemy_1165_duhond": [1,1,0,93,4645], "enemy_1165_duhond_2": [1,0,1,0,0], - "enemy_1166_dusbr": [1,0,1,0,0], - "enemy_1166_dusbr_2": [1,0,1,0,0], - "enemy_1168_dumage": [1,1,0,1897,7465], - "enemy_1168_dumage_2": [1,1,0,4932,10783], + "enemy_1166_dusbr": [1,1,0,0,4977], + "enemy_1166_dusbr_2": [1,1,0,0,7299], + "enemy_1168_dumage": [1,0,1,2319,0], + "enemy_1168_dumage_2": [1,1,0,4717,10783], "enemy_1169_duphlx": [1,0,1,0,1489], - "enemy_1402_tgshd_2": [36,2,33,25620,201592] + "enemy_1402_tgshd_2": [36,3,33,24192,209035] }, - "hooks": [1,166,6900,578,578,900,914,7048,53,158,18,38,0,8737,1167,48,131,102,1,53,1,1,0], - "events": {"atk":585,"bounty":1,"deploy":33,"die":56,"dmg":848,"engage":6,"fx":539,"heal":25,"layer":1,"leak":102,"skill":78,"spawn":140,"status":384}, - "fx": {"aoe":4,"blink":3,"burst":1,"displace":18,"dodge":1,"dp":20,"expose":414,"garrison":1,"garrisonGrant":3,"slash":74}, - "snaps": "fba27448 40f8ddeb 904aa1c4 7f5fd3e3 9795959e b8c7a6c7 f5b1092e b4109451 8082d0cc a86cc61b fb1870c6 9cf94d5d 1d3df05d ceb38c64 2d46f54e 5fd7022a d8ef7fcc 55250098 09b8ad07 d6c97808 bbb9cfcc a2163482 34deba04" + "hooks": [1,165,6356,543,543,877,888,6677,52,159,17,35,0,7792,1001,49,132,104,1,52,1,1,0], + "events": {"atk":550,"bounty":3,"deploy":31,"die":55,"dmg":820,"engage":6,"fx":503,"heal":26,"layer":1,"leak":104,"skill":72,"spawn":141,"status":365}, + "fx": {"aoe":4,"blink":3,"burst":1,"displace":18,"dodge":3,"dp":23,"expose":379,"garrison":1,"garrisonGrant":3,"slash":67,"summon":1}, + "snaps": "fba27448 d609f04f 41abeea0 6d975f20 d5fe39ab 2b67a1fb 211c77d5 5cbb689a bfb41b6c 990aadca 13b25f6c b9f51313 e1f5c350 7eda0f6b 2cd5feef 88f36df5 e2b21992 55bdd8b7 5a6a68d3 10ca3ada 31dfc1a3 367bba43" } } } diff --git a/test/sim/playtest6-skills.test.js b/test/sim/playtest6-skills.test.js index d42e952c..c0060ea9 100644 --- a/test/sim/playtest6-skills.test.js +++ b/test/sim/playtest6-skills.test.js @@ -131,11 +131,14 @@ test('#15 the automatic operations cool down 3 s: 锏 S2 (2 charges, skill range assert.equal(u.skill.maxCharges, 2); h.step(); fill(u); - assert.ok(h.runUntil(() => u.skill.activations === 1, 1)); + // S2 deals its damage itself (no spec.attack): each cast takes an attack cycle, so it waits for the running one + // (GitHub #298) — at most one attack interval + const slot = u.s.interval + 0.1; + assert.ok(h.runUntil(() => u.skill.activations === 1, slot)); const t1 = h.b.time; h.run(AUTO_OP_COOLDOWN - 0.2); assert.equal(u.skill.activations, 1, 'the stored charge waits'); - assert.ok(h.runUntil(() => u.skill.activations === 2, 1)); + assert.ok(h.runUntil(() => u.skill.activations === 2, slot)); assert.ok(h.b.time - t1 >= AUTO_OP_COOLDOWN - 1e-6); done(h); }); From 895653fc1076dbd99c51a6f291f452936f32dcb8 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 20:21:19 +0800 Subject: [PATCH 10/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20the=20=E5=B8=9D?= =?UTF-8?q?=E5=9B=BD=E7=82=AE=E7=81=AB=E5=85=88=E5=85=86=E8=80=85=20shells?= =?UTF-8?q?=20hit=20every=20ally=20whose=20collider=20touches=20their=201.?= =?UTF-8?q?2=20circle=20=E2=80=94=20the=20impact=20tile=20and=20the=208=20?= =?UTF-8?q?around=20it,=20not=20just=20the=20cross=20(GitHub=20#364);=20go?= =?UTF-8?q?lden:=20roster-001,=20roster-019,=20diy-020=20move?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Seen (#364, FrogThai): the 中枢先兆者's shell hit the target and its orthogonal neighbours only — repro: a diagonal neighbour (√2 ≈ 1.414 from the impact) took nothing, as did a tile two away; the reporter saw the 3×3 in the official game. Official: PRTS 天赋 of both 先兆者 (one shared kit) 「弹道对半径1.2范围内的所有我方单位造成攻击力100%的无来源物理伤害(此弹道 不会强制击中主目标,碰撞无视迷彩)」. The landing is a 碰撞; PRTS 作战机制 §碰撞体积 (docs/SIM.md, constants.js): collider tests are the common way and an ally's collider is a 0.25 circle — the rule the engine already applies to ranged enemies' reach. Now (content/enemies/fly.js kitShell): an ally is hit when its collider touches the 1.2 circle — centre distance ≤ 1.45 (SHELL_REACH = SHELL_RADIUS + ALLY_COLLIDER_RADIUS): the impact tile and the 8 around it, never two tiles away. The telegraph and the blast are drawn at that reach. [ASSUMED] for this shell (its text names the 碰撞); other content zones keep their point radius as before. Golden: the three battles with a 先兆者 whose shells land beside a diagonal operator (roster-001 中枢先兆者, roster-019 and diy-020 先兆者). --- server/sim/content/enemies/fly.js | 23 ++++--- test/content/enemies_bosses.test.js | 22 ++++++ test/golden/diy.json | 34 +++++----- test/golden/roster.json | 100 ++++++++++++++-------------- 4 files changed, 104 insertions(+), 75 deletions(-) diff --git a/server/sim/content/enemies/fly.js b/server/sim/content/enemies/fly.js index 03d9ab6b..49b71a54 100644 --- a/server/sim/content/enemies/fly.js +++ b/server/sim/content/enemies/fly.js @@ -1,7 +1,7 @@ // server/sim/content/enemies/fly.js — FLY 飞行 kits (auras, 暴鸰, the “萨科塔”, 假想敌:黑云, shells, seeds) and their part of KITS // (split from content/enemies.js). -import { TICK, MOVE_SCALE, PROJECTILE_SPEEDS } from '../../constants.js'; +import { TICK, MOVE_SCALE, PROJECTILE_SPEEDS, ALLY_COLLIDER_RADIUS } from '../../constants.js'; import { num, T, hurt, targetsNear, allTargets, areaAllies, areaAlliesInTiles, fieldAllies, byPriority, spawnChildren, stepToward, setForm, expose, @@ -27,9 +27,14 @@ export const BOMBD_RELEASE = 8 / 30; * 提升至200%"; the cast's end clip is already the bomb-less Idle_2 (`_endAnimKey`). */ export const BOMBD_POST_DELAY = 0.667; -/** 帝国炮火先兆者 shell (PRTS "普通攻击向目标所在位置发射一枚于3秒后命中的弹道,弹道对半径1.2范围内的所有我方单位造成攻击力 - * 100%的无来源物理伤害 … ※弹道始终使用缓存攻击力"): flight time and blast radius. */ -const SHELL_FLIGHT = 3, SHELL_RADIUS = 1.2; +/** 帝国炮火先兆者 shell (PRTS 天赋 of both 先兆者 "普通攻击向目标所在位置发射一枚于3秒后命中的弹道,弹道对半径1.2范围内的所有我方单位造成 + * 攻击力100%的无来源物理伤害(此弹道不会强制击中主目标,碰撞无视迷彩)… ※弹道始终使用缓存攻击力"): flight time and the written + * blast radius. The landing is a 碰撞 — PRTS 作战机制 §碰撞体积: collider tests are the common way, an ally's collider a + * circle of ALLY_COLLIDER_RADIUS — so an ally is hit when its collider touches the 1.2 circle: centre distance ≤ 1.45 + * (SHELL_REACH), the impact tile and the 8 around it (a diagonal tile centre is √2 ≈ 1.414 away; two tiles, 2, stay + * out) — the 3×3 a player saw in the official game (GitHub #364; until 0.2.2 the bare 1.2: the cross only). + * [ASSUMED] for this shell (its text names the 碰撞); other content zones keep their point radius (constants.js). */ +const SHELL_FLIGHT = 3, SHELL_RADIUS = 1.2, SHELL_REACH = SHELL_RADIUS + ALLY_COLLIDER_RADIUS; /** 假想敌:黑云 抓取: the blackboard radius counts ×2.5 (PRTS "2.5倍可变半径": range_radius 1.5 → 3.75), at most 3 prey, * "短暂延迟后" the 延迟吞噬 lands (delay [ASSUMED] 0.5 s); its SP (= 全弹发射 hits) caps at the data's spData.maxSp. */ @@ -206,7 +211,8 @@ function kitBombd(ab) { /** * 帝国炮火先兆者 / 中枢先兆者 (PRTS): every normal attack fires a shell at the target's position that lands SHELL_FLIGHT s - * later and deals 100 % of the ATK at launch as physical damage without a source to every ally within SHELL_RADIUS + * later and deals 100 % of the ATK at launch as physical damage without a source to every ally whose collider touches the + * SHELL_RADIUS circle (SHELL_REACH) * (it may miss the target that moved away; "碰撞无视迷彩"). The landing is the shell's area selection (areaAllies of the * enemy that fired it: no unblocking 隐匿 ally; the damage stays 无来源). The attack itself is the engine's (cooldown, * pause, 'atk' event of kind 'mortar'); the damage is the shell's (ai.js `profile.deferHit`). @@ -218,10 +224,11 @@ function kitShell() { const atk = e.s.atk * (e.profile.atkScale ?? 1); for (const t of c.targets) { const x = t.x, y = t.y; - b.fx('bombardShell', { x, y, id: e.id, r: SHELL_RADIUS, t: SHELL_FLIGHT }); + // (the telegraph and the blast are drawn at the reach: every ally whose centre lies in the circle is hit) + b.fx('bombardShell', { x, y, id: e.id, r: SHELL_REACH, t: SHELL_FLIGHT }); b.after(SHELL_FLIGHT, () => { - b.fx('bombard', { x, y, r: SHELL_RADIUS, kind: 'emppnt' }); - for (const u of areaAllies(b, e, x, y, SHELL_RADIUS)) hurt(b, null, u, atk, 'phys', { isSkill: false, tags: ['shell'] }); + b.fx('bombard', { x, y, r: SHELL_REACH, kind: 'emppnt' }); + for (const u of areaAllies(b, e, x, y, SHELL_REACH)) hurt(b, null, u, atk, 'phys', { isSkill: false, tags: ['shell'] }); }); } }, diff --git a/test/content/enemies_bosses.test.js b/test/content/enemies_bosses.test.js index aa945336..80d57185 100644 --- a/test/content/enemies_bosses.test.js +++ b/test/content/enemies_bosses.test.js @@ -1098,6 +1098,28 @@ test(`${nm('enemy_1112_emppnt')} / 中枢: every attack is a shell that lands 3 } }); +test(`${nm('enemy_1112_emppnt_2')} / 先兆者: the shell's 1.2 circle takes every ally whose collider touches it — the impact tile and the 8 around it, not the cross (GitHub #364)`, () => { + for (const key of ['enemy_1112_emppnt_2', 'enemy_1112_emppnt']) { + // the enemy on (10, 8) reaches only the wall on (10, 6): the impact; the others stand around it, out of its reach + const h = arena({ units: [ + { chessId: 't_wall', row: 10, col: 6 }, { chessId: 't_wall2', row: 10, col: 5 }, + { chessId: 't_wall3', row: 9, col: 5 }, { chessId: 't_wall4', row: 10, col: 4 }, + ], captureNoisy: true }); + h.step(); + const e = put(h, key, [10, 8], { route: 2 }); + assert.ok(h.runUntil(() => e.stats.attacks >= 1, 10), 'attacks'); + const shell = h.eventsOf('fx').find((ev) => ev[1] === 'bombardShell'); + assert.ok(Math.abs(shell[4].r - 1.45) < 1e-9, 'drawn at the reach: 1.2 + the 0.25 collider'); + h.run(3.1); + const taken = (id) => h.unit(id).stats.taken; + for (const [id, what] of [['t_wall', 'the impact'], ['t_wall2', 'its orthogonal neighbour (1 away)'], ['t_wall3', 'a diagonal neighbour (√2 away)']]) { + assert.ok(Math.abs(taken(id) - e.s.atk) < 1e-6, `${key}: ${what} takes the shell`); + } + assert.equal(taken('t_wall4'), 0, `${key}: two tiles away stays out`); + checkInvariants(h.b); + } +}); + test(`${nm('enemy_10084_hlegle')}: never attacks a flying ally (不会攻击飞行单位) — a ground one in range instead`, () => { // a flying ally (the 炎佑 is one) deployed after the wall, so the engine's order (latest deployed) would pick it const h = arena({ units: [{ chessId: 't_wall', row: 10, col: 6 }, { chessId: 't_wall2', row: 10, col: 8 }] }); diff --git a/test/golden/diy.json b/test/golden/diy.json index adddf669..068e674d 100644 --- a/test/golden/diy.json +++ b/test/golden/diy.json @@ -794,30 +794,30 @@ "total": 117, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 267, + "rngDraws": 261, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":16,"total":117,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":110512,"bossDmg":0,"heal":0,"deaths":23,"layerGains":{}}}, + "players": {"p1":{"killed":16,"total":117,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":99595,"bossDmg":0,"heal":0,"deaths":23,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_heyak",0,0,141,0,11532,5277,0,17,4], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_heyak",0,0,142,3,8656,5277,0,6,1], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_heyak",0,0,142,2,13429,5277,0,8,1], ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_heyak",0,0,133,0,8167,5277,0,12,0], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_heyak",745.03,1,143,1,9977,4487,0,10,3], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_heyak",0,0,5,1,7936,1744,0,7,1], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_heyak",0,0,8,2,22948,1744,0,10,1], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_heyak",0,0,80,3,4698,3478,0,7,2], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_heyak",0,0,82,2,7236,3478,0,9,1], - ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_heyak",0,0,79,0,7099,3478,0,10,0], - ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,10,1,1508,1380,0,4,1], - ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,75,0,1697,2760,0,3,0], - ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,3,3,19057,1380,0,7,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_heyak",745.03,1,143,2,10896,4487,0,11,4], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_heyak",0,0,5,1,5394,1744,0,5,1], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_heyak",0,0,8,2,16520,1744,0,9,1], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_heyak",0,0,81,3,4698,3478,0,7,2], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_heyak",0,0,9,2,5566,1739,0,5,1], + ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_heyak",0,0,80,0,7934,3478,0,12,0], + ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,75,1,1168,2760,0,4,1], + ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,76,0,1697,2760,0,3,0], + ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,3,3,12593,1380,0,4,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1005_yokai":[51,11,40,0,33724],"enemy_1005_yokai_2":[54,5,49,20376,35463],"enemy_1112_emppnt":[12,0,12,0,41325]}, - "hooks": [1,143,6811,222,233,299,299,0,39,140,15,15,0,7842,192,0,117,101,1,39,0,0,0], - "events": {"atk":346,"deploy":24,"die":39,"dmg":299,"engage":11,"fx":280,"leak":101,"skill":30,"spawn":131,"status":345}, - "fx": {"bombard":32,"bombardShell":32,"tornado":192,"tornadoPulse":24}, - "snaps": "1059b89c 6d126d74 36b0162d 5f3c3def bea20f53 df2b0823 0facf77d 1bebe14e 3f3f75b7 bb7367a6 b9de1305 563b9e34 4d8ac78e 5cbb2592 9e319bc1 262aa531 28129a72 6a5bd285 565917fe 7062b7e8 ebd4bd17 166fe5f3 abc7bb22" + "enemies": {"enemy_1005_yokai":[51,10,41,0,27983],"enemy_1005_yokai_2":[54,6,48,16577,33757],"enemy_1112_emppnt":[12,0,12,0,37856]}, + "hooks": [1,143,6811,196,203,284,284,0,39,140,16,16,0,7583,188,0,117,101,1,39,0,0,0], + "events": {"atk":320,"deploy":24,"die":39,"dmg":284,"engage":11,"fx":198,"leak":101,"skill":32,"spawn":131,"status":299}, + "fx": {"bombard":25,"bombardShell":25,"tornado":131,"tornadoPulse":17}, + "snaps": "1059b89c 0d0ab14e fff04efc 4b100ad5 3133142e 42f10f08 552cfc97 2c32a76e 2878d371 3d4145d0 7b9c9b96 60fdd264 d214d7b9 22d073f8 5ee9268f fc13e42a f98c6910 8622b2f9 848f0531 0f883096 7cba8373 7565b444 88e454e7" }, "diy-021": { "about": "6_diy1_b=heyak/S1 6_diy2_b=heyak/S2 6_diy1_b=heyak/S3 6_diy2_b=heyak/S1/002_heyak 6_diy1_b=heyak/S2/002_heyak 6_diy2_b=heyak/S3/002_heyak 6_diy1_b=heyak/S1/003_heyak 6_diy2_b=heyak/S2/003_heyak 6_diy1_b=heyak/S3/003_heyak 6_diy2_b=heyak/S1/004_heyak 6_diy1_b=heyak/S2/004_heyak 6_diy2_b=heyak/S3/004_heyak", diff --git a/test/golden/roster.json b/test/golden/roster.json index d66021ac..cfde3e33 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -24,47 +24,47 @@ "total": 31, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 59, + "rngDraws": 71, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":26,"total":31,"perfect":false,"leaks":5,"leaksUncounted":0,"coins":8,"dmg":175893,"bossDmg":0,"heal":12146,"deaths":6,"layerGains":{}}}, + "players": {"p1":{"killed":26,"total":31,"perfect":false,"leaks":5,"leaksUncounted":0,"coins":8,"dmg":187475,"bossDmg":0,"heal":12128,"deaths":6,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_1_02_a",1,null,3413.8,1,7,0,0,470,0,0,1], - ["p1",2,"op","chess_char_1_04_a",1,null,2758.75,1,9,3,22365,259,0,44,2], - ["p1",3,"op","chess_char_1_10_a",0,null,600.05,1,48,1,2231,2387,2541,20,13], - ["p1",4,"op","chess_char_1_08_a",1,null,0,0,12,7,30185,9333,0,31,2], - ["p1",5,"op","chess_char_1_12_a",1,null,0,0,15,3,21392,5549,1509,23,1], - ["p1",6,"op","chess_char_1_01_a",1,null,1403.75,1,4,3,10421,0,0,23,1], + ["p1",1,"op","chess_char_1_02_a",1,null,2478.05,1,7,0,0,1435,0,0,1], + ["p1",2,"op","chess_char_1_04_a",1,null,146.83,1,9,3,23185,4942,0,47,2], + ["p1",3,"op","chess_char_1_10_a",0,null,424.05,1,48,0,3856,3742,3046,28,13], + ["p1",4,"op","chess_char_1_08_a",1,null,0,0,12,3,11737,6202,0,18,1], + ["p1",5,"op","chess_char_1_12_a",1,null,0,0,15,4,20668,5498,1459,23,1], + ["p1",6,"op","chess_char_1_01_a",1,null,558.75,1,4,3,14495,895,0,38,1], ["p1",7,"op","chess_char_1_03_a",1,null,964.63,1,5,0,0,898,0,0,0], - ["p1",8,"op","chess_char_1_06_a",1,null,0,0,11,2,14672,1854,5358,36,1], - ["p1",9,"op","chess_char_1_07_a",0,null,0,0,13,4,17329,2979,0,27,0], - ["p1",10,"op","chess_char_1_09_a",1,null,2152.5,1,6,0,25109,5400,0,23,1], - ["p1",11,"op","chess_char_1_13_a",1,null,0,0,14,0,11348,4262,0,25,1], - ["p1",12,"op","chess_char_1_14_a",1,null,1058.43,1,8,3,20842,1959,0,15,1], + ["p1",8,"op","chess_char_1_06_a",1,null,597.56,1,49,1,11022,3038,3553,23,1], + ["p1",9,"op","chess_char_1_07_a",0,null,0,0,13,3,14602,2371,0,23,0], + ["p1",10,"op","chess_char_1_09_a",1,null,1268.3,1,6,0,34377,6304,0,27,1], + ["p1",11,"op","chess_char_1_13_a",1,null,1141.25,1,50,0,9909,3261,0,20,1], + ["p1",12,"op","chess_char_1_14_a",1,null,653.21,1,8,9,43626,3827,0,18,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], - ["p1","~1","token","char_605_cmedic",null,null,1202,1,16,0,0,0,2737,32,2] + ["p1","~1","token","char_605_cmedic",null,null,1202,1,16,0,0,0,4070,32,2] ], "enemies": { "enemy_10001_trslim": [1,1,0,9,4320], - "enemy_1005_yokai_3": [1,1,0,5873,28800], - "enemy_1010_demon_2": [1,1,0,3684,14400], + "enemy_1005_yokai_3": [1,1,0,4900,28800], + "enemy_1010_demon_2": [1,1,0,3877,14400], "enemy_1026_aghost": [1,1,0,0,3648], - "enemy_1112_emppnt_2": [1,0,0,0,7519], - "enemy_1116_liprr": [18,17,0,265,90996], - "enemy_1168_dumage": [1,1,0,1621,4320], + "enemy_1112_emppnt_2": [1,0,0,0,10957], + "enemy_1116_liprr": [18,17,0,382,92690], + "enemy_1168_dumage": [1,1,0,2482,4320], "enemy_1198_msfshu_2": [1,1,0,0,4], "enemy_1229_darmy_2": [1,1,0,669,5280], "enemy_1288_duskls": [1,1,0,396,4805], - "enemy_1381_winman": [1,1,0,26,5568], - "enemy_1500_skulsr": [1,0,0,983,3307], - "enemy_2004_balloon": [1,0,0,0,2927], + "enemy_1381_winman": [1,1,0,13,5568], + "enemy_1500_skulsr": [1,0,0,478,5672], + "enemy_2004_balloon": [1,0,0,0,7012], "enemy_9010_acpupp": [1,0,0,0,0] }, - "hooks": [1,48,2700,377,377,664,666,325,32,32,26,23,16,15660,113,30,31,0,1,33,0,0,0], - "events": {"atk":423,"bounty":4,"deploy":14,"die":32,"dmg":666,"engage":10,"fx":76,"heal":321,"skill":50,"spawn":47,"status":134}, - "fx": {"aoe":2,"bombard":8,"bombardShell":9,"counter":15,"crit":16,"dp":2,"ember":1,"explode":5,"heal":12,"liberate":1,"phase":1,"summon":1,"taunt":1,"telegraph":1,"zone":1}, - "snaps": "4fb2b17d c3ab03ad ba4fbecd be5ad383 5c83697d e9741d62 82d0eeff f215e669 22d6d8d7" + "hooks": [1,50,2700,386,386,697,699,322,32,32,25,23,16,14727,101,32,31,0,1,33,0,0,0], + "events": {"atk":433,"bounty":4,"deploy":16,"die":32,"dmg":699,"engage":10,"fx":76,"heal":318,"skill":49,"spawn":47,"status":113}, + "fx": {"aoe":1,"bombard":9,"bombardShell":9,"counter":12,"crit":19,"dp":1,"ember":1,"explode":5,"heal":13,"liberate":1,"phase":1,"summon":1,"taunt":1,"telegraph":1,"zone":1}, + "snaps": "4fb2b17d c3ab03ad ba4fbecd 8acf7af3 38caabab f066cab4 47ee9cdf f118754f 0cea250b" }, "roster-002": { "about": "pass 0 band 2: chess_char_1_02_b chess_char_1_20_a chess_char_1_04_b chess_char_1_08_b chess_char_1_18_a chess_char_1_19_a chess_char_1_17_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_1_07_b chess_char_1_09_b", @@ -1214,14 +1214,14 @@ "round": 13, "seed": 116466041, "waveId": "act1autochess_h06", - "time": 197.33, - "ticks": 5920, + "time": 200.93, + "ticks": 6028, "reason": "cleared", "killed": 108, "total": 108, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 755, + "rngDraws": 672, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -1233,27 +1233,27 @@ "coins": 12, "dmg": 3002858, "bossDmg": 0, - "heal": 141615, + "heal": 151109, "deaths": 0, "layerGains": {"deputShip":12} } }, "units": [ - ["p1",1,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",6796.8,1,14,25,906021,52826,0,205,3], - ["p1",2,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",6087.4,1,9,8,258235,2105,0,8,4], - ["p1",3,"op","chess_char_5_01_b",0,"uniequip_003_excu2",4149.22,1,10,0,12329,1953,300,5,0], + ["p1",1,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",6263.63,1,14,26,881807,49881,0,208,3], + ["p1",2,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",6087.4,1,9,8,257902,2105,0,9,3], + ["p1",3,"op","chess_char_5_01_b",0,"uniequip_003_excu2",4049.22,1,10,0,8361,1953,200,3,0], ["p1",4,"op","chess_char_5_05_b",0,"none",12815,1,7,0,0,1000,100,0,0], - ["p1",5,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",10599.35,1,24,21,389315,46523,0,97,3], - ["p1",6,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4824.27,1,2,30,616754,10442,1358,64,2], - ["p1",7,"op","chess_char_6_14_b",2,"uniequip_002_lumen",4177.8,1,3,0,0,0,9404,76,1], - ["p1",8,"op","chess_char_6_16_b",2,"uniequip_002_halo2",3165.8,1,4,1,79775,0,0,48,2], - ["p1",9,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",3390.2,1,8,17,556140,1000,0,72,3], - ["p1",10,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",3475.3,1,12,0,0,27274,130454,67,2], + ["p1",5,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",10122.44,1,24,20,425280,48361,0,105,3], + ["p1",6,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4873,1,2,28,540782,10588,1317,60,2], + ["p1",7,"op","chess_char_6_14_b",2,"uniequip_002_lumen",4177.8,1,3,0,0,0,9754,78,1], + ["p1",8,"op","chess_char_6_16_b",2,"uniequip_002_halo2",3165.8,1,4,1,81240,0,0,48,2], + ["p1",9,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",3390.2,1,8,17,575679,1000,0,72,3], + ["p1",10,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",3475.3,1,12,0,0,37945,139738,69,2], ["p1",11,"op","chess_char_5_02_b",0,"none",2945.8,1,1,0,0,0,0,0,0], - ["p1",12,"op","chess_char_5_03_b",0,"uniequip_003_blaze2",3414.4,1,5,4,136237,0,0,68,9], + ["p1",12,"op","chess_char_5_03_b",0,"uniequip_003_blaze2",3414.4,1,5,5,170767,0,0,86,11], ["p1","~1","token","token_10019_nearl2_sword",null,null,6491.98,0,27,0,0,1788,0,0,null], - ["p1","~2","token","token_10019_nearl2_sword",null,null,6324.82,0,82,1,19770,1916,0,20,null], - ["p1","~3","token","token_10019_nearl2_sword",null,null,4911.82,0,115,1,28283,1688,0,9,null] + ["p1","~2","token","token_10019_nearl2_sword",null,null,6438.66,0,80,1,21873,1764,0,18,null], + ["p1","~3","token","token_10019_nearl2_sword",null,null,2379.55,0,114,2,39169,4220,0,25,null] ], "enemies": { "enemy_1005_yokai_2": [1,1,0,51,4443], @@ -1262,19 +1262,19 @@ "enemy_1112_emppnt": [1,1,0,0,37265], "enemy_1166_dusbr_2": [1,1,0,30,12613], "enemy_1198_msfshu": [1,1,0,0,9], - "enemy_1229_darmy": [28,28,0,5500,337106], - "enemy_1229_darmy_2": [57,57,0,33649,898662], + "enemy_1229_darmy": [28,28,0,6548,337106], + "enemy_1229_darmy_2": [57,57,0,32511,898662], "enemy_1283_sgkill_2": [1,1,0,14433,51598], "enemy_1367_dseed": [1,1,0,0,8600], "enemy_1439_dslntf_2": [1,1,0,20025,94596], "enemy_2003_rockman": [1,1,0,1417,214991], - "enemy_9007_acelem": [12,12,0,39646,1238347], - "enemy_9009_acfort": [1,1,0,4054,68797] + "enemy_9007_acelem": [12,12,0,41756,1238347], + "enemy_9009_acfort": [1,1,0,3643,68797] }, - "hooks": [1,125,5920,886,886,2764,3341,664,108,113,29,26,59,22540,1430,76,108,0,1,108,2,6,0], - "events": {"atk":1273,"bounty":6,"deploy":17,"die":113,"dmg":3139,"engage":10,"fx":524,"heal":534,"layer":2,"skill":55,"spawn":123,"status":434}, - "fx": {"airstrike":19,"aoe":9,"beam":20,"blink":2,"bombard":10,"bombardShell":10,"burst":6,"cleanse":2,"displace":4,"drone":341,"droneLock":50,"drones":3,"emergency":1,"extraAttack":1,"finale":4,"garrison":2,"garrisonGrant":1,"link":5,"radiantSword":3,"slash":22,"steal":2,"summon":3,"sunBurst":1,"talent":3}, - "snaps": "01a34277 0e7ad63e efd260c2 e5d761b8 09e06c1f e2015a51 1b84ecbd 66a4bb37 d5349acd 92a0e019 e2770fd2 ad03eaae 979013d9 6daad463 50ac1a94 3bd9f1b9 c168ed0a 0203a659 b9f0ce4f c81058f7" + "hooks": [1,125,6028,925,925,2810,3369,649,108,113,30,27,55,22777,1447,79,108,0,1,108,2,7,0], + "events": {"atk":1296,"bounty":6,"deploy":17,"die":113,"dmg":3164,"engage":10,"fx":532,"heal":537,"layer":2,"skill":57,"spawn":123,"status":448}, + "fx": {"airstrike":17,"aoe":11,"beam":24,"blink":2,"bombard":10,"bombardShell":10,"burst":7,"cleanse":2,"displace":4,"drone":353,"droneLock":45,"drones":3,"emergency":1,"finale":3,"garrison":2,"garrisonGrant":1,"link":4,"radiantSword":3,"slash":21,"steal":2,"summon":3,"sunBurst":1,"talent":3}, + "snaps": "01a34277 0e7ad63e efd260c2 caa9f746 70118f40 b3efb03c de6d6921 949345a2 044a2b7f 708e7b55 4d219240 d5449fa5 16d7d388 9acd59d5 6a170c8e 5cb70efa f2ae5891 7f3e163c 63a11ec8 d5bcbf3a" }, "roster-020": { "about": "pass 1 band 1: chess_char_1_02_a chess_char_1_04_a chess_char_1_10_a chess_char_1_08_a chess_char_1_12_a chess_char_1_01_a chess_char_1_03_a chess_char_1_06_a chess_char_1_07_a chess_char_1_09_a chess_char_1_13_a chess_char_1_14_a", From 4bd154e3265d299dd511ec032fbce0fb9b9c8bce Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 20:29:45 +0800 Subject: [PATCH 11/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20a=20=E9=80=9F?= =?UTF-8?q?=E5=B0=84=E6=89=8B=20(=E4=BC=98=E5=85=88=E6=94=BB=E5=87=BB?= =?UTF-8?q?=E7=A9=BA=E4=B8=AD=E5=8D=95=E4=BD=8D)=20blocking=20a=20ground?= =?UTF-8?q?=20enemy=20shoots=20a=20flyer=20in=20its=20range=20first;=20eve?= =?UTF-8?q?ry=20other=20attacker=20keeps=20its=20blocked=20enemy=20first?= =?UTF-8?q?=20(GitHub=20#220,=20the=20owner's=20decision=20of=202026-10-08?= =?UTF-8?q?);=20golden:=20roster-026,=20roster-037=20move?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The owner's decision (relayed 2026-10-08): only the 速射手 air priority outranks the attacker's own blocked enemy — PRTS 索敌的概念 「阻挡(近战限定)→特殊优先级→…」 — while the user's playtest #6 rule 「阻挡了就一定要能打到」 keeps 'blocked first' for every other attacker and priority. PR #220 by TsangAsuna (for #205) moved every special priority ahead of the block; re-implemented for priority 'fly' only (targeting.js sortEnemyTargets: the fly key, then blocked, then the rest as before) — the trait's priority and a skill's targeting priority 'fly' (新约能天使) alike. Seen (repro): 能天使 on a melee tile blocking a walker kept shooting it with a flyer in range; now the flyer, and 远牙 (神射手, lowest DEF first) still hits the enemy it blocks over a softer or a flying one. Docs: SIM.md (blocking), design/engine.md, PLAYING.md 阻挡. Golden: roster-026 (流星, 速射手) and roster-037 (新约能天使's priority 'fly') now shoot flyers in range while blocking. --- docs/PLAYING.md | 2 +- docs/SIM.md | 4 +- docs/design/engine.md | 2 +- server/sim/targeting.js | 10 ++- test/golden/roster.json | 92 ++++++++++++++-------------- test/sim/playtest5-targeting.test.js | 30 +++++++++ 6 files changed, 89 insertions(+), 51 deletions(-) diff --git a/docs/PLAYING.md b/docs/PLAYING.md index fc3c7920..c0a270f1 100644 --- a/docs/PLAYING.md +++ b/docs/PLAYING.md @@ -74,7 +74,7 @@ - 点击干员显示攻击范围和底部按钮(「撤退」回到整备区、「出售 +1」);右键 / 长按查看详细信息:头像旁是盟约,下面第一项就是干员的**特质**(如「休整期结束时 …」),之后是特性、属性、攻击范围、技能、模组、装备、天赋。属性是**实时数值**:作战中每秒刷新 4 次(当前生命、攻击、防御、法抗、攻击间隔、阻挡),休整期显示棋盘上的干员**开战时**的数值(已算入装备、盟约层数、特质、策略与机变效果);高于基础值为绿色、低于为红色并标出差值(攻击间隔变短算增益),鼠标悬停可看基础值。基础值是官方数据在该阶级的等级、技能等级(和精锐的模组)下、**满潜能**、0 信赖的数值:所有干员(精锐、补位、自选也一样)都带上全部潜能加成——部署费用、再部署时间、攻击力 / 生命 / 防御 / 法抗 / 攻速,以及「天赋效果增强」,召唤物的天赋也按召唤者的满潜能(维护者 2026-10-07 的决定,GitHub #252:官方赛事视频里的刺玫正是满潜能的攻击 435、费用 15)。 - **召唤物手动摆放**:把带可部署召唤物的干员放上棋盘后,它的召唤物会进入整备区(赫默的医疗探机、巫恋的诅咒娃娃、凯瑟琳的 2 个支援装置、浊心斯卡蒂的海嗣、伺夜的狼群、缪尔赛思的流形;同一干员的召唤物叠在一格,不占部署位),像干员一样拖到棋盘上并选方向。凯瑟琳的支援装置给**它面朝的那一格**上的干员加屏障,所以要放在干员旁边、朝向干员。**战术家的援军**(伺夜的狼群、缪尔赛思的流形,也就是选战术点)和官方一样**只能放在召唤者的攻击范围内**:拖动时只有这些格子会亮起;之后在原地给战术家换朝向时,不在新攻击范围里的援军会退回整备区(还在范围里的保持不动;整备区和临时整备区都满、援军无处可退时,这次换朝向不生效并提示「整备区已满」)。撤退或出售干员时它的召唤物一起移除;**移动干员到别的格子时(包括把召唤物拖到干员身上交换位置),它已摆放的召唤物会退回整备区**,需要重新摆放。整备区满时退回的召唤物进入临时整备区,休整期结束还没处理的会在下一回合重新回到整备区。 - 作战中:海嗣、狼群、流形、支援装置开战时就在摆放的位置部署;医疗探机、诅咒娃娃开战时也在摆放的位置免费部署一次(持续 10 / 15 秒,和官方一样不需要先开技能),之后所属干员每次发动技能时再次在原位出现;所属干员被击倒、再部署回场时,技能给的那一个如果还没出现,会立刻出现。巫恋退场时诅咒娃娃随之撤退,赫默退场时已出现的医疗探机不受影响。医疗探机、诅咒娃娃、海嗣(以及自选干员的工程蓄水炮、沙地兽、打字机、本能的召唤)这类不会受到攻击、到时间就离场的召唤物不受任何伤害(活性源石也一样)、也不会被治疗,它们的血条就是倒计时:随时间减少,空了就离场。医疗探机、诅咒娃娃、支援装置、海嗣没有摆放就不会出现;狼群、流形(战术家的援军)没有摆放时会在战术点出现。狼群最后一只狼影被击倒后进入战术点形态:暂时离开战斗(不阻挡、不攻击、不会被攻击,格子仍然占着),经过狼影的恢复时间(25 秒)后在原地满血、带着 1 只狼影回来,之后重新开始每 25 秒加 1 只狼影;伺夜退场时狼群随之撤退,伺夜再部署回场时狼群重新带着 2 只狼影出现。 -- **阻挡**看接触:干员阻挡中心距离约 0.7 格以内、与它接触的敌人(地面干员挡不住飞行和近地悬浮的敌人)。敌人卡在两名干员之间时,阻挡它的干员倒下、撤退或被晕眩后,另一名仍与它接触、还有空余阻挡数的干员会**立刻接替阻挡**;都没有空位时敌人才会走掉。被冻结或晕眩的敌人同样会被接触到的干员挡住:干员再部署到它身边就会阻挡它,隐匿的敌人也随之破隐(沉睡、浮空、恐惧的敌人仍然挡不住)。迎面走来的敌人会停在干员格子前面。**阻挡了就一定能打到**:任何干员(包括站在近战位的远程干员和召唤物)总能攻击自己阻挡的敌人,不管它在不在攻击范围内、在干员哪一侧,并且优先攻击它(医疗干员除外:咒愈师以外的医疗挡住敌人时照常治疗队友,不会攻击它;「停止攻击」类技能期间也除外;技能原文另有限制的也按原文:普罗旺斯二技能开启时不以生命值高于 80% 的敌人为目标,寒檀二技能的冰凌随机落在攻击范围内的地块上)。 +- **阻挡**看接触:干员阻挡中心距离约 0.7 格以内、与它接触的敌人(地面干员挡不住飞行和近地悬浮的敌人)。敌人卡在两名干员之间时,阻挡它的干员倒下、撤退或被晕眩后,另一名仍与它接触、还有空余阻挡数的干员会**立刻接替阻挡**;都没有空位时敌人才会走掉。被冻结或晕眩的敌人同样会被接触到的干员挡住:干员再部署到它身边就会阻挡它,隐匿的敌人也随之破隐(沉睡、浮空、恐惧的敌人仍然挡不住)。迎面走来的敌人会停在干员格子前面。**阻挡了就一定能打到**:任何干员(包括站在近战位的远程干员和召唤物)总能攻击自己阻挡的敌人,不管它在不在攻击范围内、在干员哪一侧,并且优先攻击它——只有速射手例外:攻击范围内有飞行敌人时先打飞行敌人(特性「优先攻击空中单位」,维护者 2026-10-08 的决定,GitHub #220)(医疗干员除外:咒愈师以外的医疗挡住敌人时照常治疗队友,不会攻击它;「停止攻击」类技能期间也除外;技能原文另有限制的也按原文:普罗旺斯二技能开启时不以生命值高于 80% 的敌人为目标,寒檀二技能的冰凌随机落在攻击范围内的地块上)。 - 开战时干员按**逐列从左到右、每列从上到下**的顺序部署(最左一列最先,与阿戈尔吞噬「更靠左和靠上」的顺序相同),召唤物在所有干员之后。被阻挡的敌人先打阻挡它的干员;没被阻挡的远程敌人先打嘲讽等级高的,同级时打最后部署的(召唤物、最右一列靠下的干员和刚再部署的干员更容易挨打)。隐匿的干员只会被它阻挡的敌人攻击,没被它挡住的敌人的溅射、爆炸、范围技能、留下的伤害区域(包括假想敌:蚀裂被击倒后喷出的毒雾)以及深池伙友卫队、扎罗的减攻速光环也落不到它身上(和官方一样;写明「无视无法选择」的效果如污染秽蚀照常能打到,寒霜的减攻速光环和“墓碑”这类地图效果照常生效);**迷彩**(如忍冬三技能期间击倒敌人后、寒芒克洛丝一技能)同样只会被它阻挡的敌人攻击,也显示为半透明,但躲不开溅射、爆炸和范围伤害(同时打范围内所有单位的普通攻击——如“斩胄之剑”“破胄之锤”“灵幛”——打不到它),也不算隐匿(不触发叙拉古等「隐匿时」效果)。叙拉古的隐匿按时(32 秒 + 每层 0.4 秒)结束;忍冬的迷彩按官方持续到她下一次开技能。**蒂比起飞**期间只挡飞行敌人,地面敌人不会选她为目标(普通攻击、溅射、技能范围、燃烧区域和要选中目标的减益都落不到她身上);飞行和悬浮敌人、写明「无视无法选择」的效果(如污染秽蚀)照常能打到她;地面敌人的光环和全场效果(如“墓碑”让全场攻击力、防御力减半)、她攻击敌人时招来的反制(如重装侦察兵的暴露)照常生效,起飞前已挂上的持续伤害也照常跳。 - **技能自动释放**按官方「技能策略」:一般的手动技能在技能就绪、即将攻击 / 治疗且初始攻击范围内有敌人(治疗技能:有受伤的队友)时释放;**带独立技能范围**的技能(如德克萨斯「剑雨」、凛御银灰「御敌的锋锐」、锏「归于宁静」,不含「攻击范围扩大」类)在**技能范围内出现敌人**时就释放,不必先攻击;**开启后攻击范围比平时大**的手动技能(如莫斯提马「序时之匙」、银灰「真银斩」、史尔特尔「黄昏」、白面鸮「脑啡肽」)在**开启后的攻击范围内出现敌人**(治疗技能:有受伤的队友)时就释放,不必等敌人走进平时的攻击范围,这是本作按玩家反馈有意与官方不同的地方;**重装干员**的手动技能在受到伤害时释放(例外:深巡、雷蛇的二技能,号角的二、三技能,灰毫的一、二技能按玩家反馈改为攻击范围内有敌人时就释放(深巡二技能按开启后更远的攻击范围判断),余的二技能「厚礼上宾」改为周围两格(技能范围)内有敌人时就释放,这是本作有意与官方不同的地方;深巡一技能仍要受到伤害);执旗手 / 战术家 / 吟游者技能就绪即释放,解放者 / 阵法术师在初始攻击范围内有敌人时释放(开启后攻击范围扩大的技能——薄绿「风语」、蜜蜡「沙暴扩散」、卡涅利安「食噬之印」、玛恩纳「未宽解的悲哀」,以及安洁莉娜「秘杖·反重力模式」——同样按开启后的攻击范围判断)。**自动触发**的技能按其本身规则:只作用于队友的(如引星棘刺「度算浪波」、浊心斯卡蒂「同葬无光之愿」、纯烬艾雅法拉「无声润物」)技力满就释放,不用等敌人或伤员;立即生效、本身不是一次攻击的技能(如度算浪波、先锋的回费技能)每次释放占用一次攻击间隔,攻速越快放得越勤,迅捷返还的技力再多也不会每一帧都放(GitHub #298);伺夜「领袖的呼唤」「领袖的馈赠」只在场上有狼群时释放:狼群处于战术点形态时,「领袖的呼唤」也会释放并让它立刻带着 1 只狼影回到场上(狼影未满时改为加 1 只狼影,已满时把狼群的生命值回满),「领袖的馈赠」也会释放(立即获得费用,强化留给回来的狼群的下一次攻击);又如古米「备用军粮」在身边(技能范围内)有受伤的队友时就会发动,下一次攻击改为治疗该队友(不用先接敌;她的二技能「食粮烹制」是手动技能,按重装规则在受到伤害时释放);塞雷娅「急救」在她即将攻击时、身边有生命不高于一半的队友才发动,这次攻击直接改为治疗;新约能天使二技能的护盾按官方给攻击范围内**仇恨最高**的队友(嘲讽等级高的优先,同级时给最后部署的),不一定是站在最前面挨打的那个。手动技能的自动释放有 3 秒冷却:开战部署后先等 3 秒,之后同一干员两次自动释放至少间隔 3 秒(可充能的技能不会同时放完)。 - **推开 / 拉拽**按官方「力度 − 重量」决定距离:例如野鬃二技能(中等力度)把重量 0 / 1 / 2 / 3 的敌人推开约 2.1 / 1.7 / 0.4 / 0.1 格,重量 4 以上推不动——轻型敌人反而推得更远。野鬃二技能沿她的朝向推开:正前方 45° 以内按上面的距离,身后、侧面或贴身的敌人只被轻推一下(约 0.4 格以内);琳琅诗怀雅三技能的金币则从她身边向外推开,落在她前方 2–4 格的范围(官方「范围2-4」)内的地面敌人和她阻挡的敌人身上。攻击速度最低为 20(沼泽、寒霜等减速叠满时也不会更慢)。 diff --git a/docs/SIM.md b/docs/SIM.md index 20330556..da2b5ade 100644 --- a/docs/SIM.md +++ b/docs/SIM.md @@ -261,7 +261,9 @@ included), summons (流形's melee copy) and a ranged operator standing on a mel enemies it blocks, in range or not, whatever its facing, and targets them first ("可以选择且优先选择阻挡单位", PRTS 选择器; the user's rule after playtest #6, "阻挡了就一定要能打到": officially the collision pushes a blocked enemy to its blocker's front — `Battle.blockedTargets`, used by `ai.js acquireTargets` and the skills' DEFAULT trigger, and -`sortEnemyTargets`; "自身这格内" rules name the blocked enemies separately — 瑕光 S2, PRTS 备注). A kit that picks its own +`sortEnemyTargets`; one exception, the owner's decision of 2026-10-08 (GitHub #220): the 速射手 air priority — +priority 'fly', trait 优先攻击空中单位 — comes before its own blocked enemy, so a 速狙 on a melee tile shoots a flyer in its +range first, PRTS 索敌的概念 「阻挡(近战限定)→特殊优先级→…」; every other priority keeps the blocked enemy first; "自身这格内" rules name the blocked enemies separately — 瑕光 S2, PRTS 备注). A kit that picks its own targets from the range (`beforeAttack`) adds `battle.blockedTargets` to its candidates (深靛, 迷迭香 S3, 荒芜拉普兰德 S2, 佩佩 S2, 灵知 S3, 远牙 S3); only skill texts that exclude targets keep their rule (普罗旺斯 S2: none above 80 % HP; 寒檀 S2: icicles on random tiles of her range). This replaces the diff --git a/docs/design/engine.md b/docs/design/engine.md index 9b90dee1..27ed4666 100644 --- a/docs/design/engine.md +++ b/docs/design/engine.md @@ -119,7 +119,7 @@ Engine helpers (content must use these, never touch internals): `battle.dealDama - **Initial deployment** at t=0, free: operators by column — the left column first, top to bottom within a column (right-side boss player: from its own left, the highest field column) — then the summons (PRTS 卫戍协议/帮助 "按从上到下>从左到右的顺序部署。优先部署干员,随后为召唤物", read as a scan: down each column, the columns left to right — the order PRTS gives the 阿戈尔 devour, "更靠左和靠上"; row-major until 0.1.3, §23.23; `aggroSeq` ranks every start-of-battle summon after all operators) — a skill's placed summon (赫默 医疗探机, 巫恋 诅咒娃娃) included, once and free ("所有手动部署的召唤物,无视所属干员的持有状态…作战开始时立即部署一次"; afterwards it re-appears on its tile each time the owner's skill gives one, §20.1); on a shared field (联防, boss) the players' i-th operators deploy together [ASSUMED]. Deploy effects fire (`deploy` with `initial: true`). Then operators carried into 联防 knocked out (`carryState.down`) are forced out (`FORCED_EXIT`, HP 0, §19.3). Then `battleStart`, after which the forced-out operators' timers are re-read (redeploy-time effects that start with the battle, e.g. 机变 征召, cover them too). - **DP**: per player, start 10, +1/s, cap 99; used only for auto-redeploy (dead op: after `respawnTime`, if the tile it lies on is free and DP ≥ cost ⇒ redeploy there with full HP, SP = initSp). A knocked-out operator (and, since 0.1.2, one forced out by its own effects, §22.15) stays **down** on the tile it fell on — its own home when it fell on another board piece's home (that piece on the field or not) and its home is free, and 乌尔比安 knocked out while his S3 has moved him always on his deployment tile when it is free (the owner's deviation of 2026-10-07, `Unit.downAtHome`, §25.17.3) — until it redeploys there, and no ally deploys or moves onto that tile meanwhile (PRTS 卫戍协议/帮助 §作战阶段 单位部署; `Battle.downOn` / `restTile` / `_layBody`, §21.24; b.snap `down`, §18.3: counting / waiting for DP / its tile taken, a safeguard) — also one that entered 联防 knocked out (`FORCED_EXIT`, its full redeploy timer — confirmed by the user — with the battle-start redeploy effects, §19.3); summons, devices and enemies leave at once. -- **Blocking** (contact radius, PRTS 游戏数据基础 §阻挡半径 / 作战机制 "中点判定…案例:阻挡"; `constants.js BLOCK_RADIUS`, `Battle._checkBlock`, §19.2): an operator with free capacity blocks an unblocked, blockable enemy whose position lies within its block radius of its centre — ground 0.7071 (squared 0.49999037), 0.8944 × the blocker's 阻挡半径倍率 for blockFly units vs flyers (起飞; mod `blockRadiusScale` = 倍率 − 1 — PRTS 游戏数据基础 "飞行阻挡半径 = 0.8944 × 阻挡半径倍率", 凯尔希·思衡托 +0.23), devices 0.4472 (阻隔工事 / 障碍物); air units (FLY, 近地悬浮, 浮空) only by blockFly units. A ground enemy is never blocked by a unit standing on a tile ground units cannot pass (围墙 / 围栏: PRTS 地形机制 "部署在其中的单位,若当前阻挡类型为'地面阻挡'则无法阻挡敌人" — an enemy pushed or pulled against the fence walks on; air blocking there stays [ASSUMED], §21.23) nor by an airborne (起飞) unit, which blocks flyers only (§21.22). An enemy holding 不可阻挡 (PRTS 异常效果 BLOCK_FREE 「无法阻挡/被阻挡,自动解除阻挡」) — `unblockable` (恐惧, 诱导, enemy abilities), 浮空, and 沉睡 (SLEEPING = 无法行动+无敌+不可阻挡) — is never blocked and is released at once: a sleeping enemy frees its blocker's slot, stays where it is and, once awake, is blocked again only by a blocker with room (§24.9). The nearest such operator wins (ties: scan order [ASSUMED]). It is re-checked every tick, moving or not, so another operator in contact with room takes the enemy over when its blocker dies, is withdrawn or is stunned, and an operator whose capacity frees up grabs an overlapping enemy; one that finds no room walks on. A stunned or frozen enemy is checked too — 晕眩 / 冻结 hold no 不可阻挡 (PRTS 异常效果: the STUN / FROZEN state machines stop its moves and attacks) —, so an operator redeployed beside a held enemy blocks it where it stands and lifts its 隐匿; one held short of contact is blocked once it walks in after the status (GitHub #232; until 0.2.0 the check waited for the status to end). A head-on enemy stops at contact (≈ 0.71 tile), outside the blocker's tile. Enemy uses `blockCnt` capacity (default 1). Blocked enemies stop moving and attack their blocker if melee (or anyone in range if ranged, blocker first). **Every blocker** — melee units (重装要塞 / 领主 / 哨戒铁卫 included), summons and a ranged operator on a melee tile alike — whose attack hits enemies may always target the enemies it blocks, in range or not, whatever its facing, and targets them first ("可以选择且优先选择阻挡单位", PRTS 选择器; the user's rule after playtest #6, "阻挡了就一定要能打到": officially the collision pushes a blocked enemy to its blocker's front; `Battle.blockedTargets`, `targeting.js sortEnemyTargets`; §20.3 — it replaces the playtest #5 QA's melee-only restriction of §19.2). A healer (dmgType `heal`, or a skill attack turned into a heal) selects injured allies only and keeps healing while it blocks (PRTS 卫戍协议/帮助 "对于医疗干员(咒愈师分支除外),攻击目标为需要治疗的单位"; §21.17); 咒愈师 follow the blocker rule. The huge leaders are 自缚 + unblockable (§7). +- **Blocking** (contact radius, PRTS 游戏数据基础 §阻挡半径 / 作战机制 "中点判定…案例:阻挡"; `constants.js BLOCK_RADIUS`, `Battle._checkBlock`, §19.2): an operator with free capacity blocks an unblocked, blockable enemy whose position lies within its block radius of its centre — ground 0.7071 (squared 0.49999037), 0.8944 × the blocker's 阻挡半径倍率 for blockFly units vs flyers (起飞; mod `blockRadiusScale` = 倍率 − 1 — PRTS 游戏数据基础 "飞行阻挡半径 = 0.8944 × 阻挡半径倍率", 凯尔希·思衡托 +0.23), devices 0.4472 (阻隔工事 / 障碍物); air units (FLY, 近地悬浮, 浮空) only by blockFly units. A ground enemy is never blocked by a unit standing on a tile ground units cannot pass (围墙 / 围栏: PRTS 地形机制 "部署在其中的单位,若当前阻挡类型为'地面阻挡'则无法阻挡敌人" — an enemy pushed or pulled against the fence walks on; air blocking there stays [ASSUMED], §21.23) nor by an airborne (起飞) unit, which blocks flyers only (§21.22). An enemy holding 不可阻挡 (PRTS 异常效果 BLOCK_FREE 「无法阻挡/被阻挡,自动解除阻挡」) — `unblockable` (恐惧, 诱导, enemy abilities), 浮空, and 沉睡 (SLEEPING = 无法行动+无敌+不可阻挡) — is never blocked and is released at once: a sleeping enemy frees its blocker's slot, stays where it is and, once awake, is blocked again only by a blocker with room (§24.9). The nearest such operator wins (ties: scan order [ASSUMED]). It is re-checked every tick, moving or not, so another operator in contact with room takes the enemy over when its blocker dies, is withdrawn or is stunned, and an operator whose capacity frees up grabs an overlapping enemy; one that finds no room walks on. A stunned or frozen enemy is checked too — 晕眩 / 冻结 hold no 不可阻挡 (PRTS 异常效果: the STUN / FROZEN state machines stop its moves and attacks) —, so an operator redeployed beside a held enemy blocks it where it stands and lifts its 隐匿; one held short of contact is blocked once it walks in after the status (GitHub #232; until 0.2.0 the check waited for the status to end). A head-on enemy stops at contact (≈ 0.71 tile), outside the blocker's tile. Enemy uses `blockCnt` capacity (default 1). Blocked enemies stop moving and attack their blocker if melee (or anyone in range if ranged, blocker first). **Every blocker** — melee units (重装要塞 / 领主 / 哨戒铁卫 included), summons and a ranged operator on a melee tile alike — whose attack hits enemies may always target the enemies it blocks, in range or not, whatever its facing, and targets them first — a 速射手's air priority (优先攻击空中单位) excepted, which comes before the enemy it blocks (the owner's decision of 2026-10-08, GitHub #220) — ("可以选择且优先选择阻挡单位", PRTS 选择器; the user's rule after playtest #6, "阻挡了就一定要能打到": officially the collision pushes a blocked enemy to its blocker's front; `Battle.blockedTargets`, `targeting.js sortEnemyTargets`; §20.3 — it replaces the playtest #5 QA's melee-only restriction of §19.2). A healer (dmgType `heal`, or a skill attack turned into a heal) selects injured allies only and keeps healing while it blocks (PRTS 卫戍协议/帮助 "对于医疗干员(咒愈师分支除外),攻击目标为需要治疗的单位"; §21.17); 咒愈师 follow the blocker rule. The huge leaders are 自缚 + unblockable (§7). - **Operator attacks**: every `interval` s if a valid target exists; targets = up to `maxTargets` (default 1) from `unitsInGrid(rangeGrid)` (a `rangeAoe` profile — 阵法术师, 轰击术师 — takes every selectable enemy in range, §21.18; 「同时攻击阻挡的所有敌人」 — 强攻手 / 重剑手 / 推击手 and the skills worded so, `hitAllBlocked` — up to the block count, never fewer than 1, since 0.2.0: PRTS 分支特性信息 "普通攻击最大目标数等于阻挡数(不会低于1)"), priority: (1) the enemies it blocks (every blocker, in range or not, §20.3), (2) profession/trait priorities (e.g. fly-first snipers, `trait` text parsed by build-data into `targetPriority`), (3) enemy with the **least remaining path distance** to its goal, ties → earliest spawned. Melee (no ranged trait) and ground-only attacks cannot hit air units (`Unit.isFlying`: FLY, or a 近地悬浮 / 浮空 enemy — PRTS "算作空中单位", §19.1). Stealthed enemies can't be targeted unless blocked or revealed — or within 3 s of a block's end (§22.8). Ranged ops fire projectiles (speed ~12 tiles/s, instant for melee/arts-beam classes as data indicates); damage applies on impact; a 锁定攻击范围 AoE (`rangeAoe`) strikes every selectable enemy on its range at once with instant hits (§21.18). - **Healers** (`dmgType heal`): target the ally in range with the lowest HP% below 100%, never a 禁疗 / 孤立 unit (tokens.json `abnormal`, `noHeal`; §20.3; 史尔特尔 during 余烬, §22.7), and never the enemies they block — also while blocking (§21.17); do nothing otherwise (SP still regenerates). - **Enemy AI**: follow the route (checkpoints; WALK paths recomputed on the grid when devices change); when blocked stop & fight (`dmgType 'none'` enemies never attack unless content arms them through `e.profile` — 转译基底's armed forms, §21.4); ranged enemies (`rangeRadius > 0`) attack ops whose 0.25 collider touches their radius (centre distance ≤ `rangeRadius` + 0.25, §3, §20.4): the enemy's own target rule filters the candidates first (`profile.canTarget`: 只攻击地面单位 …), then priority blocker → special priority → highest taunt → **latest deployed** (`aggroSeq`) — PRTS 索敌 "阻挡→特殊优先级→仇恨值→最早出现"; a stealthed ally is attacked only by the enemy it blocks (§19.1) — and not even by that one when its 索敌不受阻挡影响 (自制投石机, `profile.blockFree`: it selects as if unblocked, §25.18) —, and an enemy's area effects — splash, blasts, area skills, zones, jumps — and buff auras skip it unless it blocks that enemy, while 迷彩 does not protect from splash and the other area effects (`targeting.js areaSelectable` / `auraSelectable`, §22.12); an airborne (起飞) ally is never a ground enemy's selection — picks, area damage, zones and statuses skip it, while 无视无法选择 abilities, direct picks, debuff ticks and flying units still reach it (§21.22); unblocked, they stand for each attack's clip (enemies.json `attackAnim`: its wind-up before the strike and the rest of the clip after it, shortened when the attacks come quicker than the clip; `ATTACK_PAUSE = 0.35 s` after the strike when no clip is known; a 「不停止移动」 attacker never stops; §22.14); any enemy whose block ends after its strike (its blocker stunned by it, knocked out, retreated) stands for the rest of that clip too — PRTS 状态机: the enemy's COMBAT state ends with its attack — and a displacement ends a stand (0.2.0). Every enemy attack strikes at its clip's damage frame after its swing starts — the first one of a contact too —, and a stun / freeze / sleep / 浮空, hiding, 缴械, 恐惧 or 战栗 (blocked) before that frame cuts the swing: no strike, the next swing starts from its wind-up (0.2.0, `ai.js attackWindup`; PRTS 状态机 / 异常效果 STUNNED; no clip known: no wind-up). FLY enemies ignore ground obstacles (only blockFly units block them) and follow their checkpoint route. A feared enemy runs between random 恐惧可达地块 away from the source (PRTS 诱发移动; `fear.js`); 恐惧 outranks 诱导; the 恐惧 / 诱导 walks re-plan from where the enemy stands after a push or an obstacle change, and the route re-plans when they end (§20.4). diff --git a/server/sim/targeting.js b/server/sim/targeting.js index 05ba7190..eeef5d30 100644 --- a/server/sim/targeting.js +++ b/server/sim/targeting.js @@ -193,7 +193,12 @@ const PRIORITY_FNS = { }; /** - * Sort candidate enemies for an attacker (in place) and return them. + * Sort candidate enemies for an attacker (in place) and return them: the enemies it blocks first (the user's rule after + * playtest #6, "阻挡了就一定要能打到", for every blocker — DESIGN §20.3), then the special priority, taunt, the remaining + * route, the spawn order. One exception, the owner's decision of 2026-10-08 (GitHub #220 by TsangAsuna, #205): the 速射手 air priority + * (trait 优先攻击空中单位 — priority 'fly', a skill's too) comes before its own blocked enemy, so a 速狙 on a melee tile + * blocking a ground enemy shoots the flyer in its range (PRTS 索敌的概念 「阻挡(近战限定)→特殊优先级→…」); every other + * priority keeps the blocked enemy first. * @param {object} attacker ally unit * @param {object[]} cands enemies * @param {string|null} priority profile/skill priority key @@ -201,6 +206,7 @@ const PRIORITY_FNS = { export function sortEnemyTargets(battle, attacker, cands, priority) { if (cands.length <= 1) return cands; const pf = priority ? (PRIORITY_FNS[priority] || (priority === 'nearest' || priority === 'farthest' ? null : null)) : null; + const airFirst = priority === 'fly'; const ax = attacker.x, ay = attacker.y; const keyed = cands.map((e) => ({ e, @@ -210,7 +216,7 @@ export function sortEnemyTargets(battle, attacker, cands, priority) { d: battle.remainingDistance(e), s: e.spawnSeq, })); - keyed.sort((a, b) => a.b - b.b || a.p - b.p || a.t - b.t || a.d - b.d || a.s - b.s); + keyed.sort((a, b) => (airFirst ? a.p - b.p : 0) || a.b - b.b || a.p - b.p || a.t - b.t || a.d - b.d || a.s - b.s); for (let i = 0; i < keyed.length; i++) cands[i] = keyed[i].e; return cands; } diff --git a/test/golden/roster.json b/test/golden/roster.json index cfde3e33..49278100 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -1612,24 +1612,24 @@ "time": 140, "ticks": 4200, "reason": "timeout", - "killed": 18, + "killed": 19, "total": 73, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 164, + "rngDraws": 169, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":18,"total":73,"perfect":false,"leaks":55,"leaksUncounted":0,"coins":6,"dmg":183879,"bossDmg":0,"heal":1883,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":19,"total":73,"perfect":false,"leaks":54,"leaksUncounted":0,"coins":6,"dmg":188151,"bossDmg":0,"heal":1883,"deaths":21,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_3_12_a",0,null,0,0,96,1,7787,4668,1883,19,4], - ["p1",2,"op","chess_char_3_16_a",0,null,0,0,6,1,3499,2173,0,12,1], - ["p1",3,"op","chess_char_3_18_a",0,null,0,0,99,3,10069,2962,0,12,5], + ["p1",1,"op","chess_char_3_12_a",0,null,0,0,97,1,7787,4668,1883,19,4], + ["p1",2,"op","chess_char_3_16_a",0,null,1616.62,1,104,1,3518,2729,0,13,1], + ["p1",3,"op","chess_char_3_18_a",0,null,0,0,99,4,14899,2962,0,12,9], ["p1",4,"op","chess_char_3_08_a",0,null,0,0,4,4,24642,1594,0,8,1], - ["p1",5,"op","chess_char_3_09_a",0,null,1267,1,103,0,13020,1267,0,21,3], + ["p1",5,"op","chess_char_3_09_a",0,null,1267,1,103,0,13472,1267,0,22,3], ["p1",6,"op","chess_char_3_10_a",0,null,0,0,87,1,29177,3300,0,17,4], - ["p1",7,"op","chess_char_3_11_a",0,null,1316,1,101,1,12760,1316,0,8,1], + ["p1",7,"op","chess_char_3_11_a",0,null,1316,1,101,1,11143,1316,0,7,1], ["p1",8,"op","chess_char_3_13_a",0,null,0,0,54,0,4477,4727,0,26,0], ["p1",9,"op","chess_char_3_14_a",0,null,0,0,75,0,4055,2502,0,5,0], - ["p1",10,"op","chess_char_3_17_a",0,null,1265.45,1,97,3,44464,3227,0,53,10], + ["p1",10,"op","chess_char_3_17_a",0,null,938.6,1,96,2,45052,3553,0,53,10], ["p1",11,"op","chess_char_3_19_a",0,null,0,0,78,1,17767,2878,0,32,0], ["p1",12,"op","chess_char_3_20_a",0,null,0,0,100,1,5659,3654,0,23,1], ["p1",13,"token","token_10028_vigil_wolf",null,null,739.7,0,15,1,4873,969,0,9,null], @@ -1640,22 +1640,22 @@ ], "enemies": { "enemy_10042_prtrop": [12,0,12,8673,25590], - "enemy_10042_prtrop_2": [12,0,10,1579,15250], - "enemy_10043_sailor": [39,11,28,18236,171566], + "enemy_10042_prtrop_2": [12,0,10,2136,15720], + "enemy_10043_sailor": [39,12,27,19228,175686], "enemy_1005_yokai_2": [1,1,0,68,2678], "enemy_10156_mncrer": [1,1,0,825,6912], "enemy_1116_liprr_2": [1,1,0,1518,12960], "enemy_1195_sfyin_2": [1,1,0,147,5357], "enemy_1196_msfyin_2": [2,2,0,0,10], "enemy_1251_lysyta_2": [1,1,0,198,5530], - "enemy_1355_mrfly_2": [1,0,1,0,6038], - "enemy_1513_dekght_2": [1,0,1,4110,1400], + "enemy_1355_mrfly_2": [1,0,1,0,5692], + "enemy_1513_dekght_2": [1,0,1,3445,1400], "enemy_9010_acpupp": [1,0,1,0,1540] }, - "hooks": [1,102,4200,383,383,1447,1501,12,40,94,30,30,0,9243,22,42,73,53,1,43,0,0,0], - "events": {"atk":436,"bounty":3,"deploy":26,"die":41,"dmg":1499,"engage":14,"fx":27,"heal":11,"leak":53,"skill":60,"spawn":90,"status":63}, - "fx": {"dp":5,"explode":4,"liberate":1,"phase":1,"revive":4,"shield":2,"sp":1,"strike":1,"summon":2,"telegraph":3,"wolfShadow":1,"wolfShadowLost":2}, - "snaps": "1a7d12d1 7955f440 d99919a7 ba142976 2092d384 8dfb7d8e b96cb02d f9c0f4f2 731ec520 3fc5716e da654f48 c224a8bc e3c0b86b 51db902d" + "hooks": [1,103,4200,388,388,1457,1512,12,41,94,34,34,0,9236,19,43,73,52,1,45,0,0,0], + "events": {"atk":441,"bounty":3,"deploy":27,"die":42,"dmg":1510,"engage":14,"fx":33,"heal":11,"leak":52,"skill":68,"spawn":90,"status":58}, + "fx": {"dp":9,"explode":4,"liberate":1,"phase":1,"revive":4,"shield":2,"sp":3,"strike":1,"summon":2,"telegraph":3,"wolfShadow":1,"wolfShadowLost":2}, + "snaps": "1a7d12d1 7955f440 d99919a7 bdc8b57f 6d3ff9fc 148b6fa6 09898d50 2b3be4b7 5b31a82e 86bf7ebc cb2e4363 3b25093e 5deb7724 6f2e41a0" }, "roster-027": { "about": "pass 1 band 4: chess_char_3_06_b chess_char_3_12_b chess_char_3_02_b chess_char_3_03_b chess_char_3_04_b chess_char_3_05_b chess_char_3_21_a chess_char_3_01_b chess_char_3_08_b chess_char_3_09_b chess_char_3_10_b chess_char_3_11_b", @@ -2250,26 +2250,26 @@ "round": 13, "seed": 1486935477, "waveId": "act1autochess_h06", - "time": 216.4, - "ticks": 6492, + "time": 218.23, + "ticks": 6547, "reason": "cleared", - "killed": 51, + "killed": 47, "total": 131, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 136, + "rngDraws": 99, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 51, + "killed": 47, "total": 131, "perfect": false, - "leaks": 80, + "leaks": 84, "leaksUncounted": 0, "coins": 4, - "dmg": 1189101, + "dmg": 1133862, "bossDmg": 0, - "heal": 36013, + "heal": 36020, "deaths": 26, "layerGains": {"sargonShip":6} } @@ -2278,15 +2278,15 @@ ["p1",1,"op","chess_char_6_06_b",0,"uniequip_003_pepe",0,0,8,1,40812,3361,372,9,3], ["p1",2,"op","chess_char_6_15_b",0,"uniequip_003_qiubai",0,0,6,3,99385,3407,823,19,4], ["p1",3,"op","chess_char_6_07_b",0,"uniequip_003_siege2",0,0,9,0,82237,2661,0,11,4], - ["p1",4,"op","chess_char_6_04_b",0,"uniequip_003_skadi2",3523.2,1,174,0,0,19492,10978,0,4], - ["p1",5,"op","chess_char_6_05_b",0,"uniequip_003_pasngr",0,0,5,7,287103,1502,0,31,16], - ["p1",6,"op","chess_char_6_08_b",0,"uniequip_003_reed2",1663,1,150,0,135318,7690,4364,84,3], - ["p1",7,"op","chess_char_6_09_b",1,"uniequip_003_cello",1352,1,177,2,23410,4222,166,11,1], - ["p1",8,"op","chess_char_6_11_b",0,"uniequip_003_mlyss",1873,1,162,1,63830,6930,1311,115,3], + ["p1",4,"op","chess_char_6_04_b",0,"uniequip_003_skadi2",3523.2,1,173,0,0,18848,10334,0,4], + ["p1",5,"op","chess_char_6_05_b",0,"uniequip_003_pasngr",0,0,5,7,305406,1502,0,33,17], + ["p1",6,"op","chess_char_6_08_b",0,"uniequip_003_reed2",0,0,91,0,85304,7960,4634,55,2], + ["p1",7,"op","chess_char_6_09_b",1,"uniequip_003_cello",1352,1,176,2,24741,4222,166,12,1], + ["p1",8,"op","chess_char_6_11_b",0,"uniequip_003_mlyss",1873,1,161,1,67066,7571,1952,118,2], ["p1",9,"op","chess_char_6_12_b",0,"uniequip_003_rosmon",0,0,64,1,236193,7253,1949,31,9], - ["p1",10,"op","chess_char_6_13_b",0,"none",2005,1,171,5,147703,12336,5932,62,6], + ["p1",10,"op","chess_char_6_13_b",0,"none",2005,1,171,3,102535,10222,3817,49,5], ["p1",11,"op","chess_char_6_14_b",0,"uniequip_003_lumen",0,0,68,0,0,8834,5745,7,2], - ["p1",12,"op","chess_char_6_16_b",0,"none",0,0,173,2,68279,5296,0,20,1], + ["p1",12,"op","chess_char_6_16_b",0,"none",1324,1,175,3,86651,8113,2817,28,2], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,17,0,0,0,0,0,null], ["p1",14,"token","token_10030_mlyss_wtrman",null,null,0,0,11,0,1413,4338,2730,14,1], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], @@ -2296,28 +2296,28 @@ ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,54,0,0,0,0,0,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,0,0,77,0,39,1608,0,1,1], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,106,0,0,0,0,0,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,0,0,114,0,251,3448,1643,8,1], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,0,0,163,0,3054,1497,0,4,1], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,1,175,0,0,0,0,0,null], - ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1804.5,1,176,0,0,0,0,0,1] + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,0,0,117,0,1818,2002,680,5,1], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,0,0,162,0,188,1805,0,5,1], + ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,174,0,0,0,0,0,null], + ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1804.5,1,177,0,0,0,0,0,1] ], "enemies": { "enemy_10042_prtrop": [1,1,0,698,17199], "enemy_10118_ymgprc": [1,0,1,5032,115511], - "enemy_1045_hammer_2": [18,4,14,12429,339260], - "enemy_1061_zomshd": [60,12,48,33940,682093], + "enemy_1045_hammer_2": [18,4,14,15105,341760], + "enemy_1061_zomshd": [60,12,48,33152,636194], "enemy_1071_dftman": [1,1,0,0,8026], - "enemy_1172_dugago": [1,0,1,1324,39158], + "enemy_1172_dugago": [1,0,1,2010,40965], "enemy_1210_msfden_2": [1,0,1,0,55], - "enemy_1269_nhfly": [45,33,12,24133,24943], - "enemy_1321_wdarft": [1,0,1,0,2107], - "enemy_1501_demonk": [1,0,1,12765,34202], + "enemy_1269_nhfly": [45,29,16,21835,14954], + "enemy_1321_wdarft": [1,0,1,0,0], + "enemy_1501_demonk": [1,0,1,12642,34412], "enemy_2052_smgia": [1,0,1,0,21689] }, - "hooks": [1,175,6492,504,504,2453,2631,28400,82,166,61,59,39,10872,1110,32,131,80,1,57,1,2,0], - "events": {"atk":605,"bounty":2,"deploy":41,"die":86,"dmg":2534,"engage":15,"fx":82,"heal":20,"layer":1,"leak":80,"skill":120,"spawn":156,"status":656}, - "fx": {"airstrike":11,"aoe":8,"burst":2,"copy":5,"explode":29,"garrison":1,"heal":4,"healField":2,"link":2,"revive":1,"split":1,"stone":1,"summon":15}, - "snaps": "e7f57cb9 5d2f7fdf a34e9406 8a58323a 69de9406 d21d1321 1a7dd414 1453d4cf 75734598 fe883da1 9cea1cbf d7499dcf 74a67785 3dae277f 03326b45 4d301f69 b4e3db34 2f746db2 a0ce697f 30caa953 92e4bdb1 c3ddaeb8" + "hooks": [1,175,6547,476,476,2445,2593,26429,78,167,60,57,31,10377,1183,31,131,84,1,56,1,2,0], + "events": {"atk":583,"bounty":2,"deploy":41,"die":83,"dmg":2512,"engage":15,"fx":75,"heal":20,"layer":1,"leak":84,"skill":117,"spawn":156,"status":682}, + "fx": {"airstrike":7,"aoe":8,"burst":2,"copy":5,"explode":26,"garrison":1,"heal":4,"healField":2,"link":2,"revive":1,"split":1,"stone":1,"summon":15}, + "snaps": "e7f57cb9 5d2f7fdf a34e9406 8a58323a 69de9406 d21d1321 1a7dd414 bbd1d05f d2dd7bcb 95474b8f 552bde9f cb4af1a6 e3c30efe 96f7f007 2c71f5ce 666900e2 fcd25fe6 e8e65335 bdbd1c79 5a41718e 0094ace2 d0416309" }, "roster-038": { "about": "pass 1 band 7: chess_char_5_08_b chess_char_6_19_b chess_char_5_01_b chess_char_5_05_b chess_char_5_06_b chess_char_6_17_b chess_char_5_07_b chess_char_6_18_b chess_char_6_20_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b", diff --git a/test/sim/playtest5-targeting.test.js b/test/sim/playtest5-targeting.test.js index b7660e61..34ffe90d 100644 --- a/test/sim/playtest5-targeting.test.js +++ b/test/sim/playtest5-targeting.test.js @@ -66,6 +66,36 @@ test('#1 the user\'s case: ground-only operators never hit a 近地悬浮 enemy } }); +test('#220 (the owner\'s decision of 2026-10-08): a 速射手 blocking a ground enemy shoots a flyer in its range; a 神射手 keeps hitting the enemy it blocks', () => { + const defs = { enemies: { + e_walker: enemyRec({ key: 'e_walker', hp: 1e8, atk: 0, def: 800, speed: 1 }), + e_soft: enemyRec({ key: 'e_soft', hp: 1e8, atk: 0, def: 0, speed: 0 }), + e_bat: enemyRec({ key: 'e_bat', hp: 1e8, atk: 0, def: 0, speed: 0, motion: 'FLY' }), + } }; + const shots = (chessId, other) => { + const h = makeBattle({ seed: 3, autoFinish: false, timeLimit: 120, captureNoisy: true, defs, units: [{ chessId, row: 10, col: 4 }] }); + h.step(); + const u = h.unit(chessId); + h.b.addBuff(u, { key: 'test:mute', flags: { silence: true } }); + const walker = h.spawn('e_walker', { pos: [10, 7], routeIndex: 0, route: { motion: 'WALK', start: [10, 7], end: [10, 0], checkpoints: [] } }); + assert.ok(h.runUntil(() => walker.blockedBy === u, 10), `${u.name} on a melee tile blocks the walker`); + const o = h.spawn(other, { pos: [10, 6], routeIndex: 0, route: { motion: other === 'e_bat' ? 'FLY' : 'WALK', start: [10, 6], end: [10, 6], checkpoints: [] } }); + h.step(); + assert.ok(h.b.enemiesInKeys(u.rangeKeys, u, u.profile).includes(o), `${other} in range`); + const n0 = h.hooksOf('damaged').length; + h.run(4); + const hits = (t) => h.hooksOf('damaged').slice(n0).filter((c) => c.source === u && c.target === t).length; + checkInvariants(h.b); + return { blocked: hits(walker), other: hits(o) }; + }; + const exu = shots('chess_char_3_01_a', 'e_bat'); // 能天使 (速射手: 优先攻击空中单位) + assert.ok(exu.other > 0 && exu.blocked === 0, `速射手: the flyer over her own blocked enemy (${JSON.stringify(exu)})`); + for (const other of ['e_soft', 'e_bat']) { + const far = shots('chess_char_4_20_a', other); // 远牙 (神射手: 优先攻击防御力最低) + assert.ok(far.blocked > 0 && far.other === 0, `神射手: still the enemy it blocks, not ${other} (${JSON.stringify(far)})`); + } +}); + test('#1 ground-only splash spares a hovering enemy next to its ground target (迷迭香 + aftershocks)', () => { const h = makeBattle({ units: [{ chessId: 'chess_char_6_12_a', row: 10, col: 3 }], seed: 3, autoFinish: false, timeLimit: 120, captureNoisy: true, defs: SYN }); h.step(); From 38d4c3e4b5e66eb1aa5e4fa93e1883a3acdddde0 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 20:34:51 +0800 Subject: [PATCH 12/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20=E4=BD=99=20?= =?UTF-8?q?=E3=80=90=E6=96=87=E7=81=AB=E6=85=A2=E7=82=96=E3=80=91=20adds?= =?UTF-8?q?=20no=20layers=20to=20a=20bond=20without=20layers=20(noStack:?= =?UTF-8?q?=20=E7=BB=9D=E6=8A=80,=20=E7=8B=AC=E8=A1=8C,=20=E8=B0=83?= =?UTF-8?q?=E5=92=8C,=20=E5=8D=8F=E9=98=B2=E5=B9=B2=E5=91=98)=20=E2=80=94?= =?UTF-8?q?=20with=20one=20such=20bond=20the=20only=20one=20active,=20noth?= =?UTF-8?q?ing=20is=20added=20(the=20owner's=20decision=20of=202026-10-08)?= =?UTF-8?q?;=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The owner's decision (relayed 2026-10-08) overrides PRTS 下半/PRTS盟约记录 「部分盟约不会显示叠加层数,但是叠加层数的特质/策略/ 装备等效果仍然对其生效」 for this strategy. bands/meta.js round_start_bond_check_gain_layer skips every bonds.json noStack bond; the 「仅激活了1个盟约」 count stays the sentence's (every active bond), so: 独行 / 绝技 alone → nothing; 独行 + one layered bond → the layered one +12 (count2), 独行 none. Repro: 独行 alone got 36, 绝技 alone 36, 独行 + 炎 got 12 each. Only 余: 协防 (bonds/addon/meta.js deputShip, 「使所有已激活的盟约层数+N」) and 华法琳 【重点监护】 (prep_finish_char_bond_add_layer, a random operator's bonds, 无需激活) each pick their own bonds and call addLayers; they share no helper with 余 beyond the generic Player.addLayers sink, which every layer gain uses — left unchanged, so both still add to noStack bonds as PRTS says. Docs: PLAYING.md 层数. Golden: unchanged (no corpus 余 at round 8 with such a bond). --- docs/PLAYING.md | 2 +- server/sim/content/bands/meta.js | 16 ++++++++++++---- test/content/bands.test.js | 16 ++++++++++++++++ 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/docs/PLAYING.md b/docs/PLAYING.md index c0a270f1..24e22add 100644 --- a/docs/PLAYING.md +++ b/docs/PLAYING.md @@ -111,7 +111,7 @@ - **本局禁用**:「标准模拟」与官方相同,关闭拉特兰、阿戈尔、卡西米尔、灵巧、奥术、奇迹、投资人、突袭、独行、绝技这 10 个盟约,它们不会激活。你有这些盟约的成员时(奇迹、投资人也算整备区里的成员),盟约栏末尾显示**灰色带 ✕ 的盟约图标和「本局禁用」**,干员卡、盟约标签和盟约详情也这样标注。「远见」「奇迹」「投资人」计入整备区,盟约详情的「成员」人数也一样计入整备区里的成员(临时整备区不算)。 - **调和**:激活时,场上已有成员的核心盟约人数各 +1(只加 1 人,不论有几名调和干员)。盟约详情会写「含调和 +1」,成员列表上方列出带来这 1 人的调和干员(如缪尔赛思)。 - **炎佑**:场上 6 名以上「炎」干员时召唤炎佑(9 名时两只)。它追踪全场仇恨最高的敌人并悬停在其上方,技能「祛恶之焰」锁定 1 个目标**持续喷火**(最长 20 秒,每秒对目标周围的敌人造成法术伤害并附带灼燃,喷火时不普攻,目标死亡或被沉默时结束);场上暂时没有敌人时停在原地等待。它持有官方的「孤立」:医疗干员不会治疗它,友方的增益、光环和天赋也不会选中它(敌人照常可以攻击它)。 -- **层数**:盟约通过各种效果叠加层数,层数越高效果越强(例如「炎」攻击力随层数提升、「远见」每 10 层给资金)。**层数整局保留,但只有盟约激活时才生效**,多数情况下也只有激活的盟约能叠层。每个盟约最多 **999 层**(与官方相同,取自官方客户端的常量):到 999 后再获得的层数直接作废,按层数发放的奖励(如「远见」的资金)也随之停止。作战中获得的层数在盟约栏里**实时**显示,作战结束后一直保留到结算(联防期间也不会退回去)。「调和」「协防干员」「独行」「绝技」与官方一样**不显示层数**(盟约栏、详情和结算卡片都不显示),但叠层的特质 / 策略 / 装备照样给它们加层(PRTS 盟约记录:「部分盟约不会显示叠加层数,但是叠加层数的特质/策略/装备等效果仍然对其生效」),这些层数也计入激活层数总和;它们的效果本身与层数无关。 +- **层数**:盟约通过各种效果叠加层数,层数越高效果越强(例如「炎」攻击力随层数提升、「远见」每 10 层给资金)。**层数整局保留,但只有盟约激活时才生效**,多数情况下也只有激活的盟约能叠层。每个盟约最多 **999 层**(与官方相同,取自官方客户端的常量):到 999 后再获得的层数直接作废,按层数发放的奖励(如「远见」的资金)也随之停止。作战中获得的层数在盟约栏里**实时**显示,作战结束后一直保留到结算(联防期间也不会退回去)。「调和」「协防干员」「独行」「绝技」与官方一样**不显示层数**(盟约栏、详情和结算卡片都不显示),但叠层的特质 / 策略 / 装备照样给它们加层(PRTS 盟约记录:「部分盟约不会显示叠加层数,但是叠加层数的特质/策略/装备等效果仍然对其生效」),这些层数也计入激活层数总和——只有策略「余」的【文火慢炖】不给这四个盟约加层(第 8 回合只激活了其中一个时什么也不加;维护者 2026-10-08 的决定);它们的效果本身与层数无关。 - **特质在哪里生效**:「进入休整期时」「休整期结束时」「刷新时」的特质(详情卡的第一项)只在干员部署在作战区时生效;文字里写着「此干员在整备区时也有效」的拉普兰德、调香师、波登可,以及激活【炎】/【投资人】时的琳琅诗怀雅,在整备区里也生效(临时整备区不算),与官方数据一致;「获得时」「售出时」的特质在获得、售出的那一刻生效,不论干员在哪里。「远见」「奇迹」「投资人」的「整备区的…干员也可用于激活盟约」只是把整备区的成员算进人数,不会让赫默等干员的特质在整备区生效。写着「使已激活的…」的特质要求盟约当时已经激活:例如「叙拉古」只数作战区里不同的叙拉古干员,整备区里的拉普兰德不算在这 3 名里;拉普兰德每回合只在她经历的第一次主动刷新时叠层(免费刷新也算),那次刷新时叙拉古没有激活,这一回合就不会再叠。 - **加成怎么叠**:盟约、策略、装备、机变卡和特质给的「攻击力 / 防御力 / 生命值 +X%」与技能的「攻击力 +X%」**相加**后再乘到属性上(官方:直接乘算),例如精准 +130%、独行 +60%、一件 +40% 的装备合计 +230%,而不是 ×2.3×1.6×1.4。「伤害提升至 X%」「受到的伤害 +X%」(维多利亚、谢拉格、奥术、脆弱等)这类伤害倍率之间仍然相乘;但同名效果只算一个——同一战场两名玩家都开了「奥术」时,敌人身上只挂一层奥术易伤,取两人中较高的那一个(不再相乘);两名「灵知」的坚冰、两名「莱恩哈特」/「缄默德克萨斯」的法抗削减也一样只算最强的一个。「坚守」的反伤计入被打的那名成员(个人对领袖伤害统计里能看到)。 - 每局会随机**禁用**若干盟约(标准模拟较少),它们的干员不会出现在商店;开局的「确认本局信息」会列出,选择策略时(「查看禁用盟约与干员」)和对局中(左上角 🔍)也能再查看。 diff --git a/server/sim/content/bands/meta.js b/server/sim/content/bands/meta.js index cd1fe501..c2f7aa5e 100644 --- a/server/sim/content/bands/meta.js +++ b/server/sim/content/bands/meta.js @@ -19,6 +19,7 @@ // shop: onBuy — a free pick / grant never uses it up) // band_cost_coin_reach_cnt_gain_chess_from_pool 潘格尼尼 once coin_cnt funds spent in total: 1 chess of pool (elite 拉特兰 ≥ T4) // round_start_bond_check_gain_layer 余 round start of `round`: exactly factioncount active bonds → +count1, else each active +count2 +// — never to a bond without layers (noStack; the owner's decision of 2026-10-08) // up_shop_add_special_goods {count,choice,pool} 凯瑟琳 every level-up: pick 1 of `count` items of pool (free) // coin_carry_over {capital,interest,max} 坎诺特 leftover ≥ capital at round start → +min(max, ⌊left/capital⌋×interest) income // round_start_all_player_change_enemy_2 鸭爵 global: every alive player's battle from `round` (own + teammates; @@ -244,15 +245,22 @@ K.band_cost_coin_reach_cnt_gain_chess_from_pool = (ps) => ({ }, }); +/** + * 余 【文火慢炖】 「第8回合开始时,若仅激活了1个盟约,使其增加36层;否则使所有已激活盟约增加12层」. The owner's decision of 2026-10-08 + * overrides PRTS here (下半/PRTS盟约记录: layers of a bond that shows none 「仍然对其生效」): a bond without layers — bonds.json + * `noStack`: 绝技, 独行, 调和, 协防干员 — gets none. The count stays the sentence's (every active bond), so one active bond + * that is such a bond means nothing is added, and with two active bonds a layered one still gets count2. Only this + * strategy: 协防's 「使所有已激活的盟约层数」 (bonds/addon/meta.js) and 华法琳's 【重点监护】 keep adding to every bond they name. + */ K.round_start_bond_check_gain_layer = (ps) => ({ onRoundStart(ctx) { const p = ps[0]; if (ctx.round !== int(p.round, -1)) return; const active = Object.entries(ctx.bonds()).filter(([, b]) => b && b.active).map(([id]) => id); - if (active.length === int(p.factioncount, 1)) { - for (const b of active) ctx.addLayers(b, int(p.count1, 0), { requireActive: true, reason: 'band' }); - } else { - for (const b of active) ctx.addLayers(b, int(p.count2, 0), { requireActive: true, reason: 'band' }); + const n = active.length === int(p.factioncount, 1) ? int(p.count1, 0) : int(p.count2, 0); + for (const b of active) { + if (ctx.gd.bond(b)?.noStack) continue; + ctx.addLayers(b, n, { requireActive: true, reason: 'band' }); } }, }); diff --git a/test/content/bands.test.js b/test/content/bands.test.js index 783604f8..b1e9744a 100644 --- a/test/content/bands.test.js +++ b/test/content/bands.test.js @@ -302,6 +302,22 @@ test('余 文火慢炖: R8 round start — exactly 1 active bond +36 layers, oth cover('band_yu'); }); +test('余 文火慢炖 adds no layers to a bond without layers (noStack: 独行, 绝技 …) — the owner\'s decision of 2026-10-08', () => { + assert.deepEqual(Object.values(DATA.bonds).filter((b) => b.noStack).map((b) => b.name).sort(), ['协防干员', '独行', '绝技', '调和'].sort()); + for (const [bonus, want] of [ + [{ soloShip: 1 }, {}], // the one active bond is 独行: nothing at all + [{ suntShip: 5 }, {}], // … or 绝技 + [{ soloShip: 1, yanShip: 20 }, { yanShip: 12 }], // two active (the sentence's count): the layered one +12, 独行 none + ]) { + const s = setup({ band: 'band_yu' }); + Object.assign(s.ps.bondCountBonus, bonus); s.ps.recompute(); + for (const id of Object.keys(bonus)) assert.ok(s.ps.bonds[id]?.active, `${id} active`); + s.roundStart(8); + const got = Object.fromEntries(Object.entries(s.ps.layers).filter(([, v]) => v > 0)); + assert.deepEqual(got, want, JSON.stringify(bonus)); + } +}); + test('凯瑟琳 定向投放: every shop upgrade offers 3 different shop items (any tier — community report of 2026-10-06), 1 free pick', () => { const { m, ps } = setup({ band: 'band_cathy', seed: 9 }); for (const lvl of [2, 3]) { From db29acf907b35e0d73aa31f229be2bdca4f45407 Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 21:06:45 +0800 Subject: [PATCH 13/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20#298=20rework=20?= =?UTF-8?q?=E2=80=94=20the=20one-interval=20gap=20of=20an=20instant=20skil?= =?UTF-8?q?l=20with=20no=20attack=20of=20its=20own=20sits=20on=20the=20ski?= =?UTF-8?q?ll=20(nextCastAt),=20not=20on=20the=20operator's=20attack=20coo?= =?UTF-8?q?ldown:=20its=20casts=20no=20longer=20replace=20the=20attacks=20?= =?UTF-8?q?/=20heals=20that=20were=20due;=20golden:=20back=20to=202=20move?= =?UTF-8?q?s=20against=20the=20code=20before=20#298=20(roster-033,=20roste?= =?UTF-8?q?r-034)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Review of fb7-gh-sim (MERGE AFTER FIXES, high): 4128965a wrote u.atkCd after such a cast and gated the tick casts on it, so each cast took the attack that was due — 度算浪波 with 迅捷: 15 casts, 0 attacks in 20 s (silenced: 15 attacks); 冲锋号令·γ型 and 医疗无人机 lost one attack / heal per cast; after an idle cast the next attack waited the armed cooldown. PRTS 度算浪波 is an automatic instant throw, not an attack. Now (skills.js): such a cast (instant / charges, no spec.attack, not the DEFAULT cast right before an attack) sets skill.nextCastAt = now + the unit's attack interval, and the casts checked in skill.tick wait for it; the attack cooldown is not touched (reset on deployment, like opReadyAt). Measured (20 s, 引星棘刺 S1, 迅捷 229 layers): 12 casts — the first at 4 s as SP fills (#124), then one per 1.36 s — and 14 attacks, as many as silenced; without 迅捷 3 casts and 14 attacks; an idle cast does not delay the next attack (1 tick). [ASSUMED] one attack interval stays. Tests: bonds_addon «迅捷 refills 引星棘刺 S1 at once …» now asserts the casts take no attack (attacks = the silenced run's; fails on 4128965a: 0 vs 4, and before it: 180 casts in 6 s); op_wang waits skill.nextCastAt; playtest6-skills (锏) back to its original timing. test/content + test/sim: 2835 pass. Docs: SIM.md §7, PLAYING.md 技能自动释放 (no attack is taken). Golden: against 4128965a's files roster (21) bonds (9) fields (9) matches (16) standins (6) diy (22) scenarios move back; against the same code with the gap disabled only roster-033 and roster-034 differ (引星棘刺 S1 recast within one interval) — the 84-scenario move of 4128965a came from the attack cooldown, now gone. --- docs/PLAYING.md | 2 +- docs/SIM.md | 10 +- server/sim/skills.js | 24 +- test/content/bonds_addon.test.js | 24 +- test/content/op_wang.test.js | 4 +- test/golden/bonds.json | 164 +++--- test/golden/diy.json | 737 +++++++++++++------------- test/golden/fields.json | 590 +++++++++++---------- test/golden/matches.json | 304 +++++------ test/golden/roster.json | 836 +++++++++++++++--------------- test/golden/standins.json | 319 ++++++------ test/sim/playtest6-skills.test.js | 7 +- 12 files changed, 1528 insertions(+), 1493 deletions(-) diff --git a/docs/PLAYING.md b/docs/PLAYING.md index 24e22add..c7c39983 100644 --- a/docs/PLAYING.md +++ b/docs/PLAYING.md @@ -76,7 +76,7 @@ - 作战中:海嗣、狼群、流形、支援装置开战时就在摆放的位置部署;医疗探机、诅咒娃娃开战时也在摆放的位置免费部署一次(持续 10 / 15 秒,和官方一样不需要先开技能),之后所属干员每次发动技能时再次在原位出现;所属干员被击倒、再部署回场时,技能给的那一个如果还没出现,会立刻出现。巫恋退场时诅咒娃娃随之撤退,赫默退场时已出现的医疗探机不受影响。医疗探机、诅咒娃娃、海嗣(以及自选干员的工程蓄水炮、沙地兽、打字机、本能的召唤)这类不会受到攻击、到时间就离场的召唤物不受任何伤害(活性源石也一样)、也不会被治疗,它们的血条就是倒计时:随时间减少,空了就离场。医疗探机、诅咒娃娃、支援装置、海嗣没有摆放就不会出现;狼群、流形(战术家的援军)没有摆放时会在战术点出现。狼群最后一只狼影被击倒后进入战术点形态:暂时离开战斗(不阻挡、不攻击、不会被攻击,格子仍然占着),经过狼影的恢复时间(25 秒)后在原地满血、带着 1 只狼影回来,之后重新开始每 25 秒加 1 只狼影;伺夜退场时狼群随之撤退,伺夜再部署回场时狼群重新带着 2 只狼影出现。 - **阻挡**看接触:干员阻挡中心距离约 0.7 格以内、与它接触的敌人(地面干员挡不住飞行和近地悬浮的敌人)。敌人卡在两名干员之间时,阻挡它的干员倒下、撤退或被晕眩后,另一名仍与它接触、还有空余阻挡数的干员会**立刻接替阻挡**;都没有空位时敌人才会走掉。被冻结或晕眩的敌人同样会被接触到的干员挡住:干员再部署到它身边就会阻挡它,隐匿的敌人也随之破隐(沉睡、浮空、恐惧的敌人仍然挡不住)。迎面走来的敌人会停在干员格子前面。**阻挡了就一定能打到**:任何干员(包括站在近战位的远程干员和召唤物)总能攻击自己阻挡的敌人,不管它在不在攻击范围内、在干员哪一侧,并且优先攻击它——只有速射手例外:攻击范围内有飞行敌人时先打飞行敌人(特性「优先攻击空中单位」,维护者 2026-10-08 的决定,GitHub #220)(医疗干员除外:咒愈师以外的医疗挡住敌人时照常治疗队友,不会攻击它;「停止攻击」类技能期间也除外;技能原文另有限制的也按原文:普罗旺斯二技能开启时不以生命值高于 80% 的敌人为目标,寒檀二技能的冰凌随机落在攻击范围内的地块上)。 - 开战时干员按**逐列从左到右、每列从上到下**的顺序部署(最左一列最先,与阿戈尔吞噬「更靠左和靠上」的顺序相同),召唤物在所有干员之后。被阻挡的敌人先打阻挡它的干员;没被阻挡的远程敌人先打嘲讽等级高的,同级时打最后部署的(召唤物、最右一列靠下的干员和刚再部署的干员更容易挨打)。隐匿的干员只会被它阻挡的敌人攻击,没被它挡住的敌人的溅射、爆炸、范围技能、留下的伤害区域(包括假想敌:蚀裂被击倒后喷出的毒雾)以及深池伙友卫队、扎罗的减攻速光环也落不到它身上(和官方一样;写明「无视无法选择」的效果如污染秽蚀照常能打到,寒霜的减攻速光环和“墓碑”这类地图效果照常生效);**迷彩**(如忍冬三技能期间击倒敌人后、寒芒克洛丝一技能)同样只会被它阻挡的敌人攻击,也显示为半透明,但躲不开溅射、爆炸和范围伤害(同时打范围内所有单位的普通攻击——如“斩胄之剑”“破胄之锤”“灵幛”——打不到它),也不算隐匿(不触发叙拉古等「隐匿时」效果)。叙拉古的隐匿按时(32 秒 + 每层 0.4 秒)结束;忍冬的迷彩按官方持续到她下一次开技能。**蒂比起飞**期间只挡飞行敌人,地面敌人不会选她为目标(普通攻击、溅射、技能范围、燃烧区域和要选中目标的减益都落不到她身上);飞行和悬浮敌人、写明「无视无法选择」的效果(如污染秽蚀)照常能打到她;地面敌人的光环和全场效果(如“墓碑”让全场攻击力、防御力减半)、她攻击敌人时招来的反制(如重装侦察兵的暴露)照常生效,起飞前已挂上的持续伤害也照常跳。 -- **技能自动释放**按官方「技能策略」:一般的手动技能在技能就绪、即将攻击 / 治疗且初始攻击范围内有敌人(治疗技能:有受伤的队友)时释放;**带独立技能范围**的技能(如德克萨斯「剑雨」、凛御银灰「御敌的锋锐」、锏「归于宁静」,不含「攻击范围扩大」类)在**技能范围内出现敌人**时就释放,不必先攻击;**开启后攻击范围比平时大**的手动技能(如莫斯提马「序时之匙」、银灰「真银斩」、史尔特尔「黄昏」、白面鸮「脑啡肽」)在**开启后的攻击范围内出现敌人**(治疗技能:有受伤的队友)时就释放,不必等敌人走进平时的攻击范围,这是本作按玩家反馈有意与官方不同的地方;**重装干员**的手动技能在受到伤害时释放(例外:深巡、雷蛇的二技能,号角的二、三技能,灰毫的一、二技能按玩家反馈改为攻击范围内有敌人时就释放(深巡二技能按开启后更远的攻击范围判断),余的二技能「厚礼上宾」改为周围两格(技能范围)内有敌人时就释放,这是本作有意与官方不同的地方;深巡一技能仍要受到伤害);执旗手 / 战术家 / 吟游者技能就绪即释放,解放者 / 阵法术师在初始攻击范围内有敌人时释放(开启后攻击范围扩大的技能——薄绿「风语」、蜜蜡「沙暴扩散」、卡涅利安「食噬之印」、玛恩纳「未宽解的悲哀」,以及安洁莉娜「秘杖·反重力模式」——同样按开启后的攻击范围判断)。**自动触发**的技能按其本身规则:只作用于队友的(如引星棘刺「度算浪波」、浊心斯卡蒂「同葬无光之愿」、纯烬艾雅法拉「无声润物」)技力满就释放,不用等敌人或伤员;立即生效、本身不是一次攻击的技能(如度算浪波、先锋的回费技能)每次释放占用一次攻击间隔,攻速越快放得越勤,迅捷返还的技力再多也不会每一帧都放(GitHub #298);伺夜「领袖的呼唤」「领袖的馈赠」只在场上有狼群时释放:狼群处于战术点形态时,「领袖的呼唤」也会释放并让它立刻带着 1 只狼影回到场上(狼影未满时改为加 1 只狼影,已满时把狼群的生命值回满),「领袖的馈赠」也会释放(立即获得费用,强化留给回来的狼群的下一次攻击);又如古米「备用军粮」在身边(技能范围内)有受伤的队友时就会发动,下一次攻击改为治疗该队友(不用先接敌;她的二技能「食粮烹制」是手动技能,按重装规则在受到伤害时释放);塞雷娅「急救」在她即将攻击时、身边有生命不高于一半的队友才发动,这次攻击直接改为治疗;新约能天使二技能的护盾按官方给攻击范围内**仇恨最高**的队友(嘲讽等级高的优先,同级时给最后部署的),不一定是站在最前面挨打的那个。手动技能的自动释放有 3 秒冷却:开战部署后先等 3 秒,之后同一干员两次自动释放至少间隔 3 秒(可充能的技能不会同时放完)。 +- **技能自动释放**按官方「技能策略」:一般的手动技能在技能就绪、即将攻击 / 治疗且初始攻击范围内有敌人(治疗技能:有受伤的队友)时释放;**带独立技能范围**的技能(如德克萨斯「剑雨」、凛御银灰「御敌的锋锐」、锏「归于宁静」,不含「攻击范围扩大」类)在**技能范围内出现敌人**时就释放,不必先攻击;**开启后攻击范围比平时大**的手动技能(如莫斯提马「序时之匙」、银灰「真银斩」、史尔特尔「黄昏」、白面鸮「脑啡肽」)在**开启后的攻击范围内出现敌人**(治疗技能:有受伤的队友)时就释放,不必等敌人走进平时的攻击范围,这是本作按玩家反馈有意与官方不同的地方;**重装干员**的手动技能在受到伤害时释放(例外:深巡、雷蛇的二技能,号角的二、三技能,灰毫的一、二技能按玩家反馈改为攻击范围内有敌人时就释放(深巡二技能按开启后更远的攻击范围判断),余的二技能「厚礼上宾」改为周围两格(技能范围)内有敌人时就释放,这是本作有意与官方不同的地方;深巡一技能仍要受到伤害);执旗手 / 战术家 / 吟游者技能就绪即释放,解放者 / 阵法术师在初始攻击范围内有敌人时释放(开启后攻击范围扩大的技能——薄绿「风语」、蜜蜡「沙暴扩散」、卡涅利安「食噬之印」、玛恩纳「未宽解的悲哀」,以及安洁莉娜「秘杖·反重力模式」——同样按开启后的攻击范围判断)。**自动触发**的技能按其本身规则:只作用于队友的(如引星棘刺「度算浪波」、浊心斯卡蒂「同葬无光之愿」、纯烬艾雅法拉「无声润物」)技力满就释放,不用等敌人或伤员;立即生效、本身不是一次攻击的技能(如度算浪波、先锋的回费技能)两次释放之间至少隔一个攻击间隔(释放本身不占用普通攻击),攻速越快放得越勤,迅捷返还的技力再多也不会每一帧都放(GitHub #298);伺夜「领袖的呼唤」「领袖的馈赠」只在场上有狼群时释放:狼群处于战术点形态时,「领袖的呼唤」也会释放并让它立刻带着 1 只狼影回到场上(狼影未满时改为加 1 只狼影,已满时把狼群的生命值回满),「领袖的馈赠」也会释放(立即获得费用,强化留给回来的狼群的下一次攻击);又如古米「备用军粮」在身边(技能范围内)有受伤的队友时就会发动,下一次攻击改为治疗该队友(不用先接敌;她的二技能「食粮烹制」是手动技能,按重装规则在受到伤害时释放);塞雷娅「急救」在她即将攻击时、身边有生命不高于一半的队友才发动,这次攻击直接改为治疗;新约能天使二技能的护盾按官方给攻击范围内**仇恨最高**的队友(嘲讽等级高的优先,同级时给最后部署的),不一定是站在最前面挨打的那个。手动技能的自动释放有 3 秒冷却:开战部署后先等 3 秒,之后同一干员两次自动释放至少间隔 3 秒(可充能的技能不会同时放完)。 - **推开 / 拉拽**按官方「力度 − 重量」决定距离:例如野鬃二技能(中等力度)把重量 0 / 1 / 2 / 3 的敌人推开约 2.1 / 1.7 / 0.4 / 0.1 格,重量 4 以上推不动——轻型敌人反而推得更远。野鬃二技能沿她的朝向推开:正前方 45° 以内按上面的距离,身后、侧面或贴身的敌人只被轻推一下(约 0.4 格以内);琳琅诗怀雅三技能的金币则从她身边向外推开,落在她前方 2–4 格的范围(官方「范围2-4」)内的地面敌人和她阻挡的敌人身上。攻击速度最低为 20(沼泽、寒霜等减速叠满时也不会更慢)。 - **生命回复不是治疗**(与官方一致):吟游者的特性(魔王、浊心斯卡蒂及其海嗣)、调香师的天赋、瑕光二技能、铃兰三技能、锡人炼金单元给友军的「每秒恢复生命」是提高对方的**生命回复速度**,不是治疗:收割者 / 不屈者 / 武者(如隐德来希、圣约送葬人、折桠)这类「无法被友方治疗」的干员和处于禁疗的干员也能吃到,治疗量加成(如「受到的治疗效果提升」)也不会放大它;铃兰三技能开启后的第一秒没有回复。直接治疗(医疗干员的治疗、技能的「恢复…生命」)仍然对这些干员无效。 - **元素损伤条**在单位自己的血条正下方:左边是元素图标,白条是剩余的元素值,只有真正爆发时才会耗尽;爆发后条变成元素的颜色、图标闪烁,在冷却期间慢慢回满(这段时间不会再积累元素损伤)。 diff --git a/docs/SIM.md b/docs/SIM.md index da2b5ade..84519eb7 100644 --- a/docs/SIM.md +++ b/docs/SIM.md @@ -924,11 +924,11 @@ instance) and skip `'counter'` / `'reflect'` damage. When the guard trips, the l AUTO skills are exempt; kits with their own automatic cast of a MANUAL skill check `skill.opCooling` (波登可 S1, 雪猎 special bullets, 流形 copy). While a cast "next attack" (instant / charges with an attack override) waits for its attack, no further charge is cast. An instant / charges skill with no attack override of its own (a throw, a heal, a - buff, a DP gain …) takes one attack cycle: its cast sets the unit's attack cooldown to at least its attack interval, and - the casts checked every tick (the rules above, the DEFAULT of units that never attack, content trigger ranges) wait while - that cooldown runs — attack speed paces them, and an SP refund that refills the bar at once (迅捷) no longer recasts one - every tick (GitHub #298, 引星棘刺 S1; [ASSUMED] one attack interval: PRTS prints no 前后摇 for such casts); a cast right - before an attack (DEFAULT) is followed by that attack as before. `gainSp` is ignored while a duration/ammo/toggle skill + buff, a DP gain …) is cast from the tick (the rules above, the DEFAULT of units that never attack, content trigger + ranges) at most once per attack interval of its unit — `skill.nextCastAt`, set by such a cast, reset on deployment —: + attack speed paces it, and an SP refund that refills the bar at once (迅捷) no longer recasts it every tick (GitHub #298, + 引星棘刺 S1; [ASSUMED] one attack interval: PRTS prints no 前后摇 for such casts). The cast is no attack: the unit's + attacks and heals keep their own rhythm, and its first cast comes as soon as it is ready (#124). `gainSp` is ignored while a duration/ammo/toggle skill runs (its bar shows the skill), whatever the reason, and — any reason but `'init'` — while the unit has the `noSp` flag (阻回: "停止并阻止任意形式的技力回复"; the operators' 凋亡 burst, §3). - Kinds: `duration` (mods for `duration` s), `ammo` (mods until `ammo` attacks were made, optional duration cap), diff --git a/server/sim/skills.js b/server/sim/skills.js index 50d83240..b4d7e4db 100644 --- a/server/sim/skills.js +++ b/server/sim/skills.js @@ -103,6 +103,7 @@ export class SkillRuntime { // the official skill strategies automate the manual 开启: only MANUAL skills wait for the operation cooldown this.manual = String(d.skillType ?? 'MANUAL').toUpperCase() === 'MANUAL'; this.opReadyAt = -Infinity; // no automatic cast before this battle time (AUTO_OP_COOLDOWN) + this.nextCastAt = -Infinity; // instant / charges with no attack of its own: no cast from the tick before (GitHub #298) if (this.kind === 'passive') this.baseSpCost = 0; this._spCostMul = 1; // content may set spCostMul (e.g. 绝技 ×0.7) — see the accessor below this.sp = 0; @@ -231,6 +232,7 @@ export class SkillRuntime { this._trigKeys = null; this._trigSet = null; this.opReadyAt = -Infinity; // (Battle._deploy starts the operation cooldown of the battle-start deployment) + this.nextCastAt = -Infinity; if (this.noSkill) return; if (this.kind === 'passive') { this._startPassive(); @@ -351,10 +353,9 @@ export class SkillRuntime { if (this.active && this.isTimed) return; // a cast "next attack" still waits for its attack: another charge now would be spent on the same attack if (this.pending || this._opCooling()) return; - // an instant / charge cast with no attack of its own takes the unit's attack cycle (activate: atkCd ≥ interval after - // it — GitHub #298), so the casts checked here wait while that cycle runs. skill.tick runs before updateAlly: a - // remainder ≤ dt ends this tick and the cast claims it (else the attack about to be made would take the cycle first) - if (!this.isTimed && !this.spec.attack && u.atkCd > dt + 1e-9) return; + // an instant / charge skill with no attack of its own is cast at most once per attack interval of its unit + // (activate sets nextCastAt; GitHub #298): the casts checked here wait for it — the unit's attacks are not touched + if (!this.isTimed && !this.spec.attack && this.battle.time < this.nextCastAt - 1e-9) return; if (TICK_RULES.has(this.rule)) { if (this._tickRuleSatisfied()) this.activate(this.rule); } else if (this.rule !== 'TAKE_DAMAGE' && this.rule !== 'NEVER') { @@ -455,7 +456,7 @@ export class SkillRuntime { if (this.pending || this._opCooling()) return false; if (!this._defaultCondition()) return false; if (this.triggerAllies && !this._allyTriggerSatisfied()) return false; - this._beforeAttack = true; // the attack follows this cast in the same check (ai.js updateAlly): it owns the cycle + this._beforeAttack = true; // the attack follows this cast in the same check (ai.js updateAlly): attacks pace it try { return this.activate('DEFAULT'); } finally { this._beforeAttack = false; } } @@ -506,12 +507,13 @@ export class SkillRuntime { if (this.active && this.ammoLeft > this.ammoMax) this.ammoMax = this.ammoLeft; if (!this.isTimed && !this.pending) { this.end('instant'); - // an instant / charge skill with no attack of its own (no spec.attack: a throw, a heal, a buff …) takes one attack - // cycle — its cast in place of an attack, so attack speed paces it (GitHub #298: 引星棘刺 S1 度算浪波, an SP_FULL - // cast, was recast every tick once 迅捷's refund refilled its bar at once, whatever the attack speed). [ASSUMED] - // one attack interval: PRTS prints no 前后摇 for such casts. A cast made right before an attack (DEFAULT) is - // followed by that attack as before; a cast onEnd opened again owns the cycle. - if (!this.active && !this.spec.attack && !this._beforeAttack && u.alive && u.s.interval > 0) u.atkCd = Math.max(u.atkCd, u.s.interval); + // an instant / charge skill with no attack of its own (no spec.attack: a throw, a heal, a buff, DP …) waits one + // attack interval of its unit before it is cast again from the tick (GitHub #298: 引星棘刺 S1 度算浪波, an SP_FULL + // cast, was recast every tick once 迅捷's refund refilled its bar at once, whatever the attack speed) — on the skill + // only: the cast is no attack, the unit's attacks / heals keep their own rhythm. [ASSUMED] one attack interval: PRTS + // prints no 前后摇 for such casts. A cast made right before an attack (DEFAULT) is paced by those attacks already; + // a cast onEnd opened again owns its own gap. + if (!this.active && !this.spec.attack && !this._beforeAttack && u.alive && u.s.interval > 0) this.nextCastAt = b.time + u.s.interval; } return true; } diff --git a/test/content/bonds_addon.test.js b/test/content/bonds_addon.test.js index d7c90a33..0c87901f 100644 --- a/test/content/bonds_addon.test.js +++ b/test/content/bonds_addon.test.js @@ -71,9 +71,9 @@ test('迅捷: member skill end +12 SP (p=1 at high L), ≥40 layers every operat assert.equal(off.s_x, 0); }); -test('迅捷 refills 引星棘刺 S1 at once: the instant cast still takes one attack cycle each, so attack speed paces it (GitHub #298)', () => { +test('迅捷 refills 引星棘刺 S1 at once: it is cast at most once per attack interval, and her attacks go on untouched (GitHub #298)', () => { // S1 度算浪波: AUTO, no duration, no attack of its own, SP_FULL, cost 6; 迅捷 refunds 12 + 15 SP at ≥ 40 layers - const casts = (aspd = 0, enemy = true) => { + const run = ({ aspd = 0, enemy = true, silence = false } = {}) => { const h = makeBattle({ seed: 1, bonds: { swiftShip: bond(2, 229, 3) }, autoFinish: false, timeLimit: 30, units: [{ chessId: 'chess_char_5_15_b', skillIndex: 0, row: 10, col: 4 }], @@ -83,21 +83,23 @@ test('迅捷 refills 引星棘刺 S1 at once: the instant cast still takes one a h.step(); const u = h.unit('chess_char_5_15_b'); if (aspd) h.b.addBuff(u, { key: 'test:aspd', mods: { aspd } }); + if (silence) h.b.addBuff(u, { key: 'test:mute', flags: { silence: true } }); if (enemy) assert.ok(h.b.enemiesInKeys(u.rangeKeys, u, u.profile).length, 'an enemy stays in range'); - u.atkCd = 0; u.skill.gainSp(u.skill.spCost, 'test'); const n0 = u.skill.activations, a0 = u.stats.attacks; - h.run(2); + h.run(6); checkInvariants(h.b); return { n: u.skill.activations - n0, attacks: u.stats.attacks - a0, interval: u.s.interval }; }; - const base = casts(); - assert.ok(base.n >= 2 && base.n <= 3, `one cast per attack interval (${base.interval.toFixed(2)} s): ${base.n} in 2 s, not every tick`); - assert.equal(base.attacks, 0, 'each cast takes the attack cycle'); - const fast = casts(500); - assert.ok(fast.n >= 8 && fast.n <= 9, `ASPD +500 (interval ${fast.interval.toFixed(2)} s): ${fast.n} casts`); - const alone = casts(0, false); - assert.ok(alone.n >= 2 && alone.n <= 3, `no enemy: still fires at full SP (#124), one per cycle — ${alone.n}`); + const base = run(), muted = run({ silence: true }); + // the first at once, then one per interval (1.36 s): 5 in 6 s — every tick before (180) + assert.ok(base.n >= 4 && base.n <= 5, `one cast per attack interval (${base.interval.toFixed(2)} s): ${base.n} in 6 s`); + assert.ok(base.attacks > 0 && base.attacks === muted.attacks, `the casts take no attack (${base.attacks} vs ${muted.attacks} silenced)`); + const fast = run({ aspd: 500 }), fastMuted = run({ aspd: 500, silence: true }); + assert.ok(fast.n >= 23 && fast.n <= 25, `ASPD +500 (interval ${fast.interval.toFixed(2)} s): ${fast.n} casts`); + assert.equal(fast.attacks, fastMuted.attacks, 'still no attack taken'); + const alone = run({ enemy: false }); + assert.ok(alone.n >= 4 && alone.n <= 5 && alone.attacks === 0, `no enemy: still fires at full SP (#124), one per interval — ${alone.n}`); }); test('迅捷 / 突袭: SP gifts after end do not recharge a zero-SP deployment skill or trigger a ready raid', () => { diff --git a/test/content/op_wang.test.js b/test/content/op_wang.test.js index 26e96ea3..6888fe74 100644 --- a/test/content/op_wang.test.js +++ b/test/content/op_wang.test.js @@ -269,8 +269,8 @@ test('her stock (the owner\'s decision of 2026-10-06): the placed 棋子 occupy assert.deepEqual([u.skill.activations, w.stock], [1, 7], `${S}: 立即获得两枚棋子`); h.step(); assert.ok(!u.s.flags.noSp, `${S}: below the cap, no 阻回`); - assert.ok(u.atkCd > 0, `${S}: the cast took her attack cycle (GitHub #298)`); - h.run(u.atkCd); // the next cast waits it out + assert.ok(u.skill.nextCastAt > h.b.time, `${S}: the next cast waits one attack interval (GitHub #298)`); + h.run(u.skill.nextCastAt - h.b.time); // wait it out u.skill.gainSp(999); h.step(); assert.deepEqual([u.skill.activations, w.stock], [2, 8], `${S}: 最多拥有8枚`); diff --git a/test/golden/bonds.json b/test/golden/bonds.json index 9a6351ff..92fb0ba8 100644 --- a/test/golden/bonds.json +++ b/test/golden/bonds.json @@ -93,33 +93,33 @@ "round": 5, "seed": 4108057433, "waveId": "act1autochess_05", - "time": 61.7, - "ticks": 1851, + "time": 61.37, + "ticks": 1841, "reason": "cleared", - "killed": 19, + "killed": 18, "total": 21, "unspawned": 0, "bossHpLeft": null, "rngDraws": 29, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":19,"total":21,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":0,"dmg":67869,"bossDmg":0,"heal":0,"deaths":1,"layerGains":{}}}, + "players": {"p1":{"killed":18,"total":21,"perfect":false,"leaks":3,"leaksUncounted":0,"coins":0,"dmg":70850,"bossDmg":0,"heal":0,"deaths":1,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,4,12371,2334,0,28,1], + ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,5,12243,2334,0,30,1], ["p1",2,"op","chess_char_1_06_a",1,null,1137,1,4,3,2907,0,0,13,1], ["p1",3,"op","chess_char_1_13_a",1,null,913,1,6,3,3059,0,0,12,1], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,8,0,5974,0,0,9,1], ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,9,1,13794,0,0,27,1], ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,10,0,7040,0,0,8,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,5,7,17755,0,0,20,3], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,5,5,20865,0,0,23,3], ["p1",8,"op","chess_char_3_13_a",1,null,1064,1,7,1,4968,0,0,29,6], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[5,5,0,299,27000],"enemy_1251_lysyta":[15,14,1,36,35947],"enemy_1328_cbjedi":[1,0,1,1999,5430]}, - "hooks": [1,31,1851,170,170,216,211,0,20,22,15,15,0,9963,12,9,21,2,1,20,0,0,0], - "events": {"atk":187,"deploy":8,"die":20,"dmg":211,"engage":8,"fx":36,"leak":2,"skill":30,"spawn":31,"status":20}, + "enemies": {"enemy_1249_lysdb_2":[5,4,1,358,26835],"enemy_1251_lysyta":[15,13,2,36,35523],"enemy_1328_cbjedi":[1,1,0,1940,9000]}, + "hooks": [1,31,1841,178,178,223,218,0,19,22,15,15,0,9915,13,9,21,3,1,19,0,0,0], + "events": {"atk":195,"deploy":8,"die":19,"dmg":218,"engage":8,"fx":36,"leak":3,"skill":30,"spawn":31,"status":21}, "fx": {"aoe":1,"displace":11,"pull":11,"shieldBreak":5,"strike":3,"taunt":1,"volley":3,"zone":1}, - "snaps": "c6b020b2 1c788562 16d41c60 48683985 95826952 716a3765 19a1c415" + "snaps": "c6b020b2 1c788562 16d41c60 842c0335 f0c64705 3571b4d8 5874690e" }, "bond-deputShip-high": { "about": "助力 high: tier 2 layers 999; chess_char_4_11_b chess_char_1_06_b chess_char_1_13_b chess_char_2_14_b chess_char_1_06_a chess_char_1_13_a chess_char_4_10_b chess_char_4_12_b token_10041_cathy_catsld token_10041_cathy_catsld", @@ -329,38 +329,38 @@ "round": 5, "seed": 1441167629, "waveId": "act1autochess_05", - "time": 66.1, - "ticks": 1983, + "time": 60.37, + "ticks": 1811, "reason": "cleared", "killed": 18, "total": 18, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 8, + "rngDraws": 7, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":18,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":86976,"bossDmg":0,"heal":1498,"deaths":2,"layerGains":{"indomShip":2}} + "p1": {"killed":18,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":86976,"bossDmg":0,"heal":1315,"deaths":2,"layerGains":{"indomShip":2}} }, "units": [ - ["p1",1,"op","chess_char_1_20_a",1,null,1939.6,1,5,0,506,258,0,30,0], - ["p1",2,"op","chess_char_4_11_a",1,null,205.2,1,6,0,0,2714,0,0,1], - ["p1",3,"op","chess_char_2_12_a",1,null,0,0,8,1,1011,1267,0,29,1], + ["p1",1,"op","chess_char_1_20_a",1,null,2198,1,5,0,421,0,0,25,0], + ["p1",2,"op","chess_char_4_11_a",1,null,673.38,1,6,0,0,2328,0,0,1], + ["p1",3,"op","chess_char_2_12_a",1,null,0,0,8,0,879,1267,0,29,1], ["p1",4,"op","chess_char_4_09_a",1,null,1978.85,1,9,6,41517,159,0,13,1], ["p1",5,"op","chess_char_4_10_a",1,null,1288,1,7,5,23480,0,0,17,1], - ["p1",6,"op","chess_char_4_12_a",2,null,1754,1,10,0,0,1498,1498,0,0], + ["p1",6,"op","chess_char_4_12_a",2,null,1570.34,1,10,0,0,1498,1315,0,0], ["p1",7,"op","chess_char_4_13_a",1,null,0,0,11,1,7622,1587,0,14,2], - ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,4,5,12839,0,0,10,4], + ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,4,6,13056,0,0,10,4], ["p1",9,"token","token_10041_cathy_catsld",null,null,100,1,12,0,0,0,0,0,null], ["p1",10,"token","token_10041_cathy_catsld",null,null,100,1,13,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1158_divman":[15,15,0,1982,57024],"enemy_1160_hvyslr":[2,2,0,4011,23040],"enemy_1161_tidmag":[1,1,0,1491,6912]}, - "hooks": [1,31,1983,182,182,294,299,1026,20,20,10,10,0,5951,105,8,18,0,1,20,1,0,3], - "events": {"atk":227,"deploy":10,"die":20,"dmg":299,"engage":6,"fx":23,"layer":1,"skill":20,"spawn":31,"status":82}, + "enemies": {"enemy_1158_divman":[15,15,0,1970,57024],"enemy_1160_hvyslr":[2,2,0,3378,23040],"enemy_1161_tidmag":[1,1,0,1491,6912]}, + "hooks": [1,31,1811,174,174,287,292,900,20,20,10,9,0,5536,104,6,18,0,1,20,1,0,3], + "events": {"atk":219,"deploy":10,"die":20,"dmg":292,"engage":6,"fx":23,"layer":1,"skill":19,"spawn":31,"status":81}, "fx": {"dilemma":1,"dodge":3,"explosion":4,"frostNova":2,"garrison":1,"levitate":7,"overclock":1,"shield":1,"slippery":1,"splash":2}, - "snaps": "15bffd6e 1f9e2a5c 1d558857 c10b9d63 18a8a23f b0528480 309db994" + "snaps": "15bffd6e 1f9e2a5c 1d558857 c10b9d63 0115b968 e655e297" }, "bond-indomShip-high": { "about": "不屈 high: tier 2 layers 999; chess_char_1_20_b chess_char_3_16_b chess_char_4_23_b chess_char_5_01_b chess_char_2_12_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -1024,10 +1024,10 @@ "units": [ ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",3513,1,4,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,5,0,0,0,0,0,0], - ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",23974.92,1,45,4,126350,1409,60,18,2], + ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",23974.92,1,45,4,125645,1409,60,18,2], ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",2118,1,10,0,0,0,0,0,0], ["p1",5,"op","chess_char_1_18_b",1,"uniequip_002_utage",19368.26,1,30,20,363852,15487,3850,55,8], - ["p1",6,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,6120,0,0,3,3], + ["p1",6,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,6824,0,0,4,3], ["p1",7,"op","chess_char_4_20_b",2,"uniequip_002_fartth",1419,1,7,0,12539,0,0,13,0], ["p1",8,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1584,1,9,0,0,0,0,0,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1035,10 +1035,10 @@ ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1010_demon":[7,7,0,737,130637],"enemy_1422_lrsldr_2":[14,14,0,0,191601],"enemy_1425_lrcmra_2":[3,3,0,2743,186624]}, - "hooks": [1,45,1847,94,94,97,105,73,24,34,13,12,0,2318,0,16,24,0,1,24,1,0,0], - "events": {"atk":96,"deploy":18,"die":34,"dmg":104,"engage":4,"fx":23,"heal":56,"layer":1,"skill":27,"spawn":35,"status":9}, + "hooks": [1,45,1847,95,95,98,106,73,24,34,13,12,0,2318,0,16,24,0,1,24,1,0,0], + "events": {"atk":97,"deploy":18,"die":34,"dmg":105,"engage":4,"fx":23,"heal":56,"layer":1,"skill":27,"spawn":35,"status":9}, "fx": {"aoe":8,"blink":10,"explosion":3,"garrison":1,"garrisonGrant":1}, - "snaps": "0a05b1f6 39ecd6ec 50f683c0 211b8f82 3c8b82c6 47e876cb 381f2f0f" + "snaps": "0a05b1f6 39ecd6ec 50f683c0 211b8f82 df2ca856 517841e8 c8ca2f28" }, "bond-sargonShip-low": { "about": "萨尔贡 low: tier 1 layers 1; chess_char_2_08_a chess_char_1_12_a chess_char_4_22_a chess_char_2_06_a chess_char_4_21_a chess_char_4_25_a chess_char_4_26_a chess_char_3_01_a", @@ -1208,23 +1208,23 @@ "errors": {"count":0,"kinds":[]}, "players": {"p1":{"killed":19,"total":19,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":71550,"bossDmg":0,"heal":0,"deaths":0,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,1999.05,1,5,2,9448,335,0,22,1], + ["p1",1,"op","chess_char_3_12_a",2,null,1999.05,1,5,2,9348,335,0,22,1], ["p1",2,"op","chess_char_1_14_a",1,null,1145,1,7,2,2332,0,0,8,0], ["p1",3,"op","chess_char_2_04_a",1,null,977,1,9,3,8416,0,0,28,1], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,11,2,10205,0,0,11,1], ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,4,1,6596,0,0,18,1], - ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,6,4,7646,0,0,12,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,8,4,16654,0,0,15,2], - ["p1",8,"op","chess_char_3_14_a",1,null,1251,1,10,1,10253,0,0,27,1], + ["p1",6,"op","chess_char_3_10_a",1,null,1650,1,6,3,7225,0,0,12,1], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,8,5,17162,0,0,16,2], + ["p1",8,"op","chess_char_3_14_a",1,null,1251,1,10,1,10266,0,0,27,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1010_demon":[3,3,0,162,20250],"enemy_1010_demon_2":[1,1,0,173,13500],"enemy_1071_dftman":[15,15,0,0,37800]}, - "hooks": [1,30,1565,154,154,225,225,0,19,19,8,7,0,7825,42,3,19,0,1,19,0,0,0], - "events": {"atk":208,"deploy":8,"die":19,"dmg":225,"engage":8,"fx":45,"skill":15,"spawn":30,"status":70}, + "hooks": [1,30,1565,155,155,225,225,0,19,19,8,7,0,7825,42,3,19,0,1,19,0,0,0], + "events": {"atk":209,"deploy":8,"die":19,"dmg":225,"engage":8,"fx":45,"skill":15,"spawn":30,"status":70}, "fx": {"aoe":1,"displace":19,"pull":19,"sleep":2,"strike":2,"volley":2}, - "snaps": "3fec6d69 cbf41b37 34a06f5a babe5e21 c0253a23 507f4cc7" + "snaps": "3fec6d69 cbf41b37 34a06f5a 37ca1c5e 4f72797a ab4a5590" }, "bond-skillfulShip-high": { "about": "灵巧 high: tier 1 layers 999; chess_char_5_08_b chess_char_5_05_b chess_char_5_07_b chess_char_1_14_b chess_char_2_04_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b", @@ -1310,41 +1310,41 @@ "round": 10, "seed": 3252010875, "waveId": "act1autochess_h03", - "time": 92.8, - "ticks": 2784, + "time": 91, + "ticks": 2730, "reason": "cleared", "killed": 66, "total": 66, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 40, + "rngDraws": 48, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":66,"total":66,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":155889,"bossDmg":0,"heal":2193,"deaths":3,"layerGains":{}}}, + "players": {"p1":{"killed":66,"total":66,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":155889,"bossDmg":0,"heal":2860,"deaths":3,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,6,11,34713,0,0,36,2], - ["p1",2,"op","chess_char_1_08_b",1,"uniequip_002_texas",0,0,7,2,3899,2986,62,23,3], - ["p1",3,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,8,9,18163,5826,397,30,1], - ["p1",4,"op","chess_char_5_14_b",1,"none",2174,1,78,6,17871,2199,25,14,4], - ["p1",5,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,77,11,20567,3693,955,25,1], - ["p1",6,"op","chess_char_5_12_b",0,"uniequip_002_dusk",1787,1,4,3,14202,0,0,15,11], - ["p1",7,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,5,17,15910,0,754,19,4], - ["p1",8,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,9,7,30563,0,0,28,3], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,6,15,28905,0,0,35,2], + ["p1",2,"op","chess_char_1_08_b",1,"uniequip_002_texas",0,0,7,4,6105,3310,62,24,3], + ["p1",3,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,8,8,12927,6562,398,28,1], + ["p1",4,"op","chess_char_5_14_b",1,"none",2174,1,79,4,19333,2174,0,19,6], + ["p1",5,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,77,14,21786,3845,1107,29,1], + ["p1",6,"op","chess_char_5_12_b",0,"uniequip_002_dusk",1787,1,4,1,17523,0,0,15,12], + ["p1",7,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,5,12,21375,0,1293,22,5], + ["p1",8,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,9,8,27935,0,0,27,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [14,14,0,1202,69673], + "enemy_1195_sfyin": [14,14,0,1393,69673], "enemy_1196_msfyin": [28,28,0,0,140], - "enemy_1197_sfshu": [5,5,0,212,31104], + "enemy_1197_sfshu": [5,5,0,0,31104], "enemy_1198_msfshu": [15,15,0,0,105], - "enemy_1207_sfji": [2,2,0,13290,54743], + "enemy_1207_sfji": [2,2,0,14498,54743], "enemy_1208_msfji": [2,2,0,0,124] }, - "hooks": [1,79,2784,206,206,533,533,487,69,69,29,27,0,8926,102,15,66,0,1,77,0,0,0], - "events": {"atk":315,"deploy":10,"die":69,"dmg":533,"engage":8,"fx":112,"heal":7,"skill":56,"spawn":77,"status":227}, - "fx": {"aoe":10,"crit":8,"dp":3,"sp":2,"substitute":2,"summon":21,"swap":1,"weightless":3,"zone":62}, - "snaps": "b0c0c83e f39a6668 83cf591b 9229d361 f090095a 8d0be3e8 20e0f1da b8ed0bb5 6f554cce 35164258" + "hooks": [1,79,2730,216,216,542,541,519,69,69,33,31,0,9330,93,15,66,0,1,79,0,0,1], + "events": {"atk":313,"deploy":10,"die":69,"dmg":541,"engage":8,"fx":142,"heal":12,"skill":64,"spawn":77,"status":201}, + "fx": {"aoe":11,"crit":6,"dodge":1,"dp":3,"sp":3,"substitute":2,"summon":21,"swap":1,"weightless":3,"zone":91}, + "snaps": "0d5fce4b 008db012 69aeb33a 4ce7c8d2 b1642f13 224f1fa4 94c69830 28a9268a 8c7e5ae4 7bef3667" }, "bond-steadShip-low": { "about": "坚守 low: tier 1 layers 1; chess_char_1_02_a chess_char_1_10_a chess_char_4_11_a chess_char_4_04_a chess_char_4_07_a chess_char_4_09_a chess_char_4_06_a chess_char_4_10_a token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1432,34 +1432,34 @@ "round": 5, "seed": 3833599911, "waveId": "act1autochess_05", - "time": 58.27, - "ticks": 1748, + "time": 54.67, + "ticks": 1640, "reason": "cleared", "killed": 21, "total": 21, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 17, + "rngDraws": 16, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":93600,"bossDmg":0,"heal":163,"deaths":0,"layerGains":{}}}, + "players": {"p1":{"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":93600,"bossDmg":0,"heal":156,"deaths":0,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_1_02_b",1,"uniequip_002_yak",3404,1,4,0,0,0,0,0,0], - ["p1",2,"op","chess_char_4_17_a",1,null,2713.96,1,5,4,8798,135,0,21,0], - ["p1",3,"op","chess_char_4_18_a",1,null,4587.2,1,8,3,12605,0,0,14,1], - ["p1",4,"op","chess_char_4_16_a",2,null,174.44,1,10,3,17729,1235,163,34,2], - ["p1",5,"op","chess_char_1_01_b",1,"uniequip_002_inside",1421,1,6,6,26630,0,0,41,2], + ["p1",2,"op","chess_char_4_17_a",1,null,2728.97,1,5,4,7529,120,0,18,0], + ["p1",3,"op","chess_char_4_18_a",1,null,4587.2,1,8,3,13081,15,15,12,2], + ["p1",4,"op","chess_char_4_16_a",2,null,375.92,1,10,4,15651,1011,141,33,2], + ["p1",5,"op","chess_char_1_01_b",1,"uniequip_002_inside",1421,1,6,9,26143,0,0,40,2], ["p1",6,"op","chess_char_4_12_a",2,null,1754,1,7,0,0,0,0,0,0], - ["p1",7,"op","chess_char_4_13_a",1,null,1587,1,9,2,11761,0,0,27,5], - ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,11,3,16077,0,0,12,3], + ["p1",7,"op","chess_char_4_13_a",1,null,1587,1,9,0,11748,0,0,27,5], + ["p1",8,"op","chess_char_4_14_a",1,null,1276,1,11,1,19448,0,0,14,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[5,5,0,1148,34560],"enemy_1251_lysyta":[15,15,0,222,47520],"enemy_1328_cbjedi":[1,1,0,0,11520]}, - "hooks": [1,32,1748,175,175,230,221,6,22,21,13,12,19,6105,537,14,21,0,1,22,0,0,0], - "events": {"atk":175,"deploy":8,"die":21,"dmg":217,"engage":6,"fx":43,"heal":1,"skill":27,"spawn":32,"status":97}, - "fx": {"block":4,"explosion":3,"frostNova":5,"rockslide":1,"shieldBreak":9,"swordRain":10,"swordStorm":2,"thorns":9}, - "snaps": "f3784c2e 6bb2c54c a04c63a9 735e9546 1bd4e255 b911c2f8" + "enemies": {"enemy_1249_lysdb_2":[5,5,0,947,34560],"enemy_1251_lysyta":[15,15,0,199,47520],"enemy_1328_cbjedi":[1,1,0,0,11520]}, + "hooks": [1,32,1640,168,168,220,211,7,22,21,14,13,18,5957,498,13,21,0,1,22,0,0,0], + "events": {"atk":168,"deploy":8,"die":21,"dmg":207,"engage":6,"fx":42,"heal":2,"skill":29,"spawn":32,"status":92}, + "fx": {"block":4,"explosion":3,"frostNova":5,"rockslide":2,"shieldBreak":9,"swordRain":9,"swordStorm":2,"thorns":8}, + "snaps": "f3784c2e f22c4f68 76488d82 17b365d3 22e29248 f3ab9bd0" }, "bond-suntShip-high": { "about": "绝技 high: tier 2 layers 999; chess_char_1_02_b chess_char_1_04_b chess_char_4_19_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_4_20_a chess_char_4_21_a", @@ -1644,12 +1644,12 @@ "units": [ ["p1",1,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,5,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2383,1,7,0,0,0,0,0,0], - ["p1",3,"op","chess_char_1_06_b",1,"uniequip_002_vendla",1402,1,8,5,34965,0,1739,8,1], + ["p1",3,"op","chess_char_1_06_b",1,"uniequip_002_vendla",1402,1,8,5,32912,0,1739,8,1], ["p1",4,"op","chess_char_2_05_b",1,"uniequip_002_harold",16282.11,1,10,0,0,5478,5097,10,1], - ["p1",5,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,11,7,91358,1358,0,42,1], + ["p1",5,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,11,7,90884,1358,0,42,1], ["p1",6,"op","chess_char_3_08_b",1,"uniequip_002_mint",1986,1,4,0,0,0,0,0,0], ["p1",7,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,6,0,0,0,0,0,0], - ["p1",8,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,9,0,14764,0,0,6,6], + ["p1",8,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,9,0,17292,0,0,7,6], ["p1",9,"token","token_10041_cathy_catsld",null,null,100,1,12,0,0,0,0,0,null], ["p1",10,"token","token_10041_cathy_catsld",null,null,100,1,13,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1657,10 +1657,10 @@ ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": {"enemy_1005_yokai_2":[4,4,0,1618,15428],"enemy_1041_lazerd_2":[3,3,0,5218,44790],"enemy_1042_frostd":[5,5,0,0,80870]}, - "hooks": [1,25,1933,79,79,75,75,12,12,12,9,9,0,4899,274,0,12,0,1,12,0,0,0], - "events": {"atk":79,"deploy":10,"die":12,"dmg":75,"engage":3,"fx":10,"heal":12,"skill":18,"spawn":25,"status":18}, + "hooks": [1,25,1933,80,80,77,77,12,12,12,9,9,0,4899,274,0,12,0,1,12,0,0,0], + "events": {"atk":80,"deploy":10,"die":12,"dmg":77,"engage":3,"fx":10,"heal":12,"skill":18,"spawn":25,"status":18}, "fx": {"counter":2,"explosion":6,"overload":1,"taunt":1}, - "snaps": "b01a1349 5efdcb6d 160222f4 3e5aaecc 6035e2a8 aa13b4ae 8aa749da" + "snaps": "b01a1349 5efdcb6d 160222f4 c2d36b62 a656eb66 cd4afa75 8afb50d8" }, "bond-visiShip-low": { "about": "远见 low: tier 1 layers 1; chess_char_3_12_a chess_char_3_03_a chess_char_2_02_a chess_char_3_08_a chess_char_3_09_a chess_char_3_10_a chess_char_3_11_a chess_char_3_13_a token_10000_silent_healrb", @@ -1684,19 +1684,19 @@ "units": [ ["p1",1,"op","chess_char_3_12_a",2,null,0,0,3,0,196,2334,0,7,1], ["p1",2,"op","chess_char_3_03_a",1,null,1378,1,6,0,0,0,0,0,0], - ["p1",3,"op","chess_char_2_02_a",1,null,1400,1,1,0,0,0,3267,13,2], + ["p1",3,"op","chess_char_2_02_a",1,null,1400,1,1,0,0,0,3267,14,2], ["p1",4,"op","chess_char_3_08_a",1,null,1594,1,4,2,21129,596,0,8,1], - ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,5,3,23624,721,0,26,1], + ["p1",5,"op","chess_char_3_09_a",1,null,1267,1,5,3,22928,721,0,26,1], ["p1",6,"op","chess_char_3_10_a",1,null,0,0,2,2,9387,2752,0,10,1], - ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,7,6,31797,848,0,25,3], + ["p1",7,"op","chess_char_3_11_a",1,null,1316,1,7,6,32494,848,0,25,3], ["p1",8,"op","chess_char_3_13_a",1,null,1064,1,8,3,12149,1487,0,37,7], ["p1",9,"token","token_10000_silent_healrb",null,null,1000,1,29,0,0,0,1487,20,null] ], "enemies": {"enemy_1116_liprr":[11,11,0,2293,54450],"enemy_1116_liprr_2":[4,4,0,932,27000],"enemy_1118_lidbox_2":[2,1,1,5514,16832]}, - "hooks": [1,28,1822,192,192,206,206,33,18,21,16,16,0,8231,2,27,17,1,1,18,0,0,0], - "events": {"atk":227,"deploy":11,"die":20,"dmg":206,"engage":6,"fx":56,"heal":33,"leak":1,"skill":32,"spawn":26,"status":27}, + "hooks": [1,28,1822,193,193,205,205,34,18,21,16,16,0,8280,2,27,17,1,1,18,0,0,0], + "events": {"atk":228,"deploy":11,"die":20,"dmg":205,"engage":6,"fx":56,"heal":34,"leak":1,"skill":32,"spawn":26,"status":27}, "fx": {"aoe":1,"displace":19,"liberate":4,"phase":5,"pull":19,"strike":3,"summon":2,"volley":3}, - "snaps": "1774960c 545a8597 be4ea4cb 587e5565 5bd3504d f9fe857c" + "snaps": "1774960c 545a8597 f49caf36 7f8a2b12 0c35034b be56aa15" }, "bond-visiShip-high": { "about": "远见 high: tier 1 layers 999; chess_char_4_17_b chess_char_4_18_b chess_char_3_03_b chess_char_4_19_b chess_char_4_16_b chess_char_2_02_b chess_char_4_20_b chess_char_4_21_b token_10000_silent_healrb", @@ -1734,7 +1734,7 @@ "hooks": [1,34,2147,149,149,230,286,43,22,25,14,13,0,3634,17,17,18,0,1,22,0,0,6], "events": {"atk":154,"deploy":14,"die":25,"dmg":286,"engage":4,"fx":83,"heal":23,"skill":29,"spawn":29,"status":31}, "fx": {"dodge":6,"featherArrow":1,"flame":3,"garrisonGrant":1,"healField":1,"pulse":41,"riposte":6,"summon":4,"swordRain":16,"swordStorm":4}, - "snaps": "f1fbb18d 4106079f c1e57def d8980d1a 29dc63ad 7c0c9946 93a52cda 1f614e54" + "snaps": "f1fbb18d 4106079f 6eece11c ceb2a7fb 2b3db28c dc4cc84f 815c04df 64a1b8f1" }, "bond-yanShip-low": { "about": "炎 low: tier 1 layers 1; chess_char_3_16_a chess_char_3_03_a chess_char_3_18_a chess_char_1_03_a chess_char_2_04_a chess_char_3_14_a chess_char_3_17_a chess_char_3_19_a token_10028_vigil_wolf", diff --git a/test/golden/diy.json b/test/golden/diy.json index 068e674d..eca43687 100644 --- a/test/golden/diy.json +++ b/test/golden/diy.json @@ -26,9 +26,9 @@ "bossHpLeft": null, "rngDraws": 4, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":0,"total":93,"perfect":false,"leaks":93,"leaksUncounted":0,"coins":0,"dmg":94422,"bossDmg":0,"heal":0,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":0,"total":93,"perfect":false,"leaks":93,"leaksUncounted":0,"coins":0,"dmg":94713,"bossDmg":0,"heal":0,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,122,0,1944,4929,0,8,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,122,0,2236,4929,0,9,1], ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,125,0,7082,4929,0,11,2], ["p1",3,"op","chess_char_5_diy1_a",2,null,1643,1,126,0,2581,3286,0,9,0], ["p1",4,"op","chess_char_5_diy2_b",0,"none",2046,1,127,0,7167,4092,0,17,0], @@ -44,11 +44,11 @@ ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1267_nhpbr_2":[36,0,36,10810,50613],"enemy_1270_nhstlk_2":[27,0,27,23976,34462],"enemy_9006_actoxi":[30,0,30,22924,9347]}, - "hooks": [1,127,6241,283,283,320,320,0,29,122,13,13,0,11152,0,56,93,93,1,29,0,0,0], - "events": {"atk":299,"deploy":31,"die":29,"dmg":320,"engage":12,"fx":20,"leak":93,"skill":26,"spawn":108,"status":28}, + "enemies": {"enemy_1267_nhpbr_2":[36,0,36,10810,50613],"enemy_1270_nhstlk_2":[27,0,27,23976,34754],"enemy_9006_actoxi":[30,0,30,22924,9347]}, + "hooks": [1,127,6241,284,284,321,321,0,29,122,13,13,0,11180,0,56,93,93,1,29,0,0,0], + "events": {"atk":300,"deploy":31,"die":29,"dmg":321,"engage":12,"fx":20,"leak":93,"skill":26,"spawn":108,"status":28}, "fx": {"aoe":9,"dp":11}, - "snaps": "efc41242 c4198e33 98db8825 23a1db3c 1234686c 36672728 2591cd1f 0f6c0cf9 0af61dcd 4bf68084 3f8b3a9e f61164b4 b5446c41 453112dc 5822e50b 614bc055 e2971045 dbbf7794 9e3c095f 6ef5f198 4c0407a0" + "snaps": "efc41242 c4198e33 f06ff7fc 0d6babb1 b8a6d0c5 d4e6fb29 0404b4ba 9830ba20 469dea94 ad0b2241 23a1dbf3 26d076e9 0046b7bc 62023a05 ea663222 f6806b48 b3eb6848 bfff8055 60dce1de a0f16215 f2f8e1b9" }, "diy-002": { "about": "6_diy1_a=siege/S1 6_diy2_a=siege/S2 6_diy1_a=siege/S3 6_diy2_b=siege/S1 6_diy1_b=siege/S2 6_diy2_b=siege/S3 6_diy1_b=siege/S1/002_siege 6_diy2_b=siege/S2/002_siege 6_diy1_b=siege/S3/002_siege 6_diy2_b=siege/S1/003_siege 6_diy1_b=siege/S2/003_siege 6_diy2_b=siege/S3/003_siege", @@ -68,26 +68,26 @@ "bossHpLeft": null, "rngDraws": 13, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":62237,"bossDmg":0,"heal":0,"deaths":27,"layerGains":{}}}, + "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":67202,"bossDmg":0,"heal":0,"deaths":27,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,152,0,8250,4929,0,22,1], ["p1",2,"op","chess_char_6_diy2_a",1,null,1643,1,144,0,293,3286,0,4,2], ["p1",3,"op","chess_char_6_diy1_a",2,null,1643,1,139,0,165,3286,0,3,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"none",2046,1,145,0,109,4092,0,4,2], + ["p1",4,"op","chess_char_6_diy2_b",0,"none",2046,1,145,0,137,4092,0,5,2], ["p1",5,"op","chess_char_6_diy1_b",1,"none",2046,1,155,0,350,4092,0,9,2], ["p1",6,"op","chess_char_6_diy2_b",2,"none",2046,1,156,1,12373,4092,0,18,2], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_siege",2046,1,131,0,999,4092,0,11,2], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_siege",2046,1,157,0,9555,4092,0,11,4], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_siege",2046,1,158,0,3515,4092,0,9,1], - ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_siege",0,0,88,1,8812,4612,0,18,1], + ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_siege",0,0,93,1,13748,4612,0,29,1], ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_siege",0,0,133,0,14383,6918,0,13,3], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_siege",0,0,129,0,3434,6918,0,12,0] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,16057,4353],"enemy_1043_zomsbr":[66,2,64,7929,49916],"enemy_1402_tgshd_2":[36,0,36,30515,7968]}, - "hooks": [1,158,6699,259,259,275,275,4652,29,150,21,21,0,17810,4,52,123,121,1,29,0,0,0], - "events": {"atk":275,"deploy":35,"die":29,"dmg":275,"engage":12,"fx":91,"leak":121,"skill":42,"spawn":135,"status":42}, - "fx": {"aoe":11,"dp":17,"expose":63}, - "snaps": "7acd95d2 d5ddf37a 8b93d855 d72432a7 78e66100 9cab879f 8c105a45 0405189f 1cf351e7 4983331d 3ef88965 e24504fe 3b41373a df1d7ca8 e3d6ba50 840f2148 6e87bb34 6e486f70 6cb0235c 52ac4fc4 97d9391d 42825d37 228719be" + "enemies": {"enemy_1006_shield_3":[21,0,21,14915,4353],"enemy_1043_zomsbr":[66,2,64,8872,54785],"enemy_1402_tgshd_2":[36,0,36,30714,8064]}, + "hooks": [1,158,6699,280,280,296,296,5667,29,150,21,21,0,18100,4,52,123,121,1,29,0,0,0], + "events": {"atk":296,"deploy":35,"die":29,"dmg":296,"engage":12,"fx":94,"leak":121,"skill":42,"spawn":135,"status":42}, + "fx": {"aoe":11,"dp":17,"expose":66}, + "snaps": "7acd95d2 d5ddf37a 90864812 b53c702e b8222c46 13a2c99c c2196384 54dec050 10570ed5 11f4df07 59b1bf5b 0435a8a0 ebc65f03 9c1ccd13 e935730b 072da7e0 e2e91ed7 0e41e117 c7483f4c 077b7df6 2454d679 200c32a6 b86f0367" }, "diy-003": { "about": "5_diy1_a=chen/S1 5_diy2_a=chen/S2 5_diy1_a=chen/S3 5_diy2_b=chen/S1 5_diy1_b=chen/S2 5_diy2_b=chen/S3 5_diy1_b=chen/S1/002_chen 5_diy2_b=chen/S2/002_chen 5_diy1_b=chen/S3/002_chen 5_diy2_b=chen/S1/003_chen 5_diy1_b=chen/S2/003_chen 5_diy2_b=chen/S3/003_chen", @@ -101,35 +101,35 @@ "time": 210.43, "ticks": 6313, "reason": "cleared", - "killed": 12, + "killed": 13, "total": 93, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 72, + "rngDraws": 68, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":12,"total":93,"perfect":false,"leaks":81,"leaksUncounted":0,"coins":0,"dmg":312280,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":13,"total":93,"perfect":false,"leaks":80,"leaksUncounted":0,"coins":0,"dmg":333946,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,1564.35,1,118,1,15185,5000,0,23,4], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,97,2,24349,4376,0,10,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,110,0,6516,4376,0,12,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,117,0,25037,7941,0,25,6], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,70,3,61975,5294,0,13,3], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,64,1,20936,5294,0,10,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,1720.27,1,118,1,15585,4844,0,23,4], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,97,0,26342,4376,0,10,2], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,110,2,19325,4376,0,14,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,117,1,25069,7941,0,26,6], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,72,1,62183,5294,0,14,3], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,64,1,21805,5294,0,11,1], ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_chen",0,0,63,0,10463,5294,0,14,3], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_chen",0,0,7,2,49946,2647,0,12,4], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_chen",0,0,7,2,49946,2647,0,13,4], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_chen",0,0,11,1,37784,2647,0,8,2], ["p1",10,"op","chess_char_5_diy2_b",0,"uniequip_003_chen",0,0,68,2,22180,5294,0,19,6], - ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_chen",0,0,8,0,18198,2647,0,4,2], - ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_chen",0,0,9,0,19708,2647,0,5,2], + ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_chen",0,0,8,0,18888,2647,0,5,2], + ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_chen",0,0,9,2,24375,2647,0,4,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1267_nhpbr_2":[36,7,29,5848,78588],"enemy_1270_nhstlk_2":[27,3,24,19529,121151],"enemy_9006_actoxi":[30,2,28,27465,112540]}, - "hooks": [1,118,6313,301,301,653,640,0,33,114,36,36,0,672,21,47,93,81,1,33,0,0,13], - "events": {"atk":301,"deploy":22,"die":33,"dmg":640,"engage":12,"fx":79,"leak":81,"skill":72,"spawn":108,"status":69}, - "fx": {"blink":6,"dodge":13,"slash":51,"zone":9}, - "snaps": "f480f99c 63b00a5d 0159d1b1 3fa5a0b7 e831abe1 eb3c950a 02e7b609 3d01984a fa50cdf9 b6a4eae8 9e37b0e4 24166462 ed5ea044 9a515efe 0ed2afc6 e967b67f 2e6615f1 6cff3095 04fc60af a63942f7 8326936b" + "enemies": {"enemy_1267_nhpbr_2":[36,8,28,7340,87142],"enemy_1270_nhstlk_2":[27,3,24,16469,137330],"enemy_9006_actoxi":[30,2,28,28815,109475]}, + "hooks": [1,118,6313,305,305,696,683,0,34,114,37,37,0,693,21,48,93,80,1,34,0,0,13], + "events": {"atk":305,"deploy":22,"die":34,"dmg":683,"engage":12,"fx":94,"leak":80,"skill":74,"spawn":108,"status":69}, + "fx": {"blink":7,"dodge":13,"slash":64,"zone":10}, + "snaps": "f480f99c a7cf6994 df8f3fe3 95c9c96f 0fe98e70 2ae1a6b3 d9969516 10c847d3 44761931 0928d769 b88bb89d 0427ede4 b98ab8a9 90de5dbf 66bbb339 eaddfeae d8d1e7f5 2827ec45 003127e2 a81c748a d9c73d8b" }, "diy-004": { "about": "6_diy1_a=chen/S1 6_diy2_a=chen/S2 6_diy1_a=chen/S3 6_diy2_b=chen/S1 6_diy1_b=chen/S2 6_diy2_b=chen/S3 6_diy1_b=chen/S1/002_chen 6_diy2_b=chen/S2/002_chen 6_diy1_b=chen/S3/002_chen 6_diy2_b=chen/S1/003_chen 6_diy1_b=chen/S2/003_chen 6_diy2_b=chen/S3/003_chen", @@ -140,38 +140,38 @@ "round": 13, "seed": 1210847140, "waveId": "act1autochess_h06", - "time": 211.87, - "ticks": 6356, + "time": 213.03, + "ticks": 6391, "reason": "cleared", "killed": 3, "total": 111, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 90, + "rngDraws": 97, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":111,"perfect":false,"leaks":108,"leaksUncounted":0,"coins":0,"dmg":374358,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":111,"perfect":false,"leaks":108,"leaksUncounted":0,"coins":0,"dmg":396113,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,136,0,9366,6564,0,18,4], - ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,110,0,24041,4376,0,14,2], + ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,136,0,12152,6564,0,21,5], + ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,110,0,24884,4376,0,15,2], ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,120,0,8170,4376,0,9,1], ["p1",4,"op","chess_char_6_diy2_b",0,"none",0,0,129,0,8810,5294,0,15,4], - ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,78,0,68991,5294,0,18,4], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,13,1,33137,2647,0,18,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,78,0,70416,5294,0,20,4], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,13,1,50274,2647,0,21,3], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chen",0,0,74,0,26378,5294,0,23,11], - ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chen",0,0,73,0,66095,5294,0,18,3], - ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chen",0,0,5,2,27954,2647,0,8,2], + ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chen",0,0,73,0,63538,5294,0,20,3], + ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chen",0,0,5,2,26641,2647,0,7,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chen",0,0,8,0,12770,2647,0,8,4], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chen",0,0,71,0,34864,5294,0,12,2], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chen",0,0,76,0,53782,5294,0,13,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chen",0,0,71,0,33362,5294,0,11,2], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chen",0,0,76,0,58719,5294,0,17,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[54,1,53,39092,209916],"enemy_1320_wdrrl_2":[18,0,18,0,67079],"enemy_1422_lrsldr_2":[39,2,37,11729,190603]}, - "hooks": [1,136,6356,266,266,1934,1921,0,25,133,41,41,0,713,29,44,111,108,1,25,0,0,13], - "events": {"atk":266,"deploy":22,"die":25,"dmg":1921,"engage":12,"fx":93,"leak":108,"skill":82,"spawn":126,"status":45}, - "fx": {"blink":7,"dodge":13,"slash":73}, - "snaps": "9fa9af36 6b4b689a e6bcb4ab 7cad44cc 305b18f0 5faa3caf 269e791a 4ed8d848 409c57f6 0544a3ca 32f89b20 6203d641 6681b61e d1c610cd 8162df7f da4bcaca e2316925 052a8270 f1680582 e232df73 ed040a95 d06a15dd" + "enemies": {"enemy_1010_demon":[54,1,53,36926,203804],"enemy_1320_wdrrl_2":[18,0,18,0,71854],"enemy_1422_lrsldr_2":[39,2,37,14035,214045]}, + "hooks": [1,136,6391,286,286,1977,1963,0,25,133,43,43,0,755,30,45,111,108,1,25,0,0,14], + "events": {"atk":286,"deploy":22,"die":25,"dmg":1963,"engage":12,"fx":104,"leak":108,"skill":86,"spawn":126,"status":47}, + "fx": {"blink":8,"dodge":14,"slash":82}, + "snaps": "79526538 77f0248f b781988f 11792ab0 007f7eb2 51898c72 b05dbc85 ec2856d1 ba45a6c9 653ddff8 79a525a8 af805096 785425db dca4e013 445d676a 6e7b4138 913fc782 8bb5750f fc4a7f4d 311f0afd f56a0c3d 351e76a8" }, "diy-005": { "about": "5_diy1_a=irene/S1 5_diy2_a=irene/S2 5_diy1_a=irene/S3 5_diy2_b=irene/S1 5_diy1_b=irene/S2 5_diy2_b=irene/S3 5_diy1_b=irene/S1/002_irene 5_diy2_b=irene/S2/002_irene 5_diy1_b=irene/S3/002_irene 5_diy2_b=irene/S1/003_irene 5_diy1_b=irene/S2/003_irene 5_diy2_b=irene/S3/003_irene", @@ -185,32 +185,32 @@ "time": 198.7, "ticks": 5961, "reason": "cleared", - "killed": 6, + "killed": 8, "total": 60, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 586, + "rngDraws": 596, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":6,"total":60,"perfect":false,"leaks":54,"leaksUncounted":0,"coins":0,"dmg":183229,"bossDmg":0,"heal":0,"deaths":15,"layerGains":{}}}, + "players": {"p1":{"killed":8,"total":60,"perfect":false,"leaks":52,"leaksUncounted":0,"coins":0,"dmg":188702,"bossDmg":0,"heal":0,"deaths":15,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,69,0,4167,4402,0,30,3], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,68,0,12369,4402,0,32,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,60,0,30748,4402,0,38,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,57,0,6440,5376,0,30,4], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,51,0,13723,5376,0,31,2], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",1274,1,81,6,99736,6790,0,42,2], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_irene",0,0,77,0,16045,8064,0,49,7], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,67,0,4708,4402,0,31,3], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,64,0,9499,4402,0,24,2], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,70,0,33458,4402,0,30,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,57,0,6042,5376,0,39,6], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,51,0,12406,5376,0,33,2], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",1274,1,81,8,103688,6790,0,42,2], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_irene",0,0,77,0,18901,8064,0,49,7], ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_irene",2688,1,1,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_irene",2688,1,3,0,0,0,0,0,0], ["p1",10,"op","chess_char_5_diy2_b",0,"uniequip_003_irene",2688,1,5,0,0,0,0,0,0], ["p1",11,"op","chess_char_5_diy1_b",1,"uniequip_003_irene",2688,1,7,0,0,0,0,0,0], ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_003_irene",2688,1,9,0,0,0,0,0,0] ], - "enemies": {"enemy_1045_hammer_2":[12,0,12,16810,27100],"enemy_1061_zomshd":[48,6,42,22002,218849]}, - "hooks": [1,81,5961,383,383,2383,2383,22625,21,75,21,21,0,238,57,71,60,54,1,21,0,0,0], - "events": {"atk":383,"deploy":21,"die":21,"dmg":2383,"engage":7,"fx":33,"leak":54,"skill":42,"spawn":72,"status":112}, - "fx": {"aoe":29,"slash":4}, - "snaps": "e7f7f1a6 88c5a1be 549bc926 f6da3ba2 bce042d6 fe3d5699 5a553669 4557fbee c03f9142 22f09491 f2e1e379 8030946c 868e49f6 a3cfda87 d03e7570 296124b2 25f7f5aa e22a9cfd e70e298e f1bd5519" + "enemies": {"enemy_1045_hammer_2":[12,0,12,20218,28971],"enemy_1061_zomshd":[48,8,40,18594,221211]}, + "hooks": [1,81,5961,368,368,2364,2364,19410,23,75,23,23,0,232,56,70,60,52,1,23,0,0,0], + "events": {"atk":368,"deploy":21,"die":23,"dmg":2364,"engage":7,"fx":37,"leak":52,"skill":46,"spawn":72,"status":110}, + "fx": {"aoe":33,"slash":4}, + "snaps": "e7f7f1a6 88c5a1be f8ea18a0 4bb8e65b cde7007d 116bd18a 3ef4250e 451f8696 9269a4d0 21bf56fb 69a00e38 457646c3 89c87642 55afc29d 25881687 2c2ddd3f 9519d5db 89566be9 08bb7fac 98dc1374" }, "diy-006": { "about": "5_diy1_b=irene/S1/004_irene 5_diy2_b=irene/S2/004_irene 5_diy1_b=irene/S3/004_irene 6_diy1_a=irene/S1 6_diy2_a=irene/S2 6_diy1_a=irene/S3 6_diy2_b=irene/S1 6_diy1_b=irene/S2 6_diy2_b=irene/S3 6_diy1_b=irene/S1/002_irene 6_diy2_b=irene/S2/002_irene 6_diy1_b=irene/S3/002_irene", @@ -263,34 +263,34 @@ "time": 219.93, "ticks": 6598, "reason": "cleared", - "killed": 10, + "killed": 11, "total": 123, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 251, + "rngDraws": 240, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":10,"total":123,"perfect":false,"leaks":113,"leaksUncounted":0,"coins":0,"dmg":121673,"bossDmg":0,"heal":11404,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":11,"total":123,"perfect":false,"leaks":112,"leaksUncounted":0,"coins":0,"dmg":122639,"bossDmg":0,"heal":9654,"deaths":22,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_003_irene",0,0,147,2,24533,8064,0,26,5], - ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_003_irene",0,0,142,0,9147,8064,0,23,0], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_003_irene",0,0,123,1,8757,5376,0,17,0], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_004_irene",0,0,80,0,5735,5976,0,12,2], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_004_irene",0,0,82,2,23557,5976,0,17,1], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_004_irene",0,0,130,2,18603,8964,0,29,0], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_003_irene",0,0,147,2,25927,8064,0,27,5], + ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_003_irene",0,0,123,1,4844,5376,0,13,0], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_003_irene",0,0,142,1,10518,8064,0,19,0], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_004_irene",0,0,130,1,15332,8964,0,23,3], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_004_irene",0,0,82,2,24461,5976,0,20,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_004_irene",0,0,78,1,10510,5976,0,16,0], ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,71,1,9312,8513,2777,37,9], - ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,3,0,1306,4128,1260,21,1], + ["p1",8,"op","chess_char_5_diy2_a",1,null,0,0,3,0,1086,3428,560,16,1], ["p1",9,"op","chess_char_5_diy1_a",2,null,0,0,5,0,1275,3988,1120,13,1], ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,7,1,7019,5540,2038,31,7], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,9,1,11536,6240,2738,36,1], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,9,1,11462,5190,1688,38,1], ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,11,0,893,4972,1470,24,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,33715,10254],"enemy_1043_zomsbr":[66,10,56,5371,102486],"enemy_1402_tgshd_2":[36,0,36,36716,8933]}, - "hooks": [1,147,6598,444,444,620,615,4997,32,145,27,27,0,3755,10,52,123,113,1,32,0,0,5], - "events": {"atk":456,"deploy":22,"die":32,"dmg":615,"engage":12,"fx":200,"heal":169,"leak":113,"skill":54,"spawn":137,"status":44}, - "fx": {"dodge":5,"expose":194,"slash":1}, - "snaps": "97ee0d28 436c4959 f8f6d1b1 8e5b0905 fc0e2a6f 9fc1d785 7a94d59f c4e2472d bfa5a549 e99c2901 ceabdb4d f31909b2 770494fb f2a45163 0b9a2d27 b035a3bb 1bd935ab 25609d87 bfedcc68 93c64aeb d35352b8 899f8782" + "enemies": {"enemy_1006_shield_3":[21,0,21,29257,7269],"enemy_1043_zomsbr":[66,11,55,5085,104884],"enemy_1402_tgshd_2":[36,0,36,39710,10486]}, + "hooks": [1,147,6598,430,430,599,592,5059,33,145,28,28,0,3761,11,54,123,112,1,33,0,0,7], + "events": {"atk":442,"deploy":22,"die":33,"dmg":592,"engage":12,"fx":206,"heal":144,"leak":112,"skill":56,"spawn":137,"status":47}, + "fx": {"dodge":7,"expose":198,"slash":1}, + "snaps": "97ee0d28 436c4959 168c0d1e 5259cfc8 14349936 c84a76da c9e8432b 94be8ab3 50952e2a 63b834fe 697389cb 97394528 3c47e905 5539e25c 168d21d0 0c6b3810 3a9781d5 904bc7bd 32ab3f3f 27840655 895145ec dec1022d" }, "diy-008": { "about": "5_diy1_b=helage/S1/002_helage 5_diy2_b=helage/S2/002_helage 5_diy1_b=helage/S3/002_helage 5_diy2_b=helage/S1/003_helage 5_diy1_b=helage/S2/003_helage 5_diy2_b=helage/S3/003_helage 6_diy1_a=helage/S1 6_diy2_a=helage/S2 6_diy1_a=helage/S3 6_diy2_b=helage/S1 6_diy1_b=helage/S2 6_diy2_b=helage/S3", @@ -515,12 +515,12 @@ "bossHpLeft": null, "rngDraws": 93, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":1,"total":132,"perfect":false,"leaks":131,"leaksUncounted":0,"coins":0,"dmg":33905,"bossDmg":0,"heal":16535,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":1,"total":132,"perfect":false,"leaks":131,"leaksUncounted":0,"coins":0,"dmg":35367,"bossDmg":0,"heal":16535,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,159,0,3708,6028,29,12,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,159,0,4067,6028,29,13,1], ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,161,0,3129,5442,615,6,2], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,154,0,16758,6402,129,17,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,148,0,4353,9352,353,11,1], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,154,0,17438,6402,129,17,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,148,0,4776,9352,353,12,1], ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,143,0,2783,6329,44,3,1], ["p1",6,"op","chess_char_5_diy2_b",2,"none",2004,1,162,0,3174,5346,381,8,0], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_cgbird",0,0,94,0,0,3168,3804,6,1], @@ -530,11 +530,11 @@ ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_cgbird",0,0,134,0,0,7042,1630,5,0], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_cgbird",0,0,2,0,0,2293,3485,7,1] ], - "enemies": {"enemy_1019_jshoot_2":[57,1,56,15602,15051],"enemy_1381_winman":[27,0,27,2602,18613],"enemy_1389_winbab_2":[48,0,48,49173,241]}, - "hooks": [1,162,6578,401,401,295,232,475,30,161,12,12,0,8070,0,22,132,131,1,30,0,0,63], - "events": {"atk":417,"deploy":30,"die":30,"dmg":232,"engage":6,"fx":91,"heal":41,"leak":131,"skill":24,"spawn":144,"status":39}, + "enemies": {"enemy_1019_jshoot_2":[57,1,56,15602,15051],"enemy_1381_winman":[27,0,27,2602,20075],"enemy_1389_winbab_2":[48,0,48,49173,241]}, + "hooks": [1,162,6578,403,403,298,235,475,30,161,12,12,0,8079,0,22,132,131,1,30,0,0,63], + "events": {"atk":420,"deploy":30,"die":30,"dmg":235,"engage":6,"fx":91,"heal":41,"leak":131,"skill":24,"spawn":144,"status":39}, "fx": {"aoe":3,"buff":17,"dodge":63,"dp":5,"dying":1,"shield":2}, - "snaps": "44e36f67 803755c7 c86391ce a6434165 3620eecd c68e3419 416111e8 201b59cc e02f7079 f7e80bac a7aa64ef ffc3a42c 2d43e6d0 0bba8459 4b53783a 9b8aa487 46103e77 f1e3f4a3 3dcd562b 74e9ca36 1c23d495 ea32cf27" + "snaps": "44e36f67 803755c7 98764cc5 9dcf3861 9f66766a 57ae474e fc5da333 0e585ec7 267895ba 164f4b63 702efaa0 c165cf97 36f9db27 de08ae12 58e5a1d5 6b6b4d5c b309e918 ac6628e8 f51af240 3f2ac29d eacce7b2 d1876098" }, "diy-014": { "about": "5_diy1_b=saga/S1/002_saga 5_diy2_b=saga/S2/002_saga 5_diy1_b=saga/S3/002_saga 5_diy2_b=saga/S1/003_saga 5_diy1_b=saga/S2/003_saga 5_diy2_b=saga/S3/003_saga 6_diy1_a=saga/S1 6_diy2_a=saga/S2 6_diy1_a=saga/S3 6_diy2_b=saga/S1 6_diy1_b=saga/S2 6_diy2_b=saga/S3", @@ -545,38 +545,38 @@ "round": 13, "seed": 2178544450, "waveId": "act1autochess_h06", - "time": 212.63, - "ticks": 6379, - "reason": "cleared", - "killed": 14, + "time": 230, + "ticks": 6900, + "reason": "timeout", + "killed": 15, "total": 129, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 162, + "rngDraws": 193, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":14,"total":129,"perfect":false,"leaks":115,"leaksUncounted":0,"coins":0,"dmg":203325,"bossDmg":0,"heal":23243,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":15,"total":129,"perfect":false,"leaks":114,"leaksUncounted":0,"coins":0,"dmg":216027,"bossDmg":0,"heal":28709,"deaths":29,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_saga",0,0,157,0,625,7996,1759,22,1], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_saga",0,0,160,2,23291,9173,2936,32,5], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_saga",0,0,152,0,21176,9447,3210,43,2], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_saga",0,0,154,0,8686,8441,2429,29,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_saga",2004,1,166,0,37565,7905,3897,51,5], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_saga",2004,1,168,0,74839,7518,3510,67,2], - ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,138,0,344,5937,1110,15,0], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_saga",0,0,157,0,17907,9721,3484,54,2], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_saga",0,0,151,2,21590,7210,973,19,4], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_saga",0,0,156,0,15197,9326,3089,39,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_saga",0,0,165,0,17512,12098,6086,61,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_saga",1166.21,1,166,1,41422,10198,5352,80,7], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_saga",2004,1,168,0,67196,7694,3686,63,2], + ["p1",7,"op","chess_char_6_diy1_a",0,null,1609,1,169,0,344,5937,1110,15,0], ["p1",8,"op","chess_char_6_diy2_a",1,null,1609,1,142,0,1369,3218,0,8,1], ["p1",9,"op","chess_char_6_diy1_a",2,null,1609,1,167,0,19784,4856,1638,31,1], ["p1",10,"op","chess_char_6_diy2_b",0,"none",2004,1,139,0,1160,4633,625,14,2], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",2004,1,145,0,12576,4321,313,4,5], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",2004,1,164,0,1910,5825,1817,24,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",2004,1,145,0,10793,4321,313,5,6], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",2004,1,162,0,1753,6361,2353,21,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_10124_uashld_2":[18,0,18,25691,5430],"enemy_1043_zomsbr":[66,14,52,11487,172601],"enemy_1061_zomshd":[45,0,45,42091,25293]}, - "hooks": [1,168,6379,636,636,744,638,20268,43,158,27,27,0,20459,0,68,129,115,1,44,0,0,106], - "events": {"atk":685,"deploy":36,"die":43,"dmg":638,"engage":12,"fx":185,"leak":115,"skill":54,"spawn":144,"status":72}, - "fx": {"aoe":16,"buff":29,"dodge":106,"dp":20,"dying":14}, - "snaps": "1abeaa08 349a7663 2bbcf434 2c6ab233 9f54f5d4 b2147339 4cac072f ded19d11 cf19719c f203bea5 ba3ebc83 8d827ea7 31a6d161 ae14b6cb 89bb8b07 d98db669 ce6c6485 8955b3df 270299c6 d563a728 7c53d5a6 e4fd9c57" + "enemies": {"enemy_10124_uashld_2":[18,0,18,24942,4911],"enemy_1043_zomsbr":[66,15,51,14763,187317],"enemy_1061_zomshd":[45,0,44,45868,23799]}, + "hooks": [1,169,6900,761,761,862,732,23037,44,157,30,30,0,24748,0,71,129,113,1,47,0,0,130], + "events": {"atk":808,"deploy":37,"die":44,"dmg":732,"engage":12,"fx":216,"leak":113,"skill":60,"spawn":144,"status":74}, + "fx": {"aoe":18,"buff":30,"dodge":130,"dp":23,"dying":15}, + "snaps": "1abeaa08 349a7663 d9d126e2 f6fa8e40 19eca3eb d9181f10 14313c13 50b872e5 595c4eac 19fd72e5 b0d1a496 e691ae8c 7ba9e112 292b5519 b35a3934 22510f9f 496053a5 8bbeae65 e1830bf9 5c783bad f03c6638 0c42f4c9 730ba87d" }, "diy-015": { "about": "6_diy1_b=saga/S1/002_saga 6_diy2_b=saga/S2/002_saga 6_diy1_b=saga/S3/002_saga 6_diy2_b=saga/S1/003_saga 6_diy1_b=saga/S2/003_saga 6_diy2_b=saga/S3/003_saga 5_diy1_a=amgoat/S1 5_diy2_a=amgoat/S2 5_diy1_a=amgoat/S3 5_diy2_b=amgoat/S1 5_diy1_b=amgoat/S2 5_diy2_b=amgoat/S3", @@ -587,38 +587,38 @@ "round": 13, "seed": 2805115174, "waveId": "act1autochess_h06", - "time": 228.73, - "ticks": 6862, + "time": 229.1, + "ticks": 6873, "reason": "cleared", - "killed": 37, + "killed": 34, "total": 129, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 825, + "rngDraws": 872, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":37,"total":129,"perfect":false,"leaks":92,"leaksUncounted":0,"coins":0,"dmg":737757,"bossDmg":0,"heal":26376,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":34,"total":129,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":722219,"bossDmg":0,"heal":32097,"deaths":20,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_saga",2129,1,161,0,3024,10209,5951,58,2], - ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_saga",0,0,128,1,25020,8055,3797,48,5], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_saga",0,0,158,0,11406,10316,3929,36,2], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_saga",0,0,154,0,11016,8517,2505,57,2], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_saga",0,0,146,0,36356,10092,4080,61,4], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_saga",1749.87,1,160,0,24818,10375,6113,80,3], - ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,23047,0,0,40,2], - ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,9,201381,0,0,130,31], - ["p1",9,"op","chess_char_5_diy1_a",2,null,1359,1,15,8,235409,0,0,172,3], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",1614,1,148,4,33425,3228,0,53,3], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",1614,1,144,6,114997,3228,0,49,18], - ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,138,0,17859,4842,0,28,0], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_saga",2129,1,161,0,7229,10013,5755,58,3], + ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_saga",0,0,130,0,24242,10209,5951,58,5], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_saga",2129,1,160,0,9416,9618,5360,35,2], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_saga",835.75,1,159,0,9836,8519,3343,58,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_saga",0,0,151,0,44062,11631,5619,66,5], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_saga",1756.86,1,158,0,25120,10324,6069,78,3], + ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,24263,0,0,42,2], + ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,10,192317,0,0,122,29], + ["p1",9,"op","chess_char_5_diy1_a",2,null,1359,1,15,8,231867,0,0,175,3], + ["p1",10,"op","chess_char_5_diy2_b",0,"none",1614,1,147,3,32140,3228,0,52,3], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",1614,1,144,2,103610,3228,0,50,17], + ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,138,0,18118,4842,0,28,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_10124_uashld_2":[18,0,18,23109,131605],"enemy_1043_zomsbr":[66,32,34,1519,267053],"enemy_1061_zomshd":[45,5,40,36369,469587]}, - "hooks": [1,161,6862,1134,1134,3667,3553,62365,59,151,75,73,0,32494,0,62,129,92,1,73,0,0,114], - "events": {"atk":1347,"deploy":29,"die":59,"dmg":3553,"engage":12,"fx":217,"leak":92,"skill":148,"spawn":144,"status":48}, - "fx": {"aoe":9,"buff":16,"dodge":114,"dp":13,"dying":16,"explosion":49}, - "snaps": "c3e412fb fd471102 200ad48b 3769305b 79bb938a 3dcc7fb1 7c06b8f8 c6fab00a a0806241 4952a600 849adb7f 34ee61a4 b80fe71e 1f84658e b58561b0 22422a0d 0b644a0c 17c7af75 3c36a4ef 237a261a d917d1fe 0fe7213e 11cc6549" + "enemies": {"enemy_10124_uashld_2":[18,0,18,23548,144119],"enemy_1043_zomsbr":[66,30,36,1260,273745],"enemy_1061_zomshd":[45,4,41,38939,439739]}, + "hooks": [1,161,6873,1155,1155,3756,3625,65025,54,149,74,72,0,33095,0,56,129,95,1,64,0,0,131], + "events": {"atk":1372,"deploy":29,"die":54,"dmg":3625,"engage":12,"fx":227,"leak":95,"skill":146,"spawn":144,"status":39}, + "fx": {"aoe":10,"buff":14,"dodge":131,"dp":15,"dying":11,"explosion":46}, + "snaps": "c3e412fb fd471102 2f04632e 575bd906 59100a58 8cda76dc 10f2ee3f 982f809b b038b892 c1669f0f 962ca3b5 2be63d6e 8c587896 420f4a68 cc1643f4 c98d0941 2cc462f6 667f91a3 9861a0ca 9585cc68 6f3f277d 2b4450b7 e766cb34" }, "diy-016": { "about": "5_diy1_b=amgoat/S1/002_amgoat 5_diy2_b=amgoat/S2/002_amgoat 5_diy1_b=amgoat/S3/002_amgoat 5_diy2_b=amgoat/S1/003_amgoat 5_diy1_b=amgoat/S2/003_amgoat 5_diy2_b=amgoat/S3/003_amgoat 6_diy1_a=amgoat/S1 6_diy2_a=amgoat/S2 6_diy1_a=amgoat/S3 6_diy2_b=amgoat/S1 6_diy1_b=amgoat/S2 6_diy2_b=amgoat/S3", @@ -1317,37 +1317,37 @@ "round": 13, "seed": 2802554051, "waveId": "act1autochess_h06", - "time": 212.13, - "ticks": 6364, + "time": 212.43, + "ticks": 6373, "reason": "cleared", - "killed": 92, + "killed": 93, "total": 96, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 985, + "rngDraws": 1024, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":92,"total":96,"perfect":false,"leaks":4,"leaksUncounted":0,"coins":0,"dmg":1567225,"bossDmg":0,"heal":37247,"deaths":4,"layerGains":{}}}, + "players": {"p1":{"killed":93,"total":96,"perfect":false,"leaks":3,"leaksUncounted":0,"coins":0,"dmg":1570277,"bossDmg":0,"heal":43952,"deaths":3,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,71,6,34634,9216,3430,62,14], - ["p1",2,"op","chess_char_5_diy2_a",1,null,2076.5,1,100,4,106602,11430,7721,100,5], - ["p1",3,"op","chess_char_5_diy1_a",2,null,2893,1,6,9,162531,3059,3059,64,9], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",2147.91,1,111,3,28948,7648,2730,34,12], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",2113.25,1,10,10,224941,13475,12055,144,7], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",3104.6,1,12,31,439082,8680,8251,163,13], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,72,6,30028,9846,4060,51,13], + ["p1",2,"op","chess_char_5_diy2_a",1,null,860.2,1,100,5,90131,11716,6790,85,5], + ["p1",3,"op","chess_char_5_diy1_a",2,null,2631.87,1,6,11,152236,2639,2378,54,8], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",1062.91,1,9,5,102558,10744,8274,74,38], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",2676.5,1,10,15,213724,13832,12976,157,7], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",1201.02,1,12,31,413013,11806,9474,182,12], ["p1",7,"op","chess_char_6_diy1_b",0,"none",1404,1,3,0,0,0,0,0,5], - ["p1",8,"op","chess_char_6_diy2_b",1,"none",1404,1,4,9,124636,0,0,91,3], + ["p1",8,"op","chess_char_6_diy2_b",1,"none",1404,1,4,7,122108,0,0,84,3], ["p1",9,"op","chess_char_6_diy1_b",2,"none",1404,1,13,3,51985,0,0,21,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_002_veen",1594,1,14,0,64607,0,0,18,5], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_002_veen",1594,1,5,9,141592,0,0,94,3], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_002_veen",1594,1,11,8,187668,0,0,129,1], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_002_veen",1594,1,5,4,147178,0,0,89,3], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_002_veen",1594,1,11,6,182711,0,0,127,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1229_darmy":[27,27,0,2976,211632],"enemy_1229_darmy_2":[57,53,4,14887,568858],"enemy_9007_acelem":[12,12,0,21184,806216]}, - "hooks": [1,113,6364,976,976,3813,3874,985,96,100,79,75,48,40054,24,46,96,4,1,96,0,5,0], - "events": {"atk":1042,"deploy":15,"die":96,"dmg":3624,"engage":11,"fx":152,"heal":538,"leak":4,"skill":154,"spawn":110,"status":139}, - "fx": {"aoe":22,"beam":15,"burst":5,"shield":12,"veenBounce":40,"veenVolley":58}, - "snaps": "b61162d5 279a020a fe76c038 3e1ab060 32ccbc61 5afce8f1 16ab3200 1b24795c 7656bba0 2877768d eb4b765d ad5a4bde 1172a034 ec0ebb6d 1d6881ef 0287d5ff 26eba3f3 5d01a1a0 8f86910a f2420f40 a259951d 3884d916" + "enemies": {"enemy_1229_darmy":[27,27,0,3247,211632],"enemy_1229_darmy_2":[57,54,3,21621,571110],"enemy_9007_acelem":[12,12,0,22220,806216]}, + "hooks": [1,112,6373,1008,1008,3720,3784,1024,96,99,102,99,48,40887,22,49,96,3,1,96,0,5,0], + "events": {"atk":1057,"deploy":14,"die":96,"dmg":3576,"engage":11,"fx":154,"heal":634,"leak":3,"skill":201,"spawn":110,"status":130}, + "fx": {"aoe":20,"beam":16,"burst":5,"shield":12,"veenBounce":39,"veenVolley":62}, + "snaps": "b61162d5 279a020a e94c7813 d1425ebd 96d79e12 3949be7a 59b5c3ca 7be0767e 46d967a1 bf60fa47 1a1c1894 61ce4ad0 3f630a8a de7aee4f ad44870b ab8a54a6 44db7105 bcd9aabb fcaf3b5a d454bad1 f54a76a3 68e5f308" }, "diy-034": { "about": "5_diy1_b=zuole/S1/002_zuole 5_diy2_b=zuole/S2/002_zuole 5_diy1_b=zuole/S3/002_zuole 5_diy2_b=zuole/S1/003_zuole 5_diy1_b=zuole/S2/003_zuole 5_diy2_b=zuole/S3/003_zuole 6_diy1_a=zuole/S1 6_diy2_a=zuole/S2 6_diy1_a=zuole/S3 6_diy2_b=zuole/S1 6_diy1_b=zuole/S2 6_diy2_b=zuole/S3", @@ -1361,35 +1361,35 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 19, + "killed": 20, "total": 147, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 2856, + "rngDraws": 2831, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":19,"total":147,"perfect":false,"leaks":128,"leaksUncounted":0,"coins":0,"dmg":1601057,"bossDmg":0,"heal":123624,"deaths":17,"layerGains":{}}}, + "players": {"p1":{"killed":20,"total":147,"perfect":false,"leaks":127,"leaksUncounted":0,"coins":0,"dmg":1597733,"bossDmg":0,"heal":124711,"deaths":17,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_zuole",375.06,1,171,0,36108,23174,12950,80,61], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_zuole",0,0,103,2,72264,12036,4970,45,2], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_zuole",3013.56,1,10,4,312102,9288,8769,170,13], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_zuole",0,0,139,1,57461,23472,17910,101,72], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_zuole",0,0,108,3,114714,16183,10490,73,4], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_zuole",1496.62,1,6,0,235834,12940,10603,174,13], - ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,157,1,13974,16776,10990,81,48], - ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,112,1,17344,8586,2800,29,2], - ["p1",9,"op","chess_char_6_diy1_a",2,null,1688.77,1,8,1,211388,12121,10917,173,19], - ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,167,3,123803,27786,20720,118,97], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,93,0,45165,10426,3360,30,2], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,15,3,360902,12678,9145,188,15], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_zuole",0,0,5,3,122872,29643,26110,152,120], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_zuole",0,0,171,0,64196,15779,5180,58,3], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_zuole",3028.15,1,10,4,338684,7472,6967,170,13], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_zuole",1692.08,1,153,5,107018,22494,17670,121,78], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_zuole",0,0,103,2,105933,16012,9510,65,3], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_zuole",624.05,1,6,1,200510,17032,14042,199,14], + ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,124,1,34188,13976,8190,64,36], + ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,136,0,32018,10826,5040,46,3], + ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,8,0,145052,15085,12192,184,15], + ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,167,0,9865,16829,6230,42,30], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,93,1,44754,10496,3430,30,2], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",1679.08,1,15,3,392643,12005,10151,209,17], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1166_dusbr_2":[39,9,30,8938,443635],"enemy_1169_duphlx_2":[57,8,47,74016,643139],"enemy_1170_dushld_2":[51,2,47,92992,514284]}, - "hooks": [1,171,6900,1688,1688,3282,3292,2860,36,160,348,348,0,39796,136,50,147,124,1,40,0,0,0], - "events": {"atk":1797,"deploy":21,"die":36,"dmg":3103,"engage":12,"fx":74,"heal":1713,"leak":124,"skill":696,"spawn":162,"status":498}, - "fx": {"aoe":60,"revive":4,"shield":10}, - "snaps": "9b9bfe1e d02c2053 75f80100 d3aefb64 37686fe5 4084ba75 027aeac9 42b9d6a6 1cacad40 ed85e8c8 a54958a0 6d07d448 289dc119 179e5a1b a71ff47e 1a81febb 5ce41a44 95763206 7d68cbd5 7ec3afc9 b7464549 85ecca8b 1ea96b8e" + "enemies": {"enemy_1166_dusbr_2":[39,11,28,15356,469100],"enemy_1169_duphlx_2":[57,7,48,79554,658468],"enemy_1170_dushld_2":[51,2,47,83285,470165]}, + "hooks": [1,171,6900,1792,1792,3283,3294,2835,37,160,334,334,0,41102,131,48,147,123,1,41,0,0,0], + "events": {"atk":1901,"deploy":21,"die":37,"dmg":3091,"engage":12,"fx":74,"heal":1728,"leak":123,"skill":668,"spawn":162,"status":494}, + "fx": {"aoe":59,"revive":4,"shield":11}, + "snaps": "9b9bfe1e d43c7a0e c40281aa 6e64e3ce 4fad8636 36782105 09b748d1 25cc94c1 b430025a e9e80a79 d7721ed6 9ebc4c25 af2bd0f5 1f564cd9 bf9ad884 b285ba57 aa808b19 1f7b4e3f b637b674 97018793 b5ecbff9 c04a19ab e2d38481" }, "diy-035": { "about": "6_diy1_b=zuole/S1/002_zuole 6_diy2_b=zuole/S2/002_zuole 6_diy1_b=zuole/S3/002_zuole 6_diy2_b=zuole/S1/003_zuole 6_diy1_b=zuole/S2/003_zuole 6_diy2_b=zuole/S3/003_zuole 5_diy1_a=chyue/S1 5_diy2_a=chyue/S2 5_diy1_a=chyue/S3 5_diy2_b=chyue/S1 5_diy1_b=chyue/S2 5_diy2_b=chyue/S3", @@ -1400,35 +1400,35 @@ "round": 13, "seed": 4056308894, "waveId": "act1autochess_h06", - "time": 222.27, - "ticks": 6668, + "time": 216.63, + "ticks": 6499, "reason": "cleared", - "killed": 49, + "killed": 48, "total": 150, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 819, + "rngDraws": 800, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":49,"total":150,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":292306,"bossDmg":0,"heal":23053,"deaths":8,"layerGains":{}}}, + "players": {"p1":{"killed":48,"total":150,"perfect":false,"leaks":102,"leaksUncounted":0,"coins":0,"dmg":285899,"bossDmg":0,"heal":19857,"deaths":8,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_zuole",3533,1,4,10,57217,13042,13042,187,72], + ["p1",1,"op","chess_char_6_diy1_b",0,"uniequip_002_zuole",3533,1,4,10,57296,12407,12407,179,68], ["p1",2,"op","chess_char_6_diy2_b",1,"uniequip_002_zuole",3533,1,1,0,0,0,0,0,0], - ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_zuole",3533,1,5,1,9778,0,0,0,4], + ["p1",3,"op","chess_char_6_diy1_b",2,"uniequip_002_zuole",3533,1,5,2,16388,0,0,0,5], ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_003_zuole",3913,1,6,0,0,0,0,0,0], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_zuole",1279.63,1,7,5,29965,8723,6090,90,7], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_zuole",3452,1,9,14,88899,4382,3921,124,9], - ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,98,3,19469,4320,0,94,16], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_003_zuole",2712.28,1,7,3,23486,6171,4970,75,5], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_003_zuole",3913,1,9,15,88808,2480,2480,120,9], + ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,98,3,18830,4320,0,92,15], ["p1",8,"op","chess_char_5_diy2_a",1,null,2160,1,2,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_diy1_a",2,null,2160,1,3,0,0,0,0,0,0], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,107,4,21072,4950,0,89,18], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,105,11,47606,4950,0,93,10], - ["p1",12,"op","chess_char_5_diy2_b",2,"none",2475,1,167,1,18299,4950,0,78,6] + ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,110,5,23193,4950,0,89,18], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",2475,1,168,9,39580,4950,0,82,9], + ["p1",12,"op","chess_char_5_diy2_b",2,"none",2475,1,167,1,18319,4950,0,78,6] ], - "enemies": {"enemy_1249_lysdb_2":[60,25,35,5169,147432],"enemy_1251_lysyta":[51,15,36,68,48816],"enemy_1329_cbshld":[39,9,30,31357,96058]}, - "hooks": [1,167,6668,965,965,1145,1121,515,57,158,142,142,0,22655,14,51,150,101,1,57,0,0,0], - "events": {"atk":965,"deploy":17,"die":57,"dmg":1089,"engage":7,"fx":65,"heal":334,"leak":101,"skill":284,"spawn":162,"status":56}, - "fx": {"aoe":27,"shield":7,"shieldBreak":31}, - "snaps": "09423caa e7e673fb c845a79b 7a0b2d9d 05a1596e de7fa3ea c995a0ea 11c40708 f84f1277 5805ee4e d5ef9b28 fa2782a8 27ea32eb 5db67db1 8a10b282 5d40b886 704c028c e5f8b8f9 ae06934a 5cf7ff3a d066e289 26b44504 5f626119" + "enemies": {"enemy_1249_lysdb_2":[60,25,35,4646,144000],"enemy_1251_lysyta":[51,14,37,82,45888],"enemy_1329_cbshld":[39,9,30,29329,96011]}, + "hooks": [1,168,6499,913,913,1107,1080,503,56,158,135,135,0,22779,15,48,150,102,1,56,0,0,0], + "events": {"atk":913,"deploy":18,"die":56,"dmg":1050,"engage":7,"fx":64,"heal":288,"leak":102,"skill":270,"spawn":162,"status":62}, + "fx": {"aoe":27,"shield":5,"shieldBreak":32}, + "snaps": "09423caa b3a86bd7 6483cac2 f29bb4ad 8bbdebb8 0fd2713d 9c3b5f08 cd180d79 05e49fda a7c08cc7 3be4b06e dd1847a4 fa8f646f b377cb7b 986df5ff 2ac56c42 f3bc817e 1ca57598 be233956 8b864bea d41cd9e5 3c8e7e37" }, "diy-036": { "about": "5_diy1_b=chyue/S1/002_chyue 5_diy2_b=chyue/S2/002_chyue 5_diy1_b=chyue/S3/002_chyue 5_diy2_b=chyue/S1/003_chyue 5_diy1_b=chyue/S2/003_chyue 5_diy2_b=chyue/S3/003_chyue 6_diy1_a=chyue/S1 6_diy2_a=chyue/S2 6_diy1_a=chyue/S3 6_diy2_b=chyue/S1 6_diy1_b=chyue/S2 6_diy2_b=chyue/S3", @@ -1439,44 +1439,45 @@ "round": 13, "seed": 2415735691, "waveId": "act1autochess_h06", - "time": 206.17, - "ticks": 6185, + "time": 203.83, + "ticks": 6115, "reason": "cleared", - "killed": 117, - "total": 229, + "killed": 106, + "total": 223, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 548, + "rngDraws": 526, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":117,"total":229,"perfect":false,"leaks":112,"leaksUncounted":0,"coins":0,"dmg":235722,"bossDmg":0,"heal":0,"deaths":26,"layerGains":{}}}, + "players": {"p1":{"killed":106,"total":223,"perfect":false,"leaks":117,"leaksUncounted":0,"coins":0,"dmg":230330,"bossDmg":0,"heal":0,"deaths":26,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_chyue",0,0,239,4,13091,8055,0,41,7], - ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_chyue",0,0,217,7,8585,8055,0,35,5], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_chyue",0,0,205,6,12935,8055,0,39,3], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_chyue",2475,1,223,14,4478,4950,0,62,12], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_chyue",1658.62,1,105,32,79900,3291,0,148,14], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_chyue",2347.92,1,211,13,29239,5077,0,78,7], - ["p1",7,"op","chess_char_6_diy1_a",0,null,838.04,1,214,11,41263,5642,0,82,14], - ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,126,8,2194,4320,0,41,7], - ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,119,10,1284,4320,0,54,4], - ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,113,8,32746,4950,0,56,12], - ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,136,4,9482,4950,0,13,10], - ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,144,0,524,4950,0,14,0], + ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_chyue",2648.69,1,218,9,6652,5406,0,51,10], + ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_chyue",0,0,208,7,11931,8055,0,43,5], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_chyue",0,0,198,8,7773,8055,0,37,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_chyue",2475,1,250,11,31407,4950,0,77,15], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_chyue",2475,1,254,18,49193,4950,0,77,8], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_chyue",2253.04,1,201,10,31116,5172,0,84,7], + ["p1",7,"op","chess_char_6_diy1_a",0,null,778.95,1,205,13,42405,5701,0,82,14], + ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,131,10,5481,4320,0,47,7], + ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,124,10,220,4320,0,54,4], + ["p1",10,"op","chess_char_6_diy2_b",0,"none",0,0,118,8,32762,4950,0,56,12], + ["p1",11,"op","chess_char_6_diy1_b",1,"none",0,0,142,2,10886,4950,0,14,10], + ["p1",12,"op","chess_char_6_diy2_b",2,"none",0,0,154,0,504,4950,0,14,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [39,20,19,651,68553], - "enemy_1196_msfyin": [40,23,17,0,75], - "enemy_1197_sfshu": [48,30,18,3474,124416], - "enemy_1198_msfshu": [90,44,46,0,280], - "enemy_1207_sfji": [12,0,12,62491,42398] + "enemy_1195_sfyin": [39,18,21,898,61918], + "enemy_1196_msfyin": [36,21,15,0,73], + "enemy_1197_sfshu": [48,29,19,3205,120269], + "enemy_1198_msfshu": [87,37,50,0,226], + "enemy_1207_sfji": [12,1,11,61676,47844], + "enemy_1208_msfji": [1,0,1,0,1] }, - "hooks": [1,262,6185,847,847,949,946,0,143,255,95,95,0,11576,1,76,229,112,1,143,0,0,3], - "events": {"atk":847,"deploy":30,"die":143,"dmg":946,"engage":12,"fx":91,"leak":112,"skill":190,"spawn":244,"status":20}, - "fx": {"aoe":37,"buff":1,"dodge":3,"summon":50}, - "snaps": "7ff101ed 96f6335f 2539346b f079396d ee3daafe 8a58a351 d1aac54c 84ca2a95 fa58c8a0 6a230f98 c892e835 57da99fe 4337d40c 527a4077 97fab8e0 fe62af0a bfd251bb 45a22df1 caab033b 5d25e986 a5359291" + "hooks": [1,257,6115,815,815,888,881,0,132,249,94,94,0,9703,3,76,223,117,1,132,0,0,7], + "events": {"atk":815,"deploy":31,"die":132,"dmg":881,"engage":12,"fx":89,"leak":117,"skill":188,"spawn":238,"status":24}, + "fx": {"aoe":33,"buff":1,"dodge":7,"summon":48}, + "snaps": "3bbe012e d31f4ea8 cb8f67bb 242b9a30 f3ce30d3 e9830293 cf0729b3 988d2c83 02f42254 4f557eea 8e95bd4c 83c92c27 cefc8d7b 213319ae 9f9a26fc f4d90af3 71c1e322 dc08f466 512b9fd0 d6074647 bfccfff2" }, "diy-037": { "about": "5_diy1_a=huang/S1 5_diy2_a=huang/S2 5_diy1_a=huang/S3 5_diy2_b=huang/S1 5_diy1_b=huang/S2 5_diy2_b=huang/S3 6_diy1_b=chyue/S1/002_chyue 6_diy2_b=chyue/S2/002_chyue 6_diy1_b=chyue/S3/002_chyue 6_diy2_b=chyue/S1/003_chyue 6_diy1_b=chyue/S2/003_chyue 6_diy2_b=chyue/S3/003_chyue", @@ -1487,38 +1488,38 @@ "round": 13, "seed": 775009396, "waveId": "act1autochess_h06", - "time": 213.37, - "ticks": 6401, + "time": 218.97, + "ticks": 6569, "reason": "cleared", - "killed": 13, + "killed": 15, "total": 114, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 372, + "rngDraws": 392, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":13,"total":114,"perfect":false,"leaks":101,"leaksUncounted":0,"coins":0,"dmg":483353,"bossDmg":0,"heal":14094,"deaths":24,"layerGains":{}}}, + "players": {"p1":{"killed":15,"total":114,"perfect":false,"leaks":99,"leaksUncounted":0,"coins":0,"dmg":482787,"bossDmg":0,"heal":14094,"deaths":25,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,111,0,11302,6345,2115,19,4], - ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,126,0,10528,6345,2115,21,0], - ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,135,0,48630,6345,2115,7,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,94,3,29695,7749,2583,22,5], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,88,0,45529,7749,2583,30,0], - ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,85,3,87839,7749,2583,25,1], - ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chyue",479.69,1,141,2,42975,7725,0,78,18], - ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chyue",479.69,1,143,2,94724,7725,0,82,8], - ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chyue",2735,1,144,1,7909,5470,0,42,3], - ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chyue",2475,1,145,0,20198,4950,0,34,6], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chyue",0,0,74,2,56352,4950,0,45,5], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chyue",0,0,77,0,27672,4950,0,52,4], + ["p1",1,"op","chess_char_5_diy1_a",0,null,0,0,112,1,17993,6345,2115,20,5], + ["p1",2,"op","chess_char_5_diy2_a",1,null,0,0,127,0,8049,6345,2115,19,0], + ["p1",3,"op","chess_char_5_diy1_a",2,null,0,0,135,1,52184,6345,2115,9,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",0,0,96,2,31821,7749,2583,21,5], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",0,0,87,1,40745,7749,2583,26,0], + ["p1",6,"op","chess_char_5_diy2_b",2,"none",0,0,84,2,90738,7749,2583,21,1], + ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_chyue",1732.64,1,144,3,49556,6472,0,84,19], + ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_chyue",0,0,141,2,80117,8205,0,93,9], + ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_chyue",2735,1,145,1,14015,5470,0,42,4], + ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_chyue",0,0,85,1,16872,4950,0,35,6], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_chyue",865,1,143,1,52179,6560,0,48,5], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_chyue",0,0,77,0,28518,4950,0,51,4], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1381_winman":[27,6,21,4195,142957],"enemy_1381_winman_2":[48,7,41,26620,296069],"enemy_1387_winshd":[39,0,39,39935,179287]}, - "hooks": [1,145,6401,775,775,3215,3210,12,37,138,55,55,0,9977,18,66,114,101,1,39,0,0,7], - "events": {"atk":1002,"deploy":28,"die":37,"dmg":3104,"engage":12,"fx":59,"heal":12,"leak":101,"skill":110,"spawn":129,"status":40}, - "fx": {"aoe":40,"dodge":7,"heal":12}, - "snaps": "d3c5a22e 48d45420 5dc080e9 9240a907 65dbdebb 8ca7c9b0 ffcbdec5 dd6b8435 855625f9 cd9b81af 0105c531 e5c390b5 8fb89367 81ee3d5d e37326d0 ffcd7054 83e8480b 5e255f75 d03419a4 13ca797b a29da92c 35511aa2" + "enemies": {"enemy_1381_winman":[27,6,21,3398,152272],"enemy_1381_winman_2":[48,9,39,32298,292988],"enemy_1387_winshd":[39,0,39,34389,172487]}, + "hooks": [1,145,6569,793,793,3231,3220,12,40,139,59,59,0,10364,15,68,114,99,1,42,0,0,13], + "events": {"atk":1006,"deploy":28,"die":40,"dmg":3114,"engage":12,"fx":64,"heal":12,"leak":99,"skill":118,"spawn":129,"status":34}, + "fx": {"aoe":39,"dodge":13,"heal":12}, + "snaps": "7bd6fdc6 a8f0b6e0 4e2363a1 bbf647fd b9c77eec 8864c444 2fc7397d 74d6ad62 2c7afd85 d34880e2 9c85fb7f 3757e915 4b0cf4eb 8f141028 eb7b23d4 bc37491a 2c596db6 605c1373 96bd9972 64d94ed9 d9673eb8 50f071c1" }, "diy-038": { "about": "5_diy1_b=huang/S1/002_huang 5_diy2_b=huang/S2/002_huang 5_diy1_b=huang/S3/002_huang 5_diy2_b=huang/S1/003_huang 5_diy1_b=huang/S2/003_huang 5_diy2_b=huang/S3/003_huang 6_diy1_a=huang/S1 6_diy2_a=huang/S2 6_diy1_a=huang/S3 6_diy2_b=huang/S1 6_diy1_b=huang/S2 6_diy2_b=huang/S3", @@ -4629,29 +4630,29 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":99510,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, + "players": {"p1":{"killed":2,"total":123,"perfect":false,"leaks":121,"leaksUncounted":0,"coins":0,"dmg":99270,"bossDmg":0,"heal":0,"deaths":22,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_a",0,null,1803,1,150,0,0,3606,0,0,0], ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,124,0,0,3606,0,0,0], ["p1",3,"op","chess_char_6_diy1_a",2,null,865.31,1,149,0,0,4544,0,0,0], ["p1",4,"op","chess_char_6_diy2_b",0,"none",0,0,79,0,0,4230,0,0,0], ["p1",5,"op","chess_char_6_diy1_b",1,"none",0,0,134,0,0,4230,0,0,0], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,142,0,32351,4230,0,13,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,142,0,32111,4230,0,13,1], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_002_weedy",0,0,5,0,3599,2325,0,4,1], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_002_weedy",0,0,90,1,6006,4650,0,7,0], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_002_weedy",0,0,85,1,11699,4650,0,7,2], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_003_weedy",0,0,82,0,11535,4230,0,12,4], ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_003_weedy",0,0,86,0,32542,4230,0,29,0], - ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_weedy",0,0,6,0,1778,2115,0,3,0], + ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_003_weedy",0,0,6,0,1778,2115,0,3,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], - "enemies": {"enemy_1019_jshoot_2":[57,1,56,31655,36790],"enemy_1299_ymkilr_2":[27,0,27,13739,7133],"enemy_1422_lrsldr_2":[39,1,38,1252,55587]}, - "hooks": [1,150,6596,384,384,886,886,0,24,145,8,8,0,16335,6,24,123,121,1,24,0,0,0], - "events": {"atk":430,"deploy":24,"die":24,"dmg":886,"engage":7,"fx":12,"leak":121,"skill":16,"spawn":138,"status":12}, + "enemies": {"enemy_1019_jshoot_2":[57,1,56,31655,36790],"enemy_1299_ymkilr_2":[27,0,27,13739,7133],"enemy_1422_lrsldr_2":[39,1,38,1252,55347]}, + "hooks": [1,150,6596,384,384,886,886,0,24,145,9,9,0,16367,6,24,123,121,1,24,0,0,0], + "events": {"atk":430,"deploy":24,"die":24,"dmg":886,"engage":7,"fx":12,"leak":121,"skill":18,"spawn":138,"status":12}, "fx": {"displace":10,"frostNova":2}, - "snaps": "1ec1058a 353e98bb c891647e 774af3ff 45a4fc65 a06c21d5 23c0ac48 4d250a54 37cf8645 b2697143 e2890c36 dfbb3440 22693b45 ecaf0a1f e501e721 6c138961 c8148a8b c92af84a bcb5d730 7269dc1f 52f312ca 856e078e" + "snaps": "1ec1058a 353e98bb 34fd9a38 0d51d5b3 93bfc303 1b893497 43d88492 331d5c62 b4a648f7 784992d9 7539f598 aa80f976 b8df1f53 a3b4697d 3e382f0f 78b3385f 3fa32035 f698fb44 7272ecca 864aacc5 d65347bc 4448e28c" }, "diy-110": { "about": "5_diy1_a=wang/S1 5_diy2_a=wang/S2 5_diy1_a=wang/S3 5_diy2_b=wang/S1 5_diy1_b=wang/S2 5_diy2_b=wang/S3 5_diy1_b=wang/S1/002_wang 5_diy2_b=wang/S2/002_wang 5_diy1_b=wang/S3/002_wang 6_diy1_a=wang/S1 6_diy2_a=wang/S2 6_diy1_a=wang/S3", @@ -4671,28 +4672,28 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":7,"total":102,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":302431,"bossDmg":0,"heal":0,"deaths":9,"layerGains":{}}}, + "players": {"p1":{"killed":7,"total":102,"perfect":false,"leaks":95,"leaksUncounted":0,"coins":0,"dmg":303676,"bossDmg":0,"heal":0,"deaths":9,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_diy1_a",0,null,1169,1,3,0,17866,0,0,214,1], - ["p1",2,"op","chess_char_5_diy2_a",1,null,1169,1,4,0,24090,0,0,221,1], - ["p1",3,"op","chess_char_5_diy1_a",2,null,1169,1,11,1,27181,0,0,17,1], - ["p1",4,"op","chess_char_5_diy2_b",0,"none",1375,1,13,1,15943,0,0,122,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"none",1375,1,5,0,24878,0,0,231,1], + ["p1",1,"op","chess_char_5_diy1_a",0,null,1169,1,3,0,19106,0,0,214,1], + ["p1",2,"op","chess_char_5_diy2_a",1,null,1169,1,4,0,23179,0,0,220,1], + ["p1",3,"op","chess_char_5_diy1_a",2,null,1169,1,11,0,26970,0,0,17,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"none",1375,1,13,1,15972,0,0,123,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"none",1375,1,5,0,25278,0,0,232,1], ["p1",6,"op","chess_char_5_diy2_b",2,"none",1375,1,8,0,52464,0,0,10,1], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_wang",1475,1,12,1,40652,0,0,219,1], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_wang",1475,1,14,0,36017,0,0,209,1], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_002_wang",1475,1,12,1,41118,0,0,220,1], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_002_wang",1475,1,14,1,36196,0,0,209,1], ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_002_wang",1475,1,9,3,53254,0,0,10,1], - ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,120,0,1774,3507,0,22,1], - ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,116,1,4313,3507,0,20,1], + ["p1",10,"op","chess_char_6_diy1_a",0,null,0,0,120,1,1657,3507,0,23,1], + ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,116,0,4481,3507,0,21,1], ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,111,0,3999,3507,0,14,0], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], - "enemies": {"enemy_1166_dusbr_2":[45,7,38,1169,217310],"enemy_1170_dushld_2":[27,0,27,7014,38382],"enemy_9011_acrefr":[30,0,30,2338,77299]}, - "hooks": [1,122,6423,1320,1320,2162,2162,0,16,111,11,8,0,6464,0,10,102,95,1,16,0,0,0], - "events": {"atk":1320,"deploy":18,"die":16,"dmg":2162,"engage":12,"fx":41,"leak":95,"skill":19,"spawn":116,"status":102}, + "enemies": {"enemy_1166_dusbr_2":[45,7,38,1169,218475],"enemy_1170_dushld_2":[27,0,27,7014,38542],"enemy_9011_acrefr":[30,0,30,2338,77219]}, + "hooks": [1,122,6423,1324,1324,2168,2168,0,16,111,11,8,0,6464,0,10,102,95,1,16,0,0,0], + "events": {"atk":1324,"deploy":18,"die":16,"dmg":2168,"engage":12,"fx":41,"leak":95,"skill":19,"spawn":116,"status":102}, "fx": {"explode":20,"summon":21}, - "snaps": "d22aeabc 03955588 dbf27bbe 4d5246a4 e999adb8 4c485ed5 80e54acf 44641d76 fa4a593f f8aacfda 15fa9ba5 a55aed9e 52111617 ae7ee233 ccd4fac4 e5043def e7ada8a7 46b3231b f8ba41ab cf3792a3 382f7135 fb12184c" + "snaps": "d22aeabc 8047cbf2 e717defb d9a3c230 430799ae e933d86a 7972089a b532fabb 14cc29bb 50645694 aaec97cf 50ca7561 8b5d77b1 1192c94f 8511ad29 c46ecc62 fe6ab715 a19a7084 b5e8dbcf fe91d504 6e3982ad 42028be4" }, "diy-111": { "about": "6_diy1_b=wang/S1 6_diy2_b=wang/S2 6_diy1_b=wang/S3 6_diy2_b=wang/S1/002_wang 6_diy1_b=wang/S2/002_wang 6_diy2_b=wang/S3/002_wang 5_diy1_a=doroth/S1 5_diy2_a=doroth/S2 5_diy1_a=doroth/S3 5_diy2_b=doroth/S1 5_diy1_b=doroth/S2 5_diy2_b=doroth/S3", @@ -4712,12 +4713,12 @@ "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":20,"total":150,"perfect":false,"leaks":130,"leaksUncounted":0,"coins":0,"dmg":374571,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, + "players": {"p1":{"killed":20,"total":150,"perfect":false,"leaks":130,"leaksUncounted":0,"coins":0,"dmg":374425,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_b",0,"none",1375,1,4,2,54471,0,0,219,1], - ["p1",2,"op","chess_char_6_diy2_b",1,"none",1375,1,5,2,56168,0,0,221,1], + ["p1",1,"op","chess_char_6_diy1_b",0,"none",1375,1,4,2,54468,0,0,219,1], + ["p1",2,"op","chess_char_6_diy2_b",1,"none",1375,1,5,2,55888,0,0,221,1], ["p1",3,"op","chess_char_6_diy1_b",2,"none",1375,1,13,6,56653,0,0,14,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_wang",1525,1,15,1,47602,0,0,233,1], + ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_wang",1525,1,15,1,47674,0,0,234,1], ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_wang",1525,1,6,2,59306,0,0,212,1], ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_wang",1525,1,16,4,34625,0,0,17,1], ["p1",7,"op","chess_char_5_diy1_a",0,null,0,0,176,0,2865,3558,0,22,0], @@ -4734,13 +4735,13 @@ ["p1","~3","token","token_10025_doroth_recttp",null,null,1000,0,103,0,2465,0,0,0,null], ["p1","~4","token","token_10025_doroth_recttp",null,null,1000,0,114,0,7637,0,0,0,null], ["p1","~5","token","token_10025_doroth_recttp",null,null,1000,0,170,0,2163,0,0,0,null], - ["p1","~6","token","token_10025_doroth_recttp",null,null,1000,0,182,0,6289,0,0,0,null] + ["p1","~6","token","token_10025_doroth_recttp",null,null,1000,0,182,0,6353,0,0,0,null] ], - "enemies": {"enemy_1249_lysdb_2":[60,6,54,6336,177826],"enemy_1251_lysyta":[51,13,38,1640,142358],"enemy_1329_cbshld":[39,1,38,15253,54388]}, - "hooks": [1,183,6619,1188,1188,1261,1205,0,38,174,6,4,0,3124,26,24,150,130,1,38,0,0,0], - "events": {"atk":1188,"deploy":30,"die":44,"dmg":1205,"engage":12,"fx":94,"leak":130,"skill":10,"spawn":171,"status":50}, + "enemies": {"enemy_1249_lysdb_2":[60,6,54,6336,178226],"enemy_1251_lysyta":[51,13,38,1640,141718],"enemy_1329_cbshld":[39,1,38,15253,54481]}, + "hooks": [1,183,6619,1189,1189,1262,1206,0,38,174,6,4,0,3124,26,24,150,130,1,38,0,0,0], + "events": {"atk":1189,"deploy":30,"die":44,"dmg":1206,"engage":12,"fx":94,"leak":130,"skill":10,"spawn":171,"status":50}, "fx": {"explode":18,"shieldBreak":56,"summon":20}, - "snaps": "d2b2f468 210dad75 78b5d415 80ebfb89 8968ffd9 ec8f2b4d 0952962f ca569a82 21da3fab 021d1f0e afac5335 473e72a4 1f7f513f 9117b2e0 3dbc538b cf3eeb14 bebc9a02 39114e28 d1dba025 09188c4a 08b3ca61 fb3eca6c" + "snaps": "d2b2f468 773a3305 6b7fe130 cb8641e3 9df06882 9b4a332c cfc8e6ff 2f659595 7e9ced6d 84d57559 1171bc52 bd897f78 1b266b01 fdff47d7 317606db 0740345f b9643155 ccaf151b 79573b97 430e4274 5e82ffc4 24b25fbd" }, "diy-112": { "about": "5_diy1_b=doroth/S1/002_doroth 5_diy2_b=doroth/S2/002_doroth 5_diy1_b=doroth/S3/002_doroth 5_diy2_b=doroth/S1/003_doroth 5_diy1_b=doroth/S2/003_doroth 5_diy2_b=doroth/S3/003_doroth 6_diy1_a=doroth/S1 6_diy2_a=doroth/S2 6_diy1_a=doroth/S3 6_diy2_b=doroth/S1 6_diy1_b=doroth/S2 6_diy2_b=doroth/S3", @@ -4760,14 +4761,14 @@ "bossHpLeft": null, "rngDraws": 19, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":0,"total":105,"perfect":false,"leaks":105,"leaksUncounted":0,"coins":0,"dmg":85790,"bossDmg":0,"heal":0,"deaths":33,"layerGains":{}}}, + "players": {"p1":{"killed":0,"total":105,"perfect":false,"leaks":105,"leaksUncounted":0,"coins":0,"dmg":86240,"bossDmg":0,"heal":0,"deaths":33,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_doroth",0,0,153,0,3660,4545,0,25,0], ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_doroth",0,0,158,0,1491,4545,0,20,0], ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_doroth",0,0,164,0,7839,4545,0,19,0], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_doroth",0,0,167,0,7985,4185,0,20,1], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_doroth",1395,1,170,0,5033,2790,0,24,1], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_doroth",0,0,87,0,3620,2790,0,20,1], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_doroth",0,0,167,0,8374,4185,0,21,1], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_doroth",1395,1,170,0,5064,2790,0,25,1], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_doroth",0,0,87,0,3651,2790,0,21,1], ["p1",7,"op","chess_char_6_diy1_a",0,null,0,0,148,0,101,3558,0,4,0], ["p1",8,"op","chess_char_6_diy2_a",1,null,0,0,143,0,928,3558,0,16,0], ["p1",9,"op","chess_char_6_diy1_a",2,null,0,0,138,0,680,3558,0,14,0], @@ -4799,11 +4800,11 @@ ["p1","~23","token","token_10025_doroth_recttp",null,null,1000,0,168,0,0,0,0,0,null], ["p1","~24","token","token_10025_doroth_recttp",null,null,1000,0,169,0,0,0,0,0,null] ], - "enemies": {"enemy_1158_divman":[51,0,51,14982,42443],"enemy_1160_hvyslr_2":[24,0,24,6967,11198],"enemy_1161_tidmag_2":[30,0,30,23285,32149]}, - "hooks": [1,163,6430,358,358,360,397,0,33,162,3,3,0,2925,36,10,105,105,1,33,0,0,0], - "events": {"atk":367,"deploy":58,"die":57,"dmg":397,"engage":12,"fx":39,"leak":105,"skill":6,"spawn":141,"status":70}, + "enemies": {"enemy_1158_divman":[51,0,51,14982,42443],"enemy_1160_hvyslr_2":[24,0,24,6967,11258],"enemy_1161_tidmag_2":[30,0,30,23285,32538]}, + "hooks": [1,163,6430,361,361,363,400,0,33,162,3,3,0,2964,36,10,105,105,1,33,0,0,0], + "events": {"atk":370,"deploy":58,"die":57,"dmg":400,"engage":12,"fx":39,"leak":105,"skill":6,"spawn":141,"status":70}, "fx": {"explode":12,"mark":3,"summon":24}, - "snaps": "2b5dc14c 4c787979 68dbdf91 ae9551b5 bf1a3bbf 8be5ce7f 8414d3b3 c19cdcb9 348f4d76 43322710 8f9893f0 ad536d3e 6ab7928c 2ada7dd7 95bdaa9d 60643c45 8fa625da 2be5bcc5 c47299bc 33f720ad 86922420 74e6e4d0" + "snaps": "2b5dc14c bae96393 7b307634 850471bd 224dd955 9c59c02d 485012e9 b6404b2f 717eaf30 32721cc2 bfc45c1a 7a3d4738 fc803612 f73d55cd 73a6ef4b cc57a923 1d83e51c 30a4037f 6584de6a b89bf7d3 b40a54ae 437b24b6" }, "diy-113": { "about": "5_diy1_a=aglna2/S1 5_diy2_a=aglna2/S2 5_diy1_a=aglna2/S3 5_diy2_b=aglna2/S1 5_diy1_b=aglna2/S2 5_diy2_b=aglna2/S3 6_diy1_b=doroth/S1/002_doroth 6_diy2_b=doroth/S2/002_doroth 6_diy1_b=doroth/S3/002_doroth 6_diy2_b=doroth/S1/003_doroth 6_diy1_b=doroth/S2/003_doroth 6_diy2_b=doroth/S3/003_doroth", @@ -4869,48 +4870,48 @@ "round": 13, "seed": 4120508441, "waveId": "act1autochess_h06", - "time": 207.2, - "ticks": 6216, + "time": 205.97, + "ticks": 6179, "reason": "cleared", - "killed": 105, - "total": 192, + "killed": 106, + "total": 189, "unspawned": 0, "bossHpLeft": null, "rngDraws": 8, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":105,"total":192,"perfect":false,"leaks":87,"leaksUncounted":0,"coins":0,"dmg":610917,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, + "players": {"p1":{"killed":106,"total":189,"perfect":false,"leaks":83,"leaksUncounted":0,"coins":0,"dmg":604810,"bossDmg":0,"heal":0,"deaths":18,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,162,9,104987,3768,0,60,2], - ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,202,17,41640,3768,0,52,2], - ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,185,8,49256,3768,0,46,1], - ["p1",4,"op","chess_char_6_diy2_b",0,"none",2216,1,191,16,95148,2216,0,77,2], - ["p1",5,"op","chess_char_6_diy1_b",1,"none",1281.99,1,219,16,103627,5366,0,45,1], - ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,170,8,76347,4432,0,47,1], + ["p1",1,"op","chess_char_6_diy1_a",0,null,0,0,162,10,98104,3768,0,58,2], + ["p1",2,"op","chess_char_6_diy2_a",1,null,0,0,202,16,43127,3768,0,51,2], + ["p1",3,"op","chess_char_6_diy1_a",2,null,0,0,186,8,44934,3768,0,43,1], + ["p1",4,"op","chess_char_6_diy2_b",0,"none",2216,1,191,15,90315,2216,0,76,2], + ["p1",5,"op","chess_char_6_diy1_b",1,"none",1446,1,216,16,102990,5202,0,44,1], + ["p1",6,"op","chess_char_6_diy2_b",2,"none",0,0,170,10,80176,4432,0,47,1], ["p1",7,"op","chess_char_5_diy1_a",0,null,1359,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,4,26250,0,0,54,0], + ["p1",8,"op","chess_char_5_diy2_a",1,null,1359,1,5,1,33720,0,0,54,0], ["p1",9,"op","chess_char_5_diy1_a",2,null,278.33,1,15,1,69590,1081,0,68,4], - ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,167,1,8696,3140,0,29,2], - ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,159,2,6703,3140,0,18,4], + ["p1",10,"op","chess_char_5_diy2_b",0,"none",0,0,167,2,7065,3140,0,27,2], + ["p1",11,"op","chess_char_5_diy1_b",1,"none",0,0,159,2,7098,3140,0,21,4], ["p1",12,"op","chess_char_5_diy2_b",2,"none",0,0,187,2,16680,4710,0,16,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,37,2,1637,0,0,0,null], - ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,52,0,3269,0,0,0,null], - ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,67,0,2724,0,0,0,null], + ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,52,0,2288,0,0,0,null], + ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,67,0,2725,0,0,0,null], ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,81,0,4361,0,0,0,null] ], "enemies": { - "enemy_1197_sfshu": [15,9,6,233,54369], - "enemy_1197_sfshu_2": [39,24,15,8055,167010], - "enemy_1198_msfshu": [27,20,7,0,102], - "enemy_1198_msfshu_2": [72,41,31,0,342], - "enemy_9010_acpupp": [39,11,28,21145,461017] + "enemy_1197_sfshu": [15,9,6,233,53765], + "enemy_1197_sfshu_2": [39,23,16,7938,171426], + "enemy_1198_msfshu": [27,21,6,0,112], + "enemy_1198_msfshu_2": [69,42,27,0,348], + "enemy_9010_acpupp": [39,11,28,21238,449669] }, - "hooks": [1,222,6216,596,596,2750,2528,0,123,214,20,18,61,13100,19,40,192,87,1,135,0,0,0], - "events": {"atk":988,"deploy":27,"die":127,"dmg":2528,"engage":11,"fx":145,"leak":87,"skill":38,"spawn":211,"status":446}, - "fx": {"aoe":4,"dash":3,"displace":8,"ember":12,"pull":8,"shieldBreak":37,"summon":37,"takeoff":9,"telegraph":12,"volley":15}, - "snaps": "39df8f19 af060c25 8c957866 eaf522ed 8b52b30d 33152c52 0a34f781 5abdd087 47cd1ee5 38d5ca56 a7d03d2a adda0195 d884c719 cd5fe3d1 d3fc464f 00c9e148 b8c42329 755d5d02 ab6540d7 f6bce4af a5a87cca" + "hooks": [1,219,6179,587,587,2744,2520,0,124,211,20,18,61,13129,23,42,189,83,1,137,0,0,0], + "events": {"atk":973,"deploy":27,"die":128,"dmg":2520,"engage":11,"fx":145,"leak":83,"skill":38,"spawn":208,"status":442}, + "fx": {"aoe":4,"dash":3,"displace":8,"ember":13,"pull":8,"shieldBreak":36,"summon":36,"takeoff":9,"telegraph":13,"volley":15}, + "snaps": "39df8f19 dc0b29a2 9e238c17 43dd1e57 a6a34d5f a555ab38 25a0c85d 1ad33783 acbe4560 13b28161 da34a727 b95db8d6 23e509f7 faaca8f2 9f5d7dc2 a8cc015f 4ced24ff 3dece084 287324b5 6dbabf08 a99101bd" }, "diy-115": { "about": "5_diy1_b=ebnhlz/S1/002_ebnhlz 5_diy2_b=ebnhlz/S2/002_ebnhlz 5_diy1_b=ebnhlz/S3/002_ebnhlz 5_diy2_b=ebnhlz/S1/003_ebnhlz 5_diy1_b=ebnhlz/S2/003_ebnhlz 5_diy2_b=ebnhlz/S3/003_ebnhlz 5_diy1_b=ebnhlz/S1/004_ebnhlz 5_diy2_b=ebnhlz/S2/004_ebnhlz 5_diy1_b=ebnhlz/S3/004_ebnhlz 6_diy1_a=ebnhlz/S1 6_diy2_a=ebnhlz/S2 6_diy1_a=ebnhlz/S3", @@ -4921,63 +4922,63 @@ "round": 12, "seed": 2479968306, "waveId": "act1autochess_h05", - "time": 200.03, - "ticks": 6001, + "time": 205.6, + "ticks": 6168, "reason": "cleared", - "killed": 157, - "total": 243, + "killed": 154, + "total": 232, "unspawned": 0, "bossHpLeft": null, "rngDraws": 0, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":157,"total":243,"perfect":false,"leaks":86,"leaksUncounted":0,"coins":0,"dmg":517346,"bossDmg":0,"heal":0,"deaths":8,"layerGains":{}}}, + "players": {"p1":{"killed":154,"total":232,"perfect":false,"leaks":78,"leaksUncounted":0,"coins":0,"dmg":511834,"bossDmg":0,"heal":0,"deaths":10,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_diy1_b",0,"uniequip_002_ebnhlz",1570,1,10,4,57606,0,0,47,5], ["p1",2,"op","chess_char_5_diy2_b",1,"uniequip_002_ebnhlz",1570,1,11,7,31893,0,0,29,0], - ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_ebnhlz",1570,1,1,3,8448,0,0,24,4], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_ebnhlz",1650,1,3,23,46037,0,0,74,8], - ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_ebnhlz",1650,1,5,7,55625,0,0,56,7], - ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_ebnhlz",1650,1,7,14,131481,0,0,54,4], - ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_ebnhlz",1570,1,9,2,4,0,0,2,3], - ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_ebnhlz",1570,1,12,2,56423,0,0,43,14], - ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_ebnhlz",0,0,200,4,8982,3140,0,9,2], - ["p1",10,"op","chess_char_6_diy1_a",0,null,1025.48,1,276,4,10325,3052,0,29,2], - ["p1",11,"op","chess_char_6_diy2_a",1,null,81.61,1,272,5,16298,3995,0,22,0], - ["p1",12,"op","chess_char_6_diy1_a",2,null,53.27,1,262,2,18863,4024,0,15,1], + ["p1",3,"op","chess_char_5_diy1_b",2,"uniequip_002_ebnhlz",1570,1,1,6,12372,0,0,24,4], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_003_ebnhlz",1650,1,3,17,38893,0,0,76,8], + ["p1",5,"op","chess_char_5_diy1_b",1,"uniequip_003_ebnhlz",1650,1,5,8,48337,0,0,62,7], + ["p1",6,"op","chess_char_5_diy2_b",2,"uniequip_003_ebnhlz",1650,1,7,11,130273,0,0,49,4], + ["p1",7,"op","chess_char_5_diy1_b",0,"uniequip_004_ebnhlz",1570,1,9,0,0,0,0,0,3], + ["p1",8,"op","chess_char_5_diy2_b",1,"uniequip_004_ebnhlz",1570,1,12,6,63169,0,0,49,14], + ["p1",9,"op","chess_char_5_diy1_b",2,"uniequip_004_ebnhlz",1570,1,269,3,6725,3140,0,10,1], + ["p1",10,"op","chess_char_6_diy1_a",0,null,706.13,1,260,5,11720,3371,0,28,2], + ["p1",11,"op","chess_char_6_diy2_a",1,null,0,0,255,4,17497,4077,0,20,0], + ["p1",12,"op","chess_char_6_diy1_a",2,null,0,0,254,2,17986,4077,0,15,1], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,29,0,0,0,0,0,null], ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,30,0,13232,0,0,0,null], ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,50,0,5752,0,0,0,null], - ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,75,0,5177,0,0,0,null], - ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,77,0,0,0,0,0,null], - ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,95,0,5177,0,0,0,null], - ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,121,0,14956,0,0,0,null], - ["p1","~8","token","token_10024_ebnhlz_rcube",null,null,1000,0,124,0,0,0,0,0,null], - ["p1","~9","token","token_10024_ebnhlz_rcube",null,null,1000,0,139,0,2876,0,0,0,null], - ["p1","~10","token","token_10024_ebnhlz_rcube",null,null,1000,0,159,0,2304,0,0,0,null], - ["p1","~11","token","token_10024_ebnhlz_rcube",null,null,1000,0,168,0,0,0,0,0,null], - ["p1","~12","token","token_10024_ebnhlz_rcube",null,null,1000,0,180,0,5177,0,0,0,null], - ["p1","~13","token","token_10024_ebnhlz_rcube",null,null,1000,0,208,0,9778,0,0,0,null], - ["p1","~14","token","token_10024_ebnhlz_rcube",null,null,1000,0,218,0,0,0,0,0,null], - ["p1","~15","token","token_10024_ebnhlz_rcube",null,null,1000,0,225,0,2876,0,0,0,null], - ["p1","~16","token","token_10024_ebnhlz_rcube",null,null,1000,0,242,0,2880,0,0,0,null], - ["p1","~17","token","token_10024_ebnhlz_rcube",null,null,1000,0,251,0,0,0,0,0,null], - ["p1","~18","token","token_10024_ebnhlz_rcube",null,null,1000,0,254,0,5177,0,0,0,null], - ["p1","~19","token","token_10024_ebnhlz_rcube",null,null,1000,0,269,0,0,0,0,0,null], - ["p1","~20","token","token_10024_ebnhlz_rcube",null,null,1000,1,280,0,0,0,0,0,null], - ["p1","~21","token","token_10024_ebnhlz_rcube",null,null,1000,1,283,0,0,0,0,0,null] + ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,73,0,5177,0,0,0,null], + ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,75,0,0,0,0,0,null], + ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,93,0,5177,0,0,0,null], + ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,114,0,14956,0,0,0,null], + ["p1","~8","token","token_10024_ebnhlz_rcube",null,null,1000,0,120,0,0,0,0,0,null], + ["p1","~9","token","token_10024_ebnhlz_rcube",null,null,1000,0,132,0,2876,0,0,0,null], + ["p1","~10","token","token_10024_ebnhlz_rcube",null,null,1000,0,150,0,2305,0,0,0,null], + ["p1","~11","token","token_10024_ebnhlz_rcube",null,null,1000,0,160,0,0,0,0,0,null], + ["p1","~12","token","token_10024_ebnhlz_rcube",null,null,1000,0,168,0,5177,0,0,0,null], + ["p1","~13","token","token_10024_ebnhlz_rcube",null,null,1000,0,199,0,9778,0,0,0,null], + ["p1","~14","token","token_10024_ebnhlz_rcube",null,null,1000,0,207,0,0,0,0,0,null], + ["p1","~15","token","token_10024_ebnhlz_rcube",null,null,1000,0,214,0,2876,0,0,0,null], + ["p1","~16","token","token_10024_ebnhlz_rcube",null,null,1000,0,231,0,2880,0,0,0,null], + ["p1","~17","token","token_10024_ebnhlz_rcube",null,null,1000,0,240,0,0,0,0,0,null], + ["p1","~18","token","token_10024_ebnhlz_rcube",null,null,1000,0,243,0,5177,0,0,0,null], + ["p1","~19","token","token_10024_ebnhlz_rcube",null,null,1000,0,259,0,0,0,0,0,null], + ["p1","~20","token","token_10024_ebnhlz_rcube",null,null,1000,1,268,0,0,0,0,0,null], + ["p1","~21","token","token_10024_ebnhlz_rcube",null,null,1000,1,270,0,0,0,0,0,null] ], "enemies": { - "enemy_1195_sfyin": [45,27,18,8900,161080], - "enemy_1196_msfyin": [54,40,14,0,228], - "enemy_1197_sfshu": [39,27,12,5310,202092], - "enemy_1198_msfshu": [81,51,30,0,459], + "enemy_1195_sfyin": [45,23,22,8794,160820], + "enemy_1196_msfyin": [46,33,13,0,194], + "enemy_1197_sfshu": [39,26,13,5871,197074], + "enemy_1198_msfshu": [78,60,18,0,464], "enemy_1199_sfjin": [12,12,0,0,186325], - "enemy_1200_msfjin": [12,0,12,0,434] + "enemy_1200_msfjin": [12,0,12,0,459] }, - "hooks": [1,283,6001,453,453,2416,2533,0,165,270,50,48,0,29909,0,28,243,86,1,165,0,0,0], - "events": {"atk":453,"deploy":40,"die":184,"dmg":2533,"engage":12,"fx":196,"leak":86,"skill":98,"spawn":276}, - "fx": {"aoe":13,"displace":16,"pull":16,"summon":87,"volley":64}, - "snaps": "948c5168 1d265509 9d93f83f aa576c62 72631e8e 3d369e7e 865b36e1 f6fffa0e 12146209 105808e4 000d0135 acbc1b8c a2742d1c faa8de84 92a58837 217056e7 dc8c85a1 00af9228 c1c9f863 61d2d1ef" + "hooks": [1,273,6168,461,461,2423,2548,0,164,261,49,47,0,30421,0,28,232,78,1,164,0,0,0], + "events": {"atk":461,"deploy":41,"die":183,"dmg":2548,"engage":11,"fx":193,"leak":78,"skill":96,"spawn":265}, + "fx": {"aoe":13,"displace":17,"pull":17,"summon":82,"volley":64}, + "snaps": "948c5168 c32d266d 43ba134b 4372fae1 6e4bf334 4c5fe4c1 6dfbc99b bc7d903c 631d9949 3a438571 2e0c2541 2a1dae92 a90b81e6 ca4ec2b1 454f0153 6e8de2d3 0dd5e1fa d3cd56d3 feeb4a26 da6eab43 8a27c708" }, "diy-116": { "about": "6_diy1_b=ebnhlz/S1 6_diy2_b=ebnhlz/S2 6_diy1_b=ebnhlz/S3 6_diy2_b=ebnhlz/S1/002_ebnhlz 6_diy1_b=ebnhlz/S2/002_ebnhlz 6_diy2_b=ebnhlz/S3/002_ebnhlz 6_diy1_b=ebnhlz/S1/003_ebnhlz 6_diy2_b=ebnhlz/S2/003_ebnhlz 6_diy1_b=ebnhlz/S3/003_ebnhlz 6_diy2_b=ebnhlz/S1/004_ebnhlz 6_diy1_b=ebnhlz/S2/004_ebnhlz 6_diy2_b=ebnhlz/S3/004_ebnhlz", @@ -4991,39 +4992,39 @@ "time": 217.6, "ticks": 6528, "reason": "cleared", - "killed": 4, + "killed": 3, "total": 123, "unspawned": 0, "bossHpLeft": null, "rngDraws": 10, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":4,"total":123,"perfect":false,"leaks":119,"leaksUncounted":0,"coins":0,"dmg":287062,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":123,"perfect":false,"leaks":120,"leaksUncounted":0,"coins":0,"dmg":293861,"bossDmg":0,"heal":0,"deaths":21,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_6_diy1_b",0,"none",0,0,114,1,20547,3140,0,25,2], - ["p1",2,"op","chess_char_6_diy2_b",1,"none",0,0,91,0,24678,3140,0,15,4], + ["p1",2,"op","chess_char_6_diy2_b",1,"none",0,0,91,0,27538,3140,0,18,4], ["p1",3,"op","chess_char_6_diy1_b",2,"none",0,0,131,0,21860,3140,0,9,1], ["p1",4,"op","chess_char_6_diy2_b",0,"uniequip_002_ebnhlz",0,0,142,1,15719,3140,0,16,1], - ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_ebnhlz",0,0,151,0,17293,4710,0,10,1], + ["p1",5,"op","chess_char_6_diy1_b",1,"uniequip_002_ebnhlz",0,0,151,0,18745,4710,0,11,1], ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_ebnhlz",0,0,78,0,12168,3140,0,7,0], ["p1",7,"op","chess_char_6_diy1_b",0,"uniequip_003_ebnhlz",0,0,74,0,21305,3490,0,5,0], ["p1",8,"op","chess_char_6_diy2_b",1,"uniequip_003_ebnhlz",0,0,7,0,13689,1745,0,5,0], ["p1",9,"op","chess_char_6_diy1_b",2,"uniequip_003_ebnhlz",0,0,9,0,25461,1745,0,8,1], ["p1",10,"op","chess_char_6_diy2_b",0,"uniequip_004_ebnhlz",0,0,76,0,11814,3140,0,5,0], - ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_004_ebnhlz",0,0,4,0,27900,1570,0,5,2], + ["p1",11,"op","chess_char_6_diy1_b",1,"uniequip_004_ebnhlz",0,0,4,0,29832,1570,0,6,2], ["p1",12,"op","chess_char_6_diy2_b",2,"uniequip_004_ebnhlz",0,0,6,0,26897,1570,0,7,1], ["p1","~1","token","token_10024_ebnhlz_rcube",null,null,1000,0,26,0,1907,0,0,0,null], ["p1","~2","token","token_10024_ebnhlz_rcube",null,null,1000,0,27,0,18005,0,0,0,null], ["p1","~3","token","token_10024_ebnhlz_rcube",null,null,1000,0,28,0,5052,0,0,0,null], ["p1","~4","token","token_10024_ebnhlz_rcube",null,null,1000,0,37,1,5491,0,0,0,null], - ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,38,1,10738,0,0,0,null], + ["p1","~5","token","token_10024_ebnhlz_rcube",null,null,1000,0,38,0,11294,0,0,0,null], ["p1","~6","token","token_10024_ebnhlz_rcube",null,null,1000,0,99,0,2724,0,0,0,null], ["p1","~7","token","token_10024_ebnhlz_rcube",null,null,1000,0,122,0,3814,0,0,0,null] ], - "enemies": {"enemy_1006_shield_3":[21,0,21,6953,119555],"enemy_1043_zomsbr":[66,3,63,16695,86879],"enemy_1402_tgshd_2":[36,1,35,10022,80628]}, - "hooks": [1,151,6528,186,186,336,362,11435,25,151,13,13,0,9395,0,26,123,119,1,25,0,1,0], - "events": {"atk":186,"deploy":28,"die":32,"dmg":362,"engage":12,"fx":114,"leak":119,"skill":26,"spawn":142,"status":42}, - "fx": {"aoe":7,"burst":1,"displace":11,"expose":64,"pull":11,"summon":7,"volley":13}, - "snaps": "691ad5fa 91e1e114 f563bec0 6ddc350a 5b0a75c6 297369b1 9d924f0f 731afea6 86bb2a3f bdef720e 35e7e9bd bca55a60 b1e0f719 8a801d81 2fd72e97 4683186d 58329cf9 6e109e35 1358c210 ffaa4f2b 3bea76c1 d2d091a8" + "enemies": {"enemy_1006_shield_3":[21,0,21,6953,122938],"enemy_1043_zomsbr":[66,2,64,16695,90295],"enemy_1402_tgshd_2":[36,1,35,10022,80628]}, + "hooks": [1,151,6528,191,191,342,369,12466,24,151,13,13,0,9395,0,26,123,120,1,24,0,1,0], + "events": {"atk":191,"deploy":28,"die":31,"dmg":369,"engage":12,"fx":116,"leak":120,"skill":26,"spawn":142,"status":44}, + "fx": {"aoe":7,"burst":1,"displace":12,"expose":64,"pull":12,"summon":7,"volley":13}, + "snaps": "691ad5fa 5cba8432 c52d9f6d 791d3fcc f5b1cc32 3d6075f5 5ef4c19a 53164dcf 2f1a5ea4 d47ebc6f 7a076464 66fa0c1a b8e47a22 3d87a654 faa2ab12 0e9fbf65 f854368c df256b93 9f1da643 8c6a7db9 51ddbd95 c7846e9e" }, "diy-117": { "about": "5_diy1_a=mgllan/S1 5_diy2_a=mgllan/S2 5_diy1_a=mgllan/S3 5_diy2_b=mgllan/S1 5_diy1_b=mgllan/S2 5_diy2_b=mgllan/S3 5_diy1_b=mgllan/S1/002_mgllan 5_diy2_b=mgllan/S2/002_mgllan 5_diy1_b=mgllan/S3/002_mgllan 5_diy2_b=mgllan/S1/003_mgllan 5_diy1_b=mgllan/S2/003_mgllan 5_diy2_b=mgllan/S3/003_mgllan", @@ -5973,32 +5974,32 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 82, + "killed": 68, "total": 147, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 156, + "rngDraws": 118, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":82,"total":147,"perfect":false,"leaks":65,"leaksUncounted":0,"coins":0,"dmg":535000,"bossDmg":0,"heal":0,"deaths":14,"layerGains":{}}}, + "players": {"p1":{"killed":68,"total":147,"perfect":false,"leaks":79,"leaksUncounted":0,"coins":0,"dmg":425402,"bossDmg":0,"heal":0,"deaths":16,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_6_diy1_a",2,null,0,0,2,1,4910,2604,0,72,1], - ["p1",2,"op","chess_char_6_diy2_b",2,"uniequip_002_acfend",1591.36,1,4,3,16976,1840,0,131,2], - ["p1",3,"op","chess_char_5_diy1_a",0,null,558.8,1,168,7,36184,3171,0,123,3], - ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_002_sharp2",0,0,156,22,118286,4748,0,108,2], - ["p1",5,"op","chess_char_6_diy1_a",2,null,1529,1,170,7,59160,3058,0,57,3], - ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_acpion",1904,1,171,26,246360,3808,0,67,5], - ["p1",7,"op","chess_char_5_diy1_a",2,null,1154,1,169,0,10943,6924,0,106,0], + ["p1",1,"op","chess_char_6_diy1_a",2,null,0,0,2,1,6827,2604,0,80,1], + ["p1",2,"op","chess_char_6_diy2_b",2,"uniequip_002_acfend",2085.04,1,4,2,14361,1346,0,132,2], + ["p1",3,"op","chess_char_5_diy1_a",0,null,0,0,166,4,22225,3730,0,92,2], + ["p1",4,"op","chess_char_5_diy2_b",0,"uniequip_002_sharp2",0,0,156,16,106408,4748,0,99,2], + ["p1",5,"op","chess_char_6_diy1_a",2,null,1529,1,172,14,44128,3058,0,45,4], + ["p1",6,"op","chess_char_6_diy2_b",2,"uniequip_002_acpion",1904,1,171,24,182563,3808,0,54,4], + ["p1",7,"op","chess_char_5_diy1_a",2,null,1154,1,170,1,6563,8078,0,80,0], ["p1",8,"op","chess_char_5_diy2_b",2,"uniequip_002_acspec",1448,1,1,0,0,0,0,0,0], ["p1",9,"op","chess_char_6_diy1_a",2,null,2638,1,3,0,0,0,0,0,0], ["p1",10,"op","chess_char_6_diy2_b",2,"uniequip_002_acguad",3531,1,5,0,0,0,0,0,0], - ["p1",11,"op","chess_char_5_diy1_a",2,null,1160,1,9,0,17442,0,0,108,2], - ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_002_acsupo",1430,1,10,1,24739,0,0,120,2] + ["p1",11,"op","chess_char_5_diy1_a",2,null,1160,1,9,0,17771,0,0,110,2], + ["p1",12,"op","chess_char_5_diy2_b",2,"uniequip_002_acsupo",1430,1,10,1,24555,0,0,122,2] ], - "enemies": {"enemy_1166_dusbr_2":[39,26,13,738,122423],"enemy_1169_duphlx_2":[57,32,24,1917,223147],"enemy_1170_dushld_2":[51,24,26,23498,309235]}, - "hooks": [1,171,6900,1118,1118,5218,5352,0,96,159,20,25,0,27831,6343,80,147,63,1,96,0,0,0], - "events": {"atk":1218,"deploy":24,"die":96,"dmg":5328,"engage":9,"fx":206,"leak":63,"skill":55,"spawn":159,"status":791}, - "fx": {"aoe":90,"displace":5,"dodge":6,"dp":41,"slash":64}, - "snaps": "026aecb9 bf923d80 209eff84 ab04263b 283e4a33 0b615c4a 01af549d 0ba0a503 12568b8f 4739be63 1d43c70e faa1f476 bf08e2ce 1a762b2b 2cd921eb 71c5feef 45c1991f fdb17887 2f8eaf96 3d489e61 c993e921 1d3f175c 06948658" + "enemies": {"enemy_1166_dusbr_2":[39,22,17,381,107418],"enemy_1169_duphlx_2":[57,28,29,3024,195834],"enemy_1170_dushld_2":[51,18,32,23967,242247]}, + "hooks": [1,172,6900,1024,1024,4900,5024,0,84,162,19,26,0,27771,5929,73,147,78,1,84,0,0,0], + "events": {"atk":1087,"deploy":25,"die":84,"dmg":4988,"engage":9,"fx":207,"leak":78,"skill":56,"spawn":159,"status":804}, + "fx": {"aoe":90,"displace":10,"dodge":4,"dp":46,"slash":57}, + "snaps": "9fc009d3 b712fd02 dd9e6536 ad3afaa9 5e080f95 8c342958 c6b9d04c 6a6288c5 e4728d4d bdcd36f8 1d15491e 3af989d1 db86f390 2b31bb23 3d3a3c2a 09c7eba6 bfb4bdf6 ca3579cc 1af3c782 ec939b4e 4cc81145 6ef95d94 e8fb67c3" }, "diy-138": { "about": "6_diy1_a=sharp2 6_diy2_b=sharp2 6_diy1_a=acspec 6_diy2_b=acspec 6_diy1_a=acnipe 6_diy2_b=acnipe 6_diy1_a=accast 6_diy2_b=accast 6_diy1_a=acmedc 6_diy2_b=acmedc 6_diy1_a=acsupo 6_diy2_b=acsupo", diff --git a/test/golden/fields.json b/test/golden/fields.json index 2c55f091..d48ca3e4 100644 --- a/test/golden/fields.json +++ b/test/golden/fields.json @@ -23,36 +23,36 @@ "killed": 20, "total": 20, "unspawned": 0, - "bossHpLeft": 930055, - "rngDraws": 428, + "bossHpLeft": 757974, + "rngDraws": 450, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1664254,"bossDmg":1264461,"heal":17297,"deaths":2,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1712542,"bossDmg":1405484,"heal":69070,"deaths":0,"layerGains":{}} + "p1": {"killed":20,"total":20,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1829160,"bossDmg":1406273,"heal":22241,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1719718,"bossDmg":1435752,"heal":63732,"deaths":0,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",2193.8,1,13,0,0,12000,12744,0,1], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,15,0,0,3666,1626,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",2431.19,1,17,2,62485,2404,439,8,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",496.22,1,7,3,298927,1948,0,72,0], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1058.53,1,9,0,0,2954,0,0,0], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,19,2,96978,11988,1604,0,4], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,5,673023,1299,0,89,10], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,1670,0,0,0], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,2,345088,1576,333,51,51], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",0,0,21,1,112724,4407,217,199,5], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",1317.39,1,13,0,0,14130,13618,0,1], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,15,0,0,3434,1310,0,0], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,17,3,36610,2365,439,5,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",764.36,1,7,4,473435,974,0,71,1], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",1933,1,9,0,0,754,0,0,0], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1219.11,1,19,0,105231,11005,2072,0,5], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1442,1,24,8,659439,0,0,99,10], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,11,0,0,0,0,0,0], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,26,1,355289,2720,1289,51,51], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",925.86,1,21,1,122388,6297,3048,213,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,28,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,22,0,11014,1990,0,10,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,8,847854,24671,0,191,3], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,16,1,75440,2505,0,0,1], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",988.63,1,18,0,0,1530,0,0,0], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,2366,0,134,4], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",2886.8,1,8,0,0,0,0,0,0], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1329,1,10,0,0,6419,0,0,0], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,1254,7882,12,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2052,0,204,4], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,12,1,289368,3120,0,0,3], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1279.15,1,27,0,0,6638,61188,51,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4032,1,33,9,846708,23488,0,191,3], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2612.11,1,16,1,75440,1160,0,0,1], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",551.11,1,18,0,0,2133,0,0,0], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",3593,1,23,0,231615,1808,0,134,4], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",1743.26,1,8,0,0,3233,0,0,0], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",1395.45,1,10,0,7542,9717,133,0,0], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2753.55,1,20,0,0,1044,6778,10,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,254960,2921,0,204,4], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",464.73,1,12,0,290148,4047,0,0,3], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,27,0,0,2964,56821,49,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], @@ -60,14 +60,14 @@ ["-","~5","device","trap_1105_accrate",null,null,100,1,5,0,0,0,0,0,null], ["-","~6","device","trap_1105_accrate",null,null,100,1,6,0,0,0,0,0,null], ["p2","~1","token","token_10019_nearl2_sword",null,null,8280,0,38,0,3329,0,0,25,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1989.96,0,39,1,6710,0,0,12,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1989.96,0,39,0,6710,0,0,12,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,0,0,49,0,4603,2788,336,7,1], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,51,0,0,0,0,0,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,55,0,3329,0,0,25,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,58,0,40618,0,0,53,1], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,61,1,5370,0,0,12,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1442,1,58,0,39947,928,130,53,1], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,125.89,0,61,0,7780,1864,0,12,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,138,0,62,0,0,0,0,0,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,65,0,3329,0,0,25,null], + ["p2","~3","token","token_10019_nearl2_sword",null,null,6127.12,0,65,0,3329,593,0,25,null], ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1442,0,67,0,6040,0,0,12,null], ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,69,0,0,0,0,0,null], ["p1","~6","token","token_10030_mlyss_wtrman",null,null,1442,1,71,0,674,0,0,4,null], @@ -75,15 +75,15 @@ ], "enemies": { "enemy_1005_yokai": [4,4,0,0,13759], - "enemy_1006_shield_2": [14,14,0,25620,601974], + "enemy_1006_shield_2": [14,14,0,26659,601974], "enemy_1061_zomshd": [2,2,0,3356,90856], - "enemy_9013_acstmk": [1,0,0,45199,2669945], - "enemy_9016_acstmr": [8,7,0,0,261] + "enemy_9013_acstmk": [1,0,0,46873,2842026], + "enemy_9016_acstmr": [8,7,0,0,262] }, - "hooks": [1,71,6000,1298,1298,3141,3524,3308,31,42,93,89,0,38997,2827,15,29,0,1,31,0,20,0], - "events": {"atk":1633,"deploy":36,"die":42,"dmg":3245,"engage":19,"fx":639,"heal":411,"skill":182,"spawn":70,"status":697}, - "fx": {"beam":54,"blink":1,"burst":20,"copy":3,"dp":5,"drone":335,"droneLock":17,"drones":3,"finale":1,"firewall":1,"firewallBlock":1,"garrisonGrant":1,"lightning":142,"link":1,"radiantSword":4,"shell":8,"slash":1,"snow":5,"split":4,"storm":10,"summon":8,"talent":4,"tide":4,"wanted":6}, - "snaps": "4b23de24 2521ca6e b1278a47 3ce8e1c1 9955e54c d1c202f8 734b5df6 19e71eda 23a4e796 b120b32c 911e52d6 83c8f372 cf64b071 c6df7c08 aa974f98 c667ccf5 b178bec7 3212121f 02280327 6eb2e18c" + "hooks": [1,71,6000,1315,1315,3203,3599,4686,29,40,95,90,9,40549,2884,15,29,0,1,29,0,22,0], + "events": {"atk":1651,"deploy":36,"die":40,"dmg":3315,"engage":19,"fx":656,"heal":392,"skill":185,"spawn":70,"status":709}, + "fx": {"airstrike":4,"beam":54,"blink":1,"bombard":9,"bombardShell":9,"burst":22,"copy":3,"dp":5,"drone":335,"droneLock":17,"drones":3,"finale":1,"firewall":1,"garrisonGrant":1,"lightning":125,"link":1,"lock":9,"radiantSword":4,"shell":8,"slash":1,"snow":5,"split":4,"storm":10,"summon":8,"talent":4,"tide":5,"wanted":7}, + "snaps": "4b23de24 b826ead4 8478a42a 5f198411 d8f2bcc3 2aabeecc d9a8f12b 5625089b 88c141c0 9d5256e8 fa991756 48716941 5922e4cb 8cdc8c3e e587968c b4e9f94f 173fd436 7eae1ec2 3daeae7e 9e00b42a" }, "boss-boss_1-solo": { "about": "假想敌:胄 solo pool 1800000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -143,42 +143,75 @@ "killed": 8, "total": 8, "unspawned": 0, - "bossHpLeft": 5319463, - "rngDraws": 817, + "bossHpLeft": 5311560, + "rngDraws": 839, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":620083,"bossDmg":312903,"heal":17142,"deaths":0,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":922173,"bossDmg":364810,"heal":7380,"deaths":2,"layerGains":{}} + "p1": {"killed":8,"total":8,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":612448,"bossDmg":313008,"heal":16689,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":937710,"bossDmg":372608,"heal":6945,"deaths":2,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,9,0,183438,1132,0,53,3], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,11,0,3903,11998,298,35,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,7,0,27686,727,209,53,15], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,13,0,11328,0,0,66,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,1,0,79857,0,168,33,9], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,11,0,3903,11319,305,35,1], + ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,7,0,30509,953,294,58,17], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,13,0,10026,0,0,66,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,1,0,79315,0,168,32,8], ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",2418.5,1,3,0,78933,0,0,44,4], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",2769.3,1,17,1,26033,0,0,43,2], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,19,2,175750,1748,1748,56,19], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,5,0,0,0,14663,21,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,15,0,33154,1383,55,36,2], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,19,2,168011,1748,1748,55,18], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,5,0,0,0,14119,21,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,15,0,32280,1383,55,35,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",836.62,1,12,0,0,3919,1500,0,2], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",3545.85,1,51,2,253580,496,458,287,8], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2099.31,1,8,0,4500,1149,865,24,8], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",2671.35,1,52,1,112443,6746,1602,147,13], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",1942.91,1,10,0,62061,1270,435,54,3], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,2,1,300913,0,0,181,3], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",2671.35,1,52,1,112288,6746,1602,147,13], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,10,0,62072,0,0,54,3], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,2,1,303642,0,0,181,3], ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,4,0,0,0,0,0,0], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",1418.27,1,18,1,69028,3331,2517,58,3], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,40,0,44456,1991,2,63,18], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,75192,0,0,45,14], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1626,1,6,0,88144,0,0,57,14], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], - "enemies": {"enemy_1005_yokai_2":[6,6,0,3179,62190],"enemy_1430_lrrook":[2,2,0,0,802449],"enemy_9017_achunt":[2,0,0,32709,680537]}, - "hooks": [1,50,6000,1298,1311,2767,2814,5084,11,26,131,125,21,35553,970,0,10,0,1,11,0,13,0], - "events": {"atk":1328,"deploy":40,"die":26,"dmg":2806,"engage":17,"fx":610,"heal":43,"skill":256,"spawn":32,"status":495}, - "fx": {"aoe":37,"appear":2,"blink":16,"burst":13,"catShield":1,"charge":8,"counter":21,"crit":94,"dilemma":3,"disappear":2,"explosion":14,"frostNova":18,"garrisonGrant":1,"iceSpike":39,"overclock":2,"pull":3,"quadShot":2,"ripple":14,"sentry":6,"sermon":1,"shadowWeave":11,"shield":6,"soul":5,"sp":12,"stealth":8,"swordRain":96,"swordStorm":13,"tornado":3,"tornadoPulse":15,"weightless":4,"zone":140}, - "snaps": "7917cfe4 ec53e8ac 09d8b201 5b976666 fb352402 e042d46d af8197d8 d6f5354b cc8fd3cc 2d7692d5 247523f6 8beb10cb 4ad72128 84d7a8da 2885a2e0 5db4bf51 3b9873b7 2f4ed228 8a9ddb6f 025dc40c" + "enemies": {"enemy_1005_yokai_2":[6,6,0,3179,62190],"enemy_1430_lrrook":[2,2,0,0,802449],"enemy_9017_achunt":[2,0,0,30987,688440]}, + "hooks": [1,50,6000,1312,1325,2789,2834,4850,11,26,131,125,21,35636,978,0,10,0,1,11,0,13,1], + "events": {"atk":1342,"deploy":40,"die":26,"dmg":2826,"engage":17,"fx":602,"heal":43,"skill":256,"spawn":32,"status":489}, + "fx": { + "aoe": 38, + "appear": 2, + "blink": 16, + "burst": 13, + "catShield": 1, + "charge": 8, + "counter": 21, + "crit": 88, + "dilemma": 3, + "disappear": 2, + "dodge": 1, + "explosion": 14, + "frostNova": 18, + "garrisonGrant": 1, + "iceSpike": 39, + "overclock": 2, + "pull": 3, + "quadShot": 2, + "ripple": 13, + "sentry": 6, + "sermon": 1, + "shadowWeave": 11, + "shield": 6, + "soul": 5, + "sp": 11, + "stealth": 8, + "swordRain": 96, + "swordStorm": 13, + "tornado": 3, + "tornadoPulse": 15, + "weightless": 4, + "zone": 138 + }, + "snaps": "7917cfe4 ec53e8ac 09d8b201 823345e1 5d4f2a95 9efdd7ee 56e0addd 78c7726c 4ee3695b 20aee5b5 ba3311c0 d4d127c9 0c500cac d842272b 4cbf4a87 2525db60 e8039c1e 209c57b0 af85310c 92ca4257" }, "boss-boss_2-solo": { "about": "假想敌:铳 solo pool 3000000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -226,57 +259,57 @@ "round": 14, "seed": 1428555614, "waveId": "act1autochess_h07_03", - "time": 191.63, - "ticks": 5749, + "time": 191.33, + "ticks": 5740, "reason": "cleared", "killed": 19, "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1401, + "rngDraws": 1408, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1610484,"bossDmg":1496562,"heal":5599,"deaths":4,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2573949,"bossDmg":2503438,"heal":42751,"deaths":2,"layerGains":{}} + "p1": {"killed":19,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1598736,"bossDmg":1477507,"heal":4950,"deaths":4,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2585697,"bossDmg":2522493,"heal":40534,"deaths":3,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2855,0,1], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",3700,1,7,0,0,0,2673,0,1], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",2939,1,11,0,0,0,0,0,0], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,1,39,2533,410,39,1], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2131.5,1,13,2,920672,4223,452,59,8], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",465.37,1,17,1,347176,7176,595,62,3], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,61,1,26512,14945,799,0,3], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,65,2,177434,7516,464,46,3], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,0,46,0,25,21,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,2,52,0,0,13,13], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,95437,0,0,193,5], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3101,1,9,1,43,3444,505,43,1], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1745.65,1,13,2,914910,4480,538,59,8], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",252.98,1,17,4,348597,8106,407,62,3], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,62,0,26511,12270,434,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,66,2,169698,7389,372,48,3], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",1668,1,5,1,32,0,20,15,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1322,1,15,0,38,0,0,10,10], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",1893,1,23,0,95529,0,0,193,5], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,26,0,0,0,0,0,null], - ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,460132,0,0,197,3], - ["p2",13,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,12,1,29,279,0,4,2], - ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,57,0,14,3527,840,14,1], + ["p2",12,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",3801.6,1,31,1,462835,0,0,197,3], + ["p2",13,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",2767,1,60,0,25,2767,0,7,1], + ["p2",14,"op","chess_char_5_01_b",1,"uniequip_002_excu2",2314,1,57,0,9,3172,480,9,1], ["p2",15,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6287.75,1,32,0,315064,2551,0,89,3], - ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,7,208088,3717,591,71,4], - ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,1,1385539,6026,1856,342,6], - ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,5233,59,1], - ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,76066,1525,0,136,4], - ["p2",20,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,59,1,104821,1541,0,18,2], - ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2354,34231,62,2], + ["p2",16,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",3175.48,1,16,7,206450,2551,646,71,4], + ["p2",17,"op","chess_char_6_13_b",1,"uniequip_002_angel2",2436.5,1,20,1,1392349,6026,1618,341,6], + ["p2",18,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2088.9,1,22,0,0,3550,4850,56,1], + ["p2",19,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1582.9,1,25,0,76316,1525,0,135,4], + ["p2",20,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",1541,1,59,0,103614,1541,0,19,2], + ["p2",21,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",1662.1,1,18,0,0,2296,32939,56,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], ["-","~4","device","trap_1105_accrate",null,null,100,1,4,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43104,0,0,86,1], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,1586.2,1,24,0,43364,0,0,86,1], ["p2","~1","token","token_10019_nearl2_sword",null,null,8280,0,41,0,9679,0,0,0,null], ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1989.96,0,42,0,3,0,0,3,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1586.2,0,50,0,2,0,0,2,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1586.2,0,50,0,4,0,0,4,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6600,0,51,0,9679,0,0,0,null], - ["p1","~1","token","token_10040_siege2_vlion",null,null,4717.87,0,54,0,5,729,0,5,null], - ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,55,0,2,0,0,2,null], + ["p1","~1","token","token_10040_siege2_vlion",null,null,4834.05,0,54,0,6,686,0,6,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,5520,0,55,1,1,0,0,1,null], ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1989.96,0,56,0,0,0,0,0,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,60,0,4839,0,0,0,null], - ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,62,0,0,0,0,0,null], - ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1586.2,0,64,0,0,0,0,0,null] + ["p2","~3","token","token_10019_nearl2_sword",null,null,6600,0,61,0,9679,0,0,0,null], + ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,63,0,0,0,0,0,null], + ["p1","~5","token","token_10030_mlyss_wtrman",null,null,1586.2,0,65,0,0,0,0,0,null] ], "enemies": { "enemy_1197_sfshu_2": [2,2,0,0,28809], @@ -284,13 +317,13 @@ "enemy_1209_sfden_2": [2,2,0,0,154793], "enemy_1210_msfden_2": [2,2,0,0,386], "enemy_9021_acduml": [1,1,0,0,4000000], - "enemy_9023_acdums": [9,7,0,51490,343] + "enemy_9023_acdums": [9,7,0,51573,343] }, - "hooks": [1,65,5749,1527,1527,4018,4874,2597,26,40,68,63,356,42385,2036,2,22,0,1,25,0,9,2], - "events": {"atk":1811,"deploy":39,"die":40,"dmg":4585,"engage":20,"fx":1238,"heal":444,"skill":131,"spawn":59,"status":885}, + "hooks": [1,66,5740,1515,1515,4047,4898,2384,27,41,64,59,352,41270,2004,3,22,0,1,26,0,9,0], + "events": {"atk":1799,"deploy":40,"die":41,"dmg":4608,"engage":20,"fx":1249,"heal":429,"skill":123,"spawn":59,"status":880}, "fx": { - "airstrike": 123, - "appear": 1, + "airstrike": 131, + "appear": 2, "beam": 11, "blink": 2, "bombard": 69, @@ -298,27 +331,25 @@ "buff": 3, "burst": 9, "copy": 1, - "disappear": 1, - "displace": 2, - "dodge": 2, + "disappear": 2, + "displace": 1, "dp": 5, "drone": 208, "droneLock": 18, "drones": 2, - "explode": 427, - "extraAttack": 3, - "finale": 2, + "explode": 446, + "finale": 1, "firewall": 1, "garrisonGrant": 1, - "lightning": 42, + "lightning": 41, "link": 7, "lock": 69, "lure": 3, - "phase": 40, + "phase": 43, "radiantSword": 3, - "scorchBurst": 2, - "slash": 22, - "snow": 47, + "scorchBurst": 1, + "slash": 11, + "snow": 46, "split": 4, "steal": 6, "storm": 3, @@ -329,7 +360,7 @@ "tide": 3, "wanted": 1 }, - "snaps": "8c6eb9d3 f5f9a5b4 deebc1f0 9a9b3a98 117b4fbd d4bf2220 5738ced2 ee5b78e0 e1e68e22 1ab80972 15e77ea7 92e89c14 df05b8c1 e977bd21 25c98814 2ba5d134 84f9daaf 76dfe6e9 ae7de71a 645a1fbc" + "snaps": "8c6eb9d3 f5f9a5b4 160c191e 00bb0683 dfed73aa 594d60ee 77b49060 2fdffb91 5dbd4597 d841c866 8db47d4e 3d40713d 38282749 d71e8b73 02a1d069 a8056feb 06679af5 803f508c f9ba3dfb aadf1d1d" }, "boss-boss_3-solo": { "about": "假想敌:管 solo pool 2000000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -394,51 +425,51 @@ "time": 200, "ticks": 6000, "reason": "forced", - "killed": 13, + "killed": 11, "total": 14, "unspawned": 0, - "bossHpLeft": 7389717, - "rngDraws": 586, + "bossHpLeft": 7409377, + "rngDraws": 605, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":13,"total":14,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1121725,"bossDmg":365686,"heal":31791,"deaths":17,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":942104,"bossDmg":644596,"heal":5446,"deaths":19,"layerGains":{}} + "p1": {"killed":11,"total":14,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":979196,"bossDmg":339107,"heal":30297,"deaths":17,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":0,"dmg":978164,"bossDmg":651515,"heal":4827,"deaths":19,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",705.31,1,59,3,132384,7528,420,23,1], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1255.26,1,63,0,15112,8720,1117,13,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,54,1,70195,14740,3411,17,15], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,57,1,18627,9568,132,10,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",792.86,1,58,4,431347,3267,11818,110,16], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,56,0,83715,10134,655,36,4], - ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",0,0,19,1,118029,4097,137,153,4], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1058.29,1,60,1,138900,2559,395,35,13], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,51,0,0,3684,13571,27,2], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,15,0,113416,4163,137,53,2], - ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2188.83,1,64,0,0,7381,183,0,1], - ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",2149,1,61,0,191635,6914,30,182,7], - ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,44,1,26806,5085,212,33,9], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,55,0,101816,10219,318,151,6], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,52,1,214376,6123,57,43,4], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,53,0,146704,3584,462,127,2], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,14,0,0,3711,310,0,0], - ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,20,0,64191,4894,1615,74,4], - ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,4,0,68165,4105,2116,67,20], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1105.8,1,62,0,128410,2626,143,59,13], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",705.31,1,59,4,131873,7528,420,24,1], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",1900.22,1,58,0,17700,9171,1117,15,2], + ["p1",3,"op","chess_char_5_14_b",1,"none",0,0,49,0,44334,13392,2872,19,9], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,56,0,16983,9690,38,10,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",792.86,1,61,4,373855,3374,10736,110,15], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,55,1,81328,10164,552,32,4], + ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",0,0,19,0,109465,4097,137,150,4], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1058.29,1,63,1,97795,2559,395,36,12], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",0,0,52,0,0,4335,13944,32,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,68,0,105862,4163,87,50,2], + ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2188.83,1,66,0,377,7381,183,1,1], + ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",2149,1,64,0,189683,6159,30,182,7], + ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",1732.75,1,62,0,29484,5607,83,37,9], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,57,0,104682,11074,310,154,6], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,53,0,211676,5907,57,42,4], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,54,0,148737,3584,462,128,2], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,14,0,0,3172,310,0,0], + ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,67,0,64191,5877,2900,74,5], + ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1501.32,1,60,1,69313,2825,348,69,20], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1105.8,1,65,0,160021,2518,143,71,13], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], - "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,9,1,13167,852934],"enemy_1521_dslily":[1,0,0,100334,1010283]}, - "hooks": [1,62,6000,1140,1226,3016,3146,6060,49,52,125,124,13,34922,1209,12,15,1,1,50,0,36,1], - "events": {"atk":1362,"deploy":47,"die":51,"dmg":3132,"engage":17,"fx":811,"heal":212,"leak":1,"skill":249,"spawn":37,"status":979}, + "enemies": {"enemy_1010_demon":[4,4,0,2399,200612],"enemy_1438_dspred":[10,7,3,17928,766125],"enemy_1521_dslily":[1,0,0,95770,990623]}, + "hooks": [1,66,6000,1164,1243,2884,3011,5758,47,52,120,117,15,33717,1094,14,15,3,1,50,0,31,1], + "events": {"atk":1392,"deploy":51,"die":49,"dmg":2997,"engage":18,"fx":781,"heal":197,"leak":3,"skill":237,"spawn":37,"status":944}, "fx": { - "aoe": 31, + "aoe": 24, "appear": 7, "blink": 2, - "burst": 36, + "burst": 31, "charge": 9, - "counter": 13, - "crit": 56, + "counter": 15, + "crit": 62, "dilemma": 4, "disappear": 7, "displace": 28, @@ -453,22 +484,22 @@ "ripple": 14, "rockfall": 18, "sentry": 3, - "sermon": 1, + "sermon": 2, "shadowWeave": 4, "shield": 5, - "soul": 6, - "sp": 14, + "soul": 4, + "sp": 6, "stealth": 7, - "swordRain": 33, + "swordRain": 35, "swordStorm": 6, "tentacle": 6, "tide": 5, - "tornado": 4, + "tornado": 5, "tornadoPulse": 20, "weightless": 4, - "zone": 307 + "zone": 287 }, - "snaps": "e1b26d39 fb345f9c de90aa26 134f050b 934380b5 ef784059 46ed635c 2564cdaf cbc74ae8 40f5a140 960208b3 648097b6 e77fcdaf 8c417f12 aa831fd9 415c03fb dd9d5f58 01e5ab8b c2cc05e5 321d35e6" + "snaps": "c2a7999d e9680942 e3840c7b 42c88c80 94a6e7f9 e3adc041 fb0ab7c9 a417daa3 276e9da9 3fe787bd efdfd5a6 be8d612e 6d73c0e0 c042c02d 8eb02031 e24fb236 cdcefb5e 80d6b414 6b9e081e 0da412b8" }, "boss-boss_4-solo": { "about": "盐风主教昆图斯 solo pool 4200000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -518,90 +549,89 @@ "round": 14, "seed": 2302764647, "waveId": "act2autochess_h07_05", - "time": 135.8, - "ticks": 4074, + "time": 133.67, + "ticks": 4010, "reason": "cleared", "killed": 21, "total": 21, "unspawned": 0, "bossHpLeft": 0, - "rngDraws": 1020, + "rngDraws": 1068, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1410782,"bossDmg":978706,"heal":22540,"deaths":2,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1077978,"bossDmg":581294,"heal":66970,"deaths":2,"layerGains":{}} + "p1": {"killed":21,"total":21,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1395002,"bossDmg":992386,"heal":27672,"deaths":0,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":1093758,"bossDmg":567614,"heal":66447,"deaths":1,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,72285,6247,12727,25,2], - ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3967.06,1,12,1,89789,3091,0,21,2], - ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",4279.38,1,14,1,99557,8853,0,41,2], - ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",0,0,1,2,508756,1793,0,33,3], - ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,0,127244,1370,0,27,2], - ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",0,0,3,0,8834,4970,44,0,2], - ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1720.49,1,18,2,233221,4438,453,17,7], - ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,59399,3150,8768,39,2], - ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1414.51,1,20,4,132261,5021,548,23,23], - ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2612.34,1,9,1,57943,6501,0,94,3], + ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",8066,1,7,0,83881,6608,12367,25,2], + ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",4055.82,1,12,1,89789,2931,42,21,2], + ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",4279.38,1,14,0,93051,8699,19,39,2], + ["p1",4,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",2028.6,1,1,6,488163,2222,958,42,4], + ["p1",5,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",2667.54,1,16,1,105530,1370,0,25,2], + ["p1",6,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",2205.24,1,3,0,19226,8775,554,0,3], + ["p1",7,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",1989.96,1,18,2,217799,4129,453,21,7], + ["p1",8,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2301.84,1,5,0,69010,3091,11264,39,2], + ["p1",9,"op","chess_char_6_09_b",0,"uniequip_002_cello",1824.36,1,20,2,130257,4575,548,22,22], + ["p1",10,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2612.34,1,9,0,75493,4481,460,93,3], ["p1",11,"token","token_10017_skadi2_dedant",null,null,138,0,22,0,0,0,0,0,null], ["p1",12,"token","token_10030_mlyss_wtrman",null,null,0,0,10,0,12026,1668,0,21,1], - ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4029.61,1,68,5,330952,10300,0,98,7], - ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,1,129166,4303,0,24,3], - ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,15,0,15514,3341,900,15,1], - ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",5955.52,1,65,5,228364,16542,0,59,3], - ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,0,172140,1887,1479,25,2], - ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4561.13,1,17,0,57784,6910,2537,8,1], - ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2298,8600,17,1], - ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,28828,1236,0,37,3], - ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,67,0,91765,1541,0,11,2], - ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,6239,53455,36,2], + ["p2",13,"op","chess_char_6_15_b",2,"uniequip_002_qiubai",4677.12,1,69,5,337357,8718,0,94,7], + ["p2",14,"op","chess_char_6_19_b",2,"uniequip_002_blkkgt",3818.46,1,13,0,138400,4725,0,30,3], + ["p2",15,"op","chess_char_5_01_b",1,"uniequip_002_excu2",836.8,1,15,0,33928,3917,1672,28,1], + ["p2",16,"op","chess_char_6_17_b",2,"uniequip_002_nearl2",6547.48,1,67,2,194567,12526,0,53,3], + ["p2",17,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",6148.88,1,2,3,183358,2788,2379,25,2], + ["p2",18,"op","chess_char_6_13_b",1,"uniequip_002_angel2",4561.13,1,17,0,74662,7836,3907,8,1], + ["p2",19,"op","chess_char_6_14_b",2,"uniequip_002_lumen",2620.62,1,4,0,0,2298,9840,19,1], + ["p2",20,"op","chess_char_6_16_b",2,"uniequip_002_halo2",1985.82,1,19,0,26615,1236,0,35,3], + ["p2",21,"op","chess_char_6_18_b",2,"uniequip_002_whitw2",2126.58,1,66,0,88959,1541,0,12,2], + ["p2",22,"op","chess_char_6_20_b",2,"uniequip_002_agoat2",2085.18,1,21,0,0,4690,48648,35,2], ["p2","~1","token","token_10019_nearl2_sword",null,null,1907.57,0,32,0,8360,6372,0,11,null], ["p1","~1","token","token_10030_mlyss_wtrman",null,null,2301.84,0,36,0,5082,0,0,11,null], ["p1","~1","token","token_10040_siege2_vlion",null,null,2760.11,0,39,0,0,1446,0,0,null], ["p2","~2","token","token_10019_nearl2_sword",null,null,6171.28,0,47,0,7553,429,0,0,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,49,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,348.12,1,57,0,2959,1622,0,7,1], - ["p1","~2","token","token_10040_siege2_vlion",null,null,3064.4,1,63,0,1425,2456,0,3,null], - ["p2","~3","token","token_10019_nearl2_sword",null,null,6070.77,1,66,0,7553,2209,0,0,null] + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1820.54,1,57,0,4744,1079,1008,8,1], + ["p2","~3","token","token_10019_nearl2_sword",null,null,7543.59,0,61,0,0,736,0,0,null], + ["p1","~2","token","token_10040_siege2_vlion",null,null,3148,1,63,0,950,2372,0,2,null] ], "enemies": { "enemy_1010_demon_2": [2,2,0,1410,128995], "enemy_2009_csaudc": [4,4,0,2459,137594], - "enemy_2010_csdcr": [2,2,0,3301,103196], - "enemy_2016_csphtm": [2,2,0,97228,1560000], - "enemy_2017_csphts": [13,13,0,2929,558976] + "enemy_2010_csdcr": [2,2,0,2819,103196], + "enemy_2016_csphtm": [2,2,0,89739,1560000], + "enemy_2017_csphts": [13,13,0,3912,558976] }, - "hooks": [1,67,4074,776,776,2040,2415,1643,28,47,75,62,40,29419,1290,39,23,0,1,26,0,18,90], - "events": {"atk":976,"deploy":44,"die":47,"dmg":2239,"engage":22,"fx":649,"heal":431,"skill":137,"spawn":53,"status":578}, + "hooks": [1,67,4010,792,792,2078,2476,3029,25,45,76,63,55,30831,1272,36,23,0,1,25,0,18,82], + "events": {"atk":994,"deploy":44,"die":45,"dmg":2280,"engage":22,"fx":647,"heal":431,"skill":139,"spawn":53,"status":611}, "fx": { - "airstrike": 14, + "airstrike": 19, "blink": 26, - "bombard": 27, - "bombardShell": 27, + "bombard": 30, + "bombardShell": 31, "burst": 18, "cleanse": 1, "copy": 2, - "displace": 1, - "dodge": 90, + "dodge": 82, "dp": 3, - "drone": 132, - "droneLock": 9, + "drone": 126, + "droneLock": 6, "drones": 2, "emergency": 1, - "explode": 36, - "extraAttack": 5, + "explode": 35, + "extraAttack": 12, "finale": 3, "firewall": 2, "garrisonGrant": 1, - "lightning": 93, + "lightning": 81, "link": 4, - "lock": 27, + "lock": 36, "lure": 2, "palsy": 1, "radiantSword": 3, "scorchBurst": 2, - "shield": 9, - "slash": 29, - "snow": 28, + "shield": 10, + "slash": 28, + "snow": 27, "split": 1, "steal": 1, "storm": 7, @@ -610,10 +640,10 @@ "sunBurst": 6, "talent": 4, "telegraph": 2, - "tide": 2, - "wanted": 7 + "tide": 3, + "wanted": 8 }, - "snaps": "7db84769 7269bb14 debc6927 1fe57af1 cd893fd9 d8fe99d4 f5588465 b0dfe98b e63df0b4 a84335ab e6831e30 e366c853 d6fa0b19 c4ef1734" + "snaps": "7db84769 7269bb14 debc6927 1fe57af1 cd893fd9 4b9ffc29 a87b92f9 65adf128 79c69642 251697e3 c7f29e14 68a15c0e f27d78d6 6d478d9c" }, "boss-boss_5-solo": { "about": "卢西恩,“猩红血钻” solo pool 780000: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b", @@ -677,34 +707,34 @@ "killed": 4, "total": 6, "unspawned": 0, - "bossHpLeft": 7026894, + "bossHpLeft": 7017881, "rngDraws": 570, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":4,"total":6,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":870536,"bossDmg":436605,"heal":2876,"deaths":5,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1024201,"bossDmg":496501,"heal":580,"deaths":19,"layerGains":{}} + "p1": {"killed":4,"total":6,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":869760,"bossDmg":436648,"heal":2876,"deaths":5,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":1033990,"bossDmg":505471,"heal":580,"deaths":19,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,3,1,147578,0,0,30,2], ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",3537,1,1,0,0,0,0,0,0], ["p1",3,"op","chess_char_5_14_b",1,"none",2174,1,5,1,25423,0,0,0,10], ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",4654.6,1,11,1,4568,0,0,6,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,7,1,304158,0,551,64,13], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,13,0,179132,0,0,76,6], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,7,1,303339,0,551,64,13], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,13,0,179149,0,0,76,6], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,66,0,19506,1629,0,43,2], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,67,0,135181,3222,0,46,14], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,67,0,135206,3222,0,46,14], ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,65,0,2158,3220,2325,3,1], ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,9,0,52833,0,0,38,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,49,0,4798,9646,260,10,1], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",190.91,1,63,0,118842,15240,280,209,6], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",2383,1,6,0,0,0,0,0,0], ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",0,0,61,0,58463,13682,40,128,7], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,14,0,205560,0,0,117,6], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",2777.6,1,14,0,205534,0,0,117,6], ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,8,0,493990,0,0,140,2], ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,12,0,0,0,0,0,0], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,47,0,28737,2232,0,110,5], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,58,0,47100,5967,0,39,9], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,59,0,66710,4878,0,18,4], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,59,0,76526,4878,0,22,4], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], @@ -714,10 +744,10 @@ "enemy_10030_vtwand": [5,5,0,0,0], "enemy_10085_hllevi_2": [2,0,2,0,761019], "enemy_1010_demon": [4,4,0,12402,200612], - "enemy_9032_aclionk": [1,0,0,47314,933106] + "enemy_9032_aclionk": [1,0,0,47314,942119] }, - "hooks": [1,65,6000,1070,1084,2027,2040,359,41,45,91,88,0,30474,660,8,20,2,1,29,0,2,0], - "events": {"atk":1135,"deploy":45,"die":43,"dmg":1984,"engage":15,"fx":618,"heal":11,"leak":2,"skill":179,"spawn":42,"status":943}, + "hooks": [1,65,6000,1074,1088,2031,2044,359,41,45,91,88,0,30474,660,8,20,2,1,29,0,2,0], + "events": {"atk":1139,"deploy":45,"die":43,"dmg":1988,"engage":15,"fx":618,"heal":11,"leak":2,"skill":179,"spawn":42,"status":942}, "fx": { "aoe": 30, "appear": 4, @@ -753,7 +783,7 @@ "weightless": 6, "zone": 260 }, - "snaps": "309fe362 41288d71 fd8d9460 7a7c8681 b6779f32 439f7eae 2221291c 2e75d378 0e200ec0 90b1fcb1 0d7d6e44 6b1f9464 3e30289c 3d6605cf 83e091b6 da3e7520 e7050060 630dbf75 454d0bc9 762024fa" + "snaps": "8ef2441b ee06d28e 0f318fc5 8e4156fd 466da928 f03b4c62 86a1deba 85583d64 215fecf5 ccd39d46 4a08d997 af901ca4 08ece609 76458391 47fbc660 009a9bbe 48624b1a 42116d05 63ab6257 f103fa00" }, "boss-boss_6-solo": { "about": "阿利斯泰尔,帝国余晖 solo pool 3980000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -930,48 +960,48 @@ "killed": 16, "total": 18, "unspawned": 0, - "bossHpLeft": 12588751, + "bossHpLeft": 12585770, "rngDraws": 666, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":16,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2679155,"bossDmg":1550396,"heal":69312,"deaths":17,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":557256,"bossDmg":259791,"heal":9942,"deaths":25,"layerGains":{}} + "p1": {"killed":16,"total":18,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2677042,"bossDmg":1550396,"heal":69312,"deaths":17,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":0,"dmg":560253,"bossDmg":262771,"heal":9942,"deaths":25,"layerGains":{}} }, "units": [ ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",7814,1,90,1,335665,24097,655,20,3], ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",7074,1,87,0,4861,9337,790,6,1], - ["p1",3,"op","chess_char_5_14_b",1,"none",4348,1,71,3,352825,19433,5661,5,16], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,70,0,50770,29763,5820,84,2], + ["p1",3,"op","chess_char_5_14_b",1,"none",4348,1,71,2,352602,19433,5661,5,16], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",0,0,70,1,48055,29763,5829,84,2], ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",0,0,74,5,875533,5355,11555,71,9], ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",0,0,75,2,761501,15781,75,35,3], ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",3258,1,81,0,5686,3481,223,18,2], ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1855.46,1,80,2,211918,4930,342,30,11], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",3082.61,1,72,0,0,14900,44136,38,4], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,84,1,80395,10225,55,13,2], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",3082.61,1,72,0,0,14900,44126,38,4], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",0,0,84,2,81221,10225,55,13,2], ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,76,0,0,8420,223,0,2], ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,82,0,27913,14513,155,91,4], ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,91,0,6283,14796,2285,9,3], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,94,1,131821,14639,377,60,9], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,94,0,128154,14639,377,60,8], ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,69,1,120204,9521,430,31,3], ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",1561,1,89,0,14218,3122,0,84,2], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1432.92,1,86,0,77050,4157,348,76,3], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1432.92,1,86,0,76985,4157,348,76,3], ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",884.71,1,79,0,60016,5447,1868,33,3], ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",0,0,60,0,64038,7927,3949,72,22], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,61,0,55712,3559,307,21,4], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,61,0,62441,3559,307,25,4], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,21,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,22,0,0,0,0,0,null] ], "enemies": { - "enemy_10027_vtsk": [6,4,1,137810,1021857], + "enemy_10027_vtsk": [6,4,1,138057,1019681], "enemy_1005_yokai": [4,4,0,0,10699], "enemy_1229_darmy_2": [8,8,0,6104,294231], - "enemy_9013_acstmk_2": [1,0,0,63941,1811249], + "enemy_9013_acstmk_2": [1,0,0,63941,1814230], "enemy_9014_acstma": [6,5,0,5613,38754], - "enemy_9015_acstmb": [3,2,0,9935,83569], + "enemy_9015_acstmb": [3,2,0,9688,83569], "enemy_9016_acstmr": [8,7,0,0,150] }, - "hooks": [1,92,6000,900,906,2963,3149,7480,73,75,108,102,6,25062,1029,17,36,1,1,63,0,5,9], - "events": {"atk":1079,"deploy":56,"die":74,"dmg":3146,"engage":18,"fx":652,"heal":136,"leak":1,"skill":210,"spawn":58,"status":991}, + "hooks": [1,92,6000,904,910,2960,3146,7480,72,75,107,101,6,25061,1027,17,36,1,1,61,0,5,9], + "events": {"atk":1083,"deploy":56,"die":74,"dmg":3143,"engage":18,"fx":651,"heal":136,"leak":1,"skill":208,"spawn":58,"status":990}, "fx": { "aoe": 42, "appear": 7, @@ -1008,14 +1038,14 @@ "stealth": 4, "summon": 4, "swordRain": 103, - "swordStorm": 9, + "swordStorm": 8, "telegraph": 6, "tornado": 3, "tornadoPulse": 15, "weightless": 3, "zone": 180 }, - "snaps": "afaad0c6 cbb17d45 015cb153 1cb3711c ba26830d 673d0bd7 694349d6 f4d4034c f1fa580d d6ba5a30 1a2d7093 1bc8b57c f31772eb 796811d5 32ca89eb 77ec45ac 8867b743 29cdd0f0 abd9e3e2 b8cbf512" + "snaps": "cac31b2c d1e28667 87626189 11a56b43 640cf8cf 9a92be69 12784d9a 195ea951 99de9374 65451b7e 90846f89 9bcf64aa 0cf3dfb9 5737ca93 68f962d8 98c8303b e5af0a0e 3c947908 ce14aa80 61dc2e23" }, "hidden-boss_8-solo": { "about": "假想敌:胄 solo pool 7200000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", @@ -1196,13 +1226,13 @@ "killed": 3, "total": 3, "unspawned": 0, - "bossHpLeft": 1932951, + "bossHpLeft": 1932856, "rngDraws": 128, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":3,"total":3,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2753660,"bossDmg":867049,"heal":73158,"deaths":5,"layerGains":{}}}, + "players": {"p1":{"killed":3,"total":3,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":2753803,"bossDmg":867144,"heal":73158,"deaths":5,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,1,1,368359,8434,0,127,4], - ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,3,0,1122,3442,23540,40,35], + ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,3,0,1265,3442,23540,46,35], ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",11263.65,1,33,0,413261,29216,17173,39,5], ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3747,1,7,1,1380629,16819,16926,201,5], ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3448.92,1,9,0,128392,14229,3714,76,3], @@ -1218,15 +1248,15 @@ "enemy_10067_ftsjc": [1,1,0,1161,21565], "enemy_5601_entlec": [6,5,0,0,160038], "enemy_9007_acelem": [2,2,0,632,119439], - "enemy_9017_achunt_2": [1,0,0,32010,867049], - "enemy_9018_actrpa": [1,0,0,14160,440939], - "enemy_9019_actrpb": [1,0,0,19148,445744], - "enemy_9020_actrpc": [1,0,0,13881,698884] + "enemy_9017_achunt_2": [1,0,0,32010,867144], + "enemy_9018_actrpa": [1,0,0,14160,440951], + "enemy_9019_actrpb": [1,0,0,19148,445768], + "enemy_9020_actrpc": [1,0,0,13881,698896] }, - "hooks": [1,36,6000,870,870,3331,7966,7359,13,17,109,104,118,25510,1863,10,13,0,1,120,0,2,0], - "events": {"atk":1321,"deploy":23,"die":17,"dmg":7387,"engage":10,"fx":851,"heal":385,"skill":213,"spawn":25,"status":317}, + "hooks": [1,36,6000,876,876,3337,7978,7359,13,17,109,104,118,25510,1863,10,13,0,1,120,0,2,0], + "events": {"atk":1327,"deploy":23,"die":17,"dmg":7399,"engage":10,"fx":851,"heal":385,"skill":213,"spawn":25,"status":317}, "fx": {"anchor":5,"aoe":3,"beam":22,"burst":2,"candle":6,"charge":7,"dash":12,"downed":1,"ember":2,"explode":1,"healAoe":35,"link":597,"overload":4,"palsy":3,"phase":12,"reborn":1,"shieldBreak":10,"splash":118,"substitute":3,"swap":3,"teleport":4}, - "snaps": "9f379cb4 794e9645 d2f1f9f3 6f045130 a644a605 3dcabff0 e46972a2 c31f97e6 f96ab5e9 550b50cf 7fc8b816 37d606b0 59ba06be 89d462ce dd5067ad 3bd6cd55 eb0a24fa e22b95bb 1ac00400 fd3ebf77" + "snaps": "9f379cb4 794e9645 d2f1f9f3 6f045130 3ba3cbda c2dffcd7 002617f9 8eb229f1 44fa10f5 02a4f054 024d05f4 4f2b850e 264e7810 e232b25c fb23ac72 ffe30a9a 966d17a8 f21eca66 c335c5c3 dadd437f" }, "hidden-boss_10-pair": { "about": "假想敌:管 pair pool 15200000: chess_char_5_19_b chess_char_4_01_b chess_char_5_14_b chess_char_5_17_b chess_char_5_15_b chess_char_5_20_b chess_char_5_21_b chess_char_5_22_b chess_char_5_23_b chess_char_4_02_b | chess_char_4_11_b chess_char_4_04_b chess_char_4_07_b chess_char_4_16_b chess_char_4_09_b chess_char_4_06_b chess_char_4_10_b chess_char_4_12_b chess_char_4_13_b chess_char_4_14_b token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1243,34 +1273,34 @@ "killed": 10, "total": 12, "unspawned": 0, - "bossHpLeft": 14607553, - "rngDraws": 831, + "bossHpLeft": 14635261, + "rngDraws": 918, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":10,"total":12,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":484519,"bossDmg":259343,"heal":55534,"deaths":4,"layerGains":{}}, - "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":523278,"bossDmg":333105,"heal":12378,"deaths":23,"layerGains":{}} + "p1": {"killed":10,"total":12,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":459267,"bossDmg":234580,"heal":65462,"deaths":5,"layerGains":{}}, + "p2": {"killed":0,"total":0,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":0,"dmg":520827,"bossDmg":330160,"heal":13987,"deaths":24,"layerGains":{}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,5,0,0,0,0,0,0], - ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",3537,1,9,0,0,0,0,0,0], - ["p1",3,"op","chess_char_5_14_b",1,"none",3804.5,1,15,0,8,0,0,0,4], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,17,3,34536,13209,5035,117,1], - ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1989,1,64,6,298293,2567,28073,48,12], - ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,19,0,46582,23818,560,33,3], - ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,65,1,65098,8158,1040,158,5], - ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,3,0,0,0,0,0,0], - ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,7,0,0,0,20255,28,3], - ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,13,2,40002,2520,572,29,3], - ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,59,0,9,7091,348,9,1], - ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,53,0,118516,9836,1228,166,5], - ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,63,0,7200,8104,1432,12,7], - ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",443.03,1,62,1,66265,21903,2696,177,7], - ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,54,0,107181,6074,518,32,3], - ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,12,0,105514,3015,1454,194,3], - ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,56,0,9951,3708,380,10,1], - ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,51,0,19547,6722,1387,39,3], - ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1272.51,1,58,0,33198,5042,2337,82,20], - ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,57,1,55897,3850,598,23,6], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",3907,1,5,1,8,0,0,4,1], + ["p1",2,"op","chess_char_4_01_b",2,"uniequip_002_rmixer",5482.35,1,9,0,4,135,135,5,1], + ["p1",3,"op","chess_char_5_14_b",1,"none",3804.5,1,15,1,13,4026,4026,3,5], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,17,4,37557,16976,8824,162,1], + ["p1",5,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1989,1,66,6,268925,2436,20528,44,10], + ["p1",6,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,19,0,39201,31941,907,22,2], + ["p1",7,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,63,0,73883,6323,567,181,5], + ["p1",8,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,3,0,14,0,0,12,5], + ["p1",9,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,7,0,0,900,30294,38,3], + ["p1",10,"op","chess_char_4_02_b",2,"uniequip_002_mostma",1695,1,67,0,39662,2415,182,24,2], + ["p2",11,"op","chess_char_4_11_b",1,"uniequip_002_cathy",0,0,59,0,9,7056,313,9,1], + ["p2",12,"op","chess_char_4_04_b",1,"uniequip_002_ines",0,0,52,0,114391,9692,1390,156,5], + ["p2",13,"op","chess_char_4_07_b",1,"uniequip_002_bpipe",0,0,64,0,6168,8119,1447,6,4], + ["p2",14,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,65,1,64558,18411,1406,159,8], + ["p2",15,"op","chess_char_4_09_b",1,"uniequip_002_mizuki",0,0,54,0,108553,6094,538,33,3], + ["p2",16,"op","chess_char_4_06_b",1,"uniequip_002_kroos2",0,0,12,0,107199,3077,1516,194,3], + ["p2",17,"op","chess_char_4_10_b",1,"uniequip_002_aroma",0,0,56,0,9951,3760,432,10,1], + ["p2",18,"op","chess_char_4_12_b",2,"uniequip_002_glady",0,0,51,0,19876,6152,1123,40,3], + ["p2",19,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1670.06,1,58,1,32048,7063,4756,80,17], + ["p2",20,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",0,0,57,0,58074,4319,1067,34,8], ["p2",21,"token","token_10041_cathy_catsld",null,null,100,1,23,0,0,0,0,0,null], ["p2",22,"token","token_10041_cathy_catsld",null,null,100,1,24,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1278,56 +1308,58 @@ ], "enemies": { "enemy_1402_tgshd_2": [2,2,0,6812,173864], - "enemy_9010_acpupp": [2,2,0,8692,240776], - "enemy_9021_acduml_2": [1,0,0,1086,592447], - "enemy_9022_acdumm": [1,0,0,2189,0], - "enemy_9023_acdums": [12,10,0,102073,710] + "enemy_9010_acpupp": [2,2,0,8972,240778], + "enemy_9021_acduml_2": [1,0,0,1756,564739], + "enemy_9022_acdumm": [1,0,0,2732,0], + "enemy_9023_acdums": [12,10,0,113969,714] }, - "hooks": [1,63,6000,1050,1144,4396,4983,9052,42,43,87,85,0,25484,1138,14,18,0,1,45,0,37,0], - "events": {"atk":1173,"deploy":43,"die":43,"dmg":4612,"engage":15,"fx":1937,"heal":552,"skill":172,"spawn":42,"status":988}, + "hooks": [1,65,6000,1089,1207,4470,5144,10933,44,45,88,86,5,25814,1152,16,18,0,1,48,0,41,0], + "events": {"atk":1225,"deploy":45,"die":45,"dmg":4708,"engage":19,"fx":1961,"heal":597,"skill":174,"spawn":42,"status":974}, "fx": { - "aoe": 4, + "aoe": 13, "appear": 7, "beam": 22, "blink": 2, - "burst": 37, - "charge": 7, - "crit": 102, + "burst": 41, + "charge": 4, + "counter": 5, + "crit": 109, "dilemma": 3, - "disappear": 8, - "displace": 6, + "disappear": 9, + "displace": 7, "ember": 3, - "explode": 880, - "explosion": 6, + "explode": 902, + "explosion": 8, "expose": 181, - "frostNova": 20, + "frostNova": 17, "garrisonGrant": 1, - "iceSpike": 131, + "iceSpike": 159, "levitate": 6, "overclock": 1, - "phase": 94, + "phase": 93, "pull": 2, "quadShot": 3, "revive": 1, - "ripple": 23, + "ripple": 20, "sentry": 4, + "sermon": 1, "shadowWeave": 5, - "shield": 1, + "shield": 2, "shieldBreak": 8, "slippery": 1, - "sp": 7, + "sp": 6, "splash": 2, "stealth": 5, "summon": 8, - "swordRain": 76, - "swordStorm": 7, + "swordRain": 70, + "swordStorm": 8, "telegraph": 3, "tornado": 3, "tornadoPulse": 14, - "weightless": 3, - "zone": 240 + "weightless": 2, + "zone": 200 }, - "snaps": "f891236c f6672d61 695d2e11 830e2071 8024dd4b 9594349c e4ef8aa5 668bdd9b 71381274 d51252c4 c881ecb5 ad1e27f8 397f5d2c e7fbf6e3 5e771d86 56b6f3bc 2b44355a 7cb1a6e6 4e5f6f28 652ed232" + "snaps": "f891236c f6672d61 695d2e11 dd4444a7 42309327 9cec6e57 b8fe3b31 cfaa0d6b 4be820e6 693491bb cddbaa3a 1e1a7871 945cbd12 d9b820e0 034525ef 35395d78 56b4abc5 8f47eaee d52f39d7 520c8b02" }, "hidden-boss_10-solo": { "about": "假想敌:管 solo pool 7600000: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_4_20_b chess_char_4_21_b chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b", diff --git a/test/golden/matches.json b/test/golden/matches.json index 0b8b2815..9efb0352 100644 --- a/test/golden/matches.json +++ b/test/golden/matches.json @@ -16,7 +16,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":null,"factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":78277,"virtualMs":68100}, + "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":74740,"virtualMs":68100}, "rng": {"setup":16,"shop":81,"waves":0,"draft":0,"bots":5205,"meta":0}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -29,7 +29,7 @@ {"round":7,"ai_0":[1,27,10,0,0,4,8,"bc01603b",31,"indomShip 2/5, kjeragShip 1/7, preciShip 0/2, sargonShip 0/4, steadShip 2/19",27,27,0,49]}, { "round": 8, - "ai_0": [1,27,11,0,0,4,8,"dd16cc25",46,"deputShip 1/2, emptyShip 1/2, indomShip 0/5, kjeragShip 1/9, preciShip 0/2, sargonShip 0/4, steadShip 2/31, swiftShip 1/2",14,14,0,58] + "ai_0": [1,27,11,0,0,4,8,"144e1f0b",44,"deputShip 1/2, emptyShip 1/2, indomShip 0/5, kjeragShip 1/10, preciShip 0/2, sargonShip 0/4, steadShip 2/28, swiftShip 1/2",14,14,0,58] } ], "players": { @@ -43,9 +43,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 100, - "stats": {"activatedLayers":79,"bossDamage":121723,"dmgDealt":654940,"gold":71,"itemsEquipped":14,"kills":167,"leaks":0,"lpLost":0,"merges":2,"perfectRounds":8,"refreshes":4}, + "stats": {"activatedLayers":77,"bossDamage":125260,"dmgDealt":669067,"gold":71,"itemsEquipped":14,"kills":167,"leaks":0,"lpLost":0,"merges":2,"perfectRounds":8,"refreshes":4}, "lineup": ["2_14_a@12,3","1_13_a@11,3","3_14_a@11,8[5_02_e_b+2_01_e_a]","3_10_a@10,3","3_16_a@10,4[3_03_e_a+2_04_e_a]","5_14_a@10,7[4_08_e_a+4_05_e_a]","3_05_a@10,8","3_20_b@9,8[5_02_e_b+1_01_e_a]"], - "bonds": ["deputShip 2/9","emptyShip 1/6","indomShip 0/5","kjeragShip 1/16","preciShip 0/2","sargonShip 0/8","steadShip 1/42","swiftShip 1/6"] + "bonds": ["deputShip 2/9","emptyShip 1/6","indomShip 0/5","kjeragShip 1/17","preciShip 0/2","sargonShip 0/8","steadShip 1/39","swiftShip 1/6"] } } }, @@ -59,7 +59,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":null,"factions":["ELEMENT","DOT","REFLECTION"]}, - "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":106436,"virtualMs":68100}, + "end": {"victory":false,"roundsPassed":8,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":94860,"virtualMs":68100}, "rng": {"setup":16,"shop":161,"waves":0,"draft":0,"bots":5205,"meta":43}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -83,7 +83,7 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 100, - "stats": {"activatedLayers":128,"bossDamage":93564,"dmgDealt":650377,"gold":78,"itemsEquipped":16,"kills":143,"leaks":0,"lpLost":0,"merges":0,"perfectRounds":8,"refreshes":18}, + "stats": {"activatedLayers":128,"bossDamage":105140,"dmgDealt":663269,"gold":78,"itemsEquipped":16,"kills":143,"leaks":0,"lpLost":0,"merges":0,"perfectRounds":8,"refreshes":18}, "lineup": ["3_20_a@12,3[4_07_e_a+3_04_e_b]","2_14_a@12,4","2_05_a@12,6","3_10_a@11,3","4_14_a@11,8[4_02_e_a+4_08_e_a]","1_06_a@10,3[5_02_e_a+2_03_e_a]","1_02_a@10,4[3_08_e_a+2_01_e_b]","4_11_a@10,8[4_04_e_a+1_01_e_a]"], "bonds": ["deputShip 2/40","emptyShip 1/12","kjeragShip 1/28","steadShip 0/26","swiftShip 1/18","victoriaShip 1/30"] } @@ -99,7 +99,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":108935,"virtualMs":112800}, + "end": {"victory":true,"roundsPassed":15,"hiddenReached":true,"hiddenCleared":true,"reason":"victory","teamLp":26,"bossPoolLeft":0,"virtualMs":112800}, "rng": {"setup":25,"shop":233,"waves":0,"draft":10,"bots":8919,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -133,31 +133,31 @@ }, { "round": 11, - "ai_0": [1,27,12,0,0,5,8,"43abaaad",171,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/43, sargonShip 0/8, siracusaShip 1/76, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/35",24,24,0,96] + "ai_0": [1,27,12,0,0,5,8,"43abaaad",175,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/43, sargonShip 0/8, siracusaShip 1/80, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/35",24,24,0,96] }, { "round": 12, - "ai_0": [1,27,12,0,0,6,8,"f5257e92",213,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/54, sargonShip 0/8, siracusaShip 1/102, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/40",31,31,0,109] + "ai_0": [1,27,12,0,0,6,8,"f5257e92",211,"arcaneShip 1/14, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/54, sargonShip 0/8, siracusaShip 1/100, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/40",31,31,0,109] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"20f861b4",331,"arcaneShip 2/18, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/65, sargonShip 0/8, siracusaShip 1/200, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/45",115,115,0,121] + "ai_0": [1,27,12,0,0,6,8,"20f861b4",335,"arcaneShip 2/18, kazimierzShip 0/10, kjeragShip 0/2, preciShip 2/65, sargonShip 0/8, siracusaShip 1/204, soloShip 1/3, steadShip 0/2, suntShip 1/0, swiftShip 1/45",115,115,0,121] } ], "players": { "ai_0": { "alive": true, "victory": true, - "roundsPassed": 14, + "roundsPassed": 15, "eliminatedRound": null, - "lp": 0, + "lp": 26, "bandId": "band_ermengard", "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 400, - "stats": {"activatedLayers":394,"bossDamage":1218565,"dmgDealt":3286772,"gold":144,"itemsEquipped":16,"kills":388,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":18}, + "stats": {"activatedLayers":398,"bossDamage":1327500,"dmgDealt":3388979,"gold":144,"itemsEquipped":16,"kills":388,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":18}, "lineup": ["6_08_a@12,8","1_17_b@11,7","4_14_a@11,8[5_03_e_a]","6_18_a@10,4[3_02_e_a+3_05_e_a]","6_02_a@10,5","4_10_a@10,6[3_02_e_b+3_08_e_b]","1_19_b@10,8[4_05_e_a]","1_08_a@9,9[1_01_e_a+1_02_e_b]"], - "bonds": ["arcaneShip 2/34","kazimierzShip 0/10","kjeragShip 0/2","miraShip 1/3","preciShip 2/79","sargonShip 0/8","siracusaShip 1/220","soloShip 1/3","steadShip 0/2","suntShip 1/0","swiftShip 1/55","yanShip 0/6"] + "bonds": ["arcaneShip 2/34","kazimierzShip 0/10","kjeragShip 0/2","miraShip 1/3","preciShip 2/79","sargonShip 0/8","siracusaShip 1/224","soloShip 1/3","steadShip 0/2","suntShip 1/0","swiftShip 1/55","yanShip 0/6"] } } }, @@ -246,8 +246,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":2646340,"virtualMs":113700}, - "rng": {"setup":25,"shop":254,"waves":0,"draft":42,"bots":8249,"meta":13}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":true,"hiddenCleared":false,"reason":"victory","teamLp":0,"bossPoolLeft":3046117,"virtualMs":113700}, + "rng": {"setup":25,"shop":254,"waves":0,"draft":42,"bots":8253,"meta":13}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"ai_0":[1,27,4,0,0,1,2,"cc1bac8f",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -260,35 +260,35 @@ }, { "round": 6, - "ai_0": [1,27,9,0,0,3,8,"3b1cee08",44,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/17, sargonShip 0/8, siracusaShip 1/17, soloShip 1/1, steadShip 1/9, suntShip 1/0, swiftShip 0/8",56,56,0,41] + "ai_0": [1,27,9,0,0,3,8,"3b1cee08",42,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/16, sargonShip 0/8, siracusaShip 1/17, soloShip 1/1, steadShip 1/8, suntShip 1/0, swiftShip 0/8",56,56,0,41] }, { "round": 7, - "ai_0": [1,27,10,0,0,4,8,"a80ad2e7",66,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/31, sargonShip 0/8, siracusaShip 1/23, soloShip 1/1, steadShip 1/11, suntShip 1/0, swiftShip 0/8",28,28,0,52] + "ai_0": [1,27,10,0,0,4,8,"a80ad2e7",64,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/30, sargonShip 0/8, siracusaShip 1/23, soloShip 1/1, steadShip 1/10, suntShip 1/0, swiftShip 0/8",28,28,0,52] }, { "round": 8, - "ai_0": [1,26,11,0,0,4,8,"efbd69c0",90,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/43, sargonShip 0/8, siracusaShip 1/33, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/13",18,19,1,62] + "ai_0": [1,27,11,0,0,4,8,"811212e1",89,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/42, sargonShip 0/8, siracusaShip 1/33, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/13",19,19,0,62] }, { "round": 9, - "ai_0": [1,26,12,0,0,4,8,"dd1c039a",151,"kazimierzShip 1/20, kjeragShip 0/2, preciShip 1/9, raidShip 1/56, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/11, swiftShip 1/18",34,34,0,73] + "ai_0": [1,27,12,0,0,4,8,"04feac9c",148,"kazimierzShip 1/20, kjeragShip 0/2, preciShip 1/9, raidShip 1/55, sargonShip 0/8, siracusaShip 1/45, soloShip 1/1, steadShip 0/10, swiftShip 1/18",34,34,0,73] }, { "round": 10, - "ai_0": [1,26,12,0,0,5,8,"24bfb351",200,"kazimierzShip 1/36, kjeragShip 0/2, preciShip 1/18, raidShip 1/73, sargonShip 0/8, siracusaShip 1/49, soloShip 1/1, steadShip 0/11, swiftShip 1/23",24,24,0,85] + "ai_0": [1,27,12,0,0,5,8,"24bfb351",197,"kazimierzShip 1/36, kjeragShip 0/2, preciShip 1/18, raidShip 1/72, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/10, swiftShip 1/23",24,24,0,85] }, { "round": 11, - "ai_0": [1,26,12,0,1,5,8,"adf69e01",260,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/87, sargonShip 0/8, siracusaShip 1/67, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/23",34,34,0,96] + "ai_0": [1,27,12,0,1,5,8,"4a74f628",256,"kazimierzShip 1/56, kjeragShip 0/2, preciShip 1/26, raidShip 1/85, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",34,34,0,96] }, { "round": 12, - "ai_0": [1,26,13,0,0,6,8,"5a5036c8",352,"arcaneShip 1/0, kazimierzShip 1/92, kjeragShip 0/2, preciShip 1/50, raidShip 1/115, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/23",31,31,0,111] + "ai_0": [1,27,13,0,0,6,8,"c9c17eab",334,"arcaneShip 1/0, kazimierzShip 1/84, kjeragShip 0/2, preciShip 1/42, raidShip 1/113, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/23",31,31,0,111] }, { "round": 13, - "ai_0": [1,26,12,0,0,6,8,"f0a3a8b1",449,"arcaneShip 1/6, kazimierzShip 1/108, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/139, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/11, suntShip 1/0, swiftShip 1/33",115,115,0,125] + "ai_0": [1,27,12,0,0,6,8,"b6fe7f54",431,"arcaneShip 1/6, kazimierzShip 1/104, kjeragShip 0/2, miraShip 1/3, preciShip 1/60, raidShip 1/133, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/10, suntShip 1/0, swiftShip 1/33",115,115,0,125] } ], "players": { @@ -302,9 +302,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 425, - "stats": {"activatedLayers":529,"bossDamage":1733660,"dmgDealt":3671937,"gold":151,"itemsEquipped":18,"kills":418,"leaks":1,"lpLost":1,"merges":4,"perfectRounds":12,"refreshes":21}, - "lineup": ["3_19_a@11,7[3_02_e_b]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,5","4_14_b@10,6[5_01_e_a+2_01_e_b]","6_17_a@10,8[4_10_e_b+4_05_e_a]","5_07_a@9,5","1_08_a@9,6[1_01_e_a+1_02_e_a]","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/18","kazimierzShip 1/108","kjeragShip 0/2","miraShip 1/3","preciShip 1/88","raidShip 1/139","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/11","suntShip 1/0","swiftShip 1/53"] + "stats": {"activatedLayers":511,"bossDamage":1333883,"dmgDealt":3325553,"gold":151,"itemsEquipped":18,"kills":419,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":21}, + "lineup": ["4_14_b@12,8[5_01_e_a+2_01_e_b]","3_19_a@11,7[3_02_e_b]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,6","6_17_a@10,8[4_10_e_b+4_05_e_a]","1_08_a@9,5[1_01_e_a+1_02_e_a]","5_07_a@9,6","1_19_b@9,9[3_08_e_a+3_01_e_a]"], + "bonds": ["arcaneShip 1/18","kazimierzShip 1/104","kjeragShip 0/2","miraShip 1/3","preciShip 1/80","raidShip 1/133","sargonShip 0/8","siracusaShip 1/119","soloShip 1/1","steadShip 0/10","suntShip 1/0","swiftShip 1/53"] } } }, @@ -318,7 +318,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_10","factions":["ELEMENT","DOT","REFLECTION"]}, - "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":178663,"virtualMs":107800}, + "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":252834,"virtualMs":107800}, "rng": {"setup":25,"shop":225,"waves":0,"draft":42,"bots":8430,"meta":87}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -347,23 +347,23 @@ }, { "round": 9, - "ai_0": [1,21,13,0,1,4,8,"afd23664",64,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 2/16, raidShip 1/18, sargonShip 0/4, steadShip 2/14, swiftShip 1/10",30,32,2,77] + "ai_0": [1,22,13,0,2,4,8,"afd23664",66,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 2/16, raidShip 1/19, sargonShip 0/4, steadShip 2/15, swiftShip 1/10",31,32,1,77] }, { "round": 10, - "ai_0": [1,21,13,0,1,5,8,"92d744b0",95,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/35, raidShip 1/24, sargonShip 0/8, steadShip 2/15, swiftShip 1/15",30,30,0,91] + "ai_0": [1,22,14,0,1,5,8,"92d744b0",97,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/35, raidShip 1/25, sargonShip 0/8, steadShip 2/16, swiftShip 1/15",30,30,0,91] }, { "round": 11, - "ai_0": [1,11,13,0,0,5,8,"33cc6155",133,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/54, raidShip 1/29, sargonShip 0/8, steadShip 1/15, swiftShip 1/20, visiShip 1/9",11,24,13,104] + "ai_0": [1,12,13,0,0,5,8,"33cc6155",135,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/54, raidShip 1/30, sargonShip 0/8, steadShip 1/16, swiftShip 1/20, visiShip 1/9",10,24,14,104] }, { "round": 12, - "ai_0": [1,1,14,0,3,6,8,"88b3bac2",181,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/77, raidShip 1/35, sargonShip 0/8, steadShip 1/16, swiftShip 1/25, visiShip 1/22",28,45,17,116] + "ai_0": [1,2,14,0,3,6,8,"82d55357",178,"arcaneShip 0/4, kazimierzShip 0/2, kjeragShip 0/8, lateranoShip 1/6, preciShip 1/72, raidShip 1/36, sargonShip 0/8, steadShip 1/17, swiftShip 1/25, visiShip 1/22",31,45,14,116] }, { "round": 13, - "ai_0": [1,1,15,0,0,6,8,"930b7e8b",206,"arcaneShip 0/8, kazimierzShip 1/22, kjeragShip 1/24, lateranoShip 1/12, maniShip 1/0, preciShip 2/91, raidShip 0/35, sargonShip 0/8, steadShip 1/16, suntShip 1/0, swiftShip 1/41, visiShip 0/26",29,29,0,131] + "ai_0": [1,2,15,0,0,6,8,"930b7e8b",202,"arcaneShip 0/8, kazimierzShip 1/22, kjeragShip 1/24, lateranoShip 1/12, maniShip 1/0, preciShip 2/86, raidShip 0/36, sargonShip 0/8, steadShip 1/17, suntShip 1/0, swiftShip 1/41, visiShip 0/26",29,29,0,131] } ], "players": { @@ -377,9 +377,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 340, - "stats": {"activatedLayers":206,"bossDamage":601337,"dmgDealt":2652409,"gold":141,"itemsEquipped":13,"kills":262,"leaks":38,"lpLost":28,"merges":4,"perfectRounds":9,"refreshes":18}, + "stats": {"activatedLayers":202,"bossDamage":527166,"dmgDealt":2586900,"gold":141,"itemsEquipped":13,"kills":263,"leaks":35,"lpLost":27,"merges":4,"perfectRounds":9,"refreshes":18}, "lineup": ["4_20_a@12,5","2_01_b@12,6[3_11_e_a+4_08_e_a]","6_01_a@12,7[6_09_e_a+4_03_e_a]","1_01_a@11,8[1_05_e_a]","6_11_a@10,3","4_01_a@10,7[2_01_e_a+3_11_e_b]","6_19_a@10,8[4_10_e_a+4_11_e_a]","1_02_b@9,4"], - "bonds": ["arcaneShip 0/8","kazimierzShip 1/22","kjeragShip 1/24","lateranoShip 1/12","maniShip 1/0","preciShip 2/91","raidShip 0/35","sargonShip 0/8","steadShip 1/16","suntShip 1/0","swiftShip 1/41","visiShip 0/26"] + "bonds": ["arcaneShip 0/8","kazimierzShip 1/22","kjeragShip 1/24","lateranoShip 1/12","maniShip 1/0","preciShip 2/86","raidShip 0/36","sargonShip 0/8","steadShip 1/17","suntShip 1/0","swiftShip 1/41","visiShip 0/26"] } } }, @@ -393,8 +393,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_5","hiddenBossId":"boss_8","factions":["TIMES","DOT","INVISIBLE"]}, - "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":2240767,"virtualMs":107800}, - "rng": {"setup":25,"shop":191,"waves":0,"draft":42,"bots":8025,"meta":6}, + "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":2303334,"virtualMs":107800}, + "rng": {"setup":25,"shop":191,"waves":0,"draft":42,"bots":8022,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"ai_0":[1,27,4,0,0,1,2,"cc1bac8f",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -415,27 +415,27 @@ }, { "round": 8, - "ai_0": [1,18,11,0,0,4,8,"811212e1",89,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/44, sargonShip 0/8, siracusaShip 1/31, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/13",10,19,9,62] + "ai_0": [1,23,11,0,0,4,8,"168e9940",90,"kazimierzShip 0/8, kjeragShip 0/2, raidShip 1/45, sargonShip 0/8, siracusaShip 1/31, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/13",15,19,4,62] }, { "round": 9, - "ai_0": [1,18,12,0,0,4,8,"04feac9c",158,"kazimierzShip 1/24, kjeragShip 0/2, preciShip 1/9, raidShip 1/61, sargonShip 0/8, siracusaShip 1/45, soloShip 1/1, steadShip 0/12, swiftShip 1/18",34,34,0,73] + "ai_0": [1,23,12,0,0,4,8,"7332bfff",154,"kazimierzShip 1/24, kjeragShip 0/2, preciShip 1/9, raidShip 1/61, sargonShip 0/8, siracusaShip 1/41, soloShip 1/1, steadShip 0/12, swiftShip 1/18",34,34,0,73] }, { "round": 10, - "ai_0": [1,18,12,0,0,5,8,"044ee349",188,"kazimierzShip 1/32, kjeragShip 0/2, preciShip 1/18, raidShip 1/67, sargonShip 0/8, siracusaShip 1/47, soloShip 1/1, steadShip 0/12, swiftShip 1/23",24,24,0,85] + "ai_0": [1,23,12,0,0,5,8,"c76794a5",202,"kazimierzShip 1/40, kjeragShip 0/2, preciShip 1/18, raidShip 1/79, sargonShip 0/8, siracusaShip 1/41, soloShip 1/1, steadShip 0/12, swiftShip 1/23",24,24,0,85] }, { "round": 11, - "ai_0": [1,16,12,0,1,5,8,"9f83eeae",247,"kazimierzShip 1/52, kjeragShip 0/2, preciShip 1/26, raidShip 1/80, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",32,34,2,96] + "ai_0": [1,19,12,0,1,5,8,"4a74f628",260,"kazimierzShip 1/60, kjeragShip 0/2, preciShip 1/26, raidShip 1/91, sargonShip 0/8, siracusaShip 1/59, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",30,34,4,96] }, { "round": 12, - "ai_0": [1,8,13,0,0,6,8,"5a5036c8",341,"arcaneShip 1/0, kazimierzShip 1/88, kjeragShip 0/2, preciShip 1/50, raidShip 1/108, sargonShip 0/8, siracusaShip 1/71, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",23,31,8,111] + "ai_0": [1,11,13,0,0,6,8,"c9c17eab",354,"arcaneShip 1/0, kazimierzShip 1/96, kjeragShip 0/2, preciShip 1/50, raidShip 1/119, sargonShip 0/8, siracusaShip 1/65, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/23",23,31,8,111] }, { "round": 13, - "ai_0": [1,2,12,0,0,6,8,"a2dcf31f",454,"arcaneShip 1/6, kazimierzShip 1/108, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/144, sargonShip 0/8, siracusaShip 1/91, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",109,115,6,125] + "ai_0": [1,5,12,0,0,6,8,"c27bbe57",459,"arcaneShip 1/6, kazimierzShip 1/116, kjeragShip 0/2, miraShip 1/3, preciShip 1/68, raidShip 1/147, sargonShip 0/8, siracusaShip 1/85, soloShip 1/1, steadShip 0/12, suntShip 1/0, swiftShip 1/33",109,115,6,125] } ], "players": { @@ -449,9 +449,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 0, "reward": 340, - "stats": {"activatedLayers":491,"bossDamage":759233,"dmgDealt":4110348,"gold":137,"itemsEquipped":16,"kills":397,"leaks":25,"lpLost":25,"merges":4,"perfectRounds":9,"refreshes":13}, + "stats": {"activatedLayers":496,"bossDamage":696666,"dmgDealt":4099361,"gold":137,"itemsEquipped":16,"kills":401,"leaks":22,"lpLost":22,"merges":4,"perfectRounds":9,"refreshes":13}, "lineup": ["3_19_a@12,5[3_02_e_b]","4_14_b@12,7[2_01_e_a+5_01_e_a]","4_20_b@11,8[3_11_e_b+3_06_e_a]","4_10_a@10,3","5_07_a@10,7","6_17_a@10,8[4_10_e_b]","1_08_a@9,4[1_01_e_a+1_02_e_a]","1_19_b@9,9[3_08_e_a+3_01_e_a]"], - "bonds": ["arcaneShip 1/12","kazimierzShip 1/108","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/144","sargonShip 0/8","siracusaShip 1/105","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] + "bonds": ["arcaneShip 1/12","kazimierzShip 1/116","kjeragShip 0/2","miraShip 0/3","preciShip 1/78","raidShip 1/147","sargonShip 0/8","siracusaShip 1/99","soloShip 1/1","steadShip 0/12","suntShip 1/0","swiftShip 1/43"] } } }, @@ -532,7 +532,7 @@ "combat": "client", "boost": null, "setup": {"stageId":"act2autochess_m04","bossId":"boss_3","hiddenBossId":"boss_8","factions":["FLY","TIMES","DOT"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":33,"bossPoolLeft":0,"virtualMs":119900}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":37,"bossPoolLeft":0,"virtualMs":119900}, "rng": {"setup":25,"shop":413,"waves":0,"draft":40,"bots":21608,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ @@ -588,18 +588,18 @@ }, { "round": 11, - "ai_0": [1,39,12,0,0,5,8,"c43f7697",148,"arcaneShip 1/23, egirShip 1/55, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/25",21,23,2,101], + "ai_0": [1,39,12,0,0,5,8,"c43f7697",148,"arcaneShip 1/23, egirShip 1/55, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/25",22,23,1,101], "ai_1": [1,21,12,0,0,5,8,"6a60d378",135,"arcaneShip 1/22, indomShip 1/2, kazimierzShip 1/42, kjeragShip 0/2, preciShip 2/60, sargonShip 0/10, steadShip 1/9, suntShip 1/0, swiftShip 0/11",23,23,0,99] }, { "round": 12, - "ai_0": [1,37,12,0,0,6,8,"e51a7992",188,"arcaneShip 1/26, egirShip 1/87, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/30",103,105,2,114], + "ai_0": [1,37,12,0,0,6,8,"e51a7992",183,"arcaneShip 1/26, egirShip 1/82, preciShip 0/10, raidShip 1/7, sargonShip 0/10, siracusaShip 1/32, skillfulShip 0/8, soloShip 1/6, suntShip 1/0, swiftShip 1/30",103,105,2,114], "ai_1": [1,16,12,0,0,6,8,"c13a70f2",199,"arcaneShip 2/22, indomShip 0/2, kazimierzShip 1/62, kjeragShip 0/10, preciShip 2/88, sargonShip 0/10, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/27",100,105,5,111] }, { "round": 13, - "ai_0": [1,27,12,0,0,6,8,"eb5334f8",263,"arcaneShip 2/49, egirShip 1/118, preciShip 0/10, raidShip 0/7, sargonShip 0/10, siracusaShip 1/44, skillfulShip 1/16, soloShip 1/6, suntShip 1/0, swiftShip 1/30",23,34,11,126], - "ai_1": [1,6,12,0,2,6,8,"87853944",263,"arcaneShip 1/24, indomShip 0/2, kazimierzShip 1/78, kjeragShip 0/10, miraShip 1/0, preciShip 2/120, sargonShip 0/10, siracusaShip 1/6, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/35",23,34,11,124] + "ai_0": [1,27,12,0,0,6,8,"eb5334f8",252,"arcaneShip 2/46, egirShip 1/110, preciShip 0/10, raidShip 0/7, sargonShip 0/10, siracusaShip 1/44, skillfulShip 1/16, soloShip 1/6, suntShip 1/0, swiftShip 1/30",24,34,10,126], + "ai_1": [1,10,12,0,2,6,8,"32067aa7",279,"arcaneShip 1/24, indomShip 0/2, kazimierzShip 1/86, kjeragShip 0/10, miraShip 1/0, preciShip 2/120, sargonShip 0/10, siracusaShip 1/6, soloShip 1/0, steadShip 0/9, suntShip 1/0, swiftShip 1/43",28,34,6,124] } ], "players": { @@ -610,26 +610,26 @@ "eliminatedRound": null, "lp": 27, "bandId": "band_sarkazb", - "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, + "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":295,"bossDamage":176128,"dmgDealt":2744034,"gold":137,"itemsEquipped":16,"kills":321,"leaks":21,"lpLost":18,"merges":4,"perfectRounds":8,"refreshes":17}, + "stats": {"activatedLayers":284,"bossDamage":171386,"dmgDealt":2739198,"gold":137,"itemsEquipped":16,"kills":324,"leaks":19,"lpLost":18,"merges":4,"perfectRounds":8,"refreshes":17}, "lineup": ["6_16_a@11,8[3_07_e_a]","4_10_b@10,5[3_01_e_a+1_02_e_b]","3_18_a@9,3[4_05_e_a]","5_05_a@9,4","5_13_a@9,5","2_13_a@9,6","3_09_a@9,8[4_07_e_a+1_05_e_b]","1_08_b@9,9[4_03_e_a+4_04_e_a]"], - "bonds": ["arcaneShip 2/63","egirShip 1/118","preciShip 0/10","raidShip 0/7","sargonShip 0/10","siracusaShip 1/52","skillfulShip 1/24","soloShip 1/6","suntShip 1/0","swiftShip 1/32"] + "bonds": ["arcaneShip 2/60","egirShip 1/110","preciShip 0/10","raidShip 0/7","sargonShip 0/10","siracusaShip 1/52","skillfulShip 1/24","soloShip 1/6","suntShip 1/0","swiftShip 1/32"] }, "ai_1": { "alive": true, "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 6, + "lp": 10, "bandId": "band_dusk", "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":279,"bossDamage":1241372,"dmgDealt":3738672,"gold":139,"itemsEquipped":19,"kills":304,"leaks":27,"lpLost":22,"merges":5,"perfectRounds":7,"refreshes":13}, + "stats": {"activatedLayers":295,"bossDamage":1246114,"dmgDealt":3946458,"gold":139,"itemsEquipped":19,"kills":308,"leaks":22,"lpLost":18,"merges":5,"perfectRounds":7,"refreshes":13}, "lineup": ["1_17_b@11,7","4_20_b@11,8[5_02_e_a+1_02_e_a]","4_10_a@10,5","6_19_a@10,7[4_08_e_b+4_06_e_a]","1_19_b@10,8[2_04_e_b+4_05_e_a]","5_02_a@9,7","5_20_a@9,8","1_08_b@9,9"], - "bonds": ["arcaneShip 1/28","indomShip 0/2","kazimierzShip 1/78","kjeragShip 0/10","miraShip 1/0","preciShip 2/120","sargonShip 0/10","siracusaShip 1/18","soloShip 1/0","steadShip 0/9","suntShip 1/0","swiftShip 1/35"] + "bonds": ["arcaneShip 1/28","indomShip 0/2","kazimierzShip 1/86","kjeragShip 0/10","miraShip 1/0","preciShip 2/120","sargonShip 0/10","siracusaShip 1/18","soloShip 1/0","steadShip 0/9","suntShip 1/0","swiftShip 1/43"] } } }, @@ -644,7 +644,7 @@ "boost": null, "setup": {"stageId":"act1autochess_m04","bossId":"boss_4","hiddenBossId":"boss_10","factions":["FLY","TIMES","REFLECTION"]}, "end": {"victory":false,"roundsPassed":12,"hiddenReached":false,"hiddenCleared":false,"reason":"eliminated","teamLp":null,"bossPoolLeft":null,"virtualMs":117800}, - "rng": {"setup":25,"shop":365,"waves":0,"draft":73,"bots":13595,"meta":9}, + "rng": {"setup":25,"shop":375,"waves":0,"draft":73,"bots":13595,"meta":6}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -679,7 +679,7 @@ }, { "round": 7, - "ai_0": [1,25,10,0,0,4,8,"fbc6374d",17,"kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/6, skillfulShip 1/6, soloShip 1/3, steadShip 2/2, swiftShip 0/8",24,28,4,49], + "ai_0": [1,25,10,0,0,4,8,"1ec7b320",17,"kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/6, skillfulShip 1/6, soloShip 1/3, steadShip 2/2, swiftShip 0/8",26,28,2,49], "ai_1": [1,26,11,0,1,4,8,"b417fbf1",19,"arcaneShip 1/8, kazimierzShip 0/2, preciShip 1/5, sargonShip 0/8, skillfulShip 1/6, swiftShip 0/8",28,28,0,54] }, { @@ -694,23 +694,23 @@ }, { "round": 10, - "ai_0": [1,19,16,0,0,5,8,"9b53670a",75,"deputShip 1/4, kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/34, skillfulShip 1/10, soloShip 1/7, steadShip 1/16, suntShip 1/4, swiftShip 0/8",5,8,3,89], + "ai_0": [1,19,16,0,0,5,8,"9b53670a",75,"deputShip 1/4, kazimierzShip 0/2, kjeragShip 0/2, siracusaShip 1/34, skillfulShip 1/10, soloShip 1/7, steadShip 1/16, suntShip 1/4, swiftShip 0/8",5,8,3,88], "ai_1": [1,26,14,0,4,5,8,"aa0f2565",129,"arcaneShip 2/16, kazimierzShip 0/2, preciShip 1/43, sargonShip 1/52, skillfulShip 1/18, suntShip 1/0, swiftShip 0/8",8,8,0,91] }, { "round": 11, - "ai_0": [1,9,12,0,1,5,8,"9a1f89d4",88,"deputShip 1/6, emptyShip 1/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 1/3, siracusaShip 1/50, skillfulShip 1/12, soloShip 1/9, steadShip 0/16, suntShip 1/6, swiftShip 0/8",13,27,14,101], - "ai_1": [1,16,16,0,2,5,8,"b7d6fa51",181,"arcaneShip 2/24, kazimierzShip 0/2, preciShip 1/64, sargonShip 1/73, skillfulShip 1/20, suntShip 1/0, swiftShip 0/8",13,27,14,108] + "ai_0": [1,9,12,0,1,5,8,"9a1f89d4",88,"deputShip 1/6, emptyShip 1/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 1/3, siracusaShip 1/50, skillfulShip 1/12, soloShip 1/9, steadShip 0/16, suntShip 1/6, swiftShip 0/8",13,27,14,100], + "ai_1": [1,16,16,0,2,5,8,"b7d6fa51",183,"arcaneShip 2/26, kazimierzShip 0/2, preciShip 1/64, sargonShip 1/73, skillfulShip 1/20, suntShip 1/0, swiftShip 0/8",13,27,14,108] }, { "round": 12, - "ai_0": [0,0,13,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/4, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",17,50,33,116], - "ai_1": [1,6,14,0,2,6,8,"fc6b9147",233,"arcaneShip 1/26, kazimierzShip 0/2, preciShip 1/88, sargonShip 1/97, skillfulShip 1/22, soloShip 1/0, suntShip 1/0, swiftShip 0/8",35,50,15,122] + "ai_0": [0,0,13,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/3, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",24,50,26,113], + "ai_1": [1,6,14,0,2,6,8,"41045310",233,"arcaneShip 2/26, kazimierzShip 0/2, preciShip 1/88, sargonShip 1/97, skillfulShip 1/22, suntShip 1/0, swiftShip 0/8",36,50,14,121] }, { "round": 13, - "ai_0": [0,0,0,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/4, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",null,null,null,116], - "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/34, kazimierzShip 0/2, preciShip 0/94, sargonShip 0/103, skillfulShip 0/24, swiftShip 0/8",6,49,43,134] + "ai_0": [0,0,0,0,0,6,0,"811c9dc5",0,"deputShip 0/6, emptyShip 0/2, kazimierzShip 0/2, kjeragShip 0/2, raidShip 0/3, siracusaShip 0/52, skillfulShip 0/12, soloShip 0/9, steadShip 0/16, suntShip 0/6, swiftShip 0/8",null,null,null,113], + "ai_1": [0,0,14,0,0,6,0,"811c9dc5",0,"arcaneShip 0/30, kazimierzShip 0/2, preciShip 0/95, sargonShip 0/104, skillfulShip 0/24, swiftShip 0/8",40,49,9,135] } ], "players": { @@ -724,9 +724,9 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 2, "reward": 255, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1599953,"gold":116,"itemsEquipped":10,"kills":163,"leaks":71,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1651834,"gold":113,"itemsEquipped":9,"kills":172,"leaks":62,"lpLost":26,"merges":3,"perfectRounds":5,"refreshes":13}, "lineup": [], - "bonds": ["deputShip 0/6","emptyShip 0/2","kazimierzShip 0/2","kjeragShip 0/2","raidShip 0/4","siracusaShip 0/52","skillfulShip 0/12","soloShip 0/9","steadShip 0/16","suntShip 0/6","swiftShip 0/8"] + "bonds": ["deputShip 0/6","emptyShip 0/2","kazimierzShip 0/2","kjeragShip 0/2","raidShip 0/3","siracusaShip 0/52","skillfulShip 0/12","soloShip 0/9","steadShip 0/16","suntShip 0/6","swiftShip 0/8"] }, "ai_1": { "alive": false, @@ -738,9 +738,9 @@ "title": {"id":"comment_5","name":"万事俱备","picId":"comment_icon_5","text":"装备配发数量最多"}, "trophies": 3, "reward": 298, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3145908,"gold":134,"itemsEquipped":16,"kills":227,"leaks":73,"lpLost":30,"merges":2,"perfectRounds":9,"refreshes":15}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3784936,"gold":135,"itemsEquipped":18,"kills":260,"leaks":38,"lpLost":29,"merges":3,"perfectRounds":9,"refreshes":16}, "lineup": [], - "bonds": ["arcaneShip 0/34","kazimierzShip 0/2","preciShip 0/94","sargonShip 0/103","skillfulShip 0/24","swiftShip 0/8"] + "bonds": ["arcaneShip 0/30","kazimierzShip 0/2","preciShip 0/95","sargonShip 0/104","skillfulShip 0/24","swiftShip 0/8"] } } }, @@ -786,7 +786,7 @@ "round": 5, "ai_0": [1,23,10,0,0,2,8,"be84400f",34,"deputShip 1/12, indomShip 1/3, kazimierzShip 1/7, skillfulShip 0/5, soloShip 1/2, suntShip 1/2, swiftShip 1/8",53,53,0,34], "ai_1": [1,45,9,0,0,3,8,"1f27df00",13,"kazimierzShip 0/7, swiftShip 1/13, yanShip 0/2",53,53,0,32], - "ai_2": [1,27,9,0,0,3,8,"d675cac3",12,"deputShip 1/2, siracusaShip 1/2, soloShip 1/8, yanShip 0/1",51,53,2,32] + "ai_2": [1,27,9,0,0,3,8,"9bdbc0d9",12,"deputShip 1/2, siracusaShip 1/2, soloShip 1/8, yanShip 0/1",49,53,4,32] }, { "round": 6, @@ -842,7 +842,7 @@ "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, "trophies": 2, "reward": 191, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1678325,"gold":86,"itemsEquipped":8,"kills":219,"leaks":37,"lpLost":30,"merges":4,"perfectRounds":6,"refreshes":12}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":1678337,"gold":86,"itemsEquipped":8,"kills":221,"leaks":37,"lpLost":30,"merges":4,"perfectRounds":6,"refreshes":12}, "lineup": [], "bonds": ["deputShip 0/28","indomShip 0/53","kazimierzShip 0/34","siracusaShip 0/24","skillfulShip 0/19","soloShip 0/18","suntShip 0/18","swiftShip 0/66"] }, @@ -870,7 +870,7 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 2, "reward": 255, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3450237,"gold":118,"itemsEquipped":9,"kills":220,"leaks":96,"lpLost":33,"merges":6,"perfectRounds":2,"refreshes":17}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":3450226,"gold":118,"itemsEquipped":9,"kills":218,"leaks":98,"lpLost":33,"merges":6,"perfectRounds":2,"refreshes":17}, "lineup": [], "bonds": ["deputShip 0/20","indomShip 0/20","kazimierzShip 0/8","kjeragShip 0/8","siracusaShip 0/142","skillfulShip 0/4","soloShip 0/26","suntShip 0/18","swiftShip 0/14","yanShip 0/1"] } @@ -949,14 +949,14 @@ { "round": 9, "ai_0": [1,26,12,0,0,4,8,"dcbc34d9",119,"deputShip 2/46, kjeragShip 0/7, sargonShip 1/27, steadShip 2/38, visiShip 1/8",30,30,0,75], - "ai_1": [1,45,12,0,0,4,8,"7121c5ba",117,"deputShip 2/18, emptyShip 1/4, preciShip 1/29, sargonShip 0/2, siracusaShip 1/44, swiftShip 1/22",30,30,0,71], + "ai_1": [1,45,12,0,0,4,8,"7121c5ba",115,"deputShip 2/18, emptyShip 1/4, preciShip 1/27, sargonShip 0/2, siracusaShip 1/44, swiftShip 1/22",30,30,0,71], "ai_2": [1,28,12,0,0,4,8,"e97cc791",111,"deputShip 1/6, preciShip 1/31, sargonShip 0/8, siracusaShip 1/54, steadShip 0/16, swiftShip 1/20, yanShip 0/1",30,30,0,73], "ai_3": [1,31,12,0,0,4,8,"db03c900",105,"deputShip 1/14, kjeragShip 0/5, preciShip 1/59, siracusaShip 1/32, yanShip 0/7",30,30,0,76] }, { "round": 10, "ai_0": [1,26,12,0,2,5,8,"3152a1f4",147,"deputShip 2/53, kjeragShip 0/7, sargonShip 1/31, steadShip 1/46, visiShip 1/17",29,29,0,88], - "ai_1": [1,45,12,0,0,5,8,"f74dcafb",153,"deputShip 2/22, emptyShip 1/8, preciShip 1/40, sargonShip 0/2, siracusaShip 1/52, swiftShip 1/31",29,29,0,81], + "ai_1": [1,45,12,0,0,5,8,"f74dcafb",151,"deputShip 2/22, emptyShip 1/8, preciShip 1/38, sargonShip 0/2, siracusaShip 1/52, swiftShip 1/31",29,29,0,81], "ai_2": [1,28,12,0,0,5,8,"982bbf6e",139,"deputShip 1/8, preciShip 1/46, sargonShip 0/8, siracusaShip 1/58, steadShip 0/16, swiftShip 1/27, yanShip 0/1",29,29,0,84], "ai_3": [1,31,12,0,0,5,8,"cd9b063c",118,"deputShip 0/14, kjeragShip 1/5, preciShip 1/73, siracusaShip 1/40, yanShip 0/7",29,29,0,89] }, @@ -965,21 +965,21 @@ "ai_0": [1,26,14,0,2,5,8,"69ce1996",166,"deputShip 1/59, emptyShip 1/2, kjeragShip 0/7, sargonShip 1/33, steadShip 1/48, visiShip 1/24",28,28,0,102], "ai_1": [1,45,12,0,0,5,8,"b6e4200a",185,"deputShip 1/24, emptyShip 1/10, preciShip 1/55, sargonShip 0/2, siracusaShip 1/58, swiftShip 1/38",28,28,0,91], "ai_2": [1,28,12,0,0,5,8,"4247f433",215,"deputShip 1/10, preciShip 1/77, sargonShip 0/8, siracusaShip 1/88, steadShip 0/16, swiftShip 1/40, yanShip 0/1",28,28,0,96], - "ai_3": [1,31,12,0,0,5,7,"70f89a1a",151,"deputShip 0/14, kjeragShip 1/10, preciShip 1/85, siracusaShip 1/56, yanShip 0/7",28,28,0,101] + "ai_3": [1,31,12,0,0,5,7,"70f89a1a",148,"deputShip 0/14, kjeragShip 1/7, preciShip 1/85, siracusaShip 1/56, yanShip 0/7",28,28,0,101] }, { "round": 12, "ai_0": [1,26,14,0,0,6,8,"a03db7f8",190,"deputShip 2/67, emptyShip 1/6, kjeragShip 0/7, sargonShip 1/37, steadShip 1/52, visiShip 1/28",44,46,2,116], "ai_1": [1,45,12,0,0,6,8,"2ef23907",233,"deputShip 1/26, emptyShip 1/12, preciShip 1/86, sargonShip 0/2, siracusaShip 1/64, swiftShip 1/45",46,46,0,104], - "ai_2": [1,28,12,0,0,6,8,"1186c81c",279,"deputShip 2/14, preciShip 1/110, sargonShip 0/8, siracusaShip 1/106, steadShip 0/16, swiftShip 1/49, yanShip 0/1",46,46,0,107], - "ai_3": [1,31,12,0,0,6,7,"948cb792",176,"deputShip 1/16, kjeragShip 0/12, preciShip 1/102, siracusaShip 1/58, yanShip 0/7",46,46,0,113] + "ai_2": [1,28,12,0,0,6,8,"1186c81c",273,"deputShip 2/14, preciShip 1/104, sargonShip 0/8, siracusaShip 1/106, steadShip 0/16, swiftShip 1/49, yanShip 0/1",46,46,0,107], + "ai_3": [1,31,12,0,0,6,7,"948cb792",176,"deputShip 1/16, kjeragShip 0/9, preciShip 1/102, siracusaShip 1/58, yanShip 0/7",46,46,0,113] }, { "round": 13, "ai_0": [1,26,12,0,2,6,8,"aad6c541",158,"deputShip 1/73, emptyShip 1/8, indomShip 1/2, kjeragShip 0/7, preciShip 1/2, sargonShip 1/39, steadShip 0/52, victoriaShip 1/4, visiShip 1/30",32,32,0,129], "ai_1": [1,45,12,0,0,6,8,"a908af7f",281,"deputShip 1/28, emptyShip 1/14, preciShip 2/121, sargonShip 0/2, siracusaShip 1/66, swiftShip 1/52",32,32,0,116], - "ai_2": [1,28,12,0,0,6,8,"2a09b693",328,"deputShip 1/16, preciShip 1/128, sargonShip 0/8, siracusaShip 1/128, steadShip 0/16, swiftShip 1/56, yanShip 0/1",32,32,0,119], - "ai_3": [1,31,12,0,2,6,7,"551cd12a",195,"deputShip 0/18, kjeragShip 0/12, preciShip 2/117, siracusaShip 1/76, visiShip 1/2, yanShip 0/7",32,32,0,126] + "ai_2": [1,28,12,0,0,6,8,"2a09b693",322,"deputShip 1/16, preciShip 1/120, sargonShip 0/8, siracusaShip 1/130, steadShip 0/16, swiftShip 1/56, yanShip 0/1",32,32,0,119], + "ai_3": [1,31,12,0,2,6,7,"551cd12a",195,"deputShip 0/18, kjeragShip 0/9, preciShip 2/117, siracusaShip 1/76, visiShip 1/2, yanShip 0/7",32,32,0,126] } ], "players": { @@ -993,7 +993,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":194,"bossDamage":174047,"dmgDealt":1594715,"gold":144,"itemsEquipped":22,"kills":292,"leaks":2,"lpLost":0,"merges":4,"perfectRounds":12,"refreshes":26}, + "stats": {"activatedLayers":194,"bossDamage":177715,"dmgDealt":1588497,"gold":144,"itemsEquipped":22,"kills":292,"leaks":2,"lpLost":0,"merges":4,"perfectRounds":12,"refreshes":26}, "lineup": ["6_12_a@11,6[3_11_e_a+3_04_e_a]","6_11_a@11,7","3_13_b@11,8[5_01_e_a+3_05_e_a]","2_14_a@10,3","4_07_a@9,3[4_04_e_b+3_08_e_a]","6_06_a@9,4[6_09_e_a+3_02_e_a]","6_08_a@9,8[2_04_e_a+3_01_e_a]","1_06_b@9,9"], "bonds": ["deputShip 1/79","emptyShip 1/10","indomShip 1/7","kjeragShip 0/7","maniShip 1/2","preciShip 2/4","sargonShip 1/41","steadShip 0/52","victoriaShip 1/16","visiShip 1/35","yanShip 0/5"] }, @@ -1007,7 +1007,7 @@ "title": {"id":"comment_4","name":"精英云集","picId":"comment_icon_4","text":"晋升精锐次数最多"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":307,"bossDamage":253911,"dmgDealt":1706980,"gold":128,"itemsEquipped":19,"kills":283,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":10}, + "stats": {"activatedLayers":307,"bossDamage":289540,"dmgDealt":1755183,"gold":128,"itemsEquipped":19,"kills":283,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":10}, "lineup": ["2_14_b@11,3","5_02_a@11,6[2_01_e_a]","6_08_a@11,7[4_02_e_a+3_06_e_a]","5_10_a@11,8[4_03_e_b+3_04_e_b]","6_20_a@10,3","1_08_b@10,8[1_01_e_b+3_03_e_a]","4_14_a@9,8[4_11_e_a+1_05_e_a]","3_18_a@9,9[5_09_e_a+1_01_e_a]"], "bonds": ["deputShip 1/30","emptyShip 1/16","preciShip 2/134","sargonShip 0/2","siracusaShip 1/68","swiftShip 1/59"] }, @@ -1021,9 +1021,9 @@ "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":368,"bossDamage":220894,"dmgDealt":1647388,"gold":129,"itemsEquipped":22,"kills":295,"leaks":0,"lpLost":0,"merges":3,"perfectRounds":13,"refreshes":22}, + "stats": {"activatedLayers":362,"bossDamage":208184,"dmgDealt":1636146,"gold":129,"itemsEquipped":22,"kills":295,"leaks":0,"lpLost":0,"merges":3,"perfectRounds":13,"refreshes":22}, "lineup": ["4_21_a@11,3","1_07_b@11,7[4_03_e_a+1_01_e_b]","1_13_b@11,8[1_05_e_b+1_05_e_a]","5_20_a@10,3[4_02_e_a+5_01_e_a]","3_18_a@10,4[5_02_e_a+4_06_e_b]","2_16_b@9,4[4_04_e_a+2_01_e_b]","5_02_a@9,8","4_14_a@9,9[3_06_e_a+4_05_e_b]"], - "bonds": ["deputShip 1/18","preciShip 1/135","sargonShip 0/8","siracusaShip 1/152","steadShip 0/16","swiftShip 1/63","yanShip 0/1"] + "bonds": ["deputShip 1/18","preciShip 1/127","sargonShip 0/8","siracusaShip 1/154","steadShip 0/16","swiftShip 1/63","yanShip 0/1"] }, "ai_3": { "alive": true, @@ -1035,9 +1035,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 3, "reward": 250, - "stats": {"activatedLayers":225,"bossDamage":491148,"dmgDealt":1931985,"gold":141,"itemsEquipped":35,"kills":283,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":14}, + "stats": {"activatedLayers":225,"bossDamage":464561,"dmgDealt":1896222,"gold":141,"itemsEquipped":35,"kills":283,"leaks":0,"lpLost":0,"merges":4,"perfectRounds":13,"refreshes":14}, "lineup": ["6_18_a@12,8[3_01_e_b]","6_20_a@11,3","6_08_a@11,6","6_12_a@11,7[3_11_e_b+3_01_e_b]","5_20_a@11,8[3_08_e_a+5_02_e_b]","2_16_b@10,8[4_06_e_b]","4_14_b@9,8[6_03_e_a+4_09_e_a]","4_16_a@9,9[4_05_e_a+4_11_e_a]"], - "bonds": ["deputShip 0/18","kjeragShip 0/12","preciShip 2/131","siracusaShip 1/92","visiShip 1/2","yanShip 0/7"] + "bonds": ["deputShip 0/18","kjeragShip 0/9","preciShip 2/131","siracusaShip 1/92","visiShip 1/2","yanShip 0/7"] } } }, @@ -1165,7 +1165,7 @@ "title": null, "trophies": 1, "reward": 149, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":964637,"gold":63,"itemsEquipped":6,"kills":63,"leaks":36,"lpLost":27,"merges":1,"perfectRounds":5,"refreshes":7}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":967466,"gold":63,"itemsEquipped":6,"kills":63,"leaks":36,"lpLost":27,"merges":1,"perfectRounds":5,"refreshes":7}, "lineup": [], "bonds": ["arcaneShip 0/4","kazimierzShip 0/17","kjeragShip 0/2","preciShip 0/21","sargonShip 0/4","steadShip 0/14","swiftShip 0/13"] }, @@ -1193,7 +1193,7 @@ "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, "trophies": 1, "reward": 149, - "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":797756,"gold":65,"itemsEquipped":8,"kills":56,"leaks":40,"lpLost":26,"merges":1,"perfectRounds":3,"refreshes":3}, + "stats": {"activatedLayers":0,"bossDamage":0,"dmgDealt":800275,"gold":65,"itemsEquipped":8,"kills":56,"leaks":40,"lpLost":26,"merges":1,"perfectRounds":3,"refreshes":3}, "lineup": [], "bonds": ["arcaneShip 0/20","deputShip 0/8","kjeragShip 0/17","preciShip 0/13","sargonShip 0/2","skillfulShip 0/5","soloShip 0/9","steadShip 0/4"] } @@ -1209,8 +1209,8 @@ "combat": "server", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_1","hiddenBossId":"boss_9","factions":["FLY","DOT","REFLECTION"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":57,"bossPoolLeft":0,"virtualMs":122900}, - "rng": {"setup":25,"shop":476,"waves":0,"draft":34,"bots":18068,"meta":124}, + "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":39,"bossPoolLeft":0,"virtualMs":121400}, + "rng": {"setup":25,"shop":511,"waves":0,"draft":34,"bots":18063,"meta":112}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -1245,38 +1245,38 @@ }, { "round": 7, - "ai_0": [1,29,13,0,2,4,8,"94f5b782",55,"arcaneShip 1/8, deputShip 2/6, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/23, soloShip 1/18, steadShip 0/2",27,27,0,53], + "ai_0": [1,29,13,0,2,4,8,"94f5b782",57,"arcaneShip 1/8, deputShip 2/6, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/25, soloShip 1/18, steadShip 0/2",27,27,0,53], "ai_1": [1,28,11,0,3,4,8,"c6add328",15,"arcaneShip 0/2, kjeragShip 0/13, preciShip 2/7, siracusaShip 1/0, soloShip 1/0, steadShip 1/8",27,27,0,49] }, { "round": 8, - "ai_0": [1,29,13,0,1,4,8,"d070c283",86,"arcaneShip 2/18, deputShip 2/10, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/36, soloShip 1/22, steadShip 0/2",24,24,0,66], + "ai_0": [1,29,13,0,1,4,8,"d070c283",88,"arcaneShip 2/18, deputShip 2/10, kjeragShip 0/2, preciShip 0/4, siracusaShip 1/38, soloShip 1/22, steadShip 0/2",24,24,0,66], "ai_1": [1,28,14,0,0,4,8,"3a8e9585",24,"arcaneShip 0/2, emptyShip 1/0, kjeragShip 1/13, preciShip 1/7, siracusaShip 1/4, soloShip 1/0, steadShip 0/8",13,23,10,63] }, { "round": 9, - "ai_0": [1,29,13,0,0,4,8,"7ca04eb4",149,"arcaneShip 2/38, deputShip 1/12, indomShip 0/8, kjeragShip 0/2, miraShip 1/2, preciShip 0/4, siracusaShip 1/60, soloShip 1/24, steadShip 0/2, suntShip 1/2, victoriaShip 1/11, visiShip 0/8",15,15,0,79], + "ai_0": [1,29,13,0,0,4,8,"7ca04eb4",151,"arcaneShip 2/38, deputShip 1/12, indomShip 0/8, kjeragShip 0/2, miraShip 1/2, preciShip 0/4, siracusaShip 1/62, soloShip 1/24, steadShip 0/2, suntShip 1/2, victoriaShip 1/11, visiShip 0/8",15,15,0,79], "ai_1": [1,28,12,0,0,4,8,"1575876e",76,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/28, preciShip 2/40, siracusaShip 1/8, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",15,15,0,75] }, { "round": 10, - "ai_0": [1,29,12,0,2,5,8,"42c3188f",174,"arcaneShip 2/42, deputShip 1/14, indomShip 0/8, kjeragShip 0/2, miraShip 1/4, preciShip 0/4, siracusaShip 1/70, soloShip 1/26, steadShip 0/2, suntShip 1/4, victoriaShip 1/14, visiShip 0/8",24,24,0,92], + "ai_0": [1,29,12,0,2,5,8,"42c3188f",176,"arcaneShip 2/42, deputShip 1/14, indomShip 0/8, kjeragShip 0/2, miraShip 1/4, preciShip 0/4, siracusaShip 1/72, soloShip 1/26, steadShip 0/2, suntShip 1/4, victoriaShip 1/14, visiShip 0/8",24,24,0,92], "ai_1": [1,28,12,0,0,5,8,"d4d2685b",107,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/61, siracusaShip 1/8, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",23,23,0,86] }, { "round": 11, - "ai_0": [1,29,14,0,0,5,8,"3f588d13",215,"arcaneShip 2/50, deputShip 1/16, indomShip 0/8, kjeragShip 0/2, miraShip 1/6, preciShip 0/4, siracusaShip 1/92, soloShip 1/28, steadShip 0/2, suntShip 1/6, victoriaShip 1/17, visiShip 0/8",22,23,1,107], + "ai_0": [1,29,14,0,0,5,8,"bbafb340",217,"arcaneShip 2/50, deputShip 1/16, indomShip 0/8, kjeragShip 0/2, miraShip 1/6, preciShip 0/4, siracusaShip 1/94, soloShip 1/28, steadShip 0/2, suntShip 1/6, victoriaShip 1/17, visiShip 0/8",23,23,0,107], "ai_1": [1,28,12,0,0,5,8,"164a05d7",130,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/74, siracusaShip 1/18, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",23,23,0,97] }, { "round": 12, - "ai_0": [1,29,12,0,0,6,8,"79353407",232,"arcaneShip 2/52, deputShip 1/18, indomShip 0/8, kjeragShip 0/2, miraShip 1/8, preciShip 0/4, siracusaShip 1/96, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",29,46,17,119], - "ai_1": [1,28,12,0,0,6,8,"94e71f96",166,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/98, siracusaShip 1/30, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",46,46,0,108] + "ai_0": [1,29,12,0,0,6,8,"68ce3885",234,"arcaneShip 2/52, deputShip 1/18, indomShip 0/8, kjeragShip 0/2, miraShip 1/8, preciShip 0/4, siracusaShip 1/98, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",34,47,13,119], + "ai_1": [1,28,12,0,0,6,8,"94e71f96",174,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/98, siracusaShip 1/38, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",46,46,0,108] }, { "round": 13, - "ai_0": [1,29,12,0,0,6,8,"30f0ecf3",243,"arcaneShip 2/60, deputShip 0/18, indomShip 0/8, kjeragShip 0/2, maniShip 1/0, miraShip 1/12, preciShip 0/4, siracusaShip 1/104, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/29, visiShip 0/8",39,39,0,132], - "ai_1": [1,28,12,0,0,6,8,"1b87e75a",202,"arcaneShip 0/2, indomShip 0/8, kjeragShip 1/38, preciShip 2/122, siracusaShip 1/42, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",39,39,0,122] + "ai_0": [1,19,12,0,0,6,8,"e4c62459",238,"arcaneShip 2/60, deputShip 0/18, indomShip 0/8, kjeragShip 0/2, maniShip 1/0, miraShip 1/8, preciShip 0/4, siracusaShip 1/112, soloShip 1/30, steadShip 0/2, suntShip 1/8, victoriaShip 1/20, visiShip 0/8",22,39,17,129], + "ai_1": [1,20,12,0,0,6,8,"804960b4",215,"arcaneShip 0/4, indomShip 0/8, kjeragShip 1/38, preciShip 2/121, siracusaShip 1/56, soloShip 1/0, steadShip 0/8, suntShip 1/0, victoriaShip 0/8, visiShip 0/8",31,39,8,120] } ], "players": { @@ -1285,28 +1285,28 @@ "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 29, + "lp": 19, "bandId": "band_doberm", - "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, + "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":287,"bossDamage":269480,"dmgDealt":3592668,"gold":145,"itemsEquipped":24,"kills":282,"leaks":19,"lpLost":1,"merges":3,"perfectRounds":10,"refreshes":21}, - "lineup": ["2_10_a@12,3[3_05_e_a+3_11_e_b]","5_20_a@11,3[4_07_e_a+1_01_e_a]","5_12_a@11,6[4_10_e_a+1_05_e_b]","6_11_a@11,7","1_13_b@10,3[3_09_e_a]","4_10_a@10,7[6_09_e_a+5_09_e_b]","1_08_b@10,8[1_02_e_a+5_03_e_a]","6_07_a@9,9[3_08_e_a+4_05_e_b]"], - "bonds": ["arcaneShip 2/71","deputShip 0/18","indomShip 0/8","kjeragShip 0/2","maniShip 1/0","miraShip 1/16","preciShip 0/4","siracusaShip 1/127","soloShip 1/30","steadShip 0/2","suntShip 1/8","victoriaShip 1/35","visiShip 0/8"] + "stats": {"activatedLayers":283,"bossDamage":779391,"dmgDealt":3811993,"gold":142,"itemsEquipped":20,"kills":276,"leaks":31,"lpLost":11,"merges":4,"perfectRounds":10,"refreshes":23}, + "lineup": ["5_20_a@11,3[4_07_e_a+1_01_e_a]","5_12_a@11,6[6_09_e_a+3_08_e_b]","6_11_a@11,7","2_10_a@10,3[3_05_e_a+3_11_e_b]","4_10_a@10,7[4_09_e_a+1_05_e_a]","1_08_b@10,8[1_02_e_a+5_03_e_a]","4_11_b@9,8[4_08_e_a]","6_07_a@9,9[4_10_e_a+4_05_e_a]"], + "bonds": ["arcaneShip 2/74","deputShip 0/18","indomShip 0/8","kjeragShip 0/2","maniShip 1/0","miraShip 1/12","preciShip 0/4","siracusaShip 1/130","soloShip 1/30","steadShip 0/2","suntShip 1/8","victoriaShip 1/29","visiShip 0/8"] }, "ai_1": { "alive": true, "victory": true, "roundsPassed": 14, "eliminatedRound": null, - "lp": 28, + "lp": 20, "bandId": "band_malkie", - "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, + "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":218,"bossDamage":1080520,"dmgDealt":4726216,"gold":133,"itemsEquipped":26,"kills":274,"leaks":12,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":19}, - "lineup": ["3_20_b@11,3[3_04_e_b+1_02_e_b]","5_02_a@11,6","3_11_b@11,7[3_03_e_a+5_02_e_b]","6_18_a@10,3[3_06_e_a+5_02_e_b]","6_05_a@10,7[4_08_e_b+5_02_e_b]","1_08_b@10,8[3_11_e_a+5_03_e_a]","5_10_a@9,8[1_01_e_a+5_07_e_a]","6_19_a@9,9[4_10_e_a+4_03_e_a]"], - "bonds": ["arcaneShip 0/2","indomShip 0/8","kazimierzShip 0/8","kjeragShip 1/46","preciShip 2/122","siracusaShip 1/42","soloShip 1/0","steadShip 0/8","suntShip 1/0","swiftShip 1/8","victoriaShip 0/8","visiShip 0/8"] + "stats": {"activatedLayers":215,"bossDamage":570609,"dmgDealt":4056057,"gold":132,"itemsEquipped":21,"kills":261,"leaks":20,"lpLost":8,"merges":3,"perfectRounds":10,"refreshes":22}, + "lineup": ["3_20_a@12,3[4_03_e_a+5_01_e_a]","5_10_a@11,3[1_01_e_a+3_04_e_b]","5_02_a@11,6","1_17_a@11,7[5_07_e_a+1_02_e_b]","3_11_b@10,3[3_03_e_a+5_02_e_b]","1_08_b@10,8[3_11_e_a+3_06_e_a]","1_02_b@9,4[4_10_e_a+4_08_e_b]","6_18_a@9,9[5_02_e_b+4_11_e_a]"], + "bonds": ["arcaneShip 0/4","indomShip 0/8","kjeragShip 1/38","preciShip 2/121","siracusaShip 1/56","soloShip 1/0","steadShip 0/8","suntShip 1/0","victoriaShip 0/8","visiShip 0/8"] } } }, @@ -1370,7 +1370,7 @@ }, { "round": 12, - "ai_0": [1,399,14,0,0,6,8,"bc6cba50",2478,"arcaneShip 1/310, deputShip 0/300, egirShip 0/300, emptyShip 0/300, indomShip 1/300, investShip 0/300, kazimierzShip 1/308, kjeragShip 0/310, lateranoShip 0/300, maniShip 0/300, miraShip 0/300, preciShip 1/314, raidShip 0/300, sargonShip 0/300, siracusaShip 0/306, skillfulShip 0/316, soloShip 1/307, steadShip 1/310, suntShip 1/300, swiftShip 1/329, victoriaShip 0/300, visiShip 0/300, yanShip 0/300",114,114,0,112] + "ai_0": [1,399,14,0,0,6,8,"bc6cba50",2478,"arcaneShip 1/310, deputShip 0/300, egirShip 0/300, emptyShip 0/300, indomShip 1/300, investShip 0/300, kazimierzShip 1/308, kjeragShip 0/310, lateranoShip 0/300, maniShip 0/300, miraShip 0/300, preciShip 1/314, raidShip 0/300, sargonShip 0/300, siracusaShip 0/306, skillfulShip 0/316, soloShip 1/307, steadShip 1/310, suntShip 1/300, swiftShip 1/329, victoriaShip 0/300, visiShip 0/300, yanShip 0/300",115,115,0,112] }, { "round": 13, @@ -1388,7 +1388,7 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 0, "reward": 425, - "stats": {"activatedLayers":2528,"bossDamage":4580000,"dmgDealt":6435847,"gold":174,"itemsEquipped":21,"kills":383,"leaks":1,"lpLost":1,"merges":6,"perfectRounds":12,"refreshes":34}, + "stats": {"activatedLayers":2528,"bossDamage":4580000,"dmgDealt":6435237,"gold":174,"itemsEquipped":21,"kills":384,"leaks":1,"lpLost":1,"merges":6,"perfectRounds":12,"refreshes":34}, "lineup": ["2_01_a@12,6","4_02_b@12,7[5_02_e_a+1_02_e_b]","6_11_a@12,8","1_17_b@11,5[3_08_e_b+2_01_e_b]","1_19_b@11,8[1_05_e_b]","4_14_b@10,4[4_03_e_b+2_01_e_b]","2_18_b@10,5[1_02_e_a+3_04_e_a]","4_07_b@9,9[6_09_e_a+1_02_e_b]"], "bonds": ["arcaneShip 1/314","deputShip 0/300","egirShip 0/300","emptyShip 0/300","indomShip 0/300","investShip 0/300","kazimierzShip 1/308","kjeragShip 0/310","lateranoShip 1/300","maniShip 1/300","miraShip 0/300","preciShip 2/338","raidShip 0/300","sargonShip 0/300","siracusaShip 0/306","skillfulShip 0/316","soloShip 0/307","steadShip 1/313","suntShip 2/300","swiftShip 1/355","victoriaShip 0/300","visiShip 0/300","yanShip 0/300"] } @@ -1482,10 +1482,10 @@ "eliminatedRound": null, "lp": 400, "bandId": "band_sarkazb", - "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, + "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2267,"bossDamage":8510947,"dmgDealt":28875636,"gold":149,"itemsEquipped":23,"kills":293,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, + "stats": {"activatedLayers":2267,"bossDamage":6786913,"dmgDealt":24304725,"gold":149,"itemsEquipped":23,"kills":291,"leaks":0,"lpLost":0,"merges":6,"perfectRounds":13,"refreshes":16}, "lineup": ["3_16_b@12,8[3_01_e_a+1_01_e_b]","4_09_b@11,5","3_11_b@11,8[3_02_e_a+6_06_e_a]","1_02_b@10,4[1_02_e_a+4_02_e_a]","5_14_a@10,8[3_03_e_a+1_05_e_a]","6_20_a@9,6","3_20_a@9,8[3_07_e_a+3_08_e_a]","6_05_a@9,9[2_04_e_a+5_02_e_b]"], "bonds": ["arcaneShip 0/316","deputShip 1/312","egirShip 0/300","emptyShip 0/300","indomShip 0/300","investShip 0/300","kazimierzShip 0/302","kjeragShip 1/343","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/343","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 0/319","soloShip 1/310","steadShip 1/341","suntShip 1/310","swiftShip 1/308","victoriaShip 0/300","visiShip 0/300","yanShip 0/300"] }, @@ -1496,10 +1496,10 @@ "eliminatedRound": null, "lp": 400, "bandId": "band_doberm", - "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, + "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 8, "reward": 425, - "stats": {"activatedLayers":2301,"bossDamage":5378453,"dmgDealt":19998936,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, + "stats": {"activatedLayers":2301,"bossDamage":7103127,"dmgDealt":23983658,"gold":165,"itemsEquipped":31,"kills":276,"leaks":0,"lpLost":0,"merges":5,"perfectRounds":13,"refreshes":38}, "lineup": ["2_10_a@11,5[2_03_e_b+3_09_e_a]","5_03_a@11,8[1_02_e_a+5_02_e_a]","1_06_a@10,3[1_05_e_a+3_02_e_a]","3_16_a@10,4[3_03_e_b+4_04_e_b]","5_06_a@10,8[3_09_e_b+3_09_e_b]","4_21_b@9,6[4_06_e_a+3_10_e_b]","5_02_a@9,8[4_09_e_a+3_06_e_b]","1_17_b@9,9[3_08_e_a+1_01_e_a]"], "bonds": ["arcaneShip 1/327","deputShip 1/318","egirShip 0/300","emptyShip 0/300","indomShip 1/308","investShip 0/300","kazimierzShip 0/300","kjeragShip 0/300","lateranoShip 0/300","maniShip 0/300","miraShip 0/300","preciShip 1/404","raidShip 0/300","sargonShip 0/300","siracusaShip 0/300","skillfulShip 1/308","soloShip 0/310","steadShip 0/323","suntShip 1/304","swiftShip 0/300","victoriaShip 1/332","visiShip 0/300","yanShip 0/305"] } @@ -1515,8 +1515,8 @@ "combat": "client", "boost": null, "setup": {"stageId":"act1autochess_m01","bossId":"boss_5","hiddenBossId":"boss_10","factions":["DOT","INVISIBLE","REFLECTION"]}, - "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":30,"bossPoolLeft":0,"virtualMs":121400}, - "rng": {"setup":25,"shop":542,"waves":0,"draft":34,"bots":18059,"meta":26}, + "end": {"victory":false,"roundsPassed":13,"hiddenReached":false,"hiddenCleared":false,"reason":"defeat","teamLp":0,"bossPoolLeft":107915,"virtualMs":119900}, + "rng": {"setup":25,"shop":511,"waves":0,"draft":34,"bots":18074,"meta":23}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ { @@ -1556,63 +1556,63 @@ }, { "round": 8, - "h_0": [1,28,13,0,0,4,8,"905534ef",53,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/9, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/19, yanShip 0/5",15,15,0,64], + "h_0": [1,28,13,0,0,4,8,"905534ef",50,"arcaneShip 1/4, kazimierzShip 0/8, preciShip 1/9, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/19, yanShip 0/5",15,15,0,64], "ai_0": [1,23,12,0,0,4,8,"01511dde",72,"arcaneShip 0/2, deputShip 0/12, kazimierzShip 0/8, lateranoShip 1/0, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/10, skillfulShip 1/21, suntShip 1/6, swiftShip 1/35",15,15,0,64] }, { "round": 9, - "h_0": [1,28,12,0,0,4,8,"92ac83e2",63,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/14, siracusaShip 1/18, suntShip 1/0, swiftShip 1/24, yanShip 0/13",16,23,7,76], + "h_0": [1,28,12,0,0,4,8,"4035df41",63,"arcaneShip 1/7, kazimierzShip 0/8, preciShip 1/14, siracusaShip 1/18, suntShip 1/0, swiftShip 1/24, yanShip 0/13",17,23,6,76], "ai_0": [1,23,12,0,0,4,8,"b8494f7f",142,"arcaneShip 0/2, deputShip 1/14, kazimierzShip 0/8, lateranoShip 1/21, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/24, skillfulShip 1/34, suntShip 1/8, swiftShip 1/41",23,23,0,75] }, { "round": 10, - "h_0": [1,28,12,0,0,5,8,"dca920d5",80,"arcaneShip 1/12, kazimierzShip 0/8, preciShip 1/21, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/29, yanShip 0/13",30,31,1,88], + "h_0": [1,28,12,0,0,5,8,"1a942a0c",66,"arcaneShip 0/7, kazimierzShip 0/8, preciShip 1/19, siracusaShip 1/18, skillfulShip 1/0, suntShip 1/0, swiftShip 1/29, yanShip 0/13",31,31,0,88], "ai_0": [1,23,12,0,1,5,8,"f21d9f0c",176,"arcaneShip 0/2, deputShip 1/22, kazimierzShip 0/8, lateranoShip 1/29, miraShip 1/2, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/26, skillfulShip 1/42, suntShip 1/10, swiftShip 1/45",31,31,0,87] }, { "round": 11, - "h_0": [1,27,12,0,2,5,8,"def68119",90,"arcaneShip 1/12, kazimierzShip 0/8, miraShip 1/0, preciShip 1/26, siracusaShip 1/18, soloShip 1/0, suntShip 1/0, swiftShip 1/34, yanShip 0/13",20,25,5,102], + "h_0": [1,28,12,0,2,5,8,"a1840a82",60,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/4, preciShip 0/19, siracusaShip 1/18, skillfulShip 1/0, soloShip 1/0, suntShip 1/0, swiftShip 1/38, yanShip 0/13",20,25,5,102], "ai_0": [1,23,13,0,0,5,8,"e76ee4ed",224,"arcaneShip 0/2, deputShip 1/30, kazimierzShip 0/8, lateranoShip 1/39, miraShip 1/4, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/40, skillfulShip 1/52, suntShip 1/12, swiftShip 1/47",25,25,0,98] }, { "round": 12, - "h_0": [1,27,14,0,0,6,8,"13e7bef4",100,"arcaneShip 1/12, kazimierzShip 0/8, miraShip 1/0, preciShip 1/31, siracusaShip 1/18, suntShip 1/0, swiftShip 1/39, yanShip 0/13",14,31,17,117], - "ai_0": [1,23,12,0,1,6,8,"4c2311f2",262,"arcaneShip 0/2, deputShip 1/32, kazimierzShip 0/8, lateranoShip 1/57, miraShip 1/6, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/42, skillfulShip 1/62, suntShip 1/14, swiftShip 1/49",31,31,0,112] + "h_0": [1,28,14,0,0,6,8,"efcfaab5",123,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/18, preciShip 1/24, siracusaShip 1/34, soloShip 1/0, suntShip 1/0, swiftShip 1/47, yanShip 0/13",15,31,16,116], + "ai_0": [1,23,12,0,1,6,8,"3f2e303b",262,"arcaneShip 0/2, deputShip 1/32, kazimierzShip 0/8, lateranoShip 1/57, miraShip 1/6, preciShip 0/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/42, skillfulShip 1/62, suntShip 1/14, swiftShip 1/49",31,31,0,112] }, { "round": 13, - "h_0": [1,17,12,0,0,6,8,"b622b233",158,"arcaneShip 1/18, emptyShip 1/0, kazimierzShip 0/8, miraShip 1/0, preciShip 2/42, raidShip 1/24, siracusaShip 1/30, suntShip 1/0, swiftShip 1/44, yanShip 0/13",15,57,42,129], - "ai_0": [1,13,13,0,2,6,8,"e0005cff",264,"arcaneShip 0/2, deputShip 0/32, kazimierzShip 0/8, lateranoShip 1/71, miraShip 1/6, preciShip 0/2, raidShip 1/2, sargonShip 0/2, siracusaShip 1/54, skillfulShip 1/68, suntShip 1/14, swiftShip 1/49",37,57,20,126] + "h_0": [1,18,12,0,2,6,8,"ae30a774",187,"arcaneShip 0/7, kazimierzShip 0/8, miraShip 1/26, preciShip 1/48, sargonShip 1/24, siracusaShip 1/38, suntShip 1/0, swiftShip 1/51, yanShip 0/13",15,57,42,129], + "ai_0": [1,13,13,0,2,6,8,"38248b3d",202,"arcaneShip 0/2, deputShip 0/32, kazimierzShip 0/8, lateranoShip 1/71, miraShip 1/6, preciShip 1/2, raidShip 0/2, sargonShip 0/2, siracusaShip 1/54, skillfulShip 0/68, suntShip 1/14, swiftShip 1/55",10,57,47,127] } ], "players": { "h_0": { "alive": true, - "victory": true, - "roundsPassed": 14, + "victory": false, + "roundsPassed": 13, "eliminatedRound": null, - "lp": 17, + "lp": 0, "bandId": "band_amedic", - "title": {"id":"comment_6","name":"挥金如土","picId":"comment_icon_6","text":"消耗资金最多"}, - "trophies": 4, - "reward": 400, - "stats": {"activatedLayers":134,"bossDamage":348609,"dmgDealt":2710861,"gold":139,"itemsEquipped":18,"kills":251,"leaks":72,"lpLost":11,"merges":5,"perfectRounds":8,"refreshes":23}, - "lineup": ["5_10_a@12,3[1_02_e_b+6_01_e_a]","6_16_a@12,7","5_20_a@11,3[1_01_e_a+3_11_e_a]","4_14_b@11,8[3_05_e_a+1_02_e_b]","6_12_a@10,3[4_03_e_a+2_01_e_a]","5_07_a@10,7","4_16_a@10,8[4_03_e_b+3_07_e_a]","1_17_b@9,8"], - "bonds": ["arcaneShip 2/24","emptyShip 1/0","kazimierzShip 0/8","miraShip 1/0","preciShip 2/52","raidShip 1/24","siracusaShip 1/34","suntShip 1/0","swiftShip 0/44","yanShip 0/13"] + "title": {"id":"comment_2","name":"不朽盟约","picId":"comment_icon_2","text":"激活的盟约层数总和最高"}, + "trophies": 3, + "reward": 320, + "stats": {"activatedLayers":219,"bossDamage":248468,"dmgDealt":2618336,"gold":145,"itemsEquipped":18,"kills":245,"leaks":69,"lpLost":10,"merges":6,"perfectRounds":9,"refreshes":24}, + "lineup": ["3_13_b@12,3","5_10_a@12,7[1_02_e_b]","5_15_a@11,3[3_11_e_a]","5_02_a@11,8","3_19_b@10,3[6_01_e_b]","1_08_b@10,7[4_11_e_b+4_02_e_a]","4_16_a@10,8[4_03_e_b+3_07_e_a]","6_05_a@9,8[3_01_e_a+1_01_e_a]"], + "bonds": ["arcaneShip 0/11","kazimierzShip 0/16","kjeragShip 0/8","miraShip 1/30","preciShip 1/52","sargonShip 1/24","siracusaShip 1/44","soloShip 1/0","suntShip 1/0","swiftShip 1/69","yanShip 0/13"] }, "ai_0": { "alive": true, - "victory": true, - "roundsPassed": 14, + "victory": false, + "roundsPassed": 13, "eliminatedRound": null, - "lp": 13, + "lp": 0, "bandId": "band_chiave", - "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, - "trophies": 4, - "reward": 400, - "stats": {"activatedLayers":311,"bossDamage":431391,"dmgDealt":4178804,"gold":139,"itemsEquipped":20,"kills":303,"leaks":20,"lpLost":10,"merges":8,"perfectRounds":12,"refreshes":24}, - "lineup": ["3_21_b@12,3[1_05_e_b+1_01_e_a]","5_20_a@12,7","3_01_b@11,3[6_05_e_a+2_01_e_a]","1_13_b@11,8","4_10_b@10,3[3_08_e_a]","4_16_a@10,7[4_11_e_a+4_02_e_a]","6_17_a@10,8[4_04_e_a]","6_01_a@9,8","4_21_a@9,9"], - "bonds": ["arcaneShip 0/2","deputShip 1/34","kazimierzShip 0/8","lateranoShip 1/87","miraShip 1/14","preciShip 0/2","raidShip 1/4","sargonShip 0/2","siracusaShip 1/80","skillfulShip 1/76","suntShip 1/16","swiftShip 0/49"] + "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, + "trophies": 3, + "reward": 320, + "stats": {"activatedLayers":163,"bossDamage":423617,"dmgDealt":3743301,"gold":141,"itemsEquipped":21,"kills":274,"leaks":47,"lpLost":10,"merges":6,"perfectRounds":12,"refreshes":19}, + "lineup": ["6_12_a@12,3","5_10_a@12,7","3_21_b@11,3[1_05_e_b+4_08_e_b]","5_20_a@11,8[3_08_e_b+3_07_e_b]","3_01_b@10,3[5_09_e_a+6_05_e_a]","4_16_a@10,7[4_11_e_a+4_02_e_a]","6_06_a@10,8","6_01_a@9,8"], + "bonds": ["arcaneShip 0/2","deputShip 0/32","emptyShip 1/0","kazimierzShip 0/8","lateranoShip 1/79","miraShip 1/6","preciShip 1/2","raidShip 0/2","sargonShip 0/2","siracusaShip 1/62","skillfulShip 0/68","suntShip 1/14","swiftShip 0/55","visiShip 1/0"] } }, "standIns": { @@ -1627,10 +1627,10 @@ [7,"3_18_a→char_609_acguad 4_16_a→char_615_acspec"], [8,"3_18_a→char_609_acguad 4_16_a→char_615_acspec"], [9,"3_18_a→char_609_acguad 4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], - [10,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], + [10,"3_18_a→char_609_acguad 4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], [11,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo"], - [12,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 5_20_a→char_614_acsupo"], - [13,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 5_20_a→char_614_acsupo"] + [12,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 6_05_a→char_611_acnipe"], + [13,"4_16_a→char_615_acspec 5_10_a→char_606_csuppo 6_05_a→char_611_acnipe"] ] } }, @@ -1645,7 +1645,7 @@ "boost": null, "setup": {"stageId":"act1autochess_m03","bossId":"boss_7","hiddenBossId":"boss_10","factions":["ELEMENT","INVISIBLE","REFLECTION"]}, "end": {"victory":true,"roundsPassed":14,"hiddenReached":false,"hiddenCleared":false,"reason":"victory","teamLp":55,"bossPoolLeft":0,"virtualMs":119900}, - "rng": {"setup":25,"shop":617,"waves":0,"draft":34,"bots":15731,"meta":11}, + "rng": {"setup":25,"shop":617,"waves":0,"draft":34,"bots":15731,"meta":12}, "errors": {"engine":0,"logged":0,"sim":0,"dispatcher":0}, "rounds": [ {"round":1,"h_0":[1,27,4,0,0,5,1,"3e4697a0",0,"",5,5,0,3],"ai_0":[1,28,4,0,0,1,2,"a1734bc6",0,"sargonShip 0/2, soloShip 1/0",5,5,0,4]}, @@ -1693,12 +1693,12 @@ }, { "round": 12, - "h_0": [1,27,12,0,2,6,8,"4ad2225f",392,"preciShip 2/32, raidShip 1/84, sargonShip 1/140, steadShip 1/44, victoriaShip 1/38, visiShip 1/54",33,33,0,112], + "h_0": [1,27,12,0,2,6,8,"4ad2225f",388,"preciShip 2/32, raidShip 1/80, sargonShip 1/140, steadShip 1/40, victoriaShip 1/40, visiShip 1/56",33,33,0,112], "ai_0": [1,28,12,0,2,6,8,"3482ec70",113,"kjeragShip 0/2, miraShip 1/12, raidShip 1/25, sargonShip 0/2, siracusaShip 1/56, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/20, yanShip 0/21",21,33,12,114] }, { "round": 13, - "h_0": [1,27,14,0,0,6,8,"e9d4c984",438,"preciShip 2/56, raidShip 1/103, sargonShip 1/182, steadShip 0/44, suntShip 1/0, victoriaShip 1/38, visiShip 1/59",50,50,0,125], + "h_0": [1,27,14,0,2,6,8,"e9d4c984",452,"preciShip 2/56, raidShip 1/101, sargonShip 1/182, steadShip 0/40, suntShip 1/0, victoriaShip 1/46, visiShip 1/67",50,50,0,125], "ai_0": [1,28,14,0,0,6,8,"53bc4bba",184,"arcaneShip 1/16, kjeragShip 0/2, miraShip 0/12, raidShip 1/30, sargonShip 0/2, siracusaShip 1/72, skillfulShip 1/8, soloShip 1/0, steadShip 0/2, suntShip 1/0, visiShip 1/25, yanShip 1/33",29,50,21,127] } ], @@ -1713,9 +1713,9 @@ "title": {"id":"comment_1","name":"卫戍之星","picId":"comment_icon_1","text":"对敌方领袖造成伤害最高(仅胜利时)"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":454,"bossDamage":1136590,"dmgDealt":5116869,"gold":137,"itemsEquipped":25,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, - "lineup": ["6_08_a@12,8[5_01_e_a+3_08_e_a]","5_02_a@11,8[3_11_e_a+5_01_e_b]","6_05_a@10,6[2_01_e_b+3_08_e_b]","4_04_a@10,7[4_11_e_a]","4_23_b@10,8","5_diy1_a@9,6[3_01_e_a+4_04_e_b]","6_07_a@9,8[3_04_e_a]","3_05_b@9,9[4_02_e_b]"], - "bonds": ["preciShip 2/56","raidShip 1/108","sargonShip 1/182","steadShip 0/44","suntShip 1/0","victoriaShip 1/44","visiShip 1/64"] + "stats": {"activatedLayers":468,"bossDamage":1141856,"dmgDealt":5122032,"gold":139,"itemsEquipped":26,"kills":341,"leaks":1,"lpLost":0,"merges":3,"perfectRounds":12,"refreshes":44}, + "lineup": ["6_08_a@12,8[5_01_e_a+3_08_e_a]","5_02_a@11,8[3_11_e_a+5_01_e_b]","6_05_a@10,6[2_01_e_b+3_08_e_b]","4_04_a@10,7[4_11_e_a]","4_23_b@10,8","5_diy1_a@9,6[3_01_e_a+4_04_e_b]","6_07_a@9,8[4_05_e_a+3_04_e_a]","3_05_b@9,9[4_02_e_b]"], + "bonds": ["preciShip 2/56","raidShip 1/106","sargonShip 1/182","steadShip 0/40","suntShip 1/0","victoriaShip 1/52","visiShip 1/72"] }, "ai_0": { "alive": true, @@ -1727,7 +1727,7 @@ "title": {"id":"comment_3","name":"坚若磐石","picId":"comment_icon_3","text":"目标生命值损失最少"}, "trophies": 4, "reward": 400, - "stats": {"activatedLayers":240,"bossDamage":438410,"dmgDealt":3041910,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, + "stats": {"activatedLayers":240,"bossDamage":433144,"dmgDealt":3036747,"gold":139,"itemsEquipped":22,"kills":257,"leaks":33,"lpLost":0,"merges":4,"perfectRounds":11,"refreshes":14}, "lineup": ["6_16_a@12,8[2_01_e_a]","2_04_a@11,7","5_12_a@11,8[1_05_e_b+3_03_e_b]","5_20_b@10,6[1_01_e_a+3_11_e_a]","3_03_b@10,8[3_02_e_a+4_04_e_a]","4_16_a@9,7[3_07_e_a+4_08_e_a]","1_08_b@9,8[1_02_e_a+4_06_e_a]","4_04_a@9,9[4_11_e_a+4_12_e_a]"], "bonds": ["arcaneShip 1/28","kjeragShip 0/2","miraShip 0/12","raidShip 1/35","sargonShip 0/2","siracusaShip 1/92","skillfulShip 1/16","soloShip 1/0","steadShip 0/2","suntShip 1/0","visiShip 1/30","yanShip 1/39"] } diff --git a/test/golden/roster.json b/test/golden/roster.json index 49278100..26155055 100644 --- a/test/golden/roster.json +++ b/test/golden/roster.json @@ -142,22 +142,22 @@ "rngDraws": 59, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":83,"total":85,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":14,"dmg":119766,"bossDmg":0,"heal":19933,"deaths":3,"layerGains":{"preciShip":3}} + "p1": {"killed":83,"total":85,"perfect":false,"leaks":2,"leaksUncounted":0,"coins":14,"dmg":119766,"bossDmg":0,"heal":20323,"deaths":3,"layerGains":{"preciShip":3}} }, "units": [ ["p1",1,"op","chess_char_1_10_b",0,"uniequip_002_sunbr",2493,1,5,0,0,0,288,2,2], ["p1",2,"op","chess_char_1_12_b",1,"uniequip_002_estell",2589,1,7,7,2056,288,0,26,1], - ["p1",3,"op","chess_char_1_20_b",1,"uniequip_002_liskam",2725.1,1,10,17,24011,363,0,70,1], + ["p1",3,"op","chess_char_1_20_b",1,"uniequip_002_liskam",2892,1,10,17,24011,363,0,70,1], ["p1",4,"op","chess_char_1_18_b",1,"uniequip_002_utage",809.38,1,11,10,22101,9469,6924,99,1], - ["p1",5,"op","chess_char_1_19_b",1,"uniequip_002_wildmn",0,0,14,6,43152,8460,0,83,2], + ["p1",5,"op","chess_char_1_19_b",1,"uniequip_002_wildmn",0,0,14,6,43152,8749,0,83,2], ["p1",6,"op","chess_char_1_13_b",1,"uniequip_002_podego",2446.5,1,8,5,1049,0,0,4,2], ["p1",7,"op","chess_char_1_14_b",1,"uniequip_002_greyy",1505,1,12,8,2578,2093,0,20,1], ["p1",8,"op","chess_char_1_17_b",1,"uniequip_002_indigo",0,0,15,7,9634,1613,0,9,1], ["p1",9,"op","chess_char_2_01_a",1,null,1694,1,4,9,3985,0,0,22,1], - ["p1",10,"op","chess_char_2_02_a",1,null,1400,1,6,0,0,0,6885,35,4], + ["p1",10,"op","chess_char_2_02_a",1,null,1400,1,6,0,0,0,7363,39,4], ["p1",11,"op","chess_char_2_04_a",1,null,977,1,9,14,11200,0,0,58,3], - ["p1",12,"op","chess_char_2_05_a",1,null,0,0,13,0,0,5096,2802,22,1], - ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,106,0,0,0,3034,50,null], + ["p1",12,"op","chess_char_2_05_a",1,null,0,0,13,0,0,5030,2430,22,1], + ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,106,0,0,0,3318,55,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] @@ -174,17 +174,17 @@ "enemy_1197_sfshu": [9,9,0,211,20250], "enemy_1198_msfshu": [27,27,0,0,81], "enemy_1200_msfjin": [1,1,0,0,27], - "enemy_1234_dsubrl_2": [1,1,0,9520,12600], + "enemy_1234_dsubrl_2": [1,1,0,9584,12600], "enemy_1292_duskld": [1,1,0,992,9010], "enemy_1387_winshd": [1,0,0,286,10513], "enemy_1502_crowns": [1,1,0,144,5400], - "enemy_2008_flking": [1,0,0,10264,0], + "enemy_2008_flking": [1,0,0,10423,0], "enemy_9016_acstmr": [1,1,0,0,7] }, - "hooks": [1,105,3300,570,570,660,773,232,86,90,20,19,0,15887,207,29,85,0,1,94,1,0,0], - "events": {"atk":647,"bounty":7,"deploy":17,"die":90,"dmg":749,"engage":9,"fx":101,"heal":203,"layer":1,"skill":39,"spawn":101,"status":230}, + "hooks": [1,105,3300,579,579,660,773,241,86,90,20,19,0,15985,207,29,85,0,1,92,1,0,0], + "events": {"atk":656,"bounty":7,"deploy":17,"die":90,"dmg":749,"engage":9,"fx":101,"heal":212,"layer":1,"skill":39,"spawn":101,"status":228}, "fx": {"aoe":1,"blink":1,"displace":8,"ember":1,"explode":9,"garrison":1,"heal":2,"phase":1,"pulse":41,"reveal":1,"sleep":7,"summon":25,"undying":1,"zone":2}, - "snaps": "ffe12829 556d50e1 38dd64c5 7e6a2c12 6b52768c f98cdb17 6bd2a8be fe0ddc28 58adad65 ac0ffb21 0b14202d" + "snaps": "ffe12829 556d50e1 da7db459 81849f4b 4e232e69 eedbef98 c39ed31b ac57d325 1cfe2ef9 4afd989a 6671745c" }, "roster-004": { "about": "pass 0 band 2: chess_char_2_08_a chess_char_2_17_a chess_char_2_18_a chess_char_2_07_a chess_char_2_09_a chess_char_2_11_a chess_char_2_13_a chess_char_2_16_a chess_char_2_12_a chess_char_2_06_a chess_char_2_10_a chess_char_2_14_a", @@ -261,44 +261,44 @@ "total": 84, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 274, + "rngDraws": 276, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":84,"total":84,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":12,"dmg":309533,"bossDmg":0,"heal":31961,"deaths":0,"layerGains":{}}}, + "players": {"p1":{"killed":84,"total":84,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":12,"dmg":309533,"bossDmg":0,"heal":31086,"deaths":0,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_2_07_b",1,"uniequip_002_ghost",2712.64,1,2,0,0,1305,1100,0,0], ["p1",2,"op","chess_char_2_08_b",1,"uniequip_002_bubble",3373,1,4,0,380,984,0,0,1], - ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",2133,1,6,24,82154,0,0,55,2], - ["p1",4,"op","chess_char_2_11_b",1,"uniequip_002_kazema",2214,1,8,13,86408,11311,0,88,3], - ["p1",5,"op","chess_char_2_12_b",1,"uniequip_002_gravel",1612,1,10,2,7049,7713,0,124,1], + ["p1",3,"op","chess_char_2_09_b",1,"uniequip_002_humus",2133,1,6,24,82237,0,0,55,2], + ["p1",4,"op","chess_char_2_11_b",1,"uniequip_002_kazema",2214,1,8,13,86408,10911,0,88,3], + ["p1",5,"op","chess_char_2_12_b",1,"uniequip_002_gravel",1612,1,10,2,7049,7614,0,124,1], ["p1",6,"op","chess_char_2_19_a",1,null,1021.2,1,11,1,14887,1271,166,26,3], - ["p1",7,"op","chess_char_2_01_b",1,"uniequip_002_excu",2146,1,12,20,36317,5137,0,22,1], - ["p1",8,"op","chess_char_2_02_b",1,"uniequip_002_silent",1614,1,1,0,0,0,7165,25,5], - ["p1",9,"op","chess_char_2_04_b",1,"uniequip_002_grabds",1270,1,3,10,36532,2115,0,50,3], - ["p1",10,"op","chess_char_2_05_b",1,"uniequip_002_harold",1971.2,1,5,0,0,405,10227,36,2], - ["p1",11,"op","chess_char_2_06_b",0,"uniequip_002_papyrs",1639,1,7,0,0,677,11249,26,13], + ["p1",7,"op","chess_char_2_01_b",1,"uniequip_002_excu",2146,1,12,20,36317,4761,0,22,1], + ["p1",8,"op","chess_char_2_02_b",1,"uniequip_002_silent",1614,1,1,0,0,0,7247,27,6], + ["p1",9,"op","chess_char_2_04_b",1,"uniequip_002_grabds",1270,1,3,10,36449,2115,0,50,3], + ["p1",10,"op","chess_char_2_05_b",1,"uniequip_002_harold",1971.2,1,5,0,0,405,8938,38,2], + ["p1",11,"op","chess_char_2_06_b",0,"uniequip_002_papyrs",1639,1,7,0,0,677,10543,25,12], ["p1",12,"op","chess_char_2_10_b",1,"uniequip_002_rockr",1406,1,9,8,45805,1044,0,107,2], - ["p1",13,"token","token_10000_silent_healrb",null,null,1000,0,103,0,0,0,2054,20,null] + ["p1",13,"token","token_10000_silent_healrb",null,null,1000,1,104,0,0,0,3092,30,null] ], "enemies": { - "enemy_10027_vtsk": [1,1,0,7736,24000], + "enemy_10027_vtsk": [1,1,0,7637,24000], "enemy_1006_shield_2": [1,1,0,0,8000], "enemy_10122_uacann_2": [1,1,0,5114,8000], "enemy_1042_frostd": [1,1,0,0,5200], "enemy_1119_vofsd": [1,1,0,125,8800], "enemy_1170_dushld": [1,1,0,2,5600], "enemy_1202_msfzhi": [1,1,0,0,2], - "enemy_1249_lysdb_2": [15,15,0,62,72000], + "enemy_1249_lysdb_2": [15,15,0,124,72000], "enemy_1251_lysyta": [52,52,0,62,114400], "enemy_1299_ymkilr_2": [1,1,0,0,8800], - "enemy_1328_cbjedi": [6,6,0,4950,48000], - "enemy_1402_tgshd_2": [1,1,0,1165,10400], - "enemy_1509_mousek": [1,1,0,7673,17600], - "enemy_2010_csdcr": [1,1,0,1751,9600] + "enemy_1328_cbjedi": [6,6,0,5346,48000], + "enemy_1402_tgshd_2": [1,1,0,871,10400], + "enemy_1509_mousek": [1,1,0,7109,17600], + "enemy_2010_csdcr": [1,1,0,1375,9600] }, - "hooks": [1,102,4052,660,660,1687,1680,755,84,90,36,35,0,27675,134,51,84,0,1,84,0,0,0], - "events": {"atk":849,"bounty":6,"deploy":18,"die":90,"dmg":1636,"engage":7,"fx":78,"heal":119,"skill":71,"spawn":97,"status":430}, - "fx": {"counter":2,"explode":4,"expose":19,"overload":2,"phase":1,"shield":10,"shieldBreak":16,"sleep":7,"summon":5,"telegraph":5,"zone":7}, - "snaps": "99134ae2 39c2f442 017e72cb 3522437c 970674df 0d61fe70 642c55f2 5f8c48d5 d4d5ce99 376de8da b81ea77f 90f9a1c1 1026c0cc f8a03198" + "hooks": [1,103,4052,673,673,1687,1680,767,84,90,36,35,0,27763,135,52,84,0,1,84,0,0,0], + "events": {"atk":861,"bounty":6,"deploy":19,"die":90,"dmg":1636,"engage":7,"fx":78,"heal":130,"skill":71,"spawn":97,"status":425}, + "fx": {"counter":2,"explode":4,"expose":19,"overload":2,"phase":1,"shield":9,"shieldBreak":16,"sleep":7,"summon":6,"telegraph":5,"zone":7}, + "snaps": "99134ae2 39c2f442 4a4772c7 aff7ca8c be32611d 3dbafbfd 9c01cc62 47a08316 e1109597 74ee34f3 0b4e6d0e 6d040b8e e6f19c6a 6ce6bc93" }, "roster-006": { "about": "pass 0 band 3: chess_char_2_17_b chess_char_2_18_b chess_char_3_06_a chess_char_2_13_b chess_char_2_16_b chess_char_3_02_a chess_char_3_03_a chess_char_3_04_a chess_char_3_05_a chess_char_2_14_b chess_char_2_19_b chess_char_3_01_a", @@ -448,7 +448,7 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 46, + "killed": 45, "total": 87, "unspawned": 0, "bossHpLeft": null, @@ -456,13 +456,13 @@ "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 46, + "killed": 45, "total": 87, "perfect": false, - "leaks": 41, + "leaks": 42, "leaksUncounted": 1, "coins": 8, - "dmg": 504317, + "dmg": 509318, "bossDmg": 0, "heal": 5038, "deaths": 15, @@ -470,18 +470,18 @@ } }, "units": [ - ["p1",1,"op","chess_char_3_06_b",1,"uniequip_002_philae",0,0,6,2,8597,8678,0,10,1], + ["p1",1,"op","chess_char_3_06_b",1,"uniequip_002_philae",0,0,6,1,9908,8728,0,11,1], ["p1",2,"op","chess_char_3_12_b",2,"uniequip_002_blemsh",0,0,20,10,43599,5860,5038,20,1], ["p1",3,"op","chess_char_3_02_b",1,"uniequip_002_ayer",0,0,10,1,33106,2711,0,45,1], - ["p1",4,"op","chess_char_3_03_b",1,"uniequip_002_swire",0,0,7,0,16297,2511,0,23,1], + ["p1",4,"op","chess_char_3_03_b",1,"uniequip_002_swire",0,0,7,1,15696,2511,0,23,1], ["p1",5,"op","chess_char_3_04_b",1,"uniequip_002_swire2",0,0,126,6,77967,18788,0,42,0], ["p1",6,"op","chess_char_3_05_b",2,"uniequip_002_skadi",3123.21,1,124,13,85727,23739,0,41,2], - ["p1",7,"op","chess_char_3_21_a",2,null,0,0,2,4,22383,1464,0,24,1], + ["p1",7,"op","chess_char_3_21_a",2,null,0,0,2,3,24933,1464,0,22,1], ["p1",8,"op","chess_char_3_01_b",2,"uniequip_002_angel",0,0,3,2,78698,1887,0,50,2], ["p1",9,"op","chess_char_3_08_b",1,"uniequip_002_mint",0,0,4,1,25619,6586,0,9,1], ["p1",10,"op","chess_char_3_09_b",1,"uniequip_002_haini",613.6,1,137,0,34921,2041,0,30,1], - ["p1",11,"op","chess_char_3_10_b",1,"uniequip_002_pinecn",0,0,1,2,9169,2220,0,10,1], - ["p1",12,"op","chess_char_3_11_b",1,"uniequip_002_snhunt",0,0,5,5,68232,1850,0,36,9], + ["p1",11,"op","chess_char_3_10_b",1,"uniequip_002_pinecn",0,0,1,2,12042,2220,0,10,1], + ["p1",12,"op","chess_char_3_11_b",1,"uniequip_002_snhunt",0,0,5,5,67101,1850,0,36,9], ["p1","~1","token","token_10031_swire2_gdtrap",null,null,1000,0,13,0,0,0,0,0,null], ["p1","~2","token","token_10031_swire2_gdtrap",null,null,1000,0,45,0,0,0,0,0,null], ["p1","~3","token","token_10031_swire2_gdtrap",null,null,1000,0,46,0,0,0,0,0,null], @@ -515,22 +515,22 @@ "enemy_10030_vtwand": [1,0,0,0,0], "enemy_1007_slime": [1,1,0,0,950], "enemy_10138_xdsnow": [1,1,0,13,9504], - "enemy_1045_hammer_2": [1,0,1,12016,19194], + "enemy_1045_hammer_2": [1,0,1,10435,19290], "enemy_1148_dssbr": [1,1,0,0,4838], - "enemy_1172_dugago_2": [1,0,1,3146,19016], + "enemy_1172_dugago_2": [1,0,1,3146,18990], "enemy_1203_sfhu_2": [1,1,0,3612,15120], "enemy_1204_msfhu_2": [4,0,4,0,29], "enemy_1254_lypa_2": [1,1,0,1003,17280], "enemy_1305_mhslim_2": [1,1,0,614,3110], - "enemy_1415_mmkabi_2": [1,0,1,74,25158], - "enemy_1513_dekght": [1,0,1,7560,7396], - "enemy_2021_syfish": [60,37,23,2515,276038], - "enemy_2025_syufo": [13,3,7,36563,106682] + "enemy_1415_mmkabi_2": [1,0,1,724,26704], + "enemy_1513_dekght": [1,0,1,8165,11440], + "enemy_2021_syfish": [60,37,23,2548,276038], + "enemy_2025_syufo": [13,2,8,36905,106023] }, - "hooks": [1,137,5100,537,537,1051,1146,386,61,130,21,23,0,8460,80,46,88,38,1,67,12,12,0], - "events": {"atk":617,"bounty":4,"deploy":49,"die":92,"dmg":1073,"engage":12,"fx":231,"heal":385,"layer":12,"leak":38,"skill":47,"spawn":128,"status":130}, + "hooks": [1,137,5100,539,539,1062,1157,387,60,130,21,23,0,8443,80,45,88,39,1,66,12,12,0], + "events": {"atk":624,"bounty":4,"deploy":49,"die":91,"dmg":1084,"engage":12,"fx":231,"heal":386,"layer":12,"leak":39,"skill":47,"spawn":128,"status":130}, "fx": {"aoe":20,"blink":3,"buff":1,"burst":12,"coin":29,"displace":32,"explode":34,"garrison":8,"layer":4,"pull":32,"revive":6,"shield":1,"shieldBreak":1,"strike":9,"summon":29,"telegraph":1,"volley":9}, - "snaps": "17903402 6c8167ba 07381013 82bb886b 608b7ec4 249d7653 bbfcfdac 51384d69 1e174583 a3caa0d3 d021ba02 5bf81122 997b55c3 3b7dbeeb ee15f1bc 9a7e2cb1 3931de9d" + "snaps": "17903402 6c8167ba 07381013 82bb886b 608b7ec4 249d7653 0d98c4e2 486693a5 84927b5d 4ec21382 2bb263b6 816b9d4f 845b7cfc 1702154b d531c7dc 0cff75b4 79d1c073" }, "roster-009": { "about": "pass 0 band 4: chess_char_3_16_b chess_char_4_01_a chess_char_3_18_b chess_char_4_04_a chess_char_3_13_b chess_char_3_14_b chess_char_3_17_b chess_char_3_19_b chess_char_3_20_b chess_char_3_21_b chess_char_4_02_a chess_char_4_06_a token_10028_vigil_wolf", @@ -605,28 +605,28 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 43, + "killed": 45, "total": 102, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 69, + "rngDraws": 99, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":43,"total":102,"perfect":false,"leaks":59,"leaksUncounted":0,"coins":4,"dmg":420964,"bossDmg":0,"heal":3307,"deaths":23,"layerGains":{"preciShip":12}} + "p1": {"killed":45,"total":102,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":4,"dmg":442763,"bossDmg":0,"heal":3335,"deaths":23,"layerGains":{"preciShip":12}} }, "units": [ - ["p1",1,"op","chess_char_4_17_a",1,null,0,0,5,0,2395,2849,0,5,0], - ["p1",2,"op","chess_char_4_18_a",1,null,0,0,6,0,3912,4489,1622,4,4], - ["p1",3,"op","chess_char_4_11_a",1,null,2144,1,133,0,1453,2952,0,3,1], - ["p1",4,"op","chess_char_4_19_a",2,null,0,0,90,0,15256,3120,0,38,1], + ["p1",1,"op","chess_char_4_17_a",1,null,0,0,5,0,3672,2849,0,7,0], + ["p1",2,"op","chess_char_4_18_a",1,null,0,0,6,0,3167,4489,1622,4,4], + ["p1",3,"op","chess_char_4_11_a",1,null,2144,1,133,0,1453,2934,0,3,1], + ["p1",4,"op","chess_char_4_19_a",2,null,0,0,90,1,12530,3120,0,27,1], ["p1",5,"op","chess_char_4_07_a",1,null,1738,1,134,0,1793,3476,0,2,1], - ["p1",6,"op","chess_char_4_16_a",2,null,0,0,126,2,97522,7475,1245,36,6], - ["p1",7,"op","chess_char_4_09_a",1,null,0,0,120,0,36179,2672,0,22,1], - ["p1",8,"op","chess_char_4_10_a",1,null,0,0,107,1,33806,4379,0,18,1], - ["p1",9,"op","chess_char_4_12_a",2,null,0,0,104,3,27995,3948,440,20,1], - ["p1",10,"op","chess_char_4_13_a",1,null,0,0,96,3,32173,3174,0,51,4], - ["p1",11,"op","chess_char_4_14_a",1,null,0,0,88,13,136363,2552,0,25,2], - ["p1",12,"op","chess_char_4_20_a",2,null,0,0,4,4,32117,1217,0,13,1], + ["p1",6,"op","chess_char_4_16_a",2,null,0,0,126,6,107272,7475,1245,36,8], + ["p1",7,"op","chess_char_4_09_a",1,null,0,0,120,0,30872,2672,0,19,1], + ["p1",8,"op","chess_char_4_10_a",1,null,0,0,107,0,35046,4379,0,18,1], + ["p1",9,"op","chess_char_4_12_a",2,null,0,0,104,2,27366,3976,468,20,1], + ["p1",10,"op","chess_char_4_13_a",1,null,0,0,96,1,30170,3174,0,50,4], + ["p1",11,"op","chess_char_4_14_a",1,null,0,0,88,15,154931,2552,0,26,2], + ["p1",12,"op","chess_char_4_20_a",2,null,0,0,4,4,34490,1217,0,13,1], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,17,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -635,26 +635,26 @@ ], "enemies": { "enemy_10034_cnvsax": [1,1,0,344,42998], - "enemy_1005_yokai": [24,16,8,0,61636], - "enemy_1005_yokai_2": [27,7,15,4640,77644], - "enemy_1005_yokai_3": [6,0,5,17164,99596], + "enemy_1005_yokai": [24,17,7,0,62851], + "enemy_1005_yokai_2": [27,8,14,4793,74644], + "enemy_1005_yokai_3": [6,0,5,17691,104777], "enemy_10083_hlbird": [1,1,0,0,6450], - "enemy_10144_xdelk_2": [1,0,1,2867,32954], - "enemy_1050_lslime": [1,0,1,8973,16930], - "enemy_1158_divman": [1,1,0,457,14189], - "enemy_1174_duholy_2": [1,0,1,2161,4973], - "enemy_1204_msfhu_2": [1,0,1,0,9], - "enemy_1267_nhpbr_2": [1,0,1,505,10260], - "enemy_1269_nhfly": [33,17,16,5129,27530], - "enemy_1321_wdarft": [1,0,1,0,3974], - "enemy_1422_lrsldr_2": [1,0,1,1,21820], + "enemy_10144_xdelk_2": [1,0,1,2927,43644], + "enemy_1050_lslime": [1,0,1,9204,17718], + "enemy_1158_divman": [1,1,0,461,14189], + "enemy_1174_duholy_2": [1,0,1,2161,5126], + "enemy_1204_msfhu_2": [1,0,1,0,10], + "enemy_1267_nhpbr_2": [1,0,1,160,8090], + "enemy_1269_nhfly": [33,17,16,4510,35939], + "enemy_1321_wdarft": [1,0,1,0,5210], + "enemy_1422_lrsldr_2": [1,0,1,0,21116], "enemy_1516_jakill": [1,0,1,62,0], "enemy_2034_sythef_2": [1,0,1,0,0] }, - "hooks": [1,132,5100,448,448,1098,1067,312,67,119,23,24,0,8034,394,12,102,53,1,199,3,0,24], - "events": {"atk":552,"bounty":2,"deploy":27,"die":66,"dmg":983,"engage":12,"fx":175,"heal":7,"layer":3,"leak":53,"skill":48,"spawn":119,"status":361}, - "fx": {"block":7,"catShield":2,"charge":1,"dilemma":1,"dodge":24,"explode":19,"explosion":2,"featherArrow":1,"flame":1,"frostNova":4,"garrison":3,"garrisonGrant":1,"overclock":1,"phase":1,"pull":1,"riposte":2,"rockslide":4,"shieldBreak":5,"slippery":1,"summon":11,"swordRain":51,"swordStorm":6,"telegraph":2,"thorns":11,"tornado":1,"tornadoPulse":5,"undying":7}, - "snaps": "06e15d5c 06520b29 b51a2671 1784d7e5 b5851d3e 9d75a687 dedcdea7 eb3926e2 daa5e6d1 9f1462b1 2f8edbb3 d8f17e8d 5aee7443 67957369 9c226ca2 7a410b4f 647a5d16" + "hooks": [1,132,5100,457,457,1127,1077,332,71,119,25,26,0,8109,376,12,102,51,1,200,3,0,41], + "events": {"atk":557,"bounty":2,"deploy":27,"die":68,"dmg":985,"engage":12,"fx":195,"heal":7,"layer":3,"leak":51,"skill":52,"spawn":119,"status":335}, + "fx": {"block":9,"catShield":2,"charge":1,"dilemma":1,"dodge":41,"explode":18,"explosion":2,"featherArrow":1,"flame":1,"frostNova":4,"garrison":3,"garrisonGrant":1,"overclock":1,"phase":1,"pull":1,"riposte":2,"rockslide":4,"shieldBreak":5,"slippery":1,"summon":11,"swordRain":46,"swordStorm":8,"telegraph":2,"thorns":16,"tornado":1,"tornadoPulse":5,"undying":7}, + "snaps": "06e15d5c 9c6e5b81 2ecc1e6a 71fee850 b79ab0d2 457ad226 ff2b9874 4cc2db7e f0f9ed59 2f89b40a aad31065 cbcace62 0b121c2c 860ca274 3c5123e2 f265b649 88aa7607" }, "roster-011": { "about": "pass 0 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_21_a chess_char_4_24_a chess_char_4_25_a chess_char_4_26_a chess_char_4_02_b chess_char_4_06_b", @@ -725,31 +725,31 @@ "round": 10, "seed": 1517795683, "waveId": "act1autochess_h03", - "time": 163.6, - "ticks": 4908, + "time": 161.57, + "ticks": 4847, "reason": "cleared", "killed": 99, "total": 100, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 220, + "rngDraws": 175, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":99,"total":100,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":10,"dmg":987874,"bossDmg":0,"heal":22733,"deaths":11,"layerGains":{"preciShip":8}} + "p1": {"killed":99,"total":100,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":10,"dmg":998389,"bossDmg":0,"heal":23063,"deaths":10,"layerGains":{"preciShip":8}} }, "units": [ - ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",2932.2,1,7,0,472,581,0,14,0], - ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,9,5,83347,2200,2200,33,8], - ["p1",3,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,124,0,933,3681,0,1,1], - ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",0,0,112,4,52250,4236,0,59,4], - ["p1",5,"op","chess_char_4_22_b",2,"uniequip_002_svrash",0,0,123,9,133657,7707,0,33,3], - ["p1",6,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,116,1,23055,6476,0,29,6], + ["p1",1,"op","chess_char_4_17_b",1,"uniequip_002_hsguma",3473.8,1,7,0,296,39,0,19,0], + ["p1",2,"op","chess_char_4_18_b",1,"uniequip_002_mudrok",6104,1,9,3,53084,1472,1472,38,4], + ["p1",3,"op","chess_char_4_11_b",1,"uniequip_002_cathy",2644,1,125,1,3687,3521,0,4,1], + ["p1",4,"op","chess_char_4_19_b",2,"uniequip_002_flamtl",0,0,106,6,45749,4236,0,44,3], + ["p1",5,"op","chess_char_4_22_b",2,"uniequip_002_svrash",1372.95,1,123,9,132105,6334,0,32,3], + ["p1",6,"op","chess_char_4_16_b",2,"uniequip_002_texas2",1619,1,122,2,15810,6813,337,33,6], ["p1",7,"op","chess_char_4_10_b",1,"uniequip_002_aroma",1664,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,5,2,4348,557,557,15,1], - ["p1",9,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,11,19,193913,3320,0,92,36], - ["p1",10,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1576,1,13,45,409812,7706,0,35,23], - ["p1",11,"op","chess_char_4_20_b",2,"uniequip_002_fartth",0,0,6,14,86087,1419,0,30,5], - ["p1",12,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1534,1,14,0,0,9049,19975,100,2], + ["p1",8,"op","chess_char_4_12_b",2,"uniequip_002_glady",2232,1,5,1,7024,1114,1114,15,2], + ["p1",9,"op","chess_char_4_13_b",1,"uniequip_002_gnosis",1989,1,11,21,172212,3503,0,85,35], + ["p1",10,"op","chess_char_4_14_b",1,"uniequip_002_lionhd",1526,1,13,44,474001,7606,0,56,23], + ["p1",11,"op","chess_char_4_20_b",2,"uniequip_002_fartth",0,0,6,12,94420,1419,0,26,4], + ["p1",12,"op","chess_char_4_21_b",1,"uniequip_002_plosis",1484,1,14,0,0,9230,20139,100,2], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,17,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], @@ -765,19 +765,19 @@ "enemy_1183_mlasrt": [1,1,0,988,7488], "enemy_1207_sfji_2": [1,1,0,0,16128], "enemy_1208_msfji_2": [4,4,0,0,140], - "enemy_1267_nhpbr": [45,45,0,13333,233280], - "enemy_1267_nhpbr_2": [24,24,0,7950,152064], + "enemy_1267_nhpbr": [45,45,0,13136,233280], + "enemy_1267_nhpbr_2": [24,24,0,7050,152064], "enemy_1270_nhstlk": [1,1,0,0,13824], - "enemy_1270_nhstlk_2": [15,15,0,8869,276480], + "enemy_1270_nhstlk_2": [15,15,0,7570,276480], "enemy_1325_cbgpro_2": [1,1,0,0,5299], "enemy_1425_lrcmra_2": [1,1,0,980,28800], - "enemy_1525_blkswb": [1,0,1,11679,41825], - "enemy_2050_smsha": [1,1,0,3134,46080] + "enemy_1525_blkswb": [1,0,1,12334,50799], + "enemy_2050_smsha": [1,1,0,3231,46080] }, - "hooks": [1,125,4908,482,482,1463,1463,536,111,114,89,89,0,16774,1593,27,100,1,1,124,1,0,2], - "events": {"atk":654,"bounty":5,"deploy":22,"die":113,"dmg":1453,"engage":10,"fx":270,"heal":226,"layer":1,"leak":1,"skill":180,"spawn":117,"status":1168}, - "fx": {"beam":9,"blink":2,"displace":9,"dodge":2,"explode":5,"explosion":23,"featherArrow":5,"flame":4,"frostNova":36,"garrison":1,"garrisonGrant":1,"healField":2,"overclock":1,"palsy":2,"pull":1,"revive":4,"riposte":2,"rockslide":8,"shieldBreak":10,"slash":29,"summon":1,"swordRain":23,"swordStorm":6,"telegraph":3,"thorns":3,"tornado":1,"tornadoPulse":5,"truesilver":3,"zone":69}, - "snaps": "bc2309ae cac080d1 c8920067 79751dc7 2861eaeb a0aa9436 2b74efdb 04062d35 2049676f b6f72a1e 8d2d2bf8 15f0debb ae42d8cf ca59752a ffc852a1 9e8113d7 1c40ca06" + "hooks": [1,125,4847,485,485,1427,1424,821,110,113,83,82,0,17042,1514,29,100,1,1,119,1,0,3], + "events": {"atk":636,"bounty":5,"deploy":22,"die":112,"dmg":1415,"engage":10,"fx":275,"heal":212,"layer":1,"leak":1,"skill":167,"spawn":117,"status":1018}, + "fx": {"beam":6,"blink":2,"block":2,"displace":11,"dodge":3,"explode":6,"explosion":23,"featherArrow":4,"flame":3,"frostNova":35,"garrison":1,"garrisonGrant":1,"healField":2,"overclock":1,"palsy":1,"pull":2,"revive":4,"riposte":2,"rockslide":4,"shieldBreak":9,"slash":30,"summon":1,"swordRain":28,"swordStorm":6,"telegraph":3,"thorns":1,"tornado":2,"tornadoPulse":10,"truesilver":3,"zone":69}, + "snaps": "ccfbde35 4d2aba8a 8dfe85b0 528967cd 3dbb0c86 c73d7931 d025c97a c9dab1f0 ecebc7c3 77ac09b9 fe0c30b6 3bcdfc52 7d4f4208 bdb5d1fa 39999c60 d73cc178 9d069a0a" }, "roster-013": { "about": "pass 0 band 5: chess_char_4_23_b chess_char_5_08_a chess_char_5_01_a chess_char_5_05_a chess_char_5_06_a chess_char_5_07_a chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b chess_char_5_02_a chess_char_5_03_a chess_char_5_10_a", @@ -859,29 +859,43 @@ "round": 12, "seed": 2531322120, "waveId": "act1autochess_h05", - "time": 197.67, - "ticks": 5930, + "time": 202.67, + "ticks": 6080, "reason": "cleared", - "killed": 25, + "killed": 48, "total": 183, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 468, + "rngDraws": 500, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":25,"total":183,"perfect":false,"leaks":158,"leaksUncounted":0,"coins":2,"dmg":1390177,"bossDmg":0,"heal":35727,"deaths":26,"layerGains":{}}}, + "players": { + "p1": { + "killed": 48, + "total": 183, + "perfect": false, + "leaks": 135, + "leaksUncounted": 0, + "coins": 2, + "dmg": 1669744, + "bossDmg": 0, + "heal": 36171, + "deaths": 25, + "layerGains": {"visiShip":6} + } + }, "units": [ - ["p1",1,"op","chess_char_5_11_a",1,null,0,0,5,2,3176,4853,6169,9,4], - ["p1",2,"op","chess_char_5_19_a",2,null,0,0,174,2,72276,11501,0,10,3], - ["p1",3,"op","chess_char_5_13_a",1,null,0,0,10,2,89491,17971,2,49,1], - ["p1",4,"op","chess_char_5_14_a",1,null,0,0,210,0,34013,10033,830,17,5], - ["p1",5,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,83,5,80750,7037,2409,26,1], - ["p1",6,"op","chess_char_5_17_a",1,null,2250,1,218,2,91090,36751,6407,110,11], - ["p1",7,"op","chess_char_5_12_a",0,null,1404,1,8,0,63515,0,0,35,28], - ["p1",8,"op","chess_char_5_15_a",1,null,926,1,12,5,520417,1058,5153,129,9], - ["p1",9,"op","chess_char_5_20_a",2,null,0,0,14,0,27648,1799,0,9,1], - ["p1",10,"op","chess_char_5_21_a",1,null,1279,1,4,5,315124,0,0,140,3], - ["p1",11,"op","chess_char_5_22_a",1,null,1237,1,216,2,91682,1237,0,54,8], - ["p1",12,"op","chess_char_5_23_a",1,null,0,0,88,0,0,7168,14566,24,1], + ["p1",1,"op","chess_char_5_11_a",1,null,0,0,5,0,161,4864,2699,5,4], + ["p1",2,"op","chess_char_5_19_a",2,null,3241,1,216,1,44918,9945,0,5,2], + ["p1",3,"op","chess_char_5_13_a",1,null,346.6,1,10,10,240895,30649,0,91,1], + ["p1",4,"op","chess_char_5_14_a",1,null,1732,1,219,0,35614,10945,787,21,6], + ["p1",5,"op","chess_char_5_01_b",1,"uniequip_002_excu2",0,0,84,7,118325,9072,4444,33,2], + ["p1",6,"op","chess_char_5_17_a",1,null,2250,1,218,7,101934,32298,7319,119,8], + ["p1",7,"op","chess_char_5_12_a",0,null,1404,1,8,0,56731,0,0,35,25], + ["p1",8,"op","chess_char_5_15_a",1,null,926,1,12,11,625635,984,6782,129,10], + ["p1",9,"op","chess_char_5_20_a",2,null,0,0,14,0,27378,1167,3,9,1], + ["p1",10,"op","chess_char_5_21_a",1,null,1279,1,4,9,348762,0,0,167,4], + ["p1",11,"op","chess_char_5_22_a",1,null,0,0,6,3,68396,1237,0,33,7], + ["p1",12,"op","chess_char_5_23_a",1,null,0,0,98,0,0,9521,13947,26,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,0,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null], @@ -890,24 +904,24 @@ "enemies": { "enemy_10043_sailor": [1,1,0,135,16423], "enemy_10094_crstf": [1,1,0,0,11944], - "enemy_1017_defdrn": [1,0,1,0,9242], - "enemy_1069_icebrk_2": [1,0,1,0,22939], - "enemy_1161_tidmag_2": [1,0,1,12998,13724], - "enemy_1195_sfyin_2": [1,0,1,0,7424], - "enemy_1208_msfji_2": [1,0,1,0,34], - "enemy_1249_lysdb_2": [60,8,52,27675,598483], - "enemy_1251_lysyta": [63,15,48,6485,266606], - "enemy_1254_lypa_2": [48,0,48,47273,392874], - "enemy_1272_nhtank": [1,0,1,6033,11701], - "enemy_1329_cbshld": [1,0,1,0,5385], - "enemy_1430_lrrook": [1,0,1,0,20723], - "enemy_1539_reid": [1,0,1,995,2902], - "enemy_2085_skzjxd": [1,0,1,0,9775] + "enemy_1017_defdrn": [1,0,1,0,7123], + "enemy_1069_icebrk_2": [1,0,1,0,24872], + "enemy_1161_tidmag_2": [1,0,1,14631,8043], + "enemy_1195_sfyin_2": [1,0,1,0,9113], + "enemy_1208_msfji_2": [1,0,1,0,20], + "enemy_1249_lysdb_2": [60,20,40,28097,677560], + "enemy_1251_lysyta": [63,25,38,13934,368444], + "enemy_1254_lypa_2": [48,1,47,44927,464222], + "enemy_1272_nhtank": [1,0,1,10257,35137], + "enemy_1329_cbshld": [1,0,1,0,5006], + "enemy_1430_lrrook": [1,0,1,0,24204], + "enemy_1539_reid": [1,0,1,889,15006], + "enemy_2085_skzjxd": [1,0,1,0,2629] }, - "hooks": [1,218,5930,718,792,3669,3681,2865,52,211,75,75,6,23449,551,73,183,158,1,64,0,6,12], - "events": {"atk":1011,"bounty":1,"deploy":32,"die":53,"dmg":3677,"engage":12,"fx":393,"heal":167,"leak":158,"skill":150,"spawn":199,"status":1212}, - "fx": {"aoe":17,"burst":6,"charge":2,"crit":26,"dodge":12,"dollEnd":1,"extraAttack":6,"healAoe":4,"iceSpike":92,"shieldBreak":60,"sp":23,"substitute":2,"summon":1,"swap":1,"weightless":1,"zone":139}, - "snaps": "92d6171d a372879e ab095245 c1ddd075 5b5c1326 356afac5 520ae96e e1432733 756928ce 3dde9453 decbf4c8 82889bda 168ea4ce d2c557b5 cfc460b4 d80d2f7f 3be2e1f8 61f76a77 d8cf923b ab6a497f" + "hooks": [1,219,6080,770,868,5115,5110,3213,74,210,71,71,9,24174,728,87,183,135,1,88,1,8,18], + "events": {"atk":1129,"bounty":1,"deploy":33,"die":75,"dmg":5110,"engage":12,"fx":463,"heal":212,"layer":1,"leak":135,"skill":142,"spawn":199,"status":1543}, + "fx": {"aoe":17,"burst":8,"charge":4,"crit":20,"dodge":18,"extraAttack":9,"garrison":1,"healAoe":4,"iceSpike":122,"shieldBreak":60,"sp":24,"substitute":6,"summon":1,"swap":6,"weightless":1,"zone":162}, + "snaps": "92d6171d a14af2a9 3bf2fd11 f6ecd555 4ac6277e 2784431f 04c94017 a3665bd0 1cd29745 07218cd9 7223440e 4425b22e febfb834 893f5aa5 d58169eb bdce5a88 23c988b2 c7031869 33fd06c1 cba1596a 9878059e" }, "roster-015": { "about": "pass 0 band 6: chess_char_5_08_b chess_char_5_11_b chess_char_5_05_b chess_char_5_06_b chess_char_5_13_b chess_char_5_14_b chess_char_5_07_b chess_char_5_02_b chess_char_5_03_b chess_char_5_10_b chess_char_5_12_b chess_char_5_15_b", @@ -918,14 +932,14 @@ "round": 12, "seed": 1904822123, "waveId": "act1autochess_h05", - "time": 191.83, - "ticks": 5755, + "time": 180.83, + "ticks": 5425, "reason": "cleared", "killed": 107, "total": 107, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 218, + "rngDraws": 200, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -935,34 +949,34 @@ "leaks": 0, "leaksUncounted": 0, "coins": 12, - "dmg": 1869314, + "dmg": 1870890, "bossDmg": 0, - "heal": 49562, + "heal": 53573, "deaths": 0, "layerGains": {"indomShip":20} } }, "units": [ - ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,8,13,198073,9601,0,77,4], - ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4804.8,1,6,0,0,11460,11815,0,88], - ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",13459.65,1,140,31,645760,35839,20981,43,6], - ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3522,1,11,4,31881,492,95,12,3], - ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",2711.68,1,12,0,5213,13885,0,3,1], - ["p1",6,"op","chess_char_5_14_b",1,"none",2174,1,13,14,301628,5348,470,23,47], - ["p1",7,"op","chess_char_5_07_b",2,"uniequip_002_surtr",1,0,101,15,229740,23499,2505,43,2], + ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_horn",2775,1,8,10,133996,9109,0,60,4], + ["p1",2,"op","chess_char_5_11_b",1,"uniequip_002_demkni",4784.8,1,6,0,0,10800,13006,0,79], + ["p1",3,"op","chess_char_5_05_b",2,"uniequip_002_ulpia",13035.36,1,140,40,643200,40970,22958,47,6], + ["p1",4,"op","chess_char_5_06_b",2,"uniequip_002_etlchi",3672,1,11,3,37848,492,94,16,3], + ["p1",5,"op","chess_char_5_13_b",1,"uniequip_002_ghost2",3069.46,1,12,0,5213,13165,0,3,1], + ["p1",6,"op","chess_char_5_14_b",1,"none",2174,1,13,16,322116,5249,358,39,41], + ["p1",7,"op","chess_char_5_07_b",2,"uniequip_002_surtr",2680,1,135,14,196134,24694,2556,41,2], ["p1",8,"op","chess_char_5_02_b",2,"uniequip_002_titi",1439,1,4,0,0,0,0,0,0], ["p1",9,"op","chess_char_5_03_b",2,"uniequip_002_blaze2",1472,1,5,0,0,0,0,0,0], - ["p1",10,"op","chess_char_5_10_b",2,"uniequip_002_lisa",1480,1,15,2,40961,20231,1396,45,4], - ["p1",11,"op","chess_char_5_12_b",0,"uniequip_002_dusk",714.8,1,7,2,22225,0,0,5,5], - ["p1",12,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,10,26,391135,2853,11833,7,6], + ["p1",10,"op","chess_char_5_10_b",2,"uniequip_002_lisa",1480,1,15,1,37856,19552,1289,44,4], + ["p1",11,"op","chess_char_5_12_b",0,"uniequip_002_dusk",714.8,1,7,3,40451,394,0,6,6], + ["p1",12,"op","chess_char_5_15_b",1,"uniequip_002_thorn2",1170,1,10,20,451379,2283,12845,9,7], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,0,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,0,3,0,0,0,0,0,null], - ["p1","~1","token","token_10015_dusk_drgn",null,null,1402.19,0,45,0,2698,1061,466,5,null], + ["p1","~1","token","token_10015_dusk_drgn",null,null,1352.19,0,45,0,2698,1111,466,5,null], ["p1","~1","token","token_10039_ulpia_block",null,null,3500,0,56,0,0,0,0,0,null], - ["p1","~2","token","token_10039_ulpia_block",null,null,3500,0,78,0,0,0,0,0,null], - ["p1","~3","token","token_10039_ulpia_block",null,null,3500,0,98,0,0,0,0,0,null], - ["p1","~4","token","token_10039_ulpia_block",null,null,3500,0,127,0,0,0,0,0,null], + ["p1","~2","token","token_10039_ulpia_block",null,null,3500,0,88,0,0,0,0,0,null], + ["p1","~3","token","token_10039_ulpia_block",null,null,3500,0,104,0,0,0,0,0,null], + ["p1","~4","token","token_10039_ulpia_block",null,null,3500,0,126,0,0,0,0,0,null], ["p1","~5","token","token_10039_ulpia_block",null,null,3500,1,141,0,0,0,0,0,null] ], "enemies": { @@ -975,20 +989,20 @@ "enemy_1196_msfyin": [1,1,0,0,3], "enemy_1209_sfden": [1,1,0,0,21773], "enemy_1210_msfden": [1,1,0,0,54], - "enemy_1267_nhpbr_2": [36,36,0,21040,307930], - "enemy_1270_nhstlk_2": [27,27,0,17810,671846], - "enemy_1272_nhtank_2": [1,1,0,750,23328], + "enemy_1267_nhpbr_2": [36,36,0,23523,307930], + "enemy_1270_nhstlk_2": [27,27,0,16273,671846], + "enemy_1272_nhtank_2": [1,1,0,1200,23328], "enemy_1329_cbshld_2": [1,1,0,1845,20218], "enemy_1433_dsbasi": [1,1,0,287,6687], "enemy_2001_duckmi": [1,1,0,0,27994], "enemy_2085_skzjxd_2": [1,1,0,0,20218], - "enemy_5601_entlec": [3,3,0,0,4728], - "enemy_9006_actoxi": [30,30,0,8896,699840] + "enemy_5601_entlec": [3,3,0,0,6304], + "enemy_9006_actoxi": [30,30,0,10741,699840] }, - "hooks": [1,141,5755,332,332,2043,2652,4262,110,120,166,164,0,15336,4198,56,110,0,1,230,2,0,0], - "events": {"atk":397,"bounty":6,"deploy":28,"die":120,"dmg":2059,"engage":10,"fx":473,"heal":1549,"layer":2,"skill":330,"spawn":131,"status":685}, - "fx": {"anchor":6,"aoe":51,"candle":3,"ember":2,"garrison":2,"healAoe":88,"overload":4,"sp":115,"substitute":1,"summon":3,"swap":1,"telegraph":1,"teleport":9,"zone":187}, - "snaps": "22cf0582 8a0c0b85 516b60a1 c5e8a5ec 592d3252 27981b58 1b24e129 d1d27d3b 618e064f 78c1139b 1dc092e5 2baf866a 100a1ed4 35c05303 e96ea8bb c7df11ae 127c12e7 8d9f12c6 cfe7e0a9 a7e54375" + "hooks": [1,142,5425,343,343,2083,2705,4099,110,120,153,151,0,15568,4219,52,110,0,1,225,2,0,0], + "events": {"atk":402,"bounty":6,"deploy":29,"die":120,"dmg":2098,"engage":10,"fx":465,"heal":1553,"layer":2,"skill":304,"spawn":131,"status":720}, + "fx": {"anchor":6,"aoe":45,"candle":3,"ember":2,"garrison":2,"healAoe":79,"overload":4,"revive":1,"sp":101,"substitute":1,"summon":3,"swap":1,"telegraph":1,"teleport":9,"zone":207}, + "snaps": "22cf0582 8a0c0b85 516b60a1 84aa4163 e05892d0 18489b1b 648324df 80fac9f4 376b8bee 85dbe4cb e627378e d788a444 4b8ef6d8 e2cf34c7 e37bfa3f c7e3226a 4c5d887f 61f8d5f0" }, "roster-016": { "about": "pass 0 band 6: chess_char_5_19_b chess_char_6_03_a chess_char_6_06_a chess_char_5_17_b chess_char_5_20_b chess_char_5_21_b chess_char_5_22_b chess_char_5_23_b chess_char_6_01_a chess_char_6_02_a chess_char_6_04_a chess_char_6_05_a token_10017_skadi2_dedant", @@ -1002,40 +1016,40 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 89, + "killed": 92, "total": 126, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 563, + "rngDraws": 580, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":89,"total":126,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":6,"dmg":4249277,"bossDmg":0,"heal":72328,"deaths":9,"layerGains":{"preciShip":4}} + "p1": {"killed":92,"total":126,"perfect":false,"leaks":34,"leaksUncounted":0,"coins":6,"dmg":4413978,"bossDmg":0,"heal":82323,"deaths":8,"layerGains":{"preciShip":4}} }, "units": [ - ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",1755.69,1,115,9,547740,7078,1020,87,4], - ["p1",2,"op","chess_char_6_03_a",2,null,2703,1,108,3,69252,12521,6326,71,2], - ["p1",3,"op","chess_char_6_06_a",2,null,0,0,151,11,434256,23810,737,92,2], - ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,6,230479,27940,6520,282,2], - ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,141253,0,0,47,5], - ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,2,288498,3069,854,125,3], - ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,1,30490,1242,1037,10,4], - ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,52972,80,4], - ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,32,763032,1346,119,83,4], - ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,21,1402837,1242,169,76,3], - ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,1,69684,10477,1619,0,4], - ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,2,271756,2559,955,66,5], + ["p1",1,"op","chess_char_5_19_b",2,"uniequip_002_mlynar",2863.48,1,115,8,547728,6081,1130,87,4], + ["p1",2,"op","chess_char_6_03_a",2,null,2703,1,108,3,96724,21638,8650,75,2], + ["p1",3,"op","chess_char_6_06_a",2,null,2223,1,142,8,482800,21116,738,97,3], + ["p1",4,"op","chess_char_5_17_b",1,"uniequip_002_f12yin",2738,1,88,6,219859,29728,8163,298,2], + ["p1",5,"op","chess_char_5_20_b",2,"uniequip_002_aglina",1382,1,10,0,138378,0,0,46,5], + ["p1",6,"op","chess_char_5_21_b",1,"uniequip_002_sntlla",1629,1,85,2,283224,3069,854,125,3], + ["p1",7,"op","chess_char_5_22_b",1,"uniequip_002_nymph",1611,1,1,2,30193,1242,1037,14,4], + ["p1",8,"op","chess_char_5_23_b",1,"uniequip_002_reckpr",1610,1,3,0,0,2192,58777,82,4], + ["p1",9,"op","chess_char_6_01_a",2,null,1158,1,92,34,857246,1346,119,83,4], + ["p1",10,"op","chess_char_6_02_a",2,null,1687,1,7,26,1374046,1242,169,76,3], + ["p1",11,"op","chess_char_6_04_a",2,null,1202,1,110,2,75912,10286,1730,0,4], + ["p1",12,"op","chess_char_6_05_a",2,null,1215,1,59,0,307866,2559,955,69,5], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,13,0,0,0,0,0,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,100,0,60,0,0,0,0,0,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,111,0,0,0,0,0,null], - ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,148,0,0,0,0,0,null] + ["p1","~3","token","token_10017_skadi2_dedant",null,null,100,0,149,0,0,0,0,0,null] ], "enemies": { "enemy_10045_parrot": [1,0,1,0,49131], - "enemy_10098_crhro": [1,1,0,8717,185752], - "enemy_10124_uashld_2": [12,4,5,46923,1233696], + "enemy_10098_crhro": [1,1,0,9588,185752], + "enemy_10124_uashld_2": [12,6,5,49762,1290422], "enemy_1019_jshoot_2": [1,1,0,1515,16718], - "enemy_1043_zomsbr": [72,57,15,198,1020987], - "enemy_1061_zomshd": [30,21,9,12955,1640957], + "enemy_1043_zomsbr": [72,56,16,151,1022835], + "enemy_1061_zomshd": [30,23,7,16313,1746604], "enemy_1072_dlancer": [1,1,0,352,37150], "enemy_1165_duhond": [1,1,0,127,17337], "enemy_1196_msfyin_2": [1,1,0,0,9], @@ -1046,10 +1060,10 @@ "enemy_2001_duckmi_2": [1,0,1,0,13530], "enemy_9006_actoxi": [1,0,1,0,3658] }, - "hooks": [1,150,6900,1028,1104,7579,7788,69629,98,136,42,40,22,39646,1064,56,126,34,1,108,2,8,7], - "events": {"atk":2436,"bounty":3,"deploy":24,"die":102,"dmg":7723,"engage":10,"fx":535,"heal":119,"layer":2,"leak":34,"skill":82,"spawn":142,"status":2577}, - "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":8,"crit":50,"dodge":7,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":130,"lock":22,"lure":3,"revive":1,"snow":75,"soul":1,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, - "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 c55375d3 93d6cede 7f742e95 c42e54d2 2f62bf3a 207462c2 e9334de2 9f2b3eb9 7f9fd209 9edeb211 39afd4ea a9c35312 e35d41d3 f91a268e 13a48921" + "hooks": [1,150,6900,1070,1146,7889,8141,69291,100,137,43,40,22,39797,1133,51,126,33,1,109,2,10,7], + "events": {"atk":2528,"bounty":3,"deploy":24,"die":104,"dmg":8076,"engage":10,"fx":554,"heal":128,"layer":2,"leak":33,"skill":83,"spawn":142,"status":2686}, + "fx": {"aoe":8,"bombard":22,"bombardShell":22,"burst":10,"crit":39,"dodge":7,"explode":20,"firewall":2,"garrison":2,"iceSpike":99,"lightning":157,"lock":22,"lure":3,"revive":1,"snow":75,"soul":1,"sp":1,"storm":5,"talent":2,"telegraph":7,"tide":4,"wanted":40,"weightless":5}, + "snaps": "c8992dd8 ef513924 6c381013 9a9944c6 820e2ebc de2648be 660ed54d ac3fc2b6 4b057061 c76044d5 1e3183dd 69b18662 97b0a95e ea897c2c 02baa76c cc3b79ca 5fe0ed47 a83d31e0 017f9645 bb7476b6 45f4958f 3b6429a1 4e60499c" }, "roster-017": { "about": "pass 0 band 6: chess_char_6_15_a chess_char_6_19_a chess_char_6_07_a chess_char_6_17_a chess_char_6_08_a chess_char_6_09_a chess_char_6_11_a chess_char_6_12_a chess_char_6_13_a chess_char_6_14_a chess_char_6_16_a chess_char_6_18_a", @@ -1139,7 +1153,7 @@ "total": 120, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 475, + "rngDraws": 502, "errors": {"count":0,"kinds":[]}, "players": { "p1": { @@ -1149,9 +1163,9 @@ "leaks": 0, "leaksUncounted": 0, "coins": 12, - "dmg": 1554720, + "dmg": 1560928, "bossDmg": 0, - "heal": 29089, + "heal": 29516, "deaths": 1, "layerGains": {"lateranoShip":12,"preciShip":12,"sargonShip":26} } @@ -1160,50 +1174,50 @@ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_yu",4558.4,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_06_b",2,"uniequip_002_pepe",3620.85,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",2,"uniequip_002_siege2",3820.43,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20869,40,2], - ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,10,175020,0,0,17,5], - ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,7,53557,1259,228,10,2], - ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,27480,8646,112,0,4], - ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,21,205514,8769,2705,34,7], - ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,4,78754,0,1162,10,1], - ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,1,9965,0,0,6,6], - ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,16,142127,1500,78,139,4], - ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,54,777489,7159,798,73,4], + ["p1",4,"op","chess_char_6_20_a",2,null,1523.98,1,4,0,0,0,20541,39,2], + ["p1",5,"op","chess_char_6_01_b",2,"uniequip_002_lemuen",1811.04,1,7,12,169697,0,0,16,5], + ["p1",6,"op","chess_char_6_02_b",2,"uniequip_002_sbell2",4314.46,1,10,5,53428,1556,486,8,2], + ["p1",7,"op","chess_char_6_04_b",2,"uniequip_002_skadi2",1968.74,1,13,4,29961,8646,173,0,4], + ["p1",8,"op","chess_char_6_05_b",2,"uniequip_002_pasngr",0,0,15,16,204487,8769,2713,36,7], + ["p1",9,"op","chess_char_6_08_b",2,"uniequip_002_reed2",2054.98,1,5,3,63902,0,1900,8,1], + ["p1",10,"op","chess_char_6_09_b",0,"uniequip_002_cello",1628.7,1,8,0,14472,0,0,5,5], + ["p1",11,"op","chess_char_6_11_b",2,"uniequip_002_mlyss",2332.18,1,11,20,138355,1500,50,136,4], + ["p1",12,"op","chess_char_6_12_b",1,"uniequip_002_rosmon",4826.73,1,14,58,801146,7190,535,73,4], ["p1",13,"token","token_10017_skadi2_dedant",null,null,100,0,16,0,0,0,0,0,null], - ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,3,50321,2192,0,89,1], + ["p1",14,"token","token_10030_mlyss_wtrman",null,null,2540.38,1,12,1,50974,1886,0,89,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], - ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6976,3112,885,11,null], + ["p1","~1","token","token_10030_mlyss_wtrman",null,null,0,0,37,0,6556,3091,864,11,null], ["p1","~1","token","token_10017_skadi2_dedant",null,null,123.2,0,59,0,0,0,0,0,null], - ["p1","~2","token","token_10030_mlyss_wtrman",null,null,615.43,0,70,0,7635,2764,839,12,null], - ["p1","~3","token","token_10030_mlyss_wtrman",null,null,1510.39,0,99,1,9228,1493,777,11,null], + ["p1","~2","token","token_10030_mlyss_wtrman",null,null,1113.22,0,70,0,8395,2266,839,12,null], + ["p1","~3","token","token_10030_mlyss_wtrman",null,null,2008.19,0,99,2,8901,996,777,12,null], ["p1","~2","token","token_10017_skadi2_dedant",null,null,100,0,101,0,0,0,0,0,null], - ["p1","~4","token","token_10030_mlyss_wtrman",null,null,1171.51,0,131,1,10654,1773,638,12,null], + ["p1","~4","token","token_10030_mlyss_wtrman",null,null,603.66,0,131,1,10654,2271,638,12,null], ["p1","~3","token","token_10017_skadi2_dedant",null,null,123.2,1,137,0,0,0,0,0,null] ], "enemies": { "enemy_1005_yokai": [1,1,0,0,1327], "enemy_1009_lurker": [1,1,0,0,3650], "enemy_1023_jmage": [1,1,0,697,3650], - "enemy_1092_mdgint": [1,1,0,772,165888], + "enemy_1092_mdgint": [1,1,0,751,165888], "enemy_1166_dusbr": [1,1,0,0,4977], "enemy_1197_sfshu_2": [1,1,0,0,5557], "enemy_1198_msfshu_2": [3,3,0,0,21], "enemy_1210_msfden_2": [1,1,0,0,75], "enemy_1229_darmy": [27,27,0,0,188117], "enemy_1229_darmy_2": [57,57,0,0,520059], - "enemy_1275_dwlock_2": [21,21,0,24352,487711], - "enemy_1283_sgkill": [1,1,0,2541,19907], - "enemy_1364_spnaxe_2": [1,1,0,388,55909], + "enemy_1275_dwlock_2": [21,21,0,23653,487711], + "enemy_1283_sgkill": [1,1,0,2234,19907], + "enemy_1364_spnaxe_2": [1,1,0,917,62117], "enemy_1367_dseed": [2,2,0,0,9953], "enemy_1439_dslntf": [1,1,0,0,49766], "enemy_2002_bearmi_2": [1,1,0,0,18248], "enemy_9008_acbunn": [1,1,0,2771,19907] }, - "hooks": [1,145,5849,514,514,1317,1462,3382,124,130,36,32,37,24842,344,5,122,0,1,124,11,6,0], - "events": {"atk":608,"bounty":6,"deploy":21,"die":130,"dmg":1382,"engage":12,"fx":255,"heal":175,"layer":11,"skill":68,"spawn":145,"status":379}, - "fx": {"beam":3,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, - "snaps": "19eb7843 bd0f8e67 f2152e6f 44f1594e 52e8aae9 78ca771d 6bd28927 1ebd5bbb 6cc66311 58b6c8f4 ff3ea59d be8837fa e22ad395 8f52ea74 6d8c9455 7f955f1e 74562ce4 59488ddd 1c4af3fe 435647c5" + "hooks": [1,145,5849,507,507,1319,1469,3395,124,130,35,31,37,24779,382,5,122,0,1,124,11,6,0], + "events": {"atk":597,"bounty":6,"deploy":21,"die":130,"dmg":1389,"engage":12,"fx":256,"heal":181,"layer":11,"skill":66,"spawn":145,"status":387}, + "fx": {"beam":4,"bombard":31,"bombardShell":31,"burst":6,"camouflage":2,"copy":1,"dp":4,"explode":1,"garrison":8,"lightning":85,"link":1,"lock":37,"lure":2,"scorchBurst":15,"snow":7,"split":4,"storm":7,"summon":2,"talent":1,"tide":4,"wanted":3}, + "snaps": "19eb7843 2593e6ad ced96303 58bf6c6a 57b56210 fb902b8c 2edac827 dc1e40f6 4919a6eb 503315c1 d3bf6a2b 9ca37124 7959a1b9 ab8cf469 6e9a303e 47d433a9 d5193bce 9f52967e 7a198ce1 eab6362c" }, "roster-019": { "about": "pass 0 band 7: chess_char_6_15_b chess_char_6_19_b chess_char_5_01_b chess_char_5_05_b chess_char_6_17_b chess_char_6_13_b chess_char_6_14_b chess_char_6_16_b chess_char_6_18_b chess_char_6_20_b chess_char_5_02_b chess_char_5_03_b", @@ -1299,7 +1313,7 @@ ["p1",1,"op","chess_char_1_02_a",0,null,6437.42,1,3,0,1704,1216,282,11,1], ["p1",2,"op","chess_char_1_04_a",0,null,4318.46,1,5,3,8847,1618,0,36,1], ["p1",3,"op","chess_char_1_10_a",1,null,2619.95,1,7,0,622,3569,4493,11,1], - ["p1",4,"op","chess_char_1_08_a",0,null,0,0,11,1,5828,5656,0,18,1], + ["p1",4,"op","chess_char_1_08_a",0,null,0,0,11,1,5828,5656,0,18,2], ["p1",5,"op","chess_char_1_12_a",0,null,0,0,12,6,50470,11219,5731,45,1], ["p1",6,"op","chess_char_1_01_a",0,null,3020.87,1,8,0,9628,0,0,23,1], ["p1",7,"op","chess_char_1_03_a",0,null,0,0,9,0,6833,2800,0,10,1], @@ -1324,10 +1338,10 @@ "enemy_1422_lrsldr_2": [1,1,0,85,7920], "enemy_2005_axetro": [1,0,0,12574,403] }, - "hooks": [1,57,2700,527,526,673,721,5609,36,39,25,23,6,12653,50,35,43,3,1,36,0,3,0], - "events": {"atk":597,"bounty":4,"deploy":12,"die":36,"dmg":703,"engage":12,"fx":47,"heal":53,"leak":3,"skill":48,"spawn":57,"status":149}, - "fx": {"buff":1,"burst":3,"crit":28,"dp":1,"explode":10,"summon":2,"telegraph":2}, - "snaps": "7569fa79 8b9e6870 272698d7 c199249a 1d7b1752 e247f83e a0ed8e55 53dd714d bfb37a8f" + "hooks": [1,57,2700,527,526,673,721,5609,36,39,26,24,6,12672,50,35,43,3,1,36,0,3,0], + "events": {"atk":597,"bounty":4,"deploy":12,"die":36,"dmg":703,"engage":12,"fx":48,"heal":53,"leak":3,"skill":50,"spawn":57,"status":149}, + "fx": {"buff":1,"burst":3,"crit":28,"dp":2,"explode":10,"summon":2,"telegraph":2}, + "snaps": "7569fa79 a7c3130a 6e861c2b f81be7ba 7f7d11f4 b000e94a a637c5f7 adaab972 f533cb58" }, "roster-021": { "about": "pass 1 band 2: chess_char_1_02_b chess_char_1_20_a chess_char_1_04_b chess_char_1_08_b chess_char_1_18_a chess_char_1_19_a chess_char_1_17_a chess_char_1_01_b chess_char_1_03_b chess_char_1_06_b chess_char_1_07_b chess_char_1_09_b", @@ -1352,14 +1366,14 @@ ["p1",1,"op","chess_char_1_02_b",0,"none",2691.48,1,5,1,1377,1324,620,12,1], ["p1",2,"op","chess_char_1_20_a",0,null,0,0,6,1,3979,2198,0,22,1], ["p1",3,"op","chess_char_1_04_b",0,"none",0,0,11,2,5797,2904,0,36,1], - ["p1",4,"op","chess_char_1_08_b",0,"none",2195.05,1,42,6,14695,3335,0,41,3], - ["p1",5,"op","chess_char_1_18_a",0,null,2530,1,15,2,18892,1561,1561,42,4], + ["p1",4,"op","chess_char_1_08_b",0,"none",2205.83,1,42,4,15460,3324,0,43,3], + ["p1",5,"op","chess_char_1_18_a",0,null,2530,1,15,4,18977,1561,1561,42,4], ["p1",6,"op","chess_char_1_19_a",0,null,0,0,9,0,4634,1482,0,30,1], ["p1",7,"op","chess_char_1_17_a",0,null,769.58,1,7,1,14524,369,0,11,2], ["p1",8,"op","chess_char_1_01_b",0,"none",856.58,1,10,1,21351,484,0,81,6], - ["p1",9,"op","chess_char_1_03_b",0,"none",770.58,1,12,5,68889,540,0,38,2], - ["p1",10,"op","chess_char_1_06_b",0,"none",1297,1,14,2,34514,559,559,71,2], - ["p1",11,"op","chess_char_1_07_b",1,"none",1527,1,4,5,26286,0,0,23,1], + ["p1",9,"op","chess_char_1_03_b",0,"none",770.58,1,12,5,68773,540,0,38,2], + ["p1",10,"op","chess_char_1_06_b",0,"none",1297,1,14,2,33825,559,559,71,2], + ["p1",11,"op","chess_char_1_07_b",1,"none",1527,1,4,5,26239,0,0,23,1], ["p1",12,"op","chess_char_1_09_b",0,"none",2085,1,8,3,23202,0,0,76,25], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], @@ -1368,20 +1382,20 @@ "enemies": { "enemy_10043_sailor": [1,1,0,0,4950], "enemy_10124_uashld_2": [1,1,0,1762,22500], - "enemy_1081_sotisd": [1,1,0,1110,13500], - "enemy_1116_liprr": [12,12,0,280,59400], + "enemy_1081_sotisd": [1,1,0,888,13500], + "enemy_1116_liprr": [12,12,0,270,59400], "enemy_1116_liprr_2": [6,6,0,288,40500], "enemy_1121_lifbos": [3,3,0,2981,54000], "enemy_1174_duholy": [1,1,0,1907,13500], "enemy_1229_darmy_2": [1,1,0,3634,4950], "enemy_1325_cbgpro_2": [1,1,0,55,4140], - "enemy_1504_cqbw": [1,1,0,2740,9000], + "enemy_1504_cqbw": [1,1,0,2962,9000], "enemy_2085_skzjxd_2": [1,1,0,0,11700] }, - "hooks": [1,45,2903,575,575,704,716,718,33,34,49,47,36,9552,106,31,29,0,1,33,0,0,0], - "events": {"atk":646,"bounty":4,"deploy":13,"die":34,"dmg":706,"engage":12,"fx":44,"heal":24,"skill":96,"spawn":44,"status":248}, + "hooks": [1,45,2903,576,576,703,715,718,33,34,49,47,36,9579,105,31,29,0,1,33,0,0,0], + "events": {"atk":646,"bounty":4,"deploy":13,"die":34,"dmg":704,"engage":12,"fx":44,"heal":24,"skill":96,"spawn":44,"status":247}, "fx": {"crit":23,"dp":3,"explode":3,"liberate":7,"phase":2,"shield":2,"sp":1,"telegraph":3}, - "snaps": "4f2a4a77 82c17939 2ff9d2cb c2302df0 cefc20d9 a856ac53 4e372ec1 34b9cec7 2afaf515 1188dae4" + "snaps": "4f2a4a77 82c17939 5293de0c 1abb45b2 2a448a3f 52cfbfb0 111f098b 256623ab 958ae00a 3ae05a03" }, "roster-022": { "about": "pass 1 band 2: chess_char_1_10_b chess_char_1_12_b chess_char_1_20_b chess_char_1_18_b chess_char_1_19_b chess_char_1_13_b chess_char_1_14_b chess_char_1_17_b chess_char_2_01_a chess_char_2_02_a chess_char_2_04_a chess_char_2_05_a", @@ -1729,16 +1743,16 @@ "bossHpLeft": null, "rngDraws": 83, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":5,"total":62,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":0,"dmg":170231,"bossDmg":0,"heal":0,"deaths":28,"layerGains":{}}}, + "players": {"p1":{"killed":5,"total":62,"perfect":false,"leaks":57,"leaksUncounted":0,"coins":0,"dmg":170765,"bossDmg":0,"heal":0,"deaths":28,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_3_16_b",0,"none",0,0,4,0,70,4069,0,8,1], ["p1",2,"op","chess_char_4_01_a",0,null,0,0,7,0,0,3614,0,0,0], ["p1",3,"op","chess_char_3_18_b",0,"uniequip_003_vulpis",0,0,91,0,0,5275,0,0,0], ["p1",4,"op","chess_char_4_04_a",0,null,0,0,92,0,19919,24112,0,45,6], ["p1",5,"op","chess_char_3_13_b",0,"none",0,0,1,0,11655,1802,0,31,1], - ["p1",6,"op","chess_char_3_14_b",0,"none",0,0,85,1,28541,4151,0,33,1], + ["p1",6,"op","chess_char_3_14_b",0,"none",0,0,85,0,28825,4151,0,33,1], ["p1",7,"op","chess_char_3_17_b",0,"none",0,0,78,3,40093,7884,0,26,10], - ["p1",8,"op","chess_char_3_19_b",0,"uniequip_003_vigil",0,0,2,1,21981,2429,0,32,3], + ["p1",8,"op","chess_char_3_19_b",0,"uniequip_003_vigil",0,0,2,2,22230,2429,0,32,3], ["p1",9,"op","chess_char_3_20_b",0,"none",0,0,68,0,3939,3795,0,16,1], ["p1",10,"op","chess_char_3_21_b",0,"uniequip_003_archet",0,0,61,0,23197,4603,0,24,10], ["p1",11,"op","chess_char_4_02_a",0,null,0,0,65,0,9689,5869,0,7,0], @@ -1753,15 +1767,15 @@ "enemy_1174_duholy_2": [1,0,1,1351,711], "enemy_1234_dsubrl": [1,0,1,3858,0], "enemy_1328_cbjedi": [1,0,1,0,0], - "enemy_1381_winman": [21,3,18,8940,112677], + "enemy_1381_winman": [21,3,18,8940,113211], "enemy_1389_winbab_2": [15,0,12,36819,7599], "enemy_1509_mousek": [1,0,1,1107,24], "enemy_9006_actoxi": [1,0,1,515,661] }, - "hooks": [1,91,5100,430,430,540,552,0,34,88,34,34,0,4575,15,28,62,54,1,37,0,0,18], - "events": {"atk":457,"deploy":29,"die":34,"dmg":520,"engage":11,"fx":81,"leak":54,"skill":68,"spawn":75,"status":93}, + "hooks": [1,91,5100,430,430,540,552,0,34,88,34,34,0,4575,15,29,62,54,1,37,0,0,18], + "events": {"atk":457,"deploy":29,"die":34,"dmg":521,"engage":11,"fx":81,"leak":54,"skill":68,"spawn":75,"status":93}, "fx": {"camouflage":1,"crit":4,"dodge":18,"dp":3,"phase":1,"pulse":11,"revive":1,"sentry":10,"shadowWeave":10,"shield":4,"shieldBreak":2,"summon":2,"telegraph":1,"volley":8,"wolfShadowLost":4,"zone":1}, - "snaps": "fb203b8d c35cab02 eb33b223 07662c9b e58be09c 74cfb771 df970e2a 3db5742e fa692b86 fcab8aad b923921c 423e244e 94f3c202 f1d97299 ef8531d9 7aa0a083 e01cf7e7" + "snaps": "fb203b8d c35cab02 eb33b223 941b416a 9c471120 13d82146 2e568a2d 83c53ba1 2f786a51 bf56ddea f22fb2ff 64ee19ad a8119525 6cc0219a 4c6597da e01e3ae0 ef255300" }, "roster-029": { "about": "pass 1 band 4: chess_char_4_17_a chess_char_4_18_a chess_char_4_11_a chess_char_4_19_a chess_char_4_07_a chess_char_4_16_a chess_char_4_09_a chess_char_4_10_a chess_char_4_12_a chess_char_4_13_a chess_char_4_14_a chess_char_4_20_a token_10041_cathy_catsld token_10041_cathy_catsld", @@ -1779,16 +1793,16 @@ "total": 85, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 108, + "rngDraws": 106, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":77,"total":85,"perfect":false,"leaks":8,"leaksUncounted":0,"coins":4,"dmg":339629,"bossDmg":0,"heal":2842,"deaths":8,"layerGains":{"preciShip":4}} + "p1": {"killed":77,"total":85,"perfect":false,"leaks":8,"leaksUncounted":0,"coins":4,"dmg":339651,"bossDmg":0,"heal":2842,"deaths":8,"layerGains":{"preciShip":4}} }, "units": [ - ["p1",1,"op","chess_char_4_17_a",0,null,1139.6,1,95,2,32065,2731,0,86,2], + ["p1",1,"op","chess_char_4_17_a",0,null,1139.6,1,95,2,32065,2678,0,86,2], ["p1",2,"op","chess_char_4_18_a",0,null,2852.34,1,5,2,7244,2557,1892,15,1], ["p1",3,"op","chess_char_4_11_a",0,null,0,0,7,2,6421,3478,0,14,0], - ["p1",4,"op","chess_char_4_19_a",0,null,1560,1,98,1,2230,2139,0,22,5], + ["p1",4,"op","chess_char_4_19_a",0,null,1560,1,98,1,2253,2139,0,23,5], ["p1",5,"op","chess_char_4_07_a",0,null,1738,1,96,4,6120,2735,0,33,1], ["p1",6,"op","chess_char_4_16_a",0,null,464,1,70,5,35686,10610,0,76,4], ["p1",7,"op","chess_char_4_09_a",0,null,1316,1,14,18,81673,520,0,37,17], @@ -1805,19 +1819,19 @@ "enemies": { "enemy_10081_mpplai": [1,1,0,0,2000], "enemy_1026_aghost": [1,1,0,0,3040], - "enemy_1148_dssbr": [45,42,3,1269,99280], - "enemy_1148_dssbr_2": [27,26,1,207,76595], + "enemy_1148_dssbr": [45,42,3,269,99280], + "enemy_1148_dssbr_2": [27,26,1,1207,76595], "enemy_1160_hvyslr_2": [1,1,0,4353,11200], "enemy_1200_msfjin_2": [1,1,0,0,28], - "enemy_1272_nhtank_2": [1,0,1,9391,6603], + "enemy_1272_nhtank_2": [1,0,1,9391,6626], "enemy_1407_hummbd": [1,1,0,10,3600], - "enemy_1439_dslntf": [6,4,2,6894,129462], + "enemy_1439_dslntf": [6,4,2,6841,129462], "enemy_2002_bearmi_2": [1,0,1,527,7821] }, - "hooks": [1,106,4996,537,537,1040,1872,1112,85,93,48,48,0,22937,864,28,85,8,1,85,1,9,5], - "events": {"atk":579,"bounty":2,"deploy":19,"die":85,"dmg":1865,"engage":10,"fx":57,"heal":457,"layer":1,"leak":8,"skill":97,"spawn":101,"status":174}, - "fx": {"block":14,"burst":9,"dodge":5,"dp":5,"explode":1,"expose":1,"garrison":1,"garrisonGrant":1,"phase":1,"riposte":4,"shieldBreak":7,"swordRain":4,"zone":4}, - "snaps": "3456cb23 713f3cc1 34792b50 4ccb1502 81f08e79 3025bc2d 7320999d e5f828e0 c65af8c4 692ee49a 5793c2e6 c95b8b9a b2eae431 39fbb5d1 54ee5312 a05d41bf dfc773cd" + "hooks": [1,106,4996,536,536,1039,1872,1111,85,93,48,48,0,22944,864,28,85,8,1,85,1,9,5], + "events": {"atk":578,"bounty":2,"deploy":19,"die":85,"dmg":1865,"engage":10,"fx":56,"heal":456,"layer":1,"leak":8,"skill":97,"spawn":101,"status":174}, + "fx": {"block":13,"burst":9,"dodge":5,"dp":5,"explode":1,"expose":1,"garrison":1,"garrisonGrant":1,"phase":1,"riposte":4,"shieldBreak":7,"swordRain":4,"zone":4}, + "snaps": "3456cb23 713f3cc1 34792b50 4ccb1502 81f08e79 961242f9 806545e9 c15fe545 e243dc99 b17e0b14 48682658 11546480 2341a177 1f7b7abe 6e860b2f 1d3e5452 f85927b6" }, "roster-030": { "about": "pass 1 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_21_a chess_char_4_24_a chess_char_4_25_a chess_char_4_26_a chess_char_4_02_b chess_char_4_06_b", @@ -1883,28 +1897,28 @@ "time": 190, "ticks": 5700, "reason": "timeout", - "killed": 62, + "killed": 64, "total": 76, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 103, + "rngDraws": 141, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":62,"total":76,"perfect":false,"leaks":14,"leaksUncounted":0,"coins":6,"dmg":815070,"bossDmg":0,"heal":40547,"deaths":7,"layerGains":{"preciShip":8}} + "p1": {"killed":64,"total":76,"perfect":false,"leaks":12,"leaksUncounted":0,"coins":6,"dmg":808362,"bossDmg":0,"heal":46581,"deaths":6,"layerGains":{"preciShip":8}} }, "units": [ - ["p1",1,"op","chess_char_4_17_b",0,"uniequip_003_hsguma",660.92,1,94,0,7699,6615,0,52,2], - ["p1",2,"op","chess_char_4_18_b",0,"uniequip_003_mudrok",5333.81,1,99,4,96324,9475,3385,63,3], - ["p1",3,"op","chess_char_4_11_b",0,"none",2544,1,88,0,7036,6333,0,37,0], - ["p1",4,"op","chess_char_4_19_b",0,"uniequip_003_flamtl",1943,1,83,10,91137,3468,0,86,13], - ["p1",5,"op","chess_char_4_22_b",0,"none",2379,1,100,7,71910,14776,0,82,27], - ["p1",6,"op","chess_char_4_16_b",0,"uniequip_003_texas2",1609,1,14,12,120468,19452,0,170,2], + ["p1",1,"op","chess_char_4_17_b",0,"uniequip_003_hsguma",294.8,1,94,0,8514,6981,0,54,2], + ["p1",2,"op","chess_char_4_18_b",0,"uniequip_003_mudrok",5522.9,1,99,5,76661,9083,3182,50,2], + ["p1",3,"op","chess_char_4_11_b",0,"none",2544,1,86,0,6128,6333,0,32,0], + ["p1",4,"op","chess_char_4_19_b",0,"uniequip_003_flamtl",1943,1,83,4,74590,3126,0,76,13], + ["p1",5,"op","chess_char_4_22_b",0,"none",2379,1,12,11,125646,18243,0,123,41], + ["p1",6,"op","chess_char_4_16_b",0,"uniequip_003_texas2",1609,1,14,10,118693,20183,0,168,2], ["p1",7,"op","chess_char_4_10_b",0,"none",1514,1,8,0,0,0,0,0,0], ["p1",8,"op","chess_char_4_12_b",0,"uniequip_003_glady",4456.2,1,9,0,59468,0,0,30,26], - ["p1",9,"op","chess_char_4_13_b",0,"uniequip_003_gnosis",1974,1,13,10,147453,0,0,102,102], - ["p1",10,"op","chess_char_4_14_b",0,"none",0,0,73,2,42907,3092,0,22,3], - ["p1",11,"op","chess_char_4_20_b",0,"uniequip_003_fartth",1499,1,6,16,170668,0,0,85,4], - ["p1",12,"op","chess_char_4_21_b",0,"none",1524,1,10,0,0,0,37163,60,4], + ["p1",9,"op","chess_char_4_13_b",0,"uniequip_003_gnosis",1974,1,13,13,141663,0,0,100,100], + ["p1",10,"op","chess_char_4_14_b",0,"none",0,0,73,3,30168,3092,0,14,3], + ["p1",11,"op","chess_char_4_20_b",0,"uniequip_003_fartth",1499,1,6,17,166831,0,0,82,4], + ["p1",12,"op","chess_char_4_21_b",0,"none",1524,1,10,0,0,0,43399,61,4], ["p1",13,"token","token_10041_cathy_catsld",null,null,100,1,16,0,0,0,0,0,null], ["p1",14,"token","token_10041_cathy_catsld",null,null,100,1,15,0,0,0,0,0,null], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], @@ -1912,20 +1926,20 @@ ], "enemies": { "enemy_1006_shield_2": [1,1,0,366,16589], - "enemy_1010_demon": [21,16,5,30519,224029], + "enemy_1010_demon": [21,17,4,34710,234366], "enemy_1019_jshoot_2": [1,1,0,129,4479], "enemy_1148_dssbr": [1,1,0,0,4645], "enemy_1198_msfshu": [1,1,0,0,5], "enemy_1269_nhfly": [1,1,0,533,0], - "enemy_1320_wdrrl_2": [6,2,3,11484,134072], + "enemy_1320_wdrrl_2": [6,2,3,11472,116114], "enemy_1387_winshd": [1,1,0,2918,19907], - "enemy_1422_lrsldr_2": [42,38,4,1250,367913], - "enemy_1539_reid": [1,0,1,16012,43432] + "enemy_1422_lrsldr_2": [42,39,3,1365,371802], + "enemy_1539_reid": [1,0,1,15550,40456] }, - "hooks": [1,98,5700,1012,1012,1109,1091,110,69,82,186,185,0,16521,2038,57,76,13,1,80,1,0,11], - "events": {"atk":1056,"bounty":3,"deploy":20,"die":69,"dmg":1079,"engage":10,"fx":88,"heal":103,"layer":1,"leak":13,"skill":374,"spawn":92,"status":449}, - "fx": {"block":7,"charge":3,"displace":19,"dodge":11,"dp":13,"explode":4,"garrison":1,"garrisonGrant":1,"revive":1,"riposte":11,"shieldBreak":12,"swordRain":2,"telegraph":1,"undying":2}, - "snaps": "8285ab52 9e70080e a7c10a1e 192dab0b 36f26690 1662e05b e1176369 d711dec6 c9b27c9f d6dd0717 fde76e74 b4688fc9 4225ffcc 4ed526dd 405d7443 d82105bb 476c307b bb5d649d 8ecf6fce" + "hooks": [1,97,5700,1034,1034,1118,1102,123,70,81,197,195,0,16443,2326,63,76,11,1,85,1,0,8], + "events": {"atk":1088,"bounty":3,"deploy":19,"die":70,"dmg":1090,"engage":10,"fx":84,"heal":115,"layer":1,"leak":11,"skill":395,"spawn":92,"status":429}, + "fx": {"block":8,"charge":4,"displace":19,"dodge":8,"dp":13,"explode":4,"garrison":1,"garrisonGrant":1,"revive":1,"riposte":8,"shieldBreak":12,"swordRain":2,"telegraph":1,"undying":2}, + "snaps": "8285ab52 9e70080e a7c10a1e 192dab0b 40a84501 f7c55fa6 88ea3b8a 8d6efb4d 630fcfc6 772e22aa 624415dc f071b098 39ef0344 0961f483 027e3ae9 6bad7832 df731dc0 16849966 f7249471" }, "roster-032": { "about": "pass 1 band 5: chess_char_4_23_b chess_char_5_08_a chess_char_5_01_a chess_char_5_05_a chess_char_5_06_a chess_char_5_07_a chess_char_4_24_b chess_char_4_25_b chess_char_4_26_b chess_char_5_02_a chess_char_5_03_a chess_char_5_10_a", @@ -2003,64 +2017,64 @@ "round": 12, "seed": 3754088384, "waveId": "act1autochess_h05", - "time": 220.03, - "ticks": 6601, + "time": 217.23, + "ticks": 6517, "reason": "cleared", - "killed": 62, + "killed": 44, "total": 167, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 708, + "rngDraws": 583, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 62, + "killed": 44, "total": 167, "perfect": false, - "leaks": 105, + "leaks": 123, "leaksUncounted": 0, "coins": 2, - "dmg": 567551, + "dmg": 438074, "bossDmg": 0, - "heal": 78063, - "deaths": 23, - "layerGains": {"indomShip":55} + "heal": 53610, + "deaths": 26, + "layerGains": {"indomShip":40} } }, "units": [ - ["p1",1,"op","chess_char_5_11_a",0,null,2505.72,1,198,6,38893,21029,11772,78,12], - ["p1",2,"op","chess_char_5_19_a",0,null,3241,1,200,5,51500,13953,150,25,3], - ["p1",3,"op","chess_char_5_13_a",0,null,1518.19,1,163,7,146882,26657,118,49,2], - ["p1",4,"op","chess_char_5_14_a",0,null,1732,1,167,1,14211,11333,4806,39,4], - ["p1",5,"op","chess_char_5_06_b",0,"uniequip_003_etlchi",0,0,158,17,155310,14251,6391,35,8], - ["p1",6,"op","chess_char_5_17_a",0,null,2250,1,202,0,18076,26135,192,34,9], - ["p1",7,"op","chess_char_5_12_a",1,null,1342.62,1,3,3,15727,3936,242,15,3], - ["p1",8,"op","chess_char_5_15_a",0,null,926,1,4,9,29280,0,28867,114,32], - ["p1",9,"op","chess_char_5_20_a",0,null,0,0,188,0,7281,4288,200,16,1], - ["p1",10,"op","chess_char_5_21_a",0,null,0,0,193,0,4781,8961,180,8,0], - ["p1",11,"op","chess_char_5_22_a",0,null,1237,1,5,14,83062,697,0,123,4], - ["p1",12,"op","chess_char_5_23_a",0,null,1422,1,11,0,0,13842,25127,41,22], + ["p1",1,"op","chess_char_5_11_a",0,null,0,0,152,2,20179,20623,8984,42,9], + ["p1",2,"op","chess_char_5_19_a",0,null,104.62,1,198,3,53259,16345,137,17,3], + ["p1",3,"op","chess_char_5_13_a",0,null,2723.22,1,200,9,125689,19130,137,31,1], + ["p1",4,"op","chess_char_5_14_a",0,null,1732,1,203,2,4001,7878,1434,13,2], + ["p1",5,"op","chess_char_5_06_b",0,"uniequip_003_etlchi",0,0,156,14,119821,13622,5742,29,7], + ["p1",6,"op","chess_char_5_17_a",0,null,2250,1,197,0,15328,19572,192,25,7], + ["p1",7,"op","chess_char_5_12_a",1,null,208.42,1,3,3,15355,4803,250,15,3], + ["p1",8,"op","chess_char_5_15_a",0,null,0,0,4,5,23613,2206,22799,104,28], + ["p1",9,"op","chess_char_5_20_a",0,null,0,0,186,0,7091,3652,328,15,1], + ["p1",10,"op","chess_char_5_21_a",0,null,0,0,187,0,4781,8135,325,8,0], + ["p1",11,"op","chess_char_5_22_a",0,null,1237,1,201,6,46409,3400,0,71,3], + ["p1",12,"op","chess_char_5_23_a",0,null,1422,1,202,0,0,5530,13265,25,7], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["p1","~1","token","token_10015_dusk_drgn",null,null,1226.94,0,38,0,2547,787,17,8,null] ], "enemies": { - "enemy_1005_yokai_3": [1,0,1,6363,11119], - "enemy_1009_lurker": [72,24,48,1078,148232], - "enemy_10159_mntrjn": [1,0,1,0,24974], - "enemy_1019_jshoot_2": [51,27,24,19121,173189], - "enemy_1118_lidbox_2": [1,1,0,39,14774], + "enemy_1005_yokai_3": [1,0,1,5720,11967], + "enemy_1009_lurker": [72,15,57,564,109391], + "enemy_10159_mntrjn": [1,0,1,0,25020], + "enemy_1019_jshoot_2": [51,23,28,16793,145679], + "enemy_1118_lidbox_2": [1,1,0,19,14774], "enemy_1196_msfyin": [1,1,0,0,3], - "enemy_1252_lysytb_2": [1,0,1,241,12325], - "enemy_1364_spnaxe_2": [1,0,1,7280,15481], - "enemy_1404_msnip": [36,9,27,105830,206983], - "enemy_1516_jakill": [1,0,1,5916,8197], - "enemy_9011_acrefr": [1,0,1,0,3596] + "enemy_1252_lysytb_2": [1,0,1,373,12737], + "enemy_1364_spnaxe_2": [1,0,1,7105,8508], + "enemy_1404_msnip": [36,4,32,85203,149813], + "enemy_1516_jakill": [1,0,1,9906,6400], + "enemy_9011_acrefr": [1,0,1,0,5302] }, - "hooks": [1,202,6601,1313,1313,4209,4258,4062,85,191,100,99,0,34051,248,154,167,105,1,89,11,0,8], - "events": {"atk":1423,"bounty":1,"deploy":33,"die":86,"dmg":4187,"engage":12,"fx":169,"heal":682,"layer":11,"leak":105,"skill":199,"spawn":182,"status":385}, - "fx": {"aoe":4,"crit":6,"dodge":8,"dollEnd":3,"garrison":11,"healAoe":12,"hpShare":2,"palsy":1,"reborn":2,"revive":11,"shield":66,"sp":5,"substitute":4,"summon":1,"swap":1,"zone":32}, - "snaps": "0092f82c f4836b67 17c58ff9 db1376e8 5d7d41d2 f220322b 8bde1ddc 5b777032 7d7db450 c8a0d56d a986b292 25f56315 dfebbe01 63bf13a2 a2573acb 42c76399 6fd27744 7b6d39f9 3f3829d0 fbd4bdcf c6faabee 5a61f663" + "hooks": [1,203,6517,1029,1029,3749,3775,2762,70,194,71,70,0,24726,220,112,167,123,1,74,8,0,13], + "events": {"atk":1110,"bounty":1,"deploy":34,"die":71,"dmg":3729,"engage":12,"fx":136,"heal":523,"layer":8,"leak":123,"skill":141,"spawn":182,"status":293}, + "fx": {"aoe":2,"crit":8,"dodge":13,"dollEnd":2,"garrison":8,"healAoe":9,"hpShare":1,"palsy":1,"reborn":2,"revive":7,"shield":43,"sp":6,"substitute":4,"summon":1,"swap":1,"zone":28}, + "snaps": "0092f82c f4836b67 10869680 be9cc85a ee3f38c4 e40cdb43 e0d371c1 b980e573 f6855fc7 e05a3002 8d8e9a0c 46b1d7fe ba9c041f c4f12cdd 7cea6fb7 060e2531 b143cde5 534ce0e0 20e42f9d b07c5cbe 6b9eeebd 7a0edaf6" }, "roster-034": { "about": "pass 1 band 6: chess_char_5_08_b chess_char_5_11_b chess_char_5_19_b chess_char_5_13_b chess_char_5_14_b chess_char_5_07_b chess_char_5_17_b chess_char_5_10_b chess_char_5_12_b chess_char_5_15_b chess_char_5_20_b chess_char_5_21_b", @@ -2074,26 +2088,26 @@ "time": 230, "ticks": 6900, "reason": "timeout", - "killed": 90, + "killed": 85, "total": 104, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 614, + "rngDraws": 567, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":90,"total":104,"perfect":false,"leaks":14,"leaksUncounted":0,"coins":8,"dmg":5067807,"bossDmg":0,"heal":147591,"deaths":1,"layerGains":{}}}, + "players": {"p1":{"killed":85,"total":104,"perfect":false,"leaks":19,"leaksUncounted":0,"coins":8,"dmg":4968904,"bossDmg":0,"heal":162669,"deaths":1,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_b",0,"uniequip_003_horn",2050.56,1,7,17,1536539,41898,420,96,80], - ["p1",2,"op","chess_char_5_11_b",0,"uniequip_003_demkni",2689.06,1,10,2,29486,12487,60429,193,37], - ["p1",3,"op","chess_char_5_19_b",0,"none",3682,1,11,7,218351,8132,115,140,5], - ["p1",4,"op","chess_char_5_13_b",0,"uniequip_003_ghost2",3075.69,1,13,3,99774,41650,360,210,5], - ["p1",5,"op","chess_char_5_14_b",0,"none",3261,1,15,0,16161,26656,9219,199,20], - ["p1",6,"op","chess_char_5_07_b",0,"uniequip_003_surtr",1348.66,1,8,6,335602,19370,385,131,52], - ["p1",7,"op","chess_char_5_17_b",0,"uniequip_003_f12yin",1279.31,1,117,11,387303,4557,380,140,67], - ["p1",8,"op","chess_char_5_10_b",0,"uniequip_003_lisa",1470,1,4,3,165201,0,0,115,6], - ["p1",9,"op","chess_char_5_12_b",1,"uniequip_003_dusk",1667,1,5,32,1665923,0,0,90,6], - ["p1",10,"op","chess_char_5_15_b",0,"none",1907.5,1,12,0,20040,0,76283,99,70], - ["p1",11,"op","chess_char_5_20_b",0,"uniequip_003_aglina",1352,1,14,2,222036,1794,0,138,7], - ["p1",12,"op","chess_char_5_21_b",0,"none",3330.35,1,6,7,371392,0,0,66,3], + ["p1",1,"op","chess_char_5_08_b",0,"uniequip_003_horn",2677.22,1,7,28,1654343,34150,938,96,86], + ["p1",2,"op","chess_char_5_11_b",0,"uniequip_003_demkni",4089.02,1,10,1,61910,13184,61102,194,37], + ["p1",3,"op","chess_char_5_19_b",0,"none",3682,1,11,4,203486,7989,273,139,5], + ["p1",4,"op","chess_char_5_13_b",0,"uniequip_003_ghost2",2981.14,1,13,3,99196,56712,735,210,5], + ["p1",5,"op","chess_char_5_14_b",0,"none",3217.16,1,15,0,16840,26781,8835,217,14], + ["p1",6,"op","chess_char_5_07_b",0,"uniequip_003_surtr",1991.3,1,8,7,286260,23678,942,115,50], + ["p1",7,"op","chess_char_5_17_b",0,"uniequip_003_f12yin",1719.88,1,97,8,284673,4338,602,97,45], + ["p1",8,"op","chess_char_5_10_b",0,"uniequip_003_lisa",1470,1,4,2,155494,0,0,112,5], + ["p1",9,"op","chess_char_5_12_b",1,"uniequip_003_dusk",1667,1,5,28,1635894,0,0,95,6], + ["p1",10,"op","chess_char_5_15_b",0,"none",1907.5,1,12,0,52640,0,89243,166,87], + ["p1",11,"op","chess_char_5_20_b",0,"uniequip_003_aglina",1352,1,14,2,223308,1794,0,138,6], + ["p1",12,"op","chess_char_5_21_b",0,"none",3330.35,1,6,2,294860,0,0,60,3], ["-","~1","device","trap_1105_accrate",null,null,100,0,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] @@ -2104,17 +2118,17 @@ "enemy_1043_zomsbr": [1,1,0,19,16095], "enemy_1165_duhond_2": [1,1,0,114,24767], "enemy_1204_msfhu": [1,1,0,0,12], - "enemy_1288_duskls": [1,0,1,0,30959], - "enemy_1381_winman": [27,27,0,17712,969626], - "enemy_1381_winman_2": [39,31,7,30509,1687726], - "enemy_1387_winshd": [30,25,3,91706,2063090], - "enemy_1425_lrcmra_2": [1,1,0,9058,154793], - "enemy_2009_csaudc": [1,1,0,0,49534] + "enemy_1288_duskls": [1,1,0,1594,30964], + "enemy_1381_winman": [27,24,3,5860,940119], + "enemy_1381_winman_2": [39,30,8,27524,1710663], + "enemy_1387_winshd": [30,23,4,112068,1970752], + "enemy_1425_lrcmra_2": [1,1,0,11329,154793], + "enemy_2009_csaudc": [1,1,0,2690,49534] }, - "hooks": [1,120,6900,2634,2634,4056,4053,4687,91,103,358,353,0,32100,5761,102,104,11,1,92,0,0,9], - "events": {"atk":3137,"bounty":4,"deploy":13,"die":92,"dmg":4043,"engage":12,"fx":321,"heal":1049,"leak":11,"skill":711,"spawn":119,"status":811}, - "fx": {"aoe":20,"crit":32,"dodge":9,"ember":1,"healAoe":37,"hpShare":5,"sp":127,"zone":90}, - "snaps": "de3bd2e2 39a4f04d 938d6e2f 6a8ba08b 0b40b2fe 94790546 a24a7a7d dc62d32c a9869a32 3a07aa66 96304745 366c6b95 60cd1e82 8c35892a 4635395f 7e6ccb9b d720d2ea 416f59e4 1d59d0d5 96b1e36e 94267b1d 5dfffecd e1af0b3c" + "hooks": [1,120,6900,2594,2594,3965,3966,6077,86,102,349,346,0,31207,6812,100,104,15,1,87,0,0,8], + "events": {"atk":3090,"bounty":4,"deploy":13,"die":87,"dmg":3953,"engage":12,"fx":330,"heal":1147,"leak":15,"skill":695,"spawn":119,"status":769}, + "fx": {"aoe":14,"crit":20,"dodge":8,"ember":1,"healAoe":37,"hpShare":5,"sp":133,"zone":112}, + "snaps": "de3bd2e2 2442e887 f01b1733 9bc9cdc6 8a87940c d036ac65 9ac7f0c0 bba2a13a 16bd44b5 322f8839 4ea0b666 c1c68f38 cfbabc2e 6a2bc8c2 1c35c398 d665956a 5606316f f2def7a4 3092def0 1422cb4f 10d82584 3c415b7a a1eb8a44" }, "roster-035": { "about": "pass 1 band 6: chess_char_6_03_a chess_char_6_06_a chess_char_6_07_a chess_char_5_22_b chess_char_5_23_b chess_char_6_01_a chess_char_6_02_a chess_char_6_04_a chess_char_6_05_a chess_char_6_08_a chess_char_6_09_a chess_char_6_11_a token_10017_skadi2_dedant token_10030_mlyss_wtrman", @@ -2383,7 +2397,7 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 46, + "killed": 47, "total": 52, "unspawned": 0, "bossHpLeft": null, @@ -2391,32 +2405,32 @@ "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 46, + "killed": 47, "total": 52, "perfect": false, - "leaks": 6, + "leaks": 5, "leaksUncounted": 1, "coins": 6, - "dmg": 440196, + "dmg": 440079, "bossDmg": 0, - "heal": 13481, + "heal": 13648, "deaths": 1, - "layerGains": {"miraShip":1,"raidShip":28} + "layerGains": {"miraShip":1,"raidShip":27} } }, "units": [ - ["p1",1,"op","chess_char_3_12_a",1,null,4504.62,1,29,7,51498,3584,3585,222,9], - ["p1",2,"op","chess_char_3_12_b",1,"none",5666.48,1,31,6,53068,508,508,143,7], + ["p1",1,"op","chess_char_3_12_a",1,null,4481.28,1,29,8,53301,3605,3608,222,9], + ["p1",2,"op","chess_char_3_12_b",1,"none",5637.12,1,31,6,51231,479,479,143,7], ["p1",3,"op","chess_char_3_18_a",1,null,1481,1,10,0,7643,0,0,0,7], - ["p1",4,"op","chess_char_3_18_b",1,"none",1646.25,1,57,3,77123,5093,3049,131,9], - ["p1",5,"op","chess_char_3_04_a",2,null,1864,1,9,4,38378,51,51,90,3], - ["p1",6,"op","chess_char_3_05_a",1,null,5876,1,11,4,28190,4377,4377,78,1], + ["p1",4,"op","chess_char_3_18_b",1,"none",1715.43,1,57,4,77894,5011,3036,137,9], + ["p1",5,"op","chess_char_3_04_a",2,null,1864,1,9,4,38720,34,34,94,3], + ["p1",6,"op","chess_char_3_05_a",1,null,5876,1,11,3,26580,4580,4580,80,1], ["p1",7,"op","chess_char_3_04_b",2,"uniequip_004_swire2",2658.89,1,73,5,40260,275,275,54,3], - ["p1",8,"op","chess_char_3_05_b",1,"none",6857.29,1,61,3,32949,1630,1636,23,3], - ["p1",9,"op","chess_char_3_01_a",1,null,1511.94,1,1,1,4466,0,0,48,2], - ["p1",10,"op","chess_char_3_19_a",1,null,1439,1,4,1,31081,0,0,99,4], - ["p1",11,"op","chess_char_3_21_a",1,null,1364,1,7,10,65935,0,0,174,17], - ["p1",12,"op","chess_char_3_01_b",1,"none",1965.6,1,2,2,7868,0,0,48,2], + ["p1",8,"op","chess_char_3_05_b",1,"none",6821.76,1,61,3,32949,1630,1636,23,3], + ["p1",9,"op","chess_char_3_01_a",1,null,1511.94,1,1,2,4527,0,0,47,2], + ["p1",10,"op","chess_char_3_19_a",1,null,1439,1,4,1,31340,0,0,101,4], + ["p1",11,"op","chess_char_3_21_a",1,null,1364,1,7,9,66107,0,0,177,17], + ["p1",12,"op","chess_char_3_01_b",1,"none",1965.6,1,2,2,7790,0,0,47,2], ["p1",13,"token","token_10028_vigil_wolf",null,null,880,1,5,0,1737,0,0,7,null] ], "enemies": { @@ -2426,16 +2440,16 @@ "enemy_1169_duphlx": [1,1,0,13,4320], "enemy_1208_msfji_2": [1,1,0,0,32], "enemy_1302_ymtro_2": [1,1,0,0,32400], - "enemy_1381_winman": [21,21,0,1183,131544], - "enemy_1381_winman_2": [12,12,0,1119,101088], - "enemy_1387_winshd": [12,6,0,8276,121866], + "enemy_1381_winman": [21,21,0,1157,131544], + "enemy_1381_winman_2": [12,12,0,1085,101088], + "enemy_1387_winshd": [12,7,0,8431,121750], "enemy_1438_dspred": [1,1,0,2934,14256], "enemy_2034_sythef": [1,1,0,25,8640] }, - "hooks": [1,74,5100,1380,1380,1941,1941,3224,47,54,67,64,0,15873,103,87,53,0,1,47,8,0,0], - "events": {"atk":1380,"bounty":3,"deploy":21,"die":54,"dmg":1941,"engage":12,"fx":147,"heal":8,"layer":8,"skill":131,"spawn":66,"status":167}, - "fx": {"aoe":31,"blink":4,"bondMilestone":1,"buff":6,"coin":50,"displace":8,"dp":20,"garrison":8,"shield":1,"volley":17,"wolfShadow":1}, - "snaps": "c0eb778a 0ef5a00f 1e41a09e e9c064ac df541da6 755856db 7e873b2c 0c850720 4c4f9989 cab82556 ccb4d1e8 d0bb92cb 2c214855 11eb34c3 14292e76 2f77680e 5c3a1e6b" + "hooks": [1,74,5100,1392,1392,1946,1946,3274,48,55,67,64,0,15874,103,85,53,0,1,48,7,0,0], + "events": {"atk":1392,"bounty":3,"deploy":21,"die":55,"dmg":1946,"engage":12,"fx":146,"heal":8,"layer":7,"skill":131,"spawn":66,"status":167}, + "fx": {"aoe":31,"blink":4,"bondMilestone":1,"buff":6,"coin":50,"displace":8,"dp":20,"garrison":7,"shield":1,"volley":17,"wolfShadow":1}, + "snaps": "b7d44319 4fc048ae 28ee4e6e c9c603c2 55d0890f 7dc46b6f 45f82890 a80e21f1 4798eff8 d051d766 d7744b9f bb5fd3de c958366f 0c72b3be 3c5f8167 11cd7bde 9e47cb83" }, "roster-040": { "about": "pass 2 band 4: chess_char_4_01_a chess_char_4_17_a chess_char_4_18_a chess_char_4_04_a chess_char_4_07_a chess_char_4_16_a chess_char_4_09_a chess_char_3_19_b chess_char_3_21_b chess_char_4_02_a chess_char_4_12_a chess_char_4_13_a token_10028_vigil_wolf", @@ -2455,7 +2469,7 @@ "bossHpLeft": null, "rngDraws": 290, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":28,"total":65,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":4,"dmg":538376,"bossDmg":0,"heal":532,"deaths":29,"layerGains":{}}}, + "players": {"p1":{"killed":28,"total":65,"perfect":false,"leaks":37,"leaksUncounted":0,"coins":4,"dmg":539070,"bossDmg":0,"heal":532,"deaths":29,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_4_01_a",1,null,0,0,3,1,4146,2638,0,43,1], ["p1",2,"op","chess_char_4_17_a",2,null,0,0,6,0,15255,2849,0,27,1], @@ -2464,7 +2478,7 @@ ["p1",5,"op","chess_char_4_07_a",2,null,0,0,84,0,2834,8690,0,12,1], ["p1",6,"op","chess_char_4_16_a",1,null,520.98,1,102,0,60790,8201,0,23,7], ["p1",7,"op","chess_char_4_09_a",2,null,1179.06,1,101,1,13963,1493,0,18,0], - ["p1",8,"op","chess_char_3_19_b",1,"none",0,0,92,6,62986,3296,0,74,2], + ["p1",8,"op","chess_char_3_19_b",1,"none",0,0,92,6,63680,3296,0,75,2], ["p1",9,"op","chess_char_3_21_b",1,"uniequip_004_archet",0,0,94,6,149953,3180,0,64,7], ["p1",10,"op","chess_char_4_02_a",1,null,0,0,88,4,62899,2856,0,20,1], ["p1",11,"op","chess_char_4_12_a",1,null,0,0,89,4,41821,4040,532,37,1], @@ -2477,7 +2491,7 @@ "enemies": { "enemy_1005_yokai": [24,15,9,0,61406], "enemy_1005_yokai_2": [27,10,12,9640,95871], - "enemy_1005_yokai_3": [6,0,5,21276,241628], + "enemy_1005_yokai_3": [6,0,5,21276,242322], "enemy_10065_ftzlc": [1,1,0,0,16339], "enemy_10162_mnctpt": [1,0,1,5059,43013], "enemy_1119_vofsd": [1,1,0,0,47298], @@ -2487,10 +2501,10 @@ "enemy_1517_xi": [1,0,1,5916,1676], "enemy_9016_acstmr": [1,0,1,0,0] }, - "hooks": [1,102,5100,641,641,975,1026,371,57,91,28,27,29,9673,247,15,65,31,1,63,0,2,9], - "events": {"atk":718,"bounty":2,"deploy":35,"die":60,"dmg":1019,"engage":12,"fx":91,"leak":31,"skill":55,"spawn":81,"status":269}, + "hooks": [1,102,5100,642,642,976,1028,371,57,91,28,27,29,9673,247,15,65,31,1,63,0,2,9], + "events": {"atk":719,"bounty":2,"deploy":35,"die":60,"dmg":1021,"engage":12,"fx":91,"leak":31,"skill":55,"spawn":81,"status":269}, "fx": {"beam":5,"block":2,"buff":3,"burst":2,"coldWind":1,"dodge":9,"dp":2,"iceSpike":1,"overclock":1,"overload":1,"revive":4,"rockfall":1,"sentry":6,"shadowWeave":19,"shield":6,"shieldBreak":7,"stone":1,"summon":1,"swordStorm":7,"telegraph":2,"volley":7,"wake":1,"wolfShadow":1,"zone":1}, - "snaps": "1a929dbc 7451dcc4 0ee48092 20e4366e 344bb7d6 c4ddc413 f7b86fa8 ba9b29f8 5fd594a5 5be4437d 366984c4 fe75c716 9ff2b88a d0d50ca4 c0469f95 176d1275 1f74fe38" + "snaps": "1a929dbc 7451dcc4 0ee48092 20e4366e 344bb7d6 c4ddc413 f7b86fa8 ba9b29f8 5fd594a5 5be4437d 366984c4 7d7082b1 98b0b2f1 2eca0438 b1da6518 1e074864 280e1bad" }, "roster-041": { "about": "pass 2 band 5: chess_char_4_23_a chess_char_4_01_b chess_char_4_19_a chess_char_4_22_a chess_char_4_04_b chess_char_4_07_b chess_char_4_09_b chess_char_4_20_a chess_char_4_24_a chess_char_4_25_a chess_char_4_02_b chess_char_4_12_b", @@ -2508,40 +2522,40 @@ "total": 47, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 41, + "rngDraws": 39, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":46,"total":47,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":8,"dmg":527411,"bossDmg":0,"heal":14007,"deaths":5,"layerGains":{}}}, + "players": {"p1":{"killed":46,"total":47,"perfect":false,"leaks":1,"leaksUncounted":0,"coins":8,"dmg":526018,"bossDmg":0,"heal":15976,"deaths":5,"layerGains":{}}}, "units": [ ["p1",1,"op","chess_char_4_23_a",1,null,0,0,6,1,36052,2179,0,57,2], - ["p1",2,"op","chess_char_4_01_b",1,"none",4862.79,1,9,1,5731,128,0,56,1], - ["p1",3,"op","chess_char_4_19_a",1,null,0,0,59,0,2016,5102,0,44,3], - ["p1",4,"op","chess_char_4_22_a",1,null,2022,1,7,0,339,707,18,11,1], - ["p1",5,"op","chess_char_4_04_b",2,"uniequip_002_ines",0,0,52,5,72285,14160,0,114,2], + ["p1",2,"op","chess_char_4_01_b",1,"none",4593.08,1,9,1,5749,397,0,62,1], + ["p1",3,"op","chess_char_4_19_a",1,null,0,0,59,0,1924,5063,0,43,3], + ["p1",4,"op","chess_char_4_22_a",1,null,2022,1,7,0,203,707,18,6,1], + ["p1",5,"op","chess_char_4_04_b",2,"uniequip_002_ines",0,0,52,4,69846,16432,0,119,2], ["p1",6,"op","chess_char_4_07_b",2,"none",2233,1,8,0,0,0,0,0,0], - ["p1",7,"op","chess_char_4_09_b",2,"uniequip_004_mizuki",1756,1,12,24,289250,1456,0,52,2], - ["p1",8,"op","chess_char_4_20_a",1,null,1217,1,2,2,20196,0,0,80,3], - ["p1",9,"op","chess_char_4_24_a",2,null,1726,1,3,10,70154,0,0,26,4], + ["p1",7,"op","chess_char_4_09_b",2,"uniequip_004_mizuki",1756,1,12,24,295735,1193,0,52,2], + ["p1",8,"op","chess_char_4_20_a",1,null,1217,1,2,2,20266,0,0,81,3], + ["p1",9,"op","chess_char_4_24_a",2,null,1726,1,3,11,64854,0,0,25,4], ["p1",10,"op","chess_char_4_25_a",1,null,1221,1,4,0,3366,0,0,0,3], ["p1",11,"op","chess_char_4_02_b",1,"none",2966.25,1,1,0,0,0,0,0,0], ["p1",12,"op","chess_char_4_12_b",1,"none",4562.3,1,5,3,28023,0,0,72,4], - ["p1","~1","token","char_613_acmedc",null,null,1314,1,13,0,0,0,13989,19,2] + ["p1","~1","token","char_613_acmedc",null,null,1314,1,13,0,0,0,15959,19,2] ], "enemies": { "enemy_1001_bigbo": [1,1,0,2198,17600], "enemy_10097_crshd": [1,1,0,0,8000], "enemy_1045_hammer": [1,1,0,864,8000], - "enemy_1045_hammer_2": [6,5,0,13899,93761], - "enemy_1061_zomshd": [33,33,0,4514,371239], + "enemy_1045_hammer_2": [6,5,0,16620,92229], + "enemy_1061_zomshd": [33,33,0,4296,371379], "enemy_1166_dusbr": [1,1,0,0,2400], "enemy_1204_msfhu_2": [1,1,0,0,5], "enemy_1288_duskls_2": [1,1,0,0,4805], "enemy_1427_lrnazg": [1,1,0,649,12000], "enemy_2010_csdcr": [1,1,0,1080,9600] }, - "hooks": [1,63,5700,633,633,1039,1034,16137,51,52,27,24,45,26514,82,52,47,0,1,52,0,0,12], - "events": {"atk":943,"bounty":4,"deploy":16,"die":52,"dmg":997,"engage":9,"fx":181,"heal":33,"skill":51,"spawn":60,"status":337}, - "fx": {"aoe":3,"beam":2,"devour":4,"displace":53,"dodge":12,"ember":1,"garrisonGrant":1,"link":3,"mote":56,"overload":3,"reweave":3,"riposte":6,"ripple":2,"sentry":4,"shadowWeave":20,"shield":2,"snow":1,"summon":1,"wake":4}, - "snaps": "903d6a08 54ed0b39 a5926312 e06609d8 d467c143 474db40e ef76d5dd d540479e 9f2062fa e2fde6d2 b7bb1b47 eedffd5c 4ff651cd bf49a63b eb00c702 27fd578e 4d45eaa2 244bd636 51e74803" + "hooks": [1,63,5700,638,638,1045,1040,16158,51,52,27,24,45,26424,83,49,47,0,1,52,0,0,11], + "events": {"atk":949,"bounty":4,"deploy":16,"die":52,"dmg":1003,"engage":9,"fx":178,"heal":36,"skill":51,"spawn":60,"status":342}, + "fx": {"aoe":3,"beam":2,"devour":4,"displace":53,"dodge":11,"ember":1,"garrisonGrant":1,"link":3,"mote":56,"overload":3,"reweave":3,"riposte":5,"ripple":2,"sentry":4,"shadowWeave":18,"shield":3,"snow":1,"summon":1,"wake":4}, + "snaps": "903d6a08 54ed0b39 a5926312 e06609d8 d934b95c f7f55901 ea89d0e0 89193a86 d2705c22 d4e888ca 3ac948ff 97bcf3d4 3390f555 7b4ec718 55959646 3dc3ef0b 4446f6f0 e98ede33 e9343e0a" }, "roster-042": { "about": "pass 2 band 5: chess_char_4_17_b chess_char_4_18_b chess_char_4_23_b chess_char_4_19_b chess_char_4_22_b chess_char_5_01_a chess_char_4_16_b chess_char_4_13_b chess_char_4_20_b chess_char_4_24_b chess_char_4_25_b chess_char_5_02_a", @@ -2580,14 +2594,14 @@ ["p1",1,"op","chess_char_4_17_b",2,"none",4566.9,1,3,0,0,0,0,0,0], ["p1",2,"op","chess_char_4_18_b",2,"none",6783,1,5,0,0,0,0,0,0], ["p1",3,"op","chess_char_4_23_b",1,"uniequip_004_gvial2",3667.3,1,7,1,14104,123,123,6,1], - ["p1",4,"op","chess_char_4_19_b",1,"none",2525.9,1,10,0,22710,1439,0,4,4], + ["p1",4,"op","chess_char_4_19_b",1,"none",2525.9,1,10,0,23540,1439,0,5,4], ["p1",5,"op","chess_char_4_22_b",1,"uniequip_002_svrash",3339.7,1,11,3,38288,7309,4592,48,1], ["p1",6,"op","chess_char_5_01_a",2,null,0,0,56,4,51648,11544,3873,52,1], ["p1",7,"op","chess_char_4_16_b",1,"none",658.3,1,73,14,149695,5766,656,115,6], ["p1",8,"op","chess_char_4_13_b",2,"uniequip_004_gnosis",2553.2,1,8,5,33793,0,0,42,3], ["p1",9,"op","chess_char_4_20_b",1,"none",1844.7,1,9,15,99818,998,0,47,2], ["p1",10,"op","chess_char_4_24_b",2,"none",2571.4,1,12,8,161836,6702,551,45,4], - ["p1",11,"op","chess_char_4_25_b",1,"uniequip_002_cetsyr",2172.3,1,4,2,16576,0,0,0,3], + ["p1",11,"op","chess_char_4_25_b",1,"uniequip_002_cetsyr",2172.3,1,4,2,15745,0,0,0,3], ["p1",12,"op","chess_char_5_02_a",1,null,1570.4,1,6,7,117674,633,11937,24,4], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] @@ -2605,10 +2619,10 @@ "enemy_1512_mcmstr": [1,1,0,5348,92160], "enemy_9008_acbunn": [1,1,0,1028,13824] }, - "hooks": [1,77,4804,497,497,1221,1232,1563,67,64,29,26,3,16171,1879,43,59,0,1,70,50,0,6], - "events": {"atk":609,"bounty":4,"deploy":16,"die":64,"dmg":1049,"engage":9,"fx":182,"heal":131,"layer":50,"skill":55,"spawn":73,"status":288}, + "hooks": [1,77,4804,498,498,1222,1233,1563,67,64,29,26,3,16171,1879,43,59,0,1,70,50,0,6], + "events": {"atk":610,"bounty":4,"deploy":16,"die":64,"dmg":1050,"engage":9,"fx":182,"heal":131,"layer":50,"skill":55,"spawn":73,"status":288}, "fx": {"aoe":4,"bombard":5,"bombardShell":5,"coldWind":3,"devour":4,"displace":1,"dodge":6,"explode":22,"extraAttack":9,"garrison":26,"garrisonGrant":1,"iceSpike":3,"link":2,"mote":33,"overload":1,"revive":1,"reweave":3,"shieldBreak":1,"sleepGuard":4,"snow":1,"swordStorm":6,"telegraph":2,"zone":39}, - "snaps": "6e6cd551 0a57f9de 2e71cf0f 17a84a1d 76ac0e19 3bc65f34 335a0eba 3d3be75c 70af313e d8c31dcf 31612605 211be5e6 c4ebc4e2 270bee85 60a12105 2fa7741c" + "snaps": "6e6cd551 0a57f9de 2e71cf0f 17a84a1d 76ac0e19 3bc65f34 335a0eba 3d3be75c 70af313e 8ab9d9eb e18092b4 f3302e53 c52c8f3b e39fbb70 b6a62e34 fbd754d1" }, "roster-043": { "about": "pass 2 band 5: chess_char_5_08_a chess_char_5_11_a chess_char_5_05_a chess_char_5_06_a chess_char_5_13_a chess_char_5_14_a chess_char_5_07_a chess_char_5_17_a chess_char_5_03_a chess_char_5_10_a chess_char_5_12_a chess_char_5_15_a", @@ -2934,56 +2948,56 @@ "round": 13, "seed": 328939409, "waveId": "act1autochess_h06", - "time": 208.53, - "ticks": 6256, + "time": 204.23, + "ticks": 6127, "reason": "cleared", - "killed": 30, + "killed": 51, "total": 86, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 123, + "rngDraws": 277, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 30, + "killed": 51, "total": 86, "perfect": false, - "leaks": 56, + "leaks": 35, "leaksUncounted": 0, "coins": 0, - "dmg": 1176934, + "dmg": 1359874, "bossDmg": 0, - "heal": 9794, - "deaths": 7, - "layerGains": {"egirShip":5,"swiftShip":72} + "heal": 8755, + "deaths": 5, + "layerGains": {"egirShip":5,"swiftShip":62} } }, "units": [ - ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,101,7,84836,10123,102,21,6], - ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,80,5,134578,12604,112,37,2], - ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,9559,11,4], - ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,51,12,572538,1800,0,45,39], - ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,58,0,227972,1314,22,46,5], - ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,99,5,157009,7588,0,23,3], + ["p1",1,"op","chess_char_6_19_b",1,"none",2858.76,1,64,19,258702,5492,68,46,18], + ["p1",2,"op","chess_char_5_13_b",1,"none",3202.92,1,81,1,42223,6473,68,19,1], + ["p1",3,"op","chess_char_6_20_b",1,"none",1480.68,1,4,0,0,782,8597,11,5], + ["p1",4,"op","chess_char_5_12_b",0,"none",1800.36,1,51,3,264406,2572,0,31,27], + ["p1",5,"op","chess_char_5_20_b",2,"none",1292,1,58,2,250771,1314,22,46,5], + ["p1",6,"op","chess_char_6_05_b",2,"none",1557.36,1,65,25,543772,6036,0,46,11], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { - "enemy_10027_vtsk": [1,0,1,11074,12891], - "enemy_10098_crhro": [1,0,1,3835,10311], - "enemy_1045_hammer_2": [19,4,15,11239,396430], - "enemy_1061_zomshd": [60,25,35,6109,830122], - "enemy_1166_dusbr_2": [1,1,0,231,7299], - "enemy_1207_sfji": [1,0,1,0,1816], - "enemy_1292_duskld": [1,0,1,0,2528], - "enemy_1430_lrrook": [1,0,1,0,19741], - "enemy_2017_csphts": [1,0,1,1723,1260] + "enemy_10027_vtsk": [1,0,1,13505,16174], + "enemy_10098_crhro": [1,0,1,3357,9770], + "enemy_1045_hammer_2": [19,11,8,0,443111], + "enemy_1061_zomshd": [60,39,21,3592,888063], + "enemy_1166_dusbr_2": [1,1,0,0,7299], + "enemy_1207_sfji": [1,0,1,0,8734], + "enemy_1292_duskld": [1,0,1,0,2868], + "enemy_1430_lrrook": [1,0,1,0,46482], + "enemy_2017_csphts": [1,0,1,2215,2257] }, - "hooks": [1,102,6256,240,240,2807,2816,29990,37,93,59,59,0,9156,341,23,86,56,1,69,8,1,0], - "events": {"atk":434,"deploy":13,"die":37,"dmg":2816,"engage":5,"fx":98,"heal":37,"layer":8,"leak":56,"skill":118,"spawn":95,"status":733}, - "fx": {"burst":1,"dollEnd":1,"explode":1,"garrison":7,"layer":1,"lightning":40,"shield":4,"slash":6,"sp":23,"storm":3,"substitute":3,"swap":2,"telegraph":1,"weightless":5}, - "snaps": "114138f7 91b6a2fa f0c40ac9 ec26c383 665999c5 3264a031 3bd52571 4ab93c4c 3824d793 281d4890 848fd5d1 01b47471 1ef86280 835ca61b 8ec3f7bc 36d90f09 f02b3e41 a9cb62eb b36f3813 a1acd77e 86555a83" + "hooks": [1,100,6127,238,238,2150,2158,21451,56,91,67,67,0,10009,674,24,86,35,1,83,8,0,1], + "events": {"atk":490,"deploy":11,"die":56,"dmg":2158,"engage":5,"fx":311,"heal":32,"layer":8,"leak":35,"skill":134,"spawn":95,"status":1019}, + "fx": {"dodge":1,"dollEnd":1,"explode":2,"garrison":7,"layer":1,"lightning":223,"shield":5,"slash":18,"sp":35,"storm":11,"substitute":1,"telegraph":1,"weightless":5}, + "snaps": "114138f7 91b6a2fa 7610acfd 3d21f676 8b814efe f52c75c7 7bf31005 97bafb07 219c56f9 4f52058d fb2c665c 9e07511a c65f6592 2f5b9396 d20a5349 7cff5211 3a98f4c8 d3c065bc 6e8f918b f69dface ad3b6031" }, "roster-049": { "about": "pass 3 band 5: chess_char_4_23_b chess_char_3_04_b chess_char_4_09_b chess_char_3_21_b chess_char_4_13_b", diff --git a/test/golden/standins.json b/test/golden/standins.json index a3d7051e..6e3f6062 100644 --- a/test/golden/standins.json +++ b/test/golden/standins.json @@ -20,58 +20,58 @@ "time": 170, "ticks": 5100, "reason": "timeout", - "killed": 20, + "killed": 19, "total": 50, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 532, + "rngDraws": 544, "errors": {"count":0,"kinds":[]}, "players": { "p1": { - "killed": 20, + "killed": 19, "total": 50, "perfect": false, - "leaks": 30, + "leaks": 31, "leaksUncounted": 0, "coins": 4, - "dmg": 241025, + "dmg": 266231, "bossDmg": 0, - "heal": 16760, - "deaths": 23, + "heal": 17643, + "deaths": 24, "layerGains": {"raidShip":13,"visiShip":2} } }, "units": [ - ["p1",1,"op","chess_char_3_12_a",2,null,0,0,73,3,47867,4677,0,18,2], - ["p1",2,"op","chess_char_4_09_a",0,null,0,0,1,4,30036,2984,0,18,1], - ["p1",3,"op","chess_char_3_05_a",2,null,0,0,77,3,30660,12398,0,46,2], - ["p1",4,"op","chess_char_3_18_a",2,null,0,0,7,1,18366,2638,0,32,1], - ["p1",5,"op","chess_char_4_04_a",1,null,951,1,94,1,10801,6131,0,85,10], - ["p1",6,"op","chess_char_4_07_a",1,null,0,0,75,1,13544,8857,0,31,1], - ["p1",7,"op","chess_char_4_16_a",1,null,769.82,1,89,1,8358,15154,0,114,14], - ["p1",8,"op","chess_char_3_01_a",2,null,1271,1,5,0,18482,0,0,156,3], - ["p1",9,"op","chess_char_3_04_a",2,null,1218,1,86,0,0,1980,16760,34,2], - ["p1",10,"op","chess_char_3_21_a",2,null,716.85,1,6,5,40715,555,0,124,2], - ["p1",11,"op","chess_char_4_02_a",1,null,1272,1,91,1,10743,2034,0,58,1], - ["p1",12,"op","chess_char_4_13_a",1,null,812,1,93,0,11454,812,0,18,1] + ["p1",1,"op","chess_char_3_12_a",2,null,0,0,74,4,60651,4029,0,28,3], + ["p1",2,"op","chess_char_4_09_a",0,null,0,0,1,1,29760,2984,0,18,1], + ["p1",3,"op","chess_char_3_05_a",2,null,2081.5,1,76,2,31495,11964,0,47,2], + ["p1",4,"op","chess_char_3_18_a",2,null,0,0,7,1,10578,3995,0,17,1], + ["p1",5,"op","chess_char_4_04_a",1,null,0,0,92,1,17499,7084,0,74,10], + ["p1",6,"op","chess_char_4_07_a",1,null,0,0,79,1,19230,13744,0,43,1], + ["p1",7,"op","chess_char_4_16_a",1,null,215.72,1,94,1,9789,11775,0,117,14], + ["p1",8,"op","chess_char_3_01_a",2,null,1271,1,5,0,22413,0,0,149,2], + ["p1",9,"op","chess_char_3_04_a",2,null,1218,1,86,0,0,1599,17643,36,2], + ["p1",10,"op","chess_char_3_21_a",2,null,716.85,1,6,6,42226,555,0,132,2], + ["p1",11,"op","chess_char_4_02_a",1,null,1272,1,89,1,7563,1272,0,68,1], + ["p1",12,"op","chess_char_4_13_a",1,null,0,0,83,1,15028,1624,0,33,2] ], "enemies": { - "enemy_10001_trslim": [1,1,0,17,4860], + "enemy_10001_trslim": [1,1,0,8,4860], "enemy_1000_gopro_2": [1,1,0,0,1836], - "enemy_10018_sgrobh": [1,1,0,4515,8100], - "enemy_1001_bigbo": [1,0,1,1235,2633], - "enemy_10027_vtsk": [1,0,1,13440,2341], + "enemy_10018_sgrobh": [1,1,0,3753,8100], + "enemy_1001_bigbo": [1,0,1,1235,2656], + "enemy_10027_vtsk": [1,0,1,12888,1289], "enemy_10031_cnvsld": [1,0,1,0,0], - "enemy_10034_cnvsax": [1,0,1,808,1774], + "enemy_10034_cnvsax": [1,0,1,1235,5687], "enemy_10042_prtrop": [1,0,1,0,0], - "enemy_1116_liprr_2": [21,13,8,6180,124677], - "enemy_1119_vofsd": [12,3,8,14633,55002], - "enemy_1121_lifbos_2": [9,1,7,10809,39802] + "enemy_1116_liprr_2": [21,13,8,5313,129729], + "enemy_1119_vofsd": [12,2,8,12831,69965], + "enemy_1121_lifbos_2": [9,1,6,15758,42109] }, - "hooks": [1,94,5100,846,846,1340,1344,3022,43,85,40,37,0,18468,28,40,50,28,1,45,5,0,3], - "events": {"atk":956,"bounty":2,"deploy":44,"die":57,"dmg":1344,"engage":11,"fx":78,"heal":34,"layer":5,"leak":28,"skill":77,"spawn":62,"status":131}, - "fx": {"beam":8,"blink":14,"dodge":4,"dp":5,"garrison":5,"liberate":14,"phase":11,"slash":16,"telegraph":1}, - "snaps": "8b8be66d 956c486c d56f1b8a 01e934c3 41a33047 6b039b9c 58145bb4 2c9c0c6a ec67901c de32bc9a c3bfaafb 4e912ddc 432cd753 c556201d 46aacdd1 dcb0d5a9 0114b0f8" + "hooks": [1,94,5100,874,874,1402,1411,3740,43,84,41,38,0,18511,42,43,50,27,1,46,5,0,2], + "events": {"atk":983,"bounty":2,"deploy":44,"die":57,"dmg":1411,"engage":11,"fx":90,"heal":36,"layer":5,"leak":27,"skill":79,"spawn":62,"status":157}, + "fx": {"beam":12,"blink":14,"dodge":2,"dp":7,"garrison":5,"liberate":12,"phase":13,"slash":24,"telegraph":1}, + "snaps": "8b8be66d b3674b6a 84ebce5a c4efeba6 05a2d3cd bf6f3985 249c5ebd 2bf68848 6faa6eb8 0275f0fb f4b16de1 f88b620c 3545e4d2 aa0d5a15 ecf73cfe 95a2451e a178591a" }, "standin-02": { "about": "normal band 5 as stand-ins: chess_char_4_17_a→char_610_acfend chess_char_4_18_a→char_602_cdfend chess_char_5_05_a→char_602_cdfend chess_char_4_19_a→char_608_acpion chess_char_5_01_a→char_600_cpione chess_char_4_22_a→char_609_acguad chess_char_4_23_a→char_609_acguad chess_char_5_06_a→char_609_acguad chess_char_4_20_a→char_603_csnipe chess_char_4_24_a→char_604_ccast chess_char_5_02_a→char_604_ccast chess_char_5_03_a→char_612_accast", @@ -138,44 +138,44 @@ "time": 190, "ticks": 5700, "reason": "timeout", - "killed": 42, + "killed": 41, "total": 74, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 282, + "rngDraws": 278, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":42,"total":74,"perfect":false,"leaks":32,"leaksUncounted":0,"coins":8,"dmg":319021,"bossDmg":0,"heal":44930,"deaths":10,"layerGains":{}}}, + "players": {"p1":{"killed":41,"total":74,"perfect":false,"leaks":33,"leaksUncounted":0,"coins":8,"dmg":322054,"bossDmg":0,"heal":40884,"deaths":10,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_a",2,null,930.4,1,6,0,10870,8837,0,131,2], - ["p1",2,"op","chess_char_5_14_a",2,null,445,1,90,24,153939,6310,0,64,6], - ["p1",3,"op","chess_char_5_19_a",0,null,0,0,89,7,34634,13981,0,90,2], - ["p1",4,"op","chess_char_5_07_a",2,null,2564,1,91,0,663,3824,0,12,1], - ["p1",5,"op","chess_char_5_13_a",2,null,704,1,11,7,61469,10854,0,127,4], - ["p1",6,"op","chess_char_5_17_a",2,null,1154,1,93,1,3911,5206,0,72,0], - ["p1",7,"op","chess_char_5_10_a",2,null,932,1,2,0,10452,0,0,74,2], - ["p1",8,"op","chess_char_5_11_a",2,null,1224,1,3,0,0,0,44930,72,2], - ["p1",9,"op","chess_char_5_12_a",2,null,1160,1,4,0,21685,0,0,85,2], - ["p1",10,"op","chess_char_5_15_a",2,null,0,0,84,2,8461,14776,0,100,2], - ["p1",11,"op","chess_char_5_18_a",2,null,1272,1,94,1,5483,1272,0,19,1], - ["p1",12,"op","chess_char_5_20_a",2,null,1972,1,92,0,7456,1972,0,34,1] + ["p1",1,"op","chess_char_5_08_a",2,null,2206.8,1,91,0,5895,3841,0,57,1], + ["p1",2,"op","chess_char_5_14_a",2,null,0,0,90,23,138688,7595,0,63,6], + ["p1",3,"op","chess_char_5_19_a",0,null,349.6,1,89,6,47622,15311,0,100,3], + ["p1",4,"op","chess_char_5_07_a",2,null,2564,1,92,0,12112,3824,0,24,1], + ["p1",5,"op","chess_char_5_13_a",2,null,1801,1,11,7,56384,10325,0,123,4], + ["p1",6,"op","chess_char_5_17_a",2,null,20,1,81,1,7284,4998,0,77,0], + ["p1",7,"op","chess_char_5_10_a",2,null,932,1,2,1,7776,0,0,58,2], + ["p1",8,"op","chess_char_5_11_a",2,null,1224,1,3,0,0,0,40884,67,2], + ["p1",9,"op","chess_char_5_12_a",2,null,1160,1,4,0,19936,0,0,79,2], + ["p1",10,"op","chess_char_5_15_a",2,null,0,0,84,2,8336,14152,0,96,2], + ["p1",11,"op","chess_char_5_18_a",2,null,0,0,1,1,11149,1272,0,22,1], + ["p1",12,"op","chess_char_5_20_a",2,null,0,0,5,0,6872,1972,0,38,2] ], "enemies": { "enemy_1006_shield_2": [1,1,0,582,8000], - "enemy_1006_shield_3": [1,0,1,13540,16777], + "enemy_1006_shield_3": [1,0,1,11325,14488], "enemy_10073_mpcar": [1,1,0,12,1600], "enemy_1007_slime": [1,1,0,0,440], "enemy_10081_mpplai": [1,1,0,0,2000], "enemy_10087_hlchgr": [1,1,0,38,4800], "enemy_10094_crstf": [1,1,0,28,3200], - "enemy_10097_crshd": [1,0,1,958,3407], - "enemy_1166_dusbr_2": [42,29,13,2894,108859], - "enemy_1170_dushld_2": [12,5,6,29261,54020], - "enemy_9011_acrefr": [12,2,5,19716,115919] + "enemy_10097_crshd": [1,1,0,0,8000], + "enemy_1166_dusbr_2": [42,28,14,2956,110452], + "enemy_1170_dushld_2": [12,5,6,26204,45033], + "enemy_9011_acrefr": [12,1,7,22144,124041] }, - "hooks": [1,94,5700,1131,1131,1741,1749,134,52,78,25,27,0,28955,3503,55,74,26,1,52,0,1,12], - "events": {"atk":1231,"bounty":4,"deploy":20,"die":52,"dmg":1743,"engage":11,"fx":170,"heal":122,"leak":26,"skill":56,"spawn":86,"status":640}, - "fx": {"aoe":60,"burst":1,"displace":1,"dodge":20,"dp":30,"phase":1,"slash":48,"sp":1,"spGain":8}, - "snaps": "530ce9ab 3259d8c0 918a3cff a85e2d90 3b23751a 403c9dcf efcb9491 add68383 14687f3d 9be4f49b 5d03502b b913a379 f0d88771 65b13150 a9a574ed 8ba4eb88 928b8a4d a28dbd38 b246bf1a" + "hooks": [1,92,5700,1025,1025,1522,1523,112,51,79,26,26,0,27108,3400,51,74,28,1,52,0,0,10], + "events": {"atk":1128,"bounty":4,"deploy":18,"die":51,"dmg":1522,"engage":11,"fx":134,"heal":106,"leak":28,"skill":55,"spawn":86,"status":609}, + "fx": {"aoe":30,"displace":1,"dodge":16,"dp":29,"phase":1,"slash":48,"sp":1,"spGain":8}, + "snaps": "530ce9ab 3259d8c0 918a3cff a85e2d90 3b23751a 8f259c98 9faf0458 b98e7e80 e64fb37d 38b17953 2458f514 b2894d2f 6c036845 609d268d 5a2493c6 23bae8dc e4a6485d 424e64d1 745ddf7a" }, "standin-04": { "about": "normal band 6 as stand-ins: chess_char_6_03_a→char_610_acfend chess_char_6_02_a→char_608_acpion chess_char_6_07_a→char_617_sharp2 chess_char_6_10_a→char_617_sharp2 chess_char_6_11_a→char_608_acpion chess_char_6_06_a→char_609_acguad chess_char_5_22_a→char_611_acnipe chess_char_6_01_a→char_611_acnipe chess_char_6_04_a→char_614_acsupo chess_char_6_05_a→char_611_acnipe chess_char_6_08_a→char_612_accast chess_char_6_09_a→char_613_acmedc", @@ -186,43 +186,31 @@ "round": 12, "seed": 428893583, "waveId": "act1autochess_h05", - "time": 208, - "ticks": 6240, + "time": 201.43, + "ticks": 6043, "reason": "cleared", - "killed": 132, + "killed": 158, "total": 158, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 626, + "rngDraws": 612, "errors": {"count":0,"kinds":[]}, "players": { - "p1": { - "killed": 132, - "total": 158, - "perfect": false, - "leaks": 26, - "leaksUncounted": 0, - "coins": 8, - "dmg": 1273630, - "bossDmg": 0, - "heal": 25492, - "deaths": 11, - "layerGains": {"sargonShip":5} - } + "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":1471553,"bossDmg":0,"heal":29310,"deaths":8,"layerGains":{"sargonShip":5}} }, "units": [ - ["p1",1,"op","chess_char_6_03_a",2,null,0,0,160,0,1530,5735,0,12,1], - ["p1",2,"op","chess_char_6_02_a",2,null,0,0,163,5,14262,3058,0,2,3], - ["p1",3,"op","chess_char_6_07_a",0,null,0,0,175,7,132136,3730,0,84,1], - ["p1",4,"op","chess_char_6_10_a",0,null,0,0,174,4,98395,3730,0,82,2], - ["p1",5,"op","chess_char_6_11_a",2,null,0,0,150,12,83552,7740,0,35,4], - ["p1",6,"op","chess_char_6_06_a",2,null,2638,1,165,13,111922,20468,0,114,3], - ["p1",7,"op","chess_char_5_22_a",2,null,1272,1,3,5,43091,0,0,34,2], - ["p1",8,"op","chess_char_6_01_a",2,null,1272,1,4,41,296378,0,0,157,3], - ["p1",9,"op","chess_char_6_04_a",2,null,1160,1,13,5,62041,0,0,118,2], - ["p1",10,"op","chess_char_6_05_a",2,null,1272,1,14,15,203216,2453,0,121,2], - ["p1",11,"op","chess_char_6_08_a",2,null,1372,1,5,25,227108,0,0,54,2], - ["p1",12,"op","chess_char_6_09_a",2,null,1224,1,11,0,0,0,25492,39,2], + ["p1",1,"op","chess_char_6_03_a",2,null,0,0,169,0,1288,5814,0,12,1], + ["p1",2,"op","chess_char_6_02_a",2,null,0,0,171,5,21360,3058,0,2,4], + ["p1",3,"op","chess_char_6_07_a",0,null,0,0,6,19,254549,1865,0,146,3], + ["p1",4,"op","chess_char_6_10_a",0,null,1865,1,177,6,128769,1865,0,109,2], + ["p1",5,"op","chess_char_6_11_a",2,null,1529,1,174,28,230418,10062,0,75,10], + ["p1",6,"op","chess_char_6_06_a",2,null,2149.08,1,158,16,114781,20845,0,115,4], + ["p1",7,"op","chess_char_5_22_a",2,null,1272,1,3,2,27889,0,0,23,2], + ["p1",8,"op","chess_char_6_01_a",2,null,1272,1,4,36,251215,0,0,157,2], + ["p1",9,"op","chess_char_6_04_a",2,null,1160,1,13,5,66116,0,0,122,2], + ["p1",10,"op","chess_char_6_05_a",2,null,1272,1,14,18,242842,2453,0,127,2], + ["p1",11,"op","chess_char_6_08_a",2,null,1372,1,5,21,132325,0,0,40,2], + ["p1",12,"op","chess_char_6_09_a",2,null,1224,1,11,0,0,0,29310,46,2], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], @@ -231,17 +219,17 @@ "enemy_10099_crvln": [1,1,0,2453,20736], "enemy_1009_lurker": [1,1,0,23,3041], "enemy_1010_demon": [1,1,0,0,10368], - "enemy_1010_demon_2": [28,21,7,12612,527097], + "enemy_1010_demon_2": [28,28,0,11599,580608], "enemy_10112_ymgds": [1,1,0,0,6912], - "enemy_10116_ymgtop": [1,1,0,2398,13824], - "enemy_10118_ymgprc": [1,0,1,5138,12807], - "enemy_1071_dftman": [63,62,1,251,243295], - "enemy_1072_dlancer": [60,43,17,22461,414164] + "enemy_10116_ymgtop": [1,1,0,2924,13824], + "enemy_10118_ymgprc": [1,1,0,10510,69120], + "enemy_1071_dftman": [63,63,0,587,243855], + "enemy_1072_dlancer": [60,60,0,16287,497664] }, - "hooks": [1,178,6240,938,938,1920,1911,67,143,169,27,26,0,34691,3961,57,158,26,1,144,2,0,17], - "events": {"atk":1074,"bounty":4,"deploy":18,"die":143,"dmg":1911,"engage":11,"fx":106,"heal":47,"layer":2,"leak":26,"skill":53,"spawn":172,"status":443}, - "fx": {"aoe":6,"dodge":18,"dp":24,"garrison":2,"revive":1,"slash":40,"sp":10,"spGain":3,"telegraph":2}, - "snaps": "484fd662 4f4e076d c10d51e5 383709ef a59de77b 9f2c5b1e 7a70b803 2669ad41 7fd7e456 e1f4734e 1218d65d 5c7d2330 d869c05d 93de1153 cc0bd6bd 4e2d749f 1a92d669 4cd5e851 79f5a0ed 563a633b a9d3711f" + "hooks": [1,177,6043,1060,1060,2060,2055,76,166,166,36,35,0,37056,3588,58,158,0,1,168,2,0,13], + "events": {"atk":1212,"bounty":4,"deploy":17,"die":166,"dmg":2055,"engage":11,"fx":181,"heal":58,"layer":2,"skill":71,"spawn":172,"status":436}, + "fx": {"aoe":5,"dodge":17,"dp":47,"garrison":2,"revive":1,"slash":91,"sp":14,"spGain":2,"telegraph":2}, + "snaps": "484fd662 4f4e076d 081948b0 d7bf1df0 c0aa2905 1b27e150 ab6cac50 d1148fdb fccd25dd 3bdf0cd3 bc78cb58 5914e59f e9a5d19b c18806ba 780d90bd f332e4d3 1b1a7814 b06c5778 2ebf5ca8 a00fc7c0 e0236981" }, "standin-05": { "about": "normal band 6 as stand-ins: chess_char_6_17_a→char_608_acpion chess_char_6_13_a→char_615_acspec chess_char_6_19_a→char_615_acspec chess_char_6_12_a→char_612_accast chess_char_6_15_a→char_614_acsupo chess_char_6_18_a→char_612_accast chess_char_6_20_a→char_613_acmedc", @@ -423,50 +411,50 @@ "round": 12, "seed": 2456427706, "waveId": "act1autochess_h05", - "time": 201.33, - "ticks": 6040, + "time": 226.63, + "ticks": 6799, "reason": "cleared", - "killed": 39, + "killed": 42, "total": 179, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 901, + "rngDraws": 981, "errors": {"count":0,"kinds":[]}, - "players": {"p1":{"killed":39,"total":179,"perfect":false,"leaks":140,"leaksUncounted":0,"coins":2,"dmg":1695740,"bossDmg":0,"heal":87735,"deaths":11,"layerGains":{}}}, + "players": {"p1":{"killed":42,"total":179,"perfect":false,"leaks":137,"leaksUncounted":0,"coins":2,"dmg":1733157,"bossDmg":0,"heal":77968,"deaths":13,"layerGains":{}}}, "units": [ - ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_acfend",0,0,167,3,30499,14505,0,48,1], - ["p1",2,"op","chess_char_5_14_b",2,"uniequip_002_acpion",1904,1,196,7,355016,7363,0,33,6], - ["p1",3,"op","chess_char_5_19_b",0,"uniequip_002_sharp2",4154.5,1,138,14,541096,33293,0,150,3], - ["p1",4,"op","chess_char_5_07_b",2,"none",2619.79,1,203,1,36493,29192,0,35,3], - ["p1",5,"op","chess_char_5_13_b",2,"uniequip_002_acguad",0,0,129,4,64143,12851,0,28,2], - ["p1",6,"op","chess_char_5_17_b",2,"uniequip_002_acspec",1448,1,191,6,88815,22335,0,132,0], - ["p1",7,"op","chess_char_5_10_b",2,"none",1131,1,4,1,56803,0,0,122,4], - ["p1",8,"op","chess_char_5_11_b",2,"uniequip_002_acmedc",2262.4,1,5,0,0,0,87735,68,3], - ["p1",9,"op","chess_char_5_12_b",2,"uniequip_002_acsupo",1430,1,11,2,90755,0,0,129,3], - ["p1",10,"op","chess_char_5_15_b",2,"none",1510,1,13,0,87446,0,0,226,4], - ["p1",11,"op","chess_char_5_18_b",2,"uniequip_002_acnipe",2380.5,1,6,1,249269,0,0,155,3], - ["p1",12,"op","chess_char_5_20_b",2,"uniequip_002_acsupo",1430,1,14,0,95405,0,0,125,3], + ["p1",1,"op","chess_char_5_08_b",2,"uniequip_002_acfend",3242.12,1,7,5,122124,8280,0,159,4], + ["p1",2,"op","chess_char_5_14_b",2,"uniequip_002_acpion",1904,1,201,14,520028,10508,0,46,6], + ["p1",3,"op","chess_char_5_19_b",0,"uniequip_002_sharp2",4154.5,1,207,5,264095,31935,0,79,3], + ["p1",4,"op","chess_char_5_07_b",2,"none",3334,1,205,2,42880,20656,0,36,3], + ["p1",5,"op","chess_char_5_13_b",2,"uniequip_002_acguad",3411,1,206,4,80947,12473,0,40,2], + ["p1",6,"op","chess_char_5_17_b",2,"uniequip_002_acspec",1448,1,188,4,90888,27092,0,116,0], + ["p1",7,"op","chess_char_5_10_b",2,"none",1131,1,4,2,64373,0,0,134,4], + ["p1",8,"op","chess_char_5_11_b",2,"uniequip_002_acmedc",2262.4,1,5,0,0,0,77968,77,3], + ["p1",9,"op","chess_char_5_12_b",2,"uniequip_002_acsupo",1430,1,11,3,105459,0,0,135,3], + ["p1",10,"op","chess_char_5_15_b",2,"none",1510,1,13,0,83399,0,0,215,4], + ["p1",11,"op","chess_char_5_18_b",2,"uniequip_002_acnipe",2380.5,1,6,3,266479,0,0,178,3], + ["p1",12,"op","chess_char_5_20_b",2,"uniequip_002_acsupo",1430,1,14,0,92485,0,0,125,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] ], "enemies": { "enemy_1072_dlancer": [1,1,0,1609,37150], - "enemy_1081_sotisd": [1,0,1,0,27122], - "enemy_1092_mdgint": [1,0,1,0,939], - "enemy_1116_liprr": [1,0,1,0,3657], + "enemy_1081_sotisd": [1,0,1,749,28802], + "enemy_1092_mdgint": [1,0,1,0,0], + "enemy_1116_liprr": [1,0,1,0,7850], "enemy_1116_liprr_2": [1,0,1,0,1829], - "enemy_1118_lidbox_2": [1,0,1,0,1880], + "enemy_1118_lidbox_2": [1,0,1,0,809], "enemy_1119_vofsd": [1,0,1,0,889], - "enemy_1121_lifbos": [1,0,1,0,1492], - "enemy_1249_lysdb_2": [60,19,41,38886,898028], - "enemy_1251_lysyta": [63,19,44,11507,481127], - "enemy_1254_lypa_2": [48,0,48,67538,241627] + "enemy_1121_lifbos": [1,0,1,4806,7013], + "enemy_1249_lysdb_2": [60,18,42,37448,866144], + "enemy_1251_lysyta": [63,22,41,7583,520464], + "enemy_1254_lypa_2": [48,1,47,58748,262208] }, - "hooks": [1,203,6040,1581,1581,2484,2674,133,50,190,35,33,0,20704,16926,62,179,140,1,50,0,0,5], - "events": {"atk":1862,"bounty":1,"deploy":21,"die":50,"dmg":2665,"engage":11,"fx":186,"heal":114,"leak":140,"skill":72,"spawn":194,"status":1169}, - "fx": {"aoe":30,"displace":4,"dodge":25,"dp":13,"shieldBreak":59,"slash":42,"sp":2,"spGain":11}, - "snaps": "c4ba1bfb fae78ec3 1fa5eef8 039fd078 af235e6e 054172b9 425c4c8c 6ddd3467 b69784e7 524ba19b 18e4cf1f 8204edda 4751bfcf de0c311c 58e3839d 7854857e 798259ed b5f265cc a4da5617 46c62d39 ff4422be" + "hooks": [1,207,6799,1790,1790,3161,3225,149,55,192,38,43,0,26658,17254,63,179,137,1,55,0,0,6], + "events": {"atk":2022,"bounty":1,"deploy":25,"die":55,"dmg":3200,"engage":11,"fx":302,"heal":133,"leak":137,"skill":88,"spawn":194,"status":1230}, + "fx": {"aoe":120,"displace":8,"dodge":31,"dp":20,"liberate":1,"phase":1,"shieldBreak":60,"slash":48,"sp":1,"spGain":12}, + "snaps": "c4ba1bfb fae78ec3 4853328f 674d8548 bcbe6142 1a53e0eb 214c2462 a608c08f 504eb3ba 4e0e6e68 d4d1daf8 a6dc8003 1ce13419 a363753a 07e954ca 3e70563d 7e686001 0f4877a6 ba4f9efe e6778a6d 6675e221 520b5fe5 4464a0d3" }, "standin-09": { "about": "elite band 7 as stand-ins: chess_char_6_03_b→char_610_acfend chess_char_6_02_b→char_608_acpion chess_char_6_07_b→char_617_sharp2 chess_char_6_10_b→char_617_sharp2 chess_char_6_11_b→char_608_acpion chess_char_6_06_b→char_609_acguad chess_char_5_22_b→char_611_acnipe chess_char_6_01_b→char_611_acnipe chess_char_6_04_b→char_614_acsupo chess_char_6_05_b→char_611_acnipe chess_char_6_08_b→char_612_accast chess_char_6_09_b→char_613_acmedc", @@ -477,31 +465,31 @@ "round": 13, "seed": 2308517178, "waveId": "act1autochess_h06", - "time": 200, - "ticks": 6000, + "time": 198.43, + "ticks": 5953, "reason": "cleared", "killed": 158, "total": 158, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 227, + "rngDraws": 232, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":924362,"bossDmg":0,"heal":29540,"deaths":1,"layerGains":{"sargonShip":20}} + "p1": {"killed":158,"total":158,"perfect":true,"leaks":0,"leaksUncounted":0,"coins":8,"dmg":924222,"bossDmg":0,"heal":29638,"deaths":1,"layerGains":{"sargonShip":20}} }, "units": [ ["p1",1,"op","chess_char_6_03_b",2,"uniequip_002_acfend",4974.95,1,8,0,0,0,0,0,0], ["p1",2,"op","chess_char_6_02_b",2,"uniequip_002_acpion",1904,1,6,0,0,0,0,0,0], ["p1",3,"op","chess_char_6_07_b",0,"uniequip_002_sharp2",2494,1,9,0,0,0,0,0,0], - ["p1",4,"op","chess_char_6_10_b",0,"uniequip_002_sharp2",2494,1,11,29,125600,0,0,176,3], - ["p1",5,"op","chess_char_6_11_b",2,"uniequip_002_acpion",1764,1,13,38,196516,12620,0,60,21], - ["p1",6,"op","chess_char_6_06_b",2,"uniequip_002_acguad",3531,1,14,9,58773,763,0,155,4], + ["p1",4,"op","chess_char_6_10_b",0,"uniequip_002_sharp2",2494,1,11,27,129672,0,0,173,3], + ["p1",5,"op","chess_char_6_11_b",2,"uniequip_002_acpion",1904,1,13,35,186014,11957,0,60,20], + ["p1",6,"op","chess_char_6_06_b",2,"uniequip_002_acguad",3531,1,14,18,61248,763,0,155,4], ["p1",7,"op","chess_char_5_22_b",2,"uniequip_002_acnipe",1587,1,4,0,0,0,0,0,0], - ["p1",8,"op","chess_char_6_01_b",2,"uniequip_002_acnipe",1643,1,5,1,3102,0,0,3,1], - ["p1",9,"op","chess_char_6_04_b",2,"uniequip_002_acsupo",2465,1,141,5,76474,2465,0,92,2], - ["p1",10,"op","chess_char_6_05_b",2,"uniequip_002_acnipe",1643,1,7,27,85889,0,0,89,2], - ["p1",11,"op","chess_char_6_08_b",2,"uniequip_002_accast",1819,1,10,49,378007,0,0,78,2], - ["p1",12,"op","chess_char_6_09_b",2,"uniequip_002_acmedc",1254,1,12,0,0,16506,29540,83,3], + ["p1",8,"op","chess_char_6_01_b",2,"uniequip_002_acnipe",1643,1,5,0,948,0,0,4,1], + ["p1",9,"op","chess_char_6_04_b",2,"uniequip_002_acsupo",2465,1,141,7,73191,2465,0,92,2], + ["p1",10,"op","chess_char_6_05_b",2,"uniequip_002_acnipe",1643,1,7,20,89868,0,0,93,2], + ["p1",11,"op","chess_char_6_08_b",2,"uniequip_002_accast",1819,1,10,51,383282,0,0,78,2], + ["p1",12,"op","chess_char_6_09_b",2,"uniequip_002_acmedc",1394,1,12,0,0,16988,29638,83,3], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null], ["-","~3","device","trap_1105_accrate",null,null,100,1,3,0,0,0,0,0,null] @@ -515,14 +503,14 @@ "enemy_1160_hvyslr_2": [1,1,0,133,13440], "enemy_1161_tidmag": [1,1,0,554,5760], "enemy_1161_tidmag_2": [1,1,0,1758,7680], - "enemy_1249_lysdb_2": [60,60,0,1587,345600], + "enemy_1249_lysdb_2": [60,60,0,2085,345600], "enemy_1251_lysyta": [51,51,0,0,134640], - "enemy_1329_cbshld": [39,39,0,2550,374400] + "enemy_1329_cbshld": [39,39,0,2290,374400] }, - "hooks": [1,174,6000,815,815,1617,1751,167,159,159,38,37,0,30317,2645,60,158,0,1,159,3,1,16], - "events": {"atk":935,"bounty":4,"deploy":13,"die":159,"dmg":1736,"engage":7,"fx":305,"heal":127,"layer":3,"skill":75,"spawn":173,"status":329}, - "fx": {"aoe":2,"burst":1,"dodge":20,"dp":59,"garrison":3,"shieldBreak":60,"slash":151,"sp":9}, - "snaps": "526d4c63 1859af86 456d2e9f 5622e14c bc1f2617 596e1903 6ca4b3e3 315a2d0c 2d3a6d12 027a16b9 53090134 13013c39 3d4042c3 06223fb4 080242fe c8fca403 521b3acf c34580a5 3512496b 19915c56" + "hooks": [1,174,5953,812,812,1599,1718,168,159,159,37,36,0,29335,2593,62,158,0,1,159,3,1,17], + "events": {"atk":917,"bounty":4,"deploy":13,"die":159,"dmg":1707,"engage":7,"fx":298,"heal":127,"layer":3,"skill":73,"spawn":173,"status":324}, + "fx": {"aoe":2,"burst":1,"dodge":19,"dp":55,"garrison":3,"shieldBreak":60,"slash":144,"sp":12,"strike":2}, + "snaps": "526d4c63 f61576c6 e1be6631 53288d14 7de80a4f 26575d3b 14b2dc7b 09bff769 03f7af9b 266de1dd a9bf82a4 d80af3de da82ae39 706186e0 9d862b1f bcccab65 19598dab ba7df686 a486add4 e9e501f2" }, "standin-10": { "about": "elite band 7 as stand-ins: chess_char_6_17_b→char_608_acpion chess_char_6_13_b→char_615_acspec chess_char_6_19_b→char_615_acspec chess_char_6_12_b→char_612_accast chess_char_6_15_b→char_614_acsupo chess_char_6_18_b→char_612_accast chess_char_6_20_b→char_613_acmedc", @@ -533,47 +521,46 @@ "round": 13, "seed": 3949114127, "waveId": "act1autochess_h06", - "time": 211.87, - "ticks": 6356, - "reason": "cleared", + "time": 230, + "ticks": 6900, + "reason": "timeout", "killed": 28, - "total": 132, + "total": 131, "unspawned": 0, "bossHpLeft": null, - "rngDraws": 240, + "rngDraws": 263, "errors": {"count":0,"kinds":[]}, "players": { - "p1": {"killed":28,"total":132,"perfect":false,"leaks":104,"leaksUncounted":0,"coins":6,"dmg":593929,"bossDmg":0,"heal":11529,"deaths":24,"layerGains":{"raidShip":6}} + "p1": {"killed":28,"total":131,"perfect":false,"leaks":103,"leaksUncounted":0,"coins":2,"dmg":538265,"bossDmg":0,"heal":10974,"deaths":25,"layerGains":{"raidShip":6}} }, "units": [ - ["p1",1,"op","chess_char_6_17_b",2,"uniequip_002_acpion",0,0,164,14,259423,14873,0,61,9], - ["p1",2,"op","chess_char_6_13_b",2,"uniequip_002_acspec",1484,1,165,3,35167,11872,0,80,0], - ["p1",3,"op","chess_char_6_19_b",2,"uniequip_002_acspec",0,0,163,5,89851,14840,0,145,0], - ["p1",4,"op","chess_char_6_12_b",2,"uniequip_002_accast",1984.39,1,4,5,80524,562,0,34,2], - ["p1",5,"op","chess_char_6_15_b",2,"uniequip_002_acsupo",0,0,142,0,47114,6494,0,31,3], - ["p1",6,"op","chess_char_6_18_b",2,"uniequip_002_accast",1819,1,8,1,81851,1331,0,47,2], - ["p1",7,"op","chess_char_6_20_b",2,"uniequip_002_acmedc",1464,1,9,0,0,3912,11529,20,1], + ["p1",1,"op","chess_char_6_17_b",2,"uniequip_002_acpion",954.91,1,164,10,211581,13444,0,77,10], + ["p1",2,"op","chess_char_6_13_b",2,"uniequip_002_acspec",0,0,165,5,46991,13356,0,106,0], + ["p1",3,"op","chess_char_6_19_b",2,"uniequip_002_acspec",1484,1,166,4,75038,16324,0,138,0], + ["p1",4,"op","chess_char_6_12_b",2,"uniequip_002_accast",2265.49,1,4,4,78264,281,0,32,2], + ["p1",5,"op","chess_char_6_15_b",2,"uniequip_002_acsupo",0,0,147,2,54506,6494,0,39,3], + ["p1",6,"op","chess_char_6_18_b",2,"uniequip_002_accast",1819,1,8,3,71885,900,0,43,2], + ["p1",7,"op","chess_char_6_20_b",2,"uniequip_002_acmedc",1464,1,9,0,0,4263,10974,19,1], ["-","~1","device","trap_1105_accrate",null,null,100,1,1,0,0,0,0,0,null], ["-","~2","device","trap_1105_accrate",null,null,100,1,2,0,0,0,0,0,null] ], "enemies": { - "enemy_1006_shield_3": [21,1,20,18495,205451], - "enemy_1043_zomsbr": [66,18,48,278,120391], - "enemy_1161_tidmag": [1,1,0,0,9953], - "enemy_1162_magmot": [1,1,0,3790,19907], + "enemy_1006_shield_3": [21,1,20,16907,164634], + "enemy_1043_zomsbr": [66,22,44,908,136175], + "enemy_1162_magmot": [1,0,1,4704,11483], "enemy_1165_duhond": [1,1,0,93,4645], "enemy_1165_duhond_2": [1,0,1,0,0], - "enemy_1166_dusbr": [1,1,0,0,4977], - "enemy_1166_dusbr_2": [1,1,0,0,7299], - "enemy_1168_dumage": [1,0,1,2319,0], - "enemy_1168_dumage_2": [1,1,0,4717,10783], + "enemy_1166_dusbr": [1,0,1,0,0], + "enemy_1166_dusbr_2": [1,0,1,0,0], + "enemy_1168_dumage": [1,1,0,1897,7465], + "enemy_1168_dumage_2": [1,1,0,4932,10783], "enemy_1169_duphlx": [1,0,1,0,1489], - "enemy_1402_tgshd_2": [36,3,33,24192,209035] + "enemy_1402_tgshd_2": [36,2,33,25620,201592] }, - "hooks": [1,165,6356,543,543,877,888,6677,52,159,17,35,0,7792,1001,49,132,104,1,52,1,1,0], - "events": {"atk":550,"bounty":3,"deploy":31,"die":55,"dmg":820,"engage":6,"fx":503,"heal":26,"layer":1,"leak":104,"skill":72,"spawn":141,"status":365}, - "fx": {"aoe":4,"blink":3,"burst":1,"displace":18,"dodge":3,"dp":23,"expose":379,"garrison":1,"garrisonGrant":3,"slash":67,"summon":1}, - "snaps": "fba27448 d609f04f 41abeea0 6d975f20 d5fe39ab 2b67a1fb 211c77d5 5cbb689a bfb41b6c 990aadca 13b25f6c b9f51313 e1f5c350 7eda0f6b 2cd5feef 88f36df5 e2b21992 55bdd8b7 5a6a68d3 10ca3ada 31dfc1a3 367bba43" + "hooks": [1,166,6900,578,578,900,914,7048,53,158,18,38,0,8737,1167,48,131,102,1,53,1,1,0], + "events": {"atk":585,"bounty":1,"deploy":33,"die":56,"dmg":848,"engage":6,"fx":539,"heal":25,"layer":1,"leak":102,"skill":78,"spawn":140,"status":384}, + "fx": {"aoe":4,"blink":3,"burst":1,"displace":18,"dodge":1,"dp":20,"expose":414,"garrison":1,"garrisonGrant":3,"slash":74}, + "snaps": "fba27448 40f8ddeb 904aa1c4 7f5fd3e3 9795959e b8c7a6c7 f5b1092e b4109451 8082d0cc a86cc61b fb1870c6 9cf94d5d 1d3df05d ceb38c64 2d46f54e 5fd7022a d8ef7fcc 55250098 09b8ad07 d6c97808 bbb9cfcc a2163482 34deba04" } } } diff --git a/test/sim/playtest6-skills.test.js b/test/sim/playtest6-skills.test.js index c0060ea9..d42e952c 100644 --- a/test/sim/playtest6-skills.test.js +++ b/test/sim/playtest6-skills.test.js @@ -131,14 +131,11 @@ test('#15 the automatic operations cool down 3 s: 锏 S2 (2 charges, skill range assert.equal(u.skill.maxCharges, 2); h.step(); fill(u); - // S2 deals its damage itself (no spec.attack): each cast takes an attack cycle, so it waits for the running one - // (GitHub #298) — at most one attack interval - const slot = u.s.interval + 0.1; - assert.ok(h.runUntil(() => u.skill.activations === 1, slot)); + assert.ok(h.runUntil(() => u.skill.activations === 1, 1)); const t1 = h.b.time; h.run(AUTO_OP_COOLDOWN - 0.2); assert.equal(u.skill.activations, 1, 'the stored charge waits'); - assert.ok(h.runUntil(() => u.skill.activations === 2, slot)); + assert.ok(h.runUntil(() => u.skill.activations === 2, 1)); assert.ok(h.b.time - t1 >= AUTO_OP_COOLDOWN - 1e-6); done(h); }); From 378adfcac12205b99675710ddd69946f78867ebc Mon Sep 17 00:00:00 2001 From: sganggs Date: Thu, 8 Oct 2026 21:06:45 +0800 Subject: [PATCH 14/14] =?UTF-8?q?feedback7=20R22-GHSIM:=20test/ui/feedback?= =?UTF-8?q?5-result-bonds.test.js's=20header=20no=20longer=20lists=20?= =?UTF-8?q?=E4=BD=99=20among=20the=20strategies=20that=20add=20layers=20to?= =?UTF-8?q?=20the=20noStack=20bonds=20(38d4c3e4,=20the=20owner's=20decisio?= =?UTF-8?q?n=20of=202026-10-08);=20golden:=20unchanged?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/ui/feedback5-result-bonds.test.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/ui/feedback5-result-bonds.test.js b/test/ui/feedback5-result-bonds.test.js index 8a2b1748..e728be34 100644 --- a/test/ui/feedback5-result-bonds.test.js +++ b/test/ui/feedback5-result-bonds.test.js @@ -1,6 +1,7 @@ // Community report of 2026-10-06 「独行这种盟约是不能叠层的(顺便排查下还有没有类似的)」 (item 21). PRTS 卫戍协议:盟约 下半/ // PRTS盟约记录, its header: 「下述盟约中部分盟约不会显示叠加层数,但是叠加层数的特质/策略/装备等效果仍然对其生效」 — the four -// bonds.json `noStack` bonds (调和 协防干员 独行 绝技) do take layers (助力, 余, 华法琳 …), the game only never shows them. The +// bonds.json `noStack` bonds (调和 协防干员 独行 绝技) do take layers (助力, 华法琳 … — not 余's 文火慢炖, the owner's decision +// of 2026-10-08), the game only never shows them. The // bond strip and its popup hide them since 0.1.4 (PR #66, test/ui/feedback1b-bonds.test.js); the result card still printed // them (「独行 24」) and ordered its six bonds by them. resultBonds: no number, no rank for a hidden count. import { test } from 'node:test';