gpt4 book ai didi

c++ - fps游戏中的瞄准机器人如何工作?

转载 作者:IT老高 更新时间:2023-10-28 12:12:33 49 4
gpt4 key购买 nike

我很好奇是否有人对反恐精英等在线 FPS 游戏中的瞄准机器人有任何经验/知识。我很好奇,想了解更多关于光标如何知道如何锁定对方球员的信息。显然,如果我想作弊,我可以去下载一些作弊,所以这更像是一种学习。它涉及到什么?他们是否钩住用户的鼠标/键盘以将光标移动到正确的位置?作弊应用程序如何知道光标的确切位置?作弊应用必须能够访问游戏应用内的数据,这是如何实现的?

编辑:对于 sids 的回答,人们如何获取那些已知的内存位置以从中获取数据? EDIT2:假设我使用调试程序或其他方式在位置 0xbbbbbbbb 找到了一些我想要的值。我现在如何访问和使用存储在应用程序中该位置的数据,因为我不拥有该内存,游戏拥有。还是我现在可以访问它,因为我已经注入(inject)到进程中并且可以使用 memcpy 或其他东西复制该地址的内存?

其他人有什么要补充的吗?尝试尽可能多地了解这一点!

最佳答案

游戏内存中的某处是每个玩家的 X、Y 和 Z 位置。游戏需要知道这些信息,以便它知道在哪里渲染玩家的模型等等(尽管您可以通过仅向其发送玩家信息以供查看的玩家来限制游戏客户端可以知道的程度)。

瞄准机器人可以扫描已知的内存位置以获取此信息并将其读出,使其可以访问两个位置 - 玩家和敌人。减去这两个位置(作为 vector )得到两者之间的 vector ,从那里计算玩家当前外观 vector 到所需角度 vector 的角度很简单。

通过将输入直接发送到游戏(这很简单)并使用一些常量进行微调,您可以让它很快自动瞄准。这个过程中最困难的部分是确定位置在内存中的存储位置,并针对任何在你身上移动玩家的动态数据结构进行调整(例如平截头体剔除)。

请注意,当使用地址随机化时,这些更难编写,尽管并非不可能。

编辑:如果您想知道一个程序如何访问其他程序的内存,典型的方法是通过 DLL injection .

编辑:由于这仍然受到一些点击,因此瞄准机器人的工作方式更多,现在更流行;即覆盖(或就地修补)Direct3D 或 OpenGL DLL 并检查函数调用以绘制几何图形并插入您自己的几何图形(例如墙壁黑客)或获取目标机器人的模型位置。

关于c++ - fps游戏中的瞄准机器人如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1749597/

49 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com