Files
Sun1602/ProgramCommon/Protocol_CG.h
T
2022-10-26 12:25:11 +08:00

2666 lines
139 KiB
C

#ifndef __PROTOCOL_CG_H__
#define __PROTOCOL_CG_H__
#include "Protocol.h"
//-------------------------------------------------------------------------------------------------------
// * Prefix
// C : Client
// G : Game Server
// M : Master Server
// D : DBP Server
//
// * Postfix
// SYN - Server에 요청
// ACK - 요청에 대한 허락
// NAK - 요청에 대한 거부
// CMD - Server의 명령
// BRD - Server가 동기화 관련 내용을 알림
// DBR - DBProxy에서만 사용함!
//
// * 프로토콜 Naming Rule
// Prefix_카테고리명_프로토콜명_Postfix
// ex) CG_CONNECTION_REGISTER_SYN
//
//-------------------------------------------------------------------------------------------------------
// Client <-> GameServer Protocol
enum eCG_CATEGORY
{
CG_CONNECTION = CATEGORY_GENERATOR_001,
CG_CHARINFO = CATEGORY_GENERATOR_002, // 캐릭터 선택 및 캐릭터 정보
CG_MAP = CATEGORY_GENERATOR_003, // 맵 초기화 및 맵 이동
CG_SYNC = CATEGORY_GENERATOR_004, // 객체간 동기화
CG_BATTLE = CATEGORY_GENERATOR_005, // 전투
CG_STYLE = CATEGORY_GENERATOR_006, // 스타일
CG_SKILL = CATEGORY_GENERATOR_007, // 스킬
CG_CONVERSATION = CATEGORY_GENERATOR_008, // 채팅
CG_ZONE = CATEGORY_GENERATOR_009,
CG_ITEM = CATEGORY_GENERATOR_010, // 아이템
CG_TRADE = CATEGORY_GENERATOR_011, // 거래
CG_PARTY = CATEGORY_GENERATOR_012, // 파티
CG_TRIGGER = CATEGORY_GENERATOR_013, // 트리거
CG_GM = CATEGORY_GENERATOR_014, // GM 명령 처리
CG_ETC = CATEGORY_GENERATOR_015, // 기타 등등
CG_STATUS = CATEGORY_GENERATOR_016, // 상태 변화
CG_VENDOR = CATEGORY_GENERATOR_017, // 개인상점
CG_WAREHOUSE = CATEGORY_GENERATOR_018, // 창고 : 기능별 분리를 위해 추가
CG_PVP = CATEGORY_GENERATOR_019,
CG_SUMMON = CATEGORY_GENERATOR_020, // 소환
CG_GUILD = CATEGORY_GENERATOR_021,
CG_EVENT = CATEGORY_GENERATOR_022, // 이벤트 인벤토리
CG_QUEST = CATEGORY_GENERATOR_023,
CG_CRYPTOGRAPHY = CATEGORY_GENERATOR_025, // 보안 관련
CG_ARMORKIT = CATEGORY_GENERATOR_027, // ArmorKit 관련
CG_CHUNTING = CATEGORY_GENERATOR_028, // 경쟁 헌팅
CG_AREACONQUEST = CATEGORY_GENERATOR_029, // AC 시스템
CG_MISSION = CATEGORY_GENERATOR_030, // 미션
CG_WAYPOINT = CATEGORY_GENERATOR_031, // 웨이포인트
CG_CHAO = CATEGORY_GENERATOR_032, // 카오시스템
CG_SHOP = CATEGORY_GENERATOR_033,
CG_ZONE_EX = CATEGORY_GENERATOR_034,
//__NA001283_20090221_COLLECTION_PACKET
CG_COLLECT = CATEGORY_GENERATOR_035,
CW_WEBPACK = CATEGORY_GENERATOR_036, //xiaomi 警속Agent휽Field 繫斤
#ifdef _NA000000_CW_PROTOCOL_UNIFICATION
CW_CONNECTION = CATEGORY_GENERATOR_050,
CW_CHAT = CATEGORY_GENERATOR_051, // 캐릭터 선택, 캐릭터 생성
CW_GM = CATEGORY_GENERATOR_052, // GM 명령어
CW_VIEWPORT = CATEGORY_GENERATOR_053, // 유저 뷰포트 상태
CW_ARMORKIT = CATEGORY_GENERATOR_054, // ArmorKit 관련
CW_FRIEND = CATEGORY_GENERATOR_055, // 친구 관련
CW_GUILD = CATEGORY_GENERATOR_056, // 길드 관련
CW_CRYPTOGRAPHY = CATEGORY_GENERATOR_057, // 보안 관련
CW_COMMUNITY = CATEGORY_GENERATOR_058, // 기타 커뮤니티 관련
CW_REVENGE = CATEGORY_GENERATOR_059, // 리벤지(나쁜친구) 세팅 관련
CW_MEMO = CATEGORY_GENERATOR_060, // 쪽지 관련
//CW_SYNC = CATEGORY_GENERATOR_061,
CW_GROUP = CATEGORY_GENERATOR_062, // 그룹 맺기 시스템 관련 프로토콜
CW_LOTTO = CATEGORY_GENERATOR_063, // 하임 로또 관련
CW_PARTY = CATEGORY_GENERATOR_064, // 파티 관련 프로토콜
CG_MAX = CATEGORY_GENERATOR_065, // UPPER-BOUNDARY
#else
CG_MAX = CATEGORY_GENERATOR_037,
#endif
};
// Packet Packing Info - Do not use
// <reference> PacketControl/CategoryLinkPair.h
// 1) 새로운 카테고리 추가시 CG_cate --> CG_cate_PACK 추가
// 2) CategoryLinkValue.h에도 값을 추가할 것.
enum eCG_CATEGORY_PACK
{
CG_CONNECTION_PACK = CATEGORY_GENERATOR_101,
CG_CHARINFO_PACK = CATEGORY_GENERATOR_102, // 캐릭터 선택 및 캐릭터 정보
CG_MAP_PACK = CATEGORY_GENERATOR_103, // 맵 초기화 및 맵 이동
CG_SYNC_PACK = CATEGORY_GENERATOR_104, // 객체간 동기화
CG_BATTLE_PACK = CATEGORY_GENERATOR_105, // 전투
CG_STYLE_PACK = CATEGORY_GENERATOR_106, // 스타일
CG_SKILL_PACK = CATEGORY_GENERATOR_107, // 스킬
CG_CONVERSATION_PACK = CATEGORY_GENERATOR_108, // 채팅
CG_ZONE_PACK = CATEGORY_GENERATOR_109,
CG_ITEM_PACK = CATEGORY_GENERATOR_100, // 아이템
CG_TRADE_PACK = CATEGORY_GENERATOR_111, // 거래
CG_PARTY_PACK = CATEGORY_GENERATOR_112, // 파티
CG_TRIGGER_PACK = CATEGORY_GENERATOR_113, // 트리거
CG_GM_PACK = CATEGORY_GENERATOR_114, // GM 명령 처리
CG_ETC_PACK = CATEGORY_GENERATOR_115, // 기타 등등
CG_STATUS_PACK = CATEGORY_GENERATOR_116, // 상태 변화
CG_VENDOR_PACK = CATEGORY_GENERATOR_117, // 개인상점
CG_WAREHOUSE_PACK = CATEGORY_GENERATOR_118, // 창고 : 기능별 분리를 위해 추가
CG_PVP_PACK = CATEGORY_GENERATOR_119,
CG_SUMMON_PACK = CATEGORY_GENERATOR_120, // 소환
CG_GUILD_PACK = CATEGORY_GENERATOR_121,
CG_EVENT_PACK = CATEGORY_GENERATOR_122, // 이벤트 인벤토리
CG_QUEST_PACK = CATEGORY_GENERATOR_123,
CG_CRYPTOGRAPHY_PACK = CATEGORY_GENERATOR_125, // 보안 관련
CG_ARMORKIT_PACK = CATEGORY_GENERATOR_127, // ArmorKit 관련
CG_CHUNTING_PACK = CATEGORY_GENERATOR_128, // 경쟁 헌팅
CG_AREACONQUEST_PACK = CATEGORY_GENERATOR_129, // AC 시스템
CG_MISSION_PACK = CATEGORY_GENERATOR_130, // 미션
CG_WAYPOINT_PACK = CATEGORY_GENERATOR_131, // 웨이포인트
CG_CHAO_PACK = CATEGORY_GENERATOR_132, // 카오시스템
CG_SHOP_PACK = CATEGORY_GENERATOR_133,
CG_ZONE_EX_PACK = CATEGORY_GENERATOR_134,
CG_COLLECT_PACK = CATEGORY_GENERATOR_135, //__NA001283_20090221_COLLECTION_PACKET
#ifdef _NA000000_CW_PROTOCOL_UNIFICATION
CW_CONNECTION_PACK = CATEGORY_GENERATOR_150,
CW_CHAT_PACK = CATEGORY_GENERATOR_151, // 캐릭터 선택, 캐릭터 생성
CW_GM_PACK = CATEGORY_GENERATOR_152, // GM 명령어
CW_VIEWPORT_PACK = CATEGORY_GENERATOR_153, // 유저 뷰포트 상태
CW_ARMORKIT_PACK = CATEGORY_GENERATOR_154, // ArmorKit 관련
CW_FRIEND_PACK = CATEGORY_GENERATOR_155, // 친구 관련
CW_GUILD_PACK = CATEGORY_GENERATOR_156, // 길드 관련
CW_CRYPTOGRAPHY_PACK = CATEGORY_GENERATOR_157, // 보안 관련
CW_COMMUNITY_PACK = CATEGORY_GENERATOR_158, // 기타 커뮤니티 관련
CW_REVENGE_PACK = CATEGORY_GENERATOR_159, // 리벤지(나쁜친구) 세팅 관련
CW_MEMO_PACK = CATEGORY_GENERATOR_160, // 쪽지 관련
//CW_SYNC_PACK = CATEGORY_GENERATOR_161,
CW_GROUP_PACK = CATEGORY_GENERATOR_162, // 그룹 맺기 시스템 관련 프로토콜
CW_LOTTO_PACK = CATEGORY_GENERATOR_163, // 하임 로또 관련
CW_PARTY_PACK = CATEGORY_GENERATOR_164, // 파티 관련 프로토콜
CG_MAX_PACK = CATEGORY_GENERATOR_165, // UPPER-BOUNDARY
#else
CG_MAX_PACK = CATEGORY_GENERATOR_136,
#endif
};
// CHARINFO , // 캐릭터 정보
enum eCG_CONNECTION_PROTOCOL
{
CG_CONNECTION_HEARTBEAT_SYN = PROTOCOL_GENERATOR_CONNECTION_001,
CG_CONNECTION_DISCONNECT_CMD = PROTOCOL_GENERATOR_CONNECTION_002,
CG_CONNECTION_RESTART_CMD = PROTOCOL_GENERATOR_CONNECTION_003,
CG_CONNECTION_BACKTOCHARSELECT_SYN = PROTOCOL_GENERATOR_CONNECTION_005,
CG_CONNECTION_BACKTOCHARSELECT_ACK = PROTOCOL_GENERATOR_CONNECTION_006,
CG_CONNECTION_BACKTOCHARSELECT_NAK = PROTOCOL_GENERATOR_CONNECTION_007,
CG_CONNECTION_ENTERSERVER_SYN = PROTOCOL_GENERATOR_CONNECTION_009,
CG_CONNECTION_REENTERSERVER_SYN = PROTOCOL_GENERATOR_CONNECTION_010,
CG_CONNECTION_ENTERSERVER_ACK = PROTOCOL_GENERATOR_CONNECTION_011,
CG_CONNECTION_ENTERSERVER_NAK = PROTOCOL_GENERATOR_CONNECTION_012,
CG_CONNECTION_ENTERVILLAGEREQ_SYN = PROTOCOL_GENERATOR_CONNECTION_014,
CG_CONNECTION_ENTERVILLAGEREQ_ACK = PROTOCOL_GENERATOR_CONNECTION_015,
CG_CONNECTION_ENTERVILLAGEREQ_NAK = PROTOCOL_GENERATOR_CONNECTION_016,
CG_PREPARE_WORLD_CONNECT_SYN = PROTOCOL_GENERATOR_CONNECTION_018,
CG_PREPARE_WORLD_CONNECT_ACK = PROTOCOL_GENERATOR_CONNECTION_019,
CG_PREPARE_WORLD_CONNECT_NAK = PROTOCOL_GENERATOR_CONNECTION_020,
CG_CONNECTION_SERVER_SHUTDOWN_BRD = PROTOCOL_GENERATOR_CONNECTION_021,
CG_CONNECTION_NOTIFY_LOGOUT_SYN = PROTOCOL_GENERATOR_CONNECTION_022,
CG_CONNECTION_BILLING_ALARM_BRD = PROTOCOL_GENERATOR_CONNECTION_023, // 빌링 만료 알림 패킷
CG_CONNECTION_CRASH_REPORT_SYN = PROTOCOL_GENERATOR_CONNECTION_024, // 크래쉬 리포트 패킷.
CG_CONNECTION_CRASH_REPORT_ACK = PROTOCOL_GENERATOR_CONNECTION_025, //
//////////////////////////////////////////////////////////////////////////
//__NA000630_070817_MOLA_5th_UPDATE
CG_SECURE_QUERY_RESOURCE_CHK_T1_CMD = PROTOCOL_GENERATOR_CONNECTION_026,
CG_SECURE_QUERY_RESOURCE_CHK_T1_ACK = PROTOCOL_GENERATOR_CONNECTION_027,
CG_SECURE_QUERY_BUILTIN_CHK_CMD = PROTOCOL_GENERATOR_CONNECTION_028,
CG_SECURE_QUERY_BUILTIN_CHK_ACK = PROTOCOL_GENERATOR_CONNECTION_029,
//////////////////////////////////////////////////////////////////////////
//__NA001334_090420_SERVER_SELECT_FACILITY__
CG_CONNECTION_SERVER_SELECT_REQUEST_SYN = PROTOCOL_GENERATOR_CONNECTION_030,
CG_CONNECTION_SERVER_SELECT_REQUEST_ACK = PROTOCOL_GENERATOR_CONNECTION_031,
//////////////////////////////////////////////////////////////////////////
//_NA000000_100609_CS_TIME_SYNCHRONIZATION_
CG_CONNECTION_TIME_SYNC_SYN = PROTOCOL_GENERATOR_CONNECTION_032,
CG_CONNECTION_TIME_SYNC_CMD = PROTOCOL_GENERATOR_CONNECTION_033,
//////////////////////////////////////////////////////////////////////////
// _NA_20100802_SPEED_HACK_DETECTION
CG_CONNECTION_TICK_QUERY_SYN = PROTOCOL_GENERATOR_CONNECTION_034, // S->C TickCount 질의
CG_CONNECTION_TICK_QUERY_ACK = PROTOCOL_GENERATOR_CONNECTION_035, // C->S TickCount 질의에 대한 응답
#ifdef _JP_20110222_INGAME_CHARNAME_CHANGE
CG_CHARNAME_CHANGE_SYN = PROTOCOL_GENERATOR_CONNECTION_036,
CG_CHARNAME_CHANGE_ACK = PROTOCOL_GENERATOR_CONNECTION_037,
CG_CHARNAME_CHANGE_NAK = PROTOCOL_GENERATOR_CONNECTION_038,
#endif
CG_CONNECTION_HACKER_SYN = PROTOCOL_GENERATOR_CONNECTION_039, //警속棍밈쇱꿎 by:枷쟁팃숲 2021-07-01
};
enum eCG_CHARINFO_PROTOCOL
{
CG_CHARINFO_CREATE_SYN = PROTOCOL_GENERATOR_CHARINFO_001,
CG_CHARINFO_CREATE_ACK = PROTOCOL_GENERATOR_CHARINFO_002,
CG_CHARINFO_CREATE_NAK = PROTOCOL_GENERATOR_CHARINFO_003,
CG_CHARINFO_DESTROY_SYN = PROTOCOL_GENERATOR_CHARINFO_005,
CG_CHARINFO_DESTROY_ACK = PROTOCOL_GENERATOR_CHARINFO_006,
CG_CHARINFO_DESTROY_NAK = PROTOCOL_GENERATOR_CHARINFO_007,
CG_CHARINFO_APPREARANCE_BRD = PROTOCOL_GENERATOR_CHARINFO_009, //< 장착창에서 변화된 정보 캐릭터 외모 정보 broadcast
CG_CHARINFO_CHAR_ITEM_CMD = PROTOCOL_GENERATOR_CHARINFO_011,
CG_CHARINFO_SKILL_CMD = PROTOCOL_GENERATOR_CHARINFO_012,
CG_CHARINFO_QUICK_CMD = PROTOCOL_GENERATOR_CHARINFO_013,
CG_CHARINFO_STYLE_CMD = PROTOCOL_GENERATOR_CHARINFO_014,
CG_CHARINFO_SELECT_INFO_SYN = PROTOCOL_GENERATOR_CHARINFO_016, // 캐릭터 선택했을 때 정보
CG_CHARINFO_SELECT_INFO_ACK = PROTOCOL_GENERATOR_CHARINFO_017,
CG_CHARINFO_DISAPPREARANCE_BRD = PROTOCOL_GENERATOR_CHARINFO_018,
CG_CHARINFO_USERPOINT_CMD = PROTOCOL_GENERATOR_CHARINFO_020, // 사용자 UserPoint 변화
CG_CHARINFO_RECOVER_SYN = PROTOCOL_GENERATOR_CHARINFO_022,
CG_CHARINFO_RECOVER_ACK = PROTOCOL_GENERATOR_CHARINFO_023,
CG_CHARINFO_RECOVER_NAK = PROTOCOL_GENERATOR_CHARINFO_024,
#ifdef __CN_OO0510__FATIGUE_MATCHING_UPDATE
CG_CHARINFO_FATIGUE_CMD = PROTOCOL_GENERATOR_CHARINFO_025,
#endif
#ifdef __NA_001044_ADD_CUSTOM_UI
CG_CHARINFO_CHARACTERID_CHECK_SYN = PROTOCOL_GENERATOR_CHARINFO_029,
CG_CHARINFO_CHARACTERID_CHECK_ACK = PROTOCOL_GENERATOR_CHARINFO_030,
CG_CHARINFO_CHARACTERID_CHECK_NAK = PROTOCOL_GENERATOR_CHARINFO_031,
#endif
//////////////////////////////////////////////////////////////////////////
//__NA000630_070817_MOLA_5th_UPDATE
CG_SECURE_QUERY_RESOURCE_CHK_T2_CMD = PROTOCOL_GENERATOR_CHARINFO_026,
CG_SECURE_QUERY_RESOURCE_CHK_T2_ACK = PROTOCOL_GENERATOR_CHARINFO_027,
//////////////////////////////////////////////////////////////////////////
#ifdef _NA_1419_20100121_ACCUMULATE_POINT
CG_CHARINFO_ACCUMULATE_POINT_CMD = PROTOCOL_GENERATOR_CHARINFO_032,
#endif
// _NA_000096_20100527_CHANGE_CHARACTER_APPEARANCE_SYSTEM
CG_CHARINFO_CHANGE_APPEARANCE_BRD = PROTOCOL_GENERATOR_CHARINFO_033, // 캐릭터 외모 변경 결과를 알림
// _NA002217_100728_EP2_PERK_SYSTEM_
CG_CHARINFO_SKILL_LIST_CMD = PROTOCOL_GENERATOR_CHARINFO_034,
CG_CHARINFO_SKILL_PERK_CMD = PROTOCOL_GENERATOR_CHARINFO_035,
#ifdef _NA_0_20110308_SKILL_COOL_TIME_STORAGE
CG_CHARINFO_SKILL_COOL_TIME_CMD = PROTOCOL_GENERATOR_CHARINFO_036,
#endif
//_NA_002289_20110322_EQUIPMENTS_CALCULATOR_CHANGES_FOR_IMPROVEMENT
CG_CHARINFO_APPREARANCE_LIST_BRD = PROTOCOL_GENERATOR_CHARINFO_037,
CG_CHARINFO_DISAPPREARANCE_LIST_BRD = PROTOCOL_GENERATOR_CHARINFO_038,
// _NA000000_SPEED_HACK_PREVENTION_SUPPORT, client local test
CG_CONNECTION_CLIENT_TICK_TEST_SYN = PROTOCOL_GENERATOR_CHARINFO_039, // C->G
CG_CONNECTION_CLIENT_TICK_TEST_ACK = PROTOCOL_GENERATOR_CHARINFO_040, // G->C
#ifdef _NA_003027_20111013_HONOR_SYSTEM
CG_HONORSYSTEM_PACKET = PROTOCOL_GENERATOR_CHARINFO_041,
#endif //_NA_003027_20111013_HONOR_SYSTEM
CG_POINTWALLET_PACKET = PROTOCOL_GENERATOR_CHARINFO_042, //_NA004034_20120102_POINT_WALLET_SYSTEM
CG_CHARNAME_CHANGE_REQUEST_ACK = PROTOCOL_GENERATOR_CHARINFO_043,
CG_CHARINFO_CHAR_ITEM_TOGGLE_CMD = PROTOCOL_GENERATOR_CHARINFO_044, //_NA_006372_20130108_BADGE_ITEM
CG_CHARINFO_CHAOS_ZONE_RECORD_INFOS_CMD = PROTOCOL_GENERATOR_CHARINFO_045, // _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND
// _NA_000000_20140120_SMART_NPC_SYSTEM
CG_CHARINFO_SMARTNPC_PACKET = PROTOCOL_GENERATOR_CHARINFO_046,
// _NA_007086_20140318_MONSTERBOOK
CG_CHARINFO_MONSTERBOOK_PACKET = PROTOCOL_GENERATOR_CHARINFO_047,
#ifdef _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM
CG_CHARINFO_ATTENDANCE_INFO_PACKET = PROTOCOL_GENERATOR_CHARINFO_048,
CG_CHARINFO_GET_ATTENDANCE_REWARD_PACKET = PROTOCOL_GENERATOR_CHARINFO_049,
#endif // _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM
#ifdef _NA_008012_20150204_SUN_RANKING_SYSTEM
CG_CHARINFO_SUN_RANKING_GRADE_PACKET = PROTOCOL_GENERATOR_CHARINFO_050,
#endif // _NA_008012_20150204_SUN_RANKING_SYSTEM
#ifdef _NA_008404_20150712_MINIGAME_SYSTEM
CG_CHARINFO_MINIGAME_BINGO_INFO_PACKET = PROTOCOL_GENERATOR_CHARINFO_051,
CG_CHARINFO_GET_MINIGAME_BINGO_REWARD_PACKET = PROTOCOL_GENERATOR_CHARINFO_052,
CG_CHARINFO_MINIGAME_NAK = PROTOCOL_GENERATOR_CHARINFO_053,
#endif // _NA_008404_20150712_MINIGAME_SYSTEM
};
// MAP , // 맵
enum eCG_MAP_PROTOCOL
{
CG_MAP_TELEPORT_BRD = PROTOCOL_GENERATOR_MAP_001,
CG_MAP_TELEPORT_SYN = PROTOCOL_GENERATOR_MAP_002,
//////////////////////////////////////////////////////////////////////////
//__NA000630_070817_MOLA_5th_UPDATE
CG_SECURE_QUERY_RESOURCE_CHK_NTF1_SYN = PROTOCOL_GENERATOR_MAP_003,
//////////////////////////////////////////////////////////////////////////
//_NA_0_20100722_AUTO_SYSTEM
CG_MAP_MOVE_LAST_RETURNSCROLL_POS_CMD = PROTOCOL_GENERATOR_MAP_004,
CG_MAP_MOVE_LAST_RETURNSCROLL_POS_NAK = PROTOCOL_GENERATOR_MAP_005,
CG_MAP_RECALL_NAK = PROTOCOL_GENERATOR_MAP_006,
//_NA000000_SPEED_HACK_PREVENTION_SUPPORT, busy request prevention
CG_MAP_KBMOVE_SERIAL_CHECK_CMD = PROTOCOL_GENERATOR_MAP_007, // G->C
CG_MAP_KBMOVE_SERIAL_CHECK_ACK = PROTOCOL_GENERATOR_MAP_008, // C->G
};
// SYNC , // 동기화
enum eCG_SYNC_PROTOCOL
{
CG_SYNC_PLAYER_ENTER_SYN = PROTOCOL_GENERATOR_SYNC_001, // 플레이어 필드 등장 요청
CG_SYNC_PLAYER_ENTER_ACK = PROTOCOL_GENERATOR_SYNC_002, // 플레이어 필드 등장 요청에 대한 허락
CG_SYNC_PLAYER_ENTER_NAK = PROTOCOL_GENERATOR_SYNC_003,
CG_SYNC_ALLPLAYERS_CMD = PROTOCOL_GENERATOR_SYNC_005, // 섹터의 모든 플레이어들 정보 브로드
CG_SYNC_VILLAGE_ALLPLAYERS_CMD = PROTOCOL_GENERATOR_SYNC_006, // 마을 섹터의 모든 플레이어들 정보
CG_SYNC_ALLPLAYERS_EQUIPINFO_CMD = PROTOCOL_GENERATOR_SYNC_007, // 섹터의 모든 플레이어의 장착정보
CG_SYNC_ALLMONSTERS_CMD = PROTOCOL_GENERATOR_SYNC_008,
CG_SYNC_ALLSUMMONEDS_CMD = PROTOCOL_GENERATOR_SYNC_009,
CG_SYNC_ALLFIELDITEMS_CMD = PROTOCOL_GENERATOR_SYNC_010,
CG_SYNC_PLAYER_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_012, // 필드에 등장하는 다른 플레이어들의 정보 브로드캐스팅
CG_SYNC_VILLAGE_PLAYER_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_013, // 마을 필드에 등장하는 다른 플레이어들 정보
CG_SYNC_PLAYER_LEAVE_BRD = PROTOCOL_GENERATOR_SYNC_014, // 필드에서 떠나는 다른 플레이어들의 정보 브로드캐스팅
CG_SYNC_MONSTER_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_016, // 필드에 등장하는 몬스터의 정보 브로드캐스팅
CG_SYNC_MONSTER_DIR_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_017, // 몬스터가 방향 갖고 등장한다고 브로드캐스팅
CG_SYNC_MONSTER_LEAVE_BRD = PROTOCOL_GENERATOR_SYNC_018, // 필드에서 떠나는 몬스터의 정보 브로드캐스팅
CG_SYNC_SUMMONED_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_019, // 필드에 등장하는 소환체의 정보 브로드캐스팅
CG_SYNC_MAPNPC_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_020, // 필드에 등장하는 MapNpc 정보 브로드캐스팅
CG_SYNC_FIELDITEM_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_022,
CG_SYNC_FIELDITEM_LEAVE_BRD = PROTOCOL_GENERATOR_SYNC_023,
CG_SYNC_MOVE_SYN = PROTOCOL_GENERATOR_SYNC_025, // 필드내에서 이동하는 경로
CG_SYNC_MOVE_NAK = PROTOCOL_GENERATOR_SYNC_026,
CG_SYNC_MOVE_BRD = PROTOCOL_GENERATOR_SYNC_027, // 필드내에서 이동하는 경로 브로드캐스팅
CG_SYNC_MOVE_THRUST_BRD = PROTOCOL_GENERATOR_SYNC_028, // 밀리기 정보 브로드캐스팅
CG_SYNC_TARGET_MOVE_SYN = PROTOCOL_GENERATOR_SYNC_030, // 필드내에서 타겟설정하고 이동하는 경로
CG_SYNC_TARGET_MOVE_BRD = PROTOCOL_GENERATOR_SYNC_031, // 필드내에서 타켓설정하고 이동하는 경로 브로드캐스팅
CG_SYNC_KBMOVE_SYN = PROTOCOL_GENERATOR_SYNC_033, // 키보드 이동 요청
CG_SYNC_KBMOVE_BRD = PROTOCOL_GENERATOR_SYNC_034, // 키보드 이동 브로드캐스팅
CG_SYNC_NPC_JUMP_BRD = PROTOCOL_GENERATOR_SYNC_036, // NPC 점프 명령 브로드캐스팅
CG_SYNC_STOP_SYN = PROTOCOL_GENERATOR_SYNC_038, // 플레이어 정지 요청
CG_SYNC_STOP_BRD = PROTOCOL_GENERATOR_SYNC_039, // 플레이어 정지 브로드캐스팅
CG_SYNC_NPC_STOP_BRD = PROTOCOL_GENERATOR_SYNC_041, // NPC 정지 브로드캐스팅
CG_SYNC_ACTION_EXPIRED_CMD = PROTOCOL_GENERATOR_SYNC_043, // 플레이어 액션 끝남 알림
CG_SYNC_FORCED_WARP_BRD = PROTOCOL_GENERATOR_SYNC_045, // 플레이어 강제 이동
CG_SYNC_BOSS_MONSTER_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_047, // 중보스 몬스터 등장
CG_SYNC_FAST_KBMOVE_SYN = PROTOCOL_GENERATOR_SYNC_049, // 전방 숏대시, 구르기
CG_SYNC_FAST_KBMOVE_BRD = PROTOCOL_GENERATOR_SYNC_050,
CG_SYNC_JUMP_SYN = PROTOCOL_GENERATOR_SYNC_052,
CG_SYNC_JUMP_ACK = PROTOCOL_GENERATOR_SYNC_053,
CG_SYNC_JUMP_NAK = PROTOCOL_GENERATOR_SYNC_054,
CG_SYNC_JUMP_BRD = PROTOCOL_GENERATOR_SYNC_055,
CG_SYNC_ALLMAPNPC_CMD = PROTOCOL_GENERATOR_SYNC_056,
CG_SYNC_NPC_JUMPRESULT_BRD = PROTOCOL_GENERATOR_SYNC_057, // NPC 점프 공격 결과
CG_SYNC_LUCKY_MONSTER_RUNAWY_BRD = PROTOCOL_GENERATOR_SYNC_058, // 럭키몬스터 도망
CG_SYNC_TOTEMNPC_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_059, // 필드에 등장하는 TotemNpc 정보 브로드캐스팅
CG_SYNC_ALLTOTEMNPC_CMD = PROTOCOL_GENERATOR_SYNC_060,
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_CMD = PROTOCOL_GENERATOR_SYNC_061,
CG_SECURE_POLICY_PATTERN01_SIMPLEX_SNK_ACK = PROTOCOL_GENERATOR_SYNC_062,
//////////////////////////////////////////////////////////////////////////
CG_SYNC_JUMP_STOP_SYN = PROTOCOL_GENERATOR_SYNC_063,
CG_SYNC_JUMP_STOP_NAK = PROTOCOL_GENERATOR_SYNC_064,
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_CMD = PROTOCOL_GENERATOR_SYNC_065,
CG_SECURE_POLICY_PATTERN02_SIMPLEX_SNK_ACK = PROTOCOL_GENERATOR_SYNC_066,
CG_SYNC_ALLPLAYERS_GUILDRENDERINFO_CMD = PROTOCOL_GENERATOR_SYNC_067,
CG_SYNC_COMPOSED_STREAM_CMD = PROTOCOL_GENERATOR_SYNC_068,
CG_SYNC_OBJECT_DISAPPEAR_DEAD_BRD = PROTOCOL_GENERATOR_SYNC_069, // _NA001385_20090924_DOMINATION_ETC
//_NA_0_20100222_UNIT_TRIGGERS_REGEN
CG_SYNC_MERCHANT_ENTER_BRD = PROTOCOL_GENERATOR_SYNC_070, // 필드에 등장하는 상인 정보 브로드캐스팅
CG_SYNC_ALLMERCHANTNPC_CMD = PROTOCOL_GENERATOR_SYNC_071, //
//_NA001955_110210_WING_COSTUME
CG_SYNC_WINGS_CONTROL_SYN = PROTOCOL_GENERATOR_SYNC_072,
CG_SYNC_WINGS_CONTROL_CMD = PROTOCOL_GENERATOR_SYNC_073,
#ifdef _NA_008012_20150204_SUN_RANKING_SYSTEM
CG_SYNC_ALLPLAYERS_SUN_RANKING_GRADE_CMD = PROTOCOL_GENERATOR_SYNC_074,
#endif // _NA_008012_20150204_SUN_RANKING_SYSTEM
};
// <Cryptography>
enum eCG_CRYPTOGRAPHY_PROTOCOL
{
CG_CRYPTOGRAPHY_KEY = PROTOCOL_GENERATOR_CRYPTOGRAPHY_001, // 패킷 암호화 키 교환
CG_CRYPTOGRAPHY_ACK = PROTOCOL_GENERATOR_CRYPTOGRAPHY_002,
CG_CRYPTOGRAPHY_NAK = PROTOCOL_GENERATOR_CRYPTOGRAPHY_003,
CG_CRYPTOGRAPHY_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_004,
CG_CRYPTOGRAPHY_PACKET_ENCODED = PROTOCOL_GENERATOR_CRYPTOGRAPHY_005, // 144 + n
CG_CRYPTOGRAPHY_PACKET_ENCODING = PROTOCOL_GENERATOR_CRYPTOGRAPHY_006,
CG_CRYPTOGRAPHY_SNK_KEY = PROTOCOL_GENERATOR_CRYPTOGRAPHY_008,
CG_CRYPTOGRAPHY_SNK_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_009,
CG_CRYPTOGRAPHY_SNK_ACK = PROTOCOL_GENERATOR_CRYPTOGRAPHY_010,
CG_CRYPTOGRAPHY_SNK_NAK = PROTOCOL_GENERATOR_CRYPTOGRAPHY_011,
CG_CRYPTOGRAPHY_INFO_TYPE4_SUB_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_012,
CG_CRYPTOGRAPHY_INFO_TYPE5_SUB_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_013,
CG_CRYPTOGRAPHY_INFO_TYPE6_SUB_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_014, // 패킷 암호화 키 교환(W->C)
CG_CRYPTOGRAPHY_INFO_TYPE7_SUB_CMD = PROTOCOL_GENERATOR_CRYPTOGRAPHY_015, // 패킷 암호화 키 설정 성공(C->W)
};
// <Waverix><ArmorKit>
enum eCG_ARMORKIT_PROTOCOL
{
CG_ARMORKIT_FINDHACK = PROTOCOL_GENERATOR_ARMORKIT_001, // 해킹 시도 발견
CG_ARMORKIT_SEED_TEST_CMD = PROTOCOL_GENERATOR_ARMORKIT_010,
CG_ARMORKIT_SEED_TEST_ACK = PROTOCOL_GENERATOR_ARMORKIT_011, // NAK은 필요 없을 것이다.
//////////////////////////////////////////////////////////////////////////
//__NA000000_070913_HACKSHIELD_INSTALLATION__ --START
CG_HACKSHIELD_SERVER_EX_QUERY_CMD = PROTOCOL_GENERATOR_ARMORKIT_012,
CG_HACKSHIELD_SERVER_EX_QUERY_ACK = PROTOCOL_GENERATOR_ARMORKIT_013,
//__NA000000_070913_HACKSHIELD_INSTALLATION__ --END
//////////////////////////////////////////////////////////////////////////
//USING_XIGNCODE
CG_XIGNCODE_SERVER_QUERY_CMD = PROTOCOL_GENERATOR_ARMORKIT_015,
CG_XIGNCODE_SERVER_QUERY_ACK = PROTOCOL_GENERATOR_ARMORKIT_016,
//////////////////////////////////////////////////////////////////////////
// USING_GAMEGUARD
CG_GAMEGUARD_SERVER_QUERY_CMD = PROTOCOL_GENERATOR_ARMORKIT_017,
CG_GAMEGUARD_SERVER_QUERY_ACK = PROTOCOL_GENERATOR_ARMORKIT_018,
CG_GAMEGUARD_HACKDATA_CMD = PROTOCOL_GENERATOR_ARMORKIT_019, // client->server packet
CG_GAMEGUARD_SERVER_QUERY_NAK = PROTOCOL_GENERATOR_ARMORKIT_020,
};
// BATTLE
enum eCG_BATTLE_PROTOCOL
{
CG_BATTLE_PLAYER_ATTACK_SYN = PROTOCOL_GENERATOR_BATTLE_001, // 플레이어 일반공격
CG_BATTLE_PLAYER_ATTACK_BRD = PROTOCOL_GENERATOR_BATTLE_002,
CG_BATTLE_PLAYER_ATTACK_NAK = PROTOCOL_GENERATOR_BATTLE_003,
CG_BATTLE_VKR_ATTACK_SYN = PROTOCOL_GENERATOR_BATTLE_005, // 발키리가 공격 //사용안함
CG_BATTLE_VKR_ATTACK_BRD = PROTOCOL_GENERATOR_BATTLE_006, //사용안함
CG_BATTLE_VKR_RELOAD_SYN = PROTOCOL_GENERATOR_BATTLE_007, // 발키리가 무기를 재장전 //사용안함
CG_BATTLE_VKR_RELOAD_BRD = PROTOCOL_GENERATOR_BATTLE_008, //사용안함
CG_BATTLE_MONSTER_ATTACK_CMD = PROTOCOL_GENERATOR_BATTLE_010, // 몬스터가 공격
CG_BATTLE_PLAYER_AREA_ATTACK_BRD= PROTOCOL_GENERATOR_BATTLE_011, // 플레이어 범위공격
CG_BATTLE_MONSTER_STATUS_RESIST_BRD = PROTOCOL_GENERATOR_BATTLE_012, // 몬스터가 상태저항을 성공
CG_BATTLE_CHARGE_ETHER_BULLET_BRD = PROTOCOL_GENERATOR_BATTLE_013, //
CG_BATTLE_REMOVE_ETHER_BULLET_BRD = PROTOCOL_GENERATOR_BATTLE_014, //
//////////////////////////////////////////////////////////////////////////
//__NA000630_070817_MOLA_5th_UPDATE
CG_SECURE_QUERY_RESOURCE_CHK_T3_CMD = PROTOCOL_GENERATOR_BATTLE_016,
CG_SECURE_QUERY_RESOURCE_CHK_T3_ACK = PROTOCOL_GENERATOR_BATTLE_017,
//////////////////////////////////////////////////////////////////////////
CG_DOMINATION_APPLY_SYN = PROTOCOL_GENERATOR_BATTLE_018,
CG_DOMINATION_APPLY_ACK = PROTOCOL_GENERATOR_BATTLE_019,
CG_DOMINATION_BATTING_HEIM_SYN = PROTOCOL_GENERATOR_BATTLE_020,
CG_DOMINATION_BATTING_HEIM_ACK = PROTOCOL_GENERATOR_BATTLE_021,
CG_DOMINATION_ACCEP_HEIM_SYN = PROTOCOL_GENERATOR_BATTLE_022,
CG_DOMINATION_ACCEP_HEIM_ACK = PROTOCOL_GENERATOR_BATTLE_023,
CG_DOMINATION_MANAGE_SYN = PROTOCOL_GENERATOR_BATTLE_024,
CG_DOMINATION_MANAGE_ACK = PROTOCOL_GENERATOR_BATTLE_025,
CG_DOMINATION_SAVE_GATESTAT_SYN = PROTOCOL_GENERATOR_BATTLE_026,
CG_DOMINATION_SAVE_GATESTAT_ACK = PROTOCOL_GENERATOR_BATTLE_027,
CG_DOMINATION_MINIMAP_SET_BRD = PROTOCOL_GENERATOR_BATTLE_028,
CG_DOMINATION_MINIMAP_LIST_SYN = PROTOCOL_GENERATOR_BATTLE_029,
CG_DOMINATION_MINIMAP_LIST_ACK = PROTOCOL_GENERATOR_BATTLE_030,
CG_DOMINATION_NOTICE_SYN = PROTOCOL_GENERATOR_BATTLE_031,
CG_DOMINATION_NOTICE_ACK = PROTOCOL_GENERATOR_BATTLE_032,
CG_DOMINATION_SELECTED_BRD = PROTOCOL_GENERATOR_BATTLE_033,
//_NA001385_20090924_DOMINATION_ETC
CG_DOMINATION_AREA_INFO_CMD = PROTOCOL_GENERATOR_BATTLE_040, // 점령지 정보 변경시 유저와 주변에 (점령전 진행후)
CG_DOMINATION_TIME_SYNC_BRD = PROTOCOL_GENERATOR_BATTLE_041, // 점령전 시작시 또는 중간 시간 동기화시 맵 전체 유저에게
CG_DOMINATION_COUNT_NOSES_BRD = PROTOCOL_GENERATOR_BATTLE_042, // 점령전 맵에 입.퇴장시 맵 전체 유저에게 카운팅 발송
CG_DOMINATION_KICK_NOTIFY_BRD = PROTOCOL_GENERATOR_BATTLE_043, // 점령전 시스템 준비를 위해 타워 입구로 강제 이동 (10초전)
CG_DOMINATION_START_NOTIFY_BRD = PROTOCOL_GENERATOR_BATTLE_044, // 점령전 맵에 입.퇴장시 맵 전체 유저에게 카운팅 발송
//_NA001385_20090924_DOMINATION_STAMP
CG_DOMINATION_BEGIN_STAMP_BRD = PROTOCOL_GENERATOR_BATTLE_045, // 점령전 각인 시작시 해당 맵 공격길드원에게
CG_DOMINATION_CANCLE_STAMP_BRD = PROTOCOL_GENERATOR_BATTLE_046, // 점령전 각인 실패시 해당 맵 공격길드원에게
CG_DOMINATION_RESULT_BRD = PROTOCOL_GENERATOR_BATTLE_047, // 점령전 결과를 승리길드원(전체)과 패배길드원(해당맵)에게
//_NA001385_20090924_DOMINATION_SKILL
CG_DOMINATION_CRYSTALWARP_STATE_BRD = PROTOCOL_GENERATOR_BATTLE_048, // 동일 점령전 길드원에게 수정 워프 상태 전달
//__NA_20100608_ADD_GUILD_INFO_BY_DOMINATION
CG_DOMINATION_UPDATE_GUILDINFO_BRD = PROTOCOL_GENERATOR_BATTLE_049, // 점령전관련 길드 정보 Update알림
//__NA_20100608_ADD_GUILD_INFO_BY_DOMINATION
CG_AGGRO_VALUES_CMD = PROTOCOL_GENERATOR_BATTLE_050, // 몬스터의 어그로 수치 전송
CG_ARRGO_DISPLAY_CMD = PROTOCOL_GENERATOR_BATTLE_051, // 몬스터에 표시할 어그로 수치
CG_MONSTER_SELECT_INFO_SYN = PROTOCOL_GENERATOR_BATTLE_052, // 몬스터를 선택했을 경우
//_NA_20110216_INCREASE_DOMINATION_DEFFENSEWALL_POINT
CG_DOMINATION_ADD_DEFFENSEWALL_POINT_SYN = PROTOCOL_GENERATOR_BATTLE_053, // 점령전 방벽 포인트 증가 요청
CG_DOMINATION_ADD_DEFFENSEWALL_POINT_ACK = PROTOCOL_GENERATOR_BATTLE_054, // 점령전 방벽 포인트 증가 응답
//_NA_20110406_CHANGE_RULE_FOR_DOMINATION_JOIN
CG_DOMINATION_MEMBERLIST_NTF = PROTOCOL_GENERATOR_BATTLE_055, // 점령전 맴버 정보 보내기
CG_DOMINATION_MEMBER_JOIN_SYN = PROTOCOL_GENERATOR_BATTLE_056, // 점령전 맴버 참여
CG_DOMINATION_MEMBER_JOIN_ACK = PROTOCOL_GENERATOR_BATTLE_057, //
CG_DOMINATION_MEMBER_LEAVE_SYN = PROTOCOL_GENERATOR_BATTLE_058, // 점령전 맴버 참여 취소
CG_DOMINATION_MEMBER_LEAVE_ACK = PROTOCOL_GENERATOR_BATTLE_059, //
CG_DOMINATION_REFRESH_MEMBERLIST_REQ = PROTOCOL_GENERATOR_BATTLE_060,// 점령전 맴버 리스트 새로고침
#ifdef _NA_006826_20130722_DOMINATION_RENEWAL
CG_DOMINATION_DEFENSE_GUILD_ALLIENCE_LIST_BRD = PROTOCOL_GENERATOR_BATTLE_061, // 점령전 수성 길드 동맹 리스트 보내기
#endif // _NA_006826_20130722_DOMINATION_RENEWAL
#ifdef _NA_007128_20140326_MONDSCHIEN_DOMINATION
CG_DOMINATION_TURNOVER_BRD = PROTOCOL_GENERATOR_BATTLE_201, // 점령전 턴오버시 클라이언트에게 알림
#endif //_NA_007128_20140326_MONDSCHIEN_DOMINATION
//_NA_008321_20150601_BATTLE_INFO
CG_BATTLE_DETAIL_INFORMATION_CMD = PROTOCOL_GENERATOR_BATTLE_062, // 데미지정보
};
// STYLE
enum eCG_STYLE_PROTOCOL
{
CG_STYLE_PLAYER_ATTACK_BRD = PROTOCOL_GENERATOR_STYLE_001,
CG_STYLE_PLAYER_ATTACK_RESULT_BRD = PROTOCOL_GENERATOR_STYLE_002,
CG_STYLE_SELECT_STYLE_SYN = PROTOCOL_GENERATOR_STYLE_004, // 스타일 지정
CG_STYLE_SELECT_STYLE_BRD = PROTOCOL_GENERATOR_STYLE_005,
CG_STYLE_SELECT_STYLE_NAK = PROTOCOL_GENERATOR_STYLE_006,
CG_STYLE_LINK_SYN = PROTOCOL_GENERATOR_STYLE_009,
CG_STYLE_LINK_ACK = PROTOCOL_GENERATOR_STYLE_010,
CG_STYLE_LINK_NAK = PROTOCOL_GENERATOR_STYLE_011,
CG_STYLE_UNLINK_SYN = PROTOCOL_GENERATOR_STYLE_013,
CG_STYLE_UNLINK_ACK = PROTOCOL_GENERATOR_STYLE_014,
CG_STYLE_UNLINK_NAK = PROTOCOL_GENERATOR_STYLE_015,
CG_STYLE_LINKMOVE_SYN = PROTOCOL_GENERATOR_STYLE_017,
CG_STYLE_LINKMOVE_ACK = PROTOCOL_GENERATOR_STYLE_018,
CG_STYLE_LINKMOVE_NAK = PROTOCOL_GENERATOR_STYLE_019,
//////////////////////////////////////////////////////////////////////////
//__NA000630_070817_MOLA_5th_UPDATE
CG_SECURE_QUERY_RESOURCE_CHK_T4_CMD = PROTOCOL_GENERATOR_STYLE_013,
CG_SECURE_QUERY_RESOURCE_CHK_T4_ACK = PROTOCOL_GENERATOR_STYLE_014,
CG_SECURE_QUERY_RESOURCE_CHK_NTF2_SYN = PROTOCOL_GENERATOR_STYLE_015,
//////////////////////////////////////////////////////////////////////////
};
// SKILL
enum eCG_SKILL_PROTOCOL
{
CG_SKILL_ACTION_SYN = PROTOCOL_GENERATOR_SKILL_001, // 스킬 시전
CG_SKILL_ACTION_INSTANT_RESULT_BRD = PROTOCOL_GENERATOR_SKILL_002, // 즉시 스킬 결과 브로드
CG_SKILL_ACTION_DELAY_START_BRD = PROTOCOL_GENERATOR_SKILL_003, // 딜레이 스킬 시작 브로드
CG_SKILL_ACTION_DELAY_RESULT_BRD = PROTOCOL_GENERATOR_SKILL_004, // 딜레이 스킬 결과 브로드
CG_SKILL_ACTION_NAK = PROTOCOL_GENERATOR_SKILL_005, // 스킬 시전 실패
CG_SKILL_PERIODIC_DAMAGE_BRD = PROTOCOL_GENERATOR_SKILL_007, // 주기적인 데미지 브로드
CG_SKILL_SELECT_SKILLPOINT_SYN = PROTOCOL_GENERATOR_SKILL_009, // 스킬포인트 UP
CG_SKILL_SELECT_SKILLPOINT_ACK = PROTOCOL_GENERATOR_SKILL_010,
CG_SKILL_SELECT_SKILLPOINT_NAK = PROTOCOL_GENERATOR_SKILL_011,
CG_SKILL_PASSIVE_SKILL_LIST_CMD = PROTOCOL_GENERATOR_SKILL_013, // 패시브 스킬리스트를 브로드
CG_SKILL_PASSIVE_SKILL_ADD_CMD = PROTOCOL_GENERATOR_SKILL_014, // 기존 패시브 스킬이 변경(레벨업)되거나 신규로 추가 되었을 경우 브로드
CG_SKILL_REFLECT_DAMAGE_BRD = PROTOCOL_GENERATOR_SKILL_016, // 반사 데미지 브로드
CG_SKILL_CASTING_CANCEL_SYN = PROTOCOL_GENERATOR_SKILL_018, // 스킬 캐스팅 취소 요청
CG_SKILL_CASTING_CANCEL_BRD = PROTOCOL_GENERATOR_SKILL_019, // 스킬 캐스팅 취소 성공
CG_SKILL_CASTING_CANCEL_NAK = PROTOCOL_GENERATOR_SKILL_020, // 스킬 캐스팅 취소 실패
CG_SKILL_EFFECT_BOMB_BRD = PROTOCOL_GENERATOR_SKILL_021, // 폭탄 투하 스킬
CG_SKILL_REFRESH_CMD = PROTOCOL_GENERATOR_SKILL_022, //스킬 전체 resfresh
CG_SKILL_POINT_REMAIN_CMD = PROTOCOL_GENERATOR_SKILL_023, //남은 스킬 포인트 알림
CG_SKILL_SELF_DESTRUCTION_BRD = PROTOCOL_GENERATOR_SKILL_026, // 자폭용 데미지 처리
CG_SKILL_TRANSPARENT_BRD = PROTOCOL_GENERATOR_SKILL_027, // 투명상태 처리
CG_SKILL_SUCTION_BRD = PROTOCOL_GENERATOR_SKILL_028, // 흡수상태 처리
CG_SKILL_VITAL_SUCTION_BRD = PROTOCOL_GENERATOR_SKILL_029, // 죽은 시체 HP흡수 처리.
CG_SKILL_EXECUTE_STATUS_CMD = PROTOCOL_GENERATOR_SKILL_030, // 상태 실행.
//_NA002217_100728_EP2_PERK_SYSTEM_
CG_SKILL_PERK_CONTROL_SYN = PROTOCOL_GENERATOR_SKILL_031,
CG_SKILL_PERK_CONTROL_CMD = PROTOCOL_GENERATOR_SKILL_032,
CG_SKILL_PERK_STATUS_CMD = PROTOCOL_GENERATOR_SKILL_033,
#ifdef _NA_007019_20140107_PERK_CHANGE_SYSTEM
CG_SKILL_PERK_GROUP_CONTROL_SYN = PROTOCOL_GENERATOR_SKILL_034, // 퍽 그룹 교체를 요청
CG_SKILL_PERK_GROUP_CONTROL_CMD = PROTOCOL_GENERATOR_SKILL_035, // 퍽 그룹 교체에 대한 실행
#endif // _NA_007019_20140107_PERK_CHANGE_SYSTEM
};
// CONVERSATION , // 대화
enum eCG_CONVERSATION_PROTOCOL
{
CG_CONVERSATION_FIELDCHAT_SYN = PROTOCOL_GENERATOR_CONVERSATION_001, // 필드내 채팅 요청
CG_CONVERSATION_FIELDCHAT_ACK = PROTOCOL_GENERATOR_CONVERSATION_002, // 필드내 채팅 허락
CG_CONVERSATION_FIELDCHAT_BRD = PROTOCOL_GENERATOR_CONVERSATION_003, // 필드내 채팅 브로드 캐스팅
};
//━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
// 새로 방 작업을 할때 사용하는 프로토콜
//━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
enum eCG_ZONE_PROTOCOL
{
// 미션 로비 방 리스트 요청
CG_ZONE_LIST_MISSIONLOBBY_SYN = PROTOCOL_GENERATOR_ZONE_001,
CG_ZONE_LIST_MISSIONLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_002,
CG_ZONE_LIST_MISSIONLOBBY_NAK = PROTOCOL_GENERATOR_ZONE_003,
// 헌팅 로비 방 리스트 요청 = PROTOCOL_GENERATOR_ZONE_005,
CG_ZONE_LIST_HUNTINGLOBBY_SYN = PROTOCOL_GENERATOR_ZONE_006,
CG_ZONE_LIST_HUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_007,
CG_ZONE_LIST_HUNTINGLOBBY_NAK = PROTOCOL_GENERATOR_ZONE_008,
// PVP 로비 방 리스트 요청 = PROTOCOL_GENERATOR_ZONE_010,
CG_ZONE_LIST_PVPLOBBY_SYN = PROTOCOL_GENERATOR_ZONE_011,
CG_ZONE_LIST_PVPLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_012,
CG_ZONE_LIST_PVPLOBBY_NAK = PROTOCOL_GENERATOR_ZONE_013,
// 경쟁헌팅 로비 방 리스트 요청 = PROTOCOL_GENERATOR_ZONE_015,
CG_ZONE_LIST_CHUNTINGLOBBY_SYN = PROTOCOL_GENERATOR_ZONE_016,
CG_ZONE_LIST_CHUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_017,
CG_ZONE_LIST_CHUNTINGLOBBY_NAK = PROTOCOL_GENERATOR_ZONE_018,
// 진행된 헌팅 방 리스트 요청 = PROTOCOL_GENERATOR_ZONE_020,
CG_ZONE_LIST_HUNTING_SYN = PROTOCOL_GENERATOR_ZONE_021,
CG_ZONE_LIST_HUNTING_ACK = PROTOCOL_GENERATOR_ZONE_022,
CG_ZONE_LIST_HUNTING_NAK = PROTOCOL_GENERATOR_ZONE_023,
// 특정 방 리스트 새로고침 = PROTOCOL_GENERATOR_ZONE_026,
CG_ZONE_LIST_REFRESH_SYN = PROTOCOL_GENERATOR_ZONE_027,
CG_ZONE_LIST_REFRESH_HUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_028,
CG_ZONE_LIST_REFRESH_MISSIONLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_029,
CG_ZONE_LIST_REFRESH_PVPLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_030,
CG_ZONE_LIST_REFRESH_HUNTING_ACK = PROTOCOL_GENERATOR_ZONE_031,
CG_ZONE_LIST_REFRESH_NONE_ACK = PROTOCOL_GENERATOR_ZONE_032,
CG_ZONE_LIST_REFRESH_NAK = PROTOCOL_GENERATOR_ZONE_033,
// 바로가기 = PROTOCOL_GENERATOR_ZONE_035,
CG_ZONE_SHORTCUT_SYN = PROTOCOL_GENERATOR_ZONE_036,
CG_ZONE_SHORTCUT_HUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_037,
CG_ZONE_SHORTCUT_MISSIONLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_038,
CG_ZONE_SHORTCUT_PVPLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_039,
CG_ZONE_SHORTCUT_HUNTING_ACK = PROTOCOL_GENERATOR_ZONE_040,
CG_ZONE_SHORTCUT_NAK = PROTOCOL_GENERATOR_ZONE_041,
// 아이디로 방 찾기 = PROTOCOL_GENERATOR_ZONE_043,
CG_ZONE_FIND_ROOM_FROM_CHARID_SYN = PROTOCOL_GENERATOR_ZONE_044,
CG_ZONE_MISSIONLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_045,
CG_ZONE_HUNTINGLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_046,
CG_ZONE_PVPLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_047,
CG_ZONE_HUNTING_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_048,
CG_ZONE_FIND_ROOM_FROM_CHARID_NAK = PROTOCOL_GENERATOR_ZONE_049,
// 방장이 로비(헌팅or미션orPVP)방을 만든다 = PROTOCOL_GENERATOR_ZONE_051,
CG_ZONE_LOBBY_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_052,
CG_ZONE_LOBBY_CREATE_ACK = PROTOCOL_GENERATOR_ZONE_053,
CG_ZONE_LOBBY_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_054,
// 로비에 참가 = PROTOCOL_GENERATOR_ZONE_056,
CG_ZONE_LOBBY_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_057,
CG_ZONE_LOBBY_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_058,
CG_ZONE_LOBBY_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_059,
CG_ZONE_MASTER_CHANGED_BRD = PROTOCOL_GENERATOR_ZONE_061, //< 방장이 바뀌었다.
// [구성원의 권한] = PROTOCOL_GENERATOR_ZONE_063,
// 구성원이 레디 버튼을 누른다. = PROTOCOL_GENERATOR_ZONE_064,
CG_ZONE_LOBBY_READY_SYN = PROTOCOL_GENERATOR_ZONE_065,
CG_ZONE_LOBBY_READY_ACK = PROTOCOL_GENERATOR_ZONE_066,
CG_ZONE_LOBBY_READY_NAK = PROTOCOL_GENERATOR_ZONE_067,
CG_ZONE_LOBBY_READY_BRD = PROTOCOL_GENERATOR_ZONE_068, //< 구성원들에게 전송
CG_ZONE_LOBBY_READY_CANCEL_SYN = PROTOCOL_GENERATOR_ZONE_070,
CG_ZONE_LOBBY_READY_CANCEL_ACK = PROTOCOL_GENERATOR_ZONE_071,
CG_ZONE_LOBBY_READY_CANCEL_NAK = PROTOCOL_GENERATOR_ZONE_072,
CG_ZONE_LOBBY_READY_CANCEL_BRD = PROTOCOL_GENERATOR_ZONE_073,
CG_ZONE_LOBBY_REQUEST_INFO_SYN = PROTOCOL_GENERATOR_ZONE_075,
CG_ZONE_LOBBY_HUNTING_REQUEST_INFO_ACK = PROTOCOL_GENERATOR_ZONE_076,
CG_ZONE_LOBBY_MISSION_REQUEST_INFO_ACK = PROTOCOL_GENERATOR_ZONE_077,
CG_ZONE_LOBBY_PVP_REQUEST_INFO_ACK = PROTOCOL_GENERATOR_ZONE_078,
CG_ZONE_LOBBY_REQUEST_INFO_NAK = PROTOCOL_GENERATOR_ZONE_079,
// [방장의 권한] = PROTOCOL_GENERATOR_ZONE_081,
// 인원수 변경 = PROTOCOL_GENERATOR_ZONE_082,
CG_ZONE_LOBBY_NUMBEROFPLAYER_SYN = PROTOCOL_GENERATOR_ZONE_083,
CG_ZONE_LOBBY_NUMBEROFPLAYER_ACK = PROTOCOL_GENERATOR_ZONE_084,
CG_ZONE_LOBBY_NUMBEROFPLAYER_NAK = PROTOCOL_GENERATOR_ZONE_085,
CG_ZONE_LOBBY_NUMBEROFPLAYER_BRD = PROTOCOL_GENERATOR_ZONE_086,
CG_ZONE_LOBBY_NONBLOCKSLOTNUM_SYN = PROTOCOL_GENERATOR_ZONE_088,
CG_ZONE_LOBBY_NONBLOCKSLOTNUM_ACK = PROTOCOL_GENERATOR_ZONE_089,
CG_ZONE_LOBBY_NONBLOCKSLOTNUM_NAK = PROTOCOL_GENERATOR_ZONE_090,
CG_ZONE_LOBBY_NONBLOCKSLOTNUM_BRD = PROTOCOL_GENERATOR_ZONE_091,
// 플레이어 강퇴 = PROTOCOL_GENERATOR_ZONE_093,
CG_ZONE_LOBBY_KICKPLAYER_SYN = PROTOCOL_GENERATOR_ZONE_094,
CG_ZONE_LOBBY_KICKPLAYER_ACK = PROTOCOL_GENERATOR_ZONE_095,
CG_ZONE_LOBBY_KICKPLAYER_NAK = PROTOCOL_GENERATOR_ZONE_096,
// 플레이어 팀 변경 = PROTOCOL_GENERATOR_ZONE_098,
CG_ZONE_LOBBY_CHANGE_TEAM_SYN = PROTOCOL_GENERATOR_ZONE_099,
CG_ZONE_LOBBY_CHANGE_TEAM_ACK = PROTOCOL_GENERATOR_ZONE_100,
CG_ZONE_LOBBY_CHANGE_TEAM_NAK = PROTOCOL_GENERATOR_ZONE_101,
CG_ZONE_LOBBY_CHANGE_TEAM_BRD = PROTOCOL_GENERATOR_ZONE_102, //< 구성원들에게 전송
CG_ZONE_LOBBY_CHANGE_MAP_SYN = PROTOCOL_GENERATOR_ZONE_104,
CG_ZONE_LOBBY_CHANGE_MAP_ACK = PROTOCOL_GENERATOR_ZONE_105,
CG_ZONE_LOBBY_CHANGE_MAP_NAK = PROTOCOL_GENERATOR_ZONE_106,
CG_ZONE_LOBBY_CHANGE_MAP_BRD = PROTOCOL_GENERATOR_ZONE_107,
// 로비의 헌팅 제한 설정 바꿈(난이도 = PROTOCOL_GENERATOR_ZONE_109,
CG_ZONE_LOBBY_HUNTING_CONFIG_SYN = PROTOCOL_GENERATOR_ZONE_110,
CG_ZONE_LOBBY_HUNTING_CONFIG_ACK = PROTOCOL_GENERATOR_ZONE_111,
CG_ZONE_LOBBY_HUNTING_CONFIG_NAK = PROTOCOL_GENERATOR_ZONE_112,
CG_ZONE_LOBBY_HUNTING_CONFIG_BRD = PROTOCOL_GENERATOR_ZONE_113, //< 구성원들에게 전송
// 로비의 PVP 제한 설정 바꿈(룰 = PROTOCOL_GENERATOR_ZONE_115,
CG_ZONE_LOBBY_PVP_CONFIG_SYN = PROTOCOL_GENERATOR_ZONE_116,
//CG_ZONE_LOBBY_PVP_CONFIG_ACK = PROTOCOL_GENERATOR_ZONE_117,
CG_ZONE_LOBBY_PVP_CONFIG_NAK = PROTOCOL_GENERATOR_ZONE_118,
CG_ZONE_LOBBY_PVP_CONFIG_BRD = PROTOCOL_GENERATOR_ZONE_119, //< 구성원들에게 전송
CG_ZONE_LOBBY_PVP_INFO_BRD = PROTOCOL_GENERATOR_ZONE_120,
// 경쟁헌팅 제한 설정 바꿈(룰 = PROTOCOL_GENERATOR_ZONE_122,
CG_ZONE_LOBBY_CHUNTING_CONFIG_SYN = PROTOCOL_GENERATOR_ZONE_123,
CG_ZONE_LOBBY_CHUNTING_CONFIG_ACK = PROTOCOL_GENERATOR_ZONE_124,
CG_ZONE_LOBBY_CHUNTING_CONFIG_NAK = PROTOCOL_GENERATOR_ZONE_125,
CG_ZONE_LOBBY_CHUNTING_CONFIG_BRD = PROTOCOL_GENERATOR_ZONE_126, //< 구성원들에게 전송
CG_ZONE_HUNTING_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_128,
//CG_ZONE_HUNTING_CREATE_ACK = PROTOCOL_GENERATOR_ZONE_129, // 안씀
CG_ZONE_HUNTING_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_130,
CG_ZONE_MISSION_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_132,
//CG_ZONE_MISSION_CREATE_ACK = PROTOCOL_GENERATOR_ZONE_133, // 안씀
CG_ZONE_MISSION_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_134,
CG_ZONE_CHUNTING_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_136,
CG_ZONE_CHUNTING_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_137,
CG_ZONE_PVP_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_139,
CG_ZONE_PVP_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_140,
CG_ZONE_HUNTINGLOBBY_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_142,
CG_ZONE_MISSIONLOBBY_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_143,
CG_ZONE_PVPLOBBY_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_144,
CG_ZONE_HUNTING_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_145,
CG_ZONE_MISSION_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_146,
CG_ZONE_PVP_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_147,
CG_ZONE_HUNTING_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_149,
CG_ZONE_HUNTING_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_150,
CG_ZONE_HUNTING_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_151,
//CG_ZONE_MISSION_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_153, //< 사용안함 // 미션 중간에 들어 갈 수 없다.
CG_ZONE_MISSION_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_154,
CG_ZONE_MISSION_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_155,
//CG_ZONE_PVP_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_157, //< 사용안함 // PVP 중간에 들어 갈 수 없다.
CG_ZONE_PVP_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_158,
CG_ZONE_PVP_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_159,
CG_ZONE_LOBBY_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_161,
CG_ZONE_LOBBY_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_162,
CG_ZONE_LOBBY_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_163,
CG_ZONE_MISSION_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_165,
CG_ZONE_MISSION_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_166,
CG_ZONE_MISSION_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_167,
CG_ZONE_HUNTING_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_169,
CG_ZONE_HUNTING_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_170,
CG_ZONE_HUNTING_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_171,
CG_ZONE_PVP_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_173,
CG_ZONE_PVP_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_174,
CG_ZONE_PVP_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_175,
// 릴레이 헌팅 생성 = PROTOCOL_GENERATOR_ZONE_177,
CG_ZONE_HUNTING_RELAY_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_178,
//CG_ZONE_HUNTING_RELAY_CREATE_ACK = PROTOCOL_GENERATOR_ZONE_179,
CG_ZONE_HUNTING_RELAY_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_180,
CG_ZONE_HUNTING_RELAY_CREATE_BRD = PROTOCOL_GENERATOR_ZONE_181,
// 릴레이 헌팅 참가 = PROTOCOL_GENERATOR_ZONE_183,
CG_ZONE_HUNTING_RELAY_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_184,
CG_ZONE_HUNTING_RELAY_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_185,
CG_ZONE_HUNTING_RELAY_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_186,
// PORTAL를 통한 필드 간의 맵 이동. = PROTOCOL_GENERATOR_ZONE_193,
CG_ZONE_PORTAL_FIELD_MOVE_SYN = PROTOCOL_GENERATOR_ZONE_194,
CG_ZONE_PORTAL_FIELD_MOVE_ACK = PROTOCOL_GENERATOR_ZONE_195,
CG_ZONE_PORTAL_FIELD_MOVE_NAK = PROTOCOL_GENERATOR_ZONE_196,
CG_ZONE_CHUNTING_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_198,
CG_ZONE_CHUNTING_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_199,
CG_ZONE_CHUNTING_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_200,
// 참가가능한 경쟁헌팅 방 리스트 요청 = PROTOCOL_GENERATOR_ZONE_202,
CG_ZONE_LIST_CHUNTING_SYN = PROTOCOL_GENERATOR_ZONE_203,
CG_ZONE_LIST_CHUNTING_ACK = PROTOCOL_GENERATOR_ZONE_204,
CG_ZONE_LIST_CHUNTING_NAK = PROTOCOL_GENERATOR_ZONE_205,
// 경쟁헌팅 조인로비 생성 = PROTOCOL_GENERATOR_ZONE_207,
CG_ZONE_CHUNTINGLOBBY_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_208,
CG_ZONE_CHUNTINGLOBBY_CREATE_ACK = PROTOCOL_GENERATOR_ZONE_209,
CG_ZONE_CHUNTINGLOBBY_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_210,
CG_ZONE_CHUNTINGLOBBY_JOIN_CMD = PROTOCOL_GENERATOR_ZONE_212,
CG_ZONE_CHUNTING_MIGRATE_SYN = PROTOCOL_GENERATOR_ZONE_214,
CG_ZONE_CHUNTING_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_215,
CG_ZONE_CHUNTING_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_216,
CG_ZONE_SHORTCUT_CHUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_218,
// 죽었을때 필드에서 마을로 이동. = PROTOCOL_GENERATOR_ZONE_220,
CG_ZONE_RETURN_VILLAGE_SYN = PROTOCOL_GENERATOR_ZONE_221,
CG_ZONE_RETURN_VILLAGE_ACK = PROTOCOL_GENERATOR_ZONE_222,
CG_ZONE_RETURN_VILLAGE_NAK = PROTOCOL_GENERATOR_ZONE_223,
CG_ZONE_LOBBY_CHUNTING_REQUEST_INFO_ACK = PROTOCOL_GENERATOR_ZONE_225,
CG_ZONE_CHUNTINGLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_226,
CG_ZONE_CHUNTING_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_227,
CG_ZONE_LIST_REFRESH_CHUNTINGLOBBY_ACK = PROTOCOL_GENERATOR_ZONE_229,
CG_ZONE_LIST_REFRESH_CHUNTING_ACK = PROTOCOL_GENERATOR_ZONE_230,
CG_ZONE_CHUNTINGLOBBY_CHANGE_MAXUSER_CMD = PROTOCOL_GENERATOR_ZONE_232, // 헌팅로비 최대유저수 변경
CG_ZONE_GMPORTAL_FIELD_MOVE_CMD = PROTOCOL_GENERATOR_ZONE_233,
// 릴레이 미션 생성
CG_ZONE_MISSION_RELAY_CREATE_SYN = PROTOCOL_GENERATOR_ZONE_234,
CG_ZONE_MISSION_RELAY_CREATE_NAK = PROTOCOL_GENERATOR_ZONE_235,
CG_ZONE_MISSION_RELAY_CREATE_BRD = PROTOCOL_GENERATOR_ZONE_236,
// 릴레이 미션 참가
CG_ZONE_MISSION_RELAY_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_237,
CG_ZONE_MISSION_RELAY_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_238,
// CG_ZONE_LOBBY_JOIN_NAK
// 방의 SpecialType이 바뀜
CG_ZONE_CHANGE_SPECIALTYPE_CMD = PROTOCOL_GENERATOR_ZONE_240,
// 방 번호로 찾기 : 패킷을 구분하지 않고 이름으로 찾는 패킷과 ACK/NAK패킷 동일!
CG_ZONE_FIND_ROOM_FROM_NO_SYN = PROTOCOL_GENERATOR_ZONE_241,
//CG_ZONE_MISSIONLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_241,
//CG_ZONE_HUNTINGLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_241,
//CG_ZONE_PVPLOBBY_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_241,
//CG_ZONE_HUNTING_ROOM_FROM_CHARID_ACK = PROTOCOL_GENERATOR_ZONE_241,
//CG_ZONE_FIND_ROOM_FROM_CHARID_NAK = PROTOCOL_GENERATOR_ZONE_241,
// [11/18/2009 namka199] _NA_0_20091118_GAMEROOM_BATTLE_RESULT 게임방의 전투 결과 통보
CG_ZONE_PLAYER_BATTLE_RESULT_SYN = PROTOCOL_GENERATOR_ZONE_242,
CG_ZONE_PLAYER_BATTLE_RESULT_NAK = PROTOCOL_GENERATOR_ZONE_243,
CG_ZONE_INSERT_BATTLE_PLAYER_CMD = PROTOCOL_GENERATOR_ZONE_244,
CG_ZONE_REMOVE_BATTLE_PLAYER_CMD = PROTOCOL_GENERATOR_ZONE_245,
CG_ZONE_PLAYER_BATTLE_RESULT_ACK = PROTOCOL_GENERATOR_ZONE_246,
CG_ZONE_CHUNTING_BATTLE_INFO_CMD = PROTOCOL_GENERATOR_ZONE_247,
//////////////////////////////////////////////////////////////////////////
//#if !defined( __NA001226_INSTANCE_DUNGEON_EXTENTION__ )
CG_ZONE_CREATE_TOP_OF_TRIAL_SYN = PROTOCOL_GENERATOR_ZONE_250,
CG_ZONE_CREATE_TOP_OF_TRIAL_NAK = PROTOCOL_GENERATOR_ZONE_251,
CG_ZONE_JOIN_TOP_OF_TRIAL_ACK = PROTOCOL_GENERATOR_ZONE_252,
CG_ZONE_JOIN_TOP_OF_TRIAL_NAK = PROTOCOL_GENERATOR_ZONE_253,
//#if defined( __NA001226_INSTANCE_DUNGEON_EXTENTION__ )
CG_ZONE_INSTANCE_DUNGEON_REQUEST_SYN = PROTOCOL_GENERATOR_ZONE_250, //C->G
CG_ZONE_INSTANCE_DUNGEON_REQUEST_RESULT_NAK = PROTOCOL_GENERATOR_ZONE_251, //G->C
CG_ZONE_INSTANCE_DUNGEON_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_252, //G->C
CG_ZONE_INSTANCE_DUNGEON_JOIN_NAK = PROTOCOL_GENERATOR_ZONE_253, //G->C
//////////////////////////////////////////////////////////////////////////
CG_ZONE_INSTANCE_DUNGEON_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_254,
CG_ZONE_INSTANCE_DUNGEON_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_255,
CG_ZONE_INSTANCE_DUNGEON_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_256,
// PROTOCOL_GENERATOR_ZONE_MAX
};
enum eCG_ZONE_EX_PROTOCOL
{
CG_ZONE_EX_LOBBY_NAME_CHANGE_SYN = PROTOCOL_GENERATOR_ZONE_EX_001,
CG_ZONE_EX_LOBBY_NAME_CHANGE_ACK = PROTOCOL_GENERATOR_ZONE_EX_002,
CG_ZONE_EX_LOBBY_NAME_CHANGE_NAK = PROTOCOL_GENERATOR_ZONE_EX_003,
CG_ZONE_EX_TUTORIAL_FIELD_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_EX_004,
CG_ZONE_EX_TUTORIAL_MISSION_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_EX_006,
CG_ZONE_EX_TUTORIAL_MISSION_LEAVE_CMD = PROTOCOL_GENERATOR_ZONE_EX_007, // 서버가 준 맵코드로 클라 이전마을 저장된 부분 대치시킨다
CG_ZONE_EX_ROOM_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_EX_008,
CG_ZONE_EX_CAN_CREATE_100LEVEL_QUEST_MISSION_SYN = PROTOCOL_GENERATOR_ZONE_EX_010, // '시련의 구슬' 정보 + 방 만들기 정보 + 파티 조건 (100레벨 유저들
CG_ZONE_EX_CAN_JOIN_100LEVEL_QUEST_MISSION_ACK = PROTOCOL_GENERATOR_ZONE_EX_011, // 성공/실패
CG_ZONE_EX_CAN_JOIN_100LEVEL_QUEST_MISSION_NAK = PROTOCOL_GENERATOR_ZONE_EX_012, // 더 이상 처리 불가 강제 종료
CG_ZONE_EX_SSQ_JOIN_INFO_SYN = PROTOCOL_GENERATOR_ZONE_EX_014, //C->G
CG_ZONE_EX_SSQ_JOIN_INFO_ACK = PROTOCOL_GENERATOR_ZONE_EX_015, //G->C
CG_ZONE_EX_SSQ_JOIN_SYN = PROTOCOL_GENERATOR_ZONE_EX_016, //C->G
CG_ZONE_EX_SSQ_JOIN_ACK = PROTOCOL_GENERATOR_ZONE_EX_017, //G->C
CG_ZONE_EX_SSQ_ROOM_CTRL_CMD = PROTOCOL_GENERATOR_ZONE_EX_018, //G->C
CG_ZONE_EX_SSQ_ROOM_INFO_SYN = PROTOCOL_GENERATOR_ZONE_EX_019, //C->G
CG_ZONE_EX_SSQ_ROOM_INFO_BRD = PROTOCOL_GENERATOR_ZONE_EX_020, //G->C
CG_ZONE_EX_SSQ_REWARD_OR_REFUND_INFO_CMD = PROTOCOL_GENERATOR_ZONE_EX_021, //G->C 나중, 마을|필드 입장시 UI에 기재되는 정보 또는 환불처리
CG_ZONE_EX_SSQ_WINNER_REWARD_CMD = PROTOCOL_GENERATOR_ZONE_EX_022, //G->C 승자 보상 (ITEM 관련 정보 처리)
CG_ZONE_EX_SSQ_OBSERVER_SYN = PROTOCOL_GENERATOR_ZONE_EX_023, //C->G __NA001187_081015_SSQ_OBSERVER_MODE__
//{__NA1279_1281_090209_TIMELINE_QUEST_BASED_MISSION__
CG_ZONE_EX_QUEST_PORTAL_CREATE_CMD = PROTOCOL_GENERATOR_ZONE_EX_025,
// 퀘스트 실패는 세부 실패 코드 처리가 이뤄지는 편이 나을 듯 한데...
CG_ZONE_EX_QUEST_PORTAL_CLOSE_CMD = PROTOCOL_GENERATOR_ZONE_EX_027,
// (Note) 기존 MISSION_CREATE, INST~_CREATE등등을 대체할 수도 있다.
// ENTER_SYN 이후 성공시 돌아오는 패킷들은 ~JOIN_ACK들...
// ENTER_SYN 이후 실패시 CG_ZONE_EX_QUEST_PORTAL_JOIN_NAK
CG_ZONE_EX_QUEST_PORTAL_ENTER_SYN = PROTOCOL_GENERATOR_ZONE_EX_028,
CG_ZONE_EX_QUEST_PORTAL_ENTER_NAK = PROTOCOL_GENERATOR_ZONE_EX_029,
//}__NA1279_1281_090209_TIMELINE_QUEST_BASED_MISSION__
//__NA001281_BATTLEZONE_ENTER_CONSTRAINTS_CHANGE_IN_LOBBY__
CG_ZONE_EX_ROOM_MEMBER_STATUS_BRD = PROTOCOL_GENERATOR_ZONE_EX_030, //G->C 로비 안에서 멤버들 제약 조건 검사 결과 전송
//_NA003129_QUEST_PORTAL_CONVENIENCE_EXTENTION = {
CG_ZONE_EX_QUEST_PORTAL_FIXEDPORTAL_STATEINFO_CMD = PROTOCOL_GENERATOR_ZONE_EX_031, // 고정형 미션 포탈의 정보 알림이
CG_ZONE_EX_QUEST_PORTAL_WITHDRAW_MEMBER_SYN = PROTOCOL_GENERATOR_ZONE_EX_032, // C->G 미션 포탈 멤버에서 탈퇴 (추가 이벤트: 파티 존재시 탈퇴 이벤트 별도 처리됨)
CG_ZONE_EX_QUEST_PORTAL_WITHDRAW_MEMBER_NAK = PROTOCOL_GENERATOR_ZONE_EX_033,
//}
//_NA_008069_20150210_ADD_SPA_SYSTEM
CG_ZONE_EX_SPA_ENTER_SYN = PROTOCOL_GENERATOR_ZONE_EX_034,
CG_ZONE_EX_SPA_ENTER_ACK = PROTOCOL_GENERATOR_ZONE_EX_035,
CG_ZONE_EX_SPA_ENTER_NAK = PROTOCOL_GENERATOR_ZONE_EX_036,
CG_ZONE_EX_SPA_LEAVE_SYN = PROTOCOL_GENERATOR_ZONE_EX_037,
CG_ZONE_EX_SPA_LEAVE_ACK = PROTOCOL_GENERATOR_ZONE_EX_038,
CG_ZONE_EX_SPA_LEAVE_NAK = PROTOCOL_GENERATOR_ZONE_EX_039,
//_NA_008334_20150608_SONNENSCHEIN
CG_ZONE_EX_SONNENSCHEIN_TIME_SYNC_BRD = PROTOCOL_GENERATOR_ZONE_EX_040,
// _NA_008831_20160520_ONE_DAYS_GUILD_MISSION_BUG_LOGIC_MODIFIED
CG_ZONE_EX_ONEDAYS_GUILD_MISSION_TRIGGER_ACTIVE_STATUS_CMD = PROTOCOL_GENERATOR_ZONE_EX_041,
};
// ITEM // 아이템
enum eCG_ITEM_PROTOCOL
{
CG_ITEM_INITINFO_ACK = PROTOCOL_GENERATOR_ITEM_001,
CG_ITEM_MOVE_SYN = PROTOCOL_GENERATOR_ITEM_002,
CG_ITEM_MOVE_ACK = PROTOCOL_GENERATOR_ITEM_003,
CG_ITEM_MOVE_NAK = PROTOCOL_GENERATOR_ITEM_004,
CG_ITEM_APPREARANCE_BRD = PROTOCOL_GENERATOR_ITEM_006,
CG_ITEM_QUICK_LINKITEM_SYN = PROTOCOL_GENERATOR_ITEM_008,
CG_ITEM_QUICK_LINKITEM_ACK = PROTOCOL_GENERATOR_ITEM_009,
CG_ITEM_QUICK_LINKITEM_NAK = PROTOCOL_GENERATOR_ITEM_010,
CG_ITEM_QUICK_LINKSKILL_SYN = PROTOCOL_GENERATOR_ITEM_012,
CG_ITEM_QUICK_LINKSKILL_ACK = PROTOCOL_GENERATOR_ITEM_013,
CG_ITEM_QUICK_LINKSKILL_NAK = PROTOCOL_GENERATOR_ITEM_014,
CG_ITEM_QUICK_UNLINK_SYN = PROTOCOL_GENERATOR_ITEM_016,
CG_ITEM_QUICK_UNLINK_ACK = PROTOCOL_GENERATOR_ITEM_017,
CG_ITEM_QUICK_UNLINK_NAK = PROTOCOL_GENERATOR_ITEM_018,
CG_ITEM_QUICK_MOVE_SYN = PROTOCOL_GENERATOR_ITEM_020,
CG_ITEM_QUICK_MOVE_ACK = PROTOCOL_GENERATOR_ITEM_021,
CG_ITEM_QUICK_MOVE_NAK = PROTOCOL_GENERATOR_ITEM_022,
CG_ITEM_PICK_SYN = PROTOCOL_GENERATOR_ITEM_024,
CG_ITEM_PICK_ACK = PROTOCOL_GENERATOR_ITEM_025,
CG_ITEM_PICK_NAK = PROTOCOL_GENERATOR_ITEM_026,
CG_ITEM_DROP_SYN = PROTOCOL_GENERATOR_ITEM_028,
CG_ITEM_DROP_ACK = PROTOCOL_GENERATOR_ITEM_029,
CG_ITEM_DROP_NAK = PROTOCOL_GENERATOR_ITEM_030,
CG_ITEM_COMBINE_SYN = PROTOCOL_GENERATOR_ITEM_032,
CG_ITEM_COMBINE_ACK = PROTOCOL_GENERATOR_ITEM_033,
CG_ITEM_COMBINE_NAK = PROTOCOL_GENERATOR_ITEM_034,
CG_ITEM_DIVIDE_SYN = PROTOCOL_GENERATOR_ITEM_036,
CG_ITEM_DIVIDE_ACK = PROTOCOL_GENERATOR_ITEM_037,
CG_ITEM_DIVIDE_NAK = PROTOCOL_GENERATOR_ITEM_038,
CG_ITEM_USE_SYN = PROTOCOL_GENERATOR_ITEM_040,
CG_ITEM_USE_ACK = PROTOCOL_GENERATOR_ITEM_041,
CG_ITEM_USE_NAK = PROTOCOL_GENERATOR_ITEM_042,
CG_ITEM_USE_BRD = PROTOCOL_GENERATOR_ITEM_043,
CG_ITEM_SELL_SYN = PROTOCOL_GENERATOR_ITEM_044,
CG_ITEM_SELL_ACK = PROTOCOL_GENERATOR_ITEM_045,
CG_ITEM_SELL_NAK = PROTOCOL_GENERATOR_ITEM_046,
CG_ITEM_BUY_SYN = PROTOCOL_GENERATOR_ITEM_048,
CG_ITEM_BUY_ACK = PROTOCOL_GENERATOR_ITEM_049,
CG_ITEM_BUY_NAK = PROTOCOL_GENERATOR_ITEM_050,
CG_ITEM_OBTAIN_ACK = PROTOCOL_GENERATOR_ITEM_052,
CG_ITEM_OBTAIN_NAK = PROTOCOL_GENERATOR_ITEM_053,
CG_ITEM_LOSE_ACK = PROTOCOL_GENERATOR_ITEM_054,
CG_ITEM_PICK_MONEY_SYN = PROTOCOL_GENERATOR_ITEM_056,
CG_ITEM_PICK_MONEY_ACK = PROTOCOL_GENERATOR_ITEM_057,
CG_ITEM_PICK_MONEY_NAK = PROTOCOL_GENERATOR_ITEM_058,
CG_ITEM_DROP_MONEY_SYN = PROTOCOL_GENERATOR_ITEM_060,
//CG_ITEM_DROP_MONEY_ACK = PROTOCOL_GENERATOR_ITEM_061, //< 필드아이템 드랍으로 BRD간다.
CG_ITEM_DROP_MONEY_NAK = PROTOCOL_GENERATOR_ITEM_062,
CG_ITEM_ENCHANTUP_SYN = PROTOCOL_GENERATOR_ITEM_064,
CG_ITEM_ENCHANTUP_ACK = PROTOCOL_GENERATOR_ITEM_065,
CG_ITEM_ENCHANTUP_NAK = PROTOCOL_GENERATOR_ITEM_066,
//_NA_008069_20150210_ADD_SPA_SYSTEM
CG_ITEM_SPA_COSTUME_CHANGE_SYN = PROTOCOL_GENERATOR_ITEM_068,
CG_ITEM_SPA_COSTUME_CHANGE_BRD = PROTOCOL_GENERATOR_ITEM_069,
CG_ITEM_SPA_COSTUME_CHANGE_NAK = PROTOCOL_GENERATOR_ITEM_070,
CG_ITEM_SOCKET_FILL_SYN = PROTOCOL_GENERATOR_ITEM_072, // 소켓 아이템에 쟈드 넣기
CG_ITEM_SOCKET_FILL_ACK = PROTOCOL_GENERATOR_ITEM_073,
CG_ITEM_SOCKET_FILL_NAK = PROTOCOL_GENERATOR_ITEM_074,
CG_ITEM_SOCKET_EXTRACT_SYN = PROTOCOL_GENERATOR_ITEM_076, // 소켓 박힌 쟈드 소멸
CG_ITEM_SOCKET_EXTRACT_SUCCESS_ACK = PROTOCOL_GENERATOR_ITEM_077,
CG_ITEM_SOCKET_EXTRACT_FAILED_ACK = PROTOCOL_GENERATOR_ITEM_078,
CG_ITEM_SOCKET_EXTRACT_NAK = PROTOCOL_GENERATOR_ITEM_079,
CG_ITEM_ACCESSORY_CREATE_SYN = PROTOCOL_GENERATOR_ITEM_081,
CG_ITEM_ACCESSORY_CREATE_ACK = PROTOCOL_GENERATOR_ITEM_082,
CG_ITEM_ACCESSORY_CREATE_NAK = PROTOCOL_GENERATOR_ITEM_083,
CG_ITEM_ENCHANT_SYN = PROTOCOL_GENERATOR_ITEM_085,
CG_ITEM_ENCHANT_SUCCESS_ACK = PROTOCOL_GENERATOR_ITEM_086,
CG_ITEM_ENCHANT_FAILED_ACK = PROTOCOL_GENERATOR_ITEM_087,
CG_ITEM_ENCHANT_NAK = PROTOCOL_GENERATOR_ITEM_088,
CG_ITEM_COMPOSE_SYN = PROTOCOL_GENERATOR_ITEM_090,
CG_ITEM_COMPOSE_SUCCESS_ACK = PROTOCOL_GENERATOR_ITEM_091,
CG_ITEM_COMPOSE_FAILED_ACK = PROTOCOL_GENERATOR_ITEM_092,
CG_ITEM_COMPOSE_NAK = PROTOCOL_GENERATOR_ITEM_093,
CG_ITEM_CRYSTALIZE_SYN = PROTOCOL_GENERATOR_ITEM_094,
CG_ITEM_CRYSTALIZE_SUCCESS_ACK = PROTOCOL_GENERATOR_ITEM_095,
CG_ITEM_CRYSTALIZE_FAILED_ACK = PROTOCOL_GENERATOR_ITEM_096,
CG_ITEM_CRYSTALIZE_NAK = PROTOCOL_GENERATOR_ITEM_097,
CG_ITEM_EXTRASTONE_USE_SYN = PROTOCOL_GENERATOR_ITEM_098,
CG_ITEM_EXTRASTONE_USE_ACK = PROTOCOL_GENERATOR_ITEM_099,
CG_ITEM_EXTRASTONE_USE_NAK = PROTOCOL_GENERATOR_ITEM_100,
//_NA_008610_20160104_ADD_DECORATECOSTUME
CG_ITEM_USE_DECORATE_COSTUME_ACK = PROTOCOL_GENERATOR_ITEM_101,
CG_ITEM_USE_DECORATE_COSTUME_BRD = PROTOCOL_GENERATOR_ITEM_102,
CG_ITEM_OBTAIN_ITEM_CMD = PROTOCOL_GENERATOR_ITEM_103,
//_NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM
CG_ITEM_OBTAIN_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_104,
CG_ITEM_FREE_OWNERSHIP_BRD = PROTOCOL_GENERATOR_ITEM_105, // 아이템 소유권 사라짐
CG_ITEM_EXCHANGE_SYN = PROTOCOL_GENERATOR_ITEM_107,
CG_ITEM_EXCHANGE_ACK = PROTOCOL_GENERATOR_ITEM_108,
CG_ITEM_EXCHANGE_NAK = PROTOCOL_GENERATOR_ITEM_109,
CG_ITEM_DELETE_SYN = PROTOCOL_GENERATOR_ITEM_110,
CG_ITEM_DELETE_ACK = PROTOCOL_GENERATOR_ITEM_111,
CG_ITEM_DELETE_NAK = PROTOCOL_GENERATOR_ITEM_112,
CG_ITEM_CHANGE_DURA_CMD = PROTOCOL_GENERATOR_ITEM_113,
CG_ITEM_REPAIR_DURA_SYN = PROTOCOL_GENERATOR_ITEM_114,
CG_ITEM_REPAIR_DURA_ACK = PROTOCOL_GENERATOR_ITEM_115,
CG_ITEM_REPAIR_DURA_NAK = PROTOCOL_GENERATOR_ITEM_116,
//2006년 6월 1일 목요일 오후 6:58:47
CG_ITEM_BLOCKC_CMD = PROTOCOL_GENERATOR_ITEM_117,
CG_ITEM_PK_DROP_ITEM_CMD = PROTOCOL_GENERATOR_ITEM_118,
CG_ITEM_DESTROY_DURA_CMD = PROTOCOL_GENERATOR_ITEM_119, // 내구도 감소로 인한 아이템 소멸
CG_ITEM_PICK_BRD = PROTOCOL_GENERATOR_ITEM_120, // 아이템 습득을 주변에 알린다.
CG_ITEM_PORTAL_SYN = PROTOCOL_GENERATOR_ITEM_121, // 스크롤 아이템 사용
CG_ITEM_CHANGE_ITEM_INFO_CMD= PROTOCOL_GENERATOR_ITEM_122, // 아이템 슬롯정보 변화
CG_ITEM_DELETE_CMD = PROTOCOL_GENERATOR_ITEM_123, // 아이템 삭제
CG_ITEM_EXTRAINVENTORY_ADD_CMD = PROTOCOL_GENERATOR_ITEM_126, // 하나의 탭 추가 패킷
CG_ITEM_CLEAR_COORD_SYN = PROTOCOL_GENERATOR_ITEM_127, // 좌표 초기화
CG_ITEM_INIT_STAT_SYN = PROTOCOL_GENERATOR_ITEM_128, //초기화 아이템 사용
CG_ITEM_INIT_STAT_ACK = PROTOCOL_GENERATOR_ITEM_129,
CG_ITEM_INIT_STAT_NAK = PROTOCOL_GENERATOR_ITEM_130,
CG_ITEM_STAT_ONE_CHANGE_CMD = PROTOCOL_GENERATOR_ITEM_131,
CG_ITEM_STAT_ALL_CHANGE_CMD = PROTOCOL_GENERATOR_ITEM_132,
CG_ITEM_INVENTORY_PWD_SETTING_SYN = PROTOCOL_GENERATOR_ITEM_133,
CG_ITEM_INVENTORY_PWD_SETTING_ACK = PROTOCOL_GENERATOR_ITEM_134,
CG_ITEM_INVENTORY_PWD_SETTING_NAK = PROTOCOL_GENERATOR_ITEM_135,
CG_ITEM_INVENTORY_PWD_LOCKING_SYN = PROTOCOL_GENERATOR_ITEM_136,
CG_ITEM_INVENTORY_PWD_LOCKING_ACK = PROTOCOL_GENERATOR_ITEM_139,
CG_ITEM_INVENTORY_PWD_LOCKING_NAK = PROTOCOL_GENERATOR_ITEM_140,
CG_ITEM_INVENTORY_PWD_CHECK_SYN = PROTOCOL_GENERATOR_ITEM_141,
CG_ITEM_INVENTORY_PWD_CHECK_ACK = PROTOCOL_GENERATOR_ITEM_142,
CG_ITEM_INVENTORY_PWD_CHECK_NAK = PROTOCOL_GENERATOR_ITEM_143,
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_CMD = PROTOCOL_GENERATOR_ITEM_145,
CG_SECURE_POLICY_PATTERN03_SIMPLEX_SNK_ACK = PROTOCOL_GENERATOR_ITEM_146,
//////////////////////////////////////////////////////////////////////////
#ifdef __NA_001027_20080423_RANDOM_REWARD_EVENT_
CG_ITEM_EXCHANGE_REWARD_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_147, // 길드PVP 후 이그니스뺏지 교환 보상
CG_ITEM_EXCHANGE_REWARD_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_148,
CG_ITEM_EXCHANGE_REWARD_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_149,
#endif
// = PROTOCOL_GENERATOR_ITEM_150,
// = PROTOCOL_GENERATOR_ITEM_151,
// = PROTOCOL_GENERATOR_ITEM_152,
CG_ITEM_EXTEND_CASH_SLOT_CMD = PROTOCOL_GENERATOR_ITEM_153,
CG_ITEM_SETITEM_CHANGE_BRD = PROTOCOL_GENERATOR_ITEM_155,
CG_ITEM_HAMMER_OF_ALCHEMIST_SYN = PROTOCOL_GENERATOR_ITEM_156,
CG_ITEM_HAMMER_OF_ALCHEMIST_ACK = PROTOCOL_GENERATOR_ITEM_157,
CG_ITEM_HAMMER_OF_ALCHEMIST_NAK = PROTOCOL_GENERATOR_ITEM_158,
CG_ITEM_VALIDATION_OF_REIHALT_SYN = PROTOCOL_GENERATOR_ITEM_159,
CG_ITEM_VALIDATION_OF_REIHALT_ACK = PROTOCOL_GENERATOR_ITEM_160,
CG_ITEM_VALIDATION_OF_REIHALT_NAK = PROTOCOL_GENERATOR_ITEM_161,
CG_ITEM_USE_PET_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_162, // __NA_0_PET_SYSTEM
CG_ITEM_USE_PET_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_163, // __NA_0_PET_SYSTEM
CG_ITEM_REPURCHASE_SYN = PROTOCOL_GENERATOR_ITEM_164, // __NA000920_080306_SELLITEM_REPURCHASE
CG_ITEM_REPURCHASE_ACK = PROTOCOL_GENERATOR_ITEM_165, // __NA000920_080306_SELLITEM_REPURCHASE
CG_ITEM_REPURCHASE_NAK = PROTOCOL_GENERATOR_ITEM_166, // __NA000920_080306_SELLITEM_REPURCHASE
CG_ITEM_EQUIP_ETHER_DEVICE_SYN = PROTOCOL_GENERATOR_ITEM_167,
CG_ITEM_EQUIP_ETHER_DEVICE_ACK = PROTOCOL_GENERATOR_ITEM_168,
CG_ITEM_USE_PANDORA_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_169,
CG_ITEM_USE_PANDORA_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_170,
CG_ITEM_USE_PANDORA_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_171,
CG_ITEM_MOVE_PANDORA_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_172,
CG_ITEM_MOVE_PANDORA_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_173,
CG_ITEM_MOVE_PANDORA_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_174,
CG_ITEM_MOVE_ALL_PANDORA_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_175,
CG_ITEM_STAT_CHANGE_USE_SYN = PROTOCOL_GENERATOR_ITEM_177,
CG_ITEM_STAT_CHANGE_USE_ACK = PROTOCOL_GENERATOR_ITEM_178,
CG_ITEM_STAT_CHANGE_USE_NAK = PROTOCOL_GENERATOR_ITEM_179,
CG_ITEM_STAT_CHANGE_SELECT_SYN = PROTOCOL_GENERATOR_ITEM_180,
CG_ITEM_STAT_CHANGE_SELECT_ACK = PROTOCOL_GENERATOR_ITEM_181,
CG_ITEM_STAT_CHANGE_SELECT_NAK = PROTOCOL_GENERATOR_ITEM_182,
CG_ITEM_USE_SKILL_ACTION_SYN = PROTOCOL_GENERATOR_ITEM_184,
CG_ITEM_USE_MOTION_SYN = PROTOCOL_GENERATOR_ITEM_185,
CG_ITEM_USE_MOTION_BRD = PROTOCOL_GENERATOR_ITEM_186,
CG_ITEM_USE_MOTION_NAK = PROTOCOL_GENERATOR_ITEM_187,
//__NA_1131_PET_NAME_SETTING
CG_ITEM_USE_CHANGE_PET_NAME_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_188,
CG_ITEM_USE_CHANGE_PET_NAME_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_189,
CG_ITEM_ACTIVE_ETHER_BULLET_SYN = PROTOCOL_GENERATOR_ITEM_190,
CG_ITEM_ACTIVE_ETHER_BULLET_ACK = PROTOCOL_GENERATOR_ITEM_191,
CG_ITEM_ETHER_ACTIVE_STATE_BRD = PROTOCOL_GENERATOR_ITEM_192,
CG_ITEM_INACTIVE_ETHER_BULLET_CMD = PROTOCOL_GENERATOR_ITEM_193,
CG_ITEM_USE_CMD = PROTOCOL_GENERATOR_ITEM_194,
//__NA_1247_POSSESSION_ITEM
CG_ITEM_IDENTIFY_POSSESSION_SYN = PROTOCOL_GENERATOR_ITEM_195,
CG_ITEM_IDENTIFY_POSSESSION_ACK = PROTOCOL_GENERATOR_ITEM_196,
//__NA_001358_ENCHANT_UNIFICATION
CG_ITEM_INSTANT_ENCHANT_SYN = PROTOCOL_GENERATOR_ITEM_197, // UNUSED
CG_ITEM_INSTANT_ENCHANT_ACK = PROTOCOL_GENERATOR_ITEM_198, // UNUSED
CG_ITEM_INSTANT_ENCHANT_NAK = PROTOCOL_GENERATOR_ITEM_199, // UNUSED
// (WAVERIX) (WARNING) 하기 3개 항목 중간에 끼어 있었다. 이후 작업자들이 그 뒤에 더 작은 번호로
// 추가해버렸다. 혼란스럽게 하지 말자. 무조건 추가되는 경우는 뒤로!!!
// 어쩔수 없이 200번대로 간다. 이후에 클라 서버 빌드할때 이거 맞추고 나가자.
CG_ITEM_PANDORABOX_CLOSE_SYN = PROTOCOL_GENERATOR_ITEM_200,
CG_ITEM_PANDORABOX_CLOSE_ACK = PROTOCOL_GENERATOR_ITEM_201,
CG_ITEM_PANDORABOX_CLOSE_NAK = PROTOCOL_GENERATOR_ITEM_202,
//__NA_0_CASH_ITEM_RENEWAL_SUPERMASTER
CG_ITEM_FIXED_AMOUNT_EX_ITEM_FIRE_UP_SYN = PROTOCOL_GENERATOR_ITEM_203,
CG_ITEM_FIXED_AMOUNT_EX_ITEM_FIRE_UP_ACK = PROTOCOL_GENERATOR_ITEM_204,
//PROTOCOL_GENERATOR_ITEM_205 - reserved
//__NA001390_090915_RIDING_SYSTEM__
CG_ITEM_RIDER_CONTROL_SYN = PROTOCOL_GENERATOR_ITEM_206,
CG_ITEM_RIDER_CONTROL_BRD = PROTOCOL_GENERATOR_ITEM_207,
CG_ITEM_RIDER_CONTROL_CMD = PROTOCOL_GENERATOR_ITEM_208,
CG_ITEM_RIDER_CONTROL_PARTS_SYN = PROTOCOL_GENERATOR_ITEM_209,
CG_ITEM_RIDER_CONTROL_PARTS_BRD = PROTOCOL_GENERATOR_ITEM_210,
CG_ITEM_RIDER_CONTROL_PARTS_CMD = PROTOCOL_GENERATOR_ITEM_211,
// [10/30/2009 namka199] _NA_0_20091030_RANDOM_ITEM
CG_ITEM_USE_RANDOM_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_213,
CG_ITEM_USE_RANDOM_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_214,
CG_ITEM_USE_RANDOM_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_215,
//_NA_1419_20100121_ACCUMULATE_POINT
CG_ITEM_QUERY_ACCUMULATE_POINT_ITEM_SYN = PROTOCOL_GENERATOR_ITEM_216,
CG_ITEM_QUERY_ACCUMULATE_POINT_ITEM_ACK = PROTOCOL_GENERATOR_ITEM_217,
CG_ITEM_QUERY_ACCUMULATE_POINT_ITEM_NAK = PROTOCOL_GENERATOR_ITEM_218,
CG_ITEM_USE_ACCUMULATE_POINT_SYN = PROTOCOL_GENERATOR_ITEM_219,
CG_ITEM_USE_ACCUMULATE_POINT_ACK = PROTOCOL_GENERATOR_ITEM_220,
CG_ITEM_USE_ACCUMULATE_POINT_NAK = PROTOCOL_GENERATOR_ITEM_221,
//_NA000023_090323_ENHANCED_INVENTORY_SLOT_FUNCTIONALITY_
CG_ITEM_INVENTORY_CONFIG_CHANGE_SYN = PROTOCOL_GENERATOR_ITEM_225,
CG_ITEM_INVENTORY_CONFIG_CHANGE_ACK = PROTOCOL_GENERATOR_ITEM_226,
//_NA000109_100427_ITEM_CUSTOMIZING_CONTENTS_
CG_ITEM_ETHERIA_CONTROL_SYN = PROTOCOL_GENERATOR_ITEM_227,
CG_ITEM_ETHERIA_CONTROL_ACK = PROTOCOL_GENERATOR_ITEM_228,
CG_ITEM_ETHERIA_CONTROL_BRD = PROTOCOL_GENERATOR_ITEM_229,
// _NA_000096_20100527_CHANGE_CHARACTER_APPEARANCE_SYSTEM
CG_ITEM_CHANGE_CHARACTER_APPEARANCE_SYN = PROTOCOL_GENERATOR_ITEM_230, // 캐릭터 외모 변경 아이템 사용 요청
// 아이템 합성 또는 분해 공통
CG_ITEM_COMPOSE_OR_DECOMPOSE_SYN = PROTOCOL_GENERATOR_ITEM_231, // 아이템 합성 또는 분해 요청
CG_ITEM_COMPOSE_OR_DECOMPOSE_ACK = PROTOCOL_GENERATOR_ITEM_232, // 아이템 합성 또는 분해 응답
// _NA_002253_20100811_CUBE_SYSTEM
CG_ITEM_CUBE_COMPOSE_OR_DECOMPOSE_ACK = PROTOCOL_GENERATOR_ITEM_233, // 큐브 아이템 합성 또는 분해 응답
// _NA_000251_20100727_SOCKET_SYSTEM
CG_ITEM_IDENTIFY_SOCKET_CMD = PROTOCOL_GENERATOR_ITEM_234, // 미확인 소켓 아이템의 소켓수 확인 요청
CG_ITEM_IDENTIFY_SOCKET_NAK = PROTOCOL_GENERATOR_ITEM_235, // 미확인 소켓 확인 실패
CG_ITEM_ZARD_COMPOSE_ACK = PROTOCOL_GENERATOR_ITEM_236, // 쟈드 합성 응답
CG_ITEM_QUICK_UPDATE_LINKED_ITEM_CMD = PROTOCOL_GENERATOR_ITEM_237, // 퀵슬롯의 연결된 아이템 정보 갱신
CG_ITEM_GET_COMPOSITION_OR_DECOMPOSITION_HISTORIES_SYN = PROTOCOL_GENERATOR_ITEM_238, // 성공한 합성 또는 분해 내역들 요청
CG_ITEM_GET_COMPOSITION_OR_DECOMPOSITION_HISTORIES_ACK = PROTOCOL_GENERATOR_ITEM_239, // 성공한 합성 또는 분해 내역들 응답
CG_ITEM_MODIFY_COMPOSITION_OR_DECOMPOSITION_HISTORIES_CMD = PROTOCOL_GENERATOR_ITEM_240, // 아이템 합성 또는 분해 내역들 수정 요청
CG_ITEM_GET_CUBE_COMPOSITION_HISTORIES_ACK = PROTOCOL_GENERATOR_ITEM_241, // 성공한 큐브 합성 내역들 요청
CG_ITEM_RECREATE_SOCKET_SYN = PROTOCOL_GENERATOR_ITEM_242, // 소켓 다시 생성 요청
CG_ITEM_RECREATE_SOCKET_ACK = PROTOCOL_GENERATOR_ITEM_243, // 소켓 다시 생성 응답
#ifdef _NA_0_20110613_GAME_SHOP_RENEWAL
CG_ITEM_USE_EXTEND_DATE_SYN = PROTOCOL_GENERATOR_ITEM_244, // 기간 연장 아이템 사용
CG_ITEM_USE_EXTEND_DATE_ACK = PROTOCOL_GENERATOR_ITEM_245,
CG_ITEM_USE_EXTEND_DATE_NAK = PROTOCOL_GENERATOR_ITEM_246,
#endif
// _NA_003740_20111122_RANDOM_ITEM
CG_ITEM_RANDOMIZE_SYN = PROTOCOL_GENERATOR_ITEM_247, // 아이템 능력치 랜덤화
CG_ITEM_RANDOMIZE_ACK = PROTOCOL_GENERATOR_ITEM_248, // 아이템 능력치 랜덤화 응답
//_NA_004035_20120227_COSTUME_ITEM
CG_ITEM_USE_COSTUME_ACK = PROTOCOL_GENERATOR_ITEM_249,
CG_ITEM_USE_COSTUME_BRD = PROTOCOL_GENERATOR_ITEM_250,
//_NA_006372_20130108_BADGE_ITEM
CG_ITEM_USE_TOGGLE_ACK = PROTOCOL_GENERATOR_ITEM_251,
#ifdef _NA_008124_20150313_AWAKENING_SYSTEM
CG_ITEM_AWAKENING_SYN = PROTOCOL_GENERATOR_ITEM_252,
CG_ITEM_AWAKENING_ACK = PROTOCOL_GENERATOR_ITEM_253,
CG_ITEM_EVOLUTION_SYN = PROTOCOL_GENERATOR_ITEM_254,
CG_ITEM_EVOLUTION_ACK = PROTOCOL_GENERATOR_ITEM_255,
#endif // _NA_008124_20150313_AWAKENING_SYSTEM
CG_ITEM_WEB_DELETE_ACK = PROTOCOL_GENERATOR_ITEM_256, //xiaomi 警속잿WEB
CG_ITEM_WEB_DELETE_SYN = PROTOCOL_GENERATOR_ITEM_257, //xiaomi 警속잿WEB
#ifdef _20220329_ADD_EQU_RECOVERY
CG_ITEM_EQU_RECOVERY_SYN = PROTOCOL_GENERATOR_ITEM_258,
#endif
};
// TRADE , // 거래
enum eCG_TRADE_PROTOCOL
{
/*
CG_TRADE_REQ_SYN = PROTOCOL_GENERATOR_TRADE_001, // 거래 요청
//CG_TRADE_REQ_ACK = PROTOCOL_GENERATOR_TRADE_002, // 요청에 대한 ACK는 필요없음
CG_TRADE_REQ_NAK = PROTOCOL_GENERATOR_TRADE_003, // 상대방이 요청을 받아 들일 수 없는 상태일 경우
CG_TRADE_REQ_CMD = PROTOCOL_GENERATOR_TRADE_004, // 상대방에게 요청 패킷이 감
CG_TRADE_RES_SYN = PROTOCOL_GENERATOR_TRADE_006, // 거래 수락/거절시 서버에서 컨테이너 생성
CG_TRADE_RES_ACK = PROTOCOL_GENERATOR_TRADE_007, // 수락했을 경우만
CG_TRADE_RES_NAK = PROTOCOL_GENERATOR_TRADE_008, // 상대방이 수락/거절을 받아 들일 수 없는 상태
CG_TRADE_RES_CMD = PROTOCOL_GENERATOR_TRADE_009, // 상대방에게 수락/거절을 보냄
*/
CG_TRADE_OPEN_SYN = PROTOCOL_GENERATOR_TRADE_012, // 거래창 오픈 요청
CG_TRADE_OPEN_ACK = PROTOCOL_GENERATOR_TRADE_013,
CG_TRADE_OPEN_NAK = PROTOCOL_GENERATOR_TRADE_014,
CG_TRADE_OPEN_CMD = PROTOCOL_GENERATOR_TRADE_015, // 상대방에게 거래 개시 명령
CG_TRADE_PUT_SYN = PROTOCOL_GENERATOR_TRADE_017, // 아이템을 올려놓는다.
CG_TRADE_PUT_ACK = PROTOCOL_GENERATOR_TRADE_018,
CG_TRADE_PUT_NAK = PROTOCOL_GENERATOR_TRADE_019,
CG_TRADE_PUT_CMD = PROTOCOL_GENERATOR_TRADE_020,
CG_TRADE_PUT_MONEY_SYN = PROTOCOL_GENERATOR_TRADE_022, // 돈을 올려놓는다.
CG_TRADE_PUT_MONEY_ACK = PROTOCOL_GENERATOR_TRADE_023,
CG_TRADE_PUT_MONEY_NAK = PROTOCOL_GENERATOR_TRADE_024,
CG_TRADE_PUT_MONEY_CMD = PROTOCOL_GENERATOR_TRADE_025,
CG_TRADE_GET_SYN = PROTOCOL_GENERATOR_TRADE_027, // 아이템 가져 온다.
CG_TRADE_GET_ACK = PROTOCOL_GENERATOR_TRADE_028,
CG_TRADE_GET_NAK = PROTOCOL_GENERATOR_TRADE_029,
CG_TRADE_GET_CMD = PROTOCOL_GENERATOR_TRADE_030,
CG_TRADE_GET_MONEY_SYN = PROTOCOL_GENERATOR_TRADE_032, // 돈을 가져 온다.
CG_TRADE_GET_MONEY_ACK = PROTOCOL_GENERATOR_TRADE_033,
CG_TRADE_GET_MONEY_NAK = PROTOCOL_GENERATOR_TRADE_034,
CG_TRADE_GET_MONEY_CMD = PROTOCOL_GENERATOR_TRADE_035,
CG_TRADE_PROPOSAL_SYN = PROTOCOL_GENERATOR_TRADE_037, // 거래 제시 완료
CG_TRADE_PROPOSAL_ACK = PROTOCOL_GENERATOR_TRADE_038,
CG_TRADE_PROPOSAL_NAK = PROTOCOL_GENERATOR_TRADE_039,
CG_TRADE_PROPOSAL_CMD = PROTOCOL_GENERATOR_TRADE_040, // 상대방에게 알려줌
CG_TRADE_MODIFY_SYN = PROTOCOL_GENERATOR_TRADE_042, // 거래 제시 수정
CG_TRADE_MODIFY_ACK = PROTOCOL_GENERATOR_TRADE_043,
CG_TRADE_MODIFY_NAK = PROTOCOL_GENERATOR_TRADE_044,
CG_TRADE_MODIFY_CMD = PROTOCOL_GENERATOR_TRADE_045,
CG_TRADE_ACCEPT_SYN = PROTOCOL_GENERATOR_TRADE_047, // 거래 수락
CG_TRADE_ACCEPT_ACK = PROTOCOL_GENERATOR_TRADE_048,
CG_TRADE_ACCEPT_NAK = PROTOCOL_GENERATOR_TRADE_049,
CG_TRADE_ACCEPT_CMD = PROTOCOL_GENERATOR_TRADE_050,
CG_TRADE_ACCEPT_BRD = PROTOCOL_GENERATOR_TRADE_051, // 거래 완료후 거래 정보들
CG_TRADE_CANCEL_SYN = PROTOCOL_GENERATOR_TRADE_053, // 거래 취소
CG_TRADE_CANCEL_ACK = PROTOCOL_GENERATOR_TRADE_054,
CG_TRADE_CANCEL_NAK = PROTOCOL_GENERATOR_TRADE_055,
CG_TRADE_CANCEL_CMD = PROTOCOL_GENERATOR_TRADE_056,
//CG_TRADE_TRADE_BRD = PROTOCOL_GENERATOR_TRADE_058, // 거래 완료시
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_CMD = PROTOCOL_GENERATOR_TRADE_059,
CG_SECURE_POLICY_PATTERN04_SIMPLEX_SNK_ACK = PROTOCOL_GENERATOR_TRADE_060,
//////////////////////////////////////////////////////////////////////////
CG_TRADE_MODIFY_RESPONSE_SYN = PROTOCOL_GENERATOR_TRADE_062, // 거래 변경 요청 응답
CG_TRADE_MODIFY_RESPONSE_ACK = PROTOCOL_GENERATOR_TRADE_063,
CG_TRADE_MODIFY_RESPONSE_NAK = PROTOCOL_GENERATOR_TRADE_064,
CG_TRADE_MODIFY_RESPONSE_CMD = PROTOCOL_GENERATOR_TRADE_065,
};
enum eCG_VENDOR_PROTOCOL
{
//----------------------------------------------------------------
// 개설자의 프로토콜
//----------------------------------------------------------------
CG_VENDOR_START_SYN = PROTOCOL_GENERATOR_VENDOR_001,
CG_VENDOR_START_ACK = PROTOCOL_GENERATOR_VENDOR_002,
CG_VENDOR_START_BRD = PROTOCOL_GENERATOR_VENDOR_003,
CG_VENDOR_START_NAK = PROTOCOL_GENERATOR_VENDOR_004,
// 뷰포트에 들어 온 사람에게 상점의 정보를 보낸다. = PROTOCOL_GENERATOR_VENDOR_006,
CG_VENDOR_END_SYN = PROTOCOL_GENERATOR_VENDOR_008,
CG_VENDOR_END_ACK = PROTOCOL_GENERATOR_VENDOR_009,
CG_VENDOR_END_BRD = PROTOCOL_GENERATOR_VENDOR_010,
CG_VENDOR_END_NAK = PROTOCOL_GENERATOR_VENDOR_011,
// 상점 목록 수정 요청 = PROTOCOL_GENERATOR_VENDOR_013,
CG_VENDOR_MODIFY_REQ_SYN = PROTOCOL_GENERATOR_VENDOR_014,
CG_VENDOR_MODIFY_REQ_ACK = PROTOCOL_GENERATOR_VENDOR_015,
CG_VENDOR_MODIFY_REQ_BRD = PROTOCOL_GENERATOR_VENDOR_016, //< 상점을 보고 있는 사람에게 알린다.
CG_VENDOR_MODIFY_REQ_NAK = PROTOCOL_GENERATOR_VENDOR_017,
CG_VENDOR_MODIFY_CANCEL_SYN = PROTOCOL_GENERATOR_VENDOR_019,
CG_VENDOR_MODIFY_CANCEL_ACK = PROTOCOL_GENERATOR_VENDOR_020,
CG_VENDOR_MODIFY_CANCEL_BRD = PROTOCOL_GENERATOR_VENDOR_021,
CG_VENDOR_MODIFY_CANCEL_NAK = PROTOCOL_GENERATOR_VENDOR_022,
CG_VENDOR_MODIFY_APPLY_SYN = PROTOCOL_GENERATOR_VENDOR_024,
CG_VENDOR_MODIFY_APPLY_ACK = PROTOCOL_GENERATOR_VENDOR_025,
CG_VENDOR_MODIFY_APPLY_BRD = PROTOCOL_GENERATOR_VENDOR_026, //< 상점을 보고 있는 사람에게 알린다.
CG_VENDOR_MODIFY_APPLY_NAK = PROTOCOL_GENERATOR_VENDOR_027,
CG_VENDOR_INSERT_SYN = PROTOCOL_GENERATOR_VENDOR_029,
CG_VENDOR_INSERT_ACK = PROTOCOL_GENERATOR_VENDOR_030,
CG_VENDOR_INSERT_BRD = PROTOCOL_GENERATOR_VENDOR_031,
CG_VENDOR_INSERT_NAK = PROTOCOL_GENERATOR_VENDOR_032,
CG_VENDOR_DELETE_SYN = PROTOCOL_GENERATOR_VENDOR_034,
CG_VENDOR_DELETE_ACK = PROTOCOL_GENERATOR_VENDOR_035,
CG_VENDOR_DELETE_BRD = PROTOCOL_GENERATOR_VENDOR_036,
CG_VENDOR_DELETE_NAK = PROTOCOL_GENERATOR_VENDOR_037,
//----------------------------------------------------------------
// 관람자의 프로토콜
//----------------------------------------------------------------
CG_VENDOR_BUY_SYN = PROTOCOL_GENERATOR_VENDOR_042,
CG_VENDOR_BUY_ACK = PROTOCOL_GENERATOR_VENDOR_043,
CG_VENDOR_BUY_CMD = PROTOCOL_GENERATOR_VENDOR_044,
CG_VENDOR_BUY_BRD = PROTOCOL_GENERATOR_VENDOR_045,
CG_VENDOR_BUY_NAK = PROTOCOL_GENERATOR_VENDOR_046,
CG_VENDOR_VIEW_START_SYN = PROTOCOL_GENERATOR_VENDOR_048,
CG_VENDOR_VIEW_START_ACK = PROTOCOL_GENERATOR_VENDOR_049,
CG_VENDOR_VIEW_START_NAK = PROTOCOL_GENERATOR_VENDOR_050,
/// CG_VENDOR_VIEW_START_BRD = PROTOCOL_GENERATOR_VENDOR_051, //<관람자를 굳이 표시할 필요가 있는가?
CG_VENDOR_VIEW_END_SYN = PROTOCOL_GENERATOR_VENDOR_052,
CG_VENDOR_VIEW_END_ACK = PROTOCOL_GENERATOR_VENDOR_053,
CG_VENDOR_VIEW_END_NAK = PROTOCOL_GENERATOR_VENDOR_054,
/// CG_VENDOR_VIEW_END_BRD = PROTOCOL_GENERATOR_VENDOR_055, //<관람자를 굳이 표시할 필요가 있는가?
CG_VENDOR_MODIFY_TITLE_SYN = PROTOCOL_GENERATOR_VENDOR_056,
CG_VENDOR_MODIFY_TITLE_ACK = PROTOCOL_GENERATOR_VENDOR_057,
CG_VENDOR_MODIFY_TITLE_NAK = PROTOCOL_GENERATOR_VENDOR_058,
CG_VENDOR_MODIFY_TITLE_BRD = PROTOCOL_GENERATOR_VENDOR_059,
//-----------------------------------------------------------------
// 상점 리스트 관련 프로토콜
//-----------------------------------------------------------------
CG_VENDOR_LIST_START_SYN = PROTOCOL_GENERATOR_VENDOR_065, //상점목록 NPC 시작
CG_VENDOR_LIST_START_ACK = PROTOCOL_GENERATOR_VENDOR_066,
CG_VENDOR_LIST_START_NAK = PROTOCOL_GENERATOR_VENDOR_067,
CG_VENDOR_REQUIRE_PAGE_SYN = PROTOCOL_GENERATOR_VENDOR_068,
CG_VENDOR_REQUIRE_PAGE_ACK = PROTOCOL_GENERATOR_VENDOR_069,
CG_VENDOR_REQUIRE_PAGE_NAK = PROTOCOL_GENERATOR_VENDOR_070,
CG_VENDOR_SEARCH_SYN = PROTOCOL_GENERATOR_VENDOR_071,
CG_VENDOR_SEARCH_ACK = PROTOCOL_GENERATOR_VENDOR_072,
CG_VENDOR_SEARCH_NAK = PROTOCOL_GENERATOR_VENDOR_073,
CG_VENDOR_LIST_END_SYN = PROTOCOL_GENERATOR_VENDOR_074,
CG_VENDOR_LIST_END_ACK = PROTOCOL_GENERATOR_VENDOR_075,
CG_VENDOR_LIST_END_NAK = PROTOCOL_GENERATOR_VENDOR_076,
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_CMD = PROTOCOL_GENERATOR_VENDOR_077,
CG_SECURE_POLICY_PATTERN05_QUERY_MOLA_ACK = PROTOCOL_GENERATOR_VENDOR_078,
//////////////////////////////////////////////////////////////////////////
//_NA_005988_20120901_VENDOR_SEARCH_SYSTEM
CG_VENDOR_ENHANCED_SEARCH_SYN = PROTOCOL_GENERATOR_VENDOR_079,
CG_VENDOR_ENHANCED_SEARCH_ACK = PROTOCOL_GENERATOR_VENDOR_080,
};
enum eCG_WAREHOUSE_PROTOCOL
{
CG_WAREHOUSE_START_SYN = PROTOCOL_GENERATOR_WAREHOUSE_001,
CG_WAREHOUSE_START_ACK = PROTOCOL_GENERATOR_WAREHOUSE_002,
CG_WAREHOUSE_START_NAK = PROTOCOL_GENERATOR_WAREHOUSE_003,
CG_WAREHOUSE_MONEY_SYN = PROTOCOL_GENERATOR_WAREHOUSE_005,
CG_WAREHOUSE_MONEY_ACK = PROTOCOL_GENERATOR_WAREHOUSE_006,
CG_WAREHOUSE_MONEY_NAK = PROTOCOL_GENERATOR_WAREHOUSE_007,
CG_WAREHOUSE_END_SYN = PROTOCOL_GENERATOR_WAREHOUSE_010,
CG_WAREHOUSE_END_ACK = PROTOCOL_GENERATOR_WAREHOUSE_011,
CG_WAREHOUSE_END_NAK = PROTOCOL_GENERATOR_WAREHOUSE_012,
//CG_WAREHOUSE_PWD_CHECK_SYN = PROTOCOL_GENERATOR_WAREHOUSE_013,
CG_WAREHOUSE_PWD_SETTING_SYN = PROTOCOL_GENERATOR_WAREHOUSE_014,
CG_WAREHOUSE_PWD_SETTING_ACK = PROTOCOL_GENERATOR_WAREHOUSE_015,
CG_WAREHOUSE_PWD_SETTING_NAK = PROTOCOL_GENERATOR_WAREHOUSE_016,
CG_WAREHOUSE_PWD_LOCKING_SYN = PROTOCOL_GENERATOR_WAREHOUSE_017,
CG_WAREHOUSE_PWD_LOCKING_ACK = PROTOCOL_GENERATOR_WAREHOUSE_018,
CG_WAREHOUSE_PWD_LOCKING_NAK = PROTOCOL_GENERATOR_WAREHOUSE_019,
CG_WAREHOUSE_PWD_CHECK_SYN = PROTOCOL_GENERATOR_WAREHOUSE_020,
CG_WAREHOUSE_PWD_CHECK_ACK = PROTOCOL_GENERATOR_WAREHOUSE_021,
CG_WAREHOUSE_PWD_CHECK_NAK = PROTOCOL_GENERATOR_WAREHOUSE_022,
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_CMD = PROTOCOL_GENERATOR_WAREHOUSE_100,
CG_SECURE_POLICY_PATTERN06_CONFIGURE_MOLA_ACK = PROTOCOL_GENERATOR_WAREHOUSE_101,
//////////////////////////////////////////////////////////////////////////
};
// PARTY , // 파티
enum eCG_PARTY_PROTOCOL
{
CG_PARTY_CREATE_CMD = PROTOCOL_GENERATOR_PARTY_001, // 파티 생성
CG_PARTY_MEMBER_LEVEL_UP_BRD = PROTOCOL_GENERATOR_PARTY_002, // 파티원 레벨 변화
CG_PARTY_MEMBER_HP_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_003, // 파티원 체력 변화
CG_PARTY_MEMBER_STATUS_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_004, // 파티원 상태 변화
CG_PARTY_MEMBER_DEAD_BRD = PROTOCOL_GENERATOR_PARTY_005, // 파티원 죽음
CG_PARTY_MEMBER_RESURRECTION_BRD = PROTOCOL_GENERATOR_PARTY_006, // 파티원 부활
CG_PARTY_JOIN_SYN = PROTOCOL_GENERATOR_PARTY_007, // 파티가입 요청
CG_PARTY_JOIN_BRD = PROTOCOL_GENERATOR_PARTY_008, // 파티가입 성공
CG_PARTY_JOIN_NAK = PROTOCOL_GENERATOR_PARTY_009, // 파티가입 실패
CG_PARTY_JOIN_RESPONSE_SYN = PROTOCOL_GENERATOR_PARTY_011, // 파티가입 응답 요청
CG_PARTY_JOIN_RESPONSE_ACK = PROTOCOL_GENERATOR_PARTY_012, // 파티가입 수락
CG_PARTY_JOIN_RESPONSE_NAK = PROTOCOL_GENERATOR_PARTY_013, // 파티가입 거절
CG_PARTY_LEAVE_SYN = PROTOCOL_GENERATOR_PARTY_015, // 파티탈퇴 요청
CG_PARTY_FORCED_EXPULSION_SYN = PROTOCOL_GENERATOR_PARTY_016, // 파티강제추방 요청
CG_PARTY_LEAVE_BRD = PROTOCOL_GENERATOR_PARTY_017, // 파티탈퇴 브로드
CG_PARTY_LEAVE_NAK = PROTOCOL_GENERATOR_PARTY_018, // 파티탈퇴 실패
CG_PARTY_CHANGE_MASTER_SYN = PROTOCOL_GENERATOR_PARTY_020, // 파티장 변경 요청
CG_PARTY_CHANGE_MASTER_BRD = PROTOCOL_GENERATOR_PARTY_021, // 파티장 변경 브로드
CG_PARTY_CHANGE_MASTER_NAK = PROTOCOL_GENERATOR_PARTY_022, // 파티장 변경 실패
CG_PARTY_DESTROY_SYN = PROTOCOL_GENERATOR_PARTY_024, // 파티해체 요청
CG_PARTY_DESTROY_BRD = PROTOCOL_GENERATOR_PARTY_025, // 파티해체 브로드
CG_PARTY_DESTROY_NAK = PROTOCOL_GENERATOR_PARTY_026, // 파티해체 실패
// (NOTE) empty party protocol [28, 34]
CG_PARTY_SELECT_TARGET_SYN = PROTOCOL_GENERATOR_PARTY_035, // 파티타겟지정 요청
CG_PARTY_SELECT_TARGET_BRD = PROTOCOL_GENERATOR_PARTY_036, // 파티타겟지정 브로드
CG_PARTY_SELECT_TARGET_NAK = PROTOCOL_GENERATOR_PARTY_037, // 파티타겟지정 실패
CG_PARTY_MEMBER_WARP_REQ_SYN = PROTOCOL_GENERATOR_PARTY_039, // 파티장 근처로 워프 요청
CG_PARTY_MEMBER_WARP_REQ_NAK = PROTOCOL_GENERATOR_PARTY_040,
CG_PARTY_MEMBER_SUMMON_REQ_SYN = PROTOCOL_GENERATOR_PARTY_042, // 파티원 소환 요청
CG_PARTY_MEMBER_SUMMON_REQ_NAK = PROTOCOL_GENERATOR_PARTY_043,
CG_PARTY_MEMBER_SUMMON_REQ_CMD = PROTOCOL_GENERATOR_PARTY_044, // 파티원 소환 요청 전달
CG_PARTY_MEMBER_SUMMON_RES_SYN = PROTOCOL_GENERATOR_PARTY_045, // 파티원 소환 응답
CG_PARTY_MEMBER_SUMMON_RES_NAK = PROTOCOL_GENERATOR_PARTY_047, // 파티원 소환 실패
CG_PARTY_MINIMAP_POINTING_SYN = PROTOCOL_GENERATOR_PARTY_049, // 미니맵 포인팅 요청
CG_PARTY_MINIMAP_POINTING_NAK = PROTOCOL_GENERATOR_PARTY_050, // 미니맵 포인팅 실패
CG_PARTY_MINIMAP_POINTING_BRD = PROTOCOL_GENERATOR_PARTY_051, // 미니맵 포인팅 브로드
CG_PARTY_MEMBER_MP_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_052, // 파티원 MP 변화
CG_PARTY_MEMBER_CHAO_STATE_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_053, // 파티원 카오상태 변화
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_CMD = PROTOCOL_GENERATOR_PARTY_054,
CG_SECURE_POLICY_PATTERN07_CONFIGURE_HEARTBEAT_ACK = PROTOCOL_GENERATOR_PARTY_055,
//////////////////////////////////////////////////////////////////////////
CG_PARTY_ITEM_DISTRIBUTION_CHANGE_SYN = PROTOCOL_GENERATOR_PARTY_057,
CG_PARTY_ITEM_DISTRIBUTION_CHANGE_NAK = PROTOCOL_GENERATOR_PARTY_058,
CG_PARTY_ITEM_DISTRIBUTION_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_059,
//////////////////////////////////////////////////////////////////////////
CG_PARTY_RETURN_G2C_LEADER_QUERY_CMD = PROTOCOL_GENERATOR_PARTY_060, // 파티장에게 파티원 초대 여부 메시지, 파티원의 한번 취소시
CG_PARTY_RETURN_C2G_LEADER_QUERY_ACK = PROTOCOL_GENERATOR_PARTY_061, // 파티장이 파티원 초대할 경우, [취소]->(클라)->[확인]-> 경우
CG_PARTY_RETURN_G2C_MEMBER_QUERY_CMD = PROTOCOL_GENERATOR_PARTY_063, // 파티원에게 초대 메시지
CG_PARTY_RETURN_C2G_MEMBER_QUERY_ACK = PROTOCOL_GENERATOR_PARTY_064, // 파티원의 거부 관련
CG_PARTY_RETURN_G2C_MEMBER_REMOVE_CMD = PROTOCOL_GENERATOR_PARTY_065, // 비정상 종료 유저 10분 타임아웃에 의해 제거 명령
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//__NA_780_PREVENTION_PARTY_RETURN_ABUSE
CG_PARTY_RETURN_A2C_MEMBER_REJECT_CMD = PROTOCOL_GENERATOR_PARTY_066,
//////////////////////////////////////////////////////////////////////////
//__NA001336_090514_PARTY_NAVI_SUPPORT__
CG_PARTY_NAVI_INFO_BRD = PROTOCOL_GENERATOR_PARTY_067,
//////////////////////////////////////////////////////////////////////////
//_NA_20110630_BATTLE_ZONE_RENEWAL
CG_PARTY_BATTLE_ZONE_INFO_SYN = PROTOCOL_GENERATOR_PARTY_068, // *배틀존 or 파티 룸 관련 정보 요청
CG_PARTY_BATTLE_ZONE_INFO_ACK = PROTOCOL_GENERATOR_PARTY_069, // *배틀존 관련 정보 응답
CG_PARTY_CREATE_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_070, // *파티룸 생성 요청
CG_PARTY_CREATE_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_071, // *파티룸 생성 응답
CG_PARTY_JOIN_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_072, // *파티룸 참여 요청
CG_PARTY_JOIN_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_073, // *파티룸 참여 응답
CG_PARTY_JOIN_ROOM_BRD = PROTOCOL_GENERATOR_PARTY_074, // *파티룸 참여 알림
CG_PARTY_LEAVE_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_075, // *파티룸 나가기 요청
CG_PARTY_LEAVE_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_076, // *파티룸 나가기 응답
CG_PARTY_LEAVE_ROOM_BRD = PROTOCOL_GENERATOR_PARTY_077, // *파티룸 탈퇴 알림
CG_PARTY_CHANGE_ROOM_OPTION_SYN = PROTOCOL_GENERATOR_PARTY_078, // *파티룸 조건 변경
CG_PARTY_CHANGE_ROOM_OPTION_ACK = PROTOCOL_GENERATOR_PARTY_079, // *파티룸 조건 변경 실패
CG_PARTY_CHANGE_ROOM_OPTION_BRD = PROTOCOL_GENERATOR_PARTY_080, // *파티룸 조건 변경
CG_PARTY_CHANGE_MAX_PLAYER_COUNT_SYN = PROTOCOL_GENERATOR_PARTY_081, // *파티룸의 유저 최대값 변경 요청
CG_PARTY_CHANGE_MAX_PLAYER_COUNT_ACK = PROTOCOL_GENERATOR_PARTY_082, // *파티룸의 유저 최대값 변경 응답
CG_PARTY_CHANGE_MAX_PLAYER_COUNT_BRD = PROTOCOL_GENERATOR_PARTY_083, // *파티룸의 유저 슬롯갯수 변화 알림
CG_PARTY_STANDBY_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_084, // *파티룸 대기 신청 요청
CG_PARTY_STANDBY_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_085, // *파티룸 대기 신청 응답
CG_PARTY_ASK_JOIN_ROOM_BRD = PROTOCOL_GENERATOR_PARTY_086, // *유저에게 파티룸 참여 의사 요청
CG_PARTY_READY_STATE_SYN = PROTOCOL_GENERATOR_PARTY_087, // *유저가 파티룸에서 준비 상태 변화 요청
CG_PARTY_READY_STATE_ACK = PROTOCOL_GENERATOR_PARTY_088,
CG_PARTY_READY_STATE_BRD = PROTOCOL_GENERATOR_PARTY_089, // *파티룸의 다른 유저에게 해당 유저의 준비 상태 변화 알림
CG_PARTY_PLAYER_MOVE_FIELD_BRD = PROTOCOL_GENERATOR_PARTY_090, // 파티룸, 파티원들에게 해당 유저의 위치를 알림
CG_PARTY_CHECK_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_091, // *현재 자기 조건(파티룸 만들기, 대기 시점)에 맞는 방이 있는지 검사
CG_PARTY_CHECK_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_092, // *존재하는 파티룸 체크 응답.
CG_PARTY_ROOM_LIST_SYN = PROTOCOL_GENERATOR_PARTY_093, // *파티 룸 리스트 추가 요청
CG_PARTY_ROOM_LIST_ACK = PROTOCOL_GENERATOR_PARTY_094, // *파티 룸 리스트 추가 응답
CG_PARTY_ROOM_FORCE_LEAVE_SYN = PROTOCOL_GENERATOR_PARTY_095, // *파티 룸 유저를 강제로 탈퇴 요청
CG_PARTY_ALLPLAYERS_CMD = PROTOCOL_GENERATOR_PARTY_096, // *파티룸 유저의 정보를 들어온 유저에게 알린다.
CG_PARTY_ALLPLAYERS_EQUIPINFO_CMD = PROTOCOL_GENERATOR_PARTY_097, // *파티룸 유저의 장비 정보를 들어온 유저에게 알린다.
CG_PARTY_RENDER_EFFECT_ITEM_LIST_CMD = PROTOCOL_GENERATOR_PARTY_098, // *파티룸 유저의 이펙트 정보를 들어온 유저에게 알린다.
CG_PARTY_ROOM_START_SYN = PROTOCOL_GENERATOR_PARTY_099, // *방장이 파티룸 스타트 시도
CG_PARTY_ROOM_START_ACK = PROTOCOL_GENERATOR_PARTY_100, // *방장의 파티룸 스타트 응답
CG_PARTY_SELECT_TEAM_SYN = PROTOCOL_GENERATOR_PARTY_100, // PVP전일 경우 팀을 선택 한다(1팀, 2팀 번갈아 가면서)
CG_PARTY_SELECT_TEAM_ACK = PROTOCOL_GENERATOR_PARTY_101, // 팀 변경 결과를 해당 유저에게 알린다.
CG_PARTY_SELECT_TEAM_BRD = PROTOCOL_GENERATOR_PARTY_102, // 팀 변경 정보를 팀원들에게 알린다.
CG_PARTY_REQUEST_MEMBER_INFO_SYN = PROTOCOL_GENERATOR_PARTY_103, // 파티 멤버 정보를 요청한다.(맵 이동시나 미션 종료시 등..)
CG_PARTY_FIND_ROOM_BY_CHARID_SYN = PROTOCOL_GENERATOR_PARTY_104, // 유저 명으로 방정보 요청
CG_PARTY_FIND_ROOM_BY_CHARID_ACK = PROTOCOL_GENERATOR_PARTY_105, // 방정보 응답
CG_PARTY_RESET_READY_STATE_CMD = PROTOCOL_GENERATOR_PARTY_106, // 방의 레디 상태를 모두 초기화한다.
CG_PARTY_STANDBY_PAUSE_SYN = PROTOCOL_GENERATOR_PARTY_107, // 예약 기능을 일시 정지 한다.
CG_PARTY_STANDBY_PAUSE_ACK = PROTOCOL_GENERATOR_PARTY_108, // 일시 정지 응답.
CG_PARTY_REQUEST_RENDER_INFO_SYN = PROTOCOL_GENERATOR_PARTY_109, // 파티의 특정 멤버의 렌더 정보를 요청한다.
CG_PARTY_FIND_ROOM_BY_ROOMNUMBER_SYN = PROTOCOL_GENERATOR_PARTY_110, // ROOM KEY로 방정보 요청
CG_PARTY_FIND_ROOM_BY_ROOMNUMBER_ACK = PROTOCOL_GENERATOR_PARTY_111, // 방정보 응답
CG_PARTY_START_ROOM_COUNT_BRD = PROTOCOL_GENERATOR_PARTY_112, // 파티룸 시작 카운트 발동
CG_PARTY_FIND_WAITING_ROOM_SYN = PROTOCOL_GENERATOR_PARTY_113, // 대기방 검색
CG_PARTY_FIND_WAITING_ROOM_ACK = PROTOCOL_GENERATOR_PARTY_114, // 대기방 리스트 응답
CG_PARTY_FIND_ROOM_BY_MISSION_NAME_SYN = PROTOCOL_GENERATOR_PARTY_115, // 미션명 검색
CG_PARTY_FIND_ROOM_BY_MISSION_NAME_ACK = PROTOCOL_GENERATOR_PARTY_116, // 미션명 리스트 응답
CG_PARTY_INVITE_PARTY_ROOM_REQ = PROTOCOL_GENERATOR_PARTY_117, // 특정 파티룸으로의 초대 명령
CG_PARTY_INVITE_PARTY_ROOM_ANS = PROTOCOL_GENERATOR_PARTY_118, // 특정 파티룸으로의 초대 명령
#ifdef _NA_20111220_CHANGE_DISCONNECTED_USER_PROCESS
CG_PARTY_RETURN_G2C_MEMBER_REMOVE_SYN = PROTOCOL_GENERATOR_PARTY_119, // 비정상 접속 종료 유저 강제 삭제 명령
#endif
#ifdef _NA_003033_20110831_DICECAST_ITEM_ROUTING
CG_PARTY_DICECAST_RESULT_CMD = PROTOCOL_GENERATOR_PARTY_120, // 주사위 결과
#endif //_NA_003033_20110831_DICECAST_ITEM_ROUTING
#ifdef _NA_004204_20120131_BATTLE_ZONE_PARTY_OBTAIN
CG_PARTY_ON_ENTER_GAME_ROOM_BRD = PROTOCOL_GENERATOR_PARTY_121, // 방 입장시 파티정보 알려줌.
#endif //_NA_004204_20120131_BATTLE_ZONE_PARTY_OBTAIN
//_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND
CG_CHAOS_ZONE_PACKET = PROTOCOL_GENERATOR_PARTY_122, // 카오스존 시스템.
#ifdef _NA_006638_20120415_ADD_SHIELD_INFO_IN_TARGET_INFO
CG_PARTY_MEMBER_SD_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_123, // 파티원 쉴드 변화
#endif // _NA_006638_20120415_ADD_SHIELD_INFO_IN_TARGET_INFO
#ifdef _NA_007514_20140828_NEW_CHARACTER_WITCHBLADE
CG_PARTY_MEMBER_FP_CHANGE_BRD = PROTOCOL_GENERATOR_PARTY_124,
#endif
};
// TRIGGER , // 트리거
enum eCG_TRIGGER_PROTOCOL
{
CG_TRIGGER_CLICK_OBJECT_SYN = PROTOCOL_GENERATOR_TRIGGER_001, //< 맵오브젝트를 클릭했다.
CG_TRIGGER_ENTER_AREA_SYN = PROTOCOL_GENERATOR_TRIGGER_002, //< 플레이어가 들어왔다.
CG_TRIGGER_LEAVE_AREA_SYN = PROTOCOL_GENERATOR_TRIGGER_003, //< 플레이어가 나갔다.
CG_TRIGGER_DO_ACTION_BRD = PROTOCOL_GENERATOR_TRIGGER_004, //< action trigger 를 수행하라.
CG_TRIGGER_ACTION_NAK = PROTOCOL_GENERATOR_TRIGGER_005, //< action trigger 실패
CG_TRIGGER_REFLECTDAMAGE_BRD = PROTOCOL_GENERATOR_TRIGGER_006,
CG_TRIGGER_PORTAL_ACK = PROTOCOL_GENERATOR_TRIGGER_007, //< 보스존으로 포탈을 탄다
CG_TRIGGER_REWARD_WINDOW_CMD = PROTOCOL_GENERATOR_TRIGGER_008, //< 보상창을 열어라!
CG_TRIGGER_REWARD_SYN = PROTOCOL_GENERATOR_TRIGGER_009, //< 보상을 받겠다.
CG_TRIGGER_REWARD_ACK = PROTOCOL_GENERATOR_TRIGGER_010, //< 보상 받음 성공
CG_TRIGGER_REWARD_NAK = PROTOCOL_GENERATOR_TRIGGER_011, //< 보상 받음 실패
CG_TRIGGER_DONE_ACTION_INFO_CMD = PROTOCOL_GENERATOR_TRIGGER_012, //< action이 수행된 trigger의 정보 전달
CG_TRIGGER_AREADAMAGE_BRD = PROTOCOL_GENERATOR_TRIGGER_013,
CG_TRIGGER_PLAY_EVENT_CMD = PROTOCOL_GENERATOR_TRIGGER_014, //< 이벤트 플레이
CG_TRIGGER_CLICK_OBJECT_BRD = PROTOCOL_GENERATOR_TRIGGER_015,
CG_TRIGGER_SHOW_THE_FLOOR_CMD = PROTOCOL_GENERATOR_TRIGGER_016, //__NA000357_070322_TRIGGER_SHOW_THE_FLOOR__
CG_TRIGGER_LAST_OBJECT_STATE_CMD = PROTOCOL_GENERATOR_TRIGGER_017, //__NA000405_070406_LAST_OBJSTATE_APPLICATION__
CG_TRIGGER_PLAY_MUSIC_CMD = PROTOCOL_GENERATOR_TRIGGER_018,
CG_TRIGGER_DISPLAY_MSGBOX_CMD = PROTOCOL_GENERATOR_TRIGGER_019,
//_NA_0_20100222_UNIT_TRIGGERS_ADD
CG_TRIGGER_DISPLAY_BALLOON_MSGBOX_CMD = PROTOCOL_GENERATOR_TRIGGER_020,
//_NA_0_20100525_ADD_TIMER_ACTION_TRIGGER
CG_TRIGGER_CONTROL_TIMER_CMD = PROTOCOL_GENERATOR_TRIGGER_021,
//_NA_006619_20130422_ADD_ACTION_TRIGGER_CHANGE_RADAR_MAP
CG_TRIGGER_CHANGE_RADAR_MAP_CMD = PROTOCOL_GENERATOR_TRIGGER_022,
};
// GM , // 게임마스터 명령
enum eCG_GM_PROTOCOL
{
CG_GM_MONSTER_CREATE_SYN = PROTOCOL_GENERATOR_GM_001, // 몬스터 생성
CG_GM_MONSTER_DESTROYALL_SYN = PROTOCOL_GENERATOR_GM_002, // 모든 몬스터 제거
CG_GM_MONSTER_DESTROYNEAR_SYN = PROTOCOL_GENERATOR_GM_003, // 주변 몬스터 제거
CG_GM_OBSERVER_SYN = PROTOCOL_GENERATOR_GM_005, // 옵져버 모드로 전환
CG_GM_OBSERVER_BRD = PROTOCOL_GENERATOR_GM_006,
CG_GM_OBSERVER_NAK = PROTOCOL_GENERATOR_GM_007,
CG_GM_CHARINFO_SYN = PROTOCOL_GENERATOR_GM_009, // 해당캐릭터의 정보를 요청한다.
CG_GM_CHARINFO_ACK = PROTOCOL_GENERATOR_GM_010,
CG_GM_CHARINFO_NAK = PROTOCOL_GENERATOR_GM_011,
CG_GM_CREATE_ITEM_SYN = PROTOCOL_GENERATOR_GM_013, // 일반 아이템 생성
//CG_SYNC_FIELDITEM_ENTER_BRD = PROTOCOL_GENERATOR_GM_014,
CG_GM_CREATE_ENCHANT_ITEM_SYN = PROTOCOL_GENERATOR_GM_016, // 인첸트 아이템 생성
//CG_SYNC_FIELDITEM_ENTER_BRD = PROTOCOL_GENERATOR_GM_017,
CG_GM_DESTROY_ITEM_AROUND_SYN = PROTOCOL_GENERATOR_GM_019, // 일정 반경 필드의 아이템을 모두 제거한다.
//CG_SYNC_FIELDITEM_LEAVE_BRD = PROTOCOL_GENERATOR_GM_020,
CG_GM_CREATE_MONEY_SYN = PROTOCOL_GENERATOR_GM_022, // 필드에 돈 생성
//CG_SYNC_FIELDITEM_ENTER_BRD = PROTOCOL_GENERATOR_GM_023,
CG_GM_LEVEL_UP_SYN = PROTOCOL_GENERATOR_GM_025, // 레벨 업
//CG_STATUS_LEVEL_UP_BRD = PROTOCOL_GENERATOR_GM_026,
CG_GM_STAT_UP_SYN = PROTOCOL_GENERATOR_GM_028, // 스텟 업
CG_GM_STAT_UP_ACK = PROTOCOL_GENERATOR_GM_029,
CG_GM_SKILLPOINT_UP_SYN = PROTOCOL_GENERATOR_GM_031, // 스킬포인트 업
CG_GM_SKILLPOINT_UP_ACK = PROTOCOL_GENERATOR_GM_032,
CG_GM_RELOAD_DATA_CMD = PROTOCOL_GENERATOR_GM_034, // 스크립트 데이터 리로딩 명령
CG_GM_UNDEAD_MODE_SYN = PROTOCOL_GENERATOR_GM_036, // 무적상태로 전환
CG_GM_UNDEAD_MODE_ACK = PROTOCOL_GENERATOR_GM_037,
CG_GM_UNDEAD_MODE_NAK = PROTOCOL_GENERATOR_GM_038,
CG_GM_ROOMINFO_SYN = PROTOCOL_GENERATOR_GM_040, // 해당 방정보
CG_GM_ROOMINFO_ACK = PROTOCOL_GENERATOR_GM_041,
CG_GM_ROOMINFO_NAK = PROTOCOL_GENERATOR_GM_042,
CG_GM_CHANNELINFO_SYN = PROTOCOL_GENERATOR_GM_044, // 해당 채널 정보
CG_GM_CHANNELINFO_ACK = PROTOCOL_GENERATOR_GM_045,
CG_GM_CHANNELINFO_NAK = PROTOCOL_GENERATOR_GM_046,
CG_GM_RESURRECTION_SYN = PROTOCOL_GENERATOR_GM_048, // 부활
CG_GM_RESURRECTION_NAK = PROTOCOL_GENERATOR_GM_049,
CG_GM_RESURRECTION_BRD = PROTOCOL_GENERATOR_GM_050,
CG_GM_RECOVERY_SYN = PROTOCOL_GENERATOR_GM_052, // 회복
CG_GM_RECOVERY_NAK = PROTOCOL_GENERATOR_GM_053,
CG_GM_RECOVERY_BRD = PROTOCOL_GENERATOR_GM_054,
CG_GM_ENTRANCE_SYN = PROTOCOL_GENERATOR_GM_056, // 입장
CG_GM_ENTRANCE_ACK = PROTOCOL_GENERATOR_GM_057,
CG_GM_ENTRANCE_NAK = PROTOCOL_GENERATOR_GM_058,
CG_GM_SET_SPEED_SYN = PROTOCOL_GENERATOR_GM_060, // 속도
CG_GM_SET_SPEED_BRD = PROTOCOL_GENERATOR_GM_061,
CG_GM_SET_SPEED_NAK = PROTOCOL_GENERATOR_GM_062,
CG_GM_FORCE_DISCONNECT_SYN = PROTOCOL_GENERATOR_GM_064, // 접속종료
CG_GM_FORCE_DISCONNECT_ACK = PROTOCOL_GENERATOR_GM_065,
CG_GM_FORCE_DISCONNECT_NAK = PROTOCOL_GENERATOR_GM_066,
CG_GM_WARP_SYN = PROTOCOL_GENERATOR_GM_068, // 특정위치(방)으로 이동
CG_GM_WARP_ACK = PROTOCOL_GENERATOR_GM_069,
CG_GM_WARP_NAK = PROTOCOL_GENERATOR_GM_070,
CG_GM_MONSTER_DESTROYONE_SYN = PROTOCOL_GENERATOR_GM_072, // 제거(몬스터)(아이템 , 경험치 없음)
CG_GM_MONSTER_DESTROYONE_NAK = PROTOCOL_GENERATOR_GM_073,
CG_GM_MONSTER_KILLONE_SYN = PROTOCOL_GENERATOR_GM_075, // 킬(몬스터)(아이템 , 경험치 있음)
CG_GM_MONSTER_KILLONE_NAK = PROTOCOL_GENERATOR_GM_076,
CG_GM_STRING_CMD_SYN = PROTOCOL_GENERATOR_GM_078, // 스트링으로 명령어 전송 요청(서버쪽에서 명령어 파싱해서 처리할 경우 사용)
CG_GM_STRING_CMD_NAK = PROTOCOL_GENERATOR_GM_079,
CG_GM_STRING_CMD_ACK = PROTOCOL_GENERATOR_GM_080, // GM 명령 성공
CG_GM_ACCOUNT_MODE_ACK = PROTOCOL_GENERATOR_GM_081, // 어카운트 모드
CG_GM_CHANGE_ROOMTITLE_ACK = PROTOCOL_GENERATOR_GM_082, // 방제목변경
CG_GM_CHANGE_ROOMTITLE_NAK = PROTOCOL_GENERATOR_GM_083, // 방제목변경
CG_GM_GO_NAK = PROTOCOL_GENERATOR_GM_084,
CG_GM_TRACKING_ACK = PROTOCOL_GENERATOR_GM_085, // 추적
CG_GM_TRACKING_NAK = PROTOCOL_GENERATOR_GM_086,
CG_GM_USER_SUMMON_ACK = PROTOCOL_GENERATOR_GM_087, // 유저 소환
CG_GM_USER_SUMMON_NAK = PROTOCOL_GENERATOR_GM_088,
CG_GM_USER_MOVE_ACK = PROTOCOL_GENERATOR_GM_089, // 유저 이동
CG_GM_USER_MOVE_NAK = PROTOCOL_GENERATOR_GM_090,
CG_GM_VERSION_ACK = PROTOCOL_GENERATOR_GM_091, // Vesion 정보
CG_GM_PICKUP_ACK = PROTOCOL_GENERATOR_GM_092, // 아이템 줍기.
CG_GM_SERVER_TIME_CMD = PROTOCOL_GENERATOR_GM_093, // 서버 시간
CG_GM_SERVER_BACK_CMD = PROTOCOL_GENERATOR_GM_094, // 서버 시간
};
// ETC , // 기타
enum eCG_ETC_PROTOCOL
{
CG_ETC_DEBUGINFO_CMD = PROTOCOL_GENERATOR_ETC_001, // 디버그 정보 출력 패킷
CG_ETC_BATTLE_OPEN_TIME_NOTICE_BY_CODE_BRD = PROTOCOL_GENERATOR_ETC_002,
CG_ETC_GET_BATTLE_OPEN_TIME_SYN = PROTOCOL_GENERATOR_ETC_003,
CG_ETC_GET_BATTLE_OPEN_TIME_ACK = PROTOCOL_GENERATOR_ETC_004,
CG_ETC_BUFF_EVENT_TIME_CONTROL_BRD = PROTOCOL_GENERATOR_ETC_005, // [버프이벤트] 시간에 따른 BRD처리
//펫 관련
CG_ETC_PET_SUMMON_RETURN_BRD = PROTOCOL_GENERATOR_ETC_006, //__NA_0_PET_SYSTEM
CG_ETC_PET_STATUS_CHANGE_BRD = PROTOCOL_GENERATOR_ETC_007, //__NA_0_PET_SYSTEM
CG_ETC_PET_RETURN_CMD = PROTOCOL_GENERATOR_ETC_008, //__NA_0_PET_SYSTEM
CG_ETC_PET_SET_NAME_BRD = PROTOCOL_GENERATOR_ETC_009, //__NA_1131_PET_NAME_SETTING
//#ifdef _NA_0_20110329_GAMEOPTION_SETTING
CG_ETC_GAMEOPTION_LOAD_SYN = PROTOCOL_GENERATOR_CHARINFO_010,
CG_ETC_GAMEOPTION_LOAD_ACK = PROTOCOL_GENERATOR_CHARINFO_011,
CG_ETC_GAMEOPTION_LOAD_NAK = PROTOCOL_GENERATOR_CHARINFO_012,
CG_ETC_GAMEOPTION_SAVE_SYN = PROTOCOL_GENERATOR_CHARINFO_013,
CG_ETC_GAMEOPTION_SAVE_ACK = PROTOCOL_GENERATOR_CHARINFO_014,
CG_ETC_GAMEOPTION_SAVE_NAK = PROTOCOL_GENERATOR_CHARINFO_015,
//#endif //_NA_0_20110329_GAMEOPTION_SETTING
//_NA_000000_20120410_SPEEDHACK
CG_ETC_MEMORY_HACK_CMD = PROTOCOL_GENERATOR_CHARINFO_016,
//!~ _NA004034_20120102_GUILD_POINT_SYSTEM
CG_ETC_GUILD_RANKINGINFO_SYN = PROTOCOL_GENERATOR_CHARINFO_017,
CG_ETC_GUILD_RANKINGINFO_ACK = PROTOCOL_GENERATOR_CHARINFO_018,
CG_ETC_GUILDINFO_SYN = PROTOCOL_GENERATOR_CHARINFO_019,
CG_ETC_GUILDINFO_ACK = PROTOCOL_GENERATOR_CHARINFO_020,
//~! _NA004034_20120102_GUILD_POINT_SYSTEM
#ifdef _NA_008012_20150204_SUN_RANKING_SYSTEM
CG_ETC_SUN_RANKING_SYN = PROTOCOL_GENERATOR_CHARINFO_021,
CG_ETC_SUN_RANKING_ACK = PROTOCOL_GENERATOR_CHARINFO_022,
CG_ETC_SUN_RANKING_NAK = PROTOCOL_GENERATOR_CHARINFO_023,
CG_ETC_STATUE_INFO_ACK = PROTOCOL_GENERATOR_CHARINFO_024,
CG_ETC_SUN_RANKING_SETTLE_INFO_SYN = PROTOCOL_GENERATOR_CHARINFO_025,
CG_ETC_SUN_RANKING_SETTLE_INFO_ACK = PROTOCOL_GENERATOR_CHARINFO_026,
#endif // _NA_008012_20150204_SUN_RANKING_SYSTEM
};
// STATUS // 게임중 상태 변화
enum eCG_STATUS_PROTOCOL
{
CG_STATUS_LEVEL_UP_CMD = PROTOCOL_GENERATOR_STATUS_001, // 자신이 레벨업 했을때 커맨드
CG_STATUS_LEVEL_UP_BRD = PROTOCOL_GENERATOR_STATUS_002, // 누가 레벨업 했을때 브로드캐스팅
CG_STATUS_CHANGE_HP_BRD = PROTOCOL_GENERATOR_STATUS_003, // HP 변화(몬스터의 경우 Brd로 알려야한다.)
CG_STATUS_CHANGE_MP_BRD = PROTOCOL_GENERATOR_STATUS_004, // MP 변화
CG_STATUS_RECOVER_ATTR_BRD = PROTOCOL_GENERATOR_STATUS_005, // 누가 HP/MP가 회복될때 브로드캐스팅: 리젠 , 물약...
CG_STATUS_RESURRECTION_BRD = PROTOCOL_GENERATOR_STATUS_006, // 누가 부활했다고 브로드캐스팅
CG_STATUS_DEAD_BRD = PROTOCOL_GENERATOR_STATUS_007, // 누가 죽었다고 브로드캐스팅
CG_STATUS_EXP_CMD = PROTOCOL_GENERATOR_STATUS_008, // 자신의 경험치 증가된 경우 알림
CG_STATUS_ATTR_CHANGE_BRD = PROTOCOL_GENERATOR_STATUS_009, // 플레이어의 Attr이 변경된 경우에 알려준다.
CG_STATUS_STAT_SELECT_SYN = PROTOCOL_GENERATOR_STATUS_011, // 스탯 UP(STR , DEX , VIT , INT , SPR
CG_STATUS_STAT_SELECT_ACK = PROTOCOL_GENERATOR_STATUS_012,
CG_STATUS_STAT_SELECT_NAK = PROTOCOL_GENERATOR_STATUS_013,
CG_STATUS_CONDITION_CHANGE_SYN = PROTOCOL_GENERATOR_STATUS_015, // 캐릭터 상태변화 요청(앉기/서기 , Help응답)
CG_STATUS_CONDITION_CHANGE_BRD = PROTOCOL_GENERATOR_STATUS_016,
CG_STATUS_CONDITION_CHANGE_NAK = PROTOCOL_GENERATOR_STATUS_017,
CG_STATUS_REMOVE_BRD = PROTOCOL_GENERATOR_STATUS_019, // 상태 해제 브로드
CG_STATUS_RESURRECTION_SYN = PROTOCOL_GENERATOR_STATUS_021, // 부활 요청
CG_STATUS_RESURRECTION_NAK = PROTOCOL_GENERATOR_STATUS_022, // 부활 실패
CG_STATUS_TITLE_CHANGED_CMD = PROTOCOL_GENERATOR_STATUS_024, // 자신이 Title이 변했을 때
CG_STATUS_TITLE_CHANGED_BRD = PROTOCOL_GENERATOR_STATUS_025, // 다른 사람이 Title이 변했을 때
CG_STATUS_EMOTION_SYN = PROTOCOL_GENERATOR_STATUS_027, // 캐릭터 이모션 요청
CG_STATUS_EMOTION_BRD = PROTOCOL_GENERATOR_STATUS_028, // 캐릭터 이모션 브로드캐스팅
CG_STATUS_NPC_STATE_CHANGE_CMD = PROTOCOL_GENERATOR_STATUS_030, // 몬스터 상태 변경
CG_STATUS_RENDER_OPTION_SYN = PROTOCOL_GENERATOR_STATUS_032, // 렌더링 옵션 설정 요청
CG_STATUS_RENDER_OPTION_BRD = PROTOCOL_GENERATOR_STATUS_033, // 렌더링 옵션 설정 브로드캐스팅
CG_STATUS_CHANGE_MONSTER_ABILITY = PROTOCOL_GENERATOR_STATUS_035, // 몬스터 능력치 변화(등장 플레이어 수에 따라)
CG_STATUS_FATIGUE_CHANGE_CMD = PROTOCOL_GENERATOR_STATUS_036, // 피로도 변경
CG_STATUS_RESURRECTION_TO_SAFEZONE_SYN = PROTOCOL_GENERATOR_STATUS_037,
CG_STATUS_RESURRECTION_TO_SAFEZONE_NAK = PROTOCOL_GENERATOR_STATUS_038,
CG_STATUS_EMOTION_NAK = PROTOCOL_GENERATOR_STATUS_039,
CG_STATUS_ALL_STATEINFO_CMD = PROTOCOL_GENERATOR_STATUS_040, // 존 이동시 모든 상태정보를 다시 받는다.
CG_STATUS_ADD_BRD = PROTOCOL_GENERATOR_STATUS_041, // 상태 추가 브로드
CG_STATUS_START_DRAGON_FORMATION_BRD = PROTOCOL_GENERATOR_STATUS_042, // 드래곤 변신 시작
CG_STATUS_END_DRAGON_FORMATION_SYN = PROTOCOL_GENERATOR_STATUS_043, // 드래곤 변신 종료 요청
CG_STATUS_END_DRAGON_FORMATION_BRD = PROTOCOL_GENERATOR_STATUS_044,
CG_STATUS_END_DRAGON_FORMATION_NAK = PROTOCOL_GENERATOR_STATUS_045,
//////////////////////////////////////////////////////////////////////////
//__NA070212_ENHANCED_SECURE_POLICYMENT__
CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_KEY = PROTOCOL_GENERATOR_STATUS_046,
CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_ACK = PROTOCOL_GENERATOR_STATUS_047,
CG_SECURE_POLICY_PATTERN08_DUPLEX_SNK_CMD = PROTOCOL_GENERATOR_STATUS_048,
//////////////////////////////////////////////////////////////////////////
CG_STATUS_REBIRTH_ON_VILLAGE_SYN = PROTOCOL_GENERATOR_STATUS_049,
CG_STATUS_REBIRTH_ON_VILLAGE_BRD = PROTOCOL_GENERATOR_STATUS_050,
CG_STATUS_REBIRTH_ON_VILLAGE_NAK = PROTOCOL_GENERATOR_STATUS_051,
CG_STATUS_INTERCEPTION_SYN = PROTOCOL_GENERATOR_STATUS_052,
CG_STATUS_INTERCEPTION_ACK = PROTOCOL_GENERATOR_STATUS_053,
CG_STATUS_INTERCEPTION_NAK = PROTOCOL_GENERATOR_STATUS_054,
CG_STATUS_FREE_INIT_STAT_UNDER_20_SYN = PROTOCOL_GENERATOR_STATUS_055,
CG_STATUS_FREE_INIT_STAT_UNDER_20_ACK = PROTOCOL_GENERATOR_STATUS_056,
CG_STATUS_FREE_INIT_STAT_UNDER_20_NAK = PROTOCOL_GENERATOR_STATUS_057,
CG_STATUS_CHAGNE_RENDER_EFFECT_SYN = PROTOCOL_GENERATOR_STATUS_058, // NOT USED -
CG_STATUS_CHAGNE_RENDER_EFFECT_BRD = PROTOCOL_GENERATOR_STATUS_059, // NOT USED
CG_STATUS_RENDER_EFFECT_ITEM_LIST_BRD = PROTOCOL_GENERATOR_STATUS_060, // __NA001051_080526_EVENT_EFFECT_RENDER_BY_SCRIPT_2ndPROCESS__
CG_STATUS_RENDER_EFFECT_ITEM_LIST_SYN = PROTOCOL_GENERATOR_STATUS_061, // C->S Effect item 삽입/삭제 BRD 요청
CG_STATUS_RENDER_EFFECT_ITEM_LIST_CMD = PROTOCOL_GENERATOR_STATUS_062, // Zone Move, Sector Move 등을 수행할 때 전송되는 Packet _BRD와 동일한 구조
//CG_STATUS_SSQ_INFO_BRD = PROTOCOL_GENERATOR_STATUS_070, //<- 이넘은 왜 갑자기 70번을 쓰나요?
// // 추가 예약 [061, 063]
CG_STATUS_DELETE_CHAR_STATE_SYN = PROTOCOL_GENERATOR_STATUS_064,
CG_STATUS_DELETE_CHAR_STATE_ACK = PROTOCOL_GENERATOR_STATUS_065,
CG_STATUS_ETHER_ATTACK_SPEED_CMD = PROTOCOL_GENERATOR_STATUS_066,
// __NA_001290_20090525_SHIELD_SYSTEM
CG_STATUS_CHANGE_SD_CMD = PROTOCOL_GENERATOR_STATUS_067,
CG_STATUS_GROUPEXP_CMD = PROTOCOL_GENERATOR_STATUS_068, //그룹 보너스 경험치임을 클라에게 알린다.
//__NA_001290_20090525_SHIELD_SYSTEM_NOTIFY_NOTABILITY_STATE
CG_STATUS_ETC_STATEINFO_CMD = PROTOCOL_GENERATOR_STATUS_069,
// __NA000896_080215_TASK_SURVIVAL_SOLOING_QUEST_CSCOMMON__ : 타락한 사원( 각종 정보 BRD 패킷용 )
CG_STATUS_SSQ_INFO_BRD = PROTOCOL_GENERATOR_STATUS_070, //<- 이넘은 왜 갑자기 70번을 쓰나요?
// (WAVERIX) (NOTE) ... 그 사이에 끼워 넣을 것이지, 왜 더 작은 번호를 뒤로 넣었댜?
// 큰 일날 뻔 했넹.
//그룹맺기 시스템내 하임보너스 적용시 Game -> Client로 보내는 알림 메세지
CG_STATUS_GROUPMONEY_BRD = PROTOCOL_GENERATOR_STATUS_071,
CG_STATUS_STAT_APPLY_SYN = PROTOCOL_GENERATOR_STATUS_072,
CG_STATUS_STAT_APPLY_ACK = PROTOCOL_GENERATOR_STATUS_073,
CG_STATUS_STAT_APPLY_NAK = PROTOCOL_GENERATOR_STATUS_074,
// _NA_007514_20140828_NEW_CHARACTER_WITCHBLADE
CG_STATUS_CHANGE_FP_CMD = PROTOCOL_GENERATOR_STATUS_075,
CG_STATUS_CHANGE_FP_EFFECT_BRD = PROTOCOL_GENERATOR_STATUS_076,
// _NA_008804_20160502_COMBAT_LOG
CG_STATUS_DEAD_INFO_SYN = PROTOCOL_GENERATOR_STATUS_077,
};
enum eCG_PVP_PROTOCOL
{
CG_PVP_INFO_CMD = PROTOCOL_GENERATOR_PVP_001,
CG_PVP_INFO_BRD = PROTOCOL_GENERATOR_PVP_002,
CG_PVP_PRESS_KEY_SYN = PROTOCOL_GENERATOR_PVP_003,
CG_PVP_PRESS_KEY_ACK = PROTOCOL_GENERATOR_PVP_004,
CG_PVP_PRESS_KEY_NAK = PROTOCOL_GENERATOR_PVP_005,
CG_PVP_MATCHLESS_MODE_START_CMD = PROTOCOL_GENERATOR_PVP_007, //< 무적 모드
CG_PVP_MATCH_MODE_FIRST_START_CMD = PROTOCOL_GENERATOR_PVP_008,
CG_PVP_MATCH_MODE_START_CMD = PROTOCOL_GENERATOR_PVP_009,
CG_PVP_MATCH_MODE_START_BRD = PROTOCOL_GENERATOR_PVP_010, //< PVP 모드
CG_PVP_SCORE_CMD = PROTOCOL_GENERATOR_PVP_011, //< Score획득
CG_PVP_RESULT_BRD = PROTOCOL_GENERATOR_PVP_012, //< PVP 결과 전송
CG_PVP_END_BRD = PROTOCOL_GENERATOR_PVP_013, //< PVP 종료 전송
};
enum eCG_CHUNTING_PROTOCOL
{
CG_CHUNTING_ENTER_NEW_PARTY_BRD = PROTOCOL_GENERATOR_CHUNTING_001, // 새로운 파티가 등장
CG_CHUNTING_START_COMPETITION_BRD = PROTOCOL_GENERATOR_CHUNTING_002, // 경쟁 스타트
CG_CHUNTING_WIN_COMPETITION_BRD = PROTOCOL_GENERATOR_CHUNTING_003, // 경쟁 승리
CG_CHUNTING_LOSE_COMPETITION_BRD = PROTOCOL_GENERATOR_CHUNTING_004, // 경쟁 패배
CG_CHUNTING_UPDATE_KILLPOINT_BRD = PROTOCOL_GENERATOR_CHUNTING_005, // 킬포인트 갱신
CG_CHUNTING_UPDATE_POTIONCOUNT_BRD = PROTOCOL_GENERATOR_CHUNTING_006, // 포션카운트 갱신
CG_CHUNTING_TEAM_INFO_CMD = PROTOCOL_GENERATOR_CHUNTING_007, // 팀정보
CG_CHUNTING_POINT_INFO_SYN = PROTOCOL_GENERATOR_CHUNTING_008, // 포인트정보 요청
CG_CHUNTING_POINT_INFO_ACK = PROTOCOL_GENERATOR_CHUNTING_009, // 포인트정보 전송
CG_CHUNTING_TIE_COMPETITION_BRD = PROTOCOL_GENERATOR_CHUNTING_010, // 경쟁 무승부
};
enum eCG_SUMMON_PROTOCOL
{
CG_SUMMON_COMMAND_SYN = PROTOCOL_GENERATOR_SUMMON_001, // 명령(뒤따름 , 공격지시 , 위임 , 소멸)
CG_SUMMON_COMMAND_ACK = PROTOCOL_GENERATOR_SUMMON_002,
CG_SUMMON_COMMAND_NAK = PROTOCOL_GENERATOR_SUMMON_003,
CG_SUMMON_SKILL_ACTION_SYN = PROTOCOL_GENERATOR_SUMMON_005, // 스킬 시전(결과브로드는 플레이어 스킬과 동일하게 사용한다.)
CG_SUMMON_CURRENT_MP_CMD = PROTOCOL_GENERATOR_SUMMON_007, // 현재 소환체의 MP정보를 보낸다.
CG_SUMMON_CURRENT_HP_CMD = PROTOCOL_GENERATOR_SUMMON_008, // 현재 소환체의 HP정보를 보낸다.
//__NA_000000_20090211_SUMMON_HP_BUG_FIX
CG_SUMMON_CURRENT_HP_BRD = PROTOCOL_GENERATOR_SUMMON_009, // 현재 소환체의 HP정보를 주위에게 보낸다.
// _NA001385_20090924_DOMINATION_SKILL
CG_CRYSTALWARP_COMMAND_SYN = PROTOCOL_GENERATOR_SUMMON_010, // 명령(소멸, 실행) 소환명령은 스킬 패킷을 이용한다.(딜레이, 이펙트등의 이용위해)
CG_CRYSTALWARP_COMMAND_BRD = PROTOCOL_GENERATOR_SUMMON_011, // 명령 응답
CG_CRYSTALWARP_COMMAND_NAK = PROTOCOL_GENERATOR_SUMMON_012,
CG_SUMMON_RECALL_FAIL_CMD = PROTOCOL_GENERATOR_SUMMON_013, //몬스터 소환 실패시 전송한다.
};
enum eCG_GUILD_PROTOCOL
{
CG_GUILD_CREATE_SYN = PROTOCOL_GENERATOR_GUILD_005, //< 길드 창설
CG_GUILD_CREATE_ACK = PROTOCOL_GENERATOR_GUILD_006,
CG_GUILD_CREATE_BRD = PROTOCOL_GENERATOR_GUILD_007, //< 주변 사람에게 길드창설을 했다고 알림
CG_GUILD_CREATE_NAK = PROTOCOL_GENERATOR_GUILD_008,
CG_GUILD_DESTROY_SYN = PROTOCOL_GENERATOR_GUILD_010, //< 길드 해산
CG_GUILD_DESTROY_ACK = PROTOCOL_GENERATOR_GUILD_011,
CG_GUILD_DESTROY_BRD = PROTOCOL_GENERATOR_GUILD_012, //< 주변 사람에게 길드해산를 알림
CG_GUILD_DESTROY_NAK = PROTOCOL_GENERATOR_GUILD_013,
CG_GUILD_JOIN_FAILED_CMD = PROTOCOL_GENERATOR_GUILD_027, //< 길드가입 실패시 가입하려고하는 유저 에게 보내는 패킷.
CG_GUILD_WITHDRAW_SYN = PROTOCOL_GENERATOR_GUILD_030, //< 길드 탈퇴
CG_GUILD_WITHDRAW_ACK = PROTOCOL_GENERATOR_GUILD_031,
CG_GUILD_WITHDRAW_BRD = PROTOCOL_GENERATOR_GUILD_032, //< 주변 사람에게 탈퇴를 알림
CG_GUILD_WITHDRAW_NAK = PROTOCOL_GENERATOR_GUILD_033,
CG_GUILD_BUY_ITEM_SYN = PROTOCOL_GENERATOR_GUILD_050, //< 길드 아이템 구입
CG_GUILD_BUY_ITEM_ACK = PROTOCOL_GENERATOR_GUILD_051,
CG_GUILD_BUY_ITEM_NAK = PROTOCOL_GENERATOR_GUILD_052,
CG_GUILD_USE_ITEM_SYN = PROTOCOL_GENERATOR_GUILD_054, //< 길드 아이템 사용
CG_GUILD_USE_ITEM_ACK = PROTOCOL_GENERATOR_GUILD_055,
CG_GUILD_USE_ITEM_NAK = PROTOCOL_GENERATOR_GUILD_056,
CG_GUILD_USE_GP_SYN = PROTOCOL_GENERATOR_GUILD_058, //< GP의 사용
CG_GUILD_USE_GP_ACK = PROTOCOL_GENERATOR_GUILD_059,
CG_GUILD_USE_GP_NAK = PROTOCOL_GENERATOR_GUILD_060,
CG_GUILD_KICKPLAYER_SYN = PROTOCOL_GENERATOR_GUILD_066, // 길드장이 길드멤버 강제 탈퇴
CG_GUILD_KICKPLAYER_CMD = PROTOCOL_GENERATOR_GUILD_067,
CG_GUILD_KICKPLAYER_BRD = PROTOCOL_GENERATOR_GUILD_068, // 길드장에게 강제탈퇴당했다고 알림
CG_GUILD_KICKPLAYER_NAK = PROTOCOL_GENERATOR_GUILD_069,
CG_GUILD_CONVERT_UP2GP_SYN = PROTOCOL_GENERATOR_GUILD_075, // UP->GP 변환
CG_GUILD_CONVERT_UP2GP_ACK = PROTOCOL_GENERATOR_GUILD_076,
CG_GUILD_CONVERT_UP2GP_NAK = PROTOCOL_GENERATOR_GUILD_077,
CG_GUILD_CONVERT_UP2GP_BRD = PROTOCOL_GENERATOR_GUILD_078,
CG_GUILD_RANKUP_BRD = PROTOCOL_GENERATOR_GUILD_083,
CG_GUILD_ADD_INFO_SYN = PROTOCOL_GENERATOR_GUILD_085,
CG_GUILD_ADD_INFO_ACK = PROTOCOL_GENERATOR_GUILD_086,
CG_GUILD_ADD_INFO_NAK = PROTOCOL_GENERATOR_GUILD_087,
CG_GUILD_RELATION_SYN = PROTOCOL_GENERATOR_GUILD_088, // 관계 길드
CG_GUILD_RELATION_NAK = PROTOCOL_GENERATOR_GUILD_089,
CG_GUILD_RELATION_REQUEST_CMD = PROTOCOL_GENERATOR_GUILD_090,
CG_GUILD_RELATION_ANSWER_SYN = PROTOCOL_GENERATOR_GUILD_091,
CG_GUILD_RELATION_REJECT_ACK = PROTOCOL_GENERATOR_GUILD_092,
CG_GUILD_RELATION_DELETE_SYN = PROTOCOL_GENERATOR_GUILD_093,
CG_GUILD_RELATION_DELETE_NAK = PROTOCOL_GENERATOR_GUILD_094,
CG_GUILD_RELATION_BOTH_AGAINST_SYN = PROTOCOL_GENERATOR_GUILD_095,
CG_GUILD_RELATION_BRD = PROTOCOL_GENERATOR_GUILD_096,
CG_GUILD_RELATION_DELETE_BRD = PROTOCOL_GENERATOR_GUILD_097,
CG_GUILD_RELATION_BOTH_AGAINST_BRD = PROTOCOL_GENERATOR_GUILD_098,
CG_GUILD_RELATION_MOVE_BRD =PROTOCOL_GENERATOR_GUILD_099,
CG_GUILD_CREATE_CORPS_SYN = PROTOCOL_GENERATOR_GUILD_100, // 군단 생성
CG_GUILD_CREATE_CORPS_BRD = PROTOCOL_GENERATOR_GUILD_101,
// CG_GUILD_CREATE_CORPS_ACK = PROTOCOL_GENERATOR_GUILD_102,
CG_GUILD_CREATE_CORPS_NAK = PROTOCOL_GENERATOR_GUILD_103,
CG_GUILD_DESTROY_CORPS_SYN = PROTOCOL_GENERATOR_GUILD_105, // 군단 해산
// CG_GUILD_DESTROY_CORPS_ACK = PROTOCOL_GENERATOR_GUILD_106,
CG_GUILD_DESTROY_CORPS_NAK = PROTOCOL_GENERATOR_GUILD_107,
CG_GUILD_DESTROY_CORPS_BRD = PROTOCOL_GENERATOR_GUILD_108,
CG_GUILD_EMPTY_COMMANDER_INFO_SYN = PROTOCOL_GENERATOR_GUILD_110, // 군단장이 없는 군단정보
CG_GUILD_EMPTY_COMMANDER_INFO_ACK = PROTOCOL_GENERATOR_GUILD_111,
CG_GUILD_EMPTY_COMMANDER_INFO_NAK = PROTOCOL_GENERATOR_GUILD_112,
CG_GUILD_CHANGE_COMMANDER_SYN = PROTOCOL_GENERATOR_GUILD_115, // 군단장 변경(임명)
CG_GUILD_CHANGE_COMMANDER_BRD = PROTOCOL_GENERATOR_GUILD_116,
CG_GUILD_CHANGE_COMMANDER_NAK = PROTOCOL_GENERATOR_GUILD_117,
CG_GUILD_CHANGE_CORPS_SYN = PROTOCOL_GENERATOR_GUILD_120, // 군단 이동
CG_GUILD_CHANGE_CORPS_BRD = PROTOCOL_GENERATOR_GUILD_121,
CG_GUILD_CHANGE_CORPS_NAK = PROTOCOL_GENERATOR_GUILD_122,
CG_GUILD_CREATE_REAR_CAMP_SYN = PROTOCOL_GENERATOR_GUILD_125, // 길드 육성캠프 창설.
CG_GUILD_CREATE_REAR_CAMP_ACK = PROTOCOL_GENERATOR_GUILD_126,
CG_GUILD_CREATE_REAR_CAMP_NAK = PROTOCOL_GENERATOR_GUILD_127,
CG_GUILD_CREATE_REAR_CAMP_BRD = PROTOCOL_GENERATOR_GUILD_128,
CG_GUILD_DESTROY_REAR_CAMP_SYN = PROTOCOL_GENERATOR_GUILD_130, // 길드 육성캠프 해산
CG_GUILD_DESTROY_REAR_CAMP_ACK = PROTOCOL_GENERATOR_GUILD_131,
CG_GUILD_DESTROY_REAR_CAMP_NAK = PROTOCOL_GENERATOR_GUILD_132,
CG_GUILD_DESTROY_REAR_CAMP_BRD = PROTOCOL_GENERATOR_GUILD_133,
CG_GUILD_INVITE_SYN = PROTOCOL_GENERATOR_GUILD_135, // 길드 초대
CG_GUILD_INVITE_CMD = PROTOCOL_GENERATOR_GUILD_136,
CG_GUILD_INVITE_NAK = PROTOCOL_GENERATOR_GUILD_137,
CG_GUILD_INVITE_ANSWER_SYN = PROTOCOL_GENERATOR_GUILD_140, // 길드 초대 결과.
CG_GUILD_INVITE_ANSWER_CMD = PROTOCOL_GENERATOR_GUILD_141,
CG_GUILD_INVITE_ANSWER_NAK = PROTOCOL_GENERATOR_GUILD_142,
CG_GUILD_JOIN_SYN = PROTOCOL_GENERATOR_GUILD_144, // 길드 가입
CG_GUILD_JOIN_ACK = PROTOCOL_GENERATOR_GUILD_145,
CG_GUILD_JOIN_BRD = PROTOCOL_GENERATOR_GUILD_146,
CG_GUILD_JOIN_NAK = PROTOCOL_GENERATOR_GUILD_147,
CG_GUILD_JOIN_CMD = PROTOCOL_GENERATOR_GUILD_148,
//CG_GUILD_JOIN_AROUND_BRD = PROTOCOL_GENERATOR_GUILD_149,
CG_GUILD_DONATE_UP_SYN = PROTOCOL_GENERATOR_GUILD_150, //< 길드에 UP 헌납
CG_GUILD_DONATE_UP_ACK = PROTOCOL_GENERATOR_GUILD_151,
CG_GUILD_DONATE_UP_BRD = PROTOCOL_GENERATOR_GUILD_152,
CG_GUILD_DONATE_UP_NAK = PROTOCOL_GENERATOR_GUILD_153,
CG_GUILD_LOGIN_CHAR_BRD = PROTOCOL_GENERATOR_GUILD_155,
CG_GUILD_LOGOUT_CHAR_BRD = PROTOCOL_GENERATOR_GUILD_156,
CG_GUILD_CHAR_LEVELUP_BRD = PROTOCOL_GENERATOR_GUILD_157,
CG_GUILD_LOGIN_CHAR_CMD = PROTOCOL_GENERATOR_GUILD_158,
CG_GUILD_TOTALINFO_REQ_SYN = PROTOCOL_GENERATOR_GUILD_160,
CG_GUILD_TOTALINFO_REQ_ACK = PROTOCOL_GENERATOR_GUILD_161,
CG_GUILD_TOTALINFO_REQ_NAK = PROTOCOL_GENERATOR_GUILD_162,
CG_GUILD_GM_GUILD_POINT_BRD = PROTOCOL_GENERATOR_GUILD_163,
CG_GUILD_GM_GUILD_POINT_NAK = PROTOCOL_GENERATOR_GUILD_164,
CG_GUILD_CHANGE_CHAOSTATE_BRD = PROTOCOL_GENERATOR_GUILD_166,
CG_GUILD_GUILDMARK_REGISTER_SYN = PROTOCOL_GENERATOR_GUILD_170,
CG_GUILD_GUILDMARK_REGISTER_ACK = PROTOCOL_GENERATOR_GUILD_171,
CG_GUILD_GUILDMARK_REGISTER_BRD = PROTOCOL_GENERATOR_GUILD_172,
CG_GUILD_GUILDMARK_REGISTER_SECTOR_BRD = PROTOCOL_GENERATOR_GUILD_173,
CG_GUILD_GUILDMARK_REGISTER_NAK = PROTOCOL_GENERATOR_GUILD_174,
CG_GUILD_GUILDMARK_DELETE_SYN = PROTOCOL_GENERATOR_GUILD_175,
CG_GUILD_GUILDMARK_DELETE_ACK = PROTOCOL_GENERATOR_GUILD_176,
CG_GUILD_GUILDMARK_DELETE_BRD = PROTOCOL_GENERATOR_GUILD_177,
CG_GUILD_GUILDMARK_DELETE_SECTOR_BRD = PROTOCOL_GENERATOR_GUILD_178,
CG_GUILD_GUILDMARK_DELETE_NAK = PROTOCOL_GENERATOR_GUILD_179,
CG_GUILD_CHANGE_DUTY_SYN = PROTOCOL_GENERATOR_GUILD_180, // 길드 직책 변경
CG_GUILD_CHANGE_DUTY_ACK = PROTOCOL_GENERATOR_GUILD_181,
CG_GUILD_CHANGE_DUTY_BRD = PROTOCOL_GENERATOR_GUILD_182,
CG_GUILD_CHANGE_DUTY_NAK = PROTOCOL_GENERATOR_GUILD_183,
CG_GUILD_RIGHT_DELEGATION_LIST_SYN = PROTOCOL_GENERATOR_GUILD_184, // 길드 위임 권한 목록 요청
CG_GUILD_RIGHT_DELEGATION_LIST_ACK = PROTOCOL_GENERATOR_GUILD_185,
CG_GUILD_RIGHT_DELEGATION_LIST_NAK = PROTOCOL_GENERATOR_GUILD_186,
CG_GUILD_RIGHT_DELEGATION_SYN = PROTOCOL_GENERATOR_GUILD_187, // 길드 권한 위임
CG_GUILD_RIGHT_DELEGATION_ACK = PROTOCOL_GENERATOR_GUILD_188,
CG_GUILD_RIGHT_DELEGATION_CMD = PROTOCOL_GENERATOR_GUILD_189,
CG_GUILD_RIGHT_DELEGATION_NAK = PROTOCOL_GENERATOR_GUILD_190,
CG_GUILD_CHANGE_MASTER_SYN = PROTOCOL_GENERATOR_GUILD_191, // 길드장 변경
//CG_GUILD_CHANGE_MASTER_ACK = PROTOCOL_GENERATOR_GUILD_192,
CG_GUILD_CHANGE_MASTER_BRD = PROTOCOL_GENERATOR_GUILD_193,
CG_GUILD_CHANGE_MASTER_NAK = PROTOCOL_GENERATOR_GUILD_194,
CG_GUILD_LEAVE_BRD = PROTOCOL_GENERATOR_GUILD_198, // 길드에서 탈퇴했다고 탈퇴한 유저 주위의 클라이언트에게 보내는 패킷.
CG_GUILD_RECOVERY_GUILD_SYN = PROTOCOL_GENERATOR_GUILD_200,
CG_GUILD_RECOVERY_GUILD_ACK = PROTOCOL_GENERATOR_GUILD_201,
CG_GUILD_RECOVERY_GUILD_NAK = PROTOCOL_GENERATOR_GUILD_202,
CG_GUILD_DESTROY_WAIT_ACK = PROTOCOL_GENERATOR_GUILD_203,
CG_GUILD_DESTROY_WAIT_BRD = PROTOCOL_GENERATOR_GUILD_204,
CG_GUILD_WAREHOUSE_OPEN_SYN = PROTOCOL_GENERATOR_GUILD_205,
CG_GUILD_WAREHOUSE_CLOSE_SYN = PROTOCOL_GENERATOR_GUILD_206,
CG_GUILD_WAREHOUSE_MONEY_SYN = PROTOCOL_GENERATOR_GUILD_207,
CG_GUILD_WAREHOUSE_OPEN_ACK = PROTOCOL_GENERATOR_GUILD_210,
CG_GUILD_WAREHOUSE_CLOSE_ACK = PROTOCOL_GENERATOR_GUILD_211,
CG_GUILD_WAREHOUSE_MONEY_ACK = PROTOCOL_GENERATOR_GUILD_212,
CG_GUILD_WAREHOUSE_OPEN_NAK = PROTOCOL_GENERATOR_GUILD_215,
CG_GUILD_WAREHOUSE_CLOSE_NAK = PROTOCOL_GENERATOR_GUILD_216,
CG_GUILD_WAREHOUSE_MONEY_NAK = PROTOCOL_GENERATOR_GUILD_217,
CG_GUILD_WAREHOUSE_TAPEX_ACK = PROTOCOL_GENERATOR_GUILD_218,
CG_GUILD_WAREHOUSE_TAPEX_NAK = PROTOCOL_GENERATOR_GUILD_219,
//{__NA000000_20081106_GUILD_NAME_CHANGE
CG_GUILD_NAME_CHANGE_SYN = PROTOCOL_GENERATOR_GUILD_220,
CG_GUILD_NAME_CHANGE_BRD = PROTOCOL_GENERATOR_GUILD_221,
CG_GUILD_NAME_CHANGE_SECTOR_BRD = PROTOCOL_GENERATOR_GUILD_222,
CG_GUILD_NAME_CHANGE_RELATION_BRD = PROTOCOL_GENERATOR_GUILD_223,
CG_GUILD_NAME_CHANGE_NAK = PROTOCOL_GENERATOR_GUILD_224,
//
//_NA_003923_20120130_GUILD_RENEWAL
CG_GUILD_IN_GAME_GUILD_LOG_LIST_REQ = PROTOCOL_GENERATOR_GUILD_225,
CG_GUILD_IN_GAME_GUILD_LOG_LIST_ANS = PROTOCOL_GENERATOR_GUILD_226,
//_NA_004034_20120102_GUILD_INTRODUCTION
CG_GUILD_INTRODUCTION_SAVE_SYN = PROTOCOL_GENERATOR_GUILD_227,
CG_GUILD_INTRODUCTION_SAVE_ACK = PROTOCOL_GENERATOR_GUILD_228,
CG_GUILD_INTRODUCTION_CHANGE_BRD = PROTOCOL_GENERATOR_GUILD_229,
//_NA_007330_20140620_GUILD_SYSTEM_EXTENSION
//길드 가입 요청 제출
CG_GUILD_JOIN_REQUEST_SYN = PROTOCOL_GENERATOR_GUILD_230,
CG_GUILD_JOIN_REQUEST_ACK = PROTOCOL_GENERATOR_GUILD_231,
CG_GUILD_JOIN_REQUEST_BRD = PROTOCOL_GENERATOR_GUILD_232,
//길드 가입 요청 승인
CG_GUILD_JOIN_REQUEST_APPROVE_SYN = PROTOCOL_GENERATOR_GUILD_233,
//길드 가입 요청 거절
CG_GUILD_JOIN_REQUEST_REJECT_SYN = PROTOCOL_GENERATOR_GUILD_234,
CG_GUILD_JOIN_REQUEST_REJECT_ACK = PROTOCOL_GENERATOR_GUILD_235,
CG_GUILD_JOIN_REQUEST_REJECT_BRD = PROTOCOL_GENERATOR_GUILD_236,
//길드 시설 업그레이드 요청
CG_GUILD_FACILITY_UPGRADE_SYN = PROTOCOL_GENERATOR_GUILD_237,
CG_GUILD_FACILITY_UPGRADE_ACK = PROTOCOL_GENERATOR_GUILD_238,
CG_GUILD_FACILITY_UPGRADE_BRD = PROTOCOL_GENERATOR_GUILD_239,
//길드 시설 활성화 요청
CG_GUILD_FACILITY_ACTIVE_SYN = PROTOCOL_GENERATOR_GUILD_240,
CG_GUILD_FACILITY_ACTIVE_ACK = PROTOCOL_GENERATOR_GUILD_241,
//길드 시설 정보
CG_GUILD_FACILITY_TOTALINFO_ACK = PROTOCOL_GENERATOR_GUILD_242,
//_NA_008334_20150608_SONNENSCHEIN
// 소넨샤인 등급갱신
CG_GUILD_SONNENSCHEIN_UPDATE_CMD = PROTOCOL_GENERATOR_GUILD_243,
};
enum eCG_EVENT_PROTOCOL
{
CG_EVENT_SELECT_SYN = PROTOCOL_GENERATOR_EVENT_001,
CG_EVENT_SELECT_ACK = PROTOCOL_GENERATOR_EVENT_002,
CG_EVENT_SELECT_NAK = PROTOCOL_GENERATOR_EVENT_003,
CG_EVENT_MOVE_ITEM_TO_INVEN_SYN = PROTOCOL_GENERATOR_EVENT_005,
CG_EVENT_MOVE_ITEM_TO_INVEN_ACK = PROTOCOL_GENERATOR_EVENT_006,
CG_EVENT_MOVE_ITEM_TO_INVEN_NAK = PROTOCOL_GENERATOR_EVENT_007,
CG_EVENT_ITEM_STATUS_SYN = PROTOCOL_GENERATOR_EVENT_009, // 이벤트 등록 아이템 정보 요청
CG_EVENT_ITEM_STATUS_ACK = PROTOCOL_GENERATOR_EVENT_010,
CG_EVENT_ITEM_STATUS_NAK = PROTOCOL_GENERATOR_EVENT_011,
CG_EVENT_ITEM_REG_SYN = PROTOCOL_GENERATOR_EVENT_013, // 이벤트 아이템 등록 요청
CG_EVENT_ITEM_REG_ACK = PROTOCOL_GENERATOR_EVENT_014, // 이 프로토콜은 순서상으로 CG_EVENT_ITEM_REWARD_CMD 뒤에 와서 보상이 끝났음을 알려 줘야 한다
CG_EVENT_ITEM_REG_NAK = PROTOCOL_GENERATOR_EVENT_015,
CG_EVENT_ITEM_REWARD_CMD = PROTOCOL_GENERATOR_EVENT_017, // 이벤트 아이템 보상 받음(W->C)
CG_EVENT_TIME_CMD = PROTOCOL_GENERATOR_EVENT_018, // 이벤트 누적 시간 전달
CG_EVENT_QUERY_EXIST_SYN = PROTOCOL_GENERATOR_EVENT_020, //
CG_EVENT_QUERY_EXIST_ACK = PROTOCOL_GENERATOR_EVENT_021,
CG_EVENT_TIME_PERIOD_SYN = PROTOCOL_GENERATOR_EVENT_022, // 이벤트 기간 시간 전달
CG_EVENT_TIME_PERIOD_ACK = PROTOCOL_GENERATOR_EVENT_023,
CG_EVENT_TIME_PERIOD_NAK = PROTOCOL_GENERATOR_EVENT_024,
// <Desc> 기존과 다른 체계. 바로 보상 받는 형태다.
CG_EVENT_REQUEST_ITEM_SYN = PROTOCOL_GENERATOR_EVENT_025, // 성공시 CG_EVENT_ITEM_REWARD_CMD
CG_EVENT_REQUEST_ITEM_NAK = PROTOCOL_GENERATOR_EVENT_026, // 아이템 요청 실패
CG_EVENT_DONATION_HEIM_SYN = PROTOCOL_GENERATOR_EVENT_028, // 기부 요청
CG_EVENT_DONATION_HEIM_ACK = PROTOCOL_GENERATOR_EVENT_029, // 조건 만족시 CG_EVENT_ITEM_REWARD_CMD
CG_EVENT_BUFF_EVENT_SYN = PROTOCOL_GENERATOR_EVENT_031, // BUFF_OBJECT 클릭(BUFF_EVENT에 대한 통합)
CG_EVENT_BUFF_EVENT_ACK = PROTOCOL_GENERATOR_EVENT_032, // 해당 요청에 대한 응답 { SUCCESS, FAIL }
//_KR_0_20091021_FIRENDINVITATION_EXTEND //프로토콜 선언 = {
CG_EVENT_INVITATEFRIEND_REWARD_LIST_SYN = PROTOCOL_GENERATOR_EVENT_033, // 친구 초대 이벤트에 대한 보상 목록 요청 (C->A->D)
CG_EVENT_INVITATEFRIEND_REWARD_LIST_ACK = PROTOCOL_GENERATOR_EVENT_034,
CG_EVENT_INVITATEFRIEND_REWARD_LIST_NAK = PROTOCOL_GENERATOR_EVENT_035,
CG_EVENT_INVITATEFRIEND_REWARD_SYN = PROTOCOL_GENERATOR_EVENT_036, // 친구 초대 이벤트에 대한 보상 받기 요청
CG_EVENT_INVITATEFRIEND_REWARD_ACK = PROTOCOL_GENERATOR_EVENT_037,
CG_EVENT_INVITATEFRIEND_REWARD_NAK = PROTOCOL_GENERATOR_EVENT_038,
CG_EVENT_INVITATEFRIEND_RECALL_SYN = PROTOCOL_GENERATOR_EVENT_039, // 친구의 리콜
CG_EVENT_INVITATEFRIEND_RECALL_ACK = PROTOCOL_GENERATOR_EVENT_040,
CG_EVENT_INVITATEFRIEND_RECALL_NAK = PROTOCOL_GENERATOR_EVENT_041,
CG_EVENT_INVITATEFRIEND_RECALL_QUESTION_SYN = PROTOCOL_GENERATOR_EVENT_042, // 친구의 리콜
CG_EVENT_INVITATEFRIEND_RECALL_QUESTION_ACK = PROTOCOL_GENERATOR_EVENT_043,
CG_EVENT_INVITATEFRIEND_RECALL_QUESTION_NAK = PROTOCOL_GENERATOR_EVENT_044,
//}
//_NA_20100420_CHANGE_SYSTEM_MEMO_LOGIC
CG_EVENT_ITEM_REWARD_RESULT_CMD = PROTOCOL_GENERATOR_EVENT_045,
CG_EVENT_DOMINATION_REWARD_CMD = PROTOCOL_GENERATOR_EVENT_046,
CG_EVENT_LOTTO_REWARD_CMD = PROTOCOL_GENERATOR_EVENT_047,
//_NA_20100812_INTEGRATE_SYSTEM_MEMO_DOMINATION
CG_EVENT_SYSTEMMEMO_ITEM_REWARD_REQ = PROTOCOL_GENERATOR_EVENT_048,
CG_EVENT_SYSTEMMEMO_ITEM_REWARD_ANS = PROTOCOL_GENERATOR_EVENT_049,
//!~_NA_007919_20141211_ADD_GMCOMMAND_EVENT
CG_EVENT_PEAKTIME_NOTIFY_BRD = PROTOCOL_GENERATOR_EVENT_050,
CG_GMEVENT_PEAKTIME_EVENTLIST_CMD = PROTOCOL_GENERATOR_EVENT_051,
CG_GMEVENT_PEAKTIME_PROGRESS_EVENTINFO_CMD = PROTOCOL_GENERATOR_EVENT_052,
//~!_NA_007919_20141211_ADD_GMCOMMAND_EVENT
};
enum eCG_QUEST_PROTOCOL
{
// 접속시 받게되는 퀘스트 정보 = PROTOCOL_GENERATOR_QUEST_001,
CG_QUEST_STREAM_CMD = PROTOCOL_GENERATOR_QUEST_002,
// NPC로 부터 퀘스트를 수락할때 = PROTOCOL_GENERATOR_QUEST_004,
CG_QUEST_ACCEPT_SYN = PROTOCOL_GENERATOR_QUEST_005,
CG_QUEST_ACCEPT_ACK = PROTOCOL_GENERATOR_QUEST_006,
CG_QUEST_ACCEPT_NAK = PROTOCOL_GENERATOR_QUEST_007,
CG_QUEST_ACCEPT_CMD = PROTOCOL_GENERATOR_QUEST_008,
// 퀘스트가 완료되었을 때 = PROTOCOL_GENERATOR_QUEST_009,
CG_QUEST_COMPLETE_SYN = PROTOCOL_GENERATOR_QUEST_010,
CG_QUEST_COMPLETE_ACK = PROTOCOL_GENERATOR_QUEST_011,
CG_QUEST_COMPLETE_NAK = PROTOCOL_GENERATOR_QUEST_012,
// 보상 받을 때 = PROTOCOL_GENERATOR_QUEST_014,
CG_QUEST_REWARD_SYN = PROTOCOL_GENERATOR_QUEST_015,
CG_QUEST_REWARD_ACK = PROTOCOL_GENERATOR_QUEST_016,
CG_QUEST_REWARD_NAK = PROTOCOL_GENERATOR_QUEST_017,
// timeout이 되었거나 = PROTOCOL_GENERATOR_QUEST_019, 퀘스트의 실패가 감지되었을 때
CG_QUEST_FAILED_SYN = PROTOCOL_GENERATOR_QUEST_020,
CG_QUEST_FAILED_ACK = PROTOCOL_GENERATOR_QUEST_021,
CG_QUEST_FAILED_NAK = PROTOCOL_GENERATOR_QUEST_022,
// 퀘스트를 포기할 때 = PROTOCOL_GENERATOR_QUEST_024,
CG_QUEST_ABANDON_SYN = PROTOCOL_GENERATOR_QUEST_025,
CG_QUEST_ABANDON_ACK = PROTOCOL_GENERATOR_QUEST_026,
CG_QUEST_ABANDON_NAK = PROTOCOL_GENERATOR_QUEST_027,
// 몬스터 킬수 보내기 = PROTOCOL_GENERATOR_QUEST_029,
CG_QUEST_MONSTER_KILL_CMD = PROTOCOL_GENERATOR_QUEST_030,
CG_QUEST_ITEM_OBTAIN_CMD = PROTOCOL_GENERATOR_QUEST_031,
CG_QUEST_ITEM_DELETE_CMD = PROTOCOL_GENERATOR_QUEST_032,
CG_QUEST_EVENT_AREA_SYN = PROTOCOL_GENERATOR_QUEST_033,
CG_QUEST_EVENT_AREA_ACK = PROTOCOL_GENERATOR_QUEST_034,
CG_QUEST_EVENT_AREA_NAK = PROTOCOL_GENERATOR_QUEST_035,
//퀘스트가 완료상태에서 해제되었을 때
CG_QUEST_INCOMPLETE_SYN = PROTOCOL_GENERATOR_QUEST_036,
CG_QUEST_INCOMPLETE_ACK = PROTOCOL_GENERATOR_QUEST_037,
CG_QUEST_INCOMPLETE_NAK = PROTOCOL_GENERATOR_QUEST_038,
//__NA000844_080324_100LEVEL_CHAGNEUP_REBUILDING__ //<- 전직 퀘스트 완료후 추가 전직 정보 전송
CG_QUEST_CHANGEofCLASS_CMD = PROTOCOL_GENERATOR_QUEST_039,
CG_QUEST_OBJECT_NAVI_POS_CMD = PROTOCOL_GENERATOR_QUEST_040, //__NA001277_090205_NAVI_SYSTEM_SUPPORT__
CG_QUEST_REWARD_CMD = PROTOCOL_GENERATOR_QUEST_041,
CG_QUEST_MONSTER_KILL_GRADE_CMD = PROTOCOL_GENERATOR_QUEST_042,
#ifdef _NA_003027_20111013_HONOR_SYSTEM
CG_QUEST_DAILYQUEST_PACKET = PROTOCOL_GENERATOR_QUEST_043,
#endif //_NA_003027_20111013_HONOR_SYSTEM
#ifdef _NA_006607_20130402_ADD_QUESTTYPE
CG_QUEST_MISSION_CLEAR_CMD = PROTOCOL_GENERATOR_QUEST_044,
#endif // _NA_006607_20130402_ADD_QUESTTYPE
};
enum eCG_MISSION_PROTOCOL
{
CG_MISSION_STREAM_CMD = PROTOCOL_GENERATOR_MISSION_001,
CG_MISSION_RECORD_ELAPSEDTIME_CMD = PROTOCOL_GENERATOR_MISSION_002,
// 사용하지 않게될 프로토콜
CG_MISSION_RECORD_CLEARTIME_CMD = PROTOCOL_GENERATOR_MISSION_003,
#ifdef _NA_008012_20150130_RANKING_SYSTEM
// 랭킹 추가 프로토콜
// 랭킹 종합 정보 요청
CG_MISSION_RANKING_INFO_SYN = PROTOCOL_GENERATOR_MISSION_004,
CG_MISSION_RANKING_INFO_ACK = PROTOCOL_GENERATOR_MISSION_005,
CG_MISSION_RANKING_INFO_NAK = PROTOCOL_GENERATOR_MISSION_006,
// 주기적으로 미션 타이머가 변경되었을 때
CG_MISSION_TIMER_CHANGED_BRD = PROTOCOL_GENERATOR_MISSION_007,
// 미션 클리어시 정보 전달
CG_MISSION_RANKING_SUCCESS_BRD = PROTOCOL_GENERATOR_MISSION_008,
// 랭킹 등록 제한 조건에 걸려서 실패했을 경우 + 순위(1~50)에 등록 실패했을 경우
CG_MISSION_RANKING_FAILED_BRD = PROTOCOL_GENERATOR_MISSION_009,
// 지난주 순위에 대한 보상 요청
CG_MISSION_RANKING_REWARD_SYN = PROTOCOL_GENERATOR_MISSION_010,
CG_MISSION_RANKING_REWARD_ACK = PROTOCOL_GENERATOR_MISSION_011,
CG_MISSION_RANKING_REWARD_NAK = PROTOCOL_GENERATOR_MISSION_012,
CG_MISSION_RANKING_MEMBER_INFO_SYN = PROTOCOL_GENERATOR_MISSION_014,
CG_MISSION_RANKING_MEMBER_INFO_ACK = PROTOCOL_GENERATOR_MISSION_015,
CG_MISSION_RANKING_MEMBER_INFO_NAK = PROTOCOL_GENERATOR_MISSION_016,
CG_MISSION_CLEAR_RECORD_CMD = PROTOCOL_GENERATOR_MISSION_018,
//PROTOCOL_GENERATOR_MISSION_019 - reusable
//PROTOCOL_GENERATOR_MISSION_020 - reusable
//PROTOCOL_GENERATOR_MISSION_021 - reusable
CG_MISSION_GET_MISSION_POINT_BRD = PROTOCOL_GENERATOR_MISSION_022,
CG_MISSION_POINT_CANNOT_REGISTER_BRD = PROTOCOL_GENERATOR_MISSION_023,
#endif // _NA_008012_20150130_RANKING_SYSTEM
CG_MISSION_SET_CLEAR_COUNT_CMD = PROTOCOL_GENERATOR_MISSION_024, //__NA_0_AC_FOR_REAL_TIME_REFRESH
#ifdef _NA_008012_20150130_RANKING_SYSTEM
#ifdef _NA_006801_20130705_RENEWAL_RANKINGSYSTEM
CG_MISSION_RANKING_SETTLEDDATE_INFO_SYN = PROTOCOL_GENERATOR_MISSION_025,
CG_MISSION_RANKING_SETTLEDDATE_INFO_ACK = PROTOCOL_GENERATOR_MISSION_026,
CG_MISSION_RANKING_SETTLEDDATE_INFO_NAK = PROTOCOL_GENERATOR_MISSION_027,
#endif //_NA_006801_20130705_RENEWAL_RANKINGSYSTEM
#endif // _NA_008012_20150130_RANKING_SYSTEM
};
enum eCG_AREACONQUEST_PROTOCOL
{
CG_AREACONQUEST_STREAM_CMD = PROTOCOL_GENERATOR_AREACONQUEST_001, // 처음접속시 전부 보내주는것
CG_AREACONQUEST_VALUE_CHANGE_CMD = PROTOCOL_GENERATOR_AREACONQUEST_002, // 값 변경
CG_AREACONQUEST_REWARD_SYN = PROTOCOL_GENERATOR_AREACONQUEST_003,
CG_AREACONQUEST_REWARD_ACK = PROTOCOL_GENERATOR_AREACONQUEST_004,
CG_AREACONQUEST_REWARD_NAK = PROTOCOL_GENERATOR_AREACONQUEST_005,
};
enum eCG_WAYPOINT_PROTOCOL
{
CG_WAYPOINT_INFO_LOAD_SYN = PROTOCOL_GENERATOR_WAYPOINT_001,
CG_WAYPOINT_INFO_LOAD_ACK = PROTOCOL_GENERATOR_WAYPOINT_002,
CG_WAYPOINT_INFO_LOAD_NAK = PROTOCOL_GENERATOR_WAYPOINT_003,
CG_WAYPOINT_INFO_SAVE_SYN = PROTOCOL_GENERATOR_WAYPOINT_004,
CG_WAYPOINT_INFO_SAVE_ACK = PROTOCOL_GENERATOR_WAYPOINT_005,
CG_WAYPOINT_INFO_SAVE_NAK = PROTOCOL_GENERATOR_WAYPOINT_006,
//{__NA001164_20081024_CHAR_WAY_POINT_PACKET
CG_CHAR_WAYPOINT_INFO_LOAD_SYN = PROTOCOL_GENERATOR_WAYPOINT_007,
CG_CHAR_WAYPOINT_INFO_LOAD_ACK = PROTOCOL_GENERATOR_WAYPOINT_008,
CG_CHAR_WAYPOINT_INFO_SAVE_SYN = PROTOCOL_GENERATOR_WAYPOINT_009,
CG_CHAR_WAYPOINT_INFO_SAVE_ACK = PROTOCOL_GENERATOR_WAYPOINT_010,
CG_CHAR_WAYPOINT_INFO_DEL_SYN = PROTOCOL_GENERATOR_WAYPOINT_011,
CG_CHAR_WAYPOINT_INFO_DEL_ACK = PROTOCOL_GENERATOR_WAYPOINT_012,
CG_CHAR_WAYPOINT_INFO_EXE_CMD = PROTOCOL_GENERATOR_WAYPOINT_013,
CG_CHAR_WAYPOINT_INFO_NAK = PROTOCOL_GENERATOR_WAYPOINT_014,
//}__NA001164_20081024_CHAR_WAY_POINT_PACKET
};
enum eCG_CHAO_PROTOCOL
{
// 강제공격의 경우 기존공격 패킷을 그대로 사용한다. (CG_BATTLE_PLAYER_ATTACK_SYN )
CG_CHAO_CHANGE_BORADORI_STATE_BRD = PROTOCOL_GENERATOR_CHAO_001, // 보라돌이 상태 갱신(G->C)
CG_CHAO_CHANGE_CHAO_STATE_BRD = PROTOCOL_GENERATOR_CHAO_002, // 카오 상태 갱신(G->C)
CG_CHAO_ASK_REVENGE_ADDITION_CMD = PROTOCOL_GENERATOR_CHAO_003, // 리벤지 리스트에 추가할 것인지 묻는다(G->C)
CG_CHAO_ADD_REVENGE_CHAR_SYN = PROTOCOL_GENERATOR_CHAO_004, // 리벤지 리스트에 추가 요청한다(C->G)
CG_CHAO_ADD_REVENGE_CHAR_ACK = PROTOCOL_GENERATOR_CHAO_005, // 리벤지 리스트에 추가 성공(A->C)
CG_CHAO_ADD_REVENGE_CHAR_NAK = PROTOCOL_GENERATOR_CHAO_006, // 리벤지 리스트에 추가 실패(G->C, A->C)
CG_CHAO_NOTIFIY_CHAO_TIME_CMD = PROTOCOL_GENERATOR_CHAO_007, // 카오 남은 시간
CG_CHAO_TRACK_REVENGE_CHAR_SYN = PROTOCOL_GENERATOR_CHAO_008, // 리벤지 대상으로 워프(추적)
CG_CHAO_TRACK_REVENGE_CHAR_NAK = PROTOCOL_GENERATOR_CHAO_009,
};
enum eCG_SHOP_PROTOCOL
{
#ifdef _NA_0_20110613_GAME_SHOP_RENEWAL
CG_SHOP_VERSION_SYN = PROTOCOL_GENERATOR_SHOP_001,
CG_SHOP_VERSION_ACK = PROTOCOL_GENERATOR_SHOP_002,
CG_SHOP_VERSION_NAK = PROTOCOL_GENERATOR_SHOP_003,
CG_SHOP_OPEN_SYN = PROTOCOL_GENERATOR_SHOP_004,
CG_SHOP_OPEN_ACK = PROTOCOL_GENERATOR_SHOP_005,
CG_SHOP_OPEN_NAK = PROTOCOL_GENERATOR_SHOP_006,
CG_SHOP_CLOSE_NTF = PROTOCOL_GENERATOR_SHOP_007,
CG_SHOP_BUY_STORAGE_LIST_SYN = PROTOCOL_GENERATOR_SHOP_008,
CG_SHOP_BUY_STORAGE_LIST_ACK = PROTOCOL_GENERATOR_SHOP_009,
CG_SHOP_BUY_STORAGE_LIST_NAK = PROTOCOL_GENERATOR_SHOP_010,
CG_SHOP_GIFT_STORAGE_LIST_SYN = PROTOCOL_GENERATOR_SHOP_011,
CG_SHOP_GIFT_STORAGE_LIST_ACK = PROTOCOL_GENERATOR_SHOP_012,
CG_SHOP_GIFT_STORAGE_LIST_NAK = PROTOCOL_GENERATOR_SHOP_013,
CG_SHOP_BUY_ITEM_SYN = PROTOCOL_GENERATOR_SHOP_014,
CG_SHOP_BUY_ITEM_ACK = PROTOCOL_GENERATOR_SHOP_015,
CG_SHOP_BUY_ITEM_NAK = PROTOCOL_GENERATOR_SHOP_016,
CG_SHOP_SEND_GIFT_SYN = PROTOCOL_GENERATOR_SHOP_017,
CG_SHOP_SEND_GIFT_ACK = PROTOCOL_GENERATOR_SHOP_018,
CG_SHOP_SEND_GIFT_NAK = PROTOCOL_GENERATOR_SHOP_019,
CG_SHOP_SEND_GIFT_NTF = PROTOCOL_GENERATOR_SHOP_020,
CG_SHOP_USE_STORAGE_ITEM_SYN = PROTOCOL_GENERATOR_SHOP_021,
CG_SHOP_USE_STORAGE_ITEM_ACK = PROTOCOL_GENERATOR_SHOP_022,
CG_SHOP_USE_STORAGE_ITEM_NAK = PROTOCOL_GENERATOR_SHOP_023,
CG_SHOP_CHAR_NAME_CHECK_SYN = PROTOCOL_GENERATOR_SHOP_024,
CG_SHOP_CHAR_NAME_CHECK_ACK = PROTOCOL_GENERATOR_SHOP_025,
CG_SHOP_CHAR_NAME_CHECK_NAK = PROTOCOL_GENERATOR_SHOP_026,
CG_SHOP_CASH_SYN = PROTOCOL_GENERATOR_SHOP_027,
CG_SHOP_CASH_ACK = PROTOCOL_GENERATOR_SHOP_028,
CG_SHOP_CASH_NAK = PROTOCOL_GENERATOR_SHOP_029,
CG_SHOP_EXIST_GIFT_SYN = PROTOCOL_GENERATOR_SHOP_030,
CG_SHOP_EXIST_GIFT_ACK = PROTOCOL_GENERATOR_SHOP_031,
CG_SHOP_EXIST_GIFT_NAK = PROTOCOL_GENERATOR_SHOP_032,
CG_SHOP_EXIST_GIFT_NTF = PROTOCOL_GENERATOR_SHOP_033,
#else //_NA_0_20110613_GAME_SHOP_RENEWAL
CG_SHOP_ITEM_LIST_REQ_SYN = PROTOCOL_GENERATOR_SHOP_001,
CG_SHOP_ITEM_LIST_REQ_ACK = PROTOCOL_GENERATOR_SHOP_002,
CG_SHOP_ITEM_LIST_REQ_NAK = PROTOCOL_GENERATOR_SHOP_003,
CG_SHOP_CASH_REQ_SYN = PROTOCOL_GENERATOR_SHOP_004,
CG_SHOP_CASH_REQ_ACK = PROTOCOL_GENERATOR_SHOP_005,
CG_SHOP_CASH_REQ_NAK = PROTOCOL_GENERATOR_SHOP_006,
CG_SHOP_ITEM_BUY_SYN = PROTOCOL_GENERATOR_SHOP_007,
CG_SHOP_ITEM_BUY_ACK = PROTOCOL_GENERATOR_SHOP_008,
CG_SHOP_ITEM_BUY_NAK = PROTOCOL_GENERATOR_SHOP_009,
CG_SHOP_BUY_HISTORY_SYN = PROTOCOL_GENERATOR_SHOP_010,
CG_SHOP_BUY_HISTORY_ACK = PROTOCOL_GENERATOR_SHOP_011,
CG_SHOP_BUY_HISTORY_NAK = PROTOCOL_GENERATOR_SHOP_012,
CG_SHOP_ITEM_REQ_SYN = PROTOCOL_GENERATOR_SHOP_014,
CG_SHOP_ITEM_REQ_ACK = PROTOCOL_GENERATOR_SHOP_015,
CG_SHOP_ITEM_REQ_NAK = PROTOCOL_GENERATOR_SHOP_016,
//CG_SHOP_PACKAGE_BUY_SYN = PROTOCOL_GENERATOR_SHOP_018,
//CG_SHOP_PACKAGE_BUY_ACK = PROTOCOL_GENERATOR_SHOP_019,
//CG_SHOP_PACKAGE_BUY_NAK = PROTOCOL_GENERATOR_SHOP_020,
CG_SHOP_CHECK_CHAR_NAME_SYN = PROTOCOL_GENERATOR_SHOP_022,
CG_SHOP_CHECK_CHAR_NAME_ACK = PROTOCOL_GENERATOR_SHOP_023,
CG_SHOP_CHECK_CHAR_NAME_NAK = PROTOCOL_GENERATOR_SHOP_024,
CG_SHOP_SEND_GIFT_SYN = PROTOCOL_GENERATOR_SHOP_026,
CG_SHOP_SEND_GIFT_ACK = PROTOCOL_GENERATOR_SHOP_027,
CG_SHOP_SEND_GIFT_NAK = PROTOCOL_GENERATOR_SHOP_028,
CG_SHOP_SEND_GIFT_NTF = PROTOCOL_GENERATOR_SHOP_029, //< 선물을 받는 플레이어가 통지받음
CG_SHOP_ACTION_RECV_GIFT_SYN = PROTOCOL_GENERATOR_SHOP_030,
CG_SHOP_ACTION_RECV_GIFT_ACK = PROTOCOL_GENERATOR_SHOP_031,
CG_SHOP_ACTION_RECV_GIFT_NAK = PROTOCOL_GENERATOR_SHOP_032,
CG_SHOP_IS_RECV_GIFT_SYN = PROTOCOL_GENERATOR_SHOP_034,
CG_SHOP_IS_RECV_GIFT_ACK = PROTOCOL_GENERATOR_SHOP_035,
CG_SHOP_IS_RECV_GIFT_NAK = PROTOCOL_GENERATOR_SHOP_036,
CG_SHOP_RECV_GIFT_LIST_SYN = PROTOCOL_GENERATOR_SHOP_038,
CG_SHOP_RECV_GIFT_LIST_ACK = PROTOCOL_GENERATOR_SHOP_039,
CG_SHOP_RECV_GIFT_LIST_NAK = PROTOCOL_GENERATOR_SHOP_040,
//__NA000000_SHOP_USERID_50_PASSING_PROC__
CG_SHOP_SEND_GIFT_RELAY_SYN = PROTOCOL_GENERATOR_SHOP_041, // CG_SHOP_SEND_GIFT_SYN(C)->A->G
#endif //_NA_0_20110613_GAME_SHOP_RENEWAL
};
enum eCG_COLLECT_PROTOCOL
{
CG_COLLECT_ALLCOLLECTIVE_CMD = PROTOCOL_GENERATOR_COLLECT_001, //섹터 진입,떠남 (채집물 synk)
CG_COLLECT_LEAVE_SECTOR_CMD = PROTOCOL_GENERATOR_COLLECT_002,
CG_COLLECT_ACTION_SYN = PROTOCOL_GENERATOR_COLLECT_003, // 채집
CG_COLLECT_ACTION_BRD = PROTOCOL_GENERATOR_COLLECT_004, // CHANGES: f110425.1L, moved to sync
CG_COLLECT_CANCEL_SYN = PROTOCOL_GENERATOR_COLLECT_005, // 채집 취소
CG_COLLECT_CANCEL_BRD = PROTOCOL_GENERATOR_COLLECT_006, // CHANGES: f110425.1L, moved to sync
CG_COLLECT_ACTIVE_BRD = PROTOCOL_GENERATOR_COLLECT_007, // 활성 상태 변경 synk.
CG_COLLECT_ACTION_NAK = PROTOCOL_GENERATOR_COLLECT_008, // 채집 실패
//__CN_000004_20090521_CHANGE_COLLECT_OBTAIN_PACKET
CG_COLLECT_OBTAIN_CMD = PROTOCOL_GENERATOR_COLLECT_009, // 채집물 획득 알림 .
CG_COLLECT_ALLCOLLECTIVE_SYN = PROTOCOL_GENERATOR_COLLECT_011, // 섹터 정보 요청. (퀘스트의 포기, 실패, 완료등의 이벤트시 기존 채집물 정보 갱신용)
CG_COLLECT_SUCCESS_SYN = PROTOCOL_GENERATOR_COLLECT_012, // 채집 성공
//_NA_004777_20120428_ADD_COMPLETE_COLLECTION_TRIGGER
CG_COLLECT_DEACTIVE_BRD = PROTOCOL_GENERATOR_COLLECT_013, // 채집 삭제
};
#endif // __PROTOCOL_CG_H__