sganggs
a3e8460bb0
0.2.5-dev: an optional 「官方伤害数字」 setting (default off) shows only the numbers the official game shows per the PRTS red-number rule ( #412 , the owner's decision of 2026-10-12); a small link to the project's GitHub repository on the title page ( #543 ); golden: unchanged
2026-10-12 14:59:20 +08:00
sganggs
37e0fffb34
0.2.5-dev: the 外勤医疗 (Touch) reserve medic takes the initial aggro order of PR #523 and its detail opens in the preparation phase (PR #523 by @YinqiMargatroid, ported; the owner's decision of 2026-10-12); golden: one more scenario moves (named in docs/history/0.2.5.md)
2026-10-12 14:59:19 +08:00
sganggs
10d1fdef5f
0.2.5-dev: connect the history of PR #538 by 星闌 — the reviewed adaptation in dcdaeec9 is kept (tree unchanged)
2026-10-12 14:45:12 +08:00
sganggs
502a2c13ba
0.2.5-dev: connect the history of PR #540 by 星闌 — the reviewed adaptation in dcdaeec9 is kept (tree unchanged)
2026-10-12 14:45:12 +08:00
sganggs
dcdaeec933
0.2.5-dev: merge the round-36 client / tools ports — #540 / #538 loadout sync and import guards, #531 / #530 player-package scripts and links; golden: unchanged
2026-10-12 14:45:12 +08:00
sganggs
e0f3771821
0.2.5-dev: 驭械术师 normal attacks keep the operator's own hit plus one drone hit, the drone multiplier and per-target map reset on redeploy, 洛洛 S2 keeps its lock until a kill or the skill ends (PRs #537 / #536 / #535 by @Xinglan233, ported); hit tiles use the official round-half-to-even with an edge inset (PR #520 by @Cloudnyco, ported); bots softly avoid living teammates' opening factions until they are eliminated (PR #518 by @IceCodeNew, ported with changes); golden: 43 more scenarios move, each named in docs/history/0.2.5.md
2026-10-12 14:45:01 +08:00
sganggs
52b70434d0
0.2.5-dev: a restore-defaults loadout sync is never overwritten by an older in-flight sync (PR #540 by @Xinglan233, ported); importing a loadout with ops is refused before writing when the DIY data is missing (PR #538 by @Xinglan233, ported); the player package's package.json keeps only scripts whose files ship ( #531 ) and its docs link unshipped files to the release tag on GitHub ( #530 ); golden: unchanged
2026-10-12 14:45:01 +08:00
sganggs
7fd0478dc0
0.2.5-dev: merge PR #517 by 星闌 — chore: 根据 PR 标题添加类型标签 ( #239 )
2026-10-12 14:08:09 +08:00
sganggs
6e8103e733
0.2.5-dev: merge PR #519 by Cloudnyco — detmath powi: a zero base keeps Math.pow's exact results ((-
2026-10-12 14:08:09 +08:00
sganggs
8d59ad3ef9
0.2.5-dev: merge PR #534 by Andrew Wang — local-extract: derive the board normal map from both layouts
2026-10-12 14:08:09 +08:00
sganggs
c438323596
0.2.5-dev: merge PR #524 by xcdoge — 敌方血条偏高:头顶高度按"原点以上的高度"ç
2026-10-12 14:08:09 +08:00
sganggs
e2ec2cbf21
0.2.5-dev: merge PR #541 by BowenJXD — fix(windows): 修复 Node 版本检测在 Volta 等环境下
2026-10-12 14:08:09 +08:00
sganggs
7a17f9c9b6
0.2.5-dev: connect the history of PR #511 by RainoutOvO — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
56e7757dd3
0.2.5-dev: connect the history of PR #507 by robll-v1 — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
7247e67f44
0.2.5-dev: connect the history of PR #505 by 星闌 — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
0ce7c64255
0.2.5-dev: connect the history of PR #504 by robll-v1 — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
4ee1e1e9f0
0.2.5-dev: connect the history of PR #503 by 星闌 — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
4bb22ddae9
0.2.5-dev: connect the history of PR #502 by 星闌 — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
e0a3d6d9af
0.2.5-dev: connect the history of PR #499 by Yuri Restia — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
1f5f445acf
0.2.5-dev: connect the history of PR #497 by Robin — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
c1fef54b05
0.2.5-dev: connect the history of PR #494 by Yuri Restia — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
16085d2a10
0.2.5-dev: connect the history of PR #492 by Cloudnyco — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
sganggs
7e960269d0
0.2.5-dev: connect the history of PR #490 by D-Roote — the reviewed adaptation in 221e6b8d is kept (tree unchanged)
2026-10-12 14:07:08 +08:00
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
Siornya
dcf498d9bd
修复三合一奖励抽不到自选干员 #515
2026-10-12 13:59:42 +08:00
BowenJXD
f08763c632
fix(windows): 修复 Node 版本检测在 Volta 等环境下误报版本过旧
...
start-windows.bat 的版本检测命令中包含 >、? 和 : 等 cmd 元字符。
当 node 由 Volta 等版本管理器的 shim 提供时,参数会经过 cmd 重新解析,
引号保护失效,">=22?0:1)" 被当作输出重定向,导致报错
"The filename, directory name, or volume label syntax is incorrect"
并返回非零退出码,脚本因此误判 Node 版本过旧(即使是 v24 LTS)。
改用不含 cmd 元字符的等价表达式:
Math.max(0, Math.sign(22 - parseInt(process.versions.node)))
主版本号 >= 22 时退出码为 0,否则为 1,判断逻辑不变。
2026-10-12 12:28:18 +11:00
Andrew Wang
b92a0bf3c2
local-extract: derive the board normal map from both layouts a client holds — BC5 (R = X) and DXT5nm (A = X, R = 1), read as Unity unpacks them (x = R·A); a client with the older map_autochess bundle got Z = 0 everywhere and a grey 3D board
2026-10-11 19:30:10 -04:00
Andrew
1fe819478e
3D 棋盘按战场显示官方场景(沙地等 11 个战场),场景由本地提取脚本从赛季场景包导出,没有时回退现有金属棋盘 ( #532 )
2026-10-11 19:15:50 -04:00
IceCodeNew
3f18347fff
fix(bot): handle band picks without player context
2026-10-11 15:06:46 +00:00
xcdoge
7b4f512ce9
敌方血条偏高:头顶高度按"原点以上的高度"算(bounds.y + bounds.height),而不是包围盒高度
...
玩家反馈:逐腐兽的血条明显偏高。
原因:单位血条/名字牌的头顶高度用的是 spine setup-pose 包围盒的**高度**(units.js headTilesForUnit 里
`bounds.height × 1/320 × 模型系数 × 0.92`)。这个公式默认包围盒是**脚锚定**的 —— 大多数敌人确实如此
(猎狗pro y=−3.7、大鲍勃 y=−2.6,height 与"脚以上高度"几乎相等)。但有些模型的**原点在身体中间**:
逐腐兽的包围盒是 y=−404.7 / height=722.6,锏是 y=−798 / height=1183 —— 对它们,包围盒高度比可见顶端多出
大半个模型,于是血条被顶到上限 2.2 格(非 Boss)之上,看起来就是"明显偏高"。
改法:定位改用**原点以上的高度**(`Number.isFinite(b.y) ? b.y + b.height : b.height`,仍按 20…900 夹取)。
同时把这段计算从 UnitView 内联代码提成一个纯函数 `headTilesForUnit()`(放 units.js,紧挨 UNIT/EL_BAR 常量),
入参只有 isEnemy / isBoss / spineShown / bounds / modelK / modelKY,便于直接测;UnitView 仍然保留
"没显示 spine 就不看模型"的短路语义。spine.js 的 `height` getter 语义不变(别处也用它,例如替身的纵向拉伸)。
影响面(用真实 bounds 扫过 167 个有模型数据的敌人):
逐腐兽 / 疯狂的逐腐兽 1.85 → 0.81 格(降 1.03)
锏(Boss) 2.59 → 1.11 格(降 1.48)
萨卡兹大剑手 / 组长 1.54 → 1.23 格(降 0.31)
枯朽之种 0.72 → 0.55、萨卡兹百夫长 1.51 → 1.34、妖怪MKII 0.71 → 0.55
其余 103 / 167 个敌人的变化 ≤ 0.02 格(脚锚定模型几乎无感)
测试:
test/render/bar-head.test.js(新增 5 条):用真实的逐腐兽 / 猎狗pro / 大鲍勃 / 锏 包围盒断言新公式、
夹取上限、以及三个回退分支(无 bounds 用 chibi 余量 × 系数、Boss 无模型用 2.2、干员与召唤物用固定余量),
并做源码断言把"y + height"这条规则钉住。
test/render/playtest6-enemies.test.js:两条 prefab 测试的期望值原本写死 `390 × …`(合成夹具的 bounds 是
y=−150 / height=390,即当年就把这个 bug 当成了正确行为),现在改为从**被测 view 自己的 bounds** 推导
(240 而不是 390),夹具本身不动。
test/render 全量 552 项 / 546 通过 / 0 失败;test/ui + test/render 1279 项 / 1265 通过 / 0 失败。
未触碰 server/sim,test/golden 无变动。
2026-10-11 22:49:56 +08:00
Cloudnyco
119a04888a
Hit tiles: positions round half to even (PRTS 作战机制); enemies held just inside the field edge
2026-10-11 21:33:44 +08:00
Cloudnyco
ad7e3e9835
detmath powi: a zero base keeps Math.pow's exact results ((-0)^1 = -0, (-0)^-1 = -Infinity)
2026-10-11 21:09:25 +08:00
星闌
581e2d5695
chore: 根据 PR 标题添加类型标签 ( #239 )
2026-10-11 20:42:36 +08:00
IceCodeNew
e376f25407
fix(bot): respect teammates opening factions
2026-10-11 12:38:34 +00:00
RainoutOvO
10e1461c29
Fix connection recovery action above away overlay
2026-10-11 17:43:50 +08:00
D-Roote
d34fe2e59f
fix: improve Korean localization
2026-10-11 18:39:02 +09:00
星闌
810c8c75e1
test: 覆盖浮游旧弹道跨再部署时的命中顺序
2026-10-11 16:58:31 +08:00
星闌
f567e8045e
fix: 修复洛洛 S2 越界续锁与旧弹倍率干扰;Golden 因独立浮游/本体攻击更新 roster-004、roster-005、bond-victoriaShip-low、bond-victoriaShip-high、coop3-ABYSS-5、coop4-FUNNY-6、coop4-ABYSS-7、coop2-NORMAL-8-serverrun、coop2-NORMAL-1-coverage-standins
2026-10-11 16:54:03 +08:00
robll-v1
289a454fa1
fix: 高延迟下连按「刷新」只发送一次请求(GitHub #501)
2026-10-11 16:43:51 +08:00
星闌
823e3d0af4
fix: 补回驭械术师普通攻击的本体伤害
2026-10-11 16:42:50 +08:00
星闌
7434e9eaf0
fix: 再部署重置浮游倍率;roster-026、solo-HARD-1、solo-ABYSS-1 不再沿用旧缓存
2026-10-11 16:40:10 +08:00
robll-v1
07ac357ed4
fix: 顶栏生命值在结算前保持当前数值,仅以 −N 标记待扣(GitHub #479)
2026-10-11 16:16:38 +08:00
星闌
19c854c1f7
fix: 避免恢复默认被尚未完成的旧调配同步覆盖
2026-10-11 16:11:00 +08:00
星闌
70151d08ed
fix: 防止自选数据加载失败时导入养成覆盖已有设置
2026-10-11 16:07:09 +08:00
Yuri Restia
6573431e72
Add correction layer to i18n that allows for corrections where the official translation is wrong
2026-10-11 14:02:34 +07:00
Yuri Restia
f7be28331c
Briefing: list an alliance's banned operators in a box beside its tooltip ( #484 )
2026-10-11 13:08:19 +07:00
Cloudnyco
40e5794bdf
模拟一致性检查:下载的数据文件名不含空格
2026-10-11 13:46:50 +08:00
Cloudnyco
ce52512559
新增:模拟一致性检查页(/dev/sim-check.html),任意设备的浏览器重放黄金结果的整套战斗,逐帧与 Node 比较
2026-10-11 13:38:57 +08:00
Robin
b612487bd5
洛洛的定制品 and 焰尾's <获得时> sub-pools take the measured weights of 路标月报#2 item 6: 洛洛 draws 8 equipment — 10维式重锤 2战栗 2坚固 2加速 2灼燃 1有限加速器 4护盾无人机 4激光发射器 (was the 4 special hammers uniform, per user playtest #4 — the special four stay exclusive to this pool and 维多利亚's, they are just no longer the whole of it; the four shop-sold entries draw through the shared item stock), 焰尾 draws 野鬃 10 / 灰毫 10 / 远牙 3 (was an even-ish 45/45/10 guess); both draws keep their stock gate (chess free-filter, item canGain). pool.test: the vict/rockr assertion splits — rockr asserts the 8-entry weighted table, 焰尾's pinus gets its own 10/10/3 test; DATA.md pools row updated; golden: roster/bonds/fields/standins/diy byte-identical, 6 of the 20 release matches move with the draws (attribution verified: reverting the two pools restores all 20 byte-for-byte), re-pinned
2026-10-11 13:26:38 +08:00
星闌
1188a9803c
fix: show DIY operators in watched battle bond members
2026-10-11 12:54:01 +08:00