Mod文件通常是一种以zipmod为后缀的文件。它依托于mod运行框架运作(在通常的整合包中都会包含mod运行框架)。在确认游戏包含mod运行框架后,将zipmod后缀文件放入根目录中的mods文件夹中即可在游戏中使用。
1.1.1 zipmod文件是什么
Zipmod文件,本质上是一种zip文件即压缩文件。
制作方法是将mod文件夹用压缩软件如winrar打包成zip后缀的压缩文件后,将文件后缀修改为zipmod。修改后缀名这一步骤可以不做,也就是说,在mods文件夹中的zip文件和zipmod文件的作用是相同的。之所以要进行这个步骤,是为了防止不了解mod运行机制的玩家误解压(解压后的mod文件不起作用)(解压后的文件夹中包含abdata文件夹,这会误导一部分玩家将其放入根目录,而这么做是没有效果的)。
另外,在打包zip文件的过程中需要注意将压缩设置设为储存而非压缩。如果mod文件被压缩过,在游戏中会需要付出额外时间对其进行解压和读取,这会导致游戏卡顿。如果你在切换某一件服装mod时感到有明显的卡顿,很可能是其作者在制作该mod时没有注意这个问题导致的。这个问题在市面上许多滥竽充数的mod中经常出现。在这个问题上,笔者认为,相比起追求mod的数量,更应该追求mod的质量,建议玩家对mod数量进行精简,删除滥竽充数的mod,仅保留部分高质量mod作者的作品,如g7o827的作品。
1.1.1 zipmod文件里面有什么
用winrar软件打开zipmod可以查看其内部文件。你也可以将zipmod文件解压。Mod内部文件结构如下图所示:

图1-1 zipmod文件结构
大部分mod(如服装、饰品类mod),其内部结构与上图类似。部分mod可能在文件夹结构上有所区别,如将mod名.png文件置于.unity3d文件内、将.unity3d文件直接置于chara文件夹内等,在借鉴过程中需要注意。部分mod类型(如工作室mod)可能会包含一些额外的文件类型,但总体结构是类似的。
其中,.xml文件为指向性文件,.csv文件为目录文件,.png文件为预览图文件,.unity3d文件为资产文件。考虑到其复杂性,将以[g7o827] Prick.zipmod(一个饰品类mod)为例为这四个部分单独创建章节进行讲解。
将zipmod文件解压后,可以看见一个名为manifest.xml的文件。该文件的作用为告诉游戏该mod叫什么、是谁做的、适用于什么版本。使用记事本将其打开,看到以下内容。

图1-2 [g7o827] Prick.zipmod中的manifest.xml文件内容
其中,第一行的<manifest schema-ver="1">至最后一行的</manifest>意为该区域内容清单,一般不需要修改。第二行的<guid>意为mod识别名称。第三行的<name>意为mod名称,建议设置为与zipmod文件名和<guid>内容一致,方便管理。第四行的<version>意为版本号,没有特殊需要的情况下可以不填。 <author>意为作者名称。<description>意为描述信息,可以不填,填了也没人看。 <website>意为作者网站,可以不填。<game>意为游戏版本,可以不填,部分mod会标注ai,即可在ai与hs2中通用。
部分mod的manifest.xml文件会包含额外信息,如解码类、高跟鞋类,其本质是充当一部分指向性功能,为了避免新玩家产生混乱,在之后的章节会单独展开讲解。
在[g7o827] Prick.zipmod\abdata\list\characustom中,我们发现一个名为g7o827_Prick.csv的文件。该文件的作用为告诉游戏该mod包含哪些资产,这些资产的路径以及在游戏的哪个区域进行显示。可以使用记事本或excel查看和编辑。使用excel将其打开,看到以下内容。

