我从coltonon(冻伤引擎专家)那里得到了答案,如果您能帮助的话,我不完全理解他给我的答案!
这是他给我的:“您需要viewangles类,您可以查看该地址以确定俯仰偏航偏移量以及需要转储的寄存器。在我的头顶上,它是0x68表示偏航,0x6c表示音调” 编辑:明确地说,我知道一个类是什么,我不知道如何获取/使用寄存器,也不知道该地址,如果您知道如何利用0x6c /获取viewangles类,那是什么我需要:D
我确实从Google中搜索了一些东西,例如寄存器,地址和课程,希望有可能弹出一些东西,尽管那里似乎没有任何东西与我要找的东西接近。
我知道0x68 / 0x6c可能是用于在内存中更改值的偏移量之类的东西,我知道我有一个mem.write函数,很可能做到这一点,我只是不知道如何转换0x6c(例如)为int / float,或者为函数/用作游戏引擎的函数
我认为viewangles类是名为VIEWANGLESFUNC的偏移量的一部分,我从coltonon(冻伤引擎专家)那里获取了偏移量,所以这是最新的。
tldr,您对我应该在Google上搜索的内容有所了解,还是对我错了哪些地方和对的地方有任何想法?
我有一些代码适合您!我在coltonon的库ReghookEx(https://github.com/coltonon/RegHookEx)的帮助下进行了一些编码。
我确实要显示一些代码,将其编辑为我自己的外部程序版本:
class ViewAngle {
public:
ViewAngle() {}
float Yaw(float input) {
}
float Pitch(float input) {
}
};
if (GetAsyncKeyState(0x02) && this->ClosestVisibleEnemy.IsValid()) {
if (this->allow_aim == true) { std::cout << "caught allow_aim" << std::endl; }
RegHookEx AngleFuncHook(mem.hProcess, OFFSET_VIEWANGLEFUNC);
if (mem.read<RegDump>(AngleFuncHook.GetAddressOfHook()).RBX != 0) {
//Read
ViewAngle pViewAngle = mem.read<ViewAngle>(AngleFuncHook.GetRegDump().RBX);
//pViewAngle.Yaw, pViewAngle.Pitch
//Write
RegDump pRegDump = mem.read<RegDump>(AngleFuncHook.GetAddressOfHook());
mem.write<float>(pRegDump.RBX + offsetof(ViewAngle, ViewAngle::Yaw), 0);
mem.write<float>(pRegDump.RBX + offsetof(ViewAngle, ViewAngle::Pitch), 0);
}
}
其底部位于称为Manager的类中,与ViewAngle的类分开