游戏逆向中的 NoClip(无碰撞 / 幽灵模式)

631 阅读1分钟

no-clip 是一种典型的 hack 行为,允许你穿过墙壁,所以 NoClip 又可以认为是避免碰撞体积的行为

因此,有两种思路来实现 NoClip

墙壁边界

游戏中设置了碰撞体作为墙壁边界,是 玩家对象 和墙壁发生了碰撞,而不是 相机

玩家对象有他的 XYZ,相机也有 XYZ,跟随 着玩家对象

通过禁止玩家对象和墙壁的交互来避免碰撞检测的发生;

在这里插入图片描述

寻找碰撞

像茶杯头这样的 2D 游戏的碰撞检测更加简单;

无论如何,不管是 2D 还是 3D 游戏,先找到一个让你停下来的东西;

第一种方法是:找到一个 bool 值,判断是否在发生碰撞(很多游戏可能没有这样的检测 bool 值)

另一种方法是:先找到玩家的 XYZ 坐标,然后你查看什么在访问 XYZ 坐标地址,如果我们发现在碰撞到一些东西的时候,产生了一些指令,指令可能正在读取一些值,也可能在写入一些值

相对的解决办法针对不同的游戏对应。