effigy_wire 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +4 -0
  3. data/BIN_README.txt +18 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +3 -0
  6. data/Gemfile.lock +40 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +7 -0
  9. data/Rakefile +2 -0
  10. data/bin/clarity-protobuf/clean +36 -0
  11. data/bin/clarity-protobuf/copy +75 -0
  12. data/bin/effigy/compile-proto +81 -0
  13. data/bin/effigy/mk-require-turds +43 -0
  14. data/bin/effigy/package +56 -0
  15. data/bin/effigy/tweak-proto +30 -0
  16. data/bin/effigy/tweak-rb +20 -0
  17. data/effigy_wire.gemspec +24 -0
  18. data/lib/effigy/wire/demo.pb.rb +205 -0
  19. data/lib/effigy/wire/dota_commonmessages.pb.rb +209 -0
  20. data/lib/effigy/wire/dota_modifiers.pb.rb +78 -0
  21. data/lib/effigy/wire/dota_usermessages.pb.rb +1315 -0
  22. data/lib/effigy/wire/netmessages.pb.rb +177 -0
  23. data/lib/effigy/wire/networkbasetypes.pb.rb +268 -0
  24. data/lib/effigy/wire/s1/s1_dota_usermessages.pb.rb +102 -0
  25. data/lib/effigy/wire/s1/s1_netmessages.pb.rb +121 -0
  26. data/lib/effigy/wire/s1/s1_usermessages.pb.rb +271 -0
  27. data/lib/effigy/wire/s1.rb +3 -0
  28. data/lib/effigy/wire/s2/s2_base_gcmessages.pb.rb +57 -0
  29. data/lib/effigy/wire/s2/s2_dota_gcmessages_common.pb.rb +214 -0
  30. data/lib/effigy/wire/s2/s2_dota_match_metadata.pb.rb +106 -0
  31. data/lib/effigy/wire/s2/s2_dota_usermessages.pb.rb +117 -0
  32. data/lib/effigy/wire/s2/s2_gameevents.pb.rb +172 -0
  33. data/lib/effigy/wire/s2/s2_netmessages.pb.rb +158 -0
  34. data/lib/effigy/wire/s2/s2_te.pb.rb +330 -0
  35. data/lib/effigy/wire/s2/s2_usermessages.pb.rb +514 -0
  36. data/lib/effigy/wire/s2.rb +3 -0
  37. data/lib/effigy/wire.rb +9 -0
  38. data/lib/effigy.rb +3 -0
  39. data/proto/demo.proto +157 -0
  40. data/proto/dota_commonmessages.proto +183 -0
  41. data/proto/dota_modifiers.proto +54 -0
  42. data/proto/dota_usermessages.proto +1152 -0
  43. data/proto/netmessages.proto +133 -0
  44. data/proto/networkbasetypes.proto +219 -0
  45. data/proto/s1/google/protobuf/descriptor.proto +622 -0
  46. data/proto/s1/s1_dota_usermessages.proto +89 -0
  47. data/proto/s1/s1_netmessages.proto +86 -0
  48. data/proto/s1/s1_usermessages.proto +217 -0
  49. data/proto/s2/google/protobuf/descriptor.proto +622 -0
  50. data/proto/s2/s2_base_gcmessages.proto +37 -0
  51. data/proto/s2/s2_dota_gcmessages_common.proto +177 -0
  52. data/proto/s2/s2_dota_match_metadata.proto +67 -0
  53. data/proto/s2/s2_dota_usermessages.proto +104 -0
  54. data/proto/s2/s2_gameevents.proto +125 -0
  55. data/proto/s2/s2_netmessages.proto +120 -0
  56. data/proto/s2/s2_te.proto +276 -0
  57. data/proto/s2/s2_usermessages.proto +434 -0
  58. metadata +148 -0
