问题描述
首先,我不想破解任何游戏。我希望能够在没有模组支持的情况下为用 C# 编写的游戏创建模组。
让我们假设游戏包含这个简单的类:
namespace Game
{
public class GameLogic
{
public void DoThis() {
Console.WriteLine("Game-Logic");
}
}
}
DoThis()
方法每秒被调用一次。
现在我希望将以下 ExtraLogic()
方法连接到函数的开头或结尾。
namespace GamePatch
{
public class Mod
{
public void ExtraLogic() {
Console.WriteLine("Extra-Logic");
}
}
}
当然,我必须先用我的自定义代码注入 mod-dll。
假设我已经有一个引导程序来注入 dll 并调用 DllMain
方法。
由于我无法轻松地将逻辑修补到 c# 中的方法中,因此我可能不得不以某种方式修改内存中的指令。
是否可以以某种方式插入对 ExtraLogic()
的调用?
我知道可以在运行时以某种方式修改 IL 代码。
如果 DoThis()
方法具有我想在 mod 逻辑中使用的参数,我该怎么办?
我更喜欢没有框架的解决方案,因为我想了解让我的方法执行的过程。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)