ProjectGenesis
ProjectGenesis copied to clipboard
Bug 报告:与 CommonAPI 和 UXASIST 共同使用时,打开设置菜单导致崩溃
Bug 报告:与 CommonAPI 和 UXASIST 共同使用时,打开设置菜单导致崩溃
Bug 描述
当 ProjectGenesis、CommonAPI 和 UXASIST 这三个模组同时加载时,尝试在游戏主菜单或游戏中打开“设置”(Options) 窗口会导致游戏立即崩溃。
如果禁用 UXASIST,则 ProjectGenesis 和 CommonAPI 可以正常一同运行,设置菜单也能正常打开。
如何复现
- 安装
ProjectGenesis(版本 3.1.4) - 安装
CommonAPI(版本 1.6.7.0) - 安装
UXASIST(版本 1.4.4) - 启动游戏。
- 在主菜单点击“设置”。
- 游戏崩溃 (出现
System.NullReferenceException错误)。
受影响的模组
- ProjectGenesis:
[GenesisBook.InstallationCheck3.1.4]/[GenesisBook3.1.4] - CommonAPI:
[DSP Common API1.6.7.0]/[Common API Nebula Compatibility1.6.7.0] - UXASIST: 1.4.4
游戏版本
0.10.33.27026
错误日志 (Error Log)
以下是游戏崩溃时生成的错误报告。日志明确指出 ProjectGenesis 和 CommonAPI 都在修补 (Patch) UIOptionWindow._OnOpen 方法。UXASIST 的加入似乎是触发这个冲突的最终因素。
Error report: Game version 0.10.33.27026 with 26 mods used. possible candidates: [GenesisBook.InstallationCheck3.1.4][GenesisBook3.1.4][DSP Common API1.6.7.0][Common API Nebula Compatibility1.6.7.0] System.NullReferenceException: Object reference not set to an instance of an object at UIOptionWindow.CollectResolutions () [0x00020] ;IL_0020 at (wrapper dynamic-method) UIOptionWindow.DMD[UIOptionWindow::_OnOpen](https://www.google.com/search?q=UIOptionWindow::_OnOpen)(UIOptionWindow); ( IL_0000) G at ManualBehaviour._Open () [0x00031] ;IL_0031 [== Mods to UIOptionWindow ==]: [CommonAPI][ProjectGenesis] [== Mods on stack trace ==]: [ProjectGenesis][CommonAPI] void ProjectGenesis.Patches.UIOptionWindowPatches::UIOptionWindow_OnOpen_Postfix(); UIOptionNWindow._OnOpen(Postfix) var CommonAPI.Patches.Chainloader_Patch::PatchOverrideKeysLength(var instructions, var generator); UIOptionWindow._OnOpen(Transpiler)
UXASIST的太阳帆修改与创世的太阳帆修改冲突,为已知问题。
近期没有为其专门写兼容代码的计划。