sganggs
8a43624935
feedback5 WE: 联防 is played on its own map, the escaped template level (GitHub #41 , item 3) — act2autochess constData escapedBattleTemplateMapSinglePlayer / MultiPlayer = level_act1autochess_escaped_single / _multi name the level of the 联防 battle, and its map is the field: two road halves (cols 3–9 and 11–17, rows 9–12) joined at col 10, no water, crates or devices (until 0.1.3 the round's stage, opened to both halves). tools/build-data.mjs builds both into data/stages.json after the 11 battle stages (kind 'unite', helpers 1 / 2, weight 0, inactive, no modes, the name 联防阵地(N名玩家) the remake's own label [ASSUMED]; validation ties config.unite.templates to them); regenerated offline, a JSON compare shows only the two added records. unite.js uniteStageId picks the map of the helper count (escaped_single's routes enter at col 10, escaped_multi's at col 18 through (9,10)); match/unitePhase.js fields the 联防 battle on it (the round's stage only with data that lacks it); each helper on its prep tiles, the first of two shifted 8 columns onto the right half as before (the official halves; player_map_lr_offset 8). Client: screens/game.js draws the shown field's own map and restores the board's on leaving it (a 2-line change in a file of the R5 split; render/app.js enterBattle already loads m.field stageId); the dev mock's 联防 follows. The 联防 BGM (PR #110 ) is unchanged. Tests: test/match/feedback5-unite-map.test.js (both combat modes, 1 and 2 helpers, degraded data), test/data.test.js, test/render/tiles.test.js. Docs: DATA §12, META §4, DESIGN §3, PLAYING §5. Golden: fields unite-1 / unite-2 (the battle's stage → the 联防 map) and the 6 co-op match scenarios with a 联防 round (coop2-NORMAL-3, coop2-HARD-4, coop3-ABYSS-5, coop4-FUNNY-6, coop4-ABYSS-7, coop2-NORMAL-8-serverrun); roster / bonds unchanged (tools/golden.mjs leaves the 联防 maps out of its stage list)
2026-10-05 18:17:08 +08:00
sganggs
db1b44bb71
feedback5 WE: the 整备区 rules of PRTS 卫戍协议/帮助 §手牌区 (GitHub #82 , second part) — a full regular hand refuses every purchase and reward pick, also one whose copy would complete a merge at once ("当常规手牌区全满无空位时,玩家将无法执行使手牌溢出的操作" — "例如招募/购入等通常情况下会增加手牌的操作"; BWIKI 盟约 says the same with no exception; the reporter checked it in the official game), and a free regular slot pulls the 临时整备区 in at once ("常规手牌区出现空位时自动移入"): PlayerState._fillHandFromTemp runs in every recompute, the temp row right to left (the order it fills, [ASSUMED]) into the hand's free slots right to left — after a sale, a deployment from the hand, a merge that consumed hand copies, an item equipped / destroyed / used, a summon stack removed with its owner. invariants.js: temp holds pieces only while the hand is full. The client's refusal path follows (gameLogic.shopBlockReason: 整备区已满 on every card — a one-line change in a file the R5 split moves). Bots: a full hand never tries a purchase, an affordable third copy of a held pair sheds the weakest hand single first (never one of this prep), resolveTemp decides temp right to left. Tests: test/match/feedback5-hand.test.js; merge / hardening / playtest6-elite-to-board / economy / prep-bench / uiFixes updated to the rule. Docs: META §1 Hand, DESIGN §6, PLAYING §3, research 00-INDEX / 01 (the old "a merge-completing purchase is allowed" corrected). Golden: 3 match scenarios moved (coop2-NORMAL-3, solo-HARD-9-boosted, coop2-ABYSS-10-boosted — bot seats that reached a full hand: the merge-completing purchase refused or a single shed first, temp pieces moving in by themselves); every battle digest unchanged
2026-10-05 18:17:08 +08:00
sganggs
d9750d8aba
feedback5 R2: docs and comments follow the split — DESIGN §2 and META list server/match/match/ and server/match/player/ (the classes: constructor + method install), research 09 / 11 name the new homes (Match.watch in match/watch.js, the settle in match/settle.js, the facing changes in player/placement.js / items.js), code comments that pointed at moved code say where it lives now (shared constants, client bandDraft / observe / result / hud / teamPanel / underframe / game-mock, test comments); .git-blame-ignore-revs lists the two pure-move commits. DESIGN §17–§23 history citations, the "before" column and the proposal of research 11, tools/build-data.mjs (Match.js still exports BAND_TURN_SECONDS) and public/js/ui/gameLogic.js (in the client stream R5) are left as they are
2026-10-05 17:18:22 +08:00
sganggs
8ab6d021da
feedback5: merge feedback4 — PR #129 , the lobby ERR import
2026-10-05 16:48:02 +08:00
sganggs
f2440d4fd7
feedback4: merge master — PR #129 (watching a teammate shows hand, temp, equipment, strategy, effects)
2026-10-05 16:47:54 +08:00
Luo Xingyu
bce182703b
Watching a teammate shows their hand, 临时整备区, equipment, strategy and effects ( #129 )
...
The prep scout of another player's board carries their 整备区 hand and 临时整备区 as units on the bench rows (like the own prep bench), the equipped items of their operators, their strategy in the drawer and their effects column (the official mode shows a teammate's hand too). The scout signature includes the hand / temp slots, so a moved card refreshes the watcher. Closes #128 . Contributed by @2321Robin.
2026-10-05 16:47:33 +08:00
sganggs
6a7a23765a
feedback5: merge R4 — operator kits one file per chess (kits/ops/*, kits/shared/*, kits/index.js in the old registry order) + kits/README.md with the fidelity checklist; golden unchanged
...
# Conflicts:
# .git-blame-ignore-revs
# test/docs-consistency.test.js
2026-10-05 16:30:29 +08:00
sganggs
95842cef6e
feedback5: merge R3 — server/sim/Battle.js split into server/sim/battle/* (prototype methods in fixed order) and content/enemies.js into content/enemies/* (same KITS order); golden unchanged
...
# Conflicts:
# .git-blame-ignore-revs
2026-10-05 16:23:17 +08:00
sganggs
5024559028
feedback5 R3: docs and comments follow the split — DESIGN §2 and SIM.md list server/sim/battle/ and content/enemies/, SIM.md and research 08 name the new homes (archetypes.js frontGuard / ep / dmgZone / pollution, helpers.js areaAllies / zone / setForm, fly.js kitShell), code comments that pointed at moved code say where it lives now (enemies.js header, battle/blocking.js, battle/queries.js, sim constants / snapshot / units / ai / targeting / devices / bosses, shared constants / protocol, render style / interp); .git-blame-ignore-revs lists the two pure-move commits
2026-10-05 16:20:06 +08:00
sganggs
37b1c0a644
feedback5 R4: paths after the kit split — DESIGN §7 and SIM.md (layout, §7.2 kit contract, kit citations), research 09, code comments (content/generic, tokens, items/battle, shared/loadoutRecord, render fx / demo), test comments, and the kits' own comments that named tierN.js; DESIGN §17–§23 history citations are left as they are
2026-10-05 16:18:58 +08:00
sganggs
5f0830cdc5
feedback5 R1: docs and comments follow the split — DESIGN §2 layout lists server/http/, the README table names the entry and http/, path comments in shared/media.js, public/js/media.js, buildGuard.js, net.js and three tests point at the new modules; .git-blame-ignore-revs lists the pure-move commit
2026-10-05 16:11:30 +08:00
sganggs
8aa41d9c1c
feedback4: real.e2e confirms the leftover-funds prompt on ready; DESIGN's §23.f4 references point to §23.23; the 0.1.3 changelog names the 不屈 source and fixes 手牌
2026-10-05 14:03:32 +08:00
sganggs
351ead3603
feedback3: 0.1.3 design notes, changelog and version
2026-10-04 22:13:05 +08:00
sganggs
c9dd2a6392
feedback3: merge WJ — 高台 only for elite 歌蕾蒂娅 with HOK-Y, live prep watch, silenced 折射, grant toasts, emote timeout glyph
2026-10-04 21:26:46 +08:00
sganggs
1005754bf3
feedback3: merge WH — ground operators are melee-position, 叙拉古 rolls on every normal hit, off bonds show as disabled, prep-end items merge next prep
2026-10-04 21:26:10 +08:00
sganggs
6e59b5e4dd
feedback3 WJ: prep watch of another board updates when it changes
...
A scout stays subscribed to n:<pid> and gets a new prep field when that board moves, including a spectator. A shop change does not push one.
2026-10-04 20:34:32 +08:00
sganggs
5ef4fac137
feedback3 WJ: 高台 only for elite 歌蕾蒂娅 with HOK-Y
...
The trait line is on every hookmaster and is not trusted. Placement is the loadout at place time: golden 歌蕾蒂娅 carrying uniequip_003_glady may use a ranged tile; everyone else stays on the ground.
2026-10-04 20:31:46 +08:00
sganggs
c0cc1d6118
feedback3 WH: mode-off bonds the player has members of show as grey 本局禁用 discs, and hand members count in that header
2026-10-04 20:31:06 +08:00
sganggs
e444bc3c3f
feedback3 WH: 叙拉古 6's true-damage chance rolls on every 普通伤害 hit of a member, not only on normal attacks — 荒芜拉普兰德's S3 drone bites, 德克萨斯 剑雨 and other skill hits now roll; 溅射, 持续 (the S3 per-second hit), 附加 and item procs still do not (community report 「叙拉古盟约真伤概率数值没有正确递增成长」, GitHub #79 )
2026-10-04 20:08:01 +08:00
sganggs
d77148962b
feedback3 WH: 「地面干员」 means a melee-position operator on any tile — 不屈 (both lines), the 战栗维式重锤 proc and 休谟斯 回收利用 no longer read the tile, so a ranged operator on a melee tile gets none of them and 歌蕾蒂娅 on a 高台 gets all (community report 「不屈盟约效果高台干员也错误的吃到了」)
2026-10-04 20:08:01 +08:00
sganggs
ca3d0572ad
feedback3 WF: the initial deployment goes by column — the left column first, top to bottom within a column (PRTS 从上到下>从左到右 read as a scan, the 阿戈尔 devour's order; mirrored boss side from its own left); a merge's elite among several deployed copies follows it (server and client); tests whose target was the latest deployed keep it
2026-10-04 19:50:42 +08:00
sganggs
0e3429aa1f
feedback3 WF: 联防 fights with the bond layers the helpers' own combat reached (the strip's count, capped like the settlement), no longer the round-start layers; the settlement still adds those gains once (PRTS 联防阶段 以其阵地当前的状态, community report #24 )
2026-10-04 19:31:15 +08:00
sganggs
21eb496e02
feedback3 WF: the 阿戈尔 5-tier revives go to the first 3 members by position (the devour / deployment order, fixed at battle start), each on its own first knock-out — no longer to the first 3 knocked out, which the devour's food spent at t = 0 (community report #24 )
2026-10-04 19:25:00 +08:00
sganggs
a57c2a85e2
feedback3: merge W3D — 折桠's skill idle (community report #23 ), the ammo bar's real total ( #35 ), unit sounds at the official chance and volume ( #30 ), shots from the hands to the chest (GitHub #61 ), stuck model loads restarted (GitHub #68 ), the boss leader shown in prep with its hit tiles ( #12 )
2026-10-04 18:10:01 +08:00
sganggs
dcc44712ad
feedback3: merge W3A — 联防 carries HP ratio and SP only (GitHub #82 ); down operators take part in the 联防 devour (players' reports, owner's decision); 不屈 on 撤退 / 替身 switches; SP recovers during stun (洛洛 S2)
2026-10-04 17:57:44 +08:00
sganggs
0015cd84b6
feedback3: room.closed reasons list kicked and empty (W3E review)
2026-10-04 17:57:44 +08:00
sganggs
8707c161b9
feedback3: merge W3E — two spectator seats per co-op room (GitHub-relayed community request #26 ; a remake feature): watch like an eliminated player, never act, no private data
2026-10-04 17:57:09 +08:00
sganggs
207a49103f
feedback3 WD: the boss rounds' prep shows the leader on its spawn tile with its HP bar, and its hit tiles in red beside an operator's range preview (community report #12 )
2026-10-04 17:42:18 +08:00
sganggs
976475efff
feedback3 WE: spectator seats in the browser — 观战 in the lobby, the 观战席 strip in the room (host removes, 入座), watch-only match screen; docs (community report #26 )
2026-10-04 17:39:30 +08:00
sganggs
782f918684
feedback3 W3C: room.kick names the confirmed player; a seat that changed hands while the host confirmed is refused (BAD_TARGET)
2026-10-04 17:38:29 +08:00
sganggs
3315803b79
feedback3 WA: DESIGN §19.3 and PLAYING note that the 联防 阿戈尔 devour still counts the operators that enter down
2026-10-04 17:28:44 +08:00
sganggs
8252be248f
feedback3 WA: 联防 carries the HP ratio and the SP only — a skill running at the end of the own combat enters switched off (no free restart), the SP counts stored charges, board summons keep their SP
2026-10-04 17:16:55 +08:00
sganggs
a308317041
feedback3 WC: the room's host can remove a human before the match (room.kick), the player is told and may join again
2026-10-04 17:15:21 +08:00
sganggs
6bf03d07d5
feedback3 WC: 远见's −1 price has no floor but 0 — 至简 (price 1) costs 0 at 150 layers, a 远见 operator at 1 costs 0 at 80
2026-10-04 17:09:30 +08:00
shanzhaikabi
502f183e43
新增:导出 / 导入干员调配 ( #14 )
2026-10-04 14:20:02 +08:00
sganggs
111e918b9c
feedback2: DESIGN §22.14–§22.16 ( #58 ranged enemies stand per attack, #60 forced exits lie down, #64 loadout stats) and the sentences they supersede (§5.5, §8.2, §21.20, §21.24, §22.1); CHANGELOG 0.1.2 complete
2026-10-04 03:25:42 +08:00
sganggs
af68c31d17
feedback2: merge WL — the 干员调配 screen shows 局内数值: the chosen skill / module's stats, attack range, 特性 and 天赋 (GitHub #64 ); 特性 follows the chosen module on the in-match card too
2026-10-04 03:03:00 +08:00
sganggs
4c78ab94e6
feedback2 WL: 干员调配 shows 局内数值 — the chosen skill / module's stats, 攻击范围, 特性 and 天赋, 精锐 first with a 普通 toggle, drawn by the card's own block (GitHub #64 )
2026-10-04 02:51:21 +08:00
sganggs
6ced029143
feedback2 docs: DESIGN §22 intro and §22.7–§22.13; 余 S2's deviation listed with §21.29's six
...
The §22 intro maps GitHub #25 … #35 / #16 to §22.1–§22.13 and records the owner's decisions of 2026-10-04.
§22.7–§22.12 are the wave-2 subsections verbatim; §22.13 is PR #48 (要塞 cannot hit air units, 莫斯提马's slow shows its icon).
One blank line before every §22 subsection, as in §21.
余 S2 (SKILL_RANGE on its x-1, §22.10) is appended wherever the six-skill deviation is listed: DESIGN §5.6, §20.2, §21.20, §21.29,
DATA §2 item 6, research 00 and 03 (SKILL_RANGE counts: 13 / 26 official, 14 / 28 in the data). DATA §2.1 names 要塞 in canHitFly.
2026-10-04 02:40:55 +08:00
sganggs
a168c99e6a
feedback2: merge WJ — enemy splash, blasts, area skills, zones and auras skip a 隐匿 operator that does not block them; 迷彩 is still hit by splash (GitHub #32 item 6)
...
# Conflicts:
# docs/DESIGN.md
# docs/SIM.md
# server/sim/content/enemies.js
2026-10-04 02:21:15 +08:00
sganggs
79bbd51525
feedback2: WG review — a chain healer's bounces skip 禁疗 / noHeal units (史尔特尔 in 余烬); PLAYING and DESIGN say 隐匿 returns 3 s after a block; 山海众头目's mark comment
2026-10-04 02:19:40 +08:00
sganggs
e0b51e0310
feedback2: merge WG — 史尔特尔's 余烬 brings 禁疗 (GitHub #52 ); enemies re-enter 隐匿 3 s after a block ends, a blocked 深池逐火's ember stays visible ~2 s (GitHub #43 )
...
# Conflicts:
# public/js/render/style.js
# public/js/render/textures.js
2026-10-04 02:18:01 +08:00
sganggs
b0c98fea31
feedback2 WJ: docs — buff auras and 蚀裂's 毒雾 vs 隐匿, locked targets as direct picks, 迷彩 only where PRTS backs it (the rest [ASSUMED]), 异常效果 §无法选择 instead of the 选择器 draft text; PLAYING: all-in-range normal attacks skip 迷彩
2026-10-04 00:41:51 +08:00
sganggs
cfe85c6fee
feedback2 WI: a running 坚固维式重锤 不死 window stops a dollkeeper's switch to its 替身 (fatal priority −99, the lock stays at −100); the switch flag is trait.dollSwitching; the 替身's own max HP is stated as sourced (review of #44 )
2026-10-04 00:26:13 +08:00
sganggs
0ac7dc7dd2
feedback2: merge WI — 归溟幽灵鲨's 替身 is drawn (form + status icon), makes no attack and casts nothing, S2's end switches her (GitHub #44 )
2026-10-04 00:13:31 +08:00
sganggs
6b634fe132
feedback2: merge WD — 活性源石 stays on an enemy for 300 s after the tile (cleared by a 重生); 沼泽 triggers every second (2 layers at 重量 ≥ 3); 深水区 is sourceless true 持续伤害, not 环境伤害 (GitHub #33 item 6)
2026-10-04 00:09:22 +08:00
sganggs
c2e0788fd1
feedback2 WD: DESIGN §22.4 and SIM.md for the review fixes (重生 clears the effect, relocated and long-standing operators, boss / hidden fields, 纠缠藤蔓, the 沼泽 and 深水区 findings)
2026-10-04 00:07:43 +08:00
sganggs
7ab852ef57
feedback2: merge WE — setup downloads the battle emotes and 玩法说明 pages from the public mirror, accurate deployment docs (GitHub #42 ); English title Stronghold Protocol: Alliance; doctor comment after PR #27
2026-10-03 23:51:56 +08:00
sganggs
fadeed2dc6
feedback2 WE: review wording — ASSETS.md and DESIGN §13 say the HUD sprites are not downloaded (most are on the mirror), §22.5 says the mirror copies match the local sizes and that #38 stays open; setup's no-client row only points to DEPLOY §6 (doctor keeps the copy hint); stale test messages
2026-10-03 23:51:11 +08:00
sganggs
f3cb6f414e
feedback2: merge WC — 阿戈尔's devour cancels a knocked-out target's pending marks (revived members stay standing); 乌尔比安 S3 stays on his tile while he blocks (GitHub #33 items 1-2)
2026-10-03 23:45:19 +08:00