标题: shunet兄请进,关于修改的问题 [打印本页]
作者:
旖旎从风 时间: 2003-9-22 10:26
我想现在最重要的应该是如何进行EXE启动文件的修改。
但PK版已经不象从前了,以前的很简单,搜一下即可找到,最多是重复一下就成了。
可是现在似乎是加密过了,我根据以前的地址进去一看全然不对,多看几个本应是相同内容的地址现在也是完全不同了,再看整个文件格式感觉是被加密过的,否则不可能乱得这么厉害啊。
有没有办法解密?或者是否有这方面的软件提供一个,知道你很忙,如果你能来做是最好了,否则我们用软件来自己试试,不知有没有机会
作者:
shunet 时间: 2003-9-22 17:15
修改PE文件,狠!呵呵
要想修改代码段还是数据段?
有值得改的数据?
作者:
ericdr 时间: 2003-9-22 17:37
若想改加強版的金錢和糧食上限呢?
作者:
千山我独行 时间: 2003-9-22 17:44
原帖由shunet于2003-09-22, 17:15:54发表
修改PE文件,狠!呵呵
要想修改代码段还是数据段?
有值得改的数据?
原来的san9.exe文件里有很多数据值得改,如钱粮增长率,四夷初始兵力,开发收益上限,军团钱粮存储上限等,但是san9pk.exe文件里的数据跟原来的原来完全不同了,似乎被加密过,还有加强版的磨练剧本根普通剧本的数据存储方式也差距很大,似乎是加密过
作者:
旖旎从风 时间: 2003-9-22 17:57
这几个数据是非常必要修改的:
1、每个军团的钱粮最大值。修改了这一项电脑不容易出现因粮太少逃兵现象,这个数值只能在EXE文件中修改;
2、每次钱粮收入加倍,或者钱不加倍粮加倍,甚至加到四倍。修改了这一项后电脑肯定不会出现粮食不足啦 ;
3、城市的最高收入收益加高。原版的EXE文件可以加到1300左右,现在的不知是多少,一般也是这么多吧;
4、兵役减少。因为太多了电脑狂征兵,一下子就没粮了。。。;
5、其它的偶一时想不出,以上各项是根据原版三九首屠对EXE文件修改的项目来说明的。但如果大哥您能改个AI方面的某个数值那真是太好了!说句实话,修改器固然重要,但一个EXE文件足以让所有的三九玩家感谢你呀!
现在的EXE文件我看了一下,很可能是加密过了,否则不至于什么都没法看出来,兄若搞定,教点儿给偶哦。
作者:
小月刀锋 时间: 2003-9-22 21:17
光荣被首屠气晕了
乱改我的EXE文件,砸我饭碗,可恨,所以,现在PK版都加密了!
不过PK版的电脑似乎还会统筹,不会胡乱征兵,所以很少出现粮草问题。
不过,这样的话,电脑就被弱化了,兵不多啊!
作者:
旖旎从风 时间: 2003-9-22 22:15
还是会有这个问题的,偶现在玩的剧本就是电脑粮食没了,或者说快没了吧.
因为偶全国只设了一个城有常驻商人...
如果能改,有改总比没改好.
作者:
shunet 时间: 2003-9-22 22:48
存档和磨练剧本是做过一些简单编码,存档中甚至把某些区段做了一定的偏移,区段的标记行同虚设.还谈不上是加密.如果执行文件中的数据段真正做了某种加密是很难弄的,如果只是简单编码还有点可能.不过也不容易,毕竟这个文件是固定不变的,不象存档可以随意改变,而且每次测试需要启动一次游戏,这个很费劲的.
偶是没那精力搞它了,不过可能的话可以协助你.
可以把原版的部分数据组织方式发给我瞧瞧.
作者:
旖旎从风 时间: 2003-9-22 22:57
数据组织方式......偶,偶不知道.如果兄是说原版中是如何改的的话,偶提供首屠的帖子:
http://www.xycq.net/forum/index.php?showtopic=619
上面部分说的是剧本修改,从中间开始说的是EXE文件的修改地址,我用红色字标出了这里字样.
作者:
shunet 时间: 2003-9-22 23:15
我有原版1.15
粮食上限
应该是找68 40 42 0f 00
我找不到,你有更老版本的执行文件吗?
作者:
旖旎从风 时间: 2003-9-22 23:46
是找40 42 0F 00,第一个68不要,这是1000000的数值,我找到了,共有五十来个地方,我怀疑是每个军团的上限地址.
我也是115版本的,就是这么找到的.
但在PK版里什么都找不到,同样的地址是其它东西,而且是原版两个地址同值,而这里就变了,不过也很正常,文件变大了一些呢.
不过觉得是加强了,光荣应该没有改整个文件的执行方式,我估计是一方面它调整了一些AI值,一方面加密了.
光荣的AI其实是第一版就可以做到这样的,肯定是这样!然后他故意做低了,让我们玩过后再调高,挣钱!
作者:
首席屠宰官 时间: 2003-9-22 23:48
原来一共有31个100万
作者:
shunet 时间: 2003-9-22 23:59
我下载了首屠的文件,其中
文件中的地址 长度
.text 00001000 1ad000
.rdata 001ae000 043000
.data 001f1000 022000
.rsrc 00213000 013000
看看帖子说的修改的数据地址居然都在.text段(代码段),这个完全靠碰啊,大量的是修改的即时数,晕...
作者:
kyokofans 时间: 2003-9-23 00:00
原帖由shunet于2003-09-22, 23:15:44发表
我有原版1.15
粮食上限
应该是找68 40 42 0f 00
我找不到,你有更老版本的执行文件吗?
我剛剛找了一下
找到了31個呢...
作者:
旖旎从风 时间: 2003-9-23 00:18
我想首屠可能当时就是搜数值来做的吧?
如何确定代码段?有没有什么办法来判断代码段中有哪些地方可能是无用的?再退一步,有没有办法判断去碰时应该怎么样一段一段地碰?
如果兄能告之,或者告诉我一个软件,我会去努力做一下这个工作,就算是我们大家做了无用功,若能帮上一点儿也是好的啊。
作者:
shunet 时间: 2003-9-23 00:35
如果你对汇编有点了解的话,应该知道很多指令的代码长度是变长的,比如x=30这样的语句,30这个即时数值会体现在代码段中一个指令加一个操作数,那个是很没规律的,你要是想反汇编的话,很痛苦的.一般来将即时数据是应该不会去加密的,那么这些数据有可能存在加密的数据段.比如他分配了y的数据是30,语句写做x=y,如果加密的话y的数据为某个不等于30的值,语句是x=f(y).
象你这样的修改方式全靠碰,非常难的啊
一般代码段的修改多是加点代码,象你这样的我头回见,比如游戏网做的D版游戏,就加了游侠网的启动界面.代码插在空余区域.
作者:
千山我独行 时间: 2003-9-23 07:23
原帖由shunet于2003-09-23, 00:35:53发表
如果你对汇编有点了解的话,应该知道很多指令的代码长度是变长的,比如x=30这样的语句,30这个即时数值会体现在代码段中一个指令加一个操作数,那个是很没规律的,你要是想反汇编的话,很痛苦的.一般来将即时数据是应该不会去加密的,那么这些数据有可能存在加密的数据段.比如他分配了y的数据是30,语句写做x=y,如果加密的话y的数据为某个不等于30的值,语句是x=f(y).
象你这样的修改方式全靠碰,非常难的啊
一般代码段的修改多是加点代码,象你这样的我头回见,比如游戏网做的D版游戏,就加了游侠网的启动界面.代码插在空余区域.
那些不是碰的,是别人对exe文件反汇编后找出的,现在的执行文件跟原来的完全不一样了,根本都找不到那些数了
而且那几个高手现在找不到了。
作者:
shunet 时间: 2003-9-23 09:42
呵呵,那就难怪了,程序变化是很正常的
反汇编是正路,但还是需要花费大量的时间和精力的
偶读书的时候还比较喜欢搞那个,现在不可能有那么大精力弄那个了
作者:
xuwenq 时间: 2008-5-7 15:43
现在不是可以脱壳了么,应该可以改了吧
欢迎光临 轩辕春秋文化论坛 (http://xycq.org.cn/forum/) |
Powered by Discuz! 5.0.0 |