飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。
" u8 c& r3 B1 p8 f* E  {+ w
" v: L" x( g8 i0 F9 V* u+ r9 }首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。% E% d; H& c4 I1 Y" C
+ y  N! L  w' T0 B
为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。
6 b7 a: s- O, ?6 Q; P4 ]5 B# y0 @- ]6 F8 V2 ?' N7 T0 P9 C
Equipament崩溃:
* w9 F5 N  \0 H
( c$ c: A' G- g  P扰流板:8 n0 o) |/ `) l9 e5 y* V; o

* K; L8 @# I% }7 O+ N- n搜索:, W' Q2 j! L& }1 p- r

# V) M1 v& I0 W/ @$ B5 C邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )
; {9 _; h. O( q$ @
       return;
后添加:
1 B( L3 b0 ]( s& x; H/ Y' C/ ~- }$ r. y" q; J/ M0 ?
邮编:
        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;

% p( W7 A8 p! v
    }
并第一个评论, j. g% s5 @" ~: @& x: h/ K' `5 B
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
1 a' d. F: C8 `
你看在我的代码。' ?6 W0 `1 ^7 [; Y9 D0 D" M
8 |2 H. @" O/ U9 V
7 Y" o$ p: K: S( U4 A, |) M; y. w
9 _2 d  \: ?& `/ Z; B
购买崩溃:8 B) w- R) x' N, {0 w6 @: E! H

+ ~1 q) m2 w: |. R4 z5 k4 u扰流板:$ Q/ W5 `, Y+ Q6 U6 f
/ i; v" U& J7 @
你需要做两次,正常购买和红筹股另一个人购买
搜索:
" W9 L$ L  B: G& S
  L$ p, i* J8 ]邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )

; _1 v/ o5 p4 M& y- n
       return;
后添加:
) W- ^! T5 @" ]+ G
# w% L9 M* x4 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;

  b1 j% W- ?! A0 A
    }
并第一个评论/ K& f! f5 Y4 A  V( x0 [" G
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );6 P7 k* E/ q' D9 E0 k& H5 L) x- T  }
你看在我的代码。
掌上崩溃:
6 d& E8 L8 @: o( h, i
* C& d0 Z7 V  u$ d, n扰流板:
1 F1 C$ @( [! G$ _& u+ w3 [
8 x2 ]. l" Z: i搜索:8 M# E8 l, y( a3 q7 ^
+ E4 H/ h  C$ {) W: p
邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )

7 H# o' S2 y/ [' [) h
           return;
后添加:  N  }  K' }; F" X5 P( E
& i7 i7 I3 P# s. `' K
邮编:
               //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;               }5 [1 r* m. M) A7 V" z2 Z# _& R
对不起,英语错误,因为我brazillian。
5 x" E- ?8 Q1 a9 j# Y哎呀,我喜欢,如果有人traslate德语。$ f- \8 T6 x$ g/ m5 R" @- h7 V
kkthxbye。
2 A8 w) ^, T- A& Q$ ?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-28 21:20 , Processed in 0.071893 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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