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

📄 network.h

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 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 *
\*****************************************************************************/
#define __CLIENT_PROGRAM__

#if !defined(AFX_DRAGON_PROTOCOL_H__589944BD_DCE5_4B05_9D6B_82C08591AC88__INCLUDED_)
#define AFX_DRAGON_PROTOCOL_H__589944BD_DCE5_4B05_9D6B_82C08591AC88__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define FD_SETSIZE		500
#include <winSock2.h>
#pragma comment(lib,"Ws2_32.lib")
#include <MsWSock.h>
#pragma comment(lib,"MsWSock.lib")
#include <WS2TcpIp.h>

#ifdef __CLIENT_PROGRAM__
	#include "ItemTable.h"
#else
	#include "charlist.h" 
	#include "ItemList.h"

#endif

#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_INV				(3*3*8* sizeof( ItemAttr )) 
#define	SIZE_OF_EQUIP			(    8* sizeof( ItemAttr )) 
#define	SIZE_OF_QUICK			(    6* sizeof( ItemAttr )) 
#define SIZE_OF_BANKITEM		(5*3*6* sizeof( ItemAttr )) 

#define	SIZE_OF_PARTY			(    31 * 6 )
#define	SIZE_OF_RELATION		(    31 * 3 ) 
#define	SIZE_OF_EMPLOYMENT		(    31 * 6 ) 
#define	SIZE_OF_ITEMINDEX		(  1000 * sizeof( short int ) )




#define MAX_CHECK_IP_		3

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


#define MAX_STORE_LIST			30		//1213
#define MAX_STORE_ITEM_LIST    300		// 0710 YGI

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



// 010505 KHS


#define EFFECT_TABLE_VERSION			907
//--------------------------------------------------------


#define LOGIN_QUEUE						5
#define DRAGON_QUEUE					5

//--------------------------------------------------------
#ifdef _SERVER_MAKE_MODE_	

	#define LOGIN_MAX_CONNECTIONS		15
	#define DRAGON_MAX_CONNECTIONS		35
	
#else 

	#define LOGIN_MAX_CONNECTIONS		150
	#define DRAGON_MAX_CONNECTIONS		500

#endif



#define DRAGON_CONNECTIONS_START		2

#define LOGIN_SERVER_CONNECT			0	// 傍瘤荤亲 葛电 辑滚俊 楷搬窍扁 困茄 辑滚 wka
#define DB_DEMON						1	//	霸烙辑滚俊 且寸等 DB单阁


#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
#define CONNECT_JOIN_START				5


//--------------------------------------------------------
#define MAX_CHARACTEROFID				4 
//------------------- NEW_APPEND -------------------------
#define MAX_PACKET_SIZE					3000
//#define MAX_PACKET_SIZE					512

#define MAX_SERVER_QUEUE_OUT_BUFFER		(65536)
#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_ADD_ZIPED				7001//this lsw 拘绵烙阑 唱鸥晨

#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
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;
};

//011212 lsw >
struct t_server_steal_on_trap
{
  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					110



#define CMD_MODIFY_POSITION				111
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



#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;

⌨️ 快捷键说明

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