飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1070

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1070
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。
* k# o+ d3 b/ h# L% N' [7 d
( N7 t6 R$ m# W首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。- f8 \+ j) ?  ]4 t2 c

) i' r, \1 D8 s0 w为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。+ B- T; W6 y6 O, }5 o$ ~* K( H
$ r% a/ M2 {( Y+ ~9 }
Equipament崩溃:
: j3 }" v. i5 y4 x4 p% N/ q0 j" H; A" ~) @/ H
扰流板:  @; T2 U8 c( n8 l5 v2 o/ r+ e2 j

; U' _9 R. K9 [1 ?搜索:
* l( g* W6 E9 o: z* l. {+ D1 I  R( u' m9 }7 ?$ p
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )
/ i  \( ^- w7 j% |. O6 M% Z( K: k
       return;
后添加:
+ m8 q+ H( A7 P# g* J" ]
  s6 _' I0 [9 ?( R邮编:
        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;
, ~$ y5 ?3 N' o2 r! p
    }
并第一个评论3 A; h: S! N' T2 P
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );$ j, E/ `* K9 ]$ @5 a. ~6 A
你看在我的代码。+ ]3 z# p7 D4 t

  n, o3 Z( j7 T% ]3 A( @0 Z" Q- X4 Z
4 F. X2 S; S0 J% r7 K, s! v! ]# Y
购买崩溃:
; p9 ~5 ~7 A7 a( [: H5 c" E; f" B5 f3 f; _: F$ C# w  _
扰流板:0 {* f3 ]( M, k9 s! a

$ G- B) |! o5 j/ W! C5 U' v你需要做两次,正常购买和红筹股另一个人购买
搜索:/ H. {: _, E$ y
9 i6 p- U' g2 m8 k
邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )

; u2 V# z1 }3 @
       return;
后添加:- \4 O- F  t2 J
7 O7 P/ Z# e8 y
邮编:
        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;
+ E/ ?* W& v) j. T8 L2 }# z3 I
    }
并第一个评论
& k4 V: V, R: ]7 d邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );) v: z$ U: m: {7 S+ M8 m0 z: |
你看在我的代码。
掌上崩溃:
( e) X6 a" M0 m% N% X. T1 x
! U# r7 ?6 d! @* H: D7 f扰流板:; X0 e9 @% ]- n2 Q( q* B1 b$ L
" m* _! b8 b( E. T3 D
搜索:5 T/ i, X+ t  i  R9 c* k0 C
1 ^, S1 Z+ H" m2 Z
邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )

  D2 z6 t+ U, j% |$ ^
           return;
后添加:
& H8 C6 {- k8 A& r% U; [) c$ ~, c: s4 @3 m" @
邮编:
               //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;               }
% R* o, L- g4 V% R- }
对不起,英语错误,因为我brazillian。, E1 x' }7 _2 V  r: d  X: q
哎呀,我喜欢,如果有人traslate德语。) R; n1 m5 B- W3 g3 S; W
kkthxbye。
! L, ]  [! r$ s4 b( ^7 Z
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-5 03:49 , Processed in 0.081239 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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