package main type serverConfigurations struct { Ip string Port int } type credentialConfigurations struct { User string Password string } type configurations struct { Server serverConfigurations Credential credentialConfigurations } type item struct { Id int Text string Price float64 Quantity int } type invPos struct { Quantity int Id int Pos int } type webPageData struct { PageTitle string Ite []item } type tradeStr struct { Id int Quantity int Type int ImageId int } // Money item id const MONEY = 20 /* To server communication protocol id's */ const MOVE_TO = 1 const SEND_PM = 2 const GET_PLAYER_INFO = 5 const RUN_TO = 6 const SIT_DOWN = 7 const SEND_ME_MY_ACTORS = 8 const SEND_OPENING_SCREEN = 9 const SEND_VERSION = 10 const TURN_LEFT = 11 const TURN_RIGHT = 12 const PING = 13 const HEART_BEAT = 14 const LOCATE_ME = 15 const USE_MAP_OBJECT = 16 const SEND_MY_STATS = 17 const SEND_MY_INVENTORY = 18 const LOOK_AT_INVENTORY_ITEM = 19 const MOVE_INVENTORY_ITEM = 20 const HARVEST = 21 const DROP_ITEM = 22 const PICK_UP_ITEM = 23 const LOOK_AT_GROUND_ITEM = 24 const INSPECT_BAG = 25 const S_CLOSE_BAG = 26 const LOOK_AT_MAP_OBJECT = 27 const TOUCH_PLAYER = 28 const RESPOND_TO_NPC = 29 const MANUFACTURE_THIS = 30 const USE_INVENTORY_ITEM = 31 const TRADE_WITH = 32 const ACCEPT_TRADE = 33 const REJECT_TRADE = 34 const EXIT_TRADE = 35 const PUT_OBJECT_ON_TRADE = 36 const REMOVE_OBJECT_FROM_TRADE = 37 const LOOK_AT_TRADE_ITEM = 38 const CAST_SPELL = 39 const ATTACK_SOMEONE = 40 const GET_KNOWLEDGE_INFO = 41 const ITEM_ON_ITEM = 42 const SEND_BOOK = 43 const GET_STORAGE_CATEGORY = 44 const DEPOSITE_ITEM = 45 const WITHDRAW_ITEM = 46 const LOOK_AT_STORAGE_ITEM = 47 const SPELL_NAME = 48 const SEND_VIDEO_INFO = 49 const POPUP_REPLY = 50 const FIRE_MISSILE_AT_OBJECT = 51 const PING_RESPONSE = 60 const SET_ACTIVE_CHANNEL = 61 const WHAT_QUEST_IS_THIS_ID = 63 const DO_EMOTE = 70 const GET_BUFF_DURATION = 71 const LOG_IN = 140 const CREATE_CHAR = 141 const GET_DATE = 230 const GET_TIME = 231 const SERVER_STATS = 232 const ORIGINAL_IP = 233 /* From server communication protocol Id's */ const ADD_NEW_ACTOR = 1 const ADD_ACTOR_COMMAND = 2 const YOU_ARE = 3 const SYNC_CLOCK = 4 const NEW_MINUTE = 5 const REMOVE_ACTOR = 6 const CHANGE_MAP = 7 const COMBAT_MODE = 8 const KILL_ALL_ACTORS = 9 const GET_TELEPORTERS_LIST = 10 const PONG = 11 const TELEPORT_IN = 12 const TELEPORT_OUT = 13 const PLAY_SOUND = 14 const START_RAIN = 15 //delete later on const STOP_RAIN = 16 //delete later on const THUNDER = 17 const HERE_YOUR_STATS = 18 const HERE_YOUR_INVENTORY = 19 const INVENTORY_ITEM_TEXT = 20 const GET_NEW_INVENTORY_ITEM = 21 const REMOVE_ITEM_FROM_INVENTORY = 22 const HERE_YOUR_GROUND_ITEMS = 23 const GET_NEW_GROUND_ITEM = 24 const REMOVE_ITEM_FROM_GROUND = 25 const CLOSE_BAG = 26 const GET_NEW_BAG = 27 const GET_BAGS_LIST = 28 const DESTROY_BAG = 29 const NPC_TEXT = 30 const NPC_OPTIONS_LIST = 31 const CLOSE_NPC_MENU = 32 const SEND_NPC_INFO = 33 const GET_TRADE_INFO = 34 //delete later on const GET_TRADE_OBJECT = 35 const GET_TRADE_ACCEPT = 36 const GET_TRADE_REJECT = 37 const GET_TRADE_EXIT = 38 const REMOVE_TRADE_OBJECT = 39 const GET_YOUR_TRADEOBJECTS = 40 const GET_TRADE_PARTNER_NAME = 41 const GET_YOUR_SIGILS = 42 const SPELL_ITEM_TEXT = 43 const GET_ACTIVE_SPELL = 44 const GET_ACTIVE_SPELL_LIST = 45 const REMOVE_ACTIVE_SPELL = 46 const GET_ACTOR_DAMAGE = 47 const GET_ACTOR_HEAL = 48 const SEND_PARTIAL_STAT = 49 const SPAWN_BAG_PARTICLES = 50 const ADD_NEW_ENHANCED_ACTOR = 51 const ACTOR_WEAR_ITEM = 52 const ACTOR_UNWEAR_ITEM = 53 const PLAY_MUSIC = 54 const GET_KNOWLEDGE_LIST = 55 const GET_NEW_KNOWLEDGE = 56 const GET_KNOWLEDGE_TEXT = 57 const BUDDY_EVENT = 59 const PING_REQUEST = 60 const FIRE_PARTICLES = 61 const REMOVE_FIRE_AT = 62 const DISPLAY_CLIENT_WINDOW = 63 const OPEN_BOOK = 64 const READ_BOOK = 65 const CLOSE_BOOK = 66 const STORAGE_LIST = 67 const STORAGE_ITEMS = 68 const STORAGE_TEXT = 69 const SPELL_CAST = 70 const GET_ACTIVE_CHANNELS = 71 const MAP_FLAGS = 72 const GET_ACTOR_HEALTH = 73 const GET_3D_OBJ_LIST = 74 const GET_3D_OBJ = 75 const REMOVE_3D_OBJ = 76 const GET_ITEMS_COOLDOWN = 77 const SEND_BUFFS = 78 const SEND_SPECIAL_EFFECT = 79 const REMOVE_MINE = 80 const GET_NEW_MINE = 81 const GET_MINES_LIST = 82 const DISPLAY_POPUP = 83 const MISSILE_AIM_A_AT_B = 84 const MISSILE_AIM_A_AT_XYZ = 85 const MISSILE_FIRE_A_TO_B = 86 const MISSILE_FIRE_A_TO_XYZ = 87 const MISSILE_FIRE_XYZ_TO_B = 88 const ADD_ACTOR_ANIMATION = 89 const SEND_MAP_MARKER = 90 const REMOVE_MAP_MARKER = 91 /* sent: 16 bit quest id for the next npc message */ const NEXT_NPC_MESSAGE_IS_QUEST = 92 /* sent: non null terminated string giving the title of the quest */ const HERE_IS_QUEST_ID = 93 /* sent: 16 bit quest id, this quest should be shown as finished */ const QUEST_FINISHED = 94 /* sent: 5 x 32 bit integers, each active bit is an achievement the last "You see: name" player has */ const SEND_ACHIEVEMENTS = 95 /* sent: 1 single byte buff duration, time remaining in seconds */ const SEND_BUFF_DURATION = 96 const SEND_WEATHER = 100 // reserved for future expansion 220-229, not being used in the server yet const MAP_SET_OBJECTS = 220 const MAP_STATE_OBJECTS = 221 const UPGRADE_NEW_VERSION = 240 // TODO: Consider combining all this into one packet followed by one byte (plus optional text) const UPGRADE_TOO_OLD = 241 const REDEFINE_YOUR_COLORS = 248 const YOU_DONT_EXIST = 249 const LOG_IN_OK = 250 const LOG_IN_NOT_OK = 251 const CREATE_CHAR_OK = 252 const CREATE_CHAR_NOT_OK = 253 const RAW_TEXT = 0 const PROXY = 254 const BYE = 255