#pragma once #define WIZ_LOGIN 0x01 // Account Login #define WIZ_NEW_CHAR 0x02 // Create Character DB #define WIZ_DEL_CHAR 0x03 // Delete Character DB #define WIZ_SEL_CHAR 0x04 // Select Character #define WIZ_SEL_NATION 0x05 // Select Nation #define WIZ_MOVE 0x06 // Move ( 1 Second ) #define WIZ_USER_INOUT 0x07 // User Info Insert, delete #define WIZ_ATTACK 0x08 // General Attack #define WIZ_ROTATE 0x09 // Rotate #define WIZ_NPC_INOUT 0x0A // Npc Info Insert, delete #define WIZ_NPC_MOVE 0x0B // Npc Move ( 1 Second ) #define WIZ_ALLCHAR_INFO_REQ 0x0C // Account All Character Info Request #define WIZ_GAMESTART 0x0D // Request Other User, Npc Info #define WIZ_MYINFO 0x0E // User Detail Data Download #define WIZ_LOGOUT 0x0F // Request Logout #define WIZ_CHAT 0x10 // User Chatting.. #define WIZ_DEAD 0x11 // User Dead #define WIZ_REGENE 0x12 // User Regeneration #define WIZ_TIME 0x13 // Game Timer #define WIZ_WEATHER 0x14 // Game Weather #define WIZ_REGIONCHANGE 0x15 // Region UserInfo Receive #define WIZ_REQ_USERIN 0x16 // Client Request UnRegistered User List #define WIZ_HP_CHANGE 0x17 // Current HP Download #define WIZ_MSP_CHANGE 0x18 // Current MP Download #define WIZ_ITEM_LOG 0x19 // Send To Agent for Writing Log #define WIZ_EXP_CHANGE 0x1A // Current EXP Download #define WIZ_LEVEL_CHANGE 0x1B // Max HP, MP, SP, Weight, Exp Download #define WIZ_NPC_REGION 0x1C // Npc Region Change Receive #define WIZ_REQ_NPCIN 0x1D // Client Request UnRegistered NPC List #define WIZ_WARP 0x1E // User Remote Warp #define WIZ_ITEM_MOVE 0x1F // User Item Move #define WIZ_NPC_EVENT 0x20 // User Click Npc Event #define WIZ_ITEM_TRADE 0x21 // Item Trade #define WIZ_TARGET_HP 0x22 // Attack Result Target HP #define WIZ_ITEM_DROP 0x23 // Zone Item Insert #define WIZ_BUNDLE_OPEN_REQ 0x24 // Zone Item list Request #define WIZ_TRADE_NPC 0x25 // ITEM Trade start #define WIZ_ITEM_GET 0x26 // Zone Item Get #define WIZ_ZONE_CHANGE 0x27 // Zone Change #define WIZ_POINT_CHANGE 0x28 // Str, Sta, dex, intel, cha, point up down #define WIZ_STATE_CHANGE 0x29 // User Sitdown or Stand #define WIZ_LOYALTY_CHANGE 0x2A // Nation Contribution #define WIZ_VERSION_CHECK 0x2B // Client version check #define WIZ_CRYPTION 0x2C // Cryption #define WIZ_USERLOOK_CHANGE 0x2D // User Slot Item Resource Change #define WIZ_NOTICE 0x2E // Update Notice Alarm #define WIZ_PARTY 0x2F // Party Related Packet #define WIZ_EXCHANGE 0x30 // Exchange Related Packet #define WIZ_MAGIC_PROCESS 0x31 // Magic Related Packet #define WIZ_SKILLPT_CHANGE 0x32 // User changed particular skill point #define WIZ_OBJECT_EVENT 0x33 // Map Object Event Occur ( ex : Bind Point Setting ) #define WIZ_CLASS_CHANGE 0x34 // 10 level over can change class #define WIZ_CHAT_TARGET 0x35 // Select Private Chanting User #define WIZ_CONCURRENTUSER 0x36 // Current Game User Count #define WIZ_DATASAVE 0x37 // User GameData DB Save Request #define WIZ_DURATION 0x38 // Item Durability Change #define WIZ_TIMENOTIFY 0x39 // Time Adaption Magic Time Notify Packet ( 2 Seconds ) #define WIZ_REPAIR_NPC 0x3A // Item Trade, Upgrade and Repair #define WIZ_ITEM_REPAIR 0x3B // Item Repair Processing #define WIZ_KNIGHTS_PROCESS 0x3C // Knights Related Packet.. #define WIZ_ITEM_COUNT_CHANGE 0x3D // Item cout change. #define WIZ_KNIGHTS_LIST 0x3E // All Knights List Info download #define WIZ_ITEM_REMOVE 0x3F // Item Remove from inventory #define WIZ_OPERATOR 0x40 // Operator Authority Packet #define WIZ_SPEEDHACK_CHECK 0x41 // Speed Hack Using Check #define WIZ_COMPRESS_PACKET 0x42 // Data Compressing Packet #define WIZ_SERVER_CHECK 0x43 // Server Status Check Packet #define WIZ_CONTINOUS_PACKET 0x44 // Region Data Packet #define WIZ_WAREHOUSE 0x45 // Warehouse Open, In, Out #define WIZ_SERVER_CHANGE 0x46 // When you change the server #define WIZ_REPORT_BUG 0x47 // Report Bug to the manager #define WIZ_HOME 0x48 // 'Come back home' by Seo Taeji & Boys #define WIZ_FRIEND_PROCESS 0x49 // Get the status of your friend #define WIZ_GOLD_CHANGE 0x4A // When you get the gold of your enemy. #define WIZ_WARP_LIST 0x4B // Warp List by NPC or Object #define WIZ_VIRTUAL_SERVER 0x4C // Battle zone Server Info packet (IP, Port) #define WIZ_ZONE_CONCURRENT 0x4D // Battle zone concurrent users request packet #define WIZ_CORPSE 0x4e // To have your corpse have an ID on top of it. #define WIZ_PARTY_BBS 0x4f // For the party wanted bulletin board service.. #define WIZ_MARKET_BBS 0x50 // For the market bulletin board service... #define WIZ_KICKOUT 0x51 // Account ID forbid duplicate connection #define WIZ_CLIENT_EVENT 0x52 // Client Event (for quest) #define WIZ_MAP_EVENT 0x53 // Ŭ¶óÀÌ¾ðÆ®¿¡¼­ ¹«½¼ ¿¡ÄÚ·Î ¾²°í ÀÖµ¥¿ä. #define WIZ_WEIGHT_CHANGE 0x54 // Notify change of weight #define WIZ_SELECT_MSG 0x55 // Select Event Message... #define WIZ_NPC_SAY 0x56 // Select Event Message... #define WIZ_BATTLE_EVENT 0x57 // Battle Event Result #define WIZ_AUTHORITY_CHANGE 0x58 // Authority change #define WIZ_EDIT_BOX 0x59 // Activate/Receive info from Input_Box. #define WIZ_SANTA 0x5A // Activate motherfucking Santa Claus!!! :( #define WIZ_ITEM_UPGRADE 0x5B #define WIZ_PACKET1 0x5C #define WIZ_PACKET2 0x5D #define WIZ_ZONEABILITY 0x5E #define WIZ_EVENT 0x5F #define WIZ_STEALTH 0x60 // stealth related. #define WIZ_ROOM_PACKETPROCESS 0x61 // room system #define WIZ_ROOM 0x62 #define WIZ_PACKET3 0x63 // new clan #define WIZ_QUEST 0x64 #define WIZ_PACKET4 0x65 // login #define WIZ_KISS 0x66 #define WIZ_RECOMMEND_USER 0x67 #define WIZ_MERCHANT 0x68 #define WIZ_MERCHANT_INOUT 0x69 #define WIZ_SHOPPING_MALL 0x6A #define WIZ_SERVER_INDEX 0x6B #define WIZ_EFFECT 0x6C #define WIZ_SIEGE 0x6D #define WIZ_NAME_CHANGE 0x6E #define WIZ_WEBPAGE 0x6F #define WIZ_CAPE 0x70 #define WIZ_PREMIUM 0x71 #define WIZ_HACKTOOL 0x72 #define WIZ_RENTAL 0x73 #define WIZ_PACKET5 0x74 //s�reli item #define WIZ_CHALLENGE 0x75 #define WIZ_PET 0x76 #define WIZ_CHINA 0x77 // we shouldn't need to worry about this #define WIZ_KING 0x78 #define WIZ_SKILLDATA 0x79 #define WIZ_PROGRAMCHECK 0x7A #define WIZ_BIFROST 0x7B #define WIZ_REPORT 0x7C #define WIZ_LOGOSSHOUT 0x7D #define WIZ_PACKET6 0x7E #define WIZ_PACKET7 0x7F #define WIZ_RANK 0x80 #define WIZ_STORY 0x81 #define WIZ_NATION_CHANGE 0x82 #define WIZ_PACKET9 0x83 #define WIZ_PACKET10 0x84 #define WIZ_CAPTURE 0x85 #define WIZ_MINING 0x86 #define WIZ_HELMET 0x87 #define WIZ_PVP 0x88 #define WIZ_CHANGE_HAIR 0x89 // Changes hair colour/facial features at character selection #define WIZ_PACKET12 0x8A #define WIZ_VIP_STORAGE 0x8B #define WIZ_PACKET14 0x8C #define WIZ_GENDER_CHANGE 0x8D #define WIZ_PACKET16 0x8E #define WIZ_PACKET17 0x8F #define WIZ_DEATH_LIST 0x90 #define WIZ_CLANPOINTS_BATTLE 0x91 // not sure #define WIZ_NATION_CHAT 0x19 #define WIZ_GENIE 0x97 #define WIZ_USER_INFO 0x98 #define WIZ_ACHIEVE 0x99 #define WIZ_EXP_SEAL 0x9A #define WIZ_SP_CHANGE 0x9B #define WIZ_GLOGIN 0x9F #define WIZ_TEST_PACKET 0xff // Test packet enum CoinChangeOpcodes { CoinGain = 1, CoinLoss = 2, CoinEvent = 5 }; //////////////////////////////////////////////////////////////// // chat define //////////////////////////////////////////////////////////////// enum ChatType { GENERAL_CHAT = 1, PRIVATE_CHAT = 2, PARTY_CHAT = 3, FORCE_CHAT = 4, SHOUT_CHAT = 5, KNIGHTS_CHAT = 6, PUBLIC_CHAT = 7, WAR_SYSTEM_CHAT = 8, PERMANENT_CHAT = 9, END_PERMANENT_CHAT = 10, MONUMENT_NOTICE = 11, GM_CHAT = 12, COMMAND_CHAT = 13, MERCHANT_CHAT = 14, ALLIANCE_CHAT = 15, ANNOUNCEMENT_CHAT = 17, SEEKING_PARTY_CHAT = 19, GM_INFO_CHAT = 21, // info window : "Level: 0, UserCount:16649" (NOTE: Think this is the missing overhead info (probably in form of a command (with args)) COMMAND_PM_CHAT = 22, CLAN_NOTICE = 24, KROWAZ_NOTICE = 25, DEATH_NOTICE = 26, CHAOS_STONE_ENEMY_NOTICE = 27, // The enemy has destroyed the Chaos stone something (Red text, middle of screen) CHAOS_STONE_NOTICE = 28, ANNOUNCEMENT_WHITE_CHAT = 29,/// what's it used for? CHATROM_CHAT = 33, NOAH_KNIGHTS_CHAT = 34 }; enum DeathNoticeType { DeathNoticeCoordinates = 0, // - %s defeat %s ( %d, %d ) - DeathNotice = 1, // - %s has been defeated by %s - DeathNoticeRival = 2, // - %s has avenged %s - DeathNoticeNone = 0xFF }; enum PVPOpcodes { PVPAssignRival = 1, PVPRemoveRival = 2, PVPUpdateHelmet = 5, // the helmet icon indicates the level of the anger gauge PVPResetHelmet = 6 }; enum ZoneChangeOpcodes { ZoneChangeLoading = 1, ZoneChangeLoaded = 2, ZoneChangeTeleport = 3, MilitaryCampChange = 4 }; enum PremiumPropertyOpCodes { PremiumExpRestorePercent = 0, PremiumNoahPercent = 1, PremiumDropPercent = 2, PremiumBonusLoyalty = 3, PremiumRepairDiscountPercent = 4, PremiumItemSellPercent = 5, PremiumExpPercent = 6 }; //////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////// // weather define //////////////////////////////////////////////////////////////// #define WEATHER_FINE 0x01 #define WEATHER_RAIN 0x02 #define WEATHER_SNOW 0x03 //////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////// // Party Related subpacket define //////////////////////////////////////////////////////////////// #define PARTY_CREATE 0x01 // Party Group Create #define PARTY_PERMIT 0x02 // Party Insert Permit #define PARTY_INSERT 0x03 // Party Member Insert #define PARTY_REMOVE 0x04 // Party Member Remove #define PARTY_DELETE 0x05 // Party Group Delete #define PARTY_HPCHANGE 0x06 // Party Member HP change #define PARTY_LEVELCHANGE 0x07 // Party Member Level change #define PARTY_CLASSCHANGE 0x08 // Party Member Class Change #define PARTY_STATUSCHANGE 0x09 // Party Member Status ( disaster, poison ) Change #define PARTY_REGISTER 0x0A // Party Message Board Register #define PARTY_REPORT 0x0B // Party Request Message Board Messages #define PARTY_PROMOTE 0x1C // Promotes user to party leader #define PARTY_ALL_STATUSCHANGE 0x1D // Sets the specified status of the selected party members to 1. enum TradeOpcodes { EXCHANGE_REQ = 1, EXCHANGE_AGREE = 2, EXCHANGE_ADD = 3, EXCHANGE_OTHERADD = 4, EXCHANGE_DECIDE = 5, EXCHANGE_OTHERDECIDE = 6, EXCHANGE_DONE = 7, EXCHANGE_CANCEL = 8 }; enum MerchantOpcodes { MERCHANT_OPEN = 1, MERCHANT_CLOSE = 2, MERCHANT_ITEM_ADD = 3, MERCHANT_ITEM_CANCEL = 4, MERCHANT_ITEM_LIST = 5, MERCHANT_ITEM_BUY = 6, MERCHANT_INSERT = 7, MERCHANT_TRADE_CANCEL = 8, MERCHANT_ITEM_PURCHASED = 9, MERCHANT_BUY_OPEN = 0x21, MERCHANT_BUY_INSERT = 0x22, MERCHANT_BUY_LIST = 0x23, MERCHANT_BUY_BUY = 0x24, MERCHANT_BUY_SOLD = 0x25, MERCHANT_BUY_BOUGHT = 0x26, MERCHANT_BUY_CLOSE = 0x27, MERCHANT_BUY_REGION_INSERT = 0x28, MERCHANT_MENISIA_LIST = 0x30 }; enum NameChangeOpcode { NameChangePlayerRequest = 0, // contains the request with the player's name NameChangeShowDialog = 1, NameChangeInvalidName = 2, NameChangeSuccess = 3, NameChangeInClan = 4, NameChangeKing = 5, ClanNameChange = 16 }; enum ClanNameChangeOpcode { ClanNameChangeShowDialog = 1, ClanNameChangeInvalidName = 2, ClanNameChangeNotInClan = 4, ClanNameChangeSuccess = 16 }; enum KingSystemOpcodes { KING_ELECTION = 1, KING_IMPEACHMENT = 2, KING_TAX = 3, KING_EVENT = 4, KING_NPC = 5, KING_NATION_INTRO = 6 }; enum KingEventOpcodes { KING_EVENT_NOAH = 1, KING_EVENT_EXP = 2, KING_EVENT_PRIZE = 3, KING_EVENT_FUGITIVE = 4, // not sure what this is exactly KING_EVENT_WEATHER = 5, KING_EVENT_NOTICE = 6 }; enum KingSystemElectionOpcodes { KING_ELECTION_SCHEDULE = 1, KING_ELECTION_NOMINATE = 2, KING_ELECTION_NOTICE_BOARD = 3, KING_ELECTION_POLL = 4, KING_ELECTION_RESIGN = 5 }; enum KingSystemElectionDBOpcodes { KING_ELECTION_UPDATE_STATUS, KING_ELECTION_UPDATE_LIST }; enum KingSystemCandidacyNoticeBoardOpcodes { KING_CANDIDACY_BOARD_WRITE = 1, KING_CANDIDACY_BOARD_READ = 2, // 4, 5 }; enum KingSystemImpeachmentOpcodes { KING_IMPEACHMENT_REQUEST = 1, KING_IMPEACHMENT_REQUEST_ELECT = 2, KING_IMPEACHMENT_LIST = 3, KING_IMPEACHMENT_ELECT = 4, KING_IMPEACHMENT_REQUEST_UI_OPEN = 8, KING_IMPEACHMENT_ELECTION_UI_OPEN = 9 }; enum MiningSystemOpcodes { // Starts the mining process MiningStart = 1, // Every n seconds, calls this packet to see if they found anything. MiningAttempt = 2, // Stops the mining process MiningStop = 3, // Fish Stard FishingStart = 6, // Fish Every n seconds, calls this packet to see if they found anything. FishingAttempt = 7, // Fish the mining process FishingStop = 8, MiningThing = 10, // Soccer handler is part of the mining handler (yuck). MiningSoccer = 16, }; enum MiningErrors { MiningResultError = 0, // "Mining failed" MiningResultSuccess = 1, // nothing is displayed MiningResultMiningAlready = 2, // "Mining already" MiningResultNotMiningArea = 3, // "Not mining area" MiningResultPreparing = 4, // "Preparing mining" MiningResultNotPickaxe = 5, // "A pickaxe is not" (i.e. invalid equipped item, need a pickaxe) MiningResultNothingFound = 6, // "Nothing found" }; #define MINING_DELAY 2 // seconds //////////////////////////////////////////////////////////////// // Magic Packet sub define //////////////////////////////////////////////////////////////// enum MagicOpcode { MAGIC_CASTING = 1, MAGIC_FLYING = 2, MAGIC_EFFECTING = 3, MAGIC_FAIL = 4, MAGIC_DURATION_EXPIRED = 5, // For the removal of durational (i.e. type 3/4) skills. MAGIC_CANCEL = 6, // When the client requests a buff to be removed. MAGIC_CANCEL_TRANSFORMATION = 7, // When removing a transformation. MAGIC_TYPE4_EXTEND = 8 , // Extends the time of your type4 buffs by 2 times (requires "Duration Item" (PUS)) MAGIC_TRANSFORM_LIST = 9, // Shows the transformation list MAGIC_FAIL_TRANSFORMATION = 10, // Transformation errors MAGIC_UNKNOWN = 12, MAGIC_CANCEL2 = 13 // Not sure but it cancels... }; enum e_SkillMagicFailMsg { SKILLMAGIC_FAIL_CASTING = -100, // "Casting failed." SKILLMAGIC_FAIL_KILLFLYING = -101, SKILLMAGIC_FAIL_ENDCOMBO = -102, SKILLMAGIC_FAIL_NOEFFECT = -103, // " failed" SKILLMAGIC_FAIL_ATTACKZERO = -104 // " missed" }; //////////////////////////////////////////////////////////////// // Knights Packet sub define //////////////////////////////////////////////////////////////// enum { KNIGHTS_CREATE = 0x01, // clan creation KNIGHTS_JOIN = 0x02, // joining a clan KNIGHTS_WITHDRAW = 0x03, // leaving a clan KNIGHTS_REMOVE = 0x04, // removing a clan member KNIGHTS_DESTROY = 0x05, // disbanding a clan KNIGHTS_ADMIT = 0x06, KNIGHTS_REJECT = 0x07, KNIGHTS_PUNISH = 0x08, KNIGHTS_CHIEF = 0x09, KNIGHTS_VICECHIEF = 0x0A, KNIGHTS_OFFICER = 0x0B, KNIGHTS_ALLLIST_REQ = 0x0C, KNIGHTS_MEMBER_REQ = 0x0D, KNIGHTS_CURRENT_REQ = 0x0E, KNIGHTS_STASH = 0x0F, KNIGHTS_MODIFY_FAME = 0x10, KNIGHTS_JOIN_REQ = 0x11, KNIGHTS_LIST_REQ = 0x12, KNIGHTS_WAR_ANSWER = 0x14, KNIGHTS_WAR_SURRENDER = 0x15, KNIGHTS_MARK_VERSION_REQ= 0x19, KNIGHTS_MARK_REGISTER = 0x1A, KNIGHTS_CAPE_NPC = 0x1B, KNIGHTS_ALLY_CREATE = 0x1C, KNIGHTS_ALLY_REQ = 0x1D, KNIGHTS_ALLY_INSERT = 0x1E, KNIGHTS_ALLY_REMOVE = 0x1F, KNIGHTS_ALLY_PUNISH = 0x20, KNIGHTS_ALLY_LIST = 0x22, KNIGHTS_MARK_REQ = 0x23, KNIGHTS_UPDATE = 0x24, KNIGHTS_MARK_REGION_REQ = 0x25, KNIGHTS_UPDATE_GRADE = 0x30, KNIGHTS_POINT_REQ = 0x3B, KNIGHTS_POINT_METHOD = 0x3C, KNIGHTS_DONATE_POINTS = 0x3D, KNIGHTS_HANDOVER_VICECHIEF_LIST = 0x3E, KNIGHTS_HANDOVER_REQ = 0x3F, KNIGHTS_DONATION_LIST = 0x40, KNIGHTS_TOP10 = 0x41, KNIGHTS_HANDOVER = 0x4F, KNIGHTS_NOTICE = 0x50, KNIGHTS_MEMO = 0x58, // These are NOT official client opcodes. // They are opcodes for the database thread only. KNIGHTS_REFUND_POINTS = 0xF0, KNIGHTS_UPDATE_FUND = 0xF1 }; enum OperatorCommands { OPERATOR_ARREST = 1, OPERATOR_BAN = 2, OPERATOR_MUTE = 3, OPERATOR_UNMUTE = 4, OPERATOR_CUTOFF = 5, OPERATOR_BAN_ACCOUNT = 6, OPERATOR_SUMMON = 7, OPERATOR_DISABLE_ATTACK = 8, OPERATOR_ENABLE_ATTACK = 9 }; enum DailyOperationsOpCode { DAILY_CHAOS_MAP = 1, DAILY_USER_RANK_REWARD = 2, DAILY_USER_PERSONAL_RANK_REWARD = 3, DAILY_KING_WING = 4, DAILY_WARDER_KILLER_WING1 = 5, DAILY_WARDER_KILLER_WING2 = 6, DAILY_KEEPER_KILLER_WING = 7, DAILY_USER_LOYALTY_WING_REWARD = 8 }; enum EventOpCode { TEMPLE_EVENT_BORDER_DEFENCE_WAR = 4, TEMPLE_EVENT_CHAOS = 24, TEMPLE_EVENT_JURAD_MOUNTAIN = 100 }; enum RankTypes { RANK_TYPE_PK_ZONE = 1, RANK_TYPE_ZONE_BORDER_DEFENSE_WAR = 2, RANK_TYPE_CHAOS_DUNGEON = 3, }; //////////////////////////////////////////////////////////////// // WareHouse Packet sub define //////////////////////////////////////////////////////////////// #define WAREHOUSE_OPEN 0x01 #define WAREHOUSE_INPUT 0x02 #define WAREHOUSE_OUTPUT 0x03 #define WAREHOUSE_MOVE 0x04 #define WAREHOUSE_INVENMOVE 0x05 #define WAREHOUSE_REQ 0x10 //////////////////////////////////////////////////////////////// // Clan Packet sub define //////////////////////////////////////////////////////////////// #define CLAN_CREATE 0x01 #define CLAN_JOIN 0x02 //////////////////////////////////////////////////////////////// // Class change define //////////////////////////////////////////////////////////////// #define CLASS_CHANGE_REQ 0x01 #define CLASS_CHANGE_RESULT 0x02 #define ALL_POINT_CHANGE 0x03 #define ALL_SKILLPT_CHANGE 0x04 #define CHANGE_MONEY_REQ 0x05 #define CHANGE_REBIRTH_STAT 0x07 //////////////////////////////////////////////////////////////// // Friend subpacket define //////////////////////////////////////////////////////////////// enum FriendOpcodes { FRIEND_REQUEST = 1, FRIEND_REPORT = 2, FRIEND_ADD = 3, FRIEND_REMOVE = 4 }; enum TempleOpCodes { BIFROST_EVENT = 2, TEMPLE_EVENT_BORDER_COUNTER = 3, MONSTER_SQUARD = 5, MONSTER_STONE = 6, TEMPLE_EVENT = 7, TEMPLE_EVENT_JOIN = 8, TEMPLE_EVENT_DISBAND = 9, TEMPLE_EVENT_FINISH = 10, TEMPLE_EVENT_COUNTER = 16 }; enum FriendAddResult { FRIEND_ADD_SUCCESS = 0, FRIEND_ADD_ERROR = 1, FRIEND_ADD_FULL = 2, FRIEND_ADD_MAX }; enum FriendRemoveResult { FRIEND_REMOVE_SUCCESS = 0, FRIEND_REMOVE_ERROR = 1, FRIEND_REMOVE_NOT_FOUND = 2, FRIEND_REMOVE_MAX }; enum { ITEM_UPGRADE_REQ = 1, ITEM_UPGRADE = 2, ITEM_ACCESSORIES = 3, ITEM_BIFROST_REQ = 4, ITEM_BIFROST_EXCHANGE = 5, ITEM_PET = 6, ITEM_UPGRADE_REBIRTH = 7, ITEM_SEAL = 8, ITEM_CHARACTER_SEAL = 9, ITEM_TRYITWHAT2 = 10, ITEM_SPECIAL_EXCHANGE = 11, ITEM_DISASSEMBLING = 13 }; //////////////////////////////////////////////////////////////// // Party BBS subpacket define //////////////////////////////////////////////////////////////// #define PARTY_BBS_REGISTER 0x01 #define PARTY_BBS_DELETE 0x02 #define PARTY_BBS_NEEDED 0x03 #define PARTY_BBS_WANTED 0x04 #define PARTY_BBS_LIST 0x0B //////////////////////////////////////////////////////////////// // Market BBS primary subpacket define //////////////////////////////////////////////////////////////// #define MARKET_BBS_REGISTER 0x01 #define MARKET_BBS_DELETE 0x02 #define MARKET_BBS_REPORT 0x03 #define MARKET_BBS_OPEN 0x04 #define MARKET_BBS_REMOTE_PURCHASE 0x05 #define MARKET_BBS_MESSAGE 0x06 //////////////////////////////////////////////////////////////// // Market BBS secondary subpacket define //////////////////////////////////////////////////////////////// #define MARKET_BBS_BUY 0x01 #define MARKET_BBS_SELL 0x02 //////////////////////////////////////////////////////////////// #define WIZ_LOGIN_INFO 0x50 // define for DBAgent Communication //////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////// // Server to Server Communication //////////////////////////////////////////////////////////////// #define STS_CHAT 0xD0 #define UDP_BATTLE_EVENT_PACKET 0xD1 #define UDP_KNIGHTS_PROCESS 0xD2 #define UDP_BATTLEZONE_CURRENT_USERS 0xD3 //////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////// // Server to DB Agnent Communication //////////////////////////////////////////////////////////////// #define DB_COUPON_EVENT 0x10 // coupon event #define CHECK_COUPON_EVENT 0x01 #define UPDATE_COUPON_EVENT 0x02 //////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////// // Authority change subpacket define //////////////////////////////////////////////////////////////// #define COMMAND_AUTHORITY 0x01 enum ShoppingMallOpcodes { STORE_OPEN = 1, STORE_CLOSE = 2, STORE_BUY = 3, STORE_MINI = 4, STORE_PROCESS = 5, STORE_LETTER = 6 }; enum LetterOpcodes { LETTER_UNREAD = 1, LETTER_LIST = 2, LETTER_HISTORY = 3, LETTER_GET_ITEM = 4, LETTER_READ = 5, LETTER_SEND = 6, LETTER_DELETE = 7, LETTER_ITEM_CHECK = 8 // ??? }; enum RentalOpcodes { RENTAL_PREMIUM = 1, RENTAL_PVP = 2, RENTAL_NPC = 3 }; enum RentalPvPOpcodes { RENTAL_OPEN = 0, RENTAL_REGISTER = 1, RENTAL_LEND = 2, RENTAL_ITEM_CHECK = 3, RENTAL_ITEM_CANCEL = 4, RENTAL_REPORT = 10 }; // Skillbar enum SkillBarOpcodes { SKILL_DATA_SAVE = 1, SKILL_DATA_LOAD = 2 }; enum ObjectType { OBJECT_BIND = 0, OBJECT_GATE = 1, OBJECT_GATE2 = 2, OBJECT_GATE_LEVER = 3, OBJECT_FLAG_LEVER = 4, OBJECT_WARP_GATE = 5, OBJECT_GATE_UNK = 6, OBJECT_REMOVE_BIND = 7, OBJECT_ANVIL = 8, OBJECT_ARTIFACT = 9, OBJECT_NPC = 11 }; enum BattleWinnerTypes { BATTLE_WINNER_NPC = 0, BATTLE_WINNER_KILL = 1, BATTLE_WINNER_MONUMENT = 2 }; // --------------------------------------------------------------------- // AI Server¿Í °ÔÀÓ¼­¹ö°£ÀÇ Npc¿¡ °ü·ÃµÈ ÆÐŶÀº 1¹ø~49¹ø // --------------------------------------------------------------------- const uint8 AI_SERVER_CONNECT = 1; const uint8 NPC_INFO_ALL = 2; const uint8 MOVE_REQ = 3; const uint8 MOVE_RESULT = 4; const uint8 MOVE_END_REQ = 5; const uint8 MOVE_END_RESULT = 6; const uint8 AG_NPC_INFO = 7; const uint8 AG_NPC_GIVE_ITEM = 8; const uint8 AG_NPC_GATE_OPEN = 9; const uint8 AG_NPC_GATE_DESTORY = 10; const uint8 AG_NPC_INOUT = 11; const uint8 AG_NPC_EVENT_ITEM = 12; const uint8 AG_NPC_HP_REQ = 13; const uint8 AG_NPC_SPAWN_REQ = 14; // spawns an NPC/monster at the desired location const uint8 AG_NPC_REGION_UPDATE = 15; const uint8 AG_NPC_UPDATE = 16; const uint8 AG_NPC_KILL_REQ = 17; // --------------------------------------------------------------------- // AI Server¿Í °ÔÀÓ¼­¹ö°£ÀÇ User, Npc °øÅë °ü·ÃµÈ ÆÐŶÀº 50¹ø~100¹ø // --------------------------------------------------------------------- const uint8 AG_SERVER_INFO = 50; // const uint8 AG_ATTACK_REQ = 51; // Attck Packet const uint8 AG_ATTACK_RESULT = 52; // Attck Packet const uint8 AG_DEAD = 53; // Dead Packet const uint8 AG_SYSTEM_MSG = 54; // System message Packet const uint8 AG_CHECK_ALIVE_REQ = 55; // Server alive check const uint8 AG_COMPRESSED_DATA = 56; // Packet Data compressed const uint8 AG_ZONE_CHANGE = 57; // Zone change const uint8 AG_MAGIC_ATTACK_REQ = 58; // Magic Attck Packet const uint8 AG_MAGIC_ATTACK_RESULT = 59; // Magic Attck Packet const uint8 AG_USER_INFO_ALL = 60; // UserÀÇ ¸ðµç Á¤º¸ Àü¼Û const uint8 AG_LONG_MAGIC_ATTACK = 61; // Magic Attck Packet const uint8 AG_PARTY_INFO_ALL = 62; // PartyÀÇ ¸ðµç Á¤º¸ Àü¼Û const uint8 AG_HEAL_MAGIC = 63; // Healing magic const uint8 AG_TIME_WEATHER = 64; // time and whether info const uint8 AG_BATTLE_EVENT = 65; // battle event const uint8 AG_COMPRESSED = 66; const uint8 AG_ROOM_INIT = 67; const uint8 AG_USER_EVENTROOM = 68; const uint8 AG_CSW_OP_CL = 69; // update CSW open close status const uint8 AG_CHAOS_CUBE = 70; const uint8 AG_USER_TRANS_CHANGE = 71; // updates user ts enum AISkillOpcode { AISkillOpcodeBuff, // or debuff AISkillOpcodeRemoveBuff }; // --------------------------------------------------------------------- // Battle Event Sub Packet // --------------------------------------------------------------------- const uint8 BATTLE_EVENT_OPEN = 1; // battle event open const uint8 BATTLE_MAP_EVENT_RESULT = 2; // battle zone map event result const uint8 BATTLE_EVENT_RESULT = 3; // battle event result ( victory nation ) const uint8 BATTLE_EVENT_MAX_USER = 4; // battle event result ( user name ) const uint8 BATTLE_EVENT_KILL_USER = 5; // battle event result ( user kill count ) // --------------------------------------------------------------------- // AI Server¿Í °ÔÀÓ¼­¹ö°£ÀÇ User¿¡ °ü·ÃµÈ ÆÐŶÀº 101¹ø ºÎÅÍ ½ÃÀÛ // --------------------------------------------------------------------- const uint8 AG_USER_INFO = 101; // UserÀÇ Á¤º¸ const uint8 AG_USER_INOUT = 102; // UserÀÇ In,Out Á¤º¸ const uint8 AG_USER_MOVE = 103; // UserÀÇ move Á¤º¸ const uint8 AG_USER_MOVEEDGE = 104; // UserÀÇ move end Á¤º¸ const uint8 AG_USER_SET_HP = 105; // UserÀÇ HP const uint8 AG_USER_LOG_OUT = 106; // UserÀÇ LogOut const uint8 AG_USER_REGENE = 107; // UserÀÇ Regene const uint8 AG_USER_EXP = 108; // UserÀÇ °æÇèÄ¡ const uint8 AG_USER_UPDATE = 109; // UserÀÇ Update Info const uint8 AG_USER_FAIL = 110; // À߸øµÈ À¯Àú ó¸®... const uint8 AG_USER_PARTY = 111; // ÆÄƼó¸® ´ã´ç const uint8 AG_USER_VISIBILITY = 112; // updates invisibility status const uint8 AG_NPC_HP_CHANGE = 113; // updates an NPC's HP