飞飞世界论坛

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

阻止崩溃包。

[复制链接]

197

主题

203

帖子

1074

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1074
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:47:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
确定的家伙,因为我没有做,我会释放如何阻止每一个崩溃/欺骗包,并保存的ID/绰号的家伙试图您的服务器崩溃。5 L/ {2 ^4 G4 }2 V  j( E) T
8 |6 m- z- Z/ ^8 Y
首先,你需要有VS.NET2003ServicePack 1安装和飞飞来源。
8 D1 g. l: x( o3 d& i* e& F  E* c0 r& ~5 J
为了阻止这些数据包,你需要打开上的worldserver文件夹位于DPServer.cpp。
' B) m7 D, q2 G. D
# H( o$ t! |2 _* ZEquipament崩溃:1 ]$ W/ U: x' ?( B/ V

6 }% d; o6 y( _3 P$ T4 N, d. p1 y扰流板:
, A: |; H, X' _6 i8 ]3 ?; w8 ~
搜索:+ d3 P3 L  P+ m, m
  i4 D0 M4 j# Z* z8 S
邮编:
        ar >> dwData >>objid >> nPart;
        if( nPart >=MAX_HUMAN_PARTS )
1 R/ O; R5 |, Q. X; `
       return;
后添加:
9 j3 H% D" y" y, N* @! r. j
+ W8 w6 o2 ~% _  U+ c邮编:
        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;

4 B8 N1 Y0 u# W5 Z( H6 r  ~% o
    }
并第一个评论. \5 E% D: ?' O* P
邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
! z: r1 }7 M0 r  p
你看在我的代码。
) q7 G' I8 F) P) |5 F% W. y3 ~
5 `8 w8 O1 ]3 [! O6 @/ u, R9 P  E1 P" q6 W* M

( n1 n$ U- W% b$ l5 i/ s购买崩溃:
) E; W3 r# Q, O" f1 F
" U& h5 R0 m$ [* d$ G扰流板:
0 L) x( @% G) {2 |# p& U; e) D+ j0 z$ q0 `! i
你需要做两次,正常购买和红筹股另一个人购买
搜索:
* P# `! |- v* u: k/ l3 ^* W6 ]# H; p' s
邮编:
        ar >> cTab >> nId>> nNum >> dwItemId;
        if( cTab >=MAX_VENDOR_INVENTORY_TAB || nNum < 1 )

3 F2 d5 g& r3 Y9 c5 {1 v
       return;
后添加:
2 ^, `5 D9 L, \$ B9 X
$ X6 e* T2 q% W8 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;
; Z7 {) b7 d, b
    }
并第一个评论
$ ^# a" a9 O8 x( `' V6 a邮编:
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );( k( k. W, ?3 X! l, C; ?( T
你看在我的代码。
掌上崩溃:
/ |+ x: m8 v/ e) I& M2 ^: G# a# {
% T, b& O0 N6 s# {扰流板:7 |0 _4 j0 m6 p; F3 l0 c9 J
. f* g7 K  H' i6 H/ z
搜索:
, m% i7 I0 j$ r, g3 ^6 k: A9 v- c0 h" \% H
邮编:
               ar >> nPocket1>> nItem >> nNum >> nPocket2;
               if( nPocket1 ==nPocket2 )

* E/ y$ {/ f* `9 o" O! \; r
           return;
后添加:
* N+ @9 T  R: [3 O- O' f9 n, L' z: @8 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;               }4 W" W. f4 [: `/ B$ [
对不起,英语错误,因为我brazillian。+ d0 E7 H3 U9 w, P! @  Z
哎呀,我喜欢,如果有人traslate德语。8 t! f6 U3 \& W) L  k( b
kkthxbye。
, b- G% e1 Q" t: ]0 x- i0 u
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-14 06:21 , Processed in 0.064421 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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