高级玩家
- 贡献度
- 41
- 金元
- 2486
- 积分
- 413
- 精华
- 0
- 注册时间
- 2015-5-2
|
<List>
以下是本人学习MOD的一些心得,希望能帮到一些喜欢自己制作MOD的朋友
本人制作的MOD网址为:https://bbs.3dmgame.com/thread-6084944-1-1.html
MOD中的说明应该都挺详细的.有需要的自行打开文件查看.
MOD制作简介
1.在RimWorld目录下的Mods目录里建立个新文件夹,起个好名字
2.目录内各建立需要的目录,一般如下
About [必要]MOD的设置和说明
Assemblies 程序集
Defs 定义
Languages 语言
Patches 补丁
Sounds 声音
Textures 图形
3.建个目录,名为About,里面建立个文件About.xml[必要]
4.编辑About.xml文件内容,可用文本文件打开编辑,建议Notepad++
<?xml version="1.0" encoding="utf-8"?>
<ModMetaData>
<name>我的MOD名字</name>
<author>作者名</author>
<!-- 支持的版本 -->
<supportedVersions>
<li>1.0</li>
<li>1.1</li>
<li>1.2</li>
</supportedVersions>
<!-- 封包ID -->
<packageId>作者名.MOD名</packageId>
<!-- 发布MOD的网址 可选-->
<url>https://bbs.3dmgame.com/thread-6084944-1-1.html</url>
<description>这里是MOD的说明</description>
<!-- 下面li里面的就是封包ID,你的MOD只能在拥有该封包ID的MOD后面加载,也就是在MOD列表中需要在这些MOD之下. -->
<loadAfter>
<li>Ludeon.RimWorld</li>
<li>Ludeon.RimWorld.Royalty</li>
<li>brrainz.harmony</li>
<li>UnlimitedHugs.HugsLib</li>
<li>jecrell.jecstools</li>
<li>erdelf.HumanoidAlienRaces</li>
</loadAfter>
</ModMetaData>
5.在About目录里面放置一张自己的果照,重命名为preview.png,这会让你知名度提升,能显著的提升MOD下载量
现在,MOD的基本工作完成,可以在游戏里的MOD列表中体现出来,虽说没啥卵用,除了看看自己的果照.
接下来,我们先来做些内容.先来个最简单的...
</List>
<List>
最简单的内容是什么,当然是汉化了......
...
好吧,我写了一段,发现汉化对于你们还是太复杂了,还是做些别的吧.
我们来做新的特性.
在MOD目录里面建立Defs目录,里面建立 随便啥名字.xml
内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<Defs>
<TraitDef><!-- 定义特性 --> <!--[射击专精]-->
<defName>作者名_Trait_序号01</defName> <!-- 在TraitDef里面defName必须是唯一的 -->
<commonality>0.1</commonality> <!--出现概率-->
<degreeDatas>
<li>
<label><color=#FF6600>[射击专精]</color></label> <!-- 显示的名字 -->
<description>射击专精</description> <!-- 描述 -->
<statOffsets> <!-- 状态偏移 -->
<!--射击-->
<MoveSpeed>+1</MoveSpeed> <!--移动速度-->
<AimingDelayFactor>-1</AimingDelayFactor> <!--瞄准延迟系数-->
<ShootingAccuracyPawn>+20</ShootingAccuracyPawn> <!--射击精确度-->
<HuntingStealth>1</HuntingStealth> <!--狩猎匿踪系数-->
</statOffsets>
<skillGains> <!-- 技能增加 -->
<li><key>Shooting</key><value>5</value></li> <!--射击-->
</skillGains>
</li>
</degreeDatas>
</TraitDef>
</Defs>
这里我们可以看得出来,每个特性都是处于单独的一个<TraitDef></TraitDef>内的
TraitDef节点里面基本可以照抄.你可以复制整个TraitDef节点,然后修改下defName,
defName需要唯一性,包括不能与其他的MOD内定义的一致,否则会导致首先加载的MOD同名定义Def失效.(当然,我们会利用到这一特点对其他Mod进行补丁,以后再介绍)
label的内容是特性的名称,里面的 <color=#FF6600>[射击专精]</color> 其实是转义的.原内容是
<color=#FF6600>[射击专精]</color> 目的是要将那几个字换个颜色.为什么会写成这样,请自行百度.
description就是描述
statOffsets节点内是我们主要的修改内容.把我们需要的状态偏移写进去就行(状态有点多,下个节点我会列出来,V1.2)
skillGains 增加的技能,同上
嗯,下面没有了.
</List>
<List>
原先想完整的列出来,但是发现不能这样,会导致你们越来越懒,所以我也懒得列了,你们自己扒出来吧,下面是方法
解压RimWorld\Data\Core\Languages\下面的简体中文包 ChineseSimplified (简体中文)
\Data\Core\Languages\ChineseSimplified (简体中文)\DefInjected\StatDef\
下列的文件是状态的翻译,
Stats_Pawns_Combat.xml
Stats_Pawns_General.xml
Stats_Pawns_Social.xml
Stats_Pawns_WorkGeneral.xml
Stats_Pawns_WorkMedical.xml
Stats_Pawns_WorkRecipes.xml
栗子:Stats_Pawns_Combat.xml的内容
<!-- EN: aiming time -->
<AimingDelayFactor.label>瞄准时间</AimingDelayFactor.label>
<!-- EN: How long it takes to shoot after choosing a target. -->
<AimingDelayFactor.description>瞄准后开火所花费的时间。</AimingDelayFactor.description>
<!-- EN: incoming damage multiplier -->
<IncomingDamageFactor.label>承伤系数</IncomingDamageFactor.label>
<!-- EN: A multiplier on all incoming damage. -->
<IncomingDamageFactor.description>所有受到伤害的乘数。</IncomingDamageFactor.description>
label前面的IncomingDamageFactor就是状态名,如果需要就直接套到上面的文件中
<statOffsets> <!-- 状态偏移 -->
<!--射击-->
<MoveSpeed>+1</MoveSpeed> <!--移动速度-->
<AimingDelayFactor>-1</AimingDelayFactor> <!--瞄准延迟系数-->
<ShootingAccuracyPawn>+20</ShootingAccuracyPawn> <!--射击精确度-->
<HuntingStealth>1</HuntingStealth> <!--狩猎匿踪系数-->
<IncomingDamageFactor>1</IncomingDamageFactor> <!-- 承伤系数 -->
</statOffsets>
技能在这里
\Data\Core\Languages\ChineseSimplified (简体中文)\DefInjected\SkillDef\Skills.xml
栗子:Skills.xml的内容
<!-- EN: animals -->
<Animals.label>驯兽</Animals.label>
<!-- EN: Taming, training, and controlling animals. -->
<Animals.description>驯服、训练、管理、控制动物。</Animals.description>
label前面的Animals就是技能名,如果需要就直接套到上面的文件中
<skillGains> <!-- 技能增加 -->
<li><key>Shooting</key><value>5</value></li> <!--射击-->
<li><key>Animals</key><value>5</value></li> <!--驯兽-->
</skillGains>
请不要超标太多,否则敌人会让你知道鲜血为啥是蓝的.
</List>
|
评分
-
1
查看全部评分
-
|