diff --git a/Resources/ProtobufGen/ProtobufGen/Program.cs b/Resources/ProtobufGen/ProtobufGen/Program.cs
index 134374040..3662cf455 100644
--- a/Resources/ProtobufGen/ProtobufGen/Program.cs
+++ b/Resources/ProtobufGen/ProtobufGen/Program.cs
@@ -73,6 +73,9 @@ static int Run( Options arguments )
continue;
}
+ var dir = Path.GetDirectoryName( arguments.Output );
+ Directory.CreateDirectory( dir );
+
File.WriteAllText( arguments.Output, file.Text );
}
diff --git a/Resources/ProtobufGen/protos.csv b/Resources/ProtobufGen/protos.csv
index 7cc7f3308..ffa727b04 100644
--- a/Resources/ProtobufGen/protos.csv
+++ b/Resources/ProtobufGen/protos.csv
@@ -2,7 +2,7 @@ ProtoDir,ProtoFileName,ClassFilePath,Namespace
steam,enums.proto,Enums.cs,SteamKit2.Internal
steam,content_manifest.proto,ContentManifest.cs,SteamKit2.Internal
steam,encrypted_app_ticket.proto,SteamMsgAppTicket.cs,SteamKit2.Internal
-steam,iclient_objects.proto,ClientObjects.cs,SteamKit2.Internal
+steam,steammessages_client_objects.proto,ClientObjects.cs,SteamKit2.Internal
steam,steammessages_accounthardware.steamclient.proto,SteamMsgAccountHardware.cs,SteamKit2.Internal
steam,steammessages_auth.steamclient.proto,SteamMsgAuth.cs,SteamKit2.Internal
steam,steammessages_base.proto,SteamMsgBase.cs,SteamKit2.Internal
@@ -22,6 +22,7 @@ steam,steammessages_clientserver_ufs.proto,SteamMsgClientServerUFS.cs,SteamKit2.
steam,steammessages_clientserver_userstats.proto,SteamMsgClientServerUserStats.cs,SteamKit2.Internal
steam,steammessages_clientnotificationtypes.proto,SteamMsgClientNotificationTypes.cs,SteamKit2.Internal
steam,steammessages_cloud.steamclient.proto,SteamMsgCloud.cs,SteamKit2.Internal
+steam,steammessages_contentsystem.steamclient.proto,SteamMsgContentSystem.cs,SteamKit2.Internal
steam,steammessages_credentials.steamclient.proto,SteamMsgCredentials.cs,SteamKit2.Internal
steam,steammessages_datapublisher.steamclient.proto,SteamMsgDataPublisher.cs,SteamKit2.Internal
steam,steammessages_depotbuilder.steamclient.proto,SteamMsgDepotBuilder.cs,SteamKit2.Internal
@@ -50,6 +51,7 @@ steam,steammessages_twofactor.steamclient.proto,SteamMsgTwoFactor.cs,SteamKit2.I
steam,steammessages_unified_base.steamclient.proto,SteamMsgUnifiedBase.cs,SteamKit2.Internal
steam,steammessages_useraccount.steamclient.proto,SteamMsgUserAccount.cs,SteamKit2.Internal
steam,steammessages_video.steamclient.proto,SteamMsgVideo.cs,SteamKit2.Internal
+steam,steammessages_workshop.steamclient.proto,SteamMsgWorkshop.cs,SteamKit2.Internal
artifact,base_gcmessages.proto,GC\Artifact\SteamMsgGC.cs,SteamKit2.GC.Artifact.Internal
artifact,dcg_gcmessages_client.proto,GC\Artifact\MsgGCClient.cs,SteamKit2.GC.Artifact.Internal
artifact,dcg_gcmessages_common.proto,GC\Artifact\MsgGCCommon.cs,SteamKit2.GC.Artifact.Internal
diff --git a/Resources/Protobufs b/Resources/Protobufs
index c8545f47f..196bd3da7 160000
--- a/Resources/Protobufs
+++ b/Resources/Protobufs
@@ -1 +1 @@
-Subproject commit c8545f47fb47a8f94916634973bed21d58cd72c2
+Subproject commit 196bd3da72dac015d42bd1288bb343c981ad750c
diff --git a/SteamKit2/SteamKit2/Base/Generated/ClientObjects.cs b/SteamKit2/SteamKit2/Base/Generated/ClientObjects.cs
index b215b4f31..3498f8c42 100644
--- a/SteamKit2/SteamKit2/Base/Generated/ClientObjects.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/ClientObjects.cs
@@ -1,7 +1,7 @@
//
// This file was generated by a tool; you should avoid making direct changes.
// Consider using 'partial classes' to extend these types
-// Input: iclient_objects.proto
+// Input: steammessages_client_objects.proto
//
#region Designer generated code
@@ -9,6 +9,211 @@
namespace SteamKit2.Internal
{
+ [global::ProtoBuf.ProtoContract()]
+ public partial class SteamMessagesClientIClientForcedEnumDependencies : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(EBluetoothDeviceType.k_BluetoothDeviceType_Invalid)]
+ public EBluetoothDeviceType a
+ {
+ get => __pbn__a ?? EBluetoothDeviceType.k_BluetoothDeviceType_Invalid;
+ set => __pbn__a = value;
+ }
+ public bool ShouldSerializea() => __pbn__a != null;
+ public void Reseta() => __pbn__a = null;
+ private EBluetoothDeviceType? __pbn__a;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue(EStorageBlockContentType.k_EStorageBlockContentType_Invalid)]
+ public EStorageBlockContentType b
+ {
+ get => __pbn__b ?? EStorageBlockContentType.k_EStorageBlockContentType_Invalid;
+ set => __pbn__b = value;
+ }
+ public bool ShouldSerializeb() => __pbn__b != null;
+ public void Resetb() => __pbn__b = null;
+ private EStorageBlockContentType? __pbn__b;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue(EStorageBlockFileSystemType.k_EStorageBlockFileSystemType_Invalid)]
+ public EStorageBlockFileSystemType c
+ {
+ get => __pbn__c ?? EStorageBlockFileSystemType.k_EStorageBlockFileSystemType_Invalid;
+ set => __pbn__c = value;
+ }
+ public bool ShouldSerializec() => __pbn__c != null;
+ public void Resetc() => __pbn__c = null;
+ private EStorageBlockFileSystemType? __pbn__c;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgNetworkDeviceIP4Address : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(0)]
+ public int ip
+ {
+ get => __pbn__ip ?? 0;
+ set => __pbn__ip = value;
+ }
+ public bool ShouldSerializeip() => __pbn__ip != null;
+ public void Resetip() => __pbn__ip = null;
+ private int? __pbn__ip;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public int netmask
+ {
+ get => __pbn__netmask.GetValueOrDefault();
+ set => __pbn__netmask = value;
+ }
+ public bool ShouldSerializenetmask() => __pbn__netmask != null;
+ public void Resetnetmask() => __pbn__netmask = null;
+ private int? __pbn__netmask;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgNetworkDeviceIP4Config : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public global::System.Collections.Generic.List addresses { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List dns_ip { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public int gateway_ip
+ {
+ get => __pbn__gateway_ip.GetValueOrDefault();
+ set => __pbn__gateway_ip = value;
+ }
+ public bool ShouldSerializegateway_ip() => __pbn__gateway_ip != null;
+ public void Resetgateway_ip() => __pbn__gateway_ip = null;
+ private int? __pbn__gateway_ip;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public bool is_dhcp_enabled
+ {
+ get => __pbn__is_dhcp_enabled.GetValueOrDefault();
+ set => __pbn__is_dhcp_enabled = value;
+ }
+ public bool ShouldSerializeis_dhcp_enabled() => __pbn__is_dhcp_enabled != null;
+ public void Resetis_dhcp_enabled() => __pbn__is_dhcp_enabled = null;
+ private bool? __pbn__is_dhcp_enabled;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public bool is_default_route
+ {
+ get => __pbn__is_default_route.GetValueOrDefault();
+ set => __pbn__is_default_route = value;
+ }
+ public bool ShouldSerializeis_default_route() => __pbn__is_default_route != null;
+ public void Resetis_default_route() => __pbn__is_default_route = null;
+ private bool? __pbn__is_default_route;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ [global::System.ComponentModel.DefaultValue(false)]
+ public bool is_enabled
+ {
+ get => __pbn__is_enabled ?? false;
+ set => __pbn__is_enabled = value;
+ }
+ public bool ShouldSerializeis_enabled() => __pbn__is_enabled != null;
+ public void Resetis_enabled() => __pbn__is_enabled = null;
+ private bool? __pbn__is_enabled;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgNetworkDeviceIP6Address : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string ip
+ {
+ get => __pbn__ip ?? "";
+ set => __pbn__ip = value;
+ }
+ public bool ShouldSerializeip() => __pbn__ip != null;
+ public void Resetip() => __pbn__ip = null;
+ private string __pbn__ip;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgNetworkDeviceIP6Config : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public global::System.Collections.Generic.List addresses { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List dns_ip { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string gateway_ip
+ {
+ get => __pbn__gateway_ip ?? "";
+ set => __pbn__gateway_ip = value;
+ }
+ public bool ShouldSerializegateway_ip() => __pbn__gateway_ip != null;
+ public void Resetgateway_ip() => __pbn__gateway_ip = null;
+ private string __pbn__gateway_ip;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public bool is_dhcp_enabled
+ {
+ get => __pbn__is_dhcp_enabled.GetValueOrDefault();
+ set => __pbn__is_dhcp_enabled = value;
+ }
+ public bool ShouldSerializeis_dhcp_enabled() => __pbn__is_dhcp_enabled != null;
+ public void Resetis_dhcp_enabled() => __pbn__is_dhcp_enabled = null;
+ private bool? __pbn__is_dhcp_enabled;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public bool is_default_route
+ {
+ get => __pbn__is_default_route.GetValueOrDefault();
+ set => __pbn__is_default_route = value;
+ }
+ public bool ShouldSerializeis_default_route() => __pbn__is_default_route != null;
+ public void Resetis_default_route() => __pbn__is_default_route = null;
+ private bool? __pbn__is_default_route;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ [global::System.ComponentModel.DefaultValue(false)]
+ public bool is_enabled
+ {
+ get => __pbn__is_enabled ?? false;
+ set => __pbn__is_enabled = value;
+ }
+ public bool ShouldSerializeis_enabled() => __pbn__is_enabled != null;
+ public void Resetis_enabled() => __pbn__is_enabled = null;
+ private bool? __pbn__is_enabled;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgNetworkDevicesData : global::ProtoBuf.IExtensible
{
@@ -111,10 +316,10 @@ public string product
private string __pbn__product;
[global::ProtoBuf.ProtoMember(7)]
- public IP4Config ip4 { get; set; }
+ public CMsgNetworkDeviceIP4Config ip4 { get; set; }
[global::ProtoBuf.ProtoMember(8)]
- public IP6Config ip6 { get; set; }
+ public CMsgNetworkDeviceIP6Config ip6 { get; set; }
[global::ProtoBuf.ProtoMember(9)]
public Wired wired { get; set; }
@@ -122,169 +327,6 @@ public string product
[global::ProtoBuf.ProtoMember(10)]
public Wireless wireless { get; set; }
- [global::ProtoBuf.ProtoContract()]
- public partial class IP4Config : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- public global::System.Collections.Generic.List addresses { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoMember(2)]
- public global::System.Collections.Generic.List dns_ip { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoMember(3)]
- public uint gateway_ip
- {
- get => __pbn__gateway_ip.GetValueOrDefault();
- set => __pbn__gateway_ip = value;
- }
- public bool ShouldSerializegateway_ip() => __pbn__gateway_ip != null;
- public void Resetgateway_ip() => __pbn__gateway_ip = null;
- private uint? __pbn__gateway_ip;
-
- [global::ProtoBuf.ProtoMember(4)]
- public bool is_dhcp_enabled
- {
- get => __pbn__is_dhcp_enabled.GetValueOrDefault();
- set => __pbn__is_dhcp_enabled = value;
- }
- public bool ShouldSerializeis_dhcp_enabled() => __pbn__is_dhcp_enabled != null;
- public void Resetis_dhcp_enabled() => __pbn__is_dhcp_enabled = null;
- private bool? __pbn__is_dhcp_enabled;
-
- [global::ProtoBuf.ProtoMember(5)]
- public bool is_default_route
- {
- get => __pbn__is_default_route.GetValueOrDefault();
- set => __pbn__is_default_route = value;
- }
- public bool ShouldSerializeis_default_route() => __pbn__is_default_route != null;
- public void Resetis_default_route() => __pbn__is_default_route = null;
- private bool? __pbn__is_default_route;
-
- [global::ProtoBuf.ProtoMember(6)]
- [global::System.ComponentModel.DefaultValue(false)]
- public bool is_enabled
- {
- get => __pbn__is_enabled ?? false;
- set => __pbn__is_enabled = value;
- }
- public bool ShouldSerializeis_enabled() => __pbn__is_enabled != null;
- public void Resetis_enabled() => __pbn__is_enabled = null;
- private bool? __pbn__is_enabled;
-
- [global::ProtoBuf.ProtoContract()]
- public partial class IP4Address : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- [global::System.ComponentModel.DefaultValue(0)]
- public uint ip
- {
- get => __pbn__ip ?? 0;
- set => __pbn__ip = value;
- }
- public bool ShouldSerializeip() => __pbn__ip != null;
- public void Resetip() => __pbn__ip = null;
- private uint? __pbn__ip;
-
- [global::ProtoBuf.ProtoMember(2)]
- public uint netmask
- {
- get => __pbn__netmask.GetValueOrDefault();
- set => __pbn__netmask = value;
- }
- public bool ShouldSerializenetmask() => __pbn__netmask != null;
- public void Resetnetmask() => __pbn__netmask = null;
- private uint? __pbn__netmask;
-
- }
-
- }
-
- [global::ProtoBuf.ProtoContract()]
- public partial class IP6Config : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- public global::System.Collections.Generic.List addresses { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoMember(2)]
- public global::System.Collections.Generic.List dns_ip { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoMember(3)]
- [global::System.ComponentModel.DefaultValue("")]
- public string gateway_ip
- {
- get => __pbn__gateway_ip ?? "";
- set => __pbn__gateway_ip = value;
- }
- public bool ShouldSerializegateway_ip() => __pbn__gateway_ip != null;
- public void Resetgateway_ip() => __pbn__gateway_ip = null;
- private string __pbn__gateway_ip;
-
- [global::ProtoBuf.ProtoMember(4)]
- public bool is_dhcp_enabled
- {
- get => __pbn__is_dhcp_enabled.GetValueOrDefault();
- set => __pbn__is_dhcp_enabled = value;
- }
- public bool ShouldSerializeis_dhcp_enabled() => __pbn__is_dhcp_enabled != null;
- public void Resetis_dhcp_enabled() => __pbn__is_dhcp_enabled = null;
- private bool? __pbn__is_dhcp_enabled;
-
- [global::ProtoBuf.ProtoMember(5)]
- public bool is_default_route
- {
- get => __pbn__is_default_route.GetValueOrDefault();
- set => __pbn__is_default_route = value;
- }
- public bool ShouldSerializeis_default_route() => __pbn__is_default_route != null;
- public void Resetis_default_route() => __pbn__is_default_route = null;
- private bool? __pbn__is_default_route;
-
- [global::ProtoBuf.ProtoMember(6)]
- [global::System.ComponentModel.DefaultValue(false)]
- public bool is_enabled
- {
- get => __pbn__is_enabled ?? false;
- set => __pbn__is_enabled = value;
- }
- public bool ShouldSerializeis_enabled() => __pbn__is_enabled != null;
- public void Resetis_enabled() => __pbn__is_enabled = null;
- private bool? __pbn__is_enabled;
-
- [global::ProtoBuf.ProtoContract()]
- public partial class IP6Address : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- [global::System.ComponentModel.DefaultValue("")]
- public string ip
- {
- get => __pbn__ip ?? "";
- set => __pbn__ip = value;
- }
- public bool ShouldSerializeip() => __pbn__ip != null;
- public void Resetip() => __pbn__ip = null;
- private string __pbn__ip;
-
- }
-
- }
-
[global::ProtoBuf.ProtoContract()]
public partial class Wired : global::ProtoBuf.IExtensible
{
@@ -417,16 +459,27 @@ public int esecurity
[global::ProtoBuf.ProtoMember(7)]
[global::System.ComponentModel.DefaultValue("")]
- public string cached_credentials
+ public string user_name
{
- get => __pbn__cached_credentials ?? "";
- set => __pbn__cached_credentials = value;
+ get => __pbn__user_name ?? "";
+ set => __pbn__user_name = value;
}
- public bool ShouldSerializecached_credentials() => __pbn__cached_credentials != null;
- public void Resetcached_credentials() => __pbn__cached_credentials = null;
- private string __pbn__cached_credentials;
+ public bool ShouldSerializeuser_name() => __pbn__user_name != null;
+ public void Resetuser_name() => __pbn__user_name = null;
+ private string __pbn__user_name;
[global::ProtoBuf.ProtoMember(8)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string password
+ {
+ get => __pbn__password ?? "";
+ set => __pbn__password = value;
+ }
+ public bool ShouldSerializepassword() => __pbn__password != null;
+ public void Resetpassword() => __pbn__password = null;
+ private string __pbn__password;
+
+ [global::ProtoBuf.ProtoMember(9)]
public int strength_raw
{
get => __pbn__strength_raw.GetValueOrDefault();
@@ -444,6 +497,135 @@ public int strength_raw
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgNetworkDeviceConnect : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(0)]
+ public uint device_id
+ {
+ get => __pbn__device_id ?? 0;
+ set => __pbn__device_id = value;
+ }
+ public bool ShouldSerializedevice_id() => __pbn__device_id != null;
+ public void Resetdevice_id() => __pbn__device_id = null;
+ private uint? __pbn__device_id;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public Credentials credentials { get; set; }
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public CMsgNetworkDeviceIP4Config ip4 { get; set; }
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public CMsgNetworkDeviceIP6Config ip6 { get; set; }
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public KnownAP ap_known
+ {
+ get => __pbn__ap_info.Is(2) ? ((KnownAP)__pbn__ap_info.Object) : default(KnownAP);
+ set => __pbn__ap_info = new global::ProtoBuf.DiscriminatedUnionObject(2, value);
+ }
+ public bool ShouldSerializeap_known() => __pbn__ap_info.Is(2);
+ public void Resetap_known() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__ap_info, 2);
+
+ private global::ProtoBuf.DiscriminatedUnionObject __pbn__ap_info;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public CustomAP ap_custom
+ {
+ get => __pbn__ap_info.Is(3) ? ((CustomAP)__pbn__ap_info.Object) : default(CustomAP);
+ set => __pbn__ap_info = new global::ProtoBuf.DiscriminatedUnionObject(3, value);
+ }
+ public bool ShouldSerializeap_custom() => __pbn__ap_info.Is(3);
+ public void Resetap_custom() => global::ProtoBuf.DiscriminatedUnionObject.Reset(ref __pbn__ap_info, 3);
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class KnownAP : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint ap_id
+ {
+ get => __pbn__ap_id.GetValueOrDefault();
+ set => __pbn__ap_id = value;
+ }
+ public bool ShouldSerializeap_id() => __pbn__ap_id != null;
+ public void Resetap_id() => __pbn__ap_id = null;
+ private uint? __pbn__ap_id;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CustomAP : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string ssid
+ {
+ get => __pbn__ssid ?? "";
+ set => __pbn__ssid = value;
+ }
+ public bool ShouldSerializessid() => __pbn__ssid != null;
+ public void Resetssid() => __pbn__ssid = null;
+ private string __pbn__ssid;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public int esecurity
+ {
+ get => __pbn__esecurity.GetValueOrDefault();
+ set => __pbn__esecurity = value;
+ }
+ public bool ShouldSerializeesecurity() => __pbn__esecurity != null;
+ public void Resetesecurity() => __pbn__esecurity = null;
+ private int? __pbn__esecurity;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class Credentials : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string username
+ {
+ get => __pbn__username ?? "";
+ set => __pbn__username = value;
+ }
+ public bool ShouldSerializeusername() => __pbn__username != null;
+ public void Resetusername() => __pbn__username = null;
+ private string __pbn__username;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string password
+ {
+ get => __pbn__password ?? "";
+ set => __pbn__password = value;
+ }
+ public bool ShouldSerializepassword() => __pbn__password != null;
+ public void Resetpassword() => __pbn__password = null;
+ private string __pbn__password;
+
+ }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgStorageDevicesData : global::ProtoBuf.IExtensible
{
@@ -632,6 +814,39 @@ public bool is_root_device
public void Resetis_root_device() => __pbn__is_root_device = null;
private bool? __pbn__is_root_device;
+ [global::ProtoBuf.ProtoMember(10)]
+ [global::System.ComponentModel.DefaultValue(EStorageBlockContentType.k_EStorageBlockContentType_Invalid)]
+ public EStorageBlockContentType content_type
+ {
+ get => __pbn__content_type ?? EStorageBlockContentType.k_EStorageBlockContentType_Invalid;
+ set => __pbn__content_type = value;
+ }
+ public bool ShouldSerializecontent_type() => __pbn__content_type != null;
+ public void Resetcontent_type() => __pbn__content_type = null;
+ private EStorageBlockContentType? __pbn__content_type;
+
+ [global::ProtoBuf.ProtoMember(11)]
+ [global::System.ComponentModel.DefaultValue(EStorageBlockFileSystemType.k_EStorageBlockFileSystemType_Invalid)]
+ public EStorageBlockFileSystemType filesystem_type
+ {
+ get => __pbn__filesystem_type ?? EStorageBlockFileSystemType.k_EStorageBlockFileSystemType_Invalid;
+ set => __pbn__filesystem_type = value;
+ }
+ public bool ShouldSerializefilesystem_type() => __pbn__filesystem_type != null;
+ public void Resetfilesystem_type() => __pbn__filesystem_type = null;
+ private EStorageBlockFileSystemType? __pbn__filesystem_type;
+
+ [global::ProtoBuf.ProtoMember(12)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string mount_path
+ {
+ get => __pbn__mount_path ?? "";
+ set => __pbn__mount_path = value;
+ }
+ public bool ShouldSerializemount_path() => __pbn__mount_path != null;
+ public void Resetmount_path() => __pbn__mount_path = null;
+ private string __pbn__mount_path;
+
}
}
@@ -870,6 +1085,97 @@ public int strength_raw
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgBluetoothSettings : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public bool is_enabled
+ {
+ get => __pbn__is_enabled.GetValueOrDefault();
+ set => __pbn__is_enabled = value;
+ }
+ public bool ShouldSerializeis_enabled() => __pbn__is_enabled != null;
+ public void Resetis_enabled() => __pbn__is_enabled = null;
+ private bool? __pbn__is_enabled;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgSystemPerfDiagnosticEntry : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string name
+ {
+ get => __pbn__name ?? "";
+ set => __pbn__name = value;
+ }
+ public bool ShouldSerializename() => __pbn__name != null;
+ public void Resetname() => __pbn__name = null;
+ private string __pbn__name;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string value
+ {
+ get => __pbn__value ?? "";
+ set => __pbn__value = value;
+ }
+ public bool ShouldSerializevalue() => __pbn__value != null;
+ public void Resetvalue() => __pbn__value = null;
+ private string __pbn__value;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgSystemPerfDiagnosticInfo : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public global::System.Collections.Generic.List entries { get; } = new global::System.Collections.Generic.List();
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgSystemPerfSettings : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public float diagnostic_update_rate
+ {
+ get => __pbn__diagnostic_update_rate.GetValueOrDefault();
+ set => __pbn__diagnostic_update_rate = value;
+ }
+ public bool ShouldSerializediagnostic_update_rate() => __pbn__diagnostic_update_rate != null;
+ public void Resetdiagnostic_update_rate() => __pbn__diagnostic_update_rate = null;
+ private float? __pbn__diagnostic_update_rate;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public bool is_shark_mode
+ {
+ get => __pbn__is_shark_mode.GetValueOrDefault();
+ set => __pbn__is_shark_mode = value;
+ }
+ public bool ShouldSerializeis_shark_mode() => __pbn__is_shark_mode != null;
+ public void Resetis_shark_mode() => __pbn__is_shark_mode = null;
+ private bool? __pbn__is_shark_mode;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum ECloudPendingRemoteOperation
{
diff --git a/SteamKit2/SteamKit2/Base/Generated/Enums.cs b/SteamKit2/SteamKit2/Base/Generated/Enums.cs
index 954a3e38b..ef905084a 100644
--- a/SteamKit2/SteamKit2/Base/Generated/Enums.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/Enums.cs
@@ -33,6 +33,7 @@ public enum EPublishedFileQueryType
k_PublishedFileQueryType_RankedByLifetimePlaytimeSessions = 18,
k_PublishedFileQueryType_RankedByInappropriateContentRating = 19,
k_PublishedFileQueryType_RankedByBanContentCheck = 20,
+ k_PublishedFileQueryType_RankedByLastUpdatedDate = 21,
}
[global::ProtoBuf.ProtoContract()]
@@ -154,6 +155,25 @@ public enum EBluetoothDeviceType
k_BluetoothDeviceType_Keyboard = 11,
}
+ [global::ProtoBuf.ProtoContract()]
+ public enum EStorageBlockContentType
+ {
+ k_EStorageBlockContentType_Invalid = 0,
+ k_EStorageBlockContentType_Unknown = 1,
+ k_EStorageBlockContentType_FileSystem = 2,
+ k_EStorageBlockContentType_Crypto = 3,
+ k_EStorageBlockContentType_Raid = 4,
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public enum EStorageBlockFileSystemType
+ {
+ k_EStorageBlockFileSystemType_Invalid = 0,
+ k_EStorageBlockFileSystemType_Unknown = 1,
+ k_EStorageBlockFileSystemType_VFat = 2,
+ k_EStorageBlockFileSystemType_Ext4 = 3,
+ }
+
}
#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/CSGO/MsgGC.cs b/SteamKit2/SteamKit2/Base/Generated/GC/CSGO/MsgGC.cs
index 8bdf6ca0c..c60ba5d95 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/CSGO/MsgGC.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/CSGO/MsgGC.cs
@@ -2008,6 +2008,16 @@ public bool prime_only
public void Resetprime_only() => __pbn__prime_only = null;
private bool? __pbn__prime_only;
+ [global::ProtoBuf.ProtoMember(7)]
+ public uint tv_control
+ {
+ get => __pbn__tv_control.GetValueOrDefault();
+ set => __pbn__tv_control = value;
+ }
+ public bool ShouldSerializetv_control() => __pbn__tv_control != null;
+ public void Resettv_control() => __pbn__tv_control = null;
+ private uint? __pbn__tv_control;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -2932,6 +2942,16 @@ public bool b_switched_teams
[global::ProtoBuf.ProtoMember(30)]
public global::System.Collections.Generic.List team_spawn_count { get; } = new global::System.Collections.Generic.List();
+ [global::ProtoBuf.ProtoMember(31)]
+ public uint max_rounds
+ {
+ get => __pbn__max_rounds.GetValueOrDefault();
+ set => __pbn__max_rounds = value;
+ }
+ public bool ShouldSerializemax_rounds() => __pbn__max_rounds != null;
+ public void Resetmax_rounds() => __pbn__max_rounds = null;
+ private uint? __pbn__max_rounds;
+
[global::ProtoBuf.ProtoContract()]
public partial class DropInfo : global::ProtoBuf.IExtensible
{
@@ -6742,6 +6762,16 @@ public uint loc
public void Resetloc() => __pbn__loc = null;
private uint? __pbn__loc;
+ [global::ProtoBuf.ProtoMember(7)]
+ public uint accountid
+ {
+ get => __pbn__accountid.GetValueOrDefault();
+ set => __pbn__accountid = value;
+ }
+ public bool ShouldSerializeaccountid() => __pbn__accountid != null;
+ public void Resetaccountid() => __pbn__accountid = null;
+ private uint? __pbn__accountid;
+
}
}
@@ -7609,6 +7639,199 @@ public string module
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCCStrike15_v2_GC2ClientInitSystem : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public bool load
+ {
+ get => __pbn__load.GetValueOrDefault();
+ set => __pbn__load = value;
+ }
+ public bool ShouldSerializeload() => __pbn__load != null;
+ public void Resetload() => __pbn__load = null;
+ private bool? __pbn__load;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string name
+ {
+ get => __pbn__name ?? "";
+ set => __pbn__name = value;
+ }
+ public bool ShouldSerializename() => __pbn__name != null;
+ public void Resetname() => __pbn__name = null;
+ private string __pbn__name;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string outputname
+ {
+ get => __pbn__outputname ?? "";
+ set => __pbn__outputname = value;
+ }
+ public bool ShouldSerializeoutputname() => __pbn__outputname != null;
+ public void Resetoutputname() => __pbn__outputname = null;
+ private string __pbn__outputname;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public byte[] key_data
+ {
+ get => __pbn__key_data;
+ set => __pbn__key_data = value;
+ }
+ public bool ShouldSerializekey_data() => __pbn__key_data != null;
+ public void Resetkey_data() => __pbn__key_data = null;
+ private byte[] __pbn__key_data;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public byte[] sha_hash
+ {
+ get => __pbn__sha_hash;
+ set => __pbn__sha_hash = value;
+ }
+ public bool ShouldSerializesha_hash() => __pbn__sha_hash != null;
+ public void Resetsha_hash() => __pbn__sha_hash = null;
+ private byte[] __pbn__sha_hash;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public int cookie
+ {
+ get => __pbn__cookie.GetValueOrDefault();
+ set => __pbn__cookie = value;
+ }
+ public bool ShouldSerializecookie() => __pbn__cookie != null;
+ public void Resetcookie() => __pbn__cookie = null;
+ private int? __pbn__cookie;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string manifest
+ {
+ get => __pbn__manifest ?? "";
+ set => __pbn__manifest = value;
+ }
+ public bool ShouldSerializemanifest() => __pbn__manifest != null;
+ public void Resetmanifest() => __pbn__manifest = null;
+ private string __pbn__manifest;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCCStrike15_v2_GC2ClientInitSystem_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public bool success
+ {
+ get => __pbn__success.GetValueOrDefault();
+ set => __pbn__success = value;
+ }
+ public bool ShouldSerializesuccess() => __pbn__success != null;
+ public void Resetsuccess() => __pbn__success = null;
+ private bool? __pbn__success;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string diagnostic
+ {
+ get => __pbn__diagnostic ?? "";
+ set => __pbn__diagnostic = value;
+ }
+ public bool ShouldSerializediagnostic() => __pbn__diagnostic != null;
+ public void Resetdiagnostic() => __pbn__diagnostic = null;
+ private string __pbn__diagnostic;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public byte[] sha_hash
+ {
+ get => __pbn__sha_hash;
+ set => __pbn__sha_hash = value;
+ }
+ public bool ShouldSerializesha_hash() => __pbn__sha_hash != null;
+ public void Resetsha_hash() => __pbn__sha_hash = null;
+ private byte[] __pbn__sha_hash;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public int response
+ {
+ get => __pbn__response.GetValueOrDefault();
+ set => __pbn__response = value;
+ }
+ public bool ShouldSerializeresponse() => __pbn__response != null;
+ public void Resetresponse() => __pbn__response = null;
+ private int? __pbn__response;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public int error_code1
+ {
+ get => __pbn__error_code1.GetValueOrDefault();
+ set => __pbn__error_code1 = value;
+ }
+ public bool ShouldSerializeerror_code1() => __pbn__error_code1 != null;
+ public void Reseterror_code1() => __pbn__error_code1 = null;
+ private int? __pbn__error_code1;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public int error_code2
+ {
+ get => __pbn__error_code2.GetValueOrDefault();
+ set => __pbn__error_code2 = value;
+ }
+ public bool ShouldSerializeerror_code2() => __pbn__error_code2 != null;
+ public void Reseterror_code2() => __pbn__error_code2 = null;
+ private int? __pbn__error_code2;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ public long handle
+ {
+ get => __pbn__handle.GetValueOrDefault();
+ set => __pbn__handle = value;
+ }
+ public bool ShouldSerializehandle() => __pbn__handle != null;
+ public void Resethandle() => __pbn__handle = null;
+ private long? __pbn__handle;
+
+ [global::ProtoBuf.ProtoMember(8)]
+ [global::System.ComponentModel.DefaultValue(EInitSystemResult.k_EInitSystemResult_Invalid)]
+ public EInitSystemResult einit_result
+ {
+ get => __pbn__einit_result ?? EInitSystemResult.k_EInitSystemResult_Invalid;
+ set => __pbn__einit_result = value;
+ }
+ public bool ShouldSerializeeinit_result() => __pbn__einit_result != null;
+ public void Reseteinit_result() => __pbn__einit_result = null;
+ private EInitSystemResult? __pbn__einit_result;
+
+ [global::ProtoBuf.ProtoMember(9)]
+ public int aux_system1
+ {
+ get => __pbn__aux_system1.GetValueOrDefault();
+ set => __pbn__aux_system1 = value;
+ }
+ public bool ShouldSerializeaux_system1() => __pbn__aux_system1 != null;
+ public void Resetaux_system1() => __pbn__aux_system1 = null;
+ private int? __pbn__aux_system1;
+
+ [global::ProtoBuf.ProtoMember(10)]
+ public int aux_system2
+ {
+ get => __pbn__aux_system2.GetValueOrDefault();
+ set => __pbn__aux_system2 = value;
+ }
+ public bool ShouldSerializeaux_system2() => __pbn__aux_system2 != null;
+ public void Resetaux_system2() => __pbn__aux_system2 = null;
+ private int? __pbn__aux_system2;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum ECsgoGCMsg
{
@@ -7707,6 +7930,9 @@ public enum ECsgoGCMsg
k_EMsgGCCStrike15_v2_ClientRedeemMissionReward = 9209,
k_EMsgGCCStrike15_ClientDeepStats = 9210,
k_EMsgGCCStrike15_StartAgreementSessionInGame = 9211,
+ k_EMsgGCCStrike15_v2_GC2ClientInitSystem = 9212,
+ k_EMsgGCCStrike15_v2_GC2ClientInitSystem_Response = 9213,
+ k_EMsgGCCStrike15_v2_PrivateQueues = 9214,
}
[global::ProtoBuf.ProtoContract()]
@@ -7725,6 +7951,20 @@ public enum EClientReportingVersion
k_EClientReportingVersion_SupportsTrustedMode = 2,
}
+ [global::ProtoBuf.ProtoContract()]
+ public enum EInitSystemResult
+ {
+ k_EInitSystemResult_Invalid = 0,
+ k_EInitSystemResult_Success = 1,
+ k_EInitSystemResult_None = 2,
+ k_EInitSystemResult_NotFound = 3,
+ k_EInitSystemResult_Existing = 4,
+ k_EInitSystemResult_FailedOpen = 5,
+ k_EInitSystemResult_Mismatch = 6,
+ k_EInitSystemResult_FailedInit = 7,
+ k_EInitSystemResult_Max = 8,
+ }
+
}
#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClient.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClient.cs
index bb05bb6a1..c050f2b6a 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClient.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClient.cs
@@ -4793,115 +4793,115 @@ public partial class CMsgGCNotificationsRequest : global::ProtoBuf.IExtensible
}
[global::ProtoBuf.ProtoContract()]
- public partial class CMsgGCNotificationsResponse : global::ProtoBuf.IExtensible
+ public partial class CMsgGCNotifications_Notification : global::ProtoBuf.IExtensible
{
private global::ProtoBuf.IExtension __pbn__extensionData;
global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
=> global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
[global::ProtoBuf.ProtoMember(1)]
- [global::System.ComponentModel.DefaultValue(EResult.SUCCESS)]
- public EResult result
+ public ulong id
{
- get => __pbn__result ?? EResult.SUCCESS;
- set => __pbn__result = value;
+ get => __pbn__id.GetValueOrDefault();
+ set => __pbn__id = value;
}
- public bool ShouldSerializeresult() => __pbn__result != null;
- public void Resetresult() => __pbn__result = null;
- private EResult? __pbn__result;
+ public bool ShouldSerializeid() => __pbn__id != null;
+ public void Resetid() => __pbn__id = null;
+ private ulong? __pbn__id;
[global::ProtoBuf.ProtoMember(2)]
- public global::System.Collections.Generic.List notifications { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoContract()]
- public partial class Notification : global::ProtoBuf.IExtensible
+ public uint type
{
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+ get => __pbn__type.GetValueOrDefault();
+ set => __pbn__type = value;
+ }
+ public bool ShouldSerializetype() => __pbn__type != null;
+ public void Resettype() => __pbn__type = null;
+ private uint? __pbn__type;
- [global::ProtoBuf.ProtoMember(1)]
- public ulong id
- {
- get => __pbn__id.GetValueOrDefault();
- set => __pbn__id = value;
- }
- public bool ShouldSerializeid() => __pbn__id != null;
- public void Resetid() => __pbn__id = null;
- private ulong? __pbn__id;
+ [global::ProtoBuf.ProtoMember(3)]
+ public uint timestamp
+ {
+ get => __pbn__timestamp.GetValueOrDefault();
+ set => __pbn__timestamp = value;
+ }
+ public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
+ public void Resettimestamp() => __pbn__timestamp = null;
+ private uint? __pbn__timestamp;
- [global::ProtoBuf.ProtoMember(2)]
- public uint type
- {
- get => __pbn__type.GetValueOrDefault();
- set => __pbn__type = value;
- }
- public bool ShouldSerializetype() => __pbn__type != null;
- public void Resettype() => __pbn__type = null;
- private uint? __pbn__type;
+ [global::ProtoBuf.ProtoMember(4)]
+ public uint reference_a
+ {
+ get => __pbn__reference_a.GetValueOrDefault();
+ set => __pbn__reference_a = value;
+ }
+ public bool ShouldSerializereference_a() => __pbn__reference_a != null;
+ public void Resetreference_a() => __pbn__reference_a = null;
+ private uint? __pbn__reference_a;
- [global::ProtoBuf.ProtoMember(3)]
- public uint timestamp
- {
- get => __pbn__timestamp.GetValueOrDefault();
- set => __pbn__timestamp = value;
- }
- public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
- public void Resettimestamp() => __pbn__timestamp = null;
- private uint? __pbn__timestamp;
+ [global::ProtoBuf.ProtoMember(5)]
+ public uint reference_b
+ {
+ get => __pbn__reference_b.GetValueOrDefault();
+ set => __pbn__reference_b = value;
+ }
+ public bool ShouldSerializereference_b() => __pbn__reference_b != null;
+ public void Resetreference_b() => __pbn__reference_b = null;
+ private uint? __pbn__reference_b;
- [global::ProtoBuf.ProtoMember(4)]
- public uint reference_a
- {
- get => __pbn__reference_a.GetValueOrDefault();
- set => __pbn__reference_a = value;
- }
- public bool ShouldSerializereference_a() => __pbn__reference_a != null;
- public void Resetreference_a() => __pbn__reference_a = null;
- private uint? __pbn__reference_a;
+ [global::ProtoBuf.ProtoMember(6)]
+ public uint reference_c
+ {
+ get => __pbn__reference_c.GetValueOrDefault();
+ set => __pbn__reference_c = value;
+ }
+ public bool ShouldSerializereference_c() => __pbn__reference_c != null;
+ public void Resetreference_c() => __pbn__reference_c = null;
+ private uint? __pbn__reference_c;
- [global::ProtoBuf.ProtoMember(5)]
- public uint reference_b
- {
- get => __pbn__reference_b.GetValueOrDefault();
- set => __pbn__reference_b = value;
- }
- public bool ShouldSerializereference_b() => __pbn__reference_b != null;
- public void Resetreference_b() => __pbn__reference_b = null;
- private uint? __pbn__reference_b;
+ [global::ProtoBuf.ProtoMember(7)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string message
+ {
+ get => __pbn__message ?? "";
+ set => __pbn__message = value;
+ }
+ public bool ShouldSerializemessage() => __pbn__message != null;
+ public void Resetmessage() => __pbn__message = null;
+ private string __pbn__message;
- [global::ProtoBuf.ProtoMember(6)]
- public uint reference_c
- {
- get => __pbn__reference_c.GetValueOrDefault();
- set => __pbn__reference_c = value;
- }
- public bool ShouldSerializereference_c() => __pbn__reference_c != null;
- public void Resetreference_c() => __pbn__reference_c = null;
- private uint? __pbn__reference_c;
+ [global::ProtoBuf.ProtoMember(8)]
+ public bool unread
+ {
+ get => __pbn__unread.GetValueOrDefault();
+ set => __pbn__unread = value;
+ }
+ public bool ShouldSerializeunread() => __pbn__unread != null;
+ public void Resetunread() => __pbn__unread = null;
+ private bool? __pbn__unread;
- [global::ProtoBuf.ProtoMember(7)]
- [global::System.ComponentModel.DefaultValue("")]
- public string message
- {
- get => __pbn__message ?? "";
- set => __pbn__message = value;
- }
- public bool ShouldSerializemessage() => __pbn__message != null;
- public void Resetmessage() => __pbn__message = null;
- private string __pbn__message;
+ }
- [global::ProtoBuf.ProtoMember(8)]
- public bool unread
- {
- get => __pbn__unread.GetValueOrDefault();
- set => __pbn__unread = value;
- }
- public bool ShouldSerializeunread() => __pbn__unread != null;
- public void Resetunread() => __pbn__unread = null;
- private bool? __pbn__unread;
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCNotificationsUpdate : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(EResult.SUCCESS)]
+ public EResult result
+ {
+ get => __pbn__result ?? EResult.SUCCESS;
+ set => __pbn__result = value;
}
+ public bool ShouldSerializeresult() => __pbn__result != null;
+ public void Resetresult() => __pbn__result = null;
+ private EResult? __pbn__result;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List notifications { get; } = new global::System.Collections.Generic.List();
[global::ProtoBuf.ProtoContract()]
public enum EResult
@@ -4912,6 +4912,18 @@ public enum EResult
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCNotificationsResponse : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public CMsgGCNotificationsUpdate update { get; set; }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgGCNotificationsMarkReadRequest : global::ProtoBuf.IExtensible
{
@@ -7766,47 +7778,6 @@ public bool result
}
- [global::ProtoBuf.ProtoContract()]
- public partial class CMsgMVPVotesForMatch : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- public global::System.Collections.Generic.List players { get; } = new global::System.Collections.Generic.List();
-
- [global::ProtoBuf.ProtoContract()]
- public partial class Player : global::ProtoBuf.IExtensible
- {
- private global::ProtoBuf.IExtension __pbn__extensionData;
- global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
- => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
-
- [global::ProtoBuf.ProtoMember(1)]
- public uint account_id
- {
- get => __pbn__account_id.GetValueOrDefault();
- set => __pbn__account_id = value;
- }
- public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
- public void Resetaccount_id() => __pbn__account_id = null;
- private uint? __pbn__account_id;
-
- [global::ProtoBuf.ProtoMember(2)]
- public uint vote_count
- {
- get => __pbn__vote_count.GetValueOrDefault();
- set => __pbn__vote_count = value;
- }
- public bool ShouldSerializevote_count() => __pbn__vote_count != null;
- public void Resetvote_count() => __pbn__vote_count = null;
- private uint? __pbn__vote_count;
-
- }
-
- }
-
[global::ProtoBuf.ProtoContract()]
public partial class CMsgClientToGCTeammateStatsRequest : global::ProtoBuf.IExtensible
{
@@ -8930,6 +8901,16 @@ public ulong player_card_pack_item_id
public void Resetplayer_card_pack_item_id() => __pbn__player_card_pack_item_id = null;
private ulong? __pbn__player_card_pack_item_id;
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint team_id
+ {
+ get => __pbn__team_id.GetValueOrDefault();
+ set => __pbn__team_id = value;
+ }
+ public bool ShouldSerializeteam_id() => __pbn__team_id != null;
+ public void Resetteam_id() => __pbn__team_id = null;
+ private uint? __pbn__team_id;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -8961,6 +8942,8 @@ public enum Result
ERROR_FAILED_TO_FIND_PACK = 3,
ERROR_ITEM_NOT_CARD_PACK = 4,
ERROR_FAILED_CARD_CREATE = 5,
+ ERROR_INVALID_TEAM_ID_ATTRIBUTE = 6,
+ ERROR_INVALID_TEAM_ID = 7,
}
}
@@ -9093,6 +9076,8 @@ public enum Result
ERROR_INSUFFICIENT_DUST = 3,
ERROR_ITEM_NOT_DUST_ITEM = 4,
ERROR_FAILED_CARD_PACK_CREATE = 5,
+ ERROR_NO_CARD_PACK = 6,
+ ERROR_NOT_AVAILABLE = 7,
}
}
@@ -9172,6 +9157,8 @@ public enum Result
ERROR_INSUFFICIENT_DUST = 3,
ERROR_ITEM_NOT_DUST_ITEM = 4,
ERROR_FAILED_CARD_PACK_CREATE = 5,
+ ERROR_NO_CARD_PACK = 6,
+ ERROR_NOT_AVAILABLE = 7,
}
}
@@ -14190,6 +14177,7 @@ public enum Result
ERROR_INSUFFICIENT_DUST = 3,
ERROR_ITEM_NOT_DUST_ITEM = 4,
ERROR_FAILED_CARD_PACK_CREATE = 5,
+ ERROR_NOT_AVAILABLE = 6,
}
}
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientFantasy.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientFantasy.cs
index 3acde8963..c79faf033 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientFantasy.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientFantasy.cs
@@ -160,6 +160,17 @@ public string team_url_logo
[global::ProtoBuf.ProtoMember(16)]
public global::System.Collections.Generic.List audit_entries { get; } = new global::System.Collections.Generic.List();
+ [global::ProtoBuf.ProtoMember(17)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string team_abbreviation
+ {
+ get => __pbn__team_abbreviation ?? "";
+ set => __pbn__team_abbreviation = value;
+ }
+ public bool ShouldSerializeteam_abbreviation() => __pbn__team_abbreviation != null;
+ public void Resetteam_abbreviation() => __pbn__team_abbreviation = null;
+ private string __pbn__team_abbreviation;
+
[global::ProtoBuf.ProtoContract()]
public partial class Results : global::ProtoBuf.IExtensible
{
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientTeam.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientTeam.cs
index 98faa2d2a..9129e0384 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientTeam.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCClientTeam.cs
@@ -961,6 +961,28 @@ public string pro_name
public void Resetpro_name() => __pbn__pro_name = null;
private string __pbn__pro_name;
+ [global::ProtoBuf.ProtoMember(8)]
+ [global::System.ComponentModel.DefaultValue(Fantasy_Roles.FANTASY_ROLE_UNDEFINED)]
+ public Fantasy_Roles role
+ {
+ get => __pbn__role ?? Fantasy_Roles.FANTASY_ROLE_UNDEFINED;
+ set => __pbn__role = value;
+ }
+ public bool ShouldSerializerole() => __pbn__role != null;
+ public void Resetrole() => __pbn__role = null;
+ private Fantasy_Roles? __pbn__role;
+
+ [global::ProtoBuf.ProtoMember(9)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string real_name
+ {
+ get => __pbn__real_name ?? "";
+ set => __pbn__real_name = value;
+ }
+ public bool ShouldSerializereal_name() => __pbn__real_name != null;
+ public void Resetreal_name() => __pbn__real_name = null;
+ private string __pbn__real_name;
+
}
[global::ProtoBuf.ProtoContract()]
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCCommon.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCCommon.cs
index 379ee11e4..404ec697e 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCCommon.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCCommon.cs
@@ -6035,6 +6035,62 @@ public ulong match_id
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgLeagueWatchedGames : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public global::System.Collections.Generic.List leagues { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class Series : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint node_id
+ {
+ get => __pbn__node_id.GetValueOrDefault();
+ set => __pbn__node_id = value;
+ }
+ public bool ShouldSerializenode_id() => __pbn__node_id != null;
+ public void Resetnode_id() => __pbn__node_id = null;
+ private uint? __pbn__node_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List game { get; } = new global::System.Collections.Generic.List();
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class League : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint league_id
+ {
+ get => __pbn__league_id.GetValueOrDefault();
+ set => __pbn__league_id = value;
+ }
+ public bool ShouldSerializeleague_id() => __pbn__league_id != null;
+ public void Resetleague_id() => __pbn__league_id = null;
+ private uint? __pbn__league_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List series { get; } = new global::System.Collections.Generic.List();
+
+ }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgDOTAMatch : global::ProtoBuf.IExtensible
{
@@ -9076,6 +9132,35 @@ public uint hero_id
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgServerToGCRequestPlayerRecentAccomplishments : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint account_id
+ {
+ get => __pbn__account_id.GetValueOrDefault();
+ set => __pbn__account_id = value;
+ }
+ public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
+ public void Resetaccount_id() => __pbn__account_id = null;
+ private uint? __pbn__account_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint hero_id
+ {
+ get => __pbn__hero_id.GetValueOrDefault();
+ set => __pbn__hero_id = value;
+ }
+ public bool ShouldSerializehero_id() => __pbn__hero_id != null;
+ public void Resethero_id() => __pbn__hero_id = null;
+ private uint? __pbn__hero_id;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgRequestPlayerRecentAccomplishmentsResponse : global::ProtoBuf.IExtensible
{
@@ -9108,6 +9193,38 @@ public enum EResponse
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(EResponse.k_eInternalError)]
+ public EResponse result
+ {
+ get => __pbn__result ?? EResponse.k_eInternalError;
+ set => __pbn__result = value;
+ }
+ public bool ShouldSerializeresult() => __pbn__result != null;
+ public void Resetresult() => __pbn__result = null;
+ private EResponse? __pbn__result;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public CMsgRecentAccomplishments player_accomplishments { get; set; }
+
+ [global::ProtoBuf.ProtoContract()]
+ public enum EResponse
+ {
+ k_eInternalError = 0,
+ k_eSuccess = 1,
+ k_eTooBusy = 2,
+ k_eDisabled = 3,
+ }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgArcanaVoteMatchVotes : global::ProtoBuf.IExtensible
{
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCMsgId.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCMsgId.cs
index 59f402055..8aa9de087 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCMsgId.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCMsgId.cs
@@ -976,6 +976,10 @@ public enum EDOTAGCMsg
k_EMsgServerToGCCompendiumChosenInGamePredictions = 8809,
k_EMsgClientToGCCreateTeamPlayerCardPack = 8810,
k_EMsgClientToGCCreateTeamPlayerCardPackResponse = 8811,
+ k_EMsgGCToServerSubmitCheerData = 8812,
+ k_EMsgGCToServerCheerConfig = 8813,
+ k_EMsgServerToGCGetCheerConfig = 8814,
+ k_EMsgServerToGCGetCheerConfigResponse = 8815,
}
}
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCServer.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCServer.cs
index 78b010898..c9d49cd81 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCServer.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgGCServer.cs
@@ -8911,6 +8911,197 @@ public bool consumes_periodic_resource
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCToServerCheerData : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint radiant_cheers
+ {
+ get => __pbn__radiant_cheers.GetValueOrDefault();
+ set => __pbn__radiant_cheers = value;
+ }
+ public bool ShouldSerializeradiant_cheers() => __pbn__radiant_cheers != null;
+ public void Resetradiant_cheers() => __pbn__radiant_cheers = null;
+ private uint? __pbn__radiant_cheers;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint dire_cheers
+ {
+ get => __pbn__dire_cheers.GetValueOrDefault();
+ set => __pbn__dire_cheers = value;
+ }
+ public bool ShouldSerializedire_cheers() => __pbn__dire_cheers != null;
+ public void Resetdire_cheers() => __pbn__dire_cheers = null;
+ private uint? __pbn__dire_cheers;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public uint radiant_premium_cheers
+ {
+ get => __pbn__radiant_premium_cheers.GetValueOrDefault();
+ set => __pbn__radiant_premium_cheers = value;
+ }
+ public bool ShouldSerializeradiant_premium_cheers() => __pbn__radiant_premium_cheers != null;
+ public void Resetradiant_premium_cheers() => __pbn__radiant_premium_cheers = null;
+ private uint? __pbn__radiant_premium_cheers;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public uint dire_premium_cheers
+ {
+ get => __pbn__dire_premium_cheers.GetValueOrDefault();
+ set => __pbn__dire_premium_cheers = value;
+ }
+ public bool ShouldSerializedire_premium_cheers() => __pbn__dire_premium_cheers != null;
+ public void Resetdire_premium_cheers() => __pbn__dire_premium_cheers = null;
+ private uint? __pbn__dire_premium_cheers;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgCheerConfig : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public bool cheers_enabled
+ {
+ get => __pbn__cheers_enabled.GetValueOrDefault();
+ set => __pbn__cheers_enabled = value;
+ }
+ public bool ShouldSerializecheers_enabled() => __pbn__cheers_enabled != null;
+ public void Resetcheers_enabled() => __pbn__cheers_enabled = null;
+ private bool? __pbn__cheers_enabled;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public bool is_valid_league_id
+ {
+ get => __pbn__is_valid_league_id.GetValueOrDefault();
+ set => __pbn__is_valid_league_id = value;
+ }
+ public bool ShouldSerializeis_valid_league_id() => __pbn__is_valid_league_id != null;
+ public void Resetis_valid_league_id() => __pbn__is_valid_league_id = null;
+ private bool? __pbn__is_valid_league_id;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public float window_duration
+ {
+ get => __pbn__window_duration.GetValueOrDefault();
+ set => __pbn__window_duration = value;
+ }
+ public bool ShouldSerializewindow_duration() => __pbn__window_duration != null;
+ public void Resetwindow_duration() => __pbn__window_duration = null;
+ private float? __pbn__window_duration;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public uint window_bucket_count
+ {
+ get => __pbn__window_bucket_count.GetValueOrDefault();
+ set => __pbn__window_bucket_count = value;
+ }
+ public bool ShouldSerializewindow_bucket_count() => __pbn__window_bucket_count != null;
+ public void Resetwindow_bucket_count() => __pbn__window_bucket_count = null;
+ private uint? __pbn__window_bucket_count;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public float premium_value
+ {
+ get => __pbn__premium_value.GetValueOrDefault();
+ set => __pbn__premium_value = value;
+ }
+ public bool ShouldSerializepremium_value() => __pbn__premium_value != null;
+ public void Resetpremium_value() => __pbn__premium_value = null;
+ private float? __pbn__premium_value;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public float crowd_level_push_time
+ {
+ get => __pbn__crowd_level_push_time.GetValueOrDefault();
+ set => __pbn__crowd_level_push_time = value;
+ }
+ public bool ShouldSerializecrowd_level_push_time() => __pbn__crowd_level_push_time != null;
+ public void Resetcrowd_level_push_time() => __pbn__crowd_level_push_time = null;
+ private float? __pbn__crowd_level_push_time;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ public float initial_high_crowd_level
+ {
+ get => __pbn__initial_high_crowd_level.GetValueOrDefault();
+ set => __pbn__initial_high_crowd_level = value;
+ }
+ public bool ShouldSerializeinitial_high_crowd_level() => __pbn__initial_high_crowd_level != null;
+ public void Resetinitial_high_crowd_level() => __pbn__initial_high_crowd_level = null;
+ private float? __pbn__initial_high_crowd_level;
+
+ [global::ProtoBuf.ProtoMember(8)]
+ public float minimum_high_crowd_level
+ {
+ get => __pbn__minimum_high_crowd_level.GetValueOrDefault();
+ set => __pbn__minimum_high_crowd_level = value;
+ }
+ public bool ShouldSerializeminimum_high_crowd_level() => __pbn__minimum_high_crowd_level != null;
+ public void Resetminimum_high_crowd_level() => __pbn__minimum_high_crowd_level = null;
+ private float? __pbn__minimum_high_crowd_level;
+
+ [global::ProtoBuf.ProtoMember(9)]
+ public float crowd_level_decay
+ {
+ get => __pbn__crowd_level_decay.GetValueOrDefault();
+ set => __pbn__crowd_level_decay = value;
+ }
+ public bool ShouldSerializecrowd_level_decay() => __pbn__crowd_level_decay != null;
+ public void Resetcrowd_level_decay() => __pbn__crowd_level_decay = null;
+ private float? __pbn__crowd_level_decay;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCToServerCheerConfig : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public CMsgCheerConfig cheer_config { get; set; }
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgServerToGCGetCheerConfig : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint league_id
+ {
+ get => __pbn__league_id.GetValueOrDefault();
+ set => __pbn__league_id = value;
+ }
+ public bool ShouldSerializeleague_id() => __pbn__league_id != null;
+ public void Resetleague_id() => __pbn__league_id = null;
+ private uint? __pbn__league_id;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgServerToGCGetCheerConfigResponse : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public CMsgCheerConfig cheer_config { get; set; }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum EPoorNetworkConditionsType
{
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgSharedEnums.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgSharedEnums.cs
index 14b7be679..f86d8d65d 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgSharedEnums.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/MsgSharedEnums.cs
@@ -1115,7 +1115,8 @@ public enum DOTA_GameState
DOTA_GAMERULES_STATE_TEAM_SHOWCASE = 8,
DOTA_GAMERULES_STATE_CUSTOM_GAME_SETUP = 9,
DOTA_GAMERULES_STATE_WAIT_FOR_MAP_TO_LOAD = 10,
- DOTA_GAMERULES_STATE_LAST = 11,
+ DOTA_GAMERULES_STATE_SCENARIO_SETUP = 11,
+ DOTA_GAMERULES_STATE_LAST = 12,
}
[global::ProtoBuf.ProtoContract()]
@@ -1165,7 +1166,8 @@ public enum EEvent
EVENT_ID_TEAM_FANDOM = 30,
EVENT_ID_DIRETIDE_2020 = 31,
EVENT_ID_SPRING_2021 = 32,
- EVENT_ID_COUNT = 33,
+ EVENT_ID_FALL_2021 = 33,
+ EVENT_ID_COUNT = 34,
}
[global::ProtoBuf.ProtoContract()]
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/NetworkConnection.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/NetworkConnection.cs
index 742057337..b7b911bb9 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/NetworkConnection.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/NetworkConnection.cs
@@ -119,6 +119,18 @@ public enum ENetworkDisconnectionReason
NETWORK_DISCONNECT_REJECT_SERVERAUTHDISABLED = 147,
NETWORK_DISCONNECT_REJECT_SERVERCDKEYAUTHINVALID = 148,
NETWORK_DISCONNECT_REJECT_BANNED = 149,
+ NETWORK_DISCONNECT_KICKED_TEAMKILLING = 150,
+ NETWORK_DISCONNECT_KICKED_TK_START = 151,
+ NETWORK_DISCONNECT_KICKED_UNTRUSTEDACCOUNT = 152,
+ NETWORK_DISCONNECT_KICKED_CONVICTEDACCOUNT = 153,
+ NETWORK_DISCONNECT_KICKED_COMPETITIVECOOLDOWN = 154,
+ NETWORK_DISCONNECT_KICKED_TEAMHURTING = 155,
+ NETWORK_DISCONNECT_KICKED_HOSTAGEKILLING = 156,
+ NETWORK_DISCONNECT_KICKED_VOTEDOFF = 157,
+ NETWORK_DISCONNECT_KICKED_IDLE = 158,
+ NETWORK_DISCONNECT_KICKED_SUICIDE = 159,
+ NETWORK_DISCONNECT_KICKED_NOSTEAMLOGIN = 160,
+ NETWORK_DISCONNECT_KICKED_NOSTEAMTICKET = 161,
}
}
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgBase.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgBase.cs
index f0f655f10..155386b21 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgBase.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgBase.cs
@@ -3743,6 +3743,79 @@ public bool ismember
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCHAppCheersReceived : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint appid
+ {
+ get => __pbn__appid.GetValueOrDefault();
+ set => __pbn__appid = value;
+ }
+ public bool ShouldSerializeappid() => __pbn__appid != null;
+ public void Resetappid() => __pbn__appid = null;
+ private uint? __pbn__appid;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List cheer_targets { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CheerTypeAmount : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint cheer_type
+ {
+ get => __pbn__cheer_type.GetValueOrDefault();
+ set => __pbn__cheer_type = value;
+ }
+ public bool ShouldSerializecheer_type() => __pbn__cheer_type != null;
+ public void Resetcheer_type() => __pbn__cheer_type = null;
+ private uint? __pbn__cheer_type;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint cheer_amount
+ {
+ get => __pbn__cheer_amount.GetValueOrDefault();
+ set => __pbn__cheer_amount = value;
+ }
+ public bool ShouldSerializecheer_amount() => __pbn__cheer_amount != null;
+ public void Resetcheer_amount() => __pbn__cheer_amount = null;
+ private uint? __pbn__cheer_amount;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CheerTarget : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public ulong cheer_target
+ {
+ get => __pbn__cheer_target.GetValueOrDefault();
+ set => __pbn__cheer_target = value;
+ }
+ public bool ShouldSerializecheer_target() => __pbn__cheer_target != null;
+ public void Resetcheer_target() => __pbn__cheer_target = null;
+ private ulong? __pbn__cheer_target;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List cheer_types { get; } = new global::System.Collections.Generic.List();
+
+ }
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CGCSystemMsg_ReportExternalPurchase_Request : global::ProtoBuf.IExtensible
{
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgGCEcon.cs b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgGCEcon.cs
index dff655417..a102982fe 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgGCEcon.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/Dota/SteamMsgGCEcon.cs
@@ -1147,6 +1147,31 @@ public ulong audit_data
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgGCToGCBetaDeleteItems : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint account_id
+ {
+ get => __pbn__account_id.GetValueOrDefault();
+ set => __pbn__account_id = value;
+ }
+ public bool ShouldSerializeaccount_id() => __pbn__account_id != null;
+ public void Resetaccount_id() => __pbn__account_id = null;
+ private uint? __pbn__account_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public global::System.Collections.Generic.List item_ids { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public global::System.Collections.Generic.List item_defs { get; } = new global::System.Collections.Generic.List();
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CMsgGCToGCGrantSelfMadeItemToAccount : global::ProtoBuf.IExtensible
{
@@ -4626,6 +4651,7 @@ public enum EGCItemMsg
k_EMsgGCToGCPurchaseSucceeded = 2608,
k_EMsgClientToGCGetLimitedItemPurchaseQuantity = 2609,
k_EMsgClientToGCGetLimitedItemPurchaseQuantityResponse = 2610,
+ k_EMsgGCToGCBetaDeleteItems = 2611,
}
[global::ProtoBuf.ProtoContract()]
diff --git a/SteamKit2/SteamKit2/Base/Generated/GC/TF2/MsgGC.cs b/SteamKit2/SteamKit2/Base/Generated/GC/TF2/MsgGC.cs
index d3b5c5173..9b6ceab09 100644
--- a/SteamKit2/SteamKit2/Base/Generated/GC/TF2/MsgGC.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/GC/TF2/MsgGC.cs
@@ -8020,6 +8020,25 @@ public uint score
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CMsgSDRTicket : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public byte[] serialized_ticket
+ {
+ get => __pbn__serialized_ticket;
+ set => __pbn__serialized_ticket = value;
+ }
+ public bool ShouldSerializeserialized_ticket() => __pbn__serialized_ticket != null;
+ public void Resetserialized_ticket() => __pbn__serialized_ticket = null;
+ private byte[] __pbn__serialized_ticket;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum ETFGCMsg
{
@@ -8184,6 +8203,7 @@ public enum ETFGCMsg
k_EMsgGCQuestStrangeEvent = 6577,
k_EMsgGC_AcceptLobbyInvite = 6578,
k_EMsgGC_AcceptLobbyInviteReply = 6579,
+ k_EMsgGC_SDRTicket = 6580,
k_EMsgGC_ProcessMatchVoteKick = 6581,
k_EMsgGC_ProcessMatchVoteKickResponse = 6582,
k_EMsgGCDev_GrantWarKill = 10001,
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgAuth.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgAuth.cs
index f32eefa0f..5cf0772f3 100644
--- a/SteamKit2/SteamKit2/Base/Generated/SteamMsgAuth.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgAuth.cs
@@ -9,6 +9,67 @@
namespace SteamKit2.Internal
{
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CAuthentication_GetPasswordRSAPublicKey_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string account_name
+ {
+ get => __pbn__account_name ?? "";
+ set => __pbn__account_name = value;
+ }
+ public bool ShouldSerializeaccount_name() => __pbn__account_name != null;
+ public void Resetaccount_name() => __pbn__account_name = null;
+ private string __pbn__account_name;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CAuthentication_GetPasswordRSAPublicKey_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string publickey_mod
+ {
+ get => __pbn__publickey_mod ?? "";
+ set => __pbn__publickey_mod = value;
+ }
+ public bool ShouldSerializepublickey_mod() => __pbn__publickey_mod != null;
+ public void Resetpublickey_mod() => __pbn__publickey_mod = null;
+ private string __pbn__publickey_mod;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string publickey_exp
+ {
+ get => __pbn__publickey_exp ?? "";
+ set => __pbn__publickey_exp = value;
+ }
+ public bool ShouldSerializepublickey_exp() => __pbn__publickey_exp != null;
+ public void Resetpublickey_exp() => __pbn__publickey_exp = null;
+ private string __pbn__publickey_exp;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public ulong timestamp
+ {
+ get => __pbn__timestamp.GetValueOrDefault();
+ set => __pbn__timestamp = value;
+ }
+ public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
+ public void Resettimestamp() => __pbn__timestamp = null;
+ private ulong? __pbn__timestamp;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CAuthentication_BeginAuthSessionViaQR_Request : global::ProtoBuf.IExtensible
{
@@ -27,6 +88,48 @@ public string device_friendly_name
public void Resetdevice_friendly_name() => __pbn__device_friendly_name = null;
private string __pbn__device_friendly_name;
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue(EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown)]
+ public EAuthTokenPlatformType platform_type
+ {
+ get => __pbn__platform_type ?? EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown;
+ set => __pbn__platform_type = value;
+ }
+ public bool ShouldSerializeplatform_type() => __pbn__platform_type != null;
+ public void Resetplatform_type() => __pbn__platform_type = null;
+ private EAuthTokenPlatformType? __pbn__platform_type;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CAuthentication_AllowedConfirmation : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(EAuthSessionGuardType.k_EAuthSessionGuardType_Unknown)]
+ public EAuthSessionGuardType confirmation_type
+ {
+ get => __pbn__confirmation_type ?? EAuthSessionGuardType.k_EAuthSessionGuardType_Unknown;
+ set => __pbn__confirmation_type = value;
+ }
+ public bool ShouldSerializeconfirmation_type() => __pbn__confirmation_type != null;
+ public void Resetconfirmation_type() => __pbn__confirmation_type = null;
+ private EAuthSessionGuardType? __pbn__confirmation_type;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string associated_message
+ {
+ get => __pbn__associated_message ?? "";
+ set => __pbn__associated_message = value;
+ }
+ public bool ShouldSerializeassociated_message() => __pbn__associated_message != null;
+ public void Resetassociated_message() => __pbn__associated_message = null;
+ private string __pbn__associated_message;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -78,7 +181,17 @@ public float interval
private float? __pbn__interval;
[global::ProtoBuf.ProtoMember(5)]
- public global::System.Collections.Generic.List allowed_confirmations { get; } = new global::System.Collections.Generic.List();
+ public global::System.Collections.Generic.List allowed_confirmations { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public int version
+ {
+ get => __pbn__version.GetValueOrDefault();
+ set => __pbn__version = value;
+ }
+ public bool ShouldSerializeversion() => __pbn__version != null;
+ public void Resetversion() => __pbn__version = null;
+ private int? __pbn__version;
}
@@ -142,6 +255,17 @@ public bool remember_login
public void Resetremember_login() => __pbn__remember_login = null;
private bool? __pbn__remember_login;
+ [global::ProtoBuf.ProtoMember(6)]
+ [global::System.ComponentModel.DefaultValue(EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown)]
+ public EAuthTokenPlatformType platform_type
+ {
+ get => __pbn__platform_type ?? EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown;
+ set => __pbn__platform_type = value;
+ }
+ public bool ShouldSerializeplatform_type() => __pbn__platform_type != null;
+ public void Resetplatform_type() => __pbn__platform_type = null;
+ private EAuthTokenPlatformType? __pbn__platform_type;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -182,7 +306,7 @@ public float interval
private float? __pbn__interval;
[global::ProtoBuf.ProtoMember(4)]
- public global::System.Collections.Generic.List allowed_confirmations { get; } = new global::System.Collections.Generic.List();
+ public global::System.Collections.Generic.List allowed_confirmations { get; } = new global::System.Collections.Generic.List();
[global::ProtoBuf.ProtoMember(5)]
public ulong steamid
@@ -264,6 +388,17 @@ public string refresh_token
public void Resetrefresh_token() => __pbn__refresh_token = null;
private string __pbn__refresh_token;
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string access_token
+ {
+ get => __pbn__access_token ?? "";
+ set => __pbn__access_token = value;
+ }
+ public bool ShouldSerializeaccess_token() => __pbn__access_token != null;
+ public void Resetaccess_token() => __pbn__access_token = null;
+ private string __pbn__access_token;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -314,6 +449,61 @@ public string geoloc
public void Resetgeoloc() => __pbn__geoloc = null;
private string __pbn__geoloc;
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string city
+ {
+ get => __pbn__city ?? "";
+ set => __pbn__city = value;
+ }
+ public bool ShouldSerializecity() => __pbn__city != null;
+ public void Resetcity() => __pbn__city = null;
+ private string __pbn__city;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string state
+ {
+ get => __pbn__state ?? "";
+ set => __pbn__state = value;
+ }
+ public bool ShouldSerializestate() => __pbn__state != null;
+ public void Resetstate() => __pbn__state = null;
+ private string __pbn__state;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string country
+ {
+ get => __pbn__country ?? "";
+ set => __pbn__country = value;
+ }
+ public bool ShouldSerializecountry() => __pbn__country != null;
+ public void Resetcountry() => __pbn__country = null;
+ private string __pbn__country;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ [global::System.ComponentModel.DefaultValue(EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown)]
+ public EAuthTokenPlatformType platform_type
+ {
+ get => __pbn__platform_type ?? EAuthTokenPlatformType.k_EAuthTokenPlatformType_Unknown;
+ set => __pbn__platform_type = value;
+ }
+ public bool ShouldSerializeplatform_type() => __pbn__platform_type != null;
+ public void Resetplatform_type() => __pbn__platform_type = null;
+ private EAuthTokenPlatformType? __pbn__platform_type;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string device_friendly_name
+ {
+ get => __pbn__device_friendly_name ?? "";
+ set => __pbn__device_friendly_name = value;
+ }
+ public bool ShouldSerializedevice_friendly_name() => __pbn__device_friendly_name != null;
+ public void Resetdevice_friendly_name() => __pbn__device_friendly_name = null;
+ private string __pbn__device_friendly_name;
+
}
[global::ProtoBuf.ProtoContract()]
@@ -569,6 +759,15 @@ public partial class CCloudGaming_GetTimeRemaining_Response : global::ProtoBuf.I
}
+ [global::ProtoBuf.ProtoContract()]
+ public enum EAuthTokenPlatformType
+ {
+ k_EAuthTokenPlatformType_Unknown = 0,
+ k_EAuthTokenPlatformType_SteamClient = 1,
+ k_EAuthTokenPlatformType_WebBrowser = 2,
+ k_EAuthTokenPlatformType_MobileApp = 3,
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum EAuthSessionGuardType
{
@@ -582,6 +781,7 @@ public enum EAuthSessionGuardType
public interface IAuthentication
{
+ CAuthentication_GetPasswordRSAPublicKey_Response GetPasswordRSAPublicKey(CAuthentication_GetPasswordRSAPublicKey_Request request);
CAuthentication_BeginAuthSessionViaQR_Response BeginAuthSessionViaQR(CAuthentication_BeginAuthSessionViaQR_Request request);
CAuthentication_BeginAuthSessionViaCredentials_Response BeginAuthSessionViaCredentials(CAuthentication_BeginAuthSessionViaCredentials_Request request);
CAuthentication_PollAuthSessionStatus_Response PollAuthSessionStatus(CAuthentication_PollAuthSessionStatus_Request request);
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgClientNotificationTypes.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgClientNotificationTypes.cs
index 91a06f175..bd00cdd17 100644
--- a/SteamKit2/SteamKit2/Base/Generated/SteamMsgClientNotificationTypes.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgClientNotificationTypes.cs
@@ -238,6 +238,207 @@ public float pct_remaining
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CClientNotificationSystemUpdate : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue(ESystemUpdateNotificationType.k_ESystemUpdateNotificationType_Invalid)]
+ public ESystemUpdateNotificationType type
+ {
+ get => __pbn__type ?? ESystemUpdateNotificationType.k_ESystemUpdateNotificationType_Invalid;
+ set => __pbn__type = value;
+ }
+ public bool ShouldSerializetype() => __pbn__type != null;
+ public void Resettype() => __pbn__type = null;
+ private ESystemUpdateNotificationType? __pbn__type;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CClientNotificationFriendMessage : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string tag
+ {
+ get => __pbn__tag ?? "";
+ set => __pbn__tag = value;
+ }
+ public bool ShouldSerializetag() => __pbn__tag != null;
+ public void Resettag() => __pbn__tag = null;
+ private string __pbn__tag;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string steamid
+ {
+ get => __pbn__steamid ?? "";
+ set => __pbn__steamid = value;
+ }
+ public bool ShouldSerializesteamid() => __pbn__steamid != null;
+ public void Resetsteamid() => __pbn__steamid = null;
+ private string __pbn__steamid;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string title
+ {
+ get => __pbn__title ?? "";
+ set => __pbn__title = value;
+ }
+ public bool ShouldSerializetitle() => __pbn__title != null;
+ public void Resettitle() => __pbn__title = null;
+ private string __pbn__title;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string body
+ {
+ get => __pbn__body ?? "";
+ set => __pbn__body = value;
+ }
+ public bool ShouldSerializebody() => __pbn__body != null;
+ public void Resetbody() => __pbn__body = null;
+ private string __pbn__body;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string icon
+ {
+ get => __pbn__icon ?? "";
+ set => __pbn__icon = value;
+ }
+ public bool ShouldSerializeicon() => __pbn__icon != null;
+ public void Reseticon() => __pbn__icon = null;
+ private string __pbn__icon;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public uint notificationid
+ {
+ get => __pbn__notificationid.GetValueOrDefault();
+ set => __pbn__notificationid = value;
+ }
+ public bool ShouldSerializenotificationid() => __pbn__notificationid != null;
+ public void Resetnotificationid() => __pbn__notificationid = null;
+ private uint? __pbn__notificationid;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CClientNotificationGroupChatMessage : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string tag
+ {
+ get => __pbn__tag ?? "";
+ set => __pbn__tag = value;
+ }
+ public bool ShouldSerializetag() => __pbn__tag != null;
+ public void Resettag() => __pbn__tag = null;
+ private string __pbn__tag;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string steamid_sender
+ {
+ get => __pbn__steamid_sender ?? "";
+ set => __pbn__steamid_sender = value;
+ }
+ public bool ShouldSerializesteamid_sender() => __pbn__steamid_sender != null;
+ public void Resetsteamid_sender() => __pbn__steamid_sender = null;
+ private string __pbn__steamid_sender;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string chat_group_id
+ {
+ get => __pbn__chat_group_id ?? "";
+ set => __pbn__chat_group_id = value;
+ }
+ public bool ShouldSerializechat_group_id() => __pbn__chat_group_id != null;
+ public void Resetchat_group_id() => __pbn__chat_group_id = null;
+ private string __pbn__chat_group_id;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string chat_id
+ {
+ get => __pbn__chat_id ?? "";
+ set => __pbn__chat_id = value;
+ }
+ public bool ShouldSerializechat_id() => __pbn__chat_id != null;
+ public void Resetchat_id() => __pbn__chat_id = null;
+ private string __pbn__chat_id;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string title
+ {
+ get => __pbn__title ?? "";
+ set => __pbn__title = value;
+ }
+ public bool ShouldSerializetitle() => __pbn__title != null;
+ public void Resettitle() => __pbn__title = null;
+ private string __pbn__title;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string body
+ {
+ get => __pbn__body ?? "";
+ set => __pbn__body = value;
+ }
+ public bool ShouldSerializebody() => __pbn__body != null;
+ public void Resetbody() => __pbn__body = null;
+ private string __pbn__body;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string rawbody
+ {
+ get => __pbn__rawbody ?? "";
+ set => __pbn__rawbody = value;
+ }
+ public bool ShouldSerializerawbody() => __pbn__rawbody != null;
+ public void Resetrawbody() => __pbn__rawbody = null;
+ private string __pbn__rawbody;
+
+ [global::ProtoBuf.ProtoMember(8)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string icon
+ {
+ get => __pbn__icon ?? "";
+ set => __pbn__icon = value;
+ }
+ public bool ShouldSerializeicon() => __pbn__icon != null;
+ public void Reseticon() => __pbn__icon = null;
+ private string __pbn__icon;
+
+ [global::ProtoBuf.ProtoMember(9)]
+ public uint notificationid
+ {
+ get => __pbn__notificationid.GetValueOrDefault();
+ set => __pbn__notificationid = value;
+ }
+ public bool ShouldSerializenotificationid() => __pbn__notificationid != null;
+ public void Resetnotificationid() => __pbn__notificationid = null;
+ private uint? __pbn__notificationid;
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public enum EClientNotificationType
{
@@ -248,6 +449,17 @@ public enum EClientNotificationType
k_EClientNotificationType_FriendOnline = 4,
k_EClientNotificationType_Achievement = 5,
k_EClientNotificationType_LowBattery = 6,
+ k_EClientNotificationType_SystemUpdate = 7,
+ k_EClientNotificationType_FriendMessage = 8,
+ k_EClientNotificationType_GroupChatMessage = 9,
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public enum ESystemUpdateNotificationType
+ {
+ k_ESystemUpdateNotificationType_Invalid = 0,
+ k_ESystemUpdateNotificationType_Available = 1,
+ k_ESystemUpdateNotificationType_NeedsRestart = 2,
}
}
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgCloud.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgCloud.cs
index 2f30a0833..1026cd9e1 100644
--- a/SteamKit2/SteamKit2/Base/Generated/SteamMsgCloud.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgCloud.cs
@@ -1148,6 +1148,54 @@ public uint batch_eresult
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CCloud_CompleteAppUploadBatch_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint appid
+ {
+ get => __pbn__appid.GetValueOrDefault();
+ set => __pbn__appid = value;
+ }
+ public bool ShouldSerializeappid() => __pbn__appid != null;
+ public void Resetappid() => __pbn__appid = null;
+ private uint? __pbn__appid;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public ulong batch_id
+ {
+ get => __pbn__batch_id.GetValueOrDefault();
+ set => __pbn__batch_id = value;
+ }
+ public bool ShouldSerializebatch_id() => __pbn__batch_id != null;
+ public void Resetbatch_id() => __pbn__batch_id = null;
+ private ulong? __pbn__batch_id;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public uint batch_eresult
+ {
+ get => __pbn__batch_eresult.GetValueOrDefault();
+ set => __pbn__batch_eresult = value;
+ }
+ public bool ShouldSerializebatch_eresult() => __pbn__batch_eresult != null;
+ public void Resetbatch_eresult() => __pbn__batch_eresult = null;
+ private uint? __pbn__batch_eresult;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CCloud_CompleteAppUploadBatch_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ }
+
[global::ProtoBuf.ProtoContract()]
public partial class CCloud_ClientBeginFileUpload_Request : global::ProtoBuf.IExtensible
{
@@ -2228,6 +2276,7 @@ public interface ICloud
NoResponse ExternalStorageTransferReport(CCloud_ExternalStorageTransferReport_Notification request);
CCloud_BeginAppUploadBatch_Response BeginAppUploadBatch(CCloud_BeginAppUploadBatch_Request request);
NoResponse CompleteAppUploadBatch(CCloud_CompleteAppUploadBatch_Notification request);
+ CCloud_CompleteAppUploadBatch_Response CompleteAppUploadBatchBlocking(CCloud_CompleteAppUploadBatch_Request request);
CCloud_ClientBeginFileUpload_Response ClientBeginFileUpload(CCloud_ClientBeginFileUpload_Request request);
CCloud_ClientCommitFileUpload_Response ClientCommitFileUpload(CCloud_ClientCommitFileUpload_Request request);
CCloud_ClientFileDownload_Response ClientFileDownload(CCloud_ClientFileDownload_Request request);
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgContentSystem.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgContentSystem.cs
new file mode 100644
index 000000000..ab9bb867d
--- /dev/null
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgContentSystem.cs
@@ -0,0 +1,474 @@
+//
+// This file was generated by a tool; you should avoid making direct changes.
+// Consider using 'partial classes' to extend these types
+// Input: steammessages_contentsystem.steamclient.proto
+//
+
+#region Designer generated code
+#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
+namespace SteamKit2.Internal
+{
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetServersForSteamPipe_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint cell_id
+ {
+ get => __pbn__cell_id.GetValueOrDefault();
+ set => __pbn__cell_id = value;
+ }
+ public bool ShouldSerializecell_id() => __pbn__cell_id != null;
+ public void Resetcell_id() => __pbn__cell_id = null;
+ private uint? __pbn__cell_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ [global::System.ComponentModel.DefaultValue(20)]
+ public uint max_servers
+ {
+ get => __pbn__max_servers ?? 20;
+ set => __pbn__max_servers = value;
+ }
+ public bool ShouldSerializemax_servers() => __pbn__max_servers != null;
+ public void Resetmax_servers() => __pbn__max_servers = null;
+ private uint? __pbn__max_servers;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string ip_override
+ {
+ get => __pbn__ip_override ?? "";
+ set => __pbn__ip_override = value;
+ }
+ public bool ShouldSerializeip_override() => __pbn__ip_override != null;
+ public void Resetip_override() => __pbn__ip_override = null;
+ private string __pbn__ip_override;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue(0)]
+ public int launcher_type
+ {
+ get => __pbn__launcher_type ?? 0;
+ set => __pbn__launcher_type = value;
+ }
+ public bool ShouldSerializelauncher_type() => __pbn__launcher_type != null;
+ public void Resetlauncher_type() => __pbn__launcher_type = null;
+ private int? __pbn__launcher_type;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string ipv6_public
+ {
+ get => __pbn__ipv6_public ?? "";
+ set => __pbn__ipv6_public = value;
+ }
+ public bool ShouldSerializeipv6_public() => __pbn__ipv6_public != null;
+ public void Resetipv6_public() => __pbn__ipv6_public = null;
+ private string __pbn__ipv6_public;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_ServerInfo : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string type
+ {
+ get => __pbn__type ?? "";
+ set => __pbn__type = value;
+ }
+ public bool ShouldSerializetype() => __pbn__type != null;
+ public void Resettype() => __pbn__type = null;
+ private string __pbn__type;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public int source_id
+ {
+ get => __pbn__source_id.GetValueOrDefault();
+ set => __pbn__source_id = value;
+ }
+ public bool ShouldSerializesource_id() => __pbn__source_id != null;
+ public void Resetsource_id() => __pbn__source_id = null;
+ private int? __pbn__source_id;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public int cell_id
+ {
+ get => __pbn__cell_id.GetValueOrDefault();
+ set => __pbn__cell_id = value;
+ }
+ public bool ShouldSerializecell_id() => __pbn__cell_id != null;
+ public void Resetcell_id() => __pbn__cell_id = null;
+ private int? __pbn__cell_id;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public int load
+ {
+ get => __pbn__load.GetValueOrDefault();
+ set => __pbn__load = value;
+ }
+ public bool ShouldSerializeload() => __pbn__load != null;
+ public void Resetload() => __pbn__load = null;
+ private int? __pbn__load;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ public float weighted_load
+ {
+ get => __pbn__weighted_load.GetValueOrDefault();
+ set => __pbn__weighted_load = value;
+ }
+ public bool ShouldSerializeweighted_load() => __pbn__weighted_load != null;
+ public void Resetweighted_load() => __pbn__weighted_load = null;
+ private float? __pbn__weighted_load;
+
+ [global::ProtoBuf.ProtoMember(6)]
+ public int num_entries_in_client_list
+ {
+ get => __pbn__num_entries_in_client_list.GetValueOrDefault();
+ set => __pbn__num_entries_in_client_list = value;
+ }
+ public bool ShouldSerializenum_entries_in_client_list() => __pbn__num_entries_in_client_list != null;
+ public void Resetnum_entries_in_client_list() => __pbn__num_entries_in_client_list = null;
+ private int? __pbn__num_entries_in_client_list;
+
+ [global::ProtoBuf.ProtoMember(7)]
+ public bool steam_china_only
+ {
+ get => __pbn__steam_china_only.GetValueOrDefault();
+ set => __pbn__steam_china_only = value;
+ }
+ public bool ShouldSerializesteam_china_only() => __pbn__steam_china_only != null;
+ public void Resetsteam_china_only() => __pbn__steam_china_only = null;
+ private bool? __pbn__steam_china_only;
+
+ [global::ProtoBuf.ProtoMember(8)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string host
+ {
+ get => __pbn__host ?? "";
+ set => __pbn__host = value;
+ }
+ public bool ShouldSerializehost() => __pbn__host != null;
+ public void Resethost() => __pbn__host = null;
+ private string __pbn__host;
+
+ [global::ProtoBuf.ProtoMember(9)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string vhost
+ {
+ get => __pbn__vhost ?? "";
+ set => __pbn__vhost = value;
+ }
+ public bool ShouldSerializevhost() => __pbn__vhost != null;
+ public void Resetvhost() => __pbn__vhost = null;
+ private string __pbn__vhost;
+
+ [global::ProtoBuf.ProtoMember(10)]
+ public bool use_as_proxy
+ {
+ get => __pbn__use_as_proxy.GetValueOrDefault();
+ set => __pbn__use_as_proxy = value;
+ }
+ public bool ShouldSerializeuse_as_proxy() => __pbn__use_as_proxy != null;
+ public void Resetuse_as_proxy() => __pbn__use_as_proxy = null;
+ private bool? __pbn__use_as_proxy;
+
+ [global::ProtoBuf.ProtoMember(11)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string proxy_request_path_template
+ {
+ get => __pbn__proxy_request_path_template ?? "";
+ set => __pbn__proxy_request_path_template = value;
+ }
+ public bool ShouldSerializeproxy_request_path_template() => __pbn__proxy_request_path_template != null;
+ public void Resetproxy_request_path_template() => __pbn__proxy_request_path_template = null;
+ private string __pbn__proxy_request_path_template;
+
+ [global::ProtoBuf.ProtoMember(12)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string https_support
+ {
+ get => __pbn__https_support ?? "";
+ set => __pbn__https_support = value;
+ }
+ public bool ShouldSerializehttps_support() => __pbn__https_support != null;
+ public void Resethttps_support() => __pbn__https_support = null;
+ private string __pbn__https_support;
+
+ [global::ProtoBuf.ProtoMember(13)]
+ public global::System.Collections.Generic.List allowed_app_ids { get; } = new global::System.Collections.Generic.List();
+
+ [global::ProtoBuf.ProtoMember(14)]
+ public bool preferred_server
+ {
+ get => __pbn__preferred_server.GetValueOrDefault();
+ set => __pbn__preferred_server = value;
+ }
+ public bool ShouldSerializepreferred_server() => __pbn__preferred_server != null;
+ public void Resetpreferred_server() => __pbn__preferred_server = null;
+ private bool? __pbn__preferred_server;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetServersForSteamPipe_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public global::System.Collections.Generic.List servers { get; } = new global::System.Collections.Generic.List();
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetDepotPatchInfo_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint appid
+ {
+ get => __pbn__appid.GetValueOrDefault();
+ set => __pbn__appid = value;
+ }
+ public bool ShouldSerializeappid() => __pbn__appid != null;
+ public void Resetappid() => __pbn__appid = null;
+ private uint? __pbn__appid;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint depotid
+ {
+ get => __pbn__depotid.GetValueOrDefault();
+ set => __pbn__depotid = value;
+ }
+ public bool ShouldSerializedepotid() => __pbn__depotid != null;
+ public void Resetdepotid() => __pbn__depotid = null;
+ private uint? __pbn__depotid;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public ulong source_manifestid
+ {
+ get => __pbn__source_manifestid.GetValueOrDefault();
+ set => __pbn__source_manifestid = value;
+ }
+ public bool ShouldSerializesource_manifestid() => __pbn__source_manifestid != null;
+ public void Resetsource_manifestid() => __pbn__source_manifestid = null;
+ private ulong? __pbn__source_manifestid;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public ulong target_manifestid
+ {
+ get => __pbn__target_manifestid.GetValueOrDefault();
+ set => __pbn__target_manifestid = value;
+ }
+ public bool ShouldSerializetarget_manifestid() => __pbn__target_manifestid != null;
+ public void Resettarget_manifestid() => __pbn__target_manifestid = null;
+ private ulong? __pbn__target_manifestid;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetDepotPatchInfo_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public bool is_available
+ {
+ get => __pbn__is_available.GetValueOrDefault();
+ set => __pbn__is_available = value;
+ }
+ public bool ShouldSerializeis_available() => __pbn__is_available != null;
+ public void Resetis_available() => __pbn__is_available = null;
+ private bool? __pbn__is_available;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public ulong patch_size
+ {
+ get => __pbn__patch_size.GetValueOrDefault();
+ set => __pbn__patch_size = value;
+ }
+ public bool ShouldSerializepatch_size() => __pbn__patch_size != null;
+ public void Resetpatch_size() => __pbn__patch_size = null;
+ private ulong? __pbn__patch_size;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public ulong patched_chunks_size
+ {
+ get => __pbn__patched_chunks_size.GetValueOrDefault();
+ set => __pbn__patched_chunks_size = value;
+ }
+ public bool ShouldSerializepatched_chunks_size() => __pbn__patched_chunks_size != null;
+ public void Resetpatched_chunks_size() => __pbn__patched_chunks_size = null;
+ private ulong? __pbn__patched_chunks_size;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetClientUpdateHosts_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string cached_signature
+ {
+ get => __pbn__cached_signature ?? "";
+ set => __pbn__cached_signature = value;
+ }
+ public bool ShouldSerializecached_signature() => __pbn__cached_signature != null;
+ public void Resetcached_signature() => __pbn__cached_signature = null;
+ private string __pbn__cached_signature;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetClientUpdateHosts_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string hosts_kv
+ {
+ get => __pbn__hosts_kv ?? "";
+ set => __pbn__hosts_kv = value;
+ }
+ public bool ShouldSerializehosts_kv() => __pbn__hosts_kv != null;
+ public void Resethosts_kv() => __pbn__hosts_kv = null;
+ private string __pbn__hosts_kv;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public ulong valid_until_time
+ {
+ get => __pbn__valid_until_time.GetValueOrDefault();
+ set => __pbn__valid_until_time = value;
+ }
+ public bool ShouldSerializevalid_until_time() => __pbn__valid_until_time != null;
+ public void Resetvalid_until_time() => __pbn__valid_until_time = null;
+ private ulong? __pbn__valid_until_time;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string ip_country
+ {
+ get => __pbn__ip_country ?? "";
+ set => __pbn__ip_country = value;
+ }
+ public bool ShouldSerializeip_country() => __pbn__ip_country != null;
+ public void Resetip_country() => __pbn__ip_country = null;
+ private string __pbn__ip_country;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetManifestRequestCode_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint app_id
+ {
+ get => __pbn__app_id.GetValueOrDefault();
+ set => __pbn__app_id = value;
+ }
+ public bool ShouldSerializeapp_id() => __pbn__app_id != null;
+ public void Resetapp_id() => __pbn__app_id = null;
+ private uint? __pbn__app_id;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint depot_id
+ {
+ get => __pbn__depot_id.GetValueOrDefault();
+ set => __pbn__depot_id = value;
+ }
+ public bool ShouldSerializedepot_id() => __pbn__depot_id != null;
+ public void Resetdepot_id() => __pbn__depot_id = null;
+ private uint? __pbn__depot_id;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public ulong manifest_id
+ {
+ get => __pbn__manifest_id.GetValueOrDefault();
+ set => __pbn__manifest_id = value;
+ }
+ public bool ShouldSerializemanifest_id() => __pbn__manifest_id != null;
+ public void Resetmanifest_id() => __pbn__manifest_id = null;
+ private ulong? __pbn__manifest_id;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string app_branch
+ {
+ get => __pbn__app_branch ?? "";
+ set => __pbn__app_branch = value;
+ }
+ public bool ShouldSerializeapp_branch() => __pbn__app_branch != null;
+ public void Resetapp_branch() => __pbn__app_branch = null;
+ private string __pbn__app_branch;
+
+ [global::ProtoBuf.ProtoMember(5)]
+ [global::System.ComponentModel.DefaultValue("")]
+ public string branch_password_hash
+ {
+ get => __pbn__branch_password_hash ?? "";
+ set => __pbn__branch_password_hash = value;
+ }
+ public bool ShouldSerializebranch_password_hash() => __pbn__branch_password_hash != null;
+ public void Resetbranch_password_hash() => __pbn__branch_password_hash = null;
+ private string __pbn__branch_password_hash;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CContentServerDirectory_GetManifestRequestCode_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public ulong manifest_request_code
+ {
+ get => __pbn__manifest_request_code.GetValueOrDefault();
+ set => __pbn__manifest_request_code = value;
+ }
+ public bool ShouldSerializemanifest_request_code() => __pbn__manifest_request_code != null;
+ public void Resetmanifest_request_code() => __pbn__manifest_request_code = null;
+ private ulong? __pbn__manifest_request_code;
+
+ }
+
+ public interface IContentServerDirectory
+ {
+ CContentServerDirectory_GetServersForSteamPipe_Response GetServersForSteamPipe(CContentServerDirectory_GetServersForSteamPipe_Request request);
+ CContentServerDirectory_GetDepotPatchInfo_Response GetDepotPatchInfo(CContentServerDirectory_GetDepotPatchInfo_Request request);
+ CContentServerDirectory_GetClientUpdateHosts_Response GetClientUpdateHosts(CContentServerDirectory_GetClientUpdateHosts_Request request);
+ CContentServerDirectory_GetManifestRequestCode_Response GetManifestRequestCode(CContentServerDirectory_GetManifestRequestCode_Request request);
+ }
+
+}
+
+#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
+#endregion
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgPlayer.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgPlayer.cs
index 3e8f4cf52..56258db47 100644
--- a/SteamKit2/SteamKit2/Base/Generated/SteamMsgPlayer.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgPlayer.cs
@@ -3384,6 +3384,26 @@ public uint seconds_allowed_today
public void Resetseconds_allowed_today() => __pbn__seconds_allowed_today = null;
private uint? __pbn__seconds_allowed_today;
+ [global::ProtoBuf.ProtoMember(7)]
+ public bool age_verification_pending
+ {
+ get => __pbn__age_verification_pending.GetValueOrDefault();
+ set => __pbn__age_verification_pending = value;
+ }
+ public bool ShouldSerializeage_verification_pending() => __pbn__age_verification_pending != null;
+ public void Resetage_verification_pending() => __pbn__age_verification_pending = null;
+ private bool? __pbn__age_verification_pending;
+
+ [global::ProtoBuf.ProtoMember(8)]
+ public bool block_minors
+ {
+ get => __pbn__block_minors.GetValueOrDefault();
+ set => __pbn__block_minors = value;
+ }
+ public bool ShouldSerializeblock_minors() => __pbn__block_minors != null;
+ public void Resetblock_minors() => __pbn__block_minors = null;
+ private bool? __pbn__block_minors;
+
}
[global::ProtoBuf.ProtoContract()]
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgPublishedFile.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgPublishedFile.cs
index ad5b9b8e2..4ede4028e 100644
--- a/SteamKit2/SteamKit2/Base/Generated/SteamMsgPublishedFile.cs
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgPublishedFile.cs
@@ -2780,6 +2780,12 @@ public int language
[global::ProtoBuf.ProtoMember(42)]
public global::System.Collections.Generic.List taggroups { get; } = new global::System.Collections.Generic.List();
+ [global::ProtoBuf.ProtoMember(44)]
+ public DateRange date_range_created { get; set; }
+
+ [global::ProtoBuf.ProtoMember(45)]
+ public DateRange date_range_updated { get; set; }
+
[global::ProtoBuf.ProtoMember(16)]
public bool totalonly
{
@@ -2976,6 +2982,35 @@ public partial class TagGroup : global::ProtoBuf.IExtensible
}
+ [global::ProtoBuf.ProtoContract()]
+ public partial class DateRange : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint timestamp_start
+ {
+ get => __pbn__timestamp_start.GetValueOrDefault();
+ set => __pbn__timestamp_start = value;
+ }
+ public bool ShouldSerializetimestamp_start() => __pbn__timestamp_start != null;
+ public void Resettimestamp_start() => __pbn__timestamp_start = null;
+ private uint? __pbn__timestamp_start;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint timestamp_end
+ {
+ get => __pbn__timestamp_end.GetValueOrDefault();
+ set => __pbn__timestamp_end = value;
+ }
+ public bool ShouldSerializetimestamp_end() => __pbn__timestamp_end != null;
+ public void Resettimestamp_end() => __pbn__timestamp_end = null;
+ private uint? __pbn__timestamp_end;
+
+ }
+
}
[global::ProtoBuf.ProtoContract()]
diff --git a/SteamKit2/SteamKit2/Base/Generated/SteamMsgWorkshop.cs b/SteamKit2/SteamKit2/Base/Generated/SteamMsgWorkshop.cs
new file mode 100644
index 000000000..d310d7f88
--- /dev/null
+++ b/SteamKit2/SteamKit2/Base/Generated/SteamMsgWorkshop.cs
@@ -0,0 +1,88 @@
+//
+// This file was generated by a tool; you should avoid making direct changes.
+// Consider using 'partial classes' to extend these types
+// Input: steammessages_workshop.steamclient.proto
+//
+
+#region Designer generated code
+#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
+namespace SteamKit2.Internal
+{
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CWorkshop_GetEULAStatus_Request : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint appid
+ {
+ get => __pbn__appid.GetValueOrDefault();
+ set => __pbn__appid = value;
+ }
+ public bool ShouldSerializeappid() => __pbn__appid != null;
+ public void Resetappid() => __pbn__appid = null;
+ private uint? __pbn__appid;
+
+ }
+
+ [global::ProtoBuf.ProtoContract()]
+ public partial class CWorkshop_GetEULAStatus_Response : global::ProtoBuf.IExtensible
+ {
+ private global::ProtoBuf.IExtension __pbn__extensionData;
+ global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
+ => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);
+
+ [global::ProtoBuf.ProtoMember(1)]
+ public uint version
+ {
+ get => __pbn__version.GetValueOrDefault();
+ set => __pbn__version = value;
+ }
+ public bool ShouldSerializeversion() => __pbn__version != null;
+ public void Resetversion() => __pbn__version = null;
+ private uint? __pbn__version;
+
+ [global::ProtoBuf.ProtoMember(2)]
+ public uint timestamp_action
+ {
+ get => __pbn__timestamp_action.GetValueOrDefault();
+ set => __pbn__timestamp_action = value;
+ }
+ public bool ShouldSerializetimestamp_action() => __pbn__timestamp_action != null;
+ public void Resettimestamp_action() => __pbn__timestamp_action = null;
+ private uint? __pbn__timestamp_action;
+
+ [global::ProtoBuf.ProtoMember(3)]
+ public bool accepted
+ {
+ get => __pbn__accepted.GetValueOrDefault();
+ set => __pbn__accepted = value;
+ }
+ public bool ShouldSerializeaccepted() => __pbn__accepted != null;
+ public void Resetaccepted() => __pbn__accepted = null;
+ private bool? __pbn__accepted;
+
+ [global::ProtoBuf.ProtoMember(4)]
+ public bool needs_action
+ {
+ get => __pbn__needs_action.GetValueOrDefault();
+ set => __pbn__needs_action = value;
+ }
+ public bool ShouldSerializeneeds_action() => __pbn__needs_action != null;
+ public void Resetneeds_action() => __pbn__needs_action = null;
+ private bool? __pbn__needs_action;
+
+ }
+
+ public interface IWorkshop
+ {
+ CWorkshop_GetEULAStatus_Response GetEULAStatus(CWorkshop_GetEULAStatus_Request request);
+ }
+
+}
+
+#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
+#endregion