00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef EA_PROTOCOL_H
00023 #define EA_PROTOCOL_H
00024
00025 static const int INVENTORY_OFFSET = 2;
00026 static const int STORAGE_OFFSET = 1;
00027
00028
00029
00030
00031 #define SMSG_SERVER_PING 0x007f
00032 #define SMSG_CONNECTION_PROBLEM 0x0081
00033
00034 #define SMSG_UPDATE_HOST 0x0063
00035 #define SMSG_LOGIN_DATA 0x0069
00036 #define SMSG_LOGIN_ERROR 0x006a
00037
00038 #define SMSG_CHAR_LOGIN 0x006b
00039 #define SMSG_CHAR_LOGIN_ERROR 0x006c
00040 #define SMSG_CHAR_CREATE_SUCCEEDED 0x006d
00041 #define SMSG_CHAR_CREATE_FAILED 0x007e
00042 #define SMSG_CHAR_DELETE_SUCCEEDED 0x006f
00043 #define SMSG_CHAR_DELETE_FAILED 0x0070
00044 #define SMSG_CHAR_MAP_INFO 0x0071
00045
00046 #define SMSG_MAP_LOGIN_SUCCESS 0x0073
00047 #define SMSG_PLAYER_UPDATE_1 0x01d8
00048 #define SMSG_PLAYER_UPDATE_2 0x01d9
00049 #define SMSG_PLAYER_MOVE 0x01da
00050 #define SMSG_PLAYER_STOP 0x0088
00051 #define SMSG_PLAYER_MOVE_TO_ATTACK 0x0139
00052 #define SMSG_PLAYER_STAT_UPDATE_1 0x00b0
00053 #define SMSG_PLAYER_STAT_UPDATE_2 0x00b1
00054 #define SMSG_PLAYER_STAT_UPDATE_3 0x0141
00055 #define SMSG_PLAYER_STAT_UPDATE_4 0x00bc
00056 #define SMSG_PLAYER_STAT_UPDATE_5 0x00bd
00057 #define SMSG_PLAYER_STAT_UPDATE_6 0x00be
00058 #define SMSG_WHO_ANSWER 0x00c2
00059 #define SMSG_PLAYER_WARP 0x0091
00060 #define SMSG_PLAYER_INVENTORY 0x01ee
00061 #define SMSG_PLAYER_INVENTORY_ADD 0x00a0
00062 #define SMSG_PLAYER_INVENTORY_REMOVE 0x00af
00063 #define SMSG_PLAYER_INVENTORY_USE 0x01c8
00064 #define SMSG_PLAYER_EQUIPMENT 0x00a4
00065 #define SMSG_PLAYER_EQUIP 0x00aa
00066 #define SMSG_PLAYER_UNEQUIP 0x00ac
00067 #define SMSG_PLAYER_ATTACK_RANGE 0x013a
00068 #define SMSG_PLAYER_ARROW_EQUIP 0x013c
00069 #define SMSG_PLAYER_ARROW_MESSAGE 0x013b
00070 #define SMSG_PLAYER_SKILLS 0x010f
00071 #define SMSG_SKILL_FAILED 0x0110
00072 #define SMSG_ITEM_USE_RESPONSE 0x00a8
00073 #define SMSG_ITEM_VISIBLE 0x009d
00074 #define SMSG_ITEM_DROPPED 0x009e
00075 #define SMSG_ITEM_REMOVE 0x00a1
00076 #define SMSG_BEING_VISIBLE 0x0078
00077 #define SMSG_BEING_MOVE 0x007b
00078 #define SMSG_BEING_SPAWN 0x007c
00079 #define SMSG_BEING_MOVE2 0x0086
00080 #define SMSG_BEING_REMOVE 0x0080
00081 #define SMSG_BEING_CHANGE_LOOKS 0x00c3
00082 #define SMSG_BEING_CHANGE_LOOKS2 0x01d7
00083 #define SMSG_BEING_SELFEFFECT 0x019b
00084 #define SMSG_BEING_EMOTION 0x00c0
00085 #define SMSG_BEING_ACTION 0x008a
00086 #define SMSG_BEING_CHAT 0x008d
00087 #define SMSG_BEING_NAME_RESPONSE 0x0095
00088 #define SMSG_BEING_CHANGE_DIRECTION 0x009c
00089
00090 #define SMSG_PLAYER_STATUS_CHANGE 0x0119
00091 #define SMSG_BEING_STATUS_CHANGE 0x0196
00092
00093 #define SMSG_NPC_MESSAGE 0x00b4
00094 #define SMSG_NPC_NEXT 0x00b5
00095 #define SMSG_NPC_CLOSE 0x00b6
00096 #define SMSG_NPC_CHOICE 0x00b7
00097 #define SMSG_NPC_BUY_SELL_CHOICE 0x00c4
00098 #define SMSG_NPC_BUY 0x00c6
00099 #define SMSG_NPC_SELL 0x00c7
00100 #define SMSG_NPC_BUY_RESPONSE 0x00ca
00101 #define SMSG_NPC_SELL_RESPONSE 0x00cb
00102 #define SMSG_NPC_INT_INPUT 0x0142
00103 #define SMSG_NPC_STR_INPUT 0x01d4
00104 #define SMSG_PLAYER_CHAT 0x008e
00105 #define SMSG_WHISPER 0x0097
00106 #define SMSG_WHISPER_RESPONSE 0x0098
00107 #define SMSG_GM_CHAT 0x009a
00108 #define SMSG_WALK_RESPONSE 0x0087
00109
00110 #define SMSG_TRADE_REQUEST 0x00e5
00111 #define SMSG_TRADE_RESPONSE 0x00e7
00112 #define SMSG_TRADE_ITEM_ADD 0x00e9
00113 #define SMSG_TRADE_ITEM_ADD_RESPONSE 0x01b1
00114 #define SMSG_TRADE_OK 0x00ec
00115 #define SMSG_TRADE_CANCEL 0x00ee
00116 #define SMSG_TRADE_COMPLETE 0x00f0
00117
00118 #define SMSG_PARTY_CREATE 0x00fa
00119 #define SMSG_PARTY_INFO 0x00fb
00120 #define SMSG_PARTY_INVITE_RESPONSE 0x00fd
00121 #define SMSG_PARTY_INVITED 0x00fe
00122 #define SMSG_PARTY_SETTINGS 0x0101
00123 #define SMSG_PARTY_MOVE 0x0104
00124 #define SMSG_PARTY_LEAVE 0x0105
00125 #define SMSG_PARTY_UPDATE_HP 0x0106
00126 #define SMSG_PARTY_UPDATE_COORDS 0x0107
00127 #define SMSG_PARTY_MESSAGE 0x0109
00128
00129 #define SMSG_PLAYER_STORAGE_ITEMS 0x01f0
00130 #define SMSG_PLAYER_STORAGE_EQUIP 0x00a6
00131 #define SMSG_PLAYER_STORAGE_STATUS 0x00f2
00132 #define SMSG_PLAYER_STORAGE_ADD 0x00f4
00133 #define SMSG_PLAYER_STORAGE_REMOVE 0x00f6
00134 #define SMSG_PLAYER_STORAGE_CLOSE 0x00f8
00136 #define SMSG_ADMIN_KICK_ACK 0x00cd
00137
00138 #define SMSG_MVP 0x010c
00139
00140
00141
00142
00143 #define CMSG_CHAR_SERVER_CONNECT 0x0065
00144 #define CMSG_CHAR_SELECT 0x0066
00145 #define CMSG_CHAR_CREATE 0x0067
00146 #define CMSG_CHAR_DELETE 0x0068
00147
00148 #define CMSG_MAP_SERVER_CONNECT 0x0072
00149 #define CMSG_CLIENT_PING 0x007e
00150 #define CMSG_MAP_LOADED 0x007d
00151 #define CMSG_CLIENT_QUIT 0x018A
00152
00153 #define CMSG_CHAT_MESSAGE 0x008c
00154 #define CMSG_CHAT_WHISPER 0x0096
00155 #define CMSG_CHAT_ANNOUNCE 0x0099
00156 #define CMSG_CHAT_WHO 0x00c1
00157
00158 #define CMSG_SKILL_LEVELUP_REQUEST 0x0112
00159 #define CMSG_STAT_UPDATE_REQUEST 0x00bb
00160
00161 #define CMSG_PLAYER_INVENTORY_USE 0x00a7
00162 #define CMSG_PLAYER_INVENTORY_DROP 0x00a2
00163 #define CMSG_PLAYER_EQUIP 0x00a9
00164 #define CMSG_PLAYER_UNEQUIP 0x00ab
00165
00166 #define CMSG_ITEM_PICKUP 0x009f
00167 #define CMSG_PLAYER_CHANGE_DIR 0x009b
00168 #define CMSG_PLAYER_CHANGE_DEST 0x0085
00169 #define CMSG_PLAYER_CHANGE_ACT 0x0089
00170 #define CMSG_PLAYER_RESPAWN 0x00b2
00171 #define CMSG_PLAYER_EMOTE 0x00bf
00172 #define CMSG_PLAYER_ATTACK 0x0089
00173 #define CMSG_WHO_REQUEST 0x00c1
00174
00175 #define CMSG_NPC_TALK 0x0090
00176 #define CMSG_NPC_NEXT_REQUEST 0x00b9
00177 #define CMSG_NPC_CLOSE 0x0146
00178 #define CMSG_NPC_LIST_CHOICE 0x00b8
00179 #define CMSG_NPC_INT_RESPONSE 0x0143
00180 #define CMSG_NPC_STR_RESPONSE 0x01d5
00181 #define CMSG_NPC_BUY_SELL_REQUEST 0x00c5
00182 #define CMSG_NPC_BUY_REQUEST 0x00c8
00183 #define CMSG_NPC_SELL_REQUEST 0x00c9
00184
00185 #define CMSG_TRADE_REQUEST 0x00e4
00186 #define CMSG_TRADE_RESPONSE 0x00e6
00187 #define CMSG_TRADE_ITEM_ADD_REQUEST 0x00e8
00188 #define CMSG_TRADE_CANCEL_REQUEST 0x00ed
00189 #define CMSG_TRADE_ADD_COMPLETE 0x00eb
00190 #define CMSG_TRADE_OK 0x00ef
00191
00192 #define CMSG_PARTY_CREATE 0x00f9
00193 #define CMSG_PARTY_INVITE 0x00fc
00194 #define CMSG_PARTY_INVITED 0x00ff
00195 #define CMSG_PARTY_LEAVE 0x0100
00196 #define CMSG_PARTY_SETTINGS 0x0102
00197 #define CMSG_PARTY_KICK 0x0103
00198 #define CMSG_PARTY_MESSAGE 0x0108
00199
00200 #define CMSG_MOVE_TO_STORAGE 0x00f3
00201 #define CSMG_MOVE_FROM_STORAGE 0x00f5
00202 #define CMSG_CLOSE_STORAGE 0x00f7
00204 #define CMSG_ADMIN_ANNOUNCE 0x0099
00205 #define CMSG_ADMIN_LOCAL_ANNOUNCE 0x019C
00206 #define CMSG_ADMIN_HIDE 0x019D
00207 #define CMSG_ADMIN_KICK 0x00CC
00208 #define CMSG_ADMIN_MUTE 0x0149
00209
00211 void set_coordinates(char *data, unsigned short x, unsigned short y, unsigned char direction);
00212
00213 #endif