众所周知,写 RimWorld Mod 时,没法儿直接对代码进行断点调试,那如何才能实现这个功能就成为了一个问题。现在介绍我第一个成功使用的办法。该方法依赖 Windows Visual Studio,不适用于除 Windows 以外的系统。
建议先复制一个 RimWorld 本体到 Steam 路径外,方便开发以及复原。
一、确认 Unity 版本
打开游戏目录,找到启动游戏的 EXE 文件,右键查看属性

点开详细信息,产品版本就是要找到 Unity 版本

二、下载 Unity
去 Unity 官网下载对应的构建版本。
上面的链接可能打不开,这是因为我给出的是国际版的官网。由于我不太了解国际版和国内特供的区别,建议使用国际版 Unity 以避免发生问题。
一定要确认版本是否与第一步找到的一致。

下载适用于 Windows 操作系统的版本。

耐心等待下载完成。
三、获取前置文件
找到下载的文件

由于 1.6 版本开始,通过压缩包方式打开没法儿获取需要的文件,只能浪费时间选择一个路径安装再获取文件了。
因此需要打开安装包并选一个你喜欢的路径安装,这里就不放图片了。
安装完成后,找到你安装的路径并打开对应的文件夹,找到以下路径的对应文件夹:
[InstallFolder]\Editor\Data\PlaybackEngines\windowsstandalonesupport\Variations\win64_development_mono

将 UnityPlayer.dll 和 WinPixEventRuntime.dll 复制到 RimWorld 的根目录(第一步中找到游戏 EXE 文件的文件夹),覆盖原有文件。

将 WindowsPlayer.exe 重命名为启动游戏的 EXE 文件的名字(根据第一步,这里重命名为 RimWorldWin64.exe),并复制到 RimWorld 的根目录,覆盖原有文件。

现在,你可以卸载安装的 Unity 了。
四、配置游戏文件
打开游戏根目录,找到以下路径的对应文件:
[RimWorldFolder]\RimWorldWin64_Data\boot.config

打开文件并添加以下内容:
wait-for-managed-debugger=1
player-connection-debug=1

保存修改后的文件
五、配置项目文件
打开 Mod 项目的解决方案,右键项目打开属性页面

在生成——输出中打开高级选项

将调试信息设置为可移植

六、开始调试
生成 Mod 项目,将 DLL 和 PDB 文件复制到 Mod 加载 DLL 文件的路径下,接下来将要调试的 Mod 添加到 Mod 加载列表,使用替换后的 EXE 文件启动游戏。
这时会弹出一个窗口提示你可以准备开始调试,无论你点击确定还是窗口的关闭按钮,都会继续启动游戏(若是不小心启动的,可以使用任务管理器关闭,这样就不会启动游戏)

打开 Visual Studio 顶部菜单中的调试菜单,选择附加到 Unity 调试程序

选中游戏并点击确定

现在,IDE 就能进入你在代码中打的断点了。
参考:
[Tool](1.1) Use Visual Studio 2019 to debug your own mods