Files
caliverse_server/Protocol/client-proto/.svn/pristine/45/459c6e249219a6cd492a7896d6d8688c18486a5f.svn-base
2025-05-01 07:20:41 +09:00

360 lines
7.6 KiB
Plaintext

// See README.txt for information and build instructions.
//
// Note: START and END tags are used in comments to define sections used in
// tutorials. They are not part of the syntax for Protocol Buffers.
//
// To get an in-depth walkthrough of this file and the related examples, see:
// https://developers.google.com/protocol-buffers/docs/tutorials
// [START declaration]
syntax = "proto3";
package Packet;
//import "google/protobuf/timestamp.proto";
// [END declaration]
// [START csharp_declaration]
option csharp_namespace = "Google.Protobuf.CES.Packet";
// [END csharp_declaration]
// [START messages]
message SM_REQ_MOVE_NEXT
{
optional float px =1; //
optional float py =2; //
optional float pz =3; //
optional float ang =4; //
optional float movevalue =5; //
optional int32 start =6; // 첫 이동이면 true 이동중인면 false
}
message SM_REQ_MOVE_COMBINE
{
optional float px =1; //
optional float py =2; //
optional float pz =3; //
optional float lx =4; //
optional float ly =5; //
optional float lz =6; //
optional float ang =7; //
optional int32 move_speed =8; //
optional int32 start =9; // 첫 이동이면 true 이동중인면 false
}
message SM_REQ_TRACKING_TYPE
{
optional int32 type =1;
}
message SM_REQ_VOICE
{
optional int32 sampleRate = 1; //
optional int32 numchannels = 2; //
optional int32 PCMSize = 3; //
repeated int32 data = 4;
optional int32 dataSize = 5; //
}
message SM_REQ_MUSICBOX
{
optional string propguid = 1;
optional int32 sampleRate = 2; //
optional int32 numchannels = 3; //
optional int32 PCMSize = 4; //
repeated int32 data = 5;
optional int32 dataSize = 6; //
}
message SM_REQ_JUMP
{
optional float sx =1; //
optional float sy =2; //
optional float sz =3; //
optional float lx =4; //
optional float ly =5; //
optional float lz =6; //
optional float ang =7; //
optional int32 start =8; // 첫 이동이면 true 이동중인면 false
}
message SM_REQ_GUIDE
{
optional string guoup =1; //
optional int32 operatorid =2; //
optional int32 guidetype =3; //
}
message SM_REQ_PRESENTATION_PAGE
{
string pageurl =1; //
int32 pageid =2; //
}
message SM_REQ_AIM
{
optional float pitch =1; //
}
message SM_REQ_PARTY_MOVE_MEMBER
{
optional float px =1; //
optional float py =2; //
optional float pz =3; //
}
message SM_REQ_VOICE_STATE
{
optional string nickname =1; //
optional int32 state =2; //
}
message SM_REQ_DANCE_INFO
{
optional int32 danceid = 1; // 댄스 아이디
optional int32 motionid = 2; // 댄스 레벨
optional int32 dancetype = 3; // 댄스 타임콤보
optional int64 timestamp = 4; // 시간
}
message SM_REQ_DANCE_ROOMTIME
{
int64 sendmytime = 1;
}
message SM_SEND_DANCE_ROOMTIME
{
int64 sendroomtime = 1;
string guid = 2;
}
message SM_SEND_DANCE_STATE
{
optional int32 state = 1;
optional int64 sendroomtime = 2;
optional int32 state01 = 3;
optional int32 state02 = 4;
optional int32 state03 = 5;
optional string str01 = 6;
optional string str02 = 7;
optional string str03 = 8;
}
//////////////////////////////////////
// 총알정보
message SM_DATA_BATTLE_BULLET
{
optional float px =1; // 시작점
optional float py =2; //
optional float pz =3; //
optional float yaw =4; // 방향
optional float pitch =5; // 방향
optional int32 damage =6; // 데미지
}
message SM_DATA_WEAPON_DATA
{
int32 weapontype = 1;
int32 currentbullet = 2; // 현재 총알.
int32 maxbullet = 3; // 탄창제외한 최대탄약
}
message SM_REQ_BATTLE_MOVE
{
float px =1; //
float py =2; //
float pz =3; //
float lx =4; //
float ly =5; //
float lz =6; //
float vx =7; //
float vy =8; //
float vz =9; //
float ang =10; //
int32 move_speed =11; // 이동타입종류
int32 type =12; // 이동동기화타입종류
float aim_yaw =13; //
float aim_pitch =14; //
int32 cur_hp=15; //
int32 shoot_type = 16; // 총기발사모드
int32 cur_weapontype=17;// 현재활성화 무기
int32 server_time=18; // 패킷 전송 시점의 서버 시간
repeated SM_DATA_WEAPON_DATA weapontypes=19; //들고있는 무기
}
// 캐릭터의 현재 정보.
message SM_REQ_BATTLE_STATUS
{
float px =1; //
float py =2; //
float pz =3; //
float ang =4; //
float aim_yaw =5; //
float aim_pitch =6; // 카메라
int32 cur_hp=7; //
int32 shoot_type = 8; // 총기발사모드
int32 cur_weapontype=9; //현재활성화 무기
repeated SM_DATA_WEAPON_DATA weapontypes=10; //들고있는 무기
int32 podcarry = 11; // 포드들고있는지.
int32 podcount = 12; // 획득한 포드.
int32 killcount = 13;
int32 deathcount = 14;
int32 assistcount = 15;
int32 damagecount = 16;
}
// 조준/조준풀기
message SM_REQ_BATTLE_AIM
{
float ang =1; // 캐릭터 방향
float aim_yaw =2; // 카메라
float aim_pitch =3; // 카메라
int32 aim_type = 4; // 조준타입
int32 move_type =5; // 이동타입종류 -- 추가
}
// 발사
message SM_REQ_BATTLE_SHOOT
{
int32 weapontype =1; // 발사무기종류
int32 remainbullet = 2; // 남은 탄약. : currentbullet
float aim_yaw =3; // 카메라 방향
float aim_pitch =4; // 카메라 방향
int32 aim_type = 5; // 조준타입
int32 server_time=6; // 패킷 전송 시점의 서버 시간
repeated SM_DATA_BATTLE_BULLET bullets = 7; // 발사총알. 여러발일수있다.
}
// 피격, 맞은사람이 자신의 hp를 보낸다. -> 호스트가 누가 누구에게 맞았다고 보낸다.
message SM_REQ_BATTLE_DAMAGE
{
int32 damage =1; // 데미지
int32 cur_hp=2; // 현재 피. 0이면 사망.
string attacker=3; // 공격자.
string victim=4; // 피격자.
int32 attack_weapon_type = 5; // 공격무기타입.
}
// 재장전
message SM_REQ_BATTLE_RELOAD
{
int32 cur_hp=1; //
int32 cur_weapontype=2; //현재활성화 무기
int32 currentbullet = 3; // 탄창의 탄약
int32 maxbullet=4; // 남은 최대탄약수
}
// 구르기
message SM_REQ_BATTLE_DODGE
{
float px =1; //
float py =2; //
float pz =3; //
float ang =4; //
int32 dir_id = 5; // 방향타입
}
// 무기 변경
message SM_REQ_BATTLE_WEAPON_CHANGE
{
int32 cur_weapontype=1; //현재활성화 무기
repeated SM_DATA_WEAPON_DATA weapontypes=2; //들고있는 무기
}
// 무기 추가
message SM_REQ_BATTLE_WEAPON_ADD
{
int32 cur_weapontype=1; //현재활성화 무기
repeated SM_DATA_WEAPON_DATA weapontypes=2; //들고있는 무기
}
// 캐릭터의 현재 정보.
message SM_REQ_BATTLE_RESPAWN
{
float px =1; //
float py =2; //
float pz =3; //
float ang =4; //
float aim_yaw =5; //
float aim_pitch =6; // 카메라
int32 cur_hp=7; //
int32 cur_weapontype=8; //현재활성화 무기
repeated SM_DATA_WEAPON_DATA weapontypes=9; //들고있는 무기
}
// 오브젝트 인터렉션
message SM_REQ_BATTLE_OBJECT_INTERACTION
{
int32 objecttableid=1; // 인터랙션한 배틀 오브젝트 Table ID
string objectguid=2; // 인터랙션한 배틀 오브젝트 GUID
}
// 벽에 기어오르기.
message SM_REQ_BATTLE_MANTLE
{
float px =1; //
float py =2; //
float pz =3; //
float lx =4; //
float ly =5; //
float lz =6; //
float vx =7; //
float vy =8; //
float vz =9; //
float ang =10; //
float tx =11; //
float ty =12; //
float tz =13; //
int32 height = 14;//
}
// 인게임 로딩 끝
message SM_REQ_BATTLE_FINISHED_LODING
{
float px =1; //
float py =2; //
float pz =3; //
float ang =4; //
}
// 나가려고 준비중 : 인던 나가기 전에 결과창 보는 중
message SM_REQ_BATTLE_READY_TO_EXIT
{
}
// 범위 타격에 의해서 날아감
message SM_REQ_BATTLE_LAUNCH_CHARACTER
{
string guid=1; // 날아가는 액터
float vx =2; // LaunchVelocity
float vy =3; //
float vz =4; //
int32 xyoverride = 5;//bXYOverride
int32 zoverride = 6;//bZOverride
}
// 특정 상황에서 에니메이션 실행 할 때
message SM_REQ_BATTLE_PLAY_ANIMATION
{
string guid =1; // 액터
int32 type = 2; //
int32 value = 3; //
}
// 이펙트 출력
message SM_REQ_BATTLE_HIT_EFFECT
{
string guid =1; // 액터
int32 weapontype = 2; //
int32 hiteffecttype = 3; //
float nx =4; // ImpactNormal
float ny =5; //
float nz =6; //
float px =7; // ImpactPoint
float py =8; //
float pz =9; //
}