import "netmessages.proto"; import "networkbasetypes.proto"; enum P2P_Messages { p2p_TextMessage = 256; p2p_Voice = 257; p2p_Ping = 258; p2p_VRAvatarPosition = 259; p2p_WatchSynchronization = 260; } message CP2P_TextMessage { optional bytes text = 1; } message CSteam_Voice_Encoding { optional bytes voice_data = 1; } message CP2P_Voice { enum Handler_Flags { Played_Audio = 1; } optional .CMsgVoiceAudio audio = 1; optional uint32 broadcast_group = 2; } message CP2P_Ping { required uint64 send_time = 1; required bool is_reply = 2; } message CP2P_VRAvatarPosition { message COrientation { optional .CMsgVector pos = 1; optional .CMsgQAngle ang = 2; } repeated .CP2P_VRAvatarPosition.COrientation body_parts = 1; optional int32 hat_id = 2; optional int32 scene_id = 3; optional int32 world_scale = 4; } message CP2P_WatchSynchronization { optional int32 demo_tick = 1; optional bool paused = 2; optional uint64 tv_listen_voice_indices = 3; optional int32 dota_spectator_mode = 4; optional bool dota_spectator_watching_broadcaster = 5; optional int32 dota_spectator_hero_index = 6; optional int32 dota_spectator_autospeed = 7; optional int32 dota_replay_speed = 8; }