⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dr_network.h

📁 国内著名网络游戏dragon的服务端完整源码 内附完整数据库结构
💻 H
📖 第 1 页 / 共 5 页
字号:
/*****************************************************************************\
* Copyright (c), Future Entertainment World / Seoul, Republic of Korea        *
* All Rights Reserved.                                                        *
*                                                                             *
* This document contains proprietary and confidential information.  No        *
* parts of this document or the computer program it embodies may be in        *
* any way copied, duplicated, reproduced, translated into a different         *
* programming language, or distributed to any person, company, or             *
* corporation without the prior written consent of Future Entertainment World *
\*****************************************************************************/



#ifndef _DRAGON_PROTOCOL_
#define _DRAGON_PROTOCOL_

#include "..\stdafx.h"

#include "ItemList.h"

#define SIZE_OF_WS				(200 * sizeof( unsigned char ))
#define SIZE_OF_PS				(200 * sizeof( unsigned char ))
#define SIZE_OF_SKILL			(200 * sizeof( unsigned char ))	//1219 YGI
#define SIZE_OF_SKILL_EXP		(45  * sizeof( unsigned int	 ))	
#define SIZE_OF_TAC_SKILL_EXP	(13  * sizeof( unsigned int	 ))	

#define SIZE_OF_SCRIPT_VAR		(300 * sizeof( int ))	
#define	SIZE_OF_PARTY			(    31 * MAX_PARTY_MEMBER )
#define	SIZE_OF_RELATION		(    31 * 3 ) 
#define	SIZE_OF_EMPLOYMENT		(    31 * 6 ) 
#define	SIZE_OF_ITEMINDEX		(  1000 * sizeof( short int ) )
#define QueuePacket( c, cn, packet, type )		QueuePacket_( c, cn, packet, type, __FILE__, __LINE__ )
#define ROOKIE_LEVEL		          7
#define MAX_STORE_LIST			      30		// 1213
#define MAX_STORE_ITEM_LIST       500		// 021030
#define EFFECT_TABLE_VERSION			907
#define LOGIN_MAX_CONNECTIONS			150

// 011130 YGI
extern int DRAGON_MAX_CONNECTIONS;
#define DRAGON_MAX_CONNECTIONS_			800//030102 lsw


#define DRAGON_CONNECTIONS_START		2

#define LOGIN_SERVER_CONNECT			0	// 傍瘤荤亲 葛电 辑滚俊 楷搬窍扁 困茄 辑滚 wka
#define DB_DEMON						1	//	霸烙辑滚俊 且寸等 DB单阁
// Added by chan78 at 2000/12/16
#define CN_FROM_OTHER_MAPSERVER_MSG		-1


#define PACKEET_SEND_TRY				10

//--------------------------------------------------------		// YGI 0521
#define CONNECT_FAIL					0
#define CONNECT_OK						1
#define CONNECT_LOGIN_KEIN				2	// 甘埃 捞悼
#define CONNECT_LOGIN					3
#define CONNECT_JOIN					4	// 甘俊 粮犁..	努扼捞攫飘俊辑 CMD_ALL_READY甫 焊郴绰 鉴埃.
#define CONNECT_JOIN_START				5
// Added by chan78 at 2000/11/27
#define CONNECT_CHANGING_MAP			6


//--------------------------------------------------------
#define MAX_CHARACTEROFID				4
//------------------- NEW_APPEND -------------------------
// 2000/11/25, chan78
#define MAX_PACKET_SIZE					10240


#define MAX_CLIENT_QUEUE_OUT_BUFFER		16584


#define MAX_DIR_TABLE					256

#define ID_LENGTH						20
#define PW_LENGTH						20
#define NM_LENGTH						20
#define TEXT_LENGTH						255

//--------------------------------------------------------
#define CMD_NONE						0

#define CMD_INVALID_ID					1
#define CMD_INVALID_PW					2
#define CMD_INVALID_DB					3
#define CMD_INVALID_PAY					4
										 
#define CMD_PING						5

