飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1054

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1054
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。
& @+ [7 r' R2 U7 g5 M" g+ N! m. X4 f9 r0 z4 Y
首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。
1 n& c, U7 n6 o8 J
, R  R4 A1 N% T1 r( ~  \为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。9 ]8 U* Y: i) @: o9 X/ N  y
4 [4 c$ Y1 ~9 D: W% a- U) z0 C8 A, |
Equipament崩溃:5 f0 d, p) i7 L/ [+ f$ d

+ Y+ {5 h" s/ ^& K扰流板:7 E  u. H; c  a8 s8 Z& P

! F' _9 l) q9 S搜索:
" G! P, o) E. e# c. p( D' p5 T/ Q- u5 [" ~) Y2 h+ s
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )

' K$ L6 {) e& n* g) X4 i5 i
       return;
后添加:' \% }: \2 K! k4 x% g
/ Q5 C' g6 r; X6 A7 q
邮编:
        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;
- w! |- I) V6 y
    }
并第一个评论  S0 w4 g, D6 _8 N- ~
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );/ ~  x- \) c+ U
你看在我的代码。' J0 G; L0 ]  k& j/ ~

' ?6 j: B/ b6 O6 r4 Z; m2 N6 b1 r9 a# ^
3 _7 q& |4 X5 s# O0 F% u
购买崩溃:
8 W3 U, C. [; R1 p; P4 z
- v8 D6 P5 G& u/ F$ r+ \扰流板:7 h8 d, z9 B2 p# {  D
8 o; C8 U  y4 X) |: n
你需要做两次,正常购买和红筹股另一个人购买
搜索:
% Z( y/ x* i" p8 V; N
' \! \: z" G7 K7 t4 S邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )
/ s3 {% y# K9 j. x' x
       return;
后添加:
. {: Y+ I% ^: _: Q2 h
+ l9 }( f" K4 e) M2 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;
, h  H! @2 l: d- k$ M# H
    }
并第一个评论! d/ X. h8 p4 J5 V) E; E2 q
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );5 q8 s5 n4 }" q  T, k7 a  M6 A
你看在我的代码。
掌上崩溃:6 X6 t0 P0 V/ q% B8 @
) h, A# H2 K0 s* }: z. k
扰流板:: B. \9 P. T% D
$ {( F* s( g3 \7 Z. o/ i
搜索:
( Y# A  v: l+ H4 j6 b! v6 u" d7 ]  U8 Z) q" \. F# e0 J
邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )

8 j/ M0 n$ H, J' B9 e; \
           return;
后添加:
5 l# I5 t! _7 _3 m& ^3 u1 H$ M' [
1 N  o3 {1 _; y8 O6 \9 |1 c( l邮编:
               //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;               }/ x, x, H, V1 P# J. S
对不起,英语错误,因为我brazillian。' t1 {6 M' g3 }9 k
哎呀,我喜欢,如果有人traslate德语。
( r% j' W0 p) N' A' {9 `2 Skkthxbye。
: s$ Z; r6 Z" ]# ?: D
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 15:13 , Processed in 0.058164 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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