我正在尝试做一个自定义的系统,可以很容易地适应各种游戏,目的是当你的HP达到一定的分数时,治疗你的角色。这将是有用的,因为它将允许用户在面临死亡危险时使用药水或治疗法术进行自我治疗。到目前为止,我已经在skyrim上对它进行了测试,并且运行得相当好,但是我想让这个游戏在java代码上运行,而不是在Visual Basic上运行。所以基本上我只需要一些帮助,将我的一小部分读取内存的VB代码转换成Java代码。另外,我预计我将不得不使用JNI,但还没有做那么多的JNI,所以请不要直接将我引向api。
    DWORD HpPointer = 0x007C5710; //example pointer
DWORD HpPointed;
WORD HpOffset = 0x07B4; //example offset
int CurrentHp = 0;      //variable that stores the integer value returned
ReadProcessMemory(hProc,(LPCVOID)(HpPointer), &HpPointed, 4, NULL);
ReadProcessMemory(hProc,(LPCVOID)(HpPointed+HpOffset), &CurrentHp, 4, NULL);
//end of hp section
return (CurrentHp);谢谢
发布于 2013-03-02 05:25:06
您需要在以下代码行中使用某些内容:
public class Game {
    public native byte[] readMemory(int offset);
}你会用到
javah Game创建标头的步骤
然后创建C++类并将头文件包含在程序中
要加载游戏类,您需要使用System.loadLibrary()或使用-D命令行参数。注意: System.loadLibrary取决于您运行的操作系统。因此,如果你在Windows下编译,它将是一个.dll文件。对于linux,is将是一个.so,而对于mac,它将是一个.jnilib扩展。
https://stackoverflow.com/questions/15166972
复制相似问题