飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1054

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1054
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。/ Q$ h: w$ B  t$ U. b
, u1 y# [- S! c* R4 R* }
首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。
  B, `9 k8 Z4 [6 u7 S# A, `
: y; V/ m: B/ D5 U3 D! N为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。
* Q4 j8 U  p" T' O; d4 F
( J' s  K( F+ i' HEquipament崩溃:
$ ^$ d+ L: H6 B% p. r4 z0 z; D: Q* d) D) ?$ P; u% j4 r0 p
扰流板:
- g5 O5 O( j) w1 `  K+ ]' ~# K/ K8 l3 H# L7 B% |
搜索:, S) l5 n5 k+ b$ s) q
8 w& z  _+ C, E+ {9 |. w
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )
8 `- m, q' a, T% t" R
       return;
后添加:
! }4 ^( ^% [9 w) u/ L2 j
, N' G! ?: M) u" q9 ~( Z邮编:
        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;

: c6 M: v2 ]$ k- ^
    }
并第一个评论
8 W9 T; m9 G- N. E& m8 ?% Y. y& f/ V邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
3 [) m+ h6 E. b! {" d
你看在我的代码。
" ~4 P+ L" R& k' a; d+ Z, e( m! B8 \
5 K' M: l, W: ]1 k9 P% ]- p, ^" N! k
. n# y* b8 R! N% t
购买崩溃:
7 a4 t" ]/ H1 r9 p6 B7 h) w! q
$ ]- V) o- }7 A6 P3 Y( q' i扰流板:' n9 u$ m5 \* q+ R* Q# ?; [
' J" p2 z" S" N1 g
你需要做两次,正常购买和红筹股另一个人购买
搜索:% f+ O% N, C: U

: {0 N+ P0 c+ F; @+ M( s2 L邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )
/ ]6 h7 ~5 Z; B$ n' ^
       return;
后添加:+ B- e3 n, Q  g2 p& _! X9 ~9 l: W; ~5 F

( `; E  n2 h4 z9 `1 w邮编:
        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;

- z5 H1 v) p, n3 \
    }
并第一个评论
8 H) |* t; O( {$ \; t9 {邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
, y& ?6 s* h1 M" V3 }
你看在我的代码。
掌上崩溃:
1 s2 n  _/ ~& n7 M) ?) L& ]% T7 ?! t3 R. K, Y; z& `8 G9 w. p
扰流板:
/ }) Y% D! F/ b' z  N8 l( M4 \# {% Y  J7 k. V
搜索:
# M4 u0 C) g* J
' I. f& R% R, A7 x4 S. C5 R9 d邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )

5 |$ I; ~( a1 k
           return;
后添加:
0 \! H: Y' y/ m2 }5 r  f
* Q3 @4 f: C0 w/ X0 p邮编:
               //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;               }: R2 M) a& W' o( \# v- A
对不起,英语错误,因为我brazillian。
6 V/ ^% u4 x6 s# B哎呀,我喜欢,如果有人traslate德语。1 C. P+ O. O4 P% c: X" }
kkthxbye。

- g6 I" S8 F4 E" ^; K9 j2 N
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 01:06 , Processed in 0.057749 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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