关于变速齿轮公式,求解?

寻觅smile 2014-07-03 10:34:11
DWORD WINAPI MytimeGetTime(void)
{
SetSpeed(g_shareData.GetData()->multiple);

return g_Multiple*GetTickCount();
}

我Hook的只有timeGetTime(),上面是我定义的函数,这样只能加速页游, 减速的话就会卡住画面,但网页还在运行。
在百度上找到的公式:
为了实现变速效果,按键精灵作者采用公式算法实现了加速减速效果,公式如下:
  Result := 上次返回时间 + Round((当前返回时间 - 上次正常时间) * Power(2,倍数));
[注:Round 表示取整]

上次返回的时间,当前返回时间, 上次正常时间 ,各参数的具体含义是什么?
(我的理解是, 上次返回的时间:上一次调用我自定义函数返回的值,当前返回时间:是我改变倍数时刻,自定义函数返回的值,上次正常时间,应该就是系统timeGetTime()所返回的值)。

还有想问下,变速齿轮,只hook timeGetTime()一个api,就能能加减速吗?
...全文
354 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
寻觅smile 2014-07-03
  • 打赏
  • 举报
回复
这怎么解决呢?
寻觅smile 2014-07-03
  • 打赏
  • 举报
回复
现在又出现问题了,卸载dll时,游戏画面会卡住一会儿。 我的想法是 我Hook timeGetTime时,加速后,程序再调用 真正的 timeGetTime 时,所返回的值,比上一次的小,所以卡住了。
zilaishuichina 2014-07-03
  • 打赏
  • 举报
回复
接分要六个字
Pandorym 2014-07-03
  • 打赏
  • 举报
回复
喔哦,自悟后是要散分对吧? 我来了。~~
寻觅smile 2014-07-03
  • 打赏
  • 举报
回复
我知道了 Speed = Oldret + floor((GetTickCount() - Oldtime)*pow(2.0, Multiple)); return Speed;
内容概要:本文聚焦于高维多阶段随机规划问题,深入研究了正则化分解方法与马尔可夫过程在刻画不确定性动态演化中的应用,并提供了完整的Python代码实现。通过引入正则化技术有效降低了高维随机优化问题的计算复杂度,结合马尔可夫链建模多阶段决策过程中的不确定性传播机制,提升了模型在复杂动态环境下的求解效率与鲁棒性。研究涵盖了问题建模、算法设计、数值求解及结果分析全过程,具有较强的理论深度与工程实践价值; 适合人群:具备一定运筹学、优化理论基础及Python编程能力,从事智能决策、人工智能、能源系统优化、金融工程等相关领域的科研人员、高校研究生以及工业界研发工程师; 使用场景及目标:①应用于电力系统调度、供应链管理、金融资产配置等存在多阶段不确定性的复杂决策场景;②掌握高维随机规划的建模思路与高效求解技术,深入理解正则化方法与马尔可夫过程在实际优化算法中的融合机制与实现路径; 阅读建议:建议结合提供的Python代码进行动手实践,重点关注算法实现细节、参数敏感性分析与收敛性验证,鼓励在不同应用场景中迁移和改进该方法,进一步探索其在分布鲁棒优化、动态规划等前沿方向的扩展潜力。

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