overlook-csgo 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitattributes +2 -0
- data/.gitignore +5 -0
- data/.rspec +2 -0
- data/.ruby-version +1 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +115 -0
- data/README.md +77 -0
- data/Rakefile +6 -0
- data/bin/console +7 -0
- data/bin/setup +7 -0
- data/lib/overlook.rb +20 -0
- data/lib/overlook/bit_buffer.rb +52 -0
- data/lib/overlook/bit_reader.rb +64 -0
- data/lib/overlook/byte_reader.rb +58 -0
- data/lib/overlook/csgo.rb +9 -0
- data/lib/overlook/csgo/demo.rb +33 -0
- data/lib/overlook/csgo/demo/base.rb +20 -0
- data/lib/overlook/csgo/demo/command.rb +67 -0
- data/lib/overlook/csgo/demo/command_factory.rb +15 -0
- data/lib/overlook/csgo/demo/encrypted_data_handler.rb +16 -0
- data/lib/overlook/csgo/demo/game_event_list_message_handler.rb +19 -0
- data/lib/overlook/csgo/demo/game_event_message_handler.rb +35 -0
- data/lib/overlook/csgo/demo/header.rb +45 -0
- data/lib/overlook/csgo/demo/key_reader.rb +18 -0
- data/lib/overlook/csgo/demo/packet.rb +16 -0
- data/lib/overlook/csgo/demo/packet_factory.rb +22 -0
- data/lib/overlook/csgo/demo/packet_handler.rb +50 -0
- data/lib/overlook/csgo/demo/parser.rb +66 -0
- data/lib/overlook/csgo/demo/user_message_message_handler.rb +43 -0
- data/lib/overlook/csgo/match_info_decoder.rb +92 -0
- data/lib/overlook/csgo/sharecode_decoder.rb +83 -0
- data/lib/overlook/version.rb +3 -0
- data/lib/proto/.gitkeep +0 -0
- data/lib/proto/compiled/cstrike15_gcmessages.pb.rb +1382 -0
- data/lib/proto/compiled/cstrike15_usermessages.pb.rb +702 -0
- data/lib/proto/compiled/descriptor.pb.rb +280 -0
- data/lib/proto/compiled/netmessages.pb.rb +687 -0
- data/lib/proto/compiled/steammessages.pb.rb +798 -0
- data/overlook-csgo.gemspec +36 -0
- metadata +209 -0
@@ -0,0 +1,798 @@
|
|
1
|
+
## Generated from steammessages.proto
|
2
|
+
require "beefcake"
|
3
|
+
|
4
|
+
|
5
|
+
module GCProtoBufMsgSrc
|
6
|
+
GCProtoBufMsgSrc_Unspecified = 0
|
7
|
+
GCProtoBufMsgSrc_FromSystem = 1
|
8
|
+
GCProtoBufMsgSrc_FromSteamID = 2
|
9
|
+
GCProtoBufMsgSrc_FromGC = 3
|
10
|
+
GCProtoBufMsgSrc_ReplySystem = 4
|
11
|
+
end
|
12
|
+
|
13
|
+
class CMsgProtoBufHeader
|
14
|
+
include Beefcake::Message
|
15
|
+
end
|
16
|
+
|
17
|
+
class CMsgWebAPIKey
|
18
|
+
include Beefcake::Message
|
19
|
+
end
|
20
|
+
|
21
|
+
class CMsgHttpRequest
|
22
|
+
include Beefcake::Message
|
23
|
+
|
24
|
+
class RequestHeader
|
25
|
+
include Beefcake::Message
|
26
|
+
end
|
27
|
+
|
28
|
+
class QueryParam
|
29
|
+
include Beefcake::Message
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class CMsgWebAPIRequest
|
34
|
+
include Beefcake::Message
|
35
|
+
end
|
36
|
+
|
37
|
+
class CMsgHttpResponse
|
38
|
+
include Beefcake::Message
|
39
|
+
|
40
|
+
class ResponseHeader
|
41
|
+
include Beefcake::Message
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
class CMsgAMFindAccounts
|
46
|
+
include Beefcake::Message
|
47
|
+
end
|
48
|
+
|
49
|
+
class CMsgAMFindAccountsResponse
|
50
|
+
include Beefcake::Message
|
51
|
+
end
|
52
|
+
|
53
|
+
class CMsgNotifyWatchdog
|
54
|
+
include Beefcake::Message
|
55
|
+
end
|
56
|
+
|
57
|
+
class CMsgAMGetLicenses
|
58
|
+
include Beefcake::Message
|
59
|
+
end
|
60
|
+
|
61
|
+
class CMsgPackageLicense
|
62
|
+
include Beefcake::Message
|
63
|
+
end
|
64
|
+
|
65
|
+
class CMsgAMGetLicensesResponse
|
66
|
+
include Beefcake::Message
|
67
|
+
end
|
68
|
+
|
69
|
+
class CMsgAMGetUserGameStats
|
70
|
+
include Beefcake::Message
|
71
|
+
end
|
72
|
+
|
73
|
+
class CMsgAMGetUserGameStatsResponse
|
74
|
+
include Beefcake::Message
|
75
|
+
|
76
|
+
class Stats
|
77
|
+
include Beefcake::Message
|
78
|
+
end
|
79
|
+
|
80
|
+
class Achievement_Blocks
|
81
|
+
include Beefcake::Message
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
class CMsgGCGetCommandList
|
86
|
+
include Beefcake::Message
|
87
|
+
end
|
88
|
+
|
89
|
+
class CMsgGCGetCommandListResponse
|
90
|
+
include Beefcake::Message
|
91
|
+
end
|
92
|
+
|
93
|
+
class CGCMsgMemCachedGet
|
94
|
+
include Beefcake::Message
|
95
|
+
end
|
96
|
+
|
97
|
+
class CGCMsgMemCachedGetResponse
|
98
|
+
include Beefcake::Message
|
99
|
+
|
100
|
+
class ValueTag
|
101
|
+
include Beefcake::Message
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
class CGCMsgMemCachedSet
|
106
|
+
include Beefcake::Message
|
107
|
+
|
108
|
+
class KeyPair
|
109
|
+
include Beefcake::Message
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
class CGCMsgMemCachedDelete
|
114
|
+
include Beefcake::Message
|
115
|
+
end
|
116
|
+
|
117
|
+
class CGCMsgMemCachedStats
|
118
|
+
include Beefcake::Message
|
119
|
+
end
|
120
|
+
|
121
|
+
class CGCMsgMemCachedStatsResponse
|
122
|
+
include Beefcake::Message
|
123
|
+
end
|
124
|
+
|
125
|
+
class CGCMsgSQLStats
|
126
|
+
include Beefcake::Message
|
127
|
+
end
|
128
|
+
|
129
|
+
class CGCMsgSQLStatsResponse
|
130
|
+
include Beefcake::Message
|
131
|
+
end
|
132
|
+
|
133
|
+
class CMsgAMAddFreeLicense
|
134
|
+
include Beefcake::Message
|
135
|
+
end
|
136
|
+
|
137
|
+
class CMsgAMAddFreeLicenseResponse
|
138
|
+
include Beefcake::Message
|
139
|
+
end
|
140
|
+
|
141
|
+
class CGCMsgGetIPLocation
|
142
|
+
include Beefcake::Message
|
143
|
+
end
|
144
|
+
|
145
|
+
class CIPLocationInfo
|
146
|
+
include Beefcake::Message
|
147
|
+
end
|
148
|
+
|
149
|
+
class CGCMsgGetIPLocationResponse
|
150
|
+
include Beefcake::Message
|
151
|
+
end
|
152
|
+
|
153
|
+
class CGCMsgSystemStatsSchema
|
154
|
+
include Beefcake::Message
|
155
|
+
end
|
156
|
+
|
157
|
+
class CGCMsgGetSystemStats
|
158
|
+
include Beefcake::Message
|
159
|
+
end
|
160
|
+
|
161
|
+
class CGCMsgGetSystemStatsResponse
|
162
|
+
include Beefcake::Message
|
163
|
+
end
|
164
|
+
|
165
|
+
class CMsgAMSendEmail
|
166
|
+
include Beefcake::Message
|
167
|
+
|
168
|
+
class ReplacementToken
|
169
|
+
include Beefcake::Message
|
170
|
+
end
|
171
|
+
|
172
|
+
class PersonaNameReplacementToken
|
173
|
+
include Beefcake::Message
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
177
|
+
class CMsgAMSendEmailResponse
|
178
|
+
include Beefcake::Message
|
179
|
+
end
|
180
|
+
|
181
|
+
class CMsgGCGetEmailTemplate
|
182
|
+
include Beefcake::Message
|
183
|
+
end
|
184
|
+
|
185
|
+
class CMsgGCGetEmailTemplateResponse
|
186
|
+
include Beefcake::Message
|
187
|
+
end
|
188
|
+
|
189
|
+
class CMsgAMGrantGuestPasses2
|
190
|
+
include Beefcake::Message
|
191
|
+
end
|
192
|
+
|
193
|
+
class CMsgAMGrantGuestPasses2Response
|
194
|
+
include Beefcake::Message
|
195
|
+
end
|
196
|
+
|
197
|
+
class CGCSystemMsg_GetAccountDetails
|
198
|
+
include Beefcake::Message
|
199
|
+
end
|
200
|
+
|
201
|
+
class CGCSystemMsg_GetAccountDetails_Response
|
202
|
+
include Beefcake::Message
|
203
|
+
end
|
204
|
+
|
205
|
+
class CMsgGCGetPersonaNames
|
206
|
+
include Beefcake::Message
|
207
|
+
end
|
208
|
+
|
209
|
+
class CMsgGCGetPersonaNames_Response
|
210
|
+
include Beefcake::Message
|
211
|
+
|
212
|
+
class PersonaName
|
213
|
+
include Beefcake::Message
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
class CMsgGCCheckFriendship
|
218
|
+
include Beefcake::Message
|
219
|
+
end
|
220
|
+
|
221
|
+
class CMsgGCCheckFriendship_Response
|
222
|
+
include Beefcake::Message
|
223
|
+
end
|
224
|
+
|
225
|
+
class CMsgGCMsgMasterSetDirectory
|
226
|
+
include Beefcake::Message
|
227
|
+
|
228
|
+
class SubGC
|
229
|
+
include Beefcake::Message
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
class CMsgGCMsgMasterSetDirectory_Response
|
234
|
+
include Beefcake::Message
|
235
|
+
end
|
236
|
+
|
237
|
+
class CMsgGCMsgWebAPIJobRequestForwardResponse
|
238
|
+
include Beefcake::Message
|
239
|
+
end
|
240
|
+
|
241
|
+
class CGCSystemMsg_GetPurchaseTrust_Request
|
242
|
+
include Beefcake::Message
|
243
|
+
end
|
244
|
+
|
245
|
+
class CGCSystemMsg_GetPurchaseTrust_Response
|
246
|
+
include Beefcake::Message
|
247
|
+
end
|
248
|
+
|
249
|
+
class CMsgGCHAccountVacStatusChange
|
250
|
+
include Beefcake::Message
|
251
|
+
end
|
252
|
+
|
253
|
+
class CMsgGCGetPartnerAccountLink
|
254
|
+
include Beefcake::Message
|
255
|
+
end
|
256
|
+
|
257
|
+
class CMsgGCGetPartnerAccountLink_Response
|
258
|
+
include Beefcake::Message
|
259
|
+
end
|
260
|
+
|
261
|
+
class CMsgGCRoutingInfo
|
262
|
+
include Beefcake::Message
|
263
|
+
|
264
|
+
module RoutingMethod
|
265
|
+
RANDOM = 0
|
266
|
+
DISCARD = 1
|
267
|
+
CLIENT_STEAMID = 2
|
268
|
+
PROTOBUF_FIELD_UINT64 = 3
|
269
|
+
WEBAPI_PARAM_UINT64 = 4
|
270
|
+
end
|
271
|
+
end
|
272
|
+
|
273
|
+
class CMsgGCMsgMasterSetWebAPIRouting
|
274
|
+
include Beefcake::Message
|
275
|
+
|
276
|
+
class Entry
|
277
|
+
include Beefcake::Message
|
278
|
+
end
|
279
|
+
end
|
280
|
+
|
281
|
+
class CMsgGCMsgMasterSetClientMsgRouting
|
282
|
+
include Beefcake::Message
|
283
|
+
|
284
|
+
class Entry
|
285
|
+
include Beefcake::Message
|
286
|
+
end
|
287
|
+
end
|
288
|
+
|
289
|
+
class CMsgGCMsgMasterSetWebAPIRouting_Response
|
290
|
+
include Beefcake::Message
|
291
|
+
end
|
292
|
+
|
293
|
+
class CMsgGCMsgMasterSetClientMsgRouting_Response
|
294
|
+
include Beefcake::Message
|
295
|
+
end
|
296
|
+
|
297
|
+
class CMsgGCMsgSetOptions
|
298
|
+
include Beefcake::Message
|
299
|
+
|
300
|
+
module Option
|
301
|
+
NOTIFY_USER_SESSIONS = 0
|
302
|
+
NOTIFY_SERVER_SESSIONS = 1
|
303
|
+
NOTIFY_ACHIEVEMENTS = 2
|
304
|
+
NOTIFY_VAC_ACTION = 3
|
305
|
+
end
|
306
|
+
|
307
|
+
class MessageRange
|
308
|
+
include Beefcake::Message
|
309
|
+
end
|
310
|
+
end
|
311
|
+
|
312
|
+
class CMsgGCHUpdateSession
|
313
|
+
include Beefcake::Message
|
314
|
+
|
315
|
+
class ExtraField
|
316
|
+
include Beefcake::Message
|
317
|
+
end
|
318
|
+
end
|
319
|
+
|
320
|
+
class CMsgNotificationOfSuspiciousActivity
|
321
|
+
include Beefcake::Message
|
322
|
+
|
323
|
+
class MultipleGameInstances
|
324
|
+
include Beefcake::Message
|
325
|
+
end
|
326
|
+
end
|
327
|
+
|
328
|
+
class CMsgProtoBufHeader
|
329
|
+
optional :client_steam_id, :fixed64, 1
|
330
|
+
optional :client_session_id, :int32, 2
|
331
|
+
optional :source_app_id, :uint32, 3
|
332
|
+
optional :job_id_source, :fixed64, 10, :default => 18446744073709551615
|
333
|
+
optional :job_id_target, :fixed64, 11, :default => 18446744073709551615
|
334
|
+
optional :target_job_name, :string, 12
|
335
|
+
optional :eresult, :int32, 13, :default => 2
|
336
|
+
optional :error_message, :string, 14
|
337
|
+
optional :gc_msg_src, GCProtoBufMsgSrc, 200, :default => GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified
|
338
|
+
optional :gc_dir_index_source, :uint32, 201
|
339
|
+
end
|
340
|
+
|
341
|
+
class CMsgWebAPIKey
|
342
|
+
optional :status, :uint32, 1, :default => 255
|
343
|
+
optional :account_id, :uint32, 2, :default => 0
|
344
|
+
optional :publisher_group_id, :uint32, 3, :default => 0
|
345
|
+
optional :key_id, :uint32, 4
|
346
|
+
optional :domain, :string, 5
|
347
|
+
end
|
348
|
+
|
349
|
+
class CMsgHttpRequest
|
350
|
+
|
351
|
+
class RequestHeader
|
352
|
+
optional :name, :string, 1
|
353
|
+
optional :value, :string, 2
|
354
|
+
end
|
355
|
+
|
356
|
+
class QueryParam
|
357
|
+
optional :name, :string, 1
|
358
|
+
optional :value, :bytes, 2
|
359
|
+
end
|
360
|
+
optional :request_method, :uint32, 1
|
361
|
+
optional :hostname, :string, 2
|
362
|
+
optional :url, :string, 3
|
363
|
+
repeated :headers, CMsgHttpRequest::RequestHeader, 4
|
364
|
+
repeated :get_params, CMsgHttpRequest::QueryParam, 5
|
365
|
+
repeated :post_params, CMsgHttpRequest::QueryParam, 6
|
366
|
+
optional :body, :bytes, 7
|
367
|
+
optional :absolute_timeout, :uint32, 8
|
368
|
+
end
|
369
|
+
|
370
|
+
class CMsgWebAPIRequest
|
371
|
+
optional :UNUSED_job_name, :string, 1
|
372
|
+
optional :interface_name, :string, 2
|
373
|
+
optional :method_name, :string, 3
|
374
|
+
optional :version, :uint32, 4
|
375
|
+
optional :api_key, CMsgWebAPIKey, 5
|
376
|
+
optional :request, CMsgHttpRequest, 6
|
377
|
+
optional :routing_app_id, :uint32, 7
|
378
|
+
end
|
379
|
+
|
380
|
+
class CMsgHttpResponse
|
381
|
+
|
382
|
+
class ResponseHeader
|
383
|
+
optional :name, :string, 1
|
384
|
+
optional :value, :string, 2
|
385
|
+
end
|
386
|
+
optional :status_code, :uint32, 1
|
387
|
+
repeated :headers, CMsgHttpResponse::ResponseHeader, 2
|
388
|
+
optional :body, :bytes, 3
|
389
|
+
end
|
390
|
+
|
391
|
+
class CMsgAMFindAccounts
|
392
|
+
optional :search_type, :uint32, 1
|
393
|
+
optional :search_string, :string, 2
|
394
|
+
end
|
395
|
+
|
396
|
+
class CMsgAMFindAccountsResponse
|
397
|
+
repeated :steam_id, :fixed64, 1
|
398
|
+
end
|
399
|
+
|
400
|
+
class CMsgNotifyWatchdog
|
401
|
+
optional :source, :uint32, 1
|
402
|
+
optional :alert_type, :uint32, 2
|
403
|
+
optional :alert_destination, :uint32, 3
|
404
|
+
optional :critical, :bool, 4
|
405
|
+
optional :time, :uint32, 5
|
406
|
+
optional :appid, :uint32, 6
|
407
|
+
optional :text, :string, 7
|
408
|
+
end
|
409
|
+
|
410
|
+
class CMsgAMGetLicenses
|
411
|
+
optional :steamid, :fixed64, 1
|
412
|
+
end
|
413
|
+
|
414
|
+
class CMsgPackageLicense
|
415
|
+
optional :package_id, :uint32, 1
|
416
|
+
optional :time_created, :uint32, 2
|
417
|
+
optional :owner_id, :uint32, 3
|
418
|
+
end
|
419
|
+
|
420
|
+
class CMsgAMGetLicensesResponse
|
421
|
+
repeated :license, CMsgPackageLicense, 1
|
422
|
+
optional :result, :uint32, 2
|
423
|
+
end
|
424
|
+
|
425
|
+
class CMsgAMGetUserGameStats
|
426
|
+
optional :steam_id, :fixed64, 1
|
427
|
+
optional :game_id, :fixed64, 2
|
428
|
+
repeated :stats, :uint32, 3
|
429
|
+
end
|
430
|
+
|
431
|
+
class CMsgAMGetUserGameStatsResponse
|
432
|
+
|
433
|
+
class Stats
|
434
|
+
optional :stat_id, :uint32, 1
|
435
|
+
optional :stat_value, :uint32, 2
|
436
|
+
end
|
437
|
+
|
438
|
+
class Achievement_Blocks
|
439
|
+
optional :achievement_id, :uint32, 1
|
440
|
+
optional :achievement_bit_id, :uint32, 2
|
441
|
+
optional :unlock_time, :fixed32, 3
|
442
|
+
end
|
443
|
+
optional :steam_id, :fixed64, 1
|
444
|
+
optional :game_id, :fixed64, 2
|
445
|
+
optional :eresult, :int32, 3, :default => 2
|
446
|
+
repeated :stats, CMsgAMGetUserGameStatsResponse::Stats, 4
|
447
|
+
repeated :achievement_blocks, CMsgAMGetUserGameStatsResponse::Achievement_Blocks, 5
|
448
|
+
end
|
449
|
+
|
450
|
+
class CMsgGCGetCommandList
|
451
|
+
optional :app_id, :uint32, 1
|
452
|
+
optional :command_prefix, :string, 2
|
453
|
+
end
|
454
|
+
|
455
|
+
class CMsgGCGetCommandListResponse
|
456
|
+
repeated :command_name, :string, 1
|
457
|
+
end
|
458
|
+
|
459
|
+
class CGCMsgMemCachedGet
|
460
|
+
repeated :keys, :string, 1
|
461
|
+
end
|
462
|
+
|
463
|
+
class CGCMsgMemCachedGetResponse
|
464
|
+
|
465
|
+
class ValueTag
|
466
|
+
optional :found, :bool, 1
|
467
|
+
optional :value, :bytes, 2
|
468
|
+
end
|
469
|
+
repeated :values, CGCMsgMemCachedGetResponse::ValueTag, 1
|
470
|
+
end
|
471
|
+
|
472
|
+
class CGCMsgMemCachedSet
|
473
|
+
|
474
|
+
class KeyPair
|
475
|
+
optional :name, :string, 1
|
476
|
+
optional :value, :bytes, 2
|
477
|
+
end
|
478
|
+
repeated :keys, CGCMsgMemCachedSet::KeyPair, 1
|
479
|
+
end
|
480
|
+
|
481
|
+
class CGCMsgMemCachedDelete
|
482
|
+
repeated :keys, :string, 1
|
483
|
+
end
|
484
|
+
|
485
|
+
class CGCMsgMemCachedStats
|
486
|
+
end
|
487
|
+
|
488
|
+
class CGCMsgMemCachedStatsResponse
|
489
|
+
optional :curr_connections, :uint64, 1
|
490
|
+
optional :cmd_get, :uint64, 2
|
491
|
+
optional :cmd_set, :uint64, 3
|
492
|
+
optional :cmd_flush, :uint64, 4
|
493
|
+
optional :get_hits, :uint64, 5
|
494
|
+
optional :get_misses, :uint64, 6
|
495
|
+
optional :delete_hits, :uint64, 7
|
496
|
+
optional :delete_misses, :uint64, 8
|
497
|
+
optional :bytes_read, :uint64, 9
|
498
|
+
optional :bytes_written, :uint64, 10
|
499
|
+
optional :limit_maxbytes, :uint64, 11
|
500
|
+
optional :curr_items, :uint64, 12
|
501
|
+
optional :evictions, :uint64, 13
|
502
|
+
optional :bytes, :uint64, 14
|
503
|
+
end
|
504
|
+
|
505
|
+
class CGCMsgSQLStats
|
506
|
+
optional :schema_catalog, :uint32, 1
|
507
|
+
end
|
508
|
+
|
509
|
+
class CGCMsgSQLStatsResponse
|
510
|
+
optional :threads, :uint32, 1
|
511
|
+
optional :threads_connected, :uint32, 2
|
512
|
+
optional :threads_active, :uint32, 3
|
513
|
+
optional :operations_submitted, :uint32, 4
|
514
|
+
optional :prepared_statements_executed, :uint32, 5
|
515
|
+
optional :non_prepared_statements_executed, :uint32, 6
|
516
|
+
optional :deadlock_retries, :uint32, 7
|
517
|
+
optional :operations_timed_out_in_queue, :uint32, 8
|
518
|
+
optional :errors, :uint32, 9
|
519
|
+
end
|
520
|
+
|
521
|
+
class CMsgAMAddFreeLicense
|
522
|
+
optional :steamid, :fixed64, 1
|
523
|
+
optional :ip_public, :uint32, 2
|
524
|
+
optional :packageid, :uint32, 3
|
525
|
+
optional :store_country_code, :string, 4
|
526
|
+
end
|
527
|
+
|
528
|
+
class CMsgAMAddFreeLicenseResponse
|
529
|
+
optional :eresult, :int32, 1, :default => 2
|
530
|
+
optional :purchase_result_detail, :int32, 2
|
531
|
+
optional :transid, :fixed64, 3
|
532
|
+
end
|
533
|
+
|
534
|
+
class CGCMsgGetIPLocation
|
535
|
+
repeated :ips, :fixed32, 1
|
536
|
+
end
|
537
|
+
|
538
|
+
class CIPLocationInfo
|
539
|
+
optional :ip, :uint32, 1
|
540
|
+
optional :latitude, :float, 2
|
541
|
+
optional :longitude, :float, 3
|
542
|
+
optional :country, :string, 4
|
543
|
+
optional :state, :string, 5
|
544
|
+
optional :city, :string, 6
|
545
|
+
end
|
546
|
+
|
547
|
+
class CGCMsgGetIPLocationResponse
|
548
|
+
repeated :infos, CIPLocationInfo, 1
|
549
|
+
end
|
550
|
+
|
551
|
+
class CGCMsgSystemStatsSchema
|
552
|
+
optional :gc_app_id, :uint32, 1
|
553
|
+
optional :schema_kv, :bytes, 2
|
554
|
+
end
|
555
|
+
|
556
|
+
class CGCMsgGetSystemStats
|
557
|
+
end
|
558
|
+
|
559
|
+
class CGCMsgGetSystemStatsResponse
|
560
|
+
optional :gc_app_id, :uint32, 1
|
561
|
+
optional :stats_kv, :bytes, 2
|
562
|
+
optional :active_jobs, :uint32, 3
|
563
|
+
optional :yielding_jobs, :uint32, 4
|
564
|
+
optional :user_sessions, :uint32, 5
|
565
|
+
optional :game_server_sessions, :uint32, 6
|
566
|
+
optional :socaches, :uint32, 7
|
567
|
+
optional :socaches_to_unload, :uint32, 8
|
568
|
+
optional :socaches_loading, :uint32, 9
|
569
|
+
optional :writeback_queue, :uint32, 10
|
570
|
+
optional :steamid_locks, :uint32, 11
|
571
|
+
optional :logon_queue, :uint32, 12
|
572
|
+
optional :logon_jobs, :uint32, 13
|
573
|
+
end
|
574
|
+
|
575
|
+
class CMsgAMSendEmail
|
576
|
+
|
577
|
+
class ReplacementToken
|
578
|
+
optional :token_name, :string, 1
|
579
|
+
optional :token_value, :string, 2
|
580
|
+
end
|
581
|
+
|
582
|
+
class PersonaNameReplacementToken
|
583
|
+
optional :steamid, :fixed64, 1
|
584
|
+
optional :token_name, :string, 2
|
585
|
+
end
|
586
|
+
optional :steamid, :fixed64, 1
|
587
|
+
optional :email_msg_type, :uint32, 2
|
588
|
+
optional :email_format, :uint32, 3
|
589
|
+
repeated :persona_name_tokens, CMsgAMSendEmail::PersonaNameReplacementToken, 5
|
590
|
+
optional :source_gc, :uint32, 6
|
591
|
+
repeated :tokens, CMsgAMSendEmail::ReplacementToken, 7
|
592
|
+
end
|
593
|
+
|
594
|
+
class CMsgAMSendEmailResponse
|
595
|
+
optional :eresult, :uint32, 1, :default => 2
|
596
|
+
end
|
597
|
+
|
598
|
+
class CMsgGCGetEmailTemplate
|
599
|
+
optional :app_id, :uint32, 1
|
600
|
+
optional :email_msg_type, :uint32, 2
|
601
|
+
optional :email_lang, :int32, 3
|
602
|
+
optional :email_format, :int32, 4
|
603
|
+
end
|
604
|
+
|
605
|
+
class CMsgGCGetEmailTemplateResponse
|
606
|
+
optional :eresult, :uint32, 1, :default => 2
|
607
|
+
optional :template_exists, :bool, 2
|
608
|
+
optional :template, :string, 3
|
609
|
+
end
|
610
|
+
|
611
|
+
class CMsgAMGrantGuestPasses2
|
612
|
+
optional :steam_id, :fixed64, 1
|
613
|
+
optional :package_id, :uint32, 2
|
614
|
+
optional :passes_to_grant, :int32, 3
|
615
|
+
optional :days_to_expiration, :int32, 4
|
616
|
+
optional :action, :int32, 5
|
617
|
+
end
|
618
|
+
|
619
|
+
class CMsgAMGrantGuestPasses2Response
|
620
|
+
optional :eresult, :int32, 1, :default => 2
|
621
|
+
optional :passes_granted, :int32, 2, :default => 0
|
622
|
+
end
|
623
|
+
|
624
|
+
class CGCSystemMsg_GetAccountDetails
|
625
|
+
optional :steamid, :fixed64, 1
|
626
|
+
optional :appid, :uint32, 2
|
627
|
+
end
|
628
|
+
|
629
|
+
class CGCSystemMsg_GetAccountDetails_Response
|
630
|
+
optional :eresult_deprecated, :uint32, 1, :default => 2
|
631
|
+
optional :account_name, :string, 2
|
632
|
+
optional :persona_name, :string, 3
|
633
|
+
optional :is_profile_public, :bool, 4
|
634
|
+
optional :is_inventory_public, :bool, 5
|
635
|
+
optional :is_vac_banned, :bool, 7
|
636
|
+
optional :is_cyber_cafe, :bool, 8
|
637
|
+
optional :is_school_account, :bool, 9
|
638
|
+
optional :is_limited, :bool, 10
|
639
|
+
optional :is_subscribed, :bool, 11
|
640
|
+
optional :package, :uint32, 12
|
641
|
+
optional :is_free_trial_account, :bool, 13
|
642
|
+
optional :free_trial_expiration, :uint32, 14
|
643
|
+
optional :is_low_violence, :bool, 15
|
644
|
+
optional :is_account_locked_down, :bool, 16
|
645
|
+
optional :is_community_banned, :bool, 17
|
646
|
+
optional :is_trade_banned, :bool, 18
|
647
|
+
optional :trade_ban_expiration, :uint32, 19
|
648
|
+
optional :accountid, :uint32, 20
|
649
|
+
optional :suspension_end_time, :uint32, 21
|
650
|
+
optional :currency, :string, 22
|
651
|
+
optional :steam_level, :uint32, 23
|
652
|
+
end
|
653
|
+
|
654
|
+
class CMsgGCGetPersonaNames
|
655
|
+
repeated :steamids, :fixed64, 1
|
656
|
+
end
|
657
|
+
|
658
|
+
class CMsgGCGetPersonaNames_Response
|
659
|
+
|
660
|
+
class PersonaName
|
661
|
+
optional :steamid, :fixed64, 1
|
662
|
+
optional :persona_name, :string, 2
|
663
|
+
end
|
664
|
+
repeated :succeeded_lookups, CMsgGCGetPersonaNames_Response::PersonaName, 1
|
665
|
+
repeated :failed_lookup_steamids, :fixed64, 2
|
666
|
+
end
|
667
|
+
|
668
|
+
class CMsgGCCheckFriendship
|
669
|
+
optional :steamid_left, :fixed64, 1
|
670
|
+
optional :steamid_right, :fixed64, 2
|
671
|
+
end
|
672
|
+
|
673
|
+
class CMsgGCCheckFriendship_Response
|
674
|
+
optional :success, :bool, 1
|
675
|
+
optional :found_friendship, :bool, 2
|
676
|
+
end
|
677
|
+
|
678
|
+
class CMsgGCMsgMasterSetDirectory
|
679
|
+
|
680
|
+
class SubGC
|
681
|
+
optional :dir_index, :uint32, 1
|
682
|
+
optional :name, :string, 2
|
683
|
+
optional :box, :string, 3
|
684
|
+
optional :command_line, :string, 4
|
685
|
+
optional :gc_binary, :string, 5
|
686
|
+
end
|
687
|
+
optional :master_dir_index, :uint32, 1
|
688
|
+
repeated :dir, CMsgGCMsgMasterSetDirectory::SubGC, 2
|
689
|
+
end
|
690
|
+
|
691
|
+
class CMsgGCMsgMasterSetDirectory_Response
|
692
|
+
optional :eresult, :int32, 1, :default => 2
|
693
|
+
end
|
694
|
+
|
695
|
+
class CMsgGCMsgWebAPIJobRequestForwardResponse
|
696
|
+
optional :dir_index, :uint32, 1
|
697
|
+
end
|
698
|
+
|
699
|
+
class CGCSystemMsg_GetPurchaseTrust_Request
|
700
|
+
optional :steamid, :fixed64, 1
|
701
|
+
end
|
702
|
+
|
703
|
+
class CGCSystemMsg_GetPurchaseTrust_Response
|
704
|
+
optional :has_prior_purchase_history, :bool, 1
|
705
|
+
optional :has_no_recent_password_resets, :bool, 2
|
706
|
+
optional :is_wallet_cash_trusted, :bool, 3
|
707
|
+
optional :time_all_trusted, :uint32, 4
|
708
|
+
end
|
709
|
+
|
710
|
+
class CMsgGCHAccountVacStatusChange
|
711
|
+
optional :steam_id, :fixed64, 1
|
712
|
+
optional :app_id, :uint32, 2
|
713
|
+
optional :rtime_vacban_starts, :uint32, 3
|
714
|
+
optional :is_banned_now, :bool, 4
|
715
|
+
optional :is_banned_future, :bool, 5
|
716
|
+
end
|
717
|
+
|
718
|
+
class CMsgGCGetPartnerAccountLink
|
719
|
+
optional :steamid, :fixed64, 1
|
720
|
+
end
|
721
|
+
|
722
|
+
class CMsgGCGetPartnerAccountLink_Response
|
723
|
+
optional :pwid, :uint32, 1
|
724
|
+
optional :nexonid, :uint32, 2
|
725
|
+
end
|
726
|
+
|
727
|
+
class CMsgGCRoutingInfo
|
728
|
+
repeated :dir_index, :uint32, 1
|
729
|
+
optional :method, CMsgGCRoutingInfo::RoutingMethod, 2, :default => CMsgGCRoutingInfo::RoutingMethod::RANDOM
|
730
|
+
optional :fallback, CMsgGCRoutingInfo::RoutingMethod, 3, :default => CMsgGCRoutingInfo::RoutingMethod::DISCARD
|
731
|
+
optional :protobuf_field, :uint32, 4
|
732
|
+
optional :webapi_param, :string, 5
|
733
|
+
end
|
734
|
+
|
735
|
+
class CMsgGCMsgMasterSetWebAPIRouting
|
736
|
+
|
737
|
+
class Entry
|
738
|
+
optional :interface_name, :string, 1
|
739
|
+
optional :method_name, :string, 2
|
740
|
+
optional :routing, CMsgGCRoutingInfo, 3
|
741
|
+
end
|
742
|
+
repeated :entries, CMsgGCMsgMasterSetWebAPIRouting::Entry, 1
|
743
|
+
end
|
744
|
+
|
745
|
+
class CMsgGCMsgMasterSetClientMsgRouting
|
746
|
+
|
747
|
+
class Entry
|
748
|
+
optional :msg_type, :uint32, 1
|
749
|
+
optional :routing, CMsgGCRoutingInfo, 2
|
750
|
+
end
|
751
|
+
repeated :entries, CMsgGCMsgMasterSetClientMsgRouting::Entry, 1
|
752
|
+
end
|
753
|
+
|
754
|
+
class CMsgGCMsgMasterSetWebAPIRouting_Response
|
755
|
+
optional :eresult, :int32, 1, :default => 2
|
756
|
+
end
|
757
|
+
|
758
|
+
class CMsgGCMsgMasterSetClientMsgRouting_Response
|
759
|
+
optional :eresult, :int32, 1, :default => 2
|
760
|
+
end
|
761
|
+
|
762
|
+
class CMsgGCMsgSetOptions
|
763
|
+
|
764
|
+
class MessageRange
|
765
|
+
required :low, :uint32, 1
|
766
|
+
required :high, :uint32, 2
|
767
|
+
end
|
768
|
+
repeated :options, CMsgGCMsgSetOptions::Option, 1
|
769
|
+
repeated :client_msg_ranges, CMsgGCMsgSetOptions::MessageRange, 2
|
770
|
+
end
|
771
|
+
|
772
|
+
class CMsgGCHUpdateSession
|
773
|
+
|
774
|
+
class ExtraField
|
775
|
+
optional :name, :string, 1
|
776
|
+
optional :value, :string, 2
|
777
|
+
end
|
778
|
+
optional :steam_id, :fixed64, 1
|
779
|
+
optional :app_id, :uint32, 2
|
780
|
+
optional :online, :bool, 3
|
781
|
+
optional :server_steam_id, :fixed64, 4
|
782
|
+
optional :server_addr, :uint32, 5
|
783
|
+
optional :server_port, :uint32, 6
|
784
|
+
optional :os_type, :uint32, 7
|
785
|
+
optional :client_addr, :uint32, 8
|
786
|
+
repeated :extra_fields, CMsgGCHUpdateSession::ExtraField, 9
|
787
|
+
end
|
788
|
+
|
789
|
+
class CMsgNotificationOfSuspiciousActivity
|
790
|
+
|
791
|
+
class MultipleGameInstances
|
792
|
+
optional :app_instance_count, :uint32, 1
|
793
|
+
repeated :other_steamids, :fixed64, 2
|
794
|
+
end
|
795
|
+
optional :steamid, :fixed64, 1
|
796
|
+
optional :appid, :uint32, 2
|
797
|
+
optional :multiple_instances, CMsgNotificationOfSuspiciousActivity::MultipleGameInstances, 3
|
798
|
+
end
|