【解读源码】之二,怪是怎么刷的?小王刷在哪?

   火.. [複製鏈接]
zczczcle 發表於 2016-1-12 13:11:05 | 顯示全部樓層 |閲讀模式
本帖最后由 zczczcle 于 2016-2-1 12:51 编辑 3 S/ x/ N/ ^9 ]  g7 R' [+ _
+ E' E6 i9 `6 A* E6 U" x5 [
首先,这并不能预测下一个boss具体刷在哪,不过你能通过我的解读知道,boss是怎么个刷法。2 g8 S4 @: m9 e9 v0 K9 f8 z
其次,如果你有挂(付费的每天更新的那种),或者自己会解封包的话,你就能知道附近是否出现小boss了,在附近的话你还能知道他的位置。! T0 Y( r' ^  i# k) M! X! Z
kuqitt 这位大哥提到打开MonsterList文件第一个数字是0是乱刷,但是后来又不确定很疑惑,原因就在于那个0,1,2,3,4和乱刷与否并无关系,或许是凑巧。
2 b2 F3 o7 T4 g7 l3 ]
6 P5 L9 H  V2 _; Z! C部分选取代码,稍后解读:
3 \% q3 M% O4 n! D0 Y  H' r WORD                            wNowTeamId = 0;
9 Q8 y2 ], n* l, j% s2 l) m1 i3 Q3 e$ n5 h  k- {3 o# _- y/ w
  _snprintf( szFileName, 256-1, "%s//Monster//MonsterList",g_pBase->GetObjectFilePath() );& X$ R8 e# O1 T9 d9 V
  szFileName[256-1] = '\0';
! K& ?  ], a, N  N/ a  _snprintf( szMapLog, MAX_MEMO_MSG_LEN-1, "_%d.txt", (int)m_pBase->GetMapId() ); 3 _/ l( h. M, J" `$ A' c
  szMapLog[MAX_MEMO_MSG_LEN-1] = '\0';
4 W  P' w) O5 p- L: j  strcat( szFileName, szMapLog );
0 r' Q  h7 s* d7 X  CInStream                       MonsterInfo( szFileName );   
8 o+ h$ G+ |  b! T: _0 b1 D  if ( MonsterInfo.fail() || MonsterInfo.GetFileSize() == 0 )
. ?2 h) l% p) t: o5 W$ O! W1 ^  {
, N/ d" s! L" A8 x- {9 t8 ]    _snprintf( szMapLog, MAX_MEMO_MSG_LEN-1, "***** The Map(%d) Have No Monsters ! *****", GetMapId() );2 [5 @1 x: d! W0 G- ]' y
    szMapLog[MAX_MEMO_MSG_LEN-1] = '\0';
5 z! t' M9 f, f% A" p& z    AddMemoMsg(szMapLog);0 s7 T' D9 h" `/ |* X. `" V& j% \
    return true;" x9 f. K( a: a* U; B# Z5 M

+ x8 l8 M' D  V: p& i$ v9 T
遊客,如果您要查看本帖隱藏內容請回覆
2 b7 U4 j" n# V) t! q1 M
6 A# M* I# i7 ~/ _# [: \5 G1 C
for( i = 0; i < iColNum; i++ )( c- c& l  f, X# b* r) B( R3 O; N
  {
7 F* b: F  L4 {& R0 X$ Y! a    MonsterInfo >> dwTeamId . W$ j4 [# I. E2 K( [& ?4 v3 g4 \; p
                >> dwMonsterId 5 `: x6 B; y9 j, B6 D
                >> dwX
/ Q! J4 Z4 u+ z3 W- t/ h                >> dwY 7 V) {2 u) S* Q! o1 L* e
                >> dwCount;
# a7 F/ G2 j+ Y$ T, d( X" \    if( wNowTeamId < dwTeamId )
$ U* J  O+ O0 O) k" w) X    {
9 H, o! i- R5 i0 f' |0 V+ O      wNowTeamId = dwTeamId;. B, M/ I) Y) w' J6 E0 I7 M
    }
6 \) M' r$ Z) B' }9 h  G
$ \; Y2 {6 n4 G/ {
遊客,如果您要查看本帖隱藏內容請回覆
! k/ A7 _6 L, i% n  n
; L# A, y+ \2 O" ?5 P
      for( j = 0; j < dwCount; j++ )4 b: m# S' [  l
      {; n8 v/ \  N" x8 u, Z1 i9 b4 A; f
        if( pBaseMonster->GetSpeed() )' T8 h1 }* T6 Z
        {: e; \! B3 @: }+ k: I
          for( int z = 0; z < 10; z++ )7 f9 @$ n% p; R% J2 L* _6 I
          {
0 a, V) [) _, \% |2 q1 `            dwRandX = gf_GetRandom( 14 ) - gf_GetRandom( 14 );! N/ U: L# g5 |0 ]- H
            dwRandY = gf_GetRandom( 14 ) - gf_GetRandom( 14 );
3 x- j$ o4 `5 \+ K! X            if( !( GetTileFlag( dwX + dwRandX, dwY + dwRandY ) & TILE_ALLOCCULDE ) )        break;
! H- k4 \! l4 L9 L3 @* N7 `# }7 n5 A            else if( z == 9 ): b" ?+ y4 C% g) m: s8 o* ]
            {* V8 p: S9 \! A/ d/ W) b
              dwRandX = -1 + gf_GetRandom( 2 );
0 U2 [  `8 v. {0 n8 ]8 _- y              dwRandY = -1 + gf_GetRandom( 2 );
% J; i  J; y, L1 r5 \' L            }
5 M. @  j1 i0 T9 A) q* Q          }
- Z2 B. B6 Y' I" T# Q1 [9 ^        }9 I4 s- e* Z( X. z9 X3 a; _! I
        else# l$ f* M0 ~2 r6 C3 R
        {
$ i! L2 ?% h, T: |( J" t: C          dwRandX = dwRandY = 0;0 U% i  {7 G% v0 V7 K
        }0 y/ J/ u9 ^, u
3 u" y8 \" J* g. b
遊客,如果您要查看本帖隱藏內容請回覆
. w* \. N0 I0 K: {  f9 g/ {

  D1 ]6 T5 R6 w  o. A: ~所以我的初步结论是:
2 j! ^/ ^: Q9 ^! T* I* N# j

* c3 ^- s* f4 R7 Y  |' ?9 A- y
遊客,如果您要查看本帖隱藏內容請回覆

點評

这么好的帖子,请大家水友手下留情,勿灌水。  發表於 2016-1-12 16:00

評分

參與人數 1金币 +200 收起 理由
叛逆不羁 + 200 很给力!无双源码解读第一人,期待后续

查看全部評分

a26839729 發表於 2021-10-13 10:36:37 | 顯示全部樓層
最近玩了一下黔马,发现现在的传送规则和几年前不一样,他们对传送源码做了更改,现在黔马传送和刷小王都更均匀合理了。
回覆

使用道具 舉報

 樓主| zczczcle 發表於 2021-5-10 08:37:51 | 顯示全部樓層
最近玩了一下黔马,发现现在的传送规则和几年前不一样,他们对传送源码做了更改,现在黔马传送和刷小王都更均匀合理了。
回覆

使用道具 舉報

15820046275 發表於 2021-8-28 13:39:30 | 顯示全部樓層
弟弟顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
回覆

使用道具 舉報

79040698 發表於 2016-1-12 13:40:09 | 顯示全部樓層
11111111111111111111111
回覆

使用道具 舉報

leet 發表於 2016-1-12 15:06:44 | 顯示全部樓層
ffffffffffffffffffffff
回覆

使用道具 舉報

叛逆不羁 發表於 2016-1-12 16:00:54 | 顯示全部樓層
这么好的帖子,请大家水友手下留情,勿灌水。
回覆

使用道具 舉報

Sun杰 發表於 2016-1-12 16:02:19 來自手機 | 顯示全部樓層
怎么样成会员
回覆

使用道具 舉報

aohuang01 發表於 2016-1-12 16:19:35 | 顯示全部樓層
支持一下,很强大哦
回覆

使用道具 舉報

EricHan 發表於 2016-1-12 17:17:39 來自手機 | 顯示全部樓層
这是技术贴啊  支持一下
回覆

使用道具 舉報

rainbow 發表於 2016-1-12 17:46:13 | 顯示全部樓層
多多学习多多进步
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:admin@discuz.vip

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版發帖QQ客服返回頂部