标题: 【转】【原版+豪曹】解决CPU占单核100%双核50%的问题
性别:未知-离线 xiawj

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 38
编号 488251
注册 2013-7-23


发表于 2014-9-18 09:59 资料 短消息 只看该作者
【转】【原版+豪曹】解决CPU占单核100%双核50%的问题

【转】【原版+豪曹】解决CPU占单核100%双核50%的问题
原帖来自百度曹操传吧大神“我就是伯伯”。在此非常感谢伯伯大神让我的古董机复活了

感觉昨晚改得还是有点粗糙,既然已经深入到关键代码段了,今儿索性尝试把之前也不怎么爽的占CPU的问题解决掉。之前由于心疼CPU,玩的时候一直都是用BES限制CPU的使用率来的。这个BES跟齿轮一样,在我看来只能算权宜之计。



还是不废话,继续贴代码,结果也是有点意外,只需改一处代码就可以把CPU使用率降下来了。


位置0x0042F7F3


源编码:
push ecx
mov [ebp-04],ecx
call 0042C479


--->
修改为:
push 0000000A
call dword ptr [00486144]
nop


其中修改的第二句代码,是用LordPE查到Sleep函数导入的地址,直接调用Sleep()取代原码不停地GetTickCount(),从而释放CPU时间。第一句自然就是Sleep的参数了,值越小越快。
很简单是吧。


根据上面修改了后,因为是10毫秒刷新一次界面,那些一个小人就会闪得跟无影手似的,这时只需要沿用我昨晚发的第二段修改,就可以把单个小人(会动的物体)刷新速度(图片索引)使用天气图片自动刷新索引的地址。齿轮256速无压力的请无视以下这段吧。


0x0041C2DA mov al,[eax+05] -> mov al,[eax+18]




豪曹11跟14还有本吧置顶下载那个原版,经测可用。其他mod应该也可以此方案解决,内存地址或许会有所不同,只需找到相应的代码段即可。


再次重申本人没汇编基础,也就勉强能看懂两句,大部分命令需要搜索现学。所以以上有什么错漏之处,还望不吝指正。


最后要感谢一下猫灵,如果豪曹14出得快或一次性出完的话,我应该没什么闲心去弄这个,齿轮+BES也就凑活过去了。。。

最后希望伯伯大神再为曹操传做出自己宝贵的贡献!


顶部
性别:未知-离线 xiawj

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 38
编号 488251
注册 2013-7-23


发表于 2014-9-18 09:59 资料 短消息 只看该作者
http://pan.baidu.com/s/1mg7gkkw 再贴个自制的专门修改曹操传exe的工具,豪曹11跟14还有本吧置顶下载那个原版,都可使用。


顶部
性别:男-离线 程军超
(虎贲郎赵统)

Rank: 6Rank: 6Rank: 6
组别 校尉
级别 安国将军
好贴 1
功绩 23
帖子 819
编号 498865
注册 2014-3-4
来自 山东烟台


发表于 2014-9-19 13:47 资料 文集 短消息 只看该作者 QQ
回复 #1 xiawj 的帖子

电脑的问题。
顶部
性别:未知-离线 iisdog

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 35
编号 94072
注册 2006-12-3


发表于 2014-9-19 15:16 资料 短消息 只看该作者


QUOTE:
原帖由 xiawj 于 2014-9-18 09:59 发表
http://pan.baidu.com/s/1mg7gkkw 再贴个自制的专门修改曹操传exe的工具,豪曹11跟14还有本吧置顶下载那个原版,都可使用。

可不可以幫做天下人間的
顶部
性别:未知-离线 xiawj

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 38
编号 488251
注册 2013-7-23


发表于 2014-9-19 16:31 资料 短消息 只看该作者
这里是更新了支持岳飞传6.0的工具,使用的时候记得勾选"岳飞传6.0"再做修改。
http://pan.baidu.com/s/1pJoJj1D

你可以试试这个工具!希望可以帮到你!如果还是不行,你就去http://tieba.baidu.com/p/3300349013 回帖找伯伯大神解决,他应该会出手帮助你的!
顶部
性别:未知-离线 xiawj

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 38
编号 488251
注册 2013-7-23


发表于 2014-9-19 16:32 资料 短消息 只看该作者
回复 #4 iisdog 的帖子

这里是更新了支持岳飞传6.0的工具,使用的时候记得勾选"岳飞传6.0"再做修改。
http://pan.baidu.com/s/1pJoJj1D

