initial import from steam-vent repo

This commit is contained in:
Robin Appelman 2025-09-07 21:49:39 +02:00
commit b4633fa310
90 changed files with 247724 additions and 0 deletions

1
.envrc Normal file
View file

@ -0,0 +1 @@
use flake

31
.forgejo/workflows/ci.yml Normal file
View file

@ -0,0 +1,31 @@
name: "CI"
on:
pull_request:
push:
jobs:
check-proto:
runs-on: nix
steps:
- uses: actions/checkout@v4
- uses: https://codeberg.org/icewind/attic-action@v1
with:
name: link
instance: https://cache.icewind.link
authToken: "${{ secrets.ATTIC_TOKEN }}"
- run: |
nix run .#proto-builder protos src/generated
- run: |
git diff
git diff-index --quiet HEAD --
checks:
runs-on: nix
steps:
- uses: actions/checkout@v4
- uses: https://codeberg.org/icewind/attic-action@v1
with:
name: link
instance: https://cache.icewind.link
authToken: "${{ secrets.ATTIC_TOKEN }}"
- run: nix flake check --keep-going

4
.gitignore vendored Normal file
View file

@ -0,0 +1,4 @@
target
.direnv
result
*.log

107
Cargo.lock generated Normal file
View file

@ -0,0 +1,107 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "bytes"
version = "1.10.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"
[[package]]
name = "once_cell"
version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]]
name = "proc-macro2"
version = "1.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de"
dependencies = [
"unicode-ident",
]
[[package]]
name = "protobuf"
version = "3.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0bcc343da15609eaecd65f8aa76df8dc4209d325131d8219358c0aaaebab0bf6"
dependencies = [
"bytes",
"once_cell",
"protobuf-support",
"thiserror",
]
[[package]]
name = "protobuf-support"
version = "3.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0766e3675a627c327e4b3964582594b0e8741305d628a98a5de75a1d15f99b9"
dependencies = [
"thiserror",
]
[[package]]
name = "quote"
version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d"
dependencies = [
"proc-macro2",
]
[[package]]
name = "steam-vent-proto-common"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e0bdee4d988ea702f32e5f098f9cded0e0999b04230de3c37d54bf94b3f6fb86"
dependencies = [
"protobuf",
]
[[package]]
name = "steam-vent-proto-csgo"
version = "0.5.0"
dependencies = [
"steam-vent-proto-common",
]
[[package]]
name = "syn"
version = "2.0.106"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "thiserror"
version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "unicode-ident"
version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"

12
Cargo.toml Normal file
View file

@ -0,0 +1,12 @@
[package]
name = "steam-vent-proto-csgo"
version = "0.5.0"
edition = "2021"
rust-version = "1.75.0"
description = "Protobuf structs used by the Steam client protocol"
authors = ["Robin Appelman <robin@icewind.nl>"]
license = "MIT"
repository = "https://codeberg.org/steam-vent/proto-csgo"
[dependencies]
steam-vent-proto-common = "0.5.0"

3
README.md Normal file
View file

@ -0,0 +1,3 @@
# steam-vent-proto-csgo
steam-vent protobufs for csgo specific messages

134
flake.lock generated Normal file
View file

@ -0,0 +1,134 @@
{
"nodes": {
"crane": {
"locked": {
"lastModified": 1756705356,
"narHash": "sha256-dpBFe8SqYKr7W6KN5QOVCr8N76SBKwTslzjw+4BVBVs=",
"owner": "ipetkov",
"repo": "crane",
"rev": "305707bbc27d83aa1039378e91d7dd816f4cac10",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"flakelight": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1756730985,
"narHash": "sha256-Uv5lLUZfFxQv6RHi1TqLTKso0j0eUVMQQwud29LTV/s=",
"owner": "nix-community",
"repo": "flakelight",
"rev": "950121d809b75c32e73684b32ccba8d4e8a67703",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "flakelight",
"type": "github"
}
},
"mill-scale": {
"inputs": {
"crane": "crane",
"flakelight": [
"flakelight"
],
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1757104647,
"narHash": "sha256-Xd/Y6fmBPvmsluVFSlwKvCBErNWAE+etJ5rOmDA6rPo=",
"ref": "refs/heads/main",
"rev": "15c993e6bd77956f4e0b236bb1bef4010d6594eb",
"revCount": 61,
"type": "git",
"url": "https://codeberg.org/icewind/mill-scale.git"
},
"original": {
"type": "git",
"url": "https://codeberg.org/icewind/mill-scale.git"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1757020766,
"narHash": "sha256-PLoSjHRa2bUbi1x9HoXgTx2AiuzNXs54c8omhadyvp0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fe83bbdde2ccdc2cb9573aa846abe8363f79a97a",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-25.05",
"type": "indirect"
}
},
"root": {
"inputs": {
"flakelight": "flakelight",
"mill-scale": "mill-scale",
"nixpkgs": "nixpkgs",
"steam-vent": "steam-vent"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"mill-scale",
"flakelight",
"nixpkgs"
]
},
"locked": {
"lastModified": 1757039615,
"narHash": "sha256-qm53+EUFfzyF8F0MEscHGqf9tx462GV3/zUZrn9wiQU=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "4486e04adbb4b0e39f593767f2c36e2211003d01",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"steam-vent": {
"inputs": {
"flakelight": [
"flakelight"
],
"mill-scale": [
"mill-scale"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1757192559,
"narHash": "sha256-6hkW2wRJ74uCIHlA7wXsSyiGVnZVYUsQJJvZ2HmH6iQ=",
"ref": "refs/heads/main",
"rev": "c03aa0f82cd4a4bccd55de13696f8fd9bffaf2bb",
"revCount": 210,
"type": "git",
"url": "https://codeberg.org/steam-vent/steam-vent.git"
},
"original": {
"type": "git",
"url": "https://codeberg.org/steam-vent/steam-vent.git"
}
}
},
"root": "root",
"version": 7
}

34
flake.nix Normal file
View file

@ -0,0 +1,34 @@
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-25.05";
flakelight = {
url = "github:nix-community/flakelight";
inputs.nixpkgs.follows = "nixpkgs";
};
mill-scale = {
url = "git+https://codeberg.org/icewind/mill-scale.git";
inputs.flakelight.follows = "flakelight";
};
steam-vent = {
url = "git+https://codeberg.org/steam-vent/steam-vent.git";
inputs.nixpkgs.follows = "nixpkgs";
inputs.flakelight.follows = "flakelight";
inputs.mill-scale.follows = "mill-scale";
};
};
outputs = {
mill-scale,
steam-vent,
...
}:
mill-scale ./. {
packages = {
proto-builder = {craneLib, ...}:
craneLib.buildPackage {
src = craneLib.cleanCargoSource (steam-vent + "/protobuf/build");
doCheck = false;
strictDeps = true;
};
};
};
}

View file

@ -0,0 +1,571 @@
import "steammessages.proto";
enum EGCBaseMsg {
k_EMsgGCSystemMessage = 4001;
k_EMsgGCReplicateConVars = 4002;
k_EMsgGCConVarUpdated = 4003;
k_EMsgGCInQueue = 4008;
k_EMsgGCInviteToParty = 4501;
k_EMsgGCInvitationCreated = 4502;
k_EMsgGCPartyInviteResponse = 4503;
k_EMsgGCKickFromParty = 4504;
k_EMsgGCLeaveParty = 4505;
k_EMsgGCServerAvailable = 4506;
k_EMsgGCClientConnectToServer = 4507;
k_EMsgGCGameServerInfo = 4508;
k_EMsgGCError = 4509;
k_EMsgGCReplay_UploadedToYouTube = 4510;
k_EMsgGCLANServerAvailable = 4511;
}
enum EGCBaseProtoObjectTypes {
k_EProtoObjectPartyInvite = 1001;
k_EProtoObjectLobbyInvite = 1002;
}
enum GC_BannedWordType {
GC_BANNED_WORD_DISABLE_WORD = 0;
GC_BANNED_WORD_ENABLE_WORD = 1;
}
message CGCStorePurchaseInit_LineItem {
optional uint32 item_def_id = 1;
optional uint32 quantity = 2;
optional uint32 cost_in_local_currency = 3;
optional uint32 purchase_type = 4;
optional uint64 supplemental_data = 5;
}
message CMsgGCStorePurchaseInit {
optional string country = 1;
optional int32 language = 2;
optional int32 currency = 3;
repeated .CGCStorePurchaseInit_LineItem line_items = 4;
}
message CMsgGCStorePurchaseInitResponse {
optional int32 result = 1;
optional uint64 txn_id = 2;
optional string url = 3;
repeated uint64 item_ids = 4;
}
message CSOPartyInvite {
optional uint64 group_id = 1 [(key_field) = true];
optional fixed64 sender_id = 2;
optional string sender_name = 3;
}
message CSOLobbyInvite {
optional uint64 group_id = 1 [(key_field) = true];
optional fixed64 sender_id = 2;
optional string sender_name = 3;
}
message CMsgSystemBroadcast {
optional string message = 1;
}
message CMsgInviteToParty {
optional fixed64 steam_id = 1;
optional uint32 client_version = 2;
optional uint32 team_invite = 3;
}
message CMsgInvitationCreated {
optional uint64 group_id = 1;
optional fixed64 steam_id = 2;
}
message CMsgPartyInviteResponse {
optional uint64 party_id = 1;
optional bool accept = 2;
optional uint32 client_version = 3;
optional uint32 team_invite = 4;
}
message CMsgKickFromParty {
optional fixed64 steam_id = 1;
}
message CMsgLeaveParty {
}
message CMsgServerAvailable {
}
message CMsgLANServerAvailable {
optional fixed64 lobby_id = 1;
}
message CSOEconGameAccountClient {
optional uint32 additional_backpack_slots = 1 [default = 0];
optional fixed32 bonus_xp_timestamp_refresh = 12;
optional uint32 bonus_xp_usedflags = 13;
optional uint32 elevated_state = 14;
optional uint32 elevated_timestamp = 15;
}
message CSOItemCriteriaCondition {
optional int32 op = 1;
optional string field = 2;
optional bool required = 3;
optional float float_value = 4;
optional string string_value = 5;
}
message CSOItemCriteria {
optional uint32 item_level = 1;
optional int32 item_quality = 2;
optional bool item_level_set = 3;
optional bool item_quality_set = 4;
optional uint32 initial_inventory = 5;
optional uint32 initial_quantity = 6;
optional bool ignore_enabled_flag = 8;
repeated .CSOItemCriteriaCondition conditions = 9;
optional int32 item_rarity = 10;
optional bool item_rarity_set = 11;
optional bool recent_only = 12;
}
message CSOItemRecipe {
optional uint32 def_index = 1;
optional string name = 2;
optional string n_a = 3;
optional string desc_inputs = 4;
optional string desc_outputs = 5;
optional string di_a = 6;
optional string di_b = 7;
optional string di_c = 8;
optional string do_a = 9;
optional string do_b = 10;
optional string do_c = 11;
optional bool requires_all_same_class = 12;
optional bool requires_all_same_slot = 13;
optional int32 class_usage_for_output = 14;
optional int32 slot_usage_for_output = 15;
optional int32 set_for_output = 16;
repeated .CSOItemCriteria input_items_criteria = 20;
repeated .CSOItemCriteria output_items_criteria = 21;
repeated uint32 input_item_dupe_counts = 22;
}
message CMsgDevNewItemRequest {
optional fixed64 receiver = 1;
optional .CSOItemCriteria criteria = 2;
}
message CMsgIncrementKillCountAttribute {
optional fixed32 killer_account_id = 1;
optional fixed32 victim_account_id = 2;
optional uint64 item_id = 3;
optional uint32 event_type = 4;
optional uint32 amount = 5;
}
message CMsgApplySticker {
optional uint64 sticker_item_id = 1;
optional uint64 item_item_id = 2;
optional uint32 sticker_slot = 3;
optional uint32 baseitem_defidx = 4;
optional float sticker_wear = 5;
optional float sticker_rotation = 6;
optional float sticker_scale = 7;
optional float sticker_offset_x = 8;
optional float sticker_offset_y = 9;
}
message CMsgModifyItemAttribute {
optional uint64 item_id = 1;
optional uint32 attr_defidx = 2;
optional uint32 attr_value = 3;
}
message CMsgApplyStatTrakSwap {
optional uint64 tool_item_id = 1;
optional uint64 item_1_item_id = 2;
optional uint64 item_2_item_id = 3;
}
message CMsgApplyStrangePart {
optional uint64 strange_part_item_id = 1;
optional uint64 item_item_id = 2;
}
message CMsgApplyPennantUpgrade {
optional uint64 upgrade_item_id = 1;
optional uint64 pennant_item_id = 2;
}
message CMsgApplyEggEssence {
optional uint64 essence_item_id = 1;
optional uint64 egg_item_id = 2;
}
message CSOEconItemAttribute {
optional uint32 def_index = 1;
optional uint32 value = 2;
optional bytes value_bytes = 3;
}
message CSOEconItemEquipped {
optional uint32 new_class = 1;
optional uint32 new_slot = 2;
}
message CSOEconItem {
optional uint64 id = 1;
optional uint32 account_id = 2;
optional uint32 inventory = 3;
optional uint32 def_index = 4;
optional uint32 quantity = 5;
optional uint32 level = 6;
optional uint32 quality = 7;
optional uint32 flags = 8 [default = 0];
optional uint32 origin = 9;
optional string custom_name = 10;
optional string custom_desc = 11;
repeated .CSOEconItemAttribute attribute = 12;
optional .CSOEconItem interior_item = 13;
optional bool in_use = 14 [default = false];
optional uint32 style = 15 [default = 0];
optional uint64 original_id = 16 [default = 0];
repeated .CSOEconItemEquipped equipped_state = 18;
optional uint32 rarity = 19;
}
message CMsgAdjustItemEquippedState {
optional uint64 item_id = 1;
optional uint32 new_class = 2;
optional uint32 new_slot = 3;
optional bool swap = 4;
}
message CMsgAdjustItemEquippedStateMulti {
repeated uint64 t_equips = 1;
repeated uint64 ct_equips = 2;
repeated uint64 noteam_equips = 3;
}
message CMsgSortItems {
optional uint32 sort_type = 1;
}
message CSOEconClaimCode {
optional uint32 account_id = 1;
optional uint32 code_type = 2;
optional uint32 time_acquired = 3;
optional string code = 4;
}
message CMsgStoreGetUserData {
optional fixed32 price_sheet_version = 1;
optional int32 currency = 2;
}
message CMsgStoreGetUserDataResponse {
optional int32 result = 1;
optional int32 currency_deprecated = 2;
optional string country_deprecated = 3;
optional fixed32 price_sheet_version = 4;
optional bytes price_sheet = 8;
}
message CMsgUpdateItemSchema {
optional bytes items_game = 1;
optional fixed32 item_schema_version = 2;
optional string items_game_url = 4;
}
message CMsgGCError {
optional string error_text = 1;
}
message CMsgRequestInventoryRefresh {
}
message CMsgConVarValue {
optional string name = 1;
optional string value = 2;
}
message CMsgReplicateConVars {
repeated .CMsgConVarValue convars = 1;
}
message CMsgUseItem {
optional uint64 item_id = 1;
optional fixed64 target_steam_id = 2;
repeated uint32 gift__potential_targets = 3;
optional uint32 duel__class_lock = 4;
optional fixed64 initiator_steam_id = 5;
}
message CMsgReplayUploadedToYouTube {
optional string youtube_url = 1;
optional string youtube_account_name = 2;
optional uint64 session_id = 3;
}
message CMsgConsumableExhausted {
optional int32 item_def_id = 1;
}
message CMsgItemAcknowledged__DEPRECATED {
optional uint32 account_id = 1;
optional uint32 inventory = 2;
optional uint32 def_index = 3;
optional uint32 quality = 4;
optional uint32 rarity = 5;
optional uint32 origin = 6;
optional uint64 item_id = 7;
}
message CMsgSetItemPositions {
message ItemPosition {
optional uint32 legacy_item_id = 1;
optional uint32 position = 2;
optional uint64 item_id = 3;
}
repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
}
message CMsgGCReportAbuse {
optional fixed64 target_steam_id = 1;
optional string description = 4;
optional uint64 gid = 5;
optional uint32 abuse_type = 2;
optional uint32 content_type = 3;
optional fixed32 target_game_server_ip = 6;
optional uint32 target_game_server_port = 7;
}
message CMsgGCReportAbuseResponse {
optional fixed64 target_steam_id = 1;
optional uint32 result = 2;
optional string error_message = 3;
}
message CMsgGCNameItemNotification {
optional fixed64 player_steamid = 1;
optional uint32 item_def_index = 2;
optional string item_name_custom = 3;
}
message CMsgGCClientDisplayNotification {
optional string notification_title_localization_key = 1;
optional string notification_body_localization_key = 2;
repeated string body_substring_keys = 3;
repeated string body_substring_values = 4;
}
message CMsgGCShowItemsPickedUp {
optional fixed64 player_steamid = 1;
}
message CMsgGCIncrementKillCountResponse {
optional uint32 killer_account_id = 1 [(key_field) = true];
optional uint32 num_kills = 2;
optional uint32 item_def = 3;
optional uint32 level_type = 4;
}
message CSOEconItemDropRateBonus {
optional uint32 account_id = 1;
optional fixed32 expiration_date = 2;
optional float bonus = 3;
optional uint32 bonus_count = 4;
optional uint64 item_id = 5;
optional uint32 def_index = 6;
}
message CSOEconItemLeagueViewPass {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 league_id = 2 [(key_field) = true];
optional uint32 admin = 3;
optional uint32 itemindex = 4;
}
message CSOEconItemEventTicket {
optional uint32 account_id = 1;
optional uint32 event_id = 2;
optional uint64 item_id = 3;
}
message CMsgGCItemPreviewItemBoughtNotification {
optional uint32 item_def_index = 1;
}
message CMsgGCStorePurchaseCancel {
optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseCancelResponse {
optional uint32 result = 1;
}
message CMsgGCStorePurchaseFinalize {
optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseFinalizeResponse {
optional uint32 result = 1;
repeated uint64 item_ids = 2;
}
message CMsgGCBannedWordListRequest {
optional uint32 ban_list_group_id = 1;
optional uint32 word_id = 2;
}
message CMsgGCRequestAnnouncements {
}
message CMsgGCRequestAnnouncementsResponse {
optional string announcement_title = 1;
optional string announcement = 2;
optional string nextmatch_title = 3;
optional string nextmatch = 4;
}
message CMsgGCBannedWord {
optional uint32 word_id = 1;
optional .GC_BannedWordType word_type = 2 [default = GC_BANNED_WORD_DISABLE_WORD];
optional string word = 3;
}
message CMsgGCBannedWordListResponse {
optional uint32 ban_list_group_id = 1;
repeated .CMsgGCBannedWord word_list = 2;
}
message CMsgGCToGCBannedWordListBroadcast {
optional .CMsgGCBannedWordListResponse broadcast = 1;
}
message CMsgGCToGCBannedWordListUpdated {
optional uint32 group_id = 1;
}
message CSOEconDefaultEquippedDefinitionInstanceClient {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 item_definition = 2;
optional uint32 class_id = 3 [(key_field) = true];
optional uint32 slot_id = 4 [(key_field) = true];
}
message CMsgGCToGCDirtySDOCache {
optional uint32 sdo_type = 1;
optional uint64 key_uint64 = 2;
}
message CMsgGCToGCDirtyMultipleSDOCache {
optional uint32 sdo_type = 1;
repeated uint64 key_uint64 = 2;
}
message CMsgGCCollectItem {
optional uint64 collection_item_id = 1;
optional uint64 subject_item_id = 2;
}
message CMsgSDONoMemcached {
}
message CMsgGCToGCUpdateSQLKeyValue {
optional string key_name = 1;
}
message CMsgGCToGCIsTrustedServer {
optional fixed64 steam_id = 1;
}
message CMsgGCToGCIsTrustedServerResponse {
optional bool is_trusted = 1;
}
message CMsgGCToGCBroadcastConsoleCommand {
optional string con_command = 1;
}
message CMsgGCServerVersionUpdated {
optional uint32 server_version = 1;
}
message CMsgGCClientVersionUpdated {
optional uint32 client_version = 1;
}
message CMsgGCToGCWebAPIAccountChanged {
}
message CMsgGCToGCRequestPassportItemGrant {
optional fixed64 steam_id = 1;
optional uint32 league_id = 2;
optional int32 reward_flag = 3;
}
message CMsgGameServerInfo {
enum ServerType {
UNSPECIFIED = 0;
GAME = 1;
PROXY = 2;
}
optional fixed32 server_public_ip_addr = 1;
optional fixed32 server_private_ip_addr = 2;
optional uint32 server_port = 3;
optional uint32 server_tv_port = 4;
optional string server_key = 5;
optional bool server_hibernation = 6;
optional .CMsgGameServerInfo.ServerType server_type = 7 [default = UNSPECIFIED];
optional uint32 server_region = 8;
optional float server_loadavg = 9;
optional float server_tv_broadcast_time = 10;
optional float server_game_time = 11;
optional fixed64 server_relay_connected_steam_id = 12;
optional uint32 relay_slots_max = 13;
optional int32 relays_connected = 14;
optional int32 relay_clients_connected = 15;
optional fixed64 relayed_game_server_steam_id = 16;
optional uint32 parent_relay_count = 17;
optional fixed64 tv_secret_code = 18;
}
message CSOEconEquipSlot {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 class_id = 2 [(key_field) = true];
optional uint32 slot_id = 3 [(key_field) = true];
optional uint64 item_id = 4;
optional uint32 item_definition = 5;
}
message CMsgAdjustEquipSlot {
optional uint32 class_id = 1;
optional uint32 slot_id = 2;
optional uint64 item_id = 3;
}
message CMsgAdjustEquipSlots {
repeated .CMsgAdjustEquipSlot slots = 1;
optional uint32 change_num = 2;
}
message CMsgOpenCrate {
optional uint64 tool_item_id = 1;
optional uint64 subject_item_id = 2;
optional bool for_rental = 3;
}
message CSOEconRentalHistory {
optional uint32 account_id = 1 [(key_field) = true];
optional uint64 crate_item_id = 2 [(key_field) = true];
optional uint32 crate_def_index = 3;
optional uint32 issue_date = 4;
optional uint32 expiration_date = 5;
}
message CMsgAcknowledgeRentalExpiration {
optional uint64 crate_item_id = 1;
}

View file

@ -0,0 +1,547 @@
import "steammessages.proto";
enum EGCBaseMsg {
k_EMsgGCSystemMessage = 4001;
k_EMsgGCReplicateConVars = 4002;
k_EMsgGCConVarUpdated = 4003;
k_EMsgGCInQueue = 4008;
k_EMsgGCInviteToParty = 4501;
k_EMsgGCInvitationCreated = 4502;
k_EMsgGCPartyInviteResponse = 4503;
k_EMsgGCKickFromParty = 4504;
k_EMsgGCLeaveParty = 4505;
k_EMsgGCServerAvailable = 4506;
k_EMsgGCClientConnectToServer = 4507;
k_EMsgGCGameServerInfo = 4508;
k_EMsgGCError = 4509;
k_EMsgGCReplay_UploadedToYouTube = 4510;
k_EMsgGCLANServerAvailable = 4511;
}
enum EGCBaseProtoObjectTypes {
k_EProtoObjectPartyInvite = 1001;
k_EProtoObjectLobbyInvite = 1002;
}
enum GC_BannedWordType {
GC_BANNED_WORD_DISABLE_WORD = 0;
GC_BANNED_WORD_ENABLE_WORD = 1;
}
message CGCStorePurchaseInit_LineItem {
optional uint32 item_def_id = 1;
optional uint32 quantity = 2;
optional uint32 cost_in_local_currency = 3;
optional uint32 purchase_type = 4;
}
message CMsgGCStorePurchaseInit {
optional string country = 1;
optional int32 language = 2;
optional int32 currency = 3;
repeated .CGCStorePurchaseInit_LineItem line_items = 4;
}
message CMsgGCStorePurchaseInitResponse {
optional int32 result = 1;
optional uint64 txn_id = 2;
optional string url = 3;
repeated uint64 item_ids = 4;
}
message CSOPartyInvite {
optional uint64 group_id = 1 [(key_field) = true];
optional fixed64 sender_id = 2;
optional string sender_name = 3;
}
message CSOLobbyInvite {
optional uint64 group_id = 1 [(key_field) = true];
optional fixed64 sender_id = 2;
optional string sender_name = 3;
}
message CMsgSystemBroadcast {
optional string message = 1;
}
message CMsgInviteToParty {
optional fixed64 steam_id = 1;
optional uint32 client_version = 2;
optional uint32 team_invite = 3;
}
message CMsgInvitationCreated {
optional uint64 group_id = 1;
optional fixed64 steam_id = 2;
}
message CMsgPartyInviteResponse {
optional uint64 party_id = 1;
optional bool accept = 2;
optional uint32 client_version = 3;
optional uint32 team_invite = 4;
}
message CMsgKickFromParty {
optional fixed64 steam_id = 1;
}
message CMsgLeaveParty {
}
message CMsgServerAvailable {
}
message CMsgLANServerAvailable {
optional fixed64 lobby_id = 1;
}
message CSOEconGameAccountClient {
optional uint32 additional_backpack_slots = 1 [default = 0];
optional fixed32 bonus_xp_timestamp_refresh = 12;
optional uint32 bonus_xp_usedflags = 13;
optional uint32 elevated_state = 14;
optional uint32 elevated_timestamp = 15;
}
message CSOItemCriteriaCondition {
optional int32 op = 1;
optional string field = 2;
optional bool required = 3;
optional float float_value = 4;
optional string string_value = 5;
}
message CSOItemCriteria {
optional uint32 item_level = 1;
optional int32 item_quality = 2;
optional bool item_level_set = 3;
optional bool item_quality_set = 4;
optional uint32 initial_inventory = 5;
optional uint32 initial_quantity = 6;
optional bool ignore_enabled_flag = 8;
repeated .CSOItemCriteriaCondition conditions = 9;
optional int32 item_rarity = 10;
optional bool item_rarity_set = 11;
optional bool recent_only = 12;
}
message CSOItemRecipe {
optional uint32 def_index = 1;
optional string name = 2;
optional string n_a = 3;
optional string desc_inputs = 4;
optional string desc_outputs = 5;
optional string di_a = 6;
optional string di_b = 7;
optional string di_c = 8;
optional string do_a = 9;
optional string do_b = 10;
optional string do_c = 11;
optional bool requires_all_same_class = 12;
optional bool requires_all_same_slot = 13;
optional int32 class_usage_for_output = 14;
optional int32 slot_usage_for_output = 15;
optional int32 set_for_output = 16;
repeated .CSOItemCriteria input_items_criteria = 20;
repeated .CSOItemCriteria output_items_criteria = 21;
repeated uint32 input_item_dupe_counts = 22;
}
message CMsgDevNewItemRequest {
optional fixed64 receiver = 1;
optional .CSOItemCriteria criteria = 2;
}
message CMsgIncrementKillCountAttribute {
optional fixed32 killer_account_id = 1;
optional fixed32 victim_account_id = 2;
optional uint64 item_id = 3;
optional uint32 event_type = 4;
optional uint32 amount = 5;
}
message CMsgApplySticker {
optional uint64 sticker_item_id = 1;
optional uint64 item_item_id = 2;
optional uint32 sticker_slot = 3;
optional uint32 baseitem_defidx = 4;
optional float sticker_wear = 5;
}
message CMsgModifyItemAttribute {
optional uint64 item_id = 1;
optional uint32 attr_defidx = 2;
optional uint32 attr_value = 3;
}
message CMsgApplyStatTrakSwap {
optional uint64 tool_item_id = 1;
optional uint64 item_1_item_id = 2;
optional uint64 item_2_item_id = 3;
}
message CMsgApplyStrangePart {
optional uint64 strange_part_item_id = 1;
optional uint64 item_item_id = 2;
}
message CMsgApplyPennantUpgrade {
optional uint64 upgrade_item_id = 1;
optional uint64 pennant_item_id = 2;
}
message CMsgApplyEggEssence {
optional uint64 essence_item_id = 1;
optional uint64 egg_item_id = 2;
}
message CSOEconItemAttribute {
optional uint32 def_index = 1;
optional uint32 value = 2;
optional bytes value_bytes = 3;
}
message CSOEconItemEquipped {
optional uint32 new_class = 1;
optional uint32 new_slot = 2;
}
message CSOEconItem {
optional uint64 id = 1;
optional uint32 account_id = 2;
optional uint32 inventory = 3;
optional uint32 def_index = 4;
optional uint32 quantity = 5;
optional uint32 level = 6;
optional uint32 quality = 7;
optional uint32 flags = 8 [default = 0];
optional uint32 origin = 9;
optional string custom_name = 10;
optional string custom_desc = 11;
repeated .CSOEconItemAttribute attribute = 12;
optional .CSOEconItem interior_item = 13;
optional bool in_use = 14 [default = false];
optional uint32 style = 15 [default = 0];
optional uint64 original_id = 16 [default = 0];
repeated .CSOEconItemEquipped equipped_state = 18;
optional uint32 rarity = 19;
}
message CMsgAdjustItemEquippedState {
optional uint64 item_id = 1;
optional uint32 new_class = 2;
optional uint32 new_slot = 3;
optional bool swap = 4;
}
message CMsgAdjustItemEquippedStateMulti {
repeated uint64 t_equips = 1;
repeated uint64 ct_equips = 2;
repeated uint64 noteam_equips = 3;
}
message CMsgSortItems {
optional uint32 sort_type = 1;
}
message CSOEconClaimCode {
optional uint32 account_id = 1;
optional uint32 code_type = 2;
optional uint32 time_acquired = 3;
optional string code = 4;
}
message CMsgStoreGetUserData {
optional fixed32 price_sheet_version = 1;
optional int32 currency = 2;
}
message CMsgStoreGetUserDataResponse {
optional int32 result = 1;
optional int32 currency_deprecated = 2;
optional string country_deprecated = 3;
optional fixed32 price_sheet_version = 4;
optional bytes price_sheet = 8;
}
message CMsgUpdateItemSchema {
optional bytes items_game = 1;
optional fixed32 item_schema_version = 2;
optional string items_game_url = 4;
}
message CMsgGCError {
optional string error_text = 1;
}
message CMsgRequestInventoryRefresh {
}
message CMsgConVarValue {
optional string name = 1;
optional string value = 2;
}
message CMsgReplicateConVars {
repeated .CMsgConVarValue convars = 1;
}
message CMsgUseItem {
optional uint64 item_id = 1;
optional fixed64 target_steam_id = 2;
repeated uint32 gift__potential_targets = 3;
optional uint32 duel__class_lock = 4;
optional fixed64 initiator_steam_id = 5;
}
message CMsgReplayUploadedToYouTube {
optional string youtube_url = 1;
optional string youtube_account_name = 2;
optional uint64 session_id = 3;
}
message CMsgConsumableExhausted {
optional int32 item_def_id = 1;
}
message CMsgItemAcknowledged__DEPRECATED {
optional uint32 account_id = 1;
optional uint32 inventory = 2;
optional uint32 def_index = 3;
optional uint32 quality = 4;
optional uint32 rarity = 5;
optional uint32 origin = 6;
optional uint64 item_id = 7;
}
message CMsgSetItemPositions {
message ItemPosition {
optional uint32 legacy_item_id = 1;
optional uint32 position = 2;
optional uint64 item_id = 3;
}
repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
}
message CMsgGCReportAbuse {
optional fixed64 target_steam_id = 1;
optional string description = 4;
optional uint64 gid = 5;
optional uint32 abuse_type = 2;
optional uint32 content_type = 3;
optional fixed32 target_game_server_ip = 6;
optional uint32 target_game_server_port = 7;
}
message CMsgGCReportAbuseResponse {
optional fixed64 target_steam_id = 1;
optional uint32 result = 2;
optional string error_message = 3;
}
message CMsgGCNameItemNotification {
optional fixed64 player_steamid = 1;
optional uint32 item_def_index = 2;
optional string item_name_custom = 3;
}
message CMsgGCClientDisplayNotification {
optional string notification_title_localization_key = 1;
optional string notification_body_localization_key = 2;
repeated string body_substring_keys = 3;
repeated string body_substring_values = 4;
}
message CMsgGCShowItemsPickedUp {
optional fixed64 player_steamid = 1;
}
message CMsgGCIncrementKillCountResponse {
optional uint32 killer_account_id = 1 [(key_field) = true];
optional uint32 num_kills = 2;
optional uint32 item_def = 3;
optional uint32 level_type = 4;
}
message CSOEconItemDropRateBonus {
optional uint32 account_id = 1;
optional fixed32 expiration_date = 2;
optional float bonus = 3;
optional uint32 bonus_count = 4;
optional uint64 item_id = 5;
optional uint32 def_index = 6;
}
message CSOEconItemLeagueViewPass {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 league_id = 2 [(key_field) = true];
optional uint32 admin = 3;
optional uint32 itemindex = 4;
}
message CSOEconItemEventTicket {
optional uint32 account_id = 1;
optional uint32 event_id = 2;
optional uint64 item_id = 3;
}
message CMsgGCItemPreviewItemBoughtNotification {
optional uint32 item_def_index = 1;
}
message CMsgGCStorePurchaseCancel {
optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseCancelResponse {
optional uint32 result = 1;
}
message CMsgGCStorePurchaseFinalize {
optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseFinalizeResponse {
optional uint32 result = 1;
repeated uint64 item_ids = 2;
}
message CMsgGCBannedWordListRequest {
optional uint32 ban_list_group_id = 1;
optional uint32 word_id = 2;
}
message CMsgGCRequestAnnouncements {
}
message CMsgGCRequestAnnouncementsResponse {
optional string announcement_title = 1;
optional string announcement = 2;
optional string nextmatch_title = 3;
optional string nextmatch = 4;
}
message CMsgGCBannedWord {
optional uint32 word_id = 1;
optional .GC_BannedWordType word_type = 2 [default = GC_BANNED_WORD_DISABLE_WORD];
optional string word = 3;
}
message CMsgGCBannedWordListResponse {
optional uint32 ban_list_group_id = 1;
repeated .CMsgGCBannedWord word_list = 2;
}
message CMsgGCToGCBannedWordListBroadcast {
optional .CMsgGCBannedWordListResponse broadcast = 1;
}
message CMsgGCToGCBannedWordListUpdated {
optional uint32 group_id = 1;
}
message CSOEconDefaultEquippedDefinitionInstanceClient {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 item_definition = 2;
optional uint32 class_id = 3 [(key_field) = true];
optional uint32 slot_id = 4 [(key_field) = true];
}
message CMsgGCToGCDirtySDOCache {
optional uint32 sdo_type = 1;
optional uint64 key_uint64 = 2;
}
message CMsgGCToGCDirtyMultipleSDOCache {
optional uint32 sdo_type = 1;
repeated uint64 key_uint64 = 2;
}
message CMsgGCCollectItem {
optional uint64 collection_item_id = 1;
optional uint64 subject_item_id = 2;
}
message CMsgSDONoMemcached {
}
message CMsgGCToGCUpdateSQLKeyValue {
optional string key_name = 1;
}
message CMsgGCToGCIsTrustedServer {
optional fixed64 steam_id = 1;
}
message CMsgGCToGCIsTrustedServerResponse {
optional bool is_trusted = 1;
}
message CMsgGCToGCBroadcastConsoleCommand {
optional string con_command = 1;
}
message CMsgGCServerVersionUpdated {
optional uint32 server_version = 1;
}
message CMsgGCClientVersionUpdated {
optional uint32 client_version = 1;
}
message CMsgGCToGCWebAPIAccountChanged {
}
message CMsgGCToGCRequestPassportItemGrant {
optional fixed64 steam_id = 1;
optional uint32 league_id = 2;
optional int32 reward_flag = 3;
}
message CMsgGameServerInfo {
enum ServerType {
UNSPECIFIED = 0;
GAME = 1;
PROXY = 2;
}
optional fixed32 server_public_ip_addr = 1;
optional fixed32 server_private_ip_addr = 2;
optional uint32 server_port = 3;
optional uint32 server_tv_port = 4;
optional string server_key = 5;
optional bool server_hibernation = 6;
optional .CMsgGameServerInfo.ServerType server_type = 7 [default = UNSPECIFIED];
optional uint32 server_region = 8;
optional float server_loadavg = 9;
optional float server_tv_broadcast_time = 10;
optional float server_game_time = 11;
optional fixed64 server_relay_connected_steam_id = 12;
optional uint32 relay_slots_max = 13;
optional int32 relays_connected = 14;
optional int32 relay_clients_connected = 15;
optional fixed64 relayed_game_server_steam_id = 16;
optional uint32 parent_relay_count = 17;
optional fixed64 tv_secret_code = 18;
}
message CSOEconEquipSlot {
optional uint32 account_id = 1 [(key_field) = true];
optional uint32 class_id = 2 [(key_field) = true];
optional uint32 slot_id = 3 [(key_field) = true];
optional uint64 item_id = 4;
optional uint32 item_definition = 5;
}
message CMsgAdjustEquipSlot {
optional uint32 class_id = 1;
optional uint32 slot_id = 2;
optional uint64 item_id = 3;
}
message CMsgAdjustEquipSlots {
repeated .CMsgAdjustEquipSlot slots = 1;
}

View file

@ -0,0 +1,55 @@
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;
}

View file

@ -0,0 +1,53 @@
enum EBaseClientMessages {
CM_CustomGameEvent = 280;
CM_CustomGameEventBounce = 281;
CM_ClientUIEvent = 282;
CM_DevPaletteVisibilityChanged = 283;
CM_WorldUIControllerHasPanelChanged = 284;
CM_RotateAnchor = 285;
CM_ListenForResponseFound = 286;
CM_MAX_BASE = 300;
}
enum EClientUIEvent {
EClientUIEvent_Invalid = 0;
EClientUIEvent_DialogFinished = 1;
EClientUIEvent_FireOutput = 2;
}
message CClientMsg_CustomGameEvent {
optional string event_name = 1;
optional bytes data = 2;
}
message CClientMsg_CustomGameEventBounce {
optional string event_name = 1;
optional bytes data = 2;
optional int32 player_slot = 3 [default = -1];
}
message CClientMsg_ClientUIEvent {
optional .EClientUIEvent event = 1 [default = EClientUIEvent_Invalid];
optional uint32 ent_ehandle = 2;
optional uint32 client_ehandle = 3;
optional string data1 = 4;
optional string data2 = 5;
}
message CClientMsg_DevPaletteVisibilityChangedEvent {
optional bool visible = 1;
}
message CClientMsg_WorldUIControllerHasPanelChangedEvent {
optional bool has_panel = 1;
optional uint32 client_ehandle = 2;
optional uint32 literal_hand_type = 3;
}
message CClientMsg_RotateAnchor {
optional float angle = 1;
}
message CClientMsg_ListenForResponseFound {
optional int32 player_slot = 1 [default = -1];
}

View file

@ -0,0 +1,17 @@
import "netmessages.proto";
message C2S_CONNECT_Message {
optional uint32 host_version = 1;
optional uint32 auth_protocol = 2;
optional uint32 challenge_number = 3;
optional fixed64 reservation_cookie = 4;
optional bool low_violence = 5;
optional bytes encrypted_password = 6;
repeated .CCLCMsg_SplitPlayerConnect splitplayers = 7;
optional bytes auth_steam = 8;
optional string challenge_context = 9;
}
message C2S_CONNECTION_Message {
optional string addon_name = 1;
}

View file

@ -0,0 +1,35 @@
import "networkbasetypes.proto";
enum ECsgoGameEvents {
GE_PlayerAnimEventId = 450;
GE_RadioIconEventId = 451;
GE_FireBulletsId = 452;
}
message CMsgTEPlayerAnimEvent {
optional fixed32 player = 1 [default = 16777215];
optional uint32 event = 2;
optional int32 data = 3;
}
message CMsgTERadioIcon {
optional fixed32 player = 1 [default = 16777215];
}
message CMsgTEFireBullets {
optional .CMsgVector origin = 1;
optional .CMsgQAngle angles = 2;
optional uint32 weapon_id = 3 [default = 16777215];
optional uint32 mode = 4;
optional uint32 seed = 5;
optional fixed32 player = 6 [default = 16777215];
optional float inaccuracy = 7;
optional float recoil_index = 8;
optional float spread = 9;
optional int32 sound_type = 10;
optional uint32 item_def_index = 11;
optional fixed32 sound_dsp_effect = 12;
optional .CMsgVector ent_origin = 13;
optional uint32 num_bullets_remaining = 14;
optional uint32 attack_type = 15;
}

35
protos/cs_usercmd.proto Normal file
View file

@ -0,0 +1,35 @@
import "networkbasetypes.proto";
import "usercmd.proto";
message CSGOInterpolationInfoPB {
optional int32 src_tick = 1 [default = -1];
optional int32 dst_tick = 2 [default = -1];
optional float frac = 3 [default = 0];
}
message CSGOInputHistoryEntryPB {
optional .CMsgQAngle view_angles = 2;
optional int32 render_tick_count = 4;
optional float render_tick_fraction = 5;
optional int32 player_tick_count = 6;
optional float player_tick_fraction = 7;
optional .CSGOInterpolationInfoPB cl_interp = 12;
optional .CSGOInterpolationInfoPB sv_interp0 = 13;
optional .CSGOInterpolationInfoPB sv_interp1 = 14;
optional .CSGOInterpolationInfoPB player_interp = 15;
optional int32 frame_number = 20;
optional int32 target_ent_index = 8 [default = -1];
optional .CMsgVector shoot_position = 3;
optional .CMsgVector target_head_pos_check = 9;
optional .CMsgVector target_abs_pos_check = 10;
optional .CMsgQAngle target_abs_ang_check = 11;
}
message CSGOUserCmdPB {
optional .CBaseUserCmdPB base = 1;
repeated .CSGOInputHistoryEntryPB input_history = 2;
optional int32 attack1_start_history_index = 6 [default = -1];
optional int32 attack2_start_history_index = 7 [default = -1];
optional int32 attack3_start_history_index = 8 [default = -1];
optional bool left_hand_desired = 9 [default = false];
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,603 @@
import "networkbasetypes.proto";
import "cstrike15_gcmessages.proto";
enum ECstrike15UserMessages {
CS_UM_VGUIMenu = 301;
CS_UM_Geiger = 302;
CS_UM_Train = 303;
CS_UM_HudText = 304;
CS_UM_SayText = 305;
CS_UM_SayText2 = 306;
CS_UM_TextMsg = 307;
CS_UM_HudMsg = 308;
CS_UM_ResetHud = 309;
CS_UM_GameTitle = 310;
CS_UM_Shake = 312;
CS_UM_Fade = 313;
CS_UM_Rumble = 314;
CS_UM_CloseCaption = 315;
CS_UM_CloseCaptionDirect = 316;
CS_UM_SendAudio = 317;
CS_UM_RawAudio = 318;
CS_UM_VoiceMask = 319;
CS_UM_RequestState = 320;
CS_UM_Damage = 321;
CS_UM_RadioText = 322;
CS_UM_HintText = 323;
CS_UM_KeyHintText = 324;
CS_UM_ProcessSpottedEntityUpdate = 325;
CS_UM_ReloadEffect = 326;
CS_UM_AdjustMoney = 327;
CS_UM_UpdateTeamMoney = 328;
CS_UM_StopSpectatorMode = 329;
CS_UM_KillCam = 330;
CS_UM_DesiredTimescale = 331;
CS_UM_CurrentTimescale = 332;
CS_UM_AchievementEvent = 333;
CS_UM_MatchEndConditions = 334;
CS_UM_DisconnectToLobby = 335;
CS_UM_PlayerStatsUpdate = 336;
CS_UM_WarmupHasEnded = 338;
CS_UM_ClientInfo = 339;
CS_UM_XRankGet = 340;
CS_UM_XRankUpd = 341;
CS_UM_CallVoteFailed = 345;
CS_UM_VoteStart = 346;
CS_UM_VotePass = 347;
CS_UM_VoteFailed = 348;
CS_UM_VoteSetup = 349;
CS_UM_ServerRankRevealAll = 350;
CS_UM_SendLastKillerDamageToClient = 351;
CS_UM_ServerRankUpdate = 352;
CS_UM_ItemPickup = 353;
CS_UM_ShowMenu = 354;
CS_UM_BarTime = 355;
CS_UM_AmmoDenied = 356;
CS_UM_MarkAchievement = 357;
CS_UM_MatchStatsUpdate = 358;
CS_UM_ItemDrop = 359;
CS_UM_GlowPropTurnOff = 360;
CS_UM_SendPlayerItemDrops = 361;
CS_UM_RoundBackupFilenames = 362;
CS_UM_SendPlayerItemFound = 363;
CS_UM_ReportHit = 364;
CS_UM_XpUpdate = 365;
CS_UM_QuestProgress = 366;
CS_UM_ScoreLeaderboardData = 367;
CS_UM_PlayerDecalDigitalSignature = 368;
CS_UM_WeaponSound = 369;
CS_UM_UpdateScreenHealthBar = 370;
CS_UM_EntityOutlineHighlight = 371;
CS_UM_SSUI = 372;
CS_UM_SurvivalStats = 373;
CS_UM_DisconnectToLobby2 = 374;
CS_UM_EndOfMatchAllPlayersData = 375;
CS_UM_PostRoundDamageReport = 376;
CS_UM_RoundEndReportData = 379;
CS_UM_CurrentRoundOdds = 380;
CS_UM_DeepStats = 381;
CS_UM_ShootInfo = 383;
CS_UM_SnapTapStats = 384;
}
enum ECSUsrMsg_DisconnectToLobby_Action {
k_ECSUsrMsg_DisconnectToLobby_Action_Default = 0;
k_ECSUsrMsg_DisconnectToLobby_Action_GoQueue = 1;
}
message CCSUsrMsg_VGUIMenu {
message Keys {
optional string name = 1;
optional string value = 2;
}
optional string name = 1;
optional bool show = 2;
repeated .CCSUsrMsg_VGUIMenu.Keys keys = 3;
}
message CCSUsrMsg_Geiger {
optional int32 range = 1;
}
message CCSUsrMsg_Train {
optional int32 train = 1;
}
message CCSUsrMsg_HudText {
optional string text = 1;
}
message CCSUsrMsg_HudMsg {
optional int32 channel = 1;
optional .CMsgVector2D pos = 2;
optional .CMsgRGBA clr1 = 3;
optional .CMsgRGBA clr2 = 4;
optional int32 effect = 5;
optional float fade_in_time = 6;
optional float fade_out_time = 7;
optional float hold_time = 9;
optional float fx_time = 10;
optional string text = 11;
}
message CCSUsrMsg_Shake {
optional int32 command = 1;
optional float local_amplitude = 2;
optional float frequency = 3;
optional float duration = 4;
}
message CCSUsrMsg_Fade {
optional int32 duration = 1;
optional int32 hold_time = 2;
optional int32 flags = 3;
optional .CMsgRGBA clr = 4;
}
message CCSUsrMsg_Rumble {
optional int32 index = 1;
optional int32 data = 2;
optional int32 flags = 3;
}
message CCSUsrMsg_CloseCaption {
optional uint32 hash = 1;
optional int32 duration = 2;
optional bool from_player = 3;
optional string cctoken = 4;
}
message CCSUsrMsg_CloseCaptionDirect {
optional uint32 hash = 1;
optional int32 duration = 2;
optional bool from_player = 3;
}
message CCSUsrMsg_SendAudio {
optional string radio_sound = 1;
}
message CCSUsrMsg_RawAudio {
optional int32 pitch = 1;
optional int32 entidx = 2 [default = -1];
optional float duration = 3;
optional string voice_filename = 4;
}
message CCSUsrMsg_VoiceMask {
message PlayerMask {
optional int32 game_rules_mask = 1;
optional int32 ban_masks = 2;
}
repeated .CCSUsrMsg_VoiceMask.PlayerMask player_masks = 1;
optional bool player_mod_enable = 2;
}
message CCSUsrMsg_Damage {
optional int32 amount = 1;
optional .CMsgVector inflictor_world_pos = 2;
optional int32 victim_entindex = 3 [default = -1];
}
message CCSUsrMsg_RadioText {
optional int32 msg_dst = 1;
optional int32 client = 2 [default = -1];
optional string msg_name = 3;
repeated string params = 4;
}
message CCSUsrMsg_HintText {
optional string message = 1;
}
message CCSUsrMsg_KeyHintText {
repeated string messages = 1;
}
message CCSUsrMsg_ProcessSpottedEntityUpdate {
message SpottedEntityUpdate {
optional int32 entity_idx = 1 [default = -1];
optional int32 class_id = 2;
optional int32 origin_x = 3;
optional int32 origin_y = 4;
optional int32 origin_z = 5;
optional int32 angle_y = 6;
optional bool defuser = 7;
optional bool player_has_defuser = 8;
optional bool player_has_c4 = 9;
}
optional bool new_update = 1;
repeated .CCSUsrMsg_ProcessSpottedEntityUpdate.SpottedEntityUpdate entity_updates = 2;
}
message CCSUsrMsg_SendPlayerItemDrops {
repeated .CEconItemPreviewDataBlock entity_updates = 1;
}
message CCSUsrMsg_SendPlayerItemFound {
optional .CEconItemPreviewDataBlock iteminfo = 1;
optional int32 playerslot = 2 [default = -1];
}
message CCSUsrMsg_ReloadEffect {
optional int32 entidx = 1 [default = -1];
optional int32 actanim = 2;
optional float origin_x = 3;
optional float origin_y = 4;
optional float origin_z = 5;
}
message CCSUsrMsg_WeaponSound {
optional int32 entidx = 1 [default = -1];
optional float origin_x = 2;
optional float origin_y = 3;
optional float origin_z = 4;
optional string sound = 5;
optional float game_timestamp = 6;
optional fixed32 source_soundscapeid = 7;
}
message CCSUsrMsg_UpdateScreenHealthBar {
optional int32 entidx = 1 [default = -1];
optional float healthratio_old = 2;
optional float healthratio_new = 3;
optional int32 style = 4;
}
message CCSUsrMsg_EntityOutlineHighlight {
optional int32 entidx = 1 [default = -1];
optional bool removehighlight = 2;
}
message CCSUsrMsg_AdjustMoney {
optional int32 amount = 1;
}
message CCSUsrMsg_ReportHit {
optional float pos_x = 1;
optional float pos_y = 2;
optional float timestamp = 4;
optional float pos_z = 3;
}
message CCSUsrMsg_KillCam {
optional int32 obs_mode = 1;
optional int32 first_target = 2 [default = -1];
optional int32 second_target = 3 [default = -1];
}
message CCSUsrMsg_DesiredTimescale {
optional float desired_timescale = 1;
optional float duration_realtime_sec = 2;
optional int32 interpolator_type = 3;
optional float start_blend_time = 4;
}
message CCSUsrMsg_CurrentTimescale {
optional float cur_timescale = 1;
}
message CCSUsrMsg_AchievementEvent {
optional int32 achievement = 1;
optional int32 count = 2;
optional int32 user_id = 3;
}
message CCSUsrMsg_MatchEndConditions {
optional int32 fraglimit = 1;
optional int32 mp_maxrounds = 2;
optional int32 mp_winlimit = 3;
optional float mp_timelimit = 4;
}
message CCSUsrMsg_PlayerStatsUpdate {
message Stat {
optional int32 idx = 1;
optional int32 delta = 2;
}
optional int32 version = 1;
repeated .CCSUsrMsg_PlayerStatsUpdate.Stat stats = 4;
optional uint32 ehandle = 5;
optional int32 crc = 6;
}
message CCSUsrMsg_QuestProgress {
optional uint32 quest_id = 1;
optional uint32 normal_points = 2;
optional uint32 bonus_points = 3;
optional bool is_event_quest = 4;
}
message CCSUsrMsg_ScoreLeaderboardData {
optional .ScoreLeaderboardData data = 1;
}
message CCSUsrMsg_PlayerDecalDigitalSignature {
optional .PlayerDecalDigitalSignature data = 1;
}
message CCSUsrMsg_XRankGet {
optional int32 mode_idx = 1;
optional int32 controller = 2;
}
message CCSUsrMsg_XRankUpd {
optional int32 mode_idx = 1;
optional int32 controller = 2;
optional int32 ranking = 3;
}
message CCSUsrMsg_CallVoteFailed {
optional int32 reason = 1;
optional int32 time = 2;
}
message CCSUsrMsg_VoteStart {
optional int32 team = 1;
optional int32 player_slot = 2 [default = -1];
optional int32 vote_type = 3;
optional string disp_str = 4;
optional string details_str = 5;
optional string other_team_str = 6;
optional bool is_yes_no_vote = 7;
optional int32 player_slot_target = 8 [default = -1];
}
message CCSUsrMsg_VotePass {
optional int32 team = 1;
optional int32 vote_type = 2;
optional string disp_str = 3;
optional string details_str = 4;
}
message CCSUsrMsg_VoteFailed {
optional int32 team = 1;
optional int32 reason = 2;
}
message CCSUsrMsg_VoteSetup {
repeated string potential_issues = 1;
}
message CCSUsrMsg_SendLastKillerDamageToClient {
optional int32 num_hits_given = 1;
optional int32 damage_given = 2;
optional int32 num_hits_taken = 3;
optional int32 damage_taken = 4;
optional int32 actual_damage_given = 5;
optional int32 actual_damage_taken = 6;
}
message CCSUsrMsg_ServerRankUpdate {
message RankUpdate {
optional int32 account_id = 1;
optional int32 rank_old = 2;
optional int32 rank_new = 3;
optional int32 num_wins = 4;
optional float rank_change = 5;
optional int32 rank_type_id = 6;
}
repeated .CCSUsrMsg_ServerRankUpdate.RankUpdate rank_update = 1;
}
message CCSUsrMsg_XpUpdate {
optional .CMsgGCCstrike15_v2_GC2ServerNotifyXPRewarded data = 1;
}
message CCSUsrMsg_ItemPickup {
optional string item = 1;
}
message CCSUsrMsg_ShowMenu {
optional int32 bits_valid_slots = 1;
optional int32 display_time = 2;
optional string menu_string = 3;
}
message CCSUsrMsg_BarTime {
optional string time = 1;
}
message CCSUsrMsg_AmmoDenied {
optional int32 ammoidx = 1;
}
message CCSUsrMsg_MarkAchievement {
optional string achievement = 1;
}
message CCSUsrMsg_MatchStatsUpdate {
optional string update = 1;
}
message CCSUsrMsg_ItemDrop {
optional int64 itemid = 1;
optional bool death = 2;
}
message CCSUsrMsg_GlowPropTurnOff {
optional int32 entidx = 1 [default = -1];
}
message CCSUsrMsg_RoundBackupFilenames {
optional int32 count = 1;
optional int32 index = 2;
optional string filename = 3;
optional string nicename = 4;
}
message CCSUsrMsg_SSUI {
optional bool show = 1;
optional float start_time = 2;
optional float end_time = 3;
}
message CCSUsrMsg_SurvivalStats {
message Fact {
optional int32 type = 1;
optional int32 display = 2;
optional int32 value = 3;
optional float interestingness = 4;
}
message Placement {
optional uint64 xuid = 1;
optional int32 teamnumber = 2;
optional int32 placement = 3;
}
message Damage {
optional uint64 xuid = 1;
optional int32 to = 2;
optional int32 to_hits = 3;
optional int32 from = 4;
optional int32 from_hits = 5;
}
optional uint64 xuid = 1;
repeated .CCSUsrMsg_SurvivalStats.Fact facts = 2;
repeated .CCSUsrMsg_SurvivalStats.Placement users = 3;
repeated .CCSUsrMsg_SurvivalStats.Damage damages = 5;
optional int32 ticknumber = 4;
}
message CCSUsrMsg_EndOfMatchAllPlayersData {
message Accolade {
optional int32 eaccolade = 1;
optional float value = 2;
optional int32 position = 3;
}
message PlayerData {
optional int32 slot = 1 [default = -1];
optional uint64 xuid = 2;
optional string name = 3;
optional int32 teamnumber = 4;
optional .CCSUsrMsg_EndOfMatchAllPlayersData.Accolade nomination = 5;
repeated .CEconItemPreviewDataBlock items = 6;
optional int32 playercolor = 7;
optional bool isbot = 8;
}
repeated .CCSUsrMsg_EndOfMatchAllPlayersData.PlayerData allplayerdata = 1;
optional int32 scene = 2;
}
message CCSUsrMsg_RoundEndReportData {
message RerEvent {
message Victim {
optional int32 team_number = 1;
optional int32 playerslot = 2 [default = -1];
optional uint64 xuid = 3;
optional int32 color = 4;
optional bool is_bot = 5;
optional bool is_dead = 6;
}
message Objective {
optional int32 type = 1;
}
message Damage {
optional int32 other_playerslot = 1 [default = -1];
optional uint64 other_xuid = 2;
optional int32 health_removed = 3;
optional int32 num_hits = 4;
optional int32 return_health_removed = 5;
optional int32 return_num_hits = 6;
}
optional float timestamp = 1;
optional int32 terrorist_odds = 2;
optional int32 ct_alive = 3;
optional int32 t_alive = 4;
optional .CCSUsrMsg_RoundEndReportData.RerEvent.Victim victim_data = 5;
optional .CCSUsrMsg_RoundEndReportData.RerEvent.Objective objective_data = 6;
repeated .CCSUsrMsg_RoundEndReportData.RerEvent.Damage all_damage_data = 7;
}
message InitialConditions {
optional int32 ct_equip_value = 1;
optional int32 t_equip_value = 2;
optional int32 terrorist_odds = 3;
}
optional .CCSUsrMsg_RoundEndReportData.InitialConditions init_conditions = 1;
repeated .CCSUsrMsg_RoundEndReportData.RerEvent all_rer_event_data = 2;
}
message CCSUsrMsg_PostRoundDamageReport {
optional uint64 other_xuid = 1;
optional int32 given_kill_type = 2;
optional int32 given_health_removed = 3;
optional int32 given_num_hits = 4;
optional int32 taken_kill_type = 5;
optional int32 taken_health_removed = 6;
optional int32 taken_num_hits = 7;
}
message CCSUsrMsg_CurrentRoundOdds {
optional int32 odds = 1;
}
message CCSUsrMsg_DeepStats {
optional .CMsgGCCStrike15_ClientDeepStats stats = 1;
}
message CCSUsrMsg_ShootInfo {
optional int32 frame_number = 1;
repeated .CMsgTransform hitbox_transforms = 2;
optional .CMsgVector shoot_pos = 3;
optional .CMsgQAngle shoot_dir = 4;
}
message CCSUsrMsg_ResetHud {
optional bool reset = 1;
}
message CCSUsrMsg_GameTitle {
optional int32 dummy = 1;
}
message CCSUsrMsg_RequestState {
optional int32 dummy = 1;
}
message CCSUsrMsg_StopSpectatorMode {
optional int32 dummy = 1;
}
message CCSUsrMsg_DisconnectToLobby {
optional int32 dummy = 1;
}
message CCSUsrMsg_WarmupHasEnded {
optional int32 dummy = 1;
}
message CCSUsrMsg_ClientInfo {
optional int32 dummy = 1;
}
message CCSUsrMsg_ServerRankRevealAll {
optional int32 seconds_till_shutdown = 1;
optional .CMsgGCCStrike15_v2_MatchmakingGC2ServerReserve reservation = 2;
}
message CCSUsrMsgPreMatchSayText {
optional uint32 account_id = 1;
optional string text = 2;
optional bool all_chat = 3;
}
message CCSUsrMsg_SnapTapStats {
optional uint32 perfect_bucket = 1;
repeated uint32 overlap_bucket = 2;
repeated uint32 underlap_bucket = 3;
optional uint32 max_success_in_20 = 4;
}

173
protos/demo.proto Normal file
View file

@ -0,0 +1,173 @@
enum EDemoCommands {
DEM_Error = -1;
DEM_Stop = 0;
DEM_FileHeader = 1;
DEM_FileInfo = 2;
DEM_SyncTick = 3;
DEM_SendTables = 4;
DEM_ClassInfo = 5;
DEM_StringTables = 6;
DEM_Packet = 7;
DEM_SignonPacket = 8;
DEM_ConsoleCmd = 9;
DEM_CustomData = 10;
DEM_CustomDataCallbacks = 11;
DEM_UserCmd = 12;
DEM_FullPacket = 13;
DEM_SaveGame = 14;
DEM_SpawnGroups = 15;
DEM_AnimationData = 16;
DEM_AnimationHeader = 17;
DEM_Max = 18;
DEM_IsCompressed = 64;
}
message CDemoFileHeader {
required string demo_file_stamp = 1;
optional int32 network_protocol = 2;
optional string server_name = 3;
optional string client_name = 4;
optional string map_name = 5;
optional string game_directory = 6;
optional int32 fullpackets_version = 7;
optional bool allow_clientside_entities = 8;
optional bool allow_clientside_particles = 9;
optional string addons = 10;
optional string demo_version_name = 11;
optional string demo_version_guid = 12;
optional int32 build_num = 13;
optional string game = 14;
optional int32 server_start_tick = 15;
}
message CGameInfo {
message CDotaGameInfo {
message CPlayerInfo {
optional string hero_name = 1;
optional string player_name = 2;
optional bool is_fake_client = 3;
optional uint64 steamid = 4;
optional int32 game_team = 5;
}
message CHeroSelectEvent {
optional bool is_pick = 1;
optional uint32 team = 2;
optional uint32 hero_id = 3;
}
optional uint64 match_id = 1;
optional int32 game_mode = 2;
optional int32 game_winner = 3;
repeated .CGameInfo.CDotaGameInfo.CPlayerInfo player_info = 4;
optional uint32 leagueid = 5;
repeated .CGameInfo.CDotaGameInfo.CHeroSelectEvent picks_bans = 6;
optional uint32 radiant_team_id = 7;
optional uint32 dire_team_id = 8;
optional string radiant_team_tag = 9;
optional string dire_team_tag = 10;
optional uint32 end_time = 11;
}
message CCSGameInfo {
repeated int32 round_start_ticks = 1;
}
optional .CGameInfo.CDotaGameInfo dota = 4;
optional .CGameInfo.CCSGameInfo cs = 5;
}
message CDemoFileInfo {
optional float playback_time = 1;
optional int32 playback_ticks = 2;
optional int32 playback_frames = 3;
optional .CGameInfo game_info = 4;
}
message CDemoPacket {
optional bytes data = 3;
}
message CDemoFullPacket {
optional .CDemoStringTables string_table = 1;
optional .CDemoPacket packet = 2;
}
message CDemoSaveGame {
optional bytes data = 1;
optional fixed64 steam_id = 2;
optional fixed64 signature = 3;
optional int32 version = 4;
}
message CDemoSyncTick {
}
message CDemoConsoleCmd {
optional string cmdstring = 1;
}
message CDemoSendTables {
optional bytes data = 1;
}
message CDemoClassInfo {
message class_t {
optional int32 class_id = 1;
optional string network_name = 2;
optional string table_name = 3;
}
repeated .CDemoClassInfo.class_t classes = 1;
}
message CDemoCustomData {
optional int32 callback_index = 1;
optional bytes data = 2;
}
message CDemoCustomDataCallbacks {
repeated string save_id = 1;
}
message CDemoAnimationHeader {
optional sint32 entity_id = 1;
optional int32 tick = 2;
optional bytes data = 3;
}
message CDemoAnimationData {
optional sint32 entity_id = 1;
optional int32 start_tick = 2;
optional int32 end_tick = 3;
optional bytes data = 4;
optional int64 data_checksum = 5;
}
message CDemoStringTables {
message items_t {
optional string str = 1;
optional bytes data = 2;
}
message table_t {
optional string table_name = 1;
repeated .CDemoStringTables.items_t items = 2;
repeated .CDemoStringTables.items_t items_clientside = 3;
optional int32 table_flags = 4;
}
repeated .CDemoStringTables.table_t tables = 1;
}
message CDemoStop {
}
message CDemoUserCmd {
optional int32 cmd_number = 1;
optional bytes data = 2;
}
message CDemoSpawnGroups {
repeated bytes msgs = 3;
}

View file

@ -0,0 +1,230 @@
import "steammessages.proto";
enum EGCItemMsg {
k_EMsgGCBase = 1000;
k_EMsgGCSetItemPosition = 1001;
k_EMsgGCCraft = 1002;
k_EMsgGCCraftResponse = 1003;
k_EMsgGCDelete = 1004;
k_EMsgGCVerifyCacheSubscription = 1005;
k_EMsgGCNameItem = 1006;
k_EMsgGCUnlockCrate = 1007;
k_EMsgGCUnlockCrateResponse = 1008;
k_EMsgGCPaintItem = 1009;
k_EMsgGCPaintItemResponse = 1010;
k_EMsgGCGoldenWrenchBroadcast = 1011;
k_EMsgGCMOTDRequest = 1012;
k_EMsgGCMOTDRequestResponse = 1013;
k_EMsgGCAddItemToSocket_DEPRECATED = 1014;
k_EMsgGCAddItemToSocketResponse_DEPRECATED = 1015;
k_EMsgGCAddSocketToBaseItem_DEPRECATED = 1016;
k_EMsgGCAddSocketToItem_DEPRECATED = 1017;
k_EMsgGCAddSocketToItemResponse_DEPRECATED = 1018;
k_EMsgGCNameBaseItem = 1019;
k_EMsgGCNameBaseItemResponse = 1020;
k_EMsgGCRemoveSocketItem_DEPRECATED = 1021;
k_EMsgGCRemoveSocketItemResponse_DEPRECATED = 1022;
k_EMsgGCCustomizeItemTexture = 1023;
k_EMsgGCCustomizeItemTextureResponse = 1024;
k_EMsgGCUseItemRequest = 1025;
k_EMsgGCUseItemResponse = 1026;
k_EMsgGCGiftedItems_DEPRECATED = 1027;
k_EMsgGCRemoveItemName = 1030;
k_EMsgGCRemoveItemPaint = 1031;
k_EMsgGCGiftWrapItem = 1032;
k_EMsgGCGiftWrapItemResponse = 1033;
k_EMsgGCDeliverGift = 1034;
k_EMsgGCDeliverGiftResponseGiver = 1035;
k_EMsgGCDeliverGiftResponseReceiver = 1036;
k_EMsgGCUnwrapGiftRequest = 1037;
k_EMsgGCUnwrapGiftResponse = 1038;
k_EMsgGCSetItemStyle = 1039;
k_EMsgGCUsedClaimCodeItem = 1040;
k_EMsgGCSortItems = 1041;
k_EMsgGC_RevolvingLootList_DEPRECATED = 1042;
k_EMsgGCLookupAccount = 1043;
k_EMsgGCLookupAccountResponse = 1044;
k_EMsgGCLookupAccountName = 1045;
k_EMsgGCLookupAccountNameResponse = 1046;
k_EMsgGCUpdateItemSchema = 1049;
k_EMsgGCRemoveCustomTexture = 1051;
k_EMsgGCRemoveCustomTextureResponse = 1052;
k_EMsgGCRemoveMakersMark = 1053;
k_EMsgGCRemoveMakersMarkResponse = 1054;
k_EMsgGCRemoveUniqueCraftIndex = 1055;
k_EMsgGCRemoveUniqueCraftIndexResponse = 1056;
k_EMsgGCSaxxyBroadcast = 1057;
k_EMsgGCBackpackSortFinished = 1058;
k_EMsgGCAdjustItemEquippedState = 1059;
k_EMsgGCCollectItem = 1061;
k_EMsgGCItemAcknowledged__DEPRECATED = 1062;
k_EMsgGC_ReportAbuse = 1065;
k_EMsgGC_ReportAbuseResponse = 1066;
k_EMsgGCNameItemNotification = 1068;
k_EMsgGCApplyConsumableEffects = 1069;
k_EMsgGCConsumableExhausted = 1070;
k_EMsgGCShowItemsPickedUp = 1071;
k_EMsgGCClientDisplayNotification = 1072;
k_EMsgGCApplyStrangePart = 1073;
k_EMsgGC_IncrementKillCountAttribute = 1074;
k_EMsgGC_IncrementKillCountResponse = 1075;
k_EMsgGCApplyPennantUpgrade = 1076;
k_EMsgGCSetItemPositions = 1077;
k_EMsgGCApplyEggEssence = 1078;
k_EMsgGCNameEggEssenceResponse = 1079;
k_EMsgGCPaintKitItem = 1080;
k_EMsgGCPaintKitBaseItem = 1081;
k_EMsgGCPaintKitItemResponse = 1082;
k_EMsgGCGiftedItems = 1083;
k_EMsgGCUnlockItemStyle = 1084;
k_EMsgGCUnlockItemStyleResponse = 1085;
k_EMsgGCApplySticker = 1086;
k_EMsgGCItemAcknowledged = 1087;
k_EMsgGCStatTrakSwap = 1088;
k_EMsgGCUserTrackTimePlayedConsecutively = 1089;
k_EMsgGCItemCustomizationNotification = 1090;
k_EMsgGCModifyItemAttribute = 1091;
k_EMsgGCCasketItemAdd = 1092;
k_EMsgGCCasketItemExtract = 1093;
k_EMsgGCCasketItemLoadContents = 1094;
k_EMsgGCTradingBase = 1500;
k_EMsgGCTrading_InitiateTradeRequest = 1501;
k_EMsgGCTrading_InitiateTradeResponse = 1502;
k_EMsgGCTrading_StartSession = 1503;
k_EMsgGCTrading_SetItem = 1504;
k_EMsgGCTrading_RemoveItem = 1505;
k_EMsgGCTrading_UpdateTradeInfo = 1506;
k_EMsgGCTrading_SetReadiness = 1507;
k_EMsgGCTrading_ReadinessResponse = 1508;
k_EMsgGCTrading_SessionClosed = 1509;
k_EMsgGCTrading_CancelSession = 1510;
k_EMsgGCTrading_TradeChatMsg = 1511;
k_EMsgGCTrading_ConfirmOffer = 1512;
k_EMsgGCTrading_TradeTypingChatMsg = 1513;
k_EMsgGCServerBrowser_FavoriteServer = 1601;
k_EMsgGCServerBrowser_BlacklistServer = 1602;
k_EMsgGCServerRentalsBase = 1700;
k_EMsgGCItemPreviewCheckStatus = 1701;
k_EMsgGCItemPreviewStatusResponse = 1702;
k_EMsgGCItemPreviewRequest = 1703;
k_EMsgGCItemPreviewRequestResponse = 1704;
k_EMsgGCItemPreviewExpire = 1705;
k_EMsgGCItemPreviewExpireNotification = 1706;
k_EMsgGCItemPreviewItemBoughtNotification = 1707;
k_EMsgGCDev_NewItemRequest = 2001;
k_EMsgGCDev_NewItemRequestResponse = 2002;
k_EMsgGCDev_PaintKitDropItem = 2003;
k_EMsgGCDev_SchemaReservationRequest = 2004;
k_EMsgGCStoreGetUserData = 2500;
k_EMsgGCStoreGetUserDataResponse = 2501;
k_EMsgGCStorePurchaseInit_DEPRECATED = 2502;
k_EMsgGCStorePurchaseInitResponse_DEPRECATED = 2503;
k_EMsgGCStorePurchaseFinalize = 2504;
k_EMsgGCStorePurchaseFinalizeResponse = 2505;
k_EMsgGCStorePurchaseCancel = 2506;
k_EMsgGCStorePurchaseCancelResponse = 2507;
k_EMsgGCStorePurchaseQueryTxn = 2508;
k_EMsgGCStorePurchaseQueryTxnResponse = 2509;
k_EMsgGCStorePurchaseInit = 2510;
k_EMsgGCStorePurchaseInitResponse = 2511;
k_EMsgGCBannedWordListRequest = 2512;
k_EMsgGCBannedWordListResponse = 2513;
k_EMsgGCToGCBannedWordListBroadcast = 2514;
k_EMsgGCToGCBannedWordListUpdated = 2515;
k_EMsgGCToGCDirtySDOCache = 2516;
k_EMsgGCToGCDirtyMultipleSDOCache = 2517;
k_EMsgGCToGCUpdateSQLKeyValue = 2518;
k_EMsgGCToGCIsTrustedServer = 2519;
k_EMsgGCToGCIsTrustedServerResponse = 2520;
k_EMsgGCToGCBroadcastConsoleCommand = 2521;
k_EMsgGCServerVersionUpdated = 2522;
k_EMsgGCToGCWebAPIAccountChanged = 2524;
k_EMsgGCRequestAnnouncements = 2525;
k_EMsgGCRequestAnnouncementsResponse = 2526;
k_EMsgGCRequestPassportItemGrant = 2527;
k_EMsgGCClientVersionUpdated = 2528;
k_EMsgGCAdjustItemEquippedStateMulti = 2529;
k_EMsgGCRecurringSubscriptionStatus = 2530;
k_EMsgGCAdjustEquipSlotsManual = 2531;
k_EMsgGCAdjustEquipSlotsShuffle = 2532;
k_EMsgGCNameItemAndEquip = 2533;
k_EMsgGCOpenCrate = 2534;
k_EMsgGCAcknowledgeRentalExpiration = 2535;
}
enum EGCMsgResponse {
k_EGCMsgResponseOK = 0;
k_EGCMsgResponseDenied = 1;
k_EGCMsgResponseServerError = 2;
k_EGCMsgResponseTimeout = 3;
k_EGCMsgResponseInvalid = 4;
k_EGCMsgResponseNoMatch = 5;
k_EGCMsgResponseUnknownError = 6;
k_EGCMsgResponseNotLoggedOn = 7;
k_EGCMsgFailedToCreate = 8;
k_EGCMsgLimitExceeded = 9;
k_EGCMsgCommitUnfinalized = 10;
}
enum EUnlockStyle {
k_UnlockStyle_Succeeded = 0;
k_UnlockStyle_Failed_PreReq = 1;
k_UnlockStyle_Failed_CantAfford = 2;
k_UnlockStyle_Failed_CantCommit = 3;
k_UnlockStyle_Failed_CantLockCache = 4;
k_UnlockStyle_Failed_CantAffordAttrib = 5;
}
enum EGCItemCustomizationNotification {
k_EGCItemCustomizationNotification_NameItem = 1006;
k_EGCItemCustomizationNotification_UnlockCrate = 1007;
k_EGCItemCustomizationNotification_XRayItemReveal = 1008;
k_EGCItemCustomizationNotification_XRayItemClaim = 1009;
k_EGCItemCustomizationNotification_CasketTooFull = 1011;
k_EGCItemCustomizationNotification_CasketContents = 1012;
k_EGCItemCustomizationNotification_CasketAdded = 1013;
k_EGCItemCustomizationNotification_CasketRemoved = 1014;
k_EGCItemCustomizationNotification_CasketInvFull = 1015;
k_EGCItemCustomizationNotification_NameBaseItem = 1019;
k_EGCItemCustomizationNotification_RemoveItemName = 1030;
k_EGCItemCustomizationNotification_RemoveSticker = 1053;
k_EGCItemCustomizationNotification_ApplySticker = 1086;
k_EGCItemCustomizationNotification_StatTrakSwap = 1088;
k_EGCItemCustomizationNotification_RemovePatch = 1089;
k_EGCItemCustomizationNotification_ApplyPatch = 1090;
k_EGCItemCustomizationNotification_ActivateFanToken = 9178;
k_EGCItemCustomizationNotification_ActivateOperationCoin = 9179;
k_EGCItemCustomizationNotification_GraffitiUnseal = 9185;
k_EGCItemCustomizationNotification_GenerateSouvenir = 9204;
k_EGCItemCustomizationNotification_ClientRedeemMissionReward = 9209;
k_EGCItemCustomizationNotification_ClientRedeemFreeReward = 9219;
}
message CMsgGCGiftedItems {
optional uint32 accountid = 1;
optional uint32 giftdefindex = 2;
optional uint32 max_gifts_possible = 3;
optional uint32 num_eligible_recipients = 4;
repeated uint32 recipients_accountids = 5;
}
message CMsgGCDev_SchemaReservationRequest {
optional string schema_typename = 1;
optional string instance_name = 2;
optional uint64 context = 3;
optional uint64 id = 4;
}
message CMsgCasketItem {
optional uint64 casket_item_id = 1;
optional uint64 item_item_id = 2;
}
message CMsgGCUserTrackTimePlayedConsecutively {
optional uint32 state = 1;
}
message CMsgGCItemCustomizationNotification {
repeated uint64 item_id = 1;
optional uint32 request = 2;
}

View file

@ -0,0 +1,14 @@
import "google/protobuf/descriptor.proto";
message CEngineGotvSyncPacket {
optional uint64 match_id = 1;
optional uint32 instance_id = 2;
optional uint32 signupfragment = 3;
optional uint32 currentfragment = 4;
optional float tickrate = 5;
optional uint32 tick = 6;
optional float rtdelay = 8;
optional float rcvage = 9;
optional float keyframe_interval = 10;
optional uint32 cdndelay = 11;
}

File diff suppressed because it is too large Load diff

125
protos/fatdemo.proto Normal file
View file

@ -0,0 +1,125 @@
import "networkbasetypes.proto";
enum EHitGroup {
EHG_Generic = 0;
EHG_Head = 1;
EHG_Chest = 2;
EHG_Stomach = 3;
EHG_LeftArm = 4;
EHG_RightArm = 5;
EHG_LeftLeg = 6;
EHG_RightLeg = 7;
EHG_Gear = 8;
EHG_Miss = 9;
}
enum ETeam {
ET_Unknown = 0;
ET_Spectator = 1;
ET_Terrorist = 2;
ET_CT = 3;
}
enum EWeaponType {
EWT_Knife = 0;
EWT_Pistol = 1;
EWT_SubMachineGun = 2;
EWT_Rifle = 3;
EWT_Shotgun = 4;
EWT_SniperRifle = 5;
EWT_MachineGun = 6;
EWT_C4 = 7;
EWT_Grenade = 8;
EWT_Equipment = 9;
EWT_StackableItem = 10;
EWT_Unknown = 11;
}
message MLDict {
optional string key = 1;
optional string val_string = 2;
optional int32 val_int = 3;
optional float val_float = 4;
}
message MLEvent {
optional string event_name = 1;
repeated .MLDict data = 2;
}
message MLMatchState {
optional string game_mode = 1;
optional string phase = 2;
optional int32 round = 3;
optional int32 score_ct = 4;
optional int32 score_t = 5;
}
message MLRoundState {
optional string phase = 1;
optional .ETeam win_team = 2 [default = ET_Unknown];
optional string bomb_state = 3;
}
message MLWeaponState {
optional int32 index = 1;
optional string name = 2;
optional .EWeaponType type = 3 [default = EWT_Knife];
optional int32 ammo_clip = 4;
optional int32 ammo_clip_max = 5;
optional int32 ammo_reserve = 6;
optional string state = 7;
optional float recoil_index = 8;
}
message MLPlayerState {
optional int32 account_id = 1;
optional int32 player_slot = 2 [default = -1];
optional int32 entindex = 3;
optional string name = 4;
optional string clan = 5;
optional .ETeam team = 6 [default = ET_Unknown];
optional .CMsgVector abspos = 7;
optional .CMsgQAngle eyeangle = 8;
optional .CMsgVector eyeangle_fwd = 9;
optional int32 health = 10;
optional int32 armor = 11;
optional float flashed = 12;
optional float smoked = 13;
optional int32 money = 14;
optional int32 round_kills = 15;
optional int32 round_killhs = 16;
optional float burning = 17;
optional bool helmet = 18;
optional bool defuse_kit = 19;
repeated .MLWeaponState weapons = 20;
}
message MLGameState {
optional .MLMatchState match = 1;
optional .MLRoundState round = 2;
repeated .MLPlayerState players = 3;
}
message MLDemoHeader {
optional string map_name = 1;
optional int32 tick_rate = 2;
optional uint32 version = 3;
optional uint32 steam_universe = 4;
}
message MLTick {
optional int32 tick_count = 1;
optional .MLGameState state = 2;
repeated .MLEvent events = 3;
}
message VacNetShot {
optional fixed64 steamid_player = 1;
optional int32 round_number = 2;
optional int32 hit_type = 3;
optional int32 weapon_type = 4;
optional float distance_to_hurt_target = 5;
repeated float delta_yaw_window = 6;
repeated float delta_pitch_window = 7;
}

120
protos/gameevents.proto Normal file
View file

@ -0,0 +1,120 @@
import "networkbasetypes.proto";
enum EBaseGameEvents {
GE_VDebugGameSessionIDEvent = 200;
GE_PlaceDecalEvent = 201;
GE_ClearWorldDecalsEvent = 202;
GE_ClearEntityDecalsEvent = 203;
GE_ClearDecalsForSkeletonInstanceEvent = 204;
GE_Source1LegacyGameEventList = 205;
GE_Source1LegacyListenEvents = 206;
GE_Source1LegacyGameEvent = 207;
GE_SosStartSoundEvent = 208;
GE_SosStopSoundEvent = 209;
GE_SosSetSoundEventParams = 210;
GE_SosSetLibraryStackFields = 211;
GE_SosStopSoundEventHash = 212;
}
message CMsgVDebugGameSessionIDEvent {
optional int32 clientid = 1;
optional string gamesessionid = 2;
}
message CMsgPlaceDecalEvent {
optional .CMsgVector position = 1;
optional .CMsgVector normal = 2;
optional .CMsgVector saxis = 3;
optional uint32 decalmaterialindex = 4;
optional uint32 flags = 5;
optional fixed32 color = 6;
optional float width = 7;
optional float height = 8;
optional float depth = 9;
optional uint32 entityhandleindex = 10;
optional fixed32 skeletoninstancehash = 11;
optional int32 boneindex = 12;
optional bool translucenthit = 13;
optional bool is_adjacent = 14;
}
message CMsgClearWorldDecalsEvent {
optional uint32 flagstoclear = 1;
}
message CMsgClearEntityDecalsEvent {
optional uint32 flagstoclear = 1;
}
message CMsgClearDecalsForSkeletonInstanceEvent {
optional uint32 flagstoclear = 1;
optional uint32 entityhandleindex = 2;
optional uint32 skeletoninstancehash = 3;
}
message CMsgSource1LegacyGameEventList {
message key_t {
optional int32 type = 1;
optional string name = 2;
}
message descriptor_t {
optional int32 eventid = 1;
optional string name = 2;
repeated .CMsgSource1LegacyGameEventList.key_t keys = 3;
}
repeated .CMsgSource1LegacyGameEventList.descriptor_t descriptors = 1;
}
message CMsgSource1LegacyListenEvents {
optional int32 playerslot = 1;
repeated uint32 eventarraybits = 2;
}
message CMsgSource1LegacyGameEvent {
message key_t {
optional int32 type = 1;
optional string val_string = 2;
optional float val_float = 3;
optional int32 val_long = 4;
optional int32 val_short = 5;
optional int32 val_byte = 6;
optional bool val_bool = 7;
optional uint64 val_uint64 = 8;
}
optional string event_name = 1;
optional int32 eventid = 2;
repeated .CMsgSource1LegacyGameEvent.key_t keys = 3;
optional int32 server_tick = 4;
optional int32 passthrough = 5;
}
message CMsgSosStartSoundEvent {
optional int32 soundevent_guid = 1;
optional fixed32 soundevent_hash = 2;
optional int32 source_entity_index = 3 [default = -1];
optional int32 seed = 4;
optional bytes packed_params = 5;
optional float start_time = 6;
}
message CMsgSosStopSoundEvent {
optional int32 soundevent_guid = 1;
}
message CMsgSosStopSoundEventHash {
optional fixed32 soundevent_hash = 1;
optional int32 source_entity_index = 2 [default = -1];
}
message CMsgSosSetSoundEventParams {
optional int32 soundevent_guid = 1;
optional bytes packed_params = 5;
}
message CMsgSosSetLibraryStackFields {
optional fixed32 stack_hash = 1;
optional bytes packed_fields = 5;
}

View file

@ -0,0 +1,325 @@
import "steammessages.proto";
enum GCClientLauncherType {
GCClientLauncherType_DEFAULT = 0;
GCClientLauncherType_PERFECTWORLD = 1;
GCClientLauncherType_STEAMCHINA = 2;
GCClientLauncherType_SOURCE2 = 3;
}
enum GCConnectionStatus {
GCConnectionStatus_HAVE_SESSION = 0;
GCConnectionStatus_GC_GOING_DOWN = 1;
GCConnectionStatus_NO_SESSION = 2;
GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3;
GCConnectionStatus_NO_STEAM = 4;
}
message CMsgSOIDOwner {
optional uint32 type = 1;
optional uint64 id = 2;
}
message CMsgSOSingleObject {
optional int32 type_id = 2;
optional bytes object_data = 3;
optional fixed64 version = 4;
optional .CMsgSOIDOwner owner_soid = 5;
}
message CMsgSOMultipleObjects {
message SingleObject {
option (msgpool_soft_limit) = 256;
option (msgpool_hard_limit) = 1024;
optional int32 type_id = 1;
optional bytes object_data = 2;
}
repeated .CMsgSOMultipleObjects.SingleObject objects_modified = 2;
optional fixed64 version = 3;
optional .CMsgSOIDOwner owner_soid = 6;
}
message CMsgSOCacheSubscribed {
message SubscribedType {
optional int32 type_id = 1;
repeated bytes object_data = 2;
}
repeated .CMsgSOCacheSubscribed.SubscribedType objects = 2;
optional fixed64 version = 3;
optional .CMsgSOIDOwner owner_soid = 4;
}
message CMsgSOCacheUnsubscribed {
optional .CMsgSOIDOwner owner_soid = 2;
}
message CMsgSOCacheSubscriptionCheck {
optional fixed64 version = 2;
optional .CMsgSOIDOwner owner_soid = 3;
}
message CMsgSOCacheSubscriptionRefresh {
optional .CMsgSOIDOwner owner_soid = 2;
}
message CMsgSOCacheVersion {
optional fixed64 version = 1;
}
message CMsgAccountDetails {
optional bool valid = 1;
optional string account_name = 2;
optional bool public_profile = 4;
optional bool public_inventory = 5;
optional bool vac_banned = 6;
optional bool cyber_cafe = 7;
optional bool school_account = 8;
optional bool free_trial_account = 9;
optional bool subscribed = 10;
optional bool low_violence = 11;
optional bool limited = 12;
optional bool trusted = 13;
optional uint32 package = 14;
optional fixed32 time_cached = 15;
optional bool account_locked = 16;
optional bool community_banned = 17;
optional bool trade_banned = 18;
optional bool eligible_for_community_market = 19;
}
message CMsgGCMultiplexMessage {
optional uint32 msgtype = 1;
optional bytes payload = 2;
repeated fixed64 steamids = 3;
optional bool replytogc = 4;
}
message CMsgGCMultiplexMessage_Response {
optional uint32 msgtype = 1;
}
message CGCToGCMsgMasterAck {
optional uint32 dir_index = 1;
optional uint32 gc_type = 2;
}
message CGCToGCMsgMasterAck_Response {
optional int32 eresult = 1 [default = 2];
}
message CGCToGCMsgMasterStartupComplete {
}
message CGCToGCMsgRouted {
optional uint32 msg_type = 1;
optional fixed64 sender_id = 2;
optional bytes net_message = 3;
optional uint32 ip = 4;
}
message CGCToGCMsgRoutedReply {
optional uint32 msg_type = 1;
optional bytes net_message = 2;
}
message CMsgGCUpdateSessionIP {
optional fixed64 steamid = 1;
optional fixed32 ip = 2;
}
message CMsgGCRequestSessionIP {
optional fixed64 steamid = 1;
}
message CMsgGCRequestSessionIPResponse {
optional fixed32 ip = 1;
}
message CMsgSOCacheHaveVersion {
optional .CMsgSOIDOwner soid = 1;
optional fixed64 version = 2;
}
message CMsgClientHello {
optional uint32 version = 1;
repeated .CMsgSOCacheHaveVersion socache_have_versions = 2;
optional uint32 client_session_need = 3;
optional uint32 client_launcher = 4;
optional uint32 partner_srcid = 5;
optional uint32 partner_accountid = 6;
optional uint32 partner_accountflags = 7;
optional uint32 partner_accountbalance = 8;
optional uint32 steam_launcher = 9;
}
message CMsgServerHello {
optional uint32 version = 1;
repeated .CMsgSOCacheHaveVersion socache_have_versions = 2;
optional uint32 legacy_client_session_need = 3;
optional uint32 client_launcher = 4;
optional bytes legacy_steamdatagram_routing = 6;
optional uint32 required_internal_addr = 7;
optional bytes steamdatagram_login = 8;
optional uint32 socache_control = 9;
}
message CMsgClientWelcome {
message Location {
optional float latitude = 1;
optional float longitude = 2;
optional string country = 3;
}
optional uint32 version = 1;
optional bytes game_data = 2;
repeated .CMsgSOCacheSubscribed outofdate_subscribed_caches = 3;
repeated .CMsgSOCacheSubscriptionCheck uptodate_subscribed_caches = 4;
optional .CMsgClientWelcome.Location location = 5;
optional bytes game_data2 = 6;
optional uint32 rtime32_gc_welcome_timestamp = 7;
optional uint32 currency = 8;
optional uint32 balance = 9;
optional string balance_url = 10;
optional string txn_country_code = 11;
}
message CMsgConnectionStatus {
optional .GCConnectionStatus status = 1 [default = GCConnectionStatus_HAVE_SESSION];
optional uint32 client_session_need = 2;
optional int32 queue_position = 3;
optional int32 queue_size = 4;
optional int32 wait_seconds = 5;
optional int32 estimated_wait_seconds_remaining = 6;
}
message CWorkshop_PopulateItemDescriptions_Request {
message SingleItemDescription {
optional uint32 gameitemid = 1;
optional string item_description = 2;
optional bool one_per_account = 3;
}
message ItemDescriptionsLanguageBlock {
optional string language = 1;
repeated .CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription descriptions = 2;
}
optional uint32 appid = 1;
repeated .CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock languages = 2;
}
message CWorkshop_GetContributors_Request {
optional uint32 appid = 1;
optional uint32 gameitemid = 2;
}
message CWorkshop_GetContributors_Response {
repeated fixed64 contributors = 1;
}
message CWorkshop_SetItemPaymentRules_Request {
message WorkshopItemPaymentRule {
optional uint64 workshop_file_id = 1;
optional float revenue_percentage = 2;
optional string rule_description = 3;
optional uint32 rule_type = 4 [default = 1];
}
message WorkshopDirectPaymentRule {
optional uint64 workshop_file_id = 1;
optional string rule_description = 2;
}
message PartnerItemPaymentRule {
optional uint32 account_id = 1;
optional float revenue_percentage = 2;
optional string rule_description = 3;
}
optional uint32 appid = 1;
optional uint32 gameitemid = 2;
repeated .CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule associated_workshop_files = 3;
repeated .CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule partner_accounts = 4;
optional bool validate_only = 5;
optional bool make_workshop_files_subscribable = 6;
optional .CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule associated_workshop_file_for_direct_payments = 7;
}
message CWorkshop_SetItemPaymentRules_Response {
}
message CGameServers_AggregationQuery_Request {
optional string filter = 1;
repeated string group_fields = 3;
}
message CGameServers_AggregationQuery_Response {
message Group {
repeated string group_values = 1;
optional uint32 servers_empty = 2;
optional uint32 servers_full = 3;
optional uint32 servers_total = 4;
optional uint32 players_humans = 5;
optional uint32 players_bots = 6;
optional uint32 player_capacity = 7;
}
repeated .CGameServers_AggregationQuery_Response.Group groups = 1;
}
message CWorkshop_AddSpecialPayment_Request {
optional uint32 appid = 1;
optional uint32 gameitemid = 2;
optional string date = 3;
optional uint64 payment_us_usd = 4;
optional uint64 payment_row_usd = 5;
}
message CWorkshop_AddSpecialPayment_Response {
}
message CProductInfo_SetRichPresenceLocalization_Request {
message Token {
optional string token = 1;
optional string value = 2;
}
message LanguageSection {
optional string language = 1;
repeated .CProductInfo_SetRichPresenceLocalization_Request.Token tokens = 2;
}
optional uint32 appid = 1;
repeated .CProductInfo_SetRichPresenceLocalization_Request.LanguageSection languages = 2;
optional uint64 steamid = 3;
}
message CProductInfo_SetRichPresenceLocalization_Response {
}
message CMsgSerializedSOCache {
message TypeCache {
optional uint32 type = 1;
repeated bytes objects = 2;
optional uint32 service_id = 3;
}
message Cache {
message Version {
optional uint32 service = 1;
optional uint64 version = 2;
}
optional uint32 type = 1;
optional uint64 id = 2;
repeated .CMsgSerializedSOCache.Cache.Version versions = 3;
repeated .CMsgSerializedSOCache.TypeCache type_caches = 4;
}
optional uint32 file_version = 1;
repeated .CMsgSerializedSOCache.Cache caches = 2;
optional uint32 gc_socache_file_version = 3;
}

243
protos/gcsystemmsgs.proto Normal file
View file

@ -0,0 +1,243 @@
enum EGCSystemMsg {
k_EGCMsgInvalid = 0;
k_EGCMsgMulti = 1;
k_EGCMsgGenericReply = 10;
k_EGCMsgSystemBase = 50;
k_EGCMsgAchievementAwarded = 51;
k_EGCMsgConCommand = 52;
k_EGCMsgStartPlaying = 53;
k_EGCMsgStopPlaying = 54;
k_EGCMsgStartGameserver = 55;
k_EGCMsgStopGameserver = 56;
k_EGCMsgWGRequest = 57;
k_EGCMsgWGResponse = 58;
k_EGCMsgGetUserGameStatsSchema = 59;
k_EGCMsgGetUserGameStatsSchemaResponse = 60;
k_EGCMsgGetUserStatsDEPRECATED = 61;
k_EGCMsgGetUserStatsResponse = 62;
k_EGCMsgAppInfoUpdated = 63;
k_EGCMsgValidateSession = 64;
k_EGCMsgValidateSessionResponse = 65;
k_EGCMsgLookupAccountFromInput = 66;
k_EGCMsgSendHTTPRequest = 67;
k_EGCMsgSendHTTPRequestResponse = 68;
k_EGCMsgPreTestSetup = 69;
k_EGCMsgRecordSupportAction = 70;
k_EGCMsgGetAccountDetails_DEPRECATED = 71;
k_EGCMsgReceiveInterAppMessage = 73;
k_EGCMsgFindAccounts = 74;
k_EGCMsgPostAlert = 75;
k_EGCMsgGetLicenses = 76;
k_EGCMsgGetUserStats = 77;
k_EGCMsgGetCommands = 78;
k_EGCMsgGetCommandsResponse = 79;
k_EGCMsgAddFreeLicense = 80;
k_EGCMsgAddFreeLicenseResponse = 81;
k_EGCMsgGetIPLocation = 82;
k_EGCMsgGetIPLocationResponse = 83;
k_EGCMsgSystemStatsSchema = 84;
k_EGCMsgGetSystemStats = 85;
k_EGCMsgGetSystemStatsResponse = 86;
k_EGCMsgSendEmail = 87;
k_EGCMsgSendEmailResponse = 88;
k_EGCMsgGetEmailTemplate = 89;
k_EGCMsgGetEmailTemplateResponse = 90;
k_EGCMsgGrantGuestPass = 91;
k_EGCMsgGrantGuestPassResponse = 92;
k_EGCMsgGetAccountDetails = 93;
k_EGCMsgGetAccountDetailsResponse = 94;
k_EGCMsgGetPersonaNames = 95;
k_EGCMsgGetPersonaNamesResponse = 96;
k_EGCMsgMultiplexMsg = 97;
k_EGCMsgMultiplexMsgResponse = 98;
k_EGCMsgWebAPIRegisterInterfaces = 101;
k_EGCMsgWebAPIJobRequest = 102;
k_EGCMsgWebAPIJobRequestHttpResponse = 104;
k_EGCMsgWebAPIJobRequestForwardResponse = 105;
k_EGCMsgMemCachedGet = 200;
k_EGCMsgMemCachedGetResponse = 201;
k_EGCMsgMemCachedSet = 202;
k_EGCMsgMemCachedDelete = 203;
k_EGCMsgMemCachedStats = 204;
k_EGCMsgMemCachedStatsResponse = 205;
k_EGCMsgMasterSetDirectory = 220;
k_EGCMsgMasterSetDirectoryResponse = 221;
k_EGCMsgMasterSetWebAPIRouting = 222;
k_EGCMsgMasterSetWebAPIRoutingResponse = 223;
k_EGCMsgMasterSetClientMsgRouting = 224;
k_EGCMsgMasterSetClientMsgRoutingResponse = 225;
k_EGCMsgSetOptions = 226;
k_EGCMsgSetOptionsResponse = 227;
k_EGCMsgSystemBase2 = 500;
k_EGCMsgGetPurchaseTrustStatus = 501;
k_EGCMsgGetPurchaseTrustStatusResponse = 502;
k_EGCMsgUpdateSession = 503;
k_EGCMsgGCAccountVacStatusChange = 504;
k_EGCMsgCheckFriendship = 505;
k_EGCMsgCheckFriendshipResponse = 506;
k_EGCMsgGetPartnerAccountLink = 507;
k_EGCMsgGetPartnerAccountLinkResponse = 508;
k_EGCMsgDPPartnerMicroTxns = 512;
k_EGCMsgDPPartnerMicroTxnsResponse = 513;
k_EGCMsgVacVerificationChange = 518;
k_EGCMsgAccountPhoneNumberChange = 519;
k_EGCMsgInviteUserToLobby = 523;
k_EGCMsgGetGamePersonalDataCategoriesRequest = 524;
k_EGCMsgGetGamePersonalDataCategoriesResponse = 525;
k_EGCMsgGetGamePersonalDataEntriesRequest = 526;
k_EGCMsgGetGamePersonalDataEntriesResponse = 527;
k_EGCMsgTerminateGamePersonalDataEntriesRequest = 528;
k_EGCMsgTerminateGamePersonalDataEntriesResponse = 529;
k_EGCMsgRecurringSubscriptionStatusChange = 530;
k_EGCMsgDirectServiceMethod = 531;
k_EGCMsgDirectServiceMethodResponse = 532;
}
enum ESOMsg {
k_ESOMsg_Create = 21;
k_ESOMsg_Update = 22;
k_ESOMsg_Destroy = 23;
k_ESOMsg_CacheSubscribed = 24;
k_ESOMsg_CacheUnsubscribed = 25;
k_ESOMsg_UpdateMultiple = 26;
k_ESOMsg_CacheSubscriptionCheck = 27;
k_ESOMsg_CacheSubscriptionRefresh = 28;
}
enum EGCBaseClientMsg {
k_EMsgGCClientWelcome = 4004;
k_EMsgGCServerWelcome = 4005;
k_EMsgGCClientHello = 4006;
k_EMsgGCServerHello = 4007;
k_EMsgGCClientConnectionStatus = 4009;
k_EMsgGCServerConnectionStatus = 4010;
k_EMsgGCClientHelloPartner = 4011;
k_EMsgGCClientHelloPW = 4012;
k_EMsgGCClientHelloR2 = 4013;
k_EMsgGCClientHelloR3 = 4014;
k_EMsgGCClientHelloR4 = 4015;
}
enum EGCToGCMsg {
k_EGCToGCMsgMasterAck = 150;
k_EGCToGCMsgMasterAckResponse = 151;
k_EGCToGCMsgRouted = 152;
k_EGCToGCMsgRoutedReply = 153;
k_EMsgUpdateSessionIP = 154;
k_EMsgRequestSessionIP = 155;
k_EMsgRequestSessionIPResponse = 156;
k_EGCToGCMsgMasterStartupComplete = 157;
}
enum ECommunityItemClass {
k_ECommunityItemClass_Invalid = 0;
k_ECommunityItemClass_Badge = 1;
k_ECommunityItemClass_GameCard = 2;
k_ECommunityItemClass_ProfileBackground = 3;
k_ECommunityItemClass_Emoticon = 4;
k_ECommunityItemClass_BoosterPack = 5;
k_ECommunityItemClass_Consumable = 6;
k_ECommunityItemClass_GameGoo = 7;
k_ECommunityItemClass_ProfileModifier = 8;
k_ECommunityItemClass_Scene = 9;
k_ECommunityItemClass_SalienItem = 10;
}
enum ECommunityItemAttribute {
k_ECommunityItemAttribute_Invalid = 0;
k_ECommunityItemAttribute_CardBorder = 1;
k_ECommunityItemAttribute_Level = 2;
k_ECommunityItemAttribute_IssueNumber = 3;
k_ECommunityItemAttribute_TradableTime = 4;
k_ECommunityItemAttribute_StorePackageID = 5;
k_ECommunityItemAttribute_CommunityItemAppID = 6;
k_ECommunityItemAttribute_CommunityItemType = 7;
k_ECommunityItemAttribute_ProfileModiferEnabled = 8;
k_ECommunityItemAttribute_ExpiryTime = 9;
}
message CMsgGCHVacVerificationChange {
optional fixed64 steamid = 1;
optional uint32 appid = 2;
optional bool is_verified = 3;
}
message CMsgGCHAccountPhoneNumberChange {
optional fixed64 steamid = 1;
optional uint32 appid = 2;
optional uint64 phone_id = 3;
optional bool is_verified = 4;
optional bool is_identifying = 5;
}
message CMsgGCHInviteUserToLobby {
optional fixed64 steamid = 1;
optional uint32 appid = 2;
optional fixed64 steamid_invited = 3;
optional fixed64 steamid_lobby = 4;
}
message CMsgGCHRecurringSubscriptionStatusChange {
optional fixed64 steamid = 1;
optional uint32 appid = 2;
optional fixed64 agreementid = 3;
optional bool active = 4;
}
message CQuest_PublisherAddCommunityItemsToPlayer_Request {
message Attribute {
optional uint32 attribute = 1;
optional uint64 value = 2;
}
optional uint64 steamid = 1;
optional uint32 appid = 2;
optional uint32 match_item_type = 3;
optional uint32 match_item_class = 4;
optional string prefix_item_name = 5;
repeated .CQuest_PublisherAddCommunityItemsToPlayer_Request.Attribute attributes = 6;
optional string note = 7;
}
message CQuest_PublisherAddCommunityItemsToPlayer_Response {
optional uint32 items_matched = 1;
optional uint32 items_granted = 2;
}
message CCommunity_GamePersonalDataCategoryInfo {
optional string type = 1;
optional string localization_token = 2;
optional string template_file = 3;
}
message CCommunity_GetGamePersonalDataCategories_Request {
optional uint32 appid = 1;
}
message CCommunity_GetGamePersonalDataCategories_Response {
repeated .CCommunity_GamePersonalDataCategoryInfo categories = 1;
optional string app_assets_basename = 2;
}
message CCommunity_GetGamePersonalDataEntries_Request {
optional uint32 appid = 1;
optional uint64 steamid = 2;
optional string type = 3;
optional string continue_token = 4;
}
message CCommunity_GetGamePersonalDataEntries_Response {
optional uint32 gceresult = 1;
repeated string entries = 2;
optional string continue_token = 3;
optional string continue_text = 4;
}
message CCommunity_TerminateGamePersonalDataEntries_Request {
optional uint32 appid = 1;
optional uint64 steamid = 2;
}
message CCommunity_TerminateGamePersonalDataEntries_Response {
optional uint32 gceresult = 1;
}

669
protos/netmessages.proto Normal file
View file

@ -0,0 +1,669 @@
import "networkbasetypes.proto";
enum CLC_Messages {
clc_ClientInfo = 20;
clc_Move = 21;
clc_VoiceData = 22;
clc_BaselineAck = 23;
clc_RespondCvarValue = 25;
clc_FileCRCCheck = 26;
clc_LoadingProgress = 27;
clc_SplitPlayerConnect = 28;
clc_SplitPlayerDisconnect = 30;
clc_ServerStatus = 31;
clc_RequestPause = 33;
clc_CmdKeyValues = 34;
clc_RconServerDetails = 35;
clc_HltvReplay = 36;
clc_Diagnostic = 37;
}
enum SVC_Messages {
svc_ServerInfo = 40;
svc_FlattenedSerializer = 41;
svc_ClassInfo = 42;
svc_SetPause = 43;
svc_CreateStringTable = 44;
svc_UpdateStringTable = 45;
svc_VoiceInit = 46;
svc_VoiceData = 47;
svc_Print = 48;
svc_Sounds = 49;
svc_SetView = 50;
svc_ClearAllStringTables = 51;
svc_CmdKeyValues = 52;
svc_BSPDecal = 53;
svc_SplitScreen = 54;
svc_PacketEntities = 55;
svc_Prefetch = 56;
svc_Menu = 57;
svc_GetCvarValue = 58;
svc_StopSound = 59;
svc_PeerList = 60;
svc_PacketReliable = 61;
svc_HLTVStatus = 62;
svc_ServerSteamID = 63;
svc_FullFrameSplit = 70;
svc_RconServerDetails = 71;
svc_UserMessage = 72;
svc_Broadcast_Command = 74;
svc_HltvFixupOperatorStatus = 75;
svc_UserCmds = 76;
}
enum VoiceDataFormat_t {
VOICEDATA_FORMAT_STEAM = 0;
VOICEDATA_FORMAT_ENGINE = 1;
VOICEDATA_FORMAT_OPUS = 2;
}
enum RequestPause_t {
RP_PAUSE = 0;
RP_UNPAUSE = 1;
RP_TOGGLEPAUSE = 2;
}
enum PrefetchType {
PFT_SOUND = 0;
}
enum ESplitScreenMessageType {
MSG_SPLITSCREEN_ADDUSER = 0;
MSG_SPLITSCREEN_REMOVEUSER = 1;
}
enum EQueryCvarValueStatus {
eQueryCvarValueStatus_ValueIntact = 0;
eQueryCvarValueStatus_CvarNotFound = 1;
eQueryCvarValueStatus_NotACvar = 2;
eQueryCvarValueStatus_CvarProtected = 3;
}
enum DIALOG_TYPE {
DIALOG_MSG = 0;
DIALOG_MENU = 1;
DIALOG_TEXT = 2;
DIALOG_ENTRY = 3;
DIALOG_ASKCONNECT = 4;
}
enum SVC_Messages_LowFrequency {
svc_dummy = 600;
}
enum Bidirectional_Messages {
bi_RebroadcastGameEvent = 16;
bi_RebroadcastSource = 17;
bi_GameEvent = 18;
}
enum Bidirectional_Messages_LowFrequency {
bi_RelayInfo = 700;
bi_RelayPacket = 701;
}
enum ReplayEventType_t {
REPLAY_EVENT_CANCEL = 0;
REPLAY_EVENT_DEATH = 1;
REPLAY_EVENT_GENERIC = 2;
REPLAY_EVENT_STUCK_NEED_FULL_UPDATE = 3;
REPLAY_EVENT_VICTORY = 4;
}
message CCLCMsg_ClientInfo {
optional fixed32 send_table_crc = 1;
optional uint32 server_count = 2;
optional bool is_hltv = 3;
optional uint32 friends_id = 5;
optional string friends_name = 6;
}
message CCLCMsg_Move {
optional bytes data = 3;
optional uint32 last_command_number = 4;
}
message CMsgVoiceAudio {
optional .VoiceDataFormat_t format = 1 [default = VOICEDATA_FORMAT_STEAM];
optional bytes voice_data = 2;
optional int32 sequence_bytes = 3;
optional uint32 section_number = 4;
optional uint32 sample_rate = 5;
optional uint32 uncompressed_sample_offset = 6;
optional uint32 num_packets = 7;
repeated uint32 packet_offsets = 8 [packed = true];
optional float voice_level = 9;
}
message CCLCMsg_VoiceData {
optional .CMsgVoiceAudio audio = 1;
optional fixed64 xuid = 2;
optional uint32 tick = 3;
}
message CCLCMsg_BaselineAck {
optional int32 baseline_tick = 1;
optional int32 baseline_nr = 2;
}
message CCLCMsg_ListenEvents {
repeated fixed32 event_mask = 1;
}
message CCLCMsg_RespondCvarValue {
optional int32 cookie = 1;
optional int32 status_code = 2;
optional string name = 3;
optional string value = 4;
}
message CCLCMsg_FileCRCCheck {
optional int32 code_path = 1;
optional string path = 2;
optional int32 code_filename = 3;
optional string filename = 4;
optional fixed32 crc = 5;
}
message CCLCMsg_LoadingProgress {
optional int32 progress = 1;
}
message CCLCMsg_SplitPlayerConnect {
optional string playername = 1;
}
message CCLCMsg_SplitPlayerDisconnect {
optional int32 slot = 1;
}
message CCLCMsg_ServerStatus {
optional bool simplified = 1;
}
message CCLCMsg_RequestPause {
optional .RequestPause_t pause_type = 1 [default = RP_PAUSE];
optional int32 pause_group = 2;
}
message CCLCMsg_CmdKeyValues {
optional bytes data = 1;
}
message CCLCMsg_RconServerDetails {
optional bytes token = 1;
}
message CMsgSource2SystemSpecs {
optional string cpu_id = 1;
optional string cpu_brand = 2;
optional uint32 cpu_model = 3;
optional uint32 cpu_num_physical = 4;
optional uint32 ram_physical_total_mb = 21;
optional string gpu_rendersystem_dll_name = 41;
optional uint32 gpu_vendor_id = 42;
optional string gpu_driver_name = 43;
optional uint32 gpu_driver_version_high = 44;
optional uint32 gpu_driver_version_low = 45;
optional uint32 gpu_dx_support_level = 46;
optional uint32 gpu_texture_memory_size_mb = 47;
}
message CMsgSource2VProfLiteReportItem {
optional string name = 1;
optional uint32 active_samples = 2;
optional uint32 usec_max = 3;
optional uint32 usec_avg_active = 11;
optional uint32 usec_p50_active = 12;
optional uint32 usec_p99_active = 13;
optional uint32 usec_avg_all = 21;
optional uint32 usec_p50_all = 22;
optional uint32 usec_p99_all = 23;
}
message CMsgSource2VProfLiteReport {
optional .CMsgSource2VProfLiteReportItem total = 1;
repeated .CMsgSource2VProfLiteReportItem items = 2;
optional uint32 discarded_frames = 3;
}
message CCLCMsg_Diagnostic {
optional .CMsgSource2SystemSpecs system_specs = 1;
optional .CMsgSource2VProfLiteReport vprof_report = 2;
}
message CSource2Metrics_MatchPerfSummary_Notification {
message Client {
optional .CMsgSource2SystemSpecs system_specs = 1;
optional .CMsgSource2VProfLiteReport profile = 2;
optional uint32 build_id = 3;
optional fixed64 steamid = 10;
}
optional uint32 appid = 1;
optional string game_mode = 2;
optional uint32 server_build_id = 3;
optional .CMsgSource2VProfLiteReport server_profile = 10;
repeated .CSource2Metrics_MatchPerfSummary_Notification.Client clients = 11;
optional string map = 20;
}
message CSVCMsg_ServerInfo {
optional int32 protocol = 1;
optional int32 server_count = 2;
optional bool is_dedicated = 3;
optional bool is_hltv = 4;
optional int32 c_os = 6;
optional int32 max_clients = 10;
optional int32 max_classes = 11;
optional int32 player_slot = 12 [default = -1];
optional float tick_interval = 13;
optional string game_dir = 14;
optional string map_name = 15;
optional string sky_name = 16;
optional string host_name = 17;
optional string addon_name = 18;
optional .CSVCMsg_GameSessionConfiguration game_session_config = 19;
optional bytes game_session_manifest = 20;
}
message CSVCMsg_ClassInfo {
message class_t {
optional int32 class_id = 1;
optional string class_name = 3;
}
optional bool create_on_client = 1;
repeated .CSVCMsg_ClassInfo.class_t classes = 2;
}
message CSVCMsg_SetPause {
optional bool paused = 1;
}
message CSVCMsg_VoiceInit {
optional int32 quality = 1;
optional string codec = 2;
optional int32 version = 3 [default = 0];
}
message CSVCMsg_Print {
optional string text = 1;
}
message CSVCMsg_Sounds {
message sounddata_t {
optional sint32 origin_x = 1;
optional sint32 origin_y = 2;
optional sint32 origin_z = 3;
optional uint32 volume = 4;
optional float delay_value = 5;
optional int32 sequence_number = 6;
optional int32 entity_index = 7 [default = -1];
optional int32 channel = 8;
optional int32 pitch = 9;
optional int32 flags = 10;
optional uint32 sound_num = 11;
optional fixed32 sound_num_handle = 12;
optional int32 speaker_entity = 13;
optional int32 random_seed = 14;
optional int32 sound_level = 15;
optional bool is_sentence = 16;
optional bool is_ambient = 17;
optional uint32 guid = 18;
optional fixed64 sound_resource_id = 19;
}
optional bool reliable_sound = 1;
repeated .CSVCMsg_Sounds.sounddata_t sounds = 2;
}
message CSVCMsg_Prefetch {
optional int32 sound_index = 1;
optional .PrefetchType resource_type = 2 [default = PFT_SOUND];
}
message CSVCMsg_SetView {
optional int32 entity_index = 1 [default = -1];
optional int32 slot = 2 [default = -1];
}
message CSVCMsg_FixAngle {
optional bool relative = 1;
optional .CMsgQAngle angle = 2;
}
message CSVCMsg_CrosshairAngle {
optional .CMsgQAngle angle = 1;
}
message CSVCMsg_BSPDecal {
optional .CMsgVector pos = 1;
optional int32 decal_texture_index = 2;
optional int32 entity_index = 3 [default = -1];
optional int32 model_index = 4;
optional bool low_priority = 5;
}
message CSVCMsg_SplitScreen {
optional .ESplitScreenMessageType type = 1 [default = MSG_SPLITSCREEN_ADDUSER];
optional int32 slot = 2;
optional int32 player_index = 3 [default = -1];
}
message CSVCMsg_GetCvarValue {
optional int32 cookie = 1;
optional string cvar_name = 2;
}
message CSVCMsg_Menu {
optional int32 dialog_type = 1;
optional bytes menu_key_values = 2;
}
message CSVCMsg_UserMessage {
optional int32 msg_type = 1;
optional bytes msg_data = 2;
optional int32 passthrough = 3;
}
message CSVCMsg_SendTable {
message sendprop_t {
optional int32 type = 1;
optional string var_name = 2;
optional int32 flags = 3;
optional int32 priority = 4;
optional string dt_name = 5;
optional int32 num_elements = 6;
optional float low_value = 7;
optional float high_value = 8;
optional int32 num_bits = 9;
}
optional bool is_end = 1;
optional string net_table_name = 2;
optional bool needs_decoder = 3;
repeated .CSVCMsg_SendTable.sendprop_t props = 4;
}
message CSVCMsg_GameEventList {
message key_t {
optional int32 type = 1;
optional string name = 2;
}
message descriptor_t {
optional int32 eventid = 1;
optional string name = 2;
repeated .CSVCMsg_GameEventList.key_t keys = 3;
}
repeated .CSVCMsg_GameEventList.descriptor_t descriptors = 1;
}
message CSVCMsg_PacketEntities {
message alternate_baseline_t {
optional int32 entity_index = 1;
optional int32 baseline_index = 2;
}
message non_transmitted_entities_t {
optional int32 header_count = 1;
optional bytes data = 2;
}
optional int32 max_entries = 1;
optional int32 updated_entries = 2;
optional bool legacy_is_delta = 3;
optional bool update_baseline = 4;
optional int32 baseline = 5;
optional int32 delta_from = 6;
optional bytes entity_data = 7;
optional bool pending_full_frame = 8;
optional uint32 active_spawngroup_handle = 9;
optional uint32 max_spawngroup_creationsequence = 10;
optional uint32 last_cmd_number_executed = 11;
optional sint32 last_cmd_number_recv_delta = 17;
optional uint32 server_tick = 12;
optional bytes serialized_entities = 13;
repeated .CSVCMsg_PacketEntities.alternate_baseline_t alternate_baselines = 15;
optional uint32 has_pvs_vis_bits = 16;
repeated sint32 cmd_recv_status = 22 [packed = true];
optional .CSVCMsg_PacketEntities.non_transmitted_entities_t non_transmitted_entities = 19;
optional uint32 cq_starved_command_ticks = 20;
optional uint32 cq_discarded_command_ticks = 21;
optional bytes dev_padding = 999;
}
message CSVCMsg_TempEntities {
optional bool reliable = 1;
optional int32 num_entries = 2;
optional bytes entity_data = 3;
}
message CSVCMsg_CreateStringTable {
optional string name = 1;
optional int32 num_entries = 2;
optional bool user_data_fixed_size = 3;
optional int32 user_data_size = 4;
optional int32 user_data_size_bits = 5;
optional int32 flags = 6;
optional bytes string_data = 7;
optional int32 uncompressed_size = 8;
optional bool data_compressed = 9;
optional bool using_varint_bitcounts = 10;
}
message CSVCMsg_UpdateStringTable {
optional int32 table_id = 1;
optional int32 num_changed_entries = 2;
optional bytes string_data = 3;
}
message CSVCMsg_VoiceData {
optional .CMsgVoiceAudio audio = 1;
optional int32 client = 2 [default = -1];
optional bool proximity = 3;
optional fixed64 xuid = 4;
optional int32 audible_mask = 5;
optional uint32 tick = 6;
optional int32 passthrough = 7;
}
message CSVCMsg_PacketReliable {
optional int32 tick = 1;
optional int32 messagessize = 2;
optional bool state = 3;
}
message CSVCMsg_FullFrameSplit {
optional int32 tick = 1;
optional int32 section = 2;
optional int32 total = 3;
optional bytes data = 4;
}
message CSVCMsg_HLTVStatus {
optional string master = 1;
optional int32 clients = 2;
optional int32 slots = 3;
optional int32 proxies = 4;
}
message CSVCMsg_ServerSteamID {
optional uint64 steam_id = 1;
}
message CSVCMsg_CmdKeyValues {
optional bytes data = 1;
}
message CSVCMsg_RconServerDetails {
optional bytes token = 1;
optional string details = 2;
}
message CMsgIPCAddress {
optional fixed64 computer_guid = 1;
optional uint32 process_id = 2;
}
message CMsgServerPeer {
optional int32 player_slot = 1 [default = -1];
optional fixed64 steamid = 2;
optional .CMsgIPCAddress ipc = 3;
optional bool they_hear_you = 4;
optional bool you_hear_them = 5;
optional bool is_listenserver_host = 6;
}
message CSVCMsg_PeerList {
repeated .CMsgServerPeer peer = 1;
}
message CSVCMsg_ClearAllStringTables {
optional string mapname = 1;
optional bool create_tables_skipped = 3;
}
message ProtoFlattenedSerializerField_t {
message polymorphic_field_t {
optional int32 polymorphic_field_serializer_name_sym = 1;
optional int32 polymorphic_field_serializer_version = 2;
}
optional int32 var_type_sym = 1;
optional int32 var_name_sym = 2;
optional int32 bit_count = 3;
optional float low_value = 4;
optional float high_value = 5;
optional int32 encode_flags = 6;
optional int32 field_serializer_name_sym = 7;
optional int32 field_serializer_version = 8;
optional int32 send_node_sym = 9;
optional int32 var_encoder_sym = 10;
repeated .ProtoFlattenedSerializerField_t.polymorphic_field_t polymorphic_types = 11;
optional int32 var_serializer_sym = 12;
}
message ProtoFlattenedSerializer_t {
optional int32 serializer_name_sym = 1;
optional int32 serializer_version = 2;
repeated int32 fields_index = 3;
}
message CSVCMsg_FlattenedSerializer {
repeated .ProtoFlattenedSerializer_t serializers = 1;
repeated string symbols = 2;
repeated .ProtoFlattenedSerializerField_t fields = 3;
}
message CSVCMsg_StopSound {
optional fixed32 guid = 1;
}
message CBidirMsg_RebroadcastGameEvent {
optional bool posttoserver = 1;
optional int32 buftype = 2;
optional uint32 clientbitcount = 3;
optional uint64 receivingclients = 4;
}
message CBidirMsg_RebroadcastSource {
optional int32 eventsource = 1;
}
message CMsgServerNetworkStats {
message Port {
optional int32 port = 1;
optional string name = 2;
}
message Player {
optional uint64 steamid = 1;
optional string remote_addr = 2;
optional int32 ping_avg_ms = 4;
optional float packet_loss_pct = 5;
optional bool is_bot = 6;
optional float loss_in = 7;
optional float loss_out = 8;
optional int32 engine_latency_ms = 9;
}
optional bool dedicated = 1;
optional int32 cpu_usage = 2;
optional int32 memory_used_mb = 3;
optional int32 memory_free_mb = 4;
optional int32 uptime = 5;
optional int32 spawn_count = 6;
optional int32 num_clients = 8;
optional int32 num_bots = 9;
optional int32 num_spectators = 10;
optional int32 num_tv_relays = 11;
optional float fps = 12;
repeated .CMsgServerNetworkStats.Port ports = 17;
optional float avg_ping_ms = 18;
optional float avg_engine_latency_out = 19;
optional float avg_packets_out = 20;
optional float avg_packets_in = 21;
optional float avg_loss_out = 22;
optional float avg_loss_in = 23;
optional float avg_data_out = 24;
optional float avg_data_in = 25;
optional uint64 total_data_in = 26;
optional uint64 total_packets_in = 27;
optional uint64 total_data_out = 28;
optional uint64 total_packets_out = 29;
repeated .CMsgServerNetworkStats.Player players = 30;
}
message CSVCMsg_HltvReplay {
optional int32 delay = 1;
optional int32 primary_target = 2 [default = -1];
optional int32 replay_stop_at = 3;
optional int32 replay_start_at = 4;
optional int32 replay_slowdown_begin = 5;
optional int32 replay_slowdown_end = 6;
optional float replay_slowdown_rate = 7;
optional int32 reason = 8;
}
message CCLCMsg_HltvReplay {
optional int32 request = 1;
optional float slowdown_length = 2;
optional float slowdown_rate = 3;
optional int32 primary_target = 4 [default = -1];
optional float event_time = 5;
}
message CSVCMsg_Broadcast_Command {
optional string cmd = 1;
}
message CCLCMsg_HltvFixupOperatorTick {
optional int32 tick = 1;
optional bytes props_data = 2;
optional .CMsgVector origin = 3;
optional .CMsgQAngle eye_angles = 4;
optional int32 observer_mode = 5;
optional bool cameraman_scoreboard = 6;
optional int32 observer_target = 7;
optional .CMsgVector view_offset = 8;
}
message CSVCMsg_HltvFixupOperatorStatus {
optional uint32 mode = 1;
optional string override_operator_name = 2;
}
message CMsgServerUserCmd {
optional bytes data = 1;
optional int32 cmd_number = 2;
optional int32 player_slot = 3 [default = -1];
optional int32 server_tick_executed = 4;
optional int32 client_tick = 5;
}
message CSVCMsg_UserCommands {
repeated .CMsgServerUserCmd commands = 1;
}

View file

@ -0,0 +1,126 @@
import "google/protobuf/descriptor.proto";
extend .google.protobuf.EnumValueOptions {
optional string network_connection_token = 50500;
}
enum ENetworkDisconnectionReason {
NETWORK_DISCONNECT_INVALID = 0;
NETWORK_DISCONNECT_SHUTDOWN = 1;
NETWORK_DISCONNECT_DISCONNECT_BY_USER = 2 [(network_connection_token) = "#GameUI_Disconnect_User"];
NETWORK_DISCONNECT_DISCONNECT_BY_SERVER = 3 [(network_connection_token) = "#GameUI_Disconnect_Server"];
NETWORK_DISCONNECT_LOST = 4 [(network_connection_token) = "#GameUI_Disconnect_ConnectionLost"];
NETWORK_DISCONNECT_OVERFLOW = 5 [(network_connection_token) = "#GameUI_Disconnect_ConnectionOverflow"];
NETWORK_DISCONNECT_STEAM_BANNED = 6 [(network_connection_token) = "#GameUI_Disconnect_SteamIDBanned"];
NETWORK_DISCONNECT_STEAM_INUSE = 7 [(network_connection_token) = "#GameUI_Disconnect_SteamIDInUse"];
NETWORK_DISCONNECT_STEAM_TICKET = 8 [(network_connection_token) = "#GameUI_Disconnect_SteamTicket"];
NETWORK_DISCONNECT_STEAM_LOGON = 9 [(network_connection_token) = "#GameUI_Disconnect_SteamLogon"];
NETWORK_DISCONNECT_STEAM_AUTHCANCELLED = 10 [(network_connection_token) = "#GameUI_Disconnect_SteamLogon"];
NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED = 11 [(network_connection_token) = "#GameUI_Disconnect_SteamLogon"];
NETWORK_DISCONNECT_STEAM_AUTHINVALID = 12 [(network_connection_token) = "#GameUI_Disconnect_SteamLogon"];
NETWORK_DISCONNECT_STEAM_VACBANSTATE = 13 [(network_connection_token) = "#GameUI_Disconnect_SteamVAC"];
NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE = 14 [(network_connection_token) = "#GameUI_Disconnect_SteamInUse"];
NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT = 15 [(network_connection_token) = "#GameUI_Disconnect_SteamTimeOut"];
NETWORK_DISCONNECT_STEAM_DROPPED = 16 [(network_connection_token) = "#GameUI_Disconnect_SteamDropped"];
NETWORK_DISCONNECT_STEAM_OWNERSHIP = 17 [(network_connection_token) = "#GameUI_Disconnect_SteamOwnership"];
NETWORK_DISCONNECT_SERVERINFO_OVERFLOW = 18 [(network_connection_token) = "#GameUI_Disconnect_ServerInfoOverflow"];
NETWORK_DISCONNECT_TICKMSG_OVERFLOW = 19 [(network_connection_token) = "#GameUI_Disconnect_TickMessage"];
NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW = 20 [(network_connection_token) = "#GameUI_Disconnect_StringTableMessage"];
NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW = 21 [(network_connection_token) = "#GameUI_Disconnect_DeltaEntMessage"];
NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW = 22 [(network_connection_token) = "#GameUI_Disconnect_TempEntMessage"];
NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW = 23 [(network_connection_token) = "#GameUI_Disconnect_SoundsMessage"];
NETWORK_DISCONNECT_SNAPSHOTOVERFLOW = 24 [(network_connection_token) = "#GameUI_Disconnect_SnapshotOverflow"];
NETWORK_DISCONNECT_SNAPSHOTERROR = 25 [(network_connection_token) = "#GameUI_Disconnect_SnapshotError"];
NETWORK_DISCONNECT_RELIABLEOVERFLOW = 26 [(network_connection_token) = "#GameUI_Disconnect_ReliableOverflow"];
NETWORK_DISCONNECT_BADDELTATICK = 27 [(network_connection_token) = "#GameUI_Disconnect_BadClientDeltaTick"];
NETWORK_DISCONNECT_NOMORESPLITS = 28 [(network_connection_token) = "#GameUI_Disconnect_NoMoreSplits"];
NETWORK_DISCONNECT_TIMEDOUT = 29 [(network_connection_token) = "#GameUI_Disconnect_TimedOut"];
NETWORK_DISCONNECT_DISCONNECTED = 30 [(network_connection_token) = "#GameUI_Disconnect_Disconnected"];
NETWORK_DISCONNECT_LEAVINGSPLIT = 31 [(network_connection_token) = "#GameUI_Disconnect_LeavingSplit"];
NETWORK_DISCONNECT_DIFFERENTCLASSTABLES = 32 [(network_connection_token) = "#GameUI_Disconnect_DifferentClassTables"];
NETWORK_DISCONNECT_BADRELAYPASSWORD = 33 [(network_connection_token) = "#GameUI_Disconnect_BadRelayPassword"];
NETWORK_DISCONNECT_BADSPECTATORPASSWORD = 34 [(network_connection_token) = "#GameUI_Disconnect_BadSpectatorPassword"];
NETWORK_DISCONNECT_HLTVRESTRICTED = 35 [(network_connection_token) = "#GameUI_Disconnect_HLTVRestricted"];
NETWORK_DISCONNECT_NOSPECTATORS = 36 [(network_connection_token) = "#GameUI_Disconnect_NoSpectators"];
NETWORK_DISCONNECT_HLTVUNAVAILABLE = 37 [(network_connection_token) = "#GameUI_Disconnect_HLTVUnavailable"];
NETWORK_DISCONNECT_HLTVSTOP = 38 [(network_connection_token) = "#GameUI_Disconnect_HLTVStop"];
NETWORK_DISCONNECT_KICKED = 39 [(network_connection_token) = "#GameUI_Disconnect_Kicked"];
NETWORK_DISCONNECT_BANADDED = 40 [(network_connection_token) = "#GameUI_Disconnect_BanAdded"];
NETWORK_DISCONNECT_KICKBANADDED = 41 [(network_connection_token) = "#GameUI_Disconnect_KickBanAdded"];
NETWORK_DISCONNECT_HLTVDIRECT = 42 [(network_connection_token) = "#GameUI_Disconnect_HLTVDirect"];
NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA = 43 [(network_connection_token) = "#GameUI_Disconnect_PureServer_ClientExtra"];
NETWORK_DISCONNECT_PURESERVER_MISMATCH = 44 [(network_connection_token) = "#GameUI_Disconnect_PureServer_Mismatch"];
NETWORK_DISCONNECT_USERCMD = 45 [(network_connection_token) = "#GameUI_Disconnect_UserCmd"];
NETWORK_DISCONNECT_REJECTED_BY_GAME = 46 [(network_connection_token) = "#GameUI_Disconnect_RejectedByGame"];
NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR = 47 [(network_connection_token) = "#GameUI_Disconnect_MessageParseError"];
NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR = 48 [(network_connection_token) = "#GameUI_Disconnect_InvalidMessageError"];
NETWORK_DISCONNECT_BAD_SERVER_PASSWORD = 49 [(network_connection_token) = "#GameUI_Disconnect_BadServerPassword"];
NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION = 50;
NETWORK_DISCONNECT_CONNECTION_FAILURE = 51 [(network_connection_token) = "#GameUI_Disconnect_ConnectionFailure"];
NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS = 52 [(network_connection_token) = "#GameUI_Disconnect_NoPeerGroupHandlers"];
NETWORK_DISCONNECT_RECONNECTION = 53;
NETWORK_DISCONNECT_LOOPSHUTDOWN = 54 [(network_connection_token) = "#GameUI_Disconnect_LoopShutdown"];
NETWORK_DISCONNECT_LOOPDEACTIVATE = 55 [(network_connection_token) = "#GameUI_Disconnect_LoopDeactivate"];
NETWORK_DISCONNECT_HOST_ENDGAME = 56 [(network_connection_token) = "#GameUI_Disconnect_Host_EndGame"];
NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE = 57 [(network_connection_token) = "#GameUI_Disconnect_LoopLevelLoadActivate"];
NETWORK_DISCONNECT_CREATE_SERVER_FAILED = 58 [(network_connection_token) = "#GameUI_Disconnect_CreateServerFailed"];
NETWORK_DISCONNECT_EXITING = 59 [(network_connection_token) = "#GameUI_Disconnect_ExitingEngine"];
NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE = 60 [(network_connection_token) = "#GameUI_Disconnect_Request_HSIdle"];
NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY = 61 [(network_connection_token) = "#GameUI_Disconnect_Request_HLTVRelay"];
NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL = 62 [(network_connection_token) = "#GameUI_ClientConsistencyFail"];
NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP = 63 [(network_connection_token) = "#GameUI_ClientUnableToCRCMap"];
NETWORK_DISCONNECT_CLIENT_NO_MAP = 64 [(network_connection_token) = "#GameUI_ClientNoMap"];
NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP = 65 [(network_connection_token) = "#GameUI_ClientDifferentMap"];
NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM = 66 [(network_connection_token) = "#GameUI_ServerRequireSteams"];
NETWORK_DISCONNECT_STEAM_DENY_MISC = 67 [(network_connection_token) = "#GameUI_Disconnect_SteamDeny_Misc"];
NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 68 [(network_connection_token) = "#GameUI_Disconnect_SteamDeny_BadAntiCheat"];
NETWORK_DISCONNECT_SERVER_SHUTDOWN = 69 [(network_connection_token) = "#GameUI_Disconnect_ServerShutdown"];
NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 71 [(network_connection_token) = "#GameUI_Disconnect_ReplayIncompatible"];
NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 72 [(network_connection_token) = "#GameUI_Disconnect_ConnectionTimedout"];
NETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 73 [(network_connection_token) = "#GameUI_Disconnect_ServerIncompatible"];
NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS = 74 [(network_connection_token) = "#GameUI_Disconnect_LocalProblem_ManyRelays"];
NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY = 75 [(network_connection_token) = "#GameUI_Disconnect_LocalProblem_HostedServerPrimaryRelay"];
NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG = 76 [(network_connection_token) = "#GameUI_Disconnect_LocalProblem_NetworkConfig"];
NETWORK_DISCONNECT_LOCALPROBLEM_OTHER = 77 [(network_connection_token) = "#GameUI_Disconnect_LocalProblem_Other"];
NETWORK_DISCONNECT_REMOTE_TIMEOUT = 79 [(network_connection_token) = "#GameUI_Disconnect_RemoteProblem_Timeout"];
NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING = 80 [(network_connection_token) = "#GameUI_Disconnect_RemoteProblem_TimeoutConnecting"];
NETWORK_DISCONNECT_REMOTE_OTHER = 81 [(network_connection_token) = "#GameUI_Disconnect_RemoteProblem_Other"];
NETWORK_DISCONNECT_REMOTE_BADCRYPT = 82 [(network_connection_token) = "#GameUI_Disconnect_RemoteProblem_BadCrypt"];
NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED = 83 [(network_connection_token) = "#GameUI_Disconnect_RemoteProblem_BadCert"];
NETWORK_DISCONNECT_UNUSUAL = 84 [(network_connection_token) = "#GameUI_Disconnect_Unusual"];
NETWORK_DISCONNECT_INTERNAL_ERROR = 85 [(network_connection_token) = "#GameUI_Disconnect_InternalError"];
NETWORK_DISCONNECT_REJECT_BADCHALLENGE = 128 [(network_connection_token) = "#GameUI_ServerRejectBadChallenge"];
NETWORK_DISCONNECT_REJECT_NOLOBBY = 129 [(network_connection_token) = "#GameUI_ServerNoLobby"];
NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP = 130 [(network_connection_token) = "#Valve_Reject_Background_Map"];
NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER = 131 [(network_connection_token) = "#Valve_Reject_Single_Player"];
NETWORK_DISCONNECT_REJECT_HIDDEN_GAME = 132 [(network_connection_token) = "#Valve_Reject_Hidden_Game"];
NETWORK_DISCONNECT_REJECT_LANRESTRICT = 133 [(network_connection_token) = "#GameUI_ServerRejectLANRestrict"];
NETWORK_DISCONNECT_REJECT_BADPASSWORD = 134 [(network_connection_token) = "#GameUI_ServerRejectBadPassword"];
NETWORK_DISCONNECT_REJECT_SERVERFULL = 135 [(network_connection_token) = "#GameUI_ServerRejectServerFull"];
NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION = 136 [(network_connection_token) = "#GameUI_ServerRejectInvalidReservation"];
NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL = 137 [(network_connection_token) = "#GameUI_ServerRejectFailedChannel"];
NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY = 138 [(network_connection_token) = "#Valve_Reject_Connect_From_Lobby"];
NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY = 139 [(network_connection_token) = "#Valve_Reject_Reserved_For_Lobby"];
NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH = 140 [(network_connection_token) = "#GameUI_ServerReject_InvalidKeyLength"];
NETWORK_DISCONNECT_REJECT_OLDPROTOCOL = 141 [(network_connection_token) = "#GameUI_ServerRejectOldProtocol"];
NETWORK_DISCONNECT_REJECT_NEWPROTOCOL = 142 [(network_connection_token) = "#GameUI_ServerRejectNewProtocol"];
NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION = 143 [(network_connection_token) = "#GameUI_ServerRejectInvalidConnection"];
NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN = 144 [(network_connection_token) = "#GameUI_ServerRejectInvalidCertLen"];
NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN = 145 [(network_connection_token) = "#GameUI_ServerRejectInvalidSteamCertLen"];
NETWORK_DISCONNECT_REJECT_STEAM = 146 [(network_connection_token) = "#GameUI_ServerRejectSteam"];
NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 147 [(network_connection_token) = "#GameUI_ServerAuthDisabled"];
NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 148 [(network_connection_token) = "#GameUI_ServerCDKeyAuthInvalid"];
NETWORK_DISCONNECT_REJECT_BANNED = 149 [(network_connection_token) = "#GameUI_ServerRejectBanned"];
NETWORK_DISCONNECT_KICKED_TEAMKILLING = 150 [(network_connection_token) = "#Player_DisconnectReason_TeamKilling"];
NETWORK_DISCONNECT_KICKED_TK_START = 151 [(network_connection_token) = "#Player_DisconnectReason_TK_Start"];
NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 152 [(network_connection_token) = "#Player_DisconnectReason_UntrustedAccount"];
NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 153 [(network_connection_token) = "#Player_DisconnectReason_ConvictedAccount"];
NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 154 [(network_connection_token) = "#Player_DisconnectReason_CompetitiveCooldown"];
NETWORK_DISCONNECT_KICKED_TEAMHURTING = 155 [(network_connection_token) = "#Player_DisconnectReason_TeamHurting"];
NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 156 [(network_connection_token) = "#Player_DisconnectReason_HostageKilling"];
NETWORK_DISCONNECT_KICKED_VOTEDOFF = 157 [(network_connection_token) = "#Player_DisconnectReason_VotedOff"];
NETWORK_DISCONNECT_KICKED_IDLE = 158 [(network_connection_token) = "#Player_DisconnectReason_Idle"];
NETWORK_DISCONNECT_KICKED_SUICIDE = 159 [(network_connection_token) = "#Player_DisconnectReason_Suicide"];
NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 160 [(network_connection_token) = "#Player_DisconnectReason_NoSteamLogin"];
NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 161 [(network_connection_token) = "#Player_DisconnectReason_NoSteamTicket"];
}

View file

@ -0,0 +1,242 @@
import "network_connection.proto";
enum SignonState_t {
SIGNONSTATE_NONE = 0;
SIGNONSTATE_CHALLENGE = 1;
SIGNONSTATE_CONNECTED = 2;
SIGNONSTATE_NEW = 3;
SIGNONSTATE_PRESPAWN = 4;
SIGNONSTATE_SPAWN = 5;
SIGNONSTATE_FULL = 6;
SIGNONSTATE_CHANGELEVEL = 7;
}
enum NET_Messages {
net_NOP = 0;
net_Disconnect_Legacy = 1;
net_SplitScreenUser = 3;
net_Tick = 4;
net_StringCmd = 5;
net_SetConVar = 6;
net_SignonState = 7;
net_SpawnGroup_Load = 8;
net_SpawnGroup_ManifestUpdate = 9;
net_SpawnGroup_SetCreationTick = 11;
net_SpawnGroup_Unload = 12;
net_SpawnGroup_LoadCompleted = 13;
net_DebugOverlay = 15;
}
enum SpawnGroupFlags_t {
SPAWN_GROUP_LOAD_ENTITIES_FROM_SAVE = 1;
SPAWN_GROUP_DONT_SPAWN_ENTITIES = 2;
SPAWN_GROUP_SYNCHRONOUS_SPAWN = 4;
SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP = 8;
SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES = 16;
SPAWN_GROUP_BLOCK_UNTIL_LOADED = 64;
SPAWN_GROUP_LOAD_STREAMING_DATA = 128;
SPAWN_GROUP_CREATE_NEW_SCENE_WORLD = 256;
}
message CMsgVector {
optional float x = 1;
optional float y = 2;
optional float z = 3;
optional float w = 4;
}
message CMsgVector2D {
optional float x = 1;
optional float y = 2;
}
message CMsgQAngle {
optional float x = 1;
optional float y = 2;
optional float z = 3;
}
message CMsgQuaternion {
optional float x = 1;
optional float y = 2;
optional float z = 3;
optional float w = 4;
}
message CMsgTransform {
optional .CMsgVector position = 1;
optional float scale = 2;
optional .CMsgQuaternion orientation = 3;
}
message CMsgRGBA {
optional int32 r = 1;
optional int32 g = 2;
optional int32 b = 3;
optional int32 a = 4;
}
message CMsgPlayerInfo {
optional string name = 1;
optional fixed64 xuid = 2;
optional int32 userid = 3;
optional fixed64 steamid = 4;
optional bool fakeplayer = 5;
optional bool ishltv = 6;
}
message CEntityMsg {
optional uint32 target_entity = 1 [default = 16777215];
}
message CMsg_CVars {
message CVar {
optional string name = 1;
optional string value = 2;
}
repeated .CMsg_CVars.CVar cvars = 1;
}
message CNETMsg_NOP {
}
message CNETMsg_SplitScreenUser {
optional int32 slot = 1;
}
message CNETMsg_Tick {
optional uint32 tick = 1;
optional uint32 host_frametime = 2;
optional uint32 host_frametime_std_deviation = 3;
optional uint32 host_computationtime = 4;
optional uint32 host_computationtime_std_deviation = 5;
optional uint32 host_framestarttime_std_deviation = 6;
optional uint32 host_loss = 7;
optional uint32 host_unfiltered_frametime = 8;
optional uint32 hltv_replay_flags = 9;
optional uint32 expected_long_tick = 10;
optional string expected_long_tick_reason = 11;
}
message CNETMsg_StringCmd {
optional string command = 1;
optional uint32 prediction_sync = 2;
}
message CNETMsg_SetConVar {
optional .CMsg_CVars convars = 1;
}
message CNETMsg_SignonState {
optional .SignonState_t signon_state = 1 [default = SIGNONSTATE_NONE];
optional uint32 spawn_count = 2;
optional uint32 num_server_players = 3;
repeated string players_networkids = 4;
optional string map_name = 5;
optional string addons = 6;
}
message CSVCMsg_GameEvent {
message key_t {
optional int32 type = 1;
optional string val_string = 2;
optional float val_float = 3;
optional int32 val_long = 4;
optional int32 val_short = 5;
optional int32 val_byte = 6;
optional bool val_bool = 7;
optional uint64 val_uint64 = 8;
}
optional string event_name = 1;
optional int32 eventid = 2;
repeated .CSVCMsg_GameEvent.key_t keys = 3;
}
message CSVCMsgList_GameEvents {
message event_t {
optional int32 tick = 1;
optional .CSVCMsg_GameEvent event = 2;
}
repeated .CSVCMsgList_GameEvents.event_t events = 1;
}
message CNETMsg_SpawnGroup_Load {
optional string worldname = 1;
optional string entitylumpname = 2;
optional string entityfiltername = 3;
optional uint32 spawngrouphandle = 4;
optional uint32 spawngroupownerhandle = 5;
optional .CMsgVector world_offset_pos = 6;
optional .CMsgQAngle world_offset_angle = 7;
optional bytes spawngroupmanifest = 8;
optional uint32 flags = 9;
optional int32 tickcount = 10;
optional bool manifestincomplete = 11;
optional string localnamefixup = 12;
optional string parentnamefixup = 13;
optional int32 manifestloadpriority = 14;
optional uint32 worldgroupid = 15;
optional uint32 creationsequence = 16;
optional string savegamefilename = 17;
optional uint32 spawngroupparenthandle = 18;
optional bool leveltransition = 19;
optional string worldgroupname = 20;
}
message CNETMsg_SpawnGroup_ManifestUpdate {
optional uint32 spawngrouphandle = 1;
optional bytes spawngroupmanifest = 2;
optional bool manifestincomplete = 3;
}
message CNETMsg_SpawnGroup_SetCreationTick {
optional uint32 spawngrouphandle = 1;
optional int32 tickcount = 2;
optional uint32 creationsequence = 3;
}
message CNETMsg_SpawnGroup_Unload {
optional uint32 spawngrouphandle = 1;
optional uint32 flags = 2;
optional int32 tickcount = 3;
}
message CNETMsg_SpawnGroup_LoadCompleted {
optional uint32 spawngrouphandle = 1;
}
message CSVCMsg_GameSessionConfiguration {
optional bool is_multiplayer = 1;
optional bool is_loadsavegame = 2;
optional bool is_background_map = 3;
optional bool is_headless = 4;
optional uint32 min_client_limit = 5;
optional uint32 max_client_limit = 6;
optional uint32 max_clients = 7;
optional fixed32 tick_interval = 8;
optional string hostname = 9;
optional string savegamename = 10;
optional string s1_mapname = 11;
optional string gamemode = 12;
optional string server_ip_address = 13;
optional bytes data = 14;
optional bool is_localonly = 15;
optional bool no_steam_server = 19;
optional bool is_transition = 16;
optional string previouslevel = 17;
optional string landmarkname = 18;
}
message CNETMsg_DebugOverlay {
optional int32 etype = 1;
repeated .CMsgVector vectors = 2;
repeated .CMsgRGBA colors = 3;
repeated float dimensions = 4;
repeated float times = 5;
repeated bool bools = 6;
repeated uint64 uint64s = 7;
repeated string strings = 8;
}

View file

@ -0,0 +1,17 @@
message NetMessageSplitscreenUserChanged {
optional uint32 slot = 1;
}
message NetMessageConnectionClosed {
optional uint32 reason = 1;
}
message NetMessageConnectionCrashed {
optional uint32 reason = 1;
}
message NetMessagePacketStart {
}
message NetMessagePacketEnd {
}

View file

@ -0,0 +1,65 @@
import "steamnetworkingsockets_messages_certs.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
message CMsgSteamDatagramRelayAuthTicket {
message ExtraField {
optional string name = 1;
optional string string_value = 2;
optional sint64 int64_value = 3;
optional fixed64 fixed64_value = 5;
}
optional fixed32 time_expiry = 1;
optional string authorized_client_identity_string = 14;
optional string gameserver_identity_string = 15;
optional fixed32 authorized_public_ip = 3;
optional bytes gameserver_address = 11;
optional uint32 app_id = 7;
optional uint32 virtual_port = 10;
repeated .CMsgSteamDatagramRelayAuthTicket.ExtraField extra_fields = 8;
optional fixed64 legacy_authorized_steam_id = 2;
optional fixed64 legacy_gameserver_steam_id = 4;
optional fixed32 legacy_gameserver_pop_id = 9;
optional bytes legacy_authorized_client_identity_binary = 12;
optional bytes legacy_gameserver_identity_binary = 13;
}
message CMsgSteamDatagramSignedRelayAuthTicket {
optional fixed64 reserved_do_not_use = 1;
optional bytes ticket = 3;
optional bytes signature = 4;
optional fixed64 key_id = 2;
repeated .CMsgSteamDatagramCertificateSigned certs = 5;
}
message CMsgSteamDatagramCachedCredentialsForApp {
optional bytes private_key = 1;
optional bytes cert = 2;
repeated bytes relay_tickets = 3;
}
message CMsgSteamDatagramGameCoordinatorServerLogin {
optional uint32 time_generated = 1;
optional uint32 appid = 2;
optional bytes routing = 3;
optional bytes appdata = 4;
optional bytes legacy_identity_binary = 5;
optional string identity_string = 6;
optional fixed64 dummy_steam_id = 99;
}
message CMsgSteamDatagramSignedGameCoordinatorServerLogin {
optional .CMsgSteamDatagramCertificateSigned cert = 1;
optional bytes login = 2;
optional bytes signature = 3;
}
message CMsgSteamDatagramHostedServerAddressPlaintext {
optional fixed32 ipv4 = 1;
optional bytes ipv6 = 2;
optional uint32 port = 3;
optional fixed64 routing_secret = 4;
optional uint32 protocol_version = 5;
}

View file

@ -0,0 +1,534 @@
import "steamnetworkingsockets_messages_certs.proto";
import "steamnetworkingsockets_messages.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
enum ESteamDatagramMsgID {
k_ESteamDatagramMsg_Invalid = 0;
k_ESteamDatagramMsg_RouterPingRequest = 1;
k_ESteamDatagramMsg_RouterPingReply = 2;
k_ESteamDatagramMsg_GameserverPingRequest = 3;
k_ESteamDatagramMsg_GameserverSessionRequest = 5;
k_ESteamDatagramMsg_GameserverSessionEstablished = 6;
k_ESteamDatagramMsg_NoSession = 7;
k_ESteamDatagramMsg_Diagnostic = 8;
k_ESteamDatagramMsg_DataClientToRouter = 9;
k_ESteamDatagramMsg_DataRouterToServer = 10;
k_ESteamDatagramMsg_DataServerToRouter = 11;
k_ESteamDatagramMsg_DataRouterToClient = 12;
k_ESteamDatagramMsg_Stats = 13;
k_ESteamDatagramMsg_ClientPingSampleRequest = 14;
k_ESteamDatagramMsg_ClientPingSampleReply = 15;
k_ESteamDatagramMsg_ClientToRouterSwitchedPrimary = 16;
k_ESteamDatagramMsg_RelayHealth = 17;
k_ESteamDatagramMsg_ConnectRequest = 18;
k_ESteamDatagramMsg_ConnectOK = 19;
k_ESteamDatagramMsg_ConnectionClosed = 20;
k_ESteamDatagramMsg_NoConnection = 21;
k_ESteamDatagramMsg_TicketDecryptRequest = 22;
k_ESteamDatagramMsg_TicketDecryptReply = 23;
k_ESteamDatagramMsg_P2PSessionRequest = 24;
k_ESteamDatagramMsg_P2PSessionEstablished = 25;
k_ESteamDatagramMsg_P2PStatsClient = 26;
k_ESteamDatagramMsg_P2PStatsRelay = 27;
k_ESteamDatagramMsg_P2PBadRoute = 28;
k_ESteamDatagramMsg_GameserverPingReply = 29;
k_ESteamDatagramMsg_LegacyGameserverRegistration = 30;
k_ESteamDatagramMsg_SetSecondaryAddressRequest = 31;
k_ESteamDatagramMsg_SetSecondaryAddressResult = 32;
k_ESteamDatagramMsg_RelayToRelayPingRequest = 33;
k_ESteamDatagramMsg_RelayToRelayPingReply = 34;
}
message CMsgSteamNetworkingIPAddress {
optional fixed32 v4 = 1;
optional bytes v6 = 2;
}
message CMsgSteamDatagramSignedMessageGeneric {
optional .CMsgSteamDatagramCertificateSigned cert = 1;
optional bytes signed_data = 2;
optional bytes signature = 3;
optional bytes dummy_pad = 1023;
}
message CMsgSteamDatagramRouterPingReply {
message RouteException {
optional fixed32 data_center_id = 1;
optional uint32 flags = 2;
optional uint32 penalty = 3;
}
message AltAddress {
enum Protocol {
DefaultProtocol = 0;
NetworkNext = 1;
}
optional fixed32 ipv4 = 1;
optional uint32 port = 2;
optional uint32 penalty = 3;
optional .CMsgSteamDatagramRouterPingReply.AltAddress.Protocol protocol = 4 [default = DefaultProtocol];
optional string id = 5;
}
enum Flags {
FLAG_MAYBE_MORE_DATA_CENTERS = 1;
FLAG_MAYBE_MORE_ALT_ADDRESSES = 2;
}
optional fixed32 client_timestamp = 1;
repeated fixed32 latency_datacenter_ids = 2 [packed = true];
repeated uint32 latency_ping_ms = 3 [packed = true];
repeated fixed32 latency_datacenter_ids_p2p = 14 [packed = true];
repeated uint32 latency_ping_ms_p2p = 15 [packed = true];
optional fixed32 your_public_ip = 4;
optional fixed32 your_public_port = 11;
optional fixed32 server_time = 5;
optional fixed64 challenge = 6;
optional uint32 seconds_until_shutdown = 7;
optional fixed32 client_cookie = 8;
optional uint32 scoring_penalty_relay_cluster = 9;
optional uint32 flags = 12;
repeated .CMsgSteamDatagramRouterPingReply.RouteException route_exceptions = 10;
repeated .CMsgSteamDatagramRouterPingReply.AltAddress alt_addresses = 13;
optional bytes dummy_pad = 99;
}
message CMsgSteamDatagramGameserverPingRequestBody {
optional fixed32 relay_popid = 1;
optional .CMsgSteamNetworkingIPAddress your_public_ip = 2;
optional uint32 your_public_port = 3;
optional uint64 relay_unix_time = 4;
optional fixed64 routing_secret = 5;
repeated .CMsgSteamNetworkingIPAddress my_ips = 6;
optional bytes echo = 8;
}
message CMsgSteamDatagramGameserverPingRequestEnvelope {
optional .CMsgSteamDatagramCertificateSigned cert = 6;
optional bytes signed_data = 7;
optional bytes signature = 8;
optional fixed32 legacy_your_public_ip = 1;
optional fixed32 legacy_your_public_port = 5;
optional fixed32 legacy_relay_unix_time = 2;
optional fixed64 legacy_challenge = 3;
optional fixed32 legacy_router_timestamp = 4;
optional bytes dummy_pad = 1023;
}
message CMsgSteamDatagramGameserverPingReplyData {
optional fixed32 echo_relay_unix_time = 2;
optional bytes echo = 8;
optional fixed64 legacy_challenge = 3;
optional fixed32 legacy_router_timestamp = 4;
optional fixed32 data_center_id = 5;
optional uint32 appid = 6;
optional uint32 protocol_version = 7;
optional string build = 9;
optional uint64 network_config_version = 10;
optional fixed32 my_unix_time = 11;
optional bytes routing_blob = 12;
}
message CMsgSteamDatagramNoSessionRelayToClient {
optional fixed32 connection_id = 7;
optional fixed32 your_public_ip = 2;
optional fixed32 your_public_port = 6;
optional fixed32 server_time = 3;
optional fixed64 challenge = 4;
optional uint32 seconds_until_shutdown = 5;
}
message CMsgSteamDatagramNoSessionRelayToPeer {
optional uint32 legacy_relay_session_id = 1;
optional fixed32 from_relay_session_id = 2;
optional fixed32 from_connection_id = 7;
optional fixed64 kludge_pad = 99;
}
message CMsgSteamDatagramClientPingSampleRequest {
optional fixed32 connection_id = 1;
}
message CMsgSteamDatagramClientPingSampleReply {
message POP {
message AltAddress {
optional string id = 1;
optional uint32 front_ping_ms = 2;
optional uint32 penalty = 3;
}
optional fixed32 pop_id = 1;
optional uint32 default_front_ping_ms = 2;
optional uint32 cluster_penalty = 4;
repeated .CMsgSteamDatagramClientPingSampleReply.POP.AltAddress alt_addresses = 7;
optional uint32 default_e2e_ping_ms = 3;
optional uint32 default_e2e_score = 5;
optional fixed32 p2p_via_peer_relay_pop_id = 6;
optional uint32 best_dc_ping_ms = 9;
optional uint32 best_dc_score = 10;
optional fixed32 best_dc_via_relay_pop_id = 11;
optional uint32 default_dc_ping_ms = 12;
optional uint32 default_dc_score = 13;
optional fixed32 default_dc_via_relay_pop_id = 14;
optional uint32 test_dc_ping_ms = 15;
optional uint32 test_dc_score = 16;
optional fixed32 test_dc_via_relay_pop_id = 17;
}
message LegacyDataCenter {
optional fixed32 data_center_id = 1;
optional fixed32 best_dc_via_relay_pop_id = 2;
optional uint32 best_dc_ping_ms = 3;
}
optional fixed32 connection_id = 1;
optional bool relay_override_active = 5;
repeated .CMsgSteamDatagramClientPingSampleReply.POP pops = 2;
repeated .CMsgSteamDatagramClientPingSampleReply.LegacyDataCenter legacy_data_centers = 3;
}
message CMsgSteamDatagramClientSwitchedPrimary {
message RouterQuality {
optional uint32 score = 1;
optional uint32 front_ping = 2;
optional uint32 back_ping = 3;
optional uint32 seconds_until_down = 4;
}
optional fixed32 connection_id = 1;
optional fixed32 from_ip = 2;
optional uint32 from_port = 3;
optional fixed32 from_router_cluster = 4;
optional uint32 from_active_time = 5;
optional uint32 from_active_packets_recv = 6;
optional string from_dropped_reason = 7;
optional uint32 gap_ms = 8;
optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_now = 9;
optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_now = 10;
optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality from_quality_then = 11;
optional .CMsgSteamDatagramClientSwitchedPrimary.RouterQuality to_quality_then = 12;
}
message CMsgSteamDatagramConnectRequest {
optional fixed32 connection_id = 1;
optional fixed64 my_timestamp = 4;
optional uint32 ping_est_ms = 5;
optional uint32 virtual_port = 9;
optional uint32 gameserver_relay_session_id = 2;
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
optional .CMsgSteamDatagramCertificateSigned cert = 7;
optional fixed64 routing_secret = 10;
optional fixed64 legacy_client_steam_id = 3;
}
message CMsgSteamDatagramConnectOK {
optional fixed32 client_connection_id = 1;
optional fixed32 server_connection_id = 7;
optional fixed64 your_timestamp = 3;
optional uint32 delay_time_usec = 4;
optional uint32 gameserver_relay_session_id = 2;
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
optional .CMsgSteamDatagramCertificateSigned cert = 6;
}
message CMsgSteamNetworkingP2PSDRRoutingSummary {
optional uint32 initial_ping = 1;
optional uint32 initial_ping_front_local = 2;
optional uint32 initial_ping_front_remote = 3;
optional uint32 initial_score = 4;
optional fixed32 initial_pop_local = 5;
optional fixed32 initial_pop_remote = 6;
optional uint32 best_ping = 11;
optional uint32 best_ping_front_local = 12;
optional uint32 best_ping_front_remote = 13;
optional uint32 best_score = 14;
optional fixed32 best_pop_local = 15;
optional fixed32 best_pop_remote = 16;
optional uint32 best_time = 17;
optional uint32 negotiation_ms = 7;
optional uint32 selected_seconds = 8;
}
message CMsgSteamDatagramP2PRoutingSummary {
optional .CMsgSteamNetworkingICESessionSummary ice = 2;
optional .CMsgSteamNetworkingP2PSDRRoutingSummary sdr = 3;
}
message CMsgSteamDatagramConnectionClosed {
enum ERelayMode {
None = 0;
EndToEnd = 1;
ClosedByPeer = 2;
}
optional fixed32 to_connection_id = 7;
optional fixed32 from_connection_id = 8;
optional string from_identity_string = 15;
optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_from_identity_binary = 13;
optional fixed64 legacy_from_steam_id = 3;
optional uint32 legacy_gameserver_relay_session_id = 2;
optional fixed32 to_relay_session_id = 9;
optional fixed32 from_relay_session_id = 10;
optional bytes forward_target_relay_routing_token = 11;
optional uint32 forward_target_revision = 12;
optional .CMsgSteamDatagramConnectionClosed.ERelayMode relay_mode = 4 [default = None];
optional string debug = 5;
optional uint32 reason_code = 6;
optional fixed64 routing_secret = 14;
optional bool not_primary_session = 16;
optional bool not_primary_transport = 19;
optional bool relay_override_active = 22;
optional .CMsgSteamDatagramConnectionQuality quality_relay = 17;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 18;
optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 21;
}
message CMsgSteamDatagramNoConnection {
optional fixed32 to_connection_id = 5;
optional fixed32 from_connection_id = 6;
optional uint32 legacy_gameserver_relay_session_id = 2;
optional fixed32 to_relay_session_id = 9;
optional fixed32 from_relay_session_id = 10;
optional string from_identity_string = 7;
optional fixed64 legacy_from_steam_id = 3;
optional bool end_to_end = 4;
optional bool not_primary_session = 12;
optional bool not_primary_transport = 15;
optional bool relay_override_active = 17;
optional .CMsgSteamDatagramConnectionQuality quality_relay = 13;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 14;
optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 16;
optional fixed64 routing_secret = 11;
optional fixed32 dummy_pad = 1023;
}
message CMsgSteamDatagramGameserverSessionRequest {
optional bytes ticket = 1;
optional fixed32 challenge_time = 3;
optional fixed64 challenge = 4;
optional fixed32 client_connection_id = 5;
optional fixed32 server_connection_id = 8;
optional uint64 network_config_version = 6;
optional uint32 protocol_version = 7;
optional string platform = 9;
optional string build = 10;
optional string dev_gameserver_identity = 100;
optional .CMsgSteamDatagramCertificateSigned dev_client_cert = 101;
}
message CMsgSteamDatagramGameserverSessionEstablished {
optional fixed32 connection_id = 1;
optional string gameserver_identity_string = 2;
optional uint32 seconds_until_shutdown = 4;
optional uint32 seq_num_r2c = 6;
optional bytes dummy_legacy_identity_binary = 7;
optional fixed64 legacy_gameserver_steamid = 3;
}
message CMsgSteamDatagramConnectionStatsClientToRouter {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
NOT_PRIMARY_SESSION = 8;
CLIENT_RELAY_OVERRIDE = 32;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
repeated fixed32 ack_relay = 4;
repeated fixed32 legacy_ack_e2e = 5;
optional uint32 flags = 6;
optional fixed32 client_connection_id = 8;
optional uint32 seq_num_c2r = 9;
optional uint32 seq_num_e2e = 10;
}
message CMsgSteamDatagramConnectionStatsRouterToClient {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
optional uint32 seconds_until_shutdown = 6;
optional fixed32 migrate_request_ip = 10;
optional uint32 migrate_request_port = 11;
optional uint32 scoring_penalty_relay_cluster = 12;
repeated fixed32 ack_relay = 13;
repeated fixed32 legacy_ack_e2e = 14;
optional uint32 flags = 15;
optional fixed32 client_connection_id = 7;
optional uint32 seq_num_r2c = 8;
optional uint32 seq_num_e2e = 9;
}
message CMsgSteamDatagramConnectionStatsRouterToServer {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
repeated fixed32 ack_relay = 10;
repeated fixed32 legacy_ack_e2e = 11;
optional uint32 flags = 12;
optional uint32 seq_num_r2s = 5;
optional uint32 seq_num_e2e = 6;
optional string client_identity_string = 15;
optional fixed64 legacy_client_steam_id = 7;
optional uint32 relay_session_id = 8;
optional fixed32 client_connection_id = 9;
optional fixed32 server_connection_id = 13;
optional fixed64 routing_secret = 14;
}
message CMsgSteamDatagramConnectionStatsServerToRouter {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
repeated fixed32 ack_relay = 8;
repeated fixed32 legacy_ack_e2e = 9;
optional uint32 flags = 10;
optional uint32 seq_num_s2r = 3;
optional uint32 seq_num_e2e = 4;
optional uint32 relay_session_id = 6;
optional fixed32 client_connection_id = 7;
optional fixed32 server_connection_id = 11;
}
message CMsgSteamDatagramP2PSessionRequestBody {
message EncryptedData {
optional string peer_identity_string = 1;
}
optional fixed32 challenge_time = 1;
optional fixed64 challenge = 2;
optional fixed32 client_connection_id = 3;
optional fixed64 legacy_peer_steam_id = 4;
optional string peer_identity_string = 11;
optional fixed32 peer_connection_id = 5;
optional bytes encrypted_data = 14;
optional uint32 encryption_your_public_key_lead_byte = 15;
optional bytes encryption_my_ephemeral_public_key = 16;
optional uint32 protocol_version = 8;
optional uint64 network_config_version = 9;
optional string platform = 12;
optional string build = 13;
}
message CMsgSteamDatagramP2PSessionRequest {
optional .CMsgSteamDatagramCertificateSigned cert = 1;
optional bytes body = 2;
optional bytes signature = 3;
}
message CMsgSteamDatagramP2PSessionEstablished {
optional fixed32 connection_id = 1;
optional uint32 seconds_until_shutdown = 3;
optional bytes relay_routing_token = 4;
optional uint32 seq_num_r2c = 5;
}
message CMsgSteamDatagramConnectionStatsP2PClientToRouter {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
NOT_PRIMARY_SESSION = 8;
NOT_PRIMARY_TRANSPORT_E2E = 16;
CLIENT_RELAY_OVERRIDE = 32;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 14;
repeated fixed32 ack_relay = 3;
repeated fixed32 legacy_ack_e2e = 4;
optional uint32 flags = 5;
optional bytes forward_target_relay_routing_token = 6;
optional uint32 forward_target_revision = 7;
optional bytes routes = 8;
optional uint32 ack_peer_routes_revision = 9;
optional fixed32 connection_id = 10;
optional uint32 seq_num_c2r = 11;
optional uint32 seq_num_e2e = 12;
}
message CMsgSteamDatagramConnectionStatsP2PRouterToClient {
enum Flags {
ACK_REQUEST_RELAY = 1;
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
NOT_PRIMARY_TRANSPORT_E2E = 16;
}
optional .CMsgSteamDatagramConnectionQuality quality_relay = 1;
optional .CMsgSteamDatagramConnectionQuality quality_e2e = 2;
optional uint32 seconds_until_shutdown = 3;
optional fixed32 migrate_request_ip = 4;
optional uint32 migrate_request_port = 5;
optional uint32 scoring_penalty_relay_cluster = 6;
repeated fixed32 ack_relay = 7;
repeated fixed32 legacy_ack_e2e = 8;
optional uint32 flags = 9;
optional uint32 ack_forward_target_revision = 10;
optional bytes routes = 11;
optional uint32 ack_peer_routes_revision = 12;
optional fixed32 connection_id = 13;
optional uint32 seq_num_r2c = 14;
optional uint32 seq_num_e2e = 15;
}
message CMsgSteamDatagramP2PBadRouteRouterToClient {
optional fixed32 connection_id = 1;
optional bytes failed_relay_routing_token = 2;
optional uint32 ack_forward_target_revision = 3;
optional fixed64 kludge_pad = 99;
}
message CMsgSteamDatagramP2PRoutes {
message RelayCluster {
optional fixed32 pop_id = 1;
optional uint32 ping_ms = 2;
optional uint32 score_penalty = 3;
optional bytes session_relay_routing_token = 4;
}
message Route {
optional fixed32 my_pop_id = 1;
optional fixed32 your_pop_id = 2;
optional uint32 legacy_score = 3;
optional uint32 interior_score = 4;
}
repeated .CMsgSteamDatagramP2PRoutes.RelayCluster relay_clusters = 1;
repeated .CMsgSteamDatagramP2PRoutes.Route routes = 2;
optional uint32 revision = 3;
}
message CMsgSteamDatagramSetSecondaryAddressRequest {
optional fixed32 client_main_ip = 1;
optional fixed32 client_main_port = 2;
optional fixed32 client_connection_id = 3;
optional string client_identity = 4;
optional bool request_send_duplication = 5;
optional bytes kludge_pad = 99;
}
message CMsgSteamDatagramSetSecondaryAddressResult {
optional bool success = 1;
optional string message = 2;
}

View file

@ -0,0 +1,45 @@
import "google/protobuf/descriptor.proto";
extend .google.protobuf.FieldOptions {
optional bool key_field = 60000 [default = false];
}
extend .google.protobuf.MessageOptions {
optional int32 msgpool_soft_limit = 60000 [default = 32];
optional int32 msgpool_hard_limit = 60001 [default = 384];
}
enum GCProtoBufMsgSrc {
GCProtoBufMsgSrc_Unspecified = 0;
GCProtoBufMsgSrc_FromSystem = 1;
GCProtoBufMsgSrc_FromSteamID = 2;
GCProtoBufMsgSrc_FromGC = 3;
GCProtoBufMsgSrc_ReplySystem = 4;
}
message CMsgProtoBufHeader {
option (msgpool_soft_limit) = 256;
option (msgpool_hard_limit) = 1024;
optional fixed64 client_steam_id = 1;
optional int32 client_session_id = 2;
optional uint32 source_app_id = 3;
optional fixed64 job_id_source = 10 [default = 18446744073709551615];
optional fixed64 job_id_target = 11 [default = 18446744073709551615];
optional string target_job_name = 12;
optional int32 eresult = 13 [default = 2];
optional string error_message = 14;
optional uint32 ip = 15;
optional .GCProtoBufMsgSrc gc_msg_src = 200 [default = GCProtoBufMsgSrc_Unspecified];
optional uint32 gc_dir_index_source = 201;
}
message CChinaAgreementSessions_StartAgreementSessionInGame_Request {
optional uint32 appid = 1;
optional fixed64 steamid = 2;
optional string client_ipaddress = 3;
}
message CChinaAgreementSessions_StartAgreementSessionInGame_Response {
optional string agreement_url = 1;
}

View file

@ -0,0 +1,332 @@
import "google/protobuf/descriptor.proto";
option optimize_for = SPEED;
option cc_generic_services = true;
option (force_php_generation) = true;
extend .google.protobuf.MessageOptions {
optional int32 msgpool_soft_limit = 50000 [default = 32];
optional int32 msgpool_hard_limit = 50001 [default = 384];
}
extend .google.protobuf.FileOptions {
optional bool force_php_generation = 50000 [default = false];
}
extend .google.protobuf.FieldOptions {
optional bool php_output_always_number = 50020 [default = false];
optional bool allow_field_named_steam_id = 50024 [default = false];
}
enum EBanContentCheckResult {
k_EBanContentCheckResult_NotScanned = 0;
k_EBanContentCheckResult_Reset = 1;
k_EBanContentCheckResult_NeedsChecking = 2;
k_EBanContentCheckResult_VeryUnlikely = 5;
k_EBanContentCheckResult_Unlikely = 30;
k_EBanContentCheckResult_Possible = 50;
k_EBanContentCheckResult_Likely = 75;
k_EBanContentCheckResult_VeryLikely = 100;
}
enum EProtoClanEventType {
k_EClanOtherEvent = 1;
k_EClanGameEvent = 2;
k_EClanPartyEvent = 3;
k_EClanMeetingEvent = 4;
k_EClanSpecialCauseEvent = 5;
k_EClanMusicAndArtsEvent = 6;
k_EClanSportsEvent = 7;
k_EClanTripEvent = 8;
k_EClanChatEvent = 9;
k_EClanGameReleaseEvent = 10;
k_EClanBroadcastEvent = 11;
k_EClanSmallUpdateEvent = 12;
k_EClanPreAnnounceMajorUpdateEvent = 13;
k_EClanMajorUpdateEvent = 14;
k_EClanDLCReleaseEvent = 15;
k_EClanFutureReleaseEvent = 16;
k_EClanESportTournamentStreamEvent = 17;
k_EClanDevStreamEvent = 18;
k_EClanFamousStreamEvent = 19;
k_EClanGameSalesEvent = 20;
k_EClanGameItemSalesEvent = 21;
k_EClanInGameBonusXPEvent = 22;
k_EClanInGameLootEvent = 23;
k_EClanInGamePerksEvent = 24;
k_EClanInGameChallengeEvent = 25;
k_EClanInGameContestEvent = 26;
k_EClanIRLEvent = 27;
k_EClanNewsEvent = 28;
k_EClanBetaReleaseEvent = 29;
k_EClanInGameContentReleaseEvent = 30;
k_EClanFreeTrial = 31;
k_EClanSeasonRelease = 32;
k_EClanSeasonUpdate = 33;
k_EClanCrosspostEvent = 34;
k_EClanInGameEventGeneral = 35;
}
enum PartnerEventNotificationType {
k_EEventStart = 0;
k_EEventBroadcastStart = 1;
k_EEventMatchStart = 2;
k_EEventPartnerMaxType = 3;
}
message CMsgIPAddress {
oneof ip {
fixed32 v4 = 1;
bytes v6 = 2;
}
}
message CMsgIPAddressBucket {
optional .CMsgIPAddress original_ip_address = 1;
optional fixed64 bucket = 2;
}
message CMsgGCRoutingProtoBufHeader {
optional uint64 dst_gcid_queue = 1;
optional uint32 dst_gc_dir_index = 2;
}
message CMsgProtoBufHeader {
enum ESessionDisposition {
k_ESessionDispositionNormal = 0;
k_ESessionDispositionDisconnect = 1;
}
optional fixed64 steamid = 1;
optional int32 client_sessionid = 2;
optional uint32 routing_appid = 3;
optional fixed64 jobid_source = 10 [default = 18446744073709551615];
optional fixed64 jobid_target = 11 [default = 18446744073709551615];
optional string target_job_name = 12;
optional int32 seq_num = 24;
optional int32 eresult = 13 [default = 2];
optional string error_message = 14;
optional uint32 auth_account_flags = 16;
optional uint32 token_source = 22;
optional bool admin_spoofing_user = 23;
optional int32 transport_error = 17 [default = 1];
optional uint64 messageid = 18 [default = 18446744073709551615];
optional uint32 publisher_group_id = 19;
optional uint32 sysid = 20;
optional uint64 trace_tag = 21;
optional uint32 webapi_key_id = 25;
optional bool is_from_external_source = 26;
repeated uint32 forward_to_sysid = 27;
optional uint32 cm_sysid = 28;
optional uint32 launcher_type = 31 [default = 0];
optional uint32 realm = 32 [default = 0];
optional int32 timeout_ms = 33 [default = -1];
optional string debug_source = 34;
optional uint32 debug_source_string_index = 35;
optional uint64 token_id = 36;
optional .CMsgGCRoutingProtoBufHeader routing_gc = 37;
optional .CMsgProtoBufHeader.ESessionDisposition session_disposition = 38 [default = k_ESessionDispositionNormal];
optional string wg_token = 39;
optional string webui_auth_key = 40;
oneof ip_addr {
uint32 ip = 15;
bytes ip_v6 = 29;
}
}
message CMsgMulti {
optional uint32 size_unzipped = 1;
optional bytes message_body = 2;
}
message CMsgProtobufWrapped {
optional bytes message_body = 1;
}
message CMsgAuthTicket {
optional uint32 estate = 1;
optional uint32 eresult = 2 [default = 2];
optional fixed64 steamid = 3;
optional fixed64 gameid = 4;
optional uint32 h_steam_pipe = 5;
optional uint32 ticket_crc = 6;
optional bytes ticket = 7;
optional bytes server_secret = 8;
optional uint32 ticket_type = 9;
}
message CCDDBAppDetailCommon {
optional uint32 appid = 1;
optional string name = 2;
optional string icon = 3;
optional bool tool = 6;
optional bool demo = 7;
optional bool media = 8;
optional bool community_visible_stats = 9;
optional string friendly_name = 10;
optional string propagation = 11;
optional bool has_adult_content = 12;
optional bool is_visible_in_steam_china = 13;
optional uint32 app_type = 14;
optional bool has_adult_content_sex = 15;
optional bool has_adult_content_violence = 16;
repeated uint32 content_descriptorids = 17;
}
message CMsgAppRights {
optional bool edit_info = 1;
optional bool publish = 2;
optional bool view_error_data = 3;
optional bool download = 4;
optional bool upload_cdkeys = 5;
optional bool generate_cdkeys = 6;
optional bool view_financials = 7;
optional bool manage_ceg = 8;
optional bool manage_signing = 9;
optional bool manage_cdkeys = 10;
optional bool edit_marketing = 11;
optional bool economy_support = 12;
optional bool economy_support_supervisor = 13;
optional bool manage_pricing = 14;
optional bool broadcast_live = 15;
optional bool view_marketing_traffic = 16;
optional bool edit_store_display_content = 17;
}
message CCuratorPreferences {
optional uint32 supported_languages = 1;
optional bool platform_windows = 2;
optional bool platform_mac = 3;
optional bool platform_linux = 4;
optional bool vr_content = 5;
optional bool adult_content_violence = 6;
optional bool adult_content_sex = 7;
optional uint32 timestamp_updated = 8;
repeated uint32 tagids_curated = 9;
repeated uint32 tagids_filtered = 10;
optional string website_title = 11;
optional string website_url = 12;
optional string discussion_url = 13;
optional bool show_broadcast = 14;
}
message CLocalizationToken {
optional uint32 language = 1;
optional string localized_string = 2;
}
message CClanEventUserNewsTuple {
optional uint32 clanid = 1;
optional fixed64 event_gid = 2;
optional fixed64 announcement_gid = 3;
optional uint32 rtime_start = 4;
optional uint32 rtime_end = 5;
optional uint32 priority_score = 6;
optional uint32 type = 7;
optional uint32 clamp_range_slot = 8;
optional uint32 appid = 9;
optional uint32 rtime32_last_modified = 10;
}
message CClanMatchEventByRange {
optional uint32 rtime_before = 1;
optional uint32 rtime_after = 2;
optional uint32 qualified = 3;
repeated .CClanEventUserNewsTuple events = 4;
}
message CCommunity_ClanAnnouncementInfo {
optional uint64 gid = 1;
optional uint64 clanid = 2;
optional uint64 posterid = 3;
optional string headline = 4;
optional uint32 posttime = 5;
optional uint32 updatetime = 6;
optional string body = 7;
optional int32 commentcount = 8;
repeated string tags = 9;
optional int32 language = 10;
optional bool hidden = 11;
optional fixed64 forum_topic_id = 12;
optional fixed64 event_gid = 13;
optional int32 voteupcount = 14;
optional int32 votedowncount = 15;
optional .EBanContentCheckResult ban_check_result = 16 [default = k_EBanContentCheckResult_NotScanned];
optional bool banned = 17;
}
message CClanEventData {
optional fixed64 gid = 1;
optional fixed64 clan_steamid = 2;
optional string event_name = 3;
optional .EProtoClanEventType event_type = 4 [default = k_EClanOtherEvent];
optional uint32 appid = 5;
optional string server_address = 6;
optional string server_password = 7;
optional uint32 rtime32_start_time = 8;
optional uint32 rtime32_end_time = 9;
optional int32 comment_count = 10;
optional fixed64 creator_steamid = 11;
optional fixed64 last_update_steamid = 12;
optional string event_notes = 13;
optional string jsondata = 14;
optional .CCommunity_ClanAnnouncementInfo announcement_body = 15;
optional bool published = 16;
optional bool hidden = 17;
optional uint32 rtime32_visibility_start = 18;
optional uint32 rtime32_visibility_end = 19;
optional uint32 broadcaster_accountid = 20;
optional uint32 follower_count = 21;
optional uint32 ignore_count = 22;
optional fixed64 forum_topic_id = 23;
optional uint32 rtime32_last_modified = 24;
optional fixed64 news_post_gid = 25;
optional uint32 rtime_mod_reviewed = 26;
optional uint32 featured_app_tagid = 27;
repeated uint32 referenced_appids = 28;
optional uint32 build_id = 29;
optional string build_branch = 30;
}
message CBilling_Address {
optional string first_name = 1;
optional string last_name = 2;
optional string address1 = 3;
optional string address2 = 4;
optional string city = 5;
optional string us_state = 6;
optional string country_code = 7;
optional string postcode = 8;
optional int32 zip_plus4 = 9;
optional string phone = 10;
}
message CPackageReservationStatus {
optional uint32 packageid = 1;
optional int32 reservation_state = 2;
optional int32 queue_position = 3;
optional int32 total_queue_size = 4;
optional string reservation_country_code = 5;
optional bool expired = 6;
optional uint32 time_expires = 7;
optional uint32 time_reserved = 8;
}
message CMsgKeyValuePair {
optional string name = 1;
optional string value = 2;
}
message CMsgKeyValueSet {
repeated .CMsgKeyValuePair pairs = 1;
}
message UserContentDescriptorPreferences {
message ContentDescriptor {
optional uint32 content_descriptorid = 1;
optional uint32 timestamp_added = 2;
}
repeated .UserContentDescriptorPreferences.ContentDescriptor content_descriptors_to_exclude = 1;
}

View file

@ -0,0 +1,68 @@
import "steammessages_unified_base.steamworkssdk.proto";
message CCloud_GetUploadServerInfo_Request {
optional uint32 appid = 1 [(description) = "App ID to which a file will be uploaded to."];
}
message CCloud_GetUploadServerInfo_Response {
optional string server_url = 1;
}
message CCloud_GetFileDetails_Request {
optional uint64 ugcid = 1 [(description) = "ID of the Cloud file to get details for."];
optional uint32 appid = 2 [(description) = "App ID the file belongs to."];
}
message CCloud_UserFile {
optional uint32 appid = 1;
optional uint64 ugcid = 2;
optional string filename = 3;
optional uint64 timestamp = 4;
optional uint32 file_size = 5;
optional string url = 6;
optional fixed64 steamid_creator = 7;
}
message CCloud_GetFileDetails_Response {
optional .CCloud_UserFile details = 1;
}
message CCloud_EnumerateUserFiles_Request {
optional uint32 appid = 1 [(description) = "App ID to enumerate the files of."];
optional bool extended_details = 2 [(description) = "(Optional) Get extended details back on the files found. Defaults to only returned the app Id and UGC Id of the files found."];
optional uint32 count = 3 [(description) = "(Optional) Maximum number of results to return on this call. Defaults to a maximum of 500 files returned."];
optional uint32 start_index = 4 [(description) = "(Optional) Starting index to begin enumeration at. Defaults to the beginning of the list."];
}
message CCloud_EnumerateUserFiles_Response {
repeated .CCloud_UserFile files = 1;
optional uint32 total_files = 2;
}
message CCloud_Delete_Request {
optional string filename = 1;
optional uint32 appid = 2 [(description) = "App ID the file belongs to."];
}
message CCloud_Delete_Response {
}
service Cloud {
option (service_description) = "A service for Steam Cloud operations.";
rpc GetUploadServerInfo (.CCloud_GetUploadServerInfo_Request) returns (.CCloud_GetUploadServerInfo_Response) {
option (method_description) = "Returns the URL of the proper cloud server for a user.";
}
rpc GetFileDetails (.CCloud_GetFileDetails_Request) returns (.CCloud_GetFileDetails_Response) {
option (method_description) = "Returns details on a Cloud file.";
}
rpc EnumerateUserFiles (.CCloud_EnumerateUserFiles_Request) returns (.CCloud_EnumerateUserFiles_Response) {
option (method_description) = "Enumerates Cloud files for a user of a given app ID. Returns up to 500 files at a time.";
}
rpc Delete (.CCloud_Delete_Request) returns (.CCloud_Delete_Response) {
option (method_description) = "Deletes a file from the user's cloud.";
}
}

View file

@ -0,0 +1,61 @@
import "steamnetworkingsockets_messages.proto";
import "steamdatagram_messages_sdr.proto";
option optimize_for = SPEED;
option cc_generic_services = true;
message CGameNetworkingUI_GlobalState {
}
message CGameNetworkingUI_ConnectionState {
optional string connection_key = 1;
optional uint32 appid = 2;
optional fixed32 connection_id_local = 3;
optional string identity_local = 4;
optional string identity_remote = 5;
optional uint32 connection_state = 10;
optional uint32 start_time = 12;
optional uint32 close_time = 13;
optional uint32 close_reason = 14;
optional string close_message = 15;
optional string status_loc_token = 16;
optional uint32 transport_kind = 20;
optional string sdrpopid_local = 21;
optional string sdrpopid_remote = 22;
optional string address_remote = 23;
optional .CMsgSteamDatagramP2PRoutingSummary p2p_routing = 24;
optional uint32 ping_interior = 25;
optional uint32 ping_remote_front = 26;
optional uint32 ping_default_internet_route = 27;
optional .CMsgSteamDatagramConnectionQuality e2e_quality_local = 30;
optional .CMsgSteamDatagramConnectionQuality e2e_quality_remote = 31;
optional uint64 e2e_quality_remote_instantaneous_time = 32;
optional uint64 e2e_quality_remote_lifetime_time = 33;
optional .CMsgSteamDatagramConnectionQuality front_quality_local = 40;
optional .CMsgSteamDatagramConnectionQuality front_quality_remote = 41;
optional uint64 front_quality_remote_instantaneous_time = 42;
optional uint64 front_quality_remote_lifetime_time = 43;
}
message CGameNetworkingUI_Message {
repeated .CGameNetworkingUI_ConnectionState connection_state = 1;
}
message CGameNetworkingUI_ConnectionSummary {
optional uint32 transport_kind = 1;
optional uint32 connection_state = 8;
optional string sdrpop_local = 2;
optional string sdrpop_remote = 3;
optional uint32 ping_ms = 4;
optional float packet_loss = 5;
optional uint32 ping_default_internet_route = 6;
optional bool ip_was_shared = 7;
}
message CGameNetworkingUI_AppSummary {
optional uint32 appid = 1;
optional bool ip_was_shared_with_friend = 10;
optional bool ip_was_shared_with_nonfriend = 11;
optional uint32 active_connections = 20;
optional .CGameNetworkingUI_ConnectionSummary main_cxn = 30;
}

View file

@ -0,0 +1,22 @@
import "steammessages_unified_base.steamworkssdk.proto";
option cc_generic_services = true;
message CHelpRequestLogs_UploadUserApplicationLog_Request {
optional uint32 appid = 1;
optional string log_type = 2;
optional string version_string = 3;
optional string log_contents = 4;
}
message CHelpRequestLogs_UploadUserApplicationLog_Response {
optional uint64 id = 1;
}
service HelpRequestLogs {
option (service_description) = "Service for dealing with user-submitted logs";
rpc UploadUserApplicationLog (.CHelpRequestLogs_UploadUserApplicationLog_Request) returns (.CHelpRequestLogs_UploadUserApplicationLog_Response) {
option (method_description) = "User uploading application logs";
}
}

View file

@ -0,0 +1,18 @@
import "steammessages_unified_base.steamworkssdk.proto";
message COAuthToken_ImplicitGrantNoPrompt_Request {
optional string clientid = 1 [(description) = "Client ID for which to count the number of issued tokens"];
}
message COAuthToken_ImplicitGrantNoPrompt_Response {
optional string access_token = 1 [(description) = "OAuth Token, granted on success"];
optional string redirect_uri = 2 [(description) = "Redirection URI provided during client registration."];
}
service OAuthToken {
option (service_description) = "Service containing methods to manage OAuth tokens";
rpc ImplicitGrantNoPrompt (.COAuthToken_ImplicitGrantNoPrompt_Request) returns (.COAuthToken_ImplicitGrantNoPrompt_Response) {
option (method_description) = "Grants an implicit OAuth token (grant type 'token') for the specified client ID on behalf of a user without prompting";
}
}

View file

@ -0,0 +1,254 @@
import "steammessages_unified_base.steamworkssdk.proto";
option cc_generic_services = true;
enum ENotificationSetting {
k_ENotificationSettingNotifyUseDefault = 0;
k_ENotificationSettingAlways = 1;
k_ENotificationSettingNever = 2;
}
message CPlayer_GetMutualFriendsForIncomingInvites_Request {
}
message CPlayer_IncomingInviteMutualFriendList {
optional fixed64 steamid = 1;
repeated uint32 mutual_friend_account_ids = 2;
}
message CPlayer_GetMutualFriendsForIncomingInvites_Response {
repeated .CPlayer_IncomingInviteMutualFriendList incoming_invite_mutual_friends_lists = 1;
}
message CPlayer_GetFriendsGameplayInfo_Request {
optional uint32 appid = 1;
}
message CPlayer_GetFriendsGameplayInfo_Response {
message FriendsGameplayInfo {
optional fixed64 steamid = 1;
optional uint32 minutes_played = 2;
optional uint32 minutes_played_forever = 3;
}
message OwnGameplayInfo {
optional fixed64 steamid = 1;
optional uint32 minutes_played = 2;
optional uint32 minutes_played_forever = 3;
optional bool in_wishlist = 4;
optional bool owned = 5;
}
optional .CPlayer_GetFriendsGameplayInfo_Response.OwnGameplayInfo your_info = 1;
repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo in_game = 2;
repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo played_recently = 3;
repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo played_ever = 4;
repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo owns = 5;
repeated .CPlayer_GetFriendsGameplayInfo_Response.FriendsGameplayInfo in_wishlist = 6;
}
message CPlayer_GetGameBadgeLevels_Request {
optional uint32 appid = 1;
}
message CPlayer_GetGameBadgeLevels_Response {
message Badge {
optional int32 level = 1;
optional int32 series = 2;
optional uint32 border_color = 3;
}
optional uint32 player_level = 1;
repeated .CPlayer_GetGameBadgeLevels_Response.Badge badges = 2;
}
message CPlayer_GetLastPlayedTimes_Request {
optional uint32 min_last_played = 1 [(description) = "The most recent last-played time the client already knows about"];
}
message CPlayer_GetLastPlayedTimes_Response {
message Game {
optional int32 appid = 1;
optional uint32 last_playtime = 2;
optional int32 playtime_2weeks = 3;
optional int32 playtime_forever = 4;
optional uint32 first_playtime = 5;
}
repeated .CPlayer_GetLastPlayedTimes_Response.Game games = 1;
}
message CPlayer_AcceptSSA_Request {
}
message CPlayer_AcceptSSA_Response {
}
message CPlayer_GetNicknameList_Request {
}
message CPlayer_GetNicknameList_Response {
message PlayerNickname {
optional fixed32 accountid = 1;
optional string nickname = 2;
}
repeated .CPlayer_GetNicknameList_Response.PlayerNickname nicknames = 1;
}
message CPlayer_GetPerFriendPreferences_Request {
}
message PerFriendPreferences {
optional fixed32 accountid = 1;
optional string nickname = 2;
optional .ENotificationSetting notifications_showingame = 3 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting notifications_showonline = 4 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting notifications_showmessages = 5 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting sounds_showingame = 6 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting sounds_showonline = 7 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting sounds_showmessages = 8 [default = k_ENotificationSettingNotifyUseDefault];
optional .ENotificationSetting notifications_sendmobile = 9 [default = k_ENotificationSettingNotifyUseDefault];
}
message CPlayer_GetPerFriendPreferences_Response {
repeated .PerFriendPreferences preferences = 1;
}
message CPlayer_SetPerFriendPreferences_Request {
optional .PerFriendPreferences preferences = 1;
}
message CPlayer_SetPerFriendPreferences_Response {
}
message CPlayer_AddFriend_Request {
optional fixed64 steamid = 1 [(description) = "Steam ID of user to whom to send a friend invite."];
}
message CPlayer_AddFriend_Response {
optional bool invite_sent = 1 [(description) = "True if the operation was successful, false otherwise."];
optional uint32 friend_relationship = 2 [(description) = "the resulting relationship. Depending on state, may move directly to friends rather than invite sent"];
}
message CPlayer_RemoveFriend_Request {
optional fixed64 steamid = 1 [(description) = "Steam ID of friend to remove."];
}
message CPlayer_RemoveFriend_Response {
optional uint32 friend_relationship = 1 [(description) = "the resulting relationship"];
}
message CPlayer_IgnoreFriend_Request {
optional fixed64 steamid = 1;
optional bool unignore = 2 [(description) = "If set, remove from ignore/block list instead of adding "];
}
message CPlayer_IgnoreFriend_Response {
optional uint32 friend_relationship = 1 [(description) = "the resulting relationship"];
}
message CPlayer_GetCommunityPreferences_Request {
}
message CPlayer_CommunityPreferences {
optional bool hide_adult_content_violence = 1 [default = true];
optional bool hide_adult_content_sex = 2 [default = true];
optional bool parenthesize_nicknames = 4 [default = false];
optional uint32 timestamp_updated = 3;
}
message CPlayer_GetCommunityPreferences_Response {
optional .CPlayer_CommunityPreferences preferences = 1;
}
message CPlayer_SetCommunityPreferences_Request {
optional .CPlayer_CommunityPreferences preferences = 1;
}
message CPlayer_SetCommunityPreferences_Response {
}
message CPlayer_GetNewSteamAnnouncementState_Request {
optional int32 language = 1;
}
message CPlayer_GetNewSteamAnnouncementState_Response {
optional int32 state = 1;
optional string announcement_headline = 2;
optional string announcement_url = 3;
optional uint32 time_posted = 4;
optional uint64 announcement_gid = 5;
}
message CPlayer_UpdateSteamAnnouncementLastRead_Request {
optional uint64 announcement_gid = 1;
optional uint32 time_posted = 2;
}
message CPlayer_UpdateSteamAnnouncementLastRead_Response {
}
service Player {
option (service_description) = "A service for accessing Steam player data";
rpc GetMutualFriendsForIncomingInvites (.CPlayer_GetMutualFriendsForIncomingInvites_Request) returns (.CPlayer_GetMutualFriendsForIncomingInvites_Response) {
option (method_description) = "Get me the mutual friends for each of my pending incoming invites (individuals and clans).";
}
rpc GetFriendsGameplayInfo (.CPlayer_GetFriendsGameplayInfo_Request) returns (.CPlayer_GetFriendsGameplayInfo_Response) {
option (method_description) = "Get a list of friends who are playing, have played, own, or want a game";
}
rpc GetGameBadgeLevels (.CPlayer_GetGameBadgeLevels_Request) returns (.CPlayer_GetGameBadgeLevels_Response) {
option (method_description) = "Returns the Steam Level of a user, the Badge level for the game, and if it's foil";
}
rpc ClientGetLastPlayedTimes (.CPlayer_GetLastPlayedTimes_Request) returns (.CPlayer_GetLastPlayedTimes_Response) {
option (method_description) = "Gets the last-played times for the account";
}
rpc AcceptSSA (.CPlayer_AcceptSSA_Request) returns (.CPlayer_AcceptSSA_Response) {
option (method_description) = "User is accepting the SSA";
}
rpc GetNicknameList (.CPlayer_GetNicknameList_Request) returns (.CPlayer_GetNicknameList_Response) {
option (method_description) = "Gets the list of nicknames this user has for other users";
}
rpc GetPerFriendPreferences (.CPlayer_GetPerFriendPreferences_Request) returns (.CPlayer_GetPerFriendPreferences_Response) {
option (method_description) = "Gets the list of per-friend preferences this user has set for other users";
}
rpc SetPerFriendPreferences (.CPlayer_SetPerFriendPreferences_Request) returns (.CPlayer_SetPerFriendPreferences_Response) {
option (method_description) = "Sets the logged in user's per-friend preferences for the given user";
}
rpc AddFriend (.CPlayer_AddFriend_Request) returns (.CPlayer_AddFriend_Response) {
option (method_description) = "Invites another Steam user to be a friend";
}
rpc RemoveFriend (.CPlayer_RemoveFriend_Request) returns (.CPlayer_RemoveFriend_Response) {
option (method_description) = "Removes a friend or ignores a friend suggestion";
}
rpc IgnoreFriend (.CPlayer_IgnoreFriend_Request) returns (.CPlayer_IgnoreFriend_Response) {
option (method_description) = "Blocks or unblocks communication with the user. Despite name, can be a non-friend.";
}
rpc GetCommunityPreferences (.CPlayer_GetCommunityPreferences_Request) returns (.CPlayer_GetCommunityPreferences_Response) {
option (method_description) = "Returns the player's community preferences";
}
rpc SetCommunityPreferences (.CPlayer_SetCommunityPreferences_Request) returns (.CPlayer_SetCommunityPreferences_Response) {
option (method_description) = "Sets the player's community preferences";
}
rpc GetNewSteamAnnouncementState (.CPlayer_GetNewSteamAnnouncementState_Request) returns (.CPlayer_GetNewSteamAnnouncementState_Response) {
option (method_description) = "Calculates and returns what to display for UI that renders new steam announcement available";
}
rpc UpdateSteamAnnouncementLastRead (.CPlayer_UpdateSteamAnnouncementLastRead_Request) returns (.CPlayer_UpdateSteamAnnouncementLastRead_Response) {
option (method_description) = "Marks latest announcement timestamp read by user";
}
}

View file

@ -0,0 +1,233 @@
import "steammessages_unified_base.steamworkssdk.proto";
message CPublishedFile_Subscribe_Request {
optional uint64 publishedfileid = 1;
optional uint32 list_type = 2;
optional int32 appid = 3;
optional bool notify_client = 4;
}
message CPublishedFile_Subscribe_Response {
}
message CPublishedFile_Unsubscribe_Request {
optional uint64 publishedfileid = 1;
optional uint32 list_type = 2;
optional int32 appid = 3;
optional bool notify_client = 4;
}
message CPublishedFile_Unsubscribe_Response {
}
message CPublishedFile_Publish_Request {
optional uint32 appid = 1 [(description) = "App Id this file is being published FROM."];
optional uint32 consumer_appid = 2 [(description) = "App Id this file is being published TO."];
optional string cloudfilename = 3 [(description) = "Name of the file to publish in the user's cloud."];
optional string preview_cloudfilename = 4 [(description) = "Name of the file to use as the published file's preview."];
optional string title = 5 [(description) = "Text title for the published file."];
optional string file_description = 6 [(description) = "Text description for the published file."];
optional uint32 file_type = 7 [(description) = "(EWorkshopFileType) Type of Workshop file to publish."];
optional string consumer_shortcut_name = 8 [(description) = "Shortcut name for the published file."];
optional string youtube_username = 9 [(description) = "(Optional) User's YouTube account username."];
optional string youtube_videoid = 10 [(description) = "(Optional) Video Id of a YouTube video for this published file."];
optional uint32 visibility = 11 [(description) = "(ERemoteStoragePublishedFileVisibility) Visibility of the published file (private, friends, public, etc.)"];
optional string redirect_uri = 12 [(description) = "(Optional) If supplied, the resulting published file's Id is appended to the URI."];
repeated string tags = 13 [(description) = "Array of text tags to apply to the published file."];
optional string collection_type = 14 [(description) = "(Optional) Type of collection the published file represents."];
optional string game_type = 15 [(description) = "(Optional) Type of game the published file represents."];
optional string url = 16 [(description) = "(Optional) If this represents a game, this is the URL to that game's page."];
}
message CPublishedFile_Publish_Response {
optional uint64 publishedfileid = 1;
optional string redirect_uri = 2;
}
message CPublishedFile_GetDetails_Request {
repeated fixed64 publishedfileids = 1 [(description) = "Set of published file Ids to retrieve details for."];
optional bool includetags = 2 [(description) = "If true, return tag information in the returned details."];
optional bool includeadditionalpreviews = 3 [(description) = "If true, return preview information in the returned details."];
optional bool includechildren = 4 [(description) = "If true, return children in the returned details."];
optional bool includekvtags = 5 [(description) = "If true, return key value tags in the returned details."];
optional bool includevotes = 6 [(description) = "If true, return vote data in the returned details."];
optional bool short_description = 8 [(description) = "If true, return a short description instead of the full description."];
}
message PublishedFileDetails {
message Tag {
optional string tag = 1;
optional bool adminonly = 2;
}
message Preview {
optional uint64 previewid = 1;
optional uint32 sortorder = 2;
optional string url = 3;
optional uint32 size = 4;
optional string filename = 5;
optional string youtubevideoid = 6;
}
message Child {
optional uint64 publishedfileid = 1;
optional uint32 sortorder = 2;
optional uint32 file_type = 3;
}
message KVTag {
optional string key = 1;
optional string value = 2;
}
message VoteData {
optional float score = 1;
optional uint32 votes_up = 2;
optional uint32 votes_down = 3;
}
optional uint32 result = 1;
optional uint64 publishedfileid = 2;
optional fixed64 creator = 3;
optional uint32 creator_appid = 4;
optional uint32 consumer_appid = 5;
optional uint32 consumer_shortcutid = 6;
optional string filename = 7;
optional uint64 file_size = 8;
optional uint64 preview_file_size = 9;
optional string file_url = 10;
optional string preview_url = 11;
optional string youtubevideoid = 12;
optional string url = 13;
optional fixed64 hcontent_file = 14;
optional fixed64 hcontent_preview = 15;
optional string title = 16;
optional string file_description = 17;
optional string short_description = 18;
optional uint32 time_created = 19;
optional uint32 time_updated = 20;
optional uint32 visibility = 21;
optional uint32 flags = 22;
optional bool workshop_file = 23;
optional bool workshop_accepted = 24;
optional bool show_subscribe_all = 25;
optional int32 num_comments_developer = 26;
optional int32 num_comments_public = 27;
optional bool banned = 28;
optional string ban_reason = 29;
optional fixed64 banner = 30;
optional bool can_be_deleted = 31;
optional bool incompatible = 32;
optional string app_name = 33;
optional uint32 file_type = 34;
optional bool can_subscribe = 35;
optional uint32 subscriptions = 36;
optional uint32 favorited = 37;
optional uint32 followers = 38;
optional uint32 lifetime_subscriptions = 39;
optional uint32 lifetime_favorited = 40;
optional uint32 lifetime_followers = 41;
optional uint32 views = 42;
optional uint32 image_width = 43;
optional uint32 image_height = 44;
optional string image_url = 45;
optional bool spoiler_tag = 46;
optional uint32 shortcutid = 47;
optional string shortcutname = 48;
optional uint32 num_children = 49;
optional uint32 num_reports = 50;
repeated .PublishedFileDetails.Preview previews = 51;
repeated .PublishedFileDetails.Tag tags = 52;
repeated .PublishedFileDetails.Child children = 53;
repeated .PublishedFileDetails.KVTag kvtags = 54;
optional .PublishedFileDetails.VoteData vote_data = 55;
optional uint32 time_subscribed = 56 [(description) = "Only valid in PublishedFile.GetUserFiles and not normal PublishedFile.GetDetail calls"];
}
message CPublishedFile_GetDetails_Response {
repeated .PublishedFileDetails publishedfiledetails = 1;
}
message CPublishedFile_GetUserFiles_Request {
optional uint32 appid = 1 [(description) = "App Id to retrieve published files from."];
optional uint32 page = 3 [default = 1, (description) = "(Optional) Starting page for results."];
optional uint32 numperpage = 4 [default = 1, (description) = "(Optional) The number of results, per page to return."];
optional string sortmethod = 6 [default = "lastupdated", (description) = "(Optional) Sorting method to use on returned values."];
optional bool totalonly = 7 [(description) = "(Optional) If true, only return the total number of files that satisfy this query."];
optional uint32 privacy = 9 [(description) = "(optional) Filter by privacy settings."];
optional bool ids_only = 10 [(description) = "(Optional) If true, only return the published file ids of files that satisfy this query."];
repeated string requiredtags = 11 [(description) = "(Optional) Tags that must be present on a published file to satisfy the query."];
repeated string excludedtags = 12 [(description) = "(Optional) Tags that must NOT be present on a published file to satisfy the query."];
}
message CPublishedFile_GetUserFiles_Response {
message App {
optional uint32 appid = 1;
optional string name = 2;
optional uint32 shortcutid = 3;
optional bool private = 4;
}
optional uint32 total = 1;
optional uint32 startindex = 2;
repeated .PublishedFileDetails publishedfiledetails = 3;
repeated .CPublishedFile_GetUserFiles_Response.App apps = 4;
}
message CPublishedFile_Update_Request {
optional uint32 appid = 1 [(description) = "App Id this published file belongs to."];
optional fixed64 publishedfileid = 2 [(description) = "Published file id of the file we'd like update."];
optional string title = 3 [(description) = "(Optional) Title of the published file."];
optional string file_description = 4 [(description) = "(Optional) Description of the published file."];
optional uint32 visibility = 5 [(description) = "(Optional) Visibility of the published file."];
repeated string tags = 6 [(description) = "(Optional) Set of tags for the published file."];
optional string filename = 7 [(description) = "(Optional) Filename for the published file."];
optional string preview_filename = 8 [(description) = "(Optional) Preview filename for the published file."];
}
message CPublishedFile_Update_Response {
}
message CPublishedFile_RefreshVotingQueue_Request {
optional uint32 appid = 1;
optional uint32 matching_file_type = 2 [(description) = "EPublishedFileInfoMatchingFileType"];
repeated string tags = 3 [(description) = "Include files that have all the tags or any of the tags if match_all_tags is set to false."];
optional bool match_all_tags = 4 [default = true, (description) = "If true, then files must have all the tags specified. If false, then must have at least one of the tags specified."];
repeated string excluded_tags = 5 [(description) = "Exclude any files that have any of these tags."];
optional uint32 desired_queue_size = 6 [(description) = "Desired number of items in the voting queue. May be clamped by the server"];
}
message CPublishedFile_RefreshVotingQueue_Response {
}
service PublishedFile {
option (service_description) = "A service to access published file data";
rpc Subscribe (.CPublishedFile_Subscribe_Request) returns (.CPublishedFile_Subscribe_Response) {
option (method_description) = "Subscribes the user to the published file";
}
rpc Unsubscribe (.CPublishedFile_Unsubscribe_Request) returns (.CPublishedFile_Unsubscribe_Response) {
option (method_description) = "Unsubscribes the user from the published file";
}
rpc Publish (.CPublishedFile_Publish_Request) returns (.CPublishedFile_Publish_Response) {
option (method_description) = "Publishes a clouded user file to the Workshop.";
}
rpc GetDetails (.CPublishedFile_GetDetails_Request) returns (.CPublishedFile_GetDetails_Response) {
option (method_description) = "Retrieves information about a set of published files.";
}
rpc GetUserFiles (.CPublishedFile_GetUserFiles_Request) returns (.CPublishedFile_GetUserFiles_Response) {
option (method_description) = "Retrieves files published by a user.";
}
rpc Update (.CPublishedFile_Update_Request) returns (.CPublishedFile_Update_Response) {
option (method_description) = "Updates information about a published file.";
}
rpc RefreshVotingQueue (.CPublishedFile_RefreshVotingQueue_Request) returns (.CPublishedFile_RefreshVotingQueue_Response) {
option (method_description) = "Refresh the voting queue for the user";
}
}

View file

@ -0,0 +1,30 @@
import "google/protobuf/descriptor.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
extend .google.protobuf.FieldOptions {
optional string description = 50000;
}
extend .google.protobuf.ServiceOptions {
optional string service_description = 50000;
optional .EProtoExecutionSite service_execution_site = 50008 [default = k_EProtoExecutionSiteUnknown];
}
extend .google.protobuf.MethodOptions {
optional string method_description = 50000;
}
extend .google.protobuf.EnumOptions {
optional string enum_description = 50000;
}
extend .google.protobuf.EnumValueOptions {
optional string enum_value_description = 50000;
}
enum EProtoExecutionSite {
k_EProtoExecutionSiteUnknown = 0;
k_EProtoExecutionSiteSteamClient = 3;
}

View file

@ -0,0 +1,177 @@
import "steamnetworkingsockets_messages_certs.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
enum ESteamNetworkingSocketsCipher {
k_ESteamNetworkingSocketsCipher_INVALID = 0;
k_ESteamNetworkingSocketsCipher_NULL = 1;
k_ESteamNetworkingSocketsCipher_AES_256_GCM = 2;
}
message CMsgSteamDatagramSessionCryptInfo {
enum EKeyType {
INVALID = 0;
CURVE25519 = 1;
}
optional .CMsgSteamDatagramSessionCryptInfo.EKeyType key_type = 1 [default = INVALID];
optional bytes key_data = 2;
optional fixed64 nonce = 3;
optional uint32 protocol_version = 4;
repeated .ESteamNetworkingSocketsCipher ciphers = 5;
}
message CMsgSteamDatagramSessionCryptInfoSigned {
optional bytes info = 1;
optional bytes signature = 2;
}
message CMsgSteamDatagramDiagnostic {
optional uint32 severity = 1;
optional string text = 2;
}
message CMsgSteamDatagramLinkInstantaneousStats {
optional uint32 out_packets_per_sec_x10 = 1;
optional uint32 out_bytes_per_sec = 2;
optional uint32 in_packets_per_sec_x10 = 3;
optional uint32 in_bytes_per_sec = 4;
optional uint32 ping_ms = 5;
optional uint32 packets_dropped_pct = 6;
optional uint32 packets_weird_sequence_pct = 7;
optional uint32 peak_jitter_usec = 8;
}
message CMsgSteamDatagramLinkLifetimeStats {
optional uint32 connected_seconds = 2;
optional uint64 packets_sent = 3;
optional uint64 kb_sent = 4;
optional uint64 packets_recv = 5;
optional uint64 kb_recv = 6;
optional uint64 packets_recv_sequenced = 7;
optional uint64 packets_recv_dropped = 8;
optional uint64 packets_recv_out_of_order = 9;
optional uint64 packets_recv_out_of_order_corrected = 15;
optional uint64 packets_recv_duplicate = 10;
optional uint64 packets_recv_lurch = 11;
repeated uint64 multipath_packets_recv_sequenced = 12;
repeated uint64 multipath_packets_recv_later = 13;
optional uint32 multipath_send_enabled = 14;
optional uint32 quality_histogram_100 = 21;
optional uint32 quality_histogram_99 = 22;
optional uint32 quality_histogram_97 = 23;
optional uint32 quality_histogram_95 = 24;
optional uint32 quality_histogram_90 = 25;
optional uint32 quality_histogram_75 = 26;
optional uint32 quality_histogram_50 = 27;
optional uint32 quality_histogram_1 = 28;
optional uint32 quality_histogram_dead = 29;
optional uint32 quality_ntile_2nd = 30;
optional uint32 quality_ntile_5th = 31;
optional uint32 quality_ntile_25th = 32;
optional uint32 quality_ntile_50th = 33;
optional uint32 ping_histogram_25 = 41;
optional uint32 ping_histogram_50 = 42;
optional uint32 ping_histogram_75 = 43;
optional uint32 ping_histogram_100 = 44;
optional uint32 ping_histogram_125 = 45;
optional uint32 ping_histogram_150 = 46;
optional uint32 ping_histogram_200 = 47;
optional uint32 ping_histogram_300 = 48;
optional uint32 ping_histogram_max = 49;
optional uint32 ping_ntile_5th = 50;
optional uint32 ping_ntile_50th = 51;
optional uint32 ping_ntile_75th = 52;
optional uint32 ping_ntile_95th = 53;
optional uint32 ping_ntile_98th = 54;
optional uint32 jitter_histogram_negligible = 61;
optional uint32 jitter_histogram_1 = 62;
optional uint32 jitter_histogram_2 = 63;
optional uint32 jitter_histogram_5 = 64;
optional uint32 jitter_histogram_10 = 65;
optional uint32 jitter_histogram_20 = 66;
}
message CMsgSteamDatagramConnectionQuality {
optional .CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
optional .CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
}
message CMsgICECandidate {
optional string candidate = 3;
}
message CMsgICERendezvous {
message Auth {
optional string pwd_frag = 1;
}
optional .CMsgICERendezvous.Auth auth = 2;
optional .CMsgICECandidate add_candidate = 1;
}
message CMsgSteamNetworkingP2PRendezvous {
message ConnectRequest {
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
optional .CMsgSteamDatagramCertificateSigned cert = 7;
optional uint32 to_virtual_port = 9;
optional uint32 from_virtual_port = 10;
optional string from_fakeip = 11;
}
message ConnectOK {
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
optional .CMsgSteamDatagramCertificateSigned cert = 6;
}
message ConnectionClosed {
optional string debug = 5;
optional uint32 reason_code = 6;
}
message ReliableMessage {
optional .CMsgICERendezvous ice = 1;
}
message ApplicationMessage {
optional bytes data = 1;
optional uint64 msg_num = 2;
optional uint32 flags = 3;
optional uint32 lane_idx = 4;
}
optional string from_identity = 8;
optional fixed32 from_connection_id = 9;
optional string to_identity = 10;
optional fixed32 to_connection_id = 1;
optional bytes sdr_routes = 2;
optional uint32 ack_peer_routes_revision = 3;
optional bool ice_enabled = 7;
optional bytes hosted_server_ticket = 14;
optional .CMsgSteamNetworkingP2PRendezvous.ConnectRequest connect_request = 4;
optional .CMsgSteamNetworkingP2PRendezvous.ConnectOK connect_ok = 5;
optional .CMsgSteamNetworkingP2PRendezvous.ConnectionClosed connection_closed = 6;
optional uint32 ack_reliable_msg = 11;
optional uint32 first_reliable_msg = 12;
repeated .CMsgSteamNetworkingP2PRendezvous.ReliableMessage reliable_messages = 13;
repeated .CMsgSteamNetworkingP2PRendezvous.ApplicationMessage application_messages = 15;
}
message CMsgSteamNetworkingICESessionSummary {
optional uint32 failure_reason_code = 7;
optional uint32 local_candidate_types = 1;
optional uint32 remote_candidate_types = 2;
optional uint32 initial_route_kind = 3;
optional uint32 initial_ping = 4;
optional uint32 initial_score = 6;
optional uint32 negotiation_ms = 5;
optional uint32 best_route_kind = 16;
optional uint32 best_ping = 17;
optional uint32 best_score = 18;
optional uint32 best_time = 19;
optional uint32 selected_seconds = 12;
optional uint32 user_settings = 13;
optional uint32 ice_enable_var = 14;
optional uint32 local_candidate_types_allowed = 15;
}

View file

@ -0,0 +1,38 @@
option optimize_for = SPEED;
option cc_generic_services = false;
message CMsgSteamNetworkingIdentityLegacyBinary {
optional fixed64 steam_id = 16;
optional bytes generic_bytes = 2;
optional string generic_string = 3;
optional bytes ipv6_and_port = 4;
}
message CMsgSteamDatagramCertificate {
enum EKeyType {
INVALID = 0;
ED25519 = 1;
}
optional .CMsgSteamDatagramCertificate.EKeyType key_type = 1 [default = INVALID];
optional bytes key_data = 2;
optional fixed64 legacy_steam_id = 4;
optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_identity_binary = 11;
optional string identity_string = 12;
repeated fixed32 gameserver_datacenter_ids = 5;
optional fixed32 time_created = 8;
optional fixed32 time_expiry = 9;
repeated uint32 app_ids = 10;
repeated string ip_addresses = 13;
}
message CMsgSteamDatagramCertificateSigned {
optional bytes cert = 4;
optional fixed64 ca_key_id = 5;
optional bytes ca_signature = 6;
optional bytes private_key_data = 1;
}
message CMsgSteamDatagramCertificateRequest {
optional .CMsgSteamDatagramCertificate cert = 1;
}

View file

@ -0,0 +1,75 @@
import "steamnetworkingsockets_messages_certs.proto";
import "steamnetworkingsockets_messages.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
enum ESteamNetworkingUDPMsgID {
k_ESteamNetworkingUDPMsg_ChallengeRequest = 32;
k_ESteamNetworkingUDPMsg_ChallengeReply = 33;
k_ESteamNetworkingUDPMsg_ConnectRequest = 34;
k_ESteamNetworkingUDPMsg_ConnectOK = 35;
k_ESteamNetworkingUDPMsg_ConnectionClosed = 36;
k_ESteamNetworkingUDPMsg_NoConnection = 37;
}
message CMsgSteamSockets_UDP_ChallengeRequest {
optional fixed32 connection_id = 1;
optional fixed64 my_timestamp = 3;
optional uint32 protocol_version = 4;
}
message CMsgSteamSockets_UDP_ChallengeReply {
optional fixed32 connection_id = 1;
optional fixed64 challenge = 2;
optional fixed64 your_timestamp = 3;
optional uint32 protocol_version = 4;
}
message CMsgSteamSockets_UDP_ConnectRequest {
optional fixed32 client_connection_id = 1;
optional fixed64 challenge = 2;
optional fixed64 my_timestamp = 5;
optional uint32 ping_est_ms = 6;
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 7;
optional .CMsgSteamDatagramCertificateSigned cert = 4;
optional uint32 legacy_protocol_version = 8;
optional string identity_string = 10;
optional fixed64 legacy_client_steam_id = 3;
optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_identity_binary = 9;
}
message CMsgSteamSockets_UDP_ConnectOK {
optional fixed32 client_connection_id = 1;
optional fixed32 server_connection_id = 5;
optional fixed64 your_timestamp = 3;
optional uint32 delay_time_usec = 4;
optional .CMsgSteamDatagramSessionCryptInfoSigned crypt = 7;
optional .CMsgSteamDatagramCertificateSigned cert = 8;
optional string identity_string = 11;
optional fixed64 legacy_server_steam_id = 2;
optional .CMsgSteamNetworkingIdentityLegacyBinary legacy_identity_binary = 10;
}
message CMsgSteamSockets_UDP_ConnectionClosed {
optional fixed32 to_connection_id = 4;
optional fixed32 from_connection_id = 5;
optional string debug = 2;
optional uint32 reason_code = 3;
}
message CMsgSteamSockets_UDP_NoConnection {
optional fixed32 from_connection_id = 2;
optional fixed32 to_connection_id = 3;
}
message CMsgSteamSockets_UDP_Stats {
enum Flags {
ACK_REQUEST_E2E = 2;
ACK_REQUEST_IMMEDIATE = 4;
NOT_PRIMARY_TRANSPORT_E2E = 16;
}
optional .CMsgSteamDatagramConnectionQuality stats = 1;
optional uint32 flags = 3;
}

259
protos/te.proto Normal file
View file

@ -0,0 +1,259 @@
import "networkbasetypes.proto";
enum ETEProtobufIds {
TE_EffectDispatchId = 400;
TE_ArmorRicochetId = 401;
TE_BeamEntPointId = 402;
TE_BeamEntsId = 403;
TE_BeamPointsId = 404;
TE_BeamRingId = 405;
TE_BSPDecalId = 407;
TE_BubblesId = 408;
TE_BubbleTrailId = 409;
TE_DecalId = 410;
TE_WorldDecalId = 411;
TE_EnergySplashId = 412;
TE_FizzId = 413;
TE_ShatterSurfaceId = 414;
TE_GlowSpriteId = 415;
TE_ImpactId = 416;
TE_MuzzleFlashId = 417;
TE_BloodStreamId = 418;
TE_ExplosionId = 419;
TE_DustId = 420;
TE_LargeFunnelId = 421;
TE_SparksId = 422;
TE_PhysicsPropId = 423;
TE_PlayerDecalId = 424;
TE_ProjectedDecalId = 425;
TE_SmokeId = 426;
}
message CMsgTEArmorRicochet {
optional .CMsgVector pos = 1;
optional .CMsgVector dir = 2;
}
message CMsgTEBaseBeam {
optional fixed64 modelindex = 1;
optional fixed64 haloindex = 2;
optional uint32 startframe = 3;
optional uint32 framerate = 4;
optional float life = 5;
optional float width = 6;
optional float endwidth = 7;
optional uint32 fadelength = 8;
optional float amplitude = 9;
optional fixed32 color = 10;
optional uint32 speed = 11;
optional uint32 flags = 12;
}
message CMsgTEBeamEntPoint {
optional .CMsgTEBaseBeam base = 1;
optional uint32 startentity = 2;
optional uint32 endentity = 3;
optional .CMsgVector start = 4;
optional .CMsgVector end = 5;
}
message CMsgTEBeamEnts {
optional .CMsgTEBaseBeam base = 1;
optional uint32 startentity = 2;
optional uint32 endentity = 3;
}
message CMsgTEBeamPoints {
optional .CMsgTEBaseBeam base = 1;
optional .CMsgVector start = 2;
optional .CMsgVector end = 3;
}
message CMsgTEBeamRing {
optional .CMsgTEBaseBeam base = 1;
optional uint32 startentity = 2;
optional uint32 endentity = 3;
}
message CMsgTEBSPDecal {
optional .CMsgVector origin = 1;
optional .CMsgVector normal = 2;
optional .CMsgVector saxis = 3;
optional int32 entity = 4 [default = -1];
optional uint32 index = 5;
}
message CMsgTEBubbles {
optional .CMsgVector mins = 1;
optional .CMsgVector maxs = 2;
optional float height = 3;
optional uint32 count = 4;
optional float speed = 5;
}
message CMsgTEBubbleTrail {
optional .CMsgVector mins = 1;
optional .CMsgVector maxs = 2;
optional float waterz = 3;
optional uint32 count = 4;
optional float speed = 5;
}
message CMsgTEDecal {
optional .CMsgVector origin = 1;
optional .CMsgVector start = 2;
optional int32 entity = 3 [default = -1];
optional uint32 hitbox = 4;
optional uint32 index = 5;
}
message CMsgEffectData {
optional .CMsgVector origin = 1;
optional .CMsgVector start = 2;
optional .CMsgVector normal = 3;
optional .CMsgQAngle angles = 4;
optional fixed32 entity = 5 [default = 16777215];
optional fixed32 otherentity = 6 [default = 16777215];
optional float scale = 7;
optional float magnitude = 8;
optional float radius = 9;
optional fixed32 surfaceprop = 10;
optional fixed64 effectindex = 11;
optional uint32 damagetype = 12;
optional uint32 material = 13;
optional uint32 hitbox = 14;
optional uint32 color = 15;
optional uint32 flags = 16;
optional int32 attachmentindex = 17;
optional uint32 effectname = 18;
optional uint32 attachmentname = 19;
}
message CMsgTEEffectDispatch {
optional .CMsgEffectData effectdata = 1;
}
message CMsgTEEnergySplash {
optional .CMsgVector pos = 1;
optional .CMsgVector dir = 2;
optional bool explosive = 3;
}
message CMsgTEFizz {
optional int32 entity = 1 [default = -1];
optional uint32 density = 2;
optional int32 current = 3;
}
message CMsgTEShatterSurface {
optional .CMsgVector origin = 1;
optional .CMsgQAngle angles = 2;
optional .CMsgVector force = 3;
optional .CMsgVector forcepos = 4;
optional float width = 5;
optional float height = 6;
optional float shardsize = 7;
optional uint32 surfacetype = 8;
optional fixed32 frontcolor = 9;
optional fixed32 backcolor = 10;
}
message CMsgTEGlowSprite {
optional .CMsgVector origin = 1;
optional float scale = 2;
optional float life = 3;
optional uint32 brightness = 4;
}
message CMsgTEImpact {
optional .CMsgVector origin = 1;
optional .CMsgVector normal = 2;
optional uint32 type = 3;
}
message CMsgTEMuzzleFlash {
optional .CMsgVector origin = 1;
optional .CMsgQAngle angles = 2;
optional float scale = 3;
optional uint32 type = 4;
}
message CMsgTEBloodStream {
optional .CMsgVector origin = 1;
optional .CMsgVector direction = 2;
optional fixed32 color = 3;
optional uint32 amount = 4;
}
message CMsgTEExplosion {
optional .CMsgVector origin = 1;
optional uint32 framerate = 2;
optional uint32 flags = 3;
optional .CMsgVector normal = 4;
optional uint32 materialtype = 5;
optional uint32 radius = 6;
optional uint32 magnitude = 7;
optional float scale = 8;
optional bool affect_ragdolls = 9;
optional string effect_name = 10;
optional uint32 explosion_type = 11;
}
message CMsgTEDust {
optional .CMsgVector origin = 1;
optional float size = 2;
optional float speed = 3;
optional .CMsgVector direction = 4;
}
message CMsgTELargeFunnel {
optional .CMsgVector origin = 1;
optional uint32 reversed = 2;
}
message CMsgTESparks {
optional .CMsgVector origin = 1;
optional uint32 magnitude = 2;
optional uint32 length = 3;
optional .CMsgVector direction = 4;
}
message CMsgTEPhysicsProp {
optional .CMsgVector origin = 1;
optional .CMsgVector velocity = 2;
optional .CMsgQAngle angles = 3;
optional fixed32 skin = 4;
optional uint32 flags = 5;
optional uint32 effects = 6;
optional fixed32 color = 7;
optional fixed64 modelindex = 8;
optional uint32 unused_breakmodelsnottomake = 9;
optional float scale = 10;
optional .CMsgVector dmgpos = 11;
optional .CMsgVector dmgdir = 12;
optional int32 dmgtype = 13;
}
message CMsgTEPlayerDecal {
optional .CMsgVector origin = 1;
optional int32 player = 2 [default = -1];
optional int32 entity = 3 [default = -1];
}
message CMsgTEProjectedDecal {
optional .CMsgVector origin = 1;
optional .CMsgQAngle angles = 2;
optional uint32 index = 3;
optional float distance = 4;
}
message CMsgTESmoke {
optional .CMsgVector origin = 1;
optional float scale = 2;
}
message CMsgTEWorldDecal {
optional .CMsgVector origin = 1;
optional .CMsgVector normal = 2;
optional uint32 index = 3;
}

View file

@ -0,0 +1,13 @@
message CUIFontFilePB {
optional string font_file_name = 1;
optional bytes opentype_font_data = 2;
}
message CUIFontFilePackagePB {
message CUIEncryptedFontFilePB {
optional bytes encrypted_contents = 1;
}
required uint32 package_version = 1;
repeated .CUIFontFilePackagePB.CUIEncryptedFontFilePB encrypted_font_files = 2;
}

39
protos/usercmd.proto Normal file
View file

@ -0,0 +1,39 @@
import "networkbasetypes.proto";
message CInButtonStatePB {
optional uint64 buttonstate1 = 1;
optional uint64 buttonstate2 = 2;
optional uint64 buttonstate3 = 3;
}
message CSubtickMoveStep {
optional uint64 button = 1;
optional bool pressed = 2;
optional float when = 3;
optional float analog_forward_delta = 4;
optional float analog_left_delta = 5;
}
message CBaseUserCmdPB {
optional int32 legacy_command_number = 1;
optional int32 client_tick = 2;
optional .CInButtonStatePB buttons_pb = 3;
optional .CMsgQAngle viewangles = 4;
optional float forwardmove = 5;
optional float leftmove = 6;
optional float upmove = 7;
optional int32 impulse = 8;
optional int32 weaponselect = 9;
optional int32 random_seed = 10;
optional int32 mousedx = 11;
optional int32 mousedy = 12;
optional uint32 pawn_entity_handle = 14 [default = 16777215];
repeated .CSubtickMoveStep subtick_moves = 18;
optional bytes move_crc = 19;
optional uint32 consumed_server_angle_changes = 20;
optional int32 cmd_flags = 21;
}
message CUserCmdBasePB {
optional .CBaseUserCmdPB base = 1;
}

793
protos/usermessages.proto Normal file
View file

@ -0,0 +1,793 @@
import "networkbasetypes.proto";
enum EBaseUserMessages {
UM_AchievementEvent = 101;
UM_CloseCaption = 102;
UM_CloseCaptionDirect = 103;
UM_CurrentTimescale = 104;
UM_DesiredTimescale = 105;
UM_Fade = 106;
UM_GameTitle = 107;
UM_HudMsg = 110;
UM_HudText = 111;
UM_ColoredText = 113;
UM_RequestState = 114;
UM_ResetHUD = 115;
UM_Rumble = 116;
UM_SayText = 117;
UM_SayText2 = 118;
UM_SayTextChannel = 119;
UM_Shake = 120;
UM_ShakeDir = 121;
UM_WaterShake = 122;
UM_TextMsg = 124;
UM_ScreenTilt = 125;
UM_VoiceMask = 128;
UM_SendAudio = 130;
UM_ItemPickup = 131;
UM_AmmoDenied = 132;
UM_ShowMenu = 134;
UM_CreditsMsg = 135;
UM_CloseCaptionPlaceholder = 142;
UM_CameraTransition = 143;
UM_AudioParameter = 144;
UM_ParticleManager = 145;
UM_HudError = 146;
UM_CustomGameEvent = 148;
UM_AnimGraphUpdate = 149;
UM_HapticsManagerPulse = 150;
UM_HapticsManagerEffect = 151;
UM_CommandQueueState = 152;
UM_UpdateCssClasses = 153;
UM_ServerFrameTime = 154;
UM_LagCompensationError = 155;
UM_RequestDllStatus = 156;
UM_RequestUtilAction = 157;
UM_UtilActionResponse = 158;
UM_DllStatusResponse = 159;
UM_RequestInventory = 160;
UM_InventoryResponse = 161;
UM_RequestDiagnostic = 162;
UM_DiagnosticResponse = 163;
UM_ExtraUserData = 164;
UM_NotifyResponseFound = 165;
UM_PlayResponseConditional = 166;
UM_MAX_BASE = 200;
}
enum EBaseEntityMessages {
EM_PlayJingle = 136;
EM_ScreenOverlay = 137;
EM_RemoveAllDecals = 138;
EM_PropagateForce = 139;
EM_DoSpark = 140;
EM_FixAngle = 141;
}
enum eRollType {
ROLL_NONE = -1;
ROLL_STATS = 0;
ROLL_CREDITS = 1;
ROLL_LATE_JOIN_LOGO = 2;
ROLL_OUTTRO = 3;
}
enum PARTICLE_MESSAGE {
GAME_PARTICLE_MANAGER_EVENT_CREATE = 0;
GAME_PARTICLE_MANAGER_EVENT_UPDATE = 1;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_FORWARD = 2;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_ORIENTATION = 3;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_FALLBACK = 4;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENT = 5;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_OFFSET = 6;
GAME_PARTICLE_MANAGER_EVENT_DESTROY = 7;
GAME_PARTICLE_MANAGER_EVENT_DESTROY_INVOLVING = 8;
GAME_PARTICLE_MANAGER_EVENT_RELEASE = 9;
GAME_PARTICLE_MANAGER_EVENT_LATENCY = 10;
GAME_PARTICLE_MANAGER_EVENT_SHOULD_DRAW = 11;
GAME_PARTICLE_MANAGER_EVENT_FROZEN = 12;
GAME_PARTICLE_MANAGER_EVENT_CHANGE_CONTROL_POINT_ATTACHMENT = 13;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_ENTITY_POSITION = 14;
GAME_PARTICLE_MANAGER_EVENT_SET_FOW_PROPERTIES = 15;
GAME_PARTICLE_MANAGER_EVENT_SET_TEXT = 16;
GAME_PARTICLE_MANAGER_EVENT_SET_SHOULD_CHECK_FOW = 17;
GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_MODEL = 18;
GAME_PARTICLE_MANAGER_EVENT_SET_CONTROL_POINT_SNAPSHOT = 19;
GAME_PARTICLE_MANAGER_EVENT_SET_TEXTURE_ATTRIBUTE = 20;
GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_GENERIC_FLAG = 21;
GAME_PARTICLE_MANAGER_EVENT_SET_SCENE_OBJECT_TINT_AND_DESAT = 22;
GAME_PARTICLE_MANAGER_EVENT_DESTROY_NAMED = 23;
GAME_PARTICLE_MANAGER_EVENT_SKIP_TO_TIME = 24;
GAME_PARTICLE_MANAGER_EVENT_CAN_FREEZE = 25;
GAME_PARTICLE_MANAGER_EVENT_SET_NAMED_VALUE_CONTEXT = 26;
GAME_PARTICLE_MANAGER_EVENT_UPDATE_TRANSFORM = 27;
GAME_PARTICLE_MANAGER_EVENT_FREEZE_TRANSITION_OVERRIDE = 28;
GAME_PARTICLE_MANAGER_EVENT_FREEZE_INVOLVING = 29;
GAME_PARTICLE_MANAGER_EVENT_ADD_MODELLIST_OVERRIDE_ELEMENT = 30;
GAME_PARTICLE_MANAGER_EVENT_CLEAR_MODELLIST_OVERRIDE = 31;
GAME_PARTICLE_MANAGER_EVENT_CREATE_PHYSICS_SIM = 32;
GAME_PARTICLE_MANAGER_EVENT_DESTROY_PHYSICS_SIM = 33;
GAME_PARTICLE_MANAGER_EVENT_SET_VDATA = 34;
}
enum EHapticPulseType {
VR_HAND_HAPTIC_PULSE_LIGHT = 0;
VR_HAND_HAPTIC_PULSE_MEDIUM = 1;
VR_HAND_HAPTIC_PULSE_STRONG = 2;
}
message CUserMessageAchievementEvent {
optional uint32 achievement = 1;
}
message CUserMessageCloseCaption {
optional fixed32 hash = 1;
optional float duration = 2;
optional bool from_player = 3;
optional int32 ent_index = 4 [default = -1];
}
message CUserMessageCloseCaptionDirect {
optional fixed32 hash = 1;
optional float duration = 2;
optional bool from_player = 3;
optional int32 ent_index = 4 [default = -1];
}
message CUserMessageCloseCaptionPlaceholder {
optional string string = 1;
optional float duration = 2;
optional bool from_player = 3;
optional int32 ent_index = 4 [default = -1];
}
message CUserMessageCurrentTimescale {
optional float current = 1;
}
message CUserMessageDesiredTimescale {
optional float desired = 1;
optional float acceleration = 2;
optional float minblendrate = 3;
optional float blenddeltamultiplier = 4;
}
message CUserMessageFade {
optional uint32 duration = 1;
optional uint32 hold_time = 2;
optional uint32 flags = 3;
optional fixed32 color = 4;
}
message CUserMessageShake {
optional uint32 command = 1;
optional float amplitude = 2;
optional float frequency = 3;
optional float duration = 4;
}
message CUserMessageShakeDir {
optional .CUserMessageShake shake = 1;
optional .CMsgVector direction = 2;
}
message CUserMessageWaterShake {
optional uint32 command = 1;
optional float amplitude = 2;
optional float frequency = 3;
optional float duration = 4;
}
message CUserMessageScreenTilt {
optional uint32 command = 1;
optional bool ease_in_out = 2;
optional .CMsgVector angle = 3;
optional float duration = 4;
optional float time = 5;
}
message CUserMessageSayText {
optional int32 playerindex = 1 [default = -1];
optional string text = 2;
optional bool chat = 3;
}
message CUserMessageSayText2 {
optional int32 entityindex = 1 [default = -1];
optional bool chat = 2;
optional string messagename = 3;
optional string param1 = 4;
optional string param2 = 5;
optional string param3 = 6;
optional string param4 = 7;
}
message CUserMessageHudMsg {
optional uint32 channel = 1;
optional float x = 2;
optional float y = 3;
optional fixed32 color1 = 4;
optional fixed32 color2 = 5;
optional uint32 effect = 6;
optional string message = 11;
}
message CUserMessageHudText {
optional string message = 1;
}
message CUserMessageTextMsg {
optional uint32 dest = 1;
repeated string param = 2;
}
message CUserMessageGameTitle {
}
message CUserMessageResetHUD {
}
message CUserMessageSendAudio {
optional string soundname = 1;
optional bool stop = 2;
}
message CUserMessageAudioParameter {
optional uint32 parameter_type = 1;
optional uint32 name_hash_code = 2;
optional float value = 3;
optional uint32 int_value = 4;
}
message CUserMessageVoiceMask {
repeated uint32 gamerules_masks = 1;
repeated uint32 ban_masks = 2;
optional bool mod_enable = 3;
}
message CUserMessageRequestState {
}
message CUserMessageRumble {
optional int32 index = 1;
optional int32 data = 2;
optional int32 flags = 3;
}
message CUserMessageSayTextChannel {
optional int32 player = 1;
optional int32 channel = 2;
optional string text = 3;
}
message CUserMessageColoredText {
optional uint32 color = 1;
optional string text = 2;
optional bool reset = 3;
optional int32 context_player_slot = 4 [default = -1];
optional int32 context_value = 5;
optional int32 context_team_id = 6;
}
message CUserMessageItemPickup {
optional string itemname = 1;
}
message CUserMessageAmmoDenied {
optional uint32 ammo_id = 1;
}
message CUserMessageShowMenu {
optional uint32 validslots = 1;
optional uint32 displaytime = 2;
optional bool needmore = 3;
optional string menustring = 4;
}
message CUserMessageCreditsMsg {
optional .eRollType rolltype = 1 [default = ROLL_NONE];
optional float logo_length = 2;
}
message CEntityMessagePlayJingle {
optional .CEntityMsg entity_msg = 1;
}
message CEntityMessageScreenOverlay {
optional bool start_effect = 1;
optional .CEntityMsg entity_msg = 2;
}
message CEntityMessageRemoveAllDecals {
optional bool remove_decals = 1;
optional .CEntityMsg entity_msg = 2;
}
message CEntityMessagePropagateForce {
optional .CMsgVector impulse = 1;
optional .CEntityMsg entity_msg = 2;
}
message CEntityMessageDoSpark {
optional .CMsgVector origin = 1;
optional int32 entityindex = 2 [default = -1];
optional float radius = 3;
optional fixed32 color = 4;
optional uint32 beams = 5;
optional float thick = 6;
optional float duration = 7;
optional .CEntityMsg entity_msg = 8;
}
message CEntityMessageFixAngle {
optional bool relative = 1;
optional .CMsgQAngle angle = 2;
optional .CEntityMsg entity_msg = 3;
}
message CUserMessageCameraTransition {
message Transition_DataDriven {
optional string filename = 1;
optional int32 attach_ent_index = 2 [default = -1];
optional float duration = 3;
}
optional uint32 camera_type = 1;
optional float duration = 2;
optional .CUserMessageCameraTransition.Transition_DataDriven params_data_driven = 3;
}
message CUserMsg_ParticleManager {
message ReleaseParticleIndex {
}
message CreateParticle {
optional fixed64 particle_name_index = 1;
optional int32 attach_type = 2;
optional uint32 entity_handle = 3 [default = 16777215];
optional uint32 entity_handle_for_modifiers = 4 [default = 16777215];
optional bool apply_voice_ban_rules = 5;
optional int32 team_behavior = 6;
optional string control_point_configuration = 7;
optional bool cluster = 8;
optional float endcap_time = 9;
}
message DestroyParticle {
optional bool destroy_immediately = 1;
}
message DestroyParticleInvolving {
optional bool destroy_immediately = 1;
optional uint32 entity_handle = 3 [default = 16777215];
}
message DestroyParticleNamed {
optional fixed64 particle_name_index = 1;
optional uint32 entity_handle = 2 [default = 16777215];
optional bool destroy_immediately = 3;
optional bool play_endcap = 4;
}
message UpdateParticle_OBSOLETE {
optional int32 control_point = 1;
optional .CMsgVector position = 2;
}
message UpdateParticleFwd_OBSOLETE {
optional int32 control_point = 1;
optional .CMsgVector forward = 2;
}
message UpdateParticleOrient_OBSOLETE {
optional int32 control_point = 1;
optional .CMsgVector forward = 2;
optional .CMsgVector deprecated_right = 3;
optional .CMsgVector up = 4;
optional .CMsgVector left = 5;
}
message UpdateParticleTransform {
optional int32 control_point = 1;
optional .CMsgVector position = 2;
optional .CMsgQuaternion orientation = 3;
optional float interpolation_interval = 4;
}
message UpdateParticleFallback {
optional int32 control_point = 1;
optional .CMsgVector position = 2;
}
message UpdateParticleOffset {
optional int32 control_point = 1;
optional .CMsgVector origin_offset = 2;
optional .CMsgQAngle angle_offset = 3;
}
message UpdateParticleEnt {
optional int32 control_point = 1;
optional uint32 entity_handle = 2 [default = 16777215];
optional int32 attach_type = 3;
optional int32 attachment = 4;
optional .CMsgVector fallback_position = 5;
optional bool include_wearables = 6;
optional .CMsgVector offset_position = 7;
optional .CMsgQAngle offset_angles = 8;
}
message UpdateParticleSetFrozen {
optional bool set_frozen = 1;
optional float transition_duration = 2;
}
message UpdateParticleShouldDraw {
optional bool should_draw = 1;
}
message ChangeControlPointAttachment {
optional int32 attachment_old = 1;
optional int32 attachment_new = 2;
optional uint32 entity_handle = 3 [default = 16777215];
}
message UpdateEntityPosition {
optional uint32 entity_handle = 1 [default = 16777215];
optional .CMsgVector position = 2;
}
message SetParticleFoWProperties {
optional int32 fow_control_point = 1;
optional int32 fow_control_point2 = 2;
optional float fow_radius = 3;
}
message SetParticleShouldCheckFoW {
optional bool check_fow = 1;
}
message SetControlPointModel {
optional int32 control_point = 1;
optional string model_name = 2;
}
message SetControlPointSnapshot {
optional int32 control_point = 1;
optional string snapshot_name = 2;
}
message SetParticleText {
optional string text = 1;
}
message SetTextureAttribute {
optional string attribute_name = 1;
optional string texture_name = 2;
}
message SetSceneObjectGenericFlag {
optional bool flag_value = 1;
}
message SetSceneObjectTintAndDesat {
optional fixed32 tint = 1;
optional float desat = 2;
}
message ParticleSkipToTime {
optional float skip_to_time = 1;
}
message ParticleCanFreeze {
optional bool can_freeze = 1;
}
message ParticleFreezeTransitionOverride {
optional float freeze_transition_override = 1;
}
message FreezeParticleInvolving {
optional bool set_frozen = 1;
optional float transition_duration = 2;
optional uint32 entity_handle = 3 [default = 16777215];
}
message AddModellistOverrideElement {
optional string model_name = 1;
optional float spawn_probability = 2;
optional uint32 groupid = 3;
}
message ClearModellistOverride {
optional uint32 groupid = 1;
}
message SetParticleNamedValueContext {
message FloatContextValue {
optional uint32 value_name_hash = 1;
optional float value = 2;
}
message VectorContextValue {
optional uint32 value_name_hash = 1;
optional .CMsgVector value = 2;
}
message TransformContextValue {
optional uint32 value_name_hash = 1;
optional .CMsgQAngle angles = 2;
optional .CMsgVector translation = 3;
}
message EHandleContext {
optional uint32 value_name_hash = 1;
optional uint32 ent_index = 2 [default = 16777215];
}
repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.FloatContextValue float_values = 1;
repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.VectorContextValue vector_values = 2;
repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.TransformContextValue transform_values = 3;
repeated .CUserMsg_ParticleManager.SetParticleNamedValueContext.EHandleContext ehandle_values = 4;
}
message CreatePhysicsSim {
optional string prop_group_name = 1;
}
message DestroyPhysicsSim {
}
message SetVData {
optional string vdata_name = 1;
}
required .PARTICLE_MESSAGE type = 1 [default = GAME_PARTICLE_MANAGER_EVENT_CREATE];
required uint32 index = 2;
optional .CUserMsg_ParticleManager.ReleaseParticleIndex release_particle_index = 3;
optional .CUserMsg_ParticleManager.CreateParticle create_particle = 4;
optional .CUserMsg_ParticleManager.DestroyParticle destroy_particle = 5;
optional .CUserMsg_ParticleManager.DestroyParticleInvolving destroy_particle_involving = 6;
optional .CUserMsg_ParticleManager.UpdateParticle_OBSOLETE update_particle = 7;
optional .CUserMsg_ParticleManager.UpdateParticleFwd_OBSOLETE update_particle_fwd = 8;
optional .CUserMsg_ParticleManager.UpdateParticleOrient_OBSOLETE update_particle_orient = 9;
optional .CUserMsg_ParticleManager.UpdateParticleFallback update_particle_fallback = 10;
optional .CUserMsg_ParticleManager.UpdateParticleOffset update_particle_offset = 11;
optional .CUserMsg_ParticleManager.UpdateParticleEnt update_particle_ent = 12;
optional .CUserMsg_ParticleManager.UpdateParticleShouldDraw update_particle_should_draw = 14;
optional .CUserMsg_ParticleManager.UpdateParticleSetFrozen update_particle_set_frozen = 15;
optional .CUserMsg_ParticleManager.ChangeControlPointAttachment change_control_point_attachment = 16;
optional .CUserMsg_ParticleManager.UpdateEntityPosition update_entity_position = 17;
optional .CUserMsg_ParticleManager.SetParticleFoWProperties set_particle_fow_properties = 18;
optional .CUserMsg_ParticleManager.SetParticleText set_particle_text = 19;
optional .CUserMsg_ParticleManager.SetParticleShouldCheckFoW set_particle_should_check_fow = 20;
optional .CUserMsg_ParticleManager.SetControlPointModel set_control_point_model = 21;
optional .CUserMsg_ParticleManager.SetControlPointSnapshot set_control_point_snapshot = 22;
optional .CUserMsg_ParticleManager.SetTextureAttribute set_texture_attribute = 23;
optional .CUserMsg_ParticleManager.SetSceneObjectGenericFlag set_scene_object_generic_flag = 24;
optional .CUserMsg_ParticleManager.SetSceneObjectTintAndDesat set_scene_object_tint_and_desat = 25;
optional .CUserMsg_ParticleManager.DestroyParticleNamed destroy_particle_named = 26;
optional .CUserMsg_ParticleManager.ParticleSkipToTime particle_skip_to_time = 27;
optional .CUserMsg_ParticleManager.ParticleCanFreeze particle_can_freeze = 28;
optional .CUserMsg_ParticleManager.SetParticleNamedValueContext set_named_value_context = 29;
optional .CUserMsg_ParticleManager.UpdateParticleTransform update_particle_transform = 30;
optional .CUserMsg_ParticleManager.ParticleFreezeTransitionOverride particle_freeze_transition_override = 31;
optional .CUserMsg_ParticleManager.FreezeParticleInvolving freeze_particle_involving = 32;
optional .CUserMsg_ParticleManager.AddModellistOverrideElement add_modellist_override_element = 33;
optional .CUserMsg_ParticleManager.ClearModellistOverride clear_modellist_override = 34;
optional .CUserMsg_ParticleManager.CreatePhysicsSim create_physics_sim = 35;
optional .CUserMsg_ParticleManager.DestroyPhysicsSim destroy_physics_sim = 36;
optional .CUserMsg_ParticleManager.SetVData set_vdata = 37;
extensions 100 to 201;
}
message CUserMsg_HudError {
optional int32 order_id = 1;
}
message CUserMsg_CustomGameEvent {
optional string event_name = 1;
optional bytes data = 2;
}
message CUserMessageHapticsManagerPulse {
optional int32 hand_id = 1;
optional float effect_amplitude = 2;
optional float effect_frequency = 3;
optional float effect_duration = 4;
}
message CUserMessageHapticsManagerEffect {
optional int32 hand_id = 1;
optional uint32 effect_name_hash_code = 2;
optional float effect_scale = 3;
}
message CUserMessageAnimStateGraphState {
optional int32 entity_index = 1;
optional bytes data = 2;
}
message CUserMessageUpdateCssClasses {
optional int32 target_world_panel = 1;
optional string css_classes = 2;
optional bool is_add = 3;
}
message CUserMessageServerFrameTime {
optional float frame_time = 1;
}
message CUserMessageLagCompensationError {
optional float distance = 1;
}
message CUserMessageRequestDllStatus {
optional string dll_action = 1;
optional bool full_report = 2;
}
message CUserMessageRequestUtilAction {
optional int32 util1 = 2;
optional int32 util2 = 3;
optional int32 util3 = 4;
optional int32 util4 = 5;
optional int32 util5 = 6;
}
message CUserMessage_UtilMsg_Response {
message ItemDetail {
optional int32 index = 1;
optional int32 hash = 2;
optional int32 crc = 3;
optional string name = 4;
}
optional fixed32 crc = 1;
optional int32 item_count = 2;
optional fixed32 crc2 = 3;
optional int32 item_count2 = 4;
repeated int32 crc_part = 5;
repeated int32 crc_part2 = 6;
optional int32 client_timestamp = 7;
optional int32 platform = 8;
repeated .CUserMessage_UtilMsg_Response.ItemDetail itemdetails = 9;
optional int32 itemgroup = 10;
optional int32 total_count = 11;
optional int32 total_count2 = 12;
}
message CUserMessage_DllStatus {
message CVDiagnostic {
optional uint32 id = 1;
optional uint32 extended = 2;
optional uint64 value = 3;
optional string string_value = 4;
}
message CModule {
optional uint64 base_addr = 1;
optional string name = 2;
optional uint32 size = 3;
optional uint32 timestamp = 4;
}
optional string file_report = 1;
optional string command_line = 2;
optional uint32 total_files = 3;
optional uint32 process_id = 4;
optional int32 osversion = 5;
optional uint64 client_time = 6;
repeated .CUserMessage_DllStatus.CVDiagnostic diagnostics = 7;
repeated .CUserMessage_DllStatus.CModule modules = 8;
}
message CUserMessageRequestInventory {
optional int32 inventory = 1;
optional int32 offset = 2;
optional int32 options = 3;
}
message CUserMessage_Inventory_Response {
message InventoryDetail {
optional int32 index = 1;
optional int64 primary = 2;
optional int64 offset = 3;
optional int64 first = 4;
optional int64 base = 5;
optional string name = 6;
optional string base_name = 7;
optional int32 base_detail = 8;
optional int32 base_time = 9;
optional int32 base_hash = 10;
}
optional fixed32 crc = 1;
optional int32 item_count = 2;
optional int32 osversion = 5;
optional int32 perf_time = 6;
optional int32 client_timestamp = 7;
optional int32 platform = 8;
repeated .CUserMessage_Inventory_Response.InventoryDetail inventories = 9;
repeated .CUserMessage_Inventory_Response.InventoryDetail inventories2 = 10;
repeated .CUserMessage_Inventory_Response.InventoryDetail inventories3 = 14;
optional int32 inv_type = 11;
optional int32 build_version = 12;
optional int32 instance = 13;
optional int64 start_time = 15;
}
message CUserMessageRequestDiagnostic {
message Diagnostic {
optional int32 index = 1;
optional int64 offset = 2;
optional int32 param = 3;
optional int32 length = 4;
optional int32 type = 5;
optional int64 base = 6;
optional int64 range = 7;
optional int64 extent = 8;
optional int64 detail = 9;
optional string name = 10;
optional string alias = 11;
optional bytes vardetail = 12;
optional int32 context = 13;
}
repeated .CUserMessageRequestDiagnostic.Diagnostic diagnostics = 1;
}
message CUserMessage_Diagnostic_Response {
message Diagnostic {
optional int32 index = 1;
optional int64 offset = 2;
optional int32 param = 3;
optional int32 length = 4;
optional bytes detail = 5;
optional int64 base = 6;
optional int64 range = 7;
optional int32 type = 8;
optional string name = 10;
optional string alias = 11;
optional bytes backup = 12;
optional int32 context = 13;
optional int64 control = 14;
optional int64 augment = 15;
optional int64 placebo = 16;
}
repeated .CUserMessage_Diagnostic_Response.Diagnostic diagnostics = 1;
optional int32 build_version = 2;
optional int32 instance = 3;
optional int64 start_time = 4;
optional int32 osversion = 5;
optional int32 platform = 6;
}
message CUserMessage_ExtraUserData {
optional int32 item = 1;
optional int64 value1 = 2;
optional int64 value2 = 3;
repeated bytes detail1 = 4;
repeated bytes detail2 = 5;
}
message CUserMessage_NotifyResponseFound {
message Criteria {
optional uint32 name_symbol = 1;
optional string value = 2;
}
optional int32 ent_index = 1 [default = -1];
optional string rule_name = 2;
optional string response_value = 3;
optional string response_concept = 4;
repeated .CUserMessage_NotifyResponseFound.Criteria criteria = 5;
}
message CUserMessage_PlayResponseConditional {
optional int32 ent_index = 1 [default = -1];
repeated int32 player_slots = 2;
optional string response = 3;
optional .CMsgVector ent_origin = 4;
}

View file

@ -0,0 +1,17 @@
import "google/protobuf/descriptor.proto";
extend .google.protobuf.FieldOptions {
optional bool valve_map_field = 61000 [default = false];
optional bool valve_map_key = 61001 [default = false];
optional int32 diff_encode_field = 61002 [default = 0];
optional bool delta_ignore = 61003 [default = false];
optional uint32 steamml_max_entries = 61004 [default = 0];
optional bool steamml_is_timestamp = 61005 [default = false];
optional uint32 steamlearn_count = 61006 [default = 0];
}
extend .google.protobuf.EnumValueOptions {
optional string schema_friendly_name = 1000;
optional string schema_description = 1001;
optional bool schema_suppress_enumerator = 1002;
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,582 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `connectionless_netmessages.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:C2S_CONNECT_Message)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct C2S_CONNECT_Message {
// message fields
// @@protoc_insertion_point(field:C2S_CONNECT_Message.host_version)
pub host_version: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.auth_protocol)
pub auth_protocol: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.challenge_number)
pub challenge_number: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.reservation_cookie)
pub reservation_cookie: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.low_violence)
pub low_violence: ::std::option::Option<bool>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.encrypted_password)
pub encrypted_password: ::std::option::Option<::std::vec::Vec<u8>>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.splitplayers)
pub splitplayers: ::std::vec::Vec<super::netmessages::CCLCMsg_SplitPlayerConnect>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.auth_steam)
pub auth_steam: ::std::option::Option<::std::vec::Vec<u8>>,
// @@protoc_insertion_point(field:C2S_CONNECT_Message.challenge_context)
pub challenge_context: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:C2S_CONNECT_Message.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a C2S_CONNECT_Message {
fn default() -> &'a C2S_CONNECT_Message {
<C2S_CONNECT_Message as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl C2S_CONNECT_Message {
pub fn new() -> C2S_CONNECT_Message {
::std::default::Default::default()
}
// optional uint32 host_version = 1;
pub fn host_version(&self) -> u32 {
self.host_version.unwrap_or(0)
}
pub fn clear_host_version(&mut self) {
self.host_version = ::std::option::Option::None;
}
pub fn has_host_version(&self) -> bool {
self.host_version.is_some()
}
// Param is passed by value, moved
pub fn set_host_version(&mut self, v: u32) {
self.host_version = ::std::option::Option::Some(v);
}
// optional uint32 auth_protocol = 2;
pub fn auth_protocol(&self) -> u32 {
self.auth_protocol.unwrap_or(0)
}
pub fn clear_auth_protocol(&mut self) {
self.auth_protocol = ::std::option::Option::None;
}
pub fn has_auth_protocol(&self) -> bool {
self.auth_protocol.is_some()
}
// Param is passed by value, moved
pub fn set_auth_protocol(&mut self, v: u32) {
self.auth_protocol = ::std::option::Option::Some(v);
}
// optional uint32 challenge_number = 3;
pub fn challenge_number(&self) -> u32 {
self.challenge_number.unwrap_or(0)
}
pub fn clear_challenge_number(&mut self) {
self.challenge_number = ::std::option::Option::None;
}
pub fn has_challenge_number(&self) -> bool {
self.challenge_number.is_some()
}
// Param is passed by value, moved
pub fn set_challenge_number(&mut self, v: u32) {
self.challenge_number = ::std::option::Option::Some(v);
}
// optional fixed64 reservation_cookie = 4;
pub fn reservation_cookie(&self) -> u64 {
self.reservation_cookie.unwrap_or(0)
}
pub fn clear_reservation_cookie(&mut self) {
self.reservation_cookie = ::std::option::Option::None;
}
pub fn has_reservation_cookie(&self) -> bool {
self.reservation_cookie.is_some()
}
// Param is passed by value, moved
pub fn set_reservation_cookie(&mut self, v: u64) {
self.reservation_cookie = ::std::option::Option::Some(v);
}
// optional bool low_violence = 5;
pub fn low_violence(&self) -> bool {
self.low_violence.unwrap_or(false)
}
pub fn clear_low_violence(&mut self) {
self.low_violence = ::std::option::Option::None;
}
pub fn has_low_violence(&self) -> bool {
self.low_violence.is_some()
}
// Param is passed by value, moved
pub fn set_low_violence(&mut self, v: bool) {
self.low_violence = ::std::option::Option::Some(v);
}
// optional bytes encrypted_password = 6;
pub fn encrypted_password(&self) -> &[u8] {
match self.encrypted_password.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_encrypted_password(&mut self) {
self.encrypted_password = ::std::option::Option::None;
}
pub fn has_encrypted_password(&self) -> bool {
self.encrypted_password.is_some()
}
// Param is passed by value, moved
pub fn set_encrypted_password(&mut self, v: ::std::vec::Vec<u8>) {
self.encrypted_password = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_encrypted_password(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.encrypted_password.is_none() {
self.encrypted_password = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.encrypted_password.as_mut().unwrap()
}
// Take field
pub fn take_encrypted_password(&mut self) -> ::std::vec::Vec<u8> {
self.encrypted_password.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
// optional bytes auth_steam = 8;
pub fn auth_steam(&self) -> &[u8] {
match self.auth_steam.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_auth_steam(&mut self) {
self.auth_steam = ::std::option::Option::None;
}
pub fn has_auth_steam(&self) -> bool {
self.auth_steam.is_some()
}
// Param is passed by value, moved
pub fn set_auth_steam(&mut self, v: ::std::vec::Vec<u8>) {
self.auth_steam = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_auth_steam(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.auth_steam.is_none() {
self.auth_steam = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.auth_steam.as_mut().unwrap()
}
// Take field
pub fn take_auth_steam(&mut self) -> ::std::vec::Vec<u8> {
self.auth_steam.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
// optional string challenge_context = 9;
pub fn challenge_context(&self) -> &str {
match self.challenge_context.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_challenge_context(&mut self) {
self.challenge_context = ::std::option::Option::None;
}
pub fn has_challenge_context(&self) -> bool {
self.challenge_context.is_some()
}
// Param is passed by value, moved
pub fn set_challenge_context(&mut self, v: ::std::string::String) {
self.challenge_context = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_challenge_context(&mut self) -> &mut ::std::string::String {
if self.challenge_context.is_none() {
self.challenge_context = ::std::option::Option::Some(::std::string::String::new());
}
self.challenge_context.as_mut().unwrap()
}
// Take field
pub fn take_challenge_context(&mut self) -> ::std::string::String {
self.challenge_context.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for C2S_CONNECT_Message {
const NAME: &'static str = "C2S_CONNECT_Message";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.host_version = ::std::option::Option::Some(is.read_uint32()?);
},
16 => {
self.auth_protocol = ::std::option::Option::Some(is.read_uint32()?);
},
24 => {
self.challenge_number = ::std::option::Option::Some(is.read_uint32()?);
},
33 => {
self.reservation_cookie = ::std::option::Option::Some(is.read_fixed64()?);
},
40 => {
self.low_violence = ::std::option::Option::Some(is.read_bool()?);
},
50 => {
self.encrypted_password = ::std::option::Option::Some(is.read_bytes()?);
},
58 => {
self.splitplayers.push(is.read_message()?);
},
66 => {
self.auth_steam = ::std::option::Option::Some(is.read_bytes()?);
},
74 => {
self.challenge_context = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.host_version {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
if let Some(v) = self.auth_protocol {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(2, v);
}
if let Some(v) = self.challenge_number {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(3, v);
}
if let Some(v) = self.reservation_cookie {
my_size += 1 + 8;
}
if let Some(v) = self.low_violence {
my_size += 1 + 1;
}
if let Some(v) = self.encrypted_password.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::bytes_size(6, &v);
}
for value in &self.splitplayers {
let len = value.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
};
if let Some(v) = self.auth_steam.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::bytes_size(8, &v);
}
if let Some(v) = self.challenge_context.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(9, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.host_version {
os.write_uint32(1, v)?;
}
if let Some(v) = self.auth_protocol {
os.write_uint32(2, v)?;
}
if let Some(v) = self.challenge_number {
os.write_uint32(3, v)?;
}
if let Some(v) = self.reservation_cookie {
os.write_fixed64(4, v)?;
}
if let Some(v) = self.low_violence {
os.write_bool(5, v)?;
}
if let Some(v) = self.encrypted_password.as_ref() {
os.write_bytes(6, v)?;
}
for v in &self.splitplayers {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(7, v, os)?;
};
if let Some(v) = self.auth_steam.as_ref() {
os.write_bytes(8, v)?;
}
if let Some(v) = self.challenge_context.as_ref() {
os.write_string(9, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> C2S_CONNECT_Message {
C2S_CONNECT_Message::new()
}
fn clear(&mut self) {
self.host_version = ::std::option::Option::None;
self.auth_protocol = ::std::option::Option::None;
self.challenge_number = ::std::option::Option::None;
self.reservation_cookie = ::std::option::Option::None;
self.low_violence = ::std::option::Option::None;
self.encrypted_password = ::std::option::Option::None;
self.splitplayers.clear();
self.auth_steam = ::std::option::Option::None;
self.challenge_context = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static C2S_CONNECT_Message {
static instance: C2S_CONNECT_Message = C2S_CONNECT_Message {
host_version: ::std::option::Option::None,
auth_protocol: ::std::option::Option::None,
challenge_number: ::std::option::Option::None,
reservation_cookie: ::std::option::Option::None,
low_violence: ::std::option::Option::None,
encrypted_password: ::std::option::Option::None,
splitplayers: ::std::vec::Vec::new(),
auth_steam: ::std::option::Option::None,
challenge_context: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:C2S_CONNECTION_Message)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct C2S_CONNECTION_Message {
// message fields
// @@protoc_insertion_point(field:C2S_CONNECTION_Message.addon_name)
pub addon_name: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:C2S_CONNECTION_Message.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a C2S_CONNECTION_Message {
fn default() -> &'a C2S_CONNECTION_Message {
<C2S_CONNECTION_Message as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl C2S_CONNECTION_Message {
pub fn new() -> C2S_CONNECTION_Message {
::std::default::Default::default()
}
// optional string addon_name = 1;
pub fn addon_name(&self) -> &str {
match self.addon_name.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_addon_name(&mut self) {
self.addon_name = ::std::option::Option::None;
}
pub fn has_addon_name(&self) -> bool {
self.addon_name.is_some()
}
// Param is passed by value, moved
pub fn set_addon_name(&mut self, v: ::std::string::String) {
self.addon_name = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_addon_name(&mut self) -> &mut ::std::string::String {
if self.addon_name.is_none() {
self.addon_name = ::std::option::Option::Some(::std::string::String::new());
}
self.addon_name.as_mut().unwrap()
}
// Take field
pub fn take_addon_name(&mut self) -> ::std::string::String {
self.addon_name.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for C2S_CONNECTION_Message {
const NAME: &'static str = "C2S_CONNECTION_Message";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.addon_name = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.addon_name.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(1, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.addon_name.as_ref() {
os.write_string(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> C2S_CONNECTION_Message {
C2S_CONNECTION_Message::new()
}
fn clear(&mut self) {
self.addon_name = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static C2S_CONNECTION_Message {
static instance: C2S_CONNECTION_Message = C2S_CONNECTION_Message {
addon_name: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
#[allow(unused_imports)]
use crate::netmessages::*;
impl ::steam_vent_proto_common::RpcMessage for C2S_CONNECT_Message {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for C2S_CONNECTION_Message {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

View file

@ -0,0 +1,907 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `cs_gameevents.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:CMsgTEPlayerAnimEvent)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CMsgTEPlayerAnimEvent {
// message fields
// @@protoc_insertion_point(field:CMsgTEPlayerAnimEvent.player)
pub player: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEPlayerAnimEvent.event)
pub event: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEPlayerAnimEvent.data)
pub data: ::std::option::Option<i32>,
// special fields
// @@protoc_insertion_point(special_field:CMsgTEPlayerAnimEvent.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CMsgTEPlayerAnimEvent {
fn default() -> &'a CMsgTEPlayerAnimEvent {
<CMsgTEPlayerAnimEvent as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CMsgTEPlayerAnimEvent {
pub fn new() -> CMsgTEPlayerAnimEvent {
::std::default::Default::default()
}
// optional fixed32 player = 1;
pub fn player(&self) -> u32 {
self.player.unwrap_or(16777215u32)
}
pub fn clear_player(&mut self) {
self.player = ::std::option::Option::None;
}
pub fn has_player(&self) -> bool {
self.player.is_some()
}
// Param is passed by value, moved
pub fn set_player(&mut self, v: u32) {
self.player = ::std::option::Option::Some(v);
}
// optional uint32 event = 2;
pub fn event(&self) -> u32 {
self.event.unwrap_or(0)
}
pub fn clear_event(&mut self) {
self.event = ::std::option::Option::None;
}
pub fn has_event(&self) -> bool {
self.event.is_some()
}
// Param is passed by value, moved
pub fn set_event(&mut self, v: u32) {
self.event = ::std::option::Option::Some(v);
}
// optional int32 data = 3;
pub fn data(&self) -> i32 {
self.data.unwrap_or(0)
}
pub fn clear_data(&mut self) {
self.data = ::std::option::Option::None;
}
pub fn has_data(&self) -> bool {
self.data.is_some()
}
// Param is passed by value, moved
pub fn set_data(&mut self, v: i32) {
self.data = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CMsgTEPlayerAnimEvent {
const NAME: &'static str = "CMsgTEPlayerAnimEvent";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
13 => {
self.player = ::std::option::Option::Some(is.read_fixed32()?);
},
16 => {
self.event = ::std::option::Option::Some(is.read_uint32()?);
},
24 => {
self.data = ::std::option::Option::Some(is.read_int32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.player {
my_size += 1 + 4;
}
if let Some(v) = self.event {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(2, v);
}
if let Some(v) = self.data {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(3, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.player {
os.write_fixed32(1, v)?;
}
if let Some(v) = self.event {
os.write_uint32(2, v)?;
}
if let Some(v) = self.data {
os.write_int32(3, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CMsgTEPlayerAnimEvent {
CMsgTEPlayerAnimEvent::new()
}
fn clear(&mut self) {
self.player = ::std::option::Option::None;
self.event = ::std::option::Option::None;
self.data = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CMsgTEPlayerAnimEvent {
static instance: CMsgTEPlayerAnimEvent = CMsgTEPlayerAnimEvent {
player: ::std::option::Option::None,
event: ::std::option::Option::None,
data: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CMsgTERadioIcon)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CMsgTERadioIcon {
// message fields
// @@protoc_insertion_point(field:CMsgTERadioIcon.player)
pub player: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:CMsgTERadioIcon.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CMsgTERadioIcon {
fn default() -> &'a CMsgTERadioIcon {
<CMsgTERadioIcon as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CMsgTERadioIcon {
pub fn new() -> CMsgTERadioIcon {
::std::default::Default::default()
}
// optional fixed32 player = 1;
pub fn player(&self) -> u32 {
self.player.unwrap_or(16777215u32)
}
pub fn clear_player(&mut self) {
self.player = ::std::option::Option::None;
}
pub fn has_player(&self) -> bool {
self.player.is_some()
}
// Param is passed by value, moved
pub fn set_player(&mut self, v: u32) {
self.player = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CMsgTERadioIcon {
const NAME: &'static str = "CMsgTERadioIcon";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
13 => {
self.player = ::std::option::Option::Some(is.read_fixed32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.player {
my_size += 1 + 4;
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.player {
os.write_fixed32(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CMsgTERadioIcon {
CMsgTERadioIcon::new()
}
fn clear(&mut self) {
self.player = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CMsgTERadioIcon {
static instance: CMsgTERadioIcon = CMsgTERadioIcon {
player: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CMsgTEFireBullets)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CMsgTEFireBullets {
// message fields
// @@protoc_insertion_point(field:CMsgTEFireBullets.origin)
pub origin: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgVector>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.angles)
pub angles: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgQAngle>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.weapon_id)
pub weapon_id: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.mode)
pub mode: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.seed)
pub seed: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.player)
pub player: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.inaccuracy)
pub inaccuracy: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.recoil_index)
pub recoil_index: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.spread)
pub spread: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.sound_type)
pub sound_type: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.item_def_index)
pub item_def_index: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.sound_dsp_effect)
pub sound_dsp_effect: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.ent_origin)
pub ent_origin: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgVector>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.num_bullets_remaining)
pub num_bullets_remaining: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgTEFireBullets.attack_type)
pub attack_type: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:CMsgTEFireBullets.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CMsgTEFireBullets {
fn default() -> &'a CMsgTEFireBullets {
<CMsgTEFireBullets as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CMsgTEFireBullets {
pub fn new() -> CMsgTEFireBullets {
::std::default::Default::default()
}
// optional uint32 weapon_id = 3;
pub fn weapon_id(&self) -> u32 {
self.weapon_id.unwrap_or(16777215u32)
}
pub fn clear_weapon_id(&mut self) {
self.weapon_id = ::std::option::Option::None;
}
pub fn has_weapon_id(&self) -> bool {
self.weapon_id.is_some()
}
// Param is passed by value, moved
pub fn set_weapon_id(&mut self, v: u32) {
self.weapon_id = ::std::option::Option::Some(v);
}
// optional uint32 mode = 4;
pub fn mode(&self) -> u32 {
self.mode.unwrap_or(0)
}
pub fn clear_mode(&mut self) {
self.mode = ::std::option::Option::None;
}
pub fn has_mode(&self) -> bool {
self.mode.is_some()
}
// Param is passed by value, moved
pub fn set_mode(&mut self, v: u32) {
self.mode = ::std::option::Option::Some(v);
}
// optional uint32 seed = 5;
pub fn seed(&self) -> u32 {
self.seed.unwrap_or(0)
}
pub fn clear_seed(&mut self) {
self.seed = ::std::option::Option::None;
}
pub fn has_seed(&self) -> bool {
self.seed.is_some()
}
// Param is passed by value, moved
pub fn set_seed(&mut self, v: u32) {
self.seed = ::std::option::Option::Some(v);
}
// optional fixed32 player = 6;
pub fn player(&self) -> u32 {
self.player.unwrap_or(16777215u32)
}
pub fn clear_player(&mut self) {
self.player = ::std::option::Option::None;
}
pub fn has_player(&self) -> bool {
self.player.is_some()
}
// Param is passed by value, moved
pub fn set_player(&mut self, v: u32) {
self.player = ::std::option::Option::Some(v);
}
// optional float inaccuracy = 7;
pub fn inaccuracy(&self) -> f32 {
self.inaccuracy.unwrap_or(0.)
}
pub fn clear_inaccuracy(&mut self) {
self.inaccuracy = ::std::option::Option::None;
}
pub fn has_inaccuracy(&self) -> bool {
self.inaccuracy.is_some()
}
// Param is passed by value, moved
pub fn set_inaccuracy(&mut self, v: f32) {
self.inaccuracy = ::std::option::Option::Some(v);
}
// optional float recoil_index = 8;
pub fn recoil_index(&self) -> f32 {
self.recoil_index.unwrap_or(0.)
}
pub fn clear_recoil_index(&mut self) {
self.recoil_index = ::std::option::Option::None;
}
pub fn has_recoil_index(&self) -> bool {
self.recoil_index.is_some()
}
// Param is passed by value, moved
pub fn set_recoil_index(&mut self, v: f32) {
self.recoil_index = ::std::option::Option::Some(v);
}
// optional float spread = 9;
pub fn spread(&self) -> f32 {
self.spread.unwrap_or(0.)
}
pub fn clear_spread(&mut self) {
self.spread = ::std::option::Option::None;
}
pub fn has_spread(&self) -> bool {
self.spread.is_some()
}
// Param is passed by value, moved
pub fn set_spread(&mut self, v: f32) {
self.spread = ::std::option::Option::Some(v);
}
// optional int32 sound_type = 10;
pub fn sound_type(&self) -> i32 {
self.sound_type.unwrap_or(0)
}
pub fn clear_sound_type(&mut self) {
self.sound_type = ::std::option::Option::None;
}
pub fn has_sound_type(&self) -> bool {
self.sound_type.is_some()
}
// Param is passed by value, moved
pub fn set_sound_type(&mut self, v: i32) {
self.sound_type = ::std::option::Option::Some(v);
}
// optional uint32 item_def_index = 11;
pub fn item_def_index(&self) -> u32 {
self.item_def_index.unwrap_or(0)
}
pub fn clear_item_def_index(&mut self) {
self.item_def_index = ::std::option::Option::None;
}
pub fn has_item_def_index(&self) -> bool {
self.item_def_index.is_some()
}
// Param is passed by value, moved
pub fn set_item_def_index(&mut self, v: u32) {
self.item_def_index = ::std::option::Option::Some(v);
}
// optional fixed32 sound_dsp_effect = 12;
pub fn sound_dsp_effect(&self) -> u32 {
self.sound_dsp_effect.unwrap_or(0)
}
pub fn clear_sound_dsp_effect(&mut self) {
self.sound_dsp_effect = ::std::option::Option::None;
}
pub fn has_sound_dsp_effect(&self) -> bool {
self.sound_dsp_effect.is_some()
}
// Param is passed by value, moved
pub fn set_sound_dsp_effect(&mut self, v: u32) {
self.sound_dsp_effect = ::std::option::Option::Some(v);
}
// optional uint32 num_bullets_remaining = 14;
pub fn num_bullets_remaining(&self) -> u32 {
self.num_bullets_remaining.unwrap_or(0)
}
pub fn clear_num_bullets_remaining(&mut self) {
self.num_bullets_remaining = ::std::option::Option::None;
}
pub fn has_num_bullets_remaining(&self) -> bool {
self.num_bullets_remaining.is_some()
}
// Param is passed by value, moved
pub fn set_num_bullets_remaining(&mut self, v: u32) {
self.num_bullets_remaining = ::std::option::Option::Some(v);
}
// optional uint32 attack_type = 15;
pub fn attack_type(&self) -> u32 {
self.attack_type.unwrap_or(0)
}
pub fn clear_attack_type(&mut self) {
self.attack_type = ::std::option::Option::None;
}
pub fn has_attack_type(&self) -> bool {
self.attack_type.is_some()
}
// Param is passed by value, moved
pub fn set_attack_type(&mut self, v: u32) {
self.attack_type = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CMsgTEFireBullets {
const NAME: &'static str = "CMsgTEFireBullets";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.origin)?;
},
18 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.angles)?;
},
24 => {
self.weapon_id = ::std::option::Option::Some(is.read_uint32()?);
},
32 => {
self.mode = ::std::option::Option::Some(is.read_uint32()?);
},
40 => {
self.seed = ::std::option::Option::Some(is.read_uint32()?);
},
53 => {
self.player = ::std::option::Option::Some(is.read_fixed32()?);
},
61 => {
self.inaccuracy = ::std::option::Option::Some(is.read_float()?);
},
69 => {
self.recoil_index = ::std::option::Option::Some(is.read_float()?);
},
77 => {
self.spread = ::std::option::Option::Some(is.read_float()?);
},
80 => {
self.sound_type = ::std::option::Option::Some(is.read_int32()?);
},
88 => {
self.item_def_index = ::std::option::Option::Some(is.read_uint32()?);
},
101 => {
self.sound_dsp_effect = ::std::option::Option::Some(is.read_fixed32()?);
},
106 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.ent_origin)?;
},
112 => {
self.num_bullets_remaining = ::std::option::Option::Some(is.read_uint32()?);
},
120 => {
self.attack_type = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.origin.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.angles.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.weapon_id {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(3, v);
}
if let Some(v) = self.mode {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(4, v);
}
if let Some(v) = self.seed {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(5, v);
}
if let Some(v) = self.player {
my_size += 1 + 4;
}
if let Some(v) = self.inaccuracy {
my_size += 1 + 4;
}
if let Some(v) = self.recoil_index {
my_size += 1 + 4;
}
if let Some(v) = self.spread {
my_size += 1 + 4;
}
if let Some(v) = self.sound_type {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(10, v);
}
if let Some(v) = self.item_def_index {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(11, v);
}
if let Some(v) = self.sound_dsp_effect {
my_size += 1 + 4;
}
if let Some(v) = self.ent_origin.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.num_bullets_remaining {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(14, v);
}
if let Some(v) = self.attack_type {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(15, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.origin.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
}
if let Some(v) = self.angles.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
}
if let Some(v) = self.weapon_id {
os.write_uint32(3, v)?;
}
if let Some(v) = self.mode {
os.write_uint32(4, v)?;
}
if let Some(v) = self.seed {
os.write_uint32(5, v)?;
}
if let Some(v) = self.player {
os.write_fixed32(6, v)?;
}
if let Some(v) = self.inaccuracy {
os.write_float(7, v)?;
}
if let Some(v) = self.recoil_index {
os.write_float(8, v)?;
}
if let Some(v) = self.spread {
os.write_float(9, v)?;
}
if let Some(v) = self.sound_type {
os.write_int32(10, v)?;
}
if let Some(v) = self.item_def_index {
os.write_uint32(11, v)?;
}
if let Some(v) = self.sound_dsp_effect {
os.write_fixed32(12, v)?;
}
if let Some(v) = self.ent_origin.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
}
if let Some(v) = self.num_bullets_remaining {
os.write_uint32(14, v)?;
}
if let Some(v) = self.attack_type {
os.write_uint32(15, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CMsgTEFireBullets {
CMsgTEFireBullets::new()
}
fn clear(&mut self) {
self.origin.clear();
self.angles.clear();
self.weapon_id = ::std::option::Option::None;
self.mode = ::std::option::Option::None;
self.seed = ::std::option::Option::None;
self.player = ::std::option::Option::None;
self.inaccuracy = ::std::option::Option::None;
self.recoil_index = ::std::option::Option::None;
self.spread = ::std::option::Option::None;
self.sound_type = ::std::option::Option::None;
self.item_def_index = ::std::option::Option::None;
self.sound_dsp_effect = ::std::option::Option::None;
self.ent_origin.clear();
self.num_bullets_remaining = ::std::option::Option::None;
self.attack_type = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CMsgTEFireBullets {
static instance: CMsgTEFireBullets = CMsgTEFireBullets {
origin: ::steam_vent_proto_common::protobuf::MessageField::none(),
angles: ::steam_vent_proto_common::protobuf::MessageField::none(),
weapon_id: ::std::option::Option::None,
mode: ::std::option::Option::None,
seed: ::std::option::Option::None,
player: ::std::option::Option::None,
inaccuracy: ::std::option::Option::None,
recoil_index: ::std::option::Option::None,
spread: ::std::option::Option::None,
sound_type: ::std::option::Option::None,
item_def_index: ::std::option::Option::None,
sound_dsp_effect: ::std::option::Option::None,
ent_origin: ::steam_vent_proto_common::protobuf::MessageField::none(),
num_bullets_remaining: ::std::option::Option::None,
attack_type: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
// @@protoc_insertion_point(enum:ECsgoGameEvents)
pub enum ECsgoGameEvents {
// @@protoc_insertion_point(enum_value:ECsgoGameEvents.GE_PlayerAnimEventId)
GE_PlayerAnimEventId = 450,
// @@protoc_insertion_point(enum_value:ECsgoGameEvents.GE_RadioIconEventId)
GE_RadioIconEventId = 451,
// @@protoc_insertion_point(enum_value:ECsgoGameEvents.GE_FireBulletsId)
GE_FireBulletsId = 452,
}
impl ::steam_vent_proto_common::protobuf::Enum for ECsgoGameEvents {
const NAME: &'static str = "ECsgoGameEvents";
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<ECsgoGameEvents> {
match value {
450 => ::std::option::Option::Some(ECsgoGameEvents::GE_PlayerAnimEventId),
451 => ::std::option::Option::Some(ECsgoGameEvents::GE_RadioIconEventId),
452 => ::std::option::Option::Some(ECsgoGameEvents::GE_FireBulletsId),
_ => ::std::option::Option::None
}
}
fn from_str(str: &str) -> ::std::option::Option<ECsgoGameEvents> {
match str {
"GE_PlayerAnimEventId" => ::std::option::Option::Some(ECsgoGameEvents::GE_PlayerAnimEventId),
"GE_RadioIconEventId" => ::std::option::Option::Some(ECsgoGameEvents::GE_RadioIconEventId),
"GE_FireBulletsId" => ::std::option::Option::Some(ECsgoGameEvents::GE_FireBulletsId),
_ => ::std::option::Option::None
}
}
const VALUES: &'static [ECsgoGameEvents] = &[
ECsgoGameEvents::GE_PlayerAnimEventId,
ECsgoGameEvents::GE_RadioIconEventId,
ECsgoGameEvents::GE_FireBulletsId,
];
}
// Note, `Default` is implemented although default value is not 0
impl ::std::default::Default for ECsgoGameEvents {
fn default() -> Self {
ECsgoGameEvents::GE_PlayerAnimEventId
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
#[allow(unused_imports)]
use crate::networkbasetypes::*;
impl ::steam_vent_proto_common::RpcMessage for CMsgTEPlayerAnimEvent {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for CMsgTERadioIcon {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for CMsgTEFireBullets {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

874
src/generated/cs_usercmd.rs Normal file
View file

@ -0,0 +1,874 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `cs_usercmd.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:CSGOInterpolationInfoPB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CSGOInterpolationInfoPB {
// message fields
// @@protoc_insertion_point(field:CSGOInterpolationInfoPB.src_tick)
pub src_tick: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInterpolationInfoPB.dst_tick)
pub dst_tick: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInterpolationInfoPB.frac)
pub frac: ::std::option::Option<f32>,
// special fields
// @@protoc_insertion_point(special_field:CSGOInterpolationInfoPB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CSGOInterpolationInfoPB {
fn default() -> &'a CSGOInterpolationInfoPB {
<CSGOInterpolationInfoPB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CSGOInterpolationInfoPB {
pub fn new() -> CSGOInterpolationInfoPB {
::std::default::Default::default()
}
// optional int32 src_tick = 1;
pub fn src_tick(&self) -> i32 {
self.src_tick.unwrap_or(-1i32)
}
pub fn clear_src_tick(&mut self) {
self.src_tick = ::std::option::Option::None;
}
pub fn has_src_tick(&self) -> bool {
self.src_tick.is_some()
}
// Param is passed by value, moved
pub fn set_src_tick(&mut self, v: i32) {
self.src_tick = ::std::option::Option::Some(v);
}
// optional int32 dst_tick = 2;
pub fn dst_tick(&self) -> i32 {
self.dst_tick.unwrap_or(-1i32)
}
pub fn clear_dst_tick(&mut self) {
self.dst_tick = ::std::option::Option::None;
}
pub fn has_dst_tick(&self) -> bool {
self.dst_tick.is_some()
}
// Param is passed by value, moved
pub fn set_dst_tick(&mut self, v: i32) {
self.dst_tick = ::std::option::Option::Some(v);
}
// optional float frac = 3;
pub fn frac(&self) -> f32 {
self.frac.unwrap_or(0.0f32)
}
pub fn clear_frac(&mut self) {
self.frac = ::std::option::Option::None;
}
pub fn has_frac(&self) -> bool {
self.frac.is_some()
}
// Param is passed by value, moved
pub fn set_frac(&mut self, v: f32) {
self.frac = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CSGOInterpolationInfoPB {
const NAME: &'static str = "CSGOInterpolationInfoPB";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.src_tick = ::std::option::Option::Some(is.read_int32()?);
},
16 => {
self.dst_tick = ::std::option::Option::Some(is.read_int32()?);
},
29 => {
self.frac = ::std::option::Option::Some(is.read_float()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.src_tick {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(1, v);
}
if let Some(v) = self.dst_tick {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(2, v);
}
if let Some(v) = self.frac {
my_size += 1 + 4;
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.src_tick {
os.write_int32(1, v)?;
}
if let Some(v) = self.dst_tick {
os.write_int32(2, v)?;
}
if let Some(v) = self.frac {
os.write_float(3, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CSGOInterpolationInfoPB {
CSGOInterpolationInfoPB::new()
}
fn clear(&mut self) {
self.src_tick = ::std::option::Option::None;
self.dst_tick = ::std::option::Option::None;
self.frac = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CSGOInterpolationInfoPB {
static instance: CSGOInterpolationInfoPB = CSGOInterpolationInfoPB {
src_tick: ::std::option::Option::None,
dst_tick: ::std::option::Option::None,
frac: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CSGOInputHistoryEntryPB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CSGOInputHistoryEntryPB {
// message fields
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.view_angles)
pub view_angles: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgQAngle>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.render_tick_count)
pub render_tick_count: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.render_tick_fraction)
pub render_tick_fraction: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.player_tick_count)
pub player_tick_count: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.player_tick_fraction)
pub player_tick_fraction: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.cl_interp)
pub cl_interp: ::steam_vent_proto_common::protobuf::MessageField<CSGOInterpolationInfoPB>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.sv_interp0)
pub sv_interp0: ::steam_vent_proto_common::protobuf::MessageField<CSGOInterpolationInfoPB>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.sv_interp1)
pub sv_interp1: ::steam_vent_proto_common::protobuf::MessageField<CSGOInterpolationInfoPB>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.player_interp)
pub player_interp: ::steam_vent_proto_common::protobuf::MessageField<CSGOInterpolationInfoPB>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.frame_number)
pub frame_number: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.target_ent_index)
pub target_ent_index: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.shoot_position)
pub shoot_position: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgVector>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.target_head_pos_check)
pub target_head_pos_check: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgVector>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.target_abs_pos_check)
pub target_abs_pos_check: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgVector>,
// @@protoc_insertion_point(field:CSGOInputHistoryEntryPB.target_abs_ang_check)
pub target_abs_ang_check: ::steam_vent_proto_common::protobuf::MessageField<super::networkbasetypes::CMsgQAngle>,
// special fields
// @@protoc_insertion_point(special_field:CSGOInputHistoryEntryPB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CSGOInputHistoryEntryPB {
fn default() -> &'a CSGOInputHistoryEntryPB {
<CSGOInputHistoryEntryPB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CSGOInputHistoryEntryPB {
pub fn new() -> CSGOInputHistoryEntryPB {
::std::default::Default::default()
}
// optional int32 render_tick_count = 4;
pub fn render_tick_count(&self) -> i32 {
self.render_tick_count.unwrap_or(0)
}
pub fn clear_render_tick_count(&mut self) {
self.render_tick_count = ::std::option::Option::None;
}
pub fn has_render_tick_count(&self) -> bool {
self.render_tick_count.is_some()
}
// Param is passed by value, moved
pub fn set_render_tick_count(&mut self, v: i32) {
self.render_tick_count = ::std::option::Option::Some(v);
}
// optional float render_tick_fraction = 5;
pub fn render_tick_fraction(&self) -> f32 {
self.render_tick_fraction.unwrap_or(0.)
}
pub fn clear_render_tick_fraction(&mut self) {
self.render_tick_fraction = ::std::option::Option::None;
}
pub fn has_render_tick_fraction(&self) -> bool {
self.render_tick_fraction.is_some()
}
// Param is passed by value, moved
pub fn set_render_tick_fraction(&mut self, v: f32) {
self.render_tick_fraction = ::std::option::Option::Some(v);
}
// optional int32 player_tick_count = 6;
pub fn player_tick_count(&self) -> i32 {
self.player_tick_count.unwrap_or(0)
}
pub fn clear_player_tick_count(&mut self) {
self.player_tick_count = ::std::option::Option::None;
}
pub fn has_player_tick_count(&self) -> bool {
self.player_tick_count.is_some()
}
// Param is passed by value, moved
pub fn set_player_tick_count(&mut self, v: i32) {
self.player_tick_count = ::std::option::Option::Some(v);
}
// optional float player_tick_fraction = 7;
pub fn player_tick_fraction(&self) -> f32 {
self.player_tick_fraction.unwrap_or(0.)
}
pub fn clear_player_tick_fraction(&mut self) {
self.player_tick_fraction = ::std::option::Option::None;
}
pub fn has_player_tick_fraction(&self) -> bool {
self.player_tick_fraction.is_some()
}
// Param is passed by value, moved
pub fn set_player_tick_fraction(&mut self, v: f32) {
self.player_tick_fraction = ::std::option::Option::Some(v);
}
// optional int32 frame_number = 20;
pub fn frame_number(&self) -> i32 {
self.frame_number.unwrap_or(0)
}
pub fn clear_frame_number(&mut self) {
self.frame_number = ::std::option::Option::None;
}
pub fn has_frame_number(&self) -> bool {
self.frame_number.is_some()
}
// Param is passed by value, moved
pub fn set_frame_number(&mut self, v: i32) {
self.frame_number = ::std::option::Option::Some(v);
}
// optional int32 target_ent_index = 8;
pub fn target_ent_index(&self) -> i32 {
self.target_ent_index.unwrap_or(-1i32)
}
pub fn clear_target_ent_index(&mut self) {
self.target_ent_index = ::std::option::Option::None;
}
pub fn has_target_ent_index(&self) -> bool {
self.target_ent_index.is_some()
}
// Param is passed by value, moved
pub fn set_target_ent_index(&mut self, v: i32) {
self.target_ent_index = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CSGOInputHistoryEntryPB {
const NAME: &'static str = "CSGOInputHistoryEntryPB";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
18 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.view_angles)?;
},
32 => {
self.render_tick_count = ::std::option::Option::Some(is.read_int32()?);
},
45 => {
self.render_tick_fraction = ::std::option::Option::Some(is.read_float()?);
},
48 => {
self.player_tick_count = ::std::option::Option::Some(is.read_int32()?);
},
61 => {
self.player_tick_fraction = ::std::option::Option::Some(is.read_float()?);
},
98 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.cl_interp)?;
},
106 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.sv_interp0)?;
},
114 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.sv_interp1)?;
},
122 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.player_interp)?;
},
160 => {
self.frame_number = ::std::option::Option::Some(is.read_int32()?);
},
64 => {
self.target_ent_index = ::std::option::Option::Some(is.read_int32()?);
},
26 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.shoot_position)?;
},
74 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.target_head_pos_check)?;
},
82 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.target_abs_pos_check)?;
},
90 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.target_abs_ang_check)?;
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.view_angles.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.render_tick_count {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(4, v);
}
if let Some(v) = self.render_tick_fraction {
my_size += 1 + 4;
}
if let Some(v) = self.player_tick_count {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(6, v);
}
if let Some(v) = self.player_tick_fraction {
my_size += 1 + 4;
}
if let Some(v) = self.cl_interp.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.sv_interp0.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.sv_interp1.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.player_interp.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.frame_number {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(20, v);
}
if let Some(v) = self.target_ent_index {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(8, v);
}
if let Some(v) = self.shoot_position.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.target_head_pos_check.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.target_abs_pos_check.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
if let Some(v) = self.target_abs_ang_check.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.view_angles.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
}
if let Some(v) = self.render_tick_count {
os.write_int32(4, v)?;
}
if let Some(v) = self.render_tick_fraction {
os.write_float(5, v)?;
}
if let Some(v) = self.player_tick_count {
os.write_int32(6, v)?;
}
if let Some(v) = self.player_tick_fraction {
os.write_float(7, v)?;
}
if let Some(v) = self.cl_interp.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(12, v, os)?;
}
if let Some(v) = self.sv_interp0.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(13, v, os)?;
}
if let Some(v) = self.sv_interp1.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(14, v, os)?;
}
if let Some(v) = self.player_interp.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(15, v, os)?;
}
if let Some(v) = self.frame_number {
os.write_int32(20, v)?;
}
if let Some(v) = self.target_ent_index {
os.write_int32(8, v)?;
}
if let Some(v) = self.shoot_position.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(3, v, os)?;
}
if let Some(v) = self.target_head_pos_check.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(9, v, os)?;
}
if let Some(v) = self.target_abs_pos_check.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(10, v, os)?;
}
if let Some(v) = self.target_abs_ang_check.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(11, v, os)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CSGOInputHistoryEntryPB {
CSGOInputHistoryEntryPB::new()
}
fn clear(&mut self) {
self.view_angles.clear();
self.render_tick_count = ::std::option::Option::None;
self.render_tick_fraction = ::std::option::Option::None;
self.player_tick_count = ::std::option::Option::None;
self.player_tick_fraction = ::std::option::Option::None;
self.cl_interp.clear();
self.sv_interp0.clear();
self.sv_interp1.clear();
self.player_interp.clear();
self.frame_number = ::std::option::Option::None;
self.target_ent_index = ::std::option::Option::None;
self.shoot_position.clear();
self.target_head_pos_check.clear();
self.target_abs_pos_check.clear();
self.target_abs_ang_check.clear();
self.special_fields.clear();
}
fn default_instance() -> &'static CSGOInputHistoryEntryPB {
static instance: CSGOInputHistoryEntryPB = CSGOInputHistoryEntryPB {
view_angles: ::steam_vent_proto_common::protobuf::MessageField::none(),
render_tick_count: ::std::option::Option::None,
render_tick_fraction: ::std::option::Option::None,
player_tick_count: ::std::option::Option::None,
player_tick_fraction: ::std::option::Option::None,
cl_interp: ::steam_vent_proto_common::protobuf::MessageField::none(),
sv_interp0: ::steam_vent_proto_common::protobuf::MessageField::none(),
sv_interp1: ::steam_vent_proto_common::protobuf::MessageField::none(),
player_interp: ::steam_vent_proto_common::protobuf::MessageField::none(),
frame_number: ::std::option::Option::None,
target_ent_index: ::std::option::Option::None,
shoot_position: ::steam_vent_proto_common::protobuf::MessageField::none(),
target_head_pos_check: ::steam_vent_proto_common::protobuf::MessageField::none(),
target_abs_pos_check: ::steam_vent_proto_common::protobuf::MessageField::none(),
target_abs_ang_check: ::steam_vent_proto_common::protobuf::MessageField::none(),
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CSGOUserCmdPB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CSGOUserCmdPB {
// message fields
// @@protoc_insertion_point(field:CSGOUserCmdPB.base)
pub base: ::steam_vent_proto_common::protobuf::MessageField<super::usercmd::CBaseUserCmdPB>,
// @@protoc_insertion_point(field:CSGOUserCmdPB.input_history)
pub input_history: ::std::vec::Vec<CSGOInputHistoryEntryPB>,
// @@protoc_insertion_point(field:CSGOUserCmdPB.attack1_start_history_index)
pub attack1_start_history_index: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOUserCmdPB.attack2_start_history_index)
pub attack2_start_history_index: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOUserCmdPB.attack3_start_history_index)
pub attack3_start_history_index: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CSGOUserCmdPB.left_hand_desired)
pub left_hand_desired: ::std::option::Option<bool>,
// special fields
// @@protoc_insertion_point(special_field:CSGOUserCmdPB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CSGOUserCmdPB {
fn default() -> &'a CSGOUserCmdPB {
<CSGOUserCmdPB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CSGOUserCmdPB {
pub fn new() -> CSGOUserCmdPB {
::std::default::Default::default()
}
// optional int32 attack1_start_history_index = 6;
pub fn attack1_start_history_index(&self) -> i32 {
self.attack1_start_history_index.unwrap_or(-1i32)
}
pub fn clear_attack1_start_history_index(&mut self) {
self.attack1_start_history_index = ::std::option::Option::None;
}
pub fn has_attack1_start_history_index(&self) -> bool {
self.attack1_start_history_index.is_some()
}
// Param is passed by value, moved
pub fn set_attack1_start_history_index(&mut self, v: i32) {
self.attack1_start_history_index = ::std::option::Option::Some(v);
}
// optional int32 attack2_start_history_index = 7;
pub fn attack2_start_history_index(&self) -> i32 {
self.attack2_start_history_index.unwrap_or(-1i32)
}
pub fn clear_attack2_start_history_index(&mut self) {
self.attack2_start_history_index = ::std::option::Option::None;
}
pub fn has_attack2_start_history_index(&self) -> bool {
self.attack2_start_history_index.is_some()
}
// Param is passed by value, moved
pub fn set_attack2_start_history_index(&mut self, v: i32) {
self.attack2_start_history_index = ::std::option::Option::Some(v);
}
// optional int32 attack3_start_history_index = 8;
pub fn attack3_start_history_index(&self) -> i32 {
self.attack3_start_history_index.unwrap_or(-1i32)
}
pub fn clear_attack3_start_history_index(&mut self) {
self.attack3_start_history_index = ::std::option::Option::None;
}
pub fn has_attack3_start_history_index(&self) -> bool {
self.attack3_start_history_index.is_some()
}
// Param is passed by value, moved
pub fn set_attack3_start_history_index(&mut self, v: i32) {
self.attack3_start_history_index = ::std::option::Option::Some(v);
}
// optional bool left_hand_desired = 9;
pub fn left_hand_desired(&self) -> bool {
self.left_hand_desired.unwrap_or(false)
}
pub fn clear_left_hand_desired(&mut self) {
self.left_hand_desired = ::std::option::Option::None;
}
pub fn has_left_hand_desired(&self) -> bool {
self.left_hand_desired.is_some()
}
// Param is passed by value, moved
pub fn set_left_hand_desired(&mut self, v: bool) {
self.left_hand_desired = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CSGOUserCmdPB {
const NAME: &'static str = "CSGOUserCmdPB";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
::steam_vent_proto_common::protobuf::rt::read_singular_message_into_field(is, &mut self.base)?;
},
18 => {
self.input_history.push(is.read_message()?);
},
48 => {
self.attack1_start_history_index = ::std::option::Option::Some(is.read_int32()?);
},
56 => {
self.attack2_start_history_index = ::std::option::Option::Some(is.read_int32()?);
},
64 => {
self.attack3_start_history_index = ::std::option::Option::Some(is.read_int32()?);
},
72 => {
self.left_hand_desired = ::std::option::Option::Some(is.read_bool()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.base.as_ref() {
let len = v.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
}
for value in &self.input_history {
let len = value.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
};
if let Some(v) = self.attack1_start_history_index {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(6, v);
}
if let Some(v) = self.attack2_start_history_index {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(7, v);
}
if let Some(v) = self.attack3_start_history_index {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(8, v);
}
if let Some(v) = self.left_hand_desired {
my_size += 1 + 1;
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.base.as_ref() {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(1, v, os)?;
}
for v in &self.input_history {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
};
if let Some(v) = self.attack1_start_history_index {
os.write_int32(6, v)?;
}
if let Some(v) = self.attack2_start_history_index {
os.write_int32(7, v)?;
}
if let Some(v) = self.attack3_start_history_index {
os.write_int32(8, v)?;
}
if let Some(v) = self.left_hand_desired {
os.write_bool(9, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CSGOUserCmdPB {
CSGOUserCmdPB::new()
}
fn clear(&mut self) {
self.base.clear();
self.input_history.clear();
self.attack1_start_history_index = ::std::option::Option::None;
self.attack2_start_history_index = ::std::option::Option::None;
self.attack3_start_history_index = ::std::option::Option::None;
self.left_hand_desired = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CSGOUserCmdPB {
static instance: CSGOUserCmdPB = CSGOUserCmdPB {
base: ::steam_vent_proto_common::protobuf::MessageField::none(),
input_history: ::std::vec::Vec::new(),
attack1_start_history_index: ::std::option::Option::None,
attack2_start_history_index: ::std::option::Option::None,
attack3_start_history_index: ::std::option::Option::None,
left_hand_desired: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
#[allow(unused_imports)]
use crate::networkbasetypes::*;
#[allow(unused_imports)]
use crate::usercmd::*;
impl ::steam_vent_proto_common::RpcMessage for CSGOInterpolationInfoPB {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for CSGOInputHistoryEntryPB {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for CSGOUserCmdPB {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

4933
src/generated/demo.rs Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,440 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `engine_gcmessages.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:CEngineGotvSyncPacket)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CEngineGotvSyncPacket {
// message fields
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.match_id)
pub match_id: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.instance_id)
pub instance_id: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.signupfragment)
pub signupfragment: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.currentfragment)
pub currentfragment: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.tickrate)
pub tickrate: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.tick)
pub tick: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.rtdelay)
pub rtdelay: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.rcvage)
pub rcvage: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.keyframe_interval)
pub keyframe_interval: ::std::option::Option<f32>,
// @@protoc_insertion_point(field:CEngineGotvSyncPacket.cdndelay)
pub cdndelay: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:CEngineGotvSyncPacket.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CEngineGotvSyncPacket {
fn default() -> &'a CEngineGotvSyncPacket {
<CEngineGotvSyncPacket as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CEngineGotvSyncPacket {
pub fn new() -> CEngineGotvSyncPacket {
::std::default::Default::default()
}
// optional uint64 match_id = 1;
pub fn match_id(&self) -> u64 {
self.match_id.unwrap_or(0)
}
pub fn clear_match_id(&mut self) {
self.match_id = ::std::option::Option::None;
}
pub fn has_match_id(&self) -> bool {
self.match_id.is_some()
}
// Param is passed by value, moved
pub fn set_match_id(&mut self, v: u64) {
self.match_id = ::std::option::Option::Some(v);
}
// optional uint32 instance_id = 2;
pub fn instance_id(&self) -> u32 {
self.instance_id.unwrap_or(0)
}
pub fn clear_instance_id(&mut self) {
self.instance_id = ::std::option::Option::None;
}
pub fn has_instance_id(&self) -> bool {
self.instance_id.is_some()
}
// Param is passed by value, moved
pub fn set_instance_id(&mut self, v: u32) {
self.instance_id = ::std::option::Option::Some(v);
}
// optional uint32 signupfragment = 3;
pub fn signupfragment(&self) -> u32 {
self.signupfragment.unwrap_or(0)
}
pub fn clear_signupfragment(&mut self) {
self.signupfragment = ::std::option::Option::None;
}
pub fn has_signupfragment(&self) -> bool {
self.signupfragment.is_some()
}
// Param is passed by value, moved
pub fn set_signupfragment(&mut self, v: u32) {
self.signupfragment = ::std::option::Option::Some(v);
}
// optional uint32 currentfragment = 4;
pub fn currentfragment(&self) -> u32 {
self.currentfragment.unwrap_or(0)
}
pub fn clear_currentfragment(&mut self) {
self.currentfragment = ::std::option::Option::None;
}
pub fn has_currentfragment(&self) -> bool {
self.currentfragment.is_some()
}
// Param is passed by value, moved
pub fn set_currentfragment(&mut self, v: u32) {
self.currentfragment = ::std::option::Option::Some(v);
}
// optional float tickrate = 5;
pub fn tickrate(&self) -> f32 {
self.tickrate.unwrap_or(0.)
}
pub fn clear_tickrate(&mut self) {
self.tickrate = ::std::option::Option::None;
}
pub fn has_tickrate(&self) -> bool {
self.tickrate.is_some()
}
// Param is passed by value, moved
pub fn set_tickrate(&mut self, v: f32) {
self.tickrate = ::std::option::Option::Some(v);
}
// optional uint32 tick = 6;
pub fn tick(&self) -> u32 {
self.tick.unwrap_or(0)
}
pub fn clear_tick(&mut self) {
self.tick = ::std::option::Option::None;
}
pub fn has_tick(&self) -> bool {
self.tick.is_some()
}
// Param is passed by value, moved
pub fn set_tick(&mut self, v: u32) {
self.tick = ::std::option::Option::Some(v);
}
// optional float rtdelay = 8;
pub fn rtdelay(&self) -> f32 {
self.rtdelay.unwrap_or(0.)
}
pub fn clear_rtdelay(&mut self) {
self.rtdelay = ::std::option::Option::None;
}
pub fn has_rtdelay(&self) -> bool {
self.rtdelay.is_some()
}
// Param is passed by value, moved
pub fn set_rtdelay(&mut self, v: f32) {
self.rtdelay = ::std::option::Option::Some(v);
}
// optional float rcvage = 9;
pub fn rcvage(&self) -> f32 {
self.rcvage.unwrap_or(0.)
}
pub fn clear_rcvage(&mut self) {
self.rcvage = ::std::option::Option::None;
}
pub fn has_rcvage(&self) -> bool {
self.rcvage.is_some()
}
// Param is passed by value, moved
pub fn set_rcvage(&mut self, v: f32) {
self.rcvage = ::std::option::Option::Some(v);
}
// optional float keyframe_interval = 10;
pub fn keyframe_interval(&self) -> f32 {
self.keyframe_interval.unwrap_or(0.)
}
pub fn clear_keyframe_interval(&mut self) {
self.keyframe_interval = ::std::option::Option::None;
}
pub fn has_keyframe_interval(&self) -> bool {
self.keyframe_interval.is_some()
}
// Param is passed by value, moved
pub fn set_keyframe_interval(&mut self, v: f32) {
self.keyframe_interval = ::std::option::Option::Some(v);
}
// optional uint32 cdndelay = 11;
pub fn cdndelay(&self) -> u32 {
self.cdndelay.unwrap_or(0)
}
pub fn clear_cdndelay(&mut self) {
self.cdndelay = ::std::option::Option::None;
}
pub fn has_cdndelay(&self) -> bool {
self.cdndelay.is_some()
}
// Param is passed by value, moved
pub fn set_cdndelay(&mut self, v: u32) {
self.cdndelay = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CEngineGotvSyncPacket {
const NAME: &'static str = "CEngineGotvSyncPacket";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.match_id = ::std::option::Option::Some(is.read_uint64()?);
},
16 => {
self.instance_id = ::std::option::Option::Some(is.read_uint32()?);
},
24 => {
self.signupfragment = ::std::option::Option::Some(is.read_uint32()?);
},
32 => {
self.currentfragment = ::std::option::Option::Some(is.read_uint32()?);
},
45 => {
self.tickrate = ::std::option::Option::Some(is.read_float()?);
},
48 => {
self.tick = ::std::option::Option::Some(is.read_uint32()?);
},
69 => {
self.rtdelay = ::std::option::Option::Some(is.read_float()?);
},
77 => {
self.rcvage = ::std::option::Option::Some(is.read_float()?);
},
85 => {
self.keyframe_interval = ::std::option::Option::Some(is.read_float()?);
},
88 => {
self.cdndelay = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.match_id {
my_size += ::steam_vent_proto_common::protobuf::rt::uint64_size(1, v);
}
if let Some(v) = self.instance_id {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(2, v);
}
if let Some(v) = self.signupfragment {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(3, v);
}
if let Some(v) = self.currentfragment {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(4, v);
}
if let Some(v) = self.tickrate {
my_size += 1 + 4;
}
if let Some(v) = self.tick {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(6, v);
}
if let Some(v) = self.rtdelay {
my_size += 1 + 4;
}
if let Some(v) = self.rcvage {
my_size += 1 + 4;
}
if let Some(v) = self.keyframe_interval {
my_size += 1 + 4;
}
if let Some(v) = self.cdndelay {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(11, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.match_id {
os.write_uint64(1, v)?;
}
if let Some(v) = self.instance_id {
os.write_uint32(2, v)?;
}
if let Some(v) = self.signupfragment {
os.write_uint32(3, v)?;
}
if let Some(v) = self.currentfragment {
os.write_uint32(4, v)?;
}
if let Some(v) = self.tickrate {
os.write_float(5, v)?;
}
if let Some(v) = self.tick {
os.write_uint32(6, v)?;
}
if let Some(v) = self.rtdelay {
os.write_float(8, v)?;
}
if let Some(v) = self.rcvage {
os.write_float(9, v)?;
}
if let Some(v) = self.keyframe_interval {
os.write_float(10, v)?;
}
if let Some(v) = self.cdndelay {
os.write_uint32(11, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CEngineGotvSyncPacket {
CEngineGotvSyncPacket::new()
}
fn clear(&mut self) {
self.match_id = ::std::option::Option::None;
self.instance_id = ::std::option::Option::None;
self.signupfragment = ::std::option::Option::None;
self.currentfragment = ::std::option::Option::None;
self.tickrate = ::std::option::Option::None;
self.tick = ::std::option::Option::None;
self.rtdelay = ::std::option::Option::None;
self.rcvage = ::std::option::Option::None;
self.keyframe_interval = ::std::option::Option::None;
self.cdndelay = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CEngineGotvSyncPacket {
static instance: CEngineGotvSyncPacket = CEngineGotvSyncPacket {
match_id: ::std::option::Option::None,
instance_id: ::std::option::Option::None,
signupfragment: ::std::option::Option::None,
currentfragment: ::std::option::Option::None,
tickrate: ::std::option::Option::None,
tick: ::std::option::Option::None,
rtdelay: ::std::option::Option::None,
rcvage: ::std::option::Option::None,
keyframe_interval: ::std::option::Option::None,
cdndelay: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
impl ::steam_vent_proto_common::RpcMessage for CEngineGotvSyncPacket {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

File diff suppressed because it is too large Load diff

3052
src/generated/fatdemo.rs Normal file

File diff suppressed because it is too large Load diff

3312
src/generated/gameevents.rs Normal file

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

42
src/generated/mod.rs Normal file
View file

@ -0,0 +1,42 @@
// @generated
pub mod base_gcmessages;
pub mod base_gcmessages_csgo;
pub mod c_peer2peer_netmessages;
pub mod clientmessages;
pub mod connectionless_netmessages;
pub mod cs_gameevents;
pub mod cs_usercmd;
pub mod cstrike15_gcmessages;
pub mod cstrike15_usermessages;
pub mod demo;
pub mod econ_gcmessages;
pub mod engine_gcmessages;
pub mod enums_clientserver;
pub mod fatdemo;
pub mod gameevents;
pub mod gcsdk_gcmessages;
pub mod gcsystemmsgs;
pub mod netmessages;
pub mod network_connection;
pub mod networkbasetypes;
pub mod networksystem_protomessages;
pub mod steamdatagram_messages_auth;
pub mod steamdatagram_messages_sdr;
pub mod steammessages;
pub mod steammessages_base;
pub mod steammessages_cloud_steamworkssdk;
pub mod steammessages_gamenetworkingui;
pub mod steammessages_helprequest_steamworkssdk;
pub mod steammessages_oauth_steamworkssdk;
pub mod steammessages_player_steamworkssdk;
pub mod steammessages_publishedfile_steamworkssdk;
pub mod steammessages_unified_base_steamworkssdk;
pub mod steamnetworkingsockets_messages;
pub mod steamnetworkingsockets_messages_certs;
pub mod steamnetworkingsockets_messages_udp;
pub mod te;
pub mod uifontfile_format;
pub mod usercmd;
pub mod usermessages;
pub mod valveextensions;

18364
src/generated/netmessages.rs Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,656 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `network_connection.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
// @@protoc_insertion_point(enum:ENetworkDisconnectionReason)
pub enum ENetworkDisconnectionReason {
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_INVALID)
NETWORK_DISCONNECT_INVALID = 0,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SHUTDOWN)
NETWORK_DISCONNECT_SHUTDOWN = 1,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DISCONNECT_BY_USER)
NETWORK_DISCONNECT_DISCONNECT_BY_USER = 2,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DISCONNECT_BY_SERVER)
NETWORK_DISCONNECT_DISCONNECT_BY_SERVER = 3,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOST)
NETWORK_DISCONNECT_LOST = 4,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_OVERFLOW)
NETWORK_DISCONNECT_OVERFLOW = 5,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_BANNED)
NETWORK_DISCONNECT_STEAM_BANNED = 6,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_INUSE)
NETWORK_DISCONNECT_STEAM_INUSE = 7,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_TICKET)
NETWORK_DISCONNECT_STEAM_TICKET = 8,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_LOGON)
NETWORK_DISCONNECT_STEAM_LOGON = 9,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_AUTHCANCELLED)
NETWORK_DISCONNECT_STEAM_AUTHCANCELLED = 10,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED)
NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED = 11,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_AUTHINVALID)
NETWORK_DISCONNECT_STEAM_AUTHINVALID = 12,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_VACBANSTATE)
NETWORK_DISCONNECT_STEAM_VACBANSTATE = 13,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE)
NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE = 14,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT)
NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT = 15,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_DROPPED)
NETWORK_DISCONNECT_STEAM_DROPPED = 16,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_OWNERSHIP)
NETWORK_DISCONNECT_STEAM_OWNERSHIP = 17,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SERVERINFO_OVERFLOW)
NETWORK_DISCONNECT_SERVERINFO_OVERFLOW = 18,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_TICKMSG_OVERFLOW)
NETWORK_DISCONNECT_TICKMSG_OVERFLOW = 19,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW)
NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW = 20,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW)
NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW = 21,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW)
NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW = 22,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW)
NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW = 23,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SNAPSHOTOVERFLOW)
NETWORK_DISCONNECT_SNAPSHOTOVERFLOW = 24,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SNAPSHOTERROR)
NETWORK_DISCONNECT_SNAPSHOTERROR = 25,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_RELIABLEOVERFLOW)
NETWORK_DISCONNECT_RELIABLEOVERFLOW = 26,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_BADDELTATICK)
NETWORK_DISCONNECT_BADDELTATICK = 27,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_NOMORESPLITS)
NETWORK_DISCONNECT_NOMORESPLITS = 28,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_TIMEDOUT)
NETWORK_DISCONNECT_TIMEDOUT = 29,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DISCONNECTED)
NETWORK_DISCONNECT_DISCONNECTED = 30,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LEAVINGSPLIT)
NETWORK_DISCONNECT_LEAVINGSPLIT = 31,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DIFFERENTCLASSTABLES)
NETWORK_DISCONNECT_DIFFERENTCLASSTABLES = 32,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_BADRELAYPASSWORD)
NETWORK_DISCONNECT_BADRELAYPASSWORD = 33,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_BADSPECTATORPASSWORD)
NETWORK_DISCONNECT_BADSPECTATORPASSWORD = 34,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_HLTVRESTRICTED)
NETWORK_DISCONNECT_HLTVRESTRICTED = 35,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_NOSPECTATORS)
NETWORK_DISCONNECT_NOSPECTATORS = 36,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_HLTVUNAVAILABLE)
NETWORK_DISCONNECT_HLTVUNAVAILABLE = 37,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_HLTVSTOP)
NETWORK_DISCONNECT_HLTVSTOP = 38,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED)
NETWORK_DISCONNECT_KICKED = 39,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_BANADDED)
NETWORK_DISCONNECT_BANADDED = 40,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKBANADDED)
NETWORK_DISCONNECT_KICKBANADDED = 41,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_HLTVDIRECT)
NETWORK_DISCONNECT_HLTVDIRECT = 42,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA)
NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA = 43,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_PURESERVER_MISMATCH)
NETWORK_DISCONNECT_PURESERVER_MISMATCH = 44,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_USERCMD)
NETWORK_DISCONNECT_USERCMD = 45,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECTED_BY_GAME)
NETWORK_DISCONNECT_REJECTED_BY_GAME = 46,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR)
NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR = 47,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR)
NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR = 48,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_BAD_SERVER_PASSWORD)
NETWORK_DISCONNECT_BAD_SERVER_PASSWORD = 49,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION)
NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION = 50,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CONNECTION_FAILURE)
NETWORK_DISCONNECT_CONNECTION_FAILURE = 51,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS)
NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS = 52,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_RECONNECTION)
NETWORK_DISCONNECT_RECONNECTION = 53,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOOPSHUTDOWN)
NETWORK_DISCONNECT_LOOPSHUTDOWN = 54,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOOPDEACTIVATE)
NETWORK_DISCONNECT_LOOPDEACTIVATE = 55,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_HOST_ENDGAME)
NETWORK_DISCONNECT_HOST_ENDGAME = 56,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE)
NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE = 57,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CREATE_SERVER_FAILED)
NETWORK_DISCONNECT_CREATE_SERVER_FAILED = 58,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_EXITING)
NETWORK_DISCONNECT_EXITING = 59,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE)
NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE = 60,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY)
NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY = 61,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL)
NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL = 62,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP)
NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP = 63,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CLIENT_NO_MAP)
NETWORK_DISCONNECT_CLIENT_NO_MAP = 64,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP)
NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP = 65,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM)
NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM = 66,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_DENY_MISC)
NETWORK_DISCONNECT_STEAM_DENY_MISC = 67,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT)
NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT = 68,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SERVER_SHUTDOWN)
NETWORK_DISCONNECT_SERVER_SHUTDOWN = 69,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE)
NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE = 71,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT)
NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT = 72,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_SERVER_INCOMPATIBLE)
NETWORK_DISCONNECT_SERVER_INCOMPATIBLE = 73,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS)
NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS = 74,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY)
NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY = 75,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG)
NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG = 76,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_LOCALPROBLEM_OTHER)
NETWORK_DISCONNECT_LOCALPROBLEM_OTHER = 77,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REMOTE_TIMEOUT)
NETWORK_DISCONNECT_REMOTE_TIMEOUT = 79,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING)
NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING = 80,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REMOTE_OTHER)
NETWORK_DISCONNECT_REMOTE_OTHER = 81,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REMOTE_BADCRYPT)
NETWORK_DISCONNECT_REMOTE_BADCRYPT = 82,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED)
NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED = 83,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_UNUSUAL)
NETWORK_DISCONNECT_UNUSUAL = 84,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_INTERNAL_ERROR)
NETWORK_DISCONNECT_INTERNAL_ERROR = 85,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_BADCHALLENGE)
NETWORK_DISCONNECT_REJECT_BADCHALLENGE = 128,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_NOLOBBY)
NETWORK_DISCONNECT_REJECT_NOLOBBY = 129,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP)
NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP = 130,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER)
NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER = 131,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_HIDDEN_GAME)
NETWORK_DISCONNECT_REJECT_HIDDEN_GAME = 132,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_LANRESTRICT)
NETWORK_DISCONNECT_REJECT_LANRESTRICT = 133,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_BADPASSWORD)
NETWORK_DISCONNECT_REJECT_BADPASSWORD = 134,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_SERVERFULL)
NETWORK_DISCONNECT_REJECT_SERVERFULL = 135,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION)
NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION = 136,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL)
NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL = 137,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY)
NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY = 138,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY)
NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY = 139,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH)
NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH = 140,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_OLDPROTOCOL)
NETWORK_DISCONNECT_REJECT_OLDPROTOCOL = 141,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_NEWPROTOCOL)
NETWORK_DISCONNECT_REJECT_NEWPROTOCOL = 142,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION)
NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION = 143,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN)
NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN = 144,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN)
NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN = 145,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_STEAM)
NETWORK_DISCONNECT_REJECT_STEAM = 146,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED)
NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 147,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID)
NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 148,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_BANNED)
NETWORK_DISCONNECT_REJECT_BANNED = 149,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_TEAMKILLING)
NETWORK_DISCONNECT_KICKED_TEAMKILLING = 150,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_TK_START)
NETWORK_DISCONNECT_KICKED_TK_START = 151,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT)
NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 152,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT)
NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 153,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN)
NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 154,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_TEAMHURTING)
NETWORK_DISCONNECT_KICKED_TEAMHURTING = 155,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING)
NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 156,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_VOTEDOFF)
NETWORK_DISCONNECT_KICKED_VOTEDOFF = 157,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_IDLE)
NETWORK_DISCONNECT_KICKED_IDLE = 158,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_SUICIDE)
NETWORK_DISCONNECT_KICKED_SUICIDE = 159,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN)
NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 160,
// @@protoc_insertion_point(enum_value:ENetworkDisconnectionReason.NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET)
NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 161,
}
impl ::steam_vent_proto_common::protobuf::Enum for ENetworkDisconnectionReason {
const NAME: &'static str = "ENetworkDisconnectionReason";
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<ENetworkDisconnectionReason> {
match value {
0 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID),
1 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SHUTDOWN),
2 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_USER),
3 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_SERVER),
4 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOST),
5 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_OVERFLOW),
6 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_BANNED),
7 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_INUSE),
8 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_TICKET),
9 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGON),
10 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHCANCELLED),
11 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED),
12 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHINVALID),
13 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VACBANSTATE),
14 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE),
15 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT),
16 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DROPPED),
17 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_OWNERSHIP),
18 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVERINFO_OVERFLOW),
19 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TICKMSG_OVERFLOW),
20 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW),
21 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW),
22 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW),
23 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW),
24 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTOVERFLOW),
25 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTERROR),
26 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_RELIABLEOVERFLOW),
27 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADDELTATICK),
28 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOMORESPLITS),
29 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TIMEDOUT),
30 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECTED),
31 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LEAVINGSPLIT),
32 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIFFERENTCLASSTABLES),
33 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADRELAYPASSWORD),
34 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADSPECTATORPASSWORD),
35 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVRESTRICTED),
36 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOSPECTATORS),
37 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVUNAVAILABLE),
38 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVSTOP),
39 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED),
40 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BANADDED),
41 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKBANADDED),
42 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVDIRECT),
43 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA),
44 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_MISMATCH),
45 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_USERCMD),
46 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECTED_BY_GAME),
47 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR),
48 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR),
49 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BAD_SERVER_PASSWORD),
50 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION),
51 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECTION_FAILURE),
52 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS),
53 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_RECONNECTION),
54 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPSHUTDOWN),
55 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPDEACTIVATE),
56 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HOST_ENDGAME),
57 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE),
58 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CREATE_SERVER_FAILED),
59 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_EXITING),
60 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE),
61 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY),
62 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL),
63 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP),
64 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_NO_MAP),
65 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP),
66 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM),
67 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_MISC),
68 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT),
69 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_SHUTDOWN),
71 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE),
72 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT),
73 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_INCOMPATIBLE),
74 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS),
75 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY),
76 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG),
77 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_OTHER),
79 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT),
80 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING),
81 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_OTHER),
82 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_BADCRYPT),
83 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED),
84 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_UNUSUAL),
85 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INTERNAL_ERROR),
128 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADCHALLENGE),
129 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NOLOBBY),
130 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP),
131 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER),
132 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_HIDDEN_GAME),
133 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_LANRESTRICT),
134 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADPASSWORD),
135 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERFULL),
136 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION),
137 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL),
138 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY),
139 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY),
140 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH),
141 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_OLDPROTOCOL),
142 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NEWPROTOCOL),
143 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION),
144 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN),
145 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN),
146 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_STEAM),
147 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED),
148 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID),
149 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BANNED),
150 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMKILLING),
151 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TK_START),
152 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT),
153 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT),
154 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN),
155 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMHURTING),
156 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING),
157 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_VOTEDOFF),
158 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_IDLE),
159 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_SUICIDE),
160 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN),
161 => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET),
_ => ::std::option::Option::None
}
}
fn from_str(str: &str) -> ::std::option::Option<ENetworkDisconnectionReason> {
match str {
"NETWORK_DISCONNECT_INVALID" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID),
"NETWORK_DISCONNECT_SHUTDOWN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SHUTDOWN),
"NETWORK_DISCONNECT_DISCONNECT_BY_USER" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_USER),
"NETWORK_DISCONNECT_DISCONNECT_BY_SERVER" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_SERVER),
"NETWORK_DISCONNECT_LOST" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOST),
"NETWORK_DISCONNECT_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_OVERFLOW),
"NETWORK_DISCONNECT_STEAM_BANNED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_BANNED),
"NETWORK_DISCONNECT_STEAM_INUSE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_INUSE),
"NETWORK_DISCONNECT_STEAM_TICKET" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_TICKET),
"NETWORK_DISCONNECT_STEAM_LOGON" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGON),
"NETWORK_DISCONNECT_STEAM_AUTHCANCELLED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHCANCELLED),
"NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED),
"NETWORK_DISCONNECT_STEAM_AUTHINVALID" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHINVALID),
"NETWORK_DISCONNECT_STEAM_VACBANSTATE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VACBANSTATE),
"NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE),
"NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT),
"NETWORK_DISCONNECT_STEAM_DROPPED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DROPPED),
"NETWORK_DISCONNECT_STEAM_OWNERSHIP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_OWNERSHIP),
"NETWORK_DISCONNECT_SERVERINFO_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVERINFO_OVERFLOW),
"NETWORK_DISCONNECT_TICKMSG_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TICKMSG_OVERFLOW),
"NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW),
"NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW),
"NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW),
"NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW),
"NETWORK_DISCONNECT_SNAPSHOTOVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTOVERFLOW),
"NETWORK_DISCONNECT_SNAPSHOTERROR" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTERROR),
"NETWORK_DISCONNECT_RELIABLEOVERFLOW" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_RELIABLEOVERFLOW),
"NETWORK_DISCONNECT_BADDELTATICK" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADDELTATICK),
"NETWORK_DISCONNECT_NOMORESPLITS" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOMORESPLITS),
"NETWORK_DISCONNECT_TIMEDOUT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_TIMEDOUT),
"NETWORK_DISCONNECT_DISCONNECTED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECTED),
"NETWORK_DISCONNECT_LEAVINGSPLIT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LEAVINGSPLIT),
"NETWORK_DISCONNECT_DIFFERENTCLASSTABLES" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIFFERENTCLASSTABLES),
"NETWORK_DISCONNECT_BADRELAYPASSWORD" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADRELAYPASSWORD),
"NETWORK_DISCONNECT_BADSPECTATORPASSWORD" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADSPECTATORPASSWORD),
"NETWORK_DISCONNECT_HLTVRESTRICTED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVRESTRICTED),
"NETWORK_DISCONNECT_NOSPECTATORS" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOSPECTATORS),
"NETWORK_DISCONNECT_HLTVUNAVAILABLE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVUNAVAILABLE),
"NETWORK_DISCONNECT_HLTVSTOP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVSTOP),
"NETWORK_DISCONNECT_KICKED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED),
"NETWORK_DISCONNECT_BANADDED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BANADDED),
"NETWORK_DISCONNECT_KICKBANADDED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKBANADDED),
"NETWORK_DISCONNECT_HLTVDIRECT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVDIRECT),
"NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA),
"NETWORK_DISCONNECT_PURESERVER_MISMATCH" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_MISMATCH),
"NETWORK_DISCONNECT_USERCMD" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_USERCMD),
"NETWORK_DISCONNECT_REJECTED_BY_GAME" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECTED_BY_GAME),
"NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR),
"NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR),
"NETWORK_DISCONNECT_BAD_SERVER_PASSWORD" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_BAD_SERVER_PASSWORD),
"NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION),
"NETWORK_DISCONNECT_CONNECTION_FAILURE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECTION_FAILURE),
"NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS),
"NETWORK_DISCONNECT_RECONNECTION" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_RECONNECTION),
"NETWORK_DISCONNECT_LOOPSHUTDOWN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPSHUTDOWN),
"NETWORK_DISCONNECT_LOOPDEACTIVATE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPDEACTIVATE),
"NETWORK_DISCONNECT_HOST_ENDGAME" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_HOST_ENDGAME),
"NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE),
"NETWORK_DISCONNECT_CREATE_SERVER_FAILED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CREATE_SERVER_FAILED),
"NETWORK_DISCONNECT_EXITING" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_EXITING),
"NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE),
"NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY),
"NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL),
"NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP),
"NETWORK_DISCONNECT_CLIENT_NO_MAP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_NO_MAP),
"NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP),
"NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM),
"NETWORK_DISCONNECT_STEAM_DENY_MISC" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_MISC),
"NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT),
"NETWORK_DISCONNECT_SERVER_SHUTDOWN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_SHUTDOWN),
"NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE),
"NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT),
"NETWORK_DISCONNECT_SERVER_INCOMPATIBLE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_INCOMPATIBLE),
"NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS),
"NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY),
"NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG),
"NETWORK_DISCONNECT_LOCALPROBLEM_OTHER" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_OTHER),
"NETWORK_DISCONNECT_REMOTE_TIMEOUT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT),
"NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING),
"NETWORK_DISCONNECT_REMOTE_OTHER" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_OTHER),
"NETWORK_DISCONNECT_REMOTE_BADCRYPT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_BADCRYPT),
"NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED),
"NETWORK_DISCONNECT_UNUSUAL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_UNUSUAL),
"NETWORK_DISCONNECT_INTERNAL_ERROR" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_INTERNAL_ERROR),
"NETWORK_DISCONNECT_REJECT_BADCHALLENGE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADCHALLENGE),
"NETWORK_DISCONNECT_REJECT_NOLOBBY" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NOLOBBY),
"NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP),
"NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER),
"NETWORK_DISCONNECT_REJECT_HIDDEN_GAME" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_HIDDEN_GAME),
"NETWORK_DISCONNECT_REJECT_LANRESTRICT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_LANRESTRICT),
"NETWORK_DISCONNECT_REJECT_BADPASSWORD" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADPASSWORD),
"NETWORK_DISCONNECT_REJECT_SERVERFULL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERFULL),
"NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION),
"NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL),
"NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY),
"NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY),
"NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH),
"NETWORK_DISCONNECT_REJECT_OLDPROTOCOL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_OLDPROTOCOL),
"NETWORK_DISCONNECT_REJECT_NEWPROTOCOL" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NEWPROTOCOL),
"NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION),
"NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN),
"NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN),
"NETWORK_DISCONNECT_REJECT_STEAM" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_STEAM),
"NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED),
"NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID),
"NETWORK_DISCONNECT_REJECT_BANNED" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BANNED),
"NETWORK_DISCONNECT_KICKED_TEAMKILLING" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMKILLING),
"NETWORK_DISCONNECT_KICKED_TK_START" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TK_START),
"NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT),
"NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT),
"NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN),
"NETWORK_DISCONNECT_KICKED_TEAMHURTING" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMHURTING),
"NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING),
"NETWORK_DISCONNECT_KICKED_VOTEDOFF" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_VOTEDOFF),
"NETWORK_DISCONNECT_KICKED_IDLE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_IDLE),
"NETWORK_DISCONNECT_KICKED_SUICIDE" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_SUICIDE),
"NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN),
"NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET" => ::std::option::Option::Some(ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET),
_ => ::std::option::Option::None
}
}
const VALUES: &'static [ENetworkDisconnectionReason] = &[
ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SHUTDOWN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_USER,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECT_BY_SERVER,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOST,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_BANNED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_INUSE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_TICKET,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGON,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHCANCELLED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHALREADYUSED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_AUTHINVALID,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VACBANSTATE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_LOGGED_IN_ELSEWHERE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_VAC_CHECK_TIMEDOUT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DROPPED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_OWNERSHIP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVERINFO_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_TICKMSG_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STRINGTABLEMSG_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DELTAENTMSG_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_TEMPENTMSG_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SOUNDSMSG_OVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTOVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SNAPSHOTERROR,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_RELIABLEOVERFLOW,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADDELTATICK,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOMORESPLITS,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_TIMEDOUT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DISCONNECTED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LEAVINGSPLIT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIFFERENTCLASSTABLES,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADRELAYPASSWORD,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_BADSPECTATORPASSWORD,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVRESTRICTED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_NOSPECTATORS,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVUNAVAILABLE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVSTOP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_BANADDED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKBANADDED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_HLTVDIRECT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_CLIENTEXTRA,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_PURESERVER_MISMATCH,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_USERCMD,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECTED_BY_GAME,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_MESSAGE_PARSE_ERROR,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID_MESSAGE_ERROR,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_BAD_SERVER_PASSWORD,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_DIRECT_CONNECT_RESERVATION,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECTION_FAILURE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_NO_PEER_GROUP_HANDLERS,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_RECONNECTION,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPSHUTDOWN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOPDEACTIVATE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_HOST_ENDGAME,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOOP_LEVELLOAD_ACTIVATE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CREATE_SERVER_FAILED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_EXITING,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_IDLE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REQUEST_HOSTSTATE_HLTVRELAY,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_CONSISTENCY_FAIL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_UNABLE_TO_CRC_MAP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_NO_MAP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CLIENT_DIFFERENT_MAP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_REQUIRES_STEAM,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_MISC,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_STEAM_DENY_BAD_ANTI_CHEAT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_SHUTDOWN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REPLAY_INCOMPATIBLE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_CONNECT_REQUEST_TIMEDOUT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_SERVER_INCOMPATIBLE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_MANYRELAYS,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_HOSTEDSERVERPRIMARYRELAY,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_NETWORKCONFIG,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_LOCALPROBLEM_OTHER,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_TIMEOUT_CONNECTING,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_OTHER,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_BADCRYPT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REMOTE_CERTNOTTRUSTED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_UNUSUAL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_INTERNAL_ERROR,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADCHALLENGE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NOLOBBY,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BACKGROUND_MAP,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SINGLE_PLAYER,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_HIDDEN_GAME,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_LANRESTRICT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BADPASSWORD,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERFULL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDRESERVATION,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_FAILEDCHANNEL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_CONNECT_FROM_LOBBY,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_RESERVED_FOR_LOBBY,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDKEYLENGTH,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_OLDPROTOCOL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_NEWPROTOCOL,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDCERTLEN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_INVALIDSTEAMCERTLEN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_STEAM,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_REJECT_BANNED,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMKILLING,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TK_START,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_TEAMHURTING,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_VOTEDOFF,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_IDLE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_SUICIDE,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN,
ENetworkDisconnectionReason::NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET,
];
}
impl ::std::default::Default for ENetworkDisconnectionReason {
fn default() -> Self {
ENetworkDisconnectionReason::NETWORK_DISCONNECT_INVALID
}
}
// Extension generation with lite runtime is not supported
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,574 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `networksystem_protomessages.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:NetMessageSplitscreenUserChanged)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct NetMessageSplitscreenUserChanged {
// message fields
// @@protoc_insertion_point(field:NetMessageSplitscreenUserChanged.slot)
pub slot: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:NetMessageSplitscreenUserChanged.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a NetMessageSplitscreenUserChanged {
fn default() -> &'a NetMessageSplitscreenUserChanged {
<NetMessageSplitscreenUserChanged as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl NetMessageSplitscreenUserChanged {
pub fn new() -> NetMessageSplitscreenUserChanged {
::std::default::Default::default()
}
// optional uint32 slot = 1;
pub fn slot(&self) -> u32 {
self.slot.unwrap_or(0)
}
pub fn clear_slot(&mut self) {
self.slot = ::std::option::Option::None;
}
pub fn has_slot(&self) -> bool {
self.slot.is_some()
}
// Param is passed by value, moved
pub fn set_slot(&mut self, v: u32) {
self.slot = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for NetMessageSplitscreenUserChanged {
const NAME: &'static str = "NetMessageSplitscreenUserChanged";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.slot = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.slot {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.slot {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> NetMessageSplitscreenUserChanged {
NetMessageSplitscreenUserChanged::new()
}
fn clear(&mut self) {
self.slot = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static NetMessageSplitscreenUserChanged {
static instance: NetMessageSplitscreenUserChanged = NetMessageSplitscreenUserChanged {
slot: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:NetMessageConnectionClosed)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct NetMessageConnectionClosed {
// message fields
// @@protoc_insertion_point(field:NetMessageConnectionClosed.reason)
pub reason: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:NetMessageConnectionClosed.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a NetMessageConnectionClosed {
fn default() -> &'a NetMessageConnectionClosed {
<NetMessageConnectionClosed as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl NetMessageConnectionClosed {
pub fn new() -> NetMessageConnectionClosed {
::std::default::Default::default()
}
// optional uint32 reason = 1;
pub fn reason(&self) -> u32 {
self.reason.unwrap_or(0)
}
pub fn clear_reason(&mut self) {
self.reason = ::std::option::Option::None;
}
pub fn has_reason(&self) -> bool {
self.reason.is_some()
}
// Param is passed by value, moved
pub fn set_reason(&mut self, v: u32) {
self.reason = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for NetMessageConnectionClosed {
const NAME: &'static str = "NetMessageConnectionClosed";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.reason = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.reason {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.reason {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> NetMessageConnectionClosed {
NetMessageConnectionClosed::new()
}
fn clear(&mut self) {
self.reason = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static NetMessageConnectionClosed {
static instance: NetMessageConnectionClosed = NetMessageConnectionClosed {
reason: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:NetMessageConnectionCrashed)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct NetMessageConnectionCrashed {
// message fields
// @@protoc_insertion_point(field:NetMessageConnectionCrashed.reason)
pub reason: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:NetMessageConnectionCrashed.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a NetMessageConnectionCrashed {
fn default() -> &'a NetMessageConnectionCrashed {
<NetMessageConnectionCrashed as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl NetMessageConnectionCrashed {
pub fn new() -> NetMessageConnectionCrashed {
::std::default::Default::default()
}
// optional uint32 reason = 1;
pub fn reason(&self) -> u32 {
self.reason.unwrap_or(0)
}
pub fn clear_reason(&mut self) {
self.reason = ::std::option::Option::None;
}
pub fn has_reason(&self) -> bool {
self.reason.is_some()
}
// Param is passed by value, moved
pub fn set_reason(&mut self, v: u32) {
self.reason = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for NetMessageConnectionCrashed {
const NAME: &'static str = "NetMessageConnectionCrashed";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.reason = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.reason {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.reason {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> NetMessageConnectionCrashed {
NetMessageConnectionCrashed::new()
}
fn clear(&mut self) {
self.reason = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static NetMessageConnectionCrashed {
static instance: NetMessageConnectionCrashed = NetMessageConnectionCrashed {
reason: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:NetMessagePacketStart)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct NetMessagePacketStart {
// special fields
// @@protoc_insertion_point(special_field:NetMessagePacketStart.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a NetMessagePacketStart {
fn default() -> &'a NetMessagePacketStart {
<NetMessagePacketStart as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl NetMessagePacketStart {
pub fn new() -> NetMessagePacketStart {
::std::default::Default::default()
}
}
impl ::steam_vent_proto_common::protobuf::Message for NetMessagePacketStart {
const NAME: &'static str = "NetMessagePacketStart";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> NetMessagePacketStart {
NetMessagePacketStart::new()
}
fn clear(&mut self) {
self.special_fields.clear();
}
fn default_instance() -> &'static NetMessagePacketStart {
static instance: NetMessagePacketStart = NetMessagePacketStart {
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:NetMessagePacketEnd)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct NetMessagePacketEnd {
// special fields
// @@protoc_insertion_point(special_field:NetMessagePacketEnd.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a NetMessagePacketEnd {
fn default() -> &'a NetMessagePacketEnd {
<NetMessagePacketEnd as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl NetMessagePacketEnd {
pub fn new() -> NetMessagePacketEnd {
::std::default::Default::default()
}
}
impl ::steam_vent_proto_common::protobuf::Message for NetMessagePacketEnd {
const NAME: &'static str = "NetMessagePacketEnd";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> NetMessagePacketEnd {
NetMessagePacketEnd::new()
}
fn clear(&mut self) {
self.special_fields.clear();
}
fn default_instance() -> &'static NetMessagePacketEnd {
static instance: NetMessagePacketEnd = NetMessagePacketEnd {
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
impl ::steam_vent_proto_common::RpcMessage for NetMessageSplitscreenUserChanged {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for NetMessageConnectionClosed {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for NetMessageConnectionCrashed {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for NetMessagePacketStart {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for NetMessagePacketEnd {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,915 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `steammessages.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:CMsgProtoBufHeader)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CMsgProtoBufHeader {
// message fields
// @@protoc_insertion_point(field:CMsgProtoBufHeader.client_steam_id)
pub client_steam_id: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.client_session_id)
pub client_session_id: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.source_app_id)
pub source_app_id: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.job_id_source)
pub job_id_source: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.job_id_target)
pub job_id_target: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.target_job_name)
pub target_job_name: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.eresult)
pub eresult: ::std::option::Option<i32>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.error_message)
pub error_message: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.ip)
pub ip: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.gc_msg_src)
pub gc_msg_src: ::std::option::Option<::steam_vent_proto_common::protobuf::EnumOrUnknown<GCProtoBufMsgSrc>>,
// @@protoc_insertion_point(field:CMsgProtoBufHeader.gc_dir_index_source)
pub gc_dir_index_source: ::std::option::Option<u32>,
// special fields
// @@protoc_insertion_point(special_field:CMsgProtoBufHeader.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CMsgProtoBufHeader {
fn default() -> &'a CMsgProtoBufHeader {
<CMsgProtoBufHeader as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CMsgProtoBufHeader {
pub fn new() -> CMsgProtoBufHeader {
::std::default::Default::default()
}
// optional fixed64 client_steam_id = 1;
pub fn client_steam_id(&self) -> u64 {
self.client_steam_id.unwrap_or(0)
}
pub fn clear_client_steam_id(&mut self) {
self.client_steam_id = ::std::option::Option::None;
}
pub fn has_client_steam_id(&self) -> bool {
self.client_steam_id.is_some()
}
// Param is passed by value, moved
pub fn set_client_steam_id(&mut self, v: u64) {
self.client_steam_id = ::std::option::Option::Some(v);
}
// optional int32 client_session_id = 2;
pub fn client_session_id(&self) -> i32 {
self.client_session_id.unwrap_or(0)
}
pub fn clear_client_session_id(&mut self) {
self.client_session_id = ::std::option::Option::None;
}
pub fn has_client_session_id(&self) -> bool {
self.client_session_id.is_some()
}
// Param is passed by value, moved
pub fn set_client_session_id(&mut self, v: i32) {
self.client_session_id = ::std::option::Option::Some(v);
}
// optional uint32 source_app_id = 3;
pub fn source_app_id(&self) -> u32 {
self.source_app_id.unwrap_or(0)
}
pub fn clear_source_app_id(&mut self) {
self.source_app_id = ::std::option::Option::None;
}
pub fn has_source_app_id(&self) -> bool {
self.source_app_id.is_some()
}
// Param is passed by value, moved
pub fn set_source_app_id(&mut self, v: u32) {
self.source_app_id = ::std::option::Option::Some(v);
}
// optional fixed64 job_id_source = 10;
pub fn job_id_source(&self) -> u64 {
self.job_id_source.unwrap_or(18446744073709551615u64)
}
pub fn clear_job_id_source(&mut self) {
self.job_id_source = ::std::option::Option::None;
}
pub fn has_job_id_source(&self) -> bool {
self.job_id_source.is_some()
}
// Param is passed by value, moved
pub fn set_job_id_source(&mut self, v: u64) {
self.job_id_source = ::std::option::Option::Some(v);
}
// optional fixed64 job_id_target = 11;
pub fn job_id_target(&self) -> u64 {
self.job_id_target.unwrap_or(18446744073709551615u64)
}
pub fn clear_job_id_target(&mut self) {
self.job_id_target = ::std::option::Option::None;
}
pub fn has_job_id_target(&self) -> bool {
self.job_id_target.is_some()
}
// Param is passed by value, moved
pub fn set_job_id_target(&mut self, v: u64) {
self.job_id_target = ::std::option::Option::Some(v);
}
// optional string target_job_name = 12;
pub fn target_job_name(&self) -> &str {
match self.target_job_name.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_target_job_name(&mut self) {
self.target_job_name = ::std::option::Option::None;
}
pub fn has_target_job_name(&self) -> bool {
self.target_job_name.is_some()
}
// Param is passed by value, moved
pub fn set_target_job_name(&mut self, v: ::std::string::String) {
self.target_job_name = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_target_job_name(&mut self) -> &mut ::std::string::String {
if self.target_job_name.is_none() {
self.target_job_name = ::std::option::Option::Some(::std::string::String::new());
}
self.target_job_name.as_mut().unwrap()
}
// Take field
pub fn take_target_job_name(&mut self) -> ::std::string::String {
self.target_job_name.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional int32 eresult = 13;
pub fn eresult(&self) -> i32 {
self.eresult.unwrap_or(2i32)
}
pub fn clear_eresult(&mut self) {
self.eresult = ::std::option::Option::None;
}
pub fn has_eresult(&self) -> bool {
self.eresult.is_some()
}
// Param is passed by value, moved
pub fn set_eresult(&mut self, v: i32) {
self.eresult = ::std::option::Option::Some(v);
}
// optional string error_message = 14;
pub fn error_message(&self) -> &str {
match self.error_message.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_error_message(&mut self) {
self.error_message = ::std::option::Option::None;
}
pub fn has_error_message(&self) -> bool {
self.error_message.is_some()
}
// Param is passed by value, moved
pub fn set_error_message(&mut self, v: ::std::string::String) {
self.error_message = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_error_message(&mut self) -> &mut ::std::string::String {
if self.error_message.is_none() {
self.error_message = ::std::option::Option::Some(::std::string::String::new());
}
self.error_message.as_mut().unwrap()
}
// Take field
pub fn take_error_message(&mut self) -> ::std::string::String {
self.error_message.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional uint32 ip = 15;
pub fn ip(&self) -> u32 {
self.ip.unwrap_or(0)
}
pub fn clear_ip(&mut self) {
self.ip = ::std::option::Option::None;
}
pub fn has_ip(&self) -> bool {
self.ip.is_some()
}
// Param is passed by value, moved
pub fn set_ip(&mut self, v: u32) {
self.ip = ::std::option::Option::Some(v);
}
// optional .GCProtoBufMsgSrc gc_msg_src = 200;
pub fn gc_msg_src(&self) -> GCProtoBufMsgSrc {
match self.gc_msg_src {
Some(e) => e.enum_value_or(GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified),
None => GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified,
}
}
pub fn clear_gc_msg_src(&mut self) {
self.gc_msg_src = ::std::option::Option::None;
}
pub fn has_gc_msg_src(&self) -> bool {
self.gc_msg_src.is_some()
}
// Param is passed by value, moved
pub fn set_gc_msg_src(&mut self, v: GCProtoBufMsgSrc) {
self.gc_msg_src = ::std::option::Option::Some(::steam_vent_proto_common::protobuf::EnumOrUnknown::new(v));
}
// optional uint32 gc_dir_index_source = 201;
pub fn gc_dir_index_source(&self) -> u32 {
self.gc_dir_index_source.unwrap_or(0)
}
pub fn clear_gc_dir_index_source(&mut self) {
self.gc_dir_index_source = ::std::option::Option::None;
}
pub fn has_gc_dir_index_source(&self) -> bool {
self.gc_dir_index_source.is_some()
}
// Param is passed by value, moved
pub fn set_gc_dir_index_source(&mut self, v: u32) {
self.gc_dir_index_source = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CMsgProtoBufHeader {
const NAME: &'static str = "CMsgProtoBufHeader";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
9 => {
self.client_steam_id = ::std::option::Option::Some(is.read_fixed64()?);
},
16 => {
self.client_session_id = ::std::option::Option::Some(is.read_int32()?);
},
24 => {
self.source_app_id = ::std::option::Option::Some(is.read_uint32()?);
},
81 => {
self.job_id_source = ::std::option::Option::Some(is.read_fixed64()?);
},
89 => {
self.job_id_target = ::std::option::Option::Some(is.read_fixed64()?);
},
98 => {
self.target_job_name = ::std::option::Option::Some(is.read_string()?);
},
104 => {
self.eresult = ::std::option::Option::Some(is.read_int32()?);
},
114 => {
self.error_message = ::std::option::Option::Some(is.read_string()?);
},
120 => {
self.ip = ::std::option::Option::Some(is.read_uint32()?);
},
1600 => {
self.gc_msg_src = ::std::option::Option::Some(is.read_enum_or_unknown()?);
},
1608 => {
self.gc_dir_index_source = ::std::option::Option::Some(is.read_uint32()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.client_steam_id {
my_size += 1 + 8;
}
if let Some(v) = self.client_session_id {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(2, v);
}
if let Some(v) = self.source_app_id {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(3, v);
}
if let Some(v) = self.job_id_source {
my_size += 1 + 8;
}
if let Some(v) = self.job_id_target {
my_size += 1 + 8;
}
if let Some(v) = self.target_job_name.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(12, &v);
}
if let Some(v) = self.eresult {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(13, v);
}
if let Some(v) = self.error_message.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(14, &v);
}
if let Some(v) = self.ip {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(15, v);
}
if let Some(v) = self.gc_msg_src {
my_size += ::steam_vent_proto_common::protobuf::rt::int32_size(200, v.value());
}
if let Some(v) = self.gc_dir_index_source {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(201, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.client_steam_id {
os.write_fixed64(1, v)?;
}
if let Some(v) = self.client_session_id {
os.write_int32(2, v)?;
}
if let Some(v) = self.source_app_id {
os.write_uint32(3, v)?;
}
if let Some(v) = self.job_id_source {
os.write_fixed64(10, v)?;
}
if let Some(v) = self.job_id_target {
os.write_fixed64(11, v)?;
}
if let Some(v) = self.target_job_name.as_ref() {
os.write_string(12, v)?;
}
if let Some(v) = self.eresult {
os.write_int32(13, v)?;
}
if let Some(v) = self.error_message.as_ref() {
os.write_string(14, v)?;
}
if let Some(v) = self.ip {
os.write_uint32(15, v)?;
}
if let Some(v) = self.gc_msg_src {
os.write_enum(200, ::steam_vent_proto_common::protobuf::EnumOrUnknown::value(&v))?;
}
if let Some(v) = self.gc_dir_index_source {
os.write_uint32(201, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CMsgProtoBufHeader {
CMsgProtoBufHeader::new()
}
fn clear(&mut self) {
self.client_steam_id = ::std::option::Option::None;
self.client_session_id = ::std::option::Option::None;
self.source_app_id = ::std::option::Option::None;
self.job_id_source = ::std::option::Option::None;
self.job_id_target = ::std::option::Option::None;
self.target_job_name = ::std::option::Option::None;
self.eresult = ::std::option::Option::None;
self.error_message = ::std::option::Option::None;
self.ip = ::std::option::Option::None;
self.gc_msg_src = ::std::option::Option::None;
self.gc_dir_index_source = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CMsgProtoBufHeader {
static instance: CMsgProtoBufHeader = CMsgProtoBufHeader {
client_steam_id: ::std::option::Option::None,
client_session_id: ::std::option::Option::None,
source_app_id: ::std::option::Option::None,
job_id_source: ::std::option::Option::None,
job_id_target: ::std::option::Option::None,
target_job_name: ::std::option::Option::None,
eresult: ::std::option::Option::None,
error_message: ::std::option::Option::None,
ip: ::std::option::Option::None,
gc_msg_src: ::std::option::Option::None,
gc_dir_index_source: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CChinaAgreementSessions_StartAgreementSessionInGame_Request)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CChinaAgreementSessions_StartAgreementSessionInGame_Request {
// message fields
// @@protoc_insertion_point(field:CChinaAgreementSessions_StartAgreementSessionInGame_Request.appid)
pub appid: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CChinaAgreementSessions_StartAgreementSessionInGame_Request.steamid)
pub steamid: ::std::option::Option<u64>,
// @@protoc_insertion_point(field:CChinaAgreementSessions_StartAgreementSessionInGame_Request.client_ipaddress)
pub client_ipaddress: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:CChinaAgreementSessions_StartAgreementSessionInGame_Request.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CChinaAgreementSessions_StartAgreementSessionInGame_Request {
fn default() -> &'a CChinaAgreementSessions_StartAgreementSessionInGame_Request {
<CChinaAgreementSessions_StartAgreementSessionInGame_Request as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CChinaAgreementSessions_StartAgreementSessionInGame_Request {
pub fn new() -> CChinaAgreementSessions_StartAgreementSessionInGame_Request {
::std::default::Default::default()
}
// optional uint32 appid = 1;
pub fn appid(&self) -> u32 {
self.appid.unwrap_or(0)
}
pub fn clear_appid(&mut self) {
self.appid = ::std::option::Option::None;
}
pub fn has_appid(&self) -> bool {
self.appid.is_some()
}
// Param is passed by value, moved
pub fn set_appid(&mut self, v: u32) {
self.appid = ::std::option::Option::Some(v);
}
// optional fixed64 steamid = 2;
pub fn steamid(&self) -> u64 {
self.steamid.unwrap_or(0)
}
pub fn clear_steamid(&mut self) {
self.steamid = ::std::option::Option::None;
}
pub fn has_steamid(&self) -> bool {
self.steamid.is_some()
}
// Param is passed by value, moved
pub fn set_steamid(&mut self, v: u64) {
self.steamid = ::std::option::Option::Some(v);
}
// optional string client_ipaddress = 3;
pub fn client_ipaddress(&self) -> &str {
match self.client_ipaddress.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_client_ipaddress(&mut self) {
self.client_ipaddress = ::std::option::Option::None;
}
pub fn has_client_ipaddress(&self) -> bool {
self.client_ipaddress.is_some()
}
// Param is passed by value, moved
pub fn set_client_ipaddress(&mut self, v: ::std::string::String) {
self.client_ipaddress = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_client_ipaddress(&mut self) -> &mut ::std::string::String {
if self.client_ipaddress.is_none() {
self.client_ipaddress = ::std::option::Option::Some(::std::string::String::new());
}
self.client_ipaddress.as_mut().unwrap()
}
// Take field
pub fn take_client_ipaddress(&mut self) -> ::std::string::String {
self.client_ipaddress.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for CChinaAgreementSessions_StartAgreementSessionInGame_Request {
const NAME: &'static str = "CChinaAgreementSessions_StartAgreementSessionInGame_Request";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.appid = ::std::option::Option::Some(is.read_uint32()?);
},
17 => {
self.steamid = ::std::option::Option::Some(is.read_fixed64()?);
},
26 => {
self.client_ipaddress = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.appid {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
if let Some(v) = self.steamid {
my_size += 1 + 8;
}
if let Some(v) = self.client_ipaddress.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(3, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.appid {
os.write_uint32(1, v)?;
}
if let Some(v) = self.steamid {
os.write_fixed64(2, v)?;
}
if let Some(v) = self.client_ipaddress.as_ref() {
os.write_string(3, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CChinaAgreementSessions_StartAgreementSessionInGame_Request {
CChinaAgreementSessions_StartAgreementSessionInGame_Request::new()
}
fn clear(&mut self) {
self.appid = ::std::option::Option::None;
self.steamid = ::std::option::Option::None;
self.client_ipaddress = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CChinaAgreementSessions_StartAgreementSessionInGame_Request {
static instance: CChinaAgreementSessions_StartAgreementSessionInGame_Request = CChinaAgreementSessions_StartAgreementSessionInGame_Request {
appid: ::std::option::Option::None,
steamid: ::std::option::Option::None,
client_ipaddress: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CChinaAgreementSessions_StartAgreementSessionInGame_Response)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CChinaAgreementSessions_StartAgreementSessionInGame_Response {
// message fields
// @@protoc_insertion_point(field:CChinaAgreementSessions_StartAgreementSessionInGame_Response.agreement_url)
pub agreement_url: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:CChinaAgreementSessions_StartAgreementSessionInGame_Response.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CChinaAgreementSessions_StartAgreementSessionInGame_Response {
fn default() -> &'a CChinaAgreementSessions_StartAgreementSessionInGame_Response {
<CChinaAgreementSessions_StartAgreementSessionInGame_Response as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CChinaAgreementSessions_StartAgreementSessionInGame_Response {
pub fn new() -> CChinaAgreementSessions_StartAgreementSessionInGame_Response {
::std::default::Default::default()
}
// optional string agreement_url = 1;
pub fn agreement_url(&self) -> &str {
match self.agreement_url.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_agreement_url(&mut self) {
self.agreement_url = ::std::option::Option::None;
}
pub fn has_agreement_url(&self) -> bool {
self.agreement_url.is_some()
}
// Param is passed by value, moved
pub fn set_agreement_url(&mut self, v: ::std::string::String) {
self.agreement_url = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_agreement_url(&mut self) -> &mut ::std::string::String {
if self.agreement_url.is_none() {
self.agreement_url = ::std::option::Option::Some(::std::string::String::new());
}
self.agreement_url.as_mut().unwrap()
}
// Take field
pub fn take_agreement_url(&mut self) -> ::std::string::String {
self.agreement_url.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for CChinaAgreementSessions_StartAgreementSessionInGame_Response {
const NAME: &'static str = "CChinaAgreementSessions_StartAgreementSessionInGame_Response";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.agreement_url = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.agreement_url.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(1, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.agreement_url.as_ref() {
os.write_string(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CChinaAgreementSessions_StartAgreementSessionInGame_Response {
CChinaAgreementSessions_StartAgreementSessionInGame_Response::new()
}
fn clear(&mut self) {
self.agreement_url = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CChinaAgreementSessions_StartAgreementSessionInGame_Response {
static instance: CChinaAgreementSessions_StartAgreementSessionInGame_Response = CChinaAgreementSessions_StartAgreementSessionInGame_Response {
agreement_url: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
// @@protoc_insertion_point(enum:GCProtoBufMsgSrc)
pub enum GCProtoBufMsgSrc {
// @@protoc_insertion_point(enum_value:GCProtoBufMsgSrc.GCProtoBufMsgSrc_Unspecified)
GCProtoBufMsgSrc_Unspecified = 0,
// @@protoc_insertion_point(enum_value:GCProtoBufMsgSrc.GCProtoBufMsgSrc_FromSystem)
GCProtoBufMsgSrc_FromSystem = 1,
// @@protoc_insertion_point(enum_value:GCProtoBufMsgSrc.GCProtoBufMsgSrc_FromSteamID)
GCProtoBufMsgSrc_FromSteamID = 2,
// @@protoc_insertion_point(enum_value:GCProtoBufMsgSrc.GCProtoBufMsgSrc_FromGC)
GCProtoBufMsgSrc_FromGC = 3,
// @@protoc_insertion_point(enum_value:GCProtoBufMsgSrc.GCProtoBufMsgSrc_ReplySystem)
GCProtoBufMsgSrc_ReplySystem = 4,
}
impl ::steam_vent_proto_common::protobuf::Enum for GCProtoBufMsgSrc {
const NAME: &'static str = "GCProtoBufMsgSrc";
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<GCProtoBufMsgSrc> {
match value {
0 => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified),
1 => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSystem),
2 => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSteamID),
3 => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromGC),
4 => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_ReplySystem),
_ => ::std::option::Option::None
}
}
fn from_str(str: &str) -> ::std::option::Option<GCProtoBufMsgSrc> {
match str {
"GCProtoBufMsgSrc_Unspecified" => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified),
"GCProtoBufMsgSrc_FromSystem" => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSystem),
"GCProtoBufMsgSrc_FromSteamID" => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSteamID),
"GCProtoBufMsgSrc_FromGC" => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromGC),
"GCProtoBufMsgSrc_ReplySystem" => ::std::option::Option::Some(GCProtoBufMsgSrc::GCProtoBufMsgSrc_ReplySystem),
_ => ::std::option::Option::None
}
}
const VALUES: &'static [GCProtoBufMsgSrc] = &[
GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified,
GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSystem,
GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromSteamID,
GCProtoBufMsgSrc::GCProtoBufMsgSrc_FromGC,
GCProtoBufMsgSrc::GCProtoBufMsgSrc_ReplySystem,
];
}
impl ::std::default::Default for GCProtoBufMsgSrc {
fn default() -> Self {
GCProtoBufMsgSrc::GCProtoBufMsgSrc_Unspecified
}
}
// Extension generation with lite runtime is not supported
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
impl ::steam_vent_proto_common::RpcMessage for CMsgProtoBufHeader {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage
for CChinaAgreementSessions_StartAgreementSessionInGame_Request {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage
for CChinaAgreementSessions_StartAgreementSessionInGame_Response {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,436 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `steammessages_helprequest.steamworkssdk.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
#[doc = "User uploading application logs"]
// @@protoc_insertion_point(message:CHelpRequestLogs_UploadUserApplicationLog_Request)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CHelpRequestLogs_UploadUserApplicationLog_Request {
// message fields
// @@protoc_insertion_point(field:CHelpRequestLogs_UploadUserApplicationLog_Request.appid)
pub appid: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CHelpRequestLogs_UploadUserApplicationLog_Request.log_type)
pub log_type: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:CHelpRequestLogs_UploadUserApplicationLog_Request.version_string)
pub version_string: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:CHelpRequestLogs_UploadUserApplicationLog_Request.log_contents)
pub log_contents: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:CHelpRequestLogs_UploadUserApplicationLog_Request.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CHelpRequestLogs_UploadUserApplicationLog_Request {
fn default() -> &'a CHelpRequestLogs_UploadUserApplicationLog_Request {
<CHelpRequestLogs_UploadUserApplicationLog_Request as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CHelpRequestLogs_UploadUserApplicationLog_Request {
pub fn new() -> CHelpRequestLogs_UploadUserApplicationLog_Request {
::std::default::Default::default()
}
// optional uint32 appid = 1;
pub fn appid(&self) -> u32 {
self.appid.unwrap_or(0)
}
pub fn clear_appid(&mut self) {
self.appid = ::std::option::Option::None;
}
pub fn has_appid(&self) -> bool {
self.appid.is_some()
}
// Param is passed by value, moved
pub fn set_appid(&mut self, v: u32) {
self.appid = ::std::option::Option::Some(v);
}
// optional string log_type = 2;
pub fn log_type(&self) -> &str {
match self.log_type.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_log_type(&mut self) {
self.log_type = ::std::option::Option::None;
}
pub fn has_log_type(&self) -> bool {
self.log_type.is_some()
}
// Param is passed by value, moved
pub fn set_log_type(&mut self, v: ::std::string::String) {
self.log_type = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_log_type(&mut self) -> &mut ::std::string::String {
if self.log_type.is_none() {
self.log_type = ::std::option::Option::Some(::std::string::String::new());
}
self.log_type.as_mut().unwrap()
}
// Take field
pub fn take_log_type(&mut self) -> ::std::string::String {
self.log_type.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional string version_string = 3;
pub fn version_string(&self) -> &str {
match self.version_string.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_version_string(&mut self) {
self.version_string = ::std::option::Option::None;
}
pub fn has_version_string(&self) -> bool {
self.version_string.is_some()
}
// Param is passed by value, moved
pub fn set_version_string(&mut self, v: ::std::string::String) {
self.version_string = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_version_string(&mut self) -> &mut ::std::string::String {
if self.version_string.is_none() {
self.version_string = ::std::option::Option::Some(::std::string::String::new());
}
self.version_string.as_mut().unwrap()
}
// Take field
pub fn take_version_string(&mut self) -> ::std::string::String {
self.version_string.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional string log_contents = 4;
pub fn log_contents(&self) -> &str {
match self.log_contents.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_log_contents(&mut self) {
self.log_contents = ::std::option::Option::None;
}
pub fn has_log_contents(&self) -> bool {
self.log_contents.is_some()
}
// Param is passed by value, moved
pub fn set_log_contents(&mut self, v: ::std::string::String) {
self.log_contents = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_log_contents(&mut self) -> &mut ::std::string::String {
if self.log_contents.is_none() {
self.log_contents = ::std::option::Option::Some(::std::string::String::new());
}
self.log_contents.as_mut().unwrap()
}
// Take field
pub fn take_log_contents(&mut self) -> ::std::string::String {
self.log_contents.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for CHelpRequestLogs_UploadUserApplicationLog_Request {
const NAME: &'static str = "CHelpRequestLogs_UploadUserApplicationLog_Request";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.appid = ::std::option::Option::Some(is.read_uint32()?);
},
18 => {
self.log_type = ::std::option::Option::Some(is.read_string()?);
},
26 => {
self.version_string = ::std::option::Option::Some(is.read_string()?);
},
34 => {
self.log_contents = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.appid {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
if let Some(v) = self.log_type.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(2, &v);
}
if let Some(v) = self.version_string.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(3, &v);
}
if let Some(v) = self.log_contents.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(4, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.appid {
os.write_uint32(1, v)?;
}
if let Some(v) = self.log_type.as_ref() {
os.write_string(2, v)?;
}
if let Some(v) = self.version_string.as_ref() {
os.write_string(3, v)?;
}
if let Some(v) = self.log_contents.as_ref() {
os.write_string(4, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CHelpRequestLogs_UploadUserApplicationLog_Request {
CHelpRequestLogs_UploadUserApplicationLog_Request::new()
}
fn clear(&mut self) {
self.appid = ::std::option::Option::None;
self.log_type = ::std::option::Option::None;
self.version_string = ::std::option::Option::None;
self.log_contents = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CHelpRequestLogs_UploadUserApplicationLog_Request {
static instance: CHelpRequestLogs_UploadUserApplicationLog_Request = CHelpRequestLogs_UploadUserApplicationLog_Request {
appid: ::std::option::Option::None,
log_type: ::std::option::Option::None,
version_string: ::std::option::Option::None,
log_contents: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CHelpRequestLogs_UploadUserApplicationLog_Response)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CHelpRequestLogs_UploadUserApplicationLog_Response {
// message fields
// @@protoc_insertion_point(field:CHelpRequestLogs_UploadUserApplicationLog_Response.id)
pub id: ::std::option::Option<u64>,
// special fields
// @@protoc_insertion_point(special_field:CHelpRequestLogs_UploadUserApplicationLog_Response.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CHelpRequestLogs_UploadUserApplicationLog_Response {
fn default() -> &'a CHelpRequestLogs_UploadUserApplicationLog_Response {
<CHelpRequestLogs_UploadUserApplicationLog_Response as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CHelpRequestLogs_UploadUserApplicationLog_Response {
pub fn new() -> CHelpRequestLogs_UploadUserApplicationLog_Response {
::std::default::Default::default()
}
// optional uint64 id = 1;
pub fn id(&self) -> u64 {
self.id.unwrap_or(0)
}
pub fn clear_id(&mut self) {
self.id = ::std::option::Option::None;
}
pub fn has_id(&self) -> bool {
self.id.is_some()
}
// Param is passed by value, moved
pub fn set_id(&mut self, v: u64) {
self.id = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CHelpRequestLogs_UploadUserApplicationLog_Response {
const NAME: &'static str = "CHelpRequestLogs_UploadUserApplicationLog_Response";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.id = ::std::option::Option::Some(is.read_uint64()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.id {
my_size += ::steam_vent_proto_common::protobuf::rt::uint64_size(1, v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.id {
os.write_uint64(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CHelpRequestLogs_UploadUserApplicationLog_Response {
CHelpRequestLogs_UploadUserApplicationLog_Response::new()
}
fn clear(&mut self) {
self.id = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CHelpRequestLogs_UploadUserApplicationLog_Response {
static instance: CHelpRequestLogs_UploadUserApplicationLog_Response = CHelpRequestLogs_UploadUserApplicationLog_Response {
id: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
#[allow(unused_imports)]
use crate::steammessages_unified_base_steamworkssdk::*;
impl ::steam_vent_proto_common::RpcMessage
for CHelpRequestLogs_UploadUserApplicationLog_Request {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage
for CHelpRequestLogs_UploadUserApplicationLog_Response {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
///Service for dealing with user-submitted logs
struct HelpRequestLogs {}
impl ::steam_vent_proto_common::RpcService for HelpRequestLogs {
const SERVICE_NAME: &'static str = "HelpRequestLogs";
}
impl ::steam_vent_proto_common::RpcMethod
for CHelpRequestLogs_UploadUserApplicationLog_Request {
const METHOD_NAME: &'static str = "HelpRequestLogs.UploadUserApplicationLog#1";
type Response = CHelpRequestLogs_UploadUserApplicationLog_Response;
}

View file

@ -0,0 +1,371 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `steammessages_oauth.steamworkssdk.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
#[doc = "Grants an implicit OAuth token (grant type 'token') for the specified client ID on behalf of a user without prompting"]
// @@protoc_insertion_point(message:COAuthToken_ImplicitGrantNoPrompt_Request)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct COAuthToken_ImplicitGrantNoPrompt_Request {
// message fields
// @@protoc_insertion_point(field:COAuthToken_ImplicitGrantNoPrompt_Request.clientid)
pub clientid: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:COAuthToken_ImplicitGrantNoPrompt_Request.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a COAuthToken_ImplicitGrantNoPrompt_Request {
fn default() -> &'a COAuthToken_ImplicitGrantNoPrompt_Request {
<COAuthToken_ImplicitGrantNoPrompt_Request as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl COAuthToken_ImplicitGrantNoPrompt_Request {
pub fn new() -> COAuthToken_ImplicitGrantNoPrompt_Request {
::std::default::Default::default()
}
// optional string clientid = 1;
pub fn clientid(&self) -> &str {
match self.clientid.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_clientid(&mut self) {
self.clientid = ::std::option::Option::None;
}
pub fn has_clientid(&self) -> bool {
self.clientid.is_some()
}
// Param is passed by value, moved
pub fn set_clientid(&mut self, v: ::std::string::String) {
self.clientid = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_clientid(&mut self) -> &mut ::std::string::String {
if self.clientid.is_none() {
self.clientid = ::std::option::Option::Some(::std::string::String::new());
}
self.clientid.as_mut().unwrap()
}
// Take field
pub fn take_clientid(&mut self) -> ::std::string::String {
self.clientid.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for COAuthToken_ImplicitGrantNoPrompt_Request {
const NAME: &'static str = "COAuthToken_ImplicitGrantNoPrompt_Request";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.clientid = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.clientid.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(1, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.clientid.as_ref() {
os.write_string(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> COAuthToken_ImplicitGrantNoPrompt_Request {
COAuthToken_ImplicitGrantNoPrompt_Request::new()
}
fn clear(&mut self) {
self.clientid = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static COAuthToken_ImplicitGrantNoPrompt_Request {
static instance: COAuthToken_ImplicitGrantNoPrompt_Request = COAuthToken_ImplicitGrantNoPrompt_Request {
clientid: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:COAuthToken_ImplicitGrantNoPrompt_Response)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct COAuthToken_ImplicitGrantNoPrompt_Response {
// message fields
// @@protoc_insertion_point(field:COAuthToken_ImplicitGrantNoPrompt_Response.access_token)
pub access_token: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:COAuthToken_ImplicitGrantNoPrompt_Response.redirect_uri)
pub redirect_uri: ::std::option::Option<::std::string::String>,
// special fields
// @@protoc_insertion_point(special_field:COAuthToken_ImplicitGrantNoPrompt_Response.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a COAuthToken_ImplicitGrantNoPrompt_Response {
fn default() -> &'a COAuthToken_ImplicitGrantNoPrompt_Response {
<COAuthToken_ImplicitGrantNoPrompt_Response as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl COAuthToken_ImplicitGrantNoPrompt_Response {
pub fn new() -> COAuthToken_ImplicitGrantNoPrompt_Response {
::std::default::Default::default()
}
// optional string access_token = 1;
pub fn access_token(&self) -> &str {
match self.access_token.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_access_token(&mut self) {
self.access_token = ::std::option::Option::None;
}
pub fn has_access_token(&self) -> bool {
self.access_token.is_some()
}
// Param is passed by value, moved
pub fn set_access_token(&mut self, v: ::std::string::String) {
self.access_token = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_access_token(&mut self) -> &mut ::std::string::String {
if self.access_token.is_none() {
self.access_token = ::std::option::Option::Some(::std::string::String::new());
}
self.access_token.as_mut().unwrap()
}
// Take field
pub fn take_access_token(&mut self) -> ::std::string::String {
self.access_token.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional string redirect_uri = 2;
pub fn redirect_uri(&self) -> &str {
match self.redirect_uri.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_redirect_uri(&mut self) {
self.redirect_uri = ::std::option::Option::None;
}
pub fn has_redirect_uri(&self) -> bool {
self.redirect_uri.is_some()
}
// Param is passed by value, moved
pub fn set_redirect_uri(&mut self, v: ::std::string::String) {
self.redirect_uri = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_redirect_uri(&mut self) -> &mut ::std::string::String {
if self.redirect_uri.is_none() {
self.redirect_uri = ::std::option::Option::Some(::std::string::String::new());
}
self.redirect_uri.as_mut().unwrap()
}
// Take field
pub fn take_redirect_uri(&mut self) -> ::std::string::String {
self.redirect_uri.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for COAuthToken_ImplicitGrantNoPrompt_Response {
const NAME: &'static str = "COAuthToken_ImplicitGrantNoPrompt_Response";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.access_token = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.redirect_uri = ::std::option::Option::Some(is.read_string()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.access_token.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.redirect_uri.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(2, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.access_token.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.redirect_uri.as_ref() {
os.write_string(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> COAuthToken_ImplicitGrantNoPrompt_Response {
COAuthToken_ImplicitGrantNoPrompt_Response::new()
}
fn clear(&mut self) {
self.access_token = ::std::option::Option::None;
self.redirect_uri = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static COAuthToken_ImplicitGrantNoPrompt_Response {
static instance: COAuthToken_ImplicitGrantNoPrompt_Response = COAuthToken_ImplicitGrantNoPrompt_Response {
access_token: ::std::option::Option::None,
redirect_uri: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
#[allow(unused_imports)]
use crate::steammessages_unified_base_steamworkssdk::*;
impl ::steam_vent_proto_common::RpcMessage
for COAuthToken_ImplicitGrantNoPrompt_Request {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage
for COAuthToken_ImplicitGrantNoPrompt_Response {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
///Service containing methods to manage OAuth tokens
struct OAuthToken {}
impl ::steam_vent_proto_common::RpcService for OAuthToken {
const SERVICE_NAME: &'static str = "OAuthToken";
}
impl ::steam_vent_proto_common::RpcMethod for COAuthToken_ImplicitGrantNoPrompt_Request {
const METHOD_NAME: &'static str = "OAuthToken.ImplicitGrantNoPrompt#1";
type Response = COAuthToken_ImplicitGrantNoPrompt_Response;
}

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,76 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `steammessages_unified_base.steamworkssdk.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
#[derive(Clone,Copy,PartialEq,Eq,Debug,Hash)]
// @@protoc_insertion_point(enum:EProtoExecutionSite)
pub enum EProtoExecutionSite {
// @@protoc_insertion_point(enum_value:EProtoExecutionSite.k_EProtoExecutionSiteUnknown)
k_EProtoExecutionSiteUnknown = 0,
// @@protoc_insertion_point(enum_value:EProtoExecutionSite.k_EProtoExecutionSiteSteamClient)
k_EProtoExecutionSiteSteamClient = 3,
}
impl ::steam_vent_proto_common::protobuf::Enum for EProtoExecutionSite {
const NAME: &'static str = "EProtoExecutionSite";
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<EProtoExecutionSite> {
match value {
0 => ::std::option::Option::Some(EProtoExecutionSite::k_EProtoExecutionSiteUnknown),
3 => ::std::option::Option::Some(EProtoExecutionSite::k_EProtoExecutionSiteSteamClient),
_ => ::std::option::Option::None
}
}
fn from_str(str: &str) -> ::std::option::Option<EProtoExecutionSite> {
match str {
"k_EProtoExecutionSiteUnknown" => ::std::option::Option::Some(EProtoExecutionSite::k_EProtoExecutionSiteUnknown),
"k_EProtoExecutionSiteSteamClient" => ::std::option::Option::Some(EProtoExecutionSite::k_EProtoExecutionSiteSteamClient),
_ => ::std::option::Option::None
}
}
const VALUES: &'static [EProtoExecutionSite] = &[
EProtoExecutionSite::k_EProtoExecutionSiteUnknown,
EProtoExecutionSite::k_EProtoExecutionSiteSteamClient,
];
}
impl ::std::default::Default for EProtoExecutionSite {
fn default() -> Self {
EProtoExecutionSite::k_EProtoExecutionSiteUnknown
}
}
// Extension generation with lite runtime is not supported
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

6385
src/generated/te.rs Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,491 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `uifontfile_format.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// @@protoc_insertion_point(message:CUIFontFilePB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CUIFontFilePB {
// message fields
// @@protoc_insertion_point(field:CUIFontFilePB.font_file_name)
pub font_file_name: ::std::option::Option<::std::string::String>,
// @@protoc_insertion_point(field:CUIFontFilePB.opentype_font_data)
pub opentype_font_data: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:CUIFontFilePB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CUIFontFilePB {
fn default() -> &'a CUIFontFilePB {
<CUIFontFilePB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CUIFontFilePB {
pub fn new() -> CUIFontFilePB {
::std::default::Default::default()
}
// optional string font_file_name = 1;
pub fn font_file_name(&self) -> &str {
match self.font_file_name.as_ref() {
Some(v) => v,
None => "",
}
}
pub fn clear_font_file_name(&mut self) {
self.font_file_name = ::std::option::Option::None;
}
pub fn has_font_file_name(&self) -> bool {
self.font_file_name.is_some()
}
// Param is passed by value, moved
pub fn set_font_file_name(&mut self, v: ::std::string::String) {
self.font_file_name = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_font_file_name(&mut self) -> &mut ::std::string::String {
if self.font_file_name.is_none() {
self.font_file_name = ::std::option::Option::Some(::std::string::String::new());
}
self.font_file_name.as_mut().unwrap()
}
// Take field
pub fn take_font_file_name(&mut self) -> ::std::string::String {
self.font_file_name.take().unwrap_or_else(|| ::std::string::String::new())
}
// optional bytes opentype_font_data = 2;
pub fn opentype_font_data(&self) -> &[u8] {
match self.opentype_font_data.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_opentype_font_data(&mut self) {
self.opentype_font_data = ::std::option::Option::None;
}
pub fn has_opentype_font_data(&self) -> bool {
self.opentype_font_data.is_some()
}
// Param is passed by value, moved
pub fn set_opentype_font_data(&mut self, v: ::std::vec::Vec<u8>) {
self.opentype_font_data = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_opentype_font_data(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.opentype_font_data.is_none() {
self.opentype_font_data = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.opentype_font_data.as_mut().unwrap()
}
// Take field
pub fn take_opentype_font_data(&mut self) -> ::std::vec::Vec<u8> {
self.opentype_font_data.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for CUIFontFilePB {
const NAME: &'static str = "CUIFontFilePB";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.font_file_name = ::std::option::Option::Some(is.read_string()?);
},
18 => {
self.opentype_font_data = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.font_file_name.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.opentype_font_data.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::bytes_size(2, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.font_file_name.as_ref() {
os.write_string(1, v)?;
}
if let Some(v) = self.opentype_font_data.as_ref() {
os.write_bytes(2, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CUIFontFilePB {
CUIFontFilePB::new()
}
fn clear(&mut self) {
self.font_file_name = ::std::option::Option::None;
self.opentype_font_data = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CUIFontFilePB {
static instance: CUIFontFilePB = CUIFontFilePB {
font_file_name: ::std::option::Option::None,
opentype_font_data: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
// @@protoc_insertion_point(message:CUIFontFilePackagePB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CUIFontFilePackagePB {
// message fields
// @@protoc_insertion_point(field:CUIFontFilePackagePB.package_version)
pub package_version: ::std::option::Option<u32>,
// @@protoc_insertion_point(field:CUIFontFilePackagePB.encrypted_font_files)
pub encrypted_font_files: ::std::vec::Vec<cuifont_file_package_pb::CUIEncryptedFontFilePB>,
// special fields
// @@protoc_insertion_point(special_field:CUIFontFilePackagePB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CUIFontFilePackagePB {
fn default() -> &'a CUIFontFilePackagePB {
<CUIFontFilePackagePB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CUIFontFilePackagePB {
pub fn new() -> CUIFontFilePackagePB {
::std::default::Default::default()
}
// required uint32 package_version = 1;
pub fn package_version(&self) -> u32 {
self.package_version.unwrap_or(0)
}
pub fn clear_package_version(&mut self) {
self.package_version = ::std::option::Option::None;
}
pub fn has_package_version(&self) -> bool {
self.package_version.is_some()
}
// Param is passed by value, moved
pub fn set_package_version(&mut self, v: u32) {
self.package_version = ::std::option::Option::Some(v);
}
}
impl ::steam_vent_proto_common::protobuf::Message for CUIFontFilePackagePB {
const NAME: &'static str = "CUIFontFilePackagePB";
fn is_initialized(&self) -> bool {
if self.package_version.is_none() {
return false;
}
for v in &self.encrypted_font_files {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
8 => {
self.package_version = ::std::option::Option::Some(is.read_uint32()?);
},
18 => {
self.encrypted_font_files.push(is.read_message()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.package_version {
my_size += ::steam_vent_proto_common::protobuf::rt::uint32_size(1, v);
}
for value in &self.encrypted_font_files {
let len = value.compute_size();
my_size += 1 + ::steam_vent_proto_common::protobuf::rt::compute_raw_varint64_size(len) + len;
};
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.package_version {
os.write_uint32(1, v)?;
}
for v in &self.encrypted_font_files {
::steam_vent_proto_common::protobuf::rt::write_message_field_with_cached_size(2, v, os)?;
};
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CUIFontFilePackagePB {
CUIFontFilePackagePB::new()
}
fn clear(&mut self) {
self.package_version = ::std::option::Option::None;
self.encrypted_font_files.clear();
self.special_fields.clear();
}
fn default_instance() -> &'static CUIFontFilePackagePB {
static instance: CUIFontFilePackagePB = CUIFontFilePackagePB {
package_version: ::std::option::Option::None,
encrypted_font_files: ::std::vec::Vec::new(),
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
/// Nested message and enums of message `CUIFontFilePackagePB`
pub mod cuifont_file_package_pb {
// @@protoc_insertion_point(message:CUIFontFilePackagePB.CUIEncryptedFontFilePB)
#[derive(PartialEq,Clone,Default,Debug)]
pub struct CUIEncryptedFontFilePB {
// message fields
// @@protoc_insertion_point(field:CUIFontFilePackagePB.CUIEncryptedFontFilePB.encrypted_contents)
pub encrypted_contents: ::std::option::Option<::std::vec::Vec<u8>>,
// special fields
// @@protoc_insertion_point(special_field:CUIFontFilePackagePB.CUIEncryptedFontFilePB.special_fields)
pub special_fields: ::steam_vent_proto_common::protobuf::SpecialFields,
}
impl<'a> ::std::default::Default for &'a CUIEncryptedFontFilePB {
fn default() -> &'a CUIEncryptedFontFilePB {
<CUIEncryptedFontFilePB as ::steam_vent_proto_common::protobuf::Message>::default_instance()
}
}
impl CUIEncryptedFontFilePB {
pub fn new() -> CUIEncryptedFontFilePB {
::std::default::Default::default()
}
// optional bytes encrypted_contents = 1;
pub fn encrypted_contents(&self) -> &[u8] {
match self.encrypted_contents.as_ref() {
Some(v) => v,
None => &[],
}
}
pub fn clear_encrypted_contents(&mut self) {
self.encrypted_contents = ::std::option::Option::None;
}
pub fn has_encrypted_contents(&self) -> bool {
self.encrypted_contents.is_some()
}
// Param is passed by value, moved
pub fn set_encrypted_contents(&mut self, v: ::std::vec::Vec<u8>) {
self.encrypted_contents = ::std::option::Option::Some(v);
}
// Mutable pointer to the field.
// If field is not initialized, it is initialized with default value first.
pub fn mut_encrypted_contents(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.encrypted_contents.is_none() {
self.encrypted_contents = ::std::option::Option::Some(::std::vec::Vec::new());
}
self.encrypted_contents.as_mut().unwrap()
}
// Take field
pub fn take_encrypted_contents(&mut self) -> ::std::vec::Vec<u8> {
self.encrypted_contents.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
}
impl ::steam_vent_proto_common::protobuf::Message for CUIEncryptedFontFilePB {
const NAME: &'static str = "CUIEncryptedFontFilePB";
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::steam_vent_proto_common::protobuf::CodedInputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
while let Some(tag) = is.read_raw_tag_or_eof()? {
match tag {
10 => {
self.encrypted_contents = ::std::option::Option::Some(is.read_bytes()?);
},
tag => {
::steam_vent_proto_common::protobuf::rt::read_unknown_or_skip_group(tag, is, self.special_fields.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
// Compute sizes of nested messages
#[allow(unused_variables)]
fn compute_size(&self) -> u64 {
let mut my_size = 0;
if let Some(v) = self.encrypted_contents.as_ref() {
my_size += ::steam_vent_proto_common::protobuf::rt::bytes_size(1, &v);
}
my_size += ::steam_vent_proto_common::protobuf::rt::unknown_fields_size(self.special_fields.unknown_fields());
self.special_fields.cached_size().set(my_size as u32);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::steam_vent_proto_common::protobuf::CodedOutputStream<'_>) -> ::steam_vent_proto_common::protobuf::Result<()> {
if let Some(v) = self.encrypted_contents.as_ref() {
os.write_bytes(1, v)?;
}
os.write_unknown_fields(self.special_fields.unknown_fields())?;
::std::result::Result::Ok(())
}
fn special_fields(&self) -> &::steam_vent_proto_common::protobuf::SpecialFields {
&self.special_fields
}
fn mut_special_fields(&mut self) -> &mut ::steam_vent_proto_common::protobuf::SpecialFields {
&mut self.special_fields
}
fn new() -> CUIEncryptedFontFilePB {
CUIEncryptedFontFilePB::new()
}
fn clear(&mut self) {
self.encrypted_contents = ::std::option::Option::None;
self.special_fields.clear();
}
fn default_instance() -> &'static CUIEncryptedFontFilePB {
static instance: CUIEncryptedFontFilePB = CUIEncryptedFontFilePB {
encrypted_contents: ::std::option::Option::None,
special_fields: ::steam_vent_proto_common::protobuf::SpecialFields::new(),
};
&instance
}
}
}
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;
impl ::steam_vent_proto_common::RpcMessage for CUIFontFilePB {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}
impl ::steam_vent_proto_common::RpcMessage for CUIFontFilePackagePB {
fn parse(reader: &mut dyn std::io::Read) -> ::steam_vent_proto_common::protobuf::Result<Self> {
<Self as ::steam_vent_proto_common::protobuf::Message>::parse_from_reader(reader)
}
fn write(&self, writer: &mut dyn std::io::Write) -> ::steam_vent_proto_common::protobuf::Result<()> {
use ::steam_vent_proto_common::protobuf::Message;
self.write_to_writer(writer)
}
fn encode_size(&self) -> usize {
use ::steam_vent_proto_common::protobuf::Message;
self.compute_size() as usize
}
}

1169
src/generated/usercmd.rs Normal file

File diff suppressed because it is too large Load diff

20536
src/generated/usermessages.rs Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,31 @@
// This file is generated by rust-protobuf 3.5.1. Do not edit
// .proto file is parsed by pure
// @generated
// https://github.com/rust-lang/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_results)]
#![allow(unused_mut)]
//! Generated file from `valveextensions.proto`
// Generated for lite runtime
/// Generated files are compatible only with the same version
/// of protobuf runtime.
const _PROTOBUF_VERSION_CHECK: () = ::steam_vent_proto_common::protobuf::VERSION_3_5_1;
// Extension generation with lite runtime is not supported
const _VENT_PROTO_VERSION_CHECK: () = ::steam_vent_proto_common::VERSION_0_5_0;

5
src/lib.rs Normal file
View file

@ -0,0 +1,5 @@
//! steam-vent protobufs for csgo specific messages
mod generated;
pub use generated::*;