English
- Added an experimental Apple Silicon macOS arm64/Metal integration path, including source-build and packaging workflows. Local Windows and Mac runtime builds compile and link, and a limited new-game/first-battle test passed; long play, broader scenes, image quality, performance validation and package publication remain pending.
- Future Windows ZIPs now write SHA-256 string values for every payload in
manifest.files, so legacy v0.7.0–v0.7.3 updaters can consume the new manifest shape. The current updater still consumes paths only; this does not restore runtime hash validation. - Added a Force RB Party Switch button next to Save Anywhere in the F1 debug menu (#74). A save made with Save Anywhere during a split-party section loses RB character switching after loading, because the event script keeps that permission in memory only. The button turns it back on: with the reporter's save in Astral Square, the Change Character prompt returned and RB switched between the two groups in both directions. It only has an effect in areas whose script offers party switching. Save Anywhere now also stays off while the party is split, so the System menu's Save follows the game's own rule there and new saves can no longer lose switching.
- Fixed the sky flickering with TAA and FSR in the disc 4 Legacy of the Eastern Tribe area (#102). The sky's depth pass was jittered but its colour pass was not, so on some jitter phases the whole sky failed the depth test and showed a dark fallback. The colour pass now gets the same jitter. Its draw also no longer disables object motion vectors for the whole frame in this area, a likely cause of the reported smearing on the rest of the image. With the reporter's save on D3D12 at 3840x2160, the dark sky appeared in 41 of 134 screenshots with TAA and 38 of 102 with FSR 3.1 Quality before the fix, and in none of 98 and 90 after it. Reporter confirmation is pending.
- Runtime logs can now locate this kind of flicker without an F1 capture. While TAA, FSR or DLSS jitter is on, the log names each unmapped shader pair that draws the scene camera into the main scene depth and either writes depth or redraws geometry whose depth pass was jittered, together with the constants a regression test needs. The log also records every map the game loads, so the line before a report shows where it happened. Each report is about 2 KB and at most 32 are written per run.
tools/capture_analysis/suspect_log.pyturns these lines into a summary and a test fixture. With the #102 fix removed, the reporter's save reported exactly the #102 sky pair in Legacy of the Eastern Tribe, and its constants matched the earlier F1 capture. - Hardened the runtime against malformed or unexpected game requests found in a code review (details). File queries check the buffer size before writing, file reads report seek and read errors instead of returning stale data, oversized memory allocations fail instead of wrapping around, and the GPU command processor rejects recursive, over-deep or truncated command lists. Textures the game changes outside the regions checked every frame are now re-read within 16 frames. Loading the Uhra save and rendering it at 3840x2160 behaved as on main, and the frame rate without a cap stayed level with main (about 141 vs 137 FPS averaged over eight alternating runs).
- On Linux, the Flatpak update notice now explains how to download the new
.flatpakbundle and install it, in all five interface languages. Theflatpak updatecommand it showed before does not work for the standalone bundles. Installations that keep settings under~/.configalso check that file, instead ofsettings.iniin the current directory, to decide whether to run first-time setup.
简体中文
- 加入 Apple Silicon macOS arm64/Metal 实验性整合路径,并提供源码构建和打包流程。Windows 和 Mac 本地运行时已完成编译链接,有限的新游戏和首战测试已通过;长时间游玩、更广场景、画质、性能验证和安装包发布仍待完成。
- 后续 Windows ZIP 会在
manifest.files中为每个 payload 写入 SHA-256 字符串,使 v0.7.0–v0.7.3 的旧版 updater 能读取新的清单格式。当前 updater 仍只使用路径;这不会恢复运行时 hash 校验。 - F1 调试菜单在随时存档旁新增“强制开启 RB 换人”按钮(#74)。分队探索期间用随时存档保存后,读档会失去 RB 换人,因为事件脚本只在内存里保留这项权限。该按钮会重新打开它:用报告者在 Astral Square 的存档测试,"Change Character" 提示恢复,按 RB 能在两组之间来回切换。它只在脚本提供换人的区域生效。随时存档在分队期间也不再生效,System 菜单的 Save 按原作规则处理,新存档不会再丢失换人。
- 修复第四张光盘“东方部族的遗产”区域开启 TAA 或 FSR 时天空闪烁的问题(#102)。天空的深度预通道加了 jitter,颜色通道却没有加,部分 jitter 相位下整片天空无法通过深度测试,只剩暗色底色。现在颜色通道使用相同的 jitter。该 draw 也不再让这一区域整帧的物体运动向量失效,这很可能是报告中其余画面拖影的原因。用报告者存档在 D3D12、3840x2160 下测试:修复前 TAA 的 134 张截图中有 41 张天空变暗,FSR 3.1 Quality 的 102 张中有 38 张;修复后分别为 98 张和 90 张中 0 张。报告者复测待完成。
- 运行日志现在无需 F1 capture 也能定位这类闪烁。开启 TAA、FSR 或 DLSS 的 jitter 时,如果某个未映射的 shader 对用场景相机画到主场景深度上,并且写深度或重画了深度通道已加 jitter 的几何,日志会记下这个 shader 对,以及回归测试所需的常量。日志还会记录游戏加载的每张地图,报告的上一行就能看出发生在哪里。每条报告约 2 KB,每次运行最多 32 条。
tools/capture_analysis/suspect_log.py可把这些行转换成汇总和测试 fixture。去掉 #102 修复后用报告者存档测试,日志只报出了“东方部族的遗产”里 #102 的天空 shader 对,常量与之前的 F1 capture 一致。 - 根据一次代码审查,加固运行时对异常或意外游戏请求的处理(详情):查询文件信息时先检查缓冲区大小再写入;读文件遇到定位或读取错误时如实返回错误,不再返回旧位置的数据;过大的内存分配请求直接失败,不再回绕;GPU 命令处理器拒绝递归、嵌套过深或被截断的命令列表。游戏在每帧抽样区域之外修改的纹理,现在最多 16 帧内会重新读取。在 3840x2160 下读取 Uhra 存档并渲染,表现与 main 一致;不限帧时帧率与 main 持平(八次交替运行平均约 141 对 137 FPS)。
- Linux 上的 Flatpak 更新提示现在用全部五种界面语言说明如何下载新的
.flatpak安装包并安装。之前提示的flatpak update命令对独立安装包无效。设置保存在~/.config下的安装,现在也根据这个文件(而不是当前目录的settings.ini)判断是否运行首次设置。