@@ -0,0 +1,177 @@
1
+ package effigy.wire.s2;
2
+
3
+ option java_package = "skadistats.clarity.wire.s2.proto";
4
+ option java_outer_classname = "S2DotaGcCommon";
5
+
6
+ option optimize_for = SPEED;
7
+ option cc_generic_services = false;
8
+
9
+ enum DOTA_GameMode {
10
+ DOTA_GAMEMODE_NONE = 0;
11
+ DOTA_GAMEMODE_AP = 1;
12
+ DOTA_GAMEMODE_CM = 2;
13
+ DOTA_GAMEMODE_RD = 3;
14
+ DOTA_GAMEMODE_SD = 4;
15
+ DOTA_GAMEMODE_AR = 5;
16
+ DOTA_GAMEMODE_INTRO = 6;
17
+ DOTA_GAMEMODE_HW = 7;
18
+ DOTA_GAMEMODE_REVERSE_CM = 8;
19
+ DOTA_GAMEMODE_XMAS = 9;
20
+ DOTA_GAMEMODE_TUTORIAL = 10;
21
+ DOTA_GAMEMODE_MO = 11;
22
+ DOTA_GAMEMODE_LP = 12;
23
+ DOTA_GAMEMODE_POOL1 = 13;
24
+ DOTA_GAMEMODE_FH = 14;
25
+ DOTA_GAMEMODE_CUSTOM = 15;
26
+ DOTA_GAMEMODE_CD = 16;
27
+ DOTA_GAMEMODE_BD = 17;
28
+ DOTA_GAMEMODE_ABILITY_DRAFT = 18;
29
+ DOTA_GAMEMODE_EVENT = 19;
30
+ DOTA_GAMEMODE_ARDM = 20;
31
+ DOTA_GAMEMODE_1V1MID = 21;
32
+ DOTA_GAMEMODE_ALL_DRAFT = 22;
33
+ }
34
+
35
+ message CMatchPlayerAbilityUpgrade {
36
+ optional uint32 ability = 1;
37
+ optional uint32 time = 2;
38
+ }
39
+
40
+ message CMatchAdditionalUnitInventory {
41
+ optional string unit_name = 1;
42
+ repeated uint32 items = 2;
43
+ }
44
+
45
+ message CMatchHeroSelectEvent {
46
+ optional bool is_pick = 1;
47
+ optional uint32 team = 2;
48
+ optional uint32 hero_id = 3;
49
+ }
50
+
51
+ message CMsgDOTAMatch {
52
+ message Player {
53
+ message CustomGameData {
54
+ optional uint32 dota_team = 1;
55
+ optional bool winner = 2;
56
+ }
57
+
58
+ optional uint32 account_id = 1;
59
+ optional uint32 player_slot = 2;
60
+ optional uint32 hero_id = 3;
61
+ optional uint32 item_0 = 4;
62
+ optional uint32 item_1 = 5;
63
+ optional uint32 item_2 = 6;
64
+ optional uint32 item_3 = 7;
65
+ optional uint32 item_4 = 8;
66
+ optional uint32 item_5 = 9;
67
+ optional float expected_team_contribution = 10;
68
+ optional float scaled_metric = 11;
69
+ optional uint32 previous_rank = 12;
70
+ optional uint32 rank_change = 13;
71
+ optional bool solo_rank = 49;
72
+ optional uint32 kills = 14;
73
+ optional uint32 deaths = 15;
74
+ optional uint32 assists = 16;
75
+ optional uint32 leaver_status = 17;
76
+ optional uint32 gold = 18;
77
+ optional uint32 last_hits = 19;
78
+ optional uint32 denies = 20;
79
+ optional uint32 gold_per_min = 21;
80
+ optional uint32 XP_per_min = 22;
81
+ optional uint32 gold_spent = 23;
82
+ optional uint32 hero_damage = 24;
83
+ optional uint32 tower_damage = 25;
84
+ optional uint32 hero_healing = 26;
85
+ optional uint32 level = 27;
86
+ optional uint32 time_last_seen = 28;
87
+ optional string player_name = 29;
88
+ optional uint32 support_ability_value = 30;
89
+ optional bool feeding_detected = 32;
90
+ optional uint32 search_rank = 34;
91
+ optional uint32 search_rank_uncertainty = 35;
92
+ optional int32 rank_uncertainty_change = 36;
93
+ optional uint32 hero_play_count = 37;
94
+ optional fixed64 party_id = 38;
95
+ optional float scaled_kills = 39;
96
+ optional float scaled_deaths = 40;
97
+ optional float scaled_assists = 41;
98
+ optional uint32 claimed_farm_gold = 42;
99
+ optional uint32 support_gold = 43;
100
+ optional uint32 claimed_denies = 44;
101
+ optional uint32 claimed_misses = 45;
102
+ optional uint32 misses = 46;
103
+ repeated CMatchPlayerAbilityUpgrade ability_upgrades = 47;
104
+ repeated CMatchAdditionalUnitInventory additional_units_inventory = 48;
105
+ optional CMsgDOTAMatch.Player.CustomGameData custom_game_data = 50;
106
+ optional bool active_battle_pass = 51;
107
+ optional uint32 NET_worth = 52;
108
+ }
109
+
110
+ message BroadcasterInfo {
111
+ optional uint32 account_id = 1;
112
+ optional string name = 2;
113
+ }
114
+
115
+ message BroadcasterChannel {
116
+ optional string country_code = 1;
117
+ optional string description = 2;
118
+ repeated CMsgDOTAMatch.BroadcasterInfo broadcaster_infos = 3;
119
+ optional string language_code = 4;
120
+ }
121
+
122
+ message CustomGameData {
123
+ optional uint64 custom_game_id = 1;
124
+ optional string map_name = 2;
125
+ }
126
+
127
+ enum ReplayState {
128
+ REPLAY_AVAILABLE = 0;
129
+ REPLAY_NOT_RECORDED = 1;
130
+ REPLAY_EXPIRED = 2;
131
+ }
132
+
133
+ optional bool good_guys_win = 2;
134
+ optional uint32 duration = 3;
135
+ optional fixed32 startTime = 4;
136
+ repeated CMsgDOTAMatch.Player players = 5;
137
+ optional uint64 match_id = 6;
138
+ repeated uint32 tower_status = 8;
139
+ repeated uint32 barracks_status = 9;
140
+ optional uint32 cluster = 10;
141
+ optional uint32 first_blood_time = 12;
142
+ optional fixed32 replay_salt = 13;
143
+ optional fixed32 server_ip = 14;
144
+ optional uint32 server_port = 15;
145
+ optional uint32 lobby_type = 16;
146
+ optional uint32 human_players = 17;
147
+ optional uint32 average_skill = 18;
148
+ optional float game_balance = 19;
149
+ optional uint32 radiant_team_id = 20;
150
+ optional uint32 dire_team_id = 21;
151
+ optional uint32 leagueid = 22;
152
+ optional string radiant_team_name = 23;
153
+ optional string dire_team_name = 24;
154
+ optional uint64 radiant_team_logo = 25;
155
+ optional uint64 dire_team_logo = 26;
156
+ optional uint32 radiant_team_complete = 27;
157
+ optional uint32 dire_team_complete = 28;
158
+ optional uint32 positive_votes = 29;
159
+ optional uint32 negative_votes = 30;
160
+ optional DOTA_GameMode game_mode = 31 [default = DOTA_GAMEMODE_NONE];
161
+ repeated CMatchHeroSelectEvent picks_bans = 32;
162
+ optional uint64 match_seq_num = 33;
163
+ optional CMsgDOTAMatch.ReplayState replay_state = 34 [default = REPLAY_AVAILABLE];
164
+ optional uint32 radiant_guild_id = 35;
165
+ optional uint32 dire_guild_id = 36;
166
+ optional string radiant_team_tag = 37;
167
+ optional string dire_team_tag = 38;
168
+ optional uint32 series_id = 39;
169
+ optional uint32 series_type = 40;
170
+ repeated CMsgDOTAMatch.BroadcasterChannel broadcaster_channels = 43;
171
+ optional uint32 engine = 44;
172
+ optional CMsgDOTAMatch.CustomGameData custom_game_data = 45;
173
+ optional uint32 match_flags = 46;
174
+ optional fixed32 private_metadata_key = 47;
175
+ optional uint32 radiant_team_score = 48;
176
+ optional uint32 dire_team_score = 49;
177
+ }
@@ -0,0 +1,67 @@
1
+ package effigy.wire.s2;
2
+
3
+ option java_package = "skadistats.clarity.wire.s2.proto";
4
+ option java_outer_classname = "S2DotaMatchMetadata";
5
+
6
+ import "s2_base_gcmessages.proto";
7
+
8
+ option cc_generic_services = false;
9
+
10
+ message CDOTAMatchMetadataFile {
11
+ required int32 version = 1;
12
+ required uint64 match_id = 2;
13
+ optional CDOTAMatchMetadata metadata = 3;
14
+ optional bytes private_metadata = 4;
15
+ }
16
+
17
+ message CDOTAMatchMetadata {
18
+ message Team {
19
+ message PlayerKill {
20
+ optional uint32 victim_slot = 1;
21
+ optional uint32 count = 2;
22
+ }
23
+
24
+ message Player {
25
+ optional uint32 account_id = 1;
26
+ repeated uint32 ability_upgrades = 2;
27
+ optional uint32 player_slot = 3;
28
+ repeated CSOEconItem equipped_econ_items = 4;
29
+ repeated CDOTAMatchMetadata.Team.PlayerKill kills = 5;
30
+ }
31
+
32
+ optional uint32 dota_team = 1;
33
+ repeated CDOTAMatchMetadata.Team.Player players = 2;
34
+ repeated float graph_experience = 3;
35
+ repeated float graph_gold_earned = 4;
36
+ repeated float graph_NET_worth = 5;
37
+ optional bool cm_first_pick = 6;
38
+ optional uint32 cm_captain_player_id = 7;
39
+ repeated uint32 cm_bans = 8;
40
+ repeated uint32 cm_picks = 9;
41
+ optional uint32 cm_penalty = 10;
42
+ }
43
+
44
+ repeated CDOTAMatchMetadata.Team teams = 1;
45
+ repeated CLobbyTimedRewardDetails item_rewards = 2;
46
+ }
47
+
48
+ message CDOTAMatchPrivateMetadata {
49
+ message Kill {
50
+ optional int32 timestamp = 1;
51
+ optional uint32 killer_hero_id = 2;
52
+ optional uint32 victim_hero_id = 3;
53
+ repeated uint32 assist_hero_ids = 4;
54
+ }
55
+
56
+ repeated CDOTAMatchPrivateMetadata.Kill kills = 1;
57
+ optional string test_string = 100;
58
+ }
59
+
60
+ message CLobbyTimedRewardDetails {
61
+ optional uint32 item_def_index = 2;
62
+ optional bool is_supply_crate = 3;
63
+ optional bool is_timed_drop = 4;
64
+ optional uint32 account_id = 5;
65
+ optional uint32 origin = 6;
66
+ }
67
+
@@ -0,0 +1,104 @@
1
+ package effigy.wire.s2;
2
+
3
+ option java_package = "skadistats.clarity.wire.s2.proto";
4
+ option java_outer_classname = "S2DotaUserMessages";
5
+
6
+ option optimize_for = SPEED;
7
+ option cc_generic_services = false;
8
+
9
+ enum EDotaUserMessages {
10
+ DOTA_UM_AddUnitToSelection = 464;
11
+ DOTA_UM_AIDebugLine = 465;
12
+ DOTA_UM_ChatEvent = 466;
13
+ DOTA_UM_CombatHeroPositions = 467;
14
+ DOTA_UM_CombatLogData = 468;
15
+ DOTA_UM_CombatLogShowDeath = 470;
16
+ DOTA_UM_CreateLinearProjectile = 471;
17
+ DOTA_UM_DestroyLinearProjectile = 472;
18
+ DOTA_UM_DodgeTrackingProjectiles = 473;
19
+ DOTA_UM_GlobalLightColor = 474;
20
+ DOTA_UM_GlobalLightDirection = 475;
21
+ DOTA_UM_InvalidCommand = 476;
22
+ DOTA_UM_LocationPing = 477;
23
+ DOTA_UM_MapLine = 478;
24
+ DOTA_UM_MiniKillCamInfo = 479;
25
+ DOTA_UM_MinimapDebugPoint = 480;
26
+ DOTA_UM_MinimapEvent = 481;
27
+ DOTA_UM_NevermoreRequiem = 482;
28
+ DOTA_UM_OverheadEvent = 483;
29
+ DOTA_UM_SetNextAutobuyItem = 484;
30
+ DOTA_UM_SharedCooldown = 485;
31
+ DOTA_UM_SpectatorPlayerClick = 486;
32
+ DOTA_UM_TutorialTipInfo = 487;
33
+ DOTA_UM_UnitEvent = 488;
34
+ DOTA_UM_ParticleManager = 489;
35
+ DOTA_UM_BotChat = 490;
36
+ DOTA_UM_HudError = 491;
37
+ DOTA_UM_ItemPurchased = 492;
38
+ DOTA_UM_Ping = 493;
39
+ DOTA_UM_ItemFound = 494;
40
+ DOTA_UM_CharacterSpeakConcept = 495;
41
+ DOTA_UM_SwapVerify = 496;
42
+ DOTA_UM_WorldLine = 497;
43
+ DOTA_UM_TournamentDrop = 498;
44
+ DOTA_UM_ItemAlert = 499;
45
+ DOTA_UM_HalloweenDrops = 500;
46
+ DOTA_UM_ChatWheel = 501;
47
+ DOTA_UM_ReceivedXmasGift = 502;
48
+ DOTA_UM_UpdateSharedContent = 503;
49
+ DOTA_UM_TutorialRequestExp = 504;
50
+ DOTA_UM_TutorialPingMinimap = 505;
51
+ DOTA_UM_GamerulesStateChanged = 506;
52
+ DOTA_UM_ShowSurvey = 507;
53
+ DOTA_UM_TutorialFade = 508;
54
+ DOTA_UM_AddQuestLogEntry = 509;
55
+ DOTA_UM_SendStatPopup = 510;
56
+ DOTA_UM_TutorialFinish = 511;
57
+ DOTA_UM_SendRoshanPopup = 512;
58
+ DOTA_UM_SendGenericToolTip = 513;
59
+ DOTA_UM_SendFinalGold = 514;
60
+ DOTA_UM_CustomMsg = 515;
61
+ DOTA_UM_CoachHUDPing = 516;
62
+ DOTA_UM_ClientLoadGridNav = 517;
63
+ DOTA_UM_TE_Projectile = 518;
64
+ DOTA_UM_TE_ProjectileLoc = 519;
65
+ DOTA_UM_TE_DotaBloodImpact = 520;
66
+ DOTA_UM_TE_UnitAnimation = 521;
67
+ DOTA_UM_TE_UnitAnimationEnd = 522;
68
+ DOTA_UM_AbilityPing = 523;
69
+ DOTA_UM_ShowGenericPopup = 524;
70
+ DOTA_UM_VoteStart = 525;
71
+ DOTA_UM_VoteUpdate = 526;
72
+ DOTA_UM_VoteEnd = 527;
73
+ DOTA_UM_BoosterState = 528;
74
+ DOTA_UM_WillPurchaseAlert = 529;
75
+ DOTA_UM_TutorialMinimapPosition = 530;
76
+ DOTA_UM_PlayerMMR = 531;
77
+ DOTA_UM_AbilitySteal = 532;
78
+ DOTA_UM_CourierKilledAlert = 533;
79
+ DOTA_UM_EnemyItemAlert = 534;
80
+ DOTA_UM_StatsMatchDetails = 535;
81
+ DOTA_UM_MiniTaunt = 536;
82
+ DOTA_UM_BuyBackStateAlert = 537;
83
+ DOTA_UM_SpeechBubble = 538;
84
+ DOTA_UM_CustomHeaderMessage = 539;
85
+ DOTA_UM_QuickBuyAlert = 540;
86
+ DOTA_UM_StatsHeroDetails = 541;
87
+ DOTA_UM_PredictionResult = 542;
88
+ DOTA_UM_ModifierAlert = 543;
89
+ DOTA_UM_HPManaAlert = 544;
90
+ DOTA_UM_GlyphAlert = 545;
91
+ DOTA_UM_BeastChat = 546;
92
+ DOTA_UM_SpectatorPlayerUnitOrders = 547;
93
+ DOTA_UM_CustomHudElement_Create = 548;
94
+ DOTA_UM_CustomHudElement_Modify = 549;
95
+ DOTA_UM_CustomHudElement_Destroy = 550;
96
+ DOTA_UM_CompendiumState = 551;
97
+ DOTA_UM_ProjectionAbility = 552;
98
+ DOTA_UM_ProjectionEvent = 553;
99
+ DOTA_UM_CombatLogDataHLTV = 554;
100
+ DOTA_UM_XPAlert = 555;
101
+ DOTA_UM_UpdateQuestProgress = 556;
102
+ DOTA_UM_MatchMetadata = 557;
103
+ DOTA_UM_MatchDetails = 558;
104
+ }
@@ -0,0 +1,125 @@
1
+ package effigy.wire.s2;
2
+
3
+ option java_package = "skadistats.clarity.wire.s2.proto";
4
+ option java_outer_classname = "S2GameEvents";
5
+
6
+ import "networkbasetypes.proto";
7
+
8
+ option optimize_for = SPEED;
9
+ option cc_generic_services = false;
10
+
11
+ enum EBaseGameEvents {
12
+ GE_VDebugGameSessionIDEvent = 200;
13
+ GE_PlaceDecalEvent = 201;
14
+ GE_ClearWorldDecalsEvent = 202;
15
+ GE_ClearEntityDecalsEvent = 203;
16
+ GE_ClearDecalsForSkeletonInstanceEvent = 204;
17
+ GE_Source1LegacyGameEventList = 205;
18
+ GE_Source1LegacyListenEvents = 206;
19
+ GE_Source1LegacyGameEvent = 207;
20
+ GE_SosStartSoundEvent = 208;
21
+ GE_SosStopSoundEvent = 209;
22
+ GE_SosSetSoundEventParams = 210;
23
+ GE_SosSetLibraryStackFields = 211;
24
+ GE_SosStopSoundEventHash = 212;
25
+ }
26
+
27
+ message CMsgVDebugGameSessionIDEvent {
28
+ optional int32 clientid = 1;
29
+ optional string gamesessionid = 2;
30
+ }
31
+
32
+ message CMsgPlaceDecalEvent {
33
+ optional CMsgVector position = 1;
34
+ optional CMsgVector normal = 2;
35
+ optional CMsgVector saxis = 3;
36
+ optional uint32 decalmaterialindex = 4;
37
+ optional uint32 flags = 5;
38
+ optional fixed32 color = 6;
39
+ optional float width = 7;
40
+ optional float height = 8;
41
+ optional float depth = 9;
42
+ optional uint32 entityhandleindex = 10;
43
+ optional fixed32 skeletoninstancehash = 11;
44
+ optional int32 boneindex = 12;
45
+ optional bool translucenthit = 13;
46
+ }
47
+
48
+ message CMsgClearWorldDecalsEvent {
49
+ optional uint32 flagstoclear = 1;
50
+ }
51
+
52
+ message CMsgClearEntityDecalsEvent {
53
+ optional uint32 flagstoclear = 1;
54
+ }
55
+
56
+ message CMsgClearDecalsForSkeletonInstanceEvent {
57
+ optional uint32 flagstoclear = 1;
58
+ optional uint32 entityhandleindex = 2;
59
+ optional uint32 skeletoninstancehash = 3;
60
+ }
61
+
62
+ message CMsgSource1LegacyGameEventList {
63
+ message key_t {
64
+ optional int32 type = 1;
65
+ optional string name = 2;
66
+ }
67
+
68
+ message descriptor_t {
69
+ optional int32 eventid = 1;
70
+ optional string name = 2;
71
+ repeated CMsgSource1LegacyGameEventList.key_t keys = 3;
72
+ }
73
+
74
+ repeated CMsgSource1LegacyGameEventList.descriptor_t descriptors = 1;
75
+ }
76
+
77
+ message CMsgSource1LegacyListenEvents {
78
+ optional int32 playerslot = 1;
79
+ repeated uint32 eventarraybits = 2;
80
+ }
81
+
82
+ message CMsgSource1LegacyGameEvent {
83
+ message key_t {
84
+ optional int32 type = 1;
85
+ optional string val_string = 2;
86
+ optional float val_float = 3;
87
+ optional int32 val_long = 4;
88
+ optional int32 val_short = 5;
89
+ optional int32 val_byte = 6;
90
+ optional bool val_bool = 7;
91
+ optional uint64 val_uint64 = 8;
92
+ }
93
+
94
+ optional string event_name = 1;
95
+ optional int32 eventid = 2;
96
+ repeated CMsgSource1LegacyGameEvent.key_t keys = 3;
97
+ }
98
+
99
+ message CMsgSosStartSoundEvent {
100
+ optional int32 soundevent_guid = 1;
101
+ optional fixed32 soundevent_hash = 2;
102
+ optional int32 source_entity_index = 3;
103
+ optional int32 seed = 4;
104
+ optional bytes packed_params = 5;
105
+ }
106
+
107
+ message CMsgSosStopSoundEvent {
108
+ optional int32 soundevent_guid = 1;
109
+ }
110
+
111
+ message CMsgSosStopSoundEventHash {
112
+ optional fixed32 soundevent_hash = 1;
113
+ optional int32 source_entity_index = 2;
114
+ }
115
+
116
+ message CMsgSosSetSoundEventParams {
117
+ optional int32 soundevent_guid = 1;
118
+ optional bytes packed_params = 5;
119
+ }
120
+
121
+ message CMsgSosSetLibraryStackFields {
122
+ optional fixed32 stack_hash = 1;
123
+ optional bytes packed_fields = 5;
124
+ }
125
+
@@ -0,0 +1,120 @@
1
+ package effigy.wire.s2;
2
+
3
+ option java_package = "skadistats.clarity.wire.s2.proto";
4
+ option java_outer_classname = "S2NetMessages";
5
+
6
+ import "netmessages.proto";
7
+
8
+ option cc_generic_services = false;
9
+
10
+ enum SVC_Messages {
11
+ SVC_ServerInfo = 40;
12
+ SVC_FlattenedSerializer = 41;
13
+ SVC_ClassInfo = 42;
14
+ SVC_SetPause = 43;
15
+ SVC_CreateStringTable = 44;
16
+ SVC_UpdateStringTable = 45;
17
+ SVC_VoiceInit = 46;
18
+ SVC_VoiceData = 47;
19
+ SVC_Print = 48;
20
+ SVC_Sounds = 49;
21
+ SVC_SetView = 50;
22
+ SVC_ClearAllStringTables = 51;
23
+ SVC_CmdKeyValues = 52;
24
+ SVC_BSPDecal = 53;
25
+ SVC_SplitScreen = 54;
26
+ SVC_PacketEntities = 55;
27
+ SVC_Prefetch = 56;
28
+ SVC_Menu = 57;
29
+ SVC_GetCvarValue = 58;
30
+ SVC_StopSound = 59;
31
+ SVC_PeerList = 60;
32
+ SVC_PacketReliable = 61;
33
+ SVC_HLTVStatus = 62;
34
+ SVC_FullFrameSplit = 70;
35
+ }
36
+
37
+ message CSVCMsg_CreateStringTable {
38
+ optional string name = 1;
39
+ optional int32 num_entries = 2;
40
+ optional bool user_data_fixed_size = 3;
41
+ optional int32 user_data_size = 4;
42
+ optional int32 user_data_size_bits = 5;
43
+ optional int32 flags = 6;
44
+ optional bytes string_data = 7;
45
+ optional int32 uncompressed_size = 8;
46
+ optional bool data_compressed = 9;
47
+ }
48
+
49
+ message CMsgVoiceAudio {
50
+ optional VoiceDataFormat_t format = 1 [default = VOICEDATA_FORMAT_STEAM];
51
+ optional bytes voice_data = 2;
52
+ optional int32 sequence_bytes = 3;
53
+ optional uint32 section_number = 4;
54
+ optional uint32 sample_rate = 5;
55
+ optional uint32 uncompressed_sample_offset = 6;
56
+ }
57
+
58
+ message CSVCMsg_VoiceData {
59
+ optional CMsgVoiceAudio audio = 1;
60
+ optional int32 client = 2;
61
+ optional bool proximity = 3;
62
+ optional fixed64 xuid = 4;
63
+ optional int32 audible_mask = 5;
64
+ optional uint32 tick = 6;
65
+ }
66
+
67
+ message CSVCMsg_ClearAllStringTables {
68
+ optional string mapname = 1;
69
+ optional uint32 map_crc = 2;
70
+ }
71
+
72
+ message ProtoFlattenedSerializerField_t {
73
+ optional int32 var_type_sym = 1;
74
+ optional int32 var_name_sym = 2;
75
+ optional int32 bit_count = 3;
76
+ optional float low_value = 4;
77
+ optional float high_value = 5;
78
+ optional int32 encode_flags = 6;
79
+ optional int32 field_serializer_name_sym = 7;
80
+ optional int32 field_serializer_version = 8;
81
+ optional int32 send_node_sym = 9;
82
+ optional int32 var_encoder_sym = 10;
83
+ }
84
+
85
+ message ProtoFlattenedSerializer_t {
86
+ optional int32 serializer_name_sym = 1;
87
+ optional int32 serializer_version = 2;
88
+ repeated int32 fields_index = 3;
89
+ }
90
+
91
+ message CSVCMsg_FlattenedSerializer {
92
+ repeated ProtoFlattenedSerializer_t serializers = 1;
93
+ repeated string symbols = 2;
94
+ repeated ProtoFlattenedSerializerField_t fields = 3;
95
+ }
96
+
97
+ message CMsgIPCAddress {
98
+ optional fixed64 computer_guid = 1;
99
+ optional uint32 process_id = 2;
100
+ }
101
+
102
+ message CMsgServerPeer {
103
+ optional int32 player_slot = 1;
104
+ optional fixed64 steamid = 2;
105
+ optional CMsgIPCAddress ipc = 3;
106
+ optional bool they_hear_you = 4;
107
+ optional bool you_hear_them = 5;
108
+ optional bool is_listenserver_host = 6;
109
+ }
110
+
111
+ message CSVCMsg_PeerList {
112
+ repeated CMsgServerPeer peer = 1;
113
+ }
114
+
115
+ message CSVCMsg_HLTVStatus {
116
+ optional string master = 1;
117
+ optional int32 clients = 2;
118
+ optional int32 slots = 3;
119
+ optional int32 proxies = 4;
120
+ }