#define CMD_ACCESS_LOGIN				6066 //010707 lsw 荐沥
#define CMD_ACCEPT_LOGIN				6067 //010707 lsw 荐沥
#define CMD_ACCESS_LOGOUT				12
#define CMD_ACCEPT_CREATE				13
#define CMD_USED_ID						14
#define CMD_ACCEPT_DELETE				15
#define CMD_INVALID_VERSION				16
#define CMD_INVALID_AGE					17	// 030929 kyo

#define CMD_USER_ADD					20
#define CMD_USER_REMOVE					21
#define CMD_YOU_REMOVE					22

#define CMD_ACCESS_JOIN					30
#define CMD_ASSIGN_SERVER_ID			31
#define CMD_ACCEPT_JOIN					32
typedef struct server_accept_join
{
	short int x, y;
}t_server_accept_join;
#define CMD_ALL_READY					33
typedef struct all_ready
{
	short int x,y;

}t_all_ready;

//< soto-030331
#define CMD_GUARDIANLIST				1110

#define MAX_GUARDIAN					15
typedef struct GUARDAINLIST
{
	short int	nCount;
	short int	anGuildCodes[MAX_GUARDIAN];
}t_GUARDIANLIST;
//> soto-030331






#define CMD_USER_DB						40
#define CMD_ENVIR_INFO					41

#define CMD_CREATE_CHAR					50
#define CMD_DELETE_CHAR                 52

#define	CMD_NPC_ADD						60	
#define	CMD_NPC_REMOVE					61

#define	CMD_ITEM_ADD 					70
#define	CMD_ITEM_REMOVE					71
#define	CMD_ITEM_DROP					72
#define	CMD_ITEM_TAKE					73
#define	CMD_ITEM_EQUIP					74
#define	CMD_YOU_GOT_ITEM				75
#define CMD_ITEM_STATUS					76
#define CMD_CHANGE_EQUIP				77
#define CMD_ITEM_ATTR_CHANGE			78
#define CMD_ITEM_DOOR_OPEN_CLOSE		79
#define	CMD_ITEM_ADD_ZIPED 					7001 //this lsw // 菩哦 鸥涝 眠啊 
typedef struct item_door_open_close			
{
	short int item_id;
	char  openclose;
}t_item_door_open_close;

#define CMD_ITEM_BOX_BREAK				210		
typedef struct client_item_box_break
{
	short int		item_id;
}t_client_item_box_break;
typedef struct server_item_box_break
{
	short int		server_id;
	short int		item_id;
	char			type;

}t_server_item_box_break;

											
#define CMD_ITEM_BOX_BREAK_RESULT		212	
typedef struct client_item_box_break_result	
{														
	short int		item_id;				
}t_client_item_box_break_result;				
											
#define CMD_ITEM_BOX_REFRESH			211	
											
// 概流栏肺 酒捞袍阑 何贱锭 荤侩茄促.		
#define CMD_ITEM_BOX_MAGIC_BREAK		214		
typedef struct client_item_box_magic_break	
{													
	short int		item_id;					
}t_client_item_box_magic_break;						
											
#define CMD_ITEM_BOX_MAGIC_BREAK_RESULT	213 
typedef struct server_item_box_magic_break_result
{												
	short int		item_id;							
	char			type;								
}t_server_item_box_magic_break_result;							
											

#define CMD_JUST_ATTACK_ANIMATION		215
typedef struct client_just_attack_animation{
	short int		item_id;
}t_client_just_attack_animation;
												
#define CMD_MOVE						6100	//010707 lsw 荐沥
#define CMD_CHAT_DATA					6250	//010707 lsw 荐沥
#define CMD_WEATHER						83	

#define CMD_INSERT_MAGIC				624
typedef struct server_insert_magic
{
	short int item_id;
	short int effectno;
	short int tx, ty;
}t_server_insert_magic;


	


//------------ 篮青 皋春 眠啊 -------------------------------

#define	REQ_MY_DEPOSIT_INFO				90
#define	REP_YOUR_DEPOSIT_INFO			91

#define	REQ_MY_REPAYMENT_INFO			92
#define	REP_YOUR_REPAYMENT_INFO			93

//------------------------------------------------------------------

#define	CMD_CHR_ITEM_INFO_0				5000	// Inventory
#define	CMD_CHR_ITEM_INFO_1				5001	// Equip
#define	CMD_CHR_ITEM_INFO_2				5002	// quick.

