Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
日志最后部分:
79-0
Incoming message: ErrorMessages
Incoming message: Disconnect
...
System.NullReferenceException: Object reference not set to an instance of an object.
at DMD<GameData.Domains.Building.BuildingDomain::StartMakeItem> ...
79-0 表示第 79 号材料?或某一制作项用量 0。
紧接着就出现了 NullReferenceException,说明 StartMakeItem 内部读取这个“用量 0”的材料/配方失败。
整体原因推测
该“批量制作”Mod 修改或替换了原本的制作流程,让同一建筑/界面可一次性多次制作。
当材料实际剩余量或需求用量变成 0(甚至低于 1)时,Mod 并没有阻止进一步点击“可制作”按钮,也没能给游戏正确传递“材料不足”或“无需消耗”的处理结果;
导致调用到游戏“BuildingDomain::StartMakeItem”时,出现数据不一致或未初始化(null)的情况,最终触发空引用报错并断开。
正常情况下,如果某项材料数量不够,或材料用量已经 0,不应该继续调用“StartMake”流程;可现在批量制作的 Mod 没有正确处理这个情况,让游戏原生方法依然收到一个“空”或“无效”的参数(也许是合成配方、材料槽位、剩余数量等结构为 null),因此直接抛出 NullReferenceException。
从这份 Player.log 可以看出,当批量制作 Mod(BatchMake.dll)尝试调用游戏内部的“StartMakeItem” 方法时,最终出现了下列致命报错导致游戏断开:
NullReferenceException: Object reference not set to an instance of an object.
at DMD<GameData.Domains.Building.BuildingDomain::StartMakeItem>(BuildingDomain this, DataContext context, StartMakeArguments startMakeArguments)
也就是说,StartMakeItem 需要的某个对象是 null,却被游戏继续使用,从而抛出空引用异常。这恰好和你描述的“多次批量制造后,材料用量变成 0 但按钮还显示可制作,一旦点击就报错”的现象吻合
还有新版本凝练淬毒没适配,如果先点上几份毒药再收回来就会红,然后整个游戏的标签全部看不了,游戏也不能退,只能alt f4