mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-12-16 03:37:18 +00:00
725 lines
20 KiB
Protocol Buffer
725 lines
20 KiB
Protocol Buffer
//====== Copyright (c) 2012, Valve Corporation, All rights reserved. ========//
|
|
//
|
|
// Redistribution and use in source and binary forms, with or without
|
|
// modification, are permitted provided that the following conditions are met:
|
|
//
|
|
// Redistributions of source code must retain the above copyright notice, this
|
|
// list of conditions and the following disclaimer.
|
|
// Redistributions in binary form must reproduce the above copyright notice,
|
|
// this list of conditions and the following disclaimer in the documentation
|
|
// and/or other materials provided with the distribution.
|
|
//
|
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
|
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
|
// THE POSSIBILITY OF SUCH DAMAGE.
|
|
//===========================================================================//
|
|
//
|
|
// Purpose: The file defines our Google Protocol Buffers which are used in over
|
|
// the wire messages for the Source engine.
|
|
//
|
|
//=============================================================================
|
|
|
|
// We care more about speed than code size
|
|
option optimize_for = SPEED;
|
|
|
|
// We don't use the service generation functionality
|
|
option cc_generic_services = false;
|
|
|
|
|
|
//
|
|
// STYLE NOTES:
|
|
//
|
|
// Use CamelCase CMsgMyMessageName style names for messages.
|
|
//
|
|
// Use lowercase _ delimited names like my_steam_id for field names, this is non-standard for Steam,
|
|
// but plays nice with the Google formatted code generation.
|
|
//
|
|
// Try not to use required fields ever. Only do so if you are really really sure you'll never want them removed.
|
|
// Optional should be preffered as it will make versioning easier and cleaner in the future if someone refactors
|
|
// your message and wants to remove or rename fields.
|
|
//
|
|
// Use fixed64 for JobId_t, GID_t, or SteamID. This is appropriate for any field that is normally
|
|
// going to be larger than 2^56. Otherwise use int64 for 64 bit values that are frequently smaller
|
|
// than 2^56 as it will safe space on the wire in those cases.
|
|
//
|
|
// Similar to fixed64, use fixed32 for RTime32 or other 32 bit values that are frequently larger than
|
|
// 2^28. It will safe space in those cases, otherwise use int32 which will safe space for smaller values.
|
|
// An exception to this rule for RTime32 is if the value will frequently be zero rather than set to an actual
|
|
// time.
|
|
//
|
|
|
|
import "google/protobuf/descriptor.proto";
|
|
|
|
// for CMsgVector, etc.
|
|
import "netmessages.proto";
|
|
|
|
// for Activity
|
|
import "ai_activity.proto";
|
|
|
|
// for structures shared between user and client messages
|
|
import "dota_commonmessages.proto";
|
|
|
|
//=============================================================================
|
|
// Dota User Messages
|
|
//=============================================================================
|
|
|
|
enum EDotaUserMessages
|
|
{
|
|
DOTA_UM_AddUnitToSelection = 64;
|
|
DOTA_UM_AIDebugLine = 65;
|
|
DOTA_UM_ChatEvent = 66;
|
|
DOTA_UM_CombatHeroPositions = 67;
|
|
DOTA_UM_CombatLogData = 68;
|
|
DOTA_UM_CombatLogShowDeath = 70;
|
|
DOTA_UM_CreateLinearProjectile = 71;
|
|
DOTA_UM_DestroyLinearProjectile = 72;
|
|
DOTA_UM_DodgeTrackingProjectiles = 73;
|
|
DOTA_UM_GlobalLightColor = 74;
|
|
DOTA_UM_GlobalLightDirection = 75;
|
|
DOTA_UM_InvalidCommand = 76;
|
|
DOTA_UM_LocationPing = 77;
|
|
DOTA_UM_MapLine = 78;
|
|
DOTA_UM_MiniKillCamInfo = 79;
|
|
DOTA_UM_MinimapDebugPoint = 80;
|
|
DOTA_UM_MinimapEvent = 81;
|
|
DOTA_UM_NevermoreRequiem = 82;
|
|
DOTA_UM_OverheadEvent = 83;
|
|
DOTA_UM_SetNextAutobuyItem = 84;
|
|
DOTA_UM_SharedCooldown = 85;
|
|
DOTA_UM_SpectatorPlayerClick = 86;
|
|
DOTA_UM_TutorialTipInfo = 87;
|
|
DOTA_UM_UnitEvent = 88;
|
|
DOTA_UM_ParticleManager = 89;
|
|
DOTA_UM_BotChat = 90;
|
|
DOTA_UM_HudError = 91;
|
|
DOTA_UM_ItemPurchased = 92;
|
|
DOTA_UM_Ping = 93;
|
|
DOTA_UM_ItemFound = 94;
|
|
DOTA_UM_CharacterSpeakConcept = 95;
|
|
DOTA_UM_SwapVerify = 96;
|
|
DOTA_UM_WorldLine = 97;
|
|
DOTA_UM_TournamentDrop = 98;
|
|
DOTA_UM_ItemAlert = 99;
|
|
DOTA_UM_HalloweenDrops = 100;
|
|
DOTA_UM_ChatWheel = 101;
|
|
DOTA_UM_ReceivedXmasGift = 102;
|
|
DOTA_UM_UpdateSharedContent = 103;
|
|
DOTA_UM_TutorialRequestExp = 104;
|
|
DOTA_UM_TutorialPingMinimap = 105;
|
|
DOTA_UM_GamerulesStateChanged = 106;
|
|
DOTA_UM_ShowSurvey = 107;
|
|
DOTA_UM_TutorialFade = 108;
|
|
DOTA_UM_AddQuestLogEntry = 109;
|
|
DOTA_UM_SendStatPopup = 110;
|
|
DOTA_UM_TutorialFinish = 111;
|
|
}
|
|
|
|
//=============================================================================
|
|
|
|
message CDOTAUserMsg_AIDebugLine
|
|
{
|
|
optional string message = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_Ping
|
|
{
|
|
optional string message = 1;
|
|
}
|
|
|
|
enum DOTA_CHAT_MESSAGE
|
|
{
|
|
CHAT_MESSAGE_INVALID = -1;
|
|
|
|
CHAT_MESSAGE_HERO_KILL = 0;
|
|
CHAT_MESSAGE_HERO_DENY = 1;
|
|
CHAT_MESSAGE_BARRACKS_KILL = 2;
|
|
CHAT_MESSAGE_TOWER_KILL = 3;
|
|
CHAT_MESSAGE_TOWER_DENY = 4;
|
|
CHAT_MESSAGE_FIRSTBLOOD = 5;
|
|
CHAT_MESSAGE_STREAK_KILL = 6;
|
|
CHAT_MESSAGE_BUYBACK = 7;
|
|
CHAT_MESSAGE_AEGIS = 8;
|
|
CHAT_MESSAGE_ROSHAN_KILL = 9;
|
|
CHAT_MESSAGE_COURIER_LOST = 10;
|
|
CHAT_MESSAGE_COURIER_RESPAWNED = 11;
|
|
CHAT_MESSAGE_GLYPH_USED = 12;
|
|
CHAT_MESSAGE_ITEM_PURCHASE = 13;
|
|
CHAT_MESSAGE_CONNECT = 14;
|
|
CHAT_MESSAGE_DISCONNECT = 15;
|
|
CHAT_MESSAGE_DISCONNECT_WAIT_FOR_RECONNECT = 16;
|
|
CHAT_MESSAGE_DISCONNECT_TIME_REMAINING = 17;
|
|
CHAT_MESSAGE_DISCONNECT_TIME_REMAINING_PLURAL = 18;
|
|
CHAT_MESSAGE_RECONNECT = 19;
|
|
CHAT_MESSAGE_ABANDON = 20;
|
|
CHAT_MESSAGE_SAFE_TO_LEAVE = 21;
|
|
CHAT_MESSAGE_RUNE_PICKUP = 22;
|
|
CHAT_MESSAGE_RUNE_BOTTLE = 23;
|
|
CHAT_MESSAGE_INTHEBAG = 24;
|
|
CHAT_MESSAGE_SECRETSHOP = 25;
|
|
CHAT_MESSAGE_ITEM_AUTOPURCHASED = 26;
|
|
CHAT_MESSAGE_ITEMS_COMBINED = 27;
|
|
CHAT_MESSAGE_SUPER_CREEPS = 28;
|
|
CHAT_MESSAGE_CANT_USE_ACTION_ITEM = 29;
|
|
CHAT_MESSAGE_CHARGES_EXHAUSTED = 30;
|
|
CHAT_MESSAGE_CANTPAUSE = 31;
|
|
CHAT_MESSAGE_NOPAUSESLEFT = 32;
|
|
CHAT_MESSAGE_CANTPAUSEYET = 33;
|
|
CHAT_MESSAGE_PAUSED = 34;
|
|
CHAT_MESSAGE_UNPAUSE_COUNTDOWN = 35;
|
|
CHAT_MESSAGE_UNPAUSED = 36;
|
|
CHAT_MESSAGE_AUTO_UNPAUSED = 37;
|
|
CHAT_MESSAGE_YOUPAUSED = 38;
|
|
CHAT_MESSAGE_CANTUNPAUSETEAM = 39;
|
|
CHAT_MESSAGE_SAFE_TO_LEAVE_ABANDONER = 40;
|
|
CHAT_MESSAGE_VOICE_TEXT_BANNED = 41;
|
|
CHAT_MESSAGE_SPECTATORS_WATCHING_THIS_GAME = 42;
|
|
CHAT_MESSAGE_REPORT_REMINDER = 43;
|
|
CHAT_MESSAGE_ECON_ITEM = 44;
|
|
CHAT_MESSAGE_TAUNT = 45;
|
|
CHAT_MESSAGE_RANDOM = 46;
|
|
CHAT_MESSAGE_RD_TURN = 47;
|
|
CHAT_MESSAGE_SAFE_TO_LEAVE_ABANDONER_EARLY = 48;
|
|
CHAT_MESSAGE_DROP_RATE_BONUS = 49;
|
|
CHAT_MESSAGE_NO_BATTLE_POINTS = 50;
|
|
CHAT_MESSAGE_DENIED_AEGIS = 51;
|
|
CHAT_MESSAGE_INFORMATIONAL = 52;
|
|
CHAT_MESSAGE_AEGIS_STOLEN = 53;
|
|
CHAT_MESSAGE_ROSHAN_CANDY = 54;
|
|
CHAT_MESSAGE_ITEM_GIFTED = 55;
|
|
CHAT_MESSAGE_HERO_KILL_WITH_GREEVIL = 56;
|
|
}
|
|
|
|
enum DOTA_NO_BATTLE_POINTS_REASONS
|
|
{
|
|
NO_BATTLE_POINTS_WRONG_LOBBY_TYPE = 1;
|
|
NO_BATTLE_POINTS_PRACTICE_BOTS = 2;
|
|
NO_BATTLE_POINTS_CHEATS_ENABLED = 3;
|
|
NO_BATTLE_POINTS_LOW_PRIORITY = 4;
|
|
}
|
|
|
|
enum DOTA_CHAT_INFORMATIONAL
|
|
{
|
|
COOP_BATTLE_POINTS_RULES = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_SwapVerify
|
|
{
|
|
optional uint32 player_id = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_ChatEvent
|
|
{
|
|
required DOTA_CHAT_MESSAGE type = 1 [default = CHAT_MESSAGE_INVALID];
|
|
|
|
optional uint32 value = 2;
|
|
|
|
// ugh
|
|
optional sint32 playerid_1 = 3 [ default = -1 ];
|
|
optional sint32 playerid_2 = 4 [ default = -1 ];
|
|
optional sint32 playerid_3 = 5 [ default = -1 ];
|
|
optional sint32 playerid_4 = 6 [ default = -1 ];
|
|
optional sint32 playerid_5 = 7 [ default = -1 ];
|
|
optional sint32 playerid_6 = 8 [ default = -1 ];
|
|
}
|
|
|
|
enum DOTA_COMBATLOG_TYPES
|
|
{
|
|
DOTA_COMBATLOG_DAMAGE = 0;
|
|
DOTA_COMBATLOG_HEAL = 1;
|
|
DOTA_COMBATLOG_MODIFIER_ADD = 2;
|
|
DOTA_COMBATLOG_MODIFIER_REMOVE = 3;
|
|
DOTA_COMBATLOG_DEATH = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_CombatLogData
|
|
{
|
|
optional DOTA_COMBATLOG_TYPES type = 1 [default = DOTA_COMBATLOG_DAMAGE];
|
|
optional uint32 target_name = 2;
|
|
optional uint32 attacker_name = 3;
|
|
optional bool attacker_illusion = 4;
|
|
optional bool target_illusion = 5;
|
|
optional uint32 inflictor_name = 6;
|
|
optional int32 value = 7;
|
|
optional int32 health = 8;
|
|
optional float time = 9;
|
|
}
|
|
|
|
message CDOTAUserMsg_CombatLogShowDeath
|
|
{
|
|
}
|
|
|
|
message CDOTAUserMsg_BotChat
|
|
{
|
|
optional uint32 player_id = 1;
|
|
optional string format = 2;
|
|
optional string message = 3;
|
|
optional string target = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_CombatHeroPositions
|
|
{
|
|
optional uint32 index = 1;
|
|
optional int32 time = 2;
|
|
optional CMsgVector2D world_pos = 3;
|
|
optional int32 health = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_MiniKillCamInfo
|
|
{
|
|
message Attacker
|
|
{
|
|
optional uint32 attacker = 1;
|
|
optional int32 total_damage = 2;
|
|
|
|
message Ability
|
|
{
|
|
optional uint32 ability = 1;
|
|
optional int32 damage = 2;
|
|
}
|
|
repeated Ability abilities = 3;
|
|
}
|
|
repeated Attacker attackers = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_GlobalLightColor
|
|
{
|
|
optional uint32 color = 1;
|
|
optional float duration = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_GlobalLightDirection
|
|
{
|
|
optional CMsgVector direction = 1;
|
|
optional float duration = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_LocationPing
|
|
{
|
|
optional uint32 player_id = 1;
|
|
optional CDOTAMsg_LocationPing location_ping = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_ItemAlert
|
|
{
|
|
optional uint32 player_id = 1;
|
|
optional CDOTAMsg_ItemAlert item_alert = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_MinimapEvent
|
|
{
|
|
optional int32 event_type = 1;
|
|
optional int32 entity_handle = 2;
|
|
optional int32 x = 3;
|
|
optional int32 y = 4;
|
|
optional int32 duration = 5;
|
|
}
|
|
|
|
message CDOTAUserMsg_MapLine
|
|
{
|
|
optional int32 player_id = 1;
|
|
optional CDOTAMsg_MapLine mapline = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_MinimapDebugPoint
|
|
{
|
|
optional CMsgVector location = 1;
|
|
optional uint32 color = 2;
|
|
optional int32 size = 3;
|
|
optional float duration = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_CreateLinearProjectile
|
|
{
|
|
optional CMsgVector origin = 1;
|
|
optional CMsgVector2D velocity = 2;
|
|
optional int32 latency = 3;
|
|
optional int32 entindex = 4;
|
|
optional int32 particle_index = 5;
|
|
optional int32 handle = 6;
|
|
}
|
|
|
|
message CDOTAUserMsg_DestroyLinearProjectile
|
|
{
|
|
optional int32 handle = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_DodgeTrackingProjectiles
|
|
{
|
|
required int32 entindex = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_SpectatorPlayerClick
|
|
{
|
|
required int32 entindex = 1;
|
|
optional int32 order_type = 2;
|
|
optional int32 target_index = 3;
|
|
}
|
|
|
|
message CDOTAUserMsg_NevermoreRequiem
|
|
{
|
|
optional int32 entity_handle = 1;
|
|
optional int32 lines = 2;
|
|
optional CMsgVector origin = 3;
|
|
}
|
|
|
|
message CDOTAUserMsg_InvalidCommand
|
|
{
|
|
optional string message = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_HudError
|
|
{
|
|
optional int32 order_id = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_SharedCooldown
|
|
{
|
|
optional int32 entindex = 1;
|
|
optional string name = 2;
|
|
optional float cooldown = 3;
|
|
optional int32 name_index = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_SetNextAutobuyItem
|
|
{
|
|
optional string name = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_HalloweenDrops
|
|
{
|
|
repeated uint32 item_defs = 1;
|
|
repeated uint32 player_ids = 2;
|
|
optional uint32 prize_list = 3;
|
|
}
|
|
|
|
enum EDotaEntityMessages
|
|
{
|
|
DOTA_UNIT_SPEECH = 0;
|
|
DOTA_UNIT_SPEECH_MUTE = 1;
|
|
DOTA_UNIT_ADD_GESTURE = 2;
|
|
DOTA_UNIT_REMOVE_GESTURE = 3;
|
|
DOTA_UNIT_REMOVE_ALL_GESTURES = 4;
|
|
DOTA_UNIT_FADE_GESTURE = 6;
|
|
DOTA_UNIT_SPEECH_CLIENTSIDE_RULES = 7;
|
|
}
|
|
|
|
message CDOTAResponseQuerySerialized
|
|
{
|
|
message Fact
|
|
{
|
|
enum ValueType
|
|
{
|
|
NUMERIC = 1;
|
|
STRING = 2;
|
|
}
|
|
|
|
required int32 key = 1;
|
|
required ValueType valtype = 2 [default = NUMERIC];
|
|
optional float val_numeric = 3;
|
|
optional string val_string = 4;
|
|
}
|
|
|
|
repeated Fact facts = 1;
|
|
}
|
|
|
|
message CDOTASpeechMatchOnClient
|
|
{
|
|
optional int32 concept = 1;
|
|
optional int32 recipient_type = 2;
|
|
optional CDOTAResponseQuerySerialized responsequery = 3;
|
|
optional sfixed32 randomseed = 4 [default = 0];
|
|
}
|
|
|
|
message CDOTAUserMsg_UnitEvent
|
|
{
|
|
required EDotaEntityMessages msg_type = 1 [default = DOTA_UNIT_SPEECH];
|
|
required int32 entity_index = 2;
|
|
|
|
message Speech
|
|
{
|
|
optional int32 concept = 1;
|
|
optional string response = 2;
|
|
optional int32 recipient_type = 3;
|
|
optional int32 level = 4;
|
|
optional bool muteable = 5 [default = false];
|
|
}
|
|
|
|
optional Speech speech = 3;
|
|
|
|
message SpeechMute
|
|
{
|
|
optional float delay = 1 [default = 0.5];
|
|
}
|
|
|
|
optional SpeechMute speech_mute = 4;
|
|
|
|
message AddGesture
|
|
{
|
|
optional Activity activity = 1 [default = ACT_INVALID];
|
|
optional int32 slot = 2;
|
|
optional float fade_in = 3 [default = 0];
|
|
optional float fade_out = 4 [default = 0.1];
|
|
}
|
|
|
|
optional AddGesture add_gesture = 5;
|
|
|
|
message RemoveGesture
|
|
{
|
|
optional Activity activity = 1 [default = ACT_INVALID];
|
|
}
|
|
|
|
optional RemoveGesture remove_gesture = 6;
|
|
|
|
message BloodImpact
|
|
{
|
|
optional int32 scale = 1;
|
|
optional int32 x_normal = 2;
|
|
optional int32 y_normal = 3;
|
|
}
|
|
|
|
optional BloodImpact blood_impact = 7;
|
|
|
|
message FadeGesture
|
|
{
|
|
optional Activity activity = 1 [default = ACT_INVALID];
|
|
}
|
|
|
|
optional FadeGesture fade_gesture = 8;
|
|
optional CDOTASpeechMatchOnClient speech_match_on_client = 9;
|
|
}
|
|
|
|
message CDOTAUserMsg_ItemPurchased
|
|
{
|
|
optional int32 item_index = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_ItemFound
|
|
{
|
|
optional int32 player = 1;
|
|
optional int32 quality = 2;
|
|
optional int32 rarity = 3;
|
|
optional int32 method = 4;
|
|
optional int32 itemdef = 5;
|
|
}
|
|
|
|
enum DOTA_PARTICLE_MESSAGE
|
|
{
|
|
DOTA_PARTICLE_MANAGER_EVENT_CREATE = 0;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE = 1;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD = 2;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION = 3;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK = 4;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE_ENT = 5;
|
|
DOTA_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET = 6;
|
|
DOTA_PARTICLE_MANAGER_EVENT_DESTROY = 7;
|
|
DOTA_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING = 8;
|
|
DOTA_PARTICLE_MANAGER_EVENT_RELEASE = 9;
|
|
DOTA_PARTICLE_MANAGER_EVENT_LATENCY = 10;
|
|
DOTA_PARTICLE_MANAGER_EVENT_SHOULD_DRAW = 11;
|
|
};
|
|
|
|
message CDOTAUserMsg_ParticleManager
|
|
{
|
|
message ReleaseParticleIndex
|
|
{
|
|
}
|
|
message CreateParticle
|
|
{
|
|
optional int32 particle_name_index = 1;
|
|
optional int32 attach_type = 2;
|
|
optional int32 entity_handle = 3;
|
|
}
|
|
message DestroyParticle
|
|
{
|
|
optional bool destroy_immediately = 1;
|
|
}
|
|
message DestroyParticleInvolving
|
|
{
|
|
optional bool destroy_immediately = 1;
|
|
optional int32 entity_handle = 3;
|
|
}
|
|
message UpdateParticle
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional CMsgVector position = 2;
|
|
}
|
|
message UpdateParticleFwd
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional CMsgVector forward = 2;
|
|
}
|
|
message UpdateParticleOrient
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional CMsgVector forward = 2;
|
|
optional CMsgVector right = 3;
|
|
optional CMsgVector up = 4;
|
|
}
|
|
message UpdateParticleFallback
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional CMsgVector position = 2;
|
|
}
|
|
message UpdateParticleOffset
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional CMsgVector origin_offset = 2;
|
|
}
|
|
message UpdateParticleEnt
|
|
{
|
|
optional int32 control_point = 1;
|
|
optional int32 entity_handle = 2;
|
|
optional int32 attach_type = 3;
|
|
optional int32 attachment = 4;
|
|
optional CMsgVector fallback_position = 5;
|
|
}
|
|
message UpdateParticleLatency
|
|
{
|
|
optional int32 player_latency = 1;
|
|
optional int32 tick = 2;
|
|
}
|
|
|
|
message UpdateParticleShouldDraw
|
|
{
|
|
optional bool should_draw = 1;
|
|
}
|
|
|
|
required DOTA_PARTICLE_MESSAGE type = 1 [default = DOTA_PARTICLE_MANAGER_EVENT_CREATE];
|
|
required uint32 index = 2;
|
|
|
|
optional ReleaseParticleIndex release_particle_index = 3; // DOTA_PARTICLE_MANAGER_EVENT_RELEASE
|
|
optional CreateParticle create_particle = 4; // DOTA_PARTICLE_MANAGER_EVENT_CREATE
|
|
optional DestroyParticle destroy_particle = 5; // DOTA_PARTICLE_MANAGER_EVENT_DESTROY
|
|
optional DestroyParticleInvolving destroy_particle_involving = 6; // DOTA_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING
|
|
optional UpdateParticle update_particle = 7; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE
|
|
optional UpdateParticleFwd update_particle_fwd = 8; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD
|
|
optional UpdateParticleOrient update_particle_orient = 9; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION
|
|
optional UpdateParticleFallback update_particle_fallback = 10; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK
|
|
optional UpdateParticleOffset update_particle_offset = 11; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET
|
|
optional UpdateParticleEnt update_particle_ent = 12; // DOTA_PARTICLE_MANAGER_EVENT_UPDATE_ENT
|
|
optional UpdateParticleLatency update_particle_latency = 13; // DOTA_PARTICLE_MANAGER_EVENT_LATENCY
|
|
optional UpdateParticleShouldDraw update_particle_should_draw = 14; // DOTA_PARTICLE_MANAGER_EVENT_SHOULD_DRAW
|
|
}
|
|
|
|
// If you modify this, make sure you update g_OverheadMessageType!
|
|
enum DOTA_OVERHEAD_ALERT
|
|
{
|
|
OVERHEAD_ALERT_GOLD = 0;
|
|
OVERHEAD_ALERT_DENY = 1;
|
|
OVERHEAD_ALERT_CRITICAL = 2;
|
|
OVERHEAD_ALERT_XP = 3;
|
|
OVERHEAD_ALERT_BONUS_SPELL_DAMAGE = 4;
|
|
OVERHEAD_ALERT_MISS = 5;
|
|
OVERHEAD_ALERT_DAMAGE = 6;
|
|
OVERHEAD_ALERT_EVADE = 7;
|
|
OVERHEAD_ALERT_BLOCK = 8;
|
|
OVERHEAD_ALERT_BONUS_POISON_DAMAGE = 9;
|
|
OVERHEAD_ALERT_HEAL = 10;
|
|
OVERHEAD_ALERT_MANA_ADD = 11;
|
|
OVERHEAD_ALERT_MANA_LOSS = 12;
|
|
};
|
|
|
|
message CDOTAUserMsg_OverheadEvent
|
|
{
|
|
required DOTA_OVERHEAD_ALERT message_type = 1 [default = OVERHEAD_ALERT_GOLD];
|
|
optional int32 value = 2;
|
|
optional int32 target_player_entindex = 3;
|
|
optional int32 target_entindex = 4;
|
|
optional int32 source_player_entindex = 5;
|
|
}
|
|
|
|
message CDOTAUserMsg_TutorialTipInfo
|
|
{
|
|
optional string name = 1;
|
|
optional int32 progress = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_TutorialFinish
|
|
{
|
|
optional string heading = 1;
|
|
optional string emblem = 2;
|
|
optional string body = 3;
|
|
}
|
|
|
|
message CDOTAUserMsg_WorldLine
|
|
{
|
|
optional int32 player_id = 1;
|
|
optional CDOTAMsg_WorldLine worldline = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_TournamentDrop
|
|
{
|
|
optional string winner_name = 1;
|
|
optional int32 event_type = 2;
|
|
}
|
|
|
|
message CDOTAUserMsg_ChatWheel
|
|
{
|
|
optional EDOTAChatWheelMessage chat_message = 1 [default = k_EDOTA_CW_Ok];
|
|
optional uint32 player_id = 2;
|
|
optional uint32 account_id = 3;
|
|
}
|
|
|
|
message CDOTAUserMsg_ReceivedXmasGift
|
|
{
|
|
optional int32 player_id = 1;
|
|
optional string item_name = 2;
|
|
optional int32 inventory_slot = 3;
|
|
}
|
|
|
|
message CDOTAUserMsg_ShowSurvey
|
|
{
|
|
optional int32 survey_id = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_UpdateSharedContent
|
|
{
|
|
optional int32 slot_type = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_TutorialRequestExp
|
|
{
|
|
}
|
|
|
|
message CDOTAUserMsg_TutorialFade
|
|
{
|
|
optional int32 tgt_alpha = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_TutorialPingMinimap
|
|
{
|
|
optional uint32 player_id = 1;
|
|
optional float pos_x = 2;
|
|
optional float pos_y = 3;
|
|
optional float pos_z = 4;
|
|
optional int32 entity_index = 5;
|
|
}
|
|
|
|
message CDOTA_UM_GamerulesStateChanged
|
|
{
|
|
optional uint32 state = 1;
|
|
}
|
|
|
|
message CDOTAUserMsg_AddQuestLogEntry
|
|
{
|
|
optional string npc_name = 1;
|
|
optional string npc_dialog = 2;
|
|
optional bool quest = 3;
|
|
optional int32 quest_type = 4;
|
|
}
|
|
|
|
message CDOTAUserMsg_SendStatPopup
|
|
{
|
|
optional int32 player_id = 1;
|
|
optional CDOTAMsg_SendStatPopup statpopup = 2;
|
|
}
|
|
|