// server_char_basic_data
#define CMD_CHAR_INFO_BASIC 			5003
typedef struct char_info_basic
{	
  short int kind;
	DWORD  data;
	char   password;
}t_char_info_basic;



#define CMD_CHAR_INFO_MAGIC				5004
typedef struct char_info_magic
{	
	unsigned char magic[ 200 ];
}t_char_info_magic;


#define CMD_CHAR_INFO_SKILL				5005
typedef struct char_info_skill
{	
	unsigned char skill[ 200 ];
}t_char_info_skill;


#define CMD_OTHER_INFO_BASIC 			5006
typedef struct other_info_basic
{	short int server_id;
	short int kind;
	DWORD  data;
}t_other_info_basic;



#define CMD_GIVE_ITEM					5007
typedef struct server_give_item	
{
	char p1, p2, p3;
	ItemAttr item;
}t_server_give_item;

typedef struct client_item_inv // 1218 YGI
{
	short int count;
}k_client_item_inv;



#define CMD_CHAR_INFO_TAC_SKILL_EXP		5008
typedef struct char_info_tac_skillexp
{
	unsigned int tac_skillEXP[ 13];
	char		aStepInfo[20];

}t_char_info_tac_skillexp;


#define CMD_ITEM_EXCHANGE				88
#define CMD_ITEM_EXCHANGE_REFUSE		89

#define CMD_ITEM_EQUIP_OK				98

#define CMD_FOOT_ON_TRAP_0_ITEM			99
#define CMD_FOOT_ON_TRAP_1_ITEM			621
#define CMD_STEAL_ON_TRAP				9010//011212 lsw

struct t_client_foot_on_trap0
{
  WORD idServer;
};

struct t_server_foot_on_trap0
{
  WORD idServer;
  WORD idItem;
  __int32 nLife;
};

struct t_client_foot_on_trap1
{
  WORD idServer;
};

struct t_server_foot_on_trap1
{
  WORD idServer;
  WORD idItem;
  __int32 nLife;
};
struct t_server_steal_on_trap//011212 lsw
{
  WORD idServer;
  __int32 nLife;
};

//----------- Event ---------------------------------
#define CMD_EVENT						100
#define CMD_DOOR_OPEN					101
#define CMD_DOOR_CLOSE					102

// ------- Change Map	----------------------------
#define CMD_CHANGE_MAP_DETECTED			109
#define CMD_CHANGE_MAP					110

#define CMD_MODIFY_POSITION				111

// 011012 KBS
#define CMD_PROXY_TO_MAP_CHANGE_DATE		14000
//


typedef struct server_modidy_position
{
	short int server_id;
	short int gox, goy;
}t_server_modify_position;
typedef struct client_modify_posotion
{
	short int x, y;
}t_client_modify_position;

#define CMD_MODIFY_POSITION_ABSOLUTE	112
typedef struct server_modify_position_absolute
{
	short int id;
	short int x, y;
}t_server_modify_position_absolute;










// ----------  眠啊 Data 夸备---------------------
// 焊郴瘤 臼篮 user/npc/item俊 措茄 沥焊啊 吭阑锭 
// 扁夯 Data甫 焊郴崔扼绊 夸备茄促. 
#define REQ_NPC_ADD						1000	
#define REQ_PC_ADD						1001
#define REQ_ITEM_ADD					1002

#define CMD_LOST_CONNECTION				127

#define CMD_CONNECT_INFO				200
#define CMD_CONNECT_INFO1				10000		// 1218 YGI

#define CMD_INTERFACE_PEACE				300
#define CMD_INTERFACE_BATTLE			301


// 皋春,..
#define CMD_CALL_SMALLMENU				2000
#define CMD_STORE_ITEMLIST				2001

#define CMD_DUAL_MAGIC_LEARN_BOOK		2111//soto-030421

// 1010 CSB
#define CMD_CALL_SMALLMENUCUSTOM		2002
//

#define CMD_ITEM_BUY_REQ				128
#define CMD_ITEM_SELL_REQ				129
#define CMD_MENU_MESSAGE				140

//------------------------------------------------------------------------------------
//辨靛 Menu 
#define CMD_GUILD_INFO					7000
typedef struct server_guild_info
{
	short int guildindex;
	short int storeindex;
	short int repairindex;
}t_server_guild_info;


