|
飞飞 妖使
  
- UID
- 4173
- 精华
- 6
- 积分
- 1063
- 威望
- 1 度
- 性别
- 男
|
阁楼
大 中
小 发表于 2009-3-15 22:10 只看该作者
   
技能经验和调教技能的修改(傻瓜版)
大家好,有一段时间没上妖城了,不知道妖哥把高共弄到哪里去了  ,闷 魔力私服,最新魔力宝贝私服技术交流! c! f- J) I* `, i- e% P$ q; ?
先把我原来发的那个升级和技能的经验倍数修改贴放这里 http://bbs.mocwww.com/thread-17444-1-1.htmlbbs.mocwww.com6 r+ e+ A& x& X2 I1 s
bbs.mocwww.com5 n$ @+ {- m3 J# w! N/ E
大家貌似还在讨论技能经验修改的问题。。。这个问题其实不是问题,因为修改这个东西只涉及到一个函数,之前完美汉化的教程说得很清楚,貌似某妖也发过相当于傻瓜的教程,只是帖子沉了貌似。。。
1 B1 i+ k2 O: S) o; s4 B魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表bbs.mocwww.com$ L7 p4 Z4 T" C1 z; p" i- [2 s
切入正题,既然大家要知道是怎么改的,那我就说明白点吧,只是在完美汉化的基础上。。。这是完美的帖子: ) i2 C$ u' ~. v9 f) D
http://bbs.mocwww.com/viewthread.php?tid=14695&highlight=%2B%CD%EA%C3%C0%BA%BA%BB%AF
' f7 U7 s" s- {! n妖城在线论坛& K8 W/ |" E' a/ M
我想大家看完了以后会有以下的几个问题:
2 d. ~$ s- b1 g1 q7 H( v, M. t9 Y妖城在线论坛1.技能经验的倍数。 魔力私服,最新魔力宝贝私服技术交流2 e2 b, Q0 q- f! F
引用:光是靠程序的夹缝空间是不够的,要凑够6个机器码位置我决定改变程序指令位置来取消某些跳转达到要求, 把指令fadd st, st提前看来想个好主意。
0 E: p6 C9 `& b0 ^魔力私服,最新魔力宝贝私服技术交流这里的提前,参见图;(注:完美说的20倍的机器码不能实现20倍,按我说的那个) 妖城在线论坛9 Y3 o0 [: A. h/ q
至于想彻底傻瓜的,这个函数的地址是:0xC2228 到 0xC2341,用FlexHEX复制相应段,粘贴到你的GMSV的相应段就行了。 UE不能复制粘贴16进制,注意。
, g7 ]3 _4 O! s5 o& o" L- P. c0 z3 S* Dbbs.mocwww.com2.调教的修改,这个要稍微复杂一些:
; @- E9 u5 _) M$ n& q- M- f我用的是完美汉化的第一种修改方法。
6 n' X) Y; g: T, C/ r8 K7 M妖城在线论坛引用:
( I' r4 E- y) g' x. W/ s魔力私服,最新魔力宝贝私服技术交流 所以必不可少的语句包括cmp edx,9这个比较,还要有比较结果的处理jl源程序的地址,这两个语句下来共有5个机器码消耗掉,还剩下2个机器码,经过慎重考虑,我决定给这两个机器码添做mov edx,eax。此时,eax存放着techid和最高等级的商,所以我想它的值应该在710左右,也就是说,这种改法最高能使7100级的宠物忠诚100,但是我想7100级很少有人会超过,应该没什么问题的。修改后程序如下: —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 r! g3 @1 ]9 B; c% T0 G3 d l
mov edx, 0Ah //目前技能开放的最高等级 —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ R$ v" i7 u4 I# A
mov eax, ebx //将ebx中teach的id【7100-7109】送至eax bbs.mocwww.com- r9 f2 z+ C' B6 |8 }1 j/ h
mov ecx, edx //为除数赋值 6 ~" |, X! ?2 A0 N2 V) [
cdq //被除数合成edx:eax —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート H! L) x" E: r" X+ n
idiv ecx //相除,商存放在eax,余数【即技能等级-1】存放在edx —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" P3 [* v/ Z+ T/ \2 Y
魔力私服,最新魔力宝贝私服技术交流: t( {- u5 q6 K o) b+ ~
cmp edx,9
: ^0 G2 w- j7 N魔力私服,最新魔力宝贝私服技术交流 jl 公式bbs.mocwww.com- X; d Y( O( l+ T' Y: M! {! f k
mov edx,eax—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート' {5 s) O0 k; ~3 |/ L# y
1 s* b$ s4 G& v7 ~& U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート 公式: bbs.mocwww.com/ e" {# q M: W- V) b4 g& ]
lea edx, [edx+edx*4+5] //5倍【技能等级】
& g. w) P) S# p3 p3 c: S# X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート lea edx, [edx+edx*4] //25倍【技能等级】魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 G4 r! x+ E" A, f: v; K
lea edx, [edx+edx*4] //125倍【技能等级】妖城在线论坛, y; U" X/ E9 m# Y8 l- B- {
lea eax, ds:0[edx*8] //1000倍【技能等级】
3 a' V6 |4 |. A魔力私服,最新魔力宝贝私服技术交流 cdq —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 {1 K* z( T/ @
mov ecx, [ebp+arg_4] bbs.mocwww.com4 b+ U* N4 r( M4 M l" F8 W) J
idiv dword ptr [ecx+2Ch] 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表/ I, \+ h0 L3 d! Y! x6 l M
add esp, 10h bbs.mocwww.com* x4 |7 a; {. E; i
cmp eax, 3Bh 妖城在线论坛' O+ e! R* Y1 C% ]* p2 K5 L# O7 U
jg short loc_806F56F 魔力私服,最新魔力宝贝私服技术交流7 ~! L7 A/ ^2 J- }! w! e' s
8 T3 _# L5 @) s8 @. g
这里主要涉及到一个问题:那就是在移动代码的时候中间的10多个call命令的指向地址的移动问题,这个问题我也郁闷一下,根据自己的推算来改,结果错得一塌糊涂,一半都跳转错了,后来用IDA查看,再一个一个的修改的。
# [1 v3 K K/ Y4 q+ ]我已经记不清楚到底哪个CALL改怎么改,加1还是减1。。。自己研究下吧?先不改CALL,把需要插入语句之前和之后的整段代码都移动,把不需要的语句覆盖就OK。不用我说了吧,复制粘贴。然后用IDA查看,对比这原版没改过的gmsv,一个一个call语句的修改。注意是修改指向地址。
3 \2 x+ X$ B6 Q: ~6 t, \7 o魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com! g! I/ ?- d; x! D4 S
可能看到这里你已经索然寡味,急切想要知道变成傻瓜的无敌方法了,好吧,地址:0x2743C 到 0x2758B。
9 O7 L% A0 G( S( X" ?" ^
9 b, `" q8 j. Q) x& i! Hbbs.mocwww.com好了,到这里,我感觉自己说得不是太清楚,暂且当这个帖子是傻瓜教程好了。
" i2 q# j' V& @" q+ @: e, dFlexHEX自己网上下载吧,多得很,然后自己琢磨一下,别刚安装上就跑来问这个玩意怎么用。
附件
-
技能经验修改前的程序结构.JPG
(45.45 KB)
-
2009-3-15 22:10
-
技能经验修改后的程序结构.JPG
(44.22 KB)
-
2009-3-15 22:10
-
调教修改前.JPG
(55.29 KB)
-
2009-3-15 22:10
-
调教修改后.JPG
(58.72 KB)
-
2009-3-15 22:10
|