0.2.5: version 0.2.5 — package.json / package-lock.json / APP_VERSION (DEV_BUILD turns false), README release form and package sizes (the full bundle now carries the battlefield scenes), CHANGELOG 0.2.5 — 2026-10-12 in the usual sections with credits, DESIGN versions line, §30 header
This commit is contained in:
1 parent
658f0fc392
commit
88d4b2544b
9 files changed
+40
-45
No files matched your search
+25
-21
@@ -1,18 +1,23 @@
|
||||
## 0.2.5-dev — 未发布
|
||||
## 0.2.5 — 2026-10-12
|
||||
|
||||
### 新功能
|
||||
- 3D 棋盘按战场显示官方场景:提取了官方场景时,11 个战场显示各自的沙地、叙拉古街区或工业风场景,没有场景时仍用金属地块,装置、出入口和地形叠加照常显示(#532、PR #533,感谢 @andrew05060414)。完整包附带提取好的场景;精简包和源码可以用 `node tools/setup.mjs --scenes` 在本机下载并提取,提取依赖缺失时继续用金属地块。仓库本身不存放官方文件。
|
||||
- 设置新增「官方伤害数字」(默认关闭):打开后只按 PRTS「伤害红字(暴击)」显示红色整数,以及本该出红字却被闪避的 MISS;关闭时仍显示每一次命中(#412,感谢 @ZizhaoNi、@andrew05060414)。
|
||||
- 标题画面页脚新增「项目仓库」链接,在新标签页打开本项目仓库(#543)。
|
||||
|
||||
### 规则(按官方)
|
||||
- 补齐司霆惊蛰二技能、斩业星熊三技能对空及予愿安洁莉娜三技能周身范围的自动开技判定。
|
||||
- 首领配对改为每局随机,准备期至开战固定,隐藏首领沿用同局分组;客户端棋盘和队友框同步实际配对。
|
||||
- 修复联防阿戈尔继承残血后再次结算开场吞噬、误触发复活的问题,保留准确生命比例和技力。
|
||||
- Touch 外勤医疗按本局团队权益保留,持有者淘汰或退出后不再使下一场医疗消失(维护者已确认保留,原作寿命规则仍待实测确证)。
|
||||
- 修复固定特质赠品被共享库存阻断:仍计入库存,达到上限也会继续发放;补齐洛洛、焰尾的实测子池。
|
||||
- 已展示的干员商店牌和奖励牌不再因随后库存耗尽而领取失败;道具购买与奖励保留库存检查。
|
||||
- 修复克莱门莎三技能被友方侵蚀爆条触发、号角不攻击脚下不可阻挡敌人、自制投石机溅射半径,以及忍冬首次追凶附伤。
|
||||
- 谢拉格不融冰、催泪瓦斯改为造成伤害时判定,包含阿斯卡纶的持续伤害。
|
||||
- 自在重生后的无敌期不再被普攻或需要可选目标的自动技能锁定。
|
||||
- 固定赠品不再被共享库存阻断(卡涅利安、蜜蜡、缪尔赛思、耶拉、诗怀雅〈获得时〉的赠品,以及变形者集群发放的同一件装备):仍计入库存,达到上限也会继续发放(#488、#491、#495,思路来自 PR #496,感谢 @2321Robin);洛洛、焰尾〈获得时〉的子池按路标月报#2 的实测权重抽取(PR #497,感谢 @2321Robin)。
|
||||
- 已展示的干员商店牌和奖励牌不再因随后库存耗尽而领取失败;道具购买与奖励保留库存检查(#498,也感谢 @YinqiMargatroid 的 PR #529)。
|
||||
- 修复克莱门莎三技能被友方侵蚀爆条触发、号角不攻击脚下不可阻挡敌人、自制投石机溅射半径;忍冬第一次造成伤害时也打出追凶的附加法伤(PR #502,感谢 @Xinglan233)。
|
||||
- 谢拉格不融冰、催泪瓦斯改为造成伤害时判定,包含阿斯卡纶的持续伤害(#489,也感谢 @Siornya 的 PR #526)。
|
||||
- 自在重生后的无敌期不再被普攻或需要可选目标的自动技能锁定(#510)。
|
||||
- 外勤医疗的预备地图角色在开战时保持比普通初始干员更早的索敌顺序(预备干员-医疗与 Touch 都是;[ASSUMED],维护者 2026-10-12 决定按作者描述实现);准备阶段可以点开该角色的详情和攻击范围(PR #523,感谢 @YinqiMargatroid)。
|
||||
- 萨卡兹枯朽战士和组长在已经沉默时被击倒,不留下污染秽蚀。维护者 2026-10-12 的实机回忆是沉默能阻止这团雾,这与 PRTS / 游戏内文字「不可沉默」相反;同一死亡能力只有这两名敌人,其他枯朽敌人的沉默规则不变(#470)。0.2.0 起行为已是如此,这次记下的理由改为上述回忆。
|
||||
- 调度中心 4 级的五阶晋升奖励可以出现五阶自选,5 级的六阶晋升奖励可以出现六阶自选;普通商店仍在 5 / 6 级才刷出;不保证出现;禁用和库存照旧(#515,维护者 2026-10-12 决定)。
|
||||
- 调度中心 4 级的五阶晋升奖励可以出现五阶自选,5 级的六阶晋升奖励可以出现六阶自选;普通商店仍在 5 / 6 级才刷出;不保证出现;禁用和库存照旧(#515,感谢 @SpiritedAwayCN;同样的修复见 PR #544,感谢 @Siornya)。
|
||||
- 驭械术师未释放的浮游改为本体攻击再加一份附加伤害(初始相当于攻击力 20%,同一目标每次 +15,上限 110%);技能放出的浮游仍造成技能伤害(PR #537,感谢 @Xinglan233)。
|
||||
- 只改普攻的技能保留干员自己的那一击。耶拉二技能(基础与隐藏)放出浮游时仍打出 100% 的普通攻击,寒冷对自身和浮游各判一次;荒芜拉普兰德一技能开启后仍是本体一击加两份未释放浮游。只由浮游出手的技能不另加这一击。
|
||||
- 干员再部署时浮游倍率回到初始值,并清掉按目标记住的倍率;自由移动仍保留。已经飞出的浮游按命中时的倍率结算(PR #536,感谢 @Xinglan233)。
|
||||
@@ -20,24 +25,23 @@
|
||||
- 受击格按官方四舍六入五成双取整,被挡在场地边缘的敌人留在边缘那一格(PR #520,感谢 @Cloudnyco)。
|
||||
|
||||
### 界面
|
||||
- 干员调配同步在等待游戏数据时,恢复默认或之后的修改会使仍在准备的旧请求作废,避免旧技能写回服务器(PR #540,感谢 @Xinglan233)。
|
||||
- 导入带潜能/练度的调配文件时,若缺少自选编队所需的游戏数据,整份导入会被拒绝,不再清掉已保存的练度(PR #538,感谢 @Xinglan233)。
|
||||
- 补齐回合开始、机变、休整期和战斗中的盟约叠层提示音;同类最多播放一路,新触发替换旧声音,重连和结算回填不补播。
|
||||
- 支持只修改自选潜能/练度时导出调配,补齐观战自选干员盟约名单;刷新请求在途时防止重复发送。
|
||||
- 生命值在结算前保留当前数值并标待扣;盟约提示补本局禁用干员名单。
|
||||
- 修正韩语界面和维多利亚英文按装备逐件加成的表述。
|
||||
- 修复干员一次攻击后模型继续循环、多挥一次的问题,保留迟到消息的现有前摇同步方式。
|
||||
- 修复 AI 托管遮罩挡住“在此页面继续”按钮。
|
||||
- 设置增加「官方伤害数字」(默认关闭)。打开后只按 PRTS「伤害红字(暴击)」显示红色整数;关闭时仍显示每一次命中(#412)。
|
||||
- 标题画面页脚增加「项目仓库」,在新标签页打开本项目仓库(#543)。
|
||||
- 3D 棋盘在提取了官方场景时按战场显示沙地等 11 个场景,没有场景时仍用金属地块(PR #533,感谢 @andrew05060414)。完整包带上提取出的场景;精简包和源码可以在本机下载并提取,提取依赖缺失时继续用金属地块。
|
||||
- 补齐回合开始、机变、休整期和战斗中的盟约叠层提示音;同类最多播放一路,新触发替换旧声音,重连和结算回填不补播(#482)。
|
||||
- 生命值在结算前保留当前数值,旁边标出待扣的 −N(#479、PR #504,感谢 @robll-v1);刷新请求返回前不会重复发送(#501、PR #507,感谢 @robll-v1)。
|
||||
- 盟约提示框旁列出本局被禁用的成员(#484、PR #494,感谢 @YuriRestia);维多利亚的英文效果改为按装备逐件加成的表述(PR #499,感谢 @YuriRestia);韩语界面修正(PR #490,感谢 @D-Roote)。
|
||||
- 只修改自选潜能 / 练度时也能导出调配(PR #503);观战时的盟约成员名单带上自选干员(PR #505);干员调配同步在等待游戏数据时,恢复默认或之后的修改会使仍在准备的旧请求作废,避免旧技能写回服务器(PR #540);导入带潜能 / 练度的调配文件时,若缺少自选编队所需的游戏数据,整份导入会被拒绝,不再清掉已保存的练度(PR #538)。感谢 @Xinglan233。
|
||||
- 修复干员一次攻击后模型继续循环、多挥一次的问题,保留迟到消息的现有前摇同步方式(#506)。
|
||||
- 敌方血条的头顶高度改按原点以上的高度计算,原点在身体中部的敌人不再把血条顶到上限(PR #524,感谢 @xcdoge)。
|
||||
- 修复 AI 托管遮罩挡住「在此页面继续」按钮(PR #511,感谢 @RainoutOvO)。
|
||||
|
||||
### 人机
|
||||
- AI 选开局策略和构筑重心时,会软性让开仍在场队友已经选择的阵营;队友淘汰后取消。不锁库存,也不阻止立刻合成(PR #518 / #514,感谢 @IceCodeNew)。
|
||||
- AI 选开局策略和构筑重心时,会软性让开仍在场队友已经选择的阵营;队友淘汰后取消。不锁库存,也不阻止立刻合成(#514、PR #518,感谢 @IceCodeNew)。
|
||||
|
||||
### 工具与开发
|
||||
- 玩家包里的 package.json 只保留指向包内文件的脚本;`npm test` 不再在没有测试的情况下显示通过。打包进去的说明里,指向未随包发布的文件的链接改为该版本标签的 GitHub 地址(#531、#530)。
|
||||
- 增加开发用模拟一致性检查页。
|
||||
- 玩家包里的 package.json 只保留指向包内文件的脚本;`npm test` 不再在没有测试的情况下显示通过。打包进去的说明里,指向未随包发布的文件的链接改为该版本标签的 GitHub 地址(#531、#530,感谢 @modusensus)。
|
||||
- 本地提取按 Unity 的方式解法线贴图,BC5 和 DXT5nm 两种存法都能得到正确结果,修复 3D 金属棋盘发灰;2026-10 客户端更新之前提取过素材的,需要重新提取一次 map/autochess(PR #534,感谢 @andrew05060414)。
|
||||
- Windows 启动脚本的 Node 版本检测在 Volta 等版本管理器下不再误报版本过旧(#539、PR #541,感谢 @BowenJXD)。
|
||||
- 增加开发用模拟一致性检查页 `/dev/sim-check.html`(PR #492);powi 对 ±0 的结果与 Math.pow 一致(PR #519)。感谢 @Cloudnyco。
|
||||
- PR 标题以 fix / feat / docs 开头时自动加上类型标签(PR #517,感谢 @Xinglan233)。
|
||||
|
||||
## 0.2.4 — 2026-10-11
|
||||
|
||||
|
||||
@@ -1,15 +1,11 @@
|
||||
# 卫戍协议:盟约 · Stronghold Protocol: Alliance
|
||||
|
||||
> **开发版(dev 分支):不稳定,请勿用于公开服务器**。当前为 0.2.5-dev,尚未发布;稳定版请使用 Releases 中的 0.2.4。
|
||||
|
||||
《明日方舟》季节性自走棋塔防玩法「卫戍协议:盟约」的**非官方同人复刻**:浏览器即开即玩,单人或 1–4 人联机合作。
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
> 当前为 **0.2.5 开发版**,尚未发布;稳定版仍为 0.2.4。
|
||||
|
||||
## 声明
|
||||
|
||||
> [!IMPORTANT]
|
||||
@@ -41,7 +37,7 @@ English summary: [below](#english).
|
||||
|
||||
- **独立模拟**(单人)与**同盟模拟**(1–4 人**合作**,没有 PvP;空位可以加 AI 队友)。
|
||||
- 服务器是一个 Node.js 程序,**战斗在各玩家的浏览器里模拟**(和官方一样),服务器只管经济与回合,一台低功耗小主机就能开服。
|
||||
- 当前开发版 0.2.5-dev(未发布):首领每局随机配对、已展示的干员牌库存耗尽后仍可领取、固定赠品不再被库存阻断、盟约叠层提示音等社区修复;最新发布版 0.2.4,见 [CHANGELOG.md](CHANGELOG.md)。仍有少数规则按推断实现,与官方不一致的地方欢迎在 Issue 里反馈。
|
||||
- 当前版本 0.2.5:3D 棋盘按战场显示官方场景,新增「官方伤害数字」选项,首领每局随机配对,固定赠品和已展示的干员牌不再被库存阻断,并修复了 0.2.4 发布后玩家和 GitHub 上反馈的问题,详见 [CHANGELOG.md](CHANGELOG.md)。仍有少数规则按推断实现,与官方不一致的地方欢迎在 Issue 里反馈。
|
||||
|
||||
## 功能一览
|
||||
|
||||
@@ -68,8 +64,8 @@ English summary: [below](#english).
|
||||
|
||||
[Releases](../../releases/latest) 里有两种整合包,代码和运行依赖完全相同,二选一;已经装好 0.2.x 的,升级时只下载更新包即可:
|
||||
|
||||
- **完整包** `Stronghold-Protocol-v<版本>.zip`(约 505 MB,解压后约 710 MB):附带全部美术 / 音频(含中文、日文两套干员语音和官方 3D 棋盘贴图),解压就能玩,不需要再下载任何东西。**推荐。**
|
||||
- **精简包** `Stronghold-Protocol-v<版本>-lite.zip`(约 22 MB):不带素材,第一次启动时自动从公开镜像下载美术、Spine 模型、音频、字体、表情和「玩法说明」教程图(约 550 MB,可中断,再次启动会续传);官方 3D 棋盘等本地客户端素材不在其中(见下面的「本地客户端素材」)。适合下载大文件不方便的情况。
|
||||
- **完整包** `Stronghold-Protocol-v<版本>.zip`(约 570 MB,解压后约 780 MB):附带全部美术 / 音频(含中文、日文两套干员语音、官方 3D 棋盘贴图和各战场的官方场景),解压就能玩,不需要再下载任何东西。**推荐。**
|
||||
- **精简包** `Stronghold-Protocol-v<版本>-lite.zip`(约 22 MB):不带素材,第一次启动时自动从公开镜像下载美术、Spine 模型、音频、字体、表情和「玩法说明」教程图(约 550 MB,可中断,再次启动会续传);官方 3D 棋盘等本地客户端素材不在其中(见下面的「本地客户端素材」;各战场的官方场景可以用 `node tools/setup.mjs --scenes` 在本机下载并提取)。适合下载大文件不方便的情况。
|
||||
- **更新包** `Stronghold-Protocol-v<版本>-update.zip`(0.2.1 起提供,大小看改动多少,通常只有几 MB):只含比之前的 0.2.x 版本改动过的文件,用来把已经装好的 0.2.x(完整包或精简包装的都行)升级到新版本,不用重新下载整个包。用法:先停止服务器(关掉窗口;装了开机自启的运行 `scripts\install-service-windows.ps1 -Stop`),把 zip 里 `Stronghold-Protocol` 文件夹的全部内容合并到安装文件夹、覆盖同名文件(Windows 资源管理器里复制粘贴即可;macOS 不要用访达拖放,它会整个替换文件夹,请用 `unzip -o`,见 [docs/DEPLOY.md](docs/DEPLOY.md) 第 1.5 节),再照常启动。启动时会先核对全部程序文件、删除新版本不再用的旧文件,然后正常运行;如果这个文件夹不是更新包对应的版本(例如 0.1.x,或者程序文件被改过),会提示下载完整包,服务器不启动。全新安装请用完整包或精简包。
|
||||
|
||||
两种包都只含运行和部署需要的文件(服务器、客户端、数据、启动脚本、setup / doctor / 素材下载工具、许可证与说明、[docs/PLAYING.md](docs/PLAYING.md) 和 [docs/DEPLOY.md](docs/DEPLOY.md));测试、开发工具和设计文档只在源码仓库里。
|
||||
@@ -254,7 +250,7 @@ node tools/perfbench.mjs --cpu 1,4,6 --profile # 真实战斗的帧
|
||||
|
||||
An **unofficial, non-commercial fan remake** of Arknights' seasonal auto-chess tower-defense mode *Stronghold Protocol: Alliance*, played in the browser: solo, or 1–4 player co-op (AI teammates can fill seats). Combat is simulated in each player's browser, so a low-power PC can host.
|
||||
|
||||
- **Run:** download the full bundle `Stronghold-Protocol-v<version>.zip` (~505 MB, all the art inside, the Chinese and Japanese operator voices included) from [Releases](../../releases/latest) — or the lite one, `…-lite.zip` (~22 MB), which downloads the art (~550 MB) on its first start; from 0.2.1 on, `…-update.zip` holds only the files changed since the earlier 0.2.x releases: stop the server, extract it over an existing 0.2.x folder and start again (the first start deletes the files the new version dropped and verifies the install) — install Node.js 22 or 24, then double-click `scripts\start-windows.bat` (Windows) or run `./scripts/start.sh` (macOS / Linux) and open <http://localhost:3000>. From source: `npm install && npm run setup && npm start` (setup downloads ~550 MB of art from public mirrors, the emotes and the how-to-play pages included; the official 3D board, some official HUD icons, two enemy models and 39 summon models are extracted from a local Arknights client — without one the game uses the 2D board and look-alike stand-ins (the summons show their avatars), and a server can copy `public/assets/local/` and `data/local-assets.json` from the full bundle of the same version).
|
||||
- **Run:** download the full bundle `Stronghold-Protocol-v<version>.zip` (~570 MB, all the art inside, the Chinese and Japanese operator voices and the official battlefield scenes included) from [Releases](../../releases/latest) — or the lite one, `…-lite.zip` (~22 MB), which downloads the art (~550 MB) on its first start; from 0.2.1 on, `…-update.zip` holds only the files changed since the earlier 0.2.x releases: stop the server, extract it over an existing 0.2.x folder and start again (the first start deletes the files the new version dropped and verifies the install) — install Node.js 22 or 24, then double-click `scripts\start-windows.bat` (Windows) or run `./scripts/start.sh` (macOS / Linux) and open <http://localhost:3000>. From source: `npm install && npm run setup && npm start` (setup downloads ~550 MB of art from public mirrors, the emotes and the how-to-play pages included; the official 3D board, some official HUD icons, two enemy models and 39 summon models are extracted from a local Arknights client — without one the game uses the 2D board and look-alike stand-ins (the summons show their avatars), and a server can copy `public/assets/local/` and `data/local-assets.json` from the full bundle of the same version).
|
||||
- **Languages:** Chinese (the default), English, 日本語, 한국어 and 繁體中文 — switch on the title screen or in Settings. Game texts come from the official clients; the Japanese, Korean and Traditional Chinese interface strings are machine translations (corrections welcome: [docs/I18N.md](docs/I18N.md)).
|
||||
- **Play with friends:** create a co-op room and share the 4-letter key or the `?room=KEY` link. On a LAN, use the address printed at start; otherwise use a virtual-LAN tool, a tunnel or a VPS — see [docs/DEPLOY.md](docs/DEPLOY.md).
|
||||
- **Disclaimer:** not affiliated with or endorsed by Hypergryph or Yostar. All Arknights names, art, audio, text and data are © their respective owners and are **not** covered by this project's GPL licence. For study and personal non-commercial use only — no selling, paid distribution, paid servers or monetisation of any kind. Content will be removed on request of the rights holders. Provided "as is", without warranty.
|
||||
|
||||
+1
-1
@@ -739,7 +739,7 @@ field), 助战 borrows (`borrowCount` 20), and a player's potential / 练度 per
|
||||
`room.loadout`; the forms are built at full potential and carry the lower ranks, §2.3; 练度 = effects.json
|
||||
`aceffect_char_1…4`).
|
||||
|
||||
### Acquisition subsets corrected in 0.2.5-dev (§30.2)
|
||||
### Acquisition subsets corrected in 0.2.5 (§30.2)
|
||||
|
||||
`tools/build-data.mjs` owns the measured Rockrock/Flametail subset weights from
|
||||
[路标月报#2](https://www.bilibili.com/video/BV1eLXXBqEgF/). Rockrock: ordinary hammer 10; tremble, undying, haste,
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@
|
||||
```
|
||||
装完**关闭并重新打开**终端,`node -v` 应显示 v22 或更高(winget 的 LTS 目前是 v24.x,同样可用)。没有 winget 时从 <https://nodejs.org/zh-cn/download> 和 <https://git-scm.com/download/win> 下载安装。
|
||||
2. 下载,三选一。建议放在一个固定、短、**不在 OneDrive 同步范围内**的目录,例如 `C:\Stronghold-Protocol`:
|
||||
- **完整包(推荐)**:在仓库的 [Releases](https://github.com/sganggs/Stronghold-Protocol/releases) 页面下载最新版本的 `Stronghold-Protocol-v<版本>.zip`(约 505 MB,解压后约 710 MB;已含运行依赖、前端库和全部素材,包括中文、日文两套干员语音和官方 3D 棋盘等本地客户端素材),解压后把里面的 `Stronghold-Protocol` 文件夹放到上述位置。不需要 Git,首次启动也不用再下载素材。素材版权归上海鹰角网络 / Yostar,仅限非商业使用,见 [NOTICE.md](../NOTICE.md)。
|
||||
- **完整包(推荐)**:在仓库的 [Releases](https://github.com/sganggs/Stronghold-Protocol/releases) 页面下载最新版本的 `Stronghold-Protocol-v<版本>.zip`(约 570 MB,解压后约 780 MB;已含运行依赖、前端库和全部素材,包括中文、日文两套干员语音和官方 3D 棋盘、各战场官方场景等本地客户端素材),解压后把里面的 `Stronghold-Protocol` 文件夹放到上述位置。不需要 Git,首次启动也不用再下载素材。素材版权归上海鹰角网络 / Yostar,仅限非商业使用,见 [NOTICE.md](../NOTICE.md)。
|
||||
- **精简包**:同一页面的 `Stronghold-Protocol-v<版本>-lite.zip`(约 22 MB)。代码、运行依赖和前端库与完整包相同,但不带素材:美术、Spine 模型、音频(含两套干员语音)、字体、表情和「玩法说明」教程图在首次启动时由 setup 从公开镜像下载(约 550 MB,显示进度,可中断续传;镜像设置见下面的「国内镜像下载」)。官方 3D 棋盘等本地客户端素材需要用本机客户端提取,或从同一版本的完整包复制(第 6 节)。适合下载大文件不方便、或想先下一个小包的情况;放置方式同完整包。
|
||||
- **源码**:
|
||||
```powershell
|
||||
|
||||
+2
-5
@@ -4,10 +4,7 @@ This is the **single source of truth** for every implementer. Research lives in
|
||||
|
||||
Language: player-facing text is **Simplified Chinese** by default, with an English switch since 0.2.0 (§25.2, docs/I18N.md: UI strings through `t('中文')`, game texts from the official Chinese data or the official EN client's). Code, comments and identifiers are English.
|
||||
|
||||
Current development state: **0.2.5-dev**, §30, the state described by this document. Its fixed gifts, already displayed operator offers, combat corrections
|
||||
and client/tool changes supersede the corresponding 0.2.4 rules below. Official battlefield scenes (DESIGN §15, DESIGN §30.21) are optional 0.2.5 local art: the full bundle includes them when extracted, and a missing scene keeps the metal board. It is not yet released.
|
||||
|
||||
Versions: the first public release was **0.1.0** (2026-10-02, the state of §0–§20.15); the releases after it add the player feedback and GitHub reports — 0.1.1 §21, 0.1.2 §22, 0.1.3 §23, 0.1.4 §24 — and **0.2.0** (2026-10-07; `CHANGELOG.md`) the maintainability refactor, two languages, 补位, 自选编队 and their fidelity work — §25 — **0.2.1** (2026-10-07) the 联防 battlefield restored, full potential and the GitHub fixes after it — §26 — and **0.2.2** (2026-10-09) per-operator 潜能 / 练度, Japanese voices, the statistics page, 失衡, whole-frame attack timing and the GitHub fixes after 0.2.1 — §27. **0.2.3** (2026-10-10; `package.json`, `shared/constants.js APP_VERSION`) 克莱门莎 and new modules, community fixes, text size, per-operator voices, installation, the opening reroll and local match recovery — §28. **0.2.4** (2026-10-11) the official shared card pool and item stock, Raid revival and #475, and the community fixes after 0.2.3 — §29. The labels v1 / v2 / v2.1–v2.5.2 in §0, §14–§20 and in the BALANCE / SIM comparisons name the design generations and the private playtest builds that came before it; they are kept as history.
|
||||
Versions: the first public release was **0.1.0** (2026-10-02, the state of §0–§20.15); the releases after it add the player feedback and GitHub reports — 0.1.1 §21, 0.1.2 §22, 0.1.3 §23, 0.1.4 §24 — and **0.2.0** (2026-10-07; `CHANGELOG.md`) the maintainability refactor, two languages, 补位, 自选编队 and their fidelity work — §25 — **0.2.1** (2026-10-07) the 联防 battlefield restored, full potential and the GitHub fixes after it — §26 — and **0.2.2** (2026-10-09) per-operator 潜能 / 练度, Japanese voices, the statistics page, 失衡, whole-frame attack timing and the GitHub fixes after 0.2.1 — §27. **0.2.3** (2026-10-10; `package.json`, `shared/constants.js APP_VERSION`) 克莱门莎 and new modules, community fixes, text size, per-operator voices, installation, the opening reroll and local match recovery — §28. **0.2.4** (2026-10-11) the official shared card pool and item stock, Raid revival and #475, and the community fixes after 0.2.3 — §29. **0.2.5** (2026-10-12) fixed gifts and already displayed operator offers under the shared stock, random boss pairing, the official battlefield scenes on the 3D board (optional local art: the full bundle includes them when extracted, a missing scene keeps the metal board; §15, §30.21), the official damage-number option, the 驭械术师 / hit-tile / bot ports and the community fixes after 0.2.4 — §30, the state described by this document; its rules supersede the corresponding 0.2.4 ones. The labels v1 / v2 / v2.1–v2.5.2 in §0, §14–§20 and in the BALANCE / SIM comparisons name the design generations and the private playtest builds that came before it; they are kept as history.
|
||||
|
||||
---
|
||||
|
||||
@@ -39,4 +36,4 @@ normative lines it rewrote).
|
||||
| §27 | [history/0.2.2.md](history/0.2.2.md) | 0.2.2 — after the 0.2.1 release (2026-10-09) |
|
||||
| §28 | [history/0.2.3.md](history/0.2.3.md) | 0.2.3 — after the 0.2.2 release (2026-10-10) |
|
||||
| §29 | [history/0.2.4.md](history/0.2.4.md) | 0.2.4 — after the 0.2.3 release (2026-10-11) |
|
||||
| §30 | [history/0.2.5.md](history/0.2.5.md) | 0.2.5-dev — after the 0.2.4 release |
|
||||
| §30 | [history/0.2.5.md](history/0.2.5.md) | 0.2.5 — after the 0.2.4 release (2026-10-12) |
|
||||
@@ -1,11 +1,9 @@
|
||||
# DESIGN §30 — 0.2.5-dev
|
||||
# DESIGN §30 — 0.2.5
|
||||
|
||||
Part of [DESIGN.md](../DESIGN.md). Community reports after 0.2.4.
|
||||
Part of [DESIGN.md](../DESIGN.md). This chapter records 0.2.5, released on 2026-10-12.
|
||||
|
||||
## 30. Community follow-up
|
||||
|
||||
Unreleased. Sources and decisions below describe the candidate behavior, not a published release.
|
||||
|
||||
### 30.1 Fixed gifts and already displayed operator offers
|
||||
|
||||
Reports #488/#491/#495, PR #496 by @2321Robin, and the owner's Muelsyse/Yela report: the shared equipment
|
||||
|
||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "stronghold-protocol-alliance",
|
||||
"version": "0.2.5-dev",
|
||||
"version": "0.2.5",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "stronghold-protocol-alliance",
|
||||
"version": "0.2.5-dev",
|
||||
"version": "0.2.5",
|
||||
"hasInstallScript": true,
|
||||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "stronghold-protocol-alliance",
|
||||
"version": "0.2.5-dev",
|
||||
"version": "0.2.5",
|
||||
"private": true,
|
||||
"description": "明日方舟「卫戍协议:盟约」非官方同人联机网页复刻(1–4 人合作,Node.js 服务器 + 浏览器客户端)",
|
||||
"license": "GPL-3.0-or-later",
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@ import { N_ } from './i18n.js';
|
||||
export const PROTOCOL_VERSION = 1;
|
||||
/** Release version shown to players (title screen, server banner, /healthz). Kept equal to package.json "version"
|
||||
* (test/version.test.js); PROTOCOL_VERSION above is the separate wire-format number. */
|
||||
export const APP_VERSION = '0.2.5-dev';
|
||||
export const APP_VERSION = '0.2.5';
|
||||
/** A development build (the public `dev` branch): the title screen, the boot banner and the README say so, and
|
||||
* tools/package.mjs refuses to build a release zip from it without --allow-dev. */
|
||||
export const DEV_BUILD = /-dev$/.test(APP_VERSION);
|
||||
|
||||
Reference in new issue
Block a user