Cheat Engine提供了一个名为速度提升的功能,可以加速或减慢游戏运行速度。实际上不仅仅是游戏,如果有计时器的软件也可以被加速。这是如何实现的呢?我可以想象这些程序内部会有一些时钟来运行,但不确定在低层次上是如何实现的。
虽然这个功能在我试过的大多数游戏上都有效,但在许多游戏中也失败了,例如《极品飞车:最想要》。为什么?这些游戏运行的机制是否不同,还是只是一些反作弊措施?
Cheat Engine提供了一个名为速度提升的功能,可以加速或减慢游戏运行速度。实际上不仅仅是游戏,如果有计时器的软件也可以被加速。这是如何实现的呢?我可以想象这些程序内部会有一些时钟来运行,但不确定在低层次上是如何实现的。
虽然这个功能在我试过的大多数游戏上都有效,但在许多游戏中也失败了,例如《极品飞车:最想要》。为什么?这些游戏运行的机制是否不同,还是只是一些反作弊措施?
go gettimeofday_orig;
int val;
gettimeofday_orig=(go)dlsym(RTLD_NEXT,"gettimeofday");
if (!timezero)
{
timezero = new timeval;
val = gettimeofday_orig(timezero,tz);
(*tv) = (*timezero);
return val;
}
我不确定它是如何被检测到的,但我会赞同@ Harold的想法,即游戏可能会发现DLL被注入了。
Cheat Engines 旧版 速度hack:
Cheat Engines 新版 速度hack:
检测:
来源:http://wiki.cheatengine.org/index.php?title=Cheat_Engine:Internals#Speedhack
来源: http://hackerbot.net/tutorials/353-speed-up-hack-slow-down-cheat
就个人而言,我只遇到过很少数不会对速度作弊做出反应的游戏。即使它们被绑定到FPS上,您仍然可以将其速度作弊到一定程度。
gettimeofday()
еҮҪж•°пјҢиҖҢдёҚжҳҜжһ„е»әдёҖдёӘиҮӘе®ҡд№үеҶ…ж ёдёҺдҝ®ж”№иҝҮзҡ„sys_gettimeofday()
еҮҪж•°гҖӮеӣ жӯӨпјҢдҪ еҸҜд»ҘиҜҙ他们钩еҸ–дәҶgettimeofdayеҢ…иЈ…еҮҪж•°жқҘжӢҰжҲӘзі»з»ҹи°ғ用并дҝ®ж”№иҝ”еӣһеҖјгҖӮ - Peter Cordes