“SubModule”的版本间的差异
小 (→示例) |
(→示例) |
||
第16行: | 第16行: | ||
=== <big>示例</big> === | === <big>示例</big> === | ||
− | [https://docs.bannerlordmodding.com/_xmldocs/submodule.html#example 示例代码]<br> | + | [https://docs.bannerlordmodding.com/_xmldocs/submodule.html#example 示例代码 源链接]<br> |
+ | <nowiki> | ||
+ | <Module> | ||
+ | <Name value="My Module"/> | ||
+ | <Id value="MyModule"/> | ||
+ | <Version value="v1.0.0"/> | ||
+ | <SingleplayerModule value="true"/> | ||
+ | <MultiplayerModule value="false"/> | ||
+ | <DependedModules> | ||
+ | <DependedModule Id="Native"/> | ||
+ | <DependedModule Id="SandBoxCore"/> | ||
+ | <DependedModule Id="Sandbox"/> | ||
+ | <DependedModule Id="CustomBattle"/> | ||
+ | <DependedModule Id="StoryMode" /> | ||
+ | </DependedModules> | ||
+ | <SubModules> | ||
+ | <!-- 接下来的 SubModule 元素是可选的. 如果没有 DLL 文件关联你可以移除这个部分. --> | ||
+ | <SubModule> | ||
+ | <Name value="MySubModule"/> | ||
+ | <!-- 指向 DLL 文件的路径, 如果模组叫 MyModule 那么就应该是这样子. --> | ||
+ | <DLLName value="ExampleMod.dll"/> | ||
+ | <SubModuleClassType value="ExampleMod.MySubModule"/> | ||
+ | <Tags> | ||
+ | <Tag key="DedicatedServerType" value="none" /> | ||
+ | <Tag key="IsNoRenderModeElement" value="false" /> | ||
+ | </Tags> | ||
+ | </SubModule> | ||
+ | </SubModules> | ||
+ | <Xmls> | ||
+ | <XmlNode> | ||
+ | <XmlName type="1" id="Items" path="customitems"/> | ||
+ | </XmlNode> | ||
+ | <XmlNode> | ||
+ | <XmlName type="1" id="SPCultures" path="customcultures"/> | ||
+ | </XmlNode> | ||
+ | <XmlNode> | ||
+ | <XmlName type="1" id="NPCCharacters" path="customcharacters"/> | ||
+ | </XmlNode> | ||
+ | </Xmls> | ||
+ | </Module> | ||
+ | </nowiki> |
2020年4月20日 (一) 13:13的版本
SubModule (XML)
元素注释
- Name - 你的模组的名字。
- Id - 你的模组的id (不要使用空格)。
- Version - 你的模组的当前版本。
- SinglePlayerModule - 你的模组是否适用单人游戏。
- MultiPlayerModule - 你的模组是否适用多人游戏。
- DependedModules - 你的模组生效所需要依赖的模组。
- SubModules - 构成你的模组的子模块(DLLs)。
- Xmls - 包含到 ModuleData 文件夹中的 XML 文件的路径。
重要
两个相互独立的模组(或同一个模组)的XML文件里如果存在相同的id的话,它们会被合并生效而不是一个被另一个覆盖。然而,倘若在同一个XML文件中存在两个相同的id(两个物品),在启动器执行启动命令时会以模组加载的顺序相互覆盖,就像像启动器中看到的模组顺序一样,了解这一点对于是否覆盖Native内容很重要。
MPClassDivisions 当前不可用。
示例
<Module> <Name value="My Module"/> <Id value="MyModule"/> <Version value="v1.0.0"/> <SingleplayerModule value="true"/> <MultiplayerModule value="false"/> <DependedModules> <DependedModule Id="Native"/> <DependedModule Id="SandBoxCore"/> <DependedModule Id="Sandbox"/> <DependedModule Id="CustomBattle"/> <DependedModule Id="StoryMode" /> </DependedModules> <SubModules> <!-- 接下来的 SubModule 元素是可选的. 如果没有 DLL 文件关联你可以移除这个部分. --> <SubModule> <Name value="MySubModule"/> <!-- 指向 DLL 文件的路径, 如果模组叫 MyModule 那么就应该是这样子. --> <DLLName value="ExampleMod.dll"/> <SubModuleClassType value="ExampleMod.MySubModule"/> <Tags> <Tag key="DedicatedServerType" value="none" /> <Tag key="IsNoRenderModeElement" value="false" /> </Tags> </SubModule> </SubModules> <Xmls> <XmlNode> <XmlName type="1" id="Items" path="customitems"/> </XmlNode> <XmlNode> <XmlName type="1" id="SPCultures" path="customcultures"/> </XmlNode> <XmlNode> <XmlName type="1" id="NPCCharacters" path="customcharacters"/> </XmlNode> </Xmls> </Module>