欢迎光临散文网 会员登陆 & 注册

缺氧MOD开发 从小白到入门(一、工具及环境)

2023-05-07 20:46 作者:文艺老喵  | 我要投稿

写在前面:游戏过程中使用mod总有或多或少的不满意,于是产生自己做mod的想法,中文环境相关资源比较少,英文又烂,一边摸索一边入门,将这个过程记录下来,当做笔记,也是抛砖引玉,希望未来能不断完善。


一、需要用到的软件

1、Microsoft Visual Studio (必备)

下载地址:https://visualstudio.microsoft.com/zh-hans/free-developer-offers/

使用免费版即可,用于创建dll文件。

Microsoft Visual Studio 主界面


2、dnSpy (必备)

下载地址:https://github.com/dnSpy/dnSpy/releases

用于解析DLL文件,查看缺氧游戏的相关功能代码,同时可解析现成的MOD,学习一些功能的实现方法。

dnSpy 主界面


3、Poedit (可选)

下载地址:https://poedit.net/

用于解析PO文件,查看物体的游戏内名称。非必备,可用其他软件代替,甚至可以用记事本代替。

Poedit 主界面

二、软件的使用

1、安装Microsoft Visual Studio并创建项目

下载安装包后双击运行,在工作负荷选项卡中选择“.net桌面开发”和“通用windows平台开发”两个环境,然后进行安装。这一步可以手动选择安装路径和其他开发组件。

安装完成后启动软件,新建项目,项目模板中依次选择C#、Windows、库,选择类库(.NET Framewark),点击下一步。

项目名称中输入mod名字,最好使用全英文,不要带特殊符号。项目位置可以自己选择,也可以默认。

点击创建按钮即完成项目的创建工作。

选择新建项目类型
输入项目名称

这张图就是创建项目后的界面,以后所有代码编辑工作都在这个里面完成。

2、在项目中引用库文件

引用库文件的意思是在项目中添加缺氧游戏中的代码,以便可以引用相关内容。

如下图,在右侧资源管理器中的“引用”上点击右键,菜单中选择“添加引用”打开引用管理器,点击“浏览”选择所需的DLL文件,之后将添加的7个DLL文件选中,点击“确定”按钮完成引用文件的添加,至此所有准备工作就完成了。

7个文件分别是:

0Harmony.dll、Assembly-CSharp.dll、Assembly-CSharp-firstpass.dll、Newtonsoft.Json.dll、UnityEngine.dll、UnityEngine.CoreModule.dll、PLib.dll。

其中前6个文件在游戏本体中,路径是:STEAM游戏库文件\OxygenNotIncluded\OxygenNotIncluded_Data\Managed

PLib.dll需要额外添加,专栏没法添加附件,这个文件可以在很多MOD文件里面找到,默认路径是:文档\Klei\OxygenNotIncluded\mods\Steam中,可以使用搜索功能。


3、dnSpy的安装和使用

这个软件是绿色,解压后双击 dnSpy.exe 既可以运行

具体使用方法在随后的分析游戏代码中进行说明。


4、Poedit的安装和使用

游戏中物体的显示名称和内部代码名称并不一致,所以我们要先找到物体的内部代码名称。其中,中英文字典的文件是 strings_preinstalled_zh_klei.po ,文件路径是 游戏安装路径\OxygenNotIncluded\OxygenNotIncluded_Data\StreamingAssets\strings 中。

Poedit安装包双击运行进行安装,完成后运行,如下图

点击浏览文件,选择strings_preinstalled_zh_klei.po文件并打开,如下图,主界面中即是英文-中文对照。

在菜单中点击“编辑” - “查找”,打开搜索框,输入需要查找的物体的中文名字,例如“氢气发电机”,因为结果可能不是唯一,需要不断点击“上一个”或“下一个”,找到类似 <link="XXXX">XXXX</link>的内容,其中link=“”中的英文即是物体对应的内部代码名称。例如氢气发电机的内部代码名称就是“HYDROGENGENERATOR”。

当然,这个工作用其他软件也能代替,例如记事本:


以上就完成了所有准备工作,因为我是小白,因此暂时不涉及新物品的添加以及动画的添加,只进行现有物体的修改。

缺氧MOD开发 从小白到入门(一、工具及环境)的评论 (共 条)

分享到微博请遵守国家法律