?? network.h
字號:
/*****************************************************************************\
* 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 + -