MGSV Lua 模组制作教程

一个快速简单的无忧教程,用于修改《幻痛》的Lua文件。

模组制作者资源和教程

这是一份面向完全新手的《合金装备V》模组制作基础指南。

  1. 从文件部分下载 MGSV QAR Tool。
  2. 从文件部分更新你的 dictionary.txt 文件
  3. 从 data0.dat 和 00.dat 中提取 .lua 文件。在命令提示符中运行以下命令,并确保包含 -r 标志(用于解密 .lua):MGSV_QAR_TOOL.exe 01.dat -rMGSV_QAR_Tool data1.dat -r
  4. 使用 Notepad++ 进行修改。
    • 4a) 可选:从 Notepad++ 的插件管理器下载 JSON Viewer(使用前高亮整个文档),以便更轻松地阅读。
    • 4b) 如果你执行了步骤 4a,则必须执行此步骤:如果你已格式化 .lua 文件,请使用正则表达式将其恢复为未格式化状态。如果你没有格式化 .lua 文件,则无需执行此步骤。
  5. 使用以下命令重新打包 00.dat:MGSV_QAR_TOOL.exe 00.inf -r
    • 5a) 如果添加了 00.dat 中原本不存在的文件:打开 data0.inf,复制包含你添加到 00 文件夹中的已编辑 .lua 文件的行,并将其粘贴到 00.inf 中。显然,这要求你将新文件放置在正确的目录位置,并具有正确的文件夹结构。
  6. 将新的 00.dat 复制回 MGS_TPP/master/0,然后尽情享受吧!

注意: 请确保你修改的是 00.dat,而不是 data0.dat。Data0.dat 包含原版、未打补丁的文件。00.dat 是补丁文件,在发生冲突时会覆盖 data0.dat,并且始终包含最新的 .lua 文件。01.dat 也可以用于此目的,但它是一个更大的文件,对于大多数游戏玩法修改来说基本无关紧要。

合并模组的注意事项: 如果你想同时使用两个模组(例如我的增强消音器模组和物品解锁器模组),请将一个模组中已编辑的 .lua 文件放入你的 00 文件夹,然后重新构建 00.dat。如果涉及的模组包含并非 00.dat 中原本就有的文件,你必须确保所有已编辑的文件都已命名并列入 00.inf。

还有一个名为 SnakeBite 的模组安装程序,某些模组需要它。安装和使用 SnakeBite 就像下载并运行该程序一样简单。

关于正则表达式的说明: 正则表达式是正则表达式的简称。通常,MGSV 的 .lua 文件没有空格或换行符,这意味着所有代码都在一行上。它们可以被格式化为 JSON 以便于阅读,但不幸的是,游戏无法再读取它们。要解决此问题,你可以选择以下两种方法之一:

  1. 将相关的 .lua 文件的一个版本保持为 JSON 格式化状态,用于参考查阅。保留另一个未格式化的副本,并对该文件进行所有修改。
  2. 直接在格式化的 JSON 上进行编辑,然后在需要重建补丁(00.dat/data0.dat)时,使用正则表达式去除 JSON 格式。

现在,我对正则表达式不太熟悉,通常只用于去除 MGSV 的 JSON 格式,但它的用途更广。幸运的是,你只需要知道两个命令。\R 用于移除所有换行,^\s* 用于移除所有空白。按如下步骤操作,并确保先运行 ^\s,再运行 \R*。

图片

要还原 JSON 格式,请打开 Notepad++,进入替换功能,在查找栏中输入 ^\s*,替换栏留空,点击全部替换。对 \R 执行相同操作。确保勾选“正则表达式”复选框。

使用 Notepad++ 的插件管理器找到 JSON Viewer。