Unity - 使用Reflector-Reflexil反编译游戏
Reflector与Reflexil
Reflector是.NET开发中必备的反编译工具,是一个收费工具,既有桌面版也有VS的插件版本。Reflexil则是桌面版Reflector的一个开源插件。破解安装教程网上有很多。为什么要用Reflexil,单纯使用Reflector进行整个代码项目的导出,然后在VS中就可以反编译、修改了,但是对于大型项目,比如Unity开发的游戏,Reflector反编译出来的结果会出很多错误,改起来特别麻烦。而开源的Reflexil实现了一个完整的指令编辑器,可以直接在Reflector中注入C#代码,实现修改程序集。
Unity Assembly-CSharp.dll
Unity中的自定义脚本都会打包到这个DLL中。
例子
Unity脚本如下,运行时屏幕右上角打印“Test”。
using UnityEngine;
namespace Test
{
public class MonoBehaviourTest : MonoBehaviour
{
string abc;
void Start()
{
abc = "Test";
}
private void OnGUI()
{
GUI.Label(new Rect(10, 10, 200, 50), abc);
}
}
}