你可以试试这个工具!希望可以帮到你!如果还是不行,你就去http://tieba.baidu.com/p/3300349013 回帖找伯伯大神解决,他应该会出手帮助你的!
顶部
性别:未知-离线 iisdog

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 35
编号 94072
注册 2006-12-3


发表于 2014-9-20 10:57 资料 短消息 只看该作者
可以用了   感謝大大您!!!
顶部
性别:未知-离线 star175

★★

Rank: 9Rank: 9Rank: 9
轩辕春秋年度最佳(轩辕工作室)
组别 白衣卿相
级别 讨逆将军
好贴 3
功绩 153
帖子 686
编号 91725
注册 2006-11-16


发表于 2014-9-23 17:54 资料 文集 短消息 只看该作者
这个改法有缺陷
被修改是延时函数,剧本里有些设置了延时的地方也变快了

改进之后的写法

0042F7F0  /$  55            PUSH EBP
0042F7F1  |.  8BEC          MOV EBP,ESP
0042F7F3  |.  51            PUSH ECX
0042F7F4  |.  6A 01         PUSH 1                                   ; /Timeout = 1. ms
0042F7F6  |.  FF15 44614800 CALL DWORD PTR DS:[<&KERNEL32.Sleep>]    ; \Sleep
0042F7FC  |.  8B4D FC       MOV ECX,DWORD PTR SS:[EBP-4]
0042F7FF  |.  E8 75CCFFFF   CALL Ekd5.0042C479
0042F804  |.  F7D8          NEG EAX
0042F806  |.  1BC0          SBB EAX,EAX
0042F808  |.  40            INC EAX
0042F809  |.  8BE5          MOV ESP,EBP
0042F80B  |.  5D            POP EBP
0042F80C  \.  C3            RETN

改了之后cpu使用率下来了,也不影响其他的延时效果

只要让cpu稍微休息一下就行了

41C2DA处不用改

[ 本帖最后由 star175 于 2014-9-23 17:59 编辑 ]

本帖最近评分记录
godtype 2014-9-23 18:02 +300 我一直在等着你出手!!!!!
顶部
性别:男-离线 華寶
(Warburg)

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 15
编号 193582
注册 2007-7-25


发表于 2014-9-23 23:16 资料 短消息 只看该作者 QQ
回复 #8 star175 的帖子

膜拜大神
顶部
性别:未知-离线 boshao

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 26
编号 504045
注册 2014-7-22


发表于 2014-9-24 04:28 资料 短消息 只看该作者


QUOTE:
原帖由 star175 于 2014-9-23 17:54 发表
这个改法有缺陷
被修改是延时函数,剧本里有些设置了延时的地方也变快了

改进之后的写法

0042F7F0  /$  55            PUSH EBP
0042F7F1  |.  8BEC          MOV EBP,ESP
0042F7F3  |.  51           ...

多谢赐教。
不过其实加快游戏速度且不闪屏才是最初修改的动机,这是原帖上篇http://tieba.baidu.com/p/3298672127CPU占用的问题只是跟到最后顺带解决的。而且不想变快的话直接Sleep(50)就跟原版速度差不多了。
再有一个问题,无论哪种修改方式,在交换物品出现选项的时候,CPU一定又会占满了。
顶部
性别:未知-离线 xiawj

Rank: 1
组别 百姓
级别 在野武将
功绩 0
帖子 38
编号 488251
注册 2013-7-23


发表于 2014-9-26 09:07 资料 短消息 只看该作者
回复 #8 star175 的帖子

大神可以完美修复下这个降低CPU占用率的补丁吗?
顶部
性别:男-离线 WHITESHIP

★★
谏议大夫

Rank: 16
组别 翰林学士
级别 征北将军
功绩 380
帖子 4210
编号 170977
注册 2007-6-3
家族 轩辕学院


发表于 2014-9-26 11:42 资料 个人空间 短消息 只看该作者
这个有价值,顶起来,我去WIN8试试
顶部
性别:男-离线 WHITESHIP

★★
谏议大夫

Rank: 16
组别 翰林学士
级别 征北将军
功绩 380
帖子 4210
编号 170977
注册 2007-6-3
家族 轩辕学院


发表于 2014-9-27 16:11 资料 个人空间 短消息 只看该作者
我靠!效果拔群!
CPU占用从31.5%直接降到0.3%
顶部

正在浏览此帖的会员 - 共 7 人在线




当前时区 GMT+8, 现在时间是 2024-11-24 11:35
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.013350 second(s), 11 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP