sganggs
221e6b8dd2
0.2.5-dev: community round 30 and follow-ups
...
- Stock: fixed trait gifts (缪尔赛思 / 变形者集群 变形同构体, 耶拉 不融冰, 蜜蜡 / 卡涅利安 迅捷作战粮, 诗怀雅 盟约之币) still occupy stock but are granted past the cap; an operator card already shown in the shop or a reward can be taken after the pool runs out and overdraws (GitHub #498 , the owner's decision); item buys and item rewards keep the stock check. 洛洛 / 焰尾 sub-pools use the measured weights (PR #497 by @2321Robin; the occupancy idea of PR #496 by @2321Robin re-implemented differently).
- Boss pairs are drawn at random once per match and fixed to battle start; the Hidden Core reuses them; a leaver does not split a full pair (the owner's decision).
- 阿戈尔 in 联防 no longer re-applies the opening devour HP loss or a false revive; Touch's team medic stays for the match after its holder leaves (owner-approved, official lifetime unverified).
- Auto-skill ranges: 司霆惊蛰 S2, 斩业星熊 S3 against air, 予愿安洁莉娜 S3; 自在's post-rebirth invulnerability is also untargetable (#510 ); Horn / Clementia / catapult / 忍冬 first hit (PR #502 by @Xinglan233); 不融冰 / tear gas trigger on real damage.
- Bond layer-up sound in round start / draft / prep / battle (#482 ): one channel, a new cue replaces the old, no extra cooldown; a prep update that adds layers and activates a bond plays one cue.
- Client: multi-swing fix (#506 ), refresh single-flight (PR #507 by @robll-v1), LP tower keeps the settled value with a −N tick (PR #504 by @robll-v1), export with only 潜能 / 练度 changes (PR #503 by @Xinglan233), spectator rosters list DIY members (PR #505 by @Xinglan233), banned members beside bond tooltips (PR #494 by @YuriRestia), recovery action above the away overlay (PR #511 by @RainoutOvO), the /dev/sim-check.html consistency page (PR #492 by @Cloudnyco), Korean (PR #490 by @D-Roote) and English Victoria wording (PR #499 by @YuriRestia).
- golden: 45 of 287 scenarios move against 0.2.4 (roster 17, bonds 3, fields 6, matches 17, standins 2), each attributed in docs/history/0.2.5.md §30.9 / §30.16.
2026-10-12 14:07:08 +08:00
..
2026-10-08 19:57:26 +08:00
2026-09-29 16:21:31 +08:00
2026-10-09 22:55:24 +08:00
2026-10-10 00:45:41 +08:00
2026-10-12 14:07:08 +08:00
2026-10-12 14:07:08 +08:00
2026-10-07 00:05:21 +08:00
2026-10-05 17:18:22 +08:00
2026-10-09 18:58:36 +08:00
2026-10-04 14:19:53 +08:00
2026-10-11 01:58:52 +08:00
2026-10-11 01:58:52 +08:00
2026-10-11 01:58:52 +08:00
2026-10-11 01:58:52 +08:00
2026-10-03 16:33:54 +08:00
2026-10-09 17:11:03 +08:00
2026-10-08 18:41:36 +08:00
2026-10-11 01:58:52 +08:00
2026-10-05 14:20:12 +08:00
2026-10-04 20:47:49 +08:00
2026-10-08 21:20:27 +08:00
2026-09-29 16:21:31 +08:00
2026-10-03 15:18:42 +08:00
2026-10-03 15:56:50 +08:00
2026-10-03 15:56:50 +08:00
2026-10-03 02:38:42 +08:00
2026-10-07 02:38:16 +08:00
2026-10-03 02:01:34 +08:00
2026-10-03 07:42:20 +08:00
2026-10-03 07:42:20 +08:00
2026-10-03 09:10:39 +08:00
2026-10-03 09:10:39 +08:00
2026-10-05 22:34:39 +08:00
2026-10-04 02:51:21 +08:00
2026-10-04 17:23:42 +08:00
2026-10-04 17:12:24 +08:00
2026-10-12 14:07:08 +08:00
2026-10-08 21:20:27 +08:00
feedback5 R19B: 干员调配 says plainly when its game data did not load — useData counts a /data file that never arrived (404, blocked, bad JSON: 'missing') as settled, so the tab drew an empty roster, the loadout import blamed the file (「这份数据在当前版本没有可用的调配」) and the 干员持有 / 自选编队 imports stored an empty list over the saved one; now missingGameData(tab) (chess.json, plus backups.json for 自选编队) shows DataMissing in place of the roster (which files, saved settings unaffected, reload, then the ad blocker and the network) and importRefusal(kind, ready) refuses every import before anything is parsed or applied, with the same words; three UI strings with English; GitHub #173 ; golden: unchanged (client only)
2026-10-07 11:13:25 +08:00
2026-10-07 01:33:21 +08:00
2026-10-08 21:06:45 +08:00
2026-10-06 15:48:32 +08:00
2026-10-07 17:43:37 +08:00
2026-10-08 19:22:08 +08:00
2026-10-08 19:22:08 +08:00
2026-10-11 01:58:52 +08:00
2026-10-12 14:07:08 +08:00
2026-10-07 01:56:19 +08:00
2026-10-08 18:41:58 +08:00
2026-10-08 21:27:33 +08:00
2026-10-08 21:27:33 +08:00
2026-10-03 16:14:43 +08:00
2026-10-08 18:41:58 +08:00
2026-10-06 22:00:26 +08:00
2026-10-07 18:03:53 +08:00
2026-10-08 23:44:02 +08:00
2026-10-12 14:07:08 +08:00
2026-10-08 21:06:30 +08:00
2026-10-08 22:26:00 +08:00
2026-10-11 01:58:52 +08:00
2026-10-08 23:44:02 +08:00
2026-10-08 21:01:09 +08:00
2026-10-05 16:11:30 +08:00
2026-10-12 14:07:08 +08:00
2026-10-12 14:07:08 +08:00
2026-10-12 14:07:08 +08:00
2026-10-09 17:11:03 +08:00
2026-09-29 16:21:31 +08:00
2026-10-03 02:52:38 +08:00
2026-10-02 17:58:35 +08:00
2026-10-10 00:45:41 +08:00
2026-10-08 19:22:08 +08:00
2026-10-12 14:07:08 +08:00
2026-10-08 20:45:54 +08:00
2026-10-02 17:58:35 +08:00
2026-10-03 16:14:43 +08:00
2026-10-08 21:27:33 +08:00
Playtest #6 fixes: summons placed by hand, boss pool stall, bounties, 联防 leak counter, distinct offers, 机变 card text, phone buy tap, skill triggers, blocking, push force, 孤立, enemies, element bar
2026-10-01 19:08:23 +08:00
2026-10-03 04:43:44 +08:00
2026-10-02 04:19:28 +08:00
2026-10-08 20:35:26 +08:00
Playtest #6 fixes: summons placed by hand, boss pool stall, bounties, 联防 leak counter, distinct offers, 机变 card text, phone buy tap, skill triggers, blocking, push force, 孤立, enemies, element bar
2026-10-01 19:08:23 +08:00
2026-10-02 17:58:35 +08:00
Playtest #6 fixes: summons placed by hand, boss pool stall, bounties, 联防 leak counter, distinct offers, 机变 card text, phone buy tap, skill triggers, blocking, push force, 孤立, enemies, element bar
2026-10-01 19:08:23 +08:00
feedback5 W5S: i18n phase 2, ui — HUD, shop bar, detail card, bond strip and popup, 机变 overlay, enemy drawer, team panel, under-frame, guide, emotes, match chrome, connection banner, components, the loadout / roster models, the store, net and observe texts through t() / tParts() (whole sentences where a number or a name sat inside), msgid tables marked N_() and translated where shown, the shop's refusal reasons compared through t(); tools/i18n.mjs reads aliased imports (t as tr); English for the 59 new msgids; Chinese output unchanged (zh render proof; five rewrites checked by hand, listed in the notes)
2026-10-06 18:09:50 +08:00
2026-10-05 17:22:20 +08:00
2026-10-08 21:01:09 +08:00
2026-10-05 22:34:31 +08:00
2026-10-08 20:00:57 +08:00
2026-10-10 02:36:12 +08:00
2026-10-12 14:07:08 +08:00
2026-10-08 19:13:11 +08:00
2026-10-08 19:13:11 +08:00
2026-10-05 14:28:47 +08:00
2026-10-04 20:38:26 +08:00
2026-10-12 14:07:08 +08:00
2026-10-12 14:07:08 +08:00
2026-10-07 11:21:24 +08:00
2026-10-05 14:37:23 +08:00
2026-10-12 14:07:08 +08:00
2026-10-11 01:58:52 +08:00
feedback7 UIBACK: upgrading the 调度中心 opens the new shop slot EMPTY — the next refresh or round start fills it; 0.2.0's fill-at-once ( 464a823, item 19) reverted (GitHub #332 and PR #333 by @2321Robin, official recording BV1AXwuzdEys 1:39 — authored by them: the economy.js change, the rewritten level-slots test and the docs hunks applied as reviewed, without the PR's UPGRADE_FILLS_NEW_SLOTS flag and LOCAL RULING comment: the empty slot is the rule): the shop bar draws a null operator slot as a bare dashed frame (EmptyCard, inert scard--sold) instead of the SOLD OUT 「已招募」 frame, one new UI string in the four packs; META.md §3 and §7 and PLAYING.md say so; the dev mock opens the slot empty and survives null slots; test/ui/shop-empty-slot.e2e.test.js; golden: only matches moves, all 18 (the bots' shop RNG stream) — end results changed in solo-FUNNY-1 defeat→victory, solo-NORMAL-1 and solo-HARD-1 victory→defeat, solo-HARD-2 and solo-ABYSS-1 defeat→eliminated, coop2-NORMAL-14-standins defeat→victory (2 distinct stand-ins fielded: golden-standins.test.js asks ≥ 2); roster, bonds, fields, standins, diy unchanged
2026-10-08 19:38:48 +08:00
2026-10-09 22:55:24 +08:00
2026-10-05 16:47:33 +08:00
2026-10-08 19:19:09 +08:00
2026-10-04 17:39:30 +08:00
2026-10-06 04:31:38 +08:00
feedback5 WN: 补位 display follows the official game (the owner's recall of 2026-10-06) — a chess the player does not own is shown as its stand-in wherever the player's copy appears: shop and reward cards (the stand-in's portrait, name, class and backup skill; the chess's bonds, tier and price; a small 「替补」 mark), the hand and 临时整备区 pieces (the stand-in's model, a 「替补」 tag; the board already was), the detail card (the stand-in's portrait, name, skill, talents and module with the chess's bonds and 特质, 「银灰的替补」 under the name [ASSUMED]), bond popups (own and a teammate's by UnitInfo standInFor through ownerBoard / ownerOps), the result lineup (m.result standInFor), prep scouting of the bench, the equip-replace dialog, the elite and gift tickers; rules unchanged (bonds, price, tier, merges, pools and 特质 stay the chess's); new strings through t() with English; tests updated (standin-ui 15, standin-ownership 7, watch-bonds wiring) and the e2e now ends on the result screen (fastServer SP_FINISH_AFTER); golden unchanged
2026-10-06 02:40:38 +08:00
2026-10-11 01:58:52 +08:00
2026-10-08 20:36:41 +08:00
feedback5 W5S: i18n phase 2, ui — HUD, shop bar, detail card, bond strip and popup, 机变 overlay, enemy drawer, team panel, under-frame, guide, emotes, match chrome, connection banner, components, the loadout / roster models, the store, net and observe texts through t() / tParts() (whole sentences where a number or a name sat inside), msgid tables marked N_() and translated where shown, the shop's refusal reasons compared through t(); tools/i18n.mjs reads aliased imports (t as tr); English for the 59 new msgids; Chinese output unchanged (zh render proof; five rewrites checked by hand, listed in the notes)
2026-10-06 18:09:50 +08:00
2026-10-10 00:45:41 +08:00
2026-10-06 14:08:18 +08:00
2026-10-06 14:08:18 +08:00
2026-10-09 22:55:24 +08:00
2026-10-09 22:55:24 +08:00
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
2026-10-05 14:18:44 +08:00
2026-09-29 16:21:31 +08:00
2026-10-09 22:55:24 +08:00
2026-10-09 00:52:08 +08:00
2026-10-08 21:11:25 +08:00