原文描述
《古墓丽影:崛起》模组工具 v1.2
横幅作者:SilverEzredes 这是我为《古墓丽影:崛起》制作的模组安装与创作工具合集
模组注入器《古墓丽影:崛起》模组注入器是一款面向《古墓丽影:崛起》的基础模组管理器与文件注入工具,由一个.bat文件和名为ROTTRTigetadd.exe的注入程序组成,bat文件会向该程序发送指令。它能将修改后的文件重新插回游戏中,强制游戏加载这些修改后的内容。
要安装该注入器,请将模组注入器压缩包内的所有内容放到你的《古墓丽影:崛起》游戏目录下。它会将文件注入到“bigfile.update3.000.000.tiger”中,但你也可以使用“bigfile.update2.000.000.tiger”为游戏的旧版本制作模组。
你可以通过将预制的模组文件夹拖放到InstallMod.bat上来安装模组。注入器会在Tools文件夹中记录它替换的每一个文件,如果你单独运行InstallMod.bat,它会利用这些记录卸载所有模组,将bigfile.update3.000.000.tiger恢复至默认状态。
^^ 将模组文件夹拖放到InstallMod.bat上即可安装,单独运行InstallMod可卸载所有模组。
InstallMod还支持文件的“深度搜索”替换功能,该功能会搜索单个文件的数百条引用,并将其全部替换为指向你修改后文件的新引用。这种文件安装方式非常彻底,单个文件的安装可能需要花费几分钟,能减少游戏忽略修改后文件的情况。它可以像其他任何文件一样被卸载。在模组中,名为“Replace”的文件将通过深度搜索方式安装。
你可以逐个安装文件:将模组需要安装的“DRM”归档文件复制为drmfile.drm,放到InstallMod.bat所在目录,然后将单个文件拖放到InstallMod上即可。你可以编辑批处理文件来修改InstallMod.bat的基础选项,例如开启单个文件的深度搜索安装功能,或是更改某些文件的位置。
更新 v1.3:你现在可以使用深度搜索安装文件后生成的卸载“tiger_patch.log”文件,让下次这些文件的安装速度提升10倍。将日志文件放到它对应的Section [XXXX]文件所在目录,命名为[XXXX].log即可启用该功能。
更新 v1.5:此版本对Installmod.bat进行了重大改版,现已更新为处理txt文件(替代ROTTRTigetadd)
-你现在可以将模组文件夹中的特定DRM子文件夹注入到不同的bigfile文件中,只需在你的DRM文件夹内添加类似“bigfile.update2.000.000.tiger.txt”的TXT文件即可。即便bat文件设置为注入update3,该DRM也会被注入到bigfile.update2中。
-Installmod.bat会自动在你的模组目录中创建日志文件,加快下次安装速度
-对于模组创作,Installmod.bat的单文件模式新增了多项功能,它会提示你选择要使用的DRM文件,允许你更改要注入的bigfile,或是通过注入名为“Replace [XXXX]”的单个文件来执行深度搜索
-对Installmod.bat的用户界面和使用方式做了其他小幅改进
你可以使用我的另一个发布在Nexus上的模组“劳拉比基尼”来测试这款模组注入器
^^ 劳拉比基尼,我用这些工具制作的一个模型模组
面向模组创作者的模型与纹理编辑工具Noesis插件
这款适用于Noesis的Python插件[点击此处下载Noesis]可以预览并从《古墓丽影:崛起》中提取tr2pcd纹理和tr2mesh模型,还能将FBX模型导出回《古墓丽影》的tr2mesh格式。你可以借助3ds Max或Blender这类软件在FBX格式下编辑模型,之后再重新导出为FBX,通过Noesis将FBX导出为可用的tr2mesh格式,即可在游戏中使用。
将FBX导出回tr2mesh格式时,网格名称和骨骼名称至关重要,如果对象的名称与原始模型中的对应对象名称不匹配,这些对象将会被忽略。你必须在提取出的DRM文件中找到扩展名为“skl”的文件,将其以“skeleton.skl”的文件名放到tr2mesh文件的同目录下,Noesis才能为你的模型赋予骨骼。感谢Gh0stblade创作了最初的tr2mesh导入工具。
在保留面部混合形状的前提下将FBX导出为tr2mesh
混合形状是《古墓丽影:崛起》的面部动画,但遗憾的是游戏中该格式的原理尚未被完全破解,目前仅能进行复制和导入操作。因此,它们仅能在未改动过的原始几何体上正常生效。你可以在要覆盖导出的tr2mesh文件名后添加“ -bs”参数进行导出,插件会从另一个tr2mesh文件中复制劳拉的头部网格,并保留其混合形状(如果该文件仍带有混合形状的话,未使用“ -bs”参数导出会删除所有混合形状)。
得益于aman的研究,你现在还可以通过这款Noesis插件将面部混合形状作为网格导入。你可以通过修改py文件顶部全局选项中的gNumDisplayShapes数值来增加混合形状的数量。劳拉的头部共有107个混合形状,你可以通过修改“gFirstShape”选项来更改起始的混合形状序号。
编辑时请牢记,骨骼影响上限/顶点权重上限为4。另外请确保缩放比例正确,不要是原尺寸的2.54倍或是0.39倍(对应英寸与厘米的单位换算)。
MaxScript模型工具
这款名为“rottr_mesh_tool”的Maxscript最初是为编辑劳拉的头部模型而创作的,但你现在可以用它编辑模型上的任意网格。它是我最后制作比基尼模组时用到的核心工具。它一次注入一个网格,用于在Noesis tr2mesh导出器生成模型后对其进行微调。你可以通过编辑网格对象属性中的用户属性,设置“Write Material ID = True”来更改网格使用的材质(纹理集)。
如果你已经通过带“ -bs”参数的Noesis插件,准备好一份带有复制的劳拉原始头部网格的模组,你可以使用这款MaxScript工具对其进行修改,且不会破坏保留面部动画所需的顶点顺序。
编辑头部网格:
你可以在3ds Max中导入劳拉的原始头部网格(使用rottr_mesh_tool.ms),编辑其几何体、UV、蒙皮权重和法线,且不会破坏面部混合形状,编辑完成后点击“注入模型数据”,将3ds Max中的头部注入到你用“ -bs”参数制作的模组中。之后,你可以通过Noesis带“ -bs”参数的导出功能,将修改后的头部导出覆盖到你的NewMesh文件中,实现修改后头部的转移。你不能添加或删除任何顶点,也不能重新导入模型,否则混合形状将会损坏。模型的顶点顺序必须始终保持完全一致,才能保留面部动画效果。
rottr_mesh_tool还可以为头部网格之外的其他网格保存顶点和面对数据,前提是你要覆盖注入的文件中的顶点数与面数完全相同。
^^ 使用rottr_mesh_tool.ms MaxScript修改头部网格以适配身体,同时不改变顶点顺序
010编辑器模板
我随包附带了自己编写的适用于《古墓丽影:崛起》tr2mesh格式、tr2mesh骨骼以及DRM的二进制模板。还附带了一个1sc脚本,它可以将DRM文件中的所有引用转换为耐力号tiger文件的格式,方便提取。
ROTTR_mesh.bt模板在模组制作中非常实用,你可以通过它更改网格的纹理集(在SubmeshInfo内部修改“material”),还可以交换顶点缓冲区和面列表。
^^ 显示tr2mesh顶点的ROTTR_mesh.bt模板界面
随包附带了用于查看纹理头信息的tr2pcd模板,以及用于调整骨骼位置的SKL模板
还有一个TIGER文件模板,不过它非常占用内存,因此目前限制为仅搜索前1408个DRM文件。你可以编辑该模板,让它解析所有条目。
提取游戏文件
使用Ekey的TIGGERUnpacker从游戏的bigfile.update3.000.000.tiger文件中提取DRM文件。之后找到你想要修改的资源对应的DRM文件名,使用DRM转储工具从游戏文件中将其提取出来。
如何从bigfile.update3中提取DRM:
https://forum.xentax.com/viewtopic.php?f=10&t=13501&start=270#p166554
你可以使用Ekey推出的更新版本DRM转储工具从Update3中提取文件:下载DRMDumper [update3版本]
^^ Ekey的DRMDumper正在提取劳拉服装“DRM”文件的内容,该工具已被调整以提取bigfile.update3.tiger
创建与分发模组
要创建模组包,先新建一个模组文件夹,在其中为每个你想要修改的DRM文件新建子文件夹,将对应的DRM文件放入子文件夹内,且子文件夹与内部的DRM文件同名。所有要安装到该DRM内的Section XXXX文件都放入这个子文件夹中,一个模组内可以包含多个DRM子文件夹。名为“Replace XXXX”的文件将被强制覆盖该资源的所有引用;这类文件的安装可能耗时较长,但生效概率更高。
将主模组文件夹拖放到InstallMod.bat上,它就会逐个将模组文件夹内的每个DRM子文件夹安装到游戏中。名为“Section XXXX”的文件将以常规方式快速注入,而名为“Replace XXXX”的文件将通过深度搜索方式注入。
^^ 模组文件夹示例,使用旧的卸载日志加快安装速度,并使用txt文件将纹理重定向到其他纹理
你可以重复使用“tiger_patchXX.log”卸载日志文件,大幅加快模组内文件的安装速度,只需将它们重命名为对应资源的区段编号加上.log后缀即可
如果你打算复用纹理,可以创建一个txt文档替代原有资源,实现一个资源重定向到另一个资源的效果,比如Section 0104只需作为Section 0101.tr2pcd的副本,那么在“Section 0104.txt”中写入Section 0101.tr2pcd,游戏就会加载Section 0101.tr2pcd来替代它。
纹理修改方法
要加载《古墓丽影:崛起》中的纹理,使用Noesis插件在Noesis中打开它们。你可以点击文件->导出,将它们保存为TGA文件,之后用Photoshop打开该文件。编辑完成后,你可以使用Photoshop的英特尔纹理工作插件将纹理保存为DDS格式。你可以在HXD或010编辑器这类十六进制编辑器中打开原始纹理文件,查看其名称。纹理的名称和类型会显示在文件开头,类似“assetsmeshobjectscharacterslaratextureslara_tanktop_d”(这里的“d”代表“漫反射”)。
对于每种材质,通常都有1个光照贴图、1个效果贴图,以及3组法线贴图、漫反射贴图和粗糙度贴图(1组常规贴图、1组沾泥贴图、1组沾血贴图):
漫反射贴图
常规的色彩纹理
法线贴图
用于模拟深度和光照的法线贴图。要让你的法线贴图和游戏中的法线贴图一样呈黄色,请反转蓝色通道。
绿色通道应采用DirectX格式
粗糙度贴图
该纹理表现皮肤光泽和汗渍,我尚未完全确定每个通道的具体作用。原始的皮肤粗糙度纹理为深黄色。我已经确认绿色通道的暗度会决定劳拉在泥地里打滚时是否会被浸湿。
漫反射贴图、法线贴图和粗糙度贴图都采用高有损的BC1压缩方式保存,参数设置如下:
所有《古墓丽影:崛起》的纹理都保存为纹理类型:颜色,无Alpha通道
光照贴图
用于表现模型阴影的黑白纹理。使用BC4-灰度压缩方式保存
效果遮罩
RGB三个通道分别是配合粗糙度纹理使用的遮罩,用于表现湿润度、汗渍、血迹光泽——我尚未完全确认各通道的对应作用。请对照原始纹理,尝试模仿它们的样式。使用BC7压缩方式保存
将纹理保存为DDS格式后,你可以在Noesis中打开该DDS文件,点击文件>导出,将其导出为tr2pcd格式覆盖原始提取出来的tr2pcd纹理,即可得到可用于模组的TR2PCD纹理。将新生成的TR2PCD文件在Noesis中预览,确认其正常运行后再注入回游戏。
鸣谢
非常感谢所有在我制作这款工具过程中给予支持的人,尤其要感谢:
– Gh0stblade
– 感谢他对《古墓丽影》逆向工程的研究,以及制作了诸多关键工具,包括最初的Noesis导入器和CDRM.exe(用于在注入游戏前快速压缩资源)
– aman – 感谢他提供了TR9tigetadd的源代码,该代码被改编为这款注入器所使用的ROTTRTigetAdd.exe。同时感谢他为修复导出模型提供的宝贵思路
– Raq / LuckyEdge
– 感谢测试工作、日常帮助与反馈
提示:显示此文本点击后可见。

评论(0)