图1-3 [g7o827] Prick.zipmod中的g7o827_Prick.csv文件内容
A1格(即表中显示357部分)为mod类型编号,357代表该mod在游戏中的饰品中的nip部分显示。A3格为.csv文件的路径,游戏需要通过该路径寻找.csv文件,该路径填错会导致游戏读取不到mod,直接表现是在游戏中找不到该mod。A5至A12为mod的id。D5至D12为名称,即在游戏中显示的mod名称。G5至G12的MainAB为资产路径,游戏需要该路径寻找资产文件即.unity3d文件,该路径填错会导致游戏读取不到mod,直接表现是在游戏中能找到该mod但点击后无反应。H5至H12的MainData为.unity3d文件中的资产名称,这里显示为0是因为我在.unity3d文件中将其命名为0,这一部分的内容会在后续章节中进行详细展开。I5至I12的Parent部分意为该饰品在游戏中的默认骨骼位置,N_Tikubi_L意味着该mod会在左边的Tikubi上出现。J5至J12的ThumbAB为预览图路径,该路径填错会导致游戏中不显示预览图。K5至K12的ThumbTex为预览图名称,即上文提到的.png文件的名称,该路径填错同样会导致游戏中不显示预览图。其余的部分没有特殊需求无需更改。
同时,该表格仅为饰品类mod的信息栏目,不同类型的mod会有不同信息需要填写,如parent项为饰品类mod独有的信息。但其基本功能是相同的,即为游戏提供内容的路径与名称。通过解包他人mod多加观察和思考即可轻易总结出规律。
在了解以上信息后,我们可以仅凭该.csv文件判断mod的内容,即:这是一个包含了8个饰品的mod,可以在游戏的饰品357中被找到,他的名称是(D5至D12),他的资产在(G5至G12)(路径)。
1.3.1 mod类型的编号规则
在上文中我们提到,.csv文件的A1栏决定了mod类型编号。这意味着你可以通过改变该信息来改变mod类型。比如,我们将357改为358,那么在游戏中该mod的位置就从饰品/nip转变到饰品/腰部了。但是,如果你将357改为240,即从饰品/nip转变到服装/上装,则会出现一些问题,这是服装和饰品的资产内容不同导致的。关于这部分内容,会在之后的章节中详细展开。Mod类型编号(部分)如下图所示:

图1-4 Mod类型编号(部分)
部分名词有伤风化,故对其作和谐处理。除了以上mod类型编号外,其他mod类型如头模、纹身等,也有其对应编号。
1.3.2 mod的id编号规则
Mod的id(即图1-3中的A5至A12部分),一般要求同一mod内避免重复编号。
1.3.3 parent的编号规则
饰品类mod的.csv文件中会有Parent信息项需要填写,该项意为该饰品在游戏中的默认骨骼位置,由于这部分信息整理起来过于复杂(骨骼名词多为某区域型小语种而非英语)且在游戏中意义不大,故不作整理。仅需了解几个关键骨骼的名称如N_Kokan、N_Tikubi_L(或R)即可。
Thumb文件夹为预览图文件夹,其中的.png文件为预览图文件。注意,预览图文件格式必须为png格式。此外,部分mod可能没有thumb文件,这是其将预览图文件放入了资产文件中导致的。
1.5.1 unity3d文件的含义
Unity3d文件,我们可以简单将其理解为包含了模型、贴图、骨骼等资产的资产文件。可以使用unity3d软件或sb3u软件进行制作和编辑。Sb3u是某游戏公司制作的专用于编辑该公司生产的游戏内容的软件,亦可说是专业对口。寻求更复杂的操作,可以使用unity3d,但在常规操作中建议使用sb3u。
1.5.1 unity3d文件的内容
使用sb3u打开\abdata\chara\g7o827中的Clip.unity3d。打开后界面如下图所示。

图1-5 sb3u软件界面讲解1
点击“0”,显示如下界面:

图1-6 sb3u软件界面讲解2
点击“goto frame”进入大纲视图:

图1-7 sb3u软件界面讲解3
不同的mod类型具有不同的大纲内容,如CmpAccessory是饰品类型特有的内容,而服装类mod则具有其他内容,即前文(1.3.1节)提到的“资产内容不同”。
点击模型,按ctrl+p,显示id:

图1-8 sb3u软件界面讲解4
注意,选中的项目会有如图所示的蓝色字符底纹。
点击CmpAccessory,进入CmpAccessory的编辑界面:

图1-9 sb3u软件界面讲解5
本章内容囊括了对制作mod而言需要掌握的基础信息,而在实际操作上,仅通过文字描述难以展示具体操作细节,故接下来的教程将以视频形式展示。
文中所采用的mod案例[g7o827] Prick.zipmod、文中图片以及sb3u软件可在qq群127835514中下载。