飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 12459|回复: 0
打印 上一主题 下一主题

阻止崩溃包。

[复制链接]

200

主题

203

帖子

984

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
984
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。2 y" [: j! |( G2 w( S
4 D; G! s$ q" M8 x4 x
首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。3 \7 R0 G$ I: T+ i3 P$ ?

+ P0 o0 u! Q$ p* A为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。. x/ }9 X' y1 p; C" z% w& c

( X: t8 J  Q# a+ {3 T2 fEquipament崩溃:
5 E; w: D1 Q/ z, o* M
% }5 S3 R/ j+ O9 O7 V6 E2 N7 K扰流板:
& d& p) Y/ [; C! a9 s  K$ q
' g- t, {& ^5 j$ l; L! @# Z- ?搜索:
  p( e1 d' s' N0 v2 }* a% X9 s  o; j/ h* g$ p4 j
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )
) _- F' V3 v% q; m3 n# p
       return;
后添加:( a# \5 S# t9 A+ v

5 n( z5 j% r* K邮编:
        CUser* pUser =g_UserMng.GetUser( dpidCache, dpidUser );
        //Crash packet
        if ( nPart > 30 || dwData< 0 )       {
                       Error("CDPSrvr::OnDoUseItem : Crash Try -> [Player ID: %07d], [Player Name:%s], [Packet used: %d,%d,%d]",
                                              pUser->m_idPlayer,pUser->GetName(), dwData, objid, nPart );
               return;

2 \+ w( l% [' O
    }
并第一个评论
7 B5 W6 H' `8 G$ O, l邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );; b% a- ?2 h3 t- k* q
你看在我的代码。3 _: Q; F; Y' W( K+ b
/ `) [; r& w( J7 o

4 `  d4 x; a/ R2 j( M5 P" t7 g/ G
3 l# w- g8 U4 J# N/ t购买崩溃:& @( p1 a. O( q
" V8 a) ]( H% a0 R& q, ]. m' ]& K# G
扰流板:+ T7 b; m' u/ L5 `
: C. |1 J; }3 p
你需要做两次,正常购买和红筹股另一个人购买
搜索:3 X- m, K6 j" ^4 s3 v

8 A+ r2 [% c$ O; Q. F9 w邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )

+ S" h$ G+ J& Z  g, o1 a
       return;
后添加:
' s5 l0 ]& z' o8 _" K; r  l9 S8 D+ U0 s3 I( r5 s- l
邮编:
        CUser* pUser   = g_UserMng.GetUser( dpidCache, dpidUser );
        //CRASH
        if( cTab > 3 || cTab <0 || nId < 0 || nNum <= 0 || nNum > 9999 || dwItemId < 0 ) {
               Error("CDPSrvr::OnBuyItem : Crash Try -> [Player ID: %07d], [Player Name:%s], [Packet used: %d,%d,%d,%d]",
                                              pUser->m_idPlayer,pUser->GetName(), cTab, nId, nNum, dwItemId );
               return;
3 f9 z0 Q% w# u1 ?2 s! y
    }
并第一个评论
! V' c! r' U; Q" B3 Z% f邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
% P0 y4 ^  q3 P) X# g5 r) b. {
你看在我的代码。
掌上崩溃:6 |7 Z3 \( W& I) `, _7 n, Z9 _% e9 A

6 ^0 |" ^4 Z; ~, {3 W3 ], o扰流板:* |. ]8 Z4 z) z. g
3 u: x* ]/ H4 M7 V5 ~
搜索:
7 Q' a6 A; Q5 P, T
& T: K' y& R$ O9 a1 g/ g# {8 ^9 s邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )
7 S  }& T: ^+ J
           return;
后添加:3 y' R! j' a+ v# q  }" j. C

7 g1 C/ P) n3 J5 v3 M; G邮编:
               //DUPE CODE               if( nNum <= 0 ) {                       Error( "CDPSrvr::OnMoveItemOnPocket : Dupe Try -> [Player ID: %07d], [Player Name: %s], [Packet used: %d,%d,%d,%d]",                                              pUser->m_idPlayer, pUser->GetName(), nPocket1, nItem, nNum, nPocket2 );                       return;               }                //CRASH               if( nItem < 0 || nPocket2 > 2 || nPocket1 < -1 || nPocket1 > 52 ) {                       Error( "CDPSrvr::OnMoveItemOnPocket : Crash Try -> [Player ID: %07d], [Player Name: %s], [Packet used: %d,%d,%d,%d]",                                              pUser->m_idPlayer, pUser->GetName(), nPocket1, nItem, nNum, nPocket2 );                       return;               }+ }8 ^8 A. O. @) m
对不起,英语错误,因为我brazillian。
$ L6 L3 R; Q/ A3 F6 I1 O/ q哎呀,我喜欢,如果有人traslate德语。( i0 ]  x: Z. `; N% x& |0 R
kkthxbye。
% b+ Y0 X  Y9 {7 s  q
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|飞飞世界技术论坛  

GMT+8, 2024-4-28 20:22 , Processed in 0.103652 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表