发新话题
打印

[魔力私服分享] gmsv内部函数研究号召帖

gmsv内部函数研究号召帖

一个人看gmsv看得好晕,还好gmsv内部各个函数的命名都是有规则和规范的,但是我一个人的力量毕竟很小
6 @) b' R8 n: N% o5 L5 y0 w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 N- h% i! G! j0 w" l6 d
在此号召各位稍微有点汇编基础或者没有汇编基础又愿意学习汇编或者愿意深入了解gmsv内部的四面八方的研究同仁
4 X3 Z: j' Y: S—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com; Q4 V8 ?- ?% C
我们一起来研究gmsv内部的函数吧!只要了解好了gmsv内部函数的运行机制,即入口参数,出口参数等等诸多内容以后妖城在线论坛) I* ?6 ^& m' J" N* l* z8 H

7 \. R0 W) g" X0 V% |& Q我们就有可能修改gmsv来创造出更好的东西!大家一起研究的话我觉得进步会快很多!
+ G. L8 s8 g% p) _bbs.mocwww.com—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" B+ C9 `! z, O# b. Q
为抛砖引玉,我从IDA里面复制出一个示范的函数分析。期待大家无私奉献!!!妖城在线论坛3 v3 Y( N$ S/ G# [/ V; d7 Y

; w- k: [) h3 K妖城在线论坛同时希望将此贴置顶?……& Z* w4 W$ x" z5 j8 m# }5 Y& {

9 N1 X$ S, }; B9 h, A7 p注:需使用到 反汇编工具IDA—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 I) |$ T# B8 d2 ?
妖城在线论坛( r: @3 B9 F$ k4 t# n$ B, _
.text:08074098 ; =============== S U B R O U T I N E =======================================9 }7 C9 q* V& M) j3 B( C( y3 M
.text:08074098
- ~+ W+ D: q$ T( y  G& N8 y妖城在线论坛.text:08074098 ; Attributes: bp-based frame
. t; t( E& j# l4 l/ {1 _  S魔力私服,最新魔力宝贝私服技术交流.text:08074098魔力私服,最新魔力宝贝私服技术交流* Z: c" W* a( G# E5 @# n
.text:08074098                 public CHAR_GetLevelExp
5 \- X0 ^$ c$ w  c- Y, ~0 o# N—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 CHAR_GetLevelExp proc near    ; CODE XREF: CHAR_LevelUpCheck+42p5 o2 U2 \+ S( t$ }5 ~
.text:08074098                               ; CHAR_make_CP_String+517p
+ S$ P. R2 `1 f/ i( v- u3 ~魔力私服,最新魔力宝贝私服技术交流.text:08074098                               ; CHAR_make_KP_String+5AAp
- g8 t% Y# Z8 U+ q3 F1 h魔力私服,最新魔力宝贝私服技术交流.text:08074098                               ; PET_createPetFromCharaIndex+1BEp—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート/ f* `+ O4 s( z7 q$ C# Y& G
.text:08074098                               ; BATTLE_AttackEnergyDrain+1E1p
; `$ z) x+ W3 V6 l3 c* g  U—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098                               ;这里是交叉参考,就是引用该函数的"上级"函数,暂时可以不用管,但是可以从这上面的函数看到入口参数
- N0 R7 ?% ]$ w8 \—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098 arg_0           = dword ptr  8
: d1 G1 V! K* S& Q—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074098
, }/ s& S( ^8 C+ O" Y) J妖城在线论坛.text:08074098                 push    ebp   ; 函数功能:
2 d+ D. B- I5 z2 ?0 S' {魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:08074098                               ; 取得人物或者宠物下一级的升级经验值bbs.mocwww.com4 s9 w+ u$ \) s. \8 U' ~
.text:08074098                               ; 入口参数:等级值魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表# p& ~' E( h$ j8 @4 \
.text:08074098                               ; 出口参数:eax即下一级的升级经验值
* Q, b5 D! d' H7 k4 o' X—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:08074099                 mov     ebp, esp
. u7 s1 n& ^4 _- Y5 wbbs.mocwww.com.text:0807409B                 mov     edx, [ebp+arg_0] ; 将人物或者宠物的等级放到edx里
+ `- v  h& q. P0 Z.text:0807409E                 cmp     edx, 78h ; 与78h即120比较魔力私服,最新魔力宝贝私服技术交流, h3 ]% h+ _( U7 g: [& n8 A
.text:080740A1                 jbe     short loc_80740C0 ; 小于等于则跳转
1 z) X6 w# Z# a- a6 ebbs.mocwww.com.text:080740A3                 cmp     edx, 82h ; 与82h即130比较
3 f: A: Y2 V- [; I/ ?! G2 K4 T3 abbs.mocwww.com.text:080740A9                 jg      short loc_80740B8 ; 大于则跳转
7 s' d, D& A$ o8 ?( k魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740AB                 mov     eax, edx ; 否则将等级值放入eax
) V6 `: f9 }  ~5 r7 m2 L$ V$ y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート.text:080740AD                 imul    eax, edx ; 2次方魔力私服,最新魔力宝贝私服技术交流# _, d) x- d0 u
.text:080740B0                 imul    eax, edx ; 3次方
9 K  a- g: ^! Z魔力私服,最新魔力宝贝私服技术交流.text:080740B3                 imul    eax, edx ; 存放经验值的eax = 等级的4次方
3 ]% {0 U0 W0 H2 ebbs.mocwww.com.text:080740B6—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート- s3 Q1 @4 _3 b, u# g
.text:080740B6 locret_80740B6:               ; CODE XREF: CHAR_GetLevelExp+25j妖城在线论坛+ ]2 r9 m$ U; x5 e' f+ f2 i
.text:080740B6                               ; CHAR_GetLevelExp+2Fjbbs.mocwww.com. @( y' w# m4 S2 U) I/ o
.text:080740B6                 leave2 J% M1 ]1 t$ \8 C. G7 _9 p  t
.text:080740B7                 retn
: C5 b: P$ x! p: T- N& w6 f" S妖城在线论坛.text:080740B8 ; ---------------------------------------------------------------------------魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表* a8 j' J3 n$ C
.text:080740B8
5 j% f8 @% T: R2 \) h, C! g- U# ^. Bbbs.mocwww.com.text:080740B8 loc_80740B8:                  ; CODE XREF: CHAR_GetLevelExp+11j
5 V3 n" t0 T# G0 S! i7 K- \5 d" [魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740B8                 mov     eax, 0FFFFFFFFh ; 大于130级则下一级升级经验为 -19 a$ m3 O* J$ h; F
.text:080740B8                               ; 游戏内看到的是一个 - 号
+ M. Z$ |8 ~/ d1 z" c3 v) T.text:080740BD                 jmp     short locret_80740B6 ; 函数结束
/ O+ W8 `  r$ [+ e& y; G.text:080740BD ; ---------------------------------------------------------------------------bbs.mocwww.com+ w/ A  n" S0 l, E" B; m; R
.text:080740BF                 align 10h
# b* l$ ~( ^- e- i- A! ~5 h魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740C0
* _+ \  Y! F5 G% O.text:080740C0 loc_80740C0:                  ; CODE XREF: CHAR_GetLevelExp+9j
" M+ R( x3 f5 L0 U$ bbbs.mocwww.com.text:080740C0                 mov     eax, dword ptr LevelUpTbl[edx*4] ; 小于等于120级则查验经验表
' W5 w5 H( b  h4 i' r, @1 Q' m- a妖城在线论坛.text:080740C0                               ; 即LevelUpTbl
& t2 k: J8 ?2 `( Y.text:080740C7                 jmp     short locret_80740B6 ; 函数结束妖城在线论坛& p. K8 A, D: s. u* H  T( L: p
.text:080740C7 CHAR_GetLevelExp endp; }) K6 c& z' b( u, V9 w  |
.text:080740C7
/ f0 e  |8 {" ?5 L5 x魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表.text:080740C7 ; ---------------------------------------------------------------------------bbs.mocwww.com2 ]3 t- I0 t3 D

$ E4 H: Q7 t6 p6 z1 G9 @  e& C1 U9 @8 v—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート
4 t  T. m$ Z9 F0 q6 d魔力私服,最新魔力宝贝私服技术交流
1 q& l5 t; q8 f* j& mbbs.mocwww.com[ 本帖最后由 猪神的黄昏 于 2010-3-23 22:59 编辑 ]

TOP

板凳~ 总算有人为此抛砖引玉了。

TOP

我到是想学学汇编和深入了解一下GMSV * P  `2 N: h& i3 v! |. c
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表1 m% J4 V6 F* k
但你得教教我汇编先

TOP

愿意学是好的,只是高人们都不愿赐教啊!

TOP

我想学 都不知道从何下手。
?
?
?
?
***  “ 那 一 寂 落 、退 却 青 春 的 浮 华 。”
?
?
?
?

TOP

飞飞派开始收学员:500一位
出售大量自制原创及仿官服任务,一站式制作免去另购地图的烦恼。联系QQ:99673452

TOP

楼主加油啊 也祝愿楼主早日把功能函数研究出来 分篇成册造福大家!

TOP

gmsv函数,我也想学学。

TOP

发新话题