121 lines
3.1 KiB
C++
121 lines
3.1 KiB
C++
#pragma once
|
|
|
|
|
|
/// 카테고리
|
|
enum eMO_CATEGORY
|
|
{
|
|
MO_OPERATION = 0,
|
|
};
|
|
|
|
/// 프로토콜
|
|
enum eMO_OPERATION_PROTOCOL
|
|
{
|
|
/*
|
|
MO_RELOAD_DATA_SYN,
|
|
*/
|
|
MO_RTTG_CERTIFY_REQ = 0x01,
|
|
MO_RTTG_CERTIFY_ANS = 0x02,
|
|
MO_RTTG_GAMENOTICE_REQ = 0x03,
|
|
MO_RTTG_GAMENOTICE_ANS = 0x04,
|
|
MO_RTTG_GAMEADMINLIST_REQ = 0x05,
|
|
MO_RTTG_GAMEADMINLIST_ANS = 0x06,
|
|
MO_RTTG_GAMEADMINADD_NTF = 0x07,
|
|
MO_RTTG_GAMEADMINREMOVE_NTF = 0x08,
|
|
MO_RTTG_DROPUSER_REQ = 0x09,
|
|
MO_RTTG_DROPUSER_ANS = 0x0A,
|
|
MO_RTTG_USERCOUNT_NTF = 0x0B,
|
|
// MO_RTTG_USERMONEY_NTF = 0x0C, // 돈~
|
|
MO_RTTG_BATTLEZONEINFO_REQ = 0x0C,
|
|
MO_RTTG_BATTLEZONEINFO_ANS = 0x0D,
|
|
MO_RTTG_ARMORKIT_FINDHACK_NTF = 0x0E,
|
|
MO_RTTG_USERMONEY_REQ = 0x0F, // 돈~
|
|
MO_RTTG_USERMONEY_ANS = 0x10,
|
|
|
|
MO_RTTG_ABUSING_NTF = 0x11, // abuse alarm
|
|
|
|
MO_RTTG_SERVERSHUTDOWN_REQ = 0x12, // 서버 정상종료 요청
|
|
MO_RTTG_SERVERSHUTDOWN_ANS = 0x13, // 서버 정상종료 통보
|
|
MO_RTTG_PATCHRESULT_REQ = 0x14, // 서버 패치 결과 요청
|
|
MO_RTTG_PATCHRESULT_ANS = 0x15, // 서버 패치 결과 통보
|
|
|
|
MO_RTTG_GMSCOMMAND_REQ = 0xF0,
|
|
MO_RTTG_GMSCOMMAND_ANS = 0xF1,
|
|
};
|
|
|
|
|
|
class HDRMessageID4
|
|
{
|
|
public:
|
|
BYTE byCategory;
|
|
BYTE byMessageID;
|
|
};
|
|
|
|
class MSG_HEADER4
|
|
{
|
|
public:
|
|
WORD wSize; // HEADER 크기를 제외한 Payload 사이즈
|
|
union
|
|
{
|
|
WORD wID; // Message ID
|
|
HDRMessageID4 hdrID;
|
|
};
|
|
};
|
|
|
|
|
|
#define SIZEOFHDR 2
|
|
|
|
|
|
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
|
// Redirection : RTTA → General
|
|
// Description : 패치 결과의 통보를 요청한다.
|
|
class MSG_MO_RTTG_PATCHRESULT_REQ : public MSG_HEADER4
|
|
{
|
|
public:
|
|
MSG_MO_RTTG_PATCHRESULT_REQ()
|
|
{
|
|
wSize = sizeof( MSG_MO_RTTG_PATCHRESULT_REQ ) - SIZEOFHDR;
|
|
hdrID.byCategory = MO_OPERATION;
|
|
hdrID.byMessageID = MO_RTTG_PATCHRESULT_REQ;
|
|
}
|
|
~MSG_MO_RTTG_PATCHRESULT_REQ()
|
|
{
|
|
}
|
|
|
|
DWORD dwKey; // RTT 내에서 사용하는 전용필드
|
|
};
|
|
|
|
|
|
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
|
// Redirection : General → RTTA
|
|
// Description : 패치 결과를 통보한다.
|
|
class MSG_MO_RTTG_PATCHRESULT_ANS : public MSG_HEADER4
|
|
{
|
|
public:
|
|
static const DWORD ERROR_PATCHSUCCESS = 0x00; // 패치 성공
|
|
static const DWORD ERROR_PROCESSRUN = 0x01; // 해당 프로세스 실행중
|
|
static const DWORD ERROR_FTPCONNECT_FAIL = 0x02; // ftp 연결 오류
|
|
static const DWORD ERROR_DOWNLOAD_FAIL = 0x03; // 파일 받기 오류
|
|
static const DWORD ERROR_FILENOTFOUND = 0x04; // 패치파일 찾기 오류
|
|
static const DWORD ERROR_INVALID_SERVERTYPE = 0x05; // 잘못된 서버 타입
|
|
static const DWORD ERROR_LASTEST_VERSION = 0x06; // 이미 최신 버전입니다
|
|
static const DWORD ERROR_PATCHFAIL = 0x07; // 패치 실패
|
|
|
|
public:
|
|
MSG_MO_RTTG_PATCHRESULT_ANS()
|
|
{
|
|
wSize = sizeof( MSG_MO_RTTG_PATCHRESULT_ANS ) - SIZEOFHDR;
|
|
hdrID.byCategory = MO_OPERATION;
|
|
hdrID.byMessageID = MO_RTTG_PATCHRESULT_ANS;
|
|
}
|
|
|
|
~MSG_MO_RTTG_PATCHRESULT_ANS() {}
|
|
|
|
DWORD dwKey; // RTT 내에서 사용하는 전용필드
|
|
DWORD dwError; // 0 : 성공, 1 : 에러발생(RTTServer 로그확인)
|
|
BYTE byNum; // 패치 순서 넘버..
|
|
BYTE byServerType; // 패치 서버 타입.
|
|
BYTE byVer1; // 적용된 패치 버전
|
|
BYTE byVer2;
|
|
BYTE byVer3;
|
|
|
|
}; |