#define CMD_LEARN_SKILL					7010
typedef struct client_learn_skill
{ 
	short int guildindex;
	short int skillno;
}t_client_learn_skill;
//			( 绢痘霸..硅快瘤? 角嚼阑 窍唱? )
typedef struct server_learn_skill
{
	short int guildindex;
	short int skillno;
	short int money;
	short int skillexp;
}t_server_learn_skill;

	
#define CMD_LEARN_SKILLITEM				7020		
typedef struct server_learn_skillitem
{
	short int		skillitemno[ 30];
	short int		shillmoney[ 30];
	unsigned char	required_lv[30];
}t_server_learn_skillitem;


// 努扼捞攫飘 -> 辑滚 : 
// 辨靛俊辑 Item Repair窍绊磊 窍绰 List甫 夸备茄促.   
#define CMD_ITEM_REPAIR_REQ				7030

#define CMD_REPAIR_ITEMLIST				7040
typedef struct server_repair_itemlist
{
	char  array;
	short int item[ 10]; // 辨靛俊辑 秒鞭窍绰 Item格废.
}t_server_repair_itemlist;


// 
#define CMD_ITEM_REPAIR					7050
typedef struct client_item_repair
{
	short int repairindex;
	short int itemposition;
}t_client_item_repair;
typedef struct server_item_repair
{
	short int	 itemposition;
	ItemAttr	 item;
	unsigned int money;
}t_server_item_repair;	


#define MM_RUMOR_				0		
#define MM_PUBLIC_NOTICE_		1
#define MM_RANK_				2
#define MM_FORUM_				3
#define MM_EVENT_				4
#define MM_MYDIARY_				5
#define MM_BBS_					6
#define MM_ETC_					7


#define CMD_RUMOR_REQ					7060
#define CMD_RUMOR_INFO					7070
#define CMD_I_NEED_RUMOR				7080
typedef struct server_rumor_info
{
	short int money;
}t_server_rumor_info;



#define CMD_PUBLIC_NOTICE_TITLE_REQ		7090
#define CMD_RANK_TITLE_REQ				7100
#define CMD_FORUM_TITLE_REQ				7110
#define CMD_EVENT_TITLE_REQ				7120
#define CMD_MYDIARY_TITLE_REQ			7130
#define CMD_BBS_TITLE_REQ				7140
#define CMD_ETC_TITLE_REQ				7150

#define CMD_MENU_MESSAGE_TITLE			7160

#define CMD_PUBLIC_NOTICE_TEXT_REQ		7170
#define CMD_RANK_TEXT_REQ				7180
#define CMD_FORUM_TEXT_REQ				7190
#define CMD_EVENT_TEXT_REQ				7200
#define CMD_MYDIARY_TEXT_REQ			7210
#define CMD_BBS_TEXT_REQ				7220
#define CMD_ETC_TEXT_REQ				7230

#define CMD_MENU_MESSAGE_TEXT			7240

typedef struct server_menu_message_title
{
	unsigned char   type;
	unsigned char   no;
	unsigned int    date;
	unsigned char   name[  NM_LENGTH ];
	char			title[ TEXT_LENGTH];
}t_server_menu_message_title;
typedef struct client_menu_message_title
{
	unsigned char type;
	unsigned char no;
}t_client_menu_message_title;
typedef struct server_menu_message_text
{
	char			text[ TEXT_LENGTH];
}t_server_menu_message_text;




//---------------------------------------------------------------------------------------



#define CMD_NOTIFY_JOIN_OK				400


#define CMD_LEVELUP_POINT				410
#define CMD_LEVELUP_POINT_OK			420
#define CMD_LEVELUP_POINT_NO			430

//-----------------  Animation---------------------
//-----------------  Animation---------------------

#define CMD_TURN_DIR					500



// -----------------   House -------------------------
// -----------------   House -------------------------
// -----------------   House -------------------------

#define CMD_ROOF_OPEN					8000
#define CMD_ROOF_CLOSE					8001
typedef struct roof_open
{
	short int roofno;
}t_roof_open;
typedef struct roof_close
{
	short int roofno;
}t_roof_close;







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -