边缘世界 RimWorld

边缘世界 RimWorld

防御工事 - 工业
然提携夜灯 2024 年 7 月 22 日 上午 11:19
Bug Report - Exception loading list from XML: System.NullReferenceException: Object reference not set to an instance of an object.
连着有几个报错的,看报错好像是这个mod的同一个xml文件的问题
Exception loading list from XML: System.NullReferenceException: Object reference not set to an instance of an object
[Ref 82F8EDDA]
at Verse.DirectXmlCrossRefLoader+WantedRefForList`1[T].AddWantedListEntry (System.String newTargetDefName, System.String mayRequireMod, System.String mayRequireAnyMod) [0x000b2] in <f0ac5eb9b52e4cc396c70fc9a4ee15e5>:0
at Verse.DirectXmlCrossRefLoader.RegisterListWantsCrossRef[T] (System.Collections.Generic.List`1[T] wanterList, System.String targetDefName, System.Object debugWanterInfo, System.String mayRequireMod, System.String mayRequireAnyMod) [0x00043] in <f0ac5eb9b52e4cc396c70fc9a4ee15e5>:0
at XmlExtensions.CustomXmlLoader.ListFromXml[T] (System.Xml.XmlNode listRootNode, System.Xml.XmlNode fullRoot, System.String nameOfDef) [0x000ac] in <658cfe511108420e84a1aee91a591e04>:0
XML:
<linkableFacilities><li>ToolCabinet</li><li MayRequireAnyOf="Aoba.Fortress.Industrial.Citadel,Aoba.Fortress.Industrial.Citadel_steam">FT_transformer</li><li>ToolCabinetShelf</li></linkableFacilities>
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

[Def Error] FT_TableLathe:Fortifications - Industrial\1.5\Defs\FT_Production.xml
最后由 然提携夜灯 编辑于; 2024 年 7 月 22 日 上午 11:24
< >
正在显示第 1 - 3 条,共 3 条留言
然提携夜灯 2024 年 7 月 22 日 上午 11:36 
貌似附属mod里带有类似下面这段的都会报错。我mod列表有点多,目前还没查到和什么mod冲突了。如果查到了我会在下面回复
<linkableFacilities><li>ToolCabinet</li><li MayRequireAnyOf="Aoba.Fortress.Industrial.Citadel,Aoba.Fortress.Industrial.Citadel_steam">FT_transformer</li><li>ToolCabinetShelf</li></linkableFacilities>
然提携夜灯 2024 年 7 月 22 日 下午 3:03 
问题找到了,
主要问题是:列表结构的问题,Adeptus Mechanicus mod加了一个补丁到这个列表的尾部,但是似乎带“MayRequireAnyOf” 这个属性的对象只能出现在这个文件中的列表的尾部,头部和中间不行,所以导致如果给这个xml做patch插入到尾部,那么就会报错。
我想到一个解决办法,只要把 MayRequireAnyOf 的项目单独拿出来,写到带MayRequireAnyOf 的patch 里面里面就行了。
最后由 然提携夜灯 编辑于; 2024 年 7 月 22 日 下午 3:52
然提携夜灯 2024 年 7 月 30 日 下午 5:08 
最新的版本没有修复这个问题,将FT_production中的 MayRequireAnyOf 改成 MayRequire 并删除另一个包的id 就不会报错了。
最后由 然提携夜灯 编辑于; 2024 年 7 月 30 日 下午 5:16
< >
正在显示第 1 - 3 条,共 3 条留言
每页显示数: 1530 50