716 lines
18 KiB
Protocol Buffer
716 lines
18 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
option java_multiple_files = true;
|
|
option java_package = "com.caliverse.admin.domain.RabbitMq.message";
|
|
|
|
//=============================================================================================
|
|
// 공통 정의 코드를 작성 한다.
|
|
//
|
|
// 공통적 성격의 정의 타입들을 작성 한다. (예: 계정, 유저, 위치, 비게임적인 정보 등등)
|
|
// - kangms
|
|
// enum 타입 관련 이슈 !!!
|
|
// enum 타입간 내부 정의명이 동일할 경우 Compile 에러가 발생 한다. !!!
|
|
// message 로 정의하여 도메인을 줄 경우 Complie 은 되나 생성된 코드에
|
|
// xxxxx.Types.xxxx 인위적인 추가 도메인이 생겨 코드 가독성을 저해 시킨다.
|
|
// 그래서 차악으로 Prefix 로 동일한 enum 명을 추가 했다.
|
|
//=============================================================================================
|
|
|
|
|
|
// 모듈 종류
|
|
enum ModuleId
|
|
{
|
|
ModuleId_None = 0;
|
|
|
|
ModuleId_DynamoDbConnector = 1;
|
|
ModuleId_MongoDbConnector = 2;
|
|
ModuleId_RedisConnector = 3;
|
|
ModuleId_RedisWithLuaScriptExecutor = 4;
|
|
ModuleId_RabbitMqConnector = 5;
|
|
ModuleId_S3Connector = 6;
|
|
ModuleId_ProudNetListener = 7;
|
|
|
|
}
|
|
|
|
// bool enum
|
|
enum BoolType
|
|
{
|
|
BoolType_None = 0;
|
|
|
|
BoolType_True = 1;
|
|
BoolType_False = 2;
|
|
}
|
|
|
|
|
|
// 계정 종류
|
|
enum AccountType
|
|
{
|
|
AccountType_None = 0;
|
|
|
|
AccountType_Google = 1;
|
|
AccountType_Apple = 2;
|
|
}
|
|
|
|
// 서비스의 종류
|
|
enum ServiceCategory
|
|
{
|
|
ServiceCategory_None = 0;
|
|
|
|
ServiceCategory_Caliverse = 1;
|
|
}
|
|
|
|
// 서비스 버전 타입
|
|
enum ServiceType
|
|
{
|
|
ServiceType_None = 0;
|
|
|
|
ServiceType_Dev = 1;
|
|
ServiceType_Qa = 2;
|
|
ServiceType_Stage = 3;
|
|
ServiceType_Live = 4;
|
|
}
|
|
|
|
// 서버 URL 타입
|
|
enum ServerUrlType
|
|
{
|
|
ServerUrlType_None = 0;
|
|
|
|
ServerUrlType_BillingApiServerUrl = 1; // 결제 Api 서버 URL
|
|
ServerUrlType_ChatAiApiServerUrl = 2; // Chat Ai Api 서버 URL
|
|
ServerUrlType_MyhomeEditGuideUrl = 3; // MyHome Api 서버 URL (언어별)
|
|
ServerUrlType_WebLinkUrlSeasonPass = 4; // WebLink Api 서버 URL (언어별)
|
|
ServerUrlType_CaliumConverterWebGuide = 5; // 칼리움 컨버터 Api 서버 URL (언어별)
|
|
ServerUrlType_S3ResourceImageUrl = 6; // 이미지 리소스 URL
|
|
ServerUrlType_RentalGuideURL = 7; // 렌탈 가이드 URL (언어별)
|
|
ServerUrlType_LandAuctionWebGuide = 8; // 랜드 경매 가이드 페이지 URL (언어별)
|
|
ServerUrlType_LandManageGuideURL = 9; // 랜드 관리 가이드 페이지 URL (언어별)
|
|
ServerUrlType_Calium_Exchange_Web1 = 10; // 칼리움 교환소 웹 페이지 링크 (교환소 UI 중앙 상단) (언어별)
|
|
ServerUrlType_Calium_Exchange_Web2 = 11; // 칼리움 교환소 웹 페이지 링크 (교환소 UI 우측 하단) (언어별)
|
|
ServerUrlType_WebLinkURLCurrency = 12; // 재화 구매 버튼 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass1 = 13; // 시즌패스 1 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass2 = 14; // 시즌패스 2 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass3 = 15; // 시즌패스 3 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass4 = 16; // 시즌패스 4 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass5 = 17; // 시즌패스 5 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass6 = 18; // 시즌패스 6 웹페이지 링크 주소 (언어별)
|
|
ServerUrlType_WebLinkURLSeasonPass7 = 19; // 시즌패스 7 웹페이지 링크 주소 (언어별)
|
|
}
|
|
|
|
// 언어별 서버 URL
|
|
message ServerUrlWithLanguage
|
|
{
|
|
LanguageType langType = 1;
|
|
string targetUrl = 2;
|
|
}
|
|
|
|
// 서버 URL
|
|
message ServerUrl
|
|
{
|
|
ServerUrlType serverUrlType = 1; // 접속할 URL의 서버 URL 타입
|
|
repeated ServerUrlWithLanguage serverUrlWithLanguages = 2; // 언어별 서버 URL 목록
|
|
}
|
|
|
|
// 서버 종류
|
|
enum ServerType
|
|
{
|
|
ServerType_None = 0;
|
|
|
|
ServerType_Login = 1;
|
|
ServerType_Channel = 2;
|
|
ServerType_Indun = 3;
|
|
ServerType_Chat = 4;
|
|
ServerType_GmTool = 5;
|
|
ServerType_Auth = 6;
|
|
ServerType_Manager = 7;
|
|
ServerType_UgqApi = 8;
|
|
ServerType_UgqAdmin = 9;
|
|
ServerType_UgqIngame = 10;
|
|
ServerType_BrokerApi = 11;
|
|
ServerType_Match = 12;
|
|
}
|
|
|
|
// 오토 스케일링 서버 종류
|
|
enum AutoScaleServerType
|
|
{
|
|
AutoScaleServerType_None = 0;
|
|
|
|
AutoScaleServerType_Login = 1;
|
|
AutoScaleServerType_Game = 2;
|
|
AutoScaleServerType_Indun = 3;
|
|
AutoScaleServerType_Chat = 4;
|
|
}
|
|
|
|
// 게임 서버 종류
|
|
enum GameServerType
|
|
{
|
|
GameServerType_None = 0;
|
|
|
|
GameServerType_Channel = 1;
|
|
GameServerType_Indun = 2;
|
|
}
|
|
|
|
|
|
// 디바이스 종류
|
|
enum DeviceType
|
|
{
|
|
DeviceType_None = 0;
|
|
|
|
// Desktop : IBM PC compatible
|
|
DeviceType_WindowsPC = 1;
|
|
|
|
// Mobile : Apple
|
|
DeviceType_IPhone = 5;
|
|
DeviceType_Mac = 6;
|
|
|
|
// Mobile : Samsung
|
|
DeviceType_Galaxy = 11;
|
|
|
|
// VR : Oculus
|
|
DeviceType_Oculus = 15;
|
|
}
|
|
|
|
// Os 종류
|
|
enum OsType
|
|
{
|
|
OsType_None = 0;
|
|
|
|
OsType_MsWindows = 1;
|
|
OsType_Android = 2;
|
|
OsType_Ios = 3;
|
|
}
|
|
|
|
// 플랫폼 종류
|
|
enum PlatformType
|
|
{
|
|
PlatformType_None = 0;
|
|
|
|
PlatformType_WindowsPc = 1;
|
|
PlatformType_Google = 2;
|
|
PlatformType_Facebook = 3;
|
|
PlatformType_Apple = 4;
|
|
}
|
|
|
|
// Account 생성 종류
|
|
enum AccountCreationType
|
|
{
|
|
AccountCreationType_None = 0;
|
|
|
|
AccountCreationType_Normal = 1;
|
|
AccountCreationType_Test = 2;
|
|
AccountCreationType_Bot = 3;
|
|
}
|
|
|
|
// 컨텐츠 종류
|
|
enum ContentsType
|
|
{
|
|
ContentsType_None = 0;
|
|
|
|
ContentsType_MyHome = 1;
|
|
ContentsType_DressRoom = 2;
|
|
ContentsType_Concert = 3;
|
|
ContentsType_Movie = 4;
|
|
ContentsType_Instance = 5; // 기본 인스턴스, 특별한 로직이 없는 경우
|
|
ContentsType_Meeting = 6;
|
|
ContentsType_BeaconCreateRoom = 7;
|
|
ContentsType_BeaconEditRoom = 8;
|
|
ContentsType_BeaconDraftRoom = 9;
|
|
ContentsType_EditRoom = 10;
|
|
ContentsType_BeaconCustomizeRoom = 11;
|
|
ContentsType_BattleRoom = 12;
|
|
ContentsType_ArcadeRunning = 13;
|
|
ContentsType_GameRoom = 14;
|
|
}
|
|
|
|
// 캐릭터 종족 종류
|
|
enum CharRace
|
|
{
|
|
CharRace_None = 0;
|
|
|
|
CharRace_Latino = 1;
|
|
CharRace_Caucasian = 2;
|
|
CharRace_African = 3;
|
|
CharRace_Northeastasian = 4;
|
|
CharRace_Southasian = 5;
|
|
CharRace_Pacificislander = 6;
|
|
}
|
|
|
|
// 계정 관리 레벨 종류
|
|
enum AuthAdminLevelType
|
|
{
|
|
AuthAdminLevelType_None = 0;
|
|
|
|
AuthAdminLevelType_GmNormal = 1;
|
|
AuthAdminLevelType_GmSuper = 2;
|
|
AuthAdminLevelType_Developer = 3;
|
|
}
|
|
|
|
// 세계 표준 ISO 639-1 코드 기준 - kangms
|
|
enum LanguageType
|
|
{
|
|
LanguageType_None = 0;
|
|
|
|
LanguageType_ko = 1; // 한국어(기본값)
|
|
LanguageType_en = 2; // 영어
|
|
//LanguageType_th = 3; // 태국
|
|
LanguageType_ja = 4; // 일본어
|
|
//LanguageType_zh = 5; // 중국어
|
|
//LanguageType_fr = 6; // 프랑스어
|
|
//LanguageType_de = 7; // 독일어
|
|
//LanguageType_es = 8; // 스페인어
|
|
//LanguageType_ru = 9; // 러시아어
|
|
//LanguageType_ar = 10; // 아랍어
|
|
}
|
|
|
|
|
|
// 상품 종류
|
|
enum ProductType
|
|
{
|
|
ProductType_None = 0;
|
|
|
|
ProductType_Currency = 1; // 재화
|
|
ProductType_Item = 2; // 아이템
|
|
}
|
|
|
|
// 로그인 방식의 종류
|
|
enum LoginMethodType
|
|
{
|
|
LoginMethodType_None = 0;
|
|
|
|
LoginMethodType_ClientStandalone = 1; // 클라이언트 단독 로그인
|
|
LoginMethodType_SsoAccountAuthWithLauncher = 2; // 통합계정인증과 함께 런처 로그인
|
|
}
|
|
|
|
// 로그인 실패 의미의 종류
|
|
enum LoginFailureReasonType
|
|
{
|
|
LoginFailureReasonType_None = 0;
|
|
|
|
LoginFailureReasonType_ProcessingException = 1; // 처리중에 예외가 발생 했습니다.
|
|
LoginFailureReasonType_AuthenticationFailed = 2; // 인증 실패 입니다.
|
|
LoginFailureReasonType_UserValidCheckFailed = 3; // 유저 신뢰성 체크 실패 입니다.
|
|
}
|
|
|
|
// 로그아웃의 의미
|
|
enum LogoutReasonType
|
|
{
|
|
LogoutReasonType_None = 0;
|
|
|
|
LogoutReasonType_ExitToService = 1; // 서비스 종료
|
|
LogoutReasonType_EnterToGame = 2; // 게임 서버 입장을 위해
|
|
LogoutReasonType_GoToGame = 3; // 게임 서버로 이동 하기 위해
|
|
LogoutReasonType_DuplicatedLogin = 4;
|
|
}
|
|
|
|
|
|
// 계정 제재 종류
|
|
enum AccountSactionType
|
|
{
|
|
AccountSactionType_None = 0;
|
|
|
|
AccountSactionType_BadBhavior = 1; // 비매너 행위
|
|
AccountSactionType_InvapproprivateName = 2; // 불건전 이름 사용
|
|
AccountSactionType_CashTransaction = 3; // 캐시 트랜잭션
|
|
AccountSactionType_GameInterference = 4; // 게임 진행 방해
|
|
AccountSactionType_ServiceInterference = 5; // 운영서비스 방해
|
|
AccountSactionType_AccountImpersonation = 6; // 계정 도용
|
|
AccountSactionType_BugAbuse = 7; // 버그/어뷰징
|
|
AccountSactionType_IllegalProgram = 8; // 프로그램 불법사용
|
|
AccountSactionType_PersonalInfo_Leak = 9; // 개인정보 유출
|
|
AccountSactionType_AdminImpersonation = 10; // 운영자 사칭
|
|
}
|
|
|
|
|
|
// 채널 서버 예약 종류
|
|
enum ServerMoveType
|
|
{
|
|
ServerMoveType_None = 0;
|
|
|
|
ServerMoveType_Force = 1;
|
|
ServerMoveType_Auto = 2;
|
|
ServerMoveType_Return = 3;
|
|
}
|
|
|
|
message ChannelInfo
|
|
{
|
|
int32 channel = 1;
|
|
int32 trafficlevel = 2;
|
|
}
|
|
|
|
message ServerConnectInfo
|
|
{
|
|
string serverAddr = 1;
|
|
int32 serverPort = 2;
|
|
string otp = 3;
|
|
string roomId = 4;
|
|
Pos pos = 5;
|
|
|
|
oneof instanceType
|
|
{
|
|
int32 instanceId = 6;
|
|
MyHomeInfo myhomeInfo = 7;
|
|
}
|
|
}
|
|
|
|
message MyHomeInfo
|
|
{
|
|
string myhomeGuid = 1;
|
|
string myhomeName = 2;
|
|
MyhomeUgcInfo myhomeUgcInfo = 3;
|
|
}
|
|
|
|
message MyhomeUgcInfo
|
|
{
|
|
int32 roomType = 1;
|
|
int32 version = 2;
|
|
repeated UgcFrameworkInfo frameworkInfos = 3;
|
|
repeated UgcAnchorInfo anchorInfos = 4;
|
|
repeated CrafterBeaconPos crafterBeaconPos = 5;
|
|
}
|
|
|
|
message UgcFrameworkInfo
|
|
{
|
|
int32 interiorItemId = 1;
|
|
int32 floor = 2;
|
|
Coordinate coordinate = 3;
|
|
Rotation rotation = 4;
|
|
int32 materialId = 5;
|
|
repeated UgcFrameworkMaterialInfo UgcFrameworkMaterialInfos = 6;
|
|
}
|
|
|
|
message UgcFrameworkMaterialInfo
|
|
{
|
|
string type = 1;
|
|
int32 materialId = 2;
|
|
Color color_mask_r = 3;
|
|
Color color_mask_g = 4;
|
|
Color color_mask_b = 5;
|
|
}
|
|
|
|
message Color
|
|
{
|
|
float r = 1;
|
|
float g = 2;
|
|
float b = 3;
|
|
float a = 4;
|
|
}
|
|
|
|
message UgcAnchorInfo
|
|
{
|
|
string anchorGuid = 1;
|
|
string anchorType = 2;
|
|
int32 tableId = 3;
|
|
string entityGuid = 4;
|
|
Coordinate coordinate = 5;
|
|
Rotation rotation = 6;
|
|
}
|
|
|
|
message CrafterBeaconPos
|
|
{
|
|
string anchorGuid = 1;
|
|
Pos crafterBeaconPos = 2;
|
|
}
|
|
|
|
message Coordinate
|
|
{
|
|
float x = 1;
|
|
float y = 2;
|
|
float z = 3;
|
|
}
|
|
|
|
message Rotation
|
|
{
|
|
float Pitch = 1;
|
|
float Yaw = 2;
|
|
float Roll = 3;
|
|
}
|
|
|
|
// 문자열 기반의 프로필 목록
|
|
message StringProfile
|
|
{
|
|
map<string, string> stringProfile = 1;
|
|
}
|
|
|
|
// 유저의 접속 및 위치
|
|
message UserLocationInfo
|
|
{
|
|
int32 isChannel = 1; // 1:채널서버, 0:인스턴스 서버
|
|
int32 id = 2;
|
|
int32 channelNumber = 3;
|
|
}
|
|
|
|
// 플레이어 상태 종류
|
|
enum PlayerStateType
|
|
{
|
|
PlayerStateType_None = 0;
|
|
|
|
PlayerStateType_Online = 1; // 온라인
|
|
PlayerStateType_Sleep = 2; // 자리비움
|
|
PlayerStateType_DontDistrub = 3; // 방해금지
|
|
PlayerStateType_Offline = 4; // 오프라인
|
|
PlayerStateType_Dormant = 5; // 휴면 계정
|
|
PlayerStateType_LeaveMember = 6; // 회원 탈퇴
|
|
}
|
|
|
|
// 엔티티의 위치 정보
|
|
message Pos
|
|
{
|
|
float x = 1;
|
|
float y = 2;
|
|
float z = 3;
|
|
int32 angle = 4;
|
|
}
|
|
|
|
// 양의 변화 정보 : 재화의 변화
|
|
enum AmountDeltaType
|
|
{
|
|
AmountDeltaType_None = 0;
|
|
|
|
AmountDeltaType_Acquire = 1; // 획득 (양의 정수)
|
|
AmountDeltaType_Consume = 2; // 소모 (양의 정수)
|
|
AmountDeltaType_Merge = 3; // 병합 (양의 정수:획득, 음의 정수:소모)
|
|
}
|
|
|
|
// 개수의 변화 정보 : 아이템의 변화
|
|
enum CountDeltaType
|
|
{
|
|
CountDeltaType_None = 0;
|
|
|
|
CountDeltaType_New = 1; // 신규
|
|
CountDeltaType_Update = 2; // 수정
|
|
CountDeltaType_Acquire = 3; // 증가
|
|
CountDeltaType_Consume = 4; // 감소
|
|
CountDeltaType_Delete = 5; // 삭제
|
|
}
|
|
|
|
// 재화 종류
|
|
enum CurrencyType
|
|
{
|
|
CurrencyType_None = 0;
|
|
|
|
CurrencyType_Gold = 1; // 인게임 전용 기본 재화
|
|
CurrencyType_Sapphire = 2; // 인게임 전용 상위 재화 (구) BlueCali )
|
|
CurrencyType_Calium = 3; // 랜드 업그레이드 보상, 오프/메타버스 방문 및 결재 (구) RedCali )
|
|
CurrencyType_Beam = 4; // 랜드 업그레이드 희귀 보상, 콘텐츠 랭킹 보상 (구) BlackCali )
|
|
CurrencyType_Ruby = 5; // 신규 추가 재화
|
|
}
|
|
|
|
// 금전량
|
|
message Money
|
|
{
|
|
double amount = 1;
|
|
}
|
|
|
|
// 금전의 변화량
|
|
message MoneyDeltaAmount
|
|
{
|
|
AmountDeltaType deltaType = 1;
|
|
double amount = 2;
|
|
}
|
|
|
|
// 프로그램 버전 종류
|
|
enum ProgramVersionType
|
|
{
|
|
ProgramVersionType_None = 0;
|
|
|
|
ProgramVersionType_MetaSchemaVersion = 1;
|
|
ProgramVersionType_MetaDataVersion = 2;
|
|
ProgramVersionType_DbSchemaVersion = 3;
|
|
ProgramVersionType_PacketVersion = 4;
|
|
ProgramVersionType_ResourceVersion = 5;
|
|
ProgramVersionType_ConfigVersion = 6;
|
|
ProgramVersionType_LogicVersion = 7;
|
|
}
|
|
|
|
// 파티 멤버 액션 타입
|
|
enum PartyMemberActionType
|
|
{
|
|
PartyMemberActionType_None = 0;
|
|
|
|
PartyMemberActionType_Invite = 1; // 초대
|
|
PartyMemberActionType_InviteAccept = 2; // 초대 수락
|
|
PartyMemberActionType_InviteReject = 3; // 초대 거절
|
|
PartyMemberActionType_Summon = 4; // 소환
|
|
PartyMemberActionType_SummonAccept = 5; // 소환 수락
|
|
PartyMemberActionType_SummonReject = 6; // 소환 거절
|
|
PartyMemberActionType_PartyInstance_Join = 7; // 파티 인스턴스 입장
|
|
PartyMemberActionType_PartyInstance_Leave = 8; // 파티 인스턴스 퇴장
|
|
PartyMemberActionType_PartyLeader = 9; // 파티 리더 임명
|
|
PartyMemberActionType_JoinParty = 10; // 파티 가입
|
|
PartyMemberActionType_LeaveParty = 11; // 파티 탈퇴
|
|
PartyMemberActionType_BanParty = 12; // 파티 추방
|
|
}
|
|
|
|
|
|
enum UserBlockPolicyType
|
|
{
|
|
UserBlockPolicyType_None = 0;
|
|
|
|
UserBlockPolicyType_Access_Restrictions = 1; //접근 제한
|
|
UserBlockPolicyType_Chatting_Restrictions = 2; //채팅 제한
|
|
}
|
|
|
|
enum UserBlockReasonType
|
|
{
|
|
UserBlockReasonType_None = 0;
|
|
|
|
UserBlockReasonType_Bad_Behavior = 1; //비매너 행위
|
|
UserBlockReasonType_Inappropriate_Name = 2; //불건전 이름 사용
|
|
UserBlockReasonType_Cash_Transaction = 3; //현금거래 행위
|
|
UserBlockReasonType_Game_Interference = 4; //게임 진행 방해
|
|
UserBlockReasonType_Service_Interference = 5; //운영서비스 방해
|
|
UserBlockReasonType_Account_Impersonation = 6; //계정도용
|
|
UserBlockReasonType_Bug_Abuse = 7; //버그/어뷰징
|
|
UserBlockReasonType_Illegal_Program = 8; //불법프로그램 사용
|
|
UserBlockReasonType_Personal_Info_Leak = 9; //개인정보 유출
|
|
UserBlockReasonType_Asmin_Impersonation = 10; //운영자 사칭
|
|
}
|
|
|
|
|
|
// 엔티티 알림 트리거 종류
|
|
enum EntityAlertTriggerType
|
|
{
|
|
EntityAlertTriggerType_None = 0;
|
|
|
|
EntityAlertTriggerType_ItemExpireWarningBefore = 1; //아이템 기간만료 삭제전 경고 알림
|
|
EntityAlertTriggerType_ItemExpire = 2; //아이템 기간만료 삭제 알림
|
|
}
|
|
|
|
// 엔티티 알림 방법 종류
|
|
enum EntityAlertMethodType
|
|
{
|
|
EntityAlertMethodType_None = 0;
|
|
EntityAlertMethodType_Mail = 1; //우편으로 알림
|
|
}
|
|
|
|
// 매칭 상태
|
|
enum MatchStatusType {
|
|
MatchStatusType_NONE = 0;
|
|
MatchStatusType_RESERVED = 1; // 매칭 예약 상태
|
|
MatchStatusType_PROGRESS = 2; // 매칭 진행 중
|
|
MatchStatusType_SUCCESS = 3; // 매칭 성공
|
|
MatchStatusType_CANCEL = 4; // 매칭 취소
|
|
MatchStatusType_TIMEOUT = 5; // 매칭 실패 - 대기시간 초과
|
|
MatchStatusType_FAIL = 6; // 매칭 실패 - 이유 미정
|
|
MatchStatusType_RESERVE_FAILED = 7; // 매칭 예약 실패
|
|
MatchStatusType_CANCEL_FAILED = 8; // 매칭 취소 실패
|
|
|
|
MatchStatusType_JOIN_ROOM_CHECKED = 9; // 매칭 룸 입장 확인 - 실제로 게임 룸에 입장한 이벤트를 받은 상태
|
|
MatchStatusType_QUIT_ROOM = 10; // 매칭 룸 퇴장
|
|
MatchStatusType_CANCEL_BY_DISCONNECT = 11; // 매칭 취소 (접종)
|
|
MatchStatusType_JOIN_ROOM_INVALID = 12; // 룸에 입장 하지 않음
|
|
}
|
|
|
|
// 매칭 취소 타입
|
|
enum MatchCancelType {
|
|
MatchCancelType_NONE = 0;
|
|
MatchCancelType_NORMAL = 1;
|
|
MatchCancelType_DISCONNECTED = 2;
|
|
}
|
|
|
|
// 게임 매치 유저 정보
|
|
message MatchUserInfo {
|
|
string userGuid = 1;
|
|
string serverName = 2;
|
|
string matchGroupId = 3;
|
|
int32 instanceId = 4;
|
|
string nickname = 5;
|
|
MatchStatusType status = 6;
|
|
google.protobuf.Timestamp startTime = 7;
|
|
// TODO: Need PartyInfo, MMR
|
|
}
|
|
|
|
// 게엄 매칭 상태 정보
|
|
message MatchStatusInfo {
|
|
MatchStatusType status = 1; //
|
|
int32 matchStep = 2; // 매칭 단계
|
|
int32 waitTimeSec = 3; // 예상 대기시간
|
|
int32 waitTimeMaxSec = 4; // 최대 대기시간
|
|
}
|
|
|
|
// 리전 핑 체크를 정보
|
|
message MatchRegionInfo {
|
|
string Name = 1;
|
|
string TextStringMetaId = 2;
|
|
string PingUrl = 3;
|
|
}
|
|
|
|
message MatchGameInfo {
|
|
int32 gameModeId = 1;
|
|
int32 eventId = 2;
|
|
int32 region =3;
|
|
}
|
|
|
|
enum BannerType
|
|
{
|
|
BannerType_None = 0;
|
|
BannerType_MainMenu = 1;
|
|
}
|
|
|
|
enum SortType
|
|
{
|
|
SortType_None = 0;
|
|
|
|
SortType_Ascending = 1;
|
|
SortType_Descending = 2;
|
|
}
|
|
|
|
enum SortColumnType
|
|
{
|
|
SortColumnType_None = 0;
|
|
|
|
SortColumnType_Price = 1;
|
|
SortColumnType_ItemId = 2;
|
|
}
|
|
|
|
enum ScoreType
|
|
{
|
|
ScoreType_None = 0;
|
|
|
|
ScoreType_Score = 1;
|
|
ScoreType_Time = 2;
|
|
}
|
|
|
|
enum ScoreModifyType
|
|
{
|
|
ScoreModifyType_None = 0;
|
|
|
|
ScoreModifyType_Overwrite = 1;
|
|
ScoreModifyType_Increase = 2;
|
|
}
|
|
|
|
enum RankingType
|
|
{
|
|
RankingType_None = 0;
|
|
|
|
RankingType_Pioneer = 1;
|
|
RankingType_GameMode = 2;
|
|
RankingType_WorldEvent = 3;
|
|
}
|
|
|
|
enum EventType
|
|
{
|
|
EventType_None = 0;
|
|
|
|
EventType_Contribution = 1;
|
|
EventType_PersonalCrafting = 2;
|
|
}
|
|
|
|
enum RankingScheduleStateType
|
|
{
|
|
RankingScheduleStateType_None = 0;
|
|
|
|
RankingScheduleStateType_Waiting = 1;
|
|
RankingScheduleStateType_Started = 2;
|
|
RankingScheduleStateType_Ended = 3;
|
|
}
|
|
|
|
enum IntervalType
|
|
{
|
|
IntervalType_None = 0;
|
|
|
|
IntervalType_Refresh = 1;
|
|
IntervalType_Snapshot = 2;
|
|
IntervalType_Initialization = 3;
|
|
}
|