飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1058

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1058
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。) Z* ]* m. A1 J8 t3 @9 S
; H, C+ J( g3 n
首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。
8 H9 {% Y  W5 }$ {4 Z% R
- A6 D5 a6 T4 F为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。
4 n% w* t! I9 N! o  D0 B
) V: Z8 a* U# M6 `2 U/ |1 kEquipament崩溃:
0 U' b- y+ p, z6 V9 F" N3 a% P% [9 k) S; w( j  l0 z
扰流板:/ T# I* c5 O4 i6 i7 P* V' K7 n4 z

# Z' y5 ?" `, d搜索:
$ n5 C- s( S& L0 ^2 a# e# j2 {- Q- R( ~2 q) ^
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )

1 h& [3 l; f; f( F' r
       return;
后添加:
, D# u; P* ?2 w- q3 v* B
" }* @! f: E) P. @+ m邮编:
        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;

' E) s7 L* @2 i; D
    }
并第一个评论
) S, a7 a$ |! x+ S8 s( o1 U1 y邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );1 Y& m0 Z+ x  s$ |
你看在我的代码。  K* T0 f5 @* _& {
2 w( K6 E5 ?& Y
. d  c; V/ M, X

4 k+ k, f0 c. @4 q" g8 x/ I购买崩溃:' p' M! F7 I% p. @0 _6 O) ?0 M

( m9 n, d3 y2 R3 p) _扰流板:
; c) u% a- ~( E1 i* |6 @5 P( J+ q- U+ Q' y3 J4 n
你需要做两次,正常购买和红筹股另一个人购买
搜索:
5 q+ |- _3 R, R3 p, U1 u. |" F
2 Q. n7 G% }6 b邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )
7 q. l. T4 y1 _5 q% h0 d1 H
       return;
后添加:
; n6 T" i; o/ Q, \! ]3 A8 Q6 ?, |! t* h; b3 V* g
邮编:
        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;
) X: N9 t- y2 D5 n% j
    }
并第一个评论. m. L6 h3 R, B" t
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );; i7 S7 U2 d5 v+ @* ]6 b. g% f$ ]% J
你看在我的代码。
掌上崩溃:) @: g( l$ u% M0 O% e

; S1 N5 Z. g! v扰流板:: u( L) N8 g* B# c9 n

0 C9 Z& R) R& @* ?1 M/ V2 f: T搜索:
! ~( }! u$ I/ r6 ]$ G+ N
% q+ A9 z  h* i0 r1 g邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )
9 E  [+ p8 w3 H  u* C3 g+ Q
           return;
后添加:
5 ]% u$ k$ M0 `% B9 y1 C% Y* s
7 e1 b4 }4 x( _邮编:
               //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 ~* ]. e3 i0 @0 \, i
对不起,英语错误,因为我brazillian。
- d5 d5 [' L  q; u哎呀,我喜欢,如果有人traslate德语。, \9 {. X3 B' O7 V7 k! l- d
kkthxbye。

0 }. o9 w6 Y7 v+ l
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-3 06:36 , Processed in 0.059916 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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