diff --git a/.run/JavaSteam [syncProtobufs].run.xml b/.run/JavaSteam [syncProtobufs].run.xml
new file mode 100644
index 00000000..d6cd802a
--- /dev/null
+++ b/.run/JavaSteam [syncProtobufs].run.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+ false
+ false
+ false
+ false
+ false
+
+
+
\ No newline at end of file
diff --git a/build.gradle.kts b/build.gradle.kts
index 62bd125e..10acc0d7 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -16,6 +16,7 @@ plugins {
projectversiongen
steamlanguagegen
rpcinterfacegen
+ protosync
}
allprojects {
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index c0e7b9c1..dcb5d267 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -32,5 +32,9 @@ gradlePlugin {
id = "rpcinterfacegen"
implementationClass = "in.dragonbra.generators.rpc.RpcGenPlugin"
}
+ create("protosync") {
+ id = "protosync"
+ implementationClass = "in.dragonbra.generators.protosync.ProtoSyncPlugin"
+ }
}
}
diff --git a/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncPlugin.kt b/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncPlugin.kt
new file mode 100644
index 00000000..832ddd8e
--- /dev/null
+++ b/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncPlugin.kt
@@ -0,0 +1,10 @@
+package `in`.dragonbra.generators.protosync
+
+import org.gradle.api.Plugin
+import org.gradle.api.Project
+
+class ProtoSyncPlugin : Plugin {
+ override fun apply(project: Project) {
+ project.tasks.register("syncProtobufs", ProtoSyncTask::class.java)
+ }
+}
diff --git a/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncTask.kt b/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncTask.kt
new file mode 100644
index 00000000..c329d507
--- /dev/null
+++ b/buildSrc/src/main/kotlin/in/dragonbra/generators/protosync/ProtoSyncTask.kt
@@ -0,0 +1,273 @@
+package `in`.dragonbra.generators.protosync
+
+import org.gradle.api.DefaultTask
+import org.gradle.api.GradleException
+import org.gradle.api.tasks.TaskAction
+import java.io.File
+import javax.inject.Inject
+
+/**
+ * Re-downloads every .proto file listed in `protosync-whitelist.txt` (repository root)
+ * from [SteamTracking/Protobufs](https://github.com/SteamTracking/Protobufs) and
+ * re-applies the JavaSteam transformations:
+ *
+ * - imports are rewritten to this repository's proto source-root layout
+ * - `option java_package` is injected, `cc_generic_services` is replaced
+ * with `java_generic_services = false`
+ * - tab indentation is converted to two spaces
+ *
+ * The whitelist is the manifest of vetted protos: only listed files are written
+ * (created if not present locally yet). Upstream imports of unlisted files are dropped
+ * and reported as vetting candidates - protoc fails the build if a listed proto
+ * actually uses their types, which is the prompt to vet the file and whitelist it.
+ *
+ * Usage: `gradlew syncProtobufs`
+ */
+@Suppress("unused")
+abstract class ProtoSyncTask : DefaultTask {
+
+ private data class ProtoModule(
+ val upstreamDir: String,
+ val localDir: String,
+ val pkg: String,
+ val packageLine: String? = null,
+ )
+
+ private companion object {
+ const val REPO_URL = "https://github.com/SteamTracking/Protobufs.git"
+ const val PROTO_ROOT = "src/main/proto/in/dragonbra/javasteam/protobufs"
+
+ val MODULES = listOf(
+ ProtoModule("steam", PROTO_ROOT, "steamclient"),
+ ProtoModule("webui", "javasteam-protobufs-webui/$PROTO_ROOT", "webui", packageLine = "package webui;"),
+ ProtoModule("csgo", "javasteam-cs/$PROTO_ROOT", "cs"),
+ ProtoModule("dota2", "javasteam-dota2/$PROTO_ROOT", "dota2"),
+ ProtoModule("tf2", "javasteam-tf/$PROTO_ROOT", "tf"),
+ ProtoModule("deadlock", "javasteam-deadlock/$PROTO_ROOT", "deadlock"),
+ )
+
+ // Header options owned by the transform: stripped from upstream (and from any
+ // previously transformed file) before the canonical block is inserted.
+ // additional_includes only exists in Valve's own descriptor.proto, protoc rejects it.
+ val MANAGED_OPTIONS = Regex(
+ """^option\s+(optimize_for|cc_generic_services|py_generic_services|java_generic_services|java_package|additional_includes)\b.*"""
+ )
+
+ // Field options that only exist in Valve's own descriptor.proto; bare (non-extension)
+ // names like these are unresolvable with a standard protoc and must be dropped.
+ val VALVE_FIELD_OPTIONS = Regex("""(,\s*)?(boxed_type|synthetic_default)\s*=\s*("[^"]*"|[^,\[\]]+)""")
+
+ // Root-qualified references like `optional .CFoo` / `[(.description) = ...]` break once a
+ // `package` line is injected; they get rewritten relative to the injected package.
+ val ROOT_TYPE_REF = Regex("""([\s(<,])\.(?=[A-Z])""")
+ val ROOT_EXT_OPTION = Regex("""\(\.(?=[a-z_])""")
+
+ val IMPORT_LINE = Regex("""^import( public| weak)?\s+"([^"]+)";?\s*$""")
+ }
+
+ private val rootDir: File = project.projectDir
+ private val checkoutDir: File = project.layout.buildDirectory.dir("steamtracking").get().asFile
+
+ @Inject
+ constructor() {
+ group = "protobufs"
+ description = "Updates all .proto files from SteamTracking/Protobufs"
+ }
+
+ @TaskAction
+ fun sync() {
+ val upstream = obtainUpstream()
+ val sha = git(upstream, "rev-parse", "HEAD").trim()
+ println("Syncing protobufs from SteamTracking/Protobufs @ $sha")
+
+ val whitelist = loadWhitelist()
+ val missing = mutableListOf()
+ val added = mutableListOf()
+ val candidates = mutableListOf()
+ val unmanaged = mutableListOf()
+ var count = 0
+
+ MODULES.forEach { module ->
+ val listed = whitelist[module.pkg].orEmpty()
+ val localDir = rootDir.resolve(module.localDir).resolve(module.pkg)
+ val localFiles = localDir.listFiles { file -> file.extension == "proto" }
+ ?: throw GradleException("Proto directory not found: $localDir")
+
+ localFiles.filter { it.name !in listed }.forEach { unmanaged.add("${module.pkg}/${it.name}") }
+
+ // Line endings of the current checkout, so synced files diff cleanly
+ val eol = localFiles.firstOrNull()?.readText()?.let { if (it.contains("\r\n")) "\r\n" else "\n" } ?: "\n"
+
+ listed.forEach { name ->
+ val upstreamFile = upstream.resolve(module.upstreamDir).resolve(name)
+ if (!upstreamFile.isFile) {
+ missing.add("${module.upstreamDir}/$name")
+ return@forEach
+ }
+
+ // Imports of unlisted files are dropped unless a local copy exists anyway;
+ // dropped ones are reported as vetting candidates.
+ val transformed = transform(upstreamFile.readText(), module) { importName ->
+ val drop = importName !in listed && !localDir.resolve(importName).isFile
+ if (drop) {
+ candidates.add("${module.pkg}/$importName (imported by $name)")
+ }
+ drop
+ }
+ val local = localDir.resolve(name)
+ if (!local.isFile) {
+ added.add("${module.localDir}/${module.pkg}/$name")
+ }
+ local.writeText(transformed.replace("\n", eol))
+ count++
+ }
+ }
+
+ println("Synced $count proto files @ $sha")
+
+ if (added.isNotEmpty()) {
+ println("Added ${added.size} newly whitelisted file(s):")
+ added.forEach { println(" $it") }
+ }
+
+ if (candidates.isNotEmpty()) {
+ println("Skipped ${candidates.size} upstream import(s) of files not in protosync-whitelist.txt;")
+ println("protoc will fail if their types are used - vet them and add them to the whitelist:")
+ candidates.forEach { println(" $it") }
+ }
+
+ if (unmanaged.isNotEmpty()) {
+ println("${unmanaged.size} local proto file(s) are not whitelisted and were left untouched:")
+ unmanaged.forEach { println(" $it") }
+ }
+
+ if (missing.isNotEmpty()) {
+ logger.warn(
+ "WARNING: ${missing.size} whitelisted proto file(s) do not exist upstream " +
+ "(renamed or deleted from SteamTracking, needs manual attention):"
+ )
+ missing.forEach { logger.warn(" $it") }
+ }
+ }
+
+ private fun transform(content: String, module: ProtoModule, dropImport: (String) -> Boolean): String {
+ val importPrefix = "in/dragonbra/javasteam/protobufs/${module.pkg}"
+ val imports = mutableListOf()
+ val body = mutableListOf()
+
+ content.lines().forEach { raw ->
+ val line = raw.trimEnd()
+ val trimmed = line.trim()
+ val importMatch = IMPORT_LINE.matchEntire(trimmed)
+ when {
+ importMatch != null -> {
+ val modifier = importMatch.groupValues[1]
+ val file = importMatch.groupValues[2]
+ val baseName = file.substringAfterLast('/')
+ when {
+ file.startsWith("google/") -> imports.add("import$modifier \"$file\";")
+ !dropImport(baseName) -> imports.add("import$modifier \"$importPrefix/$baseName\";")
+ }
+ }
+ MANAGED_OPTIONS.matches(trimmed) -> Unit
+ module.packageLine != null && trimmed.startsWith("package ") -> Unit
+ else -> body.add(transformBodyLine(line, module))
+ }
+ }
+
+ while (body.isNotEmpty() && body.first().isBlank()) body.removeAt(0)
+ while (body.isNotEmpty() && body.last().isBlank()) body.removeAt(body.lastIndex)
+
+ return buildString {
+ imports.forEach { appendLine(it) }
+ if (imports.isNotEmpty()) appendLine()
+ module.packageLine?.let {
+ appendLine(it)
+ appendLine()
+ }
+ appendLine("option java_package = \"in.dragonbra.javasteam.protobufs.${module.pkg}\";")
+ appendLine()
+ appendLine("option optimize_for = SPEED;")
+ appendLine("option java_generic_services = false;")
+ appendLine()
+ body.forEach { appendLine(it) }
+ }
+ }
+
+ private fun loadWhitelist(): Map> {
+ val file = rootDir.resolve("protosync-whitelist.txt")
+ if (!file.isFile) {
+ throw GradleException("Whitelist not found: $file")
+ }
+
+ val sections = mutableMapOf>()
+ var current: MutableSet? = null
+
+ file.readLines().map { it.trim() }.forEach { line ->
+ when {
+ line.isEmpty() || line.startsWith("#") -> Unit
+ line.startsWith("[") && line.endsWith("]") -> {
+ val pkg = line.substring(1, line.length - 1)
+ if (MODULES.none { it.pkg == pkg }) {
+ throw GradleException("Unknown module [$pkg] in protosync-whitelist.txt")
+ }
+ current = sections.getOrPut(pkg) { mutableSetOf() }
+ }
+ else -> (current ?: throw GradleException("Entry before any [module] section in protosync-whitelist.txt: $line"))
+ .add(line)
+ }
+ }
+
+ return sections
+ }
+
+ private fun transformBodyLine(raw: String, module: ProtoModule): String {
+ var line = stripValveFieldOptions(raw.replace("\t", " "))
+
+ if (module.packageLine != null) {
+ line = line
+ .replace(ROOT_TYPE_REF, "$1")
+ .replace(ROOT_EXT_OPTION, "(${module.pkg}.")
+ }
+
+ return line
+ }
+
+ private fun stripValveFieldOptions(line: String): String {
+ if (!VALVE_FIELD_OPTIONS.containsMatchIn(line)) {
+ return line
+ }
+
+ return line
+ .replace(VALVE_FIELD_OPTIONS, "")
+ .replace(Regex("""\[\s*,\s*"""), "[")
+ .replace(Regex("""\s*,\s*]"""), "]")
+ .replace(Regex("""\s*\[\s*]"""), "")
+ }
+
+ private fun obtainUpstream(): File {
+ if (checkoutDir.resolve(".git").isDirectory) {
+ git(checkoutDir, "fetch", "--depth", "1", "origin", "master")
+ git(checkoutDir, "reset", "--hard", "origin/master")
+ } else {
+ checkoutDir.parentFile.mkdirs()
+ git(checkoutDir.parentFile, "clone", "--depth", "1", REPO_URL, checkoutDir.name)
+ }
+
+ return checkoutDir
+ }
+
+ private fun git(workingDir: File, vararg args: String): String {
+ val process = ProcessBuilder("git", *args)
+ .directory(workingDir)
+ .redirectErrorStream(true)
+ .start()
+
+ val output = process.inputStream.bufferedReader().readText()
+ if (process.waitFor() != 0) {
+ throw GradleException("git ${args.joinToString(" ")} failed:\n$output")
+ }
+
+ return output
+ }
+}
diff --git a/gradle.properties b/gradle.properties
index a4b39382..7ad79a48 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -8,6 +8,8 @@ signing.secretKeyRingFile=~/.gnupg/secring.gpg
ossrhUsername=
ossrhPassword=
-org.gradle.jvmargs=-Xmx2048m
+org.gradle.jvmargs=-Xmx2048m -Didea.max.content.load.filesize=65536
+# The Kotlin compiler refuses to index Java sources larger than 20 MB
+kotlin.daemon.jvmargs=-Xmx2048m -Didea.max.content.load.filesize=65536
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/base_gcmessages.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/base_gcmessages.proto
index 8b60b7b8..d3d99c72 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/base_gcmessages.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/base_gcmessages.proto
@@ -195,21 +195,6 @@ message CMsgApplyStatTrakSwap {
optional uint64 item_2_item_id = 3;
}
-message CMsgApplyStrangePart {
- optional uint64 strange_part_item_id = 1;
- optional uint64 item_item_id = 2;
-}
-
-message CMsgApplyPennantUpgrade {
- optional uint64 upgrade_item_id = 1;
- optional uint64 pennant_item_id = 2;
-}
-
-message CMsgApplyEggEssence {
- optional uint64 essence_item_id = 1;
- optional uint64 egg_item_id = 2;
-}
-
message CSOEconItemAttribute {
optional uint32 def_index = 1;
optional uint32 value = 2;
@@ -246,6 +231,22 @@ message CMsgSortItems {
optional uint32 sort_type = 1;
}
+message CMsgDeleteItem {
+ optional uint64 item_id = 1;
+}
+
+message CMsgModifyItemStringAttr {
+ optional uint64 tool_item_id = 1;
+ optional uint64 subject_item_id = 2;
+ optional uint32 attr_def = 3;
+ optional string attr_value = 4;
+}
+
+message CMsgCraftItemsRequest {
+ optional uint32 recipe_def = 1;
+ repeated uint64 craft_items = 2;
+}
+
message CSOEconClaimCode {
optional uint32 account_id = 1;
optional uint32 code_type = 2;
@@ -279,20 +280,10 @@ message CMsgGCError {
message CMsgRequestInventoryRefresh {
}
-message CMsgConVarValue {
- optional string name = 1;
- optional string value = 2;
-}
-
-message CMsgReplicateConVars {
- repeated .CMsgConVarValue convars = 1;
-}
-
message CMsgUseItem {
optional uint64 item_id = 1;
optional fixed64 target_steam_id = 2;
repeated uint32 gift__potential_targets = 3;
- optional uint32 duel__class_lock = 4;
optional fixed64 initiator_steam_id = 5;
}
@@ -348,13 +339,6 @@ message CMsgGCNameItemNotification {
optional string item_name_custom = 3;
}
-message CMsgGCClientDisplayNotification {
- optional string notification_title_localization_key = 1;
- optional string notification_body_localization_key = 2;
- repeated string body_substring_keys = 3;
- repeated string body_substring_values = 4;
-}
-
message CMsgGCShowItemsPickedUp {
optional fixed64 player_steamid = 1;
}
@@ -388,10 +372,6 @@ message CSOEconItemEventTicket {
optional uint64 item_id = 3;
}
-message CMsgGCItemPreviewItemBoughtNotification {
- optional uint32 item_def_index = 1;
-}
-
message CMsgGCStorePurchaseCancel {
optional uint64 txn_id = 1;
}
@@ -453,11 +433,6 @@ message CMsgGCToGCDirtyMultipleSDOCache {
repeated uint64 key_uint64 = 2;
}
-message CMsgGCCollectItem {
- optional uint64 collection_item_id = 1;
- optional uint64 subject_item_id = 2;
-}
-
message CMsgSDONoMemcached {
}
@@ -545,6 +520,7 @@ message CMsgOpenCrate {
optional uint64 subject_item_id = 2;
optional bool for_rental = 3;
optional uint32 points_remaining = 4;
+ optional uint32 volatile_limit = 5;
}
message CSOEconRentalHistory {
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/cstrike15_gcmessages.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/cstrike15_gcmessages.proto
index f77f78cd..e322c5af 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/cstrike15_gcmessages.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/cstrike15_gcmessages.proto
@@ -95,14 +95,9 @@ enum ECsgoGCMsg {
k_EMsgGCCStrike15_v2_ClientPerfReport = 9202;
k_EMsgGCCStrike15_v2_GetEventFavorites_Response = 9203;
k_EMsgGCCStrike15_v2_ClientRequestSouvenir = 9204;
- k_EMsgGCCStrike15_v2_ClientReportValidation = 9205;
- k_EMsgGCCStrike15_v2_GC2ClientRefuseSecureMode = 9206;
- k_EMsgGCCStrike15_v2_GC2ClientRequestValidation = 9207;
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;
k_EMsgGCCStrike15_v2_MatchListTournamentOperatorMgmt = 9215;
k_EMsgGCCStrike15_v2_BetaEnrollment = 9217;
@@ -116,6 +111,8 @@ enum ECsgoGCMsg {
k_EMsgGCCStrike15_v2_RequestRecurringMissionSchedule = 9225;
k_EMsgGCCStrike15_v2_RecurringMissionSchema = 9226;
k_EMsgGCCStrike15_v2_VolatileItemClaimReward = 9227;
+ k_EMsgGCCStrike15_v2_VolatileShopSubscribe = 9228;
+ k_EMsgGCCStrike15_v2_SetClanId = 9229;
}
enum ECsgoSteamUserStat {
@@ -135,18 +132,6 @@ enum EClientReportingVersion {
k_EClientReportingVersion_SupportsTrustedMode = 2;
}
-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;
-}
-
message GameServerPing {
optional int32 ping = 2;
optional uint32 ip = 3;
@@ -556,6 +541,7 @@ message CMsgGCCStrike15_v2_MatchmakingGC2ServerReserve {
optional uint32 socache_control = 20;
repeated int32 teammate_colors = 21;
optional uint32 match_id_additional = 22;
+ repeated string clan_tags = 23;
}
message CMsgGCCStrike15_v2_MatchmakingServerReservationResponse {
@@ -686,6 +672,7 @@ message CMsgGCCStrike15_v2_ServerNotificationForUserPenalty {
optional uint32 reason = 2;
optional uint32 seconds = 3;
optional bool communication_cooldown = 4;
+ optional uint32 cheating_penalty_level = 5;
}
message CMsgGCCStrike15_v2_ClientReportPlayer {
@@ -757,6 +744,7 @@ message CMsgGCCStrike15_v2_ClientRequestJoinFriendData {
optional uint32 join_ipp = 4;
optional .CMsgGCCStrike15_v2_MatchmakingGC2ClientReserve res = 5;
optional string errormsg = 6;
+ optional bool is_local_server = 7;
}
message CMsgGCCStrike15_v2_ClientRequestJoinServerData {
@@ -775,6 +763,8 @@ message CMsgGCCstrike15_v2_ClientRedeemMissionReward {
optional uint32 redeemable_balance = 3;
optional uint32 expected_cost = 4;
optional int32 bid_control = 5;
+ repeated uint64 volatile_shop = 6;
+ optional uint64 souvenir_matchid = 7;
}
message CMsgGCCstrike15_v2_ClientRedeemFreeReward {
@@ -942,7 +932,7 @@ message CEconItemPreviewDataBlock {
optional uint32 paintseed = 8;
optional uint32 killeaterscoretype = 9;
optional uint32 killeatervalue = 10;
- optional string customname = 11;
+ repeated string customnames = 11;
repeated .CEconItemPreviewDataBlock.Sticker stickers = 12;
optional uint32 inventory = 13;
optional uint32 origin = 14;
@@ -955,6 +945,8 @@ message CEconItemPreviewDataBlock {
optional uint32 style = 21;
repeated .CEconItemPreviewDataBlock.Sticker variations = 22;
optional uint32 upgrade_level = 23;
+ optional uint32 pet_food_expiration_date = 24;
+ optional bytes blobdata = 25;
}
message CMsgGCCStrike15_v2_MatchEndRewardDropsNotification {
@@ -1203,6 +1195,14 @@ message CSOVolatileItemClaimedRewards {
repeated uint32 generation_time = 3;
}
+message CMsgGCCStrike15_v2_VolatileShopSubscribe {
+ optional uint32 defidx = 1;
+ optional uint64 psid = 2;
+ optional uint32 upnext = 3;
+ optional uint32 gctime = 4;
+ optional bytes payload = 5;
+}
+
message CSOAccountKeychainRemoveToolCharges {
optional uint32 charges = 1;
}
@@ -1240,6 +1240,8 @@ message CSOPersonaDataPublic {
optional bool elevated_state = 3;
optional uint32 xp_trail_timestamp_refresh = 4;
optional uint32 xp_trail_level = 5;
+ optional uint32 clan_id = 6;
+ optional string clan_tag = 7;
}
message CSOAccountRecurringMission {
@@ -1434,6 +1436,10 @@ message CMsgGCCStrike15_v2_ClientAccountBalance {
optional string url = 2;
}
+message CMsgGCCStrike15_v2_SetClanId {
+ optional uint32 clan_id = 1;
+}
+
message CMsgGCCStrike15_v2_ClientPartyJoinRelay {
optional uint32 accountid = 1;
optional uint64 lobbyid = 2;
@@ -1483,71 +1489,6 @@ message CVDiagnostic {
optional string string_value = 4;
}
-message CMsgGCCStrike15_v2_ClientReportValidation {
- optional string file_report = 1;
- optional string command_line = 2;
- optional uint32 total_files = 3;
- optional uint32 internal_error = 4;
- optional uint32 trust_time = 5;
- optional uint32 count_pending = 6;
- optional uint32 count_completed = 7;
- optional uint32 process_id = 8;
- optional int32 osversion = 9;
- optional uint32 clientreportversion = 10;
- optional uint32 status_id = 11;
- optional uint32 diagnostic1 = 12;
- optional uint64 diagnostic2 = 13;
- optional uint64 diagnostic3 = 14;
- optional string last_launch_data = 15;
- optional uint32 report_count = 16;
- optional uint64 client_time = 17;
- optional uint64 diagnostic4 = 18;
- optional uint64 diagnostic5 = 19;
- repeated .CVDiagnostic diagnostics = 20;
-}
-
-message CMsgGCCStrike15_v2_GC2ClientRefuseSecureMode {
- optional string file_report = 1;
- optional bool offer_insecure_mode = 2;
- optional bool offer_secure_mode = 3;
- optional bool show_unsigned_ui = 4;
- optional bool kick_user = 5;
- optional bool show_trusted_ui = 6;
- optional bool show_warning_not_trusted = 7;
- optional bool show_warning_not_trusted_2 = 8;
- optional string files_prevented_trusted = 9;
-}
-
-message CMsgGCCStrike15_v2_GC2ClientRequestValidation {
- optional bool full_report = 1;
- optional string module = 2;
-}
-
-message CMsgGCCStrike15_v2_GC2ClientInitSystem {
- optional bool load = 1;
- optional string name = 2;
- optional string outputname = 3;
- optional bytes key_data = 4;
- optional bytes sha_hash = 5;
- optional int32 cookie = 6;
- optional string manifest = 7;
- optional bytes system_package = 8;
- optional bool load_system = 9;
-}
-
-message CMsgGCCStrike15_v2_GC2ClientInitSystem_Response {
- optional bool success = 1;
- optional string diagnostic = 2;
- optional bytes sha_hash = 3;
- optional int32 response = 4;
- optional int32 error_code1 = 5;
- optional int32 error_code2 = 6;
- optional int64 handle = 7;
- optional .EInitSystemResult einit_result = 8 [default = k_EInitSystemResult_Invalid];
- optional int32 aux_system1 = 9;
- optional int32 aux_system2 = 10;
-}
-
message CMsgGCCStrike15_v2_SetPlayerLeaderboardSafeName {
optional string leaderboard_safe_name = 1;
}
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/econ_gcmessages.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/econ_gcmessages.proto
index dd41d0e2..9d6d35dd 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/econ_gcmessages.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/econ_gcmessages.proto
@@ -11,15 +11,15 @@ enum EGCItemMsg {
k_EMsgGCCraft = 1002;
k_EMsgGCCraftResponse = 1003;
k_EMsgGCDelete = 1004;
- k_EMsgGCVerifyCacheSubscription = 1005;
+ k_EMsgGCVerifyCacheSubscription_DEPRECATED = 1005;
k_EMsgGCNameItem = 1006;
k_EMsgGCUnlockCrate_DEPRECATED = 1007;
k_EMsgGCUnlockCrateResponse = 1008;
- k_EMsgGCPaintItem = 1009;
- k_EMsgGCPaintItemResponse = 1010;
- k_EMsgGCGoldenWrenchBroadcast = 1011;
- k_EMsgGCMOTDRequest = 1012;
- k_EMsgGCMOTDRequestResponse = 1013;
+ k_EMsgGCPaintItem_DEPRECATED = 1009;
+ k_EMsgGCPaintItemResponse_DEPRECATED = 1010;
+ k_EMsgGCGoldenWrenchBroadcast_DEPRECATED = 1011;
+ k_EMsgGCMOTDRequest_DEPRECATED = 1012;
+ k_EMsgGCMOTDRequestResponse_DEPRECATED = 1013;
k_EMsgGCAddItemToSocket_DEPRECATED = 1014;
k_EMsgGCAddItemToSocketResponse_DEPRECATED = 1015;
k_EMsgGCAddSocketToBaseItem_DEPRECATED = 1016;
@@ -29,59 +29,59 @@ enum EGCItemMsg {
k_EMsgGCNameBaseItemResponse = 1020;
k_EMsgGCRemoveSocketItem_DEPRECATED = 1021;
k_EMsgGCRemoveSocketItemResponse_DEPRECATED = 1022;
- k_EMsgGCCustomizeItemTexture = 1023;
- k_EMsgGCCustomizeItemTextureResponse = 1024;
+ k_EMsgGCCustomizeItemTexture_DEPRECATED = 1023;
+ k_EMsgGCCustomizeItemTextureResponse_DEPRECATED = 1024;
k_EMsgGCUseItemRequest = 1025;
k_EMsgGCUseItemResponse = 1026;
k_EMsgGCGiftedItems_DEPRECATED = 1027;
k_EMsgGCRemoveItemName = 1030;
- k_EMsgGCRemoveItemPaint = 1031;
- k_EMsgGCGiftWrapItem = 1032;
- k_EMsgGCGiftWrapItemResponse = 1033;
- k_EMsgGCDeliverGift = 1034;
- k_EMsgGCDeliverGiftResponseGiver = 1035;
- k_EMsgGCDeliverGiftResponseReceiver = 1036;
- k_EMsgGCUnwrapGiftRequest = 1037;
- k_EMsgGCUnwrapGiftResponse = 1038;
- k_EMsgGCSetItemStyle = 1039;
- k_EMsgGCUsedClaimCodeItem = 1040;
+ k_EMsgGCRemoveItemPaint_DEPRECATED = 1031;
+ k_EMsgGCGiftWrapItem_DEPRECATED = 1032;
+ k_EMsgGCGiftWrapItemResponse_DEPRECATED = 1033;
+ k_EMsgGCDeliverGift_DEPRECATED = 1034;
+ k_EMsgGCDeliverGiftResponseGiver_DEPRECATED = 1035;
+ k_EMsgGCDeliverGiftResponseReceiver_DEPRECATED = 1036;
+ k_EMsgGCUnwrapGiftRequest_DEPRECATED = 1037;
+ k_EMsgGCUnwrapGiftResponse_DEPRECATED = 1038;
+ k_EMsgGCSetItemStyle_DEPRECATED = 1039;
+ k_EMsgGCUsedClaimCodeItem_DEPRECATED = 1040;
k_EMsgGCSortItems = 1041;
k_EMsgGC_RevolvingLootList_DEPRECATED = 1042;
- k_EMsgGCLookupAccount = 1043;
- k_EMsgGCLookupAccountResponse = 1044;
- k_EMsgGCLookupAccountName = 1045;
- k_EMsgGCLookupAccountNameResponse = 1046;
+ k_EMsgGCLookupAccount_DEPRECATED = 1043;
+ k_EMsgGCLookupAccountResponse_DEPRECATED = 1044;
+ k_EMsgGCLookupAccountName_DEPRECATED = 1045;
+ k_EMsgGCLookupAccountNameResponse_DEPRECATED = 1046;
k_EMsgGCUpdateItemSchema = 1049;
- k_EMsgGCRemoveCustomTexture = 1051;
- k_EMsgGCRemoveCustomTextureResponse = 1052;
- k_EMsgGCRemoveMakersMark = 1053;
- k_EMsgGCRemoveMakersMarkResponse = 1054;
- k_EMsgGCRemoveUniqueCraftIndex = 1055;
- k_EMsgGCRemoveUniqueCraftIndexResponse = 1056;
+ k_EMsgGCRemoveCustomTexture_DEPRECATED = 1051;
+ k_EMsgGCRemoveCustomTextureResponse_DEPRECATED = 1052;
+ k_EMsgGCRemoveMakersMark_DEPRECATED = 1053;
+ k_EMsgGCRemoveMakersMarkResponse_DEPRECATED = 1054;
+ k_EMsgGCRemoveUniqueCraftIndex_DEPRECATED = 1055;
+ k_EMsgGCRemoveUniqueCraftIndexResponse_DEPRECATED = 1056;
k_EMsgGCSaxxyBroadcast = 1057;
k_EMsgGCBackpackSortFinished = 1058;
- k_EMsgGCCollectItem = 1061;
+ k_EMsgGCCollectItem_DEPRECATED = 1061;
k_EMsgGCItemAcknowledged__DEPRECATED = 1062;
k_EMsgGC_ReportAbuse = 1065;
k_EMsgGC_ReportAbuseResponse = 1066;
k_EMsgGCNameItemNotification = 1068;
- k_EMsgGCApplyConsumableEffects = 1069;
+ k_EMsgGCApplyConsumableEffects_DEPRECATED = 1069;
k_EMsgGCConsumableExhausted = 1070;
k_EMsgGCShowItemsPickedUp = 1071;
- k_EMsgGCClientDisplayNotification = 1072;
- k_EMsgGCApplyStrangePart = 1073;
+ k_EMsgGCClientDisplayNotification_DEPRECATED = 1072;
+ k_EMsgGCApplyStrangePart_DEPRECATED = 1073;
k_EMsgGC_IncrementKillCountAttribute = 1074;
k_EMsgGC_IncrementKillCountResponse = 1075;
- k_EMsgGCApplyPennantUpgrade = 1076;
+ k_EMsgGCApplyPennantUpgrade_DEPRECATED = 1076;
k_EMsgGCSetItemPositions = 1077;
- k_EMsgGCApplyEggEssence = 1078;
- k_EMsgGCNameEggEssenceResponse = 1079;
- k_EMsgGCPaintKitItem = 1080;
- k_EMsgGCPaintKitBaseItem = 1081;
- k_EMsgGCPaintKitItemResponse = 1082;
+ k_EMsgGCApplyEggEssence_DEPRECATED = 1078;
+ k_EMsgGCNameEggEssenceResponse_DEPRECATED = 1079;
+ k_EMsgGCPaintKitItem_DEPRECATED = 1080;
+ k_EMsgGCPaintKitBaseItem_DEPRECATED = 1081;
+ k_EMsgGCPaintKitItemResponse_DEPRECATED = 1082;
k_EMsgGCGiftedItems = 1083;
- k_EMsgGCUnlockItemStyle = 1084;
- k_EMsgGCUnlockItemStyleResponse = 1085;
+ k_EMsgGCUnlockItemStyle_DEPRECATED = 1084;
+ k_EMsgGCUnlockItemStyleResponse_DEPRECATED = 1085;
k_EMsgGCApplySticker = 1086;
k_EMsgGCItemAcknowledged = 1087;
k_EMsgGCStatTrakSwap = 1088;
@@ -91,33 +91,19 @@ enum EGCItemMsg {
k_EMsgGCCasketItemAdd = 1092;
k_EMsgGCCasketItemExtract = 1093;
k_EMsgGCCasketItemLoadContents = 1094;
- k_EMsgGCTradingBase = 1500;
- k_EMsgGCTrading_InitiateTradeRequest = 1501;
- k_EMsgGCTrading_InitiateTradeResponse = 1502;
- k_EMsgGCTrading_StartSession = 1503;
- k_EMsgGCTrading_SetItem = 1504;
- k_EMsgGCTrading_RemoveItem = 1505;
- k_EMsgGCTrading_UpdateTradeInfo = 1506;
- k_EMsgGCTrading_SetReadiness = 1507;
- k_EMsgGCTrading_ReadinessResponse = 1508;
- k_EMsgGCTrading_SessionClosed = 1509;
- k_EMsgGCTrading_CancelSession = 1510;
- k_EMsgGCTrading_TradeChatMsg = 1511;
- k_EMsgGCTrading_ConfirmOffer = 1512;
- k_EMsgGCTrading_TradeTypingChatMsg = 1513;
- k_EMsgGCServerBrowser_FavoriteServer = 1601;
- k_EMsgGCServerBrowser_BlacklistServer = 1602;
- k_EMsgGCServerRentalsBase = 1700;
- k_EMsgGCItemPreviewCheckStatus = 1701;
- k_EMsgGCItemPreviewStatusResponse = 1702;
- k_EMsgGCItemPreviewRequest = 1703;
- k_EMsgGCItemPreviewRequestResponse = 1704;
- k_EMsgGCItemPreviewExpire = 1705;
- k_EMsgGCItemPreviewExpireNotification = 1706;
- k_EMsgGCItemPreviewItemBoughtNotification = 1707;
+ k_EMsgGCServerBrowser_FavoriteServer_DEPRECATED = 1601;
+ k_EMsgGCServerBrowser_BlacklistServer_DEPRECATED = 1602;
+ k_EMsgGCServerRentalsBase_DEPRECATED = 1700;
+ k_EMsgGCItemPreviewCheckStatus_DEPRECATED = 1701;
+ k_EMsgGCItemPreviewStatusResponse_DEPRECATED = 1702;
+ k_EMsgGCItemPreviewRequest_DEPRECATED = 1703;
+ k_EMsgGCItemPreviewRequestResponse_DEPRECATED = 1704;
+ k_EMsgGCItemPreviewExpire_DEPRECATED = 1705;
+ k_EMsgGCItemPreviewExpireNotification_DEPRECATED = 1706;
+ k_EMsgGCItemPreviewItemBoughtNotification_DEPRECATED = 1707;
k_EMsgGCDev_NewItemRequest = 2001;
k_EMsgGCDev_NewItemRequestResponse = 2002;
- k_EMsgGCDev_PaintKitDropItem = 2003;
+ k_EMsgGCDev_PaintKitDropItem_DEPRECATED = 2003;
k_EMsgGCDev_SchemaReservationRequest = 2004;
k_EMsgGCStoreGetUserData = 2500;
k_EMsgGCStoreGetUserDataResponse = 2501;
@@ -127,8 +113,8 @@ enum EGCItemMsg {
k_EMsgGCStorePurchaseFinalizeResponse = 2505;
k_EMsgGCStorePurchaseCancel = 2506;
k_EMsgGCStorePurchaseCancelResponse = 2507;
- k_EMsgGCStorePurchaseQueryTxn = 2508;
- k_EMsgGCStorePurchaseQueryTxnResponse = 2509;
+ k_EMsgGCStorePurchaseQueryTxn_DEPRECATED = 2508;
+ k_EMsgGCStorePurchaseQueryTxnResponse_DEPRECATED = 2509;
k_EMsgGCStorePurchaseInit = 2510;
k_EMsgGCStorePurchaseInitResponse = 2511;
k_EMsgGCBannedWordListRequest = 2512;
@@ -169,15 +155,6 @@ enum EGCMsgResponse {
k_EGCMsgCommitUnfinalized = 10;
}
-enum EUnlockStyle {
- k_UnlockStyle_Succeeded = 0;
- k_UnlockStyle_Failed_PreReq = 1;
- k_UnlockStyle_Failed_CantAfford = 2;
- k_UnlockStyle_Failed_CantCommit = 3;
- k_UnlockStyle_Failed_CantLockCache = 4;
- k_UnlockStyle_Failed_CantAffordAttrib = 5;
-}
-
enum EGCItemCustomizationNotification {
k_EGCItemCustomizationNotification_NameItem = 1006;
k_EGCItemCustomizationNotification_UnlockCrate = 1007;
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/gcsystemmsgs.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/gcsystemmsgs.proto
index 583c6a6d..24c8c012 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/gcsystemmsgs.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/gcsystemmsgs.proto
@@ -26,7 +26,7 @@ enum EGCSystemMsg {
k_EGCMsgLookupAccountFromInput = 66;
k_EGCMsgSendHTTPRequest = 67;
k_EGCMsgSendHTTPRequestResponse = 68;
- k_EGCMsgPreTestSetup = 69;
+ k_EGCMsgPreTestSetup_DEPRECATED = 69;
k_EGCMsgRecordSupportAction = 70;
k_EGCMsgGetAccountDetails_DEPRECATED = 71;
k_EGCMsgReceiveInterAppMessage = 73;
@@ -96,6 +96,13 @@ enum EGCSystemMsg {
k_EGCMsgRecurringSubscriptionStatusChange = 530;
k_EGCMsgDirectServiceMethod = 531;
k_EGCMsgDirectServiceMethodResponse = 532;
+ k_EGCMsgAppCheersReceived = 533;
+ k_EGCMsgAppCheersGetAllowedTypes = 534;
+ k_EGCMsgAppCheersGetAllowedTypesResponse = 535;
+ k_EGCMsgReportMetrics = 536;
+ k_EGCMsgReportMetricsResponse = 537;
+ k_EGCMsgGetClanDetails = 538;
+ k_EGCMsgGetClanDetailsResponse = 539;
}
enum ESOMsg {
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/netmessages.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/netmessages.proto
index 76cd28b7..b1c3ba2c 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/netmessages.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/netmessages.proto
@@ -1,5 +1,6 @@
import "in/dragonbra/javasteam/protobufs/cs/networkbasetypes.proto";
import "in/dragonbra/javasteam/protobufs/cs/source2_steam_stats.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.cs";
@@ -55,6 +56,7 @@ enum SVC_Messages {
svc_HltvFixupOperatorStatus = 75;
svc_UserCmds = 76;
svc_NextMsgPredicted = 77;
+ svc_EncryptedData = 78;
}
enum VoiceDataFormat_t {
@@ -100,15 +102,10 @@ enum SVC_Messages_LowFrequency {
enum Bidirectional_Messages {
bi_RebroadcastGameEvent = 16;
bi_RebroadcastSource = 17;
- bi_GameEvent = 18;
+ bi_GameEvent_DEPRECATED = 18;
bi_PredictionEvent = 19;
}
-enum Bidirectional_Messages_LowFrequency {
- bi_RelayInfo = 700;
- bi_RelayPacket = 701;
-}
-
enum ReplayEventType_t {
REPLAY_EVENT_CANCEL = 0;
REPLAY_EVENT_DEATH = 1;
@@ -206,7 +203,7 @@ message CCLCMsg_Diagnostic {
}
message CSVCMsg_ServerInfo {
- option (maximum_size_bytes) = 102400;
+ option (maximum_size_bytes) = 409600;
optional int32 protocol = 1;
optional int32 server_count = 2;
@@ -227,6 +224,8 @@ message CSVCMsg_ServerInfo {
}
message CSVCMsg_ClassInfo {
+ option (maximum_size_bytes) = 8192;
+
message class_t {
optional int32 class_id = 1;
optional string class_name = 3;
@@ -247,6 +246,8 @@ message CSVCMsg_VoiceInit {
}
message CSVCMsg_Print {
+ option (maximum_size_bytes) = 8192;
+
optional string text = 1;
}
@@ -409,7 +410,7 @@ message CSVCMsg_TempEntities {
}
message CSVCMsg_CreateStringTable {
- option (maximum_size_bytes) = 49152;
+ option (maximum_size_bytes) = 102400;
optional string name = 1;
optional int32 num_entries = 2;
@@ -433,12 +434,19 @@ message CSVCMsg_UpdateStringTable {
message CSVCMsg_VoiceData {
optional .CMsgVoiceAudio audio = 1;
- optional int32 client = 2 [default = -1];
+ optional int32 client_deprecated = 2 [default = -1];
optional bool proximity = 3;
optional fixed64 xuid = 4;
optional int32 audible_mask = 5;
optional uint32 tick = 6;
optional int32 passthrough = 7;
+ optional int32 entity = 8 [default = -1];
+ optional bool caster = 9;
+}
+
+message CSVCMsg_EncryptedData {
+ optional bytes encrypted = 1;
+ optional int32 key_type = 2;
}
message CSVCMsg_PacketReliable {
@@ -503,6 +511,10 @@ message ProtoFlattenedSerializerField_t {
optional int32 polymorphic_field_serializer_version = 2;
}
+ message proto_enum_info_t {
+ optional bool is_signed_enum = 1;
+ }
+
optional int32 var_type_sym = 1;
optional int32 var_name_sym = 2;
optional int32 bit_count = 3;
@@ -515,6 +527,7 @@ message ProtoFlattenedSerializerField_t {
optional int32 var_encoder_sym = 10;
repeated .ProtoFlattenedSerializerField_t.polymorphic_field_t polymorphic_types = 11;
optional int32 var_serializer_sym = 12;
+ optional .ProtoFlattenedSerializerField_t.proto_enum_info_t var_enum_info = 13;
}
message ProtoFlattenedSerializer_t {
@@ -523,12 +536,22 @@ message ProtoFlattenedSerializer_t {
repeated int32 fields_index = 3;
}
+message ProtoCoordSizeParams_t {
+ optional int32 coord_integer_bits = 1;
+ optional int32 coord_fractional_bits = 2;
+ optional int32 coord_integer_bits_mp = 3;
+ optional int32 coord_fractional_bits_mp = 4;
+ optional int32 normal_fractional_bits = 5;
+ optional int32 angle_bits = 6;
+}
+
message CSVCMsg_FlattenedSerializer {
option (maximum_size_bytes) = 0;
repeated .ProtoFlattenedSerializer_t serializers = 1;
repeated string symbols = 2;
repeated .ProtoFlattenedSerializerField_t fields = 3;
+ optional .ProtoCoordSizeParams_t coord_size_params = 4;
}
message CSVCMsg_StopSound {
@@ -647,6 +670,8 @@ message CMsgServerUserCmd {
optional int32 player_slot = 3 [default = -1];
optional int32 server_tick_executed = 4;
optional int32 client_tick = 5;
+ optional bytes delta_data = 6;
+ optional bool delta_processed = 7;
}
message CSVCMsg_UserCommands {
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/networkbasetypes.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/networkbasetypes.proto
index b88a370f..4f6b609f 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/networkbasetypes.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/networkbasetypes.proto
@@ -1,3 +1,4 @@
+import "in/dragonbra/javasteam/protobufs/cs/valveextensions.proto";
import "google/protobuf/descriptor.proto";
import "in/dragonbra/javasteam/protobufs/cs/network_connection.proto";
@@ -49,6 +50,8 @@ enum SpawnGroupFlags_t {
}
message CMsgVector {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
@@ -56,17 +59,23 @@ message CMsgVector {
}
message CMsgVector2D {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
}
message CMsgQAngle {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
}
message CMsgQuaternion {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
@@ -74,12 +83,16 @@ message CMsgQuaternion {
}
message CMsgTransform {
+ option (codegen_delta_encoder) = true;
+
optional .CMsgVector position = 1;
optional float scale = 2;
optional .CMsgQuaternion orientation = 3;
}
message CMsgRGBA {
+ option (codegen_delta_encoder) = true;
+
optional int32 r = 1;
optional int32 g = 2;
optional int32 b = 3;
@@ -93,6 +106,8 @@ message CMsgPlayerInfo {
optional fixed64 steamid = 4;
optional bool fakeplayer = 5;
optional bool ishltv = 6;
+ optional bool clan_member = 9;
+ optional bool clan_officer = 10;
}
message CEntityMsg {
@@ -200,6 +215,8 @@ message CNETMsg_SpawnGroup_Load {
}
message CNETMsg_SpawnGroup_ManifestUpdate {
+ option (maximum_size_bytes) = 2048;
+
optional uint32 spawngrouphandle = 1;
optional bytes spawngroupmanifest = 2;
optional bool manifestincomplete = 3;
@@ -221,6 +238,15 @@ message CNETMsg_SpawnGroup_LoadCompleted {
optional uint32 spawngrouphandle = 1;
}
+message QuantizedFloatEncoderAlias_t {
+ optional string name = 1;
+ optional int32 bit_count = 2;
+ optional int32 encode_flags = 3;
+ optional float min_value = 4;
+ optional float max_value = 5;
+ optional bool validate = 6;
+}
+
message CSVCMsg_GameSessionConfiguration {
optional bool is_multiplayer = 1;
optional bool is_loadsavegame = 2;
@@ -241,6 +267,8 @@ message CSVCMsg_GameSessionConfiguration {
optional bool is_transition = 16;
optional string previouslevel = 17;
optional string landmarkname = 18;
+ repeated .QuantizedFloatEncoderAlias_t quantized_float_encoder_aliases = 20;
+ optional float max_coord = 21;
}
message CNETMsg_DebugOverlay {
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/source2_steam_stats.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/source2_steam_stats.proto
index 5bdb378e..c75d0ab9 100644
--- a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/source2_steam_stats.proto
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/source2_steam_stats.proto
@@ -19,6 +19,9 @@ enum ESource2PlayStatsFieldType {
Source2PlayStats_String = 12;
Source2PlayStats_LowCardinalityString = 13;
Source2PlayStats_UTCDateTime = 14;
+ Source2PlayStats_SteamIDTrustBucket = 15;
+ Source2PlayStats_SteamIDTrustBucketMin = 16;
+ Source2PlayStats_SteamID = 17;
}
message CMsgSource2SystemSpecs {
@@ -81,6 +84,14 @@ message CMsgSource2NetworkFlowQuality {
optional uint32 netframes_size_exceeds_mtu = 34;
optional uint32 netframes_size_p95 = 35;
optional uint32 netframes_size_p99 = 36;
+ optional uint32 netframes_size_uncompressed_p50 = 12;
+ optional uint32 netframes_size_uncompressed_p95 = 13;
+ optional uint32 netframes_size_uncompressed_p99 = 14;
+ optional uint32 netframes_size_uncompressed_max = 15;
+ optional uint32 netframes_msgs_p50 = 16;
+ optional uint32 netframes_msgs_p95 = 17;
+ optional uint32 netframes_msgs_p99 = 18;
+ optional uint32 netframes_msgs_max = 19;
optional uint32 ticks_total = 40;
optional uint32 ticks_good = 41;
optional uint32 ticks_good_almost_late = 42;
@@ -110,6 +121,18 @@ message CMsgSource2NetworkFlowQuality {
optional uint32 net_ping_p5 = 80;
optional uint32 net_ping_p50 = 81;
optional uint32 net_ping_p95 = 82;
+ optional uint32 msgproc_usec_p50 = 90;
+ optional uint32 msgproc_usec_p95 = 91;
+ optional uint32 msgproc_usec_p99 = 92;
+ optional uint32 msgproc_usec_max = 93;
+ optional uint32 msgproc_usec_avg_p50 = 94;
+ optional uint32 msgproc_usec_avg_p95 = 95;
+ optional uint32 msgproc_usec_avg_p99 = 96;
+ optional uint32 msgproc_usec_avg_max = 97;
+ optional uint32 queuedmsgs_p50 = 100;
+ optional uint32 queuedmsgs_p95 = 101;
+ optional uint32 queuedmsgs_p99 = 102;
+ optional uint32 queuedmsgs_max = 103;
}
message CMsgSource2PerfIntervalSample {
@@ -152,6 +175,10 @@ message CMsgSource2PlayStatsPackedRecordList {
optional .ESource2PlayStatsFieldType field_type = 2 [default = Source2PlayStats_Invalid];
}
+ message SteamIDList {
+ repeated fixed64 steamid = 1 [packed = true];
+ }
+
optional string record_name = 1;
repeated .CMsgSource2PlayStatsPackedRecordList.FieldDef field_defs = 2;
optional uint32 record_count = 3;
@@ -169,9 +196,41 @@ message CMsgSource2PlayStatsPackedRecordList {
repeated string string_vals = 15;
repeated string low_cardinality_string_vals = 16;
repeated fixed32 utcdatetime_vals = 17 [packed = true];
+ repeated fixed64 steamidtrustbucket_vals = 18 [packed = true];
+ repeated .CMsgSource2PlayStatsPackedRecordList.SteamIDList trustbucket_vals = 19;
+ repeated uint64 steamid_vals = 20 [packed = true];
}
message CSource2Metrics_RecordPlayStats_Notification {
repeated .CMsgSource2PlayStatsPackedRecordList record_types = 1;
optional uint32 appid = 2;
}
+
+message CSource2Metrics_FetchMapData_Request {
+ optional uint32 appid = 1;
+ optional string map_name = 2;
+ optional uint32 game_type = 3;
+ optional uint32 game_mode = 4;
+ optional string param = 5;
+ optional uint32 time_span = 6;
+}
+
+message CSource2Metrics_FetchMapData_Response {
+ message MapData {
+ optional string name = 1;
+ optional string type = 2;
+ optional string data = 3;
+ }
+
+ repeated .CSource2Metrics_FetchMapData_Response.MapData results = 1;
+}
+
+message CUserMessage_UserSentBugBug {
+ optional string command_line = 1;
+ optional string autoexec_cfg = 2;
+ optional .CMsgSource2SystemSpecs system_specs = 3;
+ optional uint32 build_id = 4;
+ optional int32 osversion = 5;
+ optional string command_logs = 6;
+ optional int32 bugbug_no = 7;
+}
diff --git a/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/valveextensions.proto b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/valveextensions.proto
new file mode 100644
index 00000000..a4992a17
--- /dev/null
+++ b/javasteam-cs/src/main/proto/in/dragonbra/javasteam/protobufs/cs/valveextensions.proto
@@ -0,0 +1,36 @@
+import "google/protobuf/descriptor.proto";
+
+option java_package = "in.dragonbra.javasteam.protobufs.cs";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+extend .google.protobuf.MessageOptions {
+ optional bool codegen_delta_encoder = 61000 [default = false];
+}
+
+extend .google.protobuf.FieldOptions {
+ optional bool valve_map_field = 61000 [default = false];
+ optional bool valve_map_key = 61001 [default = false];
+ optional int32 diff_encode_field = 61002 [default = 0];
+ optional bool delta_ignore = 61003 [default = false];
+ optional int32 untrusted_delta_max = 61008 [default = 256];
+ optional uint32 steamml_max_entries = 61004 [default = 0];
+ optional bool steamml_is_timestamp = 61005 [default = false];
+ optional uint32 steamlearn_count = 61006 [default = 0];
+ optional .EProtoDebugVisiblity debugprint_visibility = 61007 [default = k_EProtoDebugVisibility_Always];
+}
+
+extend .google.protobuf.EnumValueOptions {
+ optional string schema_friendly_name = 1000;
+ optional string schema_description = 1001;
+ optional bool schema_suppress_enumerator = 1002;
+}
+
+enum EProtoDebugVisiblity {
+ k_EProtoDebugVisibility_Always = 0;
+ k_EProtoDebugVisibility_Server = 70;
+ k_EProtoDebugVisibility_ValveServer = 80;
+ k_EProtoDebugVisibility_GC = 90;
+ k_EProtoDebugVisibility_Never = 100;
+}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto
index 26891983..ab1b849f 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -8,410 +9,411 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EGCBaseMsg {
- k_EMsgGCInviteToParty = 4501;
- k_EMsgGCInvitationCreated = 4502;
- k_EMsgGCPartyInviteResponse = 4503;
- k_EMsgGCKickFromParty = 4504;
- k_EMsgGCLeaveParty = 4505;
- k_EMsgGCServerAvailable = 4506;
- k_EMsgGCClientConnectToServer = 4507;
- k_EMsgGCGameServerInfo = 4508;
- k_EMsgGCLANServerAvailable = 4511;
- k_EMsgGCInviteToLobby = 4512;
- k_EMsgGCLobbyInviteResponse = 4513;
- k_EMsgGCToClientPollFileRequest = 4514;
- k_EMsgGCToClientPollFileResponse = 4515;
- k_EMsgGCToGCPerformManualOp = 4516;
- k_EMsgGCToGCPerformManualOpCompleted = 4517;
- k_EMsgGCToGCReloadServerRegionSettings = 4518;
- k_EMsgGCAdditionalWelcomeMsgList = 4519;
- k_EMsgGCToClientApplyRemoteConVars = 4520;
- k_EMsgGCToServerApplyRemoteConVars = 4521;
- k_EMsgClientToGCIntegrityStatus = 4522;
- k_EMsgClientToGCAggregateMetrics = 4523;
- k_EMsgGCToClientAggregateMetricsBackoff = 4524;
- k_EMsgGCToServerSteamLearnAccessTokensChanged = 4525;
- k_EMsgGCToServerSteamLearnUseHTTP = 4526;
+ k_EMsgGCInviteToParty = 4501;
+ k_EMsgGCInvitationCreated = 4502;
+ k_EMsgGCPartyInviteResponse = 4503;
+ k_EMsgGCKickFromParty = 4504;
+ k_EMsgGCLeaveParty = 4505;
+ k_EMsgGCServerAvailable = 4506;
+ k_EMsgGCClientConnectToServer = 4507;
+ k_EMsgGCGameServerInfo = 4508;
+ k_EMsgGCLANServerAvailable = 4511;
+ k_EMsgGCInviteToLobby = 4512;
+ k_EMsgGCLobbyInviteResponse = 4513;
+ k_EMsgGCToClientPollFileRequest = 4514;
+ k_EMsgGCToClientPollFileResponse = 4515;
+ k_EMsgGCToGCPerformManualOp = 4516;
+ k_EMsgGCToGCPerformManualOpCompleted = 4517;
+ k_EMsgGCToGCReloadServerRegionSettings = 4518;
+ k_EMsgGCAdditionalWelcomeMsgList = 4519;
+ k_EMsgGCToClientApplyRemoteConVars = 4520;
+ k_EMsgGCToServerApplyRemoteConVars = 4521;
+ k_EMsgClientToGCIntegrityStatus = 4522;
+ k_EMsgClientToGCAggregateMetrics = 4523;
+ k_EMsgGCToClientAggregateMetricsBackoff = 4524;
+ k_EMsgGCToServerSteamLearnAccessTokensChanged = 4525;
+ k_EMsgGCToServerSteamLearnUseHTTP = 4526;
}
enum ECustomGameInstallStatus {
- k_ECustomGameInstallStatus_Unknown = 0;
- k_ECustomGameInstallStatus_Ready = 1;
- k_ECustomGameInstallStatus_Busy = 2;
- k_ECustomGameInstallStatus_FailedGeneric = 101;
- k_ECustomGameInstallStatus_FailedInternalError = 102;
- k_ECustomGameInstallStatus_RequestedTimestampTooOld = 103;
- k_ECustomGameInstallStatus_RequestedTimestampTooNew = 104;
- k_ECustomGameInstallStatus_CRCMismatch = 105;
- k_ECustomGameInstallStatus_FailedSteam = 106;
- k_ECustomGameInstallStatus_FailedCanceled = 107;
+ k_ECustomGameInstallStatus_Unknown = 0;
+ k_ECustomGameInstallStatus_Ready = 1;
+ k_ECustomGameInstallStatus_Busy = 2;
+ k_ECustomGameInstallStatus_FailedGeneric = 101;
+ k_ECustomGameInstallStatus_FailedInternalError = 102;
+ k_ECustomGameInstallStatus_RequestedTimestampTooOld = 103;
+ k_ECustomGameInstallStatus_RequestedTimestampTooNew = 104;
+ k_ECustomGameInstallStatus_CRCMismatch = 105;
+ k_ECustomGameInstallStatus_FailedSteam = 106;
+ k_ECustomGameInstallStatus_FailedCanceled = 107;
}
message CGCStorePurchaseInit_LineItem {
- optional uint32 item_def_id = 1;
- optional uint32 quantity = 2;
- optional uint32 cost_in_local_currency = 3;
- optional uint32 purchase_type = 4;
- optional uint64 source_reference_id = 5;
- optional int32 price_index = 6;
+ optional uint32 item_def_id = 1;
+ optional uint32 quantity = 2;
+ optional uint32 cost_in_local_currency = 3;
+ optional uint32 purchase_type = 4;
+ optional uint64 source_reference_id = 5;
+ optional int32 price_index = 6;
}
message CMsgGCStorePurchaseInit {
- optional string country = 1;
- optional int32 language = 2;
- optional int32 currency = 3;
- repeated .CGCStorePurchaseInit_LineItem line_items = 4;
+ optional string country = 1;
+ optional int32 language = 2;
+ optional int32 currency = 3;
+ repeated .CGCStorePurchaseInit_LineItem line_items = 4;
}
message CMsgGCStorePurchaseInitResponse {
- optional int32 result = 1;
- optional uint64 txn_id = 2;
+ optional int32 result = 1;
+ optional uint64 txn_id = 2;
}
message CMsgClientPingData {
- repeated fixed32 relay_codes = 4 [packed = true];
- repeated uint32 relay_pings = 5 [packed = true];
- repeated uint32 region_codes = 8 [packed = true];
- repeated uint32 region_pings = 9 [packed = true];
- optional uint32 region_ping_failed_bitmask = 10;
+ repeated fixed32 relay_codes = 4 [packed = true];
+ repeated uint32 relay_pings = 5 [packed = true];
+ repeated uint32 region_codes = 8 [packed = true];
+ repeated uint32 region_pings = 9 [packed = true];
+ optional uint64 region_ping_failed_bitmask = 10;
}
message CMsgInviteToParty {
- optional fixed64 steam_id = 1;
- optional uint32 client_version = 2;
- optional uint32 team_id = 3;
- optional bool as_coach = 4;
- optional .CMsgClientPingData ping_data = 5;
+ optional fixed64 steam_id = 1;
+ optional uint32 client_version = 2;
+ optional uint32 team_id = 3;
+ optional bool as_coach = 4;
+ optional .CMsgClientPingData ping_data = 5;
}
message CMsgInviteToLobby {
- optional fixed64 steam_id = 1;
- optional uint32 client_version = 2;
+ optional fixed64 steam_id = 1;
+ optional uint32 client_version = 2;
}
message CMsgInvitationCreated {
- optional uint64 group_id = 1;
- optional fixed64 steam_id = 2;
- optional bool user_offline = 3;
+ optional uint64 group_id = 1;
+ optional fixed64 steam_id = 2;
+ optional bool user_offline = 3;
}
message CMsgPartyInviteResponse {
- optional uint64 party_id = 1;
- optional bool accept = 2;
- optional uint32 client_version = 3;
- optional .CMsgClientPingData ping_data = 8;
+ optional uint64 party_id = 1;
+ optional bool accept = 2;
+ optional uint32 client_version = 3;
+ optional .CMsgClientPingData ping_data = 8;
}
message CMsgLobbyInviteResponse {
- optional fixed64 lobby_id = 1;
- optional bool accept = 2;
- optional uint32 client_version = 3;
- optional fixed64 custom_game_crc = 6;
- optional fixed32 custom_game_timestamp = 7;
+ optional fixed64 lobby_id = 1;
+ optional bool accept = 2;
+ optional uint32 client_version = 3;
+ optional fixed64 custom_game_crc = 6;
+ optional fixed32 custom_game_timestamp = 7;
}
message CMsgKickFromParty {
- optional fixed64 steam_id = 1;
+ optional fixed64 steam_id = 1;
}
message CMsgLeaveParty {
}
message CMsgCustomGameInstallStatus {
- optional .ECustomGameInstallStatus status = 1 [default = k_ECustomGameInstallStatus_Unknown];
- optional string message = 2;
- optional fixed32 latest_timestamp_from_steam = 3;
+ optional .ECustomGameInstallStatus status = 1 [default = k_ECustomGameInstallStatus_Unknown];
+ optional string message = 2;
+ optional fixed32 latest_timestamp_from_steam = 3;
}
message CMsgServerAvailable {
- optional .CMsgCustomGameInstallStatus custom_game_install_status = 1;
+ optional .CMsgCustomGameInstallStatus custom_game_install_status = 1;
}
message CMsgLANServerAvailable {
- optional fixed64 lobby_id = 1;
+ optional fixed64 lobby_id = 1;
+ optional fixed64 nonce = 2;
}
message CSOEconGameAccountClient {
- optional uint32 additional_backpack_slots = 1 [default = 0];
- optional bool trial_account = 2 [default = false];
- optional bool eligible_for_online_play = 3 [default = true];
- optional bool need_to_choose_most_helpful_friend = 4;
- optional bool in_coaches_list = 5;
- optional fixed32 trade_ban_expiration = 6;
- optional fixed32 duel_ban_expiration = 7;
- optional bool made_first_purchase = 9 [default = false];
+ optional uint32 additional_backpack_slots = 1 [default = 0];
+ optional bool trial_account = 2 [default = false];
+ optional bool eligible_for_online_play = 3 [default = true];
+ optional bool need_to_choose_most_helpful_friend = 4;
+ optional bool in_coaches_list = 5;
+ optional fixed32 trade_ban_expiration = 6;
+ optional fixed32 duel_ban_expiration = 7;
+ optional bool made_first_purchase = 9 [default = false];
}
message CMsgApplyStrangePart {
- optional uint64 strange_part_item_id = 1;
- optional uint64 item_item_id = 2;
+ optional uint64 strange_part_item_id = 1;
+ optional uint64 item_item_id = 2;
}
message CMsgApplyPennantUpgrade {
- optional uint64 upgrade_item_id = 1;
- optional uint64 pennant_item_id = 2;
+ optional uint64 upgrade_item_id = 1;
+ optional uint64 pennant_item_id = 2;
}
message CMsgApplyEggEssence {
- optional uint64 essence_item_id = 1;
- optional uint64 egg_item_id = 2;
+ optional uint64 essence_item_id = 1;
+ optional uint64 egg_item_id = 2;
}
message CSOEconItemAttribute {
- optional uint32 def_index = 1 [default = 65535];
- optional uint32 value = 2;
- optional bytes value_bytes = 3;
+ optional uint32 def_index = 1 [default = 65535];
+ optional uint32 value = 2;
+ optional bytes value_bytes = 3;
}
message CSOEconItemEquipped {
- optional uint32 new_class = 1;
- optional uint32 new_slot = 2;
+ optional uint32 new_class = 1;
+ optional uint32 new_slot = 2;
}
message CSOEconItem {
- optional uint64 id = 1;
- optional uint32 account_id = 2;
- optional uint32 inventory = 3;
- optional uint32 def_index = 4;
- optional uint32 quantity = 5 [default = 1];
- optional uint32 level = 6 [default = 1];
- optional uint32 quality = 7 [default = 4];
- optional uint32 flags = 8 [default = 0];
- optional uint32 origin = 9 [default = 0];
- repeated .CSOEconItemAttribute attribute = 12;
- optional .CSOEconItem interior_item = 13;
- optional uint32 style = 15 [default = 0];
- optional uint64 original_id = 16;
- repeated .CSOEconItemEquipped equipped_state = 18;
+ optional uint64 id = 1;
+ optional uint32 account_id = 2;
+ optional uint32 inventory = 3;
+ optional uint32 def_index = 4;
+ optional uint32 quantity = 5 [default = 1];
+ optional uint32 level = 6 [default = 1];
+ optional uint32 quality = 7 [default = 4];
+ optional uint32 flags = 8 [default = 0];
+ optional uint32 origin = 9 [default = 0];
+ repeated .CSOEconItemAttribute attribute = 12;
+ optional .CSOEconItem interior_item = 13;
+ optional uint32 style = 15 [default = 0];
+ optional uint64 original_id = 16;
+ repeated .CSOEconItemEquipped equipped_state = 18;
}
message CMsgSortItems {
- optional uint32 sort_type = 1;
+ optional uint32 sort_type = 1;
}
message CMsgItemAcknowledged {
- optional uint32 account_id = 1;
- optional uint32 inventory = 2;
- optional uint32 def_index = 3;
- optional uint32 quality = 4;
- optional uint32 rarity = 5;
- optional uint32 origin = 6;
+ optional uint32 account_id = 1;
+ optional uint32 inventory = 2;
+ optional uint32 def_index = 3;
+ optional uint32 quality = 4;
+ optional uint32 rarity = 5;
+ optional uint32 origin = 6;
}
message CMsgSetItemPositions {
- message ItemPosition {
- optional uint64 item_id = 1;
- optional uint32 position = 2;
- }
+ message ItemPosition {
+ optional uint64 item_id = 1;
+ optional uint32 position = 2;
+ }
- repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
+ repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
}
message CMsgGCStorePurchaseCancel {
- optional uint64 txn_id = 1;
+ optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseCancelResponse {
- optional uint32 result = 1;
+ optional uint32 result = 1;
}
message CMsgGCStorePurchaseFinalize {
- optional uint64 txn_id = 1;
+ optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseFinalizeResponse {
- optional uint32 result = 1;
- repeated uint64 item_ids = 2;
+ optional uint32 result = 1;
+ repeated uint64 item_ids = 2;
}
message CMsgGCToGCBannedWordListUpdated {
- optional uint32 group_id = 1;
+ optional uint32 group_id = 1;
}
message CMsgGCToGCDirtySDOCache {
- optional uint32 sdo_type = 1;
- optional uint64 key_uint64 = 2;
+ optional uint32 sdo_type = 1;
+ optional uint64 key_uint64 = 2;
}
message CMsgSDONoMemcached {
}
message CMsgGCToGCUpdateSQLKeyValue {
- optional string key_name = 1;
+ optional string key_name = 1;
}
message CMsgGCServerVersionUpdated {
- optional uint32 server_version = 1;
+ optional uint32 server_version = 1;
}
message CMsgGCClientVersionUpdated {
- optional uint32 client_version = 1;
+ optional uint32 client_version = 1;
}
message CMsgGCToGCWebAPIAccountChanged {
}
message CMsgExtractGems {
- optional uint64 tool_item_id = 1;
- optional uint64 item_item_id = 2;
- optional uint32 item_socket_id = 3 [default = 65535];
+ optional uint64 tool_item_id = 1;
+ optional uint64 item_item_id = 2;
+ optional uint32 item_socket_id = 3 [default = 65535];
}
message CMsgExtractGemsResponse {
- enum EExtractGems {
- k_ExtractGems_Succeeded = 0;
- k_ExtractGems_Failed_ToolIsInvalid = 1;
- k_ExtractGems_Failed_ItemIsInvalid = 2;
- k_ExtractGems_Failed_ToolCannotRemoveGem = 3;
- k_ExtractGems_Failed_FailedToRemoveGem = 4;
- }
+ enum EExtractGems {
+ k_ExtractGems_Succeeded = 0;
+ k_ExtractGems_Failed_ToolIsInvalid = 1;
+ k_ExtractGems_Failed_ItemIsInvalid = 2;
+ k_ExtractGems_Failed_ToolCannotRemoveGem = 3;
+ k_ExtractGems_Failed_FailedToRemoveGem = 4;
+ }
- optional uint64 item_id = 1;
- optional .CMsgExtractGemsResponse.EExtractGems response = 2 [default = k_ExtractGems_Succeeded];
+ optional uint64 item_id = 1;
+ optional .CMsgExtractGemsResponse.EExtractGems response = 2 [default = k_ExtractGems_Succeeded];
}
message CMsgAddSocket {
- optional uint64 tool_item_id = 1;
- optional uint64 item_item_id = 2;
- optional bool unusual = 3;
+ optional uint64 tool_item_id = 1;
+ optional uint64 item_item_id = 2;
+ optional bool unusual = 3;
}
message CMsgAddSocketResponse {
- enum EAddSocket {
- k_AddSocket_Succeeded = 0;
- k_AddSocket_Failed_ToolIsInvalid = 1;
- k_AddSocket_Failed_ItemCannotBeSocketed = 2;
- k_AddSocket_Failed_FailedToAddSocket = 3;
- }
+ enum EAddSocket {
+ k_AddSocket_Succeeded = 0;
+ k_AddSocket_Failed_ToolIsInvalid = 1;
+ k_AddSocket_Failed_ItemCannotBeSocketed = 2;
+ k_AddSocket_Failed_FailedToAddSocket = 3;
+ }
- optional uint64 item_id = 1;
- repeated uint32 updated_socket_index = 2;
- optional .CMsgAddSocketResponse.EAddSocket response = 3 [default = k_AddSocket_Succeeded];
+ optional uint64 item_id = 1;
+ repeated uint32 updated_socket_index = 2;
+ optional .CMsgAddSocketResponse.EAddSocket response = 3 [default = k_AddSocket_Succeeded];
}
message CMsgAddItemToSocketData {
- optional uint64 gem_item_id = 1;
- optional uint32 socket_index = 2 [default = 65535];
+ optional uint64 gem_item_id = 1;
+ optional uint32 socket_index = 2 [default = 65535];
}
message CMsgAddItemToSocket {
- optional uint64 item_item_id = 1;
- repeated .CMsgAddItemToSocketData gems_to_socket = 2;
+ optional uint64 item_item_id = 1;
+ repeated .CMsgAddItemToSocketData gems_to_socket = 2;
}
message CMsgAddItemToSocketResponse {
- enum EAddGem {
- k_AddGem_Succeeded = 0;
- k_AddGem_Failed_GemIsInvalid = 1;
- k_AddGem_Failed_ItemIsInvalid = 2;
- k_AddGem_Failed_FailedToAddGem = 3;
- k_AddGem_Failed_InvalidGemTypeForSocket = 4;
- k_AddGem_Failed_InvalidGemTypeForHero = 5;
- k_AddGem_Failed_InvalidGemTypeForSlot = 6;
- k_AddGem_Failed_SocketContainsUnremovableGem = 7;
- }
-
- optional uint64 item_item_id = 1;
- repeated uint32 updated_socket_index = 2;
- optional .CMsgAddItemToSocketResponse.EAddGem response = 3 [default = k_AddGem_Succeeded];
+ enum EAddGem {
+ k_AddGem_Succeeded = 0;
+ k_AddGem_Failed_GemIsInvalid = 1;
+ k_AddGem_Failed_ItemIsInvalid = 2;
+ k_AddGem_Failed_FailedToAddGem = 3;
+ k_AddGem_Failed_InvalidGemTypeForSocket = 4;
+ k_AddGem_Failed_InvalidGemTypeForHero = 5;
+ k_AddGem_Failed_InvalidGemTypeForSlot = 6;
+ k_AddGem_Failed_SocketContainsUnremovableGem = 7;
+ }
+
+ optional uint64 item_item_id = 1;
+ repeated uint32 updated_socket_index = 2;
+ optional .CMsgAddItemToSocketResponse.EAddGem response = 3 [default = k_AddGem_Succeeded];
}
message CMsgResetStrangeGemCount {
- optional uint64 item_item_id = 1;
- optional uint32 socket_index = 2 [default = 65535];
+ optional uint64 item_item_id = 1;
+ optional uint32 socket_index = 2 [default = 65535];
}
message CMsgResetStrangeGemCountResponse {
- enum EResetGem {
- k_ResetGem_Succeeded = 0;
- k_ResetGem_Failed_FailedToResetGem = 1;
- k_ResetGem_Failed_ItemIsInvalid = 2;
- k_ResetGem_Failed_InvalidSocketId = 3;
- k_ResetGem_Failed_SocketCannotBeReset = 4;
- }
+ enum EResetGem {
+ k_ResetGem_Succeeded = 0;
+ k_ResetGem_Failed_FailedToResetGem = 1;
+ k_ResetGem_Failed_ItemIsInvalid = 2;
+ k_ResetGem_Failed_InvalidSocketId = 3;
+ k_ResetGem_Failed_SocketCannotBeReset = 4;
+ }
- optional .CMsgResetStrangeGemCountResponse.EResetGem response = 1 [default = k_ResetGem_Succeeded];
+ optional .CMsgResetStrangeGemCountResponse.EResetGem response = 1 [default = k_ResetGem_Succeeded];
}
message CMsgGCToClientPollFileRequest {
- optional string file_name = 1;
- optional uint32 client_version = 2;
- optional uint32 poll_id = 3;
+ optional string file_name = 1;
+ optional uint32 client_version = 2;
+ optional uint32 poll_id = 3;
}
message CMsgGCToClientPollFileResponse {
- optional uint32 poll_id = 1;
- optional uint32 file_size = 2;
- optional uint32 file_crc = 3;
+ optional uint32 poll_id = 1;
+ optional uint32 file_size = 2;
+ optional uint32 file_crc = 3;
}
message CMsgGCToGCPerformManualOp {
- optional uint64 op_id = 1;
- optional uint32 group_code = 2;
+ optional uint64 op_id = 1;
+ optional uint32 group_code = 2;
}
message CMsgGCToGCPerformManualOpCompleted {
- optional bool success = 1;
- optional int32 source_gc = 2 [default = -1];
+ optional bool success = 1;
+ optional int32 source_gc = 2 [default = -1];
}
message CMsgGCToGCReloadServerRegionSettings {
}
message CMsgGCAdditionalWelcomeMsgList {
- repeated .CExtraMsgBlock welcome_messages = 1;
+ repeated .CExtraMsgBlock welcome_messages = 1;
}
message CMsgApplyRemoteConVars {
- message ConVar {
- optional string name = 1;
- optional string value = 2;
- optional uint32 version_min = 3;
- optional uint32 version_max = 4;
- optional .EGCPlatform platform = 5 [default = k_eGCPlatform_None];
- }
+ message ConVar {
+ optional string name = 1;
+ optional string value = 2;
+ optional uint32 version_min = 3;
+ optional uint32 version_max = 4;
+ optional .EGCPlatform platform = 5 [default = k_eGCPlatform_None];
+ }
- repeated .CMsgApplyRemoteConVars.ConVar con_vars = 1;
+ repeated .CMsgApplyRemoteConVars.ConVar con_vars = 1;
}
message CMsgGCToClientApplyRemoteConVars {
- optional .CMsgApplyRemoteConVars msg = 1;
+ optional .CMsgApplyRemoteConVars msg = 1;
}
message CMsgGCToServerApplyRemoteConVars {
- optional .CMsgApplyRemoteConVars msg = 1;
+ optional .CMsgApplyRemoteConVars msg = 1;
}
message CMsgClientToGCIntegrityStatus {
- message keyvalue {
- optional uint32 id = 1;
- optional uint32 extended = 2;
- optional uint64 value = 3;
- optional string string_value = 4;
- }
+ message keyvalue {
+ optional uint32 id = 1;
+ optional uint32 extended = 2;
+ optional uint64 value = 3;
+ optional string string_value = 4;
+ }
- optional string report = 1;
- optional bool secure_allowed = 2;
- repeated .CMsgClientToGCIntegrityStatus.keyvalue diagnostics = 3;
+ optional string report = 1;
+ optional bool secure_allowed = 2;
+ repeated .CMsgClientToGCIntegrityStatus.keyvalue diagnostics = 3;
}
message CMsgClientToGCAggregateMetrics {
- message SingleMetric {
- optional string metric_name = 1;
- optional uint32 metric_count = 2;
- }
+ message SingleMetric {
+ optional string metric_name = 1;
+ optional uint32 metric_count = 2;
+ }
- repeated .CMsgClientToGCAggregateMetrics.SingleMetric metrics = 1;
+ repeated .CMsgClientToGCAggregateMetrics.SingleMetric metrics = 1;
}
message CMsgGCToClientAggregateMetricsBackoff {
- optional float upload_rate_modifier = 1;
+ optional float upload_rate_modifier = 1;
}
message CMsgGCToServerSteamLearnAccessTokensChanged {
- optional .CMsgSteamLearnAccessTokens access_tokens = 1;
+ optional .CMsgSteamLearnAccessTokens access_tokens = 1;
}
message CMsgGCToServerSteamLearnUseHTTP {
- optional bool use_http = 1;
+ optional bool use_http = 1;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_client.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_client.proto
index 5ed5e4c9..aaeca007 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_client.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_client.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -24,9 +25,6 @@ enum EGCCitadelClientMessages {
k_EMsgClientToGCUpdateRoster = 9026;
k_EMsgClientToGCUpdateRosterResponse = 9027;
k_EMsgGCToClientProfileCardUpdated = 9028;
- k_EMsgGCToClientDevAnnouncements = 9029;
- k_EMsgClientToGCModifyDevAnnouncements = 9030;
- k_EMsgClientToGCModifyDevAnnouncementsResponse = 9031;
k_EMsgGCToClientSDRTicket = 9100;
k_EMsgClientToGCReplacementSDRTicket = 9101;
k_EMsgClientToGCReplacementSDRTicketResponse = 9102;
@@ -160,6 +158,37 @@ enum EGCCitadelClientMessages {
k_EMsgGCToClientPartyChatMsg = 9279;
k_EMsgClientToGCRequestHeroReleaseVoteTally = 9280;
k_EMsgGCToClientUpdateHeroReleaseVoteTally = 9281;
+ k_EMsgClientToGCSetAccountPrivacySetting = 9282;
+ k_EMsgClientToGCSetAccountPrivacySettingResponse = 9283;
+ k_EMsgClientToGCVariantItemChangeSlotStyles = 9284;
+ k_EMsgClientToGCVariantItemChangeSlotStylesResponse = 9285;
+ k_EMsgClientToGCPartyPlayerTyping = 9286;
+ k_EMsgClientToGCPartyPlayerTypingResponse = 9287;
+ k_EMsgGCToClientPartyPlayerTyping = 9288;
+ k_EMsgClientToGCStartRankedInterval = 9289;
+ k_EMsgClientToGCStartRankedIntervalResponse = 9290;
+ k_EMsgClientToGCGetInternalLeaderboards = 9291;
+ k_EMsgClientToGCGetInternalLeaderboardsResponse = 9292;
+ k_EMsgClientToGCGetLeaderboardStatus = 9293;
+ k_EMsgClientToGCGetLeaderboardStatusResponse = 9294;
+ k_EMsgClientToGCRequestReporterUpdates = 9295;
+ k_EMsgClientToGCRequestReporterUpdatesResponse = 9296;
+ k_EMsgClientToGCAcknowledgeReporterUpdates = 9297;
+ k_EMsgClientToGCCabalCreate = 9298;
+ k_EMsgClientToGCCabalCreateResponse = 9299;
+ k_EMsgClientToGCCabalInviteAccount = 9300;
+ k_EMsgClientToGCCabalInviteAccountResponse = 9301;
+ k_EMsgClientToGCCabalAnswerInvite = 9302;
+ k_EMsgClientToGCCabalAnswerInviteResponse = 9303;
+ k_EMsgClientToGCCabalLeave = 9304;
+ k_EMsgClientToGCCabalLeaveResponse = 9305;
+ k_EMsgClientToGCCabalGetDetails = 9306;
+ k_EMsgClientToGCCabalGetDetailsResponse = 9307;
+ k_EMsgGCToClientCabalUpdated = 9308;
+ k_EMsgClientToGCCabalKickPlayer = 9309;
+ k_EMsgClientToGCCabalKickPlayerResponse = 9310;
+ k_EMsgClientToGCCabalGetMatchHistory = 9311;
+ k_EMsgClientToGCCabalGetMatchHistoryResponse = 9312;
}
enum ECitadelAccountPermissionFlag {
@@ -170,6 +199,7 @@ enum ECitadelNewPlayerProgressFlag {
k_eNewPlayerProgress_GettingStarted = 1;
k_eNewPlayerProgress_HeroTraining = 2;
k_eNewPlayerProgress_LaneTraining = 3;
+ k_eNewPlayerProgress_CombinedTutorial2026 = 4;
}
enum EProfileCardSlotType {
@@ -242,7 +272,7 @@ enum ECitadelClientAccountEvent {
k_eSandboxViaHeroPage = 55;
k_eViewedSettings_SteamInput = 56;
k_eViewedSettings_Social = 57;
- k_eCalibrationMatch = 58;
+ k_eNewPlayerPlacementMatch = 58;
k_eSandboxViaPlayMenu = 59;
k_eBotMatch_Medium = 60;
k_eSandboxViaHideoutTeleport = 61;
@@ -257,6 +287,63 @@ enum ECommendType {
k_eSkilled = 4;
}
+message CSORankedProgress {
+ optional uint32 account_id = 1 [(key_field) = true];
+ optional .ECitadelRankedType rank_type = 2 [default = k_eCitadelRankedType_Invalid, (key_field) = true];
+ optional uint32 rank_interval = 3 [(key_field) = true];
+ optional uint32 progress = 4;
+ optional uint32 max_progress = 5;
+ optional uint32 rank = 6;
+ optional uint32 max_rank = 7;
+ optional uint32 leaderboard_rank = 8;
+ optional uint32 max_leaderboard_rank = 9;
+ optional uint32 demote_protect_games = 10;
+ optional uint32 calibrate_games = 11;
+ optional uint32 win_bit_mask = 12;
+ optional uint32 match_count = 13;
+ optional uint32 last_match_hero_id = 14;
+ optional .EPlayerMatchOutcome last_match_outcome = 15 [default = k_EPlayerMatchOutcome_Invalid];
+ optional uint32 last_match_kills = 16;
+ optional uint32 last_match_deaths = 17;
+ optional uint32 last_match_assists = 18;
+}
+
+message CSOAccountCabalMembership {
+ optional uint32 account_id = 1 [(key_field) = true];
+ optional uint64 cabal_id = 2 [(key_field) = true];
+ optional uint32 state = 3;
+}
+
+message CMsgCitadelCabal {
+ message MMStats {
+ optional .ECitadelCabalMMTier mm_tier = 1 [default = k_eCabalMMTier_Invalid];
+ optional uint32 wins = 2;
+ optional uint32 matches = 3;
+ }
+
+ message Member {
+ optional uint32 account_id = 1;
+ optional .CMsgCitadelCabal.EMemberState member_state = 2 [default = k_eMemberState_Left];
+ optional uint32 time_stamp = 3;
+ optional uint32 wins = 4;
+ optional uint32 matches = 5;
+ repeated .CMsgCitadelCabal.MMStats mm_stats = 6;
+ }
+
+ enum EMemberState {
+ k_eMemberState_Left = 0;
+ k_eMemberState_Active = 1;
+ k_eMemberState_Invited = 2;
+ }
+
+ optional uint64 cabal_id = 1;
+ optional string cabal_name = 2;
+ optional uint32 created_time = 3;
+ optional uint32 created_by = 4;
+ repeated .CMsgCitadelCabal.Member members = 5;
+ repeated .CMsgCitadelCabal.MMStats mm_stats = 6;
+}
+
message CSOGameAccountClient {
enum EFlags {
k_eDeveloper = 1;
@@ -268,6 +355,12 @@ message CSOGameAccountClient {
k_eAccountBanned = 64;
}
+ enum EPrivacySetting {
+ k_ePrivacy_FriendsOnly = 0;
+ k_ePrivacy_Hidden = 1;
+ k_ePrivacy_Public = 2;
+ }
+
optional uint32 account_id = 1 [(key_field) = true];
optional uint64 flags = 2;
optional uint32 wins = 3;
@@ -281,13 +374,14 @@ message CSOGameAccountClient {
optional uint32 comms_ban_until = 11;
optional uint32 low_priority_games_remaining = 12;
optional uint32 report_ban_until = 13;
- optional uint32 ranked_badge_level = 14;
optional uint32 priority_tokens = 15;
optional uint32 priority_token_progress = 16;
optional uint32 priority_tokens_earned = 17;
optional uint32 brawl_wins = 18;
optional uint32 brawl_losses = 19;
optional uint32 brawl_kills = 20;
+ optional uint32 last_mm_match_time = 21;
+ optional .CSOGameAccountClient.EPrivacySetting privacy_setting = 22 [default = k_ePrivacy_FriendsOnly];
}
message CSOAccountSyncStorage {
@@ -306,10 +400,8 @@ message CSOAccountHeroInfo {
optional uint32 hero_id = 2;
optional .CSOAccountHeroInfo.EHeroStatus status = 3 [default = k_eLocked];
optional uint32 wins = 4;
- optional uint32 kills = 5;
optional uint32 hero_xp = 6;
optional uint32 brawl_wins = 7;
- optional uint32 brawl_kills = 8;
}
message CSOAccountChallenge {
@@ -338,6 +430,8 @@ message CSOAccountChallenge {
}
message CMsgCitadelClientHello {
+ optional bytes pgi_hash = 1;
+ optional bytes pgi_version = 2;
}
message CMsgClientToGCStartMatchmaking {
@@ -346,6 +440,7 @@ message CMsgClientToGCStartMatchmaking {
optional .CMsgStartFindingMatchInfo match_info = 3;
optional .CMsgRegionPingTimesClient ping_times = 4;
optional .CMsgHeroSelectionMatchInfo heroes = 5;
+ optional bool pgi_verified = 6;
}
message CMsgClientToGCStartMatchmakingResponse {
@@ -376,6 +471,9 @@ message CMsgClientToGCStartMatchmakingResponse {
k_EResult_NoHeroLabsWhileInLowPri = 23;
k_EResult_AccountLocked = 24;
k_EResult_TooManyLimitedHeroes = 25;
+ k_EResult_UnverifiedPGI = 26;
+ k_EResult_RankedInvalidPartySize = 27;
+ k_EResult_NoBrawlWhileInLowPri = 28;
}
optional .CMsgClientToGCStartMatchmakingResponse.EResultCode result = 1 [default = k_EResult_OK];
@@ -413,6 +511,7 @@ message CMsgClientWelcomeCitadel {
repeated .CExtraMsgBlock extra_messages = 2;
optional uint32 compatibility_version = 3;
optional .ECitadelRegionMode region_mode = 4 [default = k_ECitadelRegionMode_ROW];
+ optional bool pgi_verified = 5;
}
message CMsgClientToGCIsInMatchmaking {
@@ -455,6 +554,7 @@ message CMsgDevMatchInfo {
optional uint32 match_score = 18;
optional .ECitadelRegionMode region_mode = 19 [default = k_ECitadelRegionMode_ROW];
optional uint32 compat_version = 20;
+ optional bool low_pri_pool = 21;
repeated .CMsgDevMatchInfo.Team team_stats = 22;
}
@@ -470,6 +570,17 @@ message CMsgGCToClientDevPlaytestStatus {
optional .ECitadelGameMode game_mode = 3 [default = k_ECitadelGameMode_Invalid];
}
+ message LeaderboardTier {
+ optional uint32 leaderboard_rank = 1;
+ optional uint32 required_progress = 2;
+ }
+
+ message ActiveRankedMode {
+ optional .ECitadelRankedType rank_type = 1 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 2;
+ repeated .CMsgGCToClientDevPlaytestStatus.LeaderboardTier leaderboard_tiers = 3;
+ }
+
repeated .CMsgGCToClientDevPlaytestStatus.DevQueueSize dev_queue_size = 1;
optional uint32 dev_available_servers = 2;
optional uint32 coop_bot_max_wait_s = 3;
@@ -482,6 +593,7 @@ message CMsgGCToClientDevPlaytestStatus {
optional uint32 active_match_count = 21;
optional uint32 roster_non_limited_heroes = 22;
optional uint32 matches_per_priority_token = 23;
+ repeated .CMsgGCToClientDevPlaytestStatus.ActiveRankedMode active_ranked_modes = 24;
}
message CMsgGCToClientSDRTicket {
@@ -532,6 +644,7 @@ message CMsgPartyMMInfo {
optional .CMsgRegionPingTimesClient ping_times = 2;
optional uint32 client_version = 3;
optional .ECitadelRegionMode region_mode = 4 [default = k_ECitadelRegionMode_ROW];
+ optional bool pgi_verified = 5;
}
message CMsgClientToGCPartyCreate {
@@ -637,6 +750,9 @@ message CMsgClientToGCPartyAction {
k_eSetDesiresLaningTogether = 23;
k_eSetMMPreference = 24;
k_eSetPrivateLobbyGameMode = 25;
+ k_eSetCorruptedItemShopSpawnTime = 26;
+ k_eSetActiveCabal = 27;
+ k_eSetCabalMMTier = 28;
}
optional fixed64 party_id = 1;
@@ -703,6 +819,12 @@ message CMsgClientToGCPartySetModeResponse {
k_eNoHeroLabsWhileInLowPri = 23;
k_eNoHighRangeFiveStack = 24;
k_eAccountLocked = 25;
+ k_eRankedInCalibration = 26;
+ k_eRankedInvalidPartySize = 27;
+ k_eRankedPartySkillRangeInvalid = 28;
+ k_eRankedMemberInLowPri = 29;
+ k_eRankedMemberCurrentlyBanned = 30;
+ k_eBrawlMemberInLowPri = 31;
}
optional .CMsgClientToGCPartySetModeResponse.EResponse result = 1 [default = k_eInternalError];
@@ -746,6 +868,7 @@ message CMsgClientToGCPartyStartMatchResponse {
k_eHeroLabsMMNotOpen = 29;
k_eHeroLabsNotUnlocked = 30;
k_eNoHeroLabsWhileInLowPri = 31;
+ k_eUnverifiedPGI = 32;
}
optional .CMsgClientToGCPartyStartMatchResponse.EResponse result = 1 [default = k_eInternalError];
@@ -778,7 +901,7 @@ message CMsgClientToGCPartyInviteUserResponse {
}
message CMsgGCToClientPartyEvent {
- enum EEvent {
+ enum EPartyEvent {
k_ePlayerKicked = 1;
k_eJoinedParty = 3;
k_eMatchCompleted = 4;
@@ -794,7 +917,7 @@ message CMsgGCToClientPartyEvent {
}
optional fixed64 party_id = 1;
- optional .CMsgGCToClientPartyEvent.EEvent event = 2 [default = k_ePlayerKicked];
+ optional .CMsgGCToClientPartyEvent.EPartyEvent event = 2 [default = k_ePlayerKicked];
optional uint32 initiator_account_id = 3;
optional uint32 target_account_id = 4;
optional bytes bytes_data = 5;
@@ -853,6 +976,9 @@ message CMsgClientToGCGetMatchHistory {
optional uint64 continue_cursor = 2;
optional .ECitadelGameMode game_mode = 4 [default = k_ECitadelGameMode_Invalid];
optional .ECitadelMatchMode match_mode = 5 [default = k_ECitadelMatchMode_Invalid];
+ optional .ECitadelRankedType ranked_type = 6 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 7;
+ optional uint64 cabal_id = 8;
}
message CMsgClientToGCGetMatchHistoryResponse {
@@ -876,11 +1002,16 @@ message CMsgClientToGCGetMatchHistoryResponse {
optional uint32 abandoned_time_s = 18;
optional .ECitadelMatchMode match_mode = 19 [default = k_ECitadelMatchMode_Invalid];
optional .ECitadelGameMode game_mode = 20 [default = k_ECitadelGameMode_Invalid];
- optional bool not_scored = 21;
optional uint32 game_mode_version = 22;
optional uint32 brawl_score_team0 = 23;
optional uint32 brawl_score_team1 = 24;
optional uint32 brawl_avg_round_time_s = 25;
+ optional .EPlayerMatchOutcome player_match_outcome = 26 [default = k_EPlayerMatchOutcome_Invalid];
+ optional uint32 ranked_display_badge = 27;
+ optional int32 ranked_delta = 28;
+ optional uint32 ranked_calibration_match = 29;
+ optional bool ranked_used_demotion_protection = 30;
+ optional bool low_pri_pool = 31;
}
enum EResult {
@@ -992,6 +1123,9 @@ message CMsgClientToGCUpdateRosterResponse {
k_eMMBusy = 5;
k_eInvalidHeroSelection = 6;
k_eHeroesNotUnlocked = 7;
+ k_eNotInMatchmaking = 8;
+ k_eInvalidPartyRoster = 9;
+ k_eInvalidMode = 10;
}
optional .CMsgClientToGCUpdateRosterResponse.EResponse result = 1 [default = k_eInternalError];
@@ -1044,47 +1178,6 @@ message CMsgClientToGCGetMatchMetaDataResponse {
optional uint32 replay_processing_through = 6;
}
-message CMsgGCToClientDevAnnouncements {
- message Announcement {
- optional uint32 priority = 1;
- optional string title = 2;
- optional string message = 3;
- optional string url = 4;
- optional uint32 unique_id = 5;
- optional uint32 posted_time = 6;
- optional string patch_version = 7;
- }
-
- repeated .CMsgGCToClientDevAnnouncements.Announcement announcements = 1;
-}
-
-message CMsgClientToGCModifyDevAnnouncements {
- enum EOperation {
- k_eCreate = 0;
- k_eUpdate = 1;
- k_eDelete = 2;
- }
-
- optional .CMsgClientToGCModifyDevAnnouncements.EOperation operation = 1 [default = k_eCreate];
- optional uint32 target_id = 2;
- optional uint32 priority = 3;
- optional string title = 4;
- optional string message = 5;
- optional string url = 6;
- optional string patch_version = 7;
-}
-
-message CMsgClientToGCModifyDevAnnouncementsResponse {
- enum EResult {
- k_eSuccess = 0;
- k_eInvalidPermission = 1;
- k_eInvalidTarget = 2;
- k_eInternalError = 3;
- }
-
- optional .CMsgClientToGCModifyDevAnnouncementsResponse.EResult result = 1 [default = k_eSuccess];
-}
-
message CMsgClientToGCDevAction {
enum EAction {
k_eSetDeveloper = 1;
@@ -1287,6 +1380,14 @@ message CMsgClientToGCUpdateHeroBuildResponse {
enum EResponse {
k_eInternalError = 0;
k_eSuccess = 1;
+ k_eNotAuthor = 2;
+ k_eInvalidBuildID = 3;
+ k_eInvalidName = 4;
+ k_eNameTooLong = 5;
+ k_eDescriptionTooLong = 6;
+ k_eInvalidDetails = 7;
+ k_eStaleVersion = 8;
+ k_eBuildTooLarge = 9;
}
optional .CMsgClientToGCUpdateHeroBuildResponse.EResponse response = 1 [default = k_eInternalError];
@@ -1319,11 +1420,12 @@ message CMsgClientToGCFindHeroBuildsResponse {
k_eInternalError = 0;
k_eSuccess = 1;
k_eTooBusy = 2;
+ k_eMissingHeroID = 3;
+ k_eInvalidLanguages = 4;
}
optional .CMsgClientToGCFindHeroBuildsResponse.EResponse response = 1 [default = k_eInternalError];
repeated .CMsgClientToGCFindHeroBuildsResponse.HeroBuildResult results = 2;
- optional uint32 build_window_start_time_override = 3;
}
message CMsgClientToGCUpdateHeroBuildPreference {
@@ -1335,6 +1437,7 @@ message CMsgClientToGCUpdateHeroBuildPreferenceResponse {
enum EResponse {
k_eInternalError = 0;
k_eSuccess = 1;
+ k_eTooBusy = 2;
}
optional .CMsgClientToGCUpdateHeroBuildPreferenceResponse.EResponse response = 1 [default = k_eInternalError];
@@ -1399,6 +1502,28 @@ message CMsgClientToGCGetAccountMatchReportsResponse {
repeated .CMsgClientToGCGetAccountMatchReportsResponse.Commend commends = 3;
}
+message CMsgClientToGCRequestReporterUpdates {
+}
+
+message CMsgClientToGCRequestReporterUpdatesResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eRateLimited = 2;
+ k_eDisabled = 4;
+ k_eTooBusy = 7;
+ }
+
+ optional .CMsgClientToGCRequestReporterUpdatesResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCReportPlayerFromMatch.EReportType report_type = 5 [default = k_eReport_None];
+
+ reserved 2, 3, 4;
+}
+
+message CMsgClientToGCAcknowledgeReporterUpdates {
+ reserved 1;
+}
+
message CMsgClientToGCDeleteHeroBuild {
optional uint32 author_account_id = 1;
optional uint32 hero_build_id = 2;
@@ -1504,6 +1629,8 @@ message CMsgClientToGCCommendPlayerFromMatchResponse {
k_eTooBusy = 3;
k_eRateLimited = 4;
k_eTimeout = 5;
+ k_eEnemyCommendsDisabled = 6;
+ k_eTooLate = 7;
}
optional .CMsgClientToGCCommendPlayerFromMatchResponse.EResponse result = 1 [default = k_eInternalError];
@@ -1562,6 +1689,7 @@ message CMsgClientToGCGetHeroMMRRankingsResponse {
message CMsgClientToGCGetLeaderboard {
optional .ECitadelLeaderboardRegion leaderboard_region = 1 [default = k_ECitadelLeaderboardRegion_None];
optional uint32 hero_id = 2;
+ optional uint32 leaderboard_id = 3;
}
message CMsgClientToGCGetLeaderboardResponse {
@@ -1569,7 +1697,6 @@ message CMsgClientToGCGetLeaderboardResponse {
optional string account_name = 1;
optional uint32 rank = 2;
repeated uint32 top_hero_ids = 3;
- optional uint32 badge_level = 4;
}
enum EResult {
@@ -1586,6 +1713,7 @@ message CMsgClientToGCGetLeaderboardResponse {
message CMsgClientToGCGetAccountLeaderboards {
optional uint32 account_id = 1;
+ optional uint32 leaderboard_id = 2;
}
message CMsgClientToGCGetAccountLeaderboardsResponse {
@@ -1673,6 +1801,11 @@ message CMsgSurveyQuestion {
k_eHeroPlayAgainst = 3;
k_eMoreFunHero = 4;
k_eHeroPower = 5;
+ k_eHeroPlayAs = 6;
+ k_eHeroFrontliner = 7;
+ k_eHeroCarry = 8;
+ k_eHeroDisable = 9;
+ k_eHeroUtility = 10;
}
optional uint32 question_id = 1;
@@ -1683,6 +1816,7 @@ message CMsgSurveyQuestion {
}
message CMsgClientToGCGetSurveyQuestion {
+ optional .CMsgSurveyQuestion.EQuestionType dev_force_new_question_type = 1 [default = k_eInvalid];
}
message CMsgClientToGCGetSurveyQuestionResponse {
@@ -1700,6 +1834,7 @@ message CMsgClientToGCSubmitSurvey {
optional uint32 question_id = 1;
optional bool is_skip = 2;
optional uint32 response_value = 3;
+ optional .CMsgSurveyQuestion.EQuestionType dev_force_new_question_type = 4 [default = k_eInvalid];
}
message CMsgClientToGCSubmitSurveyResponse {
@@ -1734,15 +1869,11 @@ message CMsgGCToClientRankDataUpdate {
message CMsgClientToGCRequestHeroReleaseVoteTally {
repeated uint32 vote_rounds = 1 [packed = true];
+ optional bool is_initial_request = 2;
}
message CMsgGCToClientUpdateHeroReleaseVoteTally {
- message VoteRoundToTallyEntry {
- optional uint32 key = 1;
- optional .CMsgHeroReleaseVoteTally value = 2;
- }
-
- repeated .CMsgGCToClientUpdateHeroReleaseVoteTally.VoteRoundToTallyEntry vote_round_to_tally = 1;
+ map vote_round_to_tally = 1;
}
message CMsgClientToGCSubmitHeroReleaseVote {
@@ -1779,6 +1910,11 @@ message CMsgGCToClientPartyChatMsg {
repeated .CMsgGCToClientPartyChatMsg.ChatLine chat_lines = 2;
}
+message CMsgGCToClientPartyPlayerTyping {
+ optional fixed64 party_id = 1;
+ optional uint32 account_id = 2;
+}
+
message CMsgPostGameProgressData {
message PlayerAccolade {
optional uint32 accolade_id = 1;
@@ -1789,7 +1925,6 @@ message CMsgPostGameProgressData {
}
message PlayerAward {
- optional uint32 award_column = 1;
optional uint32 award_id = 2;
optional int32 award_value = 3;
optional uint32 award_rank = 4;
@@ -1797,6 +1932,10 @@ message CMsgPostGameProgressData {
optional string award_class = 6;
}
+ message HeroXPReward {
+ optional .CMsgHeroXPGrant xp_grant = 1;
+ }
+
message PlayerData {
optional uint32 player_slot = 1;
optional uint32 account_id = 2;
@@ -1805,10 +1944,270 @@ message CMsgPostGameProgressData {
optional uint32 mvp_rank = 5;
repeated .CMsgPostGameProgressData.PlayerAccolade accolades = 6;
repeated .CMsgPostGameProgressData.PlayerAward awards = 7;
+ optional .CMsgPlayerHeroData hero_data = 8;
+ repeated .CMsgPostGameProgressData.HeroXPReward hero_xp_rewards = 9;
+ optional .CMsgMatchPlayerRankData player_rank_data = 10;
+ optional .EPlayerMatchOutcome player_match_outcome = 11 [default = k_EPlayerMatchOutcome_Invalid];
}
optional uint64 match_id = 1;
optional .ECitadelLobbyTeam winning_team = 2 [default = k_ECitadelLobbyTeam_Team0];
- optional .CMsgPostGameProgressData.PlayerData local_player = 3;
- repeated .CMsgPostGameProgressData.PlayerData mvp_players = 4;
+ optional .ECitadelMatchMode match_mode = 3 [default = k_ECitadelMatchMode_Invalid];
+ optional .ECitadelGameMode game_mode = 4 [default = k_ECitadelGameMode_Invalid];
+ optional .ECitadelRankedType ranked_type = 5 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 6;
+ optional .CMsgPostGameProgressData.PlayerData local_player = 7;
+ repeated .CMsgPostGameProgressData.PlayerData mvp_players = 8;
+ optional .CMsgMatchHeroReleaseVotes hero_release_votes = 9;
+ repeated .CMsgPostGameProgressData.PlayerData all_players = 10;
+}
+
+message CMsgClientToGCSetAccountPrivacySetting {
+ optional .CSOGameAccountClient.EPrivacySetting privacy_setting = 1 [default = k_ePrivacy_FriendsOnly];
+}
+
+message CMsgClientToGCSetAccountPrivacySettingResponse {
+ enum EResultCode {
+ k_eSuccess = 0;
+ k_eInternalError = 1;
+ }
+
+ optional .CMsgClientToGCSetAccountPrivacySettingResponse.EResultCode result = 1 [default = k_eSuccess];
+}
+
+message CMsgClientToGCVariantItemChangeSlotStyles {
+ message SlotStyleAction {
+ optional uint32 slot_id = 1;
+ optional uint32 style_id = 2;
+ optional .CMsgClientToGCVariantItemChangeSlotStyles.EStyleAction style_action = 3 [default = k_eUnlockStyle];
+ }
+
+ enum EStyleAction {
+ k_eUnlockStyle = 0;
+ k_eEquipStyle = 1;
+ k_eDevUnlockStyle = 2;
+ k_eDevLockStyle = 3;
+ }
+
+ optional uint64 item_id = 1;
+ repeated .CMsgClientToGCVariantItemChangeSlotStyles.SlotStyleAction slot_style_actions = 2;
+}
+
+message CMsgClientToGCVariantItemChangeSlotStylesResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNoItem = 5;
+ k_eNoActions = 6;
+ k_eUnknownAction = 8;
+ k_eCantEquipNotOwned = 9;
+ k_eNoPermission = 10;
+ k_eInvalidSlot = 11;
+ }
+
+ optional .CMsgClientToGCVariantItemChangeSlotStylesResponse.EResponse response = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCStartRankedInterval {
+ optional .ECitadelRankedType rank_type = 1 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 interval = 2;
+}
+
+message CMsgClientToGCStartRankedIntervalResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eIntervalInactive = 2;
+ k_eAlreadyStarted = 3;
+ k_eNotEnoughMatchesPlayed = 4;
+ k_eNotEnoughHeroesUnlocked = 5;
+ }
+
+ optional .CMsgClientToGCStartRankedIntervalResponse.EResponse response = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCGetInternalLeaderboards {
+ optional uint32 account_id = 1;
+}
+
+message CMsgClientToGCGetInternalLeaderboardsResponse {
+ message LeaderboardMatch {
+ optional uint64 match_id = 1;
+ optional uint32 round = 2;
+ optional uint32 duration = 3;
+ optional uint32 timestamp = 4;
+ repeated uint32 account_ids = 5;
+ repeated uint32 hero_ids = 6;
+ }
+
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eAccessDenied = 2;
+ }
+
+ optional .CMsgClientToGCGetInternalLeaderboardsResponse.EResponse response = 1 [default = k_eInternalError];
+ repeated .CMsgClientToGCGetInternalLeaderboardsResponse.LeaderboardMatch matches = 2;
+}
+
+message CMsgClientToGCGetLeaderboardStatus {
+ optional uint32 leaderboard_id = 1;
+}
+
+message CMsgClientToGCGetLeaderboardStatusResponse {
+ message Hero {
+ optional uint32 hero_id = 1;
+ optional uint32 recent_matches = 2;
+ optional .ECitadelLeaderboardRegion region = 3 [default = k_ECitadelLeaderboardRegion_None];
+ optional uint32 lifetime_wins = 4;
+ optional bool is_eligible = 5;
+ }
+
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eRateLimited = 3;
+ k_eInvalidLeaderboard = 4;
+ }
+
+ optional .CMsgClientToGCGetLeaderboardStatusResponse.EResult result = 1 [default = k_eInternalError];
+ optional bool is_eligible = 2;
+ optional uint32 recent_matches = 3;
+ optional uint32 required_recent_matches = 4;
+ optional uint32 required_recent_hero_matches = 5;
+ optional .ECitadelLeaderboardRegion region = 6 [default = k_ECitadelLeaderboardRegion_None];
+ optional bool is_rank_high_enough = 7;
+ optional uint32 lifetime_matches = 8;
+ optional uint32 required_lifetime_matches = 9;
+ optional uint32 required_lifetime_hero_wins = 10;
+ repeated .CMsgClientToGCGetLeaderboardStatusResponse.Hero hero_info = 11;
+ optional uint32 match_history_days = 12;
+}
+
+message CMsgClientToGCCabalCreate {
+}
+
+message CMsgClientToGCCabalCreateResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eRateLimited = 3;
+ k_eAlreadyInMaxCabals = 4;
+ }
+
+ optional .CMsgClientToGCCabalCreateResponse.EResult result = 1 [default = k_eInternalError];
+ optional uint64 cabal_id = 2;
+}
+
+message CMsgClientToGCCabalInviteAccount {
+ optional uint64 cabal_id = 1;
+ optional uint32 account_id = 2;
+ optional bool cancel_invite = 3;
+}
+
+message CMsgClientToGCCabalInviteAccountResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eRateLimited = 3;
+ k_eInvalidPermission = 4;
+ k_eTargetInMaxCabals = 5;
+ k_eTargetAtMaxInvites = 6;
+ k_eTargetAlreadyInvited = 7;
+ k_eCabalAtMaxInvites = 8;
+ k_eCabalAtMaxMembers = 9;
+ k_eInvalidTargetAccount = 10;
+ k_eTargetNotInvited = 11;
+ }
+
+ optional .CMsgClientToGCCabalInviteAccountResponse.EResult result = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCCabalAnswerInvite {
+ optional uint64 cabal_id = 1;
+ optional bool accepted = 2;
+}
+
+message CMsgClientToGCCabalAnswerInviteResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eRateLimited = 3;
+ k_eInvalidPermission = 4;
+ k_eAlreadyInMaxCabals = 5;
+ k_eCabalAtMaxMembers = 6;
+ }
+
+ optional .CMsgClientToGCCabalAnswerInviteResponse.EResult result = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCCabalLeave {
+ optional uint64 cabal_id = 1;
+ optional bool acknowledged_last_member = 2;
+}
+
+message CMsgClientToGCCabalLeaveResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eWasLastMember = 3;
+ k_eNotMember = 4;
+ }
+
+ optional .CMsgClientToGCCabalLeaveResponse.EResult result = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCCabalGetDetails {
+ optional uint64 cabal_id = 1;
+}
+
+message CMsgClientToGCCabalGetDetailsResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eRateLimited = 3;
+ k_eInvalidPermission = 4;
+ }
+
+ optional .CMsgClientToGCCabalGetDetailsResponse.EResult result = 1 [default = k_eInternalError];
+ optional .CMsgCitadelCabal cabal_info = 2;
+}
+
+message CMsgGCToClientCabalUpdated {
+ optional .CMsgCitadelCabal cabal_info = 1;
+}
+
+message CMsgClientToGCCabalKickPlayer {
+ optional uint64 cabal_id = 1;
+ optional uint32 kick_account_id = 2;
+}
+
+message CMsgClientToGCCabalKickPlayerResponse {
+ enum EResult {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eInvalidPermission = 4;
+ k_eInvalidTarget = 5;
+ }
+
+ optional .CMsgClientToGCCabalKickPlayerResponse.EResult result = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCCabalGetMatchHistory {
+ optional uint64 cabal_id = 1;
+ optional .ECitadelCabalMMTier cabal_mm_tier = 2 [default = k_eCabalMMTier_Invalid];
+ optional uint64 cursor = 3;
+}
+
+message CMsgClientToGCCabalGetMatchHistoryResponse {
+ optional .CMsgClientToGCGetMatchHistoryResponse history_response = 1;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto
index 5ada7800..4131a1f7 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto
@@ -2,6 +2,8 @@ import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto";
+import "in/dragonbra/javasteam/protobufs/deadlock/networkbasetypes.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -30,7 +32,7 @@ enum ECitadelMatchMode {
k_ECitadelMatchMode_ServerTest = 5;
k_ECitadelMatchMode_Tutorial = 6;
k_ECitadelMatchMode_HeroLabs = 7;
- k_ECitadelMatchMode_Calibration = 8;
+ k_ECitadelMatchMode_NewPlayerPlacement = 8;
}
enum ECitadelLobbyTeam {
@@ -46,12 +48,25 @@ enum ECitadelAccountStatMedal {
k_eGold = 3;
}
+enum ECitadelRankedType {
+ k_eCitadelRankedType_Invalid = 0;
+ k_eCitadelRankedType_Normal = 1;
+}
+
enum ECitadelMMPreference {
k_ECitadelMMPreference_Invalid = 0;
k_ECitadelMMPreference_Casual = 1;
k_ECitadelMMPreference_Serious = 2;
}
+enum ECitadelCabalMMTier {
+ k_eCabalMMTier_Invalid = 0;
+ k_eCabalMMTier_Bronze = 1;
+ k_eCabalMMTier_Silver = 2;
+ k_eCabalMMTier_Gold = 3;
+ k_eCabalMMTier_Platinum = 4;
+}
+
enum ECitadelObjective {
k_eCitadelObjective_Team0_Core = 0;
k_eCitadelObjective_Team0_Tier1_Lane1 = 1;
@@ -140,6 +155,8 @@ enum ECitadelGameMode {
k_ECitadelGameMode_1v1Test = 2;
k_ECitadelGameMode_Sandbox = 3;
k_ECitadelGameMode_StreetBrawl = 4;
+ k_ECitadelGameMode_ExploreNYC = 5;
+ k_ECitadelGameMode_Internal = 6;
}
enum ELobbyServerState {
@@ -163,6 +180,64 @@ enum EFeatureBanReason {
k_eFeatureBanReason_ReportedByOtherPlayers = 2;
k_eFeatureBanReason_MatchAbandons = 3;
k_eFeatureBanReason_TooManyReportsSubmitted = 4;
+ k_eFeatureBanReason_ToxicChat = 5;
+}
+
+enum EHeroXPGrantReason {
+ k_eGrant_Win = 0;
+ k_eGrant_Loss = 1;
+ k_eGrant_Award = 2;
+}
+
+enum EPlayerMatchOutcome {
+ k_EPlayerMatchOutcome_Invalid = 0;
+ k_EPlayerMatchOutcome_Win = 1;
+ k_EPlayerMatchOutcome_Loss = 2;
+ k_EPlayerMatchOutcome_Penalized = 3;
+ k_EPlayerMatchOutcome_PenalizedParty = 4;
+ k_EPlayerMatchOutcome_NotScored = 5;
+}
+
+enum EMatchMetadataExtraMessage {
+ k_EMatchMetadataExtraMessage_HeroReleaseVotes = 2;
+}
+
+enum ECitadelCombatLogTypes {
+ k_eCitadelCombatLog_Invalid = -1;
+ k_eCitadelCombatLog_Damage = 0;
+ k_eCitadelCombatLog_Heal = 1;
+ k_eCitadelCombatLog_ModifierAdd = 2;
+ k_eCitadelCombatLog_ModifierRemove = 3;
+ k_eCitadelCombatLog_Death = 4;
+ k_eCitadelCombatLog_AbilityUse = 5;
+ k_eCitadelCombatLog_AbilityTrigger = 42;
+ k_eCitadelCombatLog_ItemUse = 6;
+ k_eCitadelCombatLog_Location = 7;
+ k_eCitadelCombatLog_CurrencyChange = 8;
+ k_eCitadelCombatLog_ItemPurchase = 11;
+ k_eCitadelCombatLog_SoulSecure = 10;
+ k_eCitadelCombatLog_Multikill = 15;
+ k_eCitadelCombatLog_Killstreak = 16;
+ k_eCitadelCombatLog_ObjectiveKill = 17;
+ k_eCitadelCombatLog_FirstBlood = 18;
+ k_eCitadelCombatLog_ModifierStackEvent = 19;
+ k_eCitadelCombatLog_ActivatePowerup = 21;
+ k_eCitadelCombatLog_HeroSaved = 23;
+ k_eCitadelCombatLog_HeroLevelup = 25;
+ k_eCitadelCombatLog_InterruptChannel = 28;
+ k_eCitadelCombatLog_AlliedGold = 29;
+ k_eCitadelCombatLog_RejuvTaken = 30;
+ k_eCitadelCombatLog_UnitSummoned = 33;
+ k_eCitadelCombatLog_EndKillstreak = 37;
+ k_eCitadelCombatLog_CriticalDamage = 39;
+ k_eCitadelCombatLog_SpellAbsorb = 40;
+ k_eCitadelCombatLog_UnitTeleported = 41;
+}
+
+message CMsgHeroXPGrant {
+ optional uint32 hero_id = 1;
+ optional uint32 xp_grant = 2;
+ optional .EHeroXPGrantReason reason = 3 [default = k_eGrant_Win];
}
message CSOCitadelLobby {
@@ -190,6 +265,14 @@ message CSOCitadelHideoutLobby {
optional bool hideout_holiday_award_2025 = 32;
}
+ enum EServerStatus {
+ k_eNoServer = 0;
+ k_eServerAssigned = 1;
+ k_eTooFewPlayers = 2;
+ k_ePlayersInMatch = 3;
+ k_eDisabled = 4;
+ }
+
optional uint64 hideout_lobby_id = 1;
optional uint64 party_id = 2;
optional fixed64 server_steam_id = 3;
@@ -201,6 +284,7 @@ message CSOCitadelHideoutLobby {
repeated .CSOCitadelHideoutLobby.Member members = 9;
optional uint32 active_account_hideout = 10;
repeated .CExtraMsgBlock extra_messages = 11;
+ optional .CSOCitadelHideoutLobby.EServerStatus server_status = 12 [default = k_eNoServer];
}
message CLobbyData_PostMatchSurvey {
@@ -287,6 +371,15 @@ message CSOCitadelParty {
optional bool cheats_enabled = 7;
repeated .CSOCitadelParty.ServerRegion available_regions = 8;
optional bool duplicate_heroes_enabled = 9;
+ optional uint32 corrupted_item_shop_spawn_minutes = 10;
+ }
+
+ message RankedScores {
+ optional .ECitadelRankedType rank_type = 1 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 2;
+ optional uint32 rank_display_badge = 3;
+ repeated uint32 unlocked_heroes = 5;
+ optional bool in_calibration = 6;
}
message Member {
@@ -303,6 +396,8 @@ message CSOCitadelParty {
optional uint64 new_player_progress = 11;
repeated uint32 owned_heroes = 12 [packed = true];
optional uint32 low_priority_games_remaining = 13;
+ repeated .CSOCitadelParty.RankedScores ranked_scores = 14;
+ repeated uint64 player_cabals = 15 [packed = true];
}
message LeftMember {
@@ -344,7 +439,6 @@ message CSOCitadelParty {
optional .ECitadelGameMode game_mode = 10 [default = k_ECitadelGameMode_Invalid];
optional uint32 match_making_start_time = 11;
optional string server_search_key = 12;
- optional bool is_high_skill_range_party = 13;
optional .CSOCitadelParty.EChatMode chat_mode = 14 [default = k_eNone];
optional .ECitadelRegionMode region_mode = 15 [default = k_ECitadelRegionMode_ROW];
optional bool is_private_lobby = 16;
@@ -352,6 +446,12 @@ message CSOCitadelParty {
optional bool desires_laning_together = 18;
optional .ECitadelMMPreference mm_preference = 19 [default = k_ECitadelMMPreference_Invalid];
optional string hideout_search_key = 21;
+ repeated uint64 candidate_cabals = 22 [packed = true];
+ optional uint64 active_cabal = 23;
+ optional .ECitadelCabalMMTier party_min_cabal_tier = 24 [default = k_eCabalMMTier_Invalid];
+ optional .ECitadelCabalMMTier party_active_cabal_tier = 25 [default = k_eCabalMMTier_Invalid];
+ optional .ECitadelRankedType ranked_type = 26 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 27;
}
message CMsgMatchPlayerPathsData {
@@ -422,6 +522,8 @@ message CMsgMatchPlayerDamageMatrix {
k_eType_Mitigated = 3;
k_eType_LethalDamage = 4;
k_eType_Regen = 5;
+ k_eType_CrowdControl = 6;
+ k_eType_MitigatedBySource = 7;
}
repeated .CMsgMatchPlayerDamageMatrix.DamageDealer damage_dealers = 1;
@@ -429,6 +531,17 @@ message CMsgMatchPlayerDamageMatrix {
optional .CMsgMatchPlayerDamageMatrix.SourceDetails source_details = 3;
}
+message CMsgMatchPlayerRankData {
+ optional uint32 initial_display_rank = 1;
+ optional uint32 initial_flat_progress = 2;
+ optional uint32 final_flat_progress = 3;
+ optional int32 desired_progress_change = 4;
+ optional uint32 initial_calibration_games = 6;
+ optional uint32 initial_demotion_protection_games = 7;
+ optional bool consumed_demotion_protection = 8;
+ optional uint32 initial_win_streak = 9;
+}
+
message CMsgMatchMetaDataContents {
message Position {
optional float x = 1;
@@ -452,6 +565,7 @@ message CMsgMatchMetaDataContents {
optional uint32 sold_time_s = 4;
optional uint32 flags = 5;
optional uint32 imbued_ability_id = 6;
+ optional uint32 upgrade_info = 7;
}
message Ping {
@@ -482,6 +596,8 @@ message CMsgMatchMetaDataContents {
optional string type = 1;
optional uint32 value = 2;
optional bool is_permanent = 3;
+ repeated uint32 pickup_times_s = 4 [packed = true];
+ repeated float pickup_stat_values = 5 [packed = true];
}
message PlayerStats {
@@ -549,6 +665,10 @@ message CMsgMatchMetaDataContents {
optional uint32 starting_xp = 3;
}
+ message HeroXPReward {
+ optional .CMsgHeroXPGrant xp_grant = 1;
+ }
+
message PlayerAccolade {
optional uint32 accolade_id = 1;
optional int32 accolade_stat_value = 2;
@@ -570,7 +690,6 @@ message CMsgMatchMetaDataContents {
optional uint32 last_hits = 13;
optional uint32 denies = 14;
optional uint32 ability_points = 15;
- optional uint32 party = 16;
optional uint32 assigned_lane = 17;
optional uint32 level = 18;
repeated .CMsgMatchMetaDataContents.Ping pings = 19;
@@ -585,6 +704,9 @@ message CMsgMatchMetaDataContents {
optional uint32 mvp_rank = 28;
optional bool earned_holiday_award_2025 = 29;
repeated .CMsgMatchMetaDataContents.PowerUpBuff power_up_buffs = 30;
+ repeated .CMsgMatchMetaDataContents.HeroXPReward hero_xp_rewards = 31;
+ optional .CMsgMatchPlayerRankData player_rank_data = 32;
+ optional .EPlayerMatchOutcome player_match_outcome = 33 [default = k_EPlayerMatchOutcome_Invalid];
}
message Teams {
@@ -659,6 +781,10 @@ message CMsgMatchMetaDataContents {
repeated .CMsgMatchMetaDataContents.Teams teams = 30;
optional .ECitadelBotDifficulty bot_difficulty = 32 [default = k_ECitadelBotDifficulty_None];
repeated .CMsgMatchMetaDataContents.StreetBrawlRound street_brawl_rounds = 33;
+ optional .ECitadelRankedType ranked_type = 34 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 35;
+ optional uint32 corrupted_penalty_seed = 36;
+ repeated .CExtraMsgBlock extra_messages = 37;
}
enum EMatchOutcome {
@@ -680,6 +806,7 @@ message CMsgMatchMetaDataContents {
k_eItemTrophyCollector = 10;
k_eItemCultistSacrifice = 11;
k_eBreakable = 12;
+ k_eItemGooseEgg = 13;
}
optional .CMsgMatchMetaDataContents.MatchInfo match_info = 2;
@@ -725,9 +852,12 @@ message CMsgTrackedStat {
message CMsgGCAccountData {
optional uint32 account_id = 1;
optional float cheater_report_score = 2;
+ optional uint32 num_comms_reports = 3;
}
message CMsgHeroBuild {
+ option (maximum_size_bytes) = 16000;
+
message BuildModEntry {
optional uint32 ability_id = 1;
optional string annotation = 2;
@@ -782,8 +912,103 @@ message CMsgHeroBuildPreference {
optional bool reported = 3;
}
+message CMsgCitadelCombatLogEntry {
+ optional .ECitadelCombatLogTypes type = 1 [default = k_eCitadelCombatLog_Invalid];
+ optional uint32 target_name = 2;
+ optional uint32 target_source_name = 3;
+ optional uint32 attacker_name = 4;
+ optional uint32 damage_source_name = 5;
+ optional uint32 inflictor_name = 6;
+ optional bool is_attacker_hero = 7;
+ optional bool is_target_hero = 8;
+ optional bool is_visible_sapphire = 9;
+ optional bool is_visible_amber = 10;
+ optional uint32 value = 11;
+ optional int32 health = 12;
+ optional float timestamp = 13;
+ optional float timestamp_raw = 14;
+ optional uint32 attacker_team = 17;
+ optional uint32 target_team = 18;
+ optional bool is_ability_toggle_on = 19;
+ optional bool is_ability_toggle_off = 20;
+ optional uint32 damage_type = 21;
+ optional uint32 networth = 22;
+ optional uint32 currency_type = 24;
+ optional uint32 currency_source = 45;
+ optional float location_x = 25;
+ optional float location_y = 26;
+ optional int32 ability_upgrade_bits = 27;
+ optional float modifier_duration = 28;
+ repeated int32 assist_players = 29;
+ optional uint32 target_objective_id = 23;
+ optional bool target_is_self = 31;
+ optional int32 target_class = 54;
+ optional bool is_ultimate_ability = 32;
+ optional bool uses_charges = 33;
+ optional bool inflictor_is_stolen_ability = 34;
+ optional bool spell_generated_attack = 35;
+ optional bool heal_from_lifesteal = 36;
+ optional float regenerated_health = 37;
+ optional bool will_reincarnate = 38;
+ optional uint32 modifier_ability = 39;
+ optional bool modifier_hidden = 40;
+ optional float modifier_elapsed_duration = 41;
+ optional bool hidden_modifier = 42;
+ optional bool silence_modifier = 43;
+ optional bool modifier_purged = 44;
+ optional bool long_range_kill = 46;
+ optional bool aura_modifier = 47;
+ optional bool immobilize_modifier = 48;
+ optional int32 modifier_purge_npc = 49;
+ optional int32 modifier_purge_ability = 50;
+ optional float modifier_purged_duration = 51;
+ optional bool movement_control_modifier = 52;
+ optional int32 powerup_type = 53;
+ optional bool is_primary_weapon = 55;
+ optional bool is_headshot = 56;
+ optional int32 ability_name = 57;
+ optional int32 full_refresh = 59;
+ optional int32 hits = 60;
+}
+
+message CSerializedCombatLog {
+ message Dictionary {
+ message DictString {
+ optional uint32 id = 1;
+ optional string value = 2;
+ }
+
+ repeated .CSerializedCombatLog.Dictionary.DictString strings = 1;
+ }
+
+ optional uint32 version = 1;
+ optional .CSerializedCombatLog.Dictionary dictionary = 2;
+ repeated .CMsgCitadelCombatLogEntry entries = 3;
+}
+
message CMsgHeroReleaseVoteTally {
optional uint32 remaining_votes = 1;
repeated uint32 votes_cast = 2 [packed = true];
optional uint32 daily_reward_time_stamp = 3;
}
+
+message CMsgMatchHeroReleaseVotes {
+ message HeroVote {
+ optional uint32 vote_player_slot = 1;
+ optional uint32 vote_hero_id = 2;
+ optional uint32 vote_count = 3 [default = 1];
+ }
+
+ message Category {
+ optional .CMsgMatchHeroReleaseVotes.EHeroReleaseVoteCategory vote_category = 1 [default = k_eMatchCompleted];
+ repeated .CMsgMatchHeroReleaseVotes.HeroVote hero_votes = 2;
+ }
+
+ enum EHeroReleaseVoteCategory {
+ k_eMatchCompleted = 0;
+ k_eMatchWon = 1;
+ k_eDailyBonus = 2;
+ }
+
+ repeated .CMsgMatchHeroReleaseVotes.Category categories = 1;
+}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_server.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_server.proto
index f55ebb13..be750a2a 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_server.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_server.proto
@@ -2,6 +2,7 @@ import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/citadel_gcmessages_common.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -33,18 +34,31 @@ enum EGCCitadelServerMessages {
k_EMsgServerToGCRequestPlayerHeroDataResponse = 10045;
k_EMsgGCToServerAllocateForHideout = 10046;
k_EMsgGCToServerAllocateForHideoutResponse = 10047;
+ k_EMsgServerToGCInternalMatchStats = 10048;
+ k_EMsgGCToServerRequestPlayerChatLog = 10049;
+ k_EMsgGCToServerRequestPlayerChatLogResponse = 10050;
+ k_EMsgGCToServerToxicChatEvaluationResult = 10051;
+ k_EMsgServerToGCTestToxicChatEval = 10052;
}
enum ECitadelMatchAuxStat {
k_eMatchAuxStat_Dummy = 1;
}
+enum ECitadelServerMode {
+ k_eCitadelServerMode_Match = 0;
+ k_eCitadelServerMode_Hideout = 1;
+ k_eCitadelServerMode_CoopBot = 2;
+ k_eCitadelServerMode_Internal = 3;
+}
+
enum EGCServerLobbyData {
k_EServerLobbyData_PlayerMMR = 1;
k_EServerLobbyData_PlayerInfo = 2;
k_EServerLobbyData_PostMatchSurvey = 3;
k_EServerLobbyData_AutoTest = 4;
k_EServerLobbyData_PlayerStatValues = 5;
+ k_EServerLobbyData_HeroReleaseVote = 6;
}
enum EGCServerSignoutData {
@@ -62,6 +76,8 @@ enum EGCServerSignoutData {
k_EServerSignoutData_MatchKills = 14;
k_EServerSignoutData_PlayerBehavior = 15;
k_EServerSignoutData_StreetBrawlData = 16;
+ k_EServerSignoutData_HeroDraftData = 17;
+ k_EServerSignoutData_HeroReleaseVotes = 18;
}
message CMsgServerCrashSentinelFile {
@@ -79,9 +95,8 @@ message CMsgServerCrashSentinelFile {
optional .ECitadelGameMode game_mode = 7 [default = k_ECitadelGameMode_Invalid];
optional bool was_server_shutdown = 8;
optional uint64 hideout_lobby_id = 9;
- optional bool allow_matches = 10;
- optional bool allow_hideout = 11;
optional bool was_lost_lobby = 12;
+ repeated .ECitadelServerMode server_modes = 13;
}
optional uint32 version = 1;
@@ -115,6 +130,7 @@ message CServerLobbyData_PlayerMMR {
optional uint32 hero_mmr = 4;
optional uint32 hero_mmr_with_uncertainty = 5;
optional uint32 player_slot = 6;
+ optional float hero_mmru_skill = 7;
}
repeated .CServerLobbyData_PlayerMMR.Player players = 1;
@@ -157,6 +173,10 @@ message CServerLobbyData_PlayerStatValues {
repeated .CServerLobbyData_PlayerStatValues.StatDistribution stat_distributions = 2;
}
+message CServerLobbyData_HeroReleaseVote {
+ repeated uint32 daily_win_eligible_account_ids = 1;
+}
+
message CSOCitadelServerDynamicLobby {
optional uint64 lobby_id = 1;
repeated uint32 left_account_ids = 2 [packed = true];
@@ -183,6 +203,19 @@ message CSOCitadelServerStaticLobby {
optional .CMsgPlayerHeroData hero_data = 19;
optional uint32 match_number = 20;
optional bool randomed_hero = 21;
+ optional bool prior_comms_abuse = 22;
+ optional bool is_new_player = 23;
+ repeated uint32 unlocked_hero_ids = 26;
+ optional uint32 ranked_calibration_matches = 27;
+ optional uint32 ranked_demote_protection_matches = 28;
+ optional uint32 ranked_progress = 29;
+ optional int32 ranked_delta_win = 30;
+ optional int32 ranked_delta_loss = 31;
+ optional int32 ranked_delta_abandon = 32;
+ optional uint32 rank_progress_badge = 33;
+ optional uint32 rank_display_badge = 34;
+ optional uint32 ranked_win_streak = 35;
+ optional uint64 cabal_id = 36;
}
message DevSettings {
@@ -217,12 +250,21 @@ message CSOCitadelServerStaticLobby {
optional string gameplay_experiment = 27;
optional bool rewards_eligible = 28;
repeated uint32 banned_heroes = 29;
+ optional .ECitadelRankedType rank_type = 30 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 31;
+ optional .ECitadelCabalMMTier cabal_mm_tier = 32 [default = k_eCabalMMTier_Invalid];
+ repeated .CServerCabalInfo server_cabal_info = 33;
+ optional uint32 corrupted_item_shop_spawn_minutes = 34;
}
message CSOCitadelServerHideoutLobby {
optional uint64 hideout_lobby_id = 1;
}
+message CServerCabalInfo {
+ optional uint64 cabal_id = 1;
+}
+
message CMsgServerSignoutData_ServerPerfStats {
message FrameCounts {
optional uint32 num_frames = 1;
@@ -272,6 +314,8 @@ message CMsgServerToGCUpdateMatchInfo {
optional uint64 objectives_mask_team1 = 10;
optional uint32 brawl_score_team0 = 11;
optional uint32 brawl_score_team1 = 12;
+ repeated uint32 changed_hero_slots = 13 [packed = true];
+ repeated uint32 changed_hero_ids = 14 [packed = true];
}
message CMsgServerToGCMatchSignoutPermission {
@@ -371,6 +415,7 @@ message CMsgServerSignoutData_DetailedStats {
optional uint32 comeback_kills = 16;
optional uint32 comeback_treasure = 17;
optional uint32 comeback_misc = 18;
+ optional uint32 item_goose_egg = 19;
}
optional uint32 match_time_s = 1;
@@ -398,6 +443,17 @@ message CMsgServerSignoutData_DetailedStats {
optional uint32 destroyed_time_s = 3;
}
+ message KothCapture {
+ optional .ECitadelLobbyTeam winning_team = 1 [default = k_ECitadelLobbyTeam_Team0];
+ optional .ECitadelLobbyTeam deposit_team = 2 [default = k_ECitadelLobbyTeam_Team0];
+ optional bool overtime = 3;
+ optional uint32 match_time_s = 4;
+ optional uint32 winning_players = 5;
+ optional uint32 losing_players = 6;
+ optional uint32 duration_s = 7;
+ optional bool was_comeback_victory = 8;
+ }
+
message Player {
optional uint32 player_slot = 1;
repeated .CMsgServerSignoutData_DetailedStats.TimeSample time_samples = 3;
@@ -406,6 +462,7 @@ message CMsgServerSignoutData_DetailedStats {
repeated .CMsgServerSignoutData_DetailedStats.Player player_stats = 1;
repeated .CMsgServerSignoutData_DetailedStats.Objective objectives = 2;
repeated .CMsgServerSignoutData_DetailedStats.MidBoss mid_boss = 3;
+ repeated .CMsgServerSignoutData_DetailedStats.KothCapture koth_captures = 4;
}
message CMsgServerSignoutData_PerfData {
@@ -462,21 +519,9 @@ message CMsgServerSignoutData_ChallengeProgress {
}
message CMsgServerSignoutData_HeroXPGrant {
- message HeroXPGrant {
- optional uint32 hero_id = 1;
- optional uint32 xp_grant = 2;
- optional .CMsgServerSignoutData_HeroXPGrant.EGrantReason reason = 3 [default = k_eGrant_Win];
- }
-
message AccountXPGrant {
optional uint32 account_id = 1;
- repeated .CMsgServerSignoutData_HeroXPGrant.HeroXPGrant xp_grant = 2;
- }
-
- enum EGrantReason {
- k_eGrant_Win = 0;
- k_eGrant_Loss = 1;
- k_eGrant_Award = 2;
+ repeated .CMsgHeroXPGrant xp_grant = 2;
}
repeated .CMsgServerSignoutData_HeroXPGrant.AccountXPGrant account_xp = 1;
@@ -515,6 +560,7 @@ message CMsgServerSignoutData_PlayerChat {
optional float game_time = 2;
optional bool team_only = 3;
optional string chat_line = 4;
+ optional bool comms_restricted = 5;
}
repeated .CMsgServerSignoutData_PlayerChat.ChatLine chat_lines = 1;
@@ -589,6 +635,23 @@ message CMsgServerSignoutData_StreetBrawlData {
repeated .CMsgServerSignoutData_StreetBrawlData.Round rounds = 1;
}
+message CMsgServerSignoutData_HeroDraftData {
+ message HeroDraftAttempt {
+ optional uint32 player_slot = 1;
+ optional uint32 hero_id = 2;
+ optional .CMsgServerSignoutData_HeroDraftData.EDraftOutcome outcome = 3 [default = k_eError];
+ optional uint32 time = 4;
+ }
+
+ enum EDraftOutcome {
+ k_eError = 0;
+ k_eAlreadyTaken = 1;
+ k_eSuccess = 2;
+ }
+
+ repeated .CMsgServerSignoutData_HeroDraftData.HeroDraftAttempt hero_draft_attempts = 1;
+}
+
message CMsgServerSignoutData_PenalizedPlayers {
message Penalty {
optional uint32 account_id = 1;
@@ -607,6 +670,15 @@ message CMsgServerSignoutData_PenalizedPlayers {
repeated .CMsgServerSignoutData_PenalizedPlayers.Penalty penalized_players = 1;
}
+message CMsgServerSignoutData_HeroReleaseVotes {
+ message PlayerVote {
+ optional uint32 account_id = 1;
+ optional uint32 voted_hero_id = 2;
+ }
+
+ repeated .CMsgServerSignoutData_HeroReleaseVotes.PlayerVote player_votes = 1;
+}
+
message CMsgMatchData {
message PlayerItem {
optional uint32 item_id = 1;
@@ -615,6 +687,7 @@ message CMsgMatchData {
optional uint32 sold_time_s = 4;
optional uint32 flags = 5;
optional uint32 imbued_ability_id = 6;
+ optional uint32 upgrade_info = 7;
}
message AuxStat {
@@ -680,6 +753,11 @@ message CMsgMatchData {
repeated .CMsgMatchData.AuxStat aux_stats = 55;
repeated .CMsgTrackedStat player_tracked_stats = 56;
optional float new_player_score = 57;
+ optional float hero_mmru_skill = 58;
+ optional .EPlayerMatchOutcome player_match_outcome = 61 [default = k_EPlayerMatchOutcome_Invalid];
+ optional int32 rank_change_delta = 62;
+ optional uint32 initial_hero_id = 63;
+ optional uint64 cabal_id = 64;
}
message TeamInfo {
@@ -719,6 +797,11 @@ message CMsgMatchData {
optional float winner_pct_time_in_enemy = 21;
optional bool forgive_existing_abandons = 22;
optional uint32 brawl_avg_round_time_s = 23;
+ optional uint32 first_blood_time = 24;
+ optional .ECitadelRankedType rank_type = 25 [default = k_eCitadelRankedType_Invalid];
+ optional uint32 rank_interval = 26;
+ optional .ECitadelCabalMMTier cabal_mm_tier = 27 [default = k_eCabalMMTier_Invalid];
+ optional uint32 corrupted_penalty_seed = 28;
}
message CMsgServerToGCMatchSignout {
@@ -779,8 +862,8 @@ message CMsgServerToGCEnterMatchmaking {
optional uint32 server_port = 7;
optional bytes sdr_address = 9;
optional uint32 replay_group_id = 10;
- optional bool allow_matches = 11;
- optional bool allow_hideout = 12;
+ optional uint32 process_id = 13;
+ repeated .ECitadelServerMode server_modes = 14;
}
message CMsgGCToServerCancelAllocateForMatch {
@@ -825,9 +908,8 @@ message CMsgServerToGCAbandonMatch {
optional uint32 region_id = 18;
optional uint64 hideout_lobby_id = 19;
optional uint64 routing_id = 20;
- optional bool allow_matches = 21;
- optional bool allow_hideout = 22;
optional bool was_lost_lobby = 23;
+ repeated .ECitadelServerMode server_modes = 24;
}
message CMsgServerToGCAbandonMatchResponse {
@@ -918,4 +1000,60 @@ message CMsgServerSteamLearnCitadelPlayerMechanicalBehavior {
optional float time_spent_not_contributing_to_game_events_ratio = 23;
optional float dash_jumps_per_minute = 24;
optional float wall_jumps_per_minute = 25;
+
+ reserved 17;
+}
+
+message CMsgServerToGCInternalMatchStats {
+ optional uint64 match_id = 1;
+ optional uint32 round = 2;
+ optional uint32 duration = 3;
+ optional uint32 timestamp = 4;
+ repeated uint32 account_ids = 5;
+ repeated uint32 hero_ids = 6;
+}
+
+message CMsgToxicChatEvaluationContext {
+ optional uint32 target_account_id = 1;
+ optional uint32 reporter_account_id = 2;
+ optional uint64 match_id = 3;
+ optional bool dry_run = 4;
+ optional bool enemy_report = 5;
+}
+
+message CMsgToxicChatLine {
+ optional uint32 timestamp = 1;
+ optional string line = 2;
+ optional bool team_only = 3;
+}
+
+message CMsgGCToServerRequestPlayerChatLog {
+ optional .CMsgToxicChatEvaluationContext context = 1;
+}
+
+message CMsgGCToServerRequestPlayerChatLogResponse {
+ optional uint32 reporter_account_id = 1;
+ repeated .CMsgToxicChatLine lines = 2;
+}
+
+message CMsgGCToServerToxicChatEvaluationResult {
+ optional .CMsgToxicChatEvaluationContext context = 1;
+ optional bool convicted = 2;
+ optional uint32 ban_duration_seconds = 4;
+ optional uint32 sent_lines = 5;
+ optional uint32 evaluated_lines = 6;
+ optional uint32 toxic_lines = 7;
+ optional float toxicity_score = 8;
+ optional bool api_failure = 9;
+ optional bool announce_mute = 11;
+}
+
+message CMsgServerToGCTestToxicChatEval {
+ message Player {
+ optional uint32 account_id = 1;
+ repeated .CMsgToxicChatLine lines = 2;
+ }
+
+ optional uint64 match_id = 1;
+ repeated .CMsgServerToGCTestToxicChatEval.Player players = 2;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/econ_gcmessages.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/econ_gcmessages.proto
index aed69722..a8052273 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/econ_gcmessages.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/econ_gcmessages.proto
@@ -2,6 +2,7 @@ import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/econ_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/base_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -442,7 +443,18 @@ message CMsgDevNewItemRequest {
}
message CMsgDevNewItemRequestResponse {
- optional bool success = 1;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eUnknownItemDef = 6;
+ k_eItemDefNotAllowed = 7;
+ }
+
+ optional .CMsgDevNewItemRequestResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgDevUnlockAllItemStyles {
@@ -872,7 +884,6 @@ message CMsgProcessTransactionOrder {
optional uint64 txn_id = 1;
optional uint64 steam_txn_id = 2;
- optional uint64 partner_txn_id = 3;
optional fixed64 steam_id = 4;
optional uint32 time_stamp = 5;
optional uint64 watermark = 6;
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/engine_gcmessages.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/engine_gcmessages.proto
index 57531358..f5e788e6 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/engine_gcmessages.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/engine_gcmessages.proto
@@ -6,14 +6,14 @@ option optimize_for = SPEED;
option java_generic_services = false;
message CEngineGotvSyncPacket {
- optional uint64 match_id = 1;
- optional uint32 instance_id = 2;
- optional uint32 signupfragment = 3;
- optional uint32 currentfragment = 4;
- optional float tickrate = 5;
- optional uint32 tick = 6;
- optional float rtdelay = 8;
- optional float rcvage = 9;
- optional float keyframe_interval = 10;
- optional uint32 cdndelay = 11;
+ optional uint64 match_id = 1;
+ optional uint32 instance_id = 2;
+ optional uint32 signupfragment = 3;
+ optional uint32 currentfragment = 4;
+ optional float tickrate = 5;
+ optional uint32 tick = 6;
+ optional float rtdelay = 8;
+ optional float rcvage = 9;
+ optional float keyframe_interval = 10;
+ optional uint32 cdndelay = 11;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto
index 6cf09b7b..b1fdc0d3 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsdk_gcmessages.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
@@ -226,7 +227,6 @@ message CMsgClientHello {
repeated .CMsgSOCacheHaveVersion socache_have_versions = 2;
optional uint32 client_session_need = 3;
optional .PartnerAccountType client_launcher = 4 [default = PARTNER_NONE];
- optional string secret_key = 5;
optional uint32 client_language = 6;
optional .ESourceEngine engine = 7 [default = k_ESE_Source1];
optional bytes steamdatagram_login = 8;
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsystemmsgs.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsystemmsgs.proto
index b25fa244..559fa294 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsystemmsgs.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/gcsystemmsgs.proto
@@ -4,28 +4,28 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ESOMsg {
- k_ESOMsg_Create = 21;
- k_ESOMsg_Update = 22;
- k_ESOMsg_Destroy = 23;
- k_ESOMsg_CacheSubscribed = 24;
- k_ESOMsg_CacheUnsubscribed = 25;
- k_ESOMsg_UpdateMultiple = 26;
- k_ESOMsg_CacheSubscriptionRefresh = 28;
- k_ESOMsg_CacheSubscribedUpToDate = 29;
+ k_ESOMsg_Create = 21;
+ k_ESOMsg_Update = 22;
+ k_ESOMsg_Destroy = 23;
+ k_ESOMsg_CacheSubscribed = 24;
+ k_ESOMsg_CacheUnsubscribed = 25;
+ k_ESOMsg_UpdateMultiple = 26;
+ k_ESOMsg_CacheSubscriptionRefresh = 28;
+ k_ESOMsg_CacheSubscribedUpToDate = 29;
}
enum EGCBaseClientMsg {
- k_EMsgGCPingRequest = 3001;
- k_EMsgGCPingResponse = 3002;
- k_EMsgGCToClientPollConvarRequest = 3003;
- k_EMsgGCToClientPollConvarResponse = 3004;
- k_EMsgGCCompressedMsgToClient = 3005;
- k_EMsgGCCompressedMsgToClient_Legacy = 523;
- k_EMsgGCToClientRequestDropped = 3006;
- k_EMsgGCClientWelcome = 4004;
- k_EMsgGCServerWelcome = 4005;
- k_EMsgGCClientHello = 4006;
- k_EMsgGCServerHello = 4007;
- k_EMsgGCClientConnectionStatus = 4009;
- k_EMsgGCServerConnectionStatus = 4010;
+ k_EMsgGCPingRequest = 3001;
+ k_EMsgGCPingResponse = 3002;
+ k_EMsgGCToClientPollConvarRequest = 3003;
+ k_EMsgGCToClientPollConvarResponse = 3004;
+ k_EMsgGCCompressedMsgToClient = 3005;
+ k_EMsgGCCompressedMsgToClient_Legacy = 523;
+ k_EMsgGCToClientRequestDropped = 3006;
+ k_EMsgGCClientWelcome = 4004;
+ k_EMsgGCServerWelcome = 4005;
+ k_EMsgGCClientHello = 4006;
+ k_EMsgGCServerHello = 4007;
+ k_EMsgGCClientConnectionStatus = 4009;
+ k_EMsgGCServerConnectionStatus = 4010;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/networkbasetypes.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/networkbasetypes.proto
new file mode 100644
index 00000000..e5e201be
--- /dev/null
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/networkbasetypes.proto
@@ -0,0 +1,282 @@
+import "in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto";
+import "google/protobuf/descriptor.proto";
+
+option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+extend .google.protobuf.MessageOptions {
+ optional int32 maximum_size_bytes = 50000;
+}
+
+enum SignonState_t {
+ SIGNONSTATE_NONE = 0;
+ SIGNONSTATE_CHALLENGE = 1;
+ SIGNONSTATE_CONNECTED = 2;
+ SIGNONSTATE_NEW = 3;
+ SIGNONSTATE_PRESPAWN = 4;
+ SIGNONSTATE_SPAWN = 5;
+ SIGNONSTATE_FULL = 6;
+ SIGNONSTATE_CHANGELEVEL = 7;
+}
+
+enum NET_Messages {
+ net_NOP = 0;
+ net_Disconnect_Legacy = 1;
+ net_SplitScreenUser = 3;
+ net_Tick = 4;
+ net_StringCmd = 5;
+ net_SetConVar = 6;
+ net_SignonState = 7;
+ net_SpawnGroup_Load = 8;
+ net_SpawnGroup_ManifestUpdate = 9;
+ net_SpawnGroup_SetCreationTick = 11;
+ net_SpawnGroup_Unload = 12;
+ net_SpawnGroup_LoadCompleted = 13;
+ net_DebugOverlay = 15;
+}
+
+enum SpawnGroupFlags_t {
+ SPAWN_GROUP_LOAD_ENTITIES_FROM_SAVE = 1;
+ SPAWN_GROUP_DONT_SPAWN_ENTITIES = 2;
+ SPAWN_GROUP_SYNCHRONOUS_SPAWN = 4;
+ SPAWN_GROUP_IS_INITIAL_SPAWN_GROUP = 8;
+ SPAWN_GROUP_CREATE_CLIENT_ONLY_ENTITIES = 16;
+ SPAWN_GROUP_BLOCK_UNTIL_LOADED = 64;
+ SPAWN_GROUP_LOAD_STREAMING_DATA = 128;
+ SPAWN_GROUP_CREATE_NEW_SCENE_WORLD = 256;
+}
+
+message CMsgVector {
+ option (codegen_delta_encoder) = true;
+
+ optional float x = 1;
+ optional float y = 2;
+ optional float z = 3;
+ optional float w = 4;
+}
+
+message CMsgVector2D {
+ option (codegen_delta_encoder) = true;
+
+ optional float x = 1;
+ optional float y = 2;
+}
+
+message CMsgQAngle {
+ option (codegen_delta_encoder) = true;
+
+ optional float x = 1;
+ optional float y = 2;
+ optional float z = 3;
+}
+
+message CMsgQuaternion {
+ option (codegen_delta_encoder) = true;
+
+ optional float x = 1;
+ optional float y = 2;
+ optional float z = 3;
+ optional float w = 4;
+}
+
+message CMsgTransform {
+ option (codegen_delta_encoder) = true;
+
+ optional .CMsgVector position = 1;
+ optional float scale = 2;
+ optional .CMsgQuaternion orientation = 3;
+}
+
+message CMsgRGBA {
+ option (codegen_delta_encoder) = true;
+
+ optional int32 r = 1;
+ optional int32 g = 2;
+ optional int32 b = 3;
+ optional int32 a = 4;
+}
+
+message CMsgPlayerInfo {
+ optional string name = 1;
+ optional fixed64 xuid = 2;
+ optional int32 userid = 3;
+ optional fixed64 steamid = 4;
+ optional bool fakeplayer = 5;
+ optional bool ishltv = 6;
+ optional bool clan_member = 9;
+ optional bool clan_officer = 10;
+}
+
+message CEntityMsg {
+ optional uint32 target_entity = 1 [default = 16777215];
+}
+
+message CMsg_CVars {
+ message CVar {
+ optional string name = 1;
+ optional string value = 2;
+ }
+
+ repeated .CMsg_CVars.CVar cvars = 1;
+}
+
+message CNETMsg_NOP {
+}
+
+message CNETMsg_SplitScreenUser {
+ optional int32 slot = 1;
+}
+
+message CNETMsg_Tick {
+ optional uint32 tick = 1;
+ optional uint32 host_computationtime = 4;
+ optional uint32 host_computationtime_std_deviation = 5;
+ optional uint32 legacy_host_loss = 7;
+ optional uint32 host_unfiltered_frametime = 8;
+ optional uint32 hltv_replay_flags = 9;
+ optional uint32 expected_long_tick = 10;
+ optional string expected_long_tick_reason = 11;
+ optional uint32 host_frame_dropped_pct_x10 = 12;
+ optional uint32 host_frame_irregular_arrival_pct_x10 = 13;
+}
+
+message CNETMsg_StringCmd {
+ optional string command = 1;
+ optional uint32 prediction_sync = 2;
+}
+
+message CNETMsg_SetConVar {
+ option (maximum_size_bytes) = 4096;
+
+ optional .CMsg_CVars convars = 1;
+}
+
+message CNETMsg_SignonState {
+ optional .SignonState_t signon_state = 1 [default = SIGNONSTATE_NONE];
+ optional uint32 spawn_count = 2;
+ optional uint32 num_server_players = 3;
+ repeated string players_networkids = 4;
+ optional string map_name = 5;
+ optional string addons = 6;
+}
+
+message CSVCMsg_GameEvent {
+ message key_t {
+ optional int32 type = 1;
+ optional string val_string = 2;
+ optional float val_float = 3;
+ optional int32 val_long = 4;
+ optional int32 val_short = 5;
+ optional int32 val_byte = 6;
+ optional bool val_bool = 7;
+ optional uint64 val_uint64 = 8;
+ }
+
+ optional string event_name = 1;
+ optional int32 eventid = 2;
+ repeated .CSVCMsg_GameEvent.key_t keys = 3;
+}
+
+message CSVCMsgList_GameEvents {
+ message event_t {
+ optional int32 tick = 1;
+ optional .CSVCMsg_GameEvent event = 2;
+ }
+
+ repeated .CSVCMsgList_GameEvents.event_t events = 1;
+}
+
+message CNETMsg_SpawnGroup_Load {
+ option (maximum_size_bytes) = 131072;
+
+ optional string worldname = 1;
+ optional string entitylumpname = 2;
+ optional string entityfiltername = 3;
+ optional uint32 spawngrouphandle = 4;
+ optional uint32 spawngroupownerhandle = 5;
+ optional .CMsgVector world_offset_pos = 6;
+ optional .CMsgQAngle world_offset_angle = 7;
+ optional bytes spawngroupmanifest = 8;
+ optional uint32 flags = 9;
+ optional int32 tickcount = 10;
+ optional bool manifestincomplete = 11;
+ optional string localnamefixup = 12;
+ optional string parentnamefixup = 13;
+ optional int32 manifestloadpriority = 14;
+ optional uint32 worldgroupid = 15;
+ optional uint32 creationsequence = 16;
+ optional string savegamefilename = 17;
+ optional uint32 spawngroupparenthandle = 18;
+ optional bool leveltransition = 19;
+ optional string worldgroupname = 20;
+}
+
+message CNETMsg_SpawnGroup_ManifestUpdate {
+ option (maximum_size_bytes) = 2048;
+
+ optional uint32 spawngrouphandle = 1;
+ optional bytes spawngroupmanifest = 2;
+ optional bool manifestincomplete = 3;
+}
+
+message CNETMsg_SpawnGroup_SetCreationTick {
+ optional uint32 spawngrouphandle = 1;
+ optional int32 tickcount = 2;
+ optional uint32 creationsequence = 3;
+}
+
+message CNETMsg_SpawnGroup_Unload {
+ optional uint32 spawngrouphandle = 1;
+ optional uint32 flags = 2;
+ optional int32 tickcount = 3;
+}
+
+message CNETMsg_SpawnGroup_LoadCompleted {
+ optional uint32 spawngrouphandle = 1;
+}
+
+message QuantizedFloatEncoderAlias_t {
+ optional string name = 1;
+ optional int32 bit_count = 2;
+ optional int32 encode_flags = 3;
+ optional float min_value = 4;
+ optional float max_value = 5;
+ optional bool validate = 6;
+}
+
+message CSVCMsg_GameSessionConfiguration {
+ optional bool is_multiplayer = 1;
+ optional bool is_loadsavegame = 2;
+ optional bool is_background_map = 3;
+ optional bool is_headless = 4;
+ optional uint32 min_client_limit = 5;
+ optional uint32 max_client_limit = 6;
+ optional uint32 max_clients = 7;
+ optional fixed32 tick_interval = 8;
+ optional string hostname = 9;
+ optional string savegamename = 10;
+ optional string s1_mapname = 11;
+ optional string gamemode = 12;
+ optional string server_ip_address = 13;
+ optional bytes data = 14;
+ optional bool is_localonly = 15;
+ optional bool no_steam_server = 19;
+ optional bool is_transition = 16;
+ optional string previouslevel = 17;
+ optional string landmarkname = 18;
+ repeated .QuantizedFloatEncoderAlias_t quantized_float_encoder_aliases = 20;
+ optional float max_coord = 21;
+}
+
+message CNETMsg_DebugOverlay {
+ optional int32 etype = 1;
+ repeated .CMsgVector vectors = 2;
+ repeated .CMsgRGBA colors = 3;
+ repeated float dimensions = 4;
+ repeated float times = 5;
+ repeated bool bools = 6;
+ repeated uint64 uint64s = 7;
+ repeated string strings = 8;
+}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto
index a1374f85..603f5825 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages.proto
@@ -6,108 +6,106 @@ option optimize_for = SPEED;
option java_generic_services = false;
extend .google.protobuf.FieldOptions {
- optional bool key_field = 60000 [default = false];
+ optional bool key_field = 60000 [default = false];
}
extend .google.protobuf.MessageOptions {
- optional int32 msgpool_soft_limit = 60000 [default = 32];
- optional int32 msgpool_hard_limit = 60001 [default = 384];
+ optional int32 msgpool_soft_limit = 60000 [default = 32];
+ optional int32 msgpool_hard_limit = 60001 [default = 384];
}
enum EGCPlatform {
- k_eGCPlatform_None = 0;
- k_eGCPlatform_PC = 1;
- k_eGCPlatform_Mac = 2;
- k_eGCPlatform_Linux = 3;
- k_eGCPlatform_Android = 4;
- k_eGCPlatform_iOS = 5;
+ k_eGCPlatform_None = 0;
+ k_eGCPlatform_PC = 1;
+ k_eGCPlatform_Mac = 2;
+ k_eGCPlatform_Linux = 3;
}
enum GCProtoBufMsgSrc {
- GCProtoBufMsgSrc_Unspecified = 0;
- GCProtoBufMsgSrc_FromSystem = 1;
- GCProtoBufMsgSrc_FromSteamID = 2;
- GCProtoBufMsgSrc_FromGC = 3;
- GCProtoBufMsgSrc_ReplySystem = 4;
- GCProtoBufMsgSrc_SpoofedSteamID = 5;
+ GCProtoBufMsgSrc_Unspecified = 0;
+ GCProtoBufMsgSrc_FromSystem = 1;
+ GCProtoBufMsgSrc_FromSteamID = 2;
+ GCProtoBufMsgSrc_FromGC = 3;
+ GCProtoBufMsgSrc_ReplySystem = 4;
+ GCProtoBufMsgSrc_SpoofedSteamID = 5;
}
message CMsgProtoBufHeader {
- option (msgpool_soft_limit) = 256;
- option (msgpool_hard_limit) = 1024;
+ option (msgpool_soft_limit) = 256;
+ option (msgpool_hard_limit) = 1024;
- optional fixed64 client_steam_id = 1;
- optional int32 client_session_id = 2;
- optional uint32 source_app_id = 3;
- optional fixed64 job_id_source = 10 [default = 18446744073709551615];
- optional fixed64 job_id_target = 11 [default = 18446744073709551615];
- optional string target_job_name = 12;
- optional int32 eresult = 13 [default = 2];
- optional string error_message = 14;
- optional .GCProtoBufMsgSrc gc_msg_src = 200 [default = GCProtoBufMsgSrc_Unspecified];
- optional int32 gc_dir_index_source = 201 [default = -1];
+ optional fixed64 client_steam_id = 1;
+ optional int32 client_session_id = 2;
+ optional uint32 source_app_id = 3;
+ optional fixed64 job_id_source = 10 [default = 18446744073709551615];
+ optional fixed64 job_id_target = 11 [default = 18446744073709551615];
+ optional string target_job_name = 12;
+ optional int32 eresult = 13 [default = 2];
+ optional string error_message = 14;
+ optional .GCProtoBufMsgSrc gc_msg_src = 200 [default = GCProtoBufMsgSrc_Unspecified];
+ optional int32 gc_dir_index_source = 201 [default = -1];
}
message CGCSystemMsg_GetAccountDetails {
- option (msgpool_soft_limit) = 128;
- option (msgpool_hard_limit) = 512;
+ option (msgpool_soft_limit) = 128;
+ option (msgpool_hard_limit) = 512;
- optional fixed64 steamid = 1;
- optional uint32 appid = 2;
+ optional fixed64 steamid = 1;
+ optional uint32 appid = 2;
}
message CGCSystemMsg_GetAccountDetails_Response {
- option (msgpool_soft_limit) = 128;
- option (msgpool_hard_limit) = 512;
+ option (msgpool_soft_limit) = 128;
+ option (msgpool_hard_limit) = 512;
- optional uint32 eresult_deprecated = 1 [default = 2];
- optional string account_name = 2;
- optional string persona_name = 3;
- optional bool is_profile_created = 26;
- optional bool is_profile_public = 4;
- optional bool is_inventory_public = 5;
- optional bool is_vac_banned = 7;
- optional bool is_cyber_cafe = 8;
- optional bool is_school_account = 9;
- optional bool is_limited = 10;
- optional bool is_subscribed = 11;
- optional uint32 package = 12;
- optional bool is_free_trial_account = 13;
- optional uint32 free_trial_expiration = 14;
- optional bool is_low_violence = 15;
- optional bool is_account_locked_down = 16;
- optional bool is_community_banned = 17;
- optional bool is_trade_banned = 18;
- optional uint32 trade_ban_expiration = 19;
- optional uint32 accountid = 20;
- optional uint32 suspension_end_time = 21;
- optional string currency = 22;
- optional uint32 steam_level = 23;
- optional uint32 friend_count = 24;
- optional uint32 account_creation_time = 25;
- optional bool is_steamguard_enabled = 27;
- optional bool is_phone_verified = 28;
- optional bool is_two_factor_auth_enabled = 29;
- optional uint32 two_factor_enabled_time = 30;
- optional uint32 phone_verification_time = 31;
- optional uint64 phone_id = 33;
- optional bool is_phone_identifying = 34;
- optional uint32 rt_identity_linked = 35;
- optional uint32 rt_birth_date = 36;
- optional string txn_country_code = 37;
- optional bool has_accepted_china_ssa = 38;
- optional bool is_banned_steam_china = 39;
+ optional uint32 eresult_deprecated = 1 [default = 2];
+ optional string account_name = 2;
+ optional string persona_name = 3;
+ optional bool is_profile_created = 26;
+ optional bool is_profile_public = 4;
+ optional bool is_inventory_public = 5;
+ optional bool is_vac_banned = 7;
+ optional bool is_cyber_cafe = 8;
+ optional bool is_school_account = 9;
+ optional bool is_limited = 10;
+ optional bool is_subscribed = 11;
+ optional uint32 package = 12;
+ optional bool is_free_trial_account = 13;
+ optional uint32 free_trial_expiration = 14;
+ optional bool is_low_violence = 15;
+ optional bool is_account_locked_down = 16;
+ optional bool is_community_banned = 17;
+ optional bool is_trade_banned = 18;
+ optional uint32 trade_ban_expiration = 19;
+ optional uint32 accountid = 20;
+ optional uint32 suspension_end_time = 21;
+ optional string currency = 22;
+ optional uint32 steam_level = 23;
+ optional uint32 friend_count = 24;
+ optional uint32 account_creation_time = 25;
+ optional bool is_steamguard_enabled = 27;
+ optional bool is_phone_verified = 28;
+ optional bool is_two_factor_auth_enabled = 29;
+ optional uint32 two_factor_enabled_time = 30;
+ optional uint32 phone_verification_time = 31;
+ optional uint64 phone_id = 33;
+ optional bool is_phone_identifying = 34;
+ optional uint32 rt_identity_linked = 35;
+ optional uint32 rt_birth_date = 36;
+ optional string txn_country_code = 37;
+ optional bool has_accepted_china_ssa = 38;
+ optional bool is_banned_steam_china = 39;
}
message CIPLocationInfo {
- optional uint32 ip = 1;
- optional float latitude = 2;
- optional float longitude = 3;
- optional string country = 4;
- optional string state = 5;
- optional string city = 6;
+ optional uint32 ip = 1;
+ optional float latitude = 2;
+ optional float longitude = 3;
+ optional string country = 4;
+ optional string state = 5;
+ optional string city = 6;
}
message CGCMsgGetIPLocationResponse {
- repeated .CIPLocationInfo infos = 1;
+ repeated .CIPLocationInfo infos = 1;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto
index 45c12e2e..8ee593ea 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_steamlearn.steamworkssdk.proto
@@ -274,19 +274,9 @@ message CMsgSteamLearn_InferenceMetadata_Response {
optional uint64 count = 3;
}
- message MapValuesEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2;
- }
-
- message MapMappingsEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2;
- }
-
optional string name = 1;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry map_values = 2;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry map_mappings = 3;
+ map map_values = 2;
+ map map_mappings = 3;
}
message SequenceTable {
@@ -296,19 +286,9 @@ message CMsgSteamLearn_InferenceMetadata_Response {
optional uint32 count = 3;
}
- message MapValuesEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.Entry value = 2;
- }
-
- message MapMappingsEntry {
- optional string key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.Entry value = 2;
- }
-
optional string name = 1;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.MapValuesEntry map_values = 2;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.MapMappingsEntry map_mappings = 3;
+ map map_values = 2;
+ map map_mappings = 3;
optional uint64 total_count = 4;
}
@@ -343,11 +323,6 @@ message CMsgSteamLearn_InferenceMetadata_Response {
optional bool adult_sex = 7;
}
- message AppInfoEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.AppInfo value = 2;
- }
-
optional .ESteamLearnInferenceMetadataResult inference_metadata_result = 1 [default = STEAMLEARN_INFERENCE_METADATA_ERROR];
optional .CMsgSteamLearn_InferenceMetadata_Response.RowRange row_range = 2;
repeated .CMsgSteamLearn_InferenceMetadata_Response.Range ranges = 3;
@@ -355,7 +330,7 @@ message CMsgSteamLearn_InferenceMetadata_Response {
repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable compact_tables = 5;
repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable sequence_tables = 9;
repeated .CMsgSteamLearn_InferenceMetadata_Response.KMeans kmeans = 6;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.AppInfoEntry app_info = 8;
+ map app_info = 8;
optional .CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram snapshot_histogram = 7;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_unified_base.steamworkssdk.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_unified_base.steamworkssdk.proto
index 4e8d9454..8ff20327 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_unified_base.steamworkssdk.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/steammessages_unified_base.steamworkssdk.proto
@@ -6,27 +6,27 @@ option optimize_for = SPEED;
option java_generic_services = false;
extend .google.protobuf.FieldOptions {
- optional string description = 50000;
+ optional string description = 50000;
}
extend .google.protobuf.ServiceOptions {
- optional string service_description = 50000;
- optional .EProtoExecutionSite service_execution_site = 50008 [default = k_EProtoExecutionSiteUnknown];
+ optional string service_description = 50000;
+ optional .EProtoExecutionSite service_execution_site = 50008 [default = k_EProtoExecutionSiteUnknown];
}
extend .google.protobuf.MethodOptions {
- optional string method_description = 50000;
+ optional string method_description = 50000;
}
extend .google.protobuf.EnumOptions {
- optional string enum_description = 50000;
+ optional string enum_description = 50000;
}
extend .google.protobuf.EnumValueOptions {
- optional string enum_value_description = 50000;
+ optional string enum_value_description = 50000;
}
enum EProtoExecutionSite {
- k_EProtoExecutionSiteUnknown = 0;
- k_EProtoExecutionSiteSteamClient = 3;
+ k_EProtoExecutionSiteUnknown = 0;
+ k_EProtoExecutionSiteSteamClient = 3;
}
diff --git a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto
index a900d576..8b2c9327 100644
--- a/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto
+++ b/javasteam-deadlock/src/main/proto/in/dragonbra/javasteam/protobufs/deadlock/valveextensions.proto
@@ -5,27 +5,32 @@ option java_package = "in.dragonbra.javasteam.protobufs.deadlock";
option optimize_for = SPEED;
option java_generic_services = false;
+extend .google.protobuf.MessageOptions {
+ optional bool codegen_delta_encoder = 61000 [default = false];
+}
+
extend .google.protobuf.FieldOptions {
- optional bool valve_map_field = 61000 [default = false];
- optional bool valve_map_key = 61001 [default = false];
- optional int32 diff_encode_field = 61002 [default = 0];
- optional bool delta_ignore = 61003 [default = false];
- optional uint32 steamml_max_entries = 61004 [default = 0];
- optional bool steamml_is_timestamp = 61005 [default = false];
- optional uint32 steamlearn_count = 61006 [default = 0];
- optional .EProtoDebugVisiblity debugprint_visibility = 61007 [default = k_EProtoDebugVisibility_Always];
+ optional bool valve_map_field = 61000 [default = false];
+ optional bool valve_map_key = 61001 [default = false];
+ optional int32 diff_encode_field = 61002 [default = 0];
+ optional bool delta_ignore = 61003 [default = false];
+ optional int32 untrusted_delta_max = 61008 [default = 256];
+ optional uint32 steamml_max_entries = 61004 [default = 0];
+ optional bool steamml_is_timestamp = 61005 [default = false];
+ optional uint32 steamlearn_count = 61006 [default = 0];
+ optional .EProtoDebugVisiblity debugprint_visibility = 61007 [default = k_EProtoDebugVisibility_Always];
}
extend .google.protobuf.EnumValueOptions {
- optional string schema_friendly_name = 1000;
- optional string schema_description = 1001;
- optional bool schema_suppress_enumerator = 1002;
+ optional string schema_friendly_name = 1000;
+ optional string schema_description = 1001;
+ optional bool schema_suppress_enumerator = 1002;
}
enum EProtoDebugVisiblity {
- k_EProtoDebugVisibility_Always = 0;
- k_EProtoDebugVisibility_Server = 70;
- k_EProtoDebugVisibility_ValveServer = 80;
- k_EProtoDebugVisibility_GC = 90;
- k_EProtoDebugVisibility_Never = 100;
+ k_EProtoDebugVisibility_Always = 0;
+ k_EProtoDebugVisibility_Server = 70;
+ k_EProtoDebugVisibility_ValveServer = 80;
+ k_EProtoDebugVisibility_GC = 90;
+ k_EProtoDebugVisibility_Never = 100;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto
index 8dc6d09f..2b0a8593 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -8,410 +9,411 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EGCBaseMsg {
- k_EMsgGCInviteToParty = 4501;
- k_EMsgGCInvitationCreated = 4502;
- k_EMsgGCPartyInviteResponse = 4503;
- k_EMsgGCKickFromParty = 4504;
- k_EMsgGCLeaveParty = 4505;
- k_EMsgGCServerAvailable = 4506;
- k_EMsgGCClientConnectToServer = 4507;
- k_EMsgGCGameServerInfo = 4508;
- k_EMsgGCLANServerAvailable = 4511;
- k_EMsgGCInviteToLobby = 4512;
- k_EMsgGCLobbyInviteResponse = 4513;
- k_EMsgGCToClientPollFileRequest = 4514;
- k_EMsgGCToClientPollFileResponse = 4515;
- k_EMsgGCToGCPerformManualOp = 4516;
- k_EMsgGCToGCPerformManualOpCompleted = 4517;
- k_EMsgGCToGCReloadServerRegionSettings = 4518;
- k_EMsgGCAdditionalWelcomeMsgList = 4519;
- k_EMsgGCToClientApplyRemoteConVars = 4520;
- k_EMsgGCToServerApplyRemoteConVars = 4521;
- k_EMsgClientToGCIntegrityStatus = 4522;
- k_EMsgClientToGCAggregateMetrics = 4523;
- k_EMsgGCToClientAggregateMetricsBackoff = 4524;
- k_EMsgGCToServerSteamLearnAccessTokensChanged = 4525;
- k_EMsgGCToServerSteamLearnUseHTTP = 4526;
+ k_EMsgGCInviteToParty = 4501;
+ k_EMsgGCInvitationCreated = 4502;
+ k_EMsgGCPartyInviteResponse = 4503;
+ k_EMsgGCKickFromParty = 4504;
+ k_EMsgGCLeaveParty = 4505;
+ k_EMsgGCServerAvailable = 4506;
+ k_EMsgGCClientConnectToServer = 4507;
+ k_EMsgGCGameServerInfo = 4508;
+ k_EMsgGCLANServerAvailable = 4511;
+ k_EMsgGCInviteToLobby = 4512;
+ k_EMsgGCLobbyInviteResponse = 4513;
+ k_EMsgGCToClientPollFileRequest = 4514;
+ k_EMsgGCToClientPollFileResponse = 4515;
+ k_EMsgGCToGCPerformManualOp = 4516;
+ k_EMsgGCToGCPerformManualOpCompleted = 4517;
+ k_EMsgGCToGCReloadServerRegionSettings = 4518;
+ k_EMsgGCAdditionalWelcomeMsgList = 4519;
+ k_EMsgGCToClientApplyRemoteConVars = 4520;
+ k_EMsgGCToServerApplyRemoteConVars = 4521;
+ k_EMsgClientToGCIntegrityStatus = 4522;
+ k_EMsgClientToGCAggregateMetrics = 4523;
+ k_EMsgGCToClientAggregateMetricsBackoff = 4524;
+ k_EMsgGCToServerSteamLearnAccessTokensChanged = 4525;
+ k_EMsgGCToServerSteamLearnUseHTTP = 4526;
}
enum ECustomGameInstallStatus {
- k_ECustomGameInstallStatus_Unknown = 0;
- k_ECustomGameInstallStatus_Ready = 1;
- k_ECustomGameInstallStatus_Busy = 2;
- k_ECustomGameInstallStatus_FailedGeneric = 101;
- k_ECustomGameInstallStatus_FailedInternalError = 102;
- k_ECustomGameInstallStatus_RequestedTimestampTooOld = 103;
- k_ECustomGameInstallStatus_RequestedTimestampTooNew = 104;
- k_ECustomGameInstallStatus_CRCMismatch = 105;
- k_ECustomGameInstallStatus_FailedSteam = 106;
- k_ECustomGameInstallStatus_FailedCanceled = 107;
+ k_ECustomGameInstallStatus_Unknown = 0;
+ k_ECustomGameInstallStatus_Ready = 1;
+ k_ECustomGameInstallStatus_Busy = 2;
+ k_ECustomGameInstallStatus_FailedGeneric = 101;
+ k_ECustomGameInstallStatus_FailedInternalError = 102;
+ k_ECustomGameInstallStatus_RequestedTimestampTooOld = 103;
+ k_ECustomGameInstallStatus_RequestedTimestampTooNew = 104;
+ k_ECustomGameInstallStatus_CRCMismatch = 105;
+ k_ECustomGameInstallStatus_FailedSteam = 106;
+ k_ECustomGameInstallStatus_FailedCanceled = 107;
}
message CGCStorePurchaseInit_LineItem {
- optional uint32 item_def_id = 1;
- optional uint32 quantity = 2;
- optional uint32 cost_in_local_currency = 3;
- optional uint32 purchase_type = 4;
- optional uint64 source_reference_id = 5;
- optional int32 price_index = 6;
+ optional uint32 item_def_id = 1;
+ optional uint32 quantity = 2;
+ optional uint32 cost_in_local_currency = 3;
+ optional uint32 purchase_type = 4;
+ optional uint64 source_reference_id = 5;
+ optional int32 price_index = 6;
}
message CMsgGCStorePurchaseInit {
- optional string country = 1;
- optional int32 language = 2;
- optional int32 currency = 3;
- repeated .CGCStorePurchaseInit_LineItem line_items = 4;
+ optional string country = 1;
+ optional int32 language = 2;
+ optional int32 currency = 3;
+ repeated .CGCStorePurchaseInit_LineItem line_items = 4;
}
message CMsgGCStorePurchaseInitResponse {
- optional int32 result = 1;
- optional uint64 txn_id = 2;
+ optional int32 result = 1;
+ optional uint64 txn_id = 2;
}
message CMsgClientPingData {
- repeated fixed32 relay_codes = 4 [packed = true];
- repeated uint32 relay_pings = 5 [packed = true];
- repeated uint32 region_codes = 8 [packed = true];
- repeated uint32 region_pings = 9 [packed = true];
- optional uint32 region_ping_failed_bitmask = 10;
+ repeated fixed32 relay_codes = 4 [packed = true];
+ repeated uint32 relay_pings = 5 [packed = true];
+ repeated uint32 region_codes = 8 [packed = true];
+ repeated uint32 region_pings = 9 [packed = true];
+ optional uint64 region_ping_failed_bitmask = 10;
}
message CMsgInviteToParty {
- optional fixed64 steam_id = 1;
- optional uint32 client_version = 2;
- optional uint32 team_id = 3;
- optional bool as_coach = 4;
- optional .CMsgClientPingData ping_data = 5;
+ optional fixed64 steam_id = 1;
+ optional uint32 client_version = 2;
+ optional uint32 team_id = 3;
+ optional bool as_coach = 4;
+ optional .CMsgClientPingData ping_data = 5;
}
message CMsgInviteToLobby {
- optional fixed64 steam_id = 1;
- optional uint32 client_version = 2;
+ optional fixed64 steam_id = 1;
+ optional uint32 client_version = 2;
}
message CMsgInvitationCreated {
- optional uint64 group_id = 1;
- optional fixed64 steam_id = 2;
- optional bool user_offline = 3;
+ optional uint64 group_id = 1;
+ optional fixed64 steam_id = 2;
+ optional bool user_offline = 3;
}
message CMsgPartyInviteResponse {
- optional uint64 party_id = 1;
- optional bool accept = 2;
- optional uint32 client_version = 3;
- optional .CMsgClientPingData ping_data = 8;
+ optional uint64 party_id = 1;
+ optional bool accept = 2;
+ optional uint32 client_version = 3;
+ optional .CMsgClientPingData ping_data = 8;
}
message CMsgLobbyInviteResponse {
- optional fixed64 lobby_id = 1;
- optional bool accept = 2;
- optional uint32 client_version = 3;
- optional fixed64 custom_game_crc = 6;
- optional fixed32 custom_game_timestamp = 7;
+ optional fixed64 lobby_id = 1;
+ optional bool accept = 2;
+ optional uint32 client_version = 3;
+ optional fixed64 custom_game_crc = 6;
+ optional fixed32 custom_game_timestamp = 7;
}
message CMsgKickFromParty {
- optional fixed64 steam_id = 1;
+ optional fixed64 steam_id = 1;
}
message CMsgLeaveParty {
}
message CMsgCustomGameInstallStatus {
- optional .ECustomGameInstallStatus status = 1 [default = k_ECustomGameInstallStatus_Unknown];
- optional string message = 2;
- optional fixed32 latest_timestamp_from_steam = 3;
+ optional .ECustomGameInstallStatus status = 1 [default = k_ECustomGameInstallStatus_Unknown];
+ optional string message = 2;
+ optional fixed32 latest_timestamp_from_steam = 3;
}
message CMsgServerAvailable {
- optional .CMsgCustomGameInstallStatus custom_game_install_status = 1;
+ optional .CMsgCustomGameInstallStatus custom_game_install_status = 1;
}
message CMsgLANServerAvailable {
- optional fixed64 lobby_id = 1;
+ optional fixed64 lobby_id = 1;
+ optional fixed64 nonce = 2;
}
message CSOEconGameAccountClient {
- optional uint32 additional_backpack_slots = 1 [default = 0];
- optional bool trial_account = 2 [default = false];
- optional bool eligible_for_online_play = 3 [default = true];
- optional bool need_to_choose_most_helpful_friend = 4;
- optional bool in_coaches_list = 5;
- optional fixed32 trade_ban_expiration = 6;
- optional fixed32 duel_ban_expiration = 7;
- optional bool made_first_purchase = 9 [default = false];
+ optional uint32 additional_backpack_slots = 1 [default = 0];
+ optional bool trial_account = 2 [default = false];
+ optional bool eligible_for_online_play = 3 [default = true];
+ optional bool need_to_choose_most_helpful_friend = 4;
+ optional bool in_coaches_list = 5;
+ optional fixed32 trade_ban_expiration = 6;
+ optional fixed32 duel_ban_expiration = 7;
+ optional bool made_first_purchase = 9 [default = false];
}
message CMsgApplyStrangePart {
- optional uint64 strange_part_item_id = 1;
- optional uint64 item_item_id = 2;
+ optional uint64 strange_part_item_id = 1;
+ optional uint64 item_item_id = 2;
}
message CMsgApplyPennantUpgrade {
- optional uint64 upgrade_item_id = 1;
- optional uint64 pennant_item_id = 2;
+ optional uint64 upgrade_item_id = 1;
+ optional uint64 pennant_item_id = 2;
}
message CMsgApplyEggEssence {
- optional uint64 essence_item_id = 1;
- optional uint64 egg_item_id = 2;
+ optional uint64 essence_item_id = 1;
+ optional uint64 egg_item_id = 2;
}
message CSOEconItemAttribute {
- optional uint32 def_index = 1 [default = 65535];
- optional uint32 value = 2;
- optional bytes value_bytes = 3;
+ optional uint32 def_index = 1 [default = 65535];
+ optional uint32 value = 2;
+ optional bytes value_bytes = 3;
}
message CSOEconItemEquipped {
- optional uint32 new_class = 1;
- optional uint32 new_slot = 2;
+ optional uint32 new_class = 1;
+ optional uint32 new_slot = 2;
}
message CSOEconItem {
- optional uint64 id = 1;
- optional uint32 account_id = 2;
- optional uint32 inventory = 3;
- optional uint32 def_index = 4;
- optional uint32 quantity = 5 [default = 1];
- optional uint32 level = 6 [default = 1];
- optional uint32 quality = 7 [default = 4];
- optional uint32 flags = 8 [default = 0];
- optional uint32 origin = 9 [default = 0];
- repeated .CSOEconItemAttribute attribute = 12;
- optional .CSOEconItem interior_item = 13;
- optional uint32 style = 15 [default = 0];
- optional uint64 original_id = 16;
- repeated .CSOEconItemEquipped equipped_state = 18;
+ optional uint64 id = 1;
+ optional uint32 account_id = 2;
+ optional uint32 inventory = 3;
+ optional uint32 def_index = 4;
+ optional uint32 quantity = 5 [default = 1];
+ optional uint32 level = 6 [default = 1];
+ optional uint32 quality = 7 [default = 4];
+ optional uint32 flags = 8 [default = 0];
+ optional uint32 origin = 9 [default = 0];
+ repeated .CSOEconItemAttribute attribute = 12;
+ optional .CSOEconItem interior_item = 13;
+ optional uint32 style = 15 [default = 0];
+ optional uint64 original_id = 16;
+ repeated .CSOEconItemEquipped equipped_state = 18;
}
message CMsgSortItems {
- optional uint32 sort_type = 1;
+ optional uint32 sort_type = 1;
}
message CMsgItemAcknowledged {
- optional uint32 account_id = 1;
- optional uint32 inventory = 2;
- optional uint32 def_index = 3;
- optional uint32 quality = 4;
- optional uint32 rarity = 5;
- optional uint32 origin = 6;
+ optional uint32 account_id = 1;
+ optional uint32 inventory = 2;
+ optional uint32 def_index = 3;
+ optional uint32 quality = 4;
+ optional uint32 rarity = 5;
+ optional uint32 origin = 6;
}
message CMsgSetItemPositions {
- message ItemPosition {
- optional uint64 item_id = 1;
- optional uint32 position = 2;
- }
+ message ItemPosition {
+ optional uint64 item_id = 1;
+ optional uint32 position = 2;
+ }
- repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
+ repeated .CMsgSetItemPositions.ItemPosition item_positions = 1;
}
message CMsgGCStorePurchaseCancel {
- optional uint64 txn_id = 1;
+ optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseCancelResponse {
- optional uint32 result = 1;
+ optional uint32 result = 1;
}
message CMsgGCStorePurchaseFinalize {
- optional uint64 txn_id = 1;
+ optional uint64 txn_id = 1;
}
message CMsgGCStorePurchaseFinalizeResponse {
- optional uint32 result = 1;
- repeated uint64 item_ids = 2;
+ optional uint32 result = 1;
+ repeated uint64 item_ids = 2;
}
message CMsgGCToGCBannedWordListUpdated {
- optional uint32 group_id = 1;
+ optional uint32 group_id = 1;
}
message CMsgGCToGCDirtySDOCache {
- optional uint32 sdo_type = 1;
- optional uint64 key_uint64 = 2;
+ optional uint32 sdo_type = 1;
+ optional uint64 key_uint64 = 2;
}
message CMsgSDONoMemcached {
}
message CMsgGCToGCUpdateSQLKeyValue {
- optional string key_name = 1;
+ optional string key_name = 1;
}
message CMsgGCServerVersionUpdated {
- optional uint32 server_version = 1;
+ optional uint32 server_version = 1;
}
message CMsgGCClientVersionUpdated {
- optional uint32 client_version = 1;
+ optional uint32 client_version = 1;
}
message CMsgGCToGCWebAPIAccountChanged {
}
message CMsgExtractGems {
- optional uint64 tool_item_id = 1;
- optional uint64 item_item_id = 2;
- optional uint32 item_socket_id = 3 [default = 65535];
+ optional uint64 tool_item_id = 1;
+ optional uint64 item_item_id = 2;
+ optional uint32 item_socket_id = 3 [default = 65535];
}
message CMsgExtractGemsResponse {
- enum EExtractGems {
- k_ExtractGems_Succeeded = 0;
- k_ExtractGems_Failed_ToolIsInvalid = 1;
- k_ExtractGems_Failed_ItemIsInvalid = 2;
- k_ExtractGems_Failed_ToolCannotRemoveGem = 3;
- k_ExtractGems_Failed_FailedToRemoveGem = 4;
- }
+ enum EExtractGems {
+ k_ExtractGems_Succeeded = 0;
+ k_ExtractGems_Failed_ToolIsInvalid = 1;
+ k_ExtractGems_Failed_ItemIsInvalid = 2;
+ k_ExtractGems_Failed_ToolCannotRemoveGem = 3;
+ k_ExtractGems_Failed_FailedToRemoveGem = 4;
+ }
- optional uint64 item_id = 1;
- optional .CMsgExtractGemsResponse.EExtractGems response = 2 [default = k_ExtractGems_Succeeded];
+ optional uint64 item_id = 1;
+ optional .CMsgExtractGemsResponse.EExtractGems response = 2 [default = k_ExtractGems_Succeeded];
}
message CMsgAddSocket {
- optional uint64 tool_item_id = 1;
- optional uint64 item_item_id = 2;
- optional bool unusual = 3;
+ optional uint64 tool_item_id = 1;
+ optional uint64 item_item_id = 2;
+ optional bool unusual = 3;
}
message CMsgAddSocketResponse {
- enum EAddSocket {
- k_AddSocket_Succeeded = 0;
- k_AddSocket_Failed_ToolIsInvalid = 1;
- k_AddSocket_Failed_ItemCannotBeSocketed = 2;
- k_AddSocket_Failed_FailedToAddSocket = 3;
- }
+ enum EAddSocket {
+ k_AddSocket_Succeeded = 0;
+ k_AddSocket_Failed_ToolIsInvalid = 1;
+ k_AddSocket_Failed_ItemCannotBeSocketed = 2;
+ k_AddSocket_Failed_FailedToAddSocket = 3;
+ }
- optional uint64 item_id = 1;
- repeated uint32 updated_socket_index = 2;
- optional .CMsgAddSocketResponse.EAddSocket response = 3 [default = k_AddSocket_Succeeded];
+ optional uint64 item_id = 1;
+ repeated uint32 updated_socket_index = 2;
+ optional .CMsgAddSocketResponse.EAddSocket response = 3 [default = k_AddSocket_Succeeded];
}
message CMsgAddItemToSocketData {
- optional uint64 gem_item_id = 1;
- optional uint32 socket_index = 2 [default = 65535];
+ optional uint64 gem_item_id = 1;
+ optional uint32 socket_index = 2 [default = 65535];
}
message CMsgAddItemToSocket {
- optional uint64 item_item_id = 1;
- repeated .CMsgAddItemToSocketData gems_to_socket = 2;
+ optional uint64 item_item_id = 1;
+ repeated .CMsgAddItemToSocketData gems_to_socket = 2;
}
message CMsgAddItemToSocketResponse {
- enum EAddGem {
- k_AddGem_Succeeded = 0;
- k_AddGem_Failed_GemIsInvalid = 1;
- k_AddGem_Failed_ItemIsInvalid = 2;
- k_AddGem_Failed_FailedToAddGem = 3;
- k_AddGem_Failed_InvalidGemTypeForSocket = 4;
- k_AddGem_Failed_InvalidGemTypeForHero = 5;
- k_AddGem_Failed_InvalidGemTypeForSlot = 6;
- k_AddGem_Failed_SocketContainsUnremovableGem = 7;
- }
-
- optional uint64 item_item_id = 1;
- repeated uint32 updated_socket_index = 2;
- optional .CMsgAddItemToSocketResponse.EAddGem response = 3 [default = k_AddGem_Succeeded];
+ enum EAddGem {
+ k_AddGem_Succeeded = 0;
+ k_AddGem_Failed_GemIsInvalid = 1;
+ k_AddGem_Failed_ItemIsInvalid = 2;
+ k_AddGem_Failed_FailedToAddGem = 3;
+ k_AddGem_Failed_InvalidGemTypeForSocket = 4;
+ k_AddGem_Failed_InvalidGemTypeForHero = 5;
+ k_AddGem_Failed_InvalidGemTypeForSlot = 6;
+ k_AddGem_Failed_SocketContainsUnremovableGem = 7;
+ }
+
+ optional uint64 item_item_id = 1;
+ repeated uint32 updated_socket_index = 2;
+ optional .CMsgAddItemToSocketResponse.EAddGem response = 3 [default = k_AddGem_Succeeded];
}
message CMsgResetStrangeGemCount {
- optional uint64 item_item_id = 1;
- optional uint32 socket_index = 2 [default = 65535];
+ optional uint64 item_item_id = 1;
+ optional uint32 socket_index = 2 [default = 65535];
}
message CMsgResetStrangeGemCountResponse {
- enum EResetGem {
- k_ResetGem_Succeeded = 0;
- k_ResetGem_Failed_FailedToResetGem = 1;
- k_ResetGem_Failed_ItemIsInvalid = 2;
- k_ResetGem_Failed_InvalidSocketId = 3;
- k_ResetGem_Failed_SocketCannotBeReset = 4;
- }
+ enum EResetGem {
+ k_ResetGem_Succeeded = 0;
+ k_ResetGem_Failed_FailedToResetGem = 1;
+ k_ResetGem_Failed_ItemIsInvalid = 2;
+ k_ResetGem_Failed_InvalidSocketId = 3;
+ k_ResetGem_Failed_SocketCannotBeReset = 4;
+ }
- optional .CMsgResetStrangeGemCountResponse.EResetGem response = 1 [default = k_ResetGem_Succeeded];
+ optional .CMsgResetStrangeGemCountResponse.EResetGem response = 1 [default = k_ResetGem_Succeeded];
}
message CMsgGCToClientPollFileRequest {
- optional string file_name = 1;
- optional uint32 client_version = 2;
- optional uint32 poll_id = 3;
+ optional string file_name = 1;
+ optional uint32 client_version = 2;
+ optional uint32 poll_id = 3;
}
message CMsgGCToClientPollFileResponse {
- optional uint32 poll_id = 1;
- optional uint32 file_size = 2;
- optional uint32 file_crc = 3;
+ optional uint32 poll_id = 1;
+ optional uint32 file_size = 2;
+ optional uint32 file_crc = 3;
}
message CMsgGCToGCPerformManualOp {
- optional uint64 op_id = 1;
- optional uint32 group_code = 2;
+ optional uint64 op_id = 1;
+ optional uint32 group_code = 2;
}
message CMsgGCToGCPerformManualOpCompleted {
- optional bool success = 1;
- optional int32 source_gc = 2 [default = -1];
+ optional bool success = 1;
+ optional int32 source_gc = 2 [default = -1];
}
message CMsgGCToGCReloadServerRegionSettings {
}
message CMsgGCAdditionalWelcomeMsgList {
- repeated .CExtraMsgBlock welcome_messages = 1;
+ repeated .CExtraMsgBlock welcome_messages = 1;
}
message CMsgApplyRemoteConVars {
- message ConVar {
- optional string name = 1;
- optional string value = 2;
- optional uint32 version_min = 3;
- optional uint32 version_max = 4;
- optional .EGCPlatform platform = 5 [default = k_eGCPlatform_None];
- }
+ message ConVar {
+ optional string name = 1;
+ optional string value = 2;
+ optional uint32 version_min = 3;
+ optional uint32 version_max = 4;
+ optional .EGCPlatform platform = 5 [default = k_eGCPlatform_None];
+ }
- repeated .CMsgApplyRemoteConVars.ConVar con_vars = 1;
+ repeated .CMsgApplyRemoteConVars.ConVar con_vars = 1;
}
message CMsgGCToClientApplyRemoteConVars {
- optional .CMsgApplyRemoteConVars msg = 1;
+ optional .CMsgApplyRemoteConVars msg = 1;
}
message CMsgGCToServerApplyRemoteConVars {
- optional .CMsgApplyRemoteConVars msg = 1;
+ optional .CMsgApplyRemoteConVars msg = 1;
}
message CMsgClientToGCIntegrityStatus {
- message keyvalue {
- optional uint32 id = 1;
- optional uint32 extended = 2;
- optional uint64 value = 3;
- optional string string_value = 4;
- }
+ message keyvalue {
+ optional uint32 id = 1;
+ optional uint32 extended = 2;
+ optional uint64 value = 3;
+ optional string string_value = 4;
+ }
- optional string report = 1;
- optional bool secure_allowed = 2;
- repeated .CMsgClientToGCIntegrityStatus.keyvalue diagnostics = 3;
+ optional string report = 1;
+ optional bool secure_allowed = 2;
+ repeated .CMsgClientToGCIntegrityStatus.keyvalue diagnostics = 3;
}
message CMsgClientToGCAggregateMetrics {
- message SingleMetric {
- optional string metric_name = 1;
- optional uint32 metric_count = 2;
- }
+ message SingleMetric {
+ optional string metric_name = 1;
+ optional uint32 metric_count = 2;
+ }
- repeated .CMsgClientToGCAggregateMetrics.SingleMetric metrics = 1;
+ repeated .CMsgClientToGCAggregateMetrics.SingleMetric metrics = 1;
}
message CMsgGCToClientAggregateMetricsBackoff {
- optional float upload_rate_modifier = 1;
+ optional float upload_rate_modifier = 1;
}
message CMsgGCToServerSteamLearnAccessTokensChanged {
- optional .CMsgSteamLearnAccessTokens access_tokens = 1;
+ optional .CMsgSteamLearnAccessTokens access_tokens = 1;
}
message CMsgGCToServerSteamLearnUseHTTP {
- optional bool use_http = 1;
+ optional bool use_http = 1;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto
index db40eeff..03bc924b 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto
@@ -6,93 +6,93 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ETournamentTemplate {
- k_ETournamentTemplate_None = 0;
- k_ETournamentTemplate_AutomatedWin3 = 1;
+ k_ETournamentTemplate_None = 0;
+ k_ETournamentTemplate_AutomatedWin3 = 1;
}
enum ETournamentGameState {
- k_ETournamentGameState_Unknown = 0;
- k_ETournamentGameState_Canceled = 1;
- k_ETournamentGameState_Scheduled = 2;
- k_ETournamentGameState_Active = 3;
- k_ETournamentGameState_RadVictory = 20;
- k_ETournamentGameState_DireVictory = 21;
- k_ETournamentGameState_RadVictoryByForfeit = 22;
- k_ETournamentGameState_DireVictoryByForfeit = 23;
- k_ETournamentGameState_ServerFailure = 40;
- k_ETournamentGameState_NotNeeded = 41;
+ k_ETournamentGameState_Unknown = 0;
+ k_ETournamentGameState_Canceled = 1;
+ k_ETournamentGameState_Scheduled = 2;
+ k_ETournamentGameState_Active = 3;
+ k_ETournamentGameState_RadVictory = 20;
+ k_ETournamentGameState_DireVictory = 21;
+ k_ETournamentGameState_RadVictoryByForfeit = 22;
+ k_ETournamentGameState_DireVictoryByForfeit = 23;
+ k_ETournamentGameState_ServerFailure = 40;
+ k_ETournamentGameState_NotNeeded = 41;
}
enum ETournamentTeamState {
- k_ETournamentTeamState_Unknown = 0;
- k_ETournamentTeamState_Node1 = 1;
- k_ETournamentTeamState_NodeMax = 1024;
- k_ETournamentTeamState_Eliminated = 14003;
- k_ETournamentTeamState_Forfeited = 14004;
- k_ETournamentTeamState_Finished1st = 15001;
- k_ETournamentTeamState_Finished2nd = 15002;
- k_ETournamentTeamState_Finished3rd = 15003;
- k_ETournamentTeamState_Finished4th = 15004;
- k_ETournamentTeamState_Finished5th = 15005;
- k_ETournamentTeamState_Finished6th = 15006;
- k_ETournamentTeamState_Finished7th = 15007;
- k_ETournamentTeamState_Finished8th = 15008;
- k_ETournamentTeamState_Finished9th = 15009;
- k_ETournamentTeamState_Finished10th = 15010;
- k_ETournamentTeamState_Finished11th = 15011;
- k_ETournamentTeamState_Finished12th = 15012;
- k_ETournamentTeamState_Finished13th = 15013;
- k_ETournamentTeamState_Finished14th = 15014;
- k_ETournamentTeamState_Finished15th = 15015;
- k_ETournamentTeamState_Finished16th = 15016;
+ k_ETournamentTeamState_Unknown = 0;
+ k_ETournamentTeamState_Node1 = 1;
+ k_ETournamentTeamState_NodeMax = 1024;
+ k_ETournamentTeamState_Eliminated = 14003;
+ k_ETournamentTeamState_Forfeited = 14004;
+ k_ETournamentTeamState_Finished1st = 15001;
+ k_ETournamentTeamState_Finished2nd = 15002;
+ k_ETournamentTeamState_Finished3rd = 15003;
+ k_ETournamentTeamState_Finished4th = 15004;
+ k_ETournamentTeamState_Finished5th = 15005;
+ k_ETournamentTeamState_Finished6th = 15006;
+ k_ETournamentTeamState_Finished7th = 15007;
+ k_ETournamentTeamState_Finished8th = 15008;
+ k_ETournamentTeamState_Finished9th = 15009;
+ k_ETournamentTeamState_Finished10th = 15010;
+ k_ETournamentTeamState_Finished11th = 15011;
+ k_ETournamentTeamState_Finished12th = 15012;
+ k_ETournamentTeamState_Finished13th = 15013;
+ k_ETournamentTeamState_Finished14th = 15014;
+ k_ETournamentTeamState_Finished15th = 15015;
+ k_ETournamentTeamState_Finished16th = 15016;
}
enum ETournamentState {
- k_ETournamentState_Unknown = 0;
- k_ETournamentState_CanceledByAdmin = 1;
- k_ETournamentState_Completed = 2;
- k_ETournamentState_Merged = 3;
- k_ETournamentState_ServerFailure = 4;
- k_ETournamentState_TeamAbandoned = 5;
- k_ETournamentState_TeamTimeoutForfeit = 6;
- k_ETournamentState_TeamTimeoutRefund = 7;
- k_ETournamentState_ServerFailureGrantedVictory = 8;
- k_ETournamentState_TeamTimeoutGrantedVictory = 9;
- k_ETournamentState_InProgress = 100;
- k_ETournamentState_WaitingToMerge = 101;
+ k_ETournamentState_Unknown = 0;
+ k_ETournamentState_CanceledByAdmin = 1;
+ k_ETournamentState_Completed = 2;
+ k_ETournamentState_Merged = 3;
+ k_ETournamentState_ServerFailure = 4;
+ k_ETournamentState_TeamAbandoned = 5;
+ k_ETournamentState_TeamTimeoutForfeit = 6;
+ k_ETournamentState_TeamTimeoutRefund = 7;
+ k_ETournamentState_ServerFailureGrantedVictory = 8;
+ k_ETournamentState_TeamTimeoutGrantedVictory = 9;
+ k_ETournamentState_InProgress = 100;
+ k_ETournamentState_WaitingToMerge = 101;
}
enum ETournamentNodeState {
- k_ETournamentNodeState_Unknown = 0;
- k_ETournamentNodeState_Canceled = 1;
- k_ETournamentNodeState_TeamsNotYetAssigned = 2;
- k_ETournamentNodeState_InBetweenGames = 3;
- k_ETournamentNodeState_GameInProgress = 4;
- k_ETournamentNodeState_A_Won = 5;
- k_ETournamentNodeState_B_Won = 6;
- k_ETournamentNodeState_A_WonByForfeit = 7;
- k_ETournamentNodeState_B_WonByForfeit = 8;
- k_ETournamentNodeState_A_Bye = 9;
- k_ETournamentNodeState_A_Abandoned = 10;
- k_ETournamentNodeState_ServerFailure = 11;
- k_ETournamentNodeState_A_TimeoutForfeit = 12;
- k_ETournamentNodeState_A_TimeoutRefund = 13;
+ k_ETournamentNodeState_Unknown = 0;
+ k_ETournamentNodeState_Canceled = 1;
+ k_ETournamentNodeState_TeamsNotYetAssigned = 2;
+ k_ETournamentNodeState_InBetweenGames = 3;
+ k_ETournamentNodeState_GameInProgress = 4;
+ k_ETournamentNodeState_A_Won = 5;
+ k_ETournamentNodeState_B_Won = 6;
+ k_ETournamentNodeState_A_WonByForfeit = 7;
+ k_ETournamentNodeState_B_WonByForfeit = 8;
+ k_ETournamentNodeState_A_Bye = 9;
+ k_ETournamentNodeState_A_Abandoned = 10;
+ k_ETournamentNodeState_ServerFailure = 11;
+ k_ETournamentNodeState_A_TimeoutForfeit = 12;
+ k_ETournamentNodeState_A_TimeoutRefund = 13;
}
enum EDOTAGroupMergeResult {
- k_EDOTAGroupMergeResult_OK = 0;
- k_EDOTAGroupMergeResult_FAILED_GENERIC = 1;
- k_EDOTAGroupMergeResult_NOT_LEADER = 2;
- k_EDOTAGroupMergeResult_TOO_MANY_PLAYERS = 3;
- k_EDOTAGroupMergeResult_TOO_MANY_COACHES = 4;
- k_EDOTAGroupMergeResult_ENGINE_MISMATCH = 5;
- k_EDOTAGroupMergeResult_NO_SUCH_GROUP = 6;
- k_EDOTAGroupMergeResult_OTHER_GROUP_NOT_OPEN = 7;
- k_EDOTAGroupMergeResult_ALREADY_INVITED = 8;
- k_EDOTAGroupMergeResult_NOT_INVITED = 9;
+ k_EDOTAGroupMergeResult_OK = 0;
+ k_EDOTAGroupMergeResult_FAILED_GENERIC = 1;
+ k_EDOTAGroupMergeResult_NOT_LEADER = 2;
+ k_EDOTAGroupMergeResult_TOO_MANY_PLAYERS = 3;
+ k_EDOTAGroupMergeResult_TOO_MANY_COACHES = 4;
+ k_EDOTAGroupMergeResult_ENGINE_MISMATCH = 5;
+ k_EDOTAGroupMergeResult_NO_SUCH_GROUP = 6;
+ k_EDOTAGroupMergeResult_OTHER_GROUP_NOT_OPEN = 7;
+ k_EDOTAGroupMergeResult_ALREADY_INVITED = 8;
+ k_EDOTAGroupMergeResult_NOT_INVITED = 9;
}
enum EPartyBeaconType {
- k_EPartyBeaconType_Available = 0;
- k_EPartyBeaconType_Joinable = 1;
+ k_EPartyBeaconType_Available = 0;
+ k_EPartyBeaconType_Joinable = 1;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client.proto
index 4aa2c61a..6d9fea8f 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
+import "in/dragonbra/javasteam/protobufs/dota2/event_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_webapi.proto";
@@ -8,6 +9,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_match_mana
import "in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -594,6 +596,15 @@ message CMsgGCLobbyUpdateBroadcastChannelInfo {
optional string language_code = 4;
}
+message CMsgClaimEventActionData_ItemGift {
+ optional uint32 give_to_account_id = 1;
+ optional string gift_message = 2;
+}
+
+message CMsgClaimEventActionData_ItemChoice {
+ optional uint32 grant_item_choice_item_def = 1;
+}
+
message CMsgDOTAClaimEventActionData {
message GrantItemGiftData {
optional uint32 give_to_account_id = 1;
@@ -1327,6 +1338,7 @@ message CMsgGCToClientQuestProgressUpdated {
message CMsgDOTARedeemItem {
optional uint64 currency_id = 1;
optional uint32 purchase_def = 2;
+ optional bool claim_as_points = 3;
}
message CMsgDOTARedeemItemResponse {
@@ -2392,16 +2404,6 @@ message CMsgGCToClientRecordContestVoteResponse {
optional .CMsgGCToClientRecordContestVoteResponse.EResult eresult = 1 [default = SUCCESS];
}
-message CMsgDevGrantEventPoints {
- optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
- optional uint32 event_points = 2;
- optional uint32 premium_points = 3;
-}
-
-message CMsgDevGrantEventPointsResponse {
- optional .EDevEventRequestResult result = 1 [default = k_EDevEventRequestResult_Success];
-}
-
message CMsgDevGrantEventAction {
optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
optional uint32 action_id = 2;
@@ -2423,22 +2425,6 @@ message CMsgDevDeleteEventActionsResponse {
optional .EDevEventRequestResult result = 1 [default = k_EDevEventRequestResult_Success];
}
-message CMsgDevResetEventState {
- optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
- optional bool remove_audit = 2;
-}
-
-message CMsgDevResetEventStateResponse {
- optional .EDevEventRequestResult result = 1 [default = k_EDevEventRequestResult_Success];
-}
-
-message CMsgDevReloadAllEvents {
-}
-
-message CMsgDevReloadAllEventsResponse {
- optional .EDevEventRequestResult result = 1 [default = k_EDevEventRequestResult_Success];
-}
-
message CMsgConsumeEventSupportGrantItem {
optional uint64 item_id = 1;
}
@@ -2822,12 +2808,6 @@ message CMsgClientToGCRecalibrateMMRResponse {
optional .CMsgClientToGCRecalibrateMMRResponse.EResponse result = 1 [default = k_eInternalError];
}
-message CMsgDOTAPostGameItemAwardNotification {
- optional uint32 receiver_account_id = 1;
- repeated uint32 item_def_index = 2;
- optional uint32 action_id = 3;
-}
-
message CMsgClientToGCGetOWMatchDetails {
}
@@ -3407,11 +3387,11 @@ message CMsgClientToGCGetEventRankingResponse {
optional float score = 3;
optional float percentile = 4;
optional uint32 final_rank_bucket = 5;
+ optional bool update_in_progress = 6;
}
message CMsgClientToGCGetEventCoupon {
optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
- repeated uint32 coupon_ids = 2;
}
message CMsgClientToGCGetEventCouponResponse {
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_chat.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_chat.proto
index 85734a85..accc86a3 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_chat.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_chat.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,242 +7,242 @@ option optimize_for = SPEED;
option java_generic_services = false;
message CMsgClientToGCPrivateChatInvite {
- optional string private_chat_channel_name = 1;
- optional uint32 invited_account_id = 2;
+ optional string private_chat_channel_name = 1;
+ optional uint32 invited_account_id = 2;
}
message CMsgClientToGCPrivateChatKick {
- optional string private_chat_channel_name = 1;
- optional uint32 kick_account_id = 2;
+ optional string private_chat_channel_name = 1;
+ optional uint32 kick_account_id = 2;
}
message CMsgClientToGCPrivateChatPromote {
- optional string private_chat_channel_name = 1;
- optional uint32 promote_account_id = 2;
+ optional string private_chat_channel_name = 1;
+ optional uint32 promote_account_id = 2;
}
message CMsgClientToGCPrivateChatDemote {
- optional string private_chat_channel_name = 1;
- optional uint32 demote_account_id = 2;
+ optional string private_chat_channel_name = 1;
+ optional uint32 demote_account_id = 2;
}
message CMsgGCToClientPrivateChatResponse {
- enum Result {
- SUCCESS = 0;
- FAILURE_CREATION_LOCK = 1;
- FAILURE_SQL_TRANSACTION = 2;
- FAILURE_SDO_LOAD = 3;
- FAILURE_NO_PERMISSION = 4;
- FAILURE_ALREADY_MEMBER = 5;
- FAILURE_NOT_A_MEMBER = 7;
- FAILURE_NO_REMAINING_ADMINS = 8;
- FAILURE_NO_ROOM = 9;
- FAILURE_CREATION_RATE_LIMITED = 10;
- FAILURE_UNKNOWN_CHANNEL_NAME = 11;
- FAILURE_UNKNOWN_USER = 12;
- FAILURE_UNKNOWN_ERROR = 13;
- FAILURE_CANNOT_KICK_ADMIN = 14;
- FAILURE_ALREADY_ADMIN = 15;
- }
-
- optional string private_chat_channel_name = 1;
- optional .CMsgGCToClientPrivateChatResponse.Result result = 2 [default = SUCCESS];
- optional string username = 3;
+ enum Result {
+ SUCCESS = 0;
+ FAILURE_CREATION_LOCK = 1;
+ FAILURE_SQL_TRANSACTION = 2;
+ FAILURE_SDO_LOAD = 3;
+ FAILURE_NO_PERMISSION = 4;
+ FAILURE_ALREADY_MEMBER = 5;
+ FAILURE_NOT_A_MEMBER = 7;
+ FAILURE_NO_REMAINING_ADMINS = 8;
+ FAILURE_NO_ROOM = 9;
+ FAILURE_CREATION_RATE_LIMITED = 10;
+ FAILURE_UNKNOWN_CHANNEL_NAME = 11;
+ FAILURE_UNKNOWN_USER = 12;
+ FAILURE_UNKNOWN_ERROR = 13;
+ FAILURE_CANNOT_KICK_ADMIN = 14;
+ FAILURE_ALREADY_ADMIN = 15;
+ }
+
+ optional string private_chat_channel_name = 1;
+ optional .CMsgGCToClientPrivateChatResponse.Result result = 2 [default = SUCCESS];
+ optional string username = 3;
}
message CMsgDOTAJoinChatChannel {
- optional string channel_name = 2;
- optional .DOTAChatChannelType_t channel_type = 4 [default = DOTAChannelType_Regional];
- optional bool silent_rejection = 5;
+ optional string channel_name = 2;
+ optional .DOTAChatChannelType_t channel_type = 4 [default = DOTAChannelType_Regional];
+ optional bool silent_rejection = 5;
}
message CMsgDOTALeaveChatChannel {
- optional uint64 channel_id = 1;
+ optional uint64 channel_id = 1;
}
message CMsgGCChatReportPublicSpam {
- optional uint64 channel_id = 1;
- optional uint32 channel_user_id = 2;
+ optional uint64 channel_id = 1;
+ optional uint32 channel_user_id = 2;
}
message CMsgDOTAChatModeratorBan {
- optional uint64 channel_id = 1;
- optional uint32 account_id = 2;
- optional uint32 duration = 3;
+ optional uint64 channel_id = 1;
+ optional uint32 account_id = 2;
+ optional uint32 duration = 3;
}
message CMsgDOTAChatMessage {
- message DiceRoll {
- optional int32 roll_min = 1;
- optional int32 roll_max = 2;
- optional int32 result = 3;
- }
-
- message TriviaAnswered {
- optional uint32 question_id = 1;
- optional uint32 answer_index = 2;
- optional uint32 party_questions_correct = 3;
- optional uint32 party_questions_viewed = 4;
- optional uint32 party_trivia_points = 5;
- }
-
- message PlayerDraftPick {
- optional int32 player_id = 1 [default = -1];
- optional int32 team = 2;
- }
-
- message ChatWheelMessage {
- optional uint32 message_id = 1 [default = 4294967295];
- optional uint32 emoticon_id = 2;
- optional string message_text = 3;
- optional uint32 hero_badge_tier = 4;
- }
-
- optional uint32 account_id = 1;
- optional uint64 channel_id = 2;
- optional string persona_name = 3;
- optional string text = 4;
- optional uint32 timestamp = 5;
- optional uint32 suggest_invite_account_id = 6;
- optional string suggest_invite_name = 7;
- optional uint32 fantasy_draft_owner_account_id = 8;
- optional uint32 fantasy_draft_player_account_id = 9;
- optional uint32 event_id = 10;
- optional bool suggest_invite_to_lobby = 11;
- optional bool coin_flip = 13;
- optional int32 player_id = 14 [default = -1];
- optional uint32 share_profile_account_id = 15;
- optional uint32 channel_user_id = 16;
- optional .CMsgDOTAChatMessage.DiceRoll dice_roll = 17;
- optional uint64 share_party_id = 18;
- optional uint64 share_lobby_id = 19;
- optional uint64 share_lobby_custom_game_id = 20;
- optional string share_lobby_passkey = 21;
- optional uint32 private_chat_channel_id = 22;
- optional uint32 status = 23;
- optional bool legacy_battle_cup_victory = 24;
- optional uint32 battle_cup_streak = 29;
- optional uint32 badge_level = 25;
- optional int32 suggest_pick_hero_id = 26;
- optional string suggest_pick_hero_role = 27;
- optional int32 suggest_ban_hero_id = 30;
- optional .CMsgDOTAChatMessage.TriviaAnswered trivia_answer = 32;
- optional int32 requested_ability_id = 33 [default = -1];
- optional uint32 chat_flags = 34;
- optional bool started_finding_match = 35;
- optional bool ctrl_is_down = 36;
- optional uint32 favorite_team_id = 37;
- optional uint32 favorite_team_quality = 38;
- optional int32 suggest_player_draft_pick = 39 [default = -1];
- optional .CMsgDOTAChatMessage.PlayerDraftPick player_draft_pick = 40;
- optional .CMsgDOTAChatMessage.ChatWheelMessage chat_wheel_message = 41;
- optional uint32 event_level = 42;
- optional uint32 suggest_pick_hero_facet = 43;
- optional int32 requested_hero_id = 44;
- optional uint64 requested_hero_facet_key = 45;
+ message DiceRoll {
+ optional int32 roll_min = 1;
+ optional int32 roll_max = 2;
+ optional int32 result = 3;
+ }
+
+ message TriviaAnswered {
+ optional uint32 question_id = 1;
+ optional uint32 answer_index = 2;
+ optional uint32 party_questions_correct = 3;
+ optional uint32 party_questions_viewed = 4;
+ optional uint32 party_trivia_points = 5;
+ }
+
+ message PlayerDraftPick {
+ optional int32 player_id = 1 [default = -1];
+ optional int32 team = 2;
+ }
+
+ message ChatWheelMessage {
+ optional uint32 message_id = 1 [default = 4294967295];
+ optional uint32 emoticon_id = 2;
+ optional string message_text = 3;
+ optional uint32 hero_badge_tier = 4;
+ }
+
+ optional uint32 account_id = 1;
+ optional uint64 channel_id = 2;
+ optional string persona_name = 3;
+ optional string text = 4;
+ optional uint32 timestamp = 5;
+ optional uint32 suggest_invite_account_id = 6;
+ optional string suggest_invite_name = 7;
+ optional uint32 fantasy_draft_owner_account_id = 8;
+ optional uint32 fantasy_draft_player_account_id = 9;
+ optional uint32 event_id = 10;
+ optional bool suggest_invite_to_lobby = 11;
+ optional bool coin_flip = 13;
+ optional int32 player_id = 14 [default = -1];
+ optional uint32 share_profile_account_id = 15;
+ optional uint32 channel_user_id = 16;
+ optional .CMsgDOTAChatMessage.DiceRoll dice_roll = 17;
+ optional uint64 share_party_id = 18;
+ optional uint64 share_lobby_id = 19;
+ optional uint64 share_lobby_custom_game_id = 20;
+ optional string share_lobby_passkey = 21;
+ optional uint32 private_chat_channel_id = 22;
+ optional uint32 status = 23;
+ optional bool legacy_battle_cup_victory = 24;
+ optional uint32 battle_cup_streak = 29;
+ optional uint32 badge_level = 25;
+ optional int32 suggest_pick_hero_id = 26;
+ optional string suggest_pick_hero_role = 27;
+ optional int32 suggest_ban_hero_id = 30;
+ optional .CMsgDOTAChatMessage.TriviaAnswered trivia_answer = 32;
+ optional int32 requested_ability_id = 33 [default = -1];
+ optional uint32 chat_flags = 34;
+ optional bool started_finding_match = 35;
+ optional bool ctrl_is_down = 36;
+ optional uint32 favorite_team_id = 37;
+ optional uint32 favorite_team_quality = 38;
+ optional int32 suggest_player_draft_pick = 39 [default = -1];
+ optional .CMsgDOTAChatMessage.PlayerDraftPick player_draft_pick = 40;
+ optional .CMsgDOTAChatMessage.ChatWheelMessage chat_wheel_message = 41;
+ optional uint32 event_level = 42;
+ optional uint32 suggest_pick_hero_facet = 43;
+ optional int32 requested_hero_id = 44;
+ optional uint64 requested_hero_facet_key = 45;
}
message CMsgDOTAChatMember {
- optional fixed64 steam_id = 1;
- optional string persona_name = 2;
- optional uint32 channel_user_id = 3;
- optional uint32 status = 4;
+ optional fixed64 steam_id = 1;
+ optional string persona_name = 2;
+ optional uint32 channel_user_id = 3;
+ optional uint32 status = 4;
}
message CMsgDOTAJoinChatChannelResponse {
- enum Result {
- JOIN_SUCCESS = 0;
- INVALID_CHANNEL_TYPE = 1;
- ACCOUNT_NOT_FOUND = 2;
- ACH_FAILED = 3;
- USER_IN_TOO_MANY_CHANNELS = 4;
- RATE_LIMIT_EXCEEDED = 5;
- CHANNEL_FULL = 6;
- CHANNEL_FULL_OVERFLOWED = 7;
- FAILED_TO_ADD_USER = 8;
- CHANNEL_TYPE_DISABLED = 9;
- PRIVATE_CHAT_CREATE_FAILED = 10;
- PRIVATE_CHAT_NO_PERMISSION = 11;
- PRIVATE_CHAT_CREATE_LOCK_FAILED = 12;
- PRIVATE_CHAT_KICKED = 13;
- USER_NOT_ALLOWED = 14;
- ENSURE_SPECIAL_PRIVILEGES_FAILED = 15;
- NEW_PLAYER_USER_NOT_ELIGIBLE = 16;
- SILENT_ERROR = 17;
- NEW_PLAYER_USER_BANNED = 18;
- }
-
- optional uint32 response = 1;
- optional string channel_name = 2;
- optional fixed64 channel_id = 3;
- optional uint32 max_members = 4;
- repeated .CMsgDOTAChatMember members = 5;
- optional .DOTAChatChannelType_t channel_type = 6 [default = DOTAChannelType_Regional];
- optional .CMsgDOTAJoinChatChannelResponse.Result result = 7 [default = JOIN_SUCCESS];
- optional bool gc_initiated_join = 8;
- optional uint32 channel_user_id = 9;
- optional string welcome_message = 10;
- optional .EChatSpecialPrivileges special_privileges = 11 [default = k_EChatSpecialPrivileges_None];
+ enum Result {
+ JOIN_SUCCESS = 0;
+ INVALID_CHANNEL_TYPE = 1;
+ ACCOUNT_NOT_FOUND = 2;
+ ACH_FAILED = 3;
+ USER_IN_TOO_MANY_CHANNELS = 4;
+ RATE_LIMIT_EXCEEDED = 5;
+ CHANNEL_FULL = 6;
+ CHANNEL_FULL_OVERFLOWED = 7;
+ FAILED_TO_ADD_USER = 8;
+ CHANNEL_TYPE_DISABLED = 9;
+ PRIVATE_CHAT_CREATE_FAILED = 10;
+ PRIVATE_CHAT_NO_PERMISSION = 11;
+ PRIVATE_CHAT_CREATE_LOCK_FAILED = 12;
+ PRIVATE_CHAT_KICKED = 13;
+ USER_NOT_ALLOWED = 14;
+ ENSURE_SPECIAL_PRIVILEGES_FAILED = 15;
+ NEW_PLAYER_USER_NOT_ELIGIBLE = 16;
+ SILENT_ERROR = 17;
+ NEW_PLAYER_USER_BANNED = 18;
+ }
+
+ optional uint32 response = 1;
+ optional string channel_name = 2;
+ optional fixed64 channel_id = 3;
+ optional uint32 max_members = 4;
+ repeated .CMsgDOTAChatMember members = 5;
+ optional .DOTAChatChannelType_t channel_type = 6 [default = DOTAChannelType_Regional];
+ optional .CMsgDOTAJoinChatChannelResponse.Result result = 7 [default = JOIN_SUCCESS];
+ optional bool gc_initiated_join = 8;
+ optional uint32 channel_user_id = 9;
+ optional string welcome_message = 10;
+ optional .EChatSpecialPrivileges special_privileges = 11 [default = k_EChatSpecialPrivileges_None];
}
message CMsgDOTAOtherJoinedChatChannel {
- optional fixed64 channel_id = 1;
- optional string persona_name = 2;
- optional fixed64 steam_id = 3;
- optional uint32 channel_user_id = 4;
- optional uint32 status = 5;
+ optional fixed64 channel_id = 1;
+ optional string persona_name = 2;
+ optional fixed64 steam_id = 3;
+ optional uint32 channel_user_id = 4;
+ optional uint32 status = 5;
}
message CMsgDOTAOtherLeftChatChannel {
- optional fixed64 channel_id = 1;
- optional fixed64 steam_id = 2;
- optional uint32 channel_user_id = 3;
+ optional fixed64 channel_id = 1;
+ optional fixed64 steam_id = 2;
+ optional uint32 channel_user_id = 3;
}
message CMsgDOTARequestChatChannelList {
}
message CMsgDOTARequestChatChannelListResponse {
- message ChatChannel {
- optional string channel_name = 1;
- optional uint32 num_members = 2;
- optional .DOTAChatChannelType_t channel_type = 3 [default = DOTAChannelType_Regional];
- }
+ message ChatChannel {
+ optional string channel_name = 1;
+ optional uint32 num_members = 2;
+ optional .DOTAChatChannelType_t channel_type = 3 [default = DOTAChannelType_Regional];
+ }
- repeated .CMsgDOTARequestChatChannelListResponse.ChatChannel channels = 1;
+ repeated .CMsgDOTARequestChatChannelListResponse.ChatChannel channels = 1;
}
message CMsgDOTAChatGetUserListResponse {
- message Member {
- optional fixed64 steam_id = 1;
- optional string persona_name = 2;
- optional uint32 channel_user_id = 3;
- optional uint32 status = 4;
- }
+ message Member {
+ optional fixed64 steam_id = 1;
+ optional string persona_name = 2;
+ optional uint32 channel_user_id = 3;
+ optional uint32 status = 4;
+ }
- optional fixed64 channel_id = 1;
- repeated .CMsgDOTAChatGetUserListResponse.Member members = 2;
+ optional fixed64 channel_id = 1;
+ repeated .CMsgDOTAChatGetUserListResponse.Member members = 2;
}
message CMsgDOTAChatGetMemberCount {
- optional string channel_name = 1;
- optional .DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
+ optional string channel_name = 1;
+ optional .DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
}
message CMsgDOTAChatGetMemberCountResponse {
- optional string channel_name = 1;
- optional .DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
- optional uint32 member_count = 3;
+ optional string channel_name = 1;
+ optional .DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
+ optional uint32 member_count = 3;
}
message CMsgDOTAChatRegionsEnabled {
- message Region {
- optional float min_latitude = 1;
- optional float max_latitude = 2;
- optional float min_longitude = 3;
- optional float max_longitude = 4;
- }
-
- optional bool enable_all_regions = 1;
- repeated .CMsgDOTAChatRegionsEnabled.Region enabled_regions = 2;
+ message Region {
+ optional float min_latitude = 1;
+ optional float max_latitude = 2;
+ optional float min_longitude = 3;
+ optional float max_longitude = 4;
+ }
+
+ optional bool enable_all_regions = 1;
+ repeated .CMsgDOTAChatRegionsEnabled.Region enabled_regions = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_coaching.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_coaching.proto
index 0ee76fe0..43515a00 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_coaching.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_coaching.proto
@@ -1,5 +1,6 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -7,375 +8,375 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ECoachTeammateRating {
- k_ECoachTeammateRating_None = 0;
- k_ECoachTeammateRating_Positive = 1;
- k_ECoachTeammateRating_Negative = 2;
- k_ECoachTeammateRating_Abusive = 3;
+ k_ECoachTeammateRating_None = 0;
+ k_ECoachTeammateRating_Positive = 1;
+ k_ECoachTeammateRating_Negative = 2;
+ k_ECoachTeammateRating_Abusive = 3;
}
enum EPrivateCoachingSessionState {
- k_ePrivateCoachingSessionState_Invalid = 0;
- k_ePrivateCoachingSessionState_SearchingForCoach = 1;
- k_ePrivateCoachingSessionState_CoachAssigned = 2;
- k_ePrivateCoachingSessionState_Finished = 3;
- k_ePrivateCoachingSessionState_Expired = 4;
- k_ePrivateCoachingSessionState_Abandoned = 5;
+ k_ePrivateCoachingSessionState_Invalid = 0;
+ k_ePrivateCoachingSessionState_SearchingForCoach = 1;
+ k_ePrivateCoachingSessionState_CoachAssigned = 2;
+ k_ePrivateCoachingSessionState_Finished = 3;
+ k_ePrivateCoachingSessionState_Expired = 4;
+ k_ePrivateCoachingSessionState_Abandoned = 5;
}
enum EPrivateCoachingSessionMemberFlag {
- k_EPrivateCoachingSessionMemberFlag_Requester = 1;
- k_EPrivateCoachingSessionMemberFlag_Coach = 2;
- k_EPrivateCoachingSessionMemberFlag_LeftSession = 4;
+ k_EPrivateCoachingSessionMemberFlag_Requester = 1;
+ k_EPrivateCoachingSessionMemberFlag_Coach = 2;
+ k_EPrivateCoachingSessionMemberFlag_LeftSession = 4;
}
enum EPlayerCoachMatchFlag {
- k_EPlayerCoachMatchFlag_EligibleForRewards = 1;
- k_EPlayerCoachMatchFlag_PrivateCoach = 2;
+ k_EPlayerCoachMatchFlag_EligibleForRewards = 1;
+ k_EPlayerCoachMatchFlag_PrivateCoach = 2;
}
message CMsgPlayerCoachMatch {
- optional uint64 match_id = 1;
- optional .EMatchOutcome match_outcome = 2 [default = k_EMatchOutcome_Unknown];
- optional uint32 coached_team = 3;
- optional fixed32 start_time = 4;
- optional uint32 duration = 5;
- repeated .ECoachTeammateRating teammate_ratings = 6;
- optional uint32 coach_flags = 7;
+ optional uint64 match_id = 1;
+ optional .EMatchOutcome match_outcome = 2 [default = k_EMatchOutcome_Unknown];
+ optional uint32 coached_team = 3;
+ optional fixed32 start_time = 4;
+ optional uint32 duration = 5;
+ repeated .ECoachTeammateRating teammate_ratings = 6;
+ optional uint32 coach_flags = 7;
}
message CMsgPrivateCoachingSessionMember {
- optional uint32 account_id = 1;
- optional uint32 member_flags = 2;
- optional .ECoachTeammateRating member_session_rating = 3 [default = k_ECoachTeammateRating_None];
+ optional uint32 account_id = 1;
+ optional uint32 member_flags = 2;
+ optional .ECoachTeammateRating member_session_rating = 3 [default = k_ECoachTeammateRating_None];
}
message CMsgPrivateCoachingSession {
- optional uint64 private_coaching_session_id = 1;
- optional fixed32 requested_timestamp = 2;
- optional uint32 requested_language = 3;
- optional .EPrivateCoachingSessionState coaching_session_state = 4 [default = k_ePrivateCoachingSessionState_Invalid];
- repeated .CMsgPrivateCoachingSessionMember session_members = 5;
- optional uint64 current_lobby_id = 6;
- optional uint64 current_server_steam_id = 7;
- optional fixed32 accepted_timestamp = 8;
- optional fixed32 completed_timestamp = 9;
+ optional uint64 private_coaching_session_id = 1;
+ optional fixed32 requested_timestamp = 2;
+ optional uint32 requested_language = 3;
+ optional .EPrivateCoachingSessionState coaching_session_state = 4 [default = k_ePrivateCoachingSessionState_Invalid];
+ repeated .CMsgPrivateCoachingSessionMember session_members = 5;
+ optional uint64 current_lobby_id = 6;
+ optional uint64 current_server_steam_id = 7;
+ optional fixed32 accepted_timestamp = 8;
+ optional fixed32 completed_timestamp = 9;
}
message CMsgPrivateCoachingSessionStatus {
- optional uint32 requester_competitive_rank_tier = 1;
- optional uint32 requester_games_played = 2;
+ optional uint32 requester_competitive_rank_tier = 1;
+ optional uint32 requester_games_played = 2;
}
message CMsgAvailablePrivateCoachingSession {
- optional .CMsgPrivateCoachingSession coaching_session = 1;
- optional .CMsgPrivateCoachingSessionStatus coaching_session_status = 2;
+ optional .CMsgPrivateCoachingSession coaching_session = 1;
+ optional .CMsgPrivateCoachingSessionStatus coaching_session_status = 2;
}
message CMsgAvailablePrivateCoachingSessionList {
- repeated .CMsgAvailablePrivateCoachingSession available_coaching_sessions = 1;
+ repeated .CMsgAvailablePrivateCoachingSession available_coaching_sessions = 1;
}
message CMsgAvailablePrivateCoachingSessionSummary {
- optional uint32 coaching_session_count = 1;
+ optional uint32 coaching_session_count = 1;
}
message CMsgClientToGCRequestPlayerCoachMatches {
}
message CMsgClientToGCRequestPlayerCoachMatchesResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ }
- optional .CMsgClientToGCRequestPlayerCoachMatchesResponse.EResponse result = 1 [default = k_eInternalError];
- repeated .CMsgPlayerCoachMatch coach_matches = 2;
+ optional .CMsgClientToGCRequestPlayerCoachMatchesResponse.EResponse result = 1 [default = k_eInternalError];
+ repeated .CMsgPlayerCoachMatch coach_matches = 2;
}
message CMsgClientToGCRequestPlayerCoachMatch {
- optional uint64 match_id = 1;
+ optional uint64 match_id = 1;
}
message CMsgClientToGCRequestPlayerCoachMatchResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ }
- optional .CMsgClientToGCRequestPlayerCoachMatchResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgPlayerCoachMatch coach_match = 2;
+ optional .CMsgClientToGCRequestPlayerCoachMatchResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgPlayerCoachMatch coach_match = 2;
}
message CMsgClientToGCSubmitCoachTeammateRating {
- optional uint64 match_id = 1;
- optional uint32 coach_account_id = 2;
- optional .ECoachTeammateRating rating = 3 [default = k_ECoachTeammateRating_None];
- optional string reason = 4;
+ optional uint64 match_id = 1;
+ optional uint32 coach_account_id = 2;
+ optional .ECoachTeammateRating rating = 3 [default = k_ECoachTeammateRating_None];
+ optional string reason = 4;
}
message CMsgClientToGCSubmitCoachTeammateRatingResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eInvalidInput = 4;
- k_eAlreadySubmitted = 5;
- k_eVotingFinished = 6;
- k_ePlayerNotInMatch = 7;
- k_eCoachNotInMatch = 8;
- k_ePlayerNotOnCoachTeam = 9;
- k_ePlayerInSamePartyAsCoach = 10;
- k_eMatchNotEligible = 11;
- }
-
- optional .CMsgClientToGCSubmitCoachTeammateRatingResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eInvalidInput = 4;
+ k_eAlreadySubmitted = 5;
+ k_eVotingFinished = 6;
+ k_ePlayerNotInMatch = 7;
+ k_eCoachNotInMatch = 8;
+ k_ePlayerNotOnCoachTeam = 9;
+ k_ePlayerInSamePartyAsCoach = 10;
+ k_eMatchNotEligible = 11;
+ }
+
+ optional .CMsgClientToGCSubmitCoachTeammateRatingResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgGCToClientCoachTeammateRatingsChanged {
- optional .CMsgPlayerCoachMatch coach_match = 1;
+ optional .CMsgPlayerCoachMatch coach_match = 1;
}
message CMsgClientToGCRequestPrivateCoachingSession {
- optional uint32 language = 1;
+ optional uint32 language = 1;
}
message CMsgClientToGCRequestPrivateCoachingSessionResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eAlreadyInSession = 5;
- k_eBehaviorScoreTooLow = 6;
- k_eInvalidLobbyType = 7;
- k_eLowPriorityPlayer = 8;
- k_eLowPriorityLobby = 9;
- k_eLowPriorityParty = 10;
- k_eTextChatBan = 11;
- k_eVoiceChatBan = 12;
- k_eMatchBan = 13;
- }
-
- optional .CMsgClientToGCRequestPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgPrivateCoachingSession coaching_session = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eAlreadyInSession = 5;
+ k_eBehaviorScoreTooLow = 6;
+ k_eInvalidLobbyType = 7;
+ k_eLowPriorityPlayer = 8;
+ k_eLowPriorityLobby = 9;
+ k_eLowPriorityParty = 10;
+ k_eTextChatBan = 11;
+ k_eVoiceChatBan = 12;
+ k_eMatchBan = 13;
+ }
+
+ optional .CMsgClientToGCRequestPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgPrivateCoachingSession coaching_session = 2;
}
message CMsgClientToGCAcceptPrivateCoachingSession {
- optional uint64 coaching_session_id = 1;
+ optional uint64 coaching_session_id = 1;
}
message CMsgClientToGCAcceptPrivateCoachingSessionResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eUnknownSession = 5;
- k_eAlreadyHasCoach = 6;
- k_eAlreadyHasSession = 7;
- k_eInvalidUser = 8;
- k_eAlreadyFinished = 9;
- k_eInvalidLobbyType = 10;
- k_eAlreadyInLobby = 11;
- k_eLobbyIsLan = 12;
- k_eLobbyIsLeague = 13;
- k_eInvalidLobbyState = 14;
- k_eRequesterIsNotPlayer = 15;
- k_eTooManyCoaches = 16;
- k_eCoachWasPlayer = 17;
- k_eCoachBehaviorScoreTooLow = 18;
- k_eCoachRankNotCalibrated = 19;
- k_eCoachRankNotEligible = 20;
- k_eCoachRankTooLow = 21;
- }
-
- optional .CMsgClientToGCAcceptPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgPrivateCoachingSession coaching_session = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eUnknownSession = 5;
+ k_eAlreadyHasCoach = 6;
+ k_eAlreadyHasSession = 7;
+ k_eInvalidUser = 8;
+ k_eAlreadyFinished = 9;
+ k_eInvalidLobbyType = 10;
+ k_eAlreadyInLobby = 11;
+ k_eLobbyIsLan = 12;
+ k_eLobbyIsLeague = 13;
+ k_eInvalidLobbyState = 14;
+ k_eRequesterIsNotPlayer = 15;
+ k_eTooManyCoaches = 16;
+ k_eCoachWasPlayer = 17;
+ k_eCoachBehaviorScoreTooLow = 18;
+ k_eCoachRankNotCalibrated = 19;
+ k_eCoachRankNotEligible = 20;
+ k_eCoachRankTooLow = 21;
+ }
+
+ optional .CMsgClientToGCAcceptPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgPrivateCoachingSession coaching_session = 2;
}
message CMsgClientToGCLeavePrivateCoachingSession {
}
message CMsgClientToGCLeavePrivateCoachingSessionResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eNoSession = 5;
- k_eAlreadyLeft = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNoSession = 5;
+ k_eAlreadyLeft = 6;
+ }
- optional .CMsgClientToGCLeavePrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCLeavePrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCGetCurrentPrivateCoachingSession {
}
message CMsgClientToGCGetCurrentPrivateCoachingSessionResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ }
- optional .CMsgClientToGCGetCurrentPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgPrivateCoachingSession current_session = 2;
+ optional .CMsgClientToGCGetCurrentPrivateCoachingSessionResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgPrivateCoachingSession current_session = 2;
}
message CMsgGCToClientPrivateCoachingSessionUpdated {
- optional .CMsgPrivateCoachingSession coaching_session = 1;
+ optional .CMsgPrivateCoachingSession coaching_session = 1;
}
message CMsgClientToGCSubmitPrivateCoachingSessionRating {
- optional uint64 coaching_session_id = 1;
- optional .ECoachTeammateRating session_rating = 2 [default = k_ECoachTeammateRating_None];
+ optional uint64 coaching_session_id = 1;
+ optional .ECoachTeammateRating session_rating = 2 [default = k_ECoachTeammateRating_None];
}
message CMsgClientToGCSubmitPrivateCoachingSessionRatingResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eUnknownSession = 5;
- k_eNotMember = 6;
- k_eAlreadySubmitted = 7;
- k_eSessionActive = 8;
- k_eSessionTooShort = 9;
- k_eNoCoach = 10;
- k_eInvalidRating = 11;
- }
-
- optional .CMsgClientToGCSubmitPrivateCoachingSessionRatingResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eUnknownSession = 5;
+ k_eNotMember = 6;
+ k_eAlreadySubmitted = 7;
+ k_eSessionActive = 8;
+ k_eSessionTooShort = 9;
+ k_eNoCoach = 10;
+ k_eInvalidRating = 11;
+ }
+
+ optional .CMsgClientToGCSubmitPrivateCoachingSessionRatingResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCGetAvailablePrivateCoachingSessions {
- optional uint32 language = 1;
+ optional uint32 language = 1;
}
message CMsgClientToGCGetAvailablePrivateCoachingSessionsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ }
- optional .CMsgClientToGCGetAvailablePrivateCoachingSessionsResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgAvailablePrivateCoachingSessionList available_sessions_list = 2;
+ optional .CMsgClientToGCGetAvailablePrivateCoachingSessionsResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgAvailablePrivateCoachingSessionList available_sessions_list = 2;
}
message CMsgClientToGCGetAvailablePrivateCoachingSessionsSummary {
}
message CMsgClientToGCGetAvailablePrivateCoachingSessionsSummaryResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ }
- optional .CMsgClientToGCGetAvailablePrivateCoachingSessionsSummaryResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgAvailablePrivateCoachingSessionSummary coaching_session_summary = 2;
+ optional .CMsgClientToGCGetAvailablePrivateCoachingSessionsSummaryResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgAvailablePrivateCoachingSessionSummary coaching_session_summary = 2;
}
message CMsgClientToGCJoinPrivateCoachingSessionLobby {
}
message CMsgClientToGCJoinPrivateCoachingSessionLobbyResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eNoSession = 5;
- k_eSessionFinished = 6;
- k_eAlreadyLeft = 7;
- k_eNotACoach = 8;
- k_eNoLobby = 9;
- k_eCoachInThisLobby = 10;
- k_eCoachInALobby = 11;
- k_eLobbyIsLan = 12;
- k_eLobbyIsLeague = 13;
- k_eInvalidLobbyType = 14;
- k_eInvalidLobbyState = 15;
- k_eRequesterIsNotPlayer = 16;
- k_eTooManyCoaches = 17;
- k_eCoachWasPlayer = 18;
- k_eJoinFailed = 19;
- }
-
- optional .CMsgClientToGCJoinPrivateCoachingSessionLobbyResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNoSession = 5;
+ k_eSessionFinished = 6;
+ k_eAlreadyLeft = 7;
+ k_eNotACoach = 8;
+ k_eNoLobby = 9;
+ k_eCoachInThisLobby = 10;
+ k_eCoachInALobby = 11;
+ k_eLobbyIsLan = 12;
+ k_eLobbyIsLeague = 13;
+ k_eInvalidLobbyType = 14;
+ k_eInvalidLobbyState = 15;
+ k_eRequesterIsNotPlayer = 16;
+ k_eTooManyCoaches = 17;
+ k_eCoachWasPlayer = 18;
+ k_eJoinFailed = 19;
+ }
+
+ optional .CMsgClientToGCJoinPrivateCoachingSessionLobbyResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCCoachFriend {
- optional uint32 target_account_id = 1;
+ optional uint32 target_account_id = 1;
}
message CMsgClientToGCCoachFriendResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eCoachNotSubscriber = 5;
- k_eLobbyNotFound = 6;
- k_eFriendsOnBothSides = 7;
- k_eNotFriends = 8;
- k_eCoachInThisLobby = 9;
- k_eCoachInALobby = 10;
- k_eLobbyIsLan = 11;
- k_eInvalidLobbyType = 12;
- k_eInvalidLobbyState = 13;
- k_eFriendIsNotAPlayer = 14;
- k_eTooManyCoaches = 15;
- k_eCoachSwitchedTeams = 16;
- k_eLobbyIsLeague = 17;
- k_eCoachWasPlayer = 18;
- k_eRequestRejected = 19;
- }
-
- optional .CMsgClientToGCCoachFriendResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eCoachNotSubscriber = 5;
+ k_eLobbyNotFound = 6;
+ k_eFriendsOnBothSides = 7;
+ k_eNotFriends = 8;
+ k_eCoachInThisLobby = 9;
+ k_eCoachInALobby = 10;
+ k_eLobbyIsLan = 11;
+ k_eInvalidLobbyType = 12;
+ k_eInvalidLobbyState = 13;
+ k_eFriendIsNotAPlayer = 14;
+ k_eTooManyCoaches = 15;
+ k_eCoachSwitchedTeams = 16;
+ k_eLobbyIsLeague = 17;
+ k_eCoachWasPlayer = 18;
+ k_eRequestRejected = 19;
+ }
+
+ optional .CMsgClientToGCCoachFriendResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCRespondToCoachFriendRequest {
- optional uint32 coach_account_id = 1;
- optional .ELobbyMemberCoachRequestState response = 2 [default = k_eLobbyMemberCoachRequestState_None];
+ optional uint32 coach_account_id = 1;
+ optional .ELobbyMemberCoachRequestState response = 2 [default = k_eLobbyMemberCoachRequestState_None];
}
message CMsgClientToGCRespondToCoachFriendRequestResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eLobbyNotFound = 5;
- k_eInvalidLobbyState = 6;
- k_eCoachNotInLobby = 7;
- k_ePlayerInvalidTeam = 8;
- k_eCoachInvalidTeam = 9;
- k_eNoRequest = 10;
- k_eInvalidResponse = 11;
- k_eAlreadyResponded = 12;
- }
-
- optional .CMsgClientToGCRespondToCoachFriendRequestResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eLobbyNotFound = 5;
+ k_eInvalidLobbyState = 6;
+ k_eCoachNotInLobby = 7;
+ k_ePlayerInvalidTeam = 8;
+ k_eCoachInvalidTeam = 9;
+ k_eNoRequest = 10;
+ k_eInvalidResponse = 11;
+ k_eAlreadyResponded = 12;
+ }
+
+ optional .CMsgClientToGCRespondToCoachFriendRequestResponse.EResponse result = 1 [default = k_eInternalError];
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_craftworks.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_craftworks.proto
index ede4392d..104534ce 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_craftworks.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_craftworks.proto
@@ -8,6 +8,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client.proto";
import "in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -15,78 +16,78 @@ option optimize_for = SPEED;
option java_generic_services = false;
message CMsgCraftworksUserData {
- optional .CMsgCraftworksComponents component_inventory = 1;
+ optional .CMsgCraftworksComponents component_inventory = 1;
}
message CMsgClientToGCCraftworksGetUserData {
- optional uint32 craftworks_id = 1;
+ optional uint32 craftworks_id = 1;
}
message CMsgClientToGCCraftworksGetUserDataResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidCraftworks = 5;
- k_eExpiredCraftworks = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidCraftworks = 5;
+ k_eExpiredCraftworks = 6;
+ }
- optional .CMsgClientToGCCraftworksGetUserDataResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgCraftworksUserData user_data = 2;
+ optional .CMsgClientToGCCraftworksGetUserDataResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgCraftworksUserData user_data = 2;
}
message CMsgGCToClientCraftworksUserDataUpdated {
- optional uint32 craftworks_id = 1;
- optional .CMsgCraftworksUserData user_data = 2;
+ optional uint32 craftworks_id = 1;
+ optional .CMsgCraftworksUserData user_data = 2;
}
message CMsgClientToGCCraftworksCraftRecipe {
- optional uint32 craftworks_id = 1;
- optional uint64 recipe_id = 2;
+ optional uint32 craftworks_id = 1;
+ optional uint64 recipe_id = 2;
}
message CMsgClientToGCCraftworksCraftRecipeResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidCraftworks = 5;
- k_eExpiredCraftworks = 6;
- k_eNotEnoughComponents = 7;
- k_eInvalidRecipe = 8;
- k_eRecipeTierLocked = 9;
- k_eAlreadyCraftedMaxAmount = 10;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidCraftworks = 5;
+ k_eExpiredCraftworks = 6;
+ k_eNotEnoughComponents = 7;
+ k_eInvalidRecipe = 8;
+ k_eRecipeTierLocked = 9;
+ k_eAlreadyCraftedMaxAmount = 10;
+ }
- optional .CMsgClientToGCCraftworksCraftRecipeResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDOTAClaimEventActionResponse claim_response = 2;
+ optional .CMsgClientToGCCraftworksCraftRecipeResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDOTAClaimEventActionResponse claim_response = 2;
}
message CMsgClientToGCCraftworksDevModifyComponents {
- enum EOperation {
- k_eAddComponents = 1;
- k_eSubtractComponents = 2;
- }
+ enum EOperation {
+ k_eAddComponents = 1;
+ k_eSubtractComponents = 2;
+ }
- optional uint32 craftworks_id = 1;
- optional .CMsgCraftworksComponents components = 2;
- optional .CMsgClientToGCCraftworksDevModifyComponents.EOperation operation = 3 [default = k_eAddComponents];
+ optional uint32 craftworks_id = 1;
+ optional .CMsgCraftworksComponents components = 2;
+ optional .CMsgClientToGCCraftworksDevModifyComponents.EOperation operation = 3 [default = k_eAddComponents];
}
message CMsgClientToGCCraftworksDevModifyComponentsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidCraftworks = 5;
- k_eNotAllowed = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidCraftworks = 5;
+ k_eNotAllowed = 6;
+ }
- optional .CMsgClientToGCCraftworksDevModifyComponentsResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCCraftworksDevModifyComponentsResponse.EResponse response = 1 [default = k_eInternalError];
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_fantasy.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_fantasy.proto
index 30c7cc10..24c374f9 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_fantasy.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_fantasy.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,569 +7,624 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum DOTA_2013PassportSelectionIndices {
- PP13_SEL_ALLSTAR_PLAYER_0 = 0;
- PP13_SEL_ALLSTAR_PLAYER_1 = 1;
- PP13_SEL_ALLSTAR_PLAYER_2 = 2;
- PP13_SEL_ALLSTAR_PLAYER_3 = 3;
- PP13_SEL_ALLSTAR_PLAYER_4 = 4;
- PP13_SEL_ALLSTAR_PLAYER_5 = 5;
- PP13_SEL_ALLSTAR_PLAYER_6 = 6;
- PP13_SEL_ALLSTAR_PLAYER_7 = 7;
- PP13_SEL_ALLSTAR_PLAYER_8 = 8;
- PP13_SEL_ALLSTAR_PLAYER_9 = 9;
- PP13_SEL_QUALPRED_WEST_0 = 10;
- PP13_SEL_QUALPRED_WEST_1 = 11;
- PP13_SEL_QUALPRED_WEST_2 = 12;
- PP13_SEL_QUALPRED_WEST_3 = 13;
- PP13_SEL_QUALPRED_WEST_4 = 14;
- PP13_SEL_QUALPRED_WEST_5 = 15;
- PP13_SEL_QUALPRED_WEST_6 = 16;
- PP13_SEL_QUALPRED_WEST_7 = 17;
- PP13_SEL_QUALPRED_WEST_8 = 18;
- PP13_SEL_QUALPRED_WEST_9 = 19;
- PP13_SEL_QUALPRED_WEST_10 = 20;
- PP13_SEL_QUALPRED_WEST_11 = 21;
- PP13_SEL_QUALPRED_WEST_12 = 22;
- PP13_SEL_QUALPRED_WEST_13 = 23;
- PP13_SEL_QUALPRED_WEST_14 = 24;
- PP13_SEL_QUALPRED_EAST_0 = 25;
- PP13_SEL_QUALPRED_EAST_1 = 26;
- PP13_SEL_QUALPRED_EAST_2 = 27;
- PP13_SEL_QUALPRED_EAST_3 = 28;
- PP13_SEL_QUALPRED_EAST_4 = 29;
- PP13_SEL_QUALPRED_EAST_5 = 30;
- PP13_SEL_QUALPRED_EAST_6 = 31;
- PP13_SEL_QUALPRED_EAST_7 = 32;
- PP13_SEL_QUALPRED_EAST_8 = 33;
- PP13_SEL_QUALPRED_EAST_9 = 34;
- PP13_SEL_QUALPRED_EAST_10 = 35;
- PP13_SEL_QUALPRED_EAST_11 = 36;
- PP13_SEL_QUALPRED_EAST_12 = 37;
- PP13_SEL_QUALPRED_EAST_13 = 38;
- PP13_SEL_QUALPRED_EAST_14 = 39;
- PP13_SEL_TEAMCUP_TEAM = 40;
- PP13_SEL_TEAMCUP_PLAYER = 41;
- PP13_SEL_TEAMCUP_TEAM_LOCK = 42;
- PP13_SEL_TEAMCUP_PLAYER_LOCK = 43;
- PP13_SEL_EVENTPRED_0 = 44;
- PP13_SEL_EVENTPRED_1 = 45;
- PP13_SEL_EVENTPRED_2 = 46;
- PP13_SEL_EVENTPRED_3 = 47;
- PP13_SEL_EVENTPRED_4 = 48;
- PP13_SEL_EVENTPRED_5 = 49;
- PP13_SEL_EVENTPRED_6 = 50;
- PP13_SEL_EVENTPRED_7 = 51;
- PP13_SEL_EVENTPRED_8 = 52;
- PP13_SEL_EVENTPRED_9 = 53;
- PP13_SEL_EVENTPRED_10 = 54;
- PP13_SEL_EVENTPRED_11 = 55;
- PP13_SEL_EVENTPRED_12 = 56;
- PP13_SEL_EVENTPRED_13 = 57;
- PP13_SEL_EVENTPRED_14 = 58;
- PP13_SEL_EVENTPRED_15 = 59;
- PP13_SEL_EVENTPRED_16 = 60;
- PP13_SEL_EVENTPRED_17 = 61;
- PP13_SEL_EVENTPRED_18 = 62;
- PP13_SEL_EVENTPRED_19 = 63;
- PP13_SEL_EVENTPRED_20 = 64;
- PP13_SEL_EVENTPRED_21 = 65;
- PP13_SEL_EVENTPRED_22 = 66;
- PP13_SEL_EVENTPRED_23 = 67;
- PP13_SEL_EVENTPRED_24 = 68;
- PP13_SEL_EVENTPRED_25 = 69;
- PP13_SEL_EVENTPRED_26 = 70;
- PP13_SEL_EVENTPRED_27 = 71;
- PP13_SEL_EVENTPRED_28 = 72;
- PP13_SEL_EVENTPRED_29 = 73;
- PP13_SEL_EVENTPRED_30 = 74;
- PP13_SEL_EVENTPRED_31 = 75;
- PP13_SEL_EVENTPRED_32 = 76;
- PP13_SEL_EVENTPRED_33 = 77;
- PP13_SEL_EVENTPRED_34 = 78;
- PP13_SEL_EVENTPRED_35 = 79;
- PP13_SEL_EVENTPRED_36 = 80;
- PP13_SEL_EVENTPRED_37 = 81;
- PP13_SEL_EVENTPRED_38 = 82;
- PP13_SEL_EVENTPRED_39 = 83;
- PP13_SEL_EVENTPRED_40 = 84;
- PP13_SEL_EVENTPRED_41 = 85;
- PP13_SEL_EVENTPRED_42 = 86;
- PP13_SEL_EVENTPRED_43 = 87;
- PP13_SEL_SOLO_0 = 88;
- PP13_SEL_SOLO_1 = 89;
- PP13_SEL_SOLO_2 = 90;
- PP13_SEL_SOLO_3 = 91;
- PP13_SEL_SOLO_4 = 92;
- PP13_SEL_SOLO_5 = 93;
- PP13_SEL_SOLO_6 = 94;
- PP13_SEL_SOLO_7 = 95;
+ PP13_SEL_ALLSTAR_PLAYER_0 = 0;
+ PP13_SEL_ALLSTAR_PLAYER_1 = 1;
+ PP13_SEL_ALLSTAR_PLAYER_2 = 2;
+ PP13_SEL_ALLSTAR_PLAYER_3 = 3;
+ PP13_SEL_ALLSTAR_PLAYER_4 = 4;
+ PP13_SEL_ALLSTAR_PLAYER_5 = 5;
+ PP13_SEL_ALLSTAR_PLAYER_6 = 6;
+ PP13_SEL_ALLSTAR_PLAYER_7 = 7;
+ PP13_SEL_ALLSTAR_PLAYER_8 = 8;
+ PP13_SEL_ALLSTAR_PLAYER_9 = 9;
+ PP13_SEL_QUALPRED_WEST_0 = 10;
+ PP13_SEL_QUALPRED_WEST_1 = 11;
+ PP13_SEL_QUALPRED_WEST_2 = 12;
+ PP13_SEL_QUALPRED_WEST_3 = 13;
+ PP13_SEL_QUALPRED_WEST_4 = 14;
+ PP13_SEL_QUALPRED_WEST_5 = 15;
+ PP13_SEL_QUALPRED_WEST_6 = 16;
+ PP13_SEL_QUALPRED_WEST_7 = 17;
+ PP13_SEL_QUALPRED_WEST_8 = 18;
+ PP13_SEL_QUALPRED_WEST_9 = 19;
+ PP13_SEL_QUALPRED_WEST_10 = 20;
+ PP13_SEL_QUALPRED_WEST_11 = 21;
+ PP13_SEL_QUALPRED_WEST_12 = 22;
+ PP13_SEL_QUALPRED_WEST_13 = 23;
+ PP13_SEL_QUALPRED_WEST_14 = 24;
+ PP13_SEL_QUALPRED_EAST_0 = 25;
+ PP13_SEL_QUALPRED_EAST_1 = 26;
+ PP13_SEL_QUALPRED_EAST_2 = 27;
+ PP13_SEL_QUALPRED_EAST_3 = 28;
+ PP13_SEL_QUALPRED_EAST_4 = 29;
+ PP13_SEL_QUALPRED_EAST_5 = 30;
+ PP13_SEL_QUALPRED_EAST_6 = 31;
+ PP13_SEL_QUALPRED_EAST_7 = 32;
+ PP13_SEL_QUALPRED_EAST_8 = 33;
+ PP13_SEL_QUALPRED_EAST_9 = 34;
+ PP13_SEL_QUALPRED_EAST_10 = 35;
+ PP13_SEL_QUALPRED_EAST_11 = 36;
+ PP13_SEL_QUALPRED_EAST_12 = 37;
+ PP13_SEL_QUALPRED_EAST_13 = 38;
+ PP13_SEL_QUALPRED_EAST_14 = 39;
+ PP13_SEL_TEAMCUP_TEAM = 40;
+ PP13_SEL_TEAMCUP_PLAYER = 41;
+ PP13_SEL_TEAMCUP_TEAM_LOCK = 42;
+ PP13_SEL_TEAMCUP_PLAYER_LOCK = 43;
+ PP13_SEL_EVENTPRED_0 = 44;
+ PP13_SEL_EVENTPRED_1 = 45;
+ PP13_SEL_EVENTPRED_2 = 46;
+ PP13_SEL_EVENTPRED_3 = 47;
+ PP13_SEL_EVENTPRED_4 = 48;
+ PP13_SEL_EVENTPRED_5 = 49;
+ PP13_SEL_EVENTPRED_6 = 50;
+ PP13_SEL_EVENTPRED_7 = 51;
+ PP13_SEL_EVENTPRED_8 = 52;
+ PP13_SEL_EVENTPRED_9 = 53;
+ PP13_SEL_EVENTPRED_10 = 54;
+ PP13_SEL_EVENTPRED_11 = 55;
+ PP13_SEL_EVENTPRED_12 = 56;
+ PP13_SEL_EVENTPRED_13 = 57;
+ PP13_SEL_EVENTPRED_14 = 58;
+ PP13_SEL_EVENTPRED_15 = 59;
+ PP13_SEL_EVENTPRED_16 = 60;
+ PP13_SEL_EVENTPRED_17 = 61;
+ PP13_SEL_EVENTPRED_18 = 62;
+ PP13_SEL_EVENTPRED_19 = 63;
+ PP13_SEL_EVENTPRED_20 = 64;
+ PP13_SEL_EVENTPRED_21 = 65;
+ PP13_SEL_EVENTPRED_22 = 66;
+ PP13_SEL_EVENTPRED_23 = 67;
+ PP13_SEL_EVENTPRED_24 = 68;
+ PP13_SEL_EVENTPRED_25 = 69;
+ PP13_SEL_EVENTPRED_26 = 70;
+ PP13_SEL_EVENTPRED_27 = 71;
+ PP13_SEL_EVENTPRED_28 = 72;
+ PP13_SEL_EVENTPRED_29 = 73;
+ PP13_SEL_EVENTPRED_30 = 74;
+ PP13_SEL_EVENTPRED_31 = 75;
+ PP13_SEL_EVENTPRED_32 = 76;
+ PP13_SEL_EVENTPRED_33 = 77;
+ PP13_SEL_EVENTPRED_34 = 78;
+ PP13_SEL_EVENTPRED_35 = 79;
+ PP13_SEL_EVENTPRED_36 = 80;
+ PP13_SEL_EVENTPRED_37 = 81;
+ PP13_SEL_EVENTPRED_38 = 82;
+ PP13_SEL_EVENTPRED_39 = 83;
+ PP13_SEL_EVENTPRED_40 = 84;
+ PP13_SEL_EVENTPRED_41 = 85;
+ PP13_SEL_EVENTPRED_42 = 86;
+ PP13_SEL_EVENTPRED_43 = 87;
+ PP13_SEL_SOLO_0 = 88;
+ PP13_SEL_SOLO_1 = 89;
+ PP13_SEL_SOLO_2 = 90;
+ PP13_SEL_SOLO_3 = 91;
+ PP13_SEL_SOLO_4 = 92;
+ PP13_SEL_SOLO_5 = 93;
+ PP13_SEL_SOLO_6 = 94;
+ PP13_SEL_SOLO_7 = 95;
}
message CMsgDOTAPlayerInfo {
- message Results {
- optional uint32 league_id = 1;
- optional uint32 placement = 2;
- optional uint32 earnings = 3;
- }
-
- message AuditEntry {
- optional uint32 start_timestamp = 1;
- optional uint32 end_timestamp = 2;
- optional uint32 team_id = 3;
- optional string team_name = 4;
- optional string team_tag = 5;
- optional string team_url_logo = 6;
- }
-
- message ProRegistration {
- optional uint32 registration_period = 1;
- optional uint32 timestamp = 2;
- }
-
- optional uint32 account_id = 1;
- optional string name = 2;
- optional string country_code = 3;
- optional .Fantasy_Roles fantasy_role = 4 [default = FANTASY_ROLE_UNDEFINED];
- optional uint32 team_id = 5;
- optional string team_name = 6;
- optional string team_tag = 7;
- optional string sponsor = 8;
- optional string real_name = 11;
- optional uint32 total_earnings = 13;
- repeated .CMsgDOTAPlayerInfo.Results results = 14;
- optional string team_url_logo = 15;
- repeated .CMsgDOTAPlayerInfo.AuditEntry audit_entries = 16;
- optional string team_abbreviation = 17;
- repeated .CMsgDOTAPlayerInfo.ProRegistration pro_registration = 18;
- optional bool has_played_in_international = 19;
+ message Results {
+ optional uint32 league_id = 1;
+ optional uint32 placement = 2;
+ optional uint32 earnings = 3;
+ }
+
+ message AuditEntry {
+ optional uint32 start_timestamp = 1;
+ optional uint32 end_timestamp = 2;
+ optional uint32 team_id = 3;
+ optional string team_name = 4;
+ optional string team_tag = 5;
+ optional string team_url_logo = 6;
+ }
+
+ message ProRegistration {
+ optional uint32 registration_period = 1;
+ optional uint32 timestamp = 2;
+ }
+
+ optional uint32 account_id = 1;
+ optional string name = 2;
+ optional string country_code = 3;
+ optional .Fantasy_Roles fantasy_role = 4 [default = FANTASY_ROLE_UNDEFINED];
+ optional uint32 team_id = 5;
+ optional string team_name = 6;
+ optional string team_tag = 7;
+ optional string sponsor = 8;
+ optional string real_name = 11;
+ optional uint32 total_earnings = 13;
+ repeated .CMsgDOTAPlayerInfo.Results results = 14;
+ optional string team_url_logo = 15;
+ repeated .CMsgDOTAPlayerInfo.AuditEntry audit_entries = 16;
+ optional string team_abbreviation = 17;
+ repeated .CMsgDOTAPlayerInfo.ProRegistration pro_registration = 18;
+ optional bool has_played_in_international = 19;
}
message CMsgDOTAPlayerInfoList {
- repeated .CMsgDOTAPlayerInfo player_infos = 1;
+ repeated .CMsgDOTAPlayerInfo player_infos = 1;
+ optional uint32 retry_time = 2;
}
message CMsgDOTATeamRoster {
- optional uint32 timestamp = 1;
- optional uint32 team_id = 2;
- repeated uint32 member_account_ids = 3;
- optional uint32 coach_account_id = 4;
+ optional uint32 timestamp = 1;
+ optional uint32 team_id = 2;
+ repeated uint32 member_account_ids = 3;
+ optional uint32 coach_account_id = 4;
}
message CMsgDOTADPCProfileInfo {
- message PredictionInfo {
- optional uint32 percent = 1;
- optional int32 shard_winnings = 2;
- }
+ message PredictionInfo {
+ optional uint32 percent = 1;
+ optional int32 shard_winnings = 2;
+ }
- message FantasyInfo {
- optional uint32 top_90_finishes = 1;
- optional uint32 top_75_finishes = 2;
- optional uint32 top_50_finishes = 3;
- optional uint32 shard_winnings = 4;
- }
+ message FantasyInfo {
+ optional uint32 top_90_finishes = 1;
+ optional uint32 top_75_finishes = 2;
+ optional uint32 top_50_finishes = 3;
+ optional uint32 shard_winnings = 4;
+ }
- optional .CMsgDOTAPlayerInfo player_info = 1;
- optional .CMsgDOTADPCProfileInfo.PredictionInfo prediction_info = 2;
- optional .CMsgDOTADPCProfileInfo.FantasyInfo fantasy_info = 3;
- repeated uint32 disabled_notifications = 4;
+ optional .CMsgDOTAPlayerInfo player_info = 1;
+ optional .CMsgDOTADPCProfileInfo.PredictionInfo prediction_info = 2;
+ optional .CMsgDOTADPCProfileInfo.FantasyInfo fantasy_info = 3;
+ repeated uint32 disabled_notifications = 4;
}
message CMsgDOTALeaderboards {
- message RegionLeaderboard {
- optional uint32 division = 1;
- repeated uint32 account_ids = 2;
- }
+ message RegionLeaderboard {
+ optional uint32 division = 1;
+ repeated uint32 account_ids = 2;
+ }
- repeated .CMsgDOTALeaderboards.RegionLeaderboard leaderboards = 2;
+ repeated .CMsgDOTALeaderboards.RegionLeaderboard leaderboards = 2;
}
message CMsgDOTAPassportVoteTeamGuess {
- optional uint32 league_id = 1;
- optional uint32 winner_id = 2;
- optional uint32 runnerup_id = 3;
+ optional uint32 league_id = 1;
+ optional uint32 winner_id = 2;
+ optional uint32 runnerup_id = 3;
}
message CMsgDOTAPassportVoteGenericSelection {
- optional .DOTA_2013PassportSelectionIndices selection_index = 1 [default = PP13_SEL_ALLSTAR_PLAYER_0];
- optional uint32 selection = 2;
+ optional .DOTA_2013PassportSelectionIndices selection_index = 1 [default = PP13_SEL_ALLSTAR_PLAYER_0];
+ optional uint32 selection = 2;
}
message CMsgDOTAPassportStampedPlayer {
- optional uint64 steam_id = 1;
- optional uint32 stamp_level = 2;
+ optional uint64 steam_id = 1;
+ optional uint32 stamp_level = 2;
}
message CMsgDOTAPassportPlayerCardChallenge {
- optional uint32 challenge_id = 1;
+ optional uint32 challenge_id = 1;
}
message CMsgDOTAPassportVote {
- repeated .CMsgDOTAPassportVoteTeamGuess team_votes = 1;
- repeated .CMsgDOTAPassportVoteGenericSelection generic_selections = 2;
- repeated .CMsgDOTAPassportStampedPlayer stamped_players = 3;
- repeated .CMsgDOTAPassportPlayerCardChallenge player_card_challenges = 4;
+ repeated .CMsgDOTAPassportVoteTeamGuess team_votes = 1;
+ repeated .CMsgDOTAPassportVoteGenericSelection generic_selections = 2;
+ repeated .CMsgDOTAPassportStampedPlayer stamped_players = 3;
+ repeated .CMsgDOTAPassportPlayerCardChallenge player_card_challenges = 4;
}
message CMsgClientToGCGetPlayerCardRosterRequest {
- optional uint32 league_id = 1;
- optional uint32 fantasy_period = 3 [default = 4294967295];
+ optional uint32 league_id = 1;
+ optional uint32 fantasy_period = 3 [default = 4294967295];
}
message CMsgClientToGCGetPlayerCardRosterResponse {
- enum Result {
- SUCCESS = 0;
- ERROR_UNSPECIFIED = 1;
- ERROR_INVALID_LEAGUE_ID = 2;
- ERROR_INVALID_TIMESTAMP = 3;
- }
+ enum Result {
+ SUCCESS = 0;
+ ERROR_UNSPECIFIED = 1;
+ ERROR_INVALID_LEAGUE_ID = 2;
+ ERROR_INVALID_TIMESTAMP = 3;
+ }
- optional .CMsgClientToGCGetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
- repeated uint64 player_card_item_id = 2;
- optional float score = 3;
- optional bool finalized = 4;
- optional float percentile = 5;
+ optional .CMsgClientToGCGetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
+ repeated uint64 player_card_item_id = 2;
+ optional float score = 3;
+ optional bool finalized = 4;
+ optional float percentile = 5;
}
message CMsgClientToGCBatchGetPlayerCardRosterRequest {
- message LeagueTimestamp {
- optional uint32 league_id = 1;
- optional uint32 fantasy_period = 3 [default = 4294967295];
- }
+ message LeagueTimestamp {
+ optional uint32 league_id = 1;
+ optional uint32 fantasy_period = 3 [default = 4294967295];
+ }
- repeated .CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp league_timestamps = 1;
+ repeated .CMsgClientToGCBatchGetPlayerCardRosterRequest.LeagueTimestamp league_timestamps = 1;
}
message CMsgClientToGCBatchGetPlayerCardRosterResponse {
- message RosterResponse {
- optional uint32 league_id = 1;
- optional uint32 deprecated_timestamp = 2;
- optional .CMsgClientToGCBatchGetPlayerCardRosterResponse.Result result = 3 [default = SUCCESS];
- repeated uint64 player_card_item_id = 4;
- optional float score = 5;
- optional bool finalized = 6;
- optional float percentile = 7;
- optional uint32 fantasy_period = 8 [default = 4294967295];
- }
-
- enum Result {
- SUCCESS = 0;
- ERROR_UNSPECIFIED = 1;
- ERROR_INVALID_LEAGUE_ID = 2;
- ERROR_INVALID_TIMESTAMP = 3;
- }
-
- repeated .CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse responses = 1;
+ message RosterResponse {
+ optional uint32 league_id = 1;
+ optional uint32 deprecated_timestamp = 2;
+ optional .CMsgClientToGCBatchGetPlayerCardRosterResponse.Result result = 3 [default = SUCCESS];
+ repeated uint64 player_card_item_id = 4;
+ optional float score = 5;
+ optional bool finalized = 6;
+ optional float percentile = 7;
+ optional uint32 fantasy_period = 8 [default = 4294967295];
+ }
+
+ enum Result {
+ SUCCESS = 0;
+ ERROR_UNSPECIFIED = 1;
+ ERROR_INVALID_LEAGUE_ID = 2;
+ ERROR_INVALID_TIMESTAMP = 3;
+ }
+
+ repeated .CMsgClientToGCBatchGetPlayerCardRosterResponse.RosterResponse responses = 1;
}
message CMsgClientToGCSetPlayerCardRosterRequest {
- optional uint32 league_id = 1;
- optional uint32 deprecated_timestamp = 2;
- optional uint32 slot = 3;
- optional uint64 player_card_item_id = 4;
- optional uint32 event_id = 5;
- optional uint32 fantasy_period = 6 [default = 4294967295];
+ optional uint32 league_id = 1;
+ optional uint32 deprecated_timestamp = 2;
+ optional uint32 slot = 3;
+ optional uint64 player_card_item_id = 4;
+ optional uint32 event_id = 5;
+ optional uint32 fantasy_period = 6 [default = 4294967295];
}
message CMsgClientToGCSetPlayerCardRosterResponse {
- enum Result {
- SUCCESS = 0;
- ERROR_UNSPECIFIED = 1;
- ERROR_INVALID_LEAGUE_ID = 2;
- ERROR_INVALID_TIMESTAMP = 3;
- ERROR_PLAYER_CARD_NOT_OWNED = 4;
- ERROR_INVALID_SLOT = 5;
- ERROR_FAILED_CARD_INFO = 6;
- ERROR_ACCOUNT_DUPLICATE = 7;
- ERROR_LOCKED_TIMESTAMP = 8;
- ERROR_INVALID_LEAGUE_FOR_PERIOD = 9;
- ERROR_INVALID_EVENT = 10;
- }
-
- optional .CMsgClientToGCSetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
+ enum Result {
+ SUCCESS = 0;
+ ERROR_UNSPECIFIED = 1;
+ ERROR_INVALID_LEAGUE_ID = 2;
+ ERROR_INVALID_TIMESTAMP = 3;
+ ERROR_PLAYER_CARD_NOT_OWNED = 4;
+ ERROR_INVALID_SLOT = 5;
+ ERROR_FAILED_CARD_INFO = 6;
+ ERROR_ACCOUNT_DUPLICATE = 7;
+ ERROR_LOCKED_TIMESTAMP = 8;
+ ERROR_INVALID_LEAGUE_FOR_PERIOD = 9;
+ ERROR_INVALID_EVENT = 10;
+ }
+
+ optional .CMsgClientToGCSetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyDPCLeagueStatus {
- message LeagueInfo {
- optional uint32 league_id = 1;
- optional string league_name = 2;
- optional uint32 start_timestamp = 3;
- optional uint32 end_timestamp = 4;
- repeated uint32 day_timestamps = 5;
- optional .CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus status = 8 [default = UNSET];
- }
+ message LeagueInfo {
+ optional uint32 league_id = 1;
+ optional string league_name = 2;
+ optional uint32 start_timestamp = 3;
+ optional uint32 end_timestamp = 4;
+ repeated uint32 day_timestamps = 5;
+ optional .CMsgDOTAFantasyDPCLeagueStatus.ERosterStatus status = 8 [default = UNSET];
+ }
- enum ERosterStatus {
- UNSET = 0;
- PARTIAL = 1;
- FULL = 2;
- CONCLUDED = 3;
- }
+ enum ERosterStatus {
+ UNSET = 0;
+ PARTIAL = 1;
+ FULL = 2;
+ CONCLUDED = 3;
+ }
- repeated .CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo league_infos = 1;
+ repeated .CMsgDOTAFantasyDPCLeagueStatus.LeagueInfo league_infos = 1;
}
message CMsgDOTADPCSearchResults {
- message Player {
- optional uint32 id = 1;
- optional string name = 2;
- optional string real_name = 3;
- }
-
- message Team {
- optional uint32 id = 1;
- optional string name = 2;
- optional string url = 3;
- }
-
- message League {
- optional uint32 id = 1;
- optional string name = 2;
- }
-
- enum ESearchResultsDesired {
- k_ESearchResultsDesired_Players = 1;
- k_ESearchResultsDesired_Teams = 2;
- k_ESearchResultsDesired_Leagues = 4;
- k_ESearchResultsDesired_All = 7;
- }
-
- repeated .CMsgDOTADPCSearchResults.Player players = 1;
- repeated .CMsgDOTADPCSearchResults.Team teams = 2;
- repeated .CMsgDOTADPCSearchResults.League leagues = 3;
+ message Player {
+ optional uint32 id = 1;
+ optional string name = 2;
+ optional string real_name = 3;
+ }
+
+ message Team {
+ optional uint32 id = 1;
+ optional string name = 2;
+ optional string url = 3;
+ }
+
+ message League {
+ optional uint32 id = 1;
+ optional string name = 2;
+ }
+
+ enum ESearchResultsDesired {
+ k_ESearchResultsDesired_Players = 1;
+ k_ESearchResultsDesired_Teams = 2;
+ k_ESearchResultsDesired_Leagues = 4;
+ k_ESearchResultsDesired_All = 7;
+ }
+
+ repeated .CMsgDOTADPCSearchResults.Player players = 1;
+ repeated .CMsgDOTADPCSearchResults.Team teams = 2;
+ repeated .CMsgDOTADPCSearchResults.League leagues = 3;
}
message CMsgDOTADPCTeamFavoriteRankings {
- message Team {
- optional uint32 team_id = 1;
- optional uint32 favorites = 2;
- }
+ message Team {
+ optional uint32 team_id = 1;
+ optional uint32 favorites = 2;
+ }
- repeated .CMsgDOTADPCTeamFavoriteRankings.Team teams = 1;
+ repeated .CMsgDOTADPCTeamFavoriteRankings.Team teams = 1;
}
message CMsgDotaFantasyCraftingTabletPeriodData {
- message Gem {
- optional .Fantasy_Gem_Type type = 1 [default = FANTASY_GEM_TYPE_RUBY];
- optional uint32 slot = 2;
- optional uint32 shape = 3;
- optional uint32 quality = 4;
- optional .Fantasy_Scoring stat = 5 [default = FANTASY_SCORING_KILLS];
- }
-
- message Tablet {
- optional uint32 tablet_id = 1;
- optional uint32 tablet_level = 2;
- optional .Fantasy_Roles fantasy_role = 3 [default = FANTASY_ROLE_UNDEFINED];
- optional uint32 account_id = 4;
- optional uint32 prefix = 5;
- optional uint32 suffix = 6;
- repeated .CMsgDotaFantasyCraftingTabletPeriodData.Gem gems = 7;
- optional float score = 8;
- optional uint32 best_series = 9;
- }
-
- optional uint32 fantasy_period = 1 [default = 4294967295];
- repeated .CMsgDotaFantasyCraftingTabletPeriodData.Tablet tablets = 2;
+ message Gem {
+ optional .Fantasy_Gem_Type type = 1 [default = FANTASY_GEM_TYPE_RUBY];
+ optional uint32 slot = 2;
+ optional uint32 shape = 3;
+ optional uint32 quality = 4;
+ optional .Fantasy_Scoring stat = 5 [default = FANTASY_SCORING_KILLS];
+ }
+
+ message Tablet {
+ optional uint32 tablet_id = 1;
+ optional uint32 tablet_level = 2;
+ optional .Fantasy_Roles fantasy_role = 3 [default = FANTASY_ROLE_UNDEFINED];
+ optional uint32 account_id = 4;
+ optional uint32 prefix = 5;
+ optional uint32 suffix = 6;
+ optional uint32 team_id = 10;
+ repeated .CMsgDotaFantasyCraftingTabletPeriodData.Gem gems = 7;
+ optional float score = 8;
+ optional uint32 best_series = 9;
+ }
+
+ optional uint32 fantasy_period = 1 [default = 4294967295];
+ repeated .CMsgDotaFantasyCraftingTabletPeriodData.Tablet tablets = 2;
}
message CMsgDotaFantasyCraftingTabletData {
- message TabletPeriodDataEntry {
- optional uint32 key = 1;
- optional .CMsgDotaFantasyCraftingTabletPeriodData value = 2;
- }
-
- repeated .CMsgDotaFantasyCraftingTabletData.TabletPeriodDataEntry tablet_period_data = 1;
+ map tablet_period_data = 1;
}
message CMsgDotaFantasyCraftingUserData {
- message PeriodScore {
- optional float total_score = 1;
- optional float percentile = 2;
- }
-
- message PeriodRollTokensEntry {
- optional uint32 key = 1;
- optional uint32 value = 2;
- }
-
- message PeriodScoresEntry {
- optional uint32 key = 1;
- optional .CMsgDotaFantasyCraftingUserData.PeriodScore value = 2;
- }
+ message PeriodScore {
+ optional float total_score = 1;
+ optional float percentile = 2;
+ }
- repeated uint32 available_rolls = 1;
- repeated .CMsgDotaFantasyCraftingUserData.PeriodRollTokensEntry period_roll_tokens = 2;
- repeated .CMsgDotaFantasyCraftingUserData.PeriodScoresEntry period_scores = 3;
+ repeated uint32 available_rolls = 1;
+ map period_roll_tokens = 2;
+ map period_scores = 3;
}
message CMsgDotaFantasyCraftingDataCache {
- message CacheEntry {
- optional uint32 account_id = 1;
- optional uint32 fantasy_league = 2;
- optional .CMsgGCToClientFantasyCraftingDataUpdated cache_data = 3;
- }
+ message CacheEntry {
+ optional uint32 account_id = 1;
+ optional uint32 fantasy_league = 2;
+ optional .CMsgGCToClientFantasyCraftingDataUpdated cache_data = 3;
+ }
- repeated .CMsgDotaFantasyCraftingDataCache.CacheEntry cache_entries = 1;
+ repeated .CMsgDotaFantasyCraftingDataCache.CacheEntry cache_entries = 1;
}
message CMsgClientToGCFantasyCraftingGetData {
- optional uint32 fantasy_league = 1;
- optional uint32 account_id = 2;
+ optional uint32 fantasy_league = 1;
+ optional uint32 account_id = 2;
}
message CMsgClientToGCFantasyCraftingGetDataResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ }
- optional .CMsgClientToGCFantasyCraftingGetDataResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingUserData user_data = 2;
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 4;
+ optional .CMsgClientToGCFantasyCraftingGetDataResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingUserData user_data = 2;
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 4;
}
message CMsgClientToGCFantasyCraftingPerformOperation {
- optional uint32 fantasy_league = 1;
- optional uint32 tablet_id = 2;
- optional uint32 operation_id = 3;
- optional uint64 extra_data = 4;
+ optional uint32 fantasy_league = 1;
+ optional uint32 tablet_id = 2;
+ optional uint32 operation_id = 3;
+ optional uint64 extra_data = 4;
}
message CMsgClientToGCFantasyCraftingPerformOperationResponse {
- message TitleChoice {
- optional uint32 prefix_choice = 1;
- optional uint32 suffix_choice = 2;
- }
-
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- k_eNoTokens = 6;
- k_eMoreInfo = 7;
- }
-
- optional .CMsgClientToGCFantasyCraftingPerformOperationResponse.EResponse response = 1 [default = k_eInternalError];
- optional uint32 operation_id = 2;
- optional uint32 tablet_id = 7;
- optional .CMsgDotaFantasyCraftingUserData user_data = 8;
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 9;
- repeated uint32 player_choices = 3;
- repeated uint32 prefix_choices = 4;
- repeated uint32 suffix_choices = 5;
- repeated .CMsgClientToGCFantasyCraftingPerformOperationResponse.TitleChoice title_choices = 6;
+ message TitleChoice {
+ optional uint32 prefix_choice = 1;
+ optional uint32 suffix_choice = 2;
+ }
+
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eNoTokens = 6;
+ k_eMoreInfo = 7;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingPerformOperationResponse.EResponse response = 1 [default = k_eInternalError];
+ optional uint32 operation_id = 2;
+ optional uint32 tablet_id = 7;
+ optional .CMsgDotaFantasyCraftingUserData user_data = 8;
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 9;
+ repeated uint32 player_choices = 3;
+ repeated uint32 prefix_choices = 4;
+ repeated uint32 suffix_choices = 5;
+ repeated .CMsgClientToGCFantasyCraftingPerformOperationResponse.TitleChoice title_choices = 6;
}
message CMsgGCToClientFantasyCraftingDataUpdated {
- optional uint32 fantasy_league = 1;
- optional .CMsgDotaFantasyCraftingUserData user_data = 2;
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 4;
+ optional uint32 fantasy_league = 1;
+ optional .CMsgDotaFantasyCraftingUserData user_data = 2;
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 4;
}
message CMsgClientToGCFantasyCraftingDevModifyTablet {
- optional uint32 fantasy_league = 1;
- optional bool reset_tablet = 2;
- optional uint32 modify_tokens = 3;
- optional bool upgrade_tablets = 6;
- optional uint32 fantasy_period = 5 [default = 4294967295];
+ optional uint32 fantasy_league = 1;
+ optional bool reset_tablet = 2;
+ optional uint32 modify_tokens = 3;
+ optional bool upgrade_tablets = 6;
+ optional uint32 fantasy_period = 5 [default = 4294967295];
}
message CMsgClientToGCFantasyCraftingDevModifyTabletResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ }
- optional .CMsgClientToGCFantasyCraftingDevModifyTabletResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingUserData user_data = 2;
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
+ optional .CMsgClientToGCFantasyCraftingDevModifyTabletResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingUserData user_data = 2;
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
}
message CMsgClientToGCFantasyCraftingSelectPlayer {
- optional uint32 fantasy_league = 1;
- optional uint32 account_id = 2;
+ optional uint32 fantasy_league = 1;
+ optional uint32 account_id = 2;
}
message CMsgClientToGCFantasyCraftingSelectPlayerResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- k_eInvalidPlayer = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInvalidPlayer = 6;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingSelectPlayerResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 2;
+}
+
+message CMsgClientToGCFantasyCraftingSelectTeam {
+ optional uint32 fantasy_league = 1;
+ optional .Fantasy_Roles role = 2 [default = FANTASY_ROLE_UNDEFINED];
+ optional uint32 team_id = 3;
+}
+
+message CMsgClientToGCFantasyCraftingSelectTeamResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInvalidTeam = 7;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingSelectTeamResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 2;
+}
- optional .CMsgClientToGCFantasyCraftingSelectPlayerResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 2;
+message CMsgClientToGCFantasyCraftingSelectGlobalPrefix {
+ optional uint32 fantasy_league = 1;
+ optional uint32 prefix = 2;
+}
+
+message CMsgClientToGCFantasyCraftingSelectGlobalPrefixResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInvalidPrefix = 7;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingSelectGlobalPrefixResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 2;
+}
+
+message CMsgClientToGCFantasyCraftingSelectGlobalSuffix {
+ optional uint32 fantasy_league = 1;
+ optional uint32 suffix = 2;
+}
+
+message CMsgClientToGCFantasyCraftingSelectGlobalSuffixResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInvalidSuffix = 7;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingSelectGlobalSuffixResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 2;
}
message CMsgClientToGCFantasyCraftingGenerateTablets {
- optional uint32 fantasy_league = 1;
- repeated uint32 account_ids = 2;
+ message TeamChoice {
+ optional .Fantasy_Roles fantasy_role = 1 [default = FANTASY_ROLE_UNDEFINED];
+ optional uint32 team_id = 2;
+ }
+
+ optional uint32 fantasy_league = 1;
+ repeated uint32 account_ids = 2;
+ repeated .CMsgClientToGCFantasyCraftingGenerateTablets.TeamChoice selected_teams = 3;
}
message CMsgClientToGCFantasyCraftingGenerateTabletsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- k_eInvalidPlayer = 6;
- }
-
- optional .CMsgClientToGCFantasyCraftingGenerateTabletsResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingUserData user_data = 2;
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInvalidPlayer = 6;
+ k_eInvalidTeam = 7;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingGenerateTabletsResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingUserData user_data = 2;
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
}
message CMsgClientToGcFantasyCraftingUpgradeTablets {
- optional uint32 fantasy_league = 1;
+ optional uint32 fantasy_league = 1;
}
message CMsgClientToGcFantasyCraftingUpgradeTabletsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ }
- optional .CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
+ optional .CMsgClientToGcFantasyCraftingUpgradeTabletsResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingTabletData tablet_data = 3;
}
message CMsgClientToGCFantasyCraftingRerollOptions {
- optional uint32 fantasy_league = 1;
+ optional uint32 fantasy_league = 1;
}
message CMsgClientToGCFantasyCraftingRerollOptionsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidLeague = 5;
- k_eInsufficientTokens = 6;
- }
-
- optional .CMsgClientToGCFantasyCraftingRerollOptionsResponse.EResponse response = 1 [default = k_eInternalError];
- optional .CMsgDotaFantasyCraftingUserData user_data = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidLeague = 5;
+ k_eInsufficientTokens = 6;
+ }
+
+ optional .CMsgClientToGCFantasyCraftingRerollOptionsResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDotaFantasyCraftingUserData user_data = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild.proto
index 0b511f77..be803c23 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,651 +7,651 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EGuildAuditAction {
- k_EGuildAuditAction_Invalid = 0;
- k_EGuildAuditAction_GuildCreated = 1;
- k_EGuildAuditAction_GuildLanguageChanged = 2;
- k_EGuildAuditAction_GuildFlagsChanged = 3;
- k_EGuildAuditAction_GuildMemberJoined = 5;
- k_EGuildAuditAction_GuildMemberLeft = 6;
- k_EGuildAuditAction_GuildMemberKicked = 7;
- k_EGuildAuditAction_GuildMemberRoleChanged = 8;
- k_EGuildAuditAction_GuildLogoChanged = 9;
- k_EGuildAuditAction_GuildRegionChanged = 10;
- k_EGuildAuditAction_GuildDescriptionChanged = 11;
- k_EGuildAuditAction_GuildPrimaryColorChanged = 12;
- k_EGuildAuditAction_GuildSecondaryColorChanged = 13;
- k_EGuildAuditAction_GuildPatternChanged = 14;
- k_EGuildAuditAction_AdminClearedLogo = 15;
- k_EGuildAuditAction_GuildRequiredRankChanged = 16;
- k_EGuildAuditAction_GuildMotDChanged = 18;
- k_EGuildAuditAction_AdminResetName = 19;
- k_EGuildAuditAction_AdminResetTag = 20;
- k_EGuildAuditAction_AdminLock = 21;
- k_EGuildAuditAction_GuildNameChanged = 22;
- k_EGuildAuditAction_GuildTagChanged = 23;
- k_EGuildAuditAction_AdminPermitted = 24;
- k_EGuildAuditAction_AdminBlocked = 25;
- k_EGuildAuditAction_AdminBannedUser = 26;
- k_EGuildAuditAction_AdminExonerated = 27;
+ k_EGuildAuditAction_Invalid = 0;
+ k_EGuildAuditAction_GuildCreated = 1;
+ k_EGuildAuditAction_GuildLanguageChanged = 2;
+ k_EGuildAuditAction_GuildFlagsChanged = 3;
+ k_EGuildAuditAction_GuildMemberJoined = 5;
+ k_EGuildAuditAction_GuildMemberLeft = 6;
+ k_EGuildAuditAction_GuildMemberKicked = 7;
+ k_EGuildAuditAction_GuildMemberRoleChanged = 8;
+ k_EGuildAuditAction_GuildLogoChanged = 9;
+ k_EGuildAuditAction_GuildRegionChanged = 10;
+ k_EGuildAuditAction_GuildDescriptionChanged = 11;
+ k_EGuildAuditAction_GuildPrimaryColorChanged = 12;
+ k_EGuildAuditAction_GuildSecondaryColorChanged = 13;
+ k_EGuildAuditAction_GuildPatternChanged = 14;
+ k_EGuildAuditAction_AdminClearedLogo = 15;
+ k_EGuildAuditAction_GuildRequiredRankChanged = 16;
+ k_EGuildAuditAction_GuildMotDChanged = 18;
+ k_EGuildAuditAction_AdminResetName = 19;
+ k_EGuildAuditAction_AdminResetTag = 20;
+ k_EGuildAuditAction_AdminLock = 21;
+ k_EGuildAuditAction_GuildNameChanged = 22;
+ k_EGuildAuditAction_GuildTagChanged = 23;
+ k_EGuildAuditAction_AdminPermitted = 24;
+ k_EGuildAuditAction_AdminBlocked = 25;
+ k_EGuildAuditAction_AdminBannedUser = 26;
+ k_EGuildAuditAction_AdminExonerated = 27;
}
enum EGuildChatType {
- k_EGuildChatType_Unspecified = 0;
- k_EGuildChatType_SteamChatGroup = 1;
- k_EGuildChatType_GC = 2;
+ k_EGuildChatType_Unspecified = 0;
+ k_EGuildChatType_SteamChatGroup = 1;
+ k_EGuildChatType_GC = 2;
}
message CMsgGuildInfo {
- optional string guild_name = 1;
- optional string guild_tag = 2;
- optional uint32 created_timestamp = 3;
- optional uint32 guild_language = 4;
- optional uint32 guild_flags = 5;
- optional uint64 guild_logo = 7;
- optional uint32 guild_region = 8;
- optional uint64 guild_chat_group_id = 9;
- optional string guild_description = 10;
- optional uint64 default_chat_channel_id = 11;
- optional uint32 guild_primary_color = 12;
- optional uint32 guild_secondary_color = 13;
- optional uint32 guild_pattern = 14;
- optional uint32 guild_refresh_time_offset = 15;
- optional uint32 guild_required_rank_tier = 16;
- optional uint32 guild_motd_timestamp = 17;
- optional string guild_motd = 18;
+ optional string guild_name = 1;
+ optional string guild_tag = 2;
+ optional uint32 created_timestamp = 3;
+ optional uint32 guild_language = 4;
+ optional uint32 guild_flags = 5;
+ optional uint64 guild_logo = 7;
+ optional uint32 guild_region = 8;
+ optional uint64 guild_chat_group_id = 9;
+ optional string guild_description = 10;
+ optional uint64 default_chat_channel_id = 11;
+ optional uint32 guild_primary_color = 12;
+ optional uint32 guild_secondary_color = 13;
+ optional uint32 guild_pattern = 14;
+ optional uint32 guild_refresh_time_offset = 15;
+ optional uint32 guild_required_rank_tier = 16;
+ optional uint32 guild_motd_timestamp = 17;
+ optional string guild_motd = 18;
}
message CMsgGuildSummary {
- message EventPoints {
- optional uint32 event_id = 1;
- optional uint32 guild_points = 2;
- optional uint32 guild_rank = 3;
- optional uint32 guild_weekly_rank = 4;
- optional uint32 guild_weekly_percentile = 5;
- optional uint32 guild_current_percentile = 6;
- }
+ message EventPoints {
+ optional uint32 event_id = 1;
+ optional uint32 guild_points = 2;
+ optional uint32 guild_rank = 3;
+ optional uint32 guild_weekly_rank = 4;
+ optional uint32 guild_weekly_percentile = 5;
+ optional uint32 guild_current_percentile = 6;
+ }
- optional .CMsgGuildInfo guild_info = 1;
- optional uint32 member_count = 2;
- repeated .CMsgGuildSummary.EventPoints event_points = 3;
+ optional .CMsgGuildInfo guild_info = 1;
+ optional uint32 member_count = 2;
+ repeated .CMsgGuildSummary.EventPoints event_points = 3;
}
message CMsgGuildRole {
- optional uint32 role_id = 1;
- optional string role_name = 2;
- optional uint32 role_flags = 3;
- optional uint32 role_order = 4;
+ optional uint32 role_id = 1;
+ optional string role_name = 2;
+ optional uint32 role_flags = 3;
+ optional uint32 role_order = 4;
}
message CMsgGuildMember {
- optional uint32 member_account_id = 1;
- optional uint32 member_role_id = 2;
- optional uint32 member_joined_timestamp = 3;
- optional uint32 member_last_active_timestamp = 4;
+ optional uint32 member_account_id = 1;
+ optional uint32 member_role_id = 2;
+ optional uint32 member_joined_timestamp = 3;
+ optional uint32 member_last_active_timestamp = 4;
}
message CMsgGuildInvite {
- optional uint32 requester_account_id = 1;
- optional uint32 target_account_id = 2;
- optional uint32 timestamp_sent = 3;
+ optional uint32 requester_account_id = 1;
+ optional uint32 target_account_id = 2;
+ optional uint32 timestamp_sent = 3;
}
message CMsgGuildData {
- optional uint32 guild_id = 1;
- optional .CMsgGuildInfo guild_info = 2;
- repeated .CMsgGuildRole guild_roles = 3;
- repeated .CMsgGuildMember guild_members = 4;
- repeated .CMsgGuildInvite guild_invites = 5;
+ optional uint32 guild_id = 1;
+ optional .CMsgGuildInfo guild_info = 2;
+ repeated .CMsgGuildRole guild_roles = 3;
+ repeated .CMsgGuildMember guild_members = 4;
+ repeated .CMsgGuildInvite guild_invites = 5;
}
message CMsgAccountGuildInvite {
- optional uint32 guild_id = 1;
- optional uint32 requester_account_id = 2;
- optional uint32 timestamp_sent = 3;
+ optional uint32 guild_id = 1;
+ optional uint32 requester_account_id = 2;
+ optional uint32 timestamp_sent = 3;
}
message CMsgAccountGuildMemberships {
- repeated uint32 guild_ids = 1;
- repeated .CMsgAccountGuildInvite guild_invites = 2;
+ repeated uint32 guild_ids = 1;
+ repeated .CMsgAccountGuildInvite guild_invites = 2;
}
message CMsgGuildPersonaInfo {
- optional uint32 guild_id = 1;
- optional string guild_tag = 2;
- optional uint32 guild_flags = 3;
+ optional uint32 guild_id = 1;
+ optional string guild_tag = 2;
+ optional uint32 guild_flags = 3;
}
message CMsgAccountGuildsPersonaInfo {
- repeated .CMsgGuildPersonaInfo guild_persona_infos = 1;
+ repeated .CMsgGuildPersonaInfo guild_persona_infos = 1;
}
message CMsgGuildFeedEvent {
- optional uint64 feed_event_id = 1;
- optional uint32 timestamp = 2;
- optional uint32 event_type = 3;
- optional uint32 param_uint_1 = 4;
- optional uint32 param_uint_2 = 5;
- optional uint32 param_uint_3 = 6;
+ optional uint64 feed_event_id = 1;
+ optional uint32 timestamp = 2;
+ optional uint32 event_type = 3;
+ optional uint32 param_uint_1 = 4;
+ optional uint32 param_uint_2 = 5;
+ optional uint32 param_uint_3 = 6;
}
message CMsgClientToGCCreateGuild {
- optional .CMsgGuildInfo guild_info = 1;
- optional .EGuildChatType guild_chat_type = 2 [default = k_EGuildChatType_Unspecified];
+ optional .CMsgGuildInfo guild_info = 1;
+ optional .EGuildChatType guild_chat_type = 2 [default = k_EGuildChatType_Unspecified];
}
message CMsgClientToGCCreateGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidName = 5;
- k_eNameAlreadyUsed = 6;
- k_eInvalidTag = 7;
- k_eTagAlreadyUsed = 8;
- k_eInvalidDescription = 9;
- k_eInvalidRegion = 10;
- k_eInvalidLogo = 11;
- k_eDoesNotOwnEvent = 12;
- k_eGuildLimit = 13;
- k_eInvalidMotD = 14;
- k_eBlocked = 15;
- k_eFreeTrialNotAllowed = 16;
- }
-
- optional .CMsgClientToGCCreateGuildResponse.EResponse result = 1 [default = k_eInternalError];
- optional uint32 guild_id = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidName = 5;
+ k_eNameAlreadyUsed = 6;
+ k_eInvalidTag = 7;
+ k_eTagAlreadyUsed = 8;
+ k_eInvalidDescription = 9;
+ k_eInvalidRegion = 10;
+ k_eInvalidLogo = 11;
+ k_eDoesNotOwnEvent = 12;
+ k_eGuildLimit = 13;
+ k_eInvalidMotD = 14;
+ k_eBlocked = 15;
+ k_eFreeTrialNotAllowed = 16;
+ }
+
+ optional .CMsgClientToGCCreateGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ optional uint32 guild_id = 2;
}
message CMsgClientToGCSetGuildInfo {
- optional uint32 guild_id = 1;
- optional .CMsgGuildInfo guild_info = 2;
- optional .EGuildChatType guild_chat_type = 3 [default = k_EGuildChatType_Unspecified];
+ optional uint32 guild_id = 1;
+ optional .CMsgGuildInfo guild_info = 2;
+ optional .EGuildChatType guild_chat_type = 3 [default = k_EGuildChatType_Unspecified];
}
message CMsgClientToGCSetGuildInfoResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNotMember = 6;
- k_eNoPermission = 7;
- k_eMotDTooLong = 8;
- k_eNameChangeNoPermissions = 9;
- k_eTagChangeNoPermissions = 10;
- k_eNameInvalid = 11;
- k_eTagInvalid = 12;
- k_eDescriptionInvalid = 13;
- k_eBlocked = 14;
- }
-
- optional .CMsgClientToGCSetGuildInfoResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNotMember = 6;
+ k_eNoPermission = 7;
+ k_eMotDTooLong = 8;
+ k_eNameChangeNoPermissions = 9;
+ k_eTagChangeNoPermissions = 10;
+ k_eNameInvalid = 11;
+ k_eTagInvalid = 12;
+ k_eDescriptionInvalid = 13;
+ k_eBlocked = 14;
+ }
+
+ optional .CMsgClientToGCSetGuildInfoResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCRequestGuildData {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCRequestGuildDataResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNotMember = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNotMember = 6;
+ }
- optional .CMsgClientToGCRequestGuildDataResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgGuildData guild_data = 2;
+ optional .CMsgClientToGCRequestGuildDataResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgGuildData guild_data = 2;
}
message CMsgGCToClientGuildDataUpdated {
- optional .CMsgGuildData guild_data = 1;
- optional uint32 update_flags = 2;
+ optional .CMsgGuildData guild_data = 1;
+ optional uint32 update_flags = 2;
}
message CMsgGCToClientGuildMembersDataUpdated {
- optional uint32 guild_id = 1;
- repeated .CMsgGuildMember members_data = 2;
+ optional uint32 guild_id = 1;
+ repeated .CMsgGuildMember members_data = 2;
}
message CMsgClientToGCRequestGuildMembership {
}
message CMsgClientToGCRequestGuildMembershipResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ }
- optional .CMsgClientToGCRequestGuildMembershipResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgAccountGuildMemberships guild_memberships = 2;
+ optional .CMsgClientToGCRequestGuildMembershipResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgAccountGuildMemberships guild_memberships = 2;
}
message CMsgGCToClientGuildMembershipUpdated {
- optional .CMsgAccountGuildMemberships guild_memberships = 1;
+ optional .CMsgAccountGuildMemberships guild_memberships = 1;
}
message CMsgClientToGCJoinGuild {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCJoinGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eGuildFull = 6;
- k_eAlreadyMember = 7;
- k_eGuildLimit = 8;
- k_eGuildRequiresInvite = 9;
- k_eGuildRankTooLow = 10;
- }
-
- optional .CMsgClientToGCJoinGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eGuildFull = 6;
+ k_eAlreadyMember = 7;
+ k_eGuildLimit = 8;
+ k_eGuildRequiresInvite = 9;
+ k_eGuildRankTooLow = 10;
+ }
+
+ optional .CMsgClientToGCJoinGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCLeaveGuild {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCLeaveGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNotMember = 6;
- k_eLastAdmin = 7;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNotMember = 6;
+ k_eLastAdmin = 7;
+ }
- optional .CMsgClientToGCLeaveGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCLeaveGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCKickGuildMember {
- optional uint32 guild_id = 1;
- optional uint32 target_account_id = 2;
+ optional uint32 guild_id = 1;
+ optional uint32 target_account_id = 2;
}
message CMsgClientToGCKickGuildMemberResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eRequesterNotMember = 6;
- k_eTargetNotMember = 7;
- k_eNoPermission = 8;
- k_eCantKickSelf = 9;
- }
-
- optional .CMsgClientToGCKickGuildMemberResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eRequesterNotMember = 6;
+ k_eTargetNotMember = 7;
+ k_eNoPermission = 8;
+ k_eCantKickSelf = 9;
+ }
+
+ optional .CMsgClientToGCKickGuildMemberResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCSetGuildMemberRole {
- optional uint32 guild_id = 1;
- optional uint32 target_account_id = 2;
- optional uint32 target_role_id = 3;
+ optional uint32 guild_id = 1;
+ optional uint32 target_account_id = 2;
+ optional uint32 target_role_id = 3;
}
message CMsgClientToGCSetGuildMemberRoleResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eRequesterNotMember = 6;
- k_eTargetNotMember = 7;
- k_eNoPermission = 8;
- k_eInvalidRole = 9;
- k_eAdminViolation = 10;
- }
-
- optional .CMsgClientToGCSetGuildMemberRoleResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eRequesterNotMember = 6;
+ k_eTargetNotMember = 7;
+ k_eNoPermission = 8;
+ k_eInvalidRole = 9;
+ k_eAdminViolation = 10;
+ }
+
+ optional .CMsgClientToGCSetGuildMemberRoleResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCInviteToGuild {
- optional uint32 guild_id = 1;
- optional uint32 target_account_id = 2;
+ optional uint32 guild_id = 1;
+ optional uint32 target_account_id = 2;
}
message CMsgClientToGCInviteToGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eGuildFull = 6;
- k_eRequesterNotMember = 7;
- k_eAlreadyAMember = 8;
- k_eAlreadyInvited = 9;
- k_eNoInvitePermissions = 10;
- k_eTooManyInvites = 11;
- k_eInvalidUser = 12;
- }
-
- optional .CMsgClientToGCInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eGuildFull = 6;
+ k_eRequesterNotMember = 7;
+ k_eAlreadyAMember = 8;
+ k_eAlreadyInvited = 9;
+ k_eNoInvitePermissions = 10;
+ k_eTooManyInvites = 11;
+ k_eInvalidUser = 12;
+ }
+
+ optional .CMsgClientToGCInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCDeclineInviteToGuild {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCDeclineInviteToGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNoInviteFound = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNoInviteFound = 6;
+ }
- optional .CMsgClientToGCDeclineInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCDeclineInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCAcceptInviteToGuild {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCAcceptInviteToGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNoInviteFound = 6;
- k_eGuildFull = 7;
- k_eGuildLimit = 8;
- k_eInvalidInviter = 9;
- k_eAlreadyInGuild = 10;
- }
-
- optional .CMsgClientToGCAcceptInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNoInviteFound = 6;
+ k_eGuildFull = 7;
+ k_eGuildLimit = 8;
+ k_eInvalidInviter = 9;
+ k_eAlreadyInGuild = 10;
+ }
+
+ optional .CMsgClientToGCAcceptInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCCancelInviteToGuild {
- optional uint32 guild_id = 1;
- optional uint32 target_account_id = 2;
+ optional uint32 guild_id = 1;
+ optional uint32 target_account_id = 2;
}
message CMsgClientToGCCancelInviteToGuildResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNoInviteFound = 6;
- k_eNoPermissions = 7;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNoInviteFound = 6;
+ k_eNoPermissions = 7;
+ }
- optional .CMsgClientToGCCancelInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCCancelInviteToGuildResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCAddGuildRole {
- optional uint32 guild_id = 1;
- optional string role_name = 2;
- optional uint32 role_flags = 3;
+ optional uint32 guild_id = 1;
+ optional string role_name = 2;
+ optional uint32 role_flags = 3;
}
message CMsgClientToGCAddGuildRoleResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNameAlreadyUsed = 6;
- k_eNoPermissions = 7;
- k_eInvalidFlags = 8;
- k_eInvalidName = 9;
- k_eAdminViolation = 10;
- k_eTooManyRoles = 11;
- k_eBlocked = 12;
- }
-
- optional .CMsgClientToGCAddGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
- optional uint32 role_id = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNameAlreadyUsed = 6;
+ k_eNoPermissions = 7;
+ k_eInvalidFlags = 8;
+ k_eInvalidName = 9;
+ k_eAdminViolation = 10;
+ k_eTooManyRoles = 11;
+ k_eBlocked = 12;
+ }
+
+ optional .CMsgClientToGCAddGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
+ optional uint32 role_id = 2;
}
message CMsgClientToGCModifyGuildRole {
- optional uint32 guild_id = 1;
- optional uint32 role_id = 2;
- optional string role_name = 3;
- optional uint32 role_flags = 4;
+ optional uint32 guild_id = 1;
+ optional uint32 role_id = 2;
+ optional string role_name = 3;
+ optional uint32 role_flags = 4;
}
message CMsgClientToGCModifyGuildRoleResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eInvalidRole = 6;
- k_eNameAlreadyUsed = 7;
- k_eInvalidFlags = 8;
- k_eInvalidName = 9;
- k_eNoPermissions = 10;
- k_eAdminViolation = 11;
- k_eBlocked = 12;
- }
-
- optional .CMsgClientToGCModifyGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eInvalidRole = 6;
+ k_eNameAlreadyUsed = 7;
+ k_eInvalidFlags = 8;
+ k_eInvalidName = 9;
+ k_eNoPermissions = 10;
+ k_eAdminViolation = 11;
+ k_eBlocked = 12;
+ }
+
+ optional .CMsgClientToGCModifyGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCRemoveGuildRole {
- optional uint32 guild_id = 1;
- optional uint32 role_id = 2;
+ optional uint32 guild_id = 1;
+ optional uint32 role_id = 2;
}
message CMsgClientToGCRemoveGuildRoleResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eInvalidRole = 6;
- k_eRoleNotEmpty = 7;
- k_eNoPermissions = 8;
- k_eAdminViolation = 9;
- k_eCantRemoveDefaultRole = 10;
- }
-
- optional .CMsgClientToGCRemoveGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eInvalidRole = 6;
+ k_eRoleNotEmpty = 7;
+ k_eNoPermissions = 8;
+ k_eAdminViolation = 9;
+ k_eCantRemoveDefaultRole = 10;
+ }
+
+ optional .CMsgClientToGCRemoveGuildRoleResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCSetGuildRoleOrder {
- optional uint32 guild_id = 1;
- repeated uint32 requested_role_ids = 2;
- repeated uint32 previous_role_ids = 3;
+ optional uint32 guild_id = 1;
+ repeated uint32 requested_role_ids = 2;
+ repeated uint32 previous_role_ids = 3;
}
message CMsgClientToGCSetGuildRoleOrderResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eInvalidRole = 6;
- k_eInvalidOrder = 7;
- k_eNoPermissions = 8;
- k_eAdminViolation = 9;
- }
-
- optional .CMsgClientToGCSetGuildRoleOrderResponse.EResponse result = 1 [default = k_eInternalError];
- repeated uint32 confirmed_role_ids = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eInvalidRole = 6;
+ k_eInvalidOrder = 7;
+ k_eNoPermissions = 8;
+ k_eAdminViolation = 9;
+ }
+
+ optional .CMsgClientToGCSetGuildRoleOrderResponse.EResponse result = 1 [default = k_eInternalError];
+ repeated uint32 confirmed_role_ids = 2;
}
message CMsgClientToGCGuildFeedRequest {
- optional uint32 guild_id = 1;
- optional uint64 last_seen_id = 2;
+ optional uint32 guild_id = 1;
+ optional uint64 last_seen_id = 2;
}
message CMsgClientToGCRequestGuildFeedResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNoPermissions = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNoPermissions = 6;
+ }
- optional .CMsgClientToGCRequestGuildFeedResponse.EResponse result = 1 [default = k_eInternalError];
- optional uint32 guild_id = 2;
- repeated .CMsgGuildFeedEvent feed_events = 3;
+ optional .CMsgClientToGCRequestGuildFeedResponse.EResponse result = 1 [default = k_eInternalError];
+ optional uint32 guild_id = 2;
+ repeated .CMsgGuildFeedEvent feed_events = 3;
}
message CMsgGCToClientGuildFeedUpdated {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCAddPlayerToGuildChat {
- optional uint32 guild_id = 1;
+ optional uint32 guild_id = 1;
}
message CMsgClientToGCAddPlayerToGuildChatResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidGuild = 5;
- k_eNotMember = 6;
- k_eSteamChatNotEnabled = 7;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidGuild = 5;
+ k_eNotMember = 6;
+ k_eSteamChatNotEnabled = 7;
+ }
- optional .CMsgClientToGCAddPlayerToGuildChatResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCAddPlayerToGuildChatResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgFindGuildByTagResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidTag = 5;
- k_eGuildNotFound = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidTag = 5;
+ k_eGuildNotFound = 6;
+ }
- optional .CMsgFindGuildByTagResponse.EResponse result = 1 [default = k_eInternalError];
- optional uint32 guild_id = 2;
- optional .CMsgGuildSummary guild_summary = 3;
+ optional .CMsgFindGuildByTagResponse.EResponse result = 1 [default = k_eInternalError];
+ optional uint32 guild_id = 2;
+ optional .CMsgGuildSummary guild_summary = 3;
}
message CMsgSearchForOpenGuildsResponse {
- message SearchResult {
- optional uint32 guild_id = 1;
- optional .CMsgGuildSummary guild_summary = 2;
- }
+ message SearchResult {
+ optional uint32 guild_id = 1;
+ optional .CMsgGuildSummary guild_summary = 2;
+ }
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ }
- optional .CMsgSearchForOpenGuildsResponse.EResponse result = 1 [default = k_eInternalError];
- repeated .CMsgSearchForOpenGuildsResponse.SearchResult search_results = 2;
- optional bool use_whitelist = 3;
+ optional .CMsgSearchForOpenGuildsResponse.EResponse result = 1 [default = k_eInternalError];
+ repeated .CMsgSearchForOpenGuildsResponse.SearchResult search_results = 2;
+ optional bool use_whitelist = 3;
}
message CMsgClientToGCReportGuildContent {
- enum EContentFlags {
- k_eNone = 0;
- k_eInappropriateName = 1;
- k_eInappropriateTag = 2;
- k_eInappropriateLogo = 4;
- k_eValidFlags = 7;
- }
+ enum EContentFlags {
+ k_eNone = 0;
+ k_eInappropriateName = 1;
+ k_eInappropriateTag = 2;
+ k_eInappropriateLogo = 4;
+ k_eValidFlags = 7;
+ }
- optional uint32 guild_id = 1;
- optional uint32 guild_content_flags = 2;
+ optional uint32 guild_id = 1;
+ optional uint32 guild_content_flags = 2;
}
message CMsgClientToGCReportGuildContentResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eGuildNotFound = 5;
- k_eFlagsInvalid = 6;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eGuildNotFound = 5;
+ k_eFlagsInvalid = 6;
+ }
- optional .CMsgClientToGCReportGuildContentResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgClientToGCReportGuildContentResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCRequestAccountGuildPersonaInfo {
- optional uint32 account_id = 1;
+ optional uint32 account_id = 1;
}
message CMsgClientToGCRequestAccountGuildPersonaInfoResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidAccount = 5;
- }
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidAccount = 5;
+ }
- optional .CMsgClientToGCRequestAccountGuildPersonaInfoResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgAccountGuildsPersonaInfo persona_info = 2;
+ optional .CMsgClientToGCRequestAccountGuildPersonaInfoResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgAccountGuildsPersonaInfo persona_info = 2;
}
message CMsgClientToGCRequestAccountGuildPersonaInfoBatch {
- repeated uint32 account_ids = 1;
+ repeated uint32 account_ids = 1;
}
message CMsgClientToGCRequestAccountGuildPersonaInfoBatchResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidRequest = 5;
- }
-
- optional .CMsgClientToGCRequestAccountGuildPersonaInfoBatchResponse.EResponse result = 1 [default = k_eInternalError];
- repeated .CMsgAccountGuildsPersonaInfo persona_infos = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidRequest = 5;
+ }
+
+ optional .CMsgClientToGCRequestAccountGuildPersonaInfoBatchResponse.EResponse result = 1 [default = k_eInternalError];
+ repeated .CMsgAccountGuildsPersonaInfo persona_infos = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild_events.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild_events.proto
index 59588ace..5eb8e234 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild_events.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_guild_events.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,231 +7,231 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EGuildEventAuditAction {
- k_EGuildEventAuditAction_Invalid = 0;
- k_EGuildEventAuditAction_DevGrant = 1;
- k_EGuildEventAuditAction_CompleteContract = 2;
- k_EGuildEventAuditAction_CompleteChallenge = 3;
- k_EGuildEventAuditAction_CompleteMatch_Winner = 4;
- k_EGuildEventAuditAction_ChallengeProgress = 5;
- k_EGuildEventAuditAction_CompleteMatch_Loser = 6;
- k_EGuildEventAuditAction_WeeklyLeaderboard = 7;
- k_EGuildEventAuditAction_ManualGrant = 8;
+ k_EGuildEventAuditAction_Invalid = 0;
+ k_EGuildEventAuditAction_DevGrant = 1;
+ k_EGuildEventAuditAction_CompleteContract = 2;
+ k_EGuildEventAuditAction_CompleteChallenge = 3;
+ k_EGuildEventAuditAction_CompleteMatch_Winner = 4;
+ k_EGuildEventAuditAction_ChallengeProgress = 5;
+ k_EGuildEventAuditAction_CompleteMatch_Loser = 6;
+ k_EGuildEventAuditAction_WeeklyLeaderboard = 7;
+ k_EGuildEventAuditAction_ManualGrant = 8;
}
message CMsgGuildContract {
- optional uint64 contract_id = 1;
- optional uint32 challenge_instance_id = 2;
- optional uint32 challenge_parameter = 3;
- optional uint32 challenge_timestamp = 4;
- optional uint32 assigned_account_id = 5;
- optional uint32 contract_flags = 6;
+ optional uint64 contract_id = 1;
+ optional uint32 challenge_instance_id = 2;
+ optional uint32 challenge_parameter = 3;
+ optional uint32 challenge_timestamp = 4;
+ optional uint32 assigned_account_id = 5;
+ optional uint32 contract_flags = 6;
}
message CMsgGuildContractSlot {
- optional .CMsgGuildContract contract = 1;
+ optional .CMsgGuildContract contract = 1;
}
message CMsgAccountGuildEventData {
- optional uint32 guild_points = 1;
- optional uint32 contracts_refreshed_timestamp = 2;
- repeated .CMsgGuildContractSlot contract_slots = 3;
- optional uint32 completed_challenge_count = 4;
- optional uint32 challenges_refresh_timestamp = 5;
- optional uint32 guild_weekly_percentile = 6;
- optional uint32 guild_weekly_last_timestamp = 7;
- optional uint32 last_weekly_claim_time = 8;
- optional uint32 guild_current_percentile = 9;
+ optional uint32 guild_points = 1;
+ optional uint32 contracts_refreshed_timestamp = 2;
+ repeated .CMsgGuildContractSlot contract_slots = 3;
+ optional uint32 completed_challenge_count = 4;
+ optional uint32 challenges_refresh_timestamp = 5;
+ optional uint32 guild_weekly_percentile = 6;
+ optional uint32 guild_weekly_last_timestamp = 7;
+ optional uint32 last_weekly_claim_time = 8;
+ optional uint32 guild_current_percentile = 9;
}
message CMsgGuildActiveContracts {
- optional uint32 contracts_refreshed_timestamp = 1;
- repeated .CMsgGuildContract contracts = 2;
+ optional uint32 contracts_refreshed_timestamp = 1;
+ repeated .CMsgGuildContract contracts = 2;
}
message CMsgGuildChallenge {
- optional uint32 challenge_instance_id = 1;
- optional uint32 challenge_parameter = 2;
- optional uint32 challenge_timestamp = 3;
- optional uint32 challenge_progress = 4;
- optional uint32 challenge_flags = 5;
+ optional uint32 challenge_instance_id = 1;
+ optional uint32 challenge_parameter = 2;
+ optional uint32 challenge_timestamp = 3;
+ optional uint32 challenge_progress = 4;
+ optional uint32 challenge_flags = 5;
}
message CMsgGuildEventMember {
- optional uint32 account_id = 1;
- optional uint32 guild_points_earned = 2;
+ optional uint32 account_id = 1;
+ optional uint32 guild_points_earned = 2;
}
message CMsgClientToGCRequestAccountGuildEventData {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCRequestAccountGuildEventDataResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- }
-
- optional .CMsgClientToGCRequestAccountGuildEventDataResponse.EResponse result = 1 [default = k_eInternalError];
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
- optional .CMsgAccountGuildEventData event_data = 3;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ }
+
+ optional .CMsgClientToGCRequestAccountGuildEventDataResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional .CMsgAccountGuildEventData event_data = 3;
}
message CMsgGCToClientAccountGuildEventDataUpdated {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
- optional uint32 update_flags = 3;
- optional .CMsgAccountGuildEventData guild_event_data = 4;
- optional bool contracts_updated = 5;
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 update_flags = 3;
+ optional .CMsgAccountGuildEventData guild_event_data = 4;
+ optional bool contracts_updated = 5;
}
message CMsgClientToGCRequestActiveGuildContracts {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCRequestActiveGuildContractsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- }
-
- optional .CMsgClientToGCRequestActiveGuildContractsResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgGuildActiveContracts active_contracts = 2;
- optional .CMsgGuildChallenge active_challenges = 3;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ }
+
+ optional .CMsgClientToGCRequestActiveGuildContractsResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgGuildActiveContracts active_contracts = 2;
+ optional .CMsgGuildChallenge active_challenges = 3;
}
message CMsgGCToClientActiveGuildContractsUpdated {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCSelectGuildContract {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
- optional uint64 contract_id = 3;
- optional uint32 contract_slot = 4;
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint64 contract_id = 3;
+ optional uint32 contract_slot = 4;
}
message CMsgClientToGCSelectGuildContractResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- k_eInvalidContractID = 9;
- k_eAlreadyAssigned = 10;
- k_eInvalidContractSlot = 11;
- k_eContractSlotLockedGuild = 12;
- k_eContractSlotCooldown = 13;
- k_eContractDuplicate = 14;
- k_eContractSlotTimeError = 15;
- k_eContractSlotLockedDotaPlus = 16;
- }
-
- optional .CMsgClientToGCSelectGuildContractResponse.EResponse result = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ k_eInvalidContractID = 9;
+ k_eAlreadyAssigned = 10;
+ k_eInvalidContractSlot = 11;
+ k_eContractSlotLockedGuild = 12;
+ k_eContractSlotCooldown = 13;
+ k_eContractDuplicate = 14;
+ k_eContractSlotTimeError = 15;
+ k_eContractSlotLockedDotaPlus = 16;
+ }
+
+ optional .CMsgClientToGCSelectGuildContractResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgClientToGCRequestActiveGuildChallenge {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCRequestActiveGuildChallengeResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- }
-
- optional .CMsgClientToGCRequestActiveGuildChallengeResponse.EResponse result = 1 [default = k_eInternalError];
- optional .CMsgGuildChallenge active_challenge = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ }
+
+ optional .CMsgClientToGCRequestActiveGuildChallengeResponse.EResponse result = 1 [default = k_eInternalError];
+ optional .CMsgGuildChallenge active_challenge = 2;
}
message CMsgGCToClientActiveGuildChallengeUpdated {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
- optional .CMsgGuildChallenge active_challenge = 3;
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional .CMsgGuildChallenge active_challenge = 3;
}
message CMsgClientToGCRequestGuildEventMembers {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCRequestGuildEventMembersResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- }
-
- optional .CMsgClientToGCRequestGuildEventMembersResponse.EResponse result = 1 [default = k_eInternalError];
- repeated .CMsgGuildEventMember members = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ }
+
+ optional .CMsgClientToGCRequestGuildEventMembersResponse.EResponse result = 1 [default = k_eInternalError];
+ repeated .CMsgGuildEventMember members = 2;
}
message CMsgGuildLeaderboardCombinedResponse {
- optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
- optional uint32 region = 2;
- optional uint32 last_updated = 3;
- repeated uint32 guild_id = 4 [packed = true];
- repeated uint32 rank = 5 [packed = true];
- repeated uint32 current_percentile = 6 [packed = true];
- repeated uint32 weekly_percentile = 7 [packed = true];
- repeated uint32 points = 8 [packed = true];
+ optional .EEvent event_id = 1 [default = EVENT_ID_NONE];
+ optional uint32 region = 2;
+ optional uint32 last_updated = 3;
+ repeated uint32 guild_id = 4 [packed = true];
+ repeated uint32 rank = 5 [packed = true];
+ repeated uint32 current_percentile = 6 [packed = true];
+ repeated uint32 weekly_percentile = 7 [packed = true];
+ repeated uint32 points = 8 [packed = true];
}
message CMsgClientToGCClaimLeaderboardRewards {
- optional uint32 guild_id = 1;
- optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
+ optional uint32 guild_id = 1;
+ optional .EEvent event_id = 2 [default = EVENT_ID_NONE];
}
message CMsgClientToGCClaimLeaderboardRewardsResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eInvalidEvent = 5;
- k_eInvalidGuild = 6;
- k_eNotMember = 7;
- k_eInvalidGuildEvent = 8;
- k_eDoesNotQualify = 9;
- k_eAlreadyClaimed = 10;
- }
-
- optional .CMsgClientToGCClaimLeaderboardRewardsResponse.EResponse result = 1 [default = k_eInternalError];
- optional uint32 event_points = 2;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eInvalidEvent = 5;
+ k_eInvalidGuild = 6;
+ k_eNotMember = 7;
+ k_eInvalidGuildEvent = 8;
+ k_eDoesNotQualify = 9;
+ k_eAlreadyClaimed = 10;
+ }
+
+ optional .CMsgClientToGCClaimLeaderboardRewardsResponse.EResponse result = 1 [default = k_eInternalError];
+ optional uint32 event_points = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_match_management.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_match_management.proto
index af2fdaf5..242d21a9 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_match_management.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_match_management.proto
@@ -3,6 +3,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -10,460 +11,461 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EStartFindingMatchResult {
- k_EStartFindingMatchResult_Invalid = 0;
- k_EStartFindingMatchResult_OK = 1;
- k_EStartFindingMatchResult_AlreadySearching = 2;
- k_EStartFindingMatchResult_FailGeneric = 100;
- k_EStartFindingMatchResult_FailedIgnore = 101;
- k_EStartFindingMatchResult_MatchmakingDisabled = 102;
- k_EStartFindingMatchResult_RegionOffline = 103;
- k_EStartFindingMatchResult_MatchmakingCooldown = 104;
- k_EStartFindingMatchResult_ClientOutOfDate = 105;
- k_EStartFindingMatchResult_CompetitiveNoLowPriority = 106;
- k_EStartFindingMatchResult_CompetitiveNotUnlocked = 107;
- k_EStartFindingMatchResult_GameModeNotUnlocked = 108;
- k_EStartFindingMatchResult_CompetitiveNotEnoughPlayTime = 109;
- k_EStartFindingMatchResult_MissingInitialSkill = 110;
- k_EStartFindingMatchResult_CompetitiveRankSpreadTooLarge = 111;
- k_EStartFindingMatchResult_MemberAlreadyInLobby = 112;
- k_EStartFindingMatchResult_MemberNotVACVerified = 113;
- k_EStartFindingMatchResult_WeekendTourneyBadPartySize = 114;
- k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooSmall = 115;
- k_EStartFindingMatchResult_WeekendTourneyIndividualBuyInTooLarge = 116;
- k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooLarge = 117;
- k_EStartFindingMatchResult_MemberMissingEventOwnership = 118;
- k_EStartFindingMatchResult_WeekendTourneyNotUnlocked = 119;
- k_EStartFindingMatchResult_WeekendTourneyRecentParticipation = 120;
- k_EStartFindingMatchResult_MemberMissingAnchoredPhoneNumber = 121;
- k_EStartFindingMatchResult_NotMemberOfClan = 122;
- k_EStartFindingMatchResult_CoachesChallengeBadPartySize = 123;
- k_EStartFindingMatchResult_CoachesChallengeRequirementsNotMet = 124;
- k_EStartFindingMatchResult_InvalidRoleSelections = 125;
- k_EStartFindingMatchResult_PhoneNumberDiscrepancy = 126;
- k_EStartFindingMatchResult_NoQueuePoints = 127;
- k_EStartFindingMatchResult_MemberMissingGauntletFlag = 128;
- k_EStartFindingMatchResult_MemberGauntletTooRecent = 129;
- k_EStartFindingMatchResult_DifficultyNotUnlocked = 130;
- k_EStartFindingMatchResult_CoachesNotAllowedInParty = 131;
- k_EStartFindingMatchResult_MatchmakingBusy = 132;
- k_EStartFindingMatchResult_SteamChinaBanned = 133;
- k_EStartFindingMatchResult_SteamChinaInvalidMixedParty = 134;
- k_EStartFindingMatchResult_RestrictedFromRanked = 135;
- k_EStartFindingMatchResult_RankPreventsParties = 136;
- k_EStartFindingMatchResult_RegisteredNameRequired = 137;
+ k_EStartFindingMatchResult_Invalid = 0;
+ k_EStartFindingMatchResult_OK = 1;
+ k_EStartFindingMatchResult_AlreadySearching = 2;
+ k_EStartFindingMatchResult_FailGeneric = 100;
+ k_EStartFindingMatchResult_FailedIgnore = 101;
+ k_EStartFindingMatchResult_MatchmakingDisabled = 102;
+ k_EStartFindingMatchResult_RegionOffline = 103;
+ k_EStartFindingMatchResult_MatchmakingCooldown = 104;
+ k_EStartFindingMatchResult_ClientOutOfDate = 105;
+ k_EStartFindingMatchResult_CompetitiveNoLowPriority = 106;
+ k_EStartFindingMatchResult_CompetitiveNotUnlocked = 107;
+ k_EStartFindingMatchResult_GameModeNotUnlocked = 108;
+ k_EStartFindingMatchResult_CompetitiveNotEnoughPlayTime = 109;
+ k_EStartFindingMatchResult_MissingInitialSkill = 110;
+ k_EStartFindingMatchResult_CompetitiveRankSpreadTooLarge = 111;
+ k_EStartFindingMatchResult_MemberAlreadyInLobby = 112;
+ k_EStartFindingMatchResult_MemberNotVACVerified = 113;
+ k_EStartFindingMatchResult_WeekendTourneyBadPartySize = 114;
+ k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooSmall = 115;
+ k_EStartFindingMatchResult_WeekendTourneyIndividualBuyInTooLarge = 116;
+ k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooLarge = 117;
+ k_EStartFindingMatchResult_MemberMissingEventOwnership = 118;
+ k_EStartFindingMatchResult_WeekendTourneyNotUnlocked = 119;
+ k_EStartFindingMatchResult_WeekendTourneyRecentParticipation = 120;
+ k_EStartFindingMatchResult_MemberMissingAnchoredPhoneNumber = 121;
+ k_EStartFindingMatchResult_NotMemberOfClan = 122;
+ k_EStartFindingMatchResult_CoachesChallengeBadPartySize = 123;
+ k_EStartFindingMatchResult_CoachesChallengeRequirementsNotMet = 124;
+ k_EStartFindingMatchResult_InvalidRoleSelections = 125;
+ k_EStartFindingMatchResult_PhoneNumberDiscrepancy = 126;
+ k_EStartFindingMatchResult_NoQueuePoints = 127;
+ k_EStartFindingMatchResult_MemberMissingGauntletFlag = 128;
+ k_EStartFindingMatchResult_MemberGauntletTooRecent = 129;
+ k_EStartFindingMatchResult_DifficultyNotUnlocked = 130;
+ k_EStartFindingMatchResult_CoachesNotAllowedInParty = 131;
+ k_EStartFindingMatchResult_MatchmakingBusy = 132;
+ k_EStartFindingMatchResult_SteamChinaBanned = 133;
+ k_EStartFindingMatchResult_SteamChinaInvalidMixedParty = 134;
+ k_EStartFindingMatchResult_RestrictedFromRanked = 135;
+ k_EStartFindingMatchResult_RankPreventsParties = 136;
+ k_EStartFindingMatchResult_RegisteredNameRequired = 137;
}
message CMsgStartFindingMatch {
- optional string key = 1;
- optional uint32 matchgroups = 2 [default = 4294967295];
- optional uint32 client_version = 3;
- optional uint32 game_modes = 4 [default = 4294967295];
- optional .MatchType match_type = 6 [default = MATCH_TYPE_CASUAL];
- optional uint32 matchlanguages = 7 [default = 4294967295];
- optional uint32 team_id = 8;
- optional .MatchLanguages game_language_enum = 10 [default = MATCH_LANGUAGE_INVALID];
- optional string game_language_name = 11;
- optional .CMsgClientPingData ping_data = 12;
- optional uint32 region_select_flags = 13;
- optional bool solo_queue = 14;
- optional uint32 steam_clan_account_id = 16;
- optional bool is_challenge_match = 17;
- optional uint32 lane_selection_flags = 18;
- optional bool high_priority_disabled = 19;
- optional bool disable_experimental_gameplay = 20;
- optional uint32 custom_game_difficulty_mask = 21;
- optional uint32 bot_difficulty_mask = 22;
- optional uint32 bot_script_index_mask = 23;
+ optional string key = 1;
+ optional uint32 matchgroups = 2 [default = 4294967295];
+ optional uint32 client_version = 3;
+ optional uint32 game_modes = 4 [default = 4294967295];
+ optional .MatchType match_type = 6 [default = MATCH_TYPE_CASUAL];
+ optional uint32 matchlanguages = 7 [default = 4294967295];
+ optional uint32 team_id = 8;
+ optional .MatchLanguages game_language_enum = 10 [default = MATCH_LANGUAGE_INVALID];
+ optional string game_language_name = 11;
+ optional .CMsgClientPingData ping_data = 12;
+ optional uint32 region_select_flags = 13;
+ optional bool solo_queue = 14;
+ optional uint32 steam_clan_account_id = 16;
+ optional bool is_challenge_match = 17;
+ optional uint32 lane_selection_flags = 18;
+ optional bool high_priority_disabled = 19;
+ optional bool disable_experimental_gameplay = 20;
+ optional uint32 custom_game_difficulty_mask = 21;
+ optional uint32 bot_difficulty_mask = 22;
+ optional uint32 bot_script_index_mask = 23;
}
message CMsgStartFindingMatchResult {
- optional uint32 legacy_generic_eresult = 1 [default = 2];
- optional .EStartFindingMatchResult result = 2 [default = k_EStartFindingMatchResult_Invalid];
- optional string error_token = 3;
- optional string debug_message = 4;
- repeated fixed64 responsible_party_members = 5;
- optional uint32 result_metadata = 6;
+ optional uint32 legacy_generic_eresult = 1 [default = 2];
+ optional .EStartFindingMatchResult result = 2 [default = k_EStartFindingMatchResult_Invalid];
+ optional string error_token = 3;
+ optional string debug_message = 4;
+ repeated fixed64 responsible_party_members = 5;
+ optional uint32 result_metadata = 6;
}
message CMsgStopFindingMatch {
- optional bool accept_cooldown = 1;
+ optional bool accept_cooldown = 1;
}
message CMsgPartyBuilderOptions {
- optional uint32 additional_slots = 1;
- optional .MatchType match_type = 2 [default = MATCH_TYPE_CASUAL];
- optional uint32 matchgroups = 3;
- optional uint32 client_version = 4;
- optional .MatchLanguages language = 5 [default = MATCH_LANGUAGE_INVALID];
+ optional uint32 additional_slots = 1;
+ optional .MatchType match_type = 2 [default = MATCH_TYPE_CASUAL];
+ optional uint32 matchgroups = 3;
+ optional uint32 client_version = 4;
+ optional .MatchLanguages language = 5 [default = MATCH_LANGUAGE_INVALID];
}
message CMsgReadyUp {
- optional .DOTALobbyReadyState state = 1 [default = DOTALobbyReadyState_UNDECLARED];
- optional fixed64 ready_up_key = 2;
- optional .CDOTAClientHardwareSpecs hardware_specs = 3;
+ optional .DOTALobbyReadyState state = 1 [default = DOTALobbyReadyState_UNDECLARED];
+ optional fixed64 ready_up_key = 2;
+ optional .CDOTAClientHardwareSpecs hardware_specs = 3;
}
message CMsgReadyUpStatus {
- optional fixed64 lobby_id = 1;
- repeated uint32 accepted_ids = 2;
- repeated uint32 declined_ids = 3;
- repeated uint32 accepted_indices = 4;
- repeated uint32 declined_indices = 5;
- optional .DOTALobbyReadyState local_ready_state = 6 [default = DOTALobbyReadyState_UNDECLARED];
+ optional fixed64 lobby_id = 1;
+ repeated uint32 accepted_ids = 2;
+ repeated uint32 declined_ids = 3;
+ repeated uint32 accepted_indices = 4;
+ repeated uint32 declined_indices = 5;
+ optional .DOTALobbyReadyState local_ready_state = 6 [default = DOTALobbyReadyState_UNDECLARED];
}
message CMsgAbandonCurrentGame {
}
message CMsgLobbyScenarioSave {
- optional int32 version = 1;
- optional bytes data = 2;
+ optional int32 version = 1;
+ optional bytes data = 2;
}
message CMsgPracticeLobbySetDetails {
- message AbilityDraftSpecificDetails {
- optional bool shuffle_draft_order = 1;
- }
-
- optional uint64 lobby_id = 1;
- optional string game_name = 2;
- repeated .CLobbyTeamDetails team_details = 3;
- optional uint32 server_region = 4;
- optional uint32 game_mode = 5;
- optional .DOTA_CM_PICK cm_pick = 6 [default = DOTA_CM_RANDOM];
- optional .DOTABotDifficulty bot_difficulty_radiant = 9 [default = BOT_DIFFICULTY_PASSIVE];
- optional bool allow_cheats = 10;
- optional bool fill_with_bots = 11;
- optional bool allow_spectating = 13;
- optional string pass_key = 15;
- optional uint32 leagueid = 16;
- optional uint32 penalty_level_radiant = 17;
- optional uint32 penalty_level_dire = 18;
- optional uint32 series_type = 20;
- optional uint32 radiant_series_wins = 21;
- optional uint32 dire_series_wins = 22;
- optional bool allchat = 23 [default = false];
- optional .LobbyDotaTVDelay dota_tv_delay = 24 [default = LobbyDotaTV_120];
- optional bool lan = 25;
- optional string custom_game_mode = 26;
- optional string custom_map_name = 27;
- optional uint32 custom_difficulty = 28;
- optional uint64 custom_game_id = 29;
- optional uint32 custom_min_players = 30;
- optional uint32 custom_max_players = 31;
- optional .DOTALobbyVisibility visibility = 33 [default = DOTALobbyVisibility_Public];
- optional fixed64 custom_game_crc = 34;
- optional fixed32 custom_game_timestamp = 37;
- optional uint64 previous_match_override = 38;
- optional .LobbyDotaPauseSetting pause_setting = 42 [default = LobbyDotaPauseSetting_Unlimited];
- optional .DOTABotDifficulty bot_difficulty_dire = 43 [default = BOT_DIFFICULTY_PASSIVE];
- optional uint64 bot_radiant = 44;
- optional uint64 bot_dire = 45;
- optional .DOTASelectionPriorityRules selection_priority_rules = 46 [default = k_DOTASelectionPriorityRules_Manual];
- optional bool custom_game_penalties = 47;
- optional string lan_host_ping_location = 48;
- optional uint32 league_node_id = 49;
- repeated int32 requested_hero_ids = 50;
- optional .CMsgLobbyScenarioSave scenario_save = 51;
- optional .CMsgPracticeLobbySetDetails.AbilityDraftSpecificDetails ability_draft_specific_details = 52;
- optional bool do_player_draft = 53;
- repeated int32 requested_hero_teams = 54;
+ message AbilityDraftSpecificDetails {
+ optional bool shuffle_draft_order = 1;
+ }
+
+ optional uint64 lobby_id = 1;
+ optional string game_name = 2;
+ repeated .CLobbyTeamDetails team_details = 3;
+ optional uint32 server_region = 4;
+ optional uint32 game_mode = 5;
+ optional .DOTA_CM_PICK cm_pick = 6 [default = DOTA_CM_RANDOM];
+ optional .DOTABotDifficulty bot_difficulty_radiant = 9 [default = BOT_DIFFICULTY_PASSIVE];
+ optional bool allow_cheats = 10;
+ optional bool fill_with_bots = 11;
+ optional bool allow_spectating = 13;
+ optional string pass_key = 15;
+ optional uint32 leagueid = 16;
+ optional uint32 penalty_level_radiant = 17;
+ optional uint32 penalty_level_dire = 18;
+ optional uint32 series_type = 20;
+ optional uint32 radiant_series_wins = 21;
+ optional uint32 dire_series_wins = 22;
+ optional bool allchat = 23 [default = false];
+ optional .LobbyDotaTVDelay dota_tv_delay = 24 [default = LobbyDotaTV_120];
+ optional bool lan = 25;
+ optional string custom_game_mode = 26;
+ optional string custom_map_name = 27;
+ optional uint32 custom_difficulty = 28;
+ optional uint64 custom_game_id = 29;
+ optional uint32 custom_min_players = 30;
+ optional uint32 custom_max_players = 31;
+ optional .DOTALobbyVisibility visibility = 33 [default = DOTALobbyVisibility_Public];
+ optional fixed64 custom_game_crc = 34;
+ optional fixed32 custom_game_timestamp = 37;
+ optional uint64 previous_match_override = 38;
+ optional .LobbyDotaPauseSetting pause_setting = 42 [default = LobbyDotaPauseSetting_Unlimited];
+ optional .DOTABotDifficulty bot_difficulty_dire = 43 [default = BOT_DIFFICULTY_PASSIVE];
+ optional uint64 bot_radiant = 44;
+ optional uint64 bot_dire = 45;
+ optional .DOTASelectionPriorityRules selection_priority_rules = 46 [default = k_DOTASelectionPriorityRules_Manual];
+ optional bool custom_game_penalties = 47;
+ optional string lan_host_ping_location = 48;
+ optional uint32 league_node_id = 49;
+ repeated int32 requested_hero_ids = 50;
+ optional .CMsgLobbyScenarioSave scenario_save = 51;
+ optional .CMsgPracticeLobbySetDetails.AbilityDraftSpecificDetails ability_draft_specific_details = 52;
+ optional bool do_player_draft = 53;
+ repeated int32 requested_hero_teams = 54;
}
message CMsgPracticeLobbyCreate {
- optional string search_key = 1;
- optional string pass_key = 5;
- optional uint32 client_version = 6;
- optional .CMsgPracticeLobbySetDetails lobby_details = 7;
+ optional string search_key = 1;
+ optional string pass_key = 5;
+ optional uint32 client_version = 6;
+ optional .CMsgPracticeLobbySetDetails lobby_details = 7;
}
message CMsgPracticeLobbySetTeamSlot {
- optional .DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
- optional uint32 slot = 2;
- optional .DOTABotDifficulty bot_difficulty = 3 [default = BOT_DIFFICULTY_PASSIVE];
+ optional .DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
+ optional uint32 slot = 2;
+ optional .DOTABotDifficulty bot_difficulty = 3 [default = BOT_DIFFICULTY_PASSIVE];
}
message CMsgPracticeLobbySetCoach {
- optional .DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
+ optional .DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
}
message CMsgPracticeLobbyJoinBroadcastChannel {
- optional uint32 channel = 1;
- optional string preferred_description = 2;
- optional string preferred_country_code = 3;
- optional string preferred_language_code = 4;
+ optional uint32 channel = 1;
+ optional string preferred_description = 2;
+ optional string preferred_country_code = 3;
+ optional string preferred_language_code = 4;
}
message CMsgPracticeLobbyCloseBroadcastChannel {
- optional uint32 channel = 1;
+ optional uint32 channel = 1;
}
message CMsgPracticeLobbyToggleBroadcastChannelCameramanStatus {
}
message CMsgPracticeLobbyKick {
- optional uint32 account_id = 3;
+ optional uint32 account_id = 3;
}
message CMsgPracticeLobbyKickFromTeam {
- optional uint32 account_id = 1;
+ optional uint32 account_id = 1;
}
message CMsgPracticeLobbyLeave {
}
message CMsgPracticeLobbyLaunch {
- optional uint32 client_version = 5;
+ optional uint32 client_version = 5;
+ optional fixed64 nonce = 6;
}
message CMsgApplyTeamToPracticeLobby {
- optional uint32 team_id = 1;
+ optional uint32 team_id = 1;
}
message CMsgPracticeLobbyList {
- optional string pass_key = 2;
- optional uint32 region = 3;
- optional .DOTA_GameMode game_mode = 4 [default = DOTA_GAMEMODE_NONE];
+ optional string pass_key = 2;
+ optional uint32 region = 3;
+ optional .DOTA_GameMode game_mode = 4 [default = DOTA_GAMEMODE_NONE];
}
message CMsgPracticeLobbyListResponseEntry {
- message CLobbyMember {
- optional uint32 account_id = 1;
- optional string player_name = 2;
- }
-
- optional uint64 id = 1 [(key_field) = true];
- repeated .CMsgPracticeLobbyListResponseEntry.CLobbyMember members = 5;
- optional bool requires_pass_key = 6;
- optional uint32 leader_account_id = 7;
- optional string name = 10;
- optional string custom_game_mode = 11;
- optional .DOTA_GameMode game_mode = 12 [default = DOTA_GAMEMODE_NONE];
- optional bool friend_present = 13;
- optional uint32 players = 14;
- optional string custom_map_name = 15;
- optional uint32 max_player_count = 16;
- optional uint32 server_region = 17;
- optional uint32 league_id = 19;
- optional string lan_host_ping_location = 20;
- optional uint32 min_player_count = 21;
- optional bool penalties_enabled = 22;
+ message CLobbyMember {
+ optional uint32 account_id = 1;
+ optional string player_name = 2;
+ }
+
+ optional uint64 id = 1 [(key_field) = true];
+ repeated .CMsgPracticeLobbyListResponseEntry.CLobbyMember members = 5;
+ optional bool requires_pass_key = 6;
+ optional uint32 leader_account_id = 7;
+ optional string name = 10;
+ optional string custom_game_mode = 11;
+ optional .DOTA_GameMode game_mode = 12 [default = DOTA_GAMEMODE_NONE];
+ optional bool friend_present = 13;
+ optional uint32 players = 14;
+ optional string custom_map_name = 15;
+ optional uint32 max_player_count = 16;
+ optional uint32 server_region = 17;
+ optional uint32 league_id = 19;
+ optional string lan_host_ping_location = 20;
+ optional uint32 min_player_count = 21;
+ optional bool penalties_enabled = 22;
}
message CMsgPracticeLobbyListResponse {
- repeated .CMsgPracticeLobbyListResponseEntry lobbies = 2;
+ repeated .CMsgPracticeLobbyListResponseEntry lobbies = 2;
}
message CMsgLobbyList {
- optional uint32 server_region = 1 [default = 0];
- optional .DOTA_GameMode game_mode = 2 [default = DOTA_GAMEMODE_NONE];
+ optional uint32 server_region = 1 [default = 0];
+ optional .DOTA_GameMode game_mode = 2 [default = DOTA_GAMEMODE_NONE];
}
message CMsgLobbyListResponse {
- repeated .CMsgPracticeLobbyListResponseEntry lobbies = 1;
+ repeated .CMsgPracticeLobbyListResponseEntry lobbies = 1;
}
message CMsgPracticeLobbyJoin {
- optional uint64 lobby_id = 1;
- optional uint32 client_version = 2;
- optional string pass_key = 3;
- optional fixed64 custom_game_crc = 4;
- optional fixed32 custom_game_timestamp = 5;
+ optional uint64 lobby_id = 1;
+ optional uint32 client_version = 2;
+ optional string pass_key = 3;
+ optional fixed64 custom_game_crc = 4;
+ optional fixed32 custom_game_timestamp = 5;
}
message CMsgPracticeLobbyJoinResponse {
- optional .DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
+ optional .DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
}
message CMsgFriendPracticeLobbyListRequest {
- repeated uint32 friends = 1;
+ repeated uint32 friends = 1;
}
message CMsgFriendPracticeLobbyListResponse {
- repeated .CMsgPracticeLobbyListResponseEntry lobbies = 1;
+ repeated .CMsgPracticeLobbyListResponseEntry lobbies = 1;
}
message CMsgJoinableCustomGameModesRequest {
- optional uint32 server_region = 1;
+ optional uint32 server_region = 1;
}
message CMsgJoinableCustomGameModesResponseEntry {
- optional uint64 custom_game_id = 1;
- optional uint32 lobby_count = 2;
- optional uint32 player_count = 3;
+ optional uint64 custom_game_id = 1;
+ optional uint32 lobby_count = 2;
+ optional uint32 player_count = 3;
}
message CMsgJoinableCustomGameModesResponse {
- repeated .CMsgJoinableCustomGameModesResponseEntry game_modes = 1;
+ repeated .CMsgJoinableCustomGameModesResponseEntry game_modes = 1;
}
message CMsgJoinableCustomLobbiesRequest {
- optional uint32 server_region = 1;
- optional uint64 custom_game_id = 2;
+ optional uint32 server_region = 1;
+ optional uint64 custom_game_id = 2;
}
message CMsgJoinableCustomLobbiesResponseEntry {
- optional fixed64 lobby_id = 1;
- optional uint64 custom_game_id = 2;
- optional string lobby_name = 3;
- optional uint32 member_count = 4;
- optional uint32 leader_account_id = 5;
- optional string leader_name = 6;
- optional string custom_map_name = 7;
- optional uint32 max_player_count = 8;
- optional uint32 server_region = 9;
- optional bool has_pass_key = 11;
- optional string lan_host_ping_location = 12;
- optional uint32 lobby_creation_time = 13;
- optional uint32 custom_game_timestamp = 14;
- optional uint64 custom_game_crc = 15;
- optional uint32 min_player_count = 16;
- optional bool penalties_enabled = 17;
+ optional fixed64 lobby_id = 1;
+ optional uint64 custom_game_id = 2;
+ optional string lobby_name = 3;
+ optional uint32 member_count = 4;
+ optional uint32 leader_account_id = 5;
+ optional string leader_name = 6;
+ optional string custom_map_name = 7;
+ optional uint32 max_player_count = 8;
+ optional uint32 server_region = 9;
+ optional bool has_pass_key = 11;
+ optional string lan_host_ping_location = 12;
+ optional uint32 lobby_creation_time = 13;
+ optional uint32 custom_game_timestamp = 14;
+ optional uint64 custom_game_crc = 15;
+ optional uint32 min_player_count = 16;
+ optional bool penalties_enabled = 17;
}
message CMsgJoinableCustomLobbiesResponse {
- repeated .CMsgJoinableCustomLobbiesResponseEntry lobbies = 1;
+ repeated .CMsgJoinableCustomLobbiesResponseEntry lobbies = 1;
}
message CMsgQuickJoinCustomLobby {
- message LegacyRegionPing {
- optional uint32 server_region = 1;
- optional uint32 ping = 2;
- optional fixed32 region_code = 3;
- }
+ message LegacyRegionPing {
+ optional uint32 server_region = 1;
+ optional uint32 ping = 2;
+ optional fixed32 region_code = 3;
+ }
- optional uint32 legacy_server_region = 1;
- optional uint64 custom_game_id = 2;
- optional uint32 client_version = 3;
- optional .CMsgPracticeLobbySetDetails create_lobby_details = 4;
- optional bool allow_any_map = 5;
- repeated .CMsgQuickJoinCustomLobby.LegacyRegionPing legacy_region_pings = 6;
- optional .CMsgClientPingData ping_data = 7;
+ optional uint32 legacy_server_region = 1;
+ optional uint64 custom_game_id = 2;
+ optional uint32 client_version = 3;
+ optional .CMsgPracticeLobbySetDetails create_lobby_details = 4;
+ optional bool allow_any_map = 5;
+ repeated .CMsgQuickJoinCustomLobby.LegacyRegionPing legacy_region_pings = 6;
+ optional .CMsgClientPingData ping_data = 7;
}
message CMsgQuickJoinCustomLobbyResponse {
- optional .DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
+ optional .DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
}
message CMsgBotGameCreate {
- optional string search_key = 1;
- optional uint32 client_version = 2;
- optional .DOTABotDifficulty difficulty_radiant = 3 [default = BOT_DIFFICULTY_PASSIVE];
- optional .DOTA_GC_TEAM team = 4 [default = DOTA_GC_TEAM_GOOD_GUYS];
- optional uint32 game_mode = 5;
- optional .DOTABotDifficulty difficulty_dire = 6 [default = BOT_DIFFICULTY_PASSIVE];
+ optional string search_key = 1;
+ optional uint32 client_version = 2;
+ optional .DOTABotDifficulty difficulty_radiant = 3 [default = BOT_DIFFICULTY_PASSIVE];
+ optional .DOTA_GC_TEAM team = 4 [default = DOTA_GC_TEAM_GOOD_GUYS];
+ optional uint32 game_mode = 5;
+ optional .DOTABotDifficulty difficulty_dire = 6 [default = BOT_DIFFICULTY_PASSIVE];
}
message CMsgDOTAPartyMemberSetCoach {
- optional bool wants_coach = 1;
+ optional bool wants_coach = 1;
}
message CMsgDOTASetGroupLeader {
- optional fixed64 new_leader_steamid = 1;
+ optional fixed64 new_leader_steamid = 1;
}
message CMsgDOTACancelGroupInvites {
- repeated fixed64 invited_steamids = 1;
- repeated fixed64 invited_groupids = 2;
+ repeated fixed64 invited_steamids = 1;
+ repeated fixed64 invited_groupids = 2;
}
message CMsgDOTASetGroupOpenStatus {
- optional bool open = 1;
+ optional bool open = 1;
}
message CMsgDOTAGroupMergeInvite {
- optional fixed64 other_group_id = 1;
+ optional fixed64 other_group_id = 1;
}
message CMsgDOTAGroupMergeResponse {
- optional fixed64 initiator_group_id = 1;
- optional bool accept = 2;
+ optional fixed64 initiator_group_id = 1;
+ optional bool accept = 2;
}
message CMsgDOTAGroupMergeReply {
- optional .EDOTAGroupMergeResult result = 1 [default = k_EDOTAGroupMergeResult_OK];
+ optional .EDOTAGroupMergeResult result = 1 [default = k_EDOTAGroupMergeResult_OK];
}
message CMsgSpectatorLobbyGameDetails {
- message Team {
- optional uint32 team_id = 1;
- optional string team_name = 2;
- optional fixed64 team_logo = 3;
- }
-
- optional uint32 language = 1;
- optional uint64 match_id = 2;
- optional fixed64 server_steam_id = 3;
- optional string stream_url = 4;
- optional string stream_name = 5;
- optional uint32 league_id = 6;
- optional uint32 series_type = 7;
- optional uint32 series_game = 8;
- optional .CMsgSpectatorLobbyGameDetails.Team radiant_team = 9;
- optional .CMsgSpectatorLobbyGameDetails.Team dire_team = 10;
+ message Team {
+ optional uint32 team_id = 1;
+ optional string team_name = 2;
+ optional fixed64 team_logo = 3;
+ }
+
+ optional uint32 language = 1;
+ optional uint64 match_id = 2;
+ optional fixed64 server_steam_id = 3;
+ optional string stream_url = 4;
+ optional string stream_name = 5;
+ optional uint32 league_id = 6;
+ optional uint32 series_type = 7;
+ optional uint32 series_game = 8;
+ optional .CMsgSpectatorLobbyGameDetails.Team radiant_team = 9;
+ optional .CMsgSpectatorLobbyGameDetails.Team dire_team = 10;
}
message CMsgSetSpectatorLobbyDetails {
- optional uint64 lobby_id = 1;
- optional string lobby_name = 2;
- optional string pass_key = 3;
- optional .CMsgSpectatorLobbyGameDetails game_details = 4;
+ optional uint64 lobby_id = 1;
+ optional string lobby_name = 2;
+ optional string pass_key = 3;
+ optional .CMsgSpectatorLobbyGameDetails game_details = 4;
}
message CMsgCreateSpectatorLobby {
- optional uint32 client_version = 1;
- optional .CMsgSetSpectatorLobbyDetails details = 2;
+ optional uint32 client_version = 1;
+ optional .CMsgSetSpectatorLobbyDetails details = 2;
}
message CMsgSpectatorLobbyList {
}
message CMsgSpectatorLobbyListResponse {
- message SpectatorLobby {
- optional uint64 lobby_id = 1;
- optional string game_name = 2;
- optional bool requires_pass_key = 3;
- optional uint32 leader_account_id = 4;
- optional uint32 member_count = 5;
- optional .CMsgSpectatorLobbyGameDetails game_details = 7;
- }
+ message SpectatorLobby {
+ optional uint64 lobby_id = 1;
+ optional string game_name = 2;
+ optional bool requires_pass_key = 3;
+ optional uint32 leader_account_id = 4;
+ optional uint32 member_count = 5;
+ optional .CMsgSpectatorLobbyGameDetails game_details = 7;
+ }
- repeated .CMsgSpectatorLobbyListResponse.SpectatorLobby lobbies = 1;
+ repeated .CMsgSpectatorLobbyListResponse.SpectatorLobby lobbies = 1;
}
message CMsgClientToGCRequestSteamDatagramTicket {
- optional fixed64 server_steam_id = 1;
+ optional fixed64 server_steam_id = 1;
}
message CMsgClientToGCRequestSteamDatagramTicketResponse {
- optional bytes serialized_ticket = 1;
- optional string message = 2;
+ optional bytes serialized_ticket = 1;
+ optional string message = 2;
}
message CMsgGCToClientSteamDatagramTicket {
- optional fixed32 legacy_time_expiry = 1;
- optional fixed64 legacy_authorized_steam_id = 2;
- optional fixed32 legacy_authorized_public_ip = 3;
- optional fixed64 legacy_gameserver_steam_id = 4;
- optional fixed64 legacy_gameserver_net_id = 5;
- optional bytes legacy_signature = 6;
- optional uint32 legacy_app_id = 7;
- repeated bytes legacy_extra_fields = 8;
- optional bytes serialized_ticket = 16;
+ optional fixed32 legacy_time_expiry = 1;
+ optional fixed64 legacy_authorized_steam_id = 2;
+ optional fixed32 legacy_authorized_public_ip = 3;
+ optional fixed64 legacy_gameserver_steam_id = 4;
+ optional fixed64 legacy_gameserver_net_id = 5;
+ optional bytes legacy_signature = 6;
+ optional uint32 legacy_app_id = 7;
+ repeated bytes legacy_extra_fields = 8;
+ optional bytes serialized_ticket = 16;
}
message CMsgGCToClientRequestLaneSelection {
}
message CMsgGCToClientRequestLaneSelectionResponse {
- optional uint32 lane_selection_flags = 1;
- optional bool high_priority_disabled = 2;
+ optional uint32 lane_selection_flags = 1;
+ optional bool high_priority_disabled = 2;
}
message CMsgGCToClientRequestMMInfo {
}
message CMsgClientToGCMMInfo {
- optional uint32 lane_selection_flags = 1;
- optional bool high_priority_disabled = 2;
+ optional uint32 lane_selection_flags = 1;
+ optional bool high_priority_disabled = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_team.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_team.proto
index b14115ad..e9af7079 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_team.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_team.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_tournament.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_tournament.proto
index 8be9fae2..a78a3c80 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_tournament.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_tournament.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_client_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,173 +7,173 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ETournamentEvent {
- k_ETournamentEvent_None = 0;
- k_ETournamentEvent_TournamentCreated = 1;
- k_ETournamentEvent_TournamentsMerged = 2;
- k_ETournamentEvent_GameOutcome = 3;
- k_ETournamentEvent_TeamGivenBye = 4;
- k_ETournamentEvent_TournamentCanceledByAdmin = 5;
- k_ETournamentEvent_TeamAbandoned = 6;
- k_ETournamentEvent_ScheduledGameStarted = 7;
- k_ETournamentEvent_Canceled = 8;
- k_ETournamentEvent_TeamParticipationTimedOut_EntryFeeRefund = 9;
- k_ETournamentEvent_TeamParticipationTimedOut_EntryFeeForfeit = 10;
- k_ETournamentEvent_TeamParticipationTimedOut_GrantedVictory = 11;
+ k_ETournamentEvent_None = 0;
+ k_ETournamentEvent_TournamentCreated = 1;
+ k_ETournamentEvent_TournamentsMerged = 2;
+ k_ETournamentEvent_GameOutcome = 3;
+ k_ETournamentEvent_TeamGivenBye = 4;
+ k_ETournamentEvent_TournamentCanceledByAdmin = 5;
+ k_ETournamentEvent_TeamAbandoned = 6;
+ k_ETournamentEvent_ScheduledGameStarted = 7;
+ k_ETournamentEvent_Canceled = 8;
+ k_ETournamentEvent_TeamParticipationTimedOut_EntryFeeRefund = 9;
+ k_ETournamentEvent_TeamParticipationTimedOut_EntryFeeForfeit = 10;
+ k_ETournamentEvent_TeamParticipationTimedOut_GrantedVictory = 11;
}
message CMsgRequestWeekendTourneySchedule {
}
message CMsgWeekendTourneySchedule {
- message Division {
- optional uint32 division_code = 1;
- optional uint32 time_window_open = 2;
- optional uint32 time_window_close = 3;
- optional uint32 time_window_open_next = 4;
- optional uint32 trophy_id = 5;
- optional bool free_weekend = 6;
- }
-
- repeated .CMsgWeekendTourneySchedule.Division divisions = 1;
+ message Division {
+ optional uint32 division_code = 1;
+ optional uint32 time_window_open = 2;
+ optional uint32 time_window_close = 3;
+ optional uint32 time_window_open_next = 4;
+ optional uint32 trophy_id = 5;
+ optional bool free_weekend = 6;
+ }
+
+ repeated .CMsgWeekendTourneySchedule.Division divisions = 1;
}
message CMsgWeekendTourneyOpts {
- optional bool participating = 1;
- optional uint32 division_id = 2;
- optional uint32 buyin = 3;
- optional uint32 skill_level = 4;
- optional uint32 match_groups = 5;
- optional uint32 team_id = 6;
- optional string pickup_team_name = 7;
- optional uint64 pickup_team_logo = 8;
+ optional bool participating = 1;
+ optional uint32 division_id = 2;
+ optional uint32 buyin = 3;
+ optional uint32 skill_level = 4;
+ optional uint32 match_groups = 5;
+ optional uint32 team_id = 6;
+ optional string pickup_team_name = 7;
+ optional uint64 pickup_team_logo = 8;
}
message CMsgWeekendTourneyLeave {
}
message CMsgDOTATournament {
- message Team {
- optional fixed64 team_gid = 1;
- optional uint32 node_or_state = 2;
- repeated uint32 players = 3 [packed = true];
- repeated uint32 player_buyin = 9 [packed = true];
- repeated uint32 player_skill_level = 10 [packed = true];
- optional uint32 match_group_mask = 12;
- optional uint32 team_id = 4;
- optional string team_name = 5;
- optional uint64 team_base_logo = 7;
- optional uint64 team_ui_logo = 8;
- }
-
- message Game {
- optional uint32 node_idx = 1;
- optional fixed64 lobby_id = 2;
- optional uint64 match_id = 3;
- optional bool team_a_good = 4;
- optional .ETournamentGameState state = 5 [default = k_ETournamentGameState_Unknown];
- optional uint32 start_time = 6;
- }
-
- message Node {
- optional uint32 node_id = 1;
- optional uint32 team_idx_a = 2;
- optional uint32 team_idx_b = 3;
- optional .ETournamentNodeState node_state = 4 [default = k_ETournamentNodeState_Unknown];
- }
-
- optional uint32 tournament_id = 1;
- optional uint32 division_id = 2;
- optional uint32 schedule_time = 3;
- optional uint32 skill_level = 4;
- optional .ETournamentTemplate tournament_template = 5 [default = k_ETournamentTemplate_None];
- optional .ETournamentState state = 6 [default = k_ETournamentState_Unknown];
- optional uint32 state_seq_num = 10;
- optional uint32 season_trophy_id = 11;
- repeated .CMsgDOTATournament.Team teams = 7;
- repeated .CMsgDOTATournament.Game games = 8;
- repeated .CMsgDOTATournament.Node nodes = 9;
+ message Team {
+ optional fixed64 team_gid = 1;
+ optional uint32 node_or_state = 2;
+ repeated uint32 players = 3 [packed = true];
+ repeated uint32 player_buyin = 9 [packed = true];
+ repeated uint32 player_skill_level = 10 [packed = true];
+ optional uint32 match_group_mask = 12;
+ optional uint32 team_id = 4;
+ optional string team_name = 5;
+ optional uint64 team_base_logo = 7;
+ optional uint64 team_ui_logo = 8;
+ }
+
+ message Game {
+ optional uint32 node_idx = 1;
+ optional fixed64 lobby_id = 2;
+ optional uint64 match_id = 3;
+ optional bool team_a_good = 4;
+ optional .ETournamentGameState state = 5 [default = k_ETournamentGameState_Unknown];
+ optional uint32 start_time = 6;
+ }
+
+ message Node {
+ optional uint32 node_id = 1;
+ optional uint32 team_idx_a = 2;
+ optional uint32 team_idx_b = 3;
+ optional .ETournamentNodeState node_state = 4 [default = k_ETournamentNodeState_Unknown];
+ }
+
+ optional uint32 tournament_id = 1;
+ optional uint32 division_id = 2;
+ optional uint32 schedule_time = 3;
+ optional uint32 skill_level = 4;
+ optional .ETournamentTemplate tournament_template = 5 [default = k_ETournamentTemplate_None];
+ optional .ETournamentState state = 6 [default = k_ETournamentState_Unknown];
+ optional uint32 state_seq_num = 10;
+ optional uint32 season_trophy_id = 11;
+ repeated .CMsgDOTATournament.Team teams = 7;
+ repeated .CMsgDOTATournament.Game games = 8;
+ repeated .CMsgDOTATournament.Node nodes = 9;
}
message CMsgDOTATournamentStateChange {
- message GameChange {
- optional uint64 match_id = 1;
- optional .ETournamentGameState new_state = 2 [default = k_ETournamentGameState_Unknown];
- }
-
- message TeamChange {
- optional uint64 team_gid = 1;
- optional uint32 new_node_or_state = 2;
- optional uint32 old_node_or_state = 3;
- }
-
- optional uint32 new_tournament_id = 1;
- optional .ETournamentEvent event = 2 [default = k_ETournamentEvent_None];
- optional .ETournamentState new_tournament_state = 3 [default = k_ETournamentState_Unknown];
- repeated .CMsgDOTATournamentStateChange.GameChange game_changes = 4;
- repeated .CMsgDOTATournamentStateChange.TeamChange team_changes = 5;
- repeated uint32 merged_tournament_ids = 6 [packed = true];
- optional uint32 state_seq_num = 7;
+ message GameChange {
+ optional uint64 match_id = 1;
+ optional .ETournamentGameState new_state = 2 [default = k_ETournamentGameState_Unknown];
+ }
+
+ message TeamChange {
+ optional uint64 team_gid = 1;
+ optional uint32 new_node_or_state = 2;
+ optional uint32 old_node_or_state = 3;
+ }
+
+ optional uint32 new_tournament_id = 1;
+ optional .ETournamentEvent event = 2 [default = k_ETournamentEvent_None];
+ optional .ETournamentState new_tournament_state = 3 [default = k_ETournamentState_Unknown];
+ repeated .CMsgDOTATournamentStateChange.GameChange game_changes = 4;
+ repeated .CMsgDOTATournamentStateChange.TeamChange team_changes = 5;
+ repeated uint32 merged_tournament_ids = 6 [packed = true];
+ optional uint32 state_seq_num = 7;
}
message CMsgDOTAWeekendTourneyPlayerSkillLevelStats {
- optional uint32 skill_level = 1;
- optional uint32 times_won_0 = 2;
- optional uint32 times_won_1 = 3;
- optional uint32 times_won_2 = 4;
- optional uint32 times_won_3 = 5;
- optional uint32 times_bye_and_lost = 6;
- optional uint32 times_bye_and_won = 7;
- optional uint32 times_unusual_champ = 10;
- optional uint32 total_games_won = 8;
- optional uint32 score = 9;
+ optional uint32 skill_level = 1;
+ optional uint32 times_won_0 = 2;
+ optional uint32 times_won_1 = 3;
+ optional uint32 times_won_2 = 4;
+ optional uint32 times_won_3 = 5;
+ optional uint32 times_bye_and_lost = 6;
+ optional uint32 times_bye_and_won = 7;
+ optional uint32 times_unusual_champ = 10;
+ optional uint32 total_games_won = 8;
+ optional uint32 score = 9;
}
message CMsgDOTAWeekendTourneyPlayerStats {
- optional uint32 account_id = 1;
- optional uint32 season_trophy_id = 2;
- repeated .CMsgDOTAWeekendTourneyPlayerSkillLevelStats skill_levels = 3;
- optional uint32 current_tier = 4;
+ optional uint32 account_id = 1;
+ optional uint32 season_trophy_id = 2;
+ repeated .CMsgDOTAWeekendTourneyPlayerSkillLevelStats skill_levels = 3;
+ optional uint32 current_tier = 4;
}
message CMsgDOTAWeekendTourneyPlayerStatsRequest {
- optional uint32 account_id = 1;
- optional uint32 season_trophy_id = 2;
+ optional uint32 account_id = 1;
+ optional uint32 season_trophy_id = 2;
}
message CMsgDOTAWeekendTourneyPlayerHistory {
- message Tournament {
- optional uint32 tournament_id = 1;
- optional uint32 start_time = 2;
- optional uint32 tournament_tier = 3;
- optional uint32 team_id = 4;
- optional uint32 team_date = 5;
- optional uint32 team_result = 6;
- repeated uint32 account_id = 7;
- optional string team_name = 8;
- optional uint32 season_trophy_id = 9;
- }
-
- optional uint32 account_id = 1;
- repeated .CMsgDOTAWeekendTourneyPlayerHistory.Tournament tournaments = 3;
+ message Tournament {
+ optional uint32 tournament_id = 1;
+ optional uint32 start_time = 2;
+ optional uint32 tournament_tier = 3;
+ optional uint32 team_id = 4;
+ optional uint32 team_date = 5;
+ optional uint32 team_result = 6;
+ repeated uint32 account_id = 7;
+ optional string team_name = 8;
+ optional uint32 season_trophy_id = 9;
+ }
+
+ optional uint32 account_id = 1;
+ repeated .CMsgDOTAWeekendTourneyPlayerHistory.Tournament tournaments = 3;
}
message CMsgDOTAWeekendTourneyParticipationDetails {
- message Tier {
- optional uint32 tier = 1;
- optional uint32 players = 2;
- optional uint32 teams = 3;
- optional uint32 winning_teams = 4;
- optional uint32 players_streak_2 = 5;
- optional uint32 players_streak_3 = 6;
- optional uint32 players_streak_4 = 7;
- optional uint32 players_streak_5 = 8;
- }
-
- message Division {
- optional uint32 division_id = 1;
- optional uint32 schedule_time = 2;
- repeated .CMsgDOTAWeekendTourneyParticipationDetails.Tier tiers = 3;
- }
-
- repeated .CMsgDOTAWeekendTourneyParticipationDetails.Division divisions = 1;
+ message Tier {
+ optional uint32 tier = 1;
+ optional uint32 players = 2;
+ optional uint32 teams = 3;
+ optional uint32 winning_teams = 4;
+ optional uint32 players_streak_2 = 5;
+ optional uint32 players_streak_3 = 6;
+ optional uint32 players_streak_4 = 7;
+ optional uint32 players_streak_5 = 8;
+ }
+
+ message Division {
+ optional uint32 division_id = 1;
+ optional uint32 schedule_time = 2;
+ repeated .CMsgDOTAWeekendTourneyParticipationDetails.Tier tiers = 3;
+ }
+
+ repeated .CMsgDOTAWeekendTourneyParticipationDetails.Division divisions = 1;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_watch.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_watch.proto
index 51d22672..32fdb49d 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_watch.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_client_watch.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,71 +7,71 @@ option optimize_for = SPEED;
option java_generic_services = false;
message CSourceTVGameSmall {
- message Player {
- optional uint32 account_id = 1;
- optional int32 hero_id = 2;
- optional uint32 team_slot = 3;
- optional uint32 team = 4;
- }
-
- optional uint32 activate_time = 1;
- optional uint32 deactivate_time = 2;
- optional uint64 server_steam_id = 3;
- optional uint64 lobby_id = 4;
- optional uint32 league_id = 5;
- optional uint32 lobby_type = 6;
- optional int32 game_time = 7;
- optional uint32 delay = 8;
- optional uint32 spectators = 9;
- optional uint32 game_mode = 10;
- optional uint32 average_mmr = 11;
- optional uint64 match_id = 12;
- optional uint32 series_id = 13;
- optional string team_name_radiant = 15;
- optional string team_name_dire = 16;
- optional fixed64 team_logo_radiant = 24;
- optional fixed64 team_logo_dire = 25;
- optional uint32 team_id_radiant = 30;
- optional uint32 team_id_dire = 31;
- optional uint32 sort_score = 17;
- optional float last_update_time = 18;
- optional int32 radiant_lead = 19;
- optional uint32 radiant_score = 20;
- optional uint32 dire_score = 21;
- repeated .CSourceTVGameSmall.Player players = 22;
- optional fixed32 building_state = 23;
- optional uint32 weekend_tourney_tournament_id = 26;
- optional uint32 weekend_tourney_division = 27;
- optional uint32 weekend_tourney_skill_level = 28;
- optional uint32 weekend_tourney_bracket_round = 29;
- optional uint32 custom_game_difficulty = 32;
- optional bool is_player_draft = 33;
- optional bool is_watch_eligible = 34;
+ message Player {
+ optional uint32 account_id = 1;
+ optional int32 hero_id = 2;
+ optional uint32 team_slot = 3;
+ optional uint32 team = 4;
+ }
+
+ optional uint32 activate_time = 1;
+ optional uint32 deactivate_time = 2;
+ optional uint64 server_steam_id = 3;
+ optional uint64 lobby_id = 4;
+ optional uint32 league_id = 5;
+ optional uint32 lobby_type = 6;
+ optional int32 game_time = 7;
+ optional uint32 delay = 8;
+ optional uint32 spectators = 9;
+ optional uint32 game_mode = 10;
+ optional uint32 average_mmr = 11;
+ optional uint64 match_id = 12;
+ optional uint32 series_id = 13;
+ optional string team_name_radiant = 15;
+ optional string team_name_dire = 16;
+ optional fixed64 team_logo_radiant = 24;
+ optional fixed64 team_logo_dire = 25;
+ optional uint32 team_id_radiant = 30;
+ optional uint32 team_id_dire = 31;
+ optional uint32 sort_score = 17;
+ optional float last_update_time = 18;
+ optional int32 radiant_lead = 19;
+ optional uint32 radiant_score = 20;
+ optional uint32 dire_score = 21;
+ repeated .CSourceTVGameSmall.Player players = 22;
+ optional fixed32 building_state = 23;
+ optional uint32 weekend_tourney_tournament_id = 26;
+ optional uint32 weekend_tourney_division = 27;
+ optional uint32 weekend_tourney_skill_level = 28;
+ optional uint32 weekend_tourney_bracket_round = 29;
+ optional uint32 custom_game_difficulty = 32;
+ optional bool is_player_draft = 33;
+ optional bool is_watch_eligible = 34;
}
message CMsgClientToGCFindTopSourceTVGames {
- optional string search_key = 1;
- optional uint32 league_id = 2;
- optional int32 hero_id = 3;
- optional uint32 start_game = 4;
- optional uint32 game_list_index = 5;
- repeated uint64 lobby_ids = 6;
+ optional string search_key = 1;
+ optional uint32 league_id = 2;
+ optional int32 hero_id = 3;
+ optional uint32 start_game = 4;
+ optional uint32 game_list_index = 5;
+ repeated uint64 lobby_ids = 6;
}
message CMsgGCToClientFindTopSourceTVGamesResponse {
- optional string search_key = 1;
- optional uint32 league_id = 2;
- optional int32 hero_id = 3;
- optional uint32 start_game = 4;
- optional uint32 num_games = 5;
- optional uint32 game_list_index = 6;
- repeated .CSourceTVGameSmall game_list = 7;
- optional bool specific_games = 8;
- optional .CSourceTVGameSmall bot_game = 9;
+ optional string search_key = 1;
+ optional uint32 league_id = 2;
+ optional int32 hero_id = 3;
+ optional uint32 start_game = 4;
+ optional uint32 num_games = 5;
+ optional uint32 game_list_index = 6;
+ repeated .CSourceTVGameSmall game_list = 7;
+ optional bool specific_games = 8;
+ optional .CSourceTVGameSmall bot_game = 9;
}
message CMsgGCToClientTopWeekendTourneyGames {
- repeated .CSourceTVGameSmall live_games = 1;
+ repeated .CSourceTVGameSmall live_games = 1;
}
message CMsgClientToGCTopLeagueMatchesRequest {
@@ -80,134 +81,134 @@ message CMsgClientToGCTopFriendMatchesRequest {
}
message CMsgClientToGCMatchesMinimalRequest {
- repeated uint64 match_ids = 1;
+ repeated uint64 match_ids = 1;
}
message CMsgClientToGCMatchesMinimalResponse {
- repeated .CMsgDOTAMatchMinimal matches = 1;
- optional bool last_match = 2;
+ repeated .CMsgDOTAMatchMinimal matches = 1;
+ optional bool last_match = 2;
}
message CMsgGCToClientTopLeagueMatchesResponse {
- repeated .CMsgDOTAMatchMinimal matches = 2;
+ repeated .CMsgDOTAMatchMinimal matches = 2;
}
message CMsgGCToClientTopFriendMatchesResponse {
- repeated .CMsgDOTAMatchMinimal matches = 1;
+ repeated .CMsgDOTAMatchMinimal matches = 1;
}
message CMsgSpectateFriendGame {
- optional fixed64 steam_id = 1;
- optional bool live = 2;
+ optional fixed64 steam_id = 1;
+ optional bool live = 2;
}
message CMsgSpectateFriendGameResponse {
- enum EWatchLiveResult {
- SUCCESS = 0;
- ERROR_GENERIC = 1;
- ERROR_NO_PLUS = 2;
- ERROR_NOT_FRIENDS = 3;
- ERROR_LOBBY_NOT_FOUND = 4;
- ERROR_SPECTATOR_IN_A_LOBBY = 5;
- ERROR_LOBBY_IS_LAN = 6;
- ERROR_WRONG_LOBBY_TYPE = 7;
- ERROR_WRONG_LOBBY_STATE = 8;
- ERROR_PLAYER_NOT_PLAYER = 9;
- ERROR_TOO_MANY_SPECTATORS = 10;
- ERROR_SPECTATOR_SWITCHED_TEAMS = 11;
- ERROR_FRIENDS_ON_BOTH_SIDES = 12;
- ERROR_SPECTATOR_IN_THIS_LOBBY = 13;
- ERROR_LOBBY_IS_LEAGUE = 14;
- }
-
- optional fixed64 server_steamid = 4;
- optional .CMsgSpectateFriendGameResponse.EWatchLiveResult watch_live_result = 5 [default = SUCCESS];
+ enum EWatchLiveResult {
+ SUCCESS = 0;
+ ERROR_GENERIC = 1;
+ ERROR_NO_PLUS = 2;
+ ERROR_NOT_FRIENDS = 3;
+ ERROR_LOBBY_NOT_FOUND = 4;
+ ERROR_SPECTATOR_IN_A_LOBBY = 5;
+ ERROR_LOBBY_IS_LAN = 6;
+ ERROR_WRONG_LOBBY_TYPE = 7;
+ ERROR_WRONG_LOBBY_STATE = 8;
+ ERROR_PLAYER_NOT_PLAYER = 9;
+ ERROR_TOO_MANY_SPECTATORS = 10;
+ ERROR_SPECTATOR_SWITCHED_TEAMS = 11;
+ ERROR_FRIENDS_ON_BOTH_SIDES = 12;
+ ERROR_SPECTATOR_IN_THIS_LOBBY = 13;
+ ERROR_LOBBY_IS_LEAGUE = 14;
+ }
+
+ optional fixed64 server_steamid = 4;
+ optional .CMsgSpectateFriendGameResponse.EWatchLiveResult watch_live_result = 5 [default = SUCCESS];
}
message CDOTAReplayDownloadInfo {
- message Highlight {
- optional uint32 timestamp = 1;
- optional string description = 2;
- }
+ message Highlight {
+ optional uint32 timestamp = 1;
+ optional string description = 2;
+ }
- optional .CMsgDOTAMatchMinimal match = 1;
- optional string title = 2;
- optional string description = 3;
- optional uint32 size = 4;
- repeated string tags = 5;
- optional bool exists_on_disk = 6;
+ optional .CMsgDOTAMatchMinimal match = 1;
+ optional string title = 2;
+ optional string description = 3;
+ optional uint32 size = 4;
+ repeated string tags = 5;
+ optional bool exists_on_disk = 6;
}
message CMsgWatchGame {
- optional fixed64 server_steamid = 1;
- optional uint32 client_version = 2;
- optional fixed64 watch_server_steamid = 3;
- optional uint64 lobby_id = 4;
- repeated uint32 regions = 5;
+ optional fixed64 server_steamid = 1;
+ optional uint32 client_version = 2;
+ optional fixed64 watch_server_steamid = 3;
+ optional uint64 lobby_id = 4;
+ repeated uint32 regions = 5;
}
message CMsgCancelWatchGame {
}
message CMsgWatchGameResponse {
- enum WatchGameResult {
- PENDING = 0;
- READY = 1;
- GAMESERVERNOTFOUND = 2;
- UNAVAILABLE = 3;
- CANCELLED = 4;
- INCOMPATIBLEVERSION = 5;
- MISSINGLEAGUESUBSCRIPTION = 6;
- LOBBYNOTFOUND = 7;
- }
-
- optional .CMsgWatchGameResponse.WatchGameResult watch_game_result = 1 [default = PENDING];
- optional uint32 source_tv_public_addr = 2;
- optional uint32 source_tv_private_addr = 3;
- optional uint32 source_tv_port = 4;
- optional fixed64 game_server_steamid = 5;
- optional fixed64 watch_server_steamid = 6;
- optional fixed64 watch_tv_unique_secret_code = 7;
- optional string broadcast_url = 8;
+ enum WatchGameResult {
+ PENDING = 0;
+ READY = 1;
+ GAMESERVERNOTFOUND = 2;
+ UNAVAILABLE = 3;
+ CANCELLED = 4;
+ INCOMPATIBLEVERSION = 5;
+ MISSINGLEAGUESUBSCRIPTION = 6;
+ LOBBYNOTFOUND = 7;
+ }
+
+ optional .CMsgWatchGameResponse.WatchGameResult watch_game_result = 1 [default = PENDING];
+ optional uint32 source_tv_public_addr = 2;
+ optional uint32 source_tv_private_addr = 3;
+ optional uint32 source_tv_port = 4;
+ optional fixed64 game_server_steamid = 5;
+ optional fixed64 watch_server_steamid = 6;
+ optional fixed64 watch_tv_unique_secret_code = 7;
+ optional string broadcast_url = 8;
}
message CMsgPartyLeaderWatchGamePrompt {
- optional fixed64 game_server_steamid = 5;
+ optional fixed64 game_server_steamid = 5;
}
message CDOTABroadcasterInfo {
- optional uint32 account_id = 1;
- optional fixed64 server_steam_id = 2;
- optional bool live = 3;
- optional string team_name_radiant = 4;
- optional string team_name_dire = 5;
- optional uint32 series_game = 7;
- optional uint32 upcoming_broadcast_timestamp = 9;
- optional bool allow_live_video = 10;
- optional uint32 node_type = 11;
- optional string node_name = 12;
+ optional uint32 account_id = 1;
+ optional fixed64 server_steam_id = 2;
+ optional bool live = 3;
+ optional string team_name_radiant = 4;
+ optional string team_name_dire = 5;
+ optional uint32 series_game = 7;
+ optional uint32 upcoming_broadcast_timestamp = 9;
+ optional bool allow_live_video = 10;
+ optional uint32 node_type = 11;
+ optional string node_name = 12;
}
message CMsgDOTASeries {
- message TeamInfo {
- optional uint32 team_id = 1;
- optional string team_name = 2;
- optional string team_logo_url = 3;
- optional uint32 wager_count = 4;
- }
-
- message LiveGame {
- optional fixed64 server_steam_id = 1;
- optional .CMsgDOTASeries.TeamInfo team_radiant = 2;
- optional .CMsgDOTASeries.TeamInfo team_dire = 3;
- optional uint32 team_radiant_score = 4;
- optional uint32 team_dire_score = 5;
- }
-
- optional uint32 series_id = 1;
- optional uint32 series_type = 2;
- optional .CMsgDOTASeries.TeamInfo team_1 = 3;
- optional .CMsgDOTASeries.TeamInfo team_2 = 4;
- repeated .CMsgDOTAMatchMinimal match_minimal = 5;
- optional .CMsgDOTASeries.LiveGame live_game = 6;
+ message TeamInfo {
+ optional uint32 team_id = 1;
+ optional string team_name = 2;
+ optional string team_logo_url = 3;
+ optional uint32 wager_count = 4;
+ }
+
+ message LiveGame {
+ optional fixed64 server_steam_id = 1;
+ optional .CMsgDOTASeries.TeamInfo team_radiant = 2;
+ optional .CMsgDOTASeries.TeamInfo team_dire = 3;
+ optional uint32 team_radiant_score = 4;
+ optional uint32 team_dire_score = 5;
+ }
+
+ optional uint32 series_id = 1;
+ optional uint32 series_type = 2;
+ optional .CMsgDOTASeries.TeamInfo team_1 = 3;
+ optional .CMsgDOTASeries.TeamInfo team_2 = 4;
+ repeated .CMsgDOTAMatchMinimal match_minimal = 5;
+ optional .CMsgDOTASeries.LiveGame live_game = 6;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto
index 0c2e544f..47779680 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto
@@ -2,6 +2,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -301,6 +302,7 @@ message CMatchPlayerTimedStats {
optional uint32 triple_kills = 40;
optional uint32 rampages = 41;
repeated .CMatchPlayerTimedCustomStat custom_stats = 42;
+ optional uint32 summon_kill_gold = 43;
}
message CMatchTeamTimedStats {
@@ -1362,6 +1364,7 @@ message CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse {
k_eSuccess = 1;
k_eTooBusy = 2;
k_eDisabled = 3;
+ k_eForbidden = 4;
}
optional .CMsgServerToGCRequestPlayerRecentAccomplishmentsResponse.EResponse result = 1 [default = k_eInternalError];
@@ -1615,6 +1618,7 @@ message CMsgGameDataItemAbilityList {
optional bool is_earlygame_suggested = 7;
optional bool is_lategame_suggested = 8;
repeated .CMsgGameDataItemAbilityList.ItemAbilityInfo.Recipe recipes = 9;
+ optional bool is_innate = 10;
}
repeated .CMsgGameDataItemAbilityList.ItemAbilityInfo itemabilities = 1;
@@ -1865,19 +1869,11 @@ message CDotaMsgStructuredTooltipProperties {
}
}
- message FacetDisplayProperties {
- optional string facet_name_loc_token = 1;
- optional string facet_desc_loc_token = 2;
- optional string facet_icon_style_name = 3;
- optional string facet_color_style_name = 4;
- optional string facet_gradient_style_name = 5;
- }
-
message Attribute {
- optional string name_loc_token = 1;
- optional .CDotaMsgStructuredTooltipProperties.EAttributeType type = 2 [default = kUnknown];
- optional .CDotaMsgStructuredTooltipProperties.AttributeValue value = 3;
- optional .CDotaMsgStructuredTooltipProperties.FacetDisplayProperties facet = 4;
+ optional string internal_name = 1;
+ optional string localized_name_text = 2;
+ optional .CDotaMsgStructuredTooltipProperties.EAttributeType resolved_type = 3 [default = kUnknown];
+ optional .CDotaMsgStructuredTooltipProperties.AttributeValue value = 4;
}
message AttributeGroupDesc_Basic {
@@ -1888,15 +1884,11 @@ message CDotaMsgStructuredTooltipProperties {
optional string desc_loc_token = 2;
}
- message AttributeGroupDesc_Facet {
- optional .CDotaMsgStructuredTooltipProperties.FacetDisplayProperties facet = 1;
- }
-
message AttributeGroupDescription {
oneof attr_group_desc {
.CDotaMsgStructuredTooltipProperties.AttributeGroupDesc_Basic basic = 1;
- .CDotaMsgStructuredTooltipProperties.AttributeGroupDesc_Specific specific = 2;
- .CDotaMsgStructuredTooltipProperties.AttributeGroupDesc_Facet facet = 3;
+ .CDotaMsgStructuredTooltipProperties.AttributeGroupDesc_Basic characteristics = 2;
+ .CDotaMsgStructuredTooltipProperties.AttributeGroupDesc_Specific specific = 3;
}
}
@@ -1915,10 +1907,17 @@ message CDotaMsgStructuredTooltipProperties {
}
}
- message SummaryDescriptionEmbedValue {
- optional string name = 1;
- optional .CDotaMsgStructuredTooltipProperties.EAttributeType type = 2 [default = kUnknown];
- optional .CDotaMsgStructuredTooltipProperties.AttributeValue value = 3;
+ message SummaryDescriptionEmbeddedSubAbility {
+ optional string ability_name_loc_token = 1;
+ optional string ability_desc_loc_token = 2;
+ optional string ability_icon_url = 3;
+ }
+
+ enum EAbilityTooltipCategory {
+ kPassive = 1;
+ kAutocast = 2;
+ kToggle = 3;
+ kChanneled = 4;
}
enum EAttributeType {
@@ -1936,17 +1935,31 @@ message CDotaMsgStructuredTooltipProperties {
kDebuffValue = 11;
kBuffPercentage = 12;
kBuffValue = 13;
+ kMagicalDamagePercentage = 14;
+ kHealthPercentage = 15;
+ kManaPercentage = 16;
+ kNumCharges = 17;
+ kDebuffDuration = 18;
+ kBuffDuration = 19;
+ kAbilityDefinedDamage = 20;
+ kDispellability = 21;
+ kSpellImmunityPiercing = 22;
+ kHealthPercentageAsPureDamage = 23;
+ kPhysicalDamagePercentage = 24;
}
optional string ability_name_loc_token = 1;
- optional string ability_category_loc_token = 2;
+ optional .CDotaMsgStructuredTooltipProperties.EAbilityTooltipCategory ability_category = 2 [default = kPassive];
optional int32 ability_level = 3;
optional int32 current_mana_cost = 4;
optional int32 current_health_cost = 5;
optional float current_cooldown = 6;
optional string summary_description_loc_token = 7;
- optional string summary_description_level_up_loc_token = 8;
- repeated .CDotaMsgStructuredTooltipProperties.SummaryDescriptionEmbedValue summary_description_embed_values = 9;
- optional .CDotaMsgStructuredTooltipProperties.FacetDisplayProperties summary_description_facet = 10;
+ repeated .CDotaMsgStructuredTooltipProperties.Attribute summary_description_embed_values = 8;
+ repeated string summary_description_surfaced_lines = 9;
+ repeated .CDotaMsgStructuredTooltipProperties.SummaryDescriptionEmbeddedSubAbility summary_description_embedded_sub_abilities = 10;
+ optional string summary_description_aghs_scepter = 11;
+ optional string summary_description_aghs_shard = 12;
+ optional string preview_video_url = 13;
repeated .CDotaMsgStructuredTooltipProperties.TooltipContentChunk chunks = 20;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks.proto
index 1fa00a8c..13f8f24b 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -8,23 +9,18 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ECraftworksAuditAction {
- k_eInvalid = 0;
- k_eRecipeCrafted = 1;
- k_eMatchRewards = 2;
- k_eMatchRewardsTurbo = 3;
+ k_eInvalid = 0;
+ k_eRecipeCrafted = 1;
+ k_eMatchRewards = 2;
+ k_eMatchRewardsTurbo = 3;
}
message CMsgCraftworksComponents {
- message ComponentQuantitiesEntry {
- optional uint32 key = 1;
- optional uint32 value = 2;
- }
-
- repeated .CMsgCraftworksComponents.ComponentQuantitiesEntry component_quantities = 1;
+ map component_quantities = 1;
}
message CMsgCraftworksQuestReward {
- optional uint32 quest_id = 1;
- optional .CMsgCraftworksComponents reward_components = 2;
- optional uint32 stat_value = 3;
+ optional uint32 quest_id = 1;
+ optional .CMsgCraftworksComponents reward_components = 2;
+ optional uint32 stat_value = 3;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_league.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_league.proto
index 5a2b3b6e..1fed4abc 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_league.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_league.proto
@@ -1,4 +1,5 @@
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -6,353 +7,355 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ELeagueNodeGroupType {
- INVALID_GROUP_TYPE = 0;
- ORGANIZATIONAL = 1;
- ROUND_ROBIN = 2;
- SWISS = 3;
- BRACKET_SINGLE = 4;
- BRACKET_DOUBLE_SEED_LOSER = 5;
- BRACKET_DOUBLE_ALL_WINNER = 6;
- SHOWMATCH = 7;
- GSL = 8;
- PLACEMENT = 9;
+ INVALID_GROUP_TYPE = 0;
+ ORGANIZATIONAL = 1;
+ ROUND_ROBIN = 2;
+ SWISS = 3;
+ BRACKET_SINGLE = 4;
+ BRACKET_DOUBLE_SEED_LOSER = 5;
+ BRACKET_DOUBLE_ALL_WINNER = 6;
+ SHOWMATCH = 7;
+ GSL = 8;
+ PLACEMENT = 9;
}
enum ELeagueNodeType {
- INVALID_NODE_TYPE = 0;
- BEST_OF_ONE = 1;
- BEST_OF_THREE = 2;
- BEST_OF_FIVE = 3;
- BEST_OF_TWO = 4;
+ INVALID_NODE_TYPE = 0;
+ BEST_OF_ONE = 1;
+ BEST_OF_THREE = 2;
+ BEST_OF_FIVE = 3;
+ BEST_OF_TWO = 4;
}
message CMsgDOTALeagueNode {
- message MatchDetails {
- optional uint64 match_id = 1;
- optional uint32 winning_team_id = 2;
- }
-
- message VOD {
- optional uint32 series_game = 1;
- optional uint32 stream_id = 2;
- optional string url = 3;
- }
-
- optional string name = 1;
- optional uint32 node_id = 2;
- optional uint32 node_group_id = 3;
- optional uint32 winning_node_id = 4;
- optional uint32 losing_node_id = 5;
- optional uint32 incoming_node_id_1 = 6;
- optional uint32 incoming_node_id_2 = 7;
- optional .ELeagueNodeType node_type = 8 [default = INVALID_NODE_TYPE];
- optional uint32 scheduled_time = 9;
- optional uint32 actual_time = 19;
- optional uint32 series_id = 10;
- optional uint32 team_id_1 = 11;
- optional uint32 team_id_2 = 12;
- repeated .CMsgDOTALeagueNode.MatchDetails matches = 13;
- optional uint32 team_1_wins = 14;
- optional uint32 team_2_wins = 15;
- optional bool has_started = 16;
- optional bool is_completed = 17;
- repeated uint32 stream_ids = 18;
- repeated .CMsgDOTALeagueNode.VOD vods = 20;
+ message MatchDetails {
+ optional uint64 match_id = 1;
+ optional uint32 winning_team_id = 2;
+ optional uint32 duration = 3;
+ }
+
+ message VOD {
+ optional uint32 series_game = 1;
+ optional uint32 stream_id = 2;
+ optional string url = 3;
+ }
+
+ optional string name = 1;
+ optional uint32 node_id = 2;
+ optional uint32 node_group_id = 3;
+ optional uint32 winning_node_id = 4;
+ optional uint32 losing_node_id = 5;
+ optional uint32 incoming_node_id_1 = 6;
+ optional uint32 incoming_node_id_2 = 7;
+ optional .ELeagueNodeType node_type = 8 [default = INVALID_NODE_TYPE];
+ optional uint32 scheduled_time = 9;
+ optional uint32 actual_time = 19;
+ optional uint32 series_id = 10;
+ optional uint32 team_id_1 = 11;
+ optional uint32 team_id_2 = 12;
+ repeated .CMsgDOTALeagueNode.MatchDetails matches = 13;
+ optional uint32 team_1_wins = 14;
+ optional uint32 team_2_wins = 15;
+ optional bool has_started = 16;
+ optional bool is_completed = 17;
+ repeated uint32 stream_ids = 18;
+ repeated .CMsgDOTALeagueNode.VOD vods = 20;
}
message CMsgDOTALeagueNodeGroup {
- message TeamStanding {
- optional uint32 standing = 1;
- optional uint32 team_id = 2;
- optional string team_name = 3;
- optional string team_tag = 4;
- optional uint64 team_logo = 5;
- optional string team_logo_url = 6;
- optional uint32 wins = 7;
- optional uint32 losses = 8;
- optional int64 score = 9;
- optional string team_abbreviation = 10;
- optional bool is_pro = 14;
- optional uint32 tiebreak_game_win_pct = 15;
- optional uint32 tiebreak_opponent_match_wins = 16;
- optional uint32 tiebreak_opponent_game_win_pct = 17;
- optional uint32 tiebreak_coinflip = 18;
- }
-
- optional string name = 1;
- optional uint32 node_group_id = 2;
- optional uint32 parent_node_group_id = 3;
- repeated uint32 incoming_node_group_ids = 4;
- optional uint32 advancing_node_group_id = 5;
- optional uint32 advancing_team_count = 6;
- optional uint32 team_count = 7;
- optional .ELeagueNodeGroupType node_group_type = 8 [default = INVALID_GROUP_TYPE];
- optional .ELeagueNodeType default_node_type = 9 [default = INVALID_NODE_TYPE];
- optional uint32 round = 10;
- optional uint32 max_rounds = 11;
- optional uint32 win_loss_limit = 27;
- optional bool is_tiebreaker = 12;
- optional bool is_final_group = 13;
- optional bool is_completed = 14;
- optional .ELeaguePhase phase = 18 [default = LEAGUE_PHASE_UNSET];
- optional .ELeagueRegion region = 19 [default = LEAGUE_REGION_UNSET];
- optional uint32 start_time = 20;
- optional uint32 end_time = 21;
- optional uint32 secondary_advancing_node_group_id = 22;
- optional uint32 secondary_advancing_team_count = 23;
- optional uint32 tertiary_advancing_node_group_id = 24;
- optional uint32 tertiary_advancing_team_count = 25;
- optional uint32 elimination_dpc_points = 26;
- repeated .CMsgDOTALeagueNodeGroup.TeamStanding team_standings = 15;
- repeated .CMsgDOTALeagueNode nodes = 16;
- repeated .CMsgDOTALeagueNodeGroup node_groups = 17;
+ message TeamStanding {
+ optional uint32 standing = 1;
+ optional uint32 team_id = 2;
+ optional string team_name = 3;
+ optional string team_tag = 4;
+ optional uint64 team_logo = 5;
+ optional string team_logo_url = 6;
+ optional uint32 wins = 7;
+ optional uint32 losses = 8;
+ optional int64 score = 9;
+ optional string team_abbreviation = 10;
+ optional bool is_pro = 14;
+ optional uint32 tiebreak_game_win_pct = 15;
+ optional uint32 tiebreak_opponent_match_wins = 16;
+ optional uint32 tiebreak_opponent_game_win_pct = 17;
+ optional uint32 tiebreak_coinflip = 18;
+ optional uint32 tiebereak_average_game_length = 19;
+ }
+
+ optional string name = 1;
+ optional uint32 node_group_id = 2;
+ optional uint32 parent_node_group_id = 3;
+ repeated uint32 incoming_node_group_ids = 4;
+ optional uint32 advancing_node_group_id = 5;
+ optional uint32 advancing_team_count = 6;
+ optional uint32 team_count = 7;
+ optional .ELeagueNodeGroupType node_group_type = 8 [default = INVALID_GROUP_TYPE];
+ optional .ELeagueNodeType default_node_type = 9 [default = INVALID_NODE_TYPE];
+ optional uint32 round = 10;
+ optional uint32 max_rounds = 11;
+ optional uint32 win_loss_limit = 27;
+ optional bool is_tiebreaker = 12;
+ optional bool is_final_group = 13;
+ optional bool is_completed = 14;
+ optional .ELeaguePhase phase = 18 [default = LEAGUE_PHASE_UNSET];
+ optional .ELeagueRegion region = 19 [default = LEAGUE_REGION_UNSET];
+ optional uint32 start_time = 20;
+ optional uint32 end_time = 21;
+ optional uint32 secondary_advancing_node_group_id = 22;
+ optional uint32 secondary_advancing_team_count = 23;
+ optional uint32 tertiary_advancing_node_group_id = 24;
+ optional uint32 tertiary_advancing_team_count = 25;
+ optional uint32 elimination_dpc_points = 26;
+ repeated .CMsgDOTALeagueNodeGroup.TeamStanding team_standings = 15;
+ repeated .CMsgDOTALeagueNode nodes = 16;
+ repeated .CMsgDOTALeagueNodeGroup node_groups = 17;
}
message CMsgDOTALeague {
- message Info {
- optional uint32 league_id = 1;
- optional string name = 2;
- optional .ELeagueTier tier = 3 [default = LEAGUE_TIER_UNSET];
- optional .ELeagueRegion region = 4 [default = LEAGUE_REGION_UNSET];
- optional string url = 5;
- optional string description = 6;
- optional string notes = 7;
- optional uint32 start_timestamp = 8;
- optional uint32 end_timestamp = 9;
- optional uint32 pro_circuit_points = 10;
- optional uint32 image_bits = 11;
- optional .ELeagueStatus status = 12 [default = LEAGUE_STATUS_UNSET];
- optional uint32 most_recent_activity = 13;
- optional uint32 registration_period = 14;
- }
-
- message Admin {
- optional uint32 account_id = 1;
- optional bool is_primary = 2;
- optional string email_address = 3;
- }
-
- message PrizePoolItem {
- optional uint32 item_def = 1;
- optional uint32 sales_stop_timestamp = 2;
- optional uint32 revenue_pct = 3;
- optional uint32 revenue_cents_per_sale = 4;
- }
-
- message PrizePool {
- optional uint32 base_prize_pool = 1;
- optional uint32 total_prize_pool = 2;
- repeated uint32 prize_split_pct_x100 = 3;
- repeated .CMsgDOTALeague.PrizePoolItem prize_pool_items = 4;
- }
-
- message Stream {
- optional uint32 stream_id = 1;
- optional uint32 language = 2;
- optional string name = 3;
- optional .ELeagueBroadcastProvider broadcast_provider = 4 [default = LEAGUE_BROADCAST_UNKNOWN];
- optional string stream_url = 5;
- optional string vod_url = 6;
- }
-
- message SeriesInfo {
- optional uint32 series_id = 1;
- optional uint32 series_type = 2;
- optional uint32 start_time = 3;
- repeated uint64 match_ids = 4;
- optional uint32 team_id_1 = 5;
- optional uint32 team_id_2 = 6;
- }
-
- message Player {
- optional uint32 account_id = 1;
- optional string name = 2;
- optional uint32 team_id = 3;
- }
-
- optional .CMsgDOTALeague.Info info = 1;
- optional .CMsgDOTALeague.PrizePool prize_pool = 2;
- repeated .CMsgDOTALeague.Admin admins = 3;
- repeated .CMsgDOTALeague.Stream streams = 4;
- repeated .CMsgDOTALeagueNodeGroup node_groups = 5;
- repeated .CMsgDOTALeague.SeriesInfo series_infos = 6;
- repeated .CMsgDOTALeague.Player registered_players = 7;
+ message Info {
+ optional uint32 league_id = 1;
+ optional string name = 2;
+ optional .ELeagueTier tier = 3 [default = LEAGUE_TIER_UNSET];
+ optional .ELeagueRegion region = 4 [default = LEAGUE_REGION_UNSET];
+ optional string url = 5;
+ optional string description = 6;
+ optional string notes = 7;
+ optional uint32 start_timestamp = 8;
+ optional uint32 end_timestamp = 9;
+ optional uint32 pro_circuit_points = 10;
+ optional uint32 image_bits = 11;
+ optional .ELeagueStatus status = 12 [default = LEAGUE_STATUS_UNSET];
+ optional uint32 most_recent_activity = 13;
+ optional uint32 registration_period = 14;
+ }
+
+ message Admin {
+ optional uint32 account_id = 1;
+ optional bool is_primary = 2;
+ optional string email_address = 3;
+ }
+
+ message PrizePoolItem {
+ optional uint32 item_def = 1;
+ optional uint32 sales_stop_timestamp = 2;
+ optional uint32 revenue_pct = 3;
+ optional uint32 revenue_cents_per_sale = 4;
+ }
+
+ message PrizePool {
+ optional uint32 base_prize_pool = 1;
+ optional uint32 total_prize_pool = 2;
+ repeated uint32 prize_split_pct_x100 = 3;
+ repeated .CMsgDOTALeague.PrizePoolItem prize_pool_items = 4;
+ }
+
+ message Stream {
+ optional uint32 stream_id = 1;
+ optional uint32 language = 2;
+ optional string name = 3;
+ optional .ELeagueBroadcastProvider broadcast_provider = 4 [default = LEAGUE_BROADCAST_UNKNOWN];
+ optional string stream_url = 5;
+ optional string vod_url = 6;
+ }
+
+ message SeriesInfo {
+ optional uint32 series_id = 1;
+ optional uint32 series_type = 2;
+ optional uint32 start_time = 3;
+ repeated uint64 match_ids = 4;
+ optional uint32 team_id_1 = 5;
+ optional uint32 team_id_2 = 6;
+ }
+
+ message Player {
+ optional uint32 account_id = 1;
+ optional string name = 2;
+ optional uint32 team_id = 3;
+ }
+
+ optional .CMsgDOTALeague.Info info = 1;
+ optional .CMsgDOTALeague.PrizePool prize_pool = 2;
+ repeated .CMsgDOTALeague.Admin admins = 3;
+ repeated .CMsgDOTALeague.Stream streams = 4;
+ repeated .CMsgDOTALeagueNodeGroup node_groups = 5;
+ repeated .CMsgDOTALeague.SeriesInfo series_infos = 6;
+ repeated .CMsgDOTALeague.Player registered_players = 7;
}
message CMsgDOTALeagueList {
- repeated .CMsgDOTALeague leagues = 1;
+ repeated .CMsgDOTALeague leagues = 1;
}
message CMsgDOTALeagueInfo {
- optional uint32 league_id = 1;
- optional string name = 2;
- optional .ELeagueTier tier = 3 [default = LEAGUE_TIER_UNSET];
- optional .ELeagueRegion region = 4 [default = LEAGUE_REGION_UNSET];
- optional uint32 most_recent_activity = 5;
- optional uint32 total_prize_pool = 6;
- optional uint32 start_timestamp = 7;
- optional uint32 end_timestamp = 8;
- optional uint32 status = 9;
+ optional uint32 league_id = 1;
+ optional string name = 2;
+ optional .ELeagueTier tier = 3 [default = LEAGUE_TIER_UNSET];
+ optional .ELeagueRegion region = 4 [default = LEAGUE_REGION_UNSET];
+ optional uint32 most_recent_activity = 5;
+ optional uint32 total_prize_pool = 6;
+ optional uint32 start_timestamp = 7;
+ optional uint32 end_timestamp = 8;
+ optional uint32 status = 9;
}
message CMsgDOTALeagueInfoList {
- repeated .CMsgDOTALeagueInfo infos = 1;
+ repeated .CMsgDOTALeagueInfo infos = 1;
}
message CMsgDOTALeagueLiveGames {
- message LiveGame {
- optional uint32 league_id = 1;
- optional uint64 server_steam_id = 2;
- optional string radiant_name = 3;
- optional uint64 radiant_logo = 4;
- optional uint32 radiant_team_id = 9;
- optional string dire_name = 5;
- optional uint64 dire_logo = 6;
- optional uint32 dire_team_id = 10;
- optional uint32 time = 7;
- optional uint32 spectators = 8;
- optional uint32 league_node_id = 11;
- optional uint32 series_id = 12;
- optional uint64 match_id = 13;
- }
-
- repeated .CMsgDOTALeagueLiveGames.LiveGame games = 1;
+ message LiveGame {
+ optional uint32 league_id = 1;
+ optional uint64 server_steam_id = 2;
+ optional string radiant_name = 3;
+ optional uint64 radiant_logo = 4;
+ optional uint32 radiant_team_id = 9;
+ optional string dire_name = 5;
+ optional uint64 dire_logo = 6;
+ optional uint32 dire_team_id = 10;
+ optional uint32 time = 7;
+ optional uint32 spectators = 8;
+ optional uint32 league_node_id = 11;
+ optional uint32 series_id = 12;
+ optional uint64 match_id = 13;
+ }
+
+ repeated .CMsgDOTALeagueLiveGames.LiveGame games = 1;
}
message CMsgDOTALeagueMessages {
- message Message {
- optional uint32 author_account_id = 1;
- optional uint32 timestamp = 2;
- optional string message = 3;
- }
+ message Message {
+ optional uint32 author_account_id = 1;
+ optional uint32 timestamp = 2;
+ optional string message = 3;
+ }
- repeated .CMsgDOTALeagueMessages.Message messages = 1;
+ repeated .CMsgDOTALeagueMessages.Message messages = 1;
}
message CMsgDOTALeaguePrizePool {
- optional uint32 prize_pool = 1;
- optional float increment_per_second = 2;
+ optional uint32 prize_pool = 1;
+ optional float increment_per_second = 2;
}
message CMsgDOTALeagueInfoListAdminsRequest {
}
message CMsgDOTALeagueAvailableLobbyNodesRequest {
- optional uint32 league_id = 1;
+ optional uint32 league_id = 1;
}
message CMsgDOTALeagueAvailableLobbyNodes {
- message NodeInfo {
- optional uint32 node_id = 1;
- optional string node_name = 2;
- optional string node_group_name = 3;
- optional uint32 team_id_1 = 4;
- optional uint32 team_id_2 = 5;
- }
-
- repeated .CMsgDOTALeagueAvailableLobbyNodes.NodeInfo node_infos = 1;
+ message NodeInfo {
+ optional uint32 node_id = 1;
+ optional string node_name = 2;
+ optional string node_group_name = 3;
+ optional uint32 team_id_1 = 4;
+ optional uint32 team_id_2 = 5;
+ }
+
+ repeated .CMsgDOTALeagueAvailableLobbyNodes.NodeInfo node_infos = 1;
}
message CMsgDOTALeagueNodeResults {
- message Result {
- optional uint32 node_id = 1;
- optional uint32 winning_node_id = 2;
- optional uint32 losing_node_id = 3;
- optional uint32 incoming_node_id_1 = 4;
- optional uint32 incoming_node_id_2 = 5;
- optional uint32 team_id_1 = 6;
- optional uint32 team_id_2 = 7;
- optional string team_1_name = 8;
- optional string team_2_name = 9;
- optional uint32 team_1_wins = 10;
- optional uint32 team_2_wins = 11;
- optional uint32 winning_team_id = 12;
- optional uint32 losing_team_id = 13;
- optional bool has_started = 14;
- optional bool is_completed = 15;
- optional uint32 scheduled_time = 16;
- repeated uint64 match_ids = 17;
- }
-
- repeated .CMsgDOTALeagueNodeResults.Result node_results = 1;
+ message Result {
+ optional uint32 node_id = 1;
+ optional uint32 winning_node_id = 2;
+ optional uint32 losing_node_id = 3;
+ optional uint32 incoming_node_id_1 = 4;
+ optional uint32 incoming_node_id_2 = 5;
+ optional uint32 team_id_1 = 6;
+ optional uint32 team_id_2 = 7;
+ optional string team_1_name = 8;
+ optional string team_2_name = 9;
+ optional uint32 team_1_wins = 10;
+ optional uint32 team_2_wins = 11;
+ optional uint32 winning_team_id = 12;
+ optional uint32 losing_team_id = 13;
+ optional bool has_started = 14;
+ optional bool is_completed = 15;
+ optional uint32 scheduled_time = 16;
+ repeated uint64 match_ids = 17;
+ }
+
+ repeated .CMsgDOTALeagueNodeResults.Result node_results = 1;
}
message CMsgDOTADPCLeagueResults {
- message Result {
- optional uint32 standing = 1;
- optional uint32 team_id = 2;
- optional string team_name = 3;
- optional uint64 team_logo = 4;
- optional string team_logo_url = 5;
- optional uint32 points = 6;
- optional uint32 earnings = 7;
- optional uint32 timestamp = 8;
- optional .ELeaguePhase phase = 9 [default = LEAGUE_PHASE_UNSET];
- optional string team_abbreviation = 10;
- }
-
- repeated .CMsgDOTADPCLeagueResults.Result results = 1;
- repeated uint32 points = 2;
- repeated uint32 dollars = 3;
+ message Result {
+ optional uint32 standing = 1;
+ optional uint32 team_id = 2;
+ optional string team_name = 3;
+ optional uint64 team_logo = 4;
+ optional string team_logo_url = 5;
+ optional uint32 points = 6;
+ optional uint32 earnings = 7;
+ optional uint32 timestamp = 8;
+ optional .ELeaguePhase phase = 9 [default = LEAGUE_PHASE_UNSET];
+ optional string team_abbreviation = 10;
+ }
+
+ repeated .CMsgDOTADPCLeagueResults.Result results = 1;
+ repeated uint32 points = 2;
+ repeated uint32 dollars = 3;
}
message CMsgDOTADPCTeamResults {
- message Result {
- optional uint32 league_id = 1;
- optional uint32 standing = 2;
- optional uint32 points = 3;
- optional uint32 earnings = 4;
- optional uint32 timestamp = 5;
- }
-
- repeated .CMsgDOTADPCTeamResults.Result results = 1;
+ message Result {
+ optional uint32 league_id = 1;
+ optional uint32 standing = 2;
+ optional uint32 points = 3;
+ optional uint32 earnings = 4;
+ optional uint32 timestamp = 5;
+ }
+
+ repeated .CMsgDOTADPCTeamResults.Result results = 1;
}
message CMsgDOTADPCSeasonResults {
- message TeamLeagueResult {
- optional uint32 timestamp = 1;
- optional uint32 league_id = 2;
- optional uint32 standing = 3;
- optional uint32 points = 4;
- optional uint32 earnings = 5;
- optional uint32 audit_action = 6;
- optional uint32 audit_data = 7;
- }
-
- message TeamResult {
- optional uint32 team_id = 1;
- optional string team_name = 2;
- optional string team_abbreviation = 8;
- optional uint64 team_logo = 3;
- optional string team_logo_url = 4;
- optional uint32 total_points = 5;
- optional uint32 total_earnings = 6;
- repeated .CMsgDOTADPCSeasonResults.TeamLeagueResult league_results = 7;
- }
-
- message StandingEntry {
- optional uint32 team_id = 1;
- optional uint32 wins = 2;
- optional uint32 losses = 3;
- optional string team_url = 4;
- optional string team_name = 5;
- optional string team_abbreviation = 6;
- }
-
- message Standing {
- optional .ELeagueRegion region = 1 [default = LEAGUE_REGION_UNSET];
- optional .ELeagueDivision division = 2 [default = LEAGUE_DIVISION_UNSET];
- repeated .CMsgDOTADPCSeasonResults.StandingEntry entries = 3;
- }
-
- repeated .CMsgDOTADPCSeasonResults.TeamResult results = 1;
- repeated .CMsgDOTADPCSeasonResults.Standing standings = 2;
- repeated .CMsgDOTADPCSeasonResults.StandingEntry major_wildcard_standings = 3;
- repeated .CMsgDOTADPCSeasonResults.StandingEntry major_group_standings = 4;
- repeated .CMsgDOTADPCSeasonResults.StandingEntry major_playoff_standings = 5;
+ message TeamLeagueResult {
+ optional uint32 timestamp = 1;
+ optional uint32 league_id = 2;
+ optional uint32 standing = 3;
+ optional uint32 points = 4;
+ optional uint32 earnings = 5;
+ optional uint32 audit_action = 6;
+ optional uint32 audit_data = 7;
+ }
+
+ message TeamResult {
+ optional uint32 team_id = 1;
+ optional string team_name = 2;
+ optional string team_abbreviation = 8;
+ optional uint64 team_logo = 3;
+ optional string team_logo_url = 4;
+ optional uint32 total_points = 5;
+ optional uint32 total_earnings = 6;
+ repeated .CMsgDOTADPCSeasonResults.TeamLeagueResult league_results = 7;
+ }
+
+ message StandingEntry {
+ optional uint32 team_id = 1;
+ optional uint32 wins = 2;
+ optional uint32 losses = 3;
+ optional string team_url = 4;
+ optional string team_name = 5;
+ optional string team_abbreviation = 6;
+ }
+
+ message Standing {
+ optional .ELeagueRegion region = 1 [default = LEAGUE_REGION_UNSET];
+ optional .ELeagueDivision division = 2 [default = LEAGUE_DIVISION_UNSET];
+ repeated .CMsgDOTADPCSeasonResults.StandingEntry entries = 3;
+ }
+
+ repeated .CMsgDOTADPCSeasonResults.TeamResult results = 1;
+ repeated .CMsgDOTADPCSeasonResults.Standing standings = 2;
+ repeated .CMsgDOTADPCSeasonResults.StandingEntry major_wildcard_standings = 3;
+ repeated .CMsgDOTADPCSeasonResults.StandingEntry major_group_standings = 4;
+ repeated .CMsgDOTADPCSeasonResults.StandingEntry major_playoff_standings = 5;
}
message CMsgDOTADPCSeasonSpoilerResults {
- optional uint32 time_last_updated = 1;
- optional .CMsgDOTADPCSeasonResults saved_results = 2;
+ optional uint32 time_last_updated = 1;
+ optional .CMsgDOTADPCSeasonResults saved_results = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto
index 326a119b..e231148e 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_lobby.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -15,9 +16,10 @@ enum ELobbyMemberCoachRequestState {
enum LobbyDotaTVDelay {
LobbyDotaTV_10 = 0;
- LobbyDotaTV_120 = 1;
- LobbyDotaTV_300 = 2;
- LobbyDotaTV_900 = 3;
+ LobbyDotaTV_60 = 1;
+ LobbyDotaTV_120 = 2;
+ LobbyDotaTV_300 = 3;
+ LobbyDotaTV_900 = 4;
}
enum LobbyDotaPauseSetting {
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_match_management.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_match_management.proto
index 926e8d7f..ea876a5b 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_match_management.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_match_management.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -70,7 +71,7 @@ message CSODOTAPartyMember {
optional bool is_coach = 2;
repeated uint32 region_ping_codes = 4 [packed = true];
repeated uint32 region_ping_times = 5 [packed = true];
- optional uint32 region_ping_failed_bitmask = 6;
+ optional uint64 region_ping_failed_bitmask = 6;
optional bool is_plus_subscriber = 10;
optional uint32 tourney_skill_level = 7;
optional uint32 tourney_buyin = 8;
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_monster_hunter.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_monster_hunter.proto
index cc2fd417..27f41006 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_monster_hunter.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_monster_hunter.proto
@@ -2,6 +2,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -51,13 +52,8 @@ message CMsgMonsterHunterHeroCodexEntry {
}
message CMsgMonsterHunterUserData {
- message HeroCodexEntry {
- optional int32 key = 1;
- optional .CMsgMonsterHunterHeroCodexEntry value = 2;
- }
-
optional .CMsgMonsterHunterMaterialQuantity material_inventory = 1;
- repeated .CMsgMonsterHunterUserData.HeroCodexEntry hero_codex = 2;
+ map hero_codex = 2;
optional int32 unlocked_count = 3;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_overworld.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_overworld.proto
index 69c55234..d2621510 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_overworld.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_overworld.proto
@@ -3,6 +3,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_survivors.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -39,6 +40,14 @@ enum EOverworldAuditAction {
k_eOverworldAuditAction_EncounterRewardTokenReward = 14;
k_eOverworldAuditAction_SupportGrantTokens = 16;
k_eOverworldAuditAction_TokenGiftSent = 17;
+ k_eOverworldAuditAction_DevSetFortune = 18;
+ k_eOverworldAuditAction_DevClearFortune = 19;
+ k_eOverworldAuditAction_RequestFortune = 20;
+ k_eOverworldAuditAction_ClaimFortuneReward = 21;
+ k_eOverworldAuditAction_DevGrantFortuneTellerCoin = 22;
+ k_eOverworldAuditAction_ClaimFortuneTellerStoryNodeReward = 23;
+ k_eOverworldAuditAction_MatchRewardsAbilityDraft = 24;
+ k_eOverworldAuditAction_MatchRewardsCoopBotMatch = 25;
}
enum EOverworldMinigameAction {
@@ -124,17 +133,34 @@ message CMsgOverworldMinigameUserData {
optional .CMsgOverworldMinigameCustomData custom_data = 3;
}
-message CMsgOverworldUserData {
- message MinigameDataEntry {
- optional uint32 key = 1;
- optional .CMsgOverworldMinigameUserData value = 2;
+message CMsgOverworldFortune {
+ message CMsgFortuneCount {
+ optional uint32 fortune = 1;
+ optional uint32 count = 2;
}
+ optional uint32 fortune = 1;
+ optional uint32 timestamp = 4;
+ optional uint32 times_completed = 5;
+ optional bool reward_claimed = 7;
+ optional uint32 fortune_count = 8;
+ repeated .CMsgOverworldFortune.CMsgFortuneCount fortune_counts = 9;
+}
+
+message CMsgLobbyOverworldFortuneList {
+ repeated uint32 account_id = 1;
+ repeated .CMsgOverworldFortune fortune = 2;
+}
+
+message CMsgOverworldUserData {
optional .CMsgOverworldTokenQuantity token_inventory = 1;
repeated .CMsgOverworldNode overworld_nodes = 2;
repeated .CMsgOverworldPath overworld_paths = 3;
optional uint32 current_node_id = 4;
- repeated .CMsgOverworldUserData.MinigameDataEntry minigame_data = 5;
+ map minigame_data = 5;
+ optional .CMsgOverworldFortune current_fortune = 6;
+ optional int32 last_related_hero_id = 7;
+ optional uint32 overworld_version = 8;
}
message CMsgOverworldMatchRewards {
@@ -173,6 +199,8 @@ message CMsgGCToClientOverworldUserDataUpdated {
message CMsgClientToGCOverworldCompletePath {
optional uint32 overworld_id = 1;
optional uint32 path_id = 2;
+ optional bool use_path_unlocker = 3;
+ optional bool dev_ignore_release_schedule = 4;
}
message CMsgClientToGCOverworldCompletePathResponse {
@@ -188,6 +216,7 @@ message CMsgClientToGCOverworldCompletePathResponse {
k_ePathIsLocked = 8;
k_ePathAlreadyUnlocked = 9;
k_eEventExpired = 10;
+ k_eNodeNotReleased = 11;
}
optional .CMsgClientToGCOverworldCompletePathResponse.EResponse response = 1 [default = k_eInternalError];
@@ -431,6 +460,125 @@ message CMsgClientToGCOverworldDevClearInventoryResponse {
optional .CMsgClientToGCOverworldDevClearInventoryResponse.EResponse response = 1 [default = k_eInternalError];
}
+message CMsgClientToGCOverworldDevSetFortune {
+ optional uint32 overworld_id = 1;
+ optional uint32 fortune_id = 2;
+}
+
+message CMsgClientToGCOverworldDevSetFortuneResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ }
+
+ optional .CMsgClientToGCOverworldDevSetFortuneResponse.EResponse response = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCOverworldDevClearFortune {
+ optional uint32 overworld_id = 1;
+ optional uint32 fortune_id = 2;
+}
+
+message CMsgClientToGCOverworldDevClearFortuneResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ }
+
+ optional .CMsgClientToGCOverworldDevClearFortuneResponse.EResponse response = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCOverworldDevGrantFortuneTellerCoin {
+ optional uint32 overworld_id = 1;
+}
+
+message CMsgClientToGCOverworldDevGrantFortuneTellerCoinResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ }
+
+ optional .CMsgClientToGCOverworldDevGrantFortuneTellerCoinResponse.EResponse response = 1 [default = k_eInternalError];
+}
+
+message CMsgClientToGCOverworldRequestFortune {
+ optional uint32 overworld_id = 1;
+}
+
+message CMsgClientToGCOverworldRequestFortuneResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ k_eNotEnoughPoints = 7;
+ k_ePendingRewardAvailable = 8;
+ }
+
+ optional .CMsgClientToGCOverworldRequestFortuneResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDOTAClaimEventActionResponse claim_response = 2;
+}
+
+message CMsgClientToGCOverworldClaimFortuneReward {
+ optional uint32 overworld_id = 1;
+}
+
+message CMsgClientToGCOverworldClaimFortuneRewardResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ k_eNoFortuneRewardAvailable = 7;
+ }
+
+ optional .CMsgClientToGCOverworldClaimFortuneRewardResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgOverworldTokenQuantity token_quantity = 2;
+ optional .CMsgDOTAClaimEventActionResponse claim_response = 3;
+}
+
+message CMsgClientToGCOverworldClaimFortunePermanentReward {
+ optional uint32 overworld_id = 1;
+ optional uint32 fortune_id = 2;
+}
+
+message CMsgClientToGCOverworldClaimFortunePermanentRewardResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ k_eRewardAlreadyClaimed = 7;
+ }
+
+ optional .CMsgClientToGCOverworldClaimFortunePermanentRewardResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDOTAClaimEventActionResponse claim_response = 2;
+}
+
message CMsgClientToGCOverworldFeedback {
optional uint32 language = 1;
optional uint32 overworld_id = 2;
@@ -502,3 +650,25 @@ message CMsgClientToGCOverworldMinigameActionResponse {
optional .CMsgClientToGCOverworldMinigameActionResponse.EResponse response = 1 [default = k_eInternalError];
}
+
+message CMsgClientToGCOverworldClaimFortuneTellerStoryNode {
+ optional uint32 overworld_id = 1;
+ optional uint32 story_node_id = 2;
+}
+
+message CMsgClientToGCOverworldClaimFortuneTellerStoryNodeResponse {
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidOverworld = 6;
+ k_eRewardAlreadyClaimed = 7;
+ k_eInsufficientFortuneCount = 8;
+ }
+
+ optional .CMsgClientToGCOverworldClaimFortuneTellerStoryNodeResponse.EResponse response = 1 [default = k_eInternalError];
+ optional .CMsgDOTAClaimEventActionResponse claim_response = 2;
+}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_survivors.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_survivors.proto
index b8610a95..9f43e12b 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_survivors.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_survivors.proto
@@ -9,45 +9,40 @@ option optimize_for = SPEED;
option java_generic_services = false;
message CMsgSurvivorsUserData {
- message AttributeLevelsEntry {
- optional int32 key = 1;
- optional uint32 value = 2;
- }
-
- repeated .CMsgSurvivorsUserData.AttributeLevelsEntry attribute_levels = 1;
- optional uint32 unlocked_difficulty = 2;
+ map attribute_levels = 1;
+ optional uint32 unlocked_difficulty = 2;
}
message CMsgClientToGCSurvivorsPowerUpTelemetryData {
- optional uint32 powerup_id = 1;
- optional uint32 level = 2;
- optional uint32 time_received = 3;
- optional uint32 time_held = 4;
- optional uint64 total_damage = 5;
- optional uint32 dps = 6;
- optional uint32 has_scepter = 7;
+ optional uint32 powerup_id = 1;
+ optional uint32 level = 2;
+ optional uint32 time_received = 3;
+ optional uint32 time_held = 4;
+ optional uint64 total_damage = 5;
+ optional uint32 dps = 6;
+ optional uint32 has_scepter = 7;
}
message CMsgClientToGCSurvivorsGameTelemetryData {
- optional uint32 time_survived = 1;
- optional uint32 player_level = 2;
- optional uint32 game_result = 3;
- optional uint32 gold_earned = 4;
- repeated .CMsgClientToGCSurvivorsPowerUpTelemetryData powerups = 5;
- optional uint32 difficulty = 6;
- optional uint32 metaprogression_level = 7;
+ optional uint32 time_survived = 1;
+ optional uint32 player_level = 2;
+ optional uint32 game_result = 3;
+ optional uint32 gold_earned = 4;
+ repeated .CMsgClientToGCSurvivorsPowerUpTelemetryData powerups = 5;
+ optional uint32 difficulty = 6;
+ optional uint32 metaprogression_level = 7;
}
message CMsgClientToGCSurvivorsGameTelemetryDataResponse {
- enum EResponse {
- k_eInternalError = 0;
- k_eSuccess = 1;
- k_eTooBusy = 2;
- k_eDisabled = 3;
- k_eTimeout = 4;
- k_eNotAllowed = 5;
- k_eInvalidItem = 6;
- }
-
- optional .CMsgClientToGCSurvivorsGameTelemetryDataResponse.EResponse response = 1 [default = k_eInternalError];
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eInvalidItem = 6;
+ }
+
+ optional .CMsgClientToGCSurvivorsGameTelemetryDataResponse.EResponse response = 1 [default = k_eInternalError];
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_msgid.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_msgid.proto
index 0a53ce0a..09d6c1a6 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_msgid.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_msgid.proto
@@ -447,6 +447,7 @@ enum EDOTAGCMsg {
k_EMsgClientToGCSetPlayerCardRosterRequest = 8180;
k_EMsgClientToGCSetPlayerCardRosterResponse = 8181;
k_EMsgServerToGCCloseCompendiumInGamePredictionVotingResponse = 8183;
+ k_EMsgLobbyOverworldFortuneList = 8185;
k_EMsgLobbyBattleCupVictory = 8186;
k_EMsgGCGetPlayerCardItemInfo = 8187;
k_EMsgGCGetPlayerCardItemInfoResponse = 8188;
@@ -559,12 +560,8 @@ enum EDOTAGCMsg {
k_EMsgGCToGCGrantAutographResponse = 8316;
k_EMsgSignOutConsumableUsage = 8317;
k_EMsgLobbyEventGameDetails = 8318;
- k_EMsgDevGrantEventPoints = 8319;
- k_EMsgDevGrantEventPointsResponse = 8320;
k_EMsgDevGrantEventAction = 8321;
k_EMsgDevGrantEventActionResponse = 8322;
- k_EMsgDevResetEventState = 8323;
- k_EMsgDevResetEventStateResponse = 8324;
k_EMsgGCToGCReconcileEventOwnership = 8325;
k_EMsgConsumeEventSupportGrantItem = 8326;
k_EMsgConsumeEventSupportGrantItemResponse = 8327;
@@ -595,8 +592,6 @@ enum EDOTAGCMsg {
k_EMsgSQLGCToGCGrantAllHeroProgressVictory = 8364;
k_EMsgDevDeleteEventActions = 8365;
k_EMsgDevDeleteEventActionsResponse = 8366;
- k_EMsgDevReloadAllEvents = 8367;
- k_EMsgDevReloadAllEventsResponse = 8368;
k_EMsgGCToGCGetAllHeroCurrent = 8635;
k_EMsgGCToGCGetAllHeroCurrentResponse = 8636;
k_EMsgGCSubmitPlayerAvoidRequest = 8637;
@@ -701,7 +696,6 @@ enum EDOTAGCMsg {
k_EMsgGCToClientGuildMembersDataUpdated = 8747;
k_EMsgSignOutReportActivityMarkers = 8748;
k_EMsgSignOutDiretideCandy = 8749;
- k_EMsgGCToClientPostGameItemAwardNotification = 8750;
k_EMsgClientToGCGetOWMatchDetails = 8751;
k_EMsgClientToGCGetOWMatchDetailsResponse = 8752;
k_EMsgClientToGCSubmitOWConviction = 8753;
@@ -993,6 +987,19 @@ enum EDOTAGCMsg {
k_EMsgClientToGCMonsterHunterClaimCodexRewardResponse = 9048;
k_EMsgClientToGCMonsterHunterClaimSetReward = 9049;
k_EMsgClientToGCMonsterHunterClaimSetRewardResponse = 9050;
+ k_EMsgClientToGCFantasyCraftingSelectTeam = 9051;
+ k_EMsgClientToGCFantasyCraftingSelectTeamResponse = 9052;
+ k_EMsgClientToGCFantasyCraftingSelectGlobalPrefix = 9053;
+ k_EMsgClientToGCFantasyCraftingSelectGlobalPrefixResponse = 9054;
+ k_EMsgClientToGCFantasyCraftingSelectGlobalSuffix = 9055;
+ k_EMsgClientToGCFantasyCraftingSelectGlobalSuffixResponse = 9056;
+ k_EMsgClientToGCItemBattlerGetUserData = 9100;
+ k_EMsgClientToGCItemBattlerGetUserDataResponse = 9101;
+ k_EMsgClientToGCItemBattlerGameAction = 9102;
+ k_EMsgClientToGCItemBattlerGameActionResponse = 9103;
+ k_EMsgGCToClientItemBattlerUserDataUpdated = 9104;
+ k_EMsgClientToGCItemBattlerDevGrantItem = 9105;
+ k_EMsgClientToGCItemBattlerDevGrantItemResponse = 9106;
k_EMsgClientToGCGetEventRanking = 9107;
k_EMsgClientToGCGetEventRankingResponse = 9108;
k_EMsgClientToGCGetEventCoupon = 9109;
@@ -1003,4 +1010,18 @@ enum EDOTAGCMsg {
k_EMsgServerToGCWarningInvalidBotAbilityUsage = 9114;
k_EMsgClientToGCInviteToDemoMode = 9115;
k_EMsgGCToClientInviteToDemoMode = 9116;
+ k_EMsgClientToGCOverworldDevSetFortune = 9117;
+ k_EMsgClientToGCOverworldDevSetFortuneResponse = 9118;
+ k_EMsgClientToGCOverworldRequestFortune = 9119;
+ k_EMsgClientToGCOverworldRequestFortuneResponse = 9120;
+ k_EMsgClientToGCOverworldDevClearFortune = 9121;
+ k_EMsgClientToGCOverworldDevClearFortuneResponse = 9122;
+ k_EMsgClientToGCOverworldClaimFortuneReward = 9123;
+ k_EMsgClientToGCOverworldClaimFortuneRewardResponse = 9124;
+ k_EMsgClientToGCOverworldDevGrantFortuneTellerCoin = 9125;
+ k_EMsgClientToGCOverworldDevGrantFortuneTellerCoinResponse = 9126;
+ k_EMsgClientToGCOverworldClaimFortunePermanentReward = 9127;
+ k_EMsgClientToGCOverworldClaimFortunePermanentRewardResponse = 9128;
+ k_EMsgClientToGCOverworldClaimFortuneTellerStoryNode = 9129;
+ k_EMsgClientToGCOverworldClaimFortuneTellerStoryNodeResponse = 9130;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_server.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_server.proto
index 20a8eb57..5d606b66 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_server.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_server.proto
@@ -12,6 +12,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_craftworks
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common_monster_hunter.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -284,6 +285,8 @@ message CMsgGameMatchSignOut {
optional uint32 selected_facet = 82;
optional uint32 enhancement_level = 83;
optional uint32 disable_duration = 84;
+ optional uint32 tormentor_kills = 85;
+ optional uint32 wisdom_shrines_taken = 86;
}
repeated .CMsgGameMatchSignOut.CTeam.CPlayer players = 1;
@@ -300,7 +303,6 @@ message CMsgGameMatchSignOut {
optional uint32 timestamp = 2;
optional uint32 event_type = 3;
optional int32 game_time = 4;
- optional uint32 replay_time = 5;
}
message CCustomGameData {
@@ -317,17 +319,6 @@ message CMsgGameMatchSignOut {
optional uint32 extra_data_5 = 7;
}
- message WardPlacement {
- optional int32 player_id = 1 [default = -1];
- optional uint32 team_id = 2;
- optional uint32 placed_time = 3;
- optional uint32 building_state = 4;
- optional uint32 creep_state = 5;
- optional bool roshan_alive = 6;
- optional uint32 position_x = 7;
- optional uint32 position_y = 8;
- }
-
optional uint64 match_id = 1 [(key_field) = true];
optional uint32 duration = 2;
optional bool good_guys_win = 3;
@@ -352,7 +343,6 @@ message CMsgGameMatchSignOut {
repeated uint32 team_scores = 39;
optional uint32 pre_game_duration = 40;
repeated .CMsgGameMatchSignOut.EventGameLeaderboardEntry event_game_leaderboard_entries = 42;
- repeated .CMsgGameMatchSignOut.WardPlacement ward_placements = 43;
optional .CMsgSignOutGameplayStats gameplay_stats = 44;
repeated .CExtraMsgBlock extra_messages = 54;
optional .DOTA_GC_TEAM winning_team = 56 [default = DOTA_GC_TEAM_GOOD_GUYS];
@@ -414,6 +404,7 @@ message CMsgSignOutPlayerStats {
optional uint32 observer_wards_placed = 28;
optional uint32 wards_destroyed = 29;
optional uint32 lobby_type = 30;
+ optional uint32 wisdom_shrines_taken = 31;
}
message CMsgSignOutCommunicationSummary {
@@ -527,6 +518,8 @@ message CMsgGameMatchSignOutPerfData {
optional float server_average_sleep_frame_time = 26;
optional float server_max_sleep_frame_time = 27;
optional uint32 num_multitick_frames = 28;
+ repeated float average_missed_snapshot_rate = 29;
+ repeated float max_missed_snapshot_rate = 30;
}
message CMsgGameMatchSignOutBanData {
@@ -540,6 +533,7 @@ message CMsgDOTALiveScoreboardUpdate {
message HeroAbility {
optional int32 ability_id = 1 [default = -1];
optional uint32 ability_level = 2;
+ optional bool tome_upgraded = 3;
}
enum DOTAUltimateState {
@@ -660,7 +654,6 @@ message CMsgTournamentItemEvent {
optional .DOTA_TournamentEvents event_type = 3 [default = TE_FIRST_BLOOD];
optional int32 tv_delay = 4;
optional int32 dota_time = 5;
- optional float replay_time = 6;
optional string loot_list = 7;
optional uint32 event_team = 8;
optional uint32 multi_kill_count = 9;
@@ -735,8 +728,8 @@ message CMsgServerGCUpdateSpectatorCount {
message CSerializedCombatLog {
message Dictionary {
message DictString {
- required uint32 id = 1;
- required string value = 2;
+ optional uint32 id = 1;
+ optional string value = 2;
}
repeated .CSerializedCombatLog.Dictionary.DictString strings = 1;
@@ -928,141 +921,6 @@ message CMsgGCToGCCompendiumInGamePredictionResults {
optional .CMsgServerToGCCompendiumInGamePredictionResults results = 1;
}
-message CMsgServerToGCMatchPlayerItemPurchaseHistory {
- message ItemPurchase {
- optional int32 item = 1 [default = -1];
- optional uint32 gold = 2;
- optional uint32 net_worth = 3;
- optional uint32 game_time = 4;
- repeated int32 inventory_items = 5;
- repeated bool talents_skilled = 7;
- }
-
- message Player {
- optional uint32 player_slot = 1;
- optional uint32 account_id = 2;
- optional int32 hero_id = 3;
- repeated int32 allied_hero_ids = 4;
- repeated int32 enemy_hero_ids = 5;
- repeated .CMsgServerToGCMatchPlayerItemPurchaseHistory.ItemPurchase item_purchases = 6;
- optional uint32 lane = 7;
- optional bool is_winner = 8;
- }
-
- optional uint64 match_id = 1;
- optional uint32 mmr = 2;
- repeated .CMsgServerToGCMatchPlayerItemPurchaseHistory.Player players = 3;
-}
-
-message CMsgServerToGCMatchPlayerNeutralItemEquipHistory {
- message ItemEquip {
- optional int32 item = 1 [default = -1];
- optional uint32 game_time = 2;
- repeated int32 inventory_items = 3;
- repeated bool talents_skilled = 4;
- repeated int32 available_neutral_items = 5;
- }
-
- message Player {
- optional uint32 account_id = 1;
- repeated int32 allied_hero_ids = 2;
- repeated int32 enemy_hero_ids = 3;
- repeated .CMsgServerToGCMatchPlayerNeutralItemEquipHistory.ItemEquip item_equips = 4;
- optional bool is_winner = 5;
- }
-
- optional uint64 match_id = 1;
- repeated .CMsgServerToGCMatchPlayerNeutralItemEquipHistory.Player players = 2;
-}
-
-message CMsgServerToGCMatchStateHistory {
- message PlayerState {
- optional int32 hero_id = 1;
- optional uint32 net_worth = 2;
- optional uint32 level = 3;
- optional uint32 deaths = 4;
- optional uint32 respawn_time = 5;
- optional bool has_buyback = 6;
- optional bool has_aegis = 7;
- optional bool has_rapier = 8;
- optional uint32 distance = 9;
- }
-
- message TeamState {
- optional uint32 team = 1;
- repeated .CMsgServerToGCMatchStateHistory.PlayerState player_states = 2 [(steamml_max_entries) = 5];
- repeated uint32 tower_health_pct = 3 [(steamml_max_entries) = 11];
- repeated uint32 barracks_health_pct = 4 [(steamml_max_entries) = 3];
- optional uint32 ancient_health_pct = 5;
- optional uint32 glyph_cooldown = 6;
- optional uint32 kills = 7;
- optional uint32 creep_distance_safe = 8;
- optional uint32 creep_distance_mid = 9;
- optional uint32 creep_distance_off = 10;
- }
-
- message MatchState {
- optional uint32 game_time = 1;
- optional .CMsgServerToGCMatchStateHistory.TeamState radiant_state = 2;
- optional .CMsgServerToGCMatchStateHistory.TeamState dire_state = 3;
- }
-
- optional uint64 match_id = 1;
- optional bool radiant_won = 2;
- optional uint32 mmr = 3;
- repeated .CMsgServerToGCMatchStateHistory.MatchState match_states = 4;
-}
-
-message CMsgMatchStateSteamMLEntry {
- optional .CMsgServerToGCMatchStateHistory.MatchState match_state = 1;
- optional uint32 mmr = 2;
- optional bool radiant_won = 3;
-}
-
-message CMsgLaneSelectionSteamMLEntry {
- repeated int32 hero_ids = 1 [(steamml_max_entries) = 10];
- repeated uint32 lanes = 2 [(steamml_max_entries) = 6];
-}
-
-message CMsgAbilitySelectionSteamMLEntry {
- optional uint32 mmr = 1;
- optional int32 hero_id = 2;
- repeated int32 enemy_hero_ids = 3 [(steamml_max_entries) = 4];
- optional uint32 lane = 4;
- repeated int32 abilities = 5 [(steamml_max_entries) = 25];
- optional int32 selected_ability = 6 [default = -1];
-}
-
-message CMsgItemPurchasePregameSteamMLEntry {
- optional uint32 mmr = 1;
- optional uint32 lane = 2;
- optional float balance = 3;
- optional int32 hero_id = 4;
- repeated int32 allied_hero_ids = 5 [(steamml_max_entries) = 4];
- repeated int32 enemy_hero_ids = 6 [(steamml_max_entries) = 5];
- repeated int32 items = 7 [(steamml_max_entries) = 9];
-}
-
-message CMsgItemPurchaseSteamMLEntry {
- optional uint32 mmr = 1;
- optional uint32 lane = 2;
- optional int32 hero_id = 3;
- repeated int32 allied_hero_ids = 4 [(steamml_max_entries) = 4];
- repeated int32 enemy_hero_ids = 5 [(steamml_max_entries) = 5];
- repeated int32 items = 6 [(steamml_max_entries) = 20];
- repeated int32 items_to_be_purchased = 7 [(steamml_max_entries) = 20];
-}
-
-message CMsgItemPurchaseSequenceSteamMLEntry {
- optional uint32 mmr = 1;
- optional uint32 lane = 2;
- optional int32 hero_id = 3;
- repeated int32 allied_hero_ids = 4 [(steamml_max_entries) = 4];
- repeated int32 enemy_hero_ids = 5 [(steamml_max_entries) = 5];
- repeated int32 items = 6 [(steamml_max_entries) = 20];
- optional int32 item_to_be_purchased = 7 [default = -1];
-}
-
message CMsgServerToGCCavernCrawlIsHeroActive {
optional uint32 event_id = 1;
optional uint32 account_id = 2;
@@ -1158,8 +1016,8 @@ message CMsgSignOutGuildChallengeProgress {
message CMsgSignOutMVPStats {
message Player {
message KillEaterEvent {
- required uint32 event_type = 1;
- required uint32 amount = 2;
+ optional uint32 event_type = 1;
+ optional uint32 amount = 2;
}
optional uint32 team_id = 1;
@@ -1358,6 +1216,15 @@ message CMsgSteamLearnMatchHeroesV3 {
repeated uint32 dire_positions = 8 [(steamlearn_count) = 5];
}
+message CMsgSteamLearnMatchHeroesV4 {
+ repeated int32 radiant_hero_ids = 1 [(steamlearn_count) = 5];
+ repeated int32 dire_hero_ids = 2 [(steamlearn_count) = 5];
+ repeated uint32 radiant_lanes = 3 [(steamlearn_count) = 5];
+ repeated uint32 dire_lanes = 4 [(steamlearn_count) = 5];
+ repeated uint32 radiant_positions = 5 [(steamlearn_count) = 5];
+ repeated uint32 dire_positions = 6 [(steamlearn_count) = 5];
+}
+
message CMsgSteamLearnMatchHeroV6 {
optional int32 hero_id = 1;
optional uint32 facet = 2;
@@ -1368,6 +1235,14 @@ message CMsgSteamLearnMatchHeroV6 {
repeated uint32 enemy_hero_and_facet = 7 [(steamlearn_count) = 5];
}
+message CMsgSteamLearnMatchHeroV8 {
+ optional int32 hero_id = 1;
+ optional uint32 lane = 2;
+ optional uint32 position = 3;
+ repeated uint32 allied_heroes = 4 [(steamlearn_count) = 4];
+ repeated uint32 enemy_heroes = 5 [(steamlearn_count) = 5];
+}
+
message CMsgSteamLearnPlayerTimedStats {
message StatBucket {
optional float game_time = 1;
@@ -1443,6 +1318,14 @@ message CMsgSteamLearnNeutralItemPurchaseV4 {
optional int32 enhancement_id = 5 [default = -1];
}
+message CMsgSteamLearnNeutralItemPurchaseV6 {
+ optional uint32 tier = 1;
+ repeated int32 trinket_options = 2 [(steamlearn_count) = 5];
+ repeated int32 enhancement_options = 3 [(steamlearn_count) = 5];
+ optional int32 trinket_id = 4 [default = -1];
+ optional int32 enhancement_id = 5 [default = -1];
+}
+
message CMsgSteamLearnAbilitySkill {
optional int32 ability_id = 1 [default = -1];
repeated int32 skilled_abilities = 2 [(steamlearn_count) = 30];
@@ -1506,6 +1389,7 @@ message CMsgSignOutOverworld {
optional uint32 account_id = 1;
optional uint32 overworld_id = 2;
repeated uint32 desired_token_rewards = 3;
+ optional .CMsgOverworldFortune fortune = 4;
}
repeated .CMsgSignOutOverworld.Player players = 1;
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_webapi.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_webapi.proto
index 0b688812..8a1b0079 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_webapi.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_webapi.proto
@@ -3,6 +3,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_match_metadata.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -220,19 +221,37 @@ message CMsgTalentContentAssetStatus {
optional .ETalentContentAssetType asset_type = 1 [default = k_eTalentContentAssetType_Photo];
optional uint32 asset_index = 2;
optional .ETalentContentAssetStatus asset_status = 3 [default = k_eTalentContentAssetStatus_None];
+ optional uint32 revision = 4;
}
message CMsgTalentContentStatus {
+ message SubmitRevision {
+ optional string zip_file = 1;
+ optional uint32 timestamp = 2;
+ optional uint32 revision_number = 3;
+ }
+
message TalentDetails {
optional uint32 account_id = 1;
optional string full_name = 2;
optional string nickname = 3;
optional uint32 workshop_item_id = 4;
- optional string zip_file = 5;
- optional .ETalentContentStatus status = 6 [default = TALENT_CONTENT_STATUS_INVALID];
- repeated .CMsgTalentContentAssetStatus asset_status = 7;
- optional uint32 broadcast_language = 8;
- optional uint32 submission_timestamp = 9;
+ optional .ETalentContentStatus status = 5 [default = TALENT_CONTENT_STATUS_INVALID];
+ repeated .CMsgTalentContentAssetStatus asset_status = 8;
+ optional uint32 broadcast_language = 9;
+ repeated .CMsgTalentContentStatus.SubmitRevision revision = 10;
+ optional uint32 revision_count = 11;
+ optional .CMsgTalentContentStatus.EWorkshopItemStatus workshop_item_status = 12 [default = k_eSuccess];
+ optional string workshop_item_details = 13;
+ }
+
+ enum EWorkshopItemStatus {
+ k_eSuccess = 0;
+ k_eInvalidWorkshopId = 1;
+ k_eWrongAppId = 2;
+ k_eRevenueSharingNotFinalized = 3;
+ k_eWorkshopItemNotFound = 4;
+ k_eUnknown = 5;
}
repeated .CMsgTalentContentStatus.TalentDetails talent_status = 1;
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_match_metadata.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_match_metadata.proto
index fb97e246..277299e7 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_match_metadata.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_match_metadata.proto
@@ -8,6 +8,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/dota_gcmessages_common.proto";
import "in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -22,8 +23,8 @@ enum EPlayerInventorySnapshotFlags {
message CDOTAMatchMetadataFile {
option (maximum_size_bytes) = 1000000;
- required int32 version = 1;
- required uint64 match_id = 2;
+ optional int32 version = 1;
+ optional uint64 match_id = 2;
optional .CDOTAMatchMetadata metadata = 3;
optional bytes private_metadata = 5;
}
@@ -182,6 +183,12 @@ message CDOTAMatchMetadata {
optional .CMsgOverworldTokenQuantity tokens = 2;
}
+ message NeutralItem {
+ optional int32 trinket_id = 1 [default = -1];
+ optional int32 enchantment_id = 2 [default = -1];
+ optional int32 tier = 3;
+ }
+
repeated int32 ability_upgrades = 2;
optional uint32 player_slot = 3;
repeated .CDOTAMatchMetadata.Team.PlayerKill kills = 5;
@@ -239,6 +246,8 @@ message CDOTAMatchMetadata {
repeated .CMsgCraftworksQuestReward craftworks_quest_rewards = 60;
optional int32 ad_facet_hero_id = 61;
optional .CMsgMonsterHunterMatchRewards.Player monster_hunter_rewards = 62;
+ optional uint32 wisdom_shrines_taken = 63;
+ repeated .CDOTAMatchMetadata.Team.Player.NeutralItem neutral_items = 64;
}
optional uint32 dota_team = 1;
@@ -348,6 +357,7 @@ message CDOTAMatchPrivateMetadata {
optional uint32 abilities = 6;
optional uint32 wards = 7;
optional uint32 other = 8;
+ optional uint32 summons = 9;
}
message XPReceived {
@@ -358,6 +368,7 @@ message CDOTAMatchPrivateMetadata {
optional uint32 outpost = 5;
optional uint32 other = 6;
optional uint32 abilities = 7;
+ optional uint32 summons = 8;
}
optional uint32 player_slot = 2;
@@ -374,6 +385,8 @@ message CDOTAMatchPrivateMetadata {
optional .CDOTAMatchPrivateMetadata.Team.Player.XPReceived xp_received = 13;
optional .DOTA_GC_TEAM team_number = 14 [default = DOTA_GC_TEAM_GOOD_GUYS];
optional uint32 team_slot = 15;
+
+ reserved 16 to 25;
}
message Building {
@@ -386,9 +399,81 @@ message CDOTAMatchPrivateMetadata {
optional uint32 dota_team = 1;
repeated .CDOTAMatchPrivateMetadata.Team.Player players = 2;
repeated .CDOTAMatchPrivateMetadata.Team.Building buildings = 3;
+
+ reserved 4;
+ }
+
+ message ContributionsCombatSegment {
+ message DamageContributionRecord {
+ optional int32 attacker_ability_id = 1 [default = -1];
+ optional int32 attacker_hero_id = 2;
+ optional int32 target_hero_id = 3;
+ optional int32 contributor_ability_id = 4 [default = -1];
+ optional int32 contributor_hero_id = 5;
+ optional uint32 value = 6;
+ optional uint32 type = 7;
+ optional uint32 attacker_unit_index = 8;
+ }
+
+ message DamageMitigationRecord {
+ optional int32 attacker_ability_id = 1 [default = -1];
+ optional int32 attacker_hero_id = 2;
+ optional int32 target_hero_id = 3;
+ optional int32 contributor_ability_id = 4 [default = -1];
+ optional int32 contributor_hero_id = 5;
+ optional uint32 value = 6;
+ optional uint32 type = 7;
+ optional uint32 attacker_unit_index = 8;
+ }
+
+ message HealingContributionRecord {
+ optional int32 attacker_ability_id = 1 [default = -1];
+ optional int32 attacker_hero_id = 2;
+ optional int32 target_hero_id = 3;
+ optional int32 contributor_ability_id = 4 [default = -1];
+ optional int32 contributor_hero_id = 5;
+ optional uint32 value = 6;
+ optional uint32 type = 7;
+ optional uint32 attacker_unit_index = 8;
+ }
+
+ message HealingReductionRecord {
+ optional int32 attacker_ability_id = 1 [default = -1];
+ optional int32 attacker_hero_id = 2;
+ optional int32 target_hero_id = 3;
+ optional int32 contributor_ability_id = 4 [default = -1];
+ optional int32 contributor_hero_id = 5;
+ optional uint32 value = 6;
+ optional uint32 type = 7;
+ optional uint32 attacker_unit_index = 8;
+ }
+
+ message KillingBlow {
+ optional int32 attacker_hero_id = 1;
+ optional int32 target_hero_id = 2;
+ optional int32 inflictor_ability_id = 3 [default = -1];
+ }
+
+ message Dispel {
+ optional int32 attacker_hero_id = 1;
+ optional int32 target_hero_id = 2;
+ optional int32 inflictor_ability_id = 3 [default = -1];
+ optional int32 modifier_ability_id = 4 [default = -1];
+ optional float duration_reduced = 5;
+ }
+
+ optional int32 game_time = 1;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.DamageContributionRecord damage_contributions = 2;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.DamageMitigationRecord damage_mitigations = 3;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.HealingContributionRecord healing_contributions = 4;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.HealingReductionRecord healing_reductions = 5;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.KillingBlow killing_blows = 6;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment.Dispel dispels = 7;
}
repeated .CDOTAMatchPrivateMetadata.Team teams = 1;
repeated float graph_win_probability = 2;
repeated .CDOTAMatchPrivateMetadata.StringName string_names = 3;
+ repeated .CDOTAMatchPrivateMetadata.ContributionsCombatSegment contributions = 4;
+ repeated string contribution_unit_names = 5;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto
index 81dd5373..53eb90d8 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/dota_shared_enums.proto
@@ -1,3 +1,7 @@
+import public "in/dragonbra/javasteam/protobufs/dota2/events.proto";
+import "in/dragonbra/javasteam/protobufs/dota2/event_gcmessages_common.proto";
+import "google/protobuf/descriptor.proto";
+
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
option optimize_for = SPEED;
@@ -68,67 +72,6 @@ enum DOTA_GC_TEAM {
DOTA_GC_TEAM_NEUTRALS = 14;
}
-enum EEvent {
- EVENT_ID_NONE = 0;
- EVENT_ID_DIRETIDE = 1;
- EVENT_ID_SPRING_FESTIVAL = 2;
- EVENT_ID_FROSTIVUS_2013 = 3;
- EVENT_ID_COMPENDIUM_2014 = 4;
- EVENT_ID_NEXON_PC_BANG = 5;
- EVENT_ID_PWRD_DAC_2015 = 6;
- EVENT_ID_NEW_BLOOM_2015 = 7;
- EVENT_ID_INTERNATIONAL_2015 = 8;
- EVENT_ID_FALL_MAJOR_2015 = 9;
- EVENT_ID_ORACLE_PA = 10;
- EVENT_ID_NEW_BLOOM_2015_PREBEAST = 11;
- EVENT_ID_FROSTIVUS = 12;
- EVENT_ID_WINTER_MAJOR_2016 = 13;
- EVENT_ID_INTERNATIONAL_2016 = 14;
- EVENT_ID_FALL_MAJOR_2016 = 15;
- EVENT_ID_WINTER_MAJOR_2017 = 16;
- EVENT_ID_NEW_BLOOM_2017 = 17;
- EVENT_ID_INTERNATIONAL_2017 = 18;
- EVENT_ID_PLUS_SUBSCRIPTION = 19;
- EVENT_ID_SINGLES_DAY_2017 = 20;
- EVENT_ID_FROSTIVUS_2017 = 21;
- EVENT_ID_INTERNATIONAL_2018 = 22;
- EVENT_ID_FROSTIVUS_2018 = 23;
- EVENT_ID_NEW_BLOOM_2019 = 24;
- EVENT_ID_INTERNATIONAL_2019 = 25;
- EVENT_ID_NEW_PLAYER_EXPERIENCE = 26;
- EVENT_ID_FROSTIVUS_2019 = 27;
- EVENT_ID_NEW_BLOOM_2020 = 28;
- EVENT_ID_INTERNATIONAL_2020 = 29;
- EVENT_ID_TEAM_FANDOM = 30;
- EVENT_ID_DIRETIDE_2020 = 31;
- EVENT_ID_SPRING_2021 = 32;
- EVENT_ID_FALL_2021 = 33;
- EVENT_ID_TEAM_FANDOM_FALL_2021 = 34;
- EVENT_ID_TEAM_2021_2022_TOUR2 = 35;
- EVENT_ID_INTERNATIONAL_2022 = 36;
- EVENT_ID_TEAM_2021_2022_TOUR3 = 37;
- EVENT_ID_TEAM_INTERNATIONAL_2022 = 38;
- EVENT_ID_PERMANENT_GRANTS = 39;
- EVENT_ID_MUERTA_RELEASE_SPRING2023 = 40;
- EVENT_ID_TEAM_2023_TOUR1 = 41;
- EVENT_ID_TEAM_2023_TOUR2 = 42;
- EVENT_ID_TEAM_2023_TOUR3 = 43;
- EVENT_ID_INTERNATIONAL_2023 = 45;
- EVENT_ID_10TH_ANNIVERSARY = 46;
- EVENT_ID_CROWNFALL = 47;
- EVENT_ID_FROSTIVUS_2023 = 48;
- EVENT_ID_INTERNATIONAL_2024 = 49;
- EVENT_ID_FROSTIVUS_2024 = 50;
- EVENT_ID_MONSTER_HUNTER = 51;
- EVENT_ID_INTERNATIONAL_2025 = 52;
- EVENT_ID_FALL_2025 = 53;
- EVENT_ID_WINTER_2025 = 55;
- EVENT_ID_SPRING_2026 = 56;
- EVENT_ID_SUMMER_2026 = 57;
- EVENT_ID_FALL_2026 = 58;
- EVENT_ID_WINTER_2026 = 59;
-}
-
enum ERankType {
k_ERankType_Invalid = 0;
k_ERankType_Casual = 1;
@@ -439,6 +382,10 @@ enum DOTA_BOT_MODE {
DOTA_BOT_MODE_MINION = 25;
DOTA_BOT_MODE_OUTPOST = 26;
DOTA_BOT_MODE_BOT_CHALLENGE_ENDGAME = 27;
+ DOTA_BOT_MODE_WATCHER = 28;
+ DOTA_BOT_MODE_WISDOM_SHRINE = 29;
+ DOTA_BOT_MODE_LOTUS_POOL = 30;
+ DOTA_BOT_MODE_DEWARD = 31;
}
enum MatchLanguages {
@@ -521,6 +468,11 @@ enum EBadgeType {
k_EBadgeType_TI14_FinalsDay3 = 24;
k_EBadgeType_TI14_FinalsDay4 = 25;
k_EBadgeType_TI14_Special = 26;
+ k_EBadgeType_TI15_FinalsDay1 = 27;
+ k_EBadgeType_TI15_FinalsDay2 = 28;
+ k_EBadgeType_TI15_FinalsDay3 = 29;
+ k_EBadgeType_TI15_FinalsDay4 = 30;
+ k_EBadgeType_TI15_Special = 31;
}
enum ELeagueStatus {
@@ -698,11 +650,6 @@ enum EDPCPushNotification {
DPC_PUSH_NOTIFICATION_FANTASY_FINAL_RESULTS = 42;
}
-enum EEventActionScoreMode {
- k_eEventActionScoreMode_Add = 0;
- k_eEventActionScoreMode_Min = 1;
-}
-
enum EPlayerChallengeHistoryType {
k_EPlayerChallengeHistoryType_Invalid = 0;
k_EPlayerChallengeHistoryType_KillEater = 1;
@@ -860,6 +807,8 @@ message CMsgDOTACombatLogEntry {
optional bool will_reincarnate = 78;
optional bool uses_charges = 79;
optional uint32 tracked_stat_id = 80;
+ optional float modifier_purged_duration = 81;
+ optional bool heal_from_regen = 82;
}
message CMsgPendingEventAward {
@@ -872,12 +821,7 @@ message CMsgPendingEventAward {
}
message CMsgMonsterHunterMaterialQuantity {
- message MaterialCountsEntry {
- optional uint32 key = 1;
- optional int32 value = 2;
- }
-
- repeated .CMsgMonsterHunterMaterialQuantity.MaterialCountsEntry material_counts = 1;
+ map material_counts = 1;
}
message CMsgMonsterHunterInvestigation {
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto
index a34e7e55..06347195 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_gcmessages.proto
@@ -2,6 +2,7 @@ import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/econ_shared_enums.proto";
import "in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/base_gcmessages.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -291,6 +292,7 @@ message CMsgRequestCrateEscalationLevelResponse {
optional uint32 escalation_level1 = 3;
optional uint32 escalation_level2 = 4;
optional uint32 escalation_level3 = 5;
+ optional uint32 escalation_level4 = 6;
}
message CMsgGCToGCCanUseDropRateBonus {
@@ -442,7 +444,18 @@ message CMsgDevNewItemRequest {
}
message CMsgDevNewItemRequestResponse {
- optional bool success = 1;
+ enum EResponse {
+ k_eInternalError = 0;
+ k_eSuccess = 1;
+ k_eTooBusy = 2;
+ k_eDisabled = 3;
+ k_eTimeout = 4;
+ k_eNotAllowed = 5;
+ k_eUnknownItemDef = 6;
+ k_eItemDefNotAllowed = 7;
+ }
+
+ optional .CMsgDevNewItemRequestResponse.EResponse result = 1 [default = k_eInternalError];
}
message CMsgDevUnlockAllItemStyles {
@@ -866,13 +879,11 @@ message CMsgProcessTransactionOrder {
optional uint64 source_reference_id = 6;
optional int32 parent_stack_index = 7;
optional bool default_price = 8;
- optional bool is_user_facing = 9;
optional int32 price_index = 11;
}
optional uint64 txn_id = 1;
optional uint64 steam_txn_id = 2;
- optional uint64 partner_txn_id = 3;
optional fixed64 steam_id = 4;
optional uint32 time_stamp = 5;
optional uint64 watermark = 6;
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_shared_enums.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_shared_enums.proto
index 549c2f5f..728a45e2 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_shared_enums.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/econ_shared_enums.proto
@@ -4,39 +4,42 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum EGCEconBaseMsg {
- k_EMsgGCGenericResult = 2579;
+ k_EMsgGCGenericResult = 2579;
}
enum EGCMsgResponse {
- k_EGCMsgResponseOK = 0;
- k_EGCMsgResponseDenied = 1;
- k_EGCMsgResponseServerError = 2;
- k_EGCMsgResponseTimeout = 3;
- k_EGCMsgResponseInvalid = 4;
- k_EGCMsgResponseNoMatch = 5;
- k_EGCMsgResponseUnknownError = 6;
- k_EGCMsgResponseNotLoggedOn = 7;
- k_EGCMsgFailedToCreate = 8;
+ k_EGCMsgResponseOK = 0;
+ k_EGCMsgResponseDenied = 1;
+ k_EGCMsgResponseServerError = 2;
+ k_EGCMsgResponseTimeout = 3;
+ k_EGCMsgResponseInvalid = 4;
+ k_EGCMsgResponseNoMatch = 5;
+ k_EGCMsgResponseUnknownError = 6;
+ k_EGCMsgResponseNotLoggedOn = 7;
+ k_EGCMsgFailedToCreate = 8;
}
enum EGCMsgUseItemResponse {
- k_EGCMsgUseItemResponse_ItemUsed = 0;
- k_EGCMsgUseItemResponse_GiftNoOtherPlayers = 1;
- k_EGCMsgUseItemResponse_ServerError = 2;
- k_EGCMsgUseItemResponse_MiniGameAlreadyStarted = 3;
- k_EGCMsgUseItemResponse_ItemUsed_ItemsGranted = 4;
- k_EGCMsgUseItemResponse_DropRateBonusAlreadyGranted = 5;
- k_EGCMsgUseItemResponse_NotInLowPriorityPool = 6;
- k_EGCMsgUseItemResponse_NotHighEnoughLevel = 7;
- k_EGCMsgUseItemResponse_EventNotActive = 8;
- k_EGCMsgUseItemResponse_ItemUsed_EventPointsGranted = 9;
- k_EGCMsgUseItemResponse_MissingRequirement = 10;
- k_EGCMsgUseItemResponse_EmoticonUnlock_NoNew = 11;
- k_EGCMsgUseItemResponse_EmoticonUnlock_Complete = 12;
- k_EGCMsgUseItemResponse_ItemUsed_Compendium = 13;
+ k_EGCMsgUseItemResponse_ItemUsed = 0;
+ k_EGCMsgUseItemResponse_GiftNoOtherPlayers = 1;
+ k_EGCMsgUseItemResponse_ServerError = 2;
+ k_EGCMsgUseItemResponse_MiniGameAlreadyStarted = 3;
+ k_EGCMsgUseItemResponse_ItemUsed_ItemsGranted = 4;
+ k_EGCMsgUseItemResponse_DropRateBonusAlreadyGranted = 5;
+ k_EGCMsgUseItemResponse_NotInLowPriorityPool = 6;
+ k_EGCMsgUseItemResponse_NotHighEnoughLevel = 7;
+ k_EGCMsgUseItemResponse_EventNotActive = 8;
+ k_EGCMsgUseItemResponse_ItemUsed_EventPointsGranted = 9;
+ k_EGCMsgUseItemResponse_MissingRequirement = 10;
+ k_EGCMsgUseItemResponse_EmoticonUnlock_NoNew = 11;
+ k_EGCMsgUseItemResponse_EmoticonUnlock_Complete = 12;
+ k_EGCMsgUseItemResponse_ItemUsed_Compendium = 13;
+ k_EGCMsgUseItemResponse_CannotUseWhileUntradable = 14;
+ k_EGCMsgUseItemResponse_CannotBeUsedByAccount = 15;
+ k_EGCMsgUseItemResponse_RecipientCannotRecieve = 16;
}
message CMsgGenericResult {
- optional uint32 eresult = 1 [default = 2];
- optional string debug_message = 2;
+ optional uint32 eresult = 1 [default = 2];
+ optional string debug_message = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/event_gcmessages_common.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/event_gcmessages_common.proto
new file mode 100644
index 00000000..eb3ee51c
--- /dev/null
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/event_gcmessages_common.proto
@@ -0,0 +1,39 @@
+import "google/protobuf/descriptor.proto";
+
+option java_package = "in.dragonbra.javasteam.protobufs.dota2";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+enum EEventActionScoreMode {
+ k_eEventActionScoreMode_Add = 0;
+ k_eEventActionScoreMode_Min = 1;
+}
+
+message CMsgEventAction {
+ optional uint32 action_id = 1;
+ optional uint32 times_completed = 2 [default = 1];
+}
+
+message CMsgUserEventPoints {
+ optional uint32 account_id = 1;
+ optional uint32 event_id = 2;
+ optional uint32 total_points = 3;
+ optional uint32 total_premium_points = 4;
+ optional uint32 points = 5;
+ optional uint32 premium_points = 6;
+ repeated .CMsgEventAction completed_actions = 7;
+ optional bool owned = 8;
+ optional uint32 active_season_id = 9;
+}
+
+message CMsgPeriodicResourceKey {
+ optional uint32 account_id = 1;
+ optional uint32 periodic_resource_id = 2;
+ optional uint32 timestamp = 3;
+}
+
+message CMsgPeriodicResourceValue {
+ optional uint32 periodic_resource_max = 1;
+ optional uint32 periodic_resource_used = 2;
+}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/events.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/events.proto
new file mode 100644
index 00000000..4daa7322
--- /dev/null
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/events.proto
@@ -0,0 +1,67 @@
+option java_package = "in.dragonbra.javasteam.protobufs.dota2";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+enum EEvent {
+ EVENT_ID_NONE = 0;
+ EVENT_ID_DIRETIDE = 1;
+ EVENT_ID_SPRING_FESTIVAL = 2;
+ EVENT_ID_FROSTIVUS_2013 = 3;
+ EVENT_ID_COMPENDIUM_2014 = 4;
+ EVENT_ID_NEXON_PC_BANG = 5;
+ EVENT_ID_PWRD_DAC_2015 = 6;
+ EVENT_ID_NEW_BLOOM_2015 = 7;
+ EVENT_ID_INTERNATIONAL_2015 = 8;
+ EVENT_ID_FALL_MAJOR_2015 = 9;
+ EVENT_ID_ORACLE_PA = 10;
+ EVENT_ID_NEW_BLOOM_2015_PREBEAST = 11;
+ EVENT_ID_FROSTIVUS = 12;
+ EVENT_ID_WINTER_MAJOR_2016 = 13;
+ EVENT_ID_INTERNATIONAL_2016 = 14;
+ EVENT_ID_FALL_MAJOR_2016 = 15;
+ EVENT_ID_WINTER_MAJOR_2017 = 16;
+ EVENT_ID_NEW_BLOOM_2017 = 17;
+ EVENT_ID_INTERNATIONAL_2017 = 18;
+ EVENT_ID_PLUS_SUBSCRIPTION = 19;
+ EVENT_ID_SINGLES_DAY_2017 = 20;
+ EVENT_ID_FROSTIVUS_2017 = 21;
+ EVENT_ID_INTERNATIONAL_2018 = 22;
+ EVENT_ID_FROSTIVUS_2018 = 23;
+ EVENT_ID_NEW_BLOOM_2019 = 24;
+ EVENT_ID_INTERNATIONAL_2019 = 25;
+ EVENT_ID_NEW_PLAYER_EXPERIENCE = 26;
+ EVENT_ID_FROSTIVUS_2019 = 27;
+ EVENT_ID_NEW_BLOOM_2020 = 28;
+ EVENT_ID_INTERNATIONAL_2020 = 29;
+ EVENT_ID_TEAM_FANDOM = 30;
+ EVENT_ID_DIRETIDE_2020 = 31;
+ EVENT_ID_SPRING_2021 = 32;
+ EVENT_ID_FALL_2021 = 33;
+ EVENT_ID_TEAM_FANDOM_FALL_2021 = 34;
+ EVENT_ID_TEAM_2021_2022_TOUR2 = 35;
+ EVENT_ID_INTERNATIONAL_2022 = 36;
+ EVENT_ID_TEAM_2021_2022_TOUR3 = 37;
+ EVENT_ID_TEAM_INTERNATIONAL_2022 = 38;
+ EVENT_ID_PERMANENT_GRANTS = 39;
+ EVENT_ID_MUERTA_RELEASE_SPRING2023 = 40;
+ EVENT_ID_TEAM_2023_TOUR1 = 41;
+ EVENT_ID_TEAM_2023_TOUR2 = 42;
+ EVENT_ID_TEAM_2023_TOUR3 = 43;
+ EVENT_ID_INTERNATIONAL_2023 = 45;
+ EVENT_ID_10TH_ANNIVERSARY = 46;
+ EVENT_ID_CROWNFALL = 47;
+ EVENT_ID_FROSTIVUS_2023 = 48;
+ EVENT_ID_INTERNATIONAL_2024 = 49;
+ EVENT_ID_FROSTIVUS_2024 = 50;
+ EVENT_ID_MONSTER_HUNTER = 51;
+ EVENT_ID_INTERNATIONAL_2025 = 52;
+ EVENT_ID_FALL_2025 = 53;
+ EVENT_ID_DARK_CARNIVAL = 54;
+ EVENT_ID_WINTER_2025 = 55;
+ EVENT_ID_SPRING_2026 = 56;
+ EVENT_ID_SUMMER_2026 = 57;
+ EVENT_ID_FALL_2026 = 58;
+ EVENT_ID_WINTER_2026 = 59;
+ EVENT_ID_INTERNATIONAL_2026 = 60;
+}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto
index 724a985f..941a8be9 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsdk_gcmessages.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto";
import "in/dragonbra/javasteam/protobufs/dota2/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto";
+import "google/protobuf/descriptor.proto";
option java_package = "in.dragonbra.javasteam.protobufs.dota2";
@@ -8,494 +9,493 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ESourceEngine {
- k_ESE_Source1 = 0;
- k_ESE_Source2 = 1;
+ k_ESE_Source1 = 0;
+ k_ESE_Source2 = 1;
}
enum PartnerAccountType {
- PARTNER_NONE = 0;
- PARTNER_PERFECT_WORLD = 1;
- PARTNER_INVALID = 3;
+ PARTNER_NONE = 0;
+ PARTNER_PERFECT_WORLD = 1;
+ PARTNER_INVALID = 3;
}
enum GCConnectionStatus {
- GCConnectionStatus_HAVE_SESSION = 0;
- GCConnectionStatus_GC_GOING_DOWN = 1;
- GCConnectionStatus_NO_SESSION = 2;
- GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3;
- GCConnectionStatus_NO_STEAM = 4;
- GCConnectionStatus_SUSPENDED = 5;
- GCConnectionStatus_STEAM_GOING_DOWN = 6;
+ GCConnectionStatus_HAVE_SESSION = 0;
+ GCConnectionStatus_GC_GOING_DOWN = 1;
+ GCConnectionStatus_NO_SESSION = 2;
+ GCConnectionStatus_NO_SESSION_IN_LOGON_QUEUE = 3;
+ GCConnectionStatus_NO_STEAM = 4;
+ GCConnectionStatus_SUSPENDED = 5;
+ GCConnectionStatus_STEAM_GOING_DOWN = 6;
}
message CExtraMsgBlock {
- optional uint32 msg_type = 1;
- optional bytes contents = 2 [(debugprint_visibility) = k_EProtoDebugVisibility_Never];
- optional uint64 msg_key = 3;
- optional bool is_compressed = 4;
+ optional uint32 msg_type = 1;
+ optional bytes contents = 2 [(debugprint_visibility) = k_EProtoDebugVisibility_Never];
+ optional uint64 msg_key = 3;
+ optional bool is_compressed = 4;
}
message CMsgSteamLearnServerInfo {
- message ProjectInfo {
- optional uint32 project_id = 1;
- optional uint32 snapshot_published_version = 2;
- optional uint32 inference_published_version = 3;
- optional uint32 snapshot_percentage = 6;
- optional bool snapshot_enabled = 7;
- }
+ message ProjectInfo {
+ optional uint32 project_id = 1;
+ optional uint32 snapshot_published_version = 2;
+ optional uint32 inference_published_version = 3;
+ optional uint32 snapshot_percentage = 6;
+ optional bool snapshot_enabled = 7;
+ }
- optional .CMsgSteamLearnAccessTokens access_tokens = 4;
- repeated .CMsgSteamLearnServerInfo.ProjectInfo project_infos = 5;
+ optional .CMsgSteamLearnAccessTokens access_tokens = 4;
+ repeated .CMsgSteamLearnServerInfo.ProjectInfo project_infos = 5;
}
message CMsgGCAssertJobData {
- optional string message_type = 1;
- optional bytes message_data = 2;
+ optional string message_type = 1;
+ optional bytes message_data = 2;
}
message CMsgGCConCommand {
- optional string command = 1;
+ optional string command = 1;
}
message CMsgSDOAssert {
- message Request {
- repeated uint64 key = 1;
- optional string requesting_job = 2;
- }
+ message Request {
+ repeated uint64 key = 1;
+ optional string requesting_job = 2;
+ }
- optional int32 sdo_type = 1;
- repeated .CMsgSDOAssert.Request requests = 2;
+ optional int32 sdo_type = 1;
+ repeated .CMsgSDOAssert.Request requests = 2;
}
message CMsgSOIDOwner {
- optional uint32 type = 1;
- optional uint64 id = 2;
+ optional uint32 type = 1;
+ optional uint64 id = 2;
}
message CMsgSOSingleObject {
- optional int32 type_id = 2;
- optional bytes object_data = 3;
- optional fixed64 version = 4;
- optional .CMsgSOIDOwner owner_soid = 5;
- optional uint32 service_id = 6;
+ optional int32 type_id = 2;
+ optional bytes object_data = 3;
+ optional fixed64 version = 4;
+ optional .CMsgSOIDOwner owner_soid = 5;
+ optional uint32 service_id = 6;
}
message CMsgSOMultipleObjects {
- message SingleObject {
- option (msgpool_soft_limit) = 256;
- option (msgpool_hard_limit) = 1024;
+ message SingleObject {
+ option (msgpool_soft_limit) = 256;
+ option (msgpool_hard_limit) = 1024;
- optional int32 type_id = 1;
- optional bytes object_data = 2;
- }
+ optional int32 type_id = 1;
+ optional bytes object_data = 2;
+ }
- repeated .CMsgSOMultipleObjects.SingleObject objects_modified = 2;
- optional fixed64 version = 3;
- repeated .CMsgSOMultipleObjects.SingleObject objects_added = 4;
- repeated .CMsgSOMultipleObjects.SingleObject objects_removed = 5;
- optional .CMsgSOIDOwner owner_soid = 6;
- optional uint32 service_id = 7;
+ repeated .CMsgSOMultipleObjects.SingleObject objects_modified = 2;
+ optional fixed64 version = 3;
+ repeated .CMsgSOMultipleObjects.SingleObject objects_added = 4;
+ repeated .CMsgSOMultipleObjects.SingleObject objects_removed = 5;
+ optional .CMsgSOIDOwner owner_soid = 6;
+ optional uint32 service_id = 7;
}
message CMsgSOCacheSubscribed {
- message SubscribedType {
- optional int32 type_id = 1;
- repeated bytes object_data = 2;
- }
+ message SubscribedType {
+ optional int32 type_id = 1;
+ repeated bytes object_data = 2;
+ }
- repeated .CMsgSOCacheSubscribed.SubscribedType objects = 2;
- optional fixed64 version = 3;
- optional .CMsgSOIDOwner owner_soid = 4;
- optional uint32 service_id = 5;
- repeated uint32 service_list = 6;
- optional fixed64 sync_version = 7;
+ repeated .CMsgSOCacheSubscribed.SubscribedType objects = 2;
+ optional fixed64 version = 3;
+ optional .CMsgSOIDOwner owner_soid = 4;
+ optional uint32 service_id = 5;
+ repeated uint32 service_list = 6;
+ optional fixed64 sync_version = 7;
}
message CMsgSOCacheSubscribedUpToDate {
- optional fixed64 version = 1;
- optional .CMsgSOIDOwner owner_soid = 2;
- optional uint32 service_id = 3;
- repeated uint32 service_list = 4;
- optional fixed64 sync_version = 5;
+ optional fixed64 version = 1;
+ optional .CMsgSOIDOwner owner_soid = 2;
+ optional uint32 service_id = 3;
+ repeated uint32 service_list = 4;
+ optional fixed64 sync_version = 5;
}
message CMsgSOCacheUnsubscribed {
- optional .CMsgSOIDOwner owner_soid = 2;
+ optional .CMsgSOIDOwner owner_soid = 2;
}
message CMsgSOCacheSubscriptionCheck {
- optional fixed64 version = 2;
- optional .CMsgSOIDOwner owner_soid = 3;
- optional uint32 service_id = 4;
- repeated uint32 service_list = 5;
- optional fixed64 sync_version = 6;
+ optional fixed64 version = 2;
+ optional .CMsgSOIDOwner owner_soid = 3;
+ optional uint32 service_id = 4;
+ repeated uint32 service_list = 5;
+ optional fixed64 sync_version = 6;
}
message CMsgSOCacheSubscriptionRefresh {
- optional .CMsgSOIDOwner owner_soid = 2;
+ optional .CMsgSOIDOwner owner_soid = 2;
}
message CMsgSOCacheVersion {
- optional fixed64 version = 1;
+ optional fixed64 version = 1;
}
message CMsgGCMultiplexMessage {
- optional uint32 msgtype = 1;
- optional bytes payload = 2;
- repeated fixed64 steamids = 3;
+ optional uint32 msgtype = 1;
+ optional bytes payload = 2;
+ repeated fixed64 steamids = 3;
}
message CMsgGCToGCSubGCStarting {
- optional int32 dir_index = 1 [default = -1];
+ optional int32 dir_index = 1 [default = -1];
}
message CGCToGCMsgMasterAck {
- message Process {
- optional int32 dir_index = 1 [default = -1];
- repeated uint32 type_instances = 2;
- }
+ message Process {
+ optional int32 dir_index = 1 [default = -1];
+ repeated uint32 type_instances = 2;
+ }
- optional int32 dir_index = 1 [default = -1];
- optional string machine_name = 3;
- optional string process_name = 4;
- repeated .CGCToGCMsgMasterAck.Process directory = 6;
+ optional int32 dir_index = 1 [default = -1];
+ optional string machine_name = 3;
+ optional string process_name = 4;
+ repeated .CGCToGCMsgMasterAck.Process directory = 6;
}
message CGCToGCMsgMasterAck_Response {
- optional int32 eresult = 1 [default = 2];
+ optional int32 eresult = 1 [default = 2];
}
message CMsgGCToGCUniverseStartup {
- optional bool is_initial_startup = 1;
+ optional bool is_initial_startup = 1;
}
message CMsgGCToGCUniverseStartupResponse {
- optional int32 eresult = 1;
+ optional int32 eresult = 1;
}
message CGCToGCMsgMasterStartupComplete {
- message GCInfo {
- optional int32 dir_index = 1 [default = -1];
- optional string machine_name = 2;
- }
+ message GCInfo {
+ optional int32 dir_index = 1 [default = -1];
+ optional string machine_name = 2;
+ }
- repeated .CGCToGCMsgMasterStartupComplete.GCInfo gc_info = 1;
+ repeated .CGCToGCMsgMasterStartupComplete.GCInfo gc_info = 1;
}
message CGCToGCMsgRouted {
- optional uint32 msg_type = 1;
- optional fixed64 sender_id = 2;
- optional bytes net_message = 3;
+ optional uint32 msg_type = 1;
+ optional fixed64 sender_id = 2;
+ optional bytes net_message = 3;
}
message CGCToGCMsgRoutedReply {
- optional uint32 msg_type = 1;
- optional bytes net_message = 2;
+ optional uint32 msg_type = 1;
+ optional bytes net_message = 2;
}
message CMsgGCUpdateSubGCSessionInfo {
- message CMsgUpdate {
- optional fixed64 steamid = 1;
- optional fixed32 ip = 2;
- optional bool trusted = 3;
- }
+ message CMsgUpdate {
+ optional fixed64 steamid = 1;
+ optional fixed32 ip = 2;
+ optional bool trusted = 3;
+ }
- repeated .CMsgGCUpdateSubGCSessionInfo.CMsgUpdate updates = 1;
+ repeated .CMsgGCUpdateSubGCSessionInfo.CMsgUpdate updates = 1;
}
message CMsgGCRequestSubGCSessionInfo {
- optional fixed64 steamid = 1;
+ optional fixed64 steamid = 1;
}
message CMsgGCRequestSubGCSessionInfoResponse {
- optional fixed32 ip = 1;
- optional bool trusted = 2;
- optional uint32 port = 3;
- optional bool success = 4;
+ optional fixed32 ip = 1;
+ optional bool trusted = 2;
+ optional uint32 port = 3;
+ optional bool success = 4;
}
message CMsgSOCacheHaveVersion {
- optional .CMsgSOIDOwner soid = 1;
- optional fixed64 version = 2;
- optional uint32 service_id = 3;
- optional uint32 cached_file_version = 4;
+ optional .CMsgSOIDOwner soid = 1;
+ optional fixed64 version = 2;
+ optional uint32 service_id = 3;
+ optional uint32 cached_file_version = 4;
}
message CMsgClientHello {
- optional uint32 version = 1;
- repeated .CMsgSOCacheHaveVersion socache_have_versions = 2;
- optional uint32 client_session_need = 3;
- optional .PartnerAccountType client_launcher = 4 [default = PARTNER_NONE];
- optional string secret_key = 5;
- optional uint32 client_language = 6;
- optional .ESourceEngine engine = 7 [default = k_ESE_Source1];
- optional bytes steamdatagram_login = 8;
- optional uint32 platform_id = 9;
- optional bytes game_msg = 10;
- optional int32 os_type = 11;
- optional uint32 render_system = 12;
- optional uint32 render_system_req = 13;
- optional uint32 screen_width = 14;
- optional uint32 screen_height = 15;
- optional uint32 screen_refresh = 16;
- optional uint32 render_width = 17;
- optional uint32 render_height = 18;
- optional uint32 swap_width = 19;
- optional uint32 swap_height = 20;
- optional bool is_steam_china = 22;
- optional bool is_steam_china_client = 24;
- optional string platform_name = 23;
+ optional uint32 version = 1;
+ repeated .CMsgSOCacheHaveVersion socache_have_versions = 2;
+ optional uint32 client_session_need = 3;
+ optional .PartnerAccountType client_launcher = 4 [default = PARTNER_NONE];
+ optional uint32 client_language = 6;
+ optional .ESourceEngine engine = 7 [default = k_ESE_Source1];
+ optional bytes steamdatagram_login = 8;
+ optional uint32 platform_id = 9;
+ optional bytes game_msg = 10;
+ optional int32 os_type = 11;
+ optional uint32 render_system = 12;
+ optional uint32 render_system_req = 13;
+ optional uint32 screen_width = 14;
+ optional uint32 screen_height = 15;
+ optional uint32 screen_refresh = 16;
+ optional uint32 render_width = 17;
+ optional uint32 render_height = 18;
+ optional uint32 swap_width = 19;
+ optional uint32 swap_height = 20;
+ optional bool is_steam_china = 22;
+ optional bool is_steam_china_client = 24;
+ optional string platform_name = 23;
}
message CMsgClientWelcome {
- message Location {
- optional float latitude = 1;
- optional float longitude = 2;
- optional string country = 3;
- }
-
- optional uint32 version = 1;
- optional bytes game_data = 2;
- repeated .CMsgSOCacheSubscribed outofdate_subscribed_caches = 3;
- repeated .CMsgSOCacheSubscriptionCheck uptodate_subscribed_caches = 4;
- optional .CMsgClientWelcome.Location location = 5;
- optional uint32 gc_socache_file_version = 9;
- optional string txn_country_code = 10;
- optional bytes game_data2 = 11;
- optional uint32 rtime32_gc_welcome_timestamp = 12;
- optional uint32 currency = 13;
- optional uint32 balance = 14;
- optional string balance_url = 15;
- optional bool has_accepted_china_ssa = 16;
- optional bool is_banned_steam_china = 17;
- optional .CExtraMsgBlock additional_welcome_msgs = 18;
- optional .CMsgSteamLearnServerInfo steam_learn_server_info = 20;
+ message Location {
+ optional float latitude = 1;
+ optional float longitude = 2;
+ optional string country = 3;
+ }
+
+ optional uint32 version = 1;
+ optional bytes game_data = 2;
+ repeated .CMsgSOCacheSubscribed outofdate_subscribed_caches = 3;
+ repeated .CMsgSOCacheSubscriptionCheck uptodate_subscribed_caches = 4;
+ optional .CMsgClientWelcome.Location location = 5;
+ optional uint32 gc_socache_file_version = 9;
+ optional string txn_country_code = 10;
+ optional bytes game_data2 = 11;
+ optional uint32 rtime32_gc_welcome_timestamp = 12;
+ optional uint32 currency = 13;
+ optional uint32 balance = 14;
+ optional string balance_url = 15;
+ optional bool has_accepted_china_ssa = 16;
+ optional bool is_banned_steam_china = 17;
+ optional .CExtraMsgBlock additional_welcome_msgs = 18;
+ optional .CMsgSteamLearnServerInfo steam_learn_server_info = 20;
}
message CMsgConnectionStatus {
- optional .GCConnectionStatus status = 1 [default = GCConnectionStatus_HAVE_SESSION];
- optional uint32 client_session_need = 2;
- optional int32 queue_position = 3;
- optional int32 queue_size = 4;
- optional int32 wait_seconds = 5;
- optional int32 estimated_wait_seconds_remaining = 6;
+ optional .GCConnectionStatus status = 1 [default = GCConnectionStatus_HAVE_SESSION];
+ optional uint32 client_session_need = 2;
+ optional int32 queue_position = 3;
+ optional int32 queue_size = 4;
+ optional int32 wait_seconds = 5;
+ optional int32 estimated_wait_seconds_remaining = 6;
}
message CMsgGCToGCSOCacheSubscribe {
- message CMsgHaveVersions {
- optional uint32 service_id = 1;
- optional uint64 version = 2;
- }
+ message CMsgHaveVersions {
+ optional uint32 service_id = 1;
+ optional uint64 version = 2;
+ }
- optional fixed64 subscriber = 1;
- optional fixed64 subscribe_to_id = 2;
- optional fixed64 sync_version = 3;
- repeated .CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions have_versions = 4;
- optional uint32 subscribe_to_type = 5;
+ optional fixed64 subscriber = 1;
+ optional fixed64 subscribe_to_id = 2;
+ optional fixed64 sync_version = 3;
+ repeated .CMsgGCToGCSOCacheSubscribe.CMsgHaveVersions have_versions = 4;
+ optional uint32 subscribe_to_type = 5;
}
message CMsgGCToGCSOCacheUnsubscribe {
- optional fixed64 subscriber = 1;
- optional fixed64 unsubscribe_from_id = 2;
- optional uint32 unsubscribe_from_type = 3;
+ optional fixed64 subscriber = 1;
+ optional fixed64 unsubscribe_from_id = 2;
+ optional uint32 unsubscribe_from_type = 3;
}
message CMsgGCClientPing {
}
message CMsgGCToGCForwardAccountDetails {
- optional fixed64 steamid = 1;
- optional .CGCSystemMsg_GetAccountDetails_Response account_details = 2;
- optional uint32 age_seconds = 3;
+ optional fixed64 steamid = 1;
+ optional .CGCSystemMsg_GetAccountDetails_Response account_details = 2;
+ optional uint32 age_seconds = 3;
}
message CMsgGCToGCLoadSessionSOCache {
- optional uint32 account_id = 1;
- optional .CMsgGCToGCForwardAccountDetails forward_account_details = 2;
+ optional uint32 account_id = 1;
+ optional .CMsgGCToGCForwardAccountDetails forward_account_details = 2;
}
message CMsgGCToGCLoadSessionSOCacheResponse {
}
message CMsgGCToGCUpdateSessionStats {
- optional uint32 user_sessions = 1;
- optional uint32 server_sessions = 2;
- optional bool in_logon_surge = 3;
+ optional uint32 user_sessions = 1;
+ optional uint32 server_sessions = 2;
+ optional bool in_logon_surge = 3;
}
message CMsgGCToClientRequestDropped {
}
message CWorkshop_PopulateItemDescriptions_Request {
- message SingleItemDescription {
- optional uint32 gameitemid = 1;
- optional string item_description = 2;
- }
+ message SingleItemDescription {
+ optional uint32 gameitemid = 1;
+ optional string item_description = 2;
+ }
- message ItemDescriptionsLanguageBlock {
- optional string language = 1;
- repeated .CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription descriptions = 2;
- }
+ message ItemDescriptionsLanguageBlock {
+ optional string language = 1;
+ repeated .CWorkshop_PopulateItemDescriptions_Request.SingleItemDescription descriptions = 2;
+ }
- optional uint32 appid = 1;
- repeated .CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock languages = 2;
+ optional uint32 appid = 1;
+ repeated .CWorkshop_PopulateItemDescriptions_Request.ItemDescriptionsLanguageBlock languages = 2;
}
message CWorkshop_GetContributors_Request {
- optional uint32 appid = 1;
- optional uint32 gameitemid = 2;
+ optional uint32 appid = 1;
+ optional uint32 gameitemid = 2;
}
message CWorkshop_GetContributors_Response {
- repeated fixed64 contributors = 1;
+ repeated fixed64 contributors = 1;
}
message CWorkshop_SetItemPaymentRules_Request {
- message WorkshopItemPaymentRule {
- optional uint64 workshop_file_id = 1;
- optional float revenue_percentage = 2;
- optional string rule_description = 3;
- optional uint32 rule_type = 4 [default = 1];
- }
-
- message WorkshopDirectPaymentRule {
- optional uint64 workshop_file_id = 1;
- optional string rule_description = 2;
- }
-
- message PartnerItemPaymentRule {
- optional uint32 account_id = 1;
- optional float revenue_percentage = 2;
- optional string rule_description = 3;
- }
-
- optional uint32 appid = 1;
- optional uint32 gameitemid = 2;
- repeated .CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule associated_workshop_files = 3;
- repeated .CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule partner_accounts = 4;
- optional bool validate_only = 5;
- optional bool make_workshop_files_subscribable = 6;
- optional .CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule associated_workshop_file_for_direct_payments = 7;
+ message WorkshopItemPaymentRule {
+ optional uint64 workshop_file_id = 1;
+ optional float revenue_percentage = 2;
+ optional string rule_description = 3;
+ optional uint32 rule_type = 4 [default = 1];
+ }
+
+ message WorkshopDirectPaymentRule {
+ optional uint64 workshop_file_id = 1;
+ optional string rule_description = 2;
+ }
+
+ message PartnerItemPaymentRule {
+ optional uint32 account_id = 1;
+ optional float revenue_percentage = 2;
+ optional string rule_description = 3;
+ }
+
+ optional uint32 appid = 1;
+ optional uint32 gameitemid = 2;
+ repeated .CWorkshop_SetItemPaymentRules_Request.WorkshopItemPaymentRule associated_workshop_files = 3;
+ repeated .CWorkshop_SetItemPaymentRules_Request.PartnerItemPaymentRule partner_accounts = 4;
+ optional bool validate_only = 5;
+ optional bool make_workshop_files_subscribable = 6;
+ optional .CWorkshop_SetItemPaymentRules_Request.WorkshopDirectPaymentRule associated_workshop_file_for_direct_payments = 7;
}
message CWorkshop_SetItemPaymentRules_Response {
- repeated string validation_errors = 1;
+ repeated string validation_errors = 1;
}
message CCommunity_ClanAnnouncementInfo {
- optional uint64 gid = 1;
- optional uint64 clanid = 2;
- optional uint64 posterid = 3;
- optional string headline = 4;
- optional uint32 posttime = 5;
- optional uint32 updatetime = 6;
- optional string body = 7;
- optional int32 commentcount = 8;
- repeated string tags = 9;
- optional int32 language = 10;
- optional bool hidden = 11;
- optional fixed64 forum_topic_id = 12;
+ optional uint64 gid = 1;
+ optional uint64 clanid = 2;
+ optional uint64 posterid = 3;
+ optional string headline = 4;
+ optional uint32 posttime = 5;
+ optional uint32 updatetime = 6;
+ optional string body = 7;
+ optional int32 commentcount = 8;
+ repeated string tags = 9;
+ optional int32 language = 10;
+ optional bool hidden = 11;
+ optional fixed64 forum_topic_id = 12;
}
message CCommunity_GetClanAnnouncements_Request {
- optional uint64 steamid = 1;
- optional uint32 offset = 2;
- optional uint32 count = 3;
- optional uint32 maxchars = 4;
- optional bool strip_html = 5;
- repeated string required_tags = 6;
- optional bool require_no_tags = 7;
- repeated uint32 language_preference = 8;
- optional bool hidden_only = 9;
- optional bool only_gid = 10;
- optional uint32 rtime_oldest_date = 11;
- optional bool include_hidden = 12;
- optional bool include_partner_events = 13;
+ optional uint64 steamid = 1;
+ optional uint32 offset = 2;
+ optional uint32 count = 3;
+ optional uint32 maxchars = 4;
+ optional bool strip_html = 5;
+ repeated string required_tags = 6;
+ optional bool require_no_tags = 7;
+ repeated uint32 language_preference = 8;
+ optional bool hidden_only = 9;
+ optional bool only_gid = 10;
+ optional uint32 rtime_oldest_date = 11;
+ optional bool include_hidden = 12;
+ optional bool include_partner_events = 13;
}
message CCommunity_GetClanAnnouncements_Response {
- optional uint32 maxchars = 1;
- optional bool strip_html = 2;
- repeated .CCommunity_ClanAnnouncementInfo announcements = 3;
+ optional uint32 maxchars = 1;
+ optional bool strip_html = 2;
+ repeated .CCommunity_ClanAnnouncementInfo announcements = 3;
}
message CBroadcast_PostGameDataFrame_Request {
- optional uint32 appid = 1;
- optional fixed64 steamid = 2;
- optional fixed64 broadcast_id = 3;
- optional bytes frame_data = 4;
+ optional uint32 appid = 1;
+ optional fixed64 steamid = 2;
+ optional fixed64 broadcast_id = 3;
+ optional bytes frame_data = 4;
}
message CMsgSerializedSOCache {
- message TypeCache {
- optional uint32 type = 1;
- repeated bytes objects = 2;
- optional uint32 service_id = 3;
- }
+ message TypeCache {
+ optional uint32 type = 1;
+ repeated bytes objects = 2;
+ optional uint32 service_id = 3;
+ }
- message Cache {
- message Version {
- optional uint32 service = 1;
- optional uint64 version = 2;
- }
+ message Cache {
+ message Version {
+ optional uint32 service = 1;
+ optional uint64 version = 2;
+ }
- optional uint32 type = 1;
- optional uint64 id = 2;
- repeated .CMsgSerializedSOCache.Cache.Version versions = 3;
- repeated .CMsgSerializedSOCache.TypeCache type_caches = 4;
- }
+ optional uint32 type = 1;
+ optional uint64 id = 2;
+ repeated .CMsgSerializedSOCache.Cache.Version versions = 3;
+ repeated .CMsgSerializedSOCache.TypeCache type_caches = 4;
+ }
- optional uint32 file_version = 1;
- repeated .CMsgSerializedSOCache.Cache caches = 2;
- optional uint32 gc_socache_file_version = 3;
+ optional uint32 file_version = 1;
+ repeated .CMsgSerializedSOCache.Cache caches = 2;
+ optional uint32 gc_socache_file_version = 3;
}
message CMsgGCToClientPollConvarRequest {
- optional string convar_name = 1;
- optional uint32 poll_id = 2;
+ optional string convar_name = 1;
+ optional uint32 poll_id = 2;
}
message CMsgGCToClientPollConvarResponse {
- optional uint32 poll_id = 1;
- optional string convar_value = 2;
+ optional uint32 poll_id = 1;
+ optional string convar_value = 2;
}
message CGCMsgCompressedMsgToClient {
- optional uint32 msg_id = 1;
- optional bytes compressed_msg = 2;
+ optional uint32 msg_id = 1;
+ optional bytes compressed_msg = 2;
}
message CMsgGCToGCMasterBroadcastMessage {
- optional uint32 users_per_second = 1;
- optional bool send_to_users = 2;
- optional bool send_to_servers = 3;
- optional uint32 msg_id = 4;
- optional bytes msg_data = 5;
- optional bool trusted_servers_only = 6;
+ optional uint32 users_per_second = 1;
+ optional bool send_to_users = 2;
+ optional bool send_to_servers = 3;
+ optional uint32 msg_id = 4;
+ optional bytes msg_data = 5;
+ optional bool trusted_servers_only = 6;
}
message CMsgGCToGCMasterSubscribeToCache {
- optional uint32 soid_type = 1;
- optional fixed64 soid_id = 2;
- repeated uint32 account_ids = 3;
- repeated fixed64 steam_ids = 4;
+ optional uint32 soid_type = 1;
+ optional fixed64 soid_id = 2;
+ repeated uint32 account_ids = 3;
+ repeated fixed64 steam_ids = 4;
}
message CMsgGCToGCMasterSubscribeToCacheResponse {
}
message CMsgGCToGCMasterSubscribeToCacheAsync {
- optional .CMsgGCToGCMasterSubscribeToCache subscribe_msg = 1;
+ optional .CMsgGCToGCMasterSubscribeToCache subscribe_msg = 1;
}
message CMsgGCToGCMasterUnsubscribeFromCache {
- optional uint32 soid_type = 1;
- optional fixed64 soid_id = 2;
- repeated uint32 account_ids = 3;
- repeated fixed64 steam_ids = 4;
+ optional uint32 soid_type = 1;
+ optional fixed64 soid_id = 2;
+ repeated uint32 account_ids = 3;
+ repeated fixed64 steam_ids = 4;
}
message CMsgGCToGCMasterDestroyCache {
- optional uint32 soid_type = 1;
- optional fixed64 soid_id = 2;
+ optional uint32 soid_type = 1;
+ optional fixed64 soid_id = 2;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsystemmsgs.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsystemmsgs.proto
index 2e211289..7ec8f31c 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsystemmsgs.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/gcsystemmsgs.proto
@@ -4,28 +4,28 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ESOMsg {
- k_ESOMsg_Create = 21;
- k_ESOMsg_Update = 22;
- k_ESOMsg_Destroy = 23;
- k_ESOMsg_CacheSubscribed = 24;
- k_ESOMsg_CacheUnsubscribed = 25;
- k_ESOMsg_UpdateMultiple = 26;
- k_ESOMsg_CacheSubscriptionRefresh = 28;
- k_ESOMsg_CacheSubscribedUpToDate = 29;
+ k_ESOMsg_Create = 21;
+ k_ESOMsg_Update = 22;
+ k_ESOMsg_Destroy = 23;
+ k_ESOMsg_CacheSubscribed = 24;
+ k_ESOMsg_CacheUnsubscribed = 25;
+ k_ESOMsg_UpdateMultiple = 26;
+ k_ESOMsg_CacheSubscriptionRefresh = 28;
+ k_ESOMsg_CacheSubscribedUpToDate = 29;
}
enum EGCBaseClientMsg {
- k_EMsgGCPingRequest = 3001;
- k_EMsgGCPingResponse = 3002;
- k_EMsgGCToClientPollConvarRequest = 3003;
- k_EMsgGCToClientPollConvarResponse = 3004;
- k_EMsgGCCompressedMsgToClient = 3005;
- k_EMsgGCCompressedMsgToClient_Legacy = 523;
- k_EMsgGCToClientRequestDropped = 3006;
- k_EMsgGCClientWelcome = 4004;
- k_EMsgGCServerWelcome = 4005;
- k_EMsgGCClientHello = 4006;
- k_EMsgGCServerHello = 4007;
- k_EMsgGCClientConnectionStatus = 4009;
- k_EMsgGCServerConnectionStatus = 4010;
+ k_EMsgGCPingRequest = 3001;
+ k_EMsgGCPingResponse = 3002;
+ k_EMsgGCToClientPollConvarRequest = 3003;
+ k_EMsgGCToClientPollConvarResponse = 3004;
+ k_EMsgGCCompressedMsgToClient = 3005;
+ k_EMsgGCCompressedMsgToClient_Legacy = 523;
+ k_EMsgGCToClientRequestDropped = 3006;
+ k_EMsgGCClientWelcome = 4004;
+ k_EMsgGCServerWelcome = 4005;
+ k_EMsgGCClientHello = 4006;
+ k_EMsgGCServerHello = 4007;
+ k_EMsgGCClientConnectionStatus = 4009;
+ k_EMsgGCServerConnectionStatus = 4010;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto
index 9890789f..94e1b0f4 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/networkbasetypes.proto
@@ -1,3 +1,4 @@
+import "in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto";
import "google/protobuf/descriptor.proto";
import "in/dragonbra/javasteam/protobufs/dota2/network_connection.proto";
@@ -49,6 +50,8 @@ enum SpawnGroupFlags_t {
}
message CMsgVector {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
@@ -56,17 +59,23 @@ message CMsgVector {
}
message CMsgVector2D {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
}
message CMsgQAngle {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
}
message CMsgQuaternion {
+ option (codegen_delta_encoder) = true;
+
optional float x = 1;
optional float y = 2;
optional float z = 3;
@@ -74,12 +83,16 @@ message CMsgQuaternion {
}
message CMsgTransform {
+ option (codegen_delta_encoder) = true;
+
optional .CMsgVector position = 1;
optional float scale = 2;
optional .CMsgQuaternion orientation = 3;
}
message CMsgRGBA {
+ option (codegen_delta_encoder) = true;
+
optional int32 r = 1;
optional int32 g = 2;
optional int32 b = 3;
@@ -93,6 +106,8 @@ message CMsgPlayerInfo {
optional fixed64 steamid = 4;
optional bool fakeplayer = 5;
optional bool ishltv = 6;
+ optional bool clan_member = 9;
+ optional bool clan_officer = 10;
}
message CEntityMsg {
@@ -200,6 +215,8 @@ message CNETMsg_SpawnGroup_Load {
}
message CNETMsg_SpawnGroup_ManifestUpdate {
+ option (maximum_size_bytes) = 2048;
+
optional uint32 spawngrouphandle = 1;
optional bytes spawngroupmanifest = 2;
optional bool manifestincomplete = 3;
@@ -221,6 +238,15 @@ message CNETMsg_SpawnGroup_LoadCompleted {
optional uint32 spawngrouphandle = 1;
}
+message QuantizedFloatEncoderAlias_t {
+ optional string name = 1;
+ optional int32 bit_count = 2;
+ optional int32 encode_flags = 3;
+ optional float min_value = 4;
+ optional float max_value = 5;
+ optional bool validate = 6;
+}
+
message CSVCMsg_GameSessionConfiguration {
optional bool is_multiplayer = 1;
optional bool is_loadsavegame = 2;
@@ -241,6 +267,8 @@ message CSVCMsg_GameSessionConfiguration {
optional bool is_transition = 16;
optional string previouslevel = 17;
optional string landmarkname = 18;
+ repeated .QuantizedFloatEncoderAlias_t quantized_float_encoder_aliases = 20;
+ optional float max_coord = 21;
}
message CNETMsg_DebugOverlay {
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages.proto
index fdda1106..0cecc758 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages.proto
@@ -6,108 +6,106 @@ option optimize_for = SPEED;
option java_generic_services = false;
extend .google.protobuf.FieldOptions {
- optional bool key_field = 60000 [default = false];
+ optional bool key_field = 60000 [default = false];
}
extend .google.protobuf.MessageOptions {
- optional int32 msgpool_soft_limit = 60000 [default = 32];
- optional int32 msgpool_hard_limit = 60001 [default = 384];
+ optional int32 msgpool_soft_limit = 60000 [default = 32];
+ optional int32 msgpool_hard_limit = 60001 [default = 384];
}
enum EGCPlatform {
- k_eGCPlatform_None = 0;
- k_eGCPlatform_PC = 1;
- k_eGCPlatform_Mac = 2;
- k_eGCPlatform_Linux = 3;
- k_eGCPlatform_Android = 4;
- k_eGCPlatform_iOS = 5;
+ k_eGCPlatform_None = 0;
+ k_eGCPlatform_PC = 1;
+ k_eGCPlatform_Mac = 2;
+ k_eGCPlatform_Linux = 3;
}
enum GCProtoBufMsgSrc {
- GCProtoBufMsgSrc_Unspecified = 0;
- GCProtoBufMsgSrc_FromSystem = 1;
- GCProtoBufMsgSrc_FromSteamID = 2;
- GCProtoBufMsgSrc_FromGC = 3;
- GCProtoBufMsgSrc_ReplySystem = 4;
- GCProtoBufMsgSrc_SpoofedSteamID = 5;
+ GCProtoBufMsgSrc_Unspecified = 0;
+ GCProtoBufMsgSrc_FromSystem = 1;
+ GCProtoBufMsgSrc_FromSteamID = 2;
+ GCProtoBufMsgSrc_FromGC = 3;
+ GCProtoBufMsgSrc_ReplySystem = 4;
+ GCProtoBufMsgSrc_SpoofedSteamID = 5;
}
message CMsgProtoBufHeader {
- option (msgpool_soft_limit) = 256;
- option (msgpool_hard_limit) = 1024;
+ option (msgpool_soft_limit) = 256;
+ option (msgpool_hard_limit) = 1024;
- optional fixed64 client_steam_id = 1;
- optional int32 client_session_id = 2;
- optional uint32 source_app_id = 3;
- optional fixed64 job_id_source = 10 [default = 18446744073709551615];
- optional fixed64 job_id_target = 11 [default = 18446744073709551615];
- optional string target_job_name = 12;
- optional int32 eresult = 13 [default = 2];
- optional string error_message = 14;
- optional .GCProtoBufMsgSrc gc_msg_src = 200 [default = GCProtoBufMsgSrc_Unspecified];
- optional int32 gc_dir_index_source = 201 [default = -1];
+ optional fixed64 client_steam_id = 1;
+ optional int32 client_session_id = 2;
+ optional uint32 source_app_id = 3;
+ optional fixed64 job_id_source = 10 [default = 18446744073709551615];
+ optional fixed64 job_id_target = 11 [default = 18446744073709551615];
+ optional string target_job_name = 12;
+ optional int32 eresult = 13 [default = 2];
+ optional string error_message = 14;
+ optional .GCProtoBufMsgSrc gc_msg_src = 200 [default = GCProtoBufMsgSrc_Unspecified];
+ optional int32 gc_dir_index_source = 201 [default = -1];
}
message CGCSystemMsg_GetAccountDetails {
- option (msgpool_soft_limit) = 128;
- option (msgpool_hard_limit) = 512;
+ option (msgpool_soft_limit) = 128;
+ option (msgpool_hard_limit) = 512;
- optional fixed64 steamid = 1;
- optional uint32 appid = 2;
+ optional fixed64 steamid = 1;
+ optional uint32 appid = 2;
}
message CGCSystemMsg_GetAccountDetails_Response {
- option (msgpool_soft_limit) = 128;
- option (msgpool_hard_limit) = 512;
+ option (msgpool_soft_limit) = 128;
+ option (msgpool_hard_limit) = 512;
- optional uint32 eresult_deprecated = 1 [default = 2];
- optional string account_name = 2;
- optional string persona_name = 3;
- optional bool is_profile_created = 26;
- optional bool is_profile_public = 4;
- optional bool is_inventory_public = 5;
- optional bool is_vac_banned = 7;
- optional bool is_cyber_cafe = 8;
- optional bool is_school_account = 9;
- optional bool is_limited = 10;
- optional bool is_subscribed = 11;
- optional uint32 package = 12;
- optional bool is_free_trial_account = 13;
- optional uint32 free_trial_expiration = 14;
- optional bool is_low_violence = 15;
- optional bool is_account_locked_down = 16;
- optional bool is_community_banned = 17;
- optional bool is_trade_banned = 18;
- optional uint32 trade_ban_expiration = 19;
- optional uint32 accountid = 20;
- optional uint32 suspension_end_time = 21;
- optional string currency = 22;
- optional uint32 steam_level = 23;
- optional uint32 friend_count = 24;
- optional uint32 account_creation_time = 25;
- optional bool is_steamguard_enabled = 27;
- optional bool is_phone_verified = 28;
- optional bool is_two_factor_auth_enabled = 29;
- optional uint32 two_factor_enabled_time = 30;
- optional uint32 phone_verification_time = 31;
- optional uint64 phone_id = 33;
- optional bool is_phone_identifying = 34;
- optional uint32 rt_identity_linked = 35;
- optional uint32 rt_birth_date = 36;
- optional string txn_country_code = 37;
- optional bool has_accepted_china_ssa = 38;
- optional bool is_banned_steam_china = 39;
+ optional uint32 eresult_deprecated = 1 [default = 2];
+ optional string account_name = 2;
+ optional string persona_name = 3;
+ optional bool is_profile_created = 26;
+ optional bool is_profile_public = 4;
+ optional bool is_inventory_public = 5;
+ optional bool is_vac_banned = 7;
+ optional bool is_cyber_cafe = 8;
+ optional bool is_school_account = 9;
+ optional bool is_limited = 10;
+ optional bool is_subscribed = 11;
+ optional uint32 package = 12;
+ optional bool is_free_trial_account = 13;
+ optional uint32 free_trial_expiration = 14;
+ optional bool is_low_violence = 15;
+ optional bool is_account_locked_down = 16;
+ optional bool is_community_banned = 17;
+ optional bool is_trade_banned = 18;
+ optional uint32 trade_ban_expiration = 19;
+ optional uint32 accountid = 20;
+ optional uint32 suspension_end_time = 21;
+ optional string currency = 22;
+ optional uint32 steam_level = 23;
+ optional uint32 friend_count = 24;
+ optional uint32 account_creation_time = 25;
+ optional bool is_steamguard_enabled = 27;
+ optional bool is_phone_verified = 28;
+ optional bool is_two_factor_auth_enabled = 29;
+ optional uint32 two_factor_enabled_time = 30;
+ optional uint32 phone_verification_time = 31;
+ optional uint64 phone_id = 33;
+ optional bool is_phone_identifying = 34;
+ optional uint32 rt_identity_linked = 35;
+ optional uint32 rt_birth_date = 36;
+ optional string txn_country_code = 37;
+ optional bool has_accepted_china_ssa = 38;
+ optional bool is_banned_steam_china = 39;
}
message CIPLocationInfo {
- optional uint32 ip = 1;
- optional float latitude = 2;
- optional float longitude = 3;
- optional string country = 4;
- optional string state = 5;
- optional string city = 6;
+ optional uint32 ip = 1;
+ optional float latitude = 2;
+ optional float longitude = 3;
+ optional string country = 4;
+ optional string state = 5;
+ optional string city = 6;
}
message CGCMsgGetIPLocationResponse {
- repeated .CIPLocationInfo infos = 1;
+ repeated .CIPLocationInfo infos = 1;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_oauth.steamworkssdk.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_oauth.steamworkssdk.proto
index f690106f..c37beea7 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_oauth.steamworkssdk.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_oauth.steamworkssdk.proto
@@ -6,18 +6,18 @@ option optimize_for = SPEED;
option java_generic_services = false;
message COAuthToken_ImplicitGrantNoPrompt_Request {
- optional string clientid = 1 [(description) = "Client ID for which to count the number of issued tokens"];
+ optional string clientid = 1 [(description) = "Client ID for which to count the number of issued tokens"];
}
message COAuthToken_ImplicitGrantNoPrompt_Response {
- optional string access_token = 1 [(description) = "OAuth Token, granted on success"];
- optional string redirect_uri = 2 [(description) = "Redirection URI provided during client registration."];
+ optional string access_token = 1 [(description) = "OAuth Token, granted on success"];
+ optional string redirect_uri = 2 [(description) = "Redirection URI provided during client registration."];
}
service OAuthToken {
- option (service_description) = "Service containing methods to manage OAuth tokens";
+ option (service_description) = "Service containing methods to manage OAuth tokens";
- rpc ImplicitGrantNoPrompt (.COAuthToken_ImplicitGrantNoPrompt_Request) returns (.COAuthToken_ImplicitGrantNoPrompt_Response) {
- option (method_description) = "Grants an implicit OAuth token (grant type 'token') for the specified client ID on behalf of a user without prompting";
- }
+ rpc ImplicitGrantNoPrompt (.COAuthToken_ImplicitGrantNoPrompt_Request) returns (.COAuthToken_ImplicitGrantNoPrompt_Response) {
+ option (method_description) = "Grants an implicit OAuth token (grant type 'token') for the specified client ID on behalf of a user without prompting";
+ }
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto
index 2a6833a1..a24b38c9 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_steamlearn.steamworkssdk.proto
@@ -6,435 +6,410 @@ option optimize_for = SPEED;
option java_generic_services = false;
enum ESteamLearnDataType {
- STEAMLEARN_DATATYPE_INVALID = 0;
- STEAMLEARN_DATATYPE_INT32 = 1;
- STEAMLEARN_DATATYPE_FLOAT32 = 2;
- STEAMLEARN_DATATYPE_BOOL = 3;
- STEAMLEARN_DATATYPE_STRING = 4;
- STEAMLEARN_DATATYPE_OBJECT = 5;
+ STEAMLEARN_DATATYPE_INVALID = 0;
+ STEAMLEARN_DATATYPE_INT32 = 1;
+ STEAMLEARN_DATATYPE_FLOAT32 = 2;
+ STEAMLEARN_DATATYPE_BOOL = 3;
+ STEAMLEARN_DATATYPE_STRING = 4;
+ STEAMLEARN_DATATYPE_OBJECT = 5;
}
enum ESteammLearnRegisterDataSourceResult {
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR = 0;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_SUCCESS_CREATED = 1;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_SUCCESS_FOUND = 2;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_GENERIC = 3;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_NAME = 4;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_VERSION = 5;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_DATA_CHANGED = 6;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_DATA_INVALID = 7;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_FORBIDDEN = 8;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_TIMESTAMP = 9;
- STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_DISABLED = 10;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR = 0;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_SUCCESS_CREATED = 1;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_SUCCESS_FOUND = 2;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_GENERIC = 3;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_NAME = 4;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_VERSION = 5;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_DATA_CHANGED = 6;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_DATA_INVALID = 7;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_FORBIDDEN = 8;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR_INVALID_TIMESTAMP = 9;
+ STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_DISABLED = 10;
}
enum ESteamLearnCacheDataResult {
- STEAMLEARN_CACHE_DATA_ERROR = 0;
- STEAMLEARN_CACHE_DATA_SUCCESS = 1;
- STEAMLEARN_CACHE_DATA_ERROR_UNKNOWN_DATA_SOURCE = 2;
- STEAMLEARN_CACHE_DATA_ERROR_UNCACHED_DATA_SOURCE = 3;
- STEAMLEARN_CACHE_DATA_ERROR_INVALID_KEYS = 4;
- STEAMLEARN_CACHE_DATA_ERROR_FORBIDDEN = 5;
- STEAMLEARN_CACHE_DATA_ERROR_INVALID_TIMESTAMP = 6;
- STEAMLEARN_CACHE_DATA_DISABLED = 7;
+ STEAMLEARN_CACHE_DATA_ERROR = 0;
+ STEAMLEARN_CACHE_DATA_SUCCESS = 1;
+ STEAMLEARN_CACHE_DATA_ERROR_UNKNOWN_DATA_SOURCE = 2;
+ STEAMLEARN_CACHE_DATA_ERROR_UNCACHED_DATA_SOURCE = 3;
+ STEAMLEARN_CACHE_DATA_ERROR_INVALID_KEYS = 4;
+ STEAMLEARN_CACHE_DATA_ERROR_FORBIDDEN = 5;
+ STEAMLEARN_CACHE_DATA_ERROR_INVALID_TIMESTAMP = 6;
+ STEAMLEARN_CACHE_DATA_DISABLED = 7;
}
enum ESteamLearnSnapshotProjectResult {
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR = 0;
- STEAMLEARN_SNAPSHOT_PROJECT_SUCCESS_STORED = 1;
- STEAMLEARN_SNAPSHOT_PROJECT_SUCCESS_QUEUED = 2;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_PROJECT_ID = 3;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_UNKNOWN_DATA_SOURCE = 4;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_DATA_SOURCE_KEY = 5;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_MISSING_CACHE_DURATION = 6;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_NO_PUBLISHED_CONFIG = 7;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_FORBIDDEN = 8;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_TIMESTAMP = 9;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INTERNAL_DATA_SOURCE_ERROR = 10;
- STEAMLEARN_SNAPSHOT_PROJECT_DISABLED = 11;
- STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_PUBLISHED_VERSION = 12;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR = 0;
+ STEAMLEARN_SNAPSHOT_PROJECT_SUCCESS_STORED = 1;
+ STEAMLEARN_SNAPSHOT_PROJECT_SUCCESS_QUEUED = 2;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_PROJECT_ID = 3;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_UNKNOWN_DATA_SOURCE = 4;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_DATA_SOURCE_KEY = 5;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_MISSING_CACHE_DURATION = 6;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_NO_PUBLISHED_CONFIG = 7;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_FORBIDDEN = 8;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_TIMESTAMP = 9;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INTERNAL_DATA_SOURCE_ERROR = 10;
+ STEAMLEARN_SNAPSHOT_PROJECT_DISABLED = 11;
+ STEAMLEARN_SNAPSHOT_PROJECT_ERROR_INVALID_PUBLISHED_VERSION = 12;
}
enum ESteamLearnGetAccessTokensResult {
- STEAMLEARN_GET_ACCESS_TOKENS_ERROR = 0;
- STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS = 1;
+ STEAMLEARN_GET_ACCESS_TOKENS_ERROR = 0;
+ STEAMLEARN_GET_ACCESS_TOKENS_SUCCESS = 1;
}
enum ESteamLearnInferenceResult {
- STEAMLEARN_INFERENCE_ERROR = 0;
- STEAMLEARN_INFERENCE_SUCCESS = 1;
- STEAMLEARN_INFERENCE_ERROR_INVALID_PROJECT_ID = 2;
- STEAMLEARN_INFERENCE_ERROR_MISSING_CACHED_SCHEMA_DATA = 3;
- STEAMLEARN_INFERENCE_ERROR_NO_PUBLISHED_CONFIG = 4;
- STEAMLEARN_INFERENCE_ERROR_FORBIDDEN = 5;
- STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP = 6;
- STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION = 7;
- STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND = 8;
- STEAMLEARN_INFERENCE_ERROR_TOO_BUSY = 9;
- STEAMLEARN_INFERENCE_ERROR_UNSUPPLIED_DATA_FAIL = 10;
- STEAMLEARN_INFERENCE_ERROR_UNSUPPLIED_DATA_NO_KEYS = 11;
- STEAMLEARN_INFERENCE_DISABLED = 12;
- STEAMLEARN_INFERENCE_ERROR_NO_OUTPUT = 13;
- STEAMLEARN_INFERENCE_ERROR_INVALID_NAMED_INFERENCE = 14;
+ STEAMLEARN_INFERENCE_ERROR = 0;
+ STEAMLEARN_INFERENCE_SUCCESS = 1;
+ STEAMLEARN_INFERENCE_ERROR_INVALID_PROJECT_ID = 2;
+ STEAMLEARN_INFERENCE_ERROR_MISSING_CACHED_SCHEMA_DATA = 3;
+ STEAMLEARN_INFERENCE_ERROR_NO_PUBLISHED_CONFIG = 4;
+ STEAMLEARN_INFERENCE_ERROR_FORBIDDEN = 5;
+ STEAMLEARN_INFERENCE_ERROR_INVALID_TIMESTAMP = 6;
+ STEAMLEARN_INFERENCE_ERROR_INVALID_PUBLISHED_VERSION = 7;
+ STEAMLEARN_INFERENCE_ERROR_NO_FETCH_ID_FOUND = 8;
+ STEAMLEARN_INFERENCE_ERROR_TOO_BUSY = 9;
+ STEAMLEARN_INFERENCE_ERROR_UNSUPPLIED_DATA_FAIL = 10;
+ STEAMLEARN_INFERENCE_ERROR_UNSUPPLIED_DATA_NO_KEYS = 11;
+ STEAMLEARN_INFERENCE_DISABLED = 12;
+ STEAMLEARN_INFERENCE_ERROR_NO_OUTPUT = 13;
+ STEAMLEARN_INFERENCE_ERROR_INVALID_NAMED_INFERENCE = 14;
}
enum ESteamLearnInferenceMetadataResult {
- STEAMLEARN_INFERENCE_METADATA_ERROR = 0;
- STEAMLEARN_INFERENCE_METADATA_SUCCESS = 1;
- STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID = 2;
- STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG = 3;
- STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN = 4;
- STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP = 5;
- STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION = 6;
- STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND = 7;
+ STEAMLEARN_INFERENCE_METADATA_ERROR = 0;
+ STEAMLEARN_INFERENCE_METADATA_SUCCESS = 1;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PROJECT_ID = 2;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_NO_PUBLISHED_CONFIG = 3;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_FORBIDDEN = 4;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_TIMESTAMP = 5;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_INVALID_PUBLISHED_VERSION = 6;
+ STEAMLEARN_INFERENCE_METADATA_ERROR_NO_FETCH_ID_FOUND = 7;
}
message CMsgSteamLearnDataSourceDescObject {
- repeated .CMsgSteamLearnDataSourceDescElement elements = 1;
+ repeated .CMsgSteamLearnDataSourceDescElement elements = 1;
}
message CMsgSteamLearnDataSourceDescElement {
- optional string name = 1;
- optional .ESteamLearnDataType data_type = 2 [default = STEAMLEARN_DATATYPE_INVALID];
- optional .CMsgSteamLearnDataSourceDescObject object = 3;
- optional uint32 count = 4;
+ optional string name = 1;
+ optional .ESteamLearnDataType data_type = 2 [default = STEAMLEARN_DATATYPE_INVALID];
+ optional .CMsgSteamLearnDataSourceDescObject object = 3;
+ optional uint32 count = 4;
}
message CMsgSteamLearnDataSource {
- optional uint32 id = 1;
- optional string name = 2;
- optional uint32 version = 3;
- optional string source_description = 4;
- optional .CMsgSteamLearnDataSourceDescObject structure = 5;
- optional uint32 structure_crc = 6;
- optional uint32 cache_duration_seconds = 7;
+ optional uint32 id = 1;
+ optional string name = 2;
+ optional uint32 version = 3;
+ optional string source_description = 4;
+ optional .CMsgSteamLearnDataSourceDescObject structure = 5;
+ optional uint32 structure_crc = 6;
+ optional uint32 cache_duration_seconds = 7;
}
message CMsgSteamLearnDataObject {
- repeated .CMsgSteamLearnDataElement elements = 1;
+ repeated .CMsgSteamLearnDataElement elements = 1;
}
message CMsgSteamLearnDataElement {
- optional string name = 1;
- repeated int32 data_int32s = 20;
- repeated float data_floats = 21;
- repeated bool data_bools = 22;
- repeated string data_strings = 23;
- repeated .CMsgSteamLearnDataObject data_objects = 24;
+ optional string name = 1;
+ repeated int32 data_int32s = 20;
+ repeated float data_floats = 21;
+ repeated bool data_bools = 22;
+ repeated string data_strings = 23;
+ repeated .CMsgSteamLearnDataObject data_objects = 24;
}
message CMsgSteamLearnData {
- optional uint32 data_source_id = 1;
- repeated uint64 keys = 2;
- optional .CMsgSteamLearnDataObject data_object = 3;
+ optional uint32 data_source_id = 1;
+ repeated uint64 keys = 2;
+ optional .CMsgSteamLearnDataObject data_object = 3;
}
message CMsgSteamLearnDataList {
- repeated .CMsgSteamLearnData data = 1;
+ repeated .CMsgSteamLearnData data = 1;
}
message CMsgSteamLearn_RegisterDataSource_Request {
- optional string access_token = 1;
- optional .CMsgSteamLearnDataSource data_source = 3;
+ optional string access_token = 1;
+ optional .CMsgSteamLearnDataSource data_source = 3;
}
message CMsgSteamLearn_RegisterDataSource_Response {
- optional .ESteammLearnRegisterDataSourceResult result = 1 [default = STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR];
- optional .CMsgSteamLearnDataSource data_source = 2;
+ optional .ESteammLearnRegisterDataSourceResult result = 1 [default = STEAMLEARN_REGISTER_DATA_SOURCE_RESULT_ERROR];
+ optional .CMsgSteamLearnDataSource data_source = 2;
}
message CMsgSteamLearn_CacheData_Request {
- optional string access_token = 1;
- optional .CMsgSteamLearnData data = 3;
+ optional string access_token = 1;
+ optional .CMsgSteamLearnData data = 3;
}
message CMsgSteamLearn_CacheData_Response {
- optional .ESteamLearnCacheDataResult cache_data_result = 1 [default = STEAMLEARN_CACHE_DATA_ERROR];
+ optional .ESteamLearnCacheDataResult cache_data_result = 1 [default = STEAMLEARN_CACHE_DATA_ERROR];
}
message CMsgSteamLearn_SnapshotProject_Request {
- optional string access_token = 1;
- optional uint32 project_id = 3;
- optional uint32 published_version = 7;
- repeated uint64 keys = 4;
- repeated .CMsgSteamLearnData data = 5;
- optional uint32 pending_data_limit_seconds = 6;
+ optional string access_token = 1;
+ optional uint32 project_id = 3;
+ optional uint32 published_version = 7;
+ repeated uint64 keys = 4;
+ repeated .CMsgSteamLearnData data = 5;
+ optional uint32 pending_data_limit_seconds = 6;
}
message CMsgSteamLearn_SnapshotProject_Response {
- optional .ESteamLearnSnapshotProjectResult snapshot_result = 1 [default = STEAMLEARN_SNAPSHOT_PROJECT_ERROR];
+ optional .ESteamLearnSnapshotProjectResult snapshot_result = 1 [default = STEAMLEARN_SNAPSHOT_PROJECT_ERROR];
}
message CMsgSteamLearn_BatchOperation_Request {
- repeated .CMsgSteamLearn_CacheData_Request cache_data_requests = 1;
- repeated .CMsgSteamLearn_SnapshotProject_Request snapshot_requests = 2;
- repeated .CMsgSteamLearn_Inference_Request inference_requests = 3;
+ repeated .CMsgSteamLearn_CacheData_Request cache_data_requests = 1;
+ repeated .CMsgSteamLearn_SnapshotProject_Request snapshot_requests = 2;
+ repeated .CMsgSteamLearn_Inference_Request inference_requests = 3;
}
message CMsgSteamLearn_BatchOperation_Response {
- repeated .CMsgSteamLearn_CacheData_Response cache_data_responses = 1;
- repeated .CMsgSteamLearn_SnapshotProject_Response snapshot_responses = 2;
- repeated .CMsgSteamLearn_Inference_Response inference_responses = 3;
+ repeated .CMsgSteamLearn_CacheData_Response cache_data_responses = 1;
+ repeated .CMsgSteamLearn_SnapshotProject_Response snapshot_responses = 2;
+ repeated .CMsgSteamLearn_Inference_Response inference_responses = 3;
}
message CMsgSteamLearnAccessTokens {
- message CacheDataAccessToken {
- optional uint32 data_source_id = 1;
- optional string access_token = 2;
- }
+ message CacheDataAccessToken {
+ optional uint32 data_source_id = 1;
+ optional string access_token = 2;
+ }
- message SnapshotProjectAccessToken {
- optional uint32 project_id = 1;
- optional string access_token = 2;
- }
+ message SnapshotProjectAccessToken {
+ optional uint32 project_id = 1;
+ optional string access_token = 2;
+ }
- message InferenceAccessToken {
- optional uint32 project_id = 1;
- optional string access_token = 2;
- }
+ message InferenceAccessToken {
+ optional uint32 project_id = 1;
+ optional string access_token = 2;
+ }
- optional string register_data_source_access_token = 1;
- repeated .CMsgSteamLearnAccessTokens.CacheDataAccessToken cache_data_access_tokens = 2;
- repeated .CMsgSteamLearnAccessTokens.SnapshotProjectAccessToken snapshot_project_access_tokens = 3;
- repeated .CMsgSteamLearnAccessTokens.InferenceAccessToken inference_access_tokens = 4;
+ optional string register_data_source_access_token = 1;
+ repeated .CMsgSteamLearnAccessTokens.CacheDataAccessToken cache_data_access_tokens = 2;
+ repeated .CMsgSteamLearnAccessTokens.SnapshotProjectAccessToken snapshot_project_access_tokens = 3;
+ repeated .CMsgSteamLearnAccessTokens.InferenceAccessToken inference_access_tokens = 4;
}
message CMsgSteamLearn_GetAccessTokens_Request {
- optional uint32 appid = 1;
+ optional uint32 appid = 1;
}
message CMsgSteamLearn_GetAccessTokens_Response {
- optional .ESteamLearnGetAccessTokensResult result = 1 [default = STEAMLEARN_GET_ACCESS_TOKENS_ERROR];
- optional .CMsgSteamLearnAccessTokens access_tokens = 2;
+ optional .ESteamLearnGetAccessTokensResult result = 1 [default = STEAMLEARN_GET_ACCESS_TOKENS_ERROR];
+ optional .CMsgSteamLearnAccessTokens access_tokens = 2;
}
message CMsgInferenceIterateBeamSearch {
- message CustomItemScalar {
- optional uint32 item = 1;
- optional float scale = 2;
- }
+ message CustomItemScalar {
+ optional uint32 item = 1;
+ optional float scale = 2;
+ }
- optional uint32 beam_length = 1;
- optional uint32 beam_width = 2;
- optional float item_decay = 3;
- optional uint32 next_item_count = 4;
- repeated .CMsgInferenceIterateBeamSearch.CustomItemScalar item_scalars = 5;
- optional uint32 item_sequence_end = 7;
- optional float item_sequence_end_threshold = 8;
- optional float repeat_multiplier = 9;
+ optional uint32 beam_length = 1;
+ optional uint32 beam_width = 2;
+ optional float item_decay = 3;
+ optional uint32 next_item_count = 4;
+ repeated .CMsgInferenceIterateBeamSearch.CustomItemScalar item_scalars = 5;
+ optional uint32 item_sequence_end = 7;
+ optional float item_sequence_end_threshold = 8;
+ optional float repeat_multiplier = 9;
}
message CMsgSteamLearn_Inference_Request {
- optional string access_token = 1;
- optional uint32 project_id = 3;
- optional uint32 published_version = 4;
- optional uint32 override_train_id = 5;
- optional .CMsgSteamLearnDataList data = 6;
- repeated float additional_data = 7;
- repeated uint64 keys = 8;
- optional string named_inference = 9;
- optional .CMsgInferenceIterateBeamSearch iterate_beam_search = 13;
- optional uint32 debug_spew = 14;
+ optional string access_token = 1;
+ optional uint32 project_id = 3;
+ optional uint32 published_version = 4;
+ optional uint32 override_train_id = 5;
+ optional .CMsgSteamLearnDataList data = 6;
+ repeated float additional_data = 7;
+ repeated uint64 keys = 8;
+ optional string named_inference = 9;
+ optional .CMsgInferenceIterateBeamSearch iterate_beam_search = 13;
+ optional uint32 debug_spew = 14;
}
message CMsgSteamLearn_InferenceMetadata_Request {
- optional string access_token = 1;
- optional uint32 project_id = 3;
- optional uint32 published_version = 4;
- optional uint32 override_train_id = 5;
+ optional string access_token = 1;
+ optional uint32 project_id = 3;
+ optional uint32 published_version = 4;
+ optional uint32 override_train_id = 5;
}
message CMsgSteamLearn_InferenceMetadataBackend_Request {
- optional uint32 project_id = 1;
- optional uint32 fetch_id = 2;
+ optional uint32 project_id = 1;
+ optional uint32 fetch_id = 2;
}
message CMsgSteamLearn_InferenceMetadata_Response {
- message RowRange {
- optional uint64 min_row = 1;
- optional uint64 max_row = 2;
- }
-
- message Range {
- optional string data_element_path = 1;
- optional float min_value = 2;
- optional float max_value = 3;
- }
-
- message StdDev {
- optional string data_element_path = 1;
- optional float mean = 2;
- optional float std_dev = 3;
- }
-
- message CompactTable {
- message Entry {
- optional uint32 value = 1;
- optional uint32 mapping = 2;
- optional uint64 count = 3;
- }
-
- message MapValuesEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2;
- }
-
- message MapMappingsEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.Entry value = 2;
- }
-
- optional string name = 1;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapValuesEntry map_values = 2;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable.MapMappingsEntry map_mappings = 3;
- }
-
- message SequenceTable {
- message Entry {
- repeated uint32 values = 1;
- optional uint32 crc = 2;
- optional uint32 count = 3;
- }
-
- message MapValuesEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.Entry value = 2;
- }
-
- message MapMappingsEntry {
- optional string key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.Entry value = 2;
- }
-
- optional string name = 1;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.MapValuesEntry map_values = 2;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable.MapMappingsEntry map_mappings = 3;
- optional uint64 total_count = 4;
- }
-
- message KMeans {
- message Cluster {
- optional float x = 1;
- optional float y = 2;
- optional float radius = 3;
- optional float radius_75pct = 4;
- optional float radius_50pct = 5;
- optional float radius_25pct = 6;
- }
-
- optional string name = 1;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.KMeans.Cluster clusters = 2;
- }
-
- message SnapshotHistogram {
- optional float min_value = 1;
- optional float max_value = 2;
- optional uint32 num_buckets = 3;
- repeated uint32 bucket_counts = 4;
- }
-
- message AppInfo {
- optional string country_allow = 1;
- optional string country_deny = 2;
- optional bool platform_win = 3;
- optional bool platform_mac = 4;
- optional bool platform_linux = 5;
- optional bool adult_violence = 6;
- optional bool adult_sex = 7;
- }
-
- message AppInfoEntry {
- optional uint32 key = 1;
- optional .CMsgSteamLearn_InferenceMetadata_Response.AppInfo value = 2;
- }
-
- optional .ESteamLearnInferenceMetadataResult inference_metadata_result = 1 [default = STEAMLEARN_INFERENCE_METADATA_ERROR];
- optional .CMsgSteamLearn_InferenceMetadata_Response.RowRange row_range = 2;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.Range ranges = 3;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.StdDev std_devs = 4;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable compact_tables = 5;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable sequence_tables = 9;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.KMeans kmeans = 6;
- repeated .CMsgSteamLearn_InferenceMetadata_Response.AppInfoEntry app_info = 8;
- optional .CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram snapshot_histogram = 7;
+ message RowRange {
+ optional uint64 min_row = 1;
+ optional uint64 max_row = 2;
+ }
+
+ message Range {
+ optional string data_element_path = 1;
+ optional float min_value = 2;
+ optional float max_value = 3;
+ }
+
+ message StdDev {
+ optional string data_element_path = 1;
+ optional float mean = 2;
+ optional float std_dev = 3;
+ }
+
+ message CompactTable {
+ message Entry {
+ optional uint32 value = 1;
+ optional uint32 mapping = 2;
+ optional uint64 count = 3;
+ }
+
+ optional string name = 1;
+ map map_values = 2;
+ map map_mappings = 3;
+ }
+
+ message SequenceTable {
+ message Entry {
+ repeated uint32 values = 1;
+ optional uint32 crc = 2;
+ optional uint32 count = 3;
+ }
+
+ optional string name = 1;
+ map map_values = 2;
+ map map_mappings = 3;
+ optional uint64 total_count = 4;
+ }
+
+ message KMeans {
+ message Cluster {
+ optional float x = 1;
+ optional float y = 2;
+ optional float radius = 3;
+ optional float radius_75pct = 4;
+ optional float radius_50pct = 5;
+ optional float radius_25pct = 6;
+ }
+
+ optional string name = 1;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.KMeans.Cluster clusters = 2;
+ }
+
+ message SnapshotHistogram {
+ optional float min_value = 1;
+ optional float max_value = 2;
+ optional uint32 num_buckets = 3;
+ repeated uint32 bucket_counts = 4;
+ }
+
+ message AppInfo {
+ optional string country_allow = 1;
+ optional string country_deny = 2;
+ optional bool platform_win = 3;
+ optional bool platform_mac = 4;
+ optional bool platform_linux = 5;
+ optional bool adult_violence = 6;
+ optional bool adult_sex = 7;
+ }
+
+ optional .ESteamLearnInferenceMetadataResult inference_metadata_result = 1 [default = STEAMLEARN_INFERENCE_METADATA_ERROR];
+ optional .CMsgSteamLearn_InferenceMetadata_Response.RowRange row_range = 2;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.Range ranges = 3;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.StdDev std_devs = 4;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.CompactTable compact_tables = 5;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.SequenceTable sequence_tables = 9;
+ repeated .CMsgSteamLearn_InferenceMetadata_Response.KMeans kmeans = 6;
+ map app_info = 8;
+ optional .CMsgSteamLearn_InferenceMetadata_Response.SnapshotHistogram snapshot_histogram = 7;
}
message CMsgSteamLearn_InferenceBackend_Response {
- message Sequence {
- repeated float value = 1;
- }
-
- message RegressionOutput {
- optional float value = 2;
- }
-
- message NamedInferenceOutput {
- repeated float value = 3;
- }
-
- message BinaryCrossEntropyOutput {
- optional float value = 1;
- }
-
- message MutliBinaryCrossEntropyOutput {
- repeated float weight = 1;
- repeated float value = 2;
- repeated .CMsgSteamLearn_InferenceBackend_Response.Sequence value_sequence = 3;
- }
-
- message CategoricalCrossEntropyOutput {
- repeated float weight = 1;
- repeated float value = 2;
- repeated .CMsgSteamLearn_InferenceBackend_Response.Sequence value_sequence = 3;
- }
-
- message Output {
- oneof ResponseType {
- .CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput binary_crossentropy = 1;
- .CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput categorical_crossentropy = 2;
- .CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput multi_binary_crossentropy = 3;
- .CMsgSteamLearn_InferenceBackend_Response.RegressionOutput regression = 4;
- .CMsgSteamLearn_InferenceBackend_Response.NamedInferenceOutput named_inference = 5;
- }
- }
-
- repeated .CMsgSteamLearn_InferenceBackend_Response.Output outputs = 1;
+ message Sequence {
+ repeated float value = 1;
+ }
+
+ message RegressionOutput {
+ optional float value = 2;
+ }
+
+ message NamedInferenceOutput {
+ repeated float value = 3;
+ }
+
+ message BinaryCrossEntropyOutput {
+ optional float value = 1;
+ }
+
+ message MutliBinaryCrossEntropyOutput {
+ repeated float weight = 1;
+ repeated float value = 2;
+ repeated .CMsgSteamLearn_InferenceBackend_Response.Sequence value_sequence = 3;
+ }
+
+ message CategoricalCrossEntropyOutput {
+ repeated float weight = 1;
+ repeated float value = 2;
+ repeated .CMsgSteamLearn_InferenceBackend_Response.Sequence value_sequence = 3;
+ }
+
+ message Output {
+ oneof ResponseType {
+ .CMsgSteamLearn_InferenceBackend_Response.BinaryCrossEntropyOutput binary_crossentropy = 1;
+ .CMsgSteamLearn_InferenceBackend_Response.CategoricalCrossEntropyOutput categorical_crossentropy = 2;
+ .CMsgSteamLearn_InferenceBackend_Response.MutliBinaryCrossEntropyOutput multi_binary_crossentropy = 3;
+ .CMsgSteamLearn_InferenceBackend_Response.RegressionOutput regression = 4;
+ .CMsgSteamLearn_InferenceBackend_Response.NamedInferenceOutput named_inference = 5;
+ }
+ }
+
+ repeated .CMsgSteamLearn_InferenceBackend_Response.Output outputs = 1;
}
message CMsgSteamLearn_Inference_Response {
- optional .ESteamLearnInferenceResult inference_result = 1 [default = STEAMLEARN_INFERENCE_ERROR];
- optional .CMsgSteamLearn_InferenceBackend_Response backend_response = 2;
- repeated uint64 keys = 3;
+ optional .ESteamLearnInferenceResult inference_result = 1 [default = STEAMLEARN_INFERENCE_ERROR];
+ optional .CMsgSteamLearn_InferenceBackend_Response backend_response = 2;
+ repeated uint64 keys = 3;
}
service SteamLearn {
- option (service_description) = "Service for submitting data, training, and inferencing with SteamLearn.";
+ option (service_description) = "Service for submitting data, training, and inferencing with SteamLearn.";
- rpc RegisterDataSource (.CMsgSteamLearn_RegisterDataSource_Request) returns (.CMsgSteamLearn_RegisterDataSource_Response) {
- option (method_description) = "Registers a data desc (or finds a data desc if it's already registered).";
- }
+ rpc RegisterDataSource (.CMsgSteamLearn_RegisterDataSource_Request) returns (.CMsgSteamLearn_RegisterDataSource_Response) {
+ option (method_description) = "Registers a data desc (or finds a data desc if it's already registered).";
+ }
- rpc CacheData (.CMsgSteamLearn_CacheData_Request) returns (.CMsgSteamLearn_CacheData_Response) {
- option (method_description) = "Updates a cached data entry.";
- }
+ rpc CacheData (.CMsgSteamLearn_CacheData_Request) returns (.CMsgSteamLearn_CacheData_Response) {
+ option (method_description) = "Updates a cached data entry.";
+ }
- rpc SnapshotProject (.CMsgSteamLearn_SnapshotProject_Request) returns (.CMsgSteamLearn_SnapshotProject_Response) {
- option (method_description) = "Snapshots the current data for a project.";
- }
+ rpc SnapshotProject (.CMsgSteamLearn_SnapshotProject_Request) returns (.CMsgSteamLearn_SnapshotProject_Response) {
+ option (method_description) = "Snapshots the current data for a project.";
+ }
- rpc BatchOperation (.CMsgSteamLearn_BatchOperation_Request) returns (.CMsgSteamLearn_BatchOperation_Response) {
- option (method_description) = "Batches multiple data updates, snapshots, and inference requests into a single call";
- }
+ rpc BatchOperation (.CMsgSteamLearn_BatchOperation_Request) returns (.CMsgSteamLearn_BatchOperation_Response) {
+ option (method_description) = "Batches multiple data updates, snapshots, and inference requests into a single call";
+ }
- rpc GetAccessTokens (.CMsgSteamLearn_GetAccessTokens_Request) returns (.CMsgSteamLearn_GetAccessTokens_Response) {
- option (method_description) = "Gets the access tokens needed for registering data sources, submitting data to them, and snapshotting projects";
- }
+ rpc GetAccessTokens (.CMsgSteamLearn_GetAccessTokens_Request) returns (.CMsgSteamLearn_GetAccessTokens_Response) {
+ option (method_description) = "Gets the access tokens needed for registering data sources, submitting data to them, and snapshotting projects";
+ }
- rpc Inference (.CMsgSteamLearn_Inference_Request) returns (.CMsgSteamLearn_Inference_Response) {
- option (method_description) = "Inferences using supplied data, or data associated with the specified key.";
- }
+ rpc Inference (.CMsgSteamLearn_Inference_Request) returns (.CMsgSteamLearn_Inference_Response) {
+ option (method_description) = "Inferences using supplied data, or data associated with the specified key.";
+ }
- rpc InferenceMetadata (.CMsgSteamLearn_InferenceMetadata_Request) returns (.CMsgSteamLearn_InferenceMetadata_Response) {
- option (method_description) = "Requests the metadata that was generated from a specified fetch.";
- }
+ rpc InferenceMetadata (.CMsgSteamLearn_InferenceMetadata_Request) returns (.CMsgSteamLearn_InferenceMetadata_Response) {
+ option (method_description) = "Requests the metadata that was generated from a specified fetch.";
+ }
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_unified_base.steamworkssdk.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_unified_base.steamworkssdk.proto
index b742b756..39a53ae8 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_unified_base.steamworkssdk.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/steammessages_unified_base.steamworkssdk.proto
@@ -6,27 +6,27 @@ option optimize_for = SPEED;
option java_generic_services = false;
extend .google.protobuf.FieldOptions {
- optional string description = 50000;
+ optional string description = 50000;
}
extend .google.protobuf.ServiceOptions {
- optional string service_description = 50000;
- optional .EProtoExecutionSite service_execution_site = 50008 [default = k_EProtoExecutionSiteUnknown];
+ optional string service_description = 50000;
+ optional .EProtoExecutionSite service_execution_site = 50008 [default = k_EProtoExecutionSiteUnknown];
}
extend .google.protobuf.MethodOptions {
- optional string method_description = 50000;
+ optional string method_description = 50000;
}
extend .google.protobuf.EnumOptions {
- optional string enum_description = 50000;
+ optional string enum_description = 50000;
}
extend .google.protobuf.EnumValueOptions {
- optional string enum_value_description = 50000;
+ optional string enum_value_description = 50000;
}
enum EProtoExecutionSite {
- k_EProtoExecutionSiteUnknown = 0;
- k_EProtoExecutionSiteSteamClient = 3;
+ k_EProtoExecutionSiteUnknown = 0;
+ k_EProtoExecutionSiteSteamClient = 3;
}
diff --git a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto
index d4f9445a..7ed421e3 100644
--- a/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto
+++ b/javasteam-dota2/src/main/proto/in/dragonbra/javasteam/protobufs/dota2/valveextensions.proto
@@ -5,27 +5,32 @@ option java_package = "in.dragonbra.javasteam.protobufs.dota2";
option optimize_for = SPEED;
option java_generic_services = false;
+extend .google.protobuf.MessageOptions {
+ optional bool codegen_delta_encoder = 61000 [default = false];
+}
+
extend .google.protobuf.FieldOptions {
- optional bool valve_map_field = 61000 [default = false];
- optional bool valve_map_key = 61001 [default = false];
- optional int32 diff_encode_field = 61002 [default = 0];
- optional bool delta_ignore = 61003 [default = false];
- optional uint32 steamml_max_entries = 61004 [default = 0];
- optional bool steamml_is_timestamp = 61005 [default = false];
- optional uint32 steamlearn_count = 61006 [default = 0];
- optional .EProtoDebugVisiblity debugprint_visibility = 61007 [default = k_EProtoDebugVisibility_Always];
+ optional bool valve_map_field = 61000 [default = false];
+ optional bool valve_map_key = 61001 [default = false];
+ optional int32 diff_encode_field = 61002 [default = 0];
+ optional bool delta_ignore = 61003 [default = false];
+ optional int32 untrusted_delta_max = 61008 [default = 256];
+ optional uint32 steamml_max_entries = 61004 [default = 0];
+ optional bool steamml_is_timestamp = 61005 [default = false];
+ optional uint32 steamlearn_count = 61006 [default = 0];
+ optional .EProtoDebugVisiblity debugprint_visibility = 61007 [default = k_EProtoDebugVisibility_Always];
}
extend .google.protobuf.EnumValueOptions {
- optional string schema_friendly_name = 1000;
- optional string schema_description = 1001;
- optional bool schema_suppress_enumerator = 1002;
+ optional string schema_friendly_name = 1000;
+ optional string schema_description = 1001;
+ optional bool schema_suppress_enumerator = 1002;
}
enum EProtoDebugVisiblity {
- k_EProtoDebugVisibility_Always = 0;
- k_EProtoDebugVisibility_Server = 70;
- k_EProtoDebugVisibility_ValveServer = 80;
- k_EProtoDebugVisibility_GC = 90;
- k_EProtoDebugVisibility_Never = 100;
+ k_EProtoDebugVisibility_Always = 0;
+ k_EProtoDebugVisibility_Server = 70;
+ k_EProtoDebugVisibility_ValveServer = 80;
+ k_EProtoDebugVisibility_GC = 90;
+ k_EProtoDebugVisibility_Never = 100;
}
diff --git a/javasteam-protobufs-webui/build.gradle.kts b/javasteam-protobufs-webui/build.gradle.kts
index da44b6ef..1ec9affc 100644
--- a/javasteam-protobufs-webui/build.gradle.kts
+++ b/javasteam-protobufs-webui/build.gradle.kts
@@ -56,6 +56,11 @@ dokka {
moduleName.set("JavaSteam")
dokkaSourceSets.main {
suppressGeneratedFiles.set(false) // Allow generated files to be documented.
+ sourceRoots.setFrom(
+ "src/main/java",
+ files(layout.buildDirectory.dir("generated/source/javasteam/main/java")).builtBy("generateRpcMethods"),
+ )
+ classpath.from(tasks.compileJava.map { it.destinationDirectory })
perPackageOption {
// Deny most of the generated files.
matchingRegex.set("in.dragonbra.javasteam.(protobufs|enums|generated).*")
diff --git a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/common.proto b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/common.proto
index f9472ef2..94b01a3a 100644
--- a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/common.proto
+++ b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/common.proto
@@ -7,12 +7,39 @@ option java_package = "in.dragonbra.javasteam.protobufs.webui";
option optimize_for = SPEED;
option java_generic_services = false;
-message AssetPropertyFilter {
- optional uint32 property_id = 1;
- optional float float_min = 2;
- optional float float_max = 3;
- optional int64 int_min = 4;
- optional int64 int_max = 5;
+// Used by: common.proto
+message AppCloudStatus {
+ optional uint32 status = 1;
+ optional uint32 sync_state = 2;
+ optional double transfer_percentage = 3;
+}
+
+// Used by: common.proto
+message AppStageProgress {
+ optional uint64 in_progress = 1;
+ optional uint64 total = 2;
+ optional int32 estimated_time_remaining_secs = 3;
+ optional float weight = 4;
+}
+
+// Used by: common.proto
+message AppUpdateInfo {
+ optional fixed32 time_update_start = 1;
+ optional uint64 bytes_to_download = 2;
+ optional uint64 bytes_downloaded = 3;
+ optional uint64 bytes_to_process = 4;
+ optional uint64 bytes_processed = 5;
+ optional int32 estimated_seconds_remaining = 6 [default = -1];
+ optional int32 update_result = 7;
+ optional uint32 update_state = 8;
+ optional uint32 download_type = 9;
+ optional uint64 staging_bytes_staged = 10;
+ optional uint64 staging_bytes_to_stage = 11;
+ optional uint32 bytes_to_disc_per_second = 12;
+ repeated AppStageProgress progress_weights = 13;
+ optional uint32 time_deferred_until = 14;
+ optional uint32 source_build_id = 15;
+ optional uint32 target_build_id = 16;
}
// Used by: common.proto
@@ -70,6 +97,8 @@ message CAppOverview {
optional bool has_custom_sort_as = 76;
optional uint64 bitfield_supported_languages = 77 [default = 0];
repeated CAppOverview_PerClientData remote_per_client_data = 78;
+ repeated int32 content_descriptors = 79 [(webui.description) = "enum"];
+ optional uint32 custom_images_found = 80;
}
message CAppOverview_Change {
@@ -111,7 +140,7 @@ message CartCoupon {
optional int32 discount_pct = 8;
}
-// Used by: AccountCart, Checkout
+// Used by: AccountCart, Checkout, ShoppingCart
message CartGiftInfo {
optional int32 accountid_giftee = 1;
optional CartGiftMessage gift_message = 2;
@@ -119,7 +148,7 @@ message CartGiftInfo {
optional string email_giftee = 4;
}
-// Used by: AccountCart, Checkout
+// Used by: AccountCart, Checkout, ShoppingCart
message CartGiftMessage {
optional string gifteename = 1;
optional string message = 2;
@@ -127,6 +156,40 @@ message CartGiftMessage {
optional string signature = 4;
}
+message CAudioFormat {
+ optional int32 format = 1 [(webui.description) = "enum"];
+ optional uint32 frequency = 2;
+ optional uint32 channels = 3;
+}
+
+message CAuthenticationRequestMsg {
+ optional bytes token = 1;
+ optional int32 version = 2 [(webui.description) = "enum"];
+ optional uint64 steamid = 3;
+}
+
+message CAuthenticationResponseMsg {
+ optional int32 result = 1 [(webui.description) = "enum"];
+ optional int32 version = 2 [(webui.description) = "enum"];
+}
+
+message CBilling_Address {
+ optional string first_name = 1;
+ optional string last_name = 2;
+ optional string address1 = 3;
+ optional string address2 = 4;
+ optional string city = 5;
+ optional string us_state = 6;
+ optional string country_code = 7;
+ optional string postcode = 8;
+ optional int32 zip_plus4 = 9;
+ optional string phone = 10;
+}
+
+message CCaptureFailedMsg {
+ optional int32 reason = 1 [(webui.description) = "enum"];
+}
+
// Used by: ChatRoom, ChatRoomClient, ClanChatRooms
message CChatPartyBeacon {
optional uint32 app_id = 1;
@@ -189,220 +252,43 @@ message CChatRoomState {
optional uint32 accountid_last_message = 8;
}
-// Used by: common.proto
-message CClientMetrics_AppInterfaceCreation {
- optional string raw_version = 1;
- optional string requested_interface_type = 2;
-}
-
-// Used by: common.proto
-message CClientMetrics_AppInterfaceMethodCounts {
- optional string interface_name = 1;
- optional string method_name = 2;
- optional uint32 call_count = 3;
-}
-
-message CClientMetrics_AppInterfaceStats_Notification {
- optional uint64 game_id = 1;
- repeated CClientMetrics_AppInterfaceCreation interfaces_created = 2;
- repeated CClientMetrics_AppInterfaceMethodCounts methods_called = 3;
- optional uint32 session_length_seconds = 4;
-}
-
-message CClientMetrics_ClientBootstrap_Notification {
- optional CClientMetrics_ClientBootstrap_Summary summary = 1;
-}
-
-// Used by: common.proto
-message CClientMetrics_ClientBootstrap_RequestInfo {
- optional string original_hostname = 1;
- optional string actual_hostname = 2;
- optional string path = 3;
- optional string base_name = 4;
- optional bool success = 5;
- optional uint32 status_code = 6;
- optional string address_of_request_url = 7;
- optional uint32 response_time_ms = 8;
- optional uint64 bytes_received = 9;
- optional uint32 num_retries = 10;
-}
-
-// Used by: common.proto
-message CClientMetrics_ClientBootstrap_Summary {
- optional uint32 launcher_type = 1;
- optional uint32 steam_realm = 2;
- optional string beta_name = 3;
- optional bool download_completed = 4;
- optional uint32 total_time_ms = 6;
- repeated CClientMetrics_ClientBootstrap_RequestInfo manifest_requests = 7;
- repeated CClientMetrics_ClientBootstrap_RequestInfo package_requests = 8;
-}
-
-message CClientMetrics_ClipRange_Notification {
- optional int32 original_range_method = 1 [(webui.description) = "enum"];
- optional CClientMetrics_ClipRange_Notification_RelativeRangeEdge start = 2;
- optional CClientMetrics_ClipRange_Notification_RelativeRangeEdge end = 3;
- optional float seconds = 4;
- optional fixed64 gameid = 5;
-}
-
-// Used by: common.proto
-message CClientMetrics_ClipRange_Notification_RelativeRangeEdge {
- optional int32 original_range_method = 1 [(webui.description) = "enum"];
- optional int32 latest_range_method = 2 [(webui.description) = "enum"];
- optional int32 delta_ms = 3;
-}
-
-message CClientMetrics_ClipShare_Notification {
- optional uint32 eresult = 1 [default = 2];
- optional int32 share_method = 2 [(webui.description) = "enum"];
- optional float seconds = 3;
- optional uint64 bytes = 4;
- optional fixed64 gameid = 5;
-}
-
-message CClientMetrics_CloudAppSyncStats_Notification {
- optional uint32 app_id = 1;
- optional uint32 platform_type = 2;
- optional bool preload = 3;
- optional bool blocking_app_launch = 4;
- optional uint32 files_uploaded = 5;
- optional uint32 files_downloaded = 6;
- optional uint32 files_deleted = 7;
- optional uint64 bytes_uploaded = 8;
- optional uint64 bytes_downloaded = 9;
- optional uint64 microsec_total = 10;
- optional uint64 microsec_init_caches = 11;
- optional uint64 microsec_validate_state = 12;
- optional uint64 microsec_ac_launch = 13;
- optional uint64 microsec_ac_prep_user_files = 14;
- optional uint64 microsec_ac_exit = 15;
- optional uint64 microsec_build_sync_list = 16;
- optional uint64 microsec_delete_files = 17;
- optional uint64 microsec_download_files = 18;
- optional uint64 microsec_upload_files = 19;
- optional uint32 hardware_type = 20;
- optional uint32 files_managed = 21;
-}
-
-// Used by: common.proto
-message CClientMetrics_ContentDownloadResponse_Counts {
- optional uint32 class_100 = 1;
- optional uint32 class_200 = 2;
- optional uint32 class_300 = 3;
- optional uint32 class_400 = 4;
- optional uint32 class_500 = 5;
- optional uint32 no_response = 6;
- optional uint32 class_unknown = 7;
-}
-
-message CClientMetrics_ContentDownloadResponse_Counts_Notification {
- optional uint32 cell_id = 1;
- optional CClientMetrics_ContentDownloadResponse_Hosts data = 2;
-}
-
-// Used by: common.proto
-message CClientMetrics_ContentDownloadResponse_HostCounts {
- optional string hostname = 1;
- optional uint32 source_type = 2;
- optional CClientMetrics_ContentDownloadResponse_Counts counts = 3;
-}
-
-// Used by: common.proto
-message CClientMetrics_ContentDownloadResponse_Hosts {
- repeated CClientMetrics_ContentDownloadResponse_HostCounts hosts = 1;
-}
-
-message CClientMetrics_ContentValidation_Notification {
- optional int32 validation_result = 1;
- optional uint32 app_id = 2;
- optional bool staged_files = 3;
- optional bool user_initiated = 4;
- optional bool early_out = 5;
- optional uint32 chunks_scanned = 6;
- optional uint32 chunks_corrupt = 7;
- optional uint64 bytes_scanned = 8;
- optional uint64 chunk_bytes_corrupt = 9;
- optional uint64 total_file_size_corrupt = 10;
-}
-
-message CClientMetrics_DownloadRates_Notification {
- optional uint32 cell_id = 1;
- repeated CClientMetrics_DownloadRates_Notification_StatsInfo stats = 2;
- optional uint32 throttling_kbps = 3;
- optional uint32 os_type = 4;
- optional uint32 device_type = 5;
-}
-
-// Used by: common.proto
-message CClientMetrics_DownloadRates_Notification_StatsInfo {
- optional uint32 source_type = 1;
- optional uint32 source_id = 2;
- optional uint64 bytes = 3;
- optional string host_name = 4;
- optional uint64 microseconds = 5;
- optional bool used_ipv6 = 6;
- optional bool proxied = 7;
- optional bool used_http2 = 8;
- optional uint32 cache_hits = 9;
- optional uint32 cache_misses = 10;
- optional uint64 hit_bytes = 11;
- optional uint64 miss_bytes = 12;
- optional uint32 chunks_scored = 13;
- optional double sum_chunk_scores = 14;
-}
-
-message CClientMetrics_EndGameRecording_Notification {
- optional int32 recording_type = 1 [(webui.description) = "enum"];
- optional float seconds = 2;
- optional uint64 bytes = 3;
- optional fixed64 gameid = 4;
- optional bool instant_clip = 5;
-}
-
-message CClientMetrics_GamePerformance_Notification {
- repeated CClientMetrics_GamePerformance_Notification_FrameRate frame_rates = 2;
- optional UserSystemInformation system_info = 3;
-}
-
-// Used by: common.proto
-message CClientMetrics_GamePerformance_Notification_FrameRate {
- optional fixed64 gameid = 1;
- optional uint32 frame_rate = 2;
- optional int32 session_seconds = 3;
- optional uint32 framegen_frame_rate = 4;
- optional GamePerformanceSettings game_settings = 5;
-}
-
-message CClientMetrics_IPv6Connectivity_Notification {
- optional uint32 cell_id = 1;
- repeated CClientMetrics_IPv6Connectivity_Result results = 2;
- optional bool private_ip_is_rfc6598 = 3;
-}
-
-// Used by: common.proto
-message CClientMetrics_IPv6Connectivity_Result {
- optional uint32 protocol_tested = 1;
- optional uint32 connectivity_state = 2;
-}
-
-message CClientMetrics_SteamPipeWorkStats_Notification {
- optional uint32 appid = 1;
- optional uint32 depotid = 2;
- optional int32 work_type = 3 [(webui.description) = "enum"];
- repeated CClientMetrics_SteamPipeWorkStats_Operation operations = 4;
- optional uint32 hardware_type = 5;
-}
-
-// Used by: common.proto
-message CClientMetrics_SteamPipeWorkStats_Operation {
- optional int32 type = 1 [(webui.description) = "enum"];
- optional uint32 num_ops = 2;
- optional uint64 num_bytes = 3;
- optional uint64 busy_time_ms = 4;
- optional uint64 idle_time_ms = 5;
- optional uint64 sum_run_time_ms = 6;
- optional uint64 sum_wait_time_ms = 7;
+message CClanEventData {
+ optional fixed64 gid = 1;
+ optional fixed64 clan_steamid = 2;
+ optional string event_name = 3;
+ optional int32 event_type = 4 [(webui.description) = "enum"];
+ optional uint32 appid = 5;
+ optional string server_address = 6;
+ optional string server_password = 7;
+ optional uint32 rtime32_start_time = 8;
+ optional uint32 rtime32_end_time = 9;
+ optional int32 comment_count = 10;
+ optional fixed64 creator_steamid = 11;
+ optional fixed64 last_update_steamid = 12;
+ optional string event_notes = 13;
+ optional string jsondata = 14;
+ optional CCommunity_ClanAnnouncementInfo announcement_body = 15;
+ optional bool published = 16;
+ optional bool hidden = 17;
+ optional uint32 rtime32_visibility_start = 18;
+ optional uint32 rtime32_visibility_end = 19;
+ optional uint32 broadcaster_accountid = 20;
+ optional uint32 follower_count = 21;
+ optional uint32 ignore_count = 22;
+ optional fixed64 forum_topic_id = 23;
+ optional uint32 rtime32_last_modified = 24;
+ optional fixed64 news_post_gid = 25;
+ optional uint32 rtime_mod_reviewed = 26;
+ optional uint32 featured_app_tagid = 27;
+ repeated uint32 referenced_appids = 28;
+ optional uint32 build_id = 29;
+ optional string build_branch = 30;
+ optional bool unlisted = 31;
+ optional uint32 rtime_created = 32;
+}
+
+message CClientHandshakeMsg {
+ optional CStreamingClientHandshakeInfo info = 1;
}
message CClientNotificationAchievement {
@@ -463,6 +349,16 @@ message CClientNotificationDockUnsupportedFirmware {
message CClientNotificationDownloadCompleted {
optional uint32 appid = 1;
optional uint32 dlc_appid = 2;
+ optional string remote_client_name = 3;
+}
+
+message CClientNotificationFamilySharingDeviceAuthorizationChanged {
+ optional uint32 accountid_owner = 1;
+ optional bool authorized = 2;
+}
+
+message CClientNotificationFamilySharingLibraryAvailable {
+ optional uint32 accountid_owner = 1;
}
message CClientNotificationFamilySharingStopPlaying {
@@ -476,6 +372,10 @@ message CClientNotificationFriendInGame {
optional string game_name = 2;
}
+message CClientNotificationFriendInvite {
+ optional fixed64 steamid = 1;
+}
+
message CClientNotificationFriendInviteRollup {
optional uint32 new_invite_count = 1;
}
@@ -519,6 +419,10 @@ message CClientNotificationGameRecordingUserMarkerAdded {
optional fixed64 game_id = 1;
}
+message CClientNotificationGiftReceived {
+ optional string sender_name = 1;
+}
+
message CClientNotificationGroupChatMessage {
optional string tag = 1;
optional string steamid_sender = 2;
@@ -547,6 +451,9 @@ message CClientNotificationItemAnnouncement {
optional bool new_backpack_items = 2;
}
+message CClientNotificationLoggedInAsUser {
+}
+
message CClientNotificationLoginRefresh {
}
@@ -561,11 +468,19 @@ message CClientNotificationLowDiskSpace {
message CClientNotificationOverlaySplashScreen {
}
+message CClientNotificationPeerContentUpload {
+ optional uint32 appid = 1;
+ optional string peer_name = 2;
+}
+
message CClientNotificationPlaytimeWarning {
optional string type = 1;
optional uint32 playtime_remaining = 2;
}
+message CClientNotificationRedeemFramePromo {
+}
+
message CClientNotificationRemoteClientConnection {
optional string machine = 1;
optional bool connected = 2;
@@ -576,6 +491,9 @@ message CClientNotificationRemoteClientStartStream {
optional string game_name = 2;
}
+message CClientNotificationRestartNeeded {
+}
+
message CClientNotificationScreenshot {
optional string screenshot_handle = 1;
optional string description = 2;
@@ -609,13 +527,6 @@ message CClientNotificationTimedTrialRemaining {
message CClientNotificationTimerExpired {
}
-message CCloud_AppExitSyncDone_Notification {
- optional uint32 appid = 1;
- optional uint64 client_id = 2;
- optional bool uploads_completed = 3;
- optional bool uploads_required = 4;
-}
-
// Used by: Cloud, common.proto
message CCloud_PendingRemoteOperation {
optional int32 operation = 1 [(webui.description) = "enum"];
@@ -626,98 +537,167 @@ message CCloud_PendingRemoteOperation {
optional int32 device_type = 6;
}
-message CContentServerConfig_AnonymousDepots_Notification {
- repeated uint32 anon_session_allowed_depots = 2;
+message CCMRemoteClient_ClientMessage {
+ optional CRemoteClient_CreateSession_Request create_session_request = 1;
+ optional CRemoteClient_StartPairing_Request start_pairing_request = 2;
+ optional CRemoteClient_SetPairingInfo_Request set_pairing_info_request = 3;
+ optional CRemoteClient_CancelPairing_Request cancel_pairing_request = 4;
+ optional CRemoteClient_RegisterStatusUpdate_Notification register_status_update = 5;
+ optional CRemoteClient_UnregisterStatusUpdate_Notification unregister_status_update = 6;
+ optional CRemoteClient_RemotePacket_Notification remote_packet = 7;
+}
+
+message CCMRemoteClient_ServerMessage {
+ optional int32 result = 1;
+ optional CRemoteClient_CreateSession_Response create_session_response = 2;
+ optional CRemoteClient_StartPairing_Response start_pairing_response = 3;
+ optional CRemoteClient_SetPairingInfo_Response set_pairing_info_response = 4;
+ optional CRemoteClient_CancelPairing_Response cancel_pairing_response = 5;
+ optional CRemoteClient_GetReplies_Response reply_packet = 6;
+ optional CRemoteClient_Offline_Notification offline = 7;
+}
+
+// Used by: common.proto
+message CCommunity_ClanAnnouncementInfo {
+ optional uint64 gid = 1;
+ optional uint64 clanid = 2;
+ optional uint64 posterid = 3;
+ optional string headline = 4;
+ optional uint32 posttime = 5;
+ optional uint32 updatetime = 6;
+ optional string body = 7;
+ optional int32 commentcount = 8;
+ repeated string tags = 9;
+ optional int32 language = 10;
+ optional bool hidden = 11;
+ optional fixed64 forum_topic_id = 12;
+ optional fixed64 event_gid = 13;
+ optional int32 voteupcount = 14;
+ optional int32 votedowncount = 15;
+ optional int32 ban_check_result = 16 [(webui.description) = "enum"];
+ optional bool banned = 17;
+}
+
+message CControllerConfigMsg {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional string controllerPath = 2;
+ optional uint32 appid = 3;
+ optional CControllerConfigMsg_ControllerPersonalizationResponse personalizationResponse = 4;
+ repeated CControllerConfigMsg_ControllerConfigResponse configResponse = 6;
+ optional CControllerConfigMsg_ControllerActiveConfigMsg activeConfigChangeMsg = 7;
}
-message CContentServerConfig_CMStats_Notification {
- repeated CContentServerConfig_CMStats_Notification_Stats stats = 1;
+message CControllerConfigMsg_ControllerActiveConfigChangeResponse {
+ optional string configURL = 2;
+ optional uint32 controllerType = 3;
+ optional string controllerData = 4;
+ optional uint32 selectionOrder = 5;
}
// Used by: common.proto
-message CContentServerConfig_CMStats_Notification_Stats {
- optional uint32 sysid_cm = 1;
- optional uint32 current_load = 2;
- optional uint32 rtime_last_updated = 3;
+message CControllerConfigMsg_ControllerActiveConfigMsg {
+ optional uint32 appid = 1;
+ optional string configURL = 2;
+ optional uint32 controllerType = 3;
+ optional string controllerData = 4;
}
-message CContentServerConfig_ContentServerStats_Notification {
- repeated CContentServerConfig_ContentServerStats_Notification_Stats stats = 1;
- repeated CContentServerConfig_ContentServerStats_Notification_CDNStats cdn_stats = 2;
- repeated CContentServerConfig_ContentServerStats_Notification_SteamCacheStats steamcache_stats = 3;
+// Used by: common.proto
+message CControllerConfigMsg_ControllerConfigResponse {
+ optional uint32 appid = 1;
+ optional string configURL = 2;
+ optional uint32 controllerType = 3;
+ optional string controllerData = 4;
+ optional uint32 selectionOrder = 5;
+ optional bool actionBlock = 6;
}
// Used by: common.proto
-message CContentServerConfig_ContentServerStats_Notification_CDNStats {
- optional string cdn_name = 1;
- optional int32 current_load = 2;
- optional uint32 rtime_last_updated = 3;
+message CControllerConfigMsg_ControllerPersonalizationResponse {
+ optional string personalizationData = 1;
}
-// Used by: common.proto
-message CContentServerConfig_ContentServerStats_Notification_Stats {
- optional uint32 cs_id = 1;
- optional uint32 current_load = 2;
- optional uint32 rtime_last_updated = 3;
+message CControllerPersonalizationUpdateMsg {
+ optional string controller_path = 1;
+ optional string controller_name = 2;
+ optional bool reverse_diamond_button_layout = 3;
}
-// Used by: common.proto
-message CContentServerConfig_ContentServerStats_Notification_SteamCacheStats {
- optional uint32 cache_id = 1;
- optional uint32 current_load = 2;
- optional uint32 rtime_last_updated = 3;
- optional uint32 load_adjustment = 4;
+message CCuratorPreferences {
+ optional bool platform_windows = 2;
+ optional bool platform_mac = 3;
+ optional bool platform_linux = 4;
+ optional bool vr_content = 5;
+ optional bool adult_content_violence = 6;
+ optional bool adult_content_sex = 7;
+ optional uint32 timestamp_updated = 8;
+ repeated uint32 tagids_curated = 9;
+ repeated uint32 tagids_filtered = 10;
+ optional string website_title = 11;
+ optional string website_url = 12;
+ optional string discussion_url = 13;
+ optional bool show_broadcast = 14;
}
-// Used by: ContentServerConfig, common.proto
-message CContentServerConfig_OpenCacheConfig {
- optional uint32 cache_id = 1;
- optional bool is_enabled = 2;
- optional string host_name = 3;
- optional string provider = 4;
- optional uint32 cell_id = 5;
- optional string config_json = 6;
- optional string name = 7;
- optional string ip_filter_list = 8;
+message CDebugDumpMsg {
+ optional bytes screenshot = 1;
}
-message CContentServerConfig_OpenCacheConfigUpdate_Notification {
- optional CContentServerConfig_OpenCacheConfig config = 1;
+message CDeleteCursorMsg {
+ optional uint64 cursor_id = 1;
}
-// Used by: ContentServerConfig, common.proto
-message CContentServerConfig_SteamCacheConfig {
- optional uint32 cache_id = 1;
- optional bool is_enabled = 2;
- optional string host_name = 3;
- optional string provider = 4;
- optional uint32 cell_id = 5;
- optional string api_key_primary = 6;
- optional string api_key_secondary = 7;
- optional string config_json = 8;
- optional string name = 9;
- optional string ip_filter_list = 10;
- optional uint32 timestamp = 11;
+message CDisableHighResCaptureMsg {
}
-message CContentServerConfig_SteamCacheConfigUpdate_Notification {
- optional CContentServerConfig_SteamCacheConfig config = 1;
+message CDiscoveryPingRequest {
+ optional uint32 sequence = 1;
+ optional uint32 packet_size_requested = 2;
}
-// Used by: ContentServerConfig, common.proto
-message CContentServerConfig_SteamCSConfig {
- optional uint32 cs_id = 1;
- optional bool is_enabled = 2;
- optional string host_name = 3;
- optional string provider = 4;
- optional uint32 cell_id = 5;
- optional string config_json = 8;
- optional string name = 9;
- optional string ip_filter_list = 10;
+message CDiscoveryPingResponse {
+ optional uint32 sequence = 1;
+ optional uint32 packet_size_received = 2;
+}
+
+message CEnableHighResCaptureMsg {
}
-message CContentServerConfig_SteamCSConfigUpdate_Notification {
- optional CContentServerConfig_SteamCSConfig config = 1;
+// Used by: common.proto
+message CFrameEvent {
+ optional int32 event_id = 1 [(webui.description) = "enum"];
+ optional uint32 timestamp = 2;
+}
+
+// Used by: common.proto
+message CFrameStatAccumulatedValue {
+ optional int32 stat_type = 1 [(webui.description) = "enum"];
+ optional int32 count = 2;
+ optional float average = 3;
+ optional float stddev = 4;
+}
+
+// Used by: common.proto
+message CFrameStats {
+ optional uint32 frame_id = 1;
+ optional uint32 input_mark = 2;
+ repeated CFrameEvent events = 3;
+ optional int32 result = 4 [(webui.description) = "enum"];
+ optional float frame_start_delta = 5;
+ optional float frame_display_delta = 6;
+ optional float ping_time = 7;
+ optional float server_bitrate = 8;
+ optional float client_bitrate = 9;
+ optional float link_bandwidth = 10;
+ optional float packet_loss = 11;
+ optional uint32 frame_size = 12;
+}
+
+message CFrameStatsListMsg {
+ optional int32 data_type = 1 [(webui.description) = "enum"];
+ repeated CFrameStats stats = 2;
+ repeated CFrameStatAccumulatedValue accumulated_stats = 3;
+ optional int32 latest_frame_id = 4;
}
message CGameNetworkingUI_AppSummary {
@@ -728,6 +708,7 @@ message CGameNetworkingUI_AppSummary {
optional CGameNetworkingUI_ConnectionSummary main_cxn = 30;
}
+// Used by: common.proto
message CGameNetworkingUI_ConnectionState {
optional string connection_key = 1;
optional uint32 appid = 2;
@@ -770,6 +751,13 @@ message CGameNetworkingUI_ConnectionSummary {
optional uint32 connection_state = 8;
}
+message CGameNetworkingUI_GlobalState {
+}
+
+message CGameNetworkingUI_Message {
+ repeated CGameNetworkingUI_ConnectionState connection_state = 1;
+}
+
message CGameRecording_AudioSessionsChanged_Notification {
repeated CGameRecording_AudioSessionsChanged_Notification_Session sessions = 1;
}
@@ -788,17 +776,259 @@ message CGameRecording_AudioSessionsChanged_Notification_Session {
optional bool is_saved = 10;
}
-message CMDSAdmin_DepotIngestChunkStorageFailure_Notification {
+message CGameRecordingClipFile {
+ repeated CGameRecordingTimelineMetadata timelines = 1;
+ optional uint64 first_timeline_start_offset_ms = 2;
+ optional uint32 date_recorded = 3;
+ optional uint64 game_id = 4;
+ optional fixed64 published_file_id = 5;
+ optional uint64 size_in_bytes = 6;
+ optional string name = 7;
+ optional bool temporary = 8;
+ optional string original_device = 9;
+ optional uint32 original_gaming_device_type = 10;
+ optional uint32 date_downloaded = 11;
+ optional uint32 thumbnail_width = 12;
+ optional uint32 thumbnail_height = 13;
+ repeated CGameRecordingTag tags = 14;
+ repeated CGameRecordingPhase phases = 15;
+}
+
+message CGameRecordingFile {
+ repeated CGameRecordingTimelineMetadata timelines = 1;
+ repeated CGameRecordingPostGameSummary postgame_events = 2;
+ repeated string temporary_clips = 3;
+ repeated CGameRecordingTag tags = 4;
+}
+
+// Used by: GameRecording, common.proto
+message CGameRecordingPhase {
+ optional string phase_id = 4;
+ optional uint64 duration_ms = 5;
+ repeated CGameRecordingPhase_Tag tags = 6;
+ repeated CGameRecordingPhase_Tag contained_tags = 7;
+ optional uint64 background_timeline_offset = 8;
+ repeated CPhaseAttribute attributes = 9;
+}
+
+// Used by: GameRecording, common.proto
+message CGameRecordingPhase_Tag {
+ optional string name = 1;
+ optional string group = 2;
+}
+
+// Used by: common.proto
+message CGameRecordingPostGameSummary {
+ optional uint64 game_id = 1;
+ repeated CGameRecordingTimelineEvent events = 2;
+}
+
+// Used by: common.proto
+message CGameRecordingTag {
+ optional uint64 game_id = 1;
+ optional CTimelineTag tag = 2;
+ repeated CGameRecordingTag_Timeline references = 3;
+}
+
+// Used by: common.proto
+message CGameRecordingTag_Timeline {
+ optional string clip_id = 1;
+ optional string timeline_id = 2;
+ optional uint64 offset_ms = 3;
+}
+
+message CGameRecordingTagInstance {
+ optional string timeline_id = 1;
+ optional uint64 entry_id = 2;
+ optional uint64 timeline_offset_ms = 3;
+ optional uint64 duration_ms = 4;
+}
+
+// Used by: GameRecording, common.proto
+message CGameRecordingTimelineEvent {
+ optional uint64 game_id = 1;
+ optional uint32 rt_created = 2;
+ optional int32 possible_clip = 3;
+ optional string timeline_id = 4;
+ optional uint64 entry_id = 5;
+ optional uint64 timeline_offset_ms = 6;
+ optional uint64 duration_ms = 7;
+ optional string marker_icon = 8;
+ optional string marker_title = 9;
+ optional bool user_marker = 10;
+}
+
+// Used by: GameRecording, common.proto
+message CGameRecordingTimelineMetadata {
+ optional string timeline_id = 1;
+ optional uint64 game_id = 2;
+ optional uint32 date_recorded = 3;
+ optional uint64 duration_ms = 4;
+ repeated CGameRecordingTimelineMetadata_Recording recordings = 5;
+ repeated CGameRecordingPhase phases = 6;
+ repeated CGameRecordingTimelineEvent significant_events = 7;
+}
+
+// Used by: GameRecording, common.proto
+message CGameRecordingTimelineMetadata_Recording {
+ optional string recording_id = 1;
+ optional uint64 start_offset_ms = 2;
+ optional uint64 duration_ms = 3;
+ optional int32 recording_type = 4 [(webui.description) = "enum"];
+ optional bool delete_on_cleanup = 5;
+ optional uint64 video_manager_clip_id = 6;
+ optional uint64 video_manager_video_id = 7;
+ optional string cdn_manifest_url = 8;
+ optional uint64 file_size = 9;
+ optional uint64 recording_zero_timeline_offset_ms = 10;
+}
+
+message CGetCursorImageMsg {
+ optional uint64 cursor_id = 1;
+}
+
+message CGetTouchConfigDataMsg {
optional uint32 appid = 1;
- optional uint32 depot_id = 2;
- optional fixed64 build_handle = 3;
- optional bytes sha = 4;
+}
+
+message CGetTouchIconDataMsg {
+ optional uint32 appid = 1;
+ optional string icon = 2;
+}
+
+message CHideCursorMsg {
+}
+
+// Used by: common.proto
+message CInputKeyDownMsg {
+ optional uint32 input_mark = 1;
+ optional uint32 scancode = 2;
+ optional uint32 modifiers = 3;
+ optional uint32 keycode = 4;
+}
+
+// Used by: common.proto
+message CInputKeyUpMsg {
+ optional uint32 input_mark = 1;
+ optional uint32 scancode = 2;
+ optional uint32 modifiers = 3;
+ optional uint32 keycode = 4;
+}
+
+// Used by: common.proto
+message CInputMouseDownMsg {
+ optional uint32 input_mark = 1;
+ optional int32 button = 2 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CInputMouseMotionMsg {
+ optional uint32 input_mark = 1;
+ optional float x_normalized = 2;
+ optional float y_normalized = 3;
+ optional int32 dx = 4;
+ optional int32 dy = 5;
+}
+
+// Used by: common.proto
+message CInputMouseUpMsg {
+ optional uint32 input_mark = 1;
+ optional int32 button = 2 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CInputMouseWheelMsg {
+ optional uint32 input_mark = 1;
+ optional int32 direction = 2 [(webui.description) = "enum"];
+ optional float amount = 3 [default = 1];
+}
+
+// Used by: common.proto
+message CInputTextMsg {
+ optional uint32 input_mark = 1;
+ optional string text_utf8 = 2;
+}
+
+// Used by: common.proto
+message CInputTouchFingerDownMsg {
+ optional uint32 input_mark = 1;
+ optional uint64 fingerid = 2;
+ optional float x_normalized = 3;
+ optional float y_normalized = 4;
+}
+
+// Used by: common.proto
+message CInputTouchFingerMotionMsg {
+ optional uint32 input_mark = 1;
+ optional uint64 fingerid = 2;
+ optional float x_normalized = 3;
+ optional float y_normalized = 4;
+}
+
+// Used by: common.proto
+message CInputTouchFingerUpMsg {
+ optional uint32 input_mark = 1;
+ optional uint64 fingerid = 2;
+ optional float x_normalized = 3;
+ optional float y_normalized = 4;
+ optional bool canceled = 5;
+}
+
+message CKeepAliveMsg {
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreCuration, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message CLocalizationToken {
+ optional uint32 language = 1;
+ optional string localized_string = 2;
+}
+
+message CLogMsg {
+ optional int32 type = 1;
+ optional string message = 2;
+}
+
+message CLogUploadMsg {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional bytes data = 3;
}
message CMsgAchievementChange {
optional uint32 appid = 1;
}
+message CMsgAMUnlockH264 {
+ optional uint32 appid = 1;
+ optional int32 platform = 2;
+ optional int32 reason = 3;
+}
+
+message CMsgAMUnlockH264Response {
+ optional int32 eresult = 1 [default = 2];
+ optional bytes encryption_key = 2;
+}
+
+message CMsgAppRights {
+ optional bool edit_info = 1;
+ optional bool publish = 2;
+ optional bool view_error_data = 3;
+ optional bool download = 4;
+ optional bool upload_cdkeys = 5;
+ optional bool generate_cdkeys = 6;
+ optional bool view_financials = 7;
+ optional bool manage_ceg = 8;
+ optional bool manage_signing = 9;
+ optional bool manage_cdkeys = 10;
+ optional bool edit_marketing = 11;
+ optional bool economy_support = 12;
+ optional bool economy_support_supervisor = 13;
+ optional bool manage_pricing = 14;
+ optional bool broadcast_live = 15;
+ optional bool view_marketing_traffic = 16;
+ optional bool edit_store_display_content = 17;
+}
+
+// Used by: common.proto
message CMsgAuthTicket {
optional uint32 estate = 1;
optional uint32 eresult = 2 [default = 2];
@@ -816,6 +1046,59 @@ message CMsgBadgeCraftedNotification {
optional uint32 badge_level = 2;
}
+// Used by: common.proto
+message CMsgBezierCurve {
+ optional Vector2 start = 1;
+ optional Vector2 control_point1 = 2;
+ optional Vector2 control_point2 = 3;
+ optional Vector2 end = 4;
+}
+
+message CMsgBluetoothDevicesData {
+ repeated CMsgBluetoothDevicesData_Adapter adapters = 1;
+ repeated CMsgBluetoothDevicesData_Device devices = 2;
+ optional CMsgBluetoothDevicesData_Manager manager = 3;
+}
+
+// Used by: common.proto
+message CMsgBluetoothDevicesData_Adapter {
+ optional uint32 id = 1 [default = 0];
+ optional string mac = 2;
+ optional string name = 3;
+ optional bool is_enabled = 4;
+ optional bool is_discovering = 5;
+}
+
+// Used by: common.proto
+message CMsgBluetoothDevicesData_Device {
+ optional uint32 id = 1 [default = 0];
+ optional uint32 adapter_id = 2 [default = 0];
+ optional int32 etype = 3 [(webui.description) = "enum"];
+ optional string mac = 4;
+ optional string name = 5;
+ optional bool is_connected = 6;
+ optional bool is_paired = 7;
+ optional int32 strength_raw = 8;
+ optional bool wake_allowed = 9;
+ optional bool wake_allowed_supported = 10;
+ optional int32 battery_percent = 11;
+}
+
+// Used by: common.proto
+message CMsgBluetoothDevicesData_Manager {
+ optional bool is_bluetooth_enabled = 1;
+}
+
+message CMsgCellList {
+ repeated CMsgCellList_Cell cells = 1;
+}
+
+// Used by: common.proto
+message CMsgCellList_Cell {
+ optional uint32 cell_id = 1;
+ optional string loc_name = 2;
+}
+
message CMsgClientAccountInfo {
optional string persona_name = 1;
optional string ip_country = 2;
@@ -828,6 +1111,26 @@ message CMsgClientAccountInfo {
optional bool is_phone_needing_reverify = 19;
}
+message CMsgClientActivateOEMLicense {
+ optional string bios_manufacturer = 1;
+ optional string bios_serialnumber = 2;
+ optional bytes license_file = 3;
+ optional string mainboard_manufacturer = 4;
+ optional string mainboard_product = 5;
+ optional string mainboard_serialnumber = 6;
+}
+
+message CMsgClientAddFriend {
+ optional fixed64 steamid_to_add = 1;
+ optional string accountname_or_email_to_add = 2;
+}
+
+message CMsgClientAddFriendResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steam_id_added = 2;
+ optional string persona_name_added = 3;
+}
+
message CMsgClientAddFriendToGroup {
optional int32 groupid = 1;
optional fixed64 steamiduser = 2;
@@ -837,6 +1140,16 @@ message CMsgClientAddFriendToGroupResponse {
optional uint32 eresult = 1;
}
+message CMsgClientAMGetClanOfficers {
+ optional fixed64 steamid_clan = 1;
+}
+
+message CMsgClientAMGetClanOfficersResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steamid_clan = 2;
+ optional int32 officer_count = 3;
+}
+
message CMsgClientAMGetPersonaNameHistory {
optional int32 id_count = 1;
repeated CMsgClientAMGetPersonaNameHistory_IdInstance Ids = 2;
@@ -864,17 +1177,125 @@ message CMsgClientAMGetPersonaNameHistoryResponse_NameTableInstance_NameInstance
optional string name = 2;
}
-message CMsgClientChangeStatus {
- optional uint32 persona_state = 1;
- optional string player_name = 2;
- optional bool is_auto_generated_name = 3;
- optional bool high_priority = 4;
+message CMsgClientAuthList {
+ optional uint32 tokens_left = 1;
+ optional uint32 last_request_seq = 2;
+ optional uint32 last_request_seq_from_server = 3;
+ repeated CMsgAuthTicket tickets = 4;
+ repeated uint32 app_ids = 5;
+ optional uint32 message_sequence = 6;
+ optional bool filtered = 7;
+}
+
+message CMsgClientAuthListAck {
+ repeated uint32 ticket_crc = 1;
+ repeated uint32 app_ids = 2;
+ optional uint32 message_sequence = 3;
+}
+
+message CMsgClientAuthorizeLocalDevice {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 owner_account_id = 2;
+ optional uint64 authed_device_token = 3;
+}
+
+message CMsgClientAuthorizeLocalDeviceNotification {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 owner_account_id = 2;
+ optional uint64 local_device_token = 3;
+}
+
+message CMsgClientAuthorizeLocalDeviceRequest {
+ optional string device_description = 1;
+ optional uint32 owner_account_id = 2;
+ optional uint64 local_device_token = 3;
+}
+
+message CMsgClientChallengeRequest {
+ optional fixed64 steamid = 1;
+}
+
+message CMsgClientChallengeResponse {
+ optional fixed64 challenge = 1;
+}
+
+message CMsgClientChangeStatus {
+ optional uint32 persona_state = 1;
+ optional string player_name = 2;
+ optional bool is_auto_generated_name = 3;
+ optional bool high_priority = 4;
optional bool persona_set_by_user = 5;
optional uint32 persona_state_flags = 6 [default = 0];
optional bool need_persona_response = 7;
optional bool is_client_idle = 8;
}
+message CMsgClientChatGetFriendMessageHistory {
+ optional fixed64 steamid = 1;
+}
+
+message CMsgClientChatGetFriendMessageHistoryForOfflineMessages {
+}
+
+message CMsgClientChatGetFriendMessageHistoryResponse {
+ optional fixed64 steamid = 1;
+ optional uint32 success = 2;
+ repeated CMsgClientChatGetFriendMessageHistoryResponse_FriendMessage messages = 3;
+}
+
+// Used by: common.proto
+message CMsgClientChatGetFriendMessageHistoryResponse_FriendMessage {
+ optional uint32 accountid = 1;
+ optional uint32 timestamp = 2;
+ optional string message = 3;
+ optional bool unread = 4;
+}
+
+message CMsgClientChatInvite {
+ optional fixed64 steam_id_invited = 1;
+ optional fixed64 steam_id_chat = 2;
+ optional fixed64 steam_id_patron = 3;
+ optional int32 chatroom_type = 4;
+ optional fixed64 steam_id_friend_chat = 5;
+ optional string chat_name = 6;
+ optional fixed64 game_id = 7;
+}
+
+message CMsgClientCheckAppBetaPassword {
+ optional uint32 app_id = 1;
+ optional string betapassword = 2;
+ optional int32 language = 3;
+}
+
+message CMsgClientCheckAppBetaPasswordResponse {
+ optional int32 eresult = 1 [default = 2];
+ repeated CMsgClientCheckAppBetaPasswordResponse_BetaPassword betapasswords = 4;
+}
+
+// Used by: common.proto
+message CMsgClientCheckAppBetaPasswordResponse_BetaPassword {
+ optional string betaname = 1;
+ optional string betapassword = 2;
+ optional string betadescription = 3;
+}
+
+message CMsgClientCheckFileSignature {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientCheckFileSignatureResponse {
+ optional uint32 app_id = 1;
+ optional uint32 pid = 2;
+ optional uint32 eresult = 3;
+ optional string filename = 4;
+ optional uint32 esignatureresult = 5;
+ optional bytes sha_file = 6;
+ optional bytes signatureheader = 7;
+ optional uint32 filesize = 8;
+ optional uint32 getlasterror = 9;
+ optional uint32 evalvesignaturecheckdetail = 10;
+}
+
message CMsgClientClanState {
optional fixed64 steamid_clan = 1;
optional uint32 clan_account_flags = 3;
@@ -909,6 +1330,64 @@ message CMsgClientClanState_UserCounts {
optional uint32 chat_room_members = 5;
}
+message CMsgClientCommentNotifications {
+ optional uint32 count_new_comments = 1;
+ optional uint32 count_new_comments_owner = 2;
+ optional uint32 count_new_comments_subscriptions = 3;
+}
+
+message CMsgClientConnectionStats {
+ optional CMsgClientConnectionStats_Stats_Logon stats_logon = 1;
+ optional CMsgClientConnectionStats_Stats_VConn stats_vconn = 2;
+}
+
+// Used by: common.proto
+message CMsgClientConnectionStats_Stats_Logon {
+ optional int32 connect_attempts = 1;
+ optional int32 connect_successes = 2;
+ optional int32 connect_failures = 3;
+ optional int32 connections_dropped = 4;
+ optional uint32 seconds_running = 5;
+ optional uint32 msec_tologonthistime = 6;
+ optional uint32 count_bad_cms = 7;
+ optional bool no_udp_connectivity = 8;
+ optional bool no_tcp_connectivity = 9;
+ optional bool no_websocket_443_connectivity = 10;
+ optional bool no_websocket_non_443_connectivity = 11;
+}
+
+// Used by: common.proto
+message CMsgClientConnectionStats_Stats_UDP {
+ optional uint64 pkts_sent = 1;
+ optional uint64 bytes_sent = 2;
+ optional uint64 pkts_recv = 3;
+ optional uint64 pkts_processed = 4;
+ optional uint64 bytes_recv = 5;
+}
+
+// Used by: common.proto
+message CMsgClientConnectionStats_Stats_VConn {
+ optional uint32 connections_udp = 1;
+ optional uint32 connections_tcp = 2;
+ optional CMsgClientConnectionStats_Stats_UDP stats_udp = 3;
+ optional uint64 pkts_abandoned = 4;
+ optional uint64 conn_req_received = 5;
+ optional uint64 pkts_resent = 6;
+ optional uint64 msgs_sent = 7;
+ optional uint64 msgs_sent_failed = 8;
+ optional uint64 msgs_recv = 9;
+ optional uint64 datagrams_sent = 10;
+ optional uint64 datagrams_recv = 11;
+ optional uint64 bad_pkts_recv = 12;
+ optional uint64 unknown_conn_pkts_recv = 13;
+ optional uint64 missed_pkts_recv = 14;
+ optional uint64 dup_pkts_recv = 15;
+ optional uint64 failed_connect_challenges = 16;
+ optional uint32 micro_sec_avg_latency = 17;
+ optional uint32 micro_sec_min_latency = 18;
+ optional uint32 micro_sec_max_latency = 19;
+}
+
message CMsgClientCreateFriendsGroup {
optional fixed64 steamid = 1;
optional string groupname = 2;
@@ -920,6 +1399,16 @@ message CMsgClientCreateFriendsGroupResponse {
optional int32 groupid = 2;
}
+message CMsgClientDeauthorizeDevice {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 deauthorization_account_id = 2;
+}
+
+message CMsgClientDeauthorizeDeviceRequest {
+ optional uint32 deauthorization_account_id = 1;
+ optional uint64 deauthorization_device_token = 2;
+}
+
message CMsgClientDeleteFriendsGroup {
optional fixed64 steamid = 1;
optional int32 groupid = 2;
@@ -929,6 +1418,42 @@ message CMsgClientDeleteFriendsGroupResponse {
optional uint32 eresult = 1;
}
+message CMsgClientDeregisterWithServer {
+ optional uint32 eservertype = 1;
+ optional uint32 app_id = 2;
+}
+
+message CMsgClientDPCheckSpecialSurvey {
+ optional uint32 survey_id = 1;
+}
+
+message CMsgClientDPCheckSpecialSurveyResponse {
+ optional uint32 eResult = 1 [default = 2];
+ optional uint32 state = 2;
+ optional string name = 3;
+ optional string custom_url = 4;
+ optional bool include_software = 5;
+ optional bytes token = 6;
+}
+
+message CMsgClientDPSendSpecialSurveyResponse {
+ optional uint32 survey_id = 1;
+ optional bytes data = 2;
+}
+
+message CMsgClientDPSendSpecialSurveyResponseReply {
+ optional uint32 eResult = 1 [default = 2];
+ optional bytes token = 2;
+}
+
+message CMsgClientEmailAddrInfo {
+ optional string email_address = 1;
+ optional bool email_is_validated = 2;
+ optional bool email_validation_changed = 3;
+ optional bool credential_change_requires_code = 4;
+ optional bool password_or_secretqa_change_requires_code = 5;
+}
+
message CMsgClientEmoticonList {
repeated CMsgClientEmoticonList_Emoticon emoticons = 1;
repeated CMsgClientEmoticonList_Sticker stickers = 2;
@@ -964,17 +1489,206 @@ message CMsgClientEmoticonList_Sticker {
optional uint32 use_count = 6;
}
+message CMsgClientFriendMsg {
+ optional fixed64 steamid = 1;
+ optional int32 chat_entry_type = 2;
+ optional bytes message = 3;
+ optional fixed32 rtime32_server_timestamp = 4;
+ optional bool echo_to_sender = 5;
+}
+
+message CMsgClientFriendMsgIncoming {
+ optional fixed64 steamid_from = 1;
+ optional int32 chat_entry_type = 2;
+ optional bool from_limited_account = 3;
+ optional bytes message = 4;
+ optional fixed32 rtime32_server_timestamp = 5;
+}
+
+message CMsgClientFriendProfileInfo {
+ optional fixed64 steamid_friend = 1;
+}
+
+message CMsgClientFriendProfileInfoResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed64 steamid_friend = 2;
+ optional uint32 time_created = 3;
+ optional string real_name = 4;
+ optional string city_name = 5;
+ optional string state_name = 6;
+ optional string country_name = 7;
+ optional string headline = 8;
+ optional string summary = 9;
+}
+
+message CMsgClientFriendsGroupsList {
+ optional bool bremoval = 1;
+ optional bool bincremental = 2;
+ repeated CMsgClientFriendsGroupsList_FriendGroup friendGroups = 3;
+ repeated CMsgClientFriendsGroupsList_FriendGroupsMembership memberships = 4;
+}
+
+// Used by: common.proto
+message CMsgClientFriendsGroupsList_FriendGroup {
+ optional int32 nGroupID = 1;
+ optional string strGroupName = 2;
+}
+
+// Used by: common.proto
+message CMsgClientFriendsGroupsList_FriendGroupsMembership {
+ optional fixed64 ulSteamID = 1;
+ optional int32 nGroupID = 2;
+}
+
+message CMsgClientFriendUserStatusPublished {
+ optional fixed64 friend_steamid = 1;
+ optional uint32 appid = 2;
+ optional string status_text = 3;
+}
+
+message CMsgClientFSGetFriendsSteamLevels {
+ repeated uint32 accountids = 1;
+}
+
+message CMsgClientFSGetFriendsSteamLevelsResponse {
+ repeated CMsgClientFSGetFriendsSteamLevelsResponse_Friend friends = 1;
+}
+
+// Used by: common.proto
+message CMsgClientFSGetFriendsSteamLevelsResponse_Friend {
+ optional uint32 accountid = 1;
+ optional uint32 level = 2;
+}
+
+message CMsgClientGameConnectTokens {
+ optional uint32 max_tokens_to_keep = 1 [default = 10];
+ repeated bytes tokens = 2;
+}
+
+message CMsgClientGamesPlayed {
+ repeated CMsgClientGamesPlayed_GamePlayed games_played = 1;
+ optional uint32 client_os_type = 2;
+ optional uint32 cloud_gaming_platform = 3;
+ optional bool recent_reauthentication = 4;
+}
+
+// Used by: common.proto
+message CMsgClientGamesPlayed_GamePlayed {
+ optional uint64 steam_id_gs = 1;
+ optional fixed64 game_id = 2;
+ optional uint32 deprecated_game_ip_address = 3;
+ optional uint32 game_port = 4;
+ optional bool is_secure = 5;
+ optional bytes token = 6;
+ optional string game_extra_info = 7;
+ optional bytes game_data_blob = 8;
+ optional uint32 process_id = 9;
+ optional uint32 streaming_provider_id = 10;
+ optional uint32 game_flags = 11;
+ optional uint32 owner_id = 12;
+ optional string vr_hmd_vendor = 13;
+ optional string vr_hmd_model = 14;
+ optional uint32 launch_option_type = 15 [default = 0];
+ optional int32 primary_controller_type = 16 [default = -1];
+ optional string primary_steam_controller_serial = 17 [default = ""];
+ optional uint32 total_steam_controller_count = 18 [default = 0];
+ optional uint32 total_non_steam_controller_count = 19 [default = 0];
+ optional uint64 controller_workshop_file_id = 20 [default = 0];
+ optional uint32 launch_source = 21 [default = 0];
+ optional uint32 vr_hmd_runtime = 22;
+ optional CMsgIPAddress game_ip_address = 23;
+ optional uint32 controller_connection_type = 24 [default = 0];
+ optional int32 game_os_platform = 25;
+ optional uint32 game_build_id = 26;
+ optional uint32 compat_tool_id = 27 [default = 0];
+ optional string compat_tool_cmd = 28;
+ optional uint32 compat_tool_build_id = 29;
+ optional string beta_name = 30;
+ optional uint32 dlc_context = 31;
+ repeated CMsgClientGamesPlayed_ProcessInfo process_id_list = 32;
+}
+
+// Used by: common.proto
+message CMsgClientGamesPlayed_ProcessInfo {
+ optional uint32 process_id = 1;
+ optional uint32 process_id_parent = 2;
+ optional bool parent_is_steam = 3;
+}
+
+message CMsgClientGetAppOwnershipTicket {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientGetAppOwnershipTicketResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional bytes ticket = 3;
+}
+
+message CMsgClientGetAuthorizedDevices {
+}
+
+message CMsgClientGetAuthorizedDevicesResponse {
+ optional int32 eresult = 1 [default = 2];
+ repeated CMsgClientGetAuthorizedDevicesResponse_AuthorizedDevice authorized_device = 2;
+}
+
+// Used by: common.proto
+message CMsgClientGetAuthorizedDevicesResponse_AuthorizedDevice {
+ optional uint64 auth_device_token = 1;
+ optional string device_name = 2;
+ optional uint32 last_access_time = 3;
+ optional uint32 borrower_id = 4;
+ optional bool is_pending = 5;
+ optional uint32 app_played = 6;
+}
+
message CMsgClientGetClanActivityCounts {
repeated uint64 steamid_clans = 1;
}
+message CMsgClientGetClanActivityCountsResponse {
+ optional uint32 eresult = 1 [default = 2];
+}
+
+message CMsgClientGetDepotDecryptionKey {
+ optional uint32 depot_id = 1;
+ optional uint32 app_id = 2;
+}
+
+message CMsgClientGetDepotDecryptionKeyResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 depot_id = 2;
+ optional bytes depot_encryption_key = 3;
+}
+
message CMsgClientGetEmoticonList {
}
+message CMsgClientGetPeerContentInfo {
+ optional fixed64 steamid = 1;
+ optional fixed64 client_remote_id = 2;
+ optional bool owned_games_visible = 3;
+}
+
+message CMsgClientGetPeerContentInfoResponse {
+ optional uint32 result = 1;
+ repeated uint32 apps = 2;
+}
+
message CMsgClientHeartBeat {
optional bool send_reply = 1;
}
+message CMsgClientHello {
+ optional uint32 protocol_version = 1;
+}
+
+message CMsgClientHideFriend {
+ optional fixed64 friendid = 1;
+ optional bool hide = 2;
+}
+
message CMsgClientInviteToGame {
optional fixed64 steam_id_dest = 1;
optional fixed64 steam_id_src = 2;
@@ -982,6 +1696,13 @@ message CMsgClientInviteToGame {
optional string remote_play = 4;
}
+message CMsgClientIsLimitedAccount {
+ optional bool bis_limited_account = 1;
+ optional bool bis_community_banned = 2;
+ optional bool bis_locked_account = 3;
+ optional bool bis_limited_account_allowed_to_invite_friends = 4;
+}
+
message CMsgClientItemAnnouncements {
optional uint32 count_new_items = 1;
repeated CMsgClientItemAnnouncements_UnseenItem unseen_items = 2;
@@ -997,10 +1718,44 @@ message CMsgClientItemAnnouncements_UnseenItem {
optional uint32 source_appid = 6;
}
+message CMsgClientKickPlayingSession {
+ optional bool only_stop_game = 1;
+}
+
+message CMsgClientLicenseList {
+ optional int32 eresult = 1 [default = 2];
+ repeated CMsgClientLicenseList_License licenses = 2;
+}
+
+// Used by: common.proto
+message CMsgClientLicenseList_License {
+ optional uint32 package_id = 1;
+ optional fixed32 time_created = 2;
+ optional fixed32 time_next_process = 3;
+ optional int32 minute_limit = 4;
+ optional int32 minutes_used = 5;
+ optional uint32 payment_method = 6;
+ optional uint32 flags = 7;
+ optional string purchase_country_code = 8;
+ optional uint32 license_type = 9;
+ optional int32 territory_code = 10;
+ optional int32 change_number = 11;
+ optional uint32 owner_id = 12;
+ optional uint32 initial_period = 13;
+ optional uint32 initial_time_unit = 14;
+ optional uint32 renewal_period = 15;
+ optional uint32 renewal_time_unit = 16;
+ optional uint64 access_token = 17;
+ optional uint32 master_package_id = 18;
+}
+
message CMsgClientLoggedOff {
optional int32 eresult = 1 [default = 2];
}
+message CMsgClientLogOff {
+}
+
message CMsgClientLogon {
optional uint32 protocol_version = 1;
optional uint32 deprecated_obfustucated_private_ip = 2;
@@ -1100,376 +1855,901 @@ message CMsgClientManageFriendsGroupResponse {
optional uint32 eresult = 1;
}
-message CMsgClientMMSInviteToLobby {
+message CMsgClientMMSCreateLobby {
optional uint32 app_id = 1;
- optional fixed64 steam_id_lobby = 2;
- optional fixed64 steam_id_user_invited = 3;
-}
-
-message CMsgClientOfflineMessageNotification {
- optional uint32 offline_messages = 1;
- repeated uint32 friends_with_offline_messages = 2;
+ optional int32 max_members = 2;
+ optional int32 lobby_type = 3;
+ optional int32 lobby_flags = 4;
+ optional uint32 cell_id = 5;
+ optional uint32 deprecated_public_ip = 6;
+ optional bytes metadata_kv = 7;
+ optional string persona_name_owner = 8;
+ optional CMsgIPAddress public_ip = 9;
+ optional string network_ping_location = 10;
+ repeated MMSKeyValuePair metadata = 11;
}
-message CMsgClientPersonaState {
- optional uint32 status_flags = 1;
- repeated CMsgClientPersonaState_Friend friends = 2;
+message CMsgClientMMSCreateLobbyResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 eresult = 3 [default = 2];
}
-// Used by: ChatRoom, ChatRoomClient, common.proto
-message CMsgClientPersonaState_Friend {
- optional fixed64 friendid = 1;
- optional uint32 persona_state = 2;
- optional uint32 game_played_app_id = 3;
- optional uint32 game_server_ip = 4;
- optional uint32 game_server_port = 5;
- optional uint32 persona_state_flags = 6;
- optional uint32 online_session_instances = 7;
- optional bool persona_set_by_user = 10;
- optional string player_name = 15;
- optional uint32 query_port = 20;
- optional fixed64 steamid_source = 25;
- optional bytes avatar_hash = 31;
- optional uint32 last_logoff = 45;
- optional uint32 last_logon = 46;
- optional uint32 last_seen_online = 47;
- optional uint32 clan_rank = 50;
- optional string game_name = 55;
- optional fixed64 gameid = 56;
- optional bytes game_data_blob = 60;
- optional CMsgClientPersonaState_Friend_ClanData clan_data = 64;
- optional string clan_tag = 65;
- repeated CMsgClientPersonaState_Friend_KV rich_presence = 71;
- optional fixed64 broadcast_id = 72;
- optional fixed64 game_lobby_id = 73;
- optional uint32 watching_broadcast_accountid = 74;
- optional uint32 watching_broadcast_appid = 75;
- optional uint32 watching_broadcast_viewers = 76;
- optional string watching_broadcast_title = 77;
- optional bool is_community_banned = 78;
- optional bool player_name_pending_review = 79;
- optional bool avatar_pending_review = 80;
- optional bool on_steam_deck = 81;
- repeated CMsgClientPersonaState_Friend_OtherGameData other_game_data = 82;
- optional uint32 gaming_device_type = 83;
+message CMsgClientMMSGetLobbyData {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
}
-// Used by: ChatRoom, ChatRoomClient, common.proto
-message CMsgClientPersonaState_Friend_ClanData {
- optional uint32 ogg_app_id = 1;
- optional uint64 chat_group_id = 2;
+message CMsgClientMMSGetLobbyList {
+ optional uint32 app_id = 1;
+ optional int32 num_lobbies_requested = 3;
+ optional uint32 cell_id = 4;
+ optional uint32 deprecated_public_ip = 5;
+ repeated CMsgClientMMSGetLobbyList_Filter filters = 6;
+ optional CMsgIPAddress public_ip = 7;
+ optional string network_ping_location = 8;
}
-// Used by: ChatRoom, ChatRoomClient, common.proto
-message CMsgClientPersonaState_Friend_KV {
+// Used by: common.proto
+message CMsgClientMMSGetLobbyList_Filter {
optional string key = 1;
optional string value = 2;
+ optional int32 comparision = 3;
+ optional int32 filter_type = 4;
}
-// Used by: ChatRoom, ChatRoomClient, common.proto
-message CMsgClientPersonaState_Friend_OtherGameData {
- optional uint64 gameid = 1;
- repeated CMsgClientPersonaState_Friend_KV rich_presence = 2;
+message CMsgClientMMSGetLobbyListResponse {
+ optional uint32 app_id = 1;
+ optional int32 eresult = 3 [default = 2];
+ repeated CMsgClientMMSGetLobbyListResponse_Lobby lobbies = 4;
}
-message CMsgClientRemoveFriendFromGroup {
- optional int32 groupid = 1;
- optional fixed64 steamiduser = 2;
+// Used by: common.proto
+message CMsgClientMMSGetLobbyListResponse_Lobby {
+ optional fixed64 steam_id = 1;
+ optional int32 max_members = 2;
+ optional int32 lobby_type = 3;
+ optional int32 lobby_flags = 4;
+ optional bytes metadata_kv = 5;
+ optional int32 num_members = 6;
+ optional float distance = 7;
+ optional int64 weight = 8;
+ optional int32 ping = 9;
+ optional int32 missing_ping = 10;
+ repeated MMSKeyValuePair metadata = 11;
}
-message CMsgClientRemoveFriendFromGroupResponse {
- optional uint32 eresult = 1;
+message CMsgClientMMSGetLobbyStatus {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional bool claim_membership = 3;
+ optional bool claim_ownership = 4;
}
-message CMsgClientRequestFriendData {
- optional uint32 persona_state_requested = 1;
- repeated fixed64 friends = 2;
+message CMsgClientMMSGetLobbyStatusResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 lobby_status = 3 [(webui.description) = "enum"];
}
-message CMsgClientRequestOfflineMessageCount {
+message CMsgClientMMSInviteToLobby {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_user_invited = 3;
}
-// Used by: common.proto
-message CMsgClientSecret {
- optional uint32 version = 1;
- optional uint32 appid = 2;
- optional uint32 deviceid = 3;
- optional fixed64 nonce = 4;
- optional bytes hmac = 5;
+message CMsgClientMMSJoinLobby {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional string persona_name = 3;
+ optional string network_ping_location = 4;
+ optional uint32 cell_id = 5;
}
-message CMsgClientServersAvailable {
- repeated CMsgClientServersAvailable_Server_Types_Available server_types_available = 1;
- optional uint32 server_type_for_auth_services = 2;
+message CMsgClientMMSJoinLobbyResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 chat_room_enter_response = 3;
+ optional int32 max_members = 4;
+ optional int32 lobby_type = 5;
+ optional int32 lobby_flags = 6;
+ optional fixed64 steam_id_owner = 7;
+ optional bytes metadata_kv = 8;
+ repeated CMsgClientMMSJoinLobbyResponse_Member members = 9;
+ repeated MMSKeyValuePair metadata = 10;
}
// Used by: common.proto
-message CMsgClientServersAvailable_Server_Types_Available {
- optional uint32 server = 1;
- optional bool changed = 2;
+message CMsgClientMMSJoinLobbyResponse_Member {
+ optional fixed64 steam_id = 1;
+ optional string persona_name = 2;
+ optional bytes metadata_kv = 3;
+ repeated MMSKeyValuePair metadata = 4;
}
-message CMsgClientServerTimestampRequest {
- optional uint64 client_request_timestamp = 1;
+message CMsgClientMMSLeaveLobby {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
}
-message CMsgClientServerTimestampResponse {
- optional uint64 client_request_timestamp = 1;
- optional uint64 server_timestamp_ms = 2;
+message CMsgClientMMSLeaveLobbyResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 eresult = 3 [default = 2];
}
-message CMsgClientSettings {
- optional bool no_save_personal_info = 1;
- optional bool in_client_beta = 3;
- optional bool is_steam_sideloaded = 4;
- optional string preferred_monitor = 5;
- optional bool steam_cef_gpu_blocklist_disabled = 6;
- optional bool bigpicture_windowed = 7;
- optional string display_name = 8;
- optional bool is_external_display = 9;
- optional float steam_os_underscan_level = 10;
- optional bool steam_os_underscan_enabled = 11;
- optional float min_scale_factor = 12;
- optional float max_scale_factor = 13;
- optional float auto_scale_factor = 14;
- optional bool small_mode = 16;
- optional bool skip_steamvr_install_dialog = 19;
- optional bool always_show_user_chooser = 20;
- optional bool os_version_unsupported = 21;
- optional bool show_family_sharing_notifications = 3000;
- optional bool show_copy_count_in_library = 3001;
- optional int32 overlay_fps_counter_corner = 4000;
- optional bool overlay_fps_counter_high_contrast = 4001;
- optional CMsgHotkey overlay_key = 4002;
- optional CMsgHotkey screenshot_key = 4003;
- optional bool enable_overlay = 4004;
- optional bool enable_screenshot_notification = 4006;
- optional bool enable_screenshot_sound = 4007;
- optional bool save_uncompressed_screenshots = 4008;
- optional string screenshots_path = 4009;
- optional int32 default_ping_rate = 4010;
- optional int32 server_ping_rate = 4011;
- optional int32 steam_networking_share_ip = 4012;
- optional string web_browser_home = 4013;
- optional string voice_mic_device_name = 4014;
- optional float voice_mic_input_gain = 4015;
- optional float voice_speaker_output_gain = 4016;
- optional int32 voice_push_to_talk_setting = 4017;
- optional CMsgHotkey voice_push_to_talk_key = 4018;
- optional bool overlay_toolbar_list_view = 4019;
- optional bool always_use_gamepadui_overlay = 4020;
- optional string overlay_tabs = 4021;
- optional bool overlay_scale_interface = 4022;
- optional bool overlay_restore_browser_tabs = 4023;
- optional bool enable_avif_screenshots = 4024;
- optional int32 overlay_fps_counter_detail_level = 4025;
- optional float overlay_fps_counter_saturation_factor = 4026;
- optional float overlay_fps_counter_bgopacity = 4027;
- optional float overlay_fps_counter_scale_factor = 4028;
- optional CMsgHotkey overlay_fps_counter_key = 4029;
- optional bool overlay_fps_counter_fps_graph = 4030;
- optional bool overlay_fps_counter_cpu_graph = 4031;
- optional bool overlay_fps_counter_allow_km_driver = 4032;
- optional bool achievement_notification_toast = 4033;
- optional bool achievement_notification_sound = 4034;
- optional bool controllerconnect_notification_toast = 4035;
- optional bool controllerconnect_notification_sound = 4036;
- optional bool controller_low_battery_notification_toast = 4037;
- optional bool controller_low_battery_notification_sound = 4038;
- optional bool smooth_scroll_webviews = 5000;
- optional bool enable_gpu_accelerated_webviews = 5001;
- optional bool enable_hardware_video_decoding = 5003;
- optional bool run_at_startup = 5004;
- optional bool enable_dpi_scaling = 5005;
- optional bool enable_marketing_messages = 5006;
- optional bool start_in_big_picture_mode = 5007;
- optional uint32 jumplist_flags = 5008;
- optional bool enable_ui_sounds = 5009;
- optional bool enable_gamescope_composer = 5010;
- optional bool enable_gamescope_composer_vr = 5011;
- optional bool show_switch_to_desktop_at_login = 5012;
- optional bool enable_steamrt64_client = 5013;
- optional bool disable_all_toasts = 6000;
- optional bool disable_toasts_in_game = 6001;
- optional bool play_sound_on_toast = 6002;
- optional int32 library_display_size = 7000;
- optional bool library_whats_new_show_only_product_updates = 7001;
- optional bool show_store_content_on_home = 7002;
- optional string start_page = 7003;
- optional bool library_low_bandwidth_mode = 7004;
- optional bool library_low_perf_mode = 7005;
- optional bool library_disable_community_content = 7006;
- optional bool library_display_icon_in_game_list = 7007;
- optional bool ready_to_play_includes_streaming = 7008;
- optional bool show_steam_deck_info = 7009;
- optional bool enable_shader_precache = 8000;
- optional bool enable_shader_background_processing = 8001;
- optional uint64 shader_precached_size = 8002;
- optional bool needs_steam_service_repair = 8003;
- optional int32 download_peer_content = 8004;
- optional bool download_rate_bits_per_s = 8005;
- optional bool restrict_auto_updates = 8006;
- optional int32 restrict_auto_updates_start = 8007;
- optional int32 restrict_auto_updates_end = 8008;
- optional int32 download_region = 8009;
- optional bool download_while_app_running = 8010;
- optional bool download_throttle_while_streaming = 8011;
- optional int32 download_throttle_rate = 8012;
- optional int32 default_app_update_behavior = 8013;
- optional bool cloud_enabled = 10000;
- optional bool show_screenshot_manager = 10001;
- optional int32 music_volume = 11000;
- optional bool music_pause_on_app_start = 11001;
- optional bool music_pause_on_voice_chat = 11002;
- optional bool music_download_high_quality = 11003;
- optional int32 broadcast_permissions = 12000 [(webui.description) = "enum"];
- optional int32 broadcast_output_width = 12001;
- optional int32 broadcast_output_height = 12002;
- optional int32 broadcast_bitrate = 12003;
- optional int32 broadcast_encoding_option = 12004 [(webui.description) = "enum"];
- optional bool broadcast_record_all_video = 12005;
- optional bool broadcast_record_all_audio = 12006;
- optional bool broadcast_record_microphone = 12007;
- optional bool broadcast_show_upload_stats = 12008;
- optional bool broadcast_show_live_reminder = 12009;
- optional int32 broadcast_chat_corner = 12010;
- optional bool gamestream_hardware_video_encode = 13000;
- optional bool gamestream_enable_video_h265 = 13001;
- optional bool steam_input_configurator_error_msg_enable = 14001;
- optional bool controller_guide_button_focus_steam = 14002;
- optional int32 controller_ps_support = 14003;
- optional bool controller_xbox_support = 14004;
- optional bool controller_xbox_driver = 14005;
- optional bool controller_switch_support = 14006;
- optional bool controller_generic_support = 14007;
- optional int32 controller_power_off_timeout = 14008;
- optional bool turn_off_controller_on_exit = 14009;
- optional bool controller_combine_nintendo_joycons = 14010;
- optional uint64 startup_movie_id = 16000;
- optional string startup_movie_local_path = 16001;
- optional bool startup_movie_shuffle = 16002;
- optional bool startup_movie_used_for_resume = 16003;
- optional bool game_notes_enable_spellcheck = 17001;
- optional int32 screenshot_items_per_row = 18000;
- optional string gamerecording_background_path = 18201;
- optional string gamerecording_background_max_keep = 18202;
- optional int32 gamerecording_background_time_resolution = 18203;
- optional CMsgHotkey gamerecording_background_mk = 18207;
- optional CMsgHotkey gamerecording_background_tg = 18208;
- optional bool gamerecording_background_a_m = 18209;
- optional string gamerecording_video_bitrate = 18210;
- optional int32 gamerecording_background_mode = 18212 [(webui.description) = "enum"];
- optional int32 gamerecording_background_audio = 18213 [(webui.description) = "enum"];
- optional int32 gamerecording_max_fps = 18214;
- optional CMsgHotkey gamerecording_hotkey_ic = 18215;
- optional float gamerecording_ic_seconds = 18216;
- optional int32 gamerecording_export_limit_type = 18217 [(webui.description) = "enum"];
- optional int32 gamerecording_export_limit_size_mb = 18218;
- optional int32 gamerecording_export_limit_bitrate = 18219;
- optional int32 gamerecording_export_limit_width = 18220;
- optional int32 gamerecording_export_limit_height = 18221;
- optional int32 gamerecording_export_limit_frame_rate = 18222;
- optional string gamerecording_export_directory = 18223;
- optional int32 gamerecording_export_codec = 18224 [(webui.description) = "enum"];
- optional int32 gamerecording_video_maxheight = 18225;
- optional bool gamerecording_force_mic_mono = 18226;
- optional bool gamerecording_automatic_gain_control = 18227;
- optional bool show_timestamps_in_console = 20000;
- optional int32 override_browser_composer_mode = 20002;
- optional bool cef_remote_debugging_enabled = 20003;
- optional bool force_deck_perf_tab = 20004;
- optional bool force_fake_mandatory_update = 20005;
- optional bool hdr_compat_testing = 20006;
- optional bool developer_mode_enabled = 20007;
- optional bool show_advanced_update_channels = 20008;
- optional bool browserview_underlays_allowed = 20009;
- optional int32 gamescope_hdr_visualization = 21001 [(webui.description) = "enum"];
- optional int32 gamescope_app_target_framerate = 21002;
- optional bool gamescope_enable_app_target_framerate = 21003;
- optional bool gamescope_disable_framelimit = 21004;
- optional int32 gamescope_display_refresh_rate = 21005;
- optional bool gamescope_use_game_refresh_rate_in_steam = 21006;
- optional bool gamescope_disable_mura_correction = 21007;
- optional bool gamescope_include_steamui_in_screenshots = 21008;
- optional bool gamescope_allow_tearing = 21009;
- optional bool gamescope_composite_debug = 21010;
- optional bool gamescope_force_composite = 21011;
- optional string gamescope_game_resolution_global = 21012;
- optional CMsgHotkey gamescope_guide_hotkey = 21013;
- optional CMsgHotkey gamescope_qam_hotkey = 21014;
- optional bool gamescope_hdr_enabled = 21015;
- optional bool gamescope_native_external_res_in_steam = 21016;
- optional int32 steamos_status_led_brightness = 22000;
- optional bool steamos_tdp_limit_enabled = 22001;
- optional int32 steamos_tdp_limit = 22002;
- optional bool steamos_cec_enabled = 22003;
- optional bool steamos_cec_wake_on_resume = 22004;
- optional bool steamos_wifi_debug = 22005;
- optional bool steamos_wifi_force_wpa_supplicant = 22006;
- optional int32 steamos_magnifier_scale = 22007;
- optional bool steamos_manual_gpu_clock_enabled = 22008;
- optional int32 steamos_manual_gpu_clock_hz = 22009;
- optional string steamos_platform_performance_profile = 22010;
- optional bool steamos_charge_limit_enabled = 22011;
- optional int32 steamos_charge_limit = 22012;
- optional bool steamos_charge_limit_devmode = 22013;
- optional bool steamos_system_tracing_enabled = 22014;
- optional bool steamos_vrs_enabled = 22015;
- optional bool steamos_separate_led_colors = 22016;
- optional bool steamos_wifi_reload_wifi_driver_on_sleep = 22017;
- optional bool steamos_cec_control = 22019;
- optional bool steamos_cec_suspend_tv = 22020;
- optional bool steamos_cec_suspend_device = 22021;
- optional bool steamos_cec_wake_tv = 22022;
- optional bool steamos_cec_wake_device = 22023;
- optional bool setting_validation_bool = 23001;
- optional int32 setting_validation_enum = 23002 [(webui.description) = "enum"];
- optional int32 setting_validation_int32 = 23003;
- optional uint32 setting_validation_uint32 = 23004;
- optional uint64 setting_validation_uint64 = 23005;
- optional float setting_validation_float = 23006;
- optional string setting_validation_string = 23007;
- optional CMsgHotkey setting_validation_hotkey = 23008;
- optional bool system_bluetooth_enabled = 24000;
- optional bool hardware_updater_enabled = 24001;
- optional int32 system_idle_suspend_battery_sec = 24003;
- optional int32 system_idle_suspend_ac_sec = 24004;
- optional bool system_enable_low_power_downloads = 24005;
- optional bool system_allow_battery_low_power_downloads = 24006;
- optional int32 system_idle_screensaver_battery_sec = 24008;
- optional int32 system_idle_screensaver_ac_sec = 24009;
- optional bool vr_show_perf_graph_in_hmd = 25000;
- optional bool vr_audio_spatialize = 25001;
- optional bool vr_audio_spatialize_surround = 25002;
- optional bool accessibility_debug_visualizer = 26000;
- optional bool accessibility_screen_reader_enabled = 26001;
- optional float accessibility_screen_reader_rate = 26002;
- optional float accessibility_screen_reader_pitch = 26003;
- optional float accessibility_screen_reader_volume = 26004;
- optional bool accessibility_high_contrast_mode = 26005;
- optional bool accessibility_reduce_motion = 26006;
- optional uint32 accessibility_minimum_font_size = 26008;
- optional string accessibility_color_filter_name = 26009;
- optional float accessibility_desktop_ui_scale = 26010;
- optional string accessibility_screen_reader_locale = 26011;
- optional bool accessibility_mono_audio = 26012;
- optional bool remote_play_wifi_ap_enabled = 27000;
- optional int32 remote_play_wifi_ap_channel_5ghz = 27001;
- optional int32 remote_play_wifi_ap_channel_6ghz = 27002;
- optional int32 remote_play_wifi_ap_channel_width = 27003;
- optional bool remote_play_wifi_ap_hotspot_mode = 27004;
- optional string remote_play_wifi_ap_hotspot_ssid = 27005;
- optional string remote_play_wifi_ap_hotspot_password = 27006;
- optional string remote_play_wifi_ap_hotspot_routing = 27007;
- optional bool remote_play_wifi_ap_show_advanced = 27008;
- optional string remote_play_wifi_ap_paired_ssid = 27009;
- optional bool skip_steamframe_pairing_dialog = 27010;
- optional bool oobe_completed = 28001;
- optional bool oobe_test_mode_enabled = 28002;
- optional bool force_oobe = 28003;
- optional bool oobe_stage_2_completed = 28004;
- optional bool oobe_stage_2_test_mode_enabled = 28005;
+message CMsgClientMMSLobbyChatMsg {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_sender = 3;
+ optional bytes lobby_message = 4;
+}
+
+message CMsgClientMMSLobbyData {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 num_members = 3;
+ optional int32 max_members = 4;
+ optional int32 lobby_type = 5;
+ optional int32 lobby_flags = 6;
+ optional fixed64 steam_id_owner = 7;
+ optional bytes metadata_kv = 8;
+ repeated CMsgClientMMSLobbyData_Member members = 9;
+ optional uint32 lobby_cellid = 10;
+ optional bool owner_should_accept_changes = 11;
+ repeated MMSKeyValuePair metadata = 12;
+}
+
+// Used by: common.proto
+message CMsgClientMMSLobbyData_Member {
+ optional fixed64 steam_id = 1;
+ optional string persona_name = 2;
+ optional bytes metadata_kv = 3;
+ optional string ping_data = 4;
+ repeated MMSKeyValuePair metadata = 5;
+}
+
+message CMsgClientMMSLobbyGameServerSet {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional uint32 deprecated_game_server_ip = 3;
+ optional uint32 game_server_port = 4;
+ optional fixed64 game_server_steam_id = 5;
+ optional CMsgIPAddress game_server_ip = 6;
+}
+
+message CMsgClientMMSSendLobbyChatMsg {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_target = 3;
+ optional bytes lobby_message = 4;
+}
+
+message CMsgClientMMSSetLobbyData {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_member = 3;
+ optional int32 max_members = 4;
+ optional int32 lobby_type = 5;
+ optional int32 lobby_flags = 6;
+ optional bytes metadata_kv = 7;
+ optional string network_ping_location = 8;
+ repeated MMSKeyValuePair metadata = 9;
+}
+
+message CMsgClientMMSSetLobbyDataResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 eresult = 3 [default = 2];
+}
+
+message CMsgClientMMSSetLobbyGameServer {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional uint32 deprecated_game_server_ip = 3;
+ optional uint32 game_server_port = 4;
+ optional fixed64 game_server_steam_id = 5;
+ optional CMsgIPAddress game_server_ip = 6;
+ optional string network_ping_location = 7;
+}
+
+message CMsgClientMMSSetLobbyLinked {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_lobby2 = 3;
+}
+
+message CMsgClientMMSSetLobbyOwner {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_new_owner = 3;
+}
+
+message CMsgClientMMSSetLobbyOwnerResponse {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional int32 eresult = 3 [default = 2];
+}
+
+message CMsgClientMMSSetRatelimitPolicyOnClient {
+ optional uint32 app_id = 1;
+ optional bool enable_rate_limits = 2;
+ optional int32 seconds_per_message = 3;
+ optional int32 milliseconds_per_data_update = 4;
+}
+
+message CMsgClientMMSUserJoinedLobby {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_user = 3;
+ optional string persona_name = 4;
+}
+
+message CMsgClientMMSUserLeftLobby {
+ optional uint32 app_id = 1;
+ optional fixed64 steam_id_lobby = 2;
+ optional fixed64 steam_id_user = 3;
+ optional string persona_name = 4;
+}
+
+message CMsgClientNetworkingCertReply {
+ optional bytes cert = 4;
+ optional fixed64 ca_key_id = 5;
+ optional bytes ca_signature = 6;
+}
+
+message CMsgClientNetworkingCertRequest {
+ optional bytes key_data = 2;
+ optional uint32 app_id = 3;
+}
+
+message CMsgClientNetworkingMobileCertReply {
+ optional string encoded_cert = 1;
+}
+
+message CMsgClientNetworkingMobileCertRequest {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientNewLoginKey {
+ optional uint32 unique_id = 1;
+ optional string login_key = 2;
+}
+
+message CMsgClientNewLoginKeyAccepted {
+ optional uint32 unique_id = 1;
+}
+
+message CMsgClientOfflineMessageNotification {
+ optional uint32 offline_messages = 1;
+ repeated uint32 friends_with_offline_messages = 2;
+}
+
+message CMsgClientOGSReportBug {
+ optional uint64 sessionid = 1;
+ optional string bugtext = 2;
+ optional bytes screenshot = 3;
+}
+
+message CMsgClientOGSReportString {
+ optional bool accumulated = 1;
+ optional uint64 sessionid = 2;
+ optional int32 severity = 3;
+ optional string formatter = 4;
+ optional bytes varargs = 5;
+}
+
+message CMsgClientP2PConnectionFailInfo {
+ optional fixed64 steam_id_dest = 1;
+ optional fixed64 steam_id_src = 2;
+ optional uint32 app_id = 3;
+ optional uint32 ep2p_session_error = 4;
+ optional fixed64 connection_id_dest = 5;
+ optional uint32 close_reason = 7;
+ optional string close_message = 8;
+}
+
+message CMsgClientP2PConnectionInfo {
+ optional fixed64 steam_id_dest = 1;
+ optional fixed64 steam_id_src = 2;
+ optional uint32 app_id = 3;
+ optional bytes candidate = 4;
+ optional fixed64 legacy_connection_id_src = 5;
+ optional bytes rendezvous = 6;
+ optional uint32 app_id_secondary = 7;
+}
+
+message CMsgClientPendingGameLaunch {
+ optional uint32 app_id = 1;
+}
+
+message CMsgClientPendingGameLaunchResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional string envkey = 3;
+}
+
+message CMsgClientPersonaState {
+ optional uint32 status_flags = 1;
+ repeated CMsgClientPersonaState_Friend friends = 2;
+}
+
+// Used by: ChatRoom, ChatRoomClient, common.proto
+message CMsgClientPersonaState_Friend {
+ optional fixed64 friendid = 1;
+ optional uint32 persona_state = 2;
+ optional uint32 game_played_app_id = 3;
+ optional uint32 game_server_ip = 4;
+ optional uint32 game_server_port = 5;
+ optional uint32 persona_state_flags = 6;
+ optional uint32 online_session_instances = 7;
+ optional bool persona_set_by_user = 10;
+ optional string player_name = 15;
+ optional uint32 query_port = 20;
+ optional fixed64 steamid_source = 25;
+ optional bytes avatar_hash = 31;
+ optional uint32 last_logoff = 45;
+ optional uint32 last_logon = 46;
+ optional uint32 last_seen_online = 47;
+ optional uint32 clan_rank = 50;
+ optional string game_name = 55;
+ optional fixed64 gameid = 56;
+ optional bytes game_data_blob = 60;
+ optional CMsgClientPersonaState_Friend_ClanData clan_data = 64;
+ optional string clan_tag = 65;
+ repeated CMsgClientPersonaState_Friend_KV rich_presence = 71;
+ optional fixed64 broadcast_id = 72;
+ optional fixed64 game_lobby_id = 73;
+ optional uint32 watching_broadcast_accountid = 74;
+ optional uint32 watching_broadcast_appid = 75;
+ optional uint32 watching_broadcast_viewers = 76;
+ optional string watching_broadcast_title = 77;
+ optional bool is_community_banned = 78;
+ optional bool player_name_pending_review = 79;
+ optional bool avatar_pending_review = 80;
+ optional bool on_steam_deck = 81;
+ repeated CMsgClientPersonaState_Friend_OtherGameData other_game_data = 82;
+ optional uint32 gaming_device_type = 83;
+}
+
+// Used by: ChatRoom, ChatRoomClient, common.proto
+message CMsgClientPersonaState_Friend_ClanData {
+ optional uint32 ogg_app_id = 1;
+ optional uint64 chat_group_id = 2;
+}
+
+// Used by: ChatRoom, ChatRoomClient, common.proto
+message CMsgClientPersonaState_Friend_KV {
+ optional string key = 1;
+ optional string value = 2;
+}
+
+// Used by: ChatRoom, ChatRoomClient, common.proto
+message CMsgClientPersonaState_Friend_OtherGameData {
+ optional uint64 gameid = 1;
+ repeated CMsgClientPersonaState_Friend_KV rich_presence = 2;
+}
+
+message CMsgClientPlayerNicknameList {
+ optional bool removal = 1;
+ optional bool incremental = 2;
+ repeated CMsgClientPlayerNicknameList_PlayerNickname nicknames = 3;
+}
+
+// Used by: common.proto
+message CMsgClientPlayerNicknameList_PlayerNickname {
+ optional fixed64 steamid = 1;
+ optional string nickname = 3;
+}
+
+message CMsgClientPlayingSessionState {
+ optional bool playing_blocked = 2;
+ optional uint32 playing_app = 3;
+}
+
+message CMsgClientPurchaseResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 purchase_result_details = 2;
+ optional bytes purchase_receipt_info = 3;
+}
+
+message CMsgClientPurchaseWithMachineID {
+ optional uint32 package_id = 1;
+ optional bytes machine_info = 2;
+}
+
+message CMsgClientRedeemGuestPass {
+ optional fixed64 guest_pass_id = 1;
+}
+
+message CMsgClientRedeemGuestPassResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 package_id = 2;
+ optional uint32 must_own_appid = 3;
+}
+
+message CMsgClientRegisterAuthTicketWithCM {
+ optional uint32 protocol_version = 1;
+ optional bytes ticket = 3;
+ optional uint64 client_instance_id = 4;
+}
+
+message CMsgClientRegisterKey {
+ optional string key = 1;
+}
+
+message CMsgClientRegisterOEMMachine {
+ optional bytes oem_register_file = 1;
+}
+
+message CMsgClientRegisterOEMMachineResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientRemoveFriend {
+ optional fixed64 friendid = 1;
+}
+
+message CMsgClientRemoveFriendFromGroup {
+ optional int32 groupid = 1;
+ optional fixed64 steamiduser = 2;
+}
+
+message CMsgClientRemoveFriendFromGroupResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientReportOverlayDetourFailure {
+ repeated string failure_strings = 1;
+}
+
+message CMsgClientRequestCommentNotifications {
+}
+
+message CMsgClientRequestedClientStats {
+ repeated CMsgClientRequestedClientStats_StatsToSend stats_to_send = 1;
+}
+
+// Used by: common.proto
+message CMsgClientRequestedClientStats_StatsToSend {
+ optional uint32 client_stat = 1;
+ optional uint32 stat_aggregate_method = 2;
+}
+
+message CMsgClientRequestEncryptedAppTicket {
+ optional uint32 app_id = 1;
+ optional bytes userdata = 2;
+}
+
+message CMsgClientRequestEncryptedAppTicketResponse {
+ optional uint32 app_id = 1;
+ optional int32 eresult = 2 [default = 2];
+ optional EncryptedAppTicket encrypted_app_ticket = 3;
+}
+
+message CMsgClientRequestForgottenPasswordEmail {
+ optional string account_name = 1;
+ optional string password_tried = 2;
+}
+
+message CMsgClientRequestForgottenPasswordEmailResponse {
+ optional uint32 eResult = 1;
+ optional bool use_secret_question = 2;
+}
+
+message CMsgClientRequestFreeLicense {
+ repeated uint32 appids = 2;
+}
+
+message CMsgClientRequestFreeLicenseResponse {
+ optional uint32 eresult = 1 [default = 2];
+ repeated uint32 granted_packageids = 2;
+ repeated uint32 granted_appids = 3;
+}
+
+message CMsgClientRequestFriendData {
+ optional uint32 persona_state_requested = 1;
+ repeated fixed64 friends = 2;
+}
+
+message CMsgClientRequestItemAnnouncements {
+}
+
+message CMsgClientRequestOfflineMessageCount {
+}
+
+message CMsgClientRequestWebAPIAuthenticateUserNonce {
+ optional int32 token_type = 1 [default = -1];
+}
+
+message CMsgClientRequestWebAPIAuthenticateUserNonceResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 token_type = 3 [default = -1];
+ optional string webapi_authenticate_user_nonce = 11;
+}
+
+message CMsgClientRichPresenceInfo {
+ repeated CMsgClientRichPresenceInfo_RichPresence rich_presence = 1;
+}
+
+// Used by: common.proto
+message CMsgClientRichPresenceInfo_KV {
+ optional string key = 1;
+ optional string value = 2;
+}
+
+// Used by: common.proto
+message CMsgClientRichPresenceInfo_RichPresence {
+ optional fixed64 steamid_user = 1;
+ repeated CMsgClientRichPresenceInfo_KV rich_presense = 3;
+}
+
+message CMsgClientRichPresenceRequest {
+ repeated fixed64 steamid_request = 1;
+}
+
+message CMsgClientRichPresenceUpload {
+ optional bytes rich_presence_kv = 1;
+ repeated fixed64 steamid_broadcast = 2;
+}
+
+// Used by: common.proto
+message CMsgClientSecret {
+ optional uint32 version = 1;
+ optional uint32 appid = 2;
+ optional uint32 deviceid = 3;
+ optional fixed64 nonce = 4;
+ optional bytes hmac = 5;
+}
+
+message CMsgClientSentLogs {
+}
+
+message CMsgClientServersAvailable {
+ repeated CMsgClientServersAvailable_Server_Types_Available server_types_available = 1;
+ optional uint32 server_type_for_auth_services = 2;
+}
+
+// Used by: common.proto
+message CMsgClientServersAvailable_Server_Types_Available {
+ optional uint32 server = 1;
+ optional bool changed = 2;
+}
+
+message CMsgClientServerTimestampRequest {
+ optional uint64 client_request_timestamp = 1;
+}
+
+message CMsgClientServerTimestampResponse {
+ optional uint64 client_request_timestamp = 1;
+ optional uint64 server_timestamp_ms = 2;
+}
+
+message CMsgClientServiceCall {
+ optional bytes sysid_routing = 1;
+ optional uint32 call_handle = 2;
+ optional uint32 module_crc = 3;
+ optional bytes module_hash = 4;
+ optional uint32 function_id = 5;
+ optional uint32 cub_output_max = 6;
+ optional uint32 flags = 7;
+ optional bytes callparameter = 8;
+ optional bool ping_only = 9;
+ optional uint32 max_outstanding_calls = 10;
+ optional uint32 app_id = 11;
+}
+
+message CMsgClientServiceCallResponse {
+ optional bytes sysid_routing = 1;
+ optional uint32 call_handle = 2;
+ optional uint32 module_crc = 3;
+ optional bytes module_hash = 4;
+ optional uint32 ecallresult = 5;
+ optional bytes result_content = 6;
+ optional bytes os_version_info = 7;
+ optional bytes system_info = 8;
+ optional fixed64 load_address = 9;
+ optional bytes exception_record = 10;
+ optional bytes portable_os_version_info = 11;
+ optional bytes portable_system_info = 12;
+ optional bool was_converted = 13;
+ optional uint32 internal_result = 14;
+ optional uint32 current_count = 15;
+ optional uint32 last_call_handle = 16;
+ optional uint32 last_call_module_crc = 17;
+ optional bytes last_call_sysid_routing = 18;
+ optional uint32 last_ecallresult = 19;
+ optional uint32 last_callissue_delta = 20;
+ optional uint32 last_callcomplete_delta = 21;
+}
+
+message CMsgClientServiceMethodLegacy {
+ optional string method_name = 1;
+ optional bytes serialized_method = 2;
+ optional bool is_notification = 3;
+}
+
+message CMsgClientServiceMethodLegacyResponse {
+ optional string method_name = 1;
+ optional bytes serialized_method_response = 2;
+}
+
+message CMsgClientServiceModule {
+ optional uint32 module_crc = 1;
+ optional bytes module_hash = 2;
+ optional bytes module_content = 3;
+}
+
+message CMsgClientSessionToken {
+ optional uint64 token = 1;
+}
+
+message CMsgClientSetPlayerNickname {
+ optional fixed64 steamid = 1;
+ optional string nickname = 2;
+}
+
+message CMsgClientSetPlayerNicknameResponse {
+ optional uint32 eresult = 1;
+}
+
+message CMsgClientSettings {
+ optional bool no_save_personal_info = 1;
+ optional string preferred_monitor = 5;
+ optional bool steam_cef_gpu_blocklist_disabled = 6;
+ optional bool bigpicture_windowed = 7;
+ optional string display_name = 8;
+ optional bool is_external_display = 9;
+ optional float steam_os_underscan_level = 10;
+ optional bool steam_os_underscan_enabled = 11;
+ optional float min_scale_factor = 12;
+ optional float max_scale_factor = 13;
+ optional float auto_scale_factor = 14;
+ optional bool small_mode = 16;
+ optional bool skip_steamvr_install_dialog = 19;
+ optional bool always_show_user_chooser = 20;
+ optional bool os_version_unsupported = 21;
+ optional bool show_family_sharing_notifications = 3000;
+ optional bool show_copy_count_in_library = 3001;
+ optional int32 overlay_fps_counter_corner = 4000;
+ optional bool overlay_fps_counter_high_contrast = 4001;
+ optional CMsgHotkey overlay_key = 4002;
+ optional CMsgHotkey screenshot_key = 4003;
+ optional bool enable_overlay = 4004;
+ optional bool enable_screenshot_notification = 4006;
+ optional bool enable_screenshot_sound = 4007;
+ optional bool save_uncompressed_screenshots = 4008;
+ optional string screenshots_path = 4009;
+ optional int32 default_ping_rate = 4010;
+ optional int32 server_ping_rate = 4011;
+ optional int32 steam_networking_share_ip = 4012;
+ optional string web_browser_home = 4013;
+ optional string voice_mic_device_name = 4014;
+ optional float voice_mic_input_gain = 4015;
+ optional float voice_speaker_output_gain = 4016;
+ optional int32 voice_push_to_talk_setting = 4017;
+ optional CMsgHotkey voice_push_to_talk_key = 4018;
+ optional bool overlay_toolbar_list_view = 4019;
+ optional bool always_use_gamepadui_overlay = 4020;
+ optional string overlay_tabs = 4021;
+ optional bool overlay_scale_interface = 4022;
+ optional bool overlay_restore_browser_tabs = 4023;
+ optional bool enable_avif_screenshots = 4024;
+ optional int32 overlay_fps_counter_detail_level = 4025;
+ optional float overlay_fps_counter_saturation_factor = 4026;
+ optional float overlay_fps_counter_bgopacity = 4027;
+ optional float overlay_fps_counter_scale_factor = 4028;
+ optional CMsgHotkey overlay_fps_counter_key = 4029;
+ optional bool overlay_fps_counter_fps_graph = 4030;
+ optional bool overlay_fps_counter_cpu_graph = 4031;
+ optional bool overlay_fps_counter_allow_km_driver = 4032;
+ optional bool achievement_notification_toast = 4033;
+ optional bool achievement_notification_sound = 4034;
+ optional bool controllerconnect_notification_toast = 4035;
+ optional bool controllerconnect_notification_sound = 4036;
+ optional bool controller_low_battery_notification_toast = 4037;
+ optional bool controller_low_battery_notification_sound = 4038;
+ optional bool logged_in_as_user_notification_toast = 4039;
+ optional bool logged_in_as_user_notification_sound = 4040;
+ optional bool smooth_scroll_webviews = 5000;
+ optional bool enable_gpu_accelerated_webviews = 5001;
+ optional bool enable_hardware_video_decoding = 5003;
+ optional bool run_at_startup = 5004;
+ optional bool enable_dpi_scaling = 5005;
+ optional bool enable_marketing_messages = 5006;
+ optional bool start_in_big_picture_mode = 5007;
+ optional uint32 jumplist_flags = 5008;
+ optional bool enable_ui_sounds = 5009;
+ optional bool enable_gamescope_composer = 5010;
+ optional bool enable_gamescope_composer_vr = 5011;
+ optional bool show_switch_to_desktop_at_login = 5012;
+ optional bool disable_all_toasts = 6000;
+ optional bool disable_toasts_in_game = 6001;
+ optional bool play_sound_on_toast = 6002;
+ optional int32 library_display_size = 7000;
+ optional bool library_whats_new_show_only_product_updates = 7001;
+ optional bool show_store_content_on_home = 7002;
+ optional string start_page = 7003;
+ optional bool library_low_bandwidth_mode = 7004;
+ optional bool library_low_perf_mode = 7005;
+ optional bool library_disable_community_content = 7006;
+ optional bool library_display_icon_in_game_list = 7007;
+ optional bool ready_to_play_includes_streaming = 7008;
+ optional bool show_steam_deck_info = 7009;
+ optional bool library_home_big_art = 7010;
+ optional bool enable_shader_precache = 8000;
+ optional bool enable_shader_background_processing = 8001;
+ optional uint64 shader_precached_size = 8002;
+ optional bool needs_steam_service_repair = 8003;
+ optional int32 download_peer_content = 8004;
+ optional bool download_rate_bits_per_s = 8005;
+ optional bool restrict_auto_updates = 8006;
+ optional int32 restrict_auto_updates_start = 8007;
+ optional int32 restrict_auto_updates_end = 8008;
+ optional int32 download_region = 8009;
+ optional bool download_while_app_running = 8010;
+ optional bool download_throttle_while_streaming = 8011;
+ optional int32 download_throttle_rate = 8012;
+ optional int32 default_app_update_behavior = 8013;
+ optional bool cloud_enabled = 10000;
+ optional bool show_screenshot_manager = 10001;
+ optional int32 music_volume = 11000;
+ optional bool music_pause_on_app_start = 11001;
+ optional bool music_pause_on_voice_chat = 11002;
+ optional bool music_download_high_quality = 11003;
+ optional int32 broadcast_permissions = 12000 [(webui.description) = "enum"];
+ optional int32 broadcast_output_width = 12001;
+ optional int32 broadcast_output_height = 12002;
+ optional int32 broadcast_bitrate = 12003;
+ optional int32 broadcast_encoding_option = 12004 [(webui.description) = "enum"];
+ optional bool broadcast_record_all_video = 12005;
+ optional bool broadcast_record_all_audio = 12006;
+ optional bool broadcast_record_microphone = 12007;
+ optional bool broadcast_show_upload_stats = 12008;
+ optional bool broadcast_show_live_reminder = 12009;
+ optional int32 broadcast_chat_corner = 12010;
+ optional bool gamestream_hardware_video_encode = 13000;
+ optional bool gamestream_enable_video_h265 = 13001;
+ optional bool steam_input_configurator_error_msg_enable = 14001;
+ optional bool controller_guide_button_focus_steam = 14002;
+ optional int32 controller_ps_support = 14003;
+ optional bool controller_xbox_support = 14004;
+ optional bool controller_xbox_driver = 14005;
+ optional bool controller_switch_support = 14006;
+ optional bool controller_generic_support = 14007;
+ optional int32 controller_power_off_timeout = 14008;
+ optional bool turn_off_controller_on_exit = 14009;
+ optional bool controller_combine_nintendo_joycons = 14010;
+ optional uint64 startup_movie_id = 16000;
+ optional string startup_movie_local_path = 16001;
+ optional bool startup_movie_shuffle = 16002;
+ optional bool startup_movie_used_for_resume = 16003;
+ optional string screensaver_current_id = 16004;
+ optional string screensaver_settings = 16005;
+ optional bool screensaver_while_ingame = 16006;
+ optional bool game_notes_enable_spellcheck = 17001;
+ optional int32 screenshot_items_per_row = 18000;
+ optional string gamerecording_background_path = 18201;
+ optional string gamerecording_background_max_keep = 18202;
+ optional int32 gamerecording_background_time_resolution = 18203;
+ optional CMsgHotkey gamerecording_background_mk = 18207;
+ optional CMsgHotkey gamerecording_background_tg = 18208;
+ optional bool gamerecording_background_a_m = 18209;
+ optional string gamerecording_video_bitrate = 18210;
+ optional int32 gamerecording_background_mode = 18212 [(webui.description) = "enum"];
+ optional int32 gamerecording_background_audio = 18213 [(webui.description) = "enum"];
+ optional int32 gamerecording_max_fps = 18214;
+ optional CMsgHotkey gamerecording_hotkey_ic = 18215;
+ optional float gamerecording_ic_seconds = 18216;
+ optional int32 gamerecording_export_limit_type = 18217 [(webui.description) = "enum"];
+ optional int32 gamerecording_export_limit_size_mb = 18218;
+ optional int32 gamerecording_export_limit_bitrate = 18219;
+ optional int32 gamerecording_export_limit_width = 18220;
+ optional int32 gamerecording_export_limit_height = 18221;
+ optional int32 gamerecording_export_limit_frame_rate = 18222;
+ optional string gamerecording_export_directory = 18223;
+ optional int32 gamerecording_export_codec = 18224 [(webui.description) = "enum"];
+ optional int32 gamerecording_video_maxheight = 18225;
+ optional bool gamerecording_force_mic_mono = 18226;
+ optional bool gamerecording_automatic_gain_control = 18227;
+ optional bool show_timestamps_in_console = 20000;
+ optional int32 override_browser_composer_mode = 20002;
+ optional bool cef_remote_debugging_enabled = 20003;
+ optional bool force_deck_perf_tab = 20004;
+ optional bool force_fake_mandatory_update = 20005;
+ optional bool hdr_compat_testing = 20006;
+ optional bool developer_mode_enabled = 20007;
+ optional bool show_advanced_update_channels = 20008;
+ optional bool browserview_underlays_allowed = 20009;
+ optional int32 gamescope_hdr_visualization = 21001 [(webui.description) = "enum"];
+ optional int32 gamescope_app_target_framerate = 21002;
+ optional bool gamescope_enable_app_target_framerate = 21003;
+ optional bool gamescope_disable_framelimit = 21004;
+ optional int32 gamescope_display_refresh_rate = 21005;
+ optional bool gamescope_use_game_refresh_rate_in_steam = 21006;
+ optional bool gamescope_disable_mura_correction = 21007;
+ optional bool gamescope_include_steamui_in_screenshots = 21008;
+ optional bool gamescope_allow_tearing = 21009;
+ optional bool gamescope_composite_debug = 21010;
+ optional bool gamescope_force_composite = 21011;
+ optional string gamescope_game_resolution_global = 21012;
+ optional CMsgHotkey gamescope_guide_hotkey = 21013;
+ optional CMsgHotkey gamescope_qam_hotkey = 21014;
+ optional bool gamescope_hdr_enabled = 21015;
+ optional bool gamescope_native_external_res_in_steam = 21016;
+ optional int32 steamos_status_led_brightness = 22000;
+ optional bool steamos_tdp_limit_enabled = 22001;
+ optional int32 steamos_tdp_limit = 22002;
+ optional bool steamos_cec_enabled = 22003;
+ optional bool steamos_cec_wake_on_resume = 22004;
+ optional bool steamos_wifi_debug = 22005;
+ optional bool steamos_wifi_force_wpa_supplicant = 22006;
+ optional int32 steamos_magnifier_scale = 22007;
+ optional bool steamos_manual_gpu_clock_enabled = 22008;
+ optional int32 steamos_manual_gpu_clock_hz = 22009;
+ optional string steamos_platform_performance_profile = 22010;
+ optional bool steamos_charge_limit_enabled = 22011;
+ optional int32 steamos_charge_limit = 22012;
+ optional bool steamos_charge_limit_devmode = 22013;
+ optional bool steamos_system_tracing_enabled = 22014;
+ optional bool steamos_vrs_enabled = 22015;
+ optional bool steamos_separate_led_colors = 22016;
+ optional bool steamos_wifi_reload_wifi_driver_on_sleep = 22017;
+ optional bool steamos_cec_control = 22019;
+ optional bool steamos_cec_suspend_tv = 22020;
+ optional bool steamos_cec_suspend_device = 22021;
+ optional bool steamos_cec_wake_tv = 22022;
+ optional bool steamos_cec_wake_device = 22023;
+ optional bool steamos_ec_logging_enabled = 22024;
+ optional bool setting_validation_bool = 23001;
+ optional int32 setting_validation_enum = 23002 [(webui.description) = "enum"];
+ optional int32 setting_validation_int32 = 23003;
+ optional uint32 setting_validation_uint32 = 23004;
+ optional uint64 setting_validation_uint64 = 23005;
+ optional float setting_validation_float = 23006;
+ optional string setting_validation_string = 23007;
+ optional CMsgHotkey setting_validation_hotkey = 23008;
+ optional bool system_bluetooth_enabled = 24000;
+ optional bool hardware_updater_enabled = 24001;
+ optional int32 system_idle_suspend_battery_sec = 24003;
+ optional int32 system_idle_suspend_ac_sec = 24004;
+ optional bool system_enable_low_power_downloads = 24005;
+ optional bool system_allow_battery_low_power_downloads = 24006;
+ optional int32 system_idle_screensaver_battery_sec = 24008;
+ optional int32 system_idle_screensaver_ac_sec = 24009;
+ optional bool vr_show_perf_graph_in_hmd = 25000;
+ optional bool accessibility_debug_visualizer = 26000;
+ optional bool accessibility_screen_reader_enabled = 26001;
+ optional float accessibility_screen_reader_rate = 26002;
+ optional float accessibility_screen_reader_pitch = 26003;
+ optional float accessibility_screen_reader_volume = 26004;
+ optional bool accessibility_high_contrast_mode = 26005;
+ optional bool accessibility_reduce_motion = 26006;
+ optional uint32 accessibility_minimum_font_size = 26008;
+ optional string accessibility_color_filter_name = 26009;
+ optional float accessibility_desktop_ui_scale = 26010;
+ optional string accessibility_screen_reader_locale = 26011;
+ optional bool accessibility_mono_audio = 26012;
+ optional bool remote_play_wifi_ap_enabled = 27000;
+ optional int32 remote_play_wifi_ap_channel_5ghz = 27001;
+ optional int32 remote_play_wifi_ap_channel_6ghz = 27002;
+ optional int32 remote_play_wifi_ap_channel_width = 27003;
+ optional bool remote_play_wifi_ap_hotspot_mode = 27004;
+ optional string remote_play_wifi_ap_hotspot_ssid = 27005;
+ optional string remote_play_wifi_ap_hotspot_password = 27006;
+ optional string remote_play_wifi_ap_hotspot_routing = 27007;
+ optional bool remote_play_wifi_ap_show_advanced = 27008;
+ optional string remote_play_wifi_ap_paired_ssid = 27009;
+ optional bool skip_steamframe_pairing_dialog = 27010;
+ optional bool skip_steamframe_troubleshooting_dialog = 27011;
+ optional bool skip_steamframe_airplane_dialog = 27012;
+ optional bool oobe_completed = 28001;
+ optional bool oobe_test_mode_enabled = 28002;
+ optional bool force_oobe = 28003;
+ optional bool oobe_stage_2_completed = 28004;
+ optional bool oobe_stage_2_test_mode_enabled = 28005;
optional bool force_stage_2_oobe = 28006;
+ optional bool compat_show_all_tools = 29000;
optional bool controller_enable_chord = 140011;
optional bool controller_poll_rate = 140012;
optional bool controller_siapi_config_author_mode = 140013;
@@ -1485,1059 +2765,3080 @@ message CMsgClientSettings {
optional bool steamos_wifi_power_management_enabled = 220018;
}
-message CMsgCloudPendingRemoteOperations {
- repeated CCloud_PendingRemoteOperation operations = 1;
+message CMsgClientShaderHitCache {
+ repeated CMsgClientShaderHitCacheEntry entries = 1;
+}
+
+// Used by: common.proto
+message CMsgClientShaderHitCacheEntry {
+ optional bytes key_sha = 1;
+ optional bytes code_sha = 2;
+ optional uint64 time_last_reported = 3;
+}
+
+message CMsgClientSharedLibraryLockStatus {
+ repeated CMsgClientSharedLibraryLockStatus_LockedLibrary locked_library = 1;
+ optional uint32 own_library_locked_by = 2;
+}
+
+// Used by: common.proto
+message CMsgClientSharedLibraryLockStatus_LockedLibrary {
+ optional uint32 owner_id = 1;
+ optional uint32 locked_by = 2;
+}
+
+message CMsgClientSharedLibraryStopPlaying {
+ optional int32 seconds_left = 1;
+ repeated CMsgClientSharedLibraryStopPlaying_StopApp stop_apps = 2;
+}
+
+// Used by: common.proto
+message CMsgClientSharedLibraryStopPlaying_StopApp {
+ optional uint32 app_id = 1;
+ optional uint32 owner_id = 2;
+}
+
+message CMsgClientStartPeerContentServer {
+ optional fixed64 steamid = 1;
+ optional fixed64 client_remote_id = 2;
+ optional uint32 app_id = 3;
+ optional uint32 current_build_id = 4;
+}
+
+message CMsgClientStartPeerContentServerResponse {
+ optional uint32 result = 1;
+ optional uint32 server_port = 2;
+ repeated uint32 installed_depots = 3;
+ optional uint64 access_token = 4;
+}
+
+message CMsgClientStat2 {
+ repeated CMsgClientStat2_StatDetail stat_detail = 1;
+}
+
+// Used by: common.proto
+message CMsgClientStat2_StatDetail {
+ optional uint32 client_stat = 1;
+ optional int64 ll_value = 2;
+ optional uint32 time_of_day = 3;
+ optional uint32 cell_id = 4;
+ optional uint32 depot_id = 5;
+ optional uint32 app_id = 6;
+}
+
+message CMsgClientTicketAuthComplete {
+ optional fixed64 steam_id = 1;
+ optional fixed64 game_id = 2;
+ optional uint32 estate = 3;
+ optional uint32 eauth_session_response = 4;
+ optional bytes DEPRECATED_ticket = 5;
+ optional uint32 ticket_crc = 6;
+ optional uint32 ticket_sequence = 7;
+ optional fixed64 owner_steam_id = 8;
+}
+
+message CMsgClientUGSGetGlobalStats {
+ optional uint64 gameid = 1;
+ optional uint32 history_days_requested = 2;
+ optional fixed32 time_last_requested = 3;
+ optional uint32 first_day_cached = 4;
+ optional uint32 days_cached = 5;
+}
+
+message CMsgClientUGSGetGlobalStatsResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional fixed32 timestamp = 2;
+ optional int32 day_current = 3;
+ repeated CMsgClientUGSGetGlobalStatsResponse_Day days = 4;
+}
+
+// Used by: common.proto
+message CMsgClientUGSGetGlobalStatsResponse_Day {
+ optional uint32 day_id = 1;
+ repeated CMsgClientUGSGetGlobalStatsResponse_Day_Stat stats = 2;
+}
+
+// Used by: common.proto
+message CMsgClientUGSGetGlobalStatsResponse_Day_Stat {
+ optional int32 stat_id = 1;
+ optional int64 data = 2;
+}
+
+message CMsgClientUIMode {
+ optional uint32 uimode = 1;
+ optional uint32 chat_mode = 2;
+}
+
+message CMsgClientUpdateUserGameInfo {
+ optional fixed64 steamid_idgs = 1;
+ optional fixed64 gameid = 2;
+ optional uint32 game_ip = 3;
+ optional uint32 game_port = 4;
+ optional bytes token = 5;
+}
+
+message CMsgClientUseLocalDeviceAuthorizations {
+ repeated uint32 authorization_account_id = 1;
+ repeated CMsgClientUseLocalDeviceAuthorizations_DeviceToken device_tokens = 2;
+}
+
+// Used by: common.proto
+message CMsgClientUseLocalDeviceAuthorizations_DeviceToken {
+ optional uint32 owner_account_id = 1;
+ optional uint64 token_id = 2;
+}
+
+message CMsgClientUserNotifications {
+ repeated CMsgClientUserNotifications_Notification notifications = 1;
+}
+
+// Used by: common.proto
+message CMsgClientUserNotifications_Notification {
+ optional uint32 user_notification_type = 1;
+ optional uint32 count = 2;
+}
+
+message CMsgClientVanityURLChangedNotification {
+ optional string vanity_url = 1;
+}
+
+message CMsgClientVoiceCallPreAuthorize {
+ optional fixed64 caller_steamid = 1;
+ optional fixed64 receiver_steamid = 2;
+ optional int32 caller_id = 3;
+ optional bool hangup = 4;
+}
+
+message CMsgClientVoiceCallPreAuthorizeResponse {
+ optional fixed64 caller_steamid = 1;
+ optional fixed64 receiver_steamid = 2;
+ optional int32 eresult = 3 [default = 2];
+ optional int32 caller_id = 4;
+}
+
+message CMsgClientWalletInfoUpdate {
+ optional bool has_wallet = 1;
+ optional int32 balance = 2;
+ optional int32 currency = 3;
+ optional int32 balance_delayed = 4;
+ optional int64 balance64 = 5;
+ optional int64 balance64_delayed = 6;
+ optional int32 realm = 7;
+}
+
+message CMsgCloudPendingRemoteOperations {
+ repeated CCloud_PendingRemoteOperation operations = 1;
+}
+
+// Used by: common.proto
+message CMsgControllerActionSetMiscSettings {
+ optional string cursor_visible_action_set_key = 1;
+ optional string cursor_hidden_action_set_key = 2;
+}
+
+message CMsgControllerConfiguration {
+ optional uint32 binding_handle = 1;
+ optional string display_name = 2;
+ optional string description = 3;
+ optional string creator = 4;
+ optional int32 controller_type = 5;
+ optional int32 controller_style = 7;
+ repeated CMsgGameActionSet sets = 8;
+ repeated CMsgControllerMode modes = 9;
+ optional string error_msg = 10;
+ optional string action_block_path = 11;
+ optional CMsgControllerActionSetMiscSettings misc_action_set_settings = 12;
+ optional string url = 13;
+ optional int32 selection_type = 14;
+}
+
+// Used by: common.proto
+message CMsgControllerInput {
+ optional int32 key = 1 [(webui.description) = "enum"];
+ repeated CMsgControllerInputActivator activators = 2;
+ repeated CMsgControllerInputActivator disabled_activators = 3;
+ optional bool inherited_from_parentset = 4;
+}
+
+// Used by: common.proto
+message CMsgControllerInputActivator {
+ optional int32 activation = 1 [(webui.description) = "enum"];
+ repeated CMsgControllerInputBinding bindings = 2;
+ repeated CMsgControllerSetting settings = 3;
+}
+
+// Used by: common.proto
+message CMsgControllerInputBinding {
+ optional int32 type = 1;
+ optional CMsgControllerInputBinding_KeyBindingData key_binding_data = 2;
+ optional CMsgControllerInputKeyBinding keyboard_key = 3;
+ optional CMsgControllerInputMouseButtonBinding mouse_button = 4;
+ optional CMsgControllerInputGamepadButtonBinding gamepad_button = 5;
+ optional CMsgControllerInputMouseWheelBinding mouse_wheel = 6;
+ optional CMsgControllerInputModeShiftBinding mode_shift = 7;
+ optional CMsgControllerInputGameActionBinding game_action = 8;
+ optional CMsgControllerInputControllerActionBinding controller_action = 9;
+}
+
+// Used by: common.proto
+message CMsgControllerInputBinding_IconBindingData {
+ optional string icon_filename = 1;
+ optional string color_foreground = 2;
+ optional string color_background = 3;
+ optional string icon_url = 4;
+}
+
+// Used by: common.proto
+message CMsgControllerInputBinding_KeyBindingData {
+ optional string keys_bound_utf8 = 1;
+ optional string friendly_name_utf8 = 2;
+ optional CMsgControllerInputBinding_IconBindingData icon_data = 3;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionBinding {
+ optional int32 action = 1 [(webui.description) = "enum"];
+ optional CMsgControllerInputControllerActionMouseBinding mouse = 2;
+ optional CMsgControllerInputControllerActionCameraHorizonReset camera_horizon_reset = 3;
+ optional CMsgControllerInputControllerActionDotsPer360CalibrationSpin dots_per_360_calibration_spin = 4;
+ optional CMsgControllerInputControllerActionTurnToFaceDirection turn_to_face_direction = 5;
+ optional CMsgControllerInputControllerActionGameActionSetBinding action_set = 6;
+ optional CMsgControllerInputControllerActionLEDColorBinding led_color = 7;
+ optional CMsgControllerInputControllerActionChangePlayerNumberBinding change_player_number = 8;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionCameraHorizonReset {
+ optional int32 camera_dip_angle = 1;
+ optional int32 delay_duration = 2;
+ optional int32 camera_horizon_reset_angle = 3;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionChangePlayerNumberBinding {
+ optional int32 player_number = 1;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionDotsPer360CalibrationSpin {
+ optional int32 spin_by_amount = 1;
+ optional int32 spin_duration = 2;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionGameActionSetBinding {
+ optional int32 preset_type = 1 [(webui.description) = "enum"];
+ optional string action_set_key = 2;
+ optional bool display = 3;
+ optional bool beep = 4;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionLEDColorBinding {
+ optional int32 setting = 1 [(webui.description) = "enum"];
+ optional int32 brightness = 2;
+ optional int32 saturation = 3;
+ optional int32 color_r = 4;
+ optional int32 color_g = 5;
+ optional int32 color_b = 6;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionMouseBinding {
+ optional sint32 x = 1;
+ optional sint32 y = 2;
+ optional bool restore = 3;
+}
+
+// Used by: common.proto
+message CMsgControllerInputControllerActionTurnToFaceDirection {
+ optional int32 source_of_direction = 1;
+ optional int32 turn_duration = 2;
+ optional bool use_last_direction_if_deadzoned = 3;
+}
+
+// Used by: common.proto
+message CMsgControllerInputGameActionBinding {
+ optional string action_set_key = 1;
+ optional string action_key = 2;
+}
+
+// Used by: common.proto
+message CMsgControllerInputGamepadButtonBinding {
+ optional int32 button = 1 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerInputKeyBinding {
+ optional int32 key = 1 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerInputModeShiftBinding {
+ optional int32 source = 1 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerInputMouseButtonBinding {
+ optional int32 button = 1 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerInputMouseWheelBinding {
+ optional int32 button = 1 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerMode {
+ optional int32 mode = 1 [(webui.description) = "enum"];
+ optional uint32 modeid = 2;
+ optional string description = 3;
+ repeated CMsgControllerInput inputs = 4;
+ repeated CMsgControllerSetting settings = 5;
+ optional string friendlyname = 6;
+ optional int32 source = 7 [(webui.description) = "enum"];
+ optional CMsgControllerVirtualMenuPreviewInfo virtual_menu_info = 8;
+ optional bool mode_shift = 9;
+ optional uint32 reference_modeid = 10;
+ repeated int32 mode_shift_buttons = 11 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgControllerSetting {
+ optional int32 key = 1 [(webui.description) = "enum"];
+ optional sint32 int_value = 2;
+ optional sint32 int_min = 3;
+ optional sint32 int_max = 4;
+ optional sint32 int_default = 5;
+ optional CMsgControllerSetting parentset_setting = 6;
+ optional sint64 long_value = 7;
+}
+
+// Used by: common.proto
+message CMsgControllerSourceGroup {
+ optional int32 mode = 1 [(webui.description) = "enum"];
+ optional CMsgControllerInputGameActionBinding game_action = 2;
+ repeated CMsgControllerInput inputs = 3;
+ repeated CMsgControllerSetting settings = 4;
+ optional uint32 modeid = 5;
+ optional bool mode_shift = 6;
+ optional CMsgControllerSourceGroup mode_shift_source_group = 7;
+}
+
+// Used by: common.proto
+message CMsgControllerSources {
+ optional int32 key = 1 [(webui.description) = "enum"];
+ optional CMsgControllerSourceGroup active_group = 2;
+}
+
+// Used by: common.proto
+message CMsgControllerVirtualMenuPreviewInfo {
+ optional int32 source = 1 [(webui.description) = "enum"];
+ optional float x_pos = 2;
+ optional float y_pos = 3;
+ optional float opacity = 4;
+ optional float scale = 5;
+ optional bool show_labels = 6;
+ optional uint32 menu_style = 7;
+ optional bool force_on = 8;
+ repeated CVirtualMenuKey keys = 9;
+}
+
+message CMsgCREGetUserPublishedItemVoteDetails {
+ repeated CMsgCREGetUserPublishedItemVoteDetails_PublishedFileId published_file_ids = 1;
+}
+
+// Used by: common.proto
+message CMsgCREGetUserPublishedItemVoteDetails_PublishedFileId {
+ optional fixed64 published_file_id = 1;
+}
+
+message CMsgCREGetUserPublishedItemVoteDetailsResponse {
+ optional int32 eresult = 1 [default = 2];
+ repeated CMsgCREGetUserPublishedItemVoteDetailsResponse_UserItemVoteDetail user_item_vote_details = 2;
+}
+
+// Used by: common.proto
+message CMsgCREGetUserPublishedItemVoteDetailsResponse_UserItemVoteDetail {
+ optional fixed64 published_file_id = 1;
+ optional int32 vote = 2 [default = 0];
+}
+
+message CMsgCREItemVoteSummary {
+ repeated CMsgCREItemVoteSummary_PublishedFileId published_file_ids = 1;
+}
+
+// Used by: common.proto
+message CMsgCREItemVoteSummary_PublishedFileId {
+ optional fixed64 published_file_id = 1;
+}
+
+message CMsgCREItemVoteSummaryResponse {
+ optional int32 eresult = 1 [default = 2];
+ repeated CMsgCREItemVoteSummaryResponse_ItemVoteSummary item_vote_summaries = 2;
+}
+
+// Used by: common.proto
+message CMsgCREItemVoteSummaryResponse_ItemVoteSummary {
+ optional fixed64 published_file_id = 1;
+ optional int32 votes_for = 2;
+ optional int32 votes_against = 3;
+ optional int32 reports = 4;
+ optional float score = 5;
+}
+
+message CMsgCREUpdateUserPublishedItemVote {
+ optional fixed64 published_file_id = 1;
+ optional bool vote_up = 2;
+}
+
+message CMsgCREUpdateUserPublishedItemVoteResponse {
+ optional int32 eresult = 1 [default = 2];
+}
+
+message CMsgDPGetNumberOfCurrentPlayers {
+ optional uint32 appid = 1;
+}
+
+message CMsgDPGetNumberOfCurrentPlayersResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 player_count = 2;
+}
+
+message CMsgDRMDownloadRequestWithCrashData {
+ optional uint32 download_flags = 1;
+ optional uint32 download_types_known = 2;
+ optional bytes guid_drm = 3;
+ optional bytes guid_split = 4;
+ optional bytes guid_merge = 5;
+ optional string module_name = 6;
+ optional string module_path = 7;
+ optional bytes crash_data = 8;
+}
+
+message CMsgDRMDownloadResponse {
+ optional uint32 eresult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional uint32 blob_download_type = 3;
+ optional bytes merge_guid = 4;
+ optional uint32 download_file_dfs_ip = 5;
+ optional uint32 download_file_dfs_port = 6;
+ optional string download_file_url = 7;
+ optional string module_path = 8;
+}
+
+message CMsgDRMFinalResult {
+ optional uint32 eResult = 1 [default = 2];
+ optional uint32 app_id = 2;
+ optional uint32 blob_download_type = 3;
+ optional uint32 error_detail = 4;
+ optional bytes merge_guid = 5;
+ optional uint32 download_file_dfs_ip = 6;
+ optional uint32 download_file_dfs_port = 7;
+ optional string download_file_url = 8;
+}
+
+message CMsgDuplicateControllerSourceMode {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional uint32 existing_modeid = 5;
+ optional string new_name = 6;
+}
+
+message CMsgFSEnumerateFollowingList {
+ optional uint32 start_index = 1;
+}
+
+message CMsgFSEnumerateFollowingListResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 total_results = 2;
+ repeated fixed64 steam_ids = 3;
+}
+
+message CMsgFSGetFollowerCount {
+ optional fixed64 steam_id = 1;
+}
+
+message CMsgFSGetFollowerCountResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional int32 count = 2 [default = 0];
+}
+
+message CMsgFSGetIsFollowing {
+ optional fixed64 steam_id = 1;
+}
+
+message CMsgFSGetIsFollowingResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional bool is_following = 2 [default = false];
+}
+
+// Used by: common.proto
+message CMsgFunctionalCurve {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional CMsgLinearCurve linear = 2;
+ optional CMsgPowerCurve power = 3;
+ optional CMsgSigmoidalCurve sigmoidal = 4;
+ optional CMsgBezierCurve bezier = 5;
+ optional CMsgLinearListCurve linear_list = 6;
+}
+
+// Used by: common.proto
+message CMsgGameAction {
+ optional string key = 1;
+ optional string display_name = 2;
+ repeated int32 modes = 3 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgGameActionBindingType {
+ optional int32 key = 1 [(webui.description) = "enum"];
+ repeated CMsgGameAction actions = 2;
+}
+
+// Used by: common.proto
+message CMsgGameActionSet {
+ optional string key = 1;
+ optional string display_name = 2;
+ optional bool legacy_set = 3;
+ repeated CMsgGameActionSet layers = 4;
+ repeated CMsgGameActionBindingType action_binding_types = 5;
+ repeated CMsgControllerSources source_bindings = 6;
+ optional bool has_inactive_mouse_mode = 7;
+}
+
+message CMsgGameServerPolicyUpdate {
+ optional uint32 app_id = 1;
+ optional uint32 app_id_aux = 2;
+}
+
+message CMsgGCClient {
+ optional uint32 appid = 1;
+ optional uint32 msgtype = 2;
+ optional bytes payload = 3;
+ optional fixed64 steamid = 4;
+ optional string gcname = 5;
+ optional uint32 ip = 6;
+ optional uint32 flags = 7;
+}
+
+// Used by: common.proto
+message CMsgGCRoutingProtoBufHeader {
+ optional uint64 dst_gcid_queue = 1;
+ optional uint32 dst_gc_dir_index = 2;
+}
+
+message CMsgGenerateSystemReportReply {
+ optional string report_id = 1;
+}
+
+message CMsgGSApprove {
+ optional fixed64 steam_id = 1;
+ optional fixed64 owner_steam_id = 2;
+}
+
+message CMsgGSDeny {
+ optional fixed64 steam_id = 1;
+ optional int32 edeny_reason = 2;
+ optional string deny_string = 3;
+}
+
+message CMsgGSKick {
+ optional fixed64 steam_id = 1;
+ optional int32 edeny_reason = 2;
+}
+
+// Used by: common.proto
+message CMsgHotkey {
+ optional uint32 key_code = 1;
+ optional bool alt_key = 2;
+ optional bool shift_key = 3;
+ optional bool ctrl_key = 4;
+ optional bool meta_key = 5;
+ optional string display_name = 6;
+}
+
+// Used by: common.proto
+message CMsgICECandidate {
+ optional string candidate = 3;
+}
+
+// Used by: common.proto
+message CMsgICERendezvous {
+ optional CMsgICECandidate add_candidate = 1;
+ optional CMsgICERendezvous_Auth auth = 2;
+}
+
+// Used by: common.proto
+message CMsgICERendezvous_Auth {
+ optional string pwd_frag = 1;
+}
+
+// Used by: Authentication, AuthenticationSupport, Community, common.proto
+message CMsgIPAddress {
+ optional fixed32 v4 = 1;
+ optional bytes v6 = 2;
+}
+
+message CMsgIPAddressBucket {
+ optional CMsgIPAddress original_ip_address = 1;
+ optional fixed64 bucket = 2;
+}
+
+// Used by: common.proto
+message CMsgKeyValuePair {
+ optional string name = 1;
+ optional string value = 2;
+}
+
+message CMsgKeyValueSet {
+ repeated CMsgKeyValuePair pairs = 1;
+}
+
+message CMsgKubeRPCPacket {
+ optional CMsgKubeRPCPacket_Hdr hdr = 1;
+ optional bytes payload = 2;
+}
+
+// Used by: common.proto
+message CMsgKubeRPCPacket_Hdr {
+ optional fixed64 jobid_source = 10 [default = 18446744073709551615];
+ optional fixed64 jobid_target = 11 [default = 18446744073709551615];
+ optional string target_job_name = 12;
+ optional int32 eresult = 13 [default = 2];
+ optional string error_message = 14;
+ optional string reply_address = 42;
+}
+
+// Used by: common.proto
+message CMsgLinearCurve {
+ optional Vector2 start = 1;
+ optional Vector2 end = 2;
+}
+
+// Used by: common.proto
+message CMsgLinearListCurve {
+ repeated Vector2 points = 1;
+}
+
+message CMsgMonitorInfo {
+ optional string selected_device_name = 1;
+ repeated CMsgMonitorInfo_MonitorInfo monitors = 2;
+}
+
+// Used by: common.proto
+message CMsgMonitorInfo_MonitorInfo {
+ optional string monitor_device_name = 1;
+ optional string monitor_display_name = 2;
+}
+
+message CMsgMulti {
+ optional uint32 size_unzipped = 1;
+ optional bytes message_body = 2;
+}
+
+message CMsgNetworkDeviceConnect {
+ optional uint32 device_id = 1 [default = 0];
+ optional CMsgNetworkDeviceConnect_KnownAP ap_known = 2;
+ optional CMsgNetworkDeviceConnect_CustomAP ap_custom = 3;
+ optional CMsgNetworkDeviceConnect_Credentials credentials = 4;
+ optional CMsgNetworkDeviceIP4Config ip4 = 5;
+ optional CMsgNetworkDeviceIP6Config ip6 = 6;
+ optional CMsgNetworkDeviceConnect_Wireless wireless = 7;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceConnect_Credentials {
+ optional string username = 1;
+ optional string password = 2;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceConnect_CustomAP {
+ optional string ssid = 1;
+ optional int32 esecurity = 2;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceConnect_KnownAP {
+ optional uint32 ap_id = 1;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceConnect_Wireless {
+ optional string band_filter = 1;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceIP4Address {
+ optional int32 ip = 1 [default = 0];
+ optional int32 netmask = 2;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceIP4Config {
+ repeated CMsgNetworkDeviceIP4Address addresses = 1;
+ repeated int32 dns_ip = 2;
+ optional int32 gateway_ip = 3;
+ optional bool is_dhcp_enabled = 4;
+ optional bool is_default_route = 5;
+ optional bool is_enabled = 6 [default = false];
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceIP6Address {
+ optional string ip = 1 [default = ""];
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceIP6Config {
+ repeated CMsgNetworkDeviceIP6Address addresses = 1;
+ repeated string dns_ip = 2;
+ optional string gateway_ip = 3;
+ optional bool is_dhcp_enabled = 4;
+ optional bool is_default_route = 5;
+ optional bool is_enabled = 6 [default = false];
+}
+
+message CMsgNetworkDevicesData {
+ repeated CMsgNetworkDevicesData_Device devices = 1;
+ optional bool is_wifi_enabled = 2;
+ optional bool is_wifi_scanning_enabled = 3;
+}
+
+// Used by: common.proto
+message CMsgNetworkDevicesData_Device {
+ optional uint32 id = 1 [default = 0];
+ optional int32 etype = 2;
+ optional int32 estate = 3;
+ optional string mac = 4;
+ optional string vendor = 5;
+ optional string product = 6;
+ optional CMsgNetworkDeviceIP4Config ip4 = 7;
+ optional CMsgNetworkDeviceIP6Config ip6 = 8;
+ optional CMsgNetworkDevicesData_Device_Wired wired = 9;
+ optional CMsgNetworkDevicesData_Device_Wireless wireless = 10;
+}
+
+// Used by: common.proto
+message CMsgNetworkDevicesData_Device_Wired {
+ optional bool is_cable_present = 1 [default = false];
+ optional uint32 speed_mbit = 2;
+ optional string friendly_name = 3;
+}
+
+// Used by: common.proto
+message CMsgNetworkDevicesData_Device_Wireless {
+ repeated CMsgNetworkDevicesData_Device_Wireless_AP aps = 1;
+ optional int32 esecurity_supported = 2;
+}
+
+// Used by: common.proto
+message CMsgNetworkDevicesData_Device_Wireless_AP {
+ optional uint32 id = 1 [default = 0];
+ optional int32 estrength = 2;
+ optional string ssid = 3;
+ optional bool is_active = 4;
+ optional bool is_autoconnect = 5;
+ optional int32 esecurity = 6;
+ optional string user_name = 7;
+ optional string password = 8;
+ optional int32 strength_raw = 9;
+ optional string band_filter = 10;
+ optional bool has_non_6ghz_channel = 11;
+ optional bool is_saved = 12;
+}
+
+message CMsgNetworkDeviceSetOptions {
+ optional CMsgNetworkDeviceSetOptions_Wireless wireless = 2;
+}
+
+// Used by: common.proto
+message CMsgNetworkDeviceSetOptions_Wireless {
+ optional uint32 ap_id = 1;
+ optional bool is_autoconnect = 2;
+ optional string band_filter = 3;
+}
+
+message CMsgPersonaChangeResponse {
+ optional uint32 result = 1;
+ optional string player_name = 2;
+}
+
+// Used by: common.proto
+message CMsgPowerCurve {
+ optional Vector2 start = 1;
+ optional Vector2 end = 2;
+ optional float power = 3;
+}
+
+message CMsgProtoBufHeader {
+ optional fixed64 steamid = 1;
+ optional int32 client_sessionid = 2;
+ optional uint32 routing_appid = 3;
+ optional fixed64 jobid_source = 10 [default = 18446744073709551615];
+ optional fixed64 jobid_target = 11 [default = 18446744073709551615];
+ optional string target_job_name = 12;
+ optional int32 eresult = 13 [default = 2];
+ optional string error_message = 14;
+ optional uint32 ip = 15;
+ optional uint32 auth_account_flags = 16;
+ optional int32 transport_error = 17 [default = 1];
+ optional uint64 messageid = 18 [default = 18446744073709551615];
+ optional uint32 publisher_group_id = 19;
+ optional uint32 sysid = 20;
+ optional uint32 token_source = 22;
+ optional bool admin_spoofing_user = 23;
+ optional int32 seq_num = 24;
+ optional uint32 webapi_key_id = 25;
+ optional bool is_from_external_source = 26;
+ repeated uint32 forward_to_sysid = 27;
+ optional uint32 cm_sysid = 28;
+ optional bytes ip_v6 = 29;
+ optional uint32 launcher_type = 31 [default = 0];
+ optional uint32 realm = 32 [default = 0];
+ optional int32 timeout_ms = 33 [default = -1];
+ optional string debug_source = 34;
+ optional uint32 debug_source_string_index = 35;
+ optional uint64 token_id = 36;
+ optional CMsgGCRoutingProtoBufHeader routing_gc = 37;
+ optional int32 session_disposition = 38 [default = 0, (webui.description) = "enum"];
+ optional string wg_token = 39;
+ optional string webui_auth_key = 40;
+ repeated int32 exclude_client_sessionids = 41;
+ optional fixed64 admin_request_spoofing_steamid = 43;
+ optional bool is_valveds = 44;
+ optional fixed64 trace_tag = 45;
+ optional uint32 wg_msg_trace_flags = 46;
+ optional uint32 wg_msg_trace_instance = 47;
+ optional uint32 wg_msg_trace_gid = 48;
+ optional string wg_msg_trace_token = 49;
+ optional fixed64 wg_msg_trace_steamid = 50;
+ optional string wg_msg_trace_status = 51;
+ optional uint32 trace_flags = 52;
+ optional string browserapi_site = 53;
+}
+
+message CMsgProtobufWrapped {
+ optional bytes message_body = 1;
+}
+
+message CMsgRemoteClientAcceptAllEULAs {
+ optional uint32 app_id = 1;
+}
+
+message CMsgRemoteClientAcceptEULA {
+ repeated uint32 app_id = 1;
+ repeated string eula_id = 2;
+ repeated uint32 eula_version = 3;
+}
+
+message CMsgRemoteClientAppStatus {
+ repeated CMsgRemoteClientAppStatus_AppStatus status_updates = 1;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientAppStatus_AppStatus {
+ optional uint32 app_id = 1;
+ optional uint32 app_install_state = 2;
+ optional AppUpdateInfo update_info = 3;
+ optional CMsgRemoteClientAppStatus_ShortcutInfo shortcut_info = 4;
+ optional bool vr_not_required = 5 [default = true];
+ optional bool shader_update_available = 6;
+ optional bool workshop_update_avilable = 7;
+ optional bool download_complete = 8;
+ optional AppCloudStatus cloud_status = 9;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientAppStatus_ShortcutInfo {
+ optional string name = 1;
+ optional string icon = 2;
+ repeated string categories = 3;
+ optional string exepath = 4;
+}
+
+message CMsgRemoteClientAppUpdateInfoComplete {
+ optional uint32 result = 1;
+}
+
+message CMsgRemoteClientAppUpdateStopped {
+ optional uint32 app_id = 1;
+ optional AppUpdateInfo update_info = 2;
+ optional string error_detail = 3;
+ optional int32 install_folder_index = 4;
+ optional uint32 app_install_state = 5;
+}
+
+message CMsgRemoteClientBroadcastClientIDDeconflict {
+ repeated uint64 client_ids = 2;
+}
+
+message CMsgRemoteClientBroadcastClientPairingExclusivity {
+ optional fixed64 if_paired_network_hash_is = 1;
+ optional fixed64 unpair_unless_you_are_client_id = 2;
+ optional uint32 last_known_pairing_time = 3;
+}
+
+message CMsgRemoteClientBroadcastClientPairingState {
+ optional fixed64 my_paired_network_hash = 1;
+ optional uint32 my_pairing_time = 2;
+}
+
+message CMsgRemoteClientBroadcastDiscovery {
+ optional uint32 seq_num = 1;
+ repeated uint64 client_ids = 2;
+}
+
+message CMsgRemoteClientBroadcastHeader {
+ optional uint64 client_id = 1;
+ optional int32 msg_type = 2 [(webui.description) = "enum"];
+ optional uint64 instance_id = 3;
+ optional uint64 device_id_OBSOLETE = 4;
+ optional bytes device_token = 5;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientBroadcastStatus {
+ optional int32 version = 1;
+ optional int32 min_version = 2;
+ optional uint32 connect_port = 3;
+ optional string hostname = 4;
+ optional uint32 enabled_services = 6;
+ optional int32 ostype = 7 [default = 0];
+ optional bool is64bit = 8;
+ repeated CMsgRemoteClientBroadcastStatus_User users = 9;
+ optional int32 euniverse = 11;
+ optional uint32 timestamp = 12;
+ optional bool screen_locked = 13;
+ optional bool games_running = 14;
+ repeated string mac_addresses = 15;
+ optional uint32 download_lan_peer_group = 16;
+ optional bool broadcasting_active = 17;
+ optional bool vr_active = 18;
+ optional uint32 content_cache_port = 19;
+ repeated string ip_addresses = 20;
+ optional string public_ip_address = 21;
+ optional bool remoteplay_active = 22;
+ optional uint32 supported_services = 23;
+ optional bool steam_deck = 24;
+ optional uint64 steam_version = 25;
+ optional int32 vr_link_caps = 26 [default = 0, (webui.description) = "enum"];
+ optional fixed64 vr_link_invite_client_id = 27;
+ optional fixed64 connected_paired_network_hash = 28;
+ optional bool wifi_dongle_present = 29;
+ optional bool is_low_spec_hardware = 30;
+ optional uint32 gaming_device_type = 31;
+ optional fixed64 connecting_paired_network_hash = 32;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientBroadcastStatus_User {
+ optional fixed64 steamid = 1;
+ optional uint32 auth_key_id = 2;
+}
+
+message CMsgRemoteClientDownloadingAppChanged {
+ optional uint32 downloading_app_id = 1;
+}
+
+message CMsgRemoteClientDownloadingAppID {
+ optional uint32 downloading_app_id = 1;
+ optional AppUpdateInfo update_info = 2;
+}
+
+message CMsgRemoteClientDownloadScheduleChanged {
+ optional bool download_enabled = 1;
+ optional uint32 start_index = 2;
+ optional bool final_message = 3;
+ optional uint32 num_apps_scheduled = 4;
+ repeated uint32 apps_scheduled = 5;
+}
+
+message CMsgRemoteClientDownloadScheduleItemChanged {
+ optional uint32 app_id = 2;
+}
+
+message CMsgRemoteClientDownloadsManagement {
+ optional CMsgRemoteClientDownloadsManagement_ChangeAppQueuePlacement change_queue_placement = 1;
+ optional CMsgRemoteClientDownloadsManagement_ChangeDownloadIndex change_download_index = 2;
+ optional bool enable_all_downloads = 3;
+ optional uint32 remove_from_download_list_app_id = 4;
+ optional bool suspend_download_throttling = 5;
+ optional uint32 uninstalling_app_id = 6;
+ optional uint32 installing_app_id = 7;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientDownloadsManagement_ChangeAppQueuePlacement {
+ optional uint32 app_id = 1;
+ optional uint32 queue_placement = 2;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientDownloadsManagement_ChangeDownloadIndex {
+ optional uint32 app_id = 1;
+ optional uint32 download_index = 3;
+}
+
+message CMsgRemoteClientDownloadStatus {
+ optional uint32 current_connections = 1;
+ optional uint32 current_bps = 2;
+ optional uint64 total_bytes_downloaded = 3;
+ optional uint32 recent_bps = 4;
+ optional uint64 remote_client_id = 5;
+ optional int32 download_throttle_rate = 6;
+ optional string remote_client_name = 7;
+}
+
+message CMsgRemoteClientGetControllerConfig {
+ optional uint32 app_id = 1;
+ optional uint32 controller_index = 3;
+}
+
+message CMsgRemoteClientGetControllerConfigResponse {
+ optional int32 eresult = 1 [default = 2];
+ optional bytes config_vdf = 2;
+}
+
+message CMsgRemoteClientInstallApp {
+ optional uint32 app_id = 1;
+}
+
+message CMsgRemoteClientInstallAppResponse {
+ optional int32 e_launch_result = 1 [default = 2];
+}
+
+message CMsgRemoteClientPairWifiAP {
+ optional string ssid = 1;
+ optional string password = 2;
+ optional bool supports_progress = 3;
+}
+
+message CMsgRemoteClientPairWifiAPResponse {
+ optional int32 e_pair_result = 1 [default = 2];
+ optional string ssid = 2;
+ optional string password = 3;
+ optional int32 steps_done = 4;
+ optional int32 steps_total = 5;
+ optional string step_name = 6;
+ optional uint32 estimated_seconds = 7;
+}
+
+message CMsgRemoteClientPeerContentServerChanged {
+ optional uint32 app_id = 1;
+ optional uint32 num_connections = 2;
+ optional uint64 remote_client_id = 3;
+}
+
+message CMsgRemoteClientPing {
+}
+
+message CMsgRemoteClientPingResponse {
+}
+
+message CMsgRemoteClientRestrictAutoUpdates {
+ optional bool restrict_auto_updates = 1;
+ optional int32 restrict_auto_updates_start = 2;
+ optional int32 restrict_auto_updates_end = 3;
+}
+
+message CMsgRemoteClientStartStream {
+ optional uint32 app_id = 1;
+ optional int32 environment = 2;
+ optional int32 gamepad_count = 3;
+ optional int32 launch_option = 4 [default = -1];
+ optional bool lock_parental_lock = 5 [default = false];
+ optional string unlock_parental_lock = 6;
+ optional int32 maximum_resolution_x = 7;
+ optional int32 maximum_resolution_y = 8;
+ repeated CMsgRemoteClientStartStream_ReservedGamepad gamepads = 9;
+ optional int32 audio_channel_count = 10 [default = 2];
+ repeated int32 supported_transport = 11 [(webui.description) = "enum"];
+ optional int32 maximum_framerate_numerator = 12;
+ optional int32 maximum_framerate_denominator = 13;
+ optional bool display_hdr = 14;
+ optional bool launch_only = 15 [default = false];
+ optional int32 gaming_device_type = 16;
+ optional int32 cloud_conflict_resolution = 17 [default = -1];
+ optional int32 controller_config_conflict_resolution = 18 [default = -1];
+}
+
+// Used by: common.proto
+message CMsgRemoteClientStartStream_ReservedGamepad {
+ optional uint32 controller_type = 1;
+ optional uint32 controller_subtype = 2;
+}
+
+message CMsgRemoteClientStartStreamResponse {
+ optional int32 e_launch_result = 1 [default = 2];
+ optional uint32 stream_port = 2;
+ repeated int32 launch_options = 3;
+ optional bytes auth_token = 4;
+ optional int32 transport = 5 [default = 1, (webui.description) = "enum"];
+ optional string relay_server = 6;
+ optional string launch_task = 7;
+ optional string launch_task_detail = 8;
+ optional int32 launch_tasks_done = 9;
+ optional int32 launch_tasks_total = 10;
+ optional string vr_connection_params = 11;
+ optional bool launch_only = 12 [default = false];
+ optional CMsgRemoteClientStartStreamResponse_CloudConflict cloud_conflict = 13;
+}
+
+// Used by: common.proto
+message CMsgRemoteClientStartStreamResponse_CloudConflict {
+ optional uint32 appid = 1;
+ optional uint32 local_time = 2;
+ optional uint32 remote_time = 3;
+}
+
+message CMsgRemoteClientStatus {
+ optional uint64 client_id = 1;
+ optional uint64 instance_id = 2;
+ optional CMsgRemoteClientBroadcastStatus status = 3;
+}
+
+message CMsgRemoteClientStreamingEnabled {
+ optional bool enabled = 1;
+}
+
+message CMsgRemoteClientSuspendLanPeerContent {
+ optional bool suspend = 1;
+}
+
+message CMsgRemoteClientUpdateDownloadsController {
+ optional bool update_download_items = 1;
+ optional bool update_download_overview = 2;
+}
+
+message CMsgRemoteClientUploadStatus {
+ optional uint32 served_app_id = 1;
+ optional uint32 num_clients = 2;
+ optional uint32 send_bytes_per_sec = 3;
+ optional uint32 read_bytes_per_sec = 4;
+ optional uint64 send_bytes_total = 5;
+ optional uint64 read_bytes_total = 6;
+ optional uint64 remote_client_id = 7;
+ optional string remote_client_name = 8;
+}
+
+message CMsgRemoteClientWifiAPStatus {
+ optional string ssid = 1;
+ optional string password = 2;
+ optional bool wpa2_deprecated = 3;
+ optional bool is_pairing_capable = 4;
+ optional fixed64 paired_network_hash = 5;
+}
+
+message CMsgRemoteDeviceAuthorizationCancelRequest {
+}
+
+message CMsgRemoteDeviceAuthorizationConfirmed {
+ optional int32 result = 1 [(webui.description) = "enum"];
+}
+
+message CMsgRemoteDeviceAuthorizationRequest {
+ optional bytes device_token = 1;
+ optional string device_name = 2;
+ optional bytes encrypted_request = 3;
+ optional bytes auth_key = 4;
+ optional uint32 request_id = 5;
+}
+
+message CMsgRemoteDeviceAuthorizationRequest_CKeyEscrow_Ticket {
+ optional bytes password = 1;
+ optional uint64 identifier = 2;
+ optional bytes payload = 3;
+ optional uint32 timestamp = 4;
+ optional int32 usage = 5 [(webui.description) = "enum"];
+ optional string device_name = 6;
+ optional string device_model = 7;
+ optional string device_serial = 8;
+ optional uint32 device_provisioning_id = 9;
+}
+
+message CMsgRemoteDeviceAuthorizationResponse {
+ optional int32 result = 1 [(webui.description) = "enum"];
+ optional fixed64 steamid = 2;
+ optional bytes auth_key = 3;
+ optional bytes device_token = 4;
+}
+
+message CMsgRemoteDeviceProofRequest {
+ optional bytes challenge = 1;
+ optional uint32 request_id = 2;
+ optional bool update_secret = 3;
+}
+
+message CMsgRemoteDeviceProofResponse {
+ optional bytes response = 1;
+ optional uint32 request_id = 2;
+ optional bool updated_secret = 3;
+}
+
+message CMsgRemoteDeviceStreamingCancelRequest {
+ optional uint32 request_id = 1;
+}
+
+message CMsgRemoteDeviceStreamingProgress {
+ optional uint32 request_id = 1;
+ optional float progress = 2;
+}
+
+message CMsgRemoteDeviceStreamingRequest {
+ optional uint32 request_id = 1;
+ optional int32 maximum_resolution_x = 2;
+ optional int32 maximum_resolution_y = 3;
+ optional int32 audio_channel_count = 4 [default = 2];
+ optional string device_version = 5;
+ optional bool stream_desktop = 6;
+ optional bytes device_token = 7;
+ optional bytes pin = 8;
+ optional bool enable_video_streaming = 9 [default = true];
+ optional bool enable_audio_streaming = 10 [default = true];
+ optional bool enable_input_streaming = 11 [default = true];
+ optional bool network_test = 12;
+ optional uint64 client_id = 13;
+ repeated int32 supported_transport = 14 [(webui.description) = "enum"];
+ optional bool restricted = 15;
+ optional int32 form_factor = 16 [(webui.description) = "enum"];
+ optional int32 gamepad_count = 17;
+ repeated CMsgRemoteDeviceStreamingRequest_ReservedGamepad gamepads = 18;
+ optional uint64 gameid = 19;
+ optional int32 stream_interface = 20 [(webui.description) = "enum"];
+ optional int32 maximum_framerate_numerator = 21;
+ optional int32 maximum_framerate_denominator = 22;
+ optional bool display_hdr = 23;
+}
+
+// Used by: common.proto
+message CMsgRemoteDeviceStreamingRequest_ReservedGamepad {
+ optional uint32 controller_type = 1;
+ optional uint32 controller_subtype = 2;
+}
+
+message CMsgRemoteDeviceStreamingResponse {
+ optional uint32 request_id = 1;
+ optional int32 result = 2 [(webui.description) = "enum"];
+ optional uint32 port = 3;
+ optional bytes encrypted_session_key = 4;
+ optional int32 transport = 6 [default = 1, (webui.description) = "enum"];
+ optional string relay_server = 7;
+ optional string cert = 8;
+}
+
+message CMsgRemoteDeviceStreamTransportSignal {
+ optional bytes token = 1;
+ optional bytes payload = 2;
+}
+
+message CMsgResponseCurve {
+ repeated CMsgFunctionalCurve curves = 1;
+ optional string curve_name = 2;
+}
+
+message CMsgSelectOSBranchParams {
+ optional int32 branch = 1 [(webui.description) = "enum"];
+ optional string custom_branch = 2;
+}
+
+message CMsgSetControllerActionSet {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional string new_display_name = 3;
+ optional string action_set_to_copy_key = 4;
+}
+
+message CMsgSetControllerInputActivator {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional bool mode_shift = 4;
+ optional int32 input_key = 5 [(webui.description) = "enum"];
+ optional int32 activator_index = 6;
+ optional int32 new_activation = 7 [(webui.description) = "enum"];
+ optional CMsgControllerSetting new_setting = 8;
+ optional int32 modeid = 9;
+}
+
+message CMsgSetControllerInputActivatorEnabled {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional bool mode_shift = 4;
+ optional int32 input_key = 5 [(webui.description) = "enum"];
+ optional int32 activator_index = 6;
+ optional bool enabled = 7;
+ optional int32 modeid = 8;
+}
+
+message CMsgSetControllerInputBinding {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional bool mode_shift = 4;
+ optional int32 input_key = 5 [(webui.description) = "enum"];
+ optional int32 activator_index = 6;
+ optional int32 binding_index = 7;
+ optional CMsgControllerInputBinding new_binding = 8;
+ optional int32 source_mode = 9 [(webui.description) = "enum"];
+ optional int32 modeid = 10;
+}
+
+message CMsgSetControllerSourceMode {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional bool mode_shift = 4;
+ optional int32 new_mode = 5 [(webui.description) = "enum"];
+ optional CMsgControllerInputGameActionBinding new_game_action = 6;
+ optional CMsgControllerSetting new_setting = 7;
+ optional string new_name = 8;
+ optional uint32 modeid = 9;
+ optional bool change_mode = 10;
+ optional bool new_virtual_menu = 11;
+ optional bool enable_virtual_menu_support = 12;
+}
+
+message CMsgSetModeShiftButton {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 modeid = 3;
+ optional int32 source = 4 [(webui.description) = "enum"];
+ repeated int32 mode_shift_buttons_digital_io = 5 [(webui.description) = "enum"];
+}
+
+message CMsgSettingVariant {
+ optional bool value_bool = 1;
+ optional int32 value_int32 = 2;
+ optional uint32 value_uint32 = 3;
+ optional int64 value_uint64 = 5;
+ optional float value_float = 6;
+ optional string value_string = 7;
+ optional CMsgHotkey value_hotkey = 8;
+}
+
+message CMsgShortcutAppIds {
+ repeated uint32 appids = 1;
+}
+
+// Used by: common.proto
+message CMsgShortcutInfo {
+ optional uint32 appid = 1;
+ optional string exe = 2;
+ optional string start_dir = 3;
+ optional string icon = 4;
+ optional string path = 5;
+ optional string args = 6;
+ optional string app_name = 7;
+ optional uint32 override_appid = 8;
+ optional string flatpak_appid = 9;
+ repeated string tags = 10;
+ optional uint64 remote_client_id = 11;
+ optional bool is_hidden = 12;
+ optional bool is_temporary = 13;
+ optional bool is_openvr = 14;
+ optional bool allow_desktop_config = 15;
+ optional bool allow_overlay = 16;
+ optional uint32 rt_last_played_time = 17;
+ optional bool is_devkit_shortcut = 18;
+ optional string devkit_gameid = 19;
+ optional bool remote_launch_available = 20;
+ optional string sortas = 21;
+}
+
+message CMsgShortcutInfos {
+ repeated CMsgShortcutInfo shorcuts = 1;
+}
+
+// Used by: common.proto
+message CMsgSigmoidalCurve {
+ optional Vector2 start = 1;
+ optional Vector2 end = 2;
+ optional float response_power = 3;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramCertificate {
+ optional int32 key_type = 1 [(webui.description) = "enum"];
+ optional bytes key_data = 2;
+ optional fixed64 legacy_steam_id = 4;
+ repeated fixed32 gameserver_datacenter_ids = 5;
+ optional fixed32 time_created = 8;
+ optional fixed32 time_expiry = 9;
+ repeated uint32 app_ids = 10;
+ optional CMsgSteamNetworkingIdentityLegacyBinary legacy_identity_binary = 11;
+ optional string identity_string = 12;
+ repeated string ip_addresses = 13;
+}
+
+message CMsgSteamDatagramCertificateRequest {
+ optional CMsgSteamDatagramCertificate cert = 1;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramCertificateSigned {
+ optional bytes private_key_data = 1;
+ optional bytes cert = 4;
+ optional fixed64 ca_key_id = 5;
+ optional bytes ca_signature = 6;
+}
+
+message CMsgSteamDatagramClientPingSampleReply {
+ optional fixed32 connection_id = 1;
+ repeated CMsgSteamDatagramClientPingSampleReply_POP pops = 2;
+ optional bool relay_override_active = 5;
+ optional CMsgTOSTreatment tos = 6;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramClientPingSampleReply_POP {
+ optional fixed32 pop_id = 1;
+ optional uint32 front_ping_ms = 2;
+ optional uint32 e2e_ping_ms = 3;
+ optional uint32 cluster_penalty = 4;
+ optional uint32 e2e_score = 5;
+ optional fixed32 e2e_p2p_peer_relay_pop_id = 6;
+ optional uint32 dc_ping_ms = 9;
+ optional uint32 dc_score = 10;
+ optional fixed32 dc_via_relay_pop_id = 11;
+}
+
+message CMsgSteamDatagramClientPingSampleRequest {
+ optional fixed32 connection_id = 1;
+}
+
+message CMsgSteamDatagramClientSwitchedPrimary {
+ optional fixed32 connection_id = 1;
+ optional fixed32 from_ip = 2;
+ optional uint32 from_port = 3;
+ optional fixed32 from_router_cluster = 4;
+ optional uint32 from_active_time = 5;
+ optional uint32 from_active_packets_recv = 6;
+ optional string from_dropped_reason = 7;
+ optional uint32 gap_ms = 8;
+ optional CMsgSteamDatagramClientSwitchedPrimary_RouterQuality from_quality_now = 9;
+ optional CMsgSteamDatagramClientSwitchedPrimary_RouterQuality to_quality_now = 10;
+ optional CMsgSteamDatagramClientSwitchedPrimary_RouterQuality from_quality_then = 11;
+ optional CMsgSteamDatagramClientSwitchedPrimary_RouterQuality to_quality_then = 12;
+ optional int32 from_migrate_request = 13 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramClientSwitchedPrimary_RouterQuality {
+ optional uint32 score = 1;
+ optional uint32 front_ping = 2;
+ optional uint32 back_ping = 3;
+ optional uint32 seconds_until_down = 4;
+}
+
+message CMsgSteamDatagramConnectionClosed {
+ optional uint32 legacy_gameserver_relay_session_id = 2;
+ optional fixed64 legacy_from_steam_id = 3;
+ optional int32 relay_mode = 4 [(webui.description) = "enum"];
+ optional string debug = 5;
+ optional uint32 reason_code = 6;
+ optional fixed32 to_connection_id = 7;
+ optional fixed32 from_connection_id = 8;
+ optional fixed32 to_relay_session_id = 9;
+ optional fixed32 from_relay_session_id = 10;
+ optional bytes forward_target_relay_routing_token = 11;
+ optional uint32 forward_target_revision = 12;
+ optional CMsgSteamNetworkingIdentityLegacyBinary legacy_from_identity_binary = 13;
+ optional fixed64 routing_secret = 14;
+ optional string from_identity_string = 15;
+ optional bool not_primary_session = 16;
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 17;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 18;
+ optional bool not_primary_transport = 19;
+ optional CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 21;
+ optional bool relay_override_active = 22;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramConnectionQuality {
+ optional CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
+ optional CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
+}
+
+message CMsgSteamDatagramConnectionStatsClientToRouter {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ repeated fixed32 ack_relay = 4;
+ repeated fixed32 legacy_ack_e2e = 5;
+ optional uint32 flags = 6;
+ optional fixed32 client_connection_id = 8;
+ optional uint32 seq_num_c2r = 9;
+ optional uint32 seq_num_e2e = 10;
+}
+
+message CMsgSteamDatagramConnectionStatsP2PClientToRouter {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ repeated fixed32 ack_relay = 3;
+ repeated fixed32 legacy_ack_e2e = 4;
+ optional uint32 flags = 5;
+ optional bytes forward_target_relay_routing_token = 6;
+ optional uint32 forward_target_revision = 7;
+ optional bytes routes = 8;
+ optional uint32 ack_peer_routes_revision = 9;
+ optional fixed32 connection_id = 10;
+ optional uint32 seq_num_c2r = 11;
+ optional uint32 seq_num_e2e = 12;
+ optional CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 14;
+}
+
+message CMsgSteamDatagramConnectionStatsP2PRouterToClient {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ optional uint32 seconds_until_shutdown = 3;
+ optional fixed32 migrate_request_ip = 4;
+ optional uint32 migrate_request_port = 5;
+ optional uint32 scoring_penalty_relay_cluster = 6;
+ repeated fixed32 ack_relay = 7;
+ repeated fixed32 legacy_ack_e2e = 8;
+ optional uint32 flags = 9;
+ optional uint32 ack_forward_target_revision = 10;
+ optional bytes routes = 11;
+ optional uint32 ack_peer_routes_revision = 12;
+ optional fixed32 connection_id = 13;
+ optional uint32 seq_num_r2c = 14;
+ optional uint32 seq_num_e2e = 15;
+}
+
+message CMsgSteamDatagramConnectionStatsRouterToClient {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ optional uint32 seconds_until_shutdown = 6;
+ optional fixed32 client_connection_id = 7;
+ optional uint32 seq_num_r2c = 8;
+ optional uint32 seq_num_e2e = 9;
+ optional fixed32 migrate_request_ip = 10;
+ optional uint32 migrate_request_port = 11;
+ optional uint32 scoring_penalty_relay_cluster = 12;
+ repeated fixed32 ack_relay = 13;
+ repeated fixed32 legacy_ack_e2e = 14;
+ optional uint32 flags = 15;
+}
+
+message CMsgSteamDatagramConnectionStatsRouterToServer {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ optional uint32 seq_num_r2s = 5;
+ optional uint32 seq_num_e2e = 6;
+ optional fixed64 legacy_client_steam_id = 7;
+ optional uint32 relay_session_id = 8;
+ optional fixed32 client_connection_id = 9;
+ repeated fixed32 ack_relay = 10;
+ repeated fixed32 legacy_ack_e2e = 11;
+ optional uint32 flags = 12;
+ optional fixed32 server_connection_id = 13;
+ optional fixed64 routing_secret = 14;
+ optional string client_identity_string = 15;
+}
+
+message CMsgSteamDatagramConnectionStatsServerToRouter {
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 1;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 2;
+ optional uint32 seq_num_s2r = 3;
+ optional uint32 seq_num_e2e = 4;
+ optional uint32 relay_session_id = 6;
+ optional fixed32 client_connection_id = 7;
+ repeated fixed32 ack_relay = 8;
+ repeated fixed32 legacy_ack_e2e = 9;
+ optional uint32 flags = 10;
+ optional fixed32 server_connection_id = 11;
+}
+
+message CMsgSteamDatagramConnectOK {
+ optional fixed32 client_connection_id = 1;
+ optional uint32 gameserver_relay_session_id = 2;
+ optional fixed64 your_timestamp = 3;
+ optional uint32 delay_time_usec = 4;
+ optional CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
+ optional CMsgSteamDatagramCertificateSigned cert = 6;
+ optional fixed32 server_connection_id = 7;
+}
+
+message CMsgSteamDatagramConnectRequest {
+ optional fixed32 connection_id = 1;
+ optional uint32 gameserver_relay_session_id = 2;
+ optional fixed64 legacy_client_steam_id = 3;
+ optional fixed64 my_timestamp = 4;
+ optional uint32 ping_est_ms = 5;
+ optional CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
+ optional CMsgSteamDatagramCertificateSigned cert = 7;
+ optional uint32 virtual_port = 9;
+ optional fixed64 routing_secret = 10;
+}
+
+message CMsgSteamDatagramDiagnostic {
+ optional uint32 severity = 1;
+ optional string text = 2;
+}
+
+message CMsgSteamDatagramGameserverPingReplyData {
+ optional fixed32 echo_relay_unix_time = 2;
+ optional fixed64 legacy_challenge = 3;
+ optional fixed32 legacy_router_timestamp = 4;
+ optional fixed32 data_center_id = 5;
+ optional uint32 appid = 6;
+ optional uint32 protocol_version = 7;
+ optional bytes echo = 8;
+ optional string build = 9;
+ optional uint64 network_config_version = 10;
+ optional fixed32 my_unix_time = 11;
+ optional bytes routing_blob = 12;
+}
+
+message CMsgSteamDatagramGameserverPingRequestBody {
+ optional fixed32 relay_popid = 1;
+ optional CMsgSteamNetworkingIPAddress your_public_ip = 2;
+ optional uint32 your_public_port = 3;
+ optional uint64 relay_unix_time = 4;
+ optional fixed64 routing_secret = 5;
+ repeated CMsgSteamNetworkingIPAddress my_ips = 6;
+ optional bytes echo = 8;
+}
+
+message CMsgSteamDatagramGameserverPingRequestEnvelope {
+ optional fixed32 legacy_your_public_ip = 1;
+ optional fixed32 legacy_relay_unix_time = 2;
+ optional fixed64 legacy_challenge = 3;
+ optional fixed32 legacy_router_timestamp = 4;
+ optional fixed32 legacy_your_public_port = 5;
+ optional CMsgSteamDatagramCertificateSigned cert = 6;
+ optional bytes signed_data = 7;
+ optional bytes signature = 8;
+ optional bytes dummy_pad = 1023;
+}
+
+message CMsgSteamDatagramGameserverSessionEstablished {
+ optional fixed32 connection_id = 1;
+ optional string gameserver_identity_string = 2;
+ optional fixed64 legacy_gameserver_steamid = 3;
+ optional uint32 seconds_until_shutdown = 4;
+ optional uint32 seq_num_r2c = 6;
+ optional bytes dummy_legacy_identity_binary = 7;
+}
+
+message CMsgSteamDatagramGameserverSessionRequest {
+ optional bytes ticket = 1;
+ optional fixed32 challenge_time = 3;
+ optional fixed64 challenge = 4;
+ optional fixed32 client_connection_id = 5;
+ optional uint64 network_config_version = 6;
+ optional uint32 protocol_version = 7;
+ optional fixed32 server_connection_id = 8;
+ optional string platform = 9;
+ optional string build = 10;
+ optional string dev_gameserver_identity = 100;
+ optional CMsgSteamDatagramCertificateSigned dev_client_cert = 101;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramLinkInstantaneousStats {
+ optional uint32 out_packets_per_sec_x10 = 1;
+ optional uint32 out_bytes_per_sec = 2;
+ optional uint32 in_packets_per_sec_x10 = 3;
+ optional uint32 in_bytes_per_sec = 4;
+ optional uint32 ping_ms = 5;
+ optional uint32 packets_dropped_pct = 6;
+ optional uint32 packets_weird_sequence_pct = 7;
+ optional uint32 peak_jitter_usec = 8;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramLinkLifetimeStats {
+ optional uint32 connected_seconds = 2;
+ optional uint64 packets_sent = 3;
+ optional uint64 kb_sent = 4;
+ optional uint64 packets_recv = 5;
+ optional uint64 kb_recv = 6;
+ optional uint64 packets_recv_sequenced = 7;
+ optional uint64 packets_recv_dropped = 8;
+ optional uint64 packets_recv_out_of_order = 9;
+ optional uint64 packets_recv_duplicate = 10;
+ optional uint64 packets_recv_lurch = 11;
+ repeated uint64 multipath_packets_recv_sequenced = 12;
+ repeated uint64 multipath_packets_recv_later = 13;
+ optional uint32 multipath_send_enabled = 14;
+ optional uint64 packets_recv_out_of_order_corrected = 15;
+ optional uint32 quality_histogram_100 = 21;
+ optional uint32 quality_histogram_99 = 22;
+ optional uint32 quality_histogram_97 = 23;
+ optional uint32 quality_histogram_95 = 24;
+ optional uint32 quality_histogram_90 = 25;
+ optional uint32 quality_histogram_75 = 26;
+ optional uint32 quality_histogram_50 = 27;
+ optional uint32 quality_histogram_1 = 28;
+ optional uint32 quality_histogram_dead = 29;
+ optional uint32 quality_ntile_2nd = 30;
+ optional uint32 quality_ntile_5th = 31;
+ optional uint32 quality_ntile_25th = 32;
+ optional uint32 quality_ntile_50th = 33;
+ optional uint32 ping_histogram_25 = 41;
+ optional uint32 ping_histogram_50 = 42;
+ optional uint32 ping_histogram_75 = 43;
+ optional uint32 ping_histogram_100 = 44;
+ optional uint32 ping_histogram_125 = 45;
+ optional uint32 ping_histogram_150 = 46;
+ optional uint32 ping_histogram_200 = 47;
+ optional uint32 ping_histogram_300 = 48;
+ optional uint32 ping_histogram_max = 49;
+ optional uint32 ping_ntile_5th = 50;
+ optional uint32 ping_ntile_50th = 51;
+ optional uint32 ping_ntile_75th = 52;
+ optional uint32 ping_ntile_95th = 53;
+ optional uint32 ping_ntile_98th = 54;
+ optional uint32 jitter_histogram_negligible = 61;
+ optional uint32 jitter_histogram_1 = 62;
+ optional uint32 jitter_histogram_2 = 63;
+ optional uint32 jitter_histogram_5 = 64;
+ optional uint32 jitter_histogram_10 = 65;
+ optional uint32 jitter_histogram_20 = 66;
+}
+
+message CMsgSteamDatagramNoConnection {
+ optional uint32 legacy_gameserver_relay_session_id = 2;
+ optional fixed64 legacy_from_steam_id = 3;
+ optional bool end_to_end = 4;
+ optional fixed32 to_connection_id = 5;
+ optional fixed32 from_connection_id = 6;
+ optional string from_identity_string = 7;
+ optional fixed32 to_relay_session_id = 9;
+ optional fixed32 from_relay_session_id = 10;
+ optional fixed64 routing_secret = 11;
+ optional bool not_primary_session = 12;
+ optional CMsgSteamDatagramConnectionQuality quality_relay = 13;
+ optional CMsgSteamDatagramConnectionQuality quality_e2e = 14;
+ optional bool not_primary_transport = 15;
+ optional CMsgSteamDatagramP2PRoutingSummary p2p_routing_summary = 16;
+ optional bool relay_override_active = 17;
+ optional fixed32 dummy_pad = 1023;
+}
+
+message CMsgSteamDatagramNoSessionRelayToClient {
+ optional fixed32 your_public_ip = 2;
+ optional fixed32 server_time = 3;
+ optional fixed64 challenge = 4;
+ optional uint32 seconds_until_shutdown = 5;
+ optional fixed32 your_public_port = 6;
+ optional fixed32 connection_id = 7;
+}
+
+message CMsgSteamDatagramNoSessionRelayToPeer {
+ optional uint32 legacy_relay_session_id = 1;
+ optional fixed32 from_relay_session_id = 2;
+ optional fixed32 from_connection_id = 7;
+ optional fixed64 kludge_pad = 99;
+}
+
+message CMsgSteamDatagramP2PBadRouteRouterToClient {
+ optional fixed32 connection_id = 1;
+ optional bytes failed_relay_routing_token = 2;
+ optional uint32 ack_forward_target_revision = 3;
+ optional fixed64 kludge_pad = 99;
+}
+
+message CMsgSteamDatagramP2PRoutes {
+ repeated CMsgSteamDatagramP2PRoutes_RelayCluster relay_clusters = 1;
+ repeated CMsgSteamDatagramP2PRoutes_Route routes = 2;
+ optional uint32 revision = 3;
}
// Used by: common.proto
-message CMsgControllerActionSetMiscSettings {
- optional string cursor_visible_action_set_key = 1;
- optional string cursor_hidden_action_set_key = 2;
+message CMsgSteamDatagramP2PRoutes_RelayCluster {
+ optional fixed32 pop_id = 1;
+ optional uint32 ping_ms = 2;
+ optional uint32 score_penalty = 3;
+ optional bytes session_relay_routing_token = 4;
}
-message CMsgControllerConfiguration {
- optional uint32 binding_handle = 1;
- optional string display_name = 2;
- optional string description = 3;
- optional string creator = 4;
- optional int32 controller_type = 5;
- optional int32 controller_style = 7;
- repeated CMsgGameActionSet sets = 8;
- repeated CMsgControllerMode modes = 9;
- optional string error_msg = 10;
- optional string action_block_path = 11;
- optional CMsgControllerActionSetMiscSettings misc_action_set_settings = 12;
- optional string url = 13;
+// Used by: common.proto
+message CMsgSteamDatagramP2PRoutes_Route {
+ optional fixed32 my_pop_id = 1;
+ optional fixed32 your_pop_id = 2;
+ optional uint32 legacy_score = 3;
+ optional uint32 interior_score = 4;
}
// Used by: common.proto
-message CMsgControllerInput {
- optional int32 key = 1 [(webui.description) = "enum"];
- repeated CMsgControllerInputActivator activators = 2;
- repeated CMsgControllerInputActivator disabled_activators = 3;
- optional bool inherited_from_parentset = 4;
+message CMsgSteamDatagramP2PRoutingSummary {
+ optional CMsgSteamNetworkingICESessionSummary ice = 2;
+ optional CMsgSteamNetworkingP2PSDRRoutingSummary sdr = 3;
+}
+
+message CMsgSteamDatagramP2PSessionEstablished {
+ optional fixed32 connection_id = 1;
+ optional uint32 seconds_until_shutdown = 3;
+ optional bytes relay_routing_token = 4;
+ optional uint32 seq_num_r2c = 5;
+}
+
+message CMsgSteamDatagramP2PSessionRequest {
+ optional CMsgSteamDatagramCertificateSigned cert = 1;
+ optional bytes body = 2;
+ optional bytes signature = 3;
+}
+
+message CMsgSteamDatagramP2PSessionRequestBody {
+ optional fixed32 challenge_time = 1;
+ optional fixed64 challenge = 2;
+ optional fixed32 client_connection_id = 3;
+ optional fixed64 legacy_peer_steam_id = 4;
+ optional fixed32 peer_connection_id = 5;
+ optional uint32 protocol_version = 8;
+ optional uint64 network_config_version = 9;
+ optional string peer_identity_string = 11;
+ optional string platform = 12;
+ optional string build = 13;
+ optional bytes encrypted_data = 14;
+ optional uint32 encryption_your_public_key_lead_byte = 15;
+ optional bytes encryption_my_ephemeral_public_key = 16;
+}
+
+message CMsgSteamDatagramP2PSessionRequestBody_EncryptedData {
+ optional string peer_identity_string = 1;
+}
+
+message CMsgSteamDatagramRouterPingReply {
+ optional fixed32 client_timestamp = 1;
+ repeated fixed32 latency_datacenter_ids = 2;
+ repeated uint32 latency_ping_ms = 3;
+ optional fixed32 your_public_ip = 4;
+ optional fixed32 server_time = 5;
+ optional fixed64 challenge = 6;
+ optional uint32 seconds_until_shutdown = 7;
+ optional fixed32 client_cookie = 8;
+ optional uint32 scoring_penalty_relay_cluster = 9;
+ repeated CMsgSteamDatagramRouterPingReply_RouteException route_exceptions = 10;
+ optional fixed32 your_public_port = 11;
+ optional uint32 flags = 12;
+ repeated CMsgSteamDatagramRouterPingReply_AltAddress alt_addresses = 13;
+ repeated fixed32 latency_datacenter_ids_p2p = 14;
+ repeated uint32 latency_ping_ms_p2p = 15;
+ optional uint32 recv_tos = 16;
+ optional uint32 echo_sent_tos = 17;
+ optional uint32 sent_tos = 18;
+ optional uint32 echo_request_reply_tos = 19;
+ optional bytes dummy_pad = 99;
+ optional uint64 dummy_varint = 100;
+}
+
+// Used by: common.proto
+message CMsgSteamDatagramRouterPingReply_AltAddress {
+ optional fixed32 ipv4 = 1;
+ optional uint32 port = 2;
+ optional uint32 penalty = 3;
+ optional int32 protocol = 4 [default = 0, (webui.description) = "enum"];
+ optional string id = 5;
}
// Used by: common.proto
-message CMsgControllerInputActivator {
- optional int32 activation = 1 [(webui.description) = "enum"];
- repeated CMsgControllerInputBinding bindings = 2;
- repeated CMsgControllerSetting settings = 3;
+message CMsgSteamDatagramRouterPingReply_RouteException {
+ optional fixed32 data_center_id = 1;
+ optional uint32 flags = 2;
+ optional uint32 penalty = 3;
+}
+
+message CMsgSteamDatagramSessionCryptInfo {
+ optional int32 key_type = 1 [(webui.description) = "enum"];
+ optional bytes key_data = 2;
+ optional fixed64 nonce = 3;
+ optional uint32 protocol_version = 4;
+ repeated int32 ciphers = 5 [(webui.description) = "enum"];
}
// Used by: common.proto
-message CMsgControllerInputBinding {
- optional int32 type = 1;
- optional CMsgControllerInputBinding_KeyBindingData key_binding_data = 2;
- optional CMsgControllerInputKeyBinding keyboard_key = 3;
- optional CMsgControllerInputMouseButtonBinding mouse_button = 4;
- optional CMsgControllerInputGamepadButtonBinding gamepad_button = 5;
- optional CMsgControllerInputMouseWheelBinding mouse_wheel = 6;
- optional CMsgControllerInputModeShiftBinding mode_shift = 7;
- optional CMsgControllerInputGameActionBinding game_action = 8;
- optional CMsgControllerInputControllerActionBinding controller_action = 9;
+message CMsgSteamDatagramSessionCryptInfoSigned {
+ optional bytes info = 1;
+ optional bytes signature = 2;
+}
+
+message CMsgSteamDatagramSetSecondaryAddressRequest {
+ optional fixed32 client_main_ip = 1;
+ optional fixed32 client_main_port = 2;
+ optional fixed32 client_connection_id = 3;
+ optional string client_identity = 4;
+ optional bool request_send_duplication = 5;
+ optional bytes kludge_pad = 99;
+}
+
+message CMsgSteamDatagramSetSecondaryAddressResult {
+ optional bool success = 1;
+ optional string message = 2;
+}
+
+message CMsgSteamDatagramSignedMessageGeneric {
+ optional CMsgSteamDatagramCertificateSigned cert = 1;
+ optional bytes signed_data = 2;
+ optional bytes signature = 3;
+ optional bytes dummy_pad = 1023;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingICESessionSummary {
+ optional uint32 local_candidate_types = 1;
+ optional uint32 remote_candidate_types = 2;
+ optional uint32 initial_route_kind = 3;
+ optional uint32 initial_ping = 4;
+ optional uint32 negotiation_ms = 5;
+ optional uint32 initial_score = 6;
+ optional uint32 failure_reason_code = 7;
+ optional uint32 selected_seconds = 12;
+ optional uint32 user_settings = 13;
+ optional uint32 ice_enable_var = 14;
+ optional uint32 local_candidate_types_allowed = 15;
+ optional uint32 best_route_kind = 16;
+ optional uint32 best_ping = 17;
+ optional uint32 best_score = 18;
+ optional uint32 best_time = 19;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingIdentityLegacyBinary {
+ optional bytes generic_bytes = 2;
+ optional string generic_string = 3;
+ optional bytes ipv6_and_port = 4;
+ optional fixed64 steam_id = 16;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingIPAddress {
+ optional fixed32 v4 = 1;
+ optional bytes v6 = 2;
+}
+
+message CMsgSteamNetworkingP2PRendezvous {
+ optional fixed32 to_connection_id = 1;
+ optional bytes sdr_routes = 2;
+ optional uint32 ack_peer_routes_revision = 3;
+ optional CMsgSteamNetworkingP2PRendezvous_ConnectRequest connect_request = 4;
+ optional CMsgSteamNetworkingP2PRendezvous_ConnectOK connect_ok = 5;
+ optional CMsgSteamNetworkingP2PRendezvous_ConnectionClosed connection_closed = 6;
+ optional bool ice_enabled = 7;
+ optional string from_identity = 8;
+ optional fixed32 from_connection_id = 9;
+ optional string to_identity = 10;
+ optional uint32 ack_reliable_msg = 11;
+ optional uint32 first_reliable_msg = 12;
+ repeated CMsgSteamNetworkingP2PRendezvous_ReliableMessage reliable_messages = 13;
+ optional bytes hosted_server_ticket = 14;
+ repeated CMsgSteamNetworkingP2PRendezvous_ApplicationMessage application_messages = 15;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PRendezvous_ApplicationMessage {
+ optional bytes data = 1;
+ optional uint64 msg_num = 2;
+ optional uint32 flags = 3;
+ optional uint32 lane_idx = 4;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PRendezvous_ConnectionClosed {
+ optional string debug = 5;
+ optional uint32 reason_code = 6;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PRendezvous_ConnectOK {
+ optional CMsgSteamDatagramSessionCryptInfoSigned crypt = 5;
+ optional CMsgSteamDatagramCertificateSigned cert = 6;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PRendezvous_ConnectRequest {
+ optional CMsgSteamDatagramSessionCryptInfoSigned crypt = 6;
+ optional CMsgSteamDatagramCertificateSigned cert = 7;
+ optional uint32 to_virtual_port = 9;
+ optional uint32 from_virtual_port = 10;
+ optional string from_fakeip = 11;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PRendezvous_ReliableMessage {
+ optional CMsgICERendezvous ice = 1;
+}
+
+// Used by: common.proto
+message CMsgSteamNetworkingP2PSDRRoutingSummary {
+ optional uint32 initial_ping = 1;
+ optional uint32 initial_ping_front_local = 2;
+ optional uint32 initial_ping_front_remote = 3;
+ optional uint32 initial_score = 4;
+ optional fixed32 initial_pop_local = 5;
+ optional fixed32 initial_pop_remote = 6;
+ optional uint32 negotiation_ms = 7;
+ optional uint32 selected_seconds = 8;
+ optional uint32 best_ping = 11;
+ optional uint32 best_ping_front_local = 12;
+ optional uint32 best_ping_front_remote = 13;
+ optional uint32 best_score = 14;
+ optional fixed32 best_pop_local = 15;
+ optional fixed32 best_pop_remote = 16;
+ optional uint32 best_time = 17;
+}
+
+message CMsgStorageDevicesData {
+ repeated CMsgStorageDevicesData_Drive drives = 1;
+ repeated CMsgStorageDevicesData_BlockDevice block_devices = 2;
+ optional bool is_unmount_supported = 3;
+ optional bool is_trim_supported = 4;
+ optional bool is_trim_running = 5;
+}
+
+// Used by: common.proto
+message CMsgStorageDevicesData_BlockDevice {
+ optional uint32 id = 1 [default = 0];
+ optional uint32 drive_id = 2 [default = 0];
+ optional string path = 3;
+ optional string friendly_path = 4;
+ optional string label = 5;
+ optional uint64 size_bytes = 6;
+ optional bool is_formattable = 7;
+ optional bool is_read_only = 8;
+ optional bool is_root_device = 9;
+ optional int32 content_type = 10 [(webui.description) = "enum"];
+ optional int32 filesystem_type = 11 [(webui.description) = "enum"];
+ optional string mount_path = 12;
+}
+
+// Used by: common.proto
+message CMsgStorageDevicesData_Drive {
+ optional uint32 id = 1 [default = 0];
+ optional string model = 2;
+ optional string vendor = 3;
+ optional string serial = 4;
+ optional bool is_ejectable = 5;
+ optional uint64 size_bytes = 6;
+ optional int32 media_type = 7 [(webui.description) = "enum"];
+}
+
+message CMsgSwapControllerSourceModes {
+ optional string action_set_key_a = 1;
+ optional string action_set_layer_key_a = 2;
+ optional int32 source_a = 3 [(webui.description) = "enum"];
+ optional string action_set_key_b = 4;
+ optional string action_set_layer_key_b = 5;
+ optional int32 source_b = 6 [(webui.description) = "enum"];
+}
+
+message CMsgSwapModeInputBindings {
+ optional string action_set_key = 1;
+ optional string action_set_layer_key = 2;
+ optional int32 source_binding_key = 3 [(webui.description) = "enum"];
+ optional bool mode_shift = 4;
+ optional int32 modeid = 5;
+ repeated CMsgSwapModeInputBindings_CModeInputSwap swaps = 6;
+}
+
+// Used by: common.proto
+message CMsgSwapModeInputBindings_CModeInputSwap {
+ optional int32 old_key = 1 [(webui.description) = "enum"];
+ optional int32 new_key = 2 [(webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CMsgSystemAudioManagerDevice {
+ optional CMsgSystemAudioManagerObject base = 1;
+ optional string name = 2;
+ optional string nick = 3;
+ optional string description = 4;
+ optional string api = 5;
+}
+
+// Used by: common.proto
+message CMsgSystemAudioManagerLink {
+ optional CMsgSystemAudioManagerObject base = 1;
+ optional uint32 output_node_id = 2;
+ optional uint32 output_port_id = 3;
+ optional uint32 input_node_id = 4;
+ optional uint32 input_port_id = 5;
+}
+
+// Used by: common.proto
+message CMsgSystemAudioManagerNode {
+ optional CMsgSystemAudioManagerObject base = 1;
+ optional uint32 device_id = 2;
+ optional string name = 3;
+ optional string nick = 4;
+ optional string description = 5;
+ optional int32 edirection = 6 [(webui.description) = "enum"];
+ optional CMsgSystemAudioVolume volume = 7;
+}
+
+// Used by: common.proto
+message CMsgSystemAudioManagerObject {
+ optional uint32 id = 1;
+ optional fixed32 rtime_last_update = 2;
+}
+
+// Used by: common.proto
+message CMsgSystemAudioManagerPort {
+ optional CMsgSystemAudioManagerObject base = 1;
+ optional uint32 node_id = 3;
+ optional string name = 4;
+ optional string alias = 5;
+ optional int32 etype = 6 [(webui.description) = "enum"];
+ optional int32 edirection = 7 [(webui.description) = "enum"];
+ optional bool is_physical = 8;
+ optional bool is_terminal = 9;
+ optional bool is_control = 10;
+ optional bool is_monitor = 11;
}
-// Used by: common.proto
-message CMsgControllerInputBinding_IconBindingData {
- optional string icon_filename = 1;
- optional string color_foreground = 2;
- optional string color_background = 3;
- optional string icon_url = 4;
+message CMsgSystemAudioManagerState {
+ optional fixed32 rtime_filter = 1;
+ optional int32 counter = 2;
+ optional CMsgSystemAudioManagerStateHW hw = 3;
}
// Used by: common.proto
-message CMsgControllerInputBinding_KeyBindingData {
- optional string keys_bound_utf8 = 1;
- optional string friendly_name_utf8 = 2;
- optional CMsgControllerInputBinding_IconBindingData icon_data = 3;
+message CMsgSystemAudioManagerStateHW {
+ repeated CMsgSystemAudioManagerDevice devices = 1;
+ repeated CMsgSystemAudioManagerNode nodes = 2;
+ repeated CMsgSystemAudioManagerPort ports = 3;
+ repeated CMsgSystemAudioManagerLink links = 4;
}
-// Used by: common.proto
-message CMsgControllerInputControllerActionBinding {
- optional int32 action = 1 [(webui.description) = "enum"];
- optional CMsgControllerInputControllerActionMouseBinding mouse = 2;
- optional CMsgControllerInputControllerActionCameraHorizonReset camera_horizon_reset = 3;
- optional CMsgControllerInputControllerActionDotsPer360CalibrationSpin dots_per_360_calibration_spin = 4;
- optional CMsgControllerInputControllerActionTurnToFaceDirection turn_to_face_direction = 5;
- optional CMsgControllerInputControllerActionGameActionSetBinding action_set = 6;
- optional CMsgControllerInputControllerActionLEDColorBinding led_color = 7;
- optional CMsgControllerInputControllerActionChangePlayerNumberBinding change_player_number = 8;
+message CMsgSystemAudioManagerUpdateSomething {
+ optional int32 counter = 1;
}
// Used by: common.proto
-message CMsgControllerInputControllerActionCameraHorizonReset {
- optional int32 camera_dip_angle = 1;
- optional int32 delay_duration = 2;
- optional int32 camera_horizon_reset_angle = 3;
+message CMsgSystemAudioVolume {
+ repeated CMsgSystemAudioVolume_ChannelEntry entries = 1;
+ optional bool is_muted = 2;
}
// Used by: common.proto
-message CMsgControllerInputControllerActionChangePlayerNumberBinding {
- optional int32 player_number = 1;
+message CMsgSystemAudioVolume_ChannelEntry {
+ optional int32 echannel = 1 [(webui.description) = "enum"];
+ optional float volume = 2;
}
// Used by: common.proto
-message CMsgControllerInputControllerActionDotsPer360CalibrationSpin {
- optional int32 spin_by_amount = 1;
- optional int32 spin_duration = 2;
+message CMsgSystemDisplay {
+ optional int32 id = 1;
+ optional string name = 2;
+ optional string description = 3;
+ optional bool is_primary = 4;
+ optional bool is_enabled = 5;
+ optional bool is_internal = 6;
+ optional bool has_mode_override = 7;
+ optional int32 width_mm = 8;
+ optional int32 height_mm = 9;
+ optional int32 current_mode_id = 10;
+ repeated CMsgSystemDisplayMode modes = 11;
+ optional int32 refresh_rate_min = 12;
+ optional int32 refresh_rate_max = 13;
+ optional bool is_vrr_capable = 14;
+ optional bool is_vrr_output_active = 15;
+ optional bool is_hdr_capable = 16;
+ optional bool is_hdr_output_active = 17;
+ repeated int32 supported_refresh_rates = 18;
+ optional int32 rgb_range = 19 [(webui.description) = "enum"];
}
// Used by: common.proto
-message CMsgControllerInputControllerActionGameActionSetBinding {
- optional int32 preset_type = 1 [(webui.description) = "enum"];
- optional string action_set_key = 2;
- optional bool display = 3;
- optional bool beep = 4;
+message CMsgSystemDisplayManagerGameResolution {
+ optional uint32 width = 1;
+ optional uint32 height = 2;
}
-// Used by: common.proto
-message CMsgControllerInputControllerActionLEDColorBinding {
- optional int32 setting = 1 [(webui.description) = "enum"];
- optional int32 brightness = 2;
- optional int32 saturation = 3;
- optional int32 color_r = 4;
- optional int32 color_g = 5;
- optional int32 color_b = 6;
+message CMsgSystemDisplayManagerSetMode {
+ optional int32 display_id = 1;
+ optional int32 mode_id = 2;
+ optional int32 rgb_range = 3 [(webui.description) = "enum"];
}
-// Used by: common.proto
-message CMsgControllerInputControllerActionMouseBinding {
- optional sint32 x = 1;
- optional sint32 y = 2;
- optional bool restore = 3;
+message CMsgSystemDisplayManagerState {
+ repeated CMsgSystemDisplay displays = 1;
+ optional bool is_mode_switching_supported = 2;
+ optional int32 compatibility_mode = 3 [(webui.description) = "enum"];
+ optional CMsgSystemDisplayManagerGameResolution game_resolution_override_native = 4;
+ optional CMsgSystemDisplayManagerGameResolution game_resolution_override_default = 5;
}
// Used by: common.proto
-message CMsgControllerInputControllerActionTurnToFaceDirection {
- optional int32 source_of_direction = 1;
- optional int32 turn_duration = 2;
- optional bool use_last_direction_if_deadzoned = 3;
+message CMsgSystemDisplayMode {
+ optional int32 id = 1;
+ optional int32 width = 2;
+ optional int32 height = 3;
+ optional int32 refresh_hz = 4;
}
-// Used by: common.proto
-message CMsgControllerInputGameActionBinding {
- optional string action_set_key = 1;
- optional string action_key = 2;
+message CMsgSystemDockState {
+ optional CMsgSystemDockUpdateState update_state = 1;
}
-// Used by: common.proto
-message CMsgControllerInputGamepadButtonBinding {
- optional int32 button = 1 [(webui.description) = "enum"];
+message CMsgSystemDockUpdateFirmware {
+ optional bool check_only = 1;
}
// Used by: common.proto
-message CMsgControllerInputKeyBinding {
- optional int32 key = 1 [(webui.description) = "enum"];
+message CMsgSystemDockUpdateState {
+ optional int32 state = 1 [(webui.description) = "enum"];
+ optional fixed32 rtime_last_checked = 2;
+ optional string version_current = 3;
+ optional string version_available = 4;
+ optional float stage_progress = 5;
+ optional fixed32 rtime_estimated_completion = 6;
+ optional int32 old_fw_workaround = 7;
}
-// Used by: common.proto
-message CMsgControllerInputModeShiftBinding {
- optional int32 source = 1 [(webui.description) = "enum"];
+message CMsgSystemManagerSettings {
+ optional float idle_backlight_dim_battery_seconds = 1;
+ optional float idle_backlight_dim_ac_seconds = 2;
+ optional bool is_adaptive_brightness_available = 6;
+ optional bool display_adaptive_brightness_enabled = 7;
+ optional bool display_nightmode_enabled = 10;
+ optional float display_nightmode_tintstrength = 11;
+ optional float display_nightmode_maxhue = 12;
+ optional float display_nightmode_maxsat = 13;
+ optional float display_nightmode_uiexp = 14;
+ optional float display_nightmode_blend = 15;
+ optional bool display_nightmode_reset = 16;
+ optional bool display_nightmode_schedule_enabled = 17;
+ optional float display_nightmode_schedule_starttime = 18;
+ optional float display_nightmode_schedule_endtime = 19;
+ optional bool display_diagnostics_enabled = 20;
+ optional float als_lux_primary = 21;
+ optional float als_lux_median = 22;
+ optional float display_backlight_raw = 23;
+ optional float display_brightness_adaptivemin = 24;
+ optional float display_brightness_adaptivemax = 25;
+ optional bool is_fan_control_available = 27;
+ optional int32 fan_control_mode = 28 [(webui.description) = "enum"];
+ optional bool is_display_brightness_available = 29;
+ optional bool is_display_colormanagement_available = 31;
+ optional float display_colorgamut = 32;
+ optional float als_lux_alternate = 33;
+ optional bool is_display_colortemp_available = 34;
+ optional float display_colortemp = 35;
+ optional float display_colortemp_default = 36;
+ optional bool display_colortemp_enabled = 37;
+ optional int32 display_colorgamut_labelset = 38 [(webui.description) = "enum"];
+ optional float display_brightness_overdrive_hdr_split = 39;
}
// Used by: common.proto
-message CMsgControllerInputMouseButtonBinding {
- optional int32 button = 1 [(webui.description) = "enum"];
+message CMsgSystemPerfDiagnosticEntry {
+ optional string name = 1;
+ optional string value = 2;
}
-// Used by: common.proto
-message CMsgControllerInputMouseWheelBinding {
- optional int32 button = 1 [(webui.description) = "enum"];
+message CMsgSystemPerfDiagnosticInfo {
+ repeated CMsgSystemPerfDiagnosticEntry entries = 1;
+ repeated CMsgSystemPerfNetworkInterface interfaces = 2;
+ optional float battery_temp_c = 3;
}
// Used by: common.proto
-message CMsgControllerMode {
- optional int32 mode = 1 [(webui.description) = "enum"];
- optional uint32 modeid = 2;
- optional string description = 3;
- repeated CMsgControllerInput inputs = 4;
- repeated CMsgControllerSetting settings = 5;
- optional string friendlyname = 6;
- optional int32 source = 7 [(webui.description) = "enum"];
- optional CMsgControllerVirtualMenuPreviewInfo virtual_menu_info = 8;
- optional bool mode_shift = 9;
- optional uint32 reference_modeid = 10;
- repeated int32 mode_shift_buttons = 11 [(webui.description) = "enum"];
+message CMsgSystemPerfLegacySettingEntry {
+ optional uint64 profile_game_id = 1;
+ optional CMsgSystemPerfSettingsPerApp settings = 2;
}
-// Used by: common.proto
-message CMsgControllerSetting {
- optional int32 key = 1 [(webui.description) = "enum"];
- optional sint32 int_value = 2;
- optional sint32 int_min = 3;
- optional sint32 int_max = 4;
- optional sint32 int_default = 5;
- optional CMsgControllerSetting parentset_setting = 6;
- optional sint64 long_value = 7;
+message CMsgSystemPerfLegacySettings {
+ optional CMsgSystemPerfSettingsGlobal global = 1;
+ repeated CMsgSystemPerfLegacySettingEntry per_app_settings = 2;
}
// Used by: common.proto
-message CMsgControllerSourceGroup {
- optional int32 mode = 1 [(webui.description) = "enum"];
- optional CMsgControllerInputGameActionBinding game_action = 2;
- repeated CMsgControllerInput inputs = 3;
- repeated CMsgControllerSetting settings = 4;
- optional uint32 modeid = 5;
- optional bool mode_shift = 6;
- optional CMsgControllerSourceGroup mode_shift_source_group = 7;
+message CMsgSystemPerfLimits {
+ optional int32 cpu_governor_manual_min_mhz = 1;
+ optional int32 cpu_governor_manual_max_mhz = 2;
+ optional int32 fsr_sharpness_min = 3;
+ optional int32 fsr_sharpness_max = 4;
+ optional bool perf_overlay_is_standalone = 7;
+ optional bool is_manual_display_refresh_rate_available = 9;
+ optional int32 display_refresh_manual_hz_min = 11;
+ optional int32 display_refresh_manual_hz_max = 12;
+ repeated int32 fps_limit_options = 13;
+ optional int32 tdp_limit_min = 14;
+ optional int32 tdp_limit_max = 15;
+ optional int32 display_external_refresh_manual_hz_min = 19;
+ optional int32 display_external_refresh_manual_hz_max = 20;
+ repeated int32 fps_limit_options_external = 21;
+ optional bool is_vrr_supported = 23;
+ optional bool is_dynamic_refresh_rate_in_steam_supported = 24;
+ repeated int32 split_scaling_filters_available = 26 [(webui.description) = "enum"];
+ repeated int32 split_scaling_scalers_available = 27 [(webui.description) = "enum"];
+ optional bool disable_refresh_rate_management = 30;
}
// Used by: common.proto
-message CMsgControllerSources {
- optional int32 key = 1 [(webui.description) = "enum"];
- optional CMsgControllerSourceGroup active_group = 2;
+message CMsgSystemPerfNetworkInterface {
+ optional string name = 1;
+ optional double timestamp = 2;
+ optional int64 tx_bytes_total = 3;
+ optional int64 rx_bytes_total = 4;
+ optional int32 tx_bytes_per_sec = 5;
+ optional int32 rx_bytes_per_sec = 6;
}
// Used by: common.proto
-message CMsgControllerVirtualMenuPreviewInfo {
- optional int32 source = 1 [(webui.description) = "enum"];
- optional float x_pos = 2;
- optional float y_pos = 3;
- optional float opacity = 4;
- optional float scale = 5;
- optional bool show_labels = 6;
- optional uint32 menu_style = 7;
- optional bool force_on = 8;
- repeated CVirtualMenuKey keys = 9;
+message CMsgSystemPerfSettings {
+ optional CMsgSystemPerfSettingsGlobal global = 1;
+ optional CMsgSystemPerfSettingsPerApp per_app = 2;
}
-message CMsgCREGetUserPublishedItemVoteDetails {
- repeated CMsgCREGetUserPublishedItemVoteDetails_PublishedFileId published_file_ids = 1;
+// Used by: common.proto
+message CMsgSystemPerfSettingsGlobal {
+ optional float diagnostic_update_rate = 1;
+ optional int32 graphics_profiling_service_state = 3 [(webui.description) = "enum"];
+ optional int32 perf_overlay_service_state = 4 [(webui.description) = "enum"];
+ optional int32 perf_overlay_level = 5 [(webui.description) = "enum"];
+ optional bool is_show_perf_overlay_over_steam_enabled = 6;
+ optional bool is_advanced_settings_enabled = 7;
+ optional bool allow_external_display_refresh_control = 8;
+ optional int32 hdr_on_sdr_tonemap_operator = 12 [(webui.description) = "enum"];
+ optional bool is_hdr_debug_heatmap_enabled = 13;
+ optional bool force_hdr_wide_gammut_for_sdr = 15 [default = true];
+ optional bool is_color_management_enabled = 21;
+ optional float sdr_to_hdr_brightness = 22;
}
// Used by: common.proto
-message CMsgCREGetUserPublishedItemVoteDetails_PublishedFileId {
- optional fixed64 published_file_id = 1;
-}
-
-message CMsgCREGetUserPublishedItemVoteDetailsResponse {
- optional int32 eresult = 1 [default = 2];
- repeated CMsgCREGetUserPublishedItemVoteDetailsResponse_UserItemVoteDetail user_item_vote_details = 2;
+message CMsgSystemPerfSettingsPerApp {
+ optional int32 fps_limit = 2;
+ optional bool is_variable_resolution_enabled = 3;
+ optional bool is_dynamic_refresh_rate_enabled = 4;
+ optional int32 tdp_limit = 5;
+ optional int32 cpu_governor = 6 [(webui.description) = "enum"];
+ optional int32 cpu_governor_manual_mhz = 7;
+ optional int32 scaling_filter = 8;
+ optional int32 fsr_sharpness = 9;
+ optional bool is_fps_limit_enabled = 10;
+ optional bool is_tdp_limit_enabled = 11;
+ optional bool is_low_latency_mode_enabled = 12;
+ optional int32 display_refresh_manual_hz = 13;
+ optional bool is_game_perf_profile_enabled = 14;
+ optional int32 display_external_refresh_manual_hz = 17;
+ optional int32 fps_limit_external = 18;
+ optional bool is_tearing_enabled = 19;
+ optional bool is_vrr_enabled = 20;
+ optional bool use_dynamic_refresh_rate_in_steam = 23;
+ optional int32 split_scaling_filter = 24 [(webui.description) = "enum"];
+ optional int32 split_scaling_scaler = 25 [(webui.description) = "enum"];
}
-// Used by: common.proto
-message CMsgCREGetUserPublishedItemVoteDetailsResponse_UserItemVoteDetail {
- optional fixed64 published_file_id = 1;
- optional int32 vote = 2 [default = 0];
+message CMsgSystemPerfSettingsV1 {
+ optional float diagnostic_update_rate = 1;
+ optional int32 system_trace_service_state = 2 [(webui.description) = "enum"];
+ optional int32 graphics_profiling_service_state = 3 [(webui.description) = "enum"];
+ optional int32 perf_overlay_service_state = 4 [(webui.description) = "enum"];
+ optional int32 perf_overlay_level = 5 [(webui.description) = "enum"];
+ optional int32 gpu_performance_level = 6 [(webui.description) = "enum"];
+ optional int32 gpu_performance_manual_mhz = 7;
+ optional int32 fps_limit = 8;
+ optional bool is_variable_resolution_enabled = 9;
+ optional bool is_dynamic_refresh_rate_enabled = 10;
+ optional int32 tdp_limit = 11;
+ optional int32 cpu_governor = 12 [(webui.description) = "enum"];
+ optional int32 cpu_governor_manual_mhz = 13;
+ optional int32 scaling_filter = 14;
+ optional int32 fsr_sharpness = 15;
+ optional bool is_fps_limit_enabled = 16;
+ optional bool is_tdp_limit_enabled = 17;
+ optional bool is_show_perf_overlay_over_steam_enabled = 18;
+ optional bool is_low_latency_mode_enabled = 19;
+ optional int32 display_refresh_manual_hz = 20;
+ optional bool is_game_perf_profile_enabled = 21;
}
-message CMsgCREUpdateUserPublishedItemVote {
- optional fixed64 published_file_id = 1;
- optional bool vote_up = 2;
+message CMsgSystemPerfState {
+ optional CMsgSystemPerfLimits limits = 1;
+ optional CMsgSystemPerfSettings settings = 2;
+ optional uint64 current_game_id = 3;
+ optional uint64 active_profile_game_id = 4;
}
-message CMsgCREUpdateUserPublishedItemVoteResponse {
- optional int32 eresult = 1 [default = 2];
+message CMsgSystemPerfUpdateSettings {
+ optional uint64 gameid = 1;
+ optional bool reset_to_default = 2;
+ optional CMsgSystemPerfSettings settings_delta = 3;
+ optional bool skip_storage_update = 4;
}
-// Used by: common.proto
-message CMsgGameAction {
- optional string key = 1;
- optional string display_name = 2;
- repeated int32 modes = 3 [(webui.description) = "enum"];
+message CMsgSystemUpdateApplyParams {
+ repeated int32 apply_types = 1 [(webui.description) = "enum"];
+ repeated int32 recheck_types = 2 [(webui.description) = "enum"];
}
// Used by: common.proto
-message CMsgGameActionBindingType {
- optional int32 key = 1 [(webui.description) = "enum"];
- repeated CMsgGameAction actions = 2;
+message CMsgSystemUpdateApplyResult {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional uint32 eresult = 2 [default = 2];
+ optional bool requires_client_restart = 3 [default = false];
+ optional bool requires_system_restart = 4 [default = false];
}
// Used by: common.proto
-message CMsgGameActionSet {
- optional string key = 1;
- optional string display_name = 2;
- optional bool legacy_set = 3;
- repeated CMsgGameActionSet layers = 4;
- repeated CMsgGameActionBindingType action_binding_types = 5;
- repeated CMsgControllerSources source_bindings = 6;
+message CMsgSystemUpdateCheckResult {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional uint32 eresult = 2 [default = 2];
+ optional fixed32 rtime_checked = 3;
+ optional bool available = 4;
+ optional string version = 5;
+ optional string auto_message = 6;
+ optional bool system_restart_pending = 7;
}
// Used by: common.proto
-message CMsgGCRoutingProtoBufHeader {
- optional uint64 dst_gcid_queue = 1;
- optional uint32 dst_gc_dir_index = 2;
+message CMsgSystemUpdateProgress {
+ optional float total_progress = 1;
+ optional int64 stage_size_bytes = 2;
+ optional fixed32 rtime_estimated_completion = 3;
+ optional int64 stage_bytes_downloaded = 4;
}
-message CMsgGenerateSystemReportReply {
- optional string report_id = 1;
+message CMsgSystemUpdateState {
+ optional int32 state = 1 [(webui.description) = "enum"];
+ optional CMsgSystemUpdateProgress progress = 2;
+ repeated CMsgSystemUpdateCheckResult update_check_results = 3;
+ repeated CMsgSystemUpdateApplyResult update_apply_results = 4;
+ optional bool supports_os_updates = 5;
}
// Used by: common.proto
-message CMsgHotkey {
- optional uint32 key_code = 1;
- optional bool alt_key = 2;
- optional bool shift_key = 3;
- optional bool ctrl_key = 4;
- optional bool meta_key = 5;
- optional string display_name = 6;
+message CMsgTOSTreatment {
+ optional string l4s_detect = 1;
+ optional string up_ecn1 = 2;
+ optional string down_dscp45 = 3;
}
-// Used by: Authentication, AuthenticationSupport, Community, common.proto
-message CMsgIPAddress {
- optional fixed32 v4 = 1;
- optional bytes v6 = 2;
+message CMsgTrading_CancelTradeRequest {
+ optional uint64 other_steamid = 1;
}
-message CMsgMonitorInfo {
- optional string selected_device_name = 1;
- repeated CMsgMonitorInfo_MonitorInfo monitors = 2;
+message CMsgTrading_InitiateTradeRequest {
+ optional uint32 trade_request_id = 1;
+ optional uint64 other_steamid = 2;
+ optional string other_name = 3;
}
-// Used by: common.proto
-message CMsgMonitorInfo_MonitorInfo {
- optional string monitor_device_name = 1;
- optional string monitor_display_name = 2;
+message CMsgTrading_InitiateTradeResponse {
+ optional uint32 response = 1;
+ optional uint32 trade_request_id = 2;
+ optional uint64 other_steamid = 3;
+ optional uint32 steamguard_required_days = 4;
+ optional uint32 new_device_cooldown_days = 5;
+ optional uint32 default_password_reset_probation_days = 6;
+ optional uint32 password_reset_probation_days = 7;
+ optional uint32 default_email_change_probation_days = 8;
+ optional uint32 email_change_probation_days = 9;
}
-message CMsgMulti {
- optional uint32 size_unzipped = 1;
- optional bytes message_body = 2;
+message CMsgTrading_StartSession {
+ optional uint64 other_steamid = 1;
}
-message CMsgNetworkDeviceConnect {
- optional uint32 device_id = 1 [default = 0];
- optional CMsgNetworkDeviceConnect_KnownAP ap_known = 2;
- optional CMsgNetworkDeviceConnect_CustomAP ap_custom = 3;
- optional CMsgNetworkDeviceConnect_Credentials credentials = 4;
- optional CMsgNetworkDeviceIP4Config ip4 = 5;
- optional CMsgNetworkDeviceIP6Config ip6 = 6;
- optional CMsgNetworkDeviceConnect_Wireless wireless = 7;
+message CMsgWebUITransportFailure {
+ optional uint32 connect_count = 1;
}
-// Used by: common.proto
-message CMsgNetworkDeviceConnect_Credentials {
- optional string username = 1;
- optional string password = 2;
+message CMsgWebUITransportInfo {
+ optional uint32 port = 1;
+ optional string auth_key = 2;
}
// Used by: common.proto
-message CMsgNetworkDeviceConnect_CustomAP {
- optional string ssid = 1;
- optional int32 esecurity = 2;
+message CNegotiatedConfig {
+ optional bool reliable_data = 1;
+ optional int32 selected_audio_codec = 2 [(webui.description) = "enum"];
+ optional int32 selected_video_codec = 3 [(webui.description) = "enum"];
+ repeated CStreamVideoMode available_video_modes_OBSOLETE = 4;
+ optional bool enable_remote_hid = 5;
+ optional bool enable_touch_input = 6;
+ optional bool disable_client_cursor = 7;
}
-// Used by: common.proto
-message CMsgNetworkDeviceConnect_KnownAP {
- optional uint32 ap_id = 1;
+message CNegotiationCompleteMsg {
}
-// Used by: common.proto
-message CMsgNetworkDeviceConnect_Wireless {
- optional string band_filter = 1;
+message CNegotiationInitMsg {
+ optional bool reliable_data = 1;
+ repeated int32 supported_audio_codecs = 2 [(webui.description) = "enum"];
+ repeated int32 supported_video_codecs = 3 [(webui.description) = "enum"];
+ optional bool supports_remote_hid = 4;
+ optional bool supports_touch_input = 5;
+ optional int32 os_type = 6;
+ optional int32 gaming_device_type = 7;
}
-// Used by: common.proto
-message CMsgNetworkDeviceIP4Address {
- optional int32 ip = 1 [default = 0];
- optional int32 netmask = 2;
+message CNegotiationSetConfigMsg {
+ optional CNegotiatedConfig config = 1;
+ optional CStreamingClientConfig streaming_client_config = 2;
+ optional CStreamingClientCaps streaming_client_caps = 3;
}
-// Used by: common.proto
-message CMsgNetworkDeviceIP4Config {
- repeated CMsgNetworkDeviceIP4Address addresses = 1;
- repeated int32 dns_ip = 2;
- optional int32 gateway_ip = 3;
- optional bool is_dhcp_enabled = 4;
- optional bool is_default_route = 5;
- optional bool is_enabled = 6 [default = false];
+message COverlayEnabledMsg {
+ optional bool enabled = 1;
}
-// Used by: common.proto
-message CMsgNetworkDeviceIP6Address {
- optional string ip = 1 [default = ""];
+message CPauseControllerInputMsg {
}
-// Used by: common.proto
-message CMsgNetworkDeviceIP6Config {
- repeated CMsgNetworkDeviceIP6Address addresses = 1;
- repeated string dns_ip = 2;
- optional string gateway_ip = 3;
- optional bool is_dhcp_enabled = 4;
- optional bool is_default_route = 5;
- optional bool is_enabled = 6 [default = false];
+message CPauseMsg {
}
-message CMsgNetworkDevicesData {
- repeated CMsgNetworkDevicesData_Device devices = 1;
- optional bool is_wifi_enabled = 2;
- optional bool is_wifi_scanning_enabled = 3;
+// Used by: GameRecording, common.proto
+message CPhaseAttribute {
+ optional string group = 1;
+ optional string value = 2;
+ optional uint32 priority = 3;
}
-// Used by: common.proto
-message CMsgNetworkDevicesData_Device {
- optional uint32 id = 1 [default = 0];
- optional int32 etype = 2;
- optional int32 estate = 3;
- optional string mac = 4;
- optional string vendor = 5;
- optional string product = 6;
- optional CMsgNetworkDeviceIP4Config ip4 = 7;
- optional CMsgNetworkDeviceIP6Config ip6 = 8;
- optional CMsgNetworkDevicesData_Device_Wired wired = 9;
- optional CMsgNetworkDevicesData_Device_Wireless wireless = 10;
+message CProductInfo_ForceEmitPriceConversion {
+ optional int32 method = 1 [(webui.description) = "enum"];
}
-// Used by: common.proto
-message CMsgNetworkDevicesData_Device_Wired {
- optional bool is_cable_present = 1 [default = false];
- optional uint32 speed_mbit = 2;
- optional string friendly_name = 3;
+message CQuitRequest {
}
// Used by: common.proto
-message CMsgNetworkDevicesData_Device_Wireless {
- repeated CMsgNetworkDevicesData_Device_Wireless_AP aps = 1;
- optional int32 esecurity_supported = 2;
+message CRecordedInput {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional uint32 timestamp = 2;
+ optional CInputTouchFingerDownMsg finger_down = 3;
+ optional CInputTouchFingerMotionMsg finger_motion = 4;
+ optional CInputTouchFingerUpMsg finger_up = 5;
+ optional CInputMouseMotionMsg mouse_motion = 6;
+ optional CInputMouseWheelMsg mouse_wheel = 7;
+ optional CInputMouseDownMsg mouse_down = 8;
+ optional CInputMouseUpMsg mouse_up = 9;
+ optional CInputKeyDownMsg key_down = 10;
+ optional CInputKeyUpMsg key_up = 11;
+ optional CInputTextMsg text = 12;
+ optional CRemoteHIDMsg hid = 13;
}
-// Used by: common.proto
-message CMsgNetworkDevicesData_Device_Wireless_AP {
- optional uint32 id = 1 [default = 0];
- optional int32 estrength = 2;
- optional string ssid = 3;
- optional bool is_active = 4;
- optional bool is_autoconnect = 5;
- optional int32 esecurity = 6;
- optional string user_name = 7;
- optional string password = 8;
- optional int32 strength_raw = 9;
- optional string band_filter = 10;
- optional bool has_non_6ghz_channel = 11;
- optional bool is_saved = 12;
+message CRecordedInputStream {
+ repeated CRecordedInput entries = 1;
}
-message CMsgNetworkDeviceSetOptions {
- optional CMsgNetworkDeviceSetOptions_Wireless wireless = 2;
+message CRemoteClient_AddClientTask_Request {
+ optional fixed64 remote_client_id = 1;
+ optional CRemoteClient_Task task = 2;
}
-// Used by: common.proto
-message CMsgNetworkDeviceSetOptions_Wireless {
- optional uint32 ap_id = 1;
- optional bool is_autoconnect = 2;
- optional string band_filter = 3;
+message CRemoteClient_AddClientTask_Response {
}
-message CMsgProtoBufHeader {
- optional fixed64 steamid = 1;
- optional int32 client_sessionid = 2;
- optional uint32 routing_appid = 3;
- optional fixed64 jobid_source = 10 [default = 18446744073709551615];
- optional fixed64 jobid_target = 11 [default = 18446744073709551615];
- optional string target_job_name = 12;
- optional int32 eresult = 13 [default = 2];
- optional string error_message = 14;
- optional uint32 ip = 15;
- optional uint32 auth_account_flags = 16;
- optional int32 transport_error = 17 [default = 1];
- optional uint64 messageid = 18 [default = 18446744073709551615];
- optional uint32 publisher_group_id = 19;
- optional uint32 sysid = 20;
- optional uint32 token_source = 22;
- optional bool admin_spoofing_user = 23;
- optional int32 seq_num = 24;
- optional uint32 webapi_key_id = 25;
- optional bool is_from_external_source = 26;
- repeated uint32 forward_to_sysid = 27;
- optional uint32 cm_sysid = 28;
- optional bytes ip_v6 = 29;
- optional uint32 launcher_type = 31 [default = 0];
- optional uint32 realm = 32 [default = 0];
- optional int32 timeout_ms = 33 [default = -1];
- optional string debug_source = 34;
- optional uint32 debug_source_string_index = 35;
- optional uint64 token_id = 36;
- optional CMsgGCRoutingProtoBufHeader routing_gc = 37;
- optional int32 session_disposition = 38 [default = 0, (webui.description) = "enum"];
- optional string wg_token = 39;
- optional string webui_auth_key = 40;
- repeated int32 exclude_client_sessionids = 41;
- optional fixed64 admin_request_spoofing_steamid = 43;
- optional bool is_valveds = 44;
- optional fixed64 trace_tag = 45;
+message CRemoteClient_CancelPairing_Notification {
+ optional fixed64 session_id = 1;
}
-message CMsgSelectOSBranchParams {
- optional int32 branch = 1 [(webui.description) = "enum"];
- optional string custom_branch = 2;
+// Used by: common.proto
+message CRemoteClient_CancelPairing_Request {
+ optional fixed64 session_id = 1;
}
-message CMsgSetControllerActionSet {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional string new_display_name = 3;
- optional string action_set_to_copy_key = 4;
+// Used by: common.proto
+message CRemoteClient_CancelPairing_Response {
}
-message CMsgSetControllerInputActivator {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 source_binding_key = 3 [(webui.description) = "enum"];
- optional bool mode_shift = 4;
- optional int32 input_key = 5 [(webui.description) = "enum"];
- optional int32 activator_index = 6;
- optional int32 new_activation = 7 [(webui.description) = "enum"];
- optional CMsgControllerSetting new_setting = 8;
- optional int32 modeid = 9;
+message CRemoteClient_ClientLogin {
+ optional fixed64 remote_client_id = 1;
+ optional fixed64 token_id = 2;
+ optional CRemoteClient_DeviceDetails device_details = 3;
}
-message CMsgSetControllerInputActivatorEnabled {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 source_binding_key = 3 [(webui.description) = "enum"];
- optional bool mode_shift = 4;
- optional int32 input_key = 5 [(webui.description) = "enum"];
- optional int32 activator_index = 6;
- optional bool enabled = 7;
- optional int32 modeid = 8;
+// Used by: common.proto
+message CRemoteClient_CreateSession_Request {
}
-message CMsgSetControllerInputBinding {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 source_binding_key = 3 [(webui.description) = "enum"];
- optional bool mode_shift = 4;
- optional int32 input_key = 5 [(webui.description) = "enum"];
- optional int32 activator_index = 6;
- optional int32 binding_index = 7;
- optional CMsgControllerInputBinding new_binding = 8;
- optional int32 source_mode = 9 [(webui.description) = "enum"];
- optional int32 modeid = 10;
+// Used by: common.proto
+message CRemoteClient_CreateSession_Response {
+ optional fixed64 session_id = 1;
+ optional int32 euniverse = 2;
}
-message CMsgSetControllerSourceMode {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 source_binding_key = 3 [(webui.description) = "enum"];
- optional bool mode_shift = 4;
- optional int32 new_mode = 5 [(webui.description) = "enum"];
- optional CMsgControllerInputGameActionBinding new_game_action = 6;
- optional CMsgControllerSetting new_setting = 7;
- optional string new_name = 8;
- optional uint32 modeid = 9;
- optional bool change_mode = 10;
- optional bool new_virtual_menu = 11;
- optional bool enable_virtual_menu_support = 12;
+message CRemoteClient_DeleteSession_Notification {
+ optional fixed64 session_id = 1;
}
-message CMsgSetModeShiftButton {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 modeid = 3;
- optional int32 source = 4 [(webui.description) = "enum"];
- repeated int32 mode_shift_buttons_digital_io = 5 [(webui.description) = "enum"];
+// Used by: RemoteClient, common.proto
+message CRemoteClient_DeviceDetails {
+ optional string device_friendly_name = 1;
+ optional int32 os_type = 2;
+ optional uint32 gaming_device_type = 3;
+}
+
+message CRemoteClient_GetReplies_Request {
+ optional fixed64 session_id = 1;
}
// Used by: common.proto
-message CMsgSteamDatagramConnectionQuality {
- optional CMsgSteamDatagramLinkInstantaneousStats instantaneous = 1;
- optional CMsgSteamDatagramLinkLifetimeStats lifetime = 2;
+message CRemoteClient_GetReplies_Response {
+ repeated bytes payload = 1;
+}
+
+message CRemoteClient_LookupRemotePlayTogetherInvitation_Request {
+ optional string invitation_code = 1;
+}
+
+message CRemoteClient_LookupRemotePlayTogetherInvitation_Response {
+ optional string invitation_url = 1;
}
// Used by: common.proto
-message CMsgSteamDatagramLinkInstantaneousStats {
- optional uint32 out_packets_per_sec_x10 = 1;
- optional uint32 out_bytes_per_sec = 2;
- optional uint32 in_packets_per_sec_x10 = 3;
- optional uint32 in_bytes_per_sec = 4;
- optional uint32 ping_ms = 5;
- optional uint32 packets_dropped_pct = 6;
- optional uint32 packets_weird_sequence_pct = 7;
- optional uint32 peak_jitter_usec = 8;
+message CRemoteClient_Offline_Notification {
+ optional fixed64 session_id = 1;
+ optional fixed64 steamid = 2;
+ optional fixed64 remote_client_id = 3;
+}
+
+// Used by: RemoteClientSteamClient, common.proto
+message CRemoteClient_RegisterStatusUpdate_Notification {
+ optional fixed64 session_id = 1;
+ optional fixed64 steamid = 2;
+ optional fixed64 device_id = 3;
+ optional bool disable_polling = 4;
+}
+
+// Used by: RemoteClientSteamClient, common.proto
+message CRemoteClient_RemotePacket_Notification {
+ optional fixed64 session_id = 1;
+ optional fixed64 steamid = 2;
+ optional bytes payload = 4;
}
// Used by: common.proto
-message CMsgSteamDatagramLinkLifetimeStats {
- optional uint32 connected_seconds = 2;
- optional uint64 packets_sent = 3;
- optional uint64 kb_sent = 4;
- optional uint64 packets_recv = 5;
- optional uint64 kb_recv = 6;
- optional uint64 packets_recv_sequenced = 7;
- optional uint64 packets_recv_dropped = 8;
- optional uint64 packets_recv_out_of_order = 9;
- optional uint64 packets_recv_duplicate = 10;
- optional uint64 packets_recv_lurch = 11;
- repeated uint64 multipath_packets_recv_sequenced = 12;
- repeated uint64 multipath_packets_recv_later = 13;
- optional uint32 multipath_send_enabled = 14;
- optional uint64 packets_recv_out_of_order_corrected = 15;
- optional uint32 quality_histogram_100 = 21;
- optional uint32 quality_histogram_99 = 22;
- optional uint32 quality_histogram_97 = 23;
- optional uint32 quality_histogram_95 = 24;
- optional uint32 quality_histogram_90 = 25;
- optional uint32 quality_histogram_75 = 26;
- optional uint32 quality_histogram_50 = 27;
- optional uint32 quality_histogram_1 = 28;
- optional uint32 quality_histogram_dead = 29;
- optional uint32 quality_ntile_2nd = 30;
- optional uint32 quality_ntile_5th = 31;
- optional uint32 quality_ntile_25th = 32;
- optional uint32 quality_ntile_50th = 33;
- optional uint32 ping_histogram_25 = 41;
- optional uint32 ping_histogram_50 = 42;
- optional uint32 ping_histogram_75 = 43;
- optional uint32 ping_histogram_100 = 44;
- optional uint32 ping_histogram_125 = 45;
- optional uint32 ping_histogram_150 = 46;
- optional uint32 ping_histogram_200 = 47;
- optional uint32 ping_histogram_300 = 48;
- optional uint32 ping_histogram_max = 49;
- optional uint32 ping_ntile_5th = 50;
- optional uint32 ping_ntile_50th = 51;
- optional uint32 ping_ntile_75th = 52;
- optional uint32 ping_ntile_95th = 53;
- optional uint32 ping_ntile_98th = 54;
- optional uint32 jitter_histogram_negligible = 61;
- optional uint32 jitter_histogram_1 = 62;
- optional uint32 jitter_histogram_2 = 63;
- optional uint32 jitter_histogram_5 = 64;
- optional uint32 jitter_histogram_10 = 65;
- optional uint32 jitter_histogram_20 = 66;
+message CRemoteClient_SetPairingInfo_Request {
+ optional fixed64 session_id = 1;
+ optional fixed64 device_id = 2;
+ optional bytes request = 3;
}
// Used by: common.proto
-message CMsgSteamDatagramP2PRoutingSummary {
- optional CMsgSteamNetworkingICESessionSummary ice = 2;
- optional CMsgSteamNetworkingP2PSDRRoutingSummary sdr = 3;
+message CRemoteClient_SetPairingInfo_Response {
}
// Used by: common.proto
-message CMsgSteamNetworkingICESessionSummary {
- optional uint32 local_candidate_types = 1;
- optional uint32 remote_candidate_types = 2;
- optional uint32 initial_route_kind = 3;
- optional uint32 initial_ping = 4;
- optional uint32 negotiation_ms = 5;
- optional uint32 initial_score = 6;
- optional uint32 failure_reason_code = 7;
- optional uint32 selected_seconds = 12;
- optional uint32 user_settings = 13;
- optional uint32 ice_enable_var = 14;
- optional uint32 local_candidate_types_allowed = 15;
- optional uint32 best_route_kind = 16;
- optional uint32 best_ping = 17;
- optional uint32 best_score = 18;
- optional uint32 best_time = 19;
+message CRemoteClient_StartPairing_Request {
+ optional fixed64 session_id = 1;
}
// Used by: common.proto
-message CMsgSteamNetworkingP2PSDRRoutingSummary {
- optional uint32 initial_ping = 1;
- optional uint32 initial_ping_front_local = 2;
- optional uint32 initial_ping_front_remote = 3;
- optional uint32 initial_score = 4;
- optional fixed32 initial_pop_local = 5;
- optional fixed32 initial_pop_remote = 6;
- optional uint32 negotiation_ms = 7;
- optional uint32 selected_seconds = 8;
- optional uint32 best_ping = 11;
- optional uint32 best_ping_front_local = 12;
- optional uint32 best_ping_front_remote = 13;
- optional uint32 best_score = 14;
- optional fixed32 best_pop_local = 15;
- optional fixed32 best_pop_remote = 16;
- optional uint32 best_time = 17;
+message CRemoteClient_StartPairing_Response {
+ optional uint32 pin = 1;
}
-message CMsgSwapControllerSourceModes {
- optional string action_set_key_a = 1;
- optional string action_set_layer_key_a = 2;
- optional int32 source_a = 3 [(webui.description) = "enum"];
- optional string action_set_key_b = 4;
- optional string action_set_layer_key_b = 5;
- optional int32 source_b = 6 [(webui.description) = "enum"];
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemoteClient_SteamBroadcast_Notification {
+ optional fixed64 steamid = 1;
+ optional fixed64 clientid = 2;
+ optional bytes payload = 3;
}
-message CMsgSwapModeInputBindings {
- optional string action_set_key = 1;
- optional string action_set_layer_key = 2;
- optional int32 source_binding_key = 3 [(webui.description) = "enum"];
- optional bool mode_shift = 4;
- optional int32 modeid = 5;
- repeated CMsgSwapModeInputBindings_CModeInputSwap swaps = 6;
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemoteClient_SteamToSteam_Notification {
+ optional fixed64 steamid = 1;
+ optional fixed64 src_clientid = 2;
+ optional fixed64 dst_clientid = 3;
+ optional uint32 secretid = 4;
+ optional bytes encrypted_payload = 5;
}
-// Used by: common.proto
-message CMsgSwapModeInputBindings_CModeInputSwap {
- optional int32 old_key = 1 [(webui.description) = "enum"];
- optional int32 new_key = 2 [(webui.description) = "enum"];
+// Used by: RemoteClientSteamClient, common.proto
+message CRemoteClient_Task {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional fixed64 task_id = 2;
+ optional string url = 3;
+ optional int64 file_id = 4;
+}
+
+// Used by: RemoteClientSteamClient, common.proto
+message CRemoteClient_UnregisterStatusUpdate_Notification {
+ optional fixed64 session_id = 1;
+ optional fixed64 steamid = 2;
}
// Used by: common.proto
-message CMsgSystemAudioManagerDevice {
- optional CMsgSystemAudioManagerObject base = 1;
- optional string name = 2;
- optional string nick = 3;
- optional string description = 4;
- optional string api = 5;
+message CRemoteHIDMsg {
+ optional bytes data = 1;
+ optional bool active_input = 2;
+}
+
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemotePlayTogether_Notification {
+ optional fixed64 steamid = 1;
+ optional CRemotePlayTogether_Notification_GroupUpdated group_updated = 2;
+}
+
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemotePlayTogether_Notification_ControllerSlot {
+ optional uint32 slotid = 1;
+ optional CRemotePlayTogether_Notification_Player player = 2;
+ optional int32 controller_type = 3;
+}
+
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemotePlayTogether_Notification_ControllerSlot_obsolete {
+ optional uint32 slotid = 1;
+ optional fixed64 steamid = 2;
+}
+
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemotePlayTogether_Notification_GroupUpdated {
+ optional fixed64 host_steamid = 1;
+ optional fixed64 host_clientid = 2;
+ repeated fixed64 players_obsolete = 3;
+ optional fixed64 host_gameid = 4;
+ repeated CRemotePlayTogether_Notification_ControllerSlot_obsolete controller_slots_obsolete = 5;
+ optional bool has_new_players = 6;
+ repeated CRemotePlayTogether_Notification_Player player_slots = 7;
+ repeated CRemotePlayTogether_Notification_ControllerSlot controller_slots = 8;
+}
+
+// Used by: RemoteClient, RemoteClientSteamClient
+message CRemotePlayTogether_Notification_Player {
+ optional fixed64 steamid = 1;
+ optional uint32 guestid = 2;
+ optional bytes avatar_hash = 3;
+ optional bool keyboard_enabled = 4;
+ optional bool mouse_enabled = 5;
+ optional bool controller_enabled = 6;
+}
+
+message CRemotePlayTogetherGroupUpdateMsg {
+ repeated CRemotePlayTogetherGroupUpdateMsg_Player players = 1;
+ optional int32 player_index = 2;
+ optional string miniprofile_location = 3;
+ optional string game_name = 4;
+ optional string avatar_location = 5;
+ optional bool direct_input = 6;
}
// Used by: common.proto
-message CMsgSystemAudioManagerLink {
- optional CMsgSystemAudioManagerObject base = 1;
- optional uint32 output_node_id = 2;
- optional uint32 output_port_id = 3;
- optional uint32 input_node_id = 4;
- optional uint32 input_port_id = 5;
+message CRemotePlayTogetherGroupUpdateMsg_Player {
+ optional uint32 accountid = 1;
+ optional uint32 guestid = 2;
+ optional bool keyboard_enabled = 3;
+ optional bool mouse_enabled = 4;
+ optional bool controller_enabled = 5;
+ repeated uint32 controller_slots = 6;
+ optional bytes avatar_hash = 7;
+}
+
+message CResumeControllerInputMsg {
+}
+
+message CResumeMsg {
+}
+
+message CSaveTouchConfigLayoutMsg {
+ optional uint32 appid = 1;
+ optional bytes layout = 4;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message CSeasonPass {
+ optional uint32 appid = 1;
+ repeated CSeasonPassMilestone milestones = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message CSeasonPassDateAndDisplay {
+ optional uint32 rtime = 1;
+ optional string coming_soon_display_type = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message CSeasonPassMilestone {
+ optional int32 milestone_id = 1;
+ repeated CLocalizationToken title = 2;
+ optional uint32 appid = 3;
+ optional fixed64 event_gid = 4;
+ repeated CSeasonPassDateAndDisplay dates = 5;
+ optional bool shipped = 6;
+ optional uint32 rtime_complete = 7;
+ repeated CLocalizationToken milestone_desc = 9;
+ repeated CLocalizationToken image = 10;
+ optional bool backfilled_release = 11;
+ optional uint32 coming_soon_appid = 12;
+}
+
+message CServerHandshakeMsg {
+ optional CStreamingServerHandshakeInfo info = 1;
+}
+
+message CSetActivityMsg {
+ optional int32 activity = 1 [(webui.description) = "enum"];
+ optional uint32 appid = 2;
+ optional uint64 gameid = 3;
+ optional string game_name = 4;
+}
+
+message CSetBitrateOverrideMsg {
+ optional int32 value = 1;
+}
+
+message CSetCapslockMsg {
+ optional bool pressed = 1;
+}
+
+message CSetCaptureSizeMsg {
+ optional int32 width = 1;
+ optional int32 height = 2;
+}
+
+message CSetCursorImageMsg {
+ optional uint64 cursor_id = 1;
+ optional int32 width = 2;
+ optional int32 height = 3;
+ optional int32 hot_x = 4;
+ optional int32 hot_y = 5;
+ optional bytes image = 6;
+}
+
+message CSetCursorMsg {
+ optional uint64 cursor_id = 1;
}
-// Used by: common.proto
-message CMsgSystemAudioManagerNode {
- optional CMsgSystemAudioManagerObject base = 1;
- optional uint32 device_id = 2;
- optional string name = 3;
- optional string nick = 4;
- optional string description = 5;
- optional int32 edirection = 6 [(webui.description) = "enum"];
- optional CMsgSystemAudioVolume volume = 7;
+message CSetCursorScaleMsg {
+ optional float scale = 1;
}
-// Used by: common.proto
-message CMsgSystemAudioManagerObject {
- optional uint32 id = 1;
- optional fixed32 rtime_last_update = 2;
+message CSetFlashStateMsg {
+ optional uint32 flags = 1;
+ optional uint32 count = 2;
+ optional uint32 timeout_ms = 3;
}
-// Used by: common.proto
-message CMsgSystemAudioManagerPort {
- optional CMsgSystemAudioManagerObject base = 1;
- optional uint32 node_id = 3;
- optional string name = 4;
- optional string alias = 5;
- optional int32 etype = 6 [(webui.description) = "enum"];
- optional int32 edirection = 7 [(webui.description) = "enum"];
- optional bool is_physical = 8;
- optional bool is_terminal = 9;
- optional bool is_control = 10;
- optional bool is_monitor = 11;
+message CSetGammaRampMsg {
+ optional bytes gamma_ramp = 1;
}
-message CMsgSystemAudioManagerState {
- optional fixed32 rtime_filter = 1;
- optional int32 counter = 2;
- optional CMsgSystemAudioManagerStateHW hw = 3;
+message CSetIconMsg {
+ optional int32 width = 1;
+ optional int32 height = 2;
+ optional bytes image = 3;
}
-// Used by: common.proto
-message CMsgSystemAudioManagerStateHW {
- repeated CMsgSystemAudioManagerDevice devices = 1;
- repeated CMsgSystemAudioManagerNode nodes = 2;
- repeated CMsgSystemAudioManagerPort ports = 3;
- repeated CMsgSystemAudioManagerLink links = 4;
+message CSetInputTemporarilyDisabledMsg {
+ optional bool disabled = 1;
}
-message CMsgSystemAudioManagerUpdateSomething {
- optional int32 counter = 1;
+message CSetKeymapMsg {
+ optional CStreamingKeymap keymap = 1;
}
-// Used by: common.proto
-message CMsgSystemAudioVolume {
- repeated CMsgSystemAudioVolume_ChannelEntry entries = 1;
- optional bool is_muted = 2;
+message CSetQoSMsg {
+ optional bool use_qos = 1;
}
-// Used by: common.proto
-message CMsgSystemAudioVolume_ChannelEntry {
- optional int32 echannel = 1 [(webui.description) = "enum"];
- optional float volume = 2;
+message CSetQualityOverrideMsg {
+ optional int32 value = 1;
}
-// Used by: common.proto
-message CMsgSystemDisplay {
- optional int32 id = 1;
- optional string name = 2;
- optional string description = 3;
- optional bool is_primary = 4;
- optional bool is_enabled = 5;
- optional bool is_internal = 6;
- optional bool has_mode_override = 7;
- optional int32 width_mm = 8;
- optional int32 height_mm = 9;
- optional int32 current_mode_id = 10;
- repeated CMsgSystemDisplayMode modes = 11;
- optional int32 refresh_rate_min = 12;
- optional int32 refresh_rate_max = 13;
- optional bool is_vrr_capable = 14;
- optional bool is_vrr_output_active = 15;
- optional bool is_hdr_capable = 16;
- optional bool is_hdr_output_active = 17;
- repeated int32 supported_refresh_rates = 18;
- optional int32 rgb_range = 19 [(webui.description) = "enum"];
+message CSetSpectatorModeMsg {
+ optional bool enabled = 1;
}
-// Used by: common.proto
-message CMsgSystemDisplayManagerGameResolution {
- optional uint32 width = 1;
- optional uint32 height = 2;
+message CSetStreamingClientConfig {
+ optional CStreamingClientConfig config = 1;
}
-message CMsgSystemDisplayManagerSetMode {
- optional int32 display_id = 1;
- optional int32 mode_id = 2;
- optional int32 rgb_range = 3 [(webui.description) = "enum"];
+message CSetSupportedColorspacesMsg {
+ repeated int32 supported_colorspaces = 1 [(webui.description) = "enum"];
}
-message CMsgSystemDisplayManagerState {
- repeated CMsgSystemDisplay displays = 1;
- optional bool is_mode_switching_supported = 2;
- optional int32 compatibility_mode = 3 [(webui.description) = "enum"];
- optional CMsgSystemDisplayManagerGameResolution game_resolution_override_native = 4;
- optional CMsgSystemDisplayManagerGameResolution game_resolution_override_default = 5;
+message CSetTargetBitrateMsg {
+ optional int32 bitrate = 1;
}
-// Used by: common.proto
-message CMsgSystemDisplayMode {
- optional int32 id = 1;
- optional int32 width = 2;
- optional int32 height = 3;
- optional int32 refresh_hz = 4;
+message CSetTargetFramerateMsg {
+ optional uint32 framerate = 1;
+ optional uint32 reasons = 2;
+ optional uint32 framerate_numerator = 3;
+ optional uint32 framerate_denominator = 4;
}
-message CMsgSystemDockState {
- optional CMsgSystemDockUpdateState update_state = 1;
+message CSetTitleMsg {
+ optional string text = 1;
}
-message CMsgSystemDockUpdateFirmware {
- optional bool check_only = 1;
+message CSetTouchConfigDataMsg {
+ optional uint32 appid = 1;
+ optional uint32 revision = 2;
+ optional bytes data = 3;
+ optional bytes layout = 4;
+ optional uint64 creator = 5;
}
-// Used by: common.proto
-message CMsgSystemDockUpdateState {
- optional int32 state = 1 [(webui.description) = "enum"];
- optional fixed32 rtime_last_checked = 2;
- optional string version_current = 3;
- optional string version_available = 4;
- optional float stage_progress = 5;
- optional fixed32 rtime_estimated_completion = 6;
- optional int32 old_fw_workaround = 7;
+message CSetTouchIconDataMsg {
+ optional uint32 appid = 1;
+ optional string icon = 2;
+ optional bytes data = 3;
}
-message CMsgSystemManagerSettings {
- optional float idle_backlight_dim_battery_seconds = 1;
- optional float idle_backlight_dim_ac_seconds = 2;
- optional bool is_adaptive_brightness_available = 6;
- optional bool display_adaptive_brightness_enabled = 7;
- optional bool display_nightmode_enabled = 10;
- optional float display_nightmode_tintstrength = 11;
- optional float display_nightmode_maxhue = 12;
- optional float display_nightmode_maxsat = 13;
- optional float display_nightmode_uiexp = 14;
- optional float display_nightmode_blend = 15;
- optional bool display_nightmode_reset = 16;
- optional bool display_nightmode_schedule_enabled = 17;
- optional float display_nightmode_schedule_starttime = 18;
- optional float display_nightmode_schedule_endtime = 19;
- optional bool display_diagnostics_enabled = 20;
- optional float als_lux_primary = 21;
- optional float als_lux_median = 22;
- optional float display_backlight_raw = 23;
- optional float display_brightness_adaptivemin = 24;
- optional float display_brightness_adaptivemax = 25;
- optional bool is_fan_control_available = 27;
- optional int32 fan_control_mode = 28 [(webui.description) = "enum"];
- optional bool is_display_brightness_available = 29;
- optional bool is_display_colormanagement_available = 31;
- optional float display_colorgamut = 32;
- optional float als_lux_alternate = 33;
- optional bool is_display_colortemp_available = 34;
- optional float display_colortemp = 35;
- optional float display_colortemp_default = 36;
- optional bool display_colortemp_enabled = 37;
- optional int32 display_colorgamut_labelset = 38 [(webui.description) = "enum"];
- optional float display_brightness_overdrive_hdr_split = 39;
+message CShowCursorMsg {
+ optional float x_normalized = 1;
+ optional float y_normalized = 2;
+ optional bool locked = 3;
}
-// Used by: common.proto
-message CMsgSystemPerfDiagnosticEntry {
- optional string name = 1;
- optional string value = 2;
+message CShowOnScreenKeyboardMsg {
}
-message CMsgSystemPerfDiagnosticInfo {
- repeated CMsgSystemPerfDiagnosticEntry entries = 1;
- repeated CMsgSystemPerfNetworkInterface interfaces = 2;
- optional float battery_temp_c = 3;
+message CStartAudioDataMsg {
+ optional uint32 channel = 2;
+ optional int32 codec = 3 [(webui.description) = "enum"];
+ optional bytes codec_data = 4;
+ optional uint32 frequency = 5;
+ optional uint32 channels = 6;
}
-// Used by: common.proto
-message CMsgSystemPerfLimits {
- optional int32 cpu_governor_manual_min_mhz = 1;
- optional int32 cpu_governor_manual_max_mhz = 2;
- optional int32 fsr_sharpness_min = 3;
- optional int32 fsr_sharpness_max = 4;
- optional bool perf_overlay_is_standalone = 7;
- optional bool is_manual_display_refresh_rate_available = 9;
- optional int32 display_refresh_manual_hz_min = 11;
- optional int32 display_refresh_manual_hz_max = 12;
- repeated int32 fps_limit_options = 13;
- optional int32 tdp_limit_min = 14;
- optional int32 tdp_limit_max = 15;
- optional int32 display_external_refresh_manual_hz_min = 19;
- optional int32 display_external_refresh_manual_hz_max = 20;
- repeated int32 fps_limit_options_external = 21;
- optional bool is_vrr_supported = 23;
- optional bool is_dynamic_refresh_rate_in_steam_supported = 24;
- repeated int32 split_scaling_filters_available = 26 [(webui.description) = "enum"];
- repeated int32 split_scaling_scalers_available = 27 [(webui.description) = "enum"];
- optional bool disable_refresh_rate_management = 30;
+message CStartNetworkTestMsg {
+ optional uint32 frames = 1;
+ optional uint32 framerate = 2;
+ optional uint32 bitrate_kbps = 3;
+ optional uint32 burst_bitrate_kbps = 4;
+ optional bool bandwidth_test = 5;
}
-// Used by: common.proto
-message CMsgSystemPerfNetworkInterface {
- optional string name = 1;
- optional double timestamp = 2;
- optional int64 tx_bytes_total = 3;
- optional int64 rx_bytes_total = 4;
- optional int32 tx_bytes_per_sec = 5;
- optional int32 rx_bytes_per_sec = 6;
+message CStartVideoDataMsg {
+ optional uint32 channel = 1;
+ optional int32 codec = 2 [(webui.description) = "enum"];
+ optional bytes codec_data = 3;
+ optional uint32 width = 4;
+ optional uint32 height = 5;
+ optional int32 colorspace = 6 [(webui.description) = "enum"];
+ optional bool video_frame_headers = 7;
+}
+
+message CSteamVR_AudioSettings_ChangeSettings_Request {
+ optional CSteamVR_AudioSettings_Settings settings = 1;
+}
+
+message CSteamVR_AudioSettings_RegisterForSettings_Request {
}
// Used by: common.proto
-message CMsgSystemPerfSettings {
- optional CMsgSystemPerfSettingsGlobal global = 1;
- optional CMsgSystemPerfSettingsPerApp per_app = 2;
+message CSteamVR_AudioSettings_Settings {
+ optional CSteamVR_AudioSettings_Settings_Channel main = 1;
+ optional CSteamVR_AudioSettings_Settings_Channel audio_mirror = 2;
+ optional CSteamVR_AudioSettings_Settings_Channel microphone = 3;
}
// Used by: common.proto
-message CMsgSystemPerfSettingsGlobal {
- optional float diagnostic_update_rate = 1;
- optional int32 graphics_profiling_service_state = 3 [(webui.description) = "enum"];
- optional int32 perf_overlay_service_state = 4 [(webui.description) = "enum"];
- optional int32 perf_overlay_level = 5 [(webui.description) = "enum"];
- optional bool is_show_perf_overlay_over_steam_enabled = 6;
- optional bool is_advanced_settings_enabled = 7;
- optional bool allow_external_display_refresh_control = 8;
- optional int32 hdr_on_sdr_tonemap_operator = 12 [(webui.description) = "enum"];
- optional bool is_hdr_debug_heatmap_enabled = 13;
- optional bool force_hdr_wide_gammut_for_sdr = 15 [default = true];
- optional bool is_color_management_enabled = 21;
- optional float sdr_to_hdr_brightness = 22;
+message CSteamVR_AudioSettings_Settings_Channel {
+ optional bool available = 1;
+ optional bool muted = 2;
+ optional float volume = 3;
+}
+
+message CSteamVR_AudioSettings_SettingsChanged_Notification {
+ optional CSteamVR_AudioSettings_Settings settings = 1;
}
// Used by: common.proto
-message CMsgSystemPerfSettingsPerApp {
- optional int32 fps_limit = 2;
- optional bool is_variable_resolution_enabled = 3;
- optional bool is_dynamic_refresh_rate_enabled = 4;
- optional int32 tdp_limit = 5;
- optional int32 cpu_governor = 6 [(webui.description) = "enum"];
- optional int32 cpu_governor_manual_mhz = 7;
- optional int32 scaling_filter = 8;
- optional int32 fsr_sharpness = 9;
- optional bool is_fps_limit_enabled = 10;
- optional bool is_tdp_limit_enabled = 11;
- optional bool is_low_latency_mode_enabled = 12;
- optional int32 display_refresh_manual_hz = 13;
- optional bool is_game_perf_profile_enabled = 14;
- optional int32 display_external_refresh_manual_hz = 17;
- optional int32 fps_limit_external = 18;
- optional bool is_tearing_enabled = 19;
- optional bool is_vrr_enabled = 20;
- optional bool use_dynamic_refresh_rate_in_steam = 23;
- optional int32 split_scaling_filter = 24 [(webui.description) = "enum"];
- optional int32 split_scaling_scaler = 25 [(webui.description) = "enum"];
+message CSteamVR_ControllerPairing_Controller {
+ optional string serial_number = 1;
+ optional int32 role = 2 [(webui.description) = "enum"];
}
-message CMsgSystemPerfState {
- optional CMsgSystemPerfLimits limits = 1;
- optional CMsgSystemPerfSettings settings = 2;
- optional uint64 current_game_id = 3;
- optional uint64 active_profile_game_id = 4;
+message CSteamVR_ControllerPairing_Request {
+ optional CSteamVR_ControllerPairing_Request_Update update = 1;
+ optional CSteamVR_ControllerPairing_Request_StartPairing start_pairing = 2;
+ optional CSteamVR_ControllerPairing_Request_StopPairing stop_pairing = 3;
+ optional CSteamVR_ControllerPairing_Request_IdentifyController identify_controller = 4;
+ optional CSteamVR_ControllerPairing_Request_DisconnectController disconnect_controller = 5;
+ optional CSteamVR_ControllerPairing_Request_DisconnectAllControllers disconnect_all_controllers = 6;
+ optional CSteamVR_ControllerPairing_Request_UnpairController unpair_controller = 7;
+ optional CSteamVR_ControllerPairing_Request_UnpairAllControllers unpair_all_controllers = 8;
+ optional CSteamVR_ControllerPairing_Request_UnpairDisconnectedControllers unpair_disconnected_controllers = 9;
}
-message CMsgSystemPerfUpdateSettings {
- optional uint64 gameid = 1;
- optional bool reset_to_default = 2;
- optional CMsgSystemPerfSettings settings_delta = 3;
- optional bool skip_storage_update = 4;
+// Used by: common.proto
+message CSteamVR_ControllerPairing_Request_DisconnectAllControllers {
}
-message CMsgSystemUpdateApplyParams {
- repeated int32 apply_types = 1 [(webui.description) = "enum"];
+// Used by: common.proto
+message CSteamVR_ControllerPairing_Request_DisconnectController {
+ optional string serial_number = 1;
}
// Used by: common.proto
-message CMsgSystemUpdateApplyResult {
- optional int32 type = 1 [(webui.description) = "enum"];
- optional uint32 eresult = 2 [default = 2];
- optional bool requires_client_restart = 3 [default = false];
- optional bool requires_system_restart = 4 [default = false];
+message CSteamVR_ControllerPairing_Request_IdentifyController {
+ optional string serial_number = 1;
}
// Used by: common.proto
-message CMsgSystemUpdateCheckResult {
- optional int32 type = 1 [(webui.description) = "enum"];
- optional uint32 eresult = 2 [default = 2];
- optional fixed32 rtime_checked = 3;
- optional bool available = 4;
- optional string version = 5;
- optional string auto_message = 6;
- optional bool system_restart_pending = 7;
+message CSteamVR_ControllerPairing_Request_StartPairing {
+ optional uint32 timeout_seconds = 1;
}
// Used by: common.proto
-message CMsgSystemUpdateProgress {
- optional float stage_progress = 1;
- optional int64 stage_size_bytes = 2;
- optional fixed32 rtime_estimated_completion = 3;
+message CSteamVR_ControllerPairing_Request_StopPairing {
}
-message CMsgSystemUpdateState {
- optional int32 state = 1 [(webui.description) = "enum"];
- optional CMsgSystemUpdateProgress progress = 2;
- repeated CMsgSystemUpdateCheckResult update_check_results = 3;
- repeated CMsgSystemUpdateApplyResult update_apply_results = 4;
- optional bool supports_os_updates = 5;
+// Used by: common.proto
+message CSteamVR_ControllerPairing_Request_UnpairAllControllers {
}
-message CMsgWebUITransportFailure {
- optional uint32 connect_count = 1;
+// Used by: common.proto
+message CSteamVR_ControllerPairing_Request_UnpairController {
+ optional string serial_number = 1;
}
-message CProductImpressionsFromClient_Notification {
- repeated CProductImpressionsFromClient_Notification_Impression impressions = 1;
+// Used by: common.proto
+message CSteamVR_ControllerPairing_Request_UnpairDisconnectedControllers {
}
// Used by: common.proto
-message CProductImpressionsFromClient_Notification_Impression {
- optional int32 type = 1 [(webui.description) = "enum"];
- optional uint32 appid = 2;
- optional uint32 num_impressions = 3;
+message CSteamVR_ControllerPairing_Request_Update {
}
-message CRemotePlay_SessionStopped_Notification {
- optional fixed64 record_id = 1;
- optional bool used_x264 = 2;
- optional bool used_h264 = 3;
- optional bool used_hevc = 4;
+message CSteamVR_ControllerPairing_State_Message {
+ optional uint32 total_connection_slots = 1;
+ optional bool is_pairing = 2;
+ repeated CSteamVR_ControllerPairing_Controller connected_controller = 3;
+ repeated CSteamVR_ControllerPairing_Controller paired_controller = 4;
}
-message CSteamVR_AudioSettings_ChangeSettings_Request {
- optional CSteamVR_AudioSettings_Settings settings = 1;
+// Used by: common.proto
+message CSteamVR_ControllerUpdate_Controller {
+ optional string serial_number = 1;
+ optional int32 role = 2 [(webui.description) = "enum"];
+ optional float progress_pct = 3;
+ optional bool has_started = 4;
+ optional int32 phase = 5 [(webui.description) = "enum"];
}
-message CSteamVR_AudioSettings_RegisterForSettings_Request {
+message CSteamVR_ControllerUpdate_Request {
+ optional CSteamVR_ControllerUpdate_Request_UpdateState update_state = 1;
+ optional CSteamVR_ControllerUpdate_Request_StartUpdate start_update = 2;
+ optional CSteamVR_ControllerUpdate_Request_IdentifyController identify_controller = 3;
}
// Used by: common.proto
-message CSteamVR_AudioSettings_Settings {
- optional CSteamVR_AudioSettings_Settings_Channel main = 1;
- optional CSteamVR_AudioSettings_Settings_Channel audio_mirror = 2;
- optional CSteamVR_AudioSettings_Settings_Channel microphone = 3;
+message CSteamVR_ControllerUpdate_Request_IdentifyController {
+ optional string serial_number = 1;
}
// Used by: common.proto
-message CSteamVR_AudioSettings_Settings_Channel {
- optional bool available = 1;
- optional bool muted = 2;
- optional float volume = 3;
+message CSteamVR_ControllerUpdate_Request_StartUpdate {
+ optional string serial_number = 1;
}
-message CSteamVR_AudioSettings_SettingsChanged_Notification {
- optional CSteamVR_AudioSettings_Settings settings = 1;
+// Used by: common.proto
+message CSteamVR_ControllerUpdate_Request_UpdateState {
+}
+
+message CSteamVR_ControllerUpdate_State_Message {
+ repeated CSteamVR_ControllerUpdate_Controller controller = 3;
+}
+
+message CSteamVR_GuidedTour_StartPlayspaceSetup {
}
message CSteamVR_Header {
@@ -2560,6 +5861,7 @@ message CSteamVR_MultiLinkStatusUpdate_Message {
message CSteamVR_OverlayInputFocusChanged_Message {
optional string overlay_key = 1;
optional uint32 flags = 2;
+ optional uint32 system_panel_interaction_mode = 3;
}
message CSteamVR_PushOverlayInputFocus_Message {
@@ -2575,6 +5877,11 @@ message CSteamVR_Settings_SetValue_Request {
optional string string = 6;
}
+message CSteamVR_Settings_SetValue_Response {
+ optional bool success = 1;
+ optional string error = 2;
+}
+
// Used by: common.proto
message CSteamVR_Vector3 {
optional float x = 1;
@@ -2741,6 +6048,15 @@ message CSteamVR_WebRTC_OnDataChannel_Notification {
optional string label = 3;
}
+message CStopAudioDataMsg {
+}
+
+message CStopRequest {
+}
+
+message CStopVideoDataMsg {
+}
+
// Used by: PartnerStoreBrowse, StoreBrowse
message CStoreBrowse_GetItems_Request {
repeated StoreItemID ids = 1;
@@ -2789,6 +6105,11 @@ message CStorePageFilter_StoreFilter {
optional string cache_key = 2;
}
+message CStreamDataLostMsg {
+ repeated uint32 packets = 1;
+}
+
+// Used by: common.proto
message CStreamingClientCaps {
optional string system_info = 1;
optional bool system_can_suspend = 2;
@@ -2806,8 +6127,10 @@ message CStreamingClientCaps {
repeated int32 supported_audio_codecs = 14 [(webui.description) = "enum"];
repeated int32 supported_video_codecs = 15 [(webui.description) = "enum"];
optional bool can_toggle_fullscreen = 16;
+ optional bool supports_video_frame_header = 17;
}
+// Used by: common.proto
message CStreamingClientConfig {
optional int32 quality = 1 [default = 2, (webui.description) = "enum"];
optional uint32 desired_resolution_x = 2;
@@ -2843,6 +6166,36 @@ message CStreamingClientConfig {
optional int32 window_frame_offset_x = 33;
optional int32 window_frame_offset_y = 34;
optional bool enable_video_pyrowave = 35 [default = false];
+ optional bool pyrowave_custom_bitrate_OBSOLETE = 36;
+ optional int32 pyrowave_custom_bitrate_kbps_OBSOLETE = 37;
+ optional float pyrowave_quality_modifier = 38;
+ optional bool pyrowave_yuv444 = 39;
+ optional int32 pyrowave_bitrate_kbps = 40 [default = -1];
+ optional int32 display_style = 41 [default = 0, (webui.description) = "enum"];
+ optional int32 hdr_mode = 42 [default = 0, (webui.description) = "enum"];
+}
+
+// Used by: common.proto
+message CStreamingClientHandshakeInfo {
+ optional int32 network_test = 2;
+}
+
+// Used by: common.proto
+message CStreamingKeymap {
+ repeated CStreamingKeymapEntry entries = 1;
+}
+
+// Used by: common.proto
+message CStreamingKeymapEntry {
+ optional int32 scancode = 1;
+ optional int32 normal_keycode = 2;
+ optional int32 shift_keycode = 3;
+ optional int32 capslock_keycode = 4;
+ optional int32 shift_capslock_keycode = 5;
+ optional int32 altgr_keycode = 6;
+ optional int32 altgr_shift_keycode = 7;
+ optional int32 altgr_capslock_keycode = 8;
+ optional int32 altgr_shift_capslock_keycode = 9;
}
message CStreamingServerConfig {
@@ -2861,6 +6214,18 @@ message CStreamingServerConfig {
optional bool enable_traffic_priority = 13;
}
+// Used by: common.proto
+message CStreamingServerHandshakeInfo {
+ optional int32 mtu = 1;
+}
+
+message CStreamingSessionStats {
+ optional float frame_loss_percentage = 1;
+ optional float average_network_time_ms = 2;
+ optional float stddev_network_time_ms = 3;
+ optional string test_data = 4;
+}
+
// Used by: common.proto
message CStreamVideoLimit {
optional int32 codec = 1 [(webui.description) = "enum"];
@@ -2878,6 +6243,66 @@ message CStreamVideoMode {
optional uint32 refresh_rate_denominator = 5;
}
+message CStreamVideoOverflowMsg {
+ optional uint32 first_frame_id = 1;
+ optional uint32 last_frame_id = 2;
+}
+
+message CSystemSuspendMsg {
+}
+
+// Used by: GameRecording, common.proto
+message CTimelineTag {
+ optional string name = 1;
+ optional string group = 2;
+ optional string icon = 3;
+ optional uint32 priority = 4;
+}
+
+message CToggleMagnificationMsg {
+}
+
+message CTouchActionSetActiveMsg {
+ optional uint32 appid = 1;
+ optional int32 actionset_id = 2;
+}
+
+message CTouchActionSetLayerAddedMsg {
+ optional uint32 appid = 1;
+ optional int32 actionset_id = 2;
+}
+
+message CTouchActionSetLayerRemovedMsg {
+ optional uint32 appid = 1;
+ optional int32 actionset_id = 2;
+}
+
+message CTouchConfigActiveMsg {
+ optional uint32 appid = 1;
+ optional uint32 revision = 2;
+ optional uint64 creator = 3;
+}
+
+message CTransportSignalMsg {
+ optional CTransportSignalMsg_WebRTCMessage webrtc = 1;
+ repeated bytes sdr = 2;
+}
+
+// Used by: common.proto
+message CTransportSignalMsg_WebRTCMessage {
+ optional bool greeting = 1;
+ optional string offer = 2;
+ optional string answer = 3;
+ optional CTransportSignalMsg_WebRTCMessage_Candidate candidate = 4;
+}
+
+// Used by: common.proto
+message CTransportSignalMsg_WebRTCMessage_Candidate {
+ optional string sdp_mid = 1;
+ optional int32 sdp_mline_index = 2;
+ optional string candidate = 3;
+}
+
// Used by: Test_TransportError, TransportValidation
message CTransportValidation_AppendToString_Request {
repeated string append_strings = 1;
@@ -2918,6 +6343,43 @@ message CVideo_GameRecordingSegmentInfo {
optional string representation_name = 4;
}
+message CVideoDecoderInfoMsg {
+ optional string info = 1;
+ optional int32 threads = 2;
+}
+
+message CVideoEncoderInfoMsg {
+ optional string info = 1;
+}
+
+message CVideoFrameHeader {
+ optional uint32 frame_id = 1;
+ optional uint32 timestamp = 2;
+ optional int32 codec = 3 [(webui.description) = "enum"];
+ optional uint32 pixel_bits = 4;
+ optional bool yuv420 = 5;
+ optional bool yuv444 = 6;
+ optional int32 colorspace = 7 [(webui.description) = "enum"];
+ optional uint32 min_luminance = 8;
+ optional uint32 max_luminance = 9;
+ optional uint32 sdr_luminance = 10;
+ optional uint32 width = 11;
+ optional uint32 height = 12;
+ optional bool cursor_captured = 13;
+}
+
+message CVirtualHereReadyMsg {
+ optional uint32 licensed_device_count = 1;
+}
+
+message CVirtualHereRequestMsg {
+ optional string hostname = 1;
+}
+
+message CVirtualHereShareDeviceMsg {
+ optional string device_address = 1;
+}
+
message CVirtualMenuCreateDestroy {
optional bool created = 1;
optional uint32 controller_idx = 2;
@@ -2971,6 +6433,10 @@ message CVirtualMenuKey {
optional uint32 binding_type = 14;
}
+message CVRConnectionReady {
+ optional string connect_params = 1;
+}
+
// Used by: common.proto
message CVRGamepadUI_Frame {
optional uint32 frame_id = 1;
@@ -2982,7 +6448,7 @@ message CVRGamepadUI_Frame {
repeated string steamui_page_overlay_keys = 7;
optional bool is_streaming_client = 8;
optional int32 dock_location = 9 [(webui.description) = "enum"];
- optional string tmp_title = 1000;
+ optional uint32 game_app_id = 10;
}
// Used by: common.proto
@@ -3003,6 +6469,10 @@ message CVRGamepadUI_Frame_FrameControls_Item {
optional uint32 action_id = 2;
}
+message CVRGamepadUI_Frame_FrameControls_Item_SteamMainControlsOptions {
+ optional bool allow_show_as_active = 1;
+}
+
// Used by: common.proto
message CVRGamepadUI_Frame_FrameMenu {
repeated CVRGamepadUI_Frame_FrameMenu_Item items_for_left_frame_menu = 1;
@@ -3033,6 +6503,13 @@ message CVRGamepadUI_Frame_FrameMenu_Item_SteamMainMenuOptions {
optional bool allow_show_as_active = 1;
}
+message CVRGamepadUI_Message_CycleDashboardFocus_Request {
+ optional uint32 target_frame_id = 1;
+}
+
+message CVRGamepadUI_Message_CycleDashboardFocus_Response {
+}
+
message CVRGamepadUI_Message_DashboardActionInvoked_Request {
optional uint32 action_id = 1;
optional bool toggle_value = 2;
@@ -3075,6 +6552,15 @@ message CVRGamepadUI_Message_FocusDashboardBar_Request {
message CVRGamepadUI_Message_FocusDashboardBar_Response {
}
+message CVRGamepadUI_Message_GamepadButtonAction_Request {
+ optional int32 button = 1 [(webui.description) = "enum"];
+ optional bool button_down = 2;
+ optional bool repeat = 3;
+}
+
+message CVRGamepadUI_Message_GamepadButtonAction_Response {
+}
+
message CVRGamepadUI_Message_GetAppIcon_Request {
optional uint32 app_id = 1;
}
@@ -3147,6 +6633,14 @@ message CVRGamepadUI_Message_ResetHMDSettings_Request {
message CVRGamepadUI_Message_ResetHMDSettings_Response {
}
+message CVRGamepadUI_Message_SetAppVRInputPreference_Request {
+ optional uint32 app_id = 1;
+ optional bool prefers_steam_input = 2;
+}
+
+message CVRGamepadUI_Message_SetAppVRInputPreference_Response {
+}
+
message CVRGamepadUI_Message_SetCurrentLanguage_Request {
optional string language = 1;
}
@@ -3179,6 +6673,28 @@ message CVRGamepadUI_Message_SetHMDSettings_Request {
message CVRGamepadUI_Message_SetHMDSettings_Response {
}
+message CVRGamepadUI_Message_SetPeripheralIndicatorSuppressed_Request {
+ optional int32 indicator = 1 [(webui.description) = "enum"];
+ optional bool suppressed = 2;
+}
+
+message CVRGamepadUI_Message_SetPeripheralIndicatorSuppressed_Response {
+}
+
+message CVRGamepadUI_Message_SetSpatializeEnabled_Request {
+ optional bool enabled = 1;
+}
+
+message CVRGamepadUI_Message_SetSpatializeEnabled_Response {
+}
+
+message CVRGamepadUI_Message_SetSpatializeSurroundEnabled_Request {
+ optional bool enabled = 1;
+}
+
+message CVRGamepadUI_Message_SetSpatializeSurroundEnabled_Response {
+}
+
message CVRGamepadUI_Message_ShowDashboardPopup_Request {
optional uint32 dashboard_popup_id = 1;
optional string popup_overlay_key = 2;
@@ -3324,12 +6840,32 @@ message CVRGamepadUIShared_Icon {
optional uint32 hwnd = 4;
}
+message CVRGamepadUIShared_PathProperty_ClientSettings {
+ optional bool enable_ui_sounds = 1;
+}
+
message CVRGamepadUIShared_PathProperty_ClientUserInfo {
optional bool logged_in = 1;
optional bool valve_email = 2;
optional bool developer_mode_enabled = 3;
}
+message CVRGamepadUIShared_PathProperty_Controllers {
+ repeated CVRGamepadUIShared_PathProperty_Controllers_Controller controllers = 1;
+ optional uint32 current_controller_index = 2;
+}
+
+// Used by: common.proto
+message CVRGamepadUIShared_PathProperty_Controllers_Controller {
+ optional uint32 controller_index = 1;
+ optional string name = 2;
+ optional int32 controller_type = 3;
+ optional int32 xinput_index = 4;
+ optional string serial_number = 5;
+ optional uint32 vendor_id = 6;
+ optional uint32 product_id = 7;
+}
+
message CVRGamepadUIShared_PathProperty_DashboardBarActions {
repeated CVRGamepadUIShared_DEPRECATED_DashboardBarAction deprecated_actions = 1;
repeated CVRGamepadUIShared_Action defined_actions = 2;
@@ -3357,6 +6893,7 @@ message CVRGamepadUIShared_PathProperty_DashboardState {
optional bool dashboard_bar_or_child_popup_focused = 2;
optional int32 vrlink_role = 3 [(webui.description) = "enum"];
optional bool vrlink_unified_dashboard = 4;
+ optional string cycle_dashboard_focus_label = 5;
}
message CVRGamepadUIShared_PathProperty_DashboardTabs {
@@ -3403,6 +6940,7 @@ message CVRGamepadUIShared_PathProperty_HMDSettings {
repeated uint32 supersample_effective_resolution = 15;
optional uint32 frames_to_throttle_value = 20;
optional bool motion_smoothing_value = 21;
+ optional uint32 gamescope_framerate_limit = 22;
optional bool env_theater_active = 30;
optional CVRGamepadUIShared_RichFloat env_brightness_construct_theater = 31;
optional CVRGamepadUIShared_RichFloat env_brightness_construct_nominal = 32;
@@ -3410,6 +6948,18 @@ message CVRGamepadUIShared_PathProperty_HMDSettings {
optional bool perf_graph_in_hmd_value = 51;
optional bool record_vr_stats_value = 52;
optional bool record_tracking_value = 53;
+ optional string performance_profile_name = 54;
+ optional string playtime_profile_name = 55;
+}
+
+message CVRGamepadUIShared_PathProperty_PeripheralIndicators {
+ repeated CVRGamepadUIShared_PathProperty_PeripheralIndicators_Indicator indicators = 1;
+}
+
+// Used by: common.proto
+message CVRGamepadUIShared_PathProperty_PeripheralIndicators_Indicator {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional bool is_suppressed = 2;
}
message CVRGamepadUIShared_PathProperty_PowerOptions {
@@ -3447,10 +6997,12 @@ message CVRGamepadUIShared_RichFloat {
}
// Used by: common.proto
-message GamePerformanceSettings {
- optional int32 setting = 1 [(webui.description) = "enum"];
- optional uint32 game_resolution_width = 2;
- optional uint32 game_resolution_height = 3;
+message EncryptedAppTicket {
+ optional uint32 ticket_version_no = 1;
+ optional uint32 crc_encryptedticket = 2;
+ optional uint32 cb_encrypteduserdata = 3;
+ optional uint32 cb_encrypted_appownershipticket = 4;
+ optional bytes encrypted_ticket = 5;
}
// Used by: LoyaltyRewards, SaleItemRewards
@@ -3498,6 +7050,12 @@ message LoyaltyRewardDefinition_CommunityItemData {
optional bool tiled = 13;
}
+// Used by: common.proto
+message MMSKeyValuePair {
+ optional string name = 1;
+ optional string value = 2;
+}
+
message SiteServerUI_CancelLogin_Request {
}
@@ -3626,6 +7184,25 @@ message SiteServerUI_Status_Response {
optional int32 acct_status = 5;
}
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message SteamAward {
+ optional int32 voteid = 1;
+ optional SteamAward_Localization localization = 2;
+ optional int32 award_year = 3;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message SteamAward_Localization {
+ optional string title = 1;
+}
+
+message SteamMessagesClientIClientForcedEnumDependencies {
+ optional int32 a = 1 [(webui.description) = "enum"];
+ optional int32 b = 2 [(webui.description) = "enum"];
+ optional int32 c = 3 [(webui.description) = "enum"];
+ optional int32 d = 4 [(webui.description) = "enum"];
+}
+
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreBrowseContext {
optional string language = 1;
@@ -3672,6 +7249,9 @@ message StoreBrowseItemDataRequest {
optional bool include_assets_without_overrides = 15;
optional bool apply_user_filters = 16;
optional bool include_links = 17;
+ optional bool include_extra_details = 18;
+ optional bool include_best_purchase_option = 19 [default = true];
+ optional bool include_optin_registration_tags = 20;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3680,8 +7260,15 @@ message StoreGameRating {
optional string rating = 2;
repeated string descriptors = 3;
optional string interactive_elements = 4;
+ optional int32 agency = 5 [(webui.description) = "enum"];
+ optional bool banned = 6;
+ optional bool esrb_online_music_not_rated = 7;
+ optional bool esrb_online_interactions_not_rated = 8;
+ repeated int32 survey_interactive_elements = 9 [(webui.description) = "enum"];
optional int32 required_age = 10;
optional bool use_age_gate = 11;
+ repeated int32 descriptor_images = 12 [(webui.description) = "enum"];
+ optional string content_survey_notes = 13;
optional string image_url = 20;
optional string image_target = 21;
}
@@ -3695,6 +7282,7 @@ message StoreItem {
optional bool unvailable_for_country_restriction = 5;
optional string name = 6;
optional string store_url_path = 7;
+ optional string store_url_slug = 8;
optional uint32 appid = 9;
optional int32 type = 10 [(webui.description) = "enum"];
repeated int32 included_types = 11 [(webui.description) = "enum"];
@@ -3726,14 +7314,34 @@ message StoreItem {
optional bool unlisted = 55;
optional uint32 game_count = 56;
optional string internal_name = 57;
- optional string full_description = 58;
- //optional string full_description_bbcode = 58;
+ optional string full_description_bbcode = 58;
+ //optional string full_description = 58;
optional bool is_free_temporarily = 59;
optional StoreItem_Assets assets_without_overrides = 60;
optional StoreBrowseFilterFailure user_filter_failure = 70;
repeated StoreItem_Link links = 71;
optional string purchase_description_bbcode = 72;
repeated StoreItem_PackageGroup package_groups = 74;
+ optional StoreItem_ExtraDetails extra_details = 75;
+ optional fixed64 gid = 76;
+ repeated StoreItem_OptInRegistrationTags optin_registration_tags = 77;
+ repeated StoreItem_PurchaseNote purchase_notes = 78;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_AIGeneratedContentService {
+ optional string name = 1;
+ optional string url = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_Anticheat {
+ optional bool kernel_mode = 1;
+ optional bool uninstall_completely = 2;
+ optional bool boot_protection = 3;
+ optional string boot_protection_name = 4;
+ optional string name = 5;
+ optional string name_loc = 6;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3758,6 +7366,8 @@ message StoreItem_Assets {
optional string main_capsule_2x = 18;
optional string small_capsule_2x = 19;
optional string header_2x = 20;
+ optional uint32 last_modified = 21;
+ optional string creator_home_background = 22;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3789,11 +7399,189 @@ message StoreItem_Demo {
optional bool show_above_purchase = 3;
}
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_Eula {
+ optional string name = 1;
+ optional string url = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails {
+ repeated SteamAward steam_award = 1;
+ optional bool vetted = 2;
+ optional bool no_mouse_keyboard_support = 3;
+ optional bool controller_wizard_complete = 4;
+ optional string drm_third_party_type = 5;
+ optional string drm_activation_limit = 6;
+ optional string user_account_third_party = 7;
+ optional bool user_account_third_party_link_to_steam = 8;
+ optional StoreItem_ExtraDetails_Anticheat anticheat = 9;
+ //optional StoreItem_Anticheat anticheat = 9;
+ repeated StoreItem_ExtraDetails_Eula eula = 10;
+ //repeated StoreItem_Eula eula = 10;
+ optional StoreItem_ExtraDetails_AIGeneratedContentService ai_generation_service = 11;
+ //optional StoreItem_AIGeneratedContentService ai_generation_service = 11;
+ optional bool refund_checks_ea_playtime = 12;
+ repeated StoreItem_ExtraDetails_PageSection section = 13;
+ //repeated StoreItem_PageSection section = 13;
+ optional string legal_notice_bbcode = 14;
+ repeated int32 interactive_elements = 15 [(webui.description) = "enum"];
+ optional string content_survey_notes = 16;
+ optional string content_survey_ai_notes = 17;
+ repeated StoreItem_ExtraDetails_PressReview press_review = 18;
+ //repeated StoreItem_PressReview press_review = 18;
+ optional string partner_awards_bbcode = 19;
+ optional StoreItem_ExtraDetails_EarlyAccess early_access = 20;
+ optional CSeasonPass season_pass = 21;
+ optional StoreItem_ExtraDetails_LinksAndInfo links_and_info = 22;
+ optional bool item_store_eligible = 23;
+ optional bool points_shop_eligible = 24;
+ optional StoreItem_ExtraDetails_Metacritic metacritic = 26;
+ optional StoreItem_ExtraDetails_CastAndCrew cast_and_crew = 27;
+ optional StoreItem_ExtraDetails_SystemRequirements system_requirements = 28;
+ optional uint32 running_time_minutes = 29;
+ optional StoreItem_ExtraDetails_Episode episode = 30;
+ repeated StoreItem_ExtraDetails_Season seasons = 31;
+ optional int32 video_extras_note = 32 [(webui.description) = "enum"];
+ optional bool has_community_hub = 33;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_AIGeneratedContentService {
+ optional string name = 1;
+ optional string url = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_Anticheat {
+ optional bool kernel_mode = 1;
+ optional bool uninstall_completely = 2;
+ optional bool boot_protection = 3;
+ optional string boot_protection_name = 4;
+ optional string name = 5;
+ optional string name_loc = 6;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_CastAndCrew {
+ repeated string directors = 1;
+ repeated string producers = 2;
+ repeated string writers = 3;
+ repeated string music = 4;
+ repeated string actors = 5;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_EarlyAccess {
+ optional string why_bbcode = 1;
+ optional string how_long_bbcode = 2;
+ optional string full_version_bbcode = 3;
+ optional string current_state_bbcode = 4;
+ optional string pricing_bbcode = 5;
+ optional string community_bbcode = 6;
+ optional string description_bbcode = 7;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_Episode {
+ optional string number = 1;
+ optional int32 type = 2 [(webui.description) = "enum"];
+ optional bool hide_details = 3;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_Eula {
+ optional string name = 1;
+ optional string url = 2;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_LinksAndInfo {
+ optional string website = 1;
+ optional string stats_url = 2;
+ optional string online_manual_url = 3;
+ optional string health_warning_url = 4;
+ optional string privacy_policy_url = 5;
+ repeated int32 available_documents = 6 [(webui.description) = "enum"];
+ repeated uint32 genreids = 7;
+ repeated string manufacturers = 8;
+ optional bool achievements_visible = 9;
+ optional uint32 achievement_count = 10;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_Metacritic {
+ optional uint32 score = 1;
+ optional string url = 2;
+ optional bool always_show = 3;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_PageSection {
+ optional string label = 1;
+ optional string content_bbcode = 2;
+ optional int32 banner = 3 [(webui.description) = "enum"];
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_PressReview {
+ optional string quote = 1;
+ optional string score = 2;
+ optional string site = 3;
+ optional string url = 4;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_Season {
+ optional int32 index = 1;
+ optional string name = 2;
+ repeated uint32 episode_appids = 3;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_SystemRequirements {
+ repeated StoreItem_ExtraDetails_SystemRequirements_PlatformRequirements platforms = 1;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_SystemRequirements_PlatformRequirements {
+ optional int32 platform = 1 [(webui.description) = "enum"];
+ optional StoreItem_ExtraDetails_SystemRequirements_Requirements minimum = 2;
+ optional StoreItem_ExtraDetails_SystemRequirements_Requirements recommended = 3;
+ optional bool requires_64bit = 4;
+ optional bool requires_apple_silicon = 5;
+ optional int32 unsupported_os_note = 6 [(webui.description) = "enum"];
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_SystemRequirements_Requirements {
+ optional string os_version = 1;
+ optional bool os_version_unsupported = 2;
+ optional string processor = 3;
+ optional StoreItem_ExtraDetails_SystemRequirements_Size memory = 4;
+ optional string graphics = 5;
+ optional string directx = 6;
+ optional bool broadband = 7;
+ optional StoreItem_ExtraDetails_SystemRequirements_Size storage = 8;
+ optional StoreItem_ExtraDetails_SystemRequirements_Size storage_hq = 9;
+ optional string sound_card = 10;
+ optional string vr_support = 11;
+ optional string notes = 12;
+ optional string legacy_bbcode = 13;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_ExtraDetails_SystemRequirements_Size {
+ optional string amount = 1;
+ optional string units = 2;
+}
+
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreItem_FreeWeekend {
optional uint32 start_time = 1;
optional uint32 end_time = 2;
optional string text = 3;
+ optional uint32 appid = 4;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3801,6 +7589,7 @@ message StoreItem_IncludedItems {
repeated StoreItem included_apps = 1;
repeated StoreItem included_packages = 2;
repeated StoreItem included_bundles = 3;
+ repeated StoreItem included_creators = 4;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3810,6 +7599,12 @@ message StoreItem_Link {
optional string text = 3;
}
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_OptInRegistrationTags {
+ optional string optin_name = 1;
+ repeated string values = 2;
+}
+
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreItem_PackageGroup {
optional string name = 1;
@@ -3819,6 +7614,13 @@ message StoreItem_PackageGroup {
optional string dropdown_description_bbcode = 5;
}
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_PageSection {
+ optional string label = 1;
+ optional string content_bbcode = 2;
+ optional int32 banner = 3 [(webui.description) = "enum"];
+}
+
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreItem_Platforms {
optional bool windows = 1;
@@ -3828,12 +7630,14 @@ message StoreItem_Platforms {
optional int32 steam_deck_compat_category = 11 [(webui.description) = "enum"];
optional int32 steam_os_compat_category = 12 [(webui.description) = "enum"];
optional int32 steam_frame_compat_category = 13 [(webui.description) = "enum"];
+ optional int32 steam_machine_compat_category = 14 [(webui.description) = "enum"];
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreItem_Platforms_VRSupport {
optional bool vrhmd = 1;
optional bool vrhmd_only = 2;
+ optional bool show_optional_vr_mode_notice = 3;
optional bool htc_vive = 40;
optional bool oculus_rift = 41;
optional bool windows_mr = 42;
@@ -3846,6 +7650,21 @@ message StoreItem_Playtest {
optional bool is_open = 2;
}
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_PressReview {
+ optional string quote = 1;
+ optional string score = 2;
+ optional string site = 3;
+ optional string url = 4;
+}
+
+// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
+message StoreItem_PurchaseNote {
+ optional int32 type = 1 [(webui.description) = "enum"];
+ optional bool highlighted = 2;
+ optional string text_bbcode = 3;
+}
+
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
message StoreItem_PurchaseOption {
optional int32 packageid = 1;
@@ -3878,6 +7697,7 @@ message StoreItem_PurchaseOption {
optional int64 price_to_base_discount_on = 53;
optional uint32 free_with_master_sub_appid = 54;
optional string formatted_lowest_recent_price = 55;
+ optional bool is_free_license = 56;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -3914,6 +7734,7 @@ message StoreItem_RelatedItems {
repeated StoreItem_Demo standalone_demos = 5;
repeated StoreItem_Playtest playtests = 6;
optional StoreItem_RelatedF2P related_f2p = 7;
+ repeated uint32 dlc_parent_appids = 9;
}
// Used by: Checkout, MarketingMessages, PartnerStoreBrowse, SteamCharts, Store, StoreAppSimilarity, StoreBrowse, StoreMarketing, StoreQuery, StoreTopSellers, UserStoreVisit, Wishlist
@@ -4019,6 +7840,7 @@ message StoreItemID {
optional uint32 tagid = 4;
optional uint32 creatorid = 5;
optional uint32 hubcategoryid = 6;
+ optional fixed64 salepagegid = 7;
}
// Used by: Player, PlayerClient, Store, StoreClient
@@ -4032,7 +7854,7 @@ message UserContentDescriptorPreferences_ContentDescriptor {
optional uint32 timestamp_added = 2;
}
-// Used by: AccountHardware, User, common.proto
+// Used by: AccountHardware, ClientMetrics, User
message UserSystemInformation {
optional string manufacturer = 1;
optional string model = 2;
@@ -4054,3 +7876,12 @@ message UserSystemInformation {
optional uint32 screen_height = 19;
optional bool precise_frame_rate = 20;
}
+
+// Used by: common.proto
+message Vector2 {
+ optional float x = 1;
+ optional float y = 2;
+}
+
+message WebUINoResponse {
+}
diff --git a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto
index c6cd1676..ca434e6b 100644
--- a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto
+++ b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto
@@ -57,4 +57,3 @@ service CloudConfigStore {
service CloudConfigStoreClient {
rpc NotifyChange (CCloudConfigStore_Change_Notification) returns (NoResponse);
}
-
diff --git a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_store.proto b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_store.proto
index 3d16991c..1d5a2e10 100644
--- a/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_store.proto
+++ b/javasteam-protobufs-webui/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_store.proto
@@ -1,5 +1,5 @@
-import "in/dragonbra/javasteam/protobufs/webui/common_base.proto";
import "in/dragonbra/javasteam/protobufs/webui/common.proto";
+import "in/dragonbra/javasteam/protobufs/webui/common_base.proto";
package webui;
@@ -361,7 +361,7 @@ message CStore_UpdatePackageReservations_Response {
message CStore_UserPreferences {
optional int32 primary_language = 1;
- optional uint32 secondary_languages = 2;
+ optional uint64 secondary_languages = 2;
optional bool platform_windows = 3;
optional bool platform_mac = 4;
optional bool platform_linux = 5;
@@ -403,55 +403,55 @@ message CStoreDiscoveryQueueSettings {
}
service Store {
- // ePrivilege=4
+ // ePrivilege=4, rgBrowserAPISites=ArrayExpression
rpc DeleteReservationPositionMessage (CStore_DeleteReservationPositionMessage_Request) returns (CStore_DeleteReservationPositionMessage_Response);
// bConstMethod=true, ePrivilege=4
rpc GetAllReservationPositionMessages (CStore_GetAllReservationPositionMessages_Request) returns (CStore_GetAllReservationPositionMessages_Response);
- // bConstMethod=true, ePrivilege=1
+ // bConstMethod=true, ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc GetDiscoveryQueue (CStore_GetDiscoveryQueue_Request) returns (CStore_GetDiscoveryQueue_Response);
// bConstMethod=true, ePrivilege=1
rpc GetDiscoveryQueueSettings (CStore_GetDiscoveryQueueSettings_Request) returns (CStore_GetDiscoveryQueueSettings_Response);
- // bConstMethod=true, ePrivilege=1
+ // bConstMethod=true, ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc GetDiscoveryQueueSkippedApps (CStore_GetDiscoveryQueueSkippedApps_Request) returns (CStore_GetDiscoveryQueueSkippedApps_Response);
- // bConstMethod=true, ePrivilege=2, eWebAPIKeyRequirement=1
+ // bConstMethod=true, ePrivilege=2, eWebAPIKeyRequirement=1, rgBrowserAPISites=ArrayExpression
rpc GetGamesFollowed (CStore_GetGamesFollowed_Request) returns (CStore_GetGamesFollowed_Response);
- // bConstMethod=true, ePrivilege=2, eWebAPIKeyRequirement=1
+ // bConstMethod=true, ePrivilege=2, eWebAPIKeyRequirement=1, rgBrowserAPISites=ArrayExpression
rpc GetGamesFollowedCount (CStore_GetGamesFollowedCount_Request) returns (CStore_GetGamesFollowedCount_Response);
// bConstMethod=true, ePrivilege=1, eWebAPIKeyRequirement=1
rpc GetLocalizedNameForTags (CStore_GetLocalizedNameForTags_Request) returns (CStore_GetLocalizedNameForTags_Response);
// bConstMethod=true, ePrivilege=1, eWebAPIKeyRequirement=1
rpc GetMostPopularTags (CStore_GetMostPopularTags_Request) returns (CStore_GetMostPopularTags_Response);
- // bConstMethod=true, ePrivilege=1
+ // bConstMethod=true, ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc GetRecommendedTagsForUser (CStore_GetRecommendedTagsForUser_Request) returns (CStore_GetRecommendedTagsForUser_Response);
- // bConstMethod=true, ePrivilege=1
+ // bConstMethod=true, ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc GetStorePreferences (CStore_GetStorePreferences_Request) returns (CStore_GetStorePreferences_Response);
- // bConstMethod=true, ePrivilege=1, eWebAPIKeyRequirement=1
+ // bConstMethod=true, ePrivilege=1, eWebAPIKeyRequirement=1, rgBrowserAPISites=ArrayExpression
rpc GetTagList (CStore_GetTagList_Request) returns (CStore_GetTagList_Response);
// bConstMethod=true, ePrivilege=1
rpc GetTrendingAppsAmongFriends (CStore_GetTrendingAppsAmongFriends_Request) returns (CStore_GetTrendingAppsAmongFriends_Response);
// ePrivilege=1
rpc GetUserGameInterestState (CStore_GetUserGameInterestState_Request) returns (CStore_GetUserGameInterestState_Response);
- // ePrivilege=1
+ // ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc GetWishlistDemoEmailStatus (CStore_GetWishlistDemoEmailStatus_Request) returns (CStore_GetWishlistDemoEmailStatus_Response);
// ePrivilege=1
rpc MigratePartnerLinkTracking (CStore_MigratePartnerLinkTracking_Notification) returns (NoResponse);
- // ePrivilege=1
+ // ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc QueueWishlistDemoEmailToFire (CStore_QueueWishlistDemoEmailToFire_Request) returns (CStore_QueueWishlistDemoEmailToFire_Response);
// ePrivilege=1
rpc RegisterCDKey (CStore_RegisterCDKey_Request) returns (CStore_RegisterCDKey_Response);
- // ePrivilege=4
+ // ePrivilege=4, rgBrowserAPISites=ArrayExpression
rpc ReloadAllReservationPositionMessages (CStore_ReloadAllReservationPositionMessages_Notification) returns (NoResponse);
// ePrivilege=3
rpc ReportApp (CStore_ReportApp_Request) returns (CStore_ReportApp_Response);
// ePrivilege=1
rpc SetCompatibilityFeedback (CSteamDeckCompatibility_SetFeedback_Request) returns (CSteamDeckCompatibility_SetFeedback_Response);
- // ePrivilege=4
+ // ePrivilege=4, rgBrowserAPISites=ArrayExpression
rpc SetReservationPositionMessage (CStore_SetReservationPositionMessage_Request) returns (CStore_SetReservationPositionMessage_Response);
// ePrivilege=1
rpc ShouldPromptForCompatibilityFeedback (CSteamDeckCompatibility_ShouldPrompt_Request) returns (CSteamDeckCompatibility_ShouldPrompt_Response);
- // ePrivilege=1
+ // ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc SkipDiscoveryQueueItem (CStore_SkipDiscoveryQueueItem_Request) returns (CStore_SkipDiscoveryQueueItem_Response);
- // ePrivilege=1
+ // ePrivilege=1, rgBrowserAPISites=ArrayExpression
rpc UpdatePackageReservations (CStore_UpdatePackageReservations_Request) returns (CStore_UpdatePackageReservations_Response);
}
diff --git a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/base_gcmessages.proto b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/base_gcmessages.proto
index cdd157f8..8a82be74 100644
--- a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/base_gcmessages.proto
+++ b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/base_gcmessages.proto
@@ -1,5 +1,4 @@
import "in/dragonbra/javasteam/protobufs/tf/steammessages.proto";
-import "in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto";
option java_package = "in.dragonbra.javasteam.protobufs.tf";
diff --git a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/steammessages.proto b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/steammessages.proto
index 94b18f4d..b8c0f197 100644
--- a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/steammessages.proto
+++ b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/steammessages.proto
@@ -1,5 +1,4 @@
import "google/protobuf/descriptor.proto";
-import "in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto";
option java_package = "in.dragonbra.javasteam.protobufs.tf";
diff --git a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_gcmessages.proto b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_gcmessages.proto
index 771c8d49..2aeb0777 100644
--- a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_gcmessages.proto
+++ b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_gcmessages.proto
@@ -1,4 +1,3 @@
-import "in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto";
import "in/dragonbra/javasteam/protobufs/tf/steammessages.proto";
import "in/dragonbra/javasteam/protobufs/tf/base_gcmessages.proto";
diff --git a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto
index ea854e3c..dccd3779 100644
--- a/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto
+++ b/javasteam-tf/src/main/proto/in/dragonbra/javasteam/protobufs/tf/tf_proto_def_messages.proto
@@ -278,16 +278,19 @@ message CMsgQuestObjectiveDef {
TF_COND_COMPETITIVE_LOSER = 117;
TF_COND_HEALING_DEBUFF = 118;
TF_COND_PASSTIME_PENALTY_DEBUFF = 119;
- TF_COND_PARACHUTE_DEPLOYED = 120;
- TF_COND_NO_COMBAT_SPEED_BOOST = 121;
- TF_COND_TRANQ_SPY_BOOST = 122;
- TF_COND_TRANQ_MARKED = 123;
- TF_COND_ROCKETPACK = 126;
- TF_COND_ROCKETPACK_PASSENGER = 127;
- TF_COND_STEALTHED_PHASE = 128;
- TF_COND_CLIP_OVERLOAD = 129;
- TF_COND_SPY_CLASS_STEAL = 130;
- TF_COND_GAS = 131;
+ TF_COND_GRAPPLED_TO_PLAYER = 120;
+ TF_COND_GRAPPLED_BY_PLAYER = 121;
+ TF_COND_PARACHUTE_DEPLOYED = 122;
+ TF_COND_GAS = 123;
+ TF_COND_BURNING_PYRO = 124;
+ TF_COND_ROCKETPACK = 125;
+ TF_COND_LOST_FOOTING = 126;
+ TF_COND_AIR_CURRENT = 127;
+ TF_COND_HALLOWEEN_HELL_HEAL = 128;
+ TF_COND_POWERUPMODE_DOMINANT = 129;
+ TF_COND_IMMUNE_TO_PUSHBACK = 130;
+ TF_COND_ENEMY_GLOWS = 131;
+ TF_COND_SUPERHEATED = 132;
}
enum ETF2Team {
diff --git a/protosync-whitelist.txt b/protosync-whitelist.txt
new file mode 100644
index 00000000..9202324e
--- /dev/null
+++ b/protosync-whitelist.txt
@@ -0,0 +1,144 @@
+# Whitelist of protos managed by `gradlew syncProtobufs`.
+#
+# Only files listed here are synced from SteamTracking/Protobufs. The task will:
+# - create a listed file if it does not exist locally yet
+# - report (and NOT add) any upstream import of an unlisted file; protoc will fail
+# if a listed proto actually uses its types - vet the file and add it here
+# - warn about local .proto files that are not listed (unmanaged)
+#
+# One file name per line under a [module] section. Sections are the local package
+# directory names: steamclient, webui, cs, dota2, tf, deadlock.
+# Blank lines and lines starting with '#' are ignored.
+# This is similar to https://github.com/SteamRE/SteamKit/blob/master/Resources/ProtobufGen/protos.csv
+
+[steamclient]
+clientmetrics.proto
+content_manifest.proto
+contenthubs.proto
+encrypted_app_ticket.proto
+enums.proto
+enums_productinfo.proto
+steammessages_auth.steamclient.proto
+steammessages_base.proto
+steammessages_chat.steamclient.proto
+steammessages_client_objects.proto
+steammessages_clientmetrics.steamclient.proto
+steammessages_clientserver.proto
+steammessages_clientserver_2.proto
+steammessages_clientserver_appinfo.proto
+steammessages_clientserver_friends.proto
+steammessages_clientserver_gameservers.proto
+steammessages_clientserver_lbs.proto
+steammessages_clientserver_login.proto
+steammessages_clientserver_mms.proto
+steammessages_clientserver_ucm.proto
+steammessages_clientserver_uds.proto
+steammessages_clientserver_userstats.proto
+steammessages_cloud.steamclient.proto
+steammessages_contentsystem.steamclient.proto
+steammessages_familygroups.steamclient.proto
+steammessages_friendmessages.steamclient.proto
+steammessages_gamenotifications.steamclient.proto
+steammessages_inventory.steamclient.proto
+steammessages_parental.steamclient.proto
+steammessages_parental_objects.proto
+steammessages_player.steamclient.proto
+steammessages_publishedfile.steamclient.proto
+steammessages_remoteclient_service.steamclient.proto
+steammessages_remoteclient_service_messages.proto
+steammessages_store.steamclient.proto
+steammessages_storebrowse.steamclient.proto
+steammessages_twofactor.steamclient.proto
+steammessages_unified_base.steamclient.proto
+steammessages_useraccount.steamclient.proto
+steammessages_seasonpass_types.proto
+steammessages_steamawards_types.proto
+steammessages_appratings_types.proto
+
+[webui]
+common.proto
+common_base.proto
+service_clientcomm.proto
+service_cloudconfigstore.proto
+service_store.proto
+
+[cs]
+base_gcmessages.proto
+cstrike15_gcmessages.proto
+econ_gcmessages.proto
+engine_gcmessages.proto
+gcsdk_gcmessages.proto
+gcsystemmsgs.proto
+netmessages.proto
+network_connection.proto
+networkbasetypes.proto
+source2_steam_stats.proto
+steammessages.proto
+valveextensions.proto
+
+[dota2]
+base_gcmessages.proto
+dota_client_enums.proto
+dota_gcmessages_client.proto
+dota_gcmessages_client_chat.proto
+dota_gcmessages_client_coaching.proto
+dota_gcmessages_client_craftworks.proto
+dota_gcmessages_client_fantasy.proto
+dota_gcmessages_client_guild.proto
+dota_gcmessages_client_guild_events.proto
+dota_gcmessages_client_match_management.proto
+dota_gcmessages_client_team.proto
+dota_gcmessages_client_tournament.proto
+dota_gcmessages_client_watch.proto
+dota_gcmessages_common.proto
+dota_gcmessages_common_craftworks.proto
+dota_gcmessages_common_league.proto
+dota_gcmessages_common_lobby.proto
+dota_gcmessages_common_match_management.proto
+dota_gcmessages_common_monster_hunter.proto
+dota_gcmessages_common_overworld.proto
+dota_gcmessages_common_survivors.proto
+dota_gcmessages_msgid.proto
+dota_gcmessages_server.proto
+dota_gcmessages_webapi.proto
+dota_match_metadata.proto
+dota_shared_enums.proto
+econ_gcmessages.proto
+econ_shared_enums.proto
+gcsdk_gcmessages.proto
+gcsystemmsgs.proto
+network_connection.proto
+networkbasetypes.proto
+steammessages.proto
+steammessages_oauth.steamworkssdk.proto
+steammessages_steamlearn.steamworkssdk.proto
+steammessages_unified_base.steamworkssdk.proto
+valveextensions.proto
+events.proto
+event_gcmessages_common.proto
+
+[tf]
+base_gcmessages.proto
+econ_gcmessages.proto
+gcsdk_gcmessages.proto
+gcsystemmsgs.proto
+steammessages.proto
+tf_gcmessages.proto
+tf_proto_def_messages.proto
+
+[deadlock]
+base_gcmessages.proto
+citadel_gcmessages_client.proto
+citadel_gcmessages_common.proto
+citadel_gcmessages_server.proto
+econ_gcmessages.proto
+econ_shared_enums.proto
+engine_gcmessages.proto
+gcsdk_gcmessages.proto
+gcsystemmsgs.proto
+steammessages.proto
+steammessages_steamlearn.steamworkssdk.proto
+steammessages_unified_base.steamworkssdk.proto
+valveextensions.proto
+networkbasetypes.proto
+
diff --git a/src/main/java/in/dragonbra/javasteam/steam/cdn/Server.kt b/src/main/java/in/dragonbra/javasteam/steam/cdn/Server.kt
index 82a2035f..55cd7b96 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/cdn/Server.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/cdn/Server.kt
@@ -130,6 +130,12 @@ class Server {
var allowedAppIds: IntArray = intArrayOf()
internal set
+ /**
+ * Gets the list of bypass proxies.
+ */
+ var bypassProxiesOfType: List = emptyList()
+ internal set
+
/**
* Returns a string that represents this server.
*/
diff --git a/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/Lobby.kt b/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/Lobby.kt
index b2b6cb33..f67520e5 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/Lobby.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/Lobby.kt
@@ -2,6 +2,7 @@ package `in`.dragonbra.javasteam.steam.handlers.steammatchmaking
import com.google.protobuf.ByteString
import `in`.dragonbra.javasteam.enums.ELobbyType
+import `in`.dragonbra.javasteam.protobufs.steamclient.SteammessagesClientserverMms.MMSKeyValuePair
import `in`.dragonbra.javasteam.types.KeyValue
import `in`.dragonbra.javasteam.types.SteamID
import `in`.dragonbra.javasteam.util.stream.MemoryStream
@@ -39,28 +40,40 @@ class Lobby(
) {
companion object {
- internal fun ByteArray.toByteString(): ByteString = ByteString.copyFrom(this)
-
@JvmStatic
- internal fun encodeMetadata(metadata: Map?): ByteArray {
- val keyValue = KeyValue("")
+ internal fun encodeMetadata(metadata: Map?): List =
+ metadata.orEmpty().map { (key, value) ->
+ MMSKeyValuePair.newBuilder()
+ .setName(key)
+ .setValue(value)
+ .build()
+ }
- metadata?.forEach { entry ->
- keyValue[entry.key] = KeyValue(null, entry.value)
+ /**
+ * Decodes lobby metadata, preferring the key-value pair list and falling back to the
+ * legacy binary [KeyValue] blob when the list is empty.
+ */
+ @JvmStatic
+ internal fun decodeMetadata(pairs: List, legacyBuffer: ByteString?): Map {
+ if (pairs.isEmpty()) {
+ return decodeMetadata(buffer = legacyBuffer)
}
- return MemoryStream().use { ms ->
- keyValue.saveToStream(ms.asOutputStream(), true)
- ms.toByteArray()
+ val metadata = HashMap(pairs.size)
+ pairs.forEach { pair ->
+ if (!pair.hasName()) {
+ return@forEach
+ }
+
+ metadata[pair.name] = pair.value ?: ""
}
- }
- @JvmStatic
- internal fun decodeMetadata(buffer: ByteString?): Map = decodeMetadata(buffer?.toByteArray())
+ return metadata
+ }
@JvmStatic
- internal fun decodeMetadata(buffer: ByteArray?): Map {
- if (buffer == null || buffer.isEmpty()) {
+ internal fun decodeMetadata(buffer: ByteString?): Map {
+ if (buffer == null || buffer.isEmpty) {
return emptyMap()
}
@@ -68,7 +81,7 @@ class Lobby(
MemoryStream(buffer).use { ms ->
if (!keyValue.tryReadAsBinary(ms)) {
- throw NumberFormatException("Lobby metadata is of an unexpected format")
+ throw IllegalArgumentException("Lobby metadata is of an unexpected format")
}
}
@@ -76,7 +89,7 @@ class Lobby(
keyValue.children.forEach { value ->
if (value.name == null || value.value == null) {
- return metadata
+ return@forEach
}
metadata[value.name!!] = value.value!!
diff --git a/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/SteamMatchmaking.kt b/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/SteamMatchmaking.kt
index 11656978..964f8294 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/SteamMatchmaking.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/handlers/steammatchmaking/SteamMatchmaking.kt
@@ -26,7 +26,6 @@ import `in`.dragonbra.javasteam.protobufs.steamclient.SteammessagesClientserverM
import `in`.dragonbra.javasteam.protobufs.steamclient.SteammessagesClientserverMms.CMsgClientMMSUserLeftLobby
import `in`.dragonbra.javasteam.steam.handlers.ClientMsgHandler
import `in`.dragonbra.javasteam.steam.handlers.steamfriends.SteamFriends
-import `in`.dragonbra.javasteam.steam.handlers.steammatchmaking.Lobby.Companion.toByteString
import `in`.dragonbra.javasteam.steam.handlers.steammatchmaking.callback.CreateLobbyCallback
import `in`.dragonbra.javasteam.steam.handlers.steammatchmaking.callback.GetLobbyListCallback
import `in`.dragonbra.javasteam.steam.handlers.steammatchmaking.callback.JoinLobbyCallback
@@ -100,7 +99,6 @@ class SteamMatchmaking : ClientMsgHandler() {
body.lobbyType = lobbyType.code()
body.maxMembers = maxMembers
body.lobbyFlags = lobbyFlags
- body.metadata = Lobby.encodeMetadata(metadata).toByteString()
body.cellId = client.cellID!!
body.publicIp = NetHelpers.getMsgIPAddress(client.publicIP!!)
body.personaNameOwner = personaName
@@ -108,6 +106,8 @@ class SteamMatchmaking : ClientMsgHandler() {
sourceJobID = client.getNextJobID()
}
+ createLobby.body.metadataList.addAll(Lobby.encodeMetadata(metadata))
+
send(msg = createLobby, appId = appId)
lobbyManipulationRequests[createLobby.sourceJobID] = createLobby.body.build()
@@ -145,11 +145,12 @@ class SteamMatchmaking : ClientMsgHandler() {
body.lobbyType = lobbyType.code()
body.maxMembers = maxMembers
body.lobbyFlags = lobbyFlags
- body.metadata = Lobby.encodeMetadata(metadata).toByteString()
sourceJobID = client.getNextJobID()
}
+ setLobbyData.body.metadataList.addAll(Lobby.encodeMetadata(metadata))
+
send(msg = setLobbyData, appId = appId)
lobbyManipulationRequests[setLobbyData.sourceJobID] = setLobbyData.body.build()
@@ -181,11 +182,12 @@ class SteamMatchmaking : ClientMsgHandler() {
body.appId = appId
body.steamIdLobby = lobbySteamId.convertToUInt64()
body.steamIdMember = client.steamID!!.convertToUInt64()
- body.metadata = Lobby.encodeMetadata(metadata).toByteString()
sourceJobID = client.getNextJobID()
}
+ setLobbyData.body.metadataList.addAll(Lobby.encodeMetadata(metadata))
+
send(msg = setLobbyData, appId = appId)
lobbyManipulationRequests[setLobbyData.sourceJobID] = setLobbyData.body.build()
@@ -421,7 +423,7 @@ class SteamMatchmaking : ClientMsgHandler() {
lobbyType = ELobbyType.from(createLobby.lobbyType),
lobbyFlags = createLobby.lobbyFlags,
ownerSteamID = client.steamID,
- metadata = Lobby.decodeMetadata(createLobby.metadata),
+ metadata = Lobby.decodeMetadata(createLobby.metadataList, createLobby.metadataKv),
maxMembers = createLobby.maxMembers,
numMembers = 1,
members = members,
@@ -440,7 +442,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleSetLobbyDataResponse(packetMsg: IPacketMsg) {
+ private fun handleSetLobbyDataResponse(packetMsg: IPacketMsg) {
val setLobbyDataResponse = ClientMsgProtobuf(
CMsgClientMMSSetLobbyDataResponse::class.java,
packetMsg
@@ -453,7 +455,7 @@ class SteamMatchmaking : ClientMsgHandler() {
val lobby = lobbyCache.getLobby(appId = setLobbyData.appId, lobbySteamId = setLobbyData.steamIdLobby)
if (lobby != null) {
- val metadata = Lobby.decodeMetadata(setLobbyData.metadata)
+ val metadata = Lobby.decodeMetadata(setLobbyData.metadataList, setLobbyData.metadataKv)
if (setLobbyData.steamIdMember == 0L) {
lobbyCache.cacheLobby(
@@ -494,7 +496,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleSetLobbyOwnerResponse(packetMsg: IPacketMsg) {
+ private fun handleSetLobbyOwnerResponse(packetMsg: IPacketMsg) {
val setLobbyOwnerResponse = ClientMsgProtobuf(
CMsgClientMMSSetLobbyOwnerResponse::class.java,
packetMsg
@@ -520,7 +522,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleGetLobbyListResponse(packetMsg: IPacketMsg) {
+ private fun handleGetLobbyListResponse(packetMsg: IPacketMsg) {
val lobbyListResponse = ClientMsgProtobuf(
CMsgClientMMSGetLobbyListResponse::class.java,
packetMsg
@@ -535,7 +537,7 @@ class SteamMatchmaking : ClientMsgHandler() {
lobbyType = ELobbyType.from(lobby.lobbyType),
lobbyFlags = lobby.lobbyFlags,
ownerSteamID = existingLobby?.ownerSteamID,
- metadata = Lobby.decodeMetadata(lobby.metadata),
+ metadata = Lobby.decodeMetadata(lobby.metadataList, lobby.metadataKv),
maxMembers = lobby.maxMembers,
numMembers = lobby.numMembers,
members = members ?: listOf(),
@@ -556,7 +558,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleJoinLobbyResponse(packetMsg: IPacketMsg) {
+ private fun handleJoinLobbyResponse(packetMsg: IPacketMsg) {
val joinLobbyResponse = ClientMsgProtobuf(
CMsgClientMMSJoinLobbyResponse::class.java,
packetMsg
@@ -570,7 +572,7 @@ class SteamMatchmaking : ClientMsgHandler() {
Member(
steamID = SteamID(member.steamId),
personaName = member.personaName,
- metadata = Lobby.decodeMetadata(member.metadata),
+ metadata = Lobby.decodeMetadata(member.metadataList, member.metadataKv),
)
}
@@ -581,7 +583,7 @@ class SteamMatchmaking : ClientMsgHandler() {
lobbyType = ELobbyType.from(body.lobbyType),
lobbyFlags = body.lobbyFlags,
ownerSteamID = SteamID(body.steamIdOwner),
- metadata = Lobby.decodeMetadata(body.metadata),
+ metadata = Lobby.decodeMetadata(body.metadataList, body.metadataKv),
maxMembers = body.maxMembers,
numMembers = members.size,
members = members,
@@ -600,7 +602,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleLeaveLobbyResponse(packetMsg: IPacketMsg) {
+ private fun handleLeaveLobbyResponse(packetMsg: IPacketMsg) {
val leaveLobbyResponse = ClientMsgProtobuf(
CMsgClientMMSLeaveLobbyResponse::class.java,
packetMsg
@@ -619,7 +621,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleLobbyData(packetMsg: IPacketMsg) {
+ private fun handleLobbyData(packetMsg: IPacketMsg) {
val lobbyDataResponse = ClientMsgProtobuf(
CMsgClientMMSLobbyData::class.java,
packetMsg
@@ -634,7 +636,7 @@ class SteamMatchmaking : ClientMsgHandler() {
Member(
steamID = SteamID(member.steamId),
personaName = member.personaName,
- metadata = Lobby.decodeMetadata(member.metadata)
+ metadata = Lobby.decodeMetadata(member.metadataList, member.metadataKv)
)
}
}
@@ -644,7 +646,7 @@ class SteamMatchmaking : ClientMsgHandler() {
lobbyType = ELobbyType.from(body.lobbyType),
lobbyFlags = body.lobbyFlags,
ownerSteamID = SteamID(body.steamIdOwner),
- metadata = Lobby.decodeMetadata(body.metadata),
+ metadata = Lobby.decodeMetadata(body.metadataList, body.metadataKv),
maxMembers = body.maxMembers,
numMembers = body.numMembers,
members = members ?: listOf(),
@@ -661,7 +663,7 @@ class SteamMatchmaking : ClientMsgHandler() {
).also(client::postCallback)
}
- fun handleUserJoinedLobby(packetMsg: IPacketMsg) {
+ private fun handleUserJoinedLobby(packetMsg: IPacketMsg) {
val userJoinedLobby = ClientMsgProtobuf(
CMsgClientMMSUserJoinedLobby::class.java,
packetMsg
@@ -688,7 +690,7 @@ class SteamMatchmaking : ClientMsgHandler() {
}
}
- fun handleUserLeftLobby(packetMsg: IPacketMsg) {
+ private fun handleUserLeftLobby(packetMsg: IPacketMsg) {
val userLeftLobby = ClientMsgProtobuf(
CMsgClientMMSUserLeftLobby::class.java,
packetMsg
diff --git a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/LogOnDetails.kt b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/LogOnDetails.kt
index 9dbf70b0..e01eae34 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/LogOnDetails.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/LogOnDetails.kt
@@ -35,7 +35,6 @@ import `in`.dragonbra.javasteam.util.Utils
* @param chatMode Gets or sets the chat mode.
* @param uiMode Gets or sets the ui mode.
* @param gamingDeviceType Gets or sets the gaming device type.
- * @param isSteamDeck Gets or sets whether this is Steam Deck login.
*/
data class LogOnDetails(
var username: String = "",
@@ -55,5 +54,4 @@ data class LogOnDetails(
var chatMode: ChatMode = ChatMode.DEFAULT,
var uiMode: EUIMode = EUIMode.Unknown,
var gamingDeviceType: EGamingDeviceType = EGamingDeviceType.Unknown,
- @Deprecated("Use gamingDeviceType instead") var isSteamDeck: Boolean = false,
)
diff --git a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/SteamUser.kt b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/SteamUser.kt
index fbe37795..dff2d7ca 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/SteamUser.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuser/SteamUser.kt
@@ -126,11 +126,6 @@ class SteamUser : ClientMsgHandler() {
logon.body.gamingDeviceType = details.gamingDeviceType.code()
}
- @Suppress("DEPRECATION")
- if (details.isSteamDeck) {
- logon.body.isSteamDeckDeprecated = true
- }
-
// steam guard
if (details.authCode != null) {
logon.body.authCode = details.authCode
diff --git a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuserstats/AchievementBlocks.kt b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuserstats/AchievementBlocks.kt
index f201dfa2..f9f624be 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuserstats/AchievementBlocks.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/handlers/steamuserstats/AchievementBlocks.kt
@@ -36,6 +36,7 @@ data class AchievementBlocks(
*/
val hasProgress: Boolean
get() = progressMax != null && progressMax > 0f
+
/**
* Returns true if this achievement is unlocked.
* An achievement is considered unlocked if it has any non-zero unlock time.
diff --git a/src/main/java/in/dragonbra/javasteam/steam/webapi/ContentServerDirectoryService.kt b/src/main/java/in/dragonbra/javasteam/steam/webapi/ContentServerDirectoryService.kt
index d30c5548..7a376dcf 100644
--- a/src/main/java/in/dragonbra/javasteam/steam/webapi/ContentServerDirectoryService.kt
+++ b/src/main/java/in/dragonbra/javasteam/steam/webapi/ContentServerDirectoryService.kt
@@ -34,6 +34,7 @@ object ContentServerDirectoryService {
this.useAsProxy = child.useAsProxy
this.proxyRequestPathTemplate = child.proxyRequestPathTemplate
this.allowedAppIds = child.allowedAppIdsList.toIntArray()
+ this.bypassProxiesOfType = child.bypassProxiesOfTypeList
}
}
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/clientmetrics.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/clientmetrics.proto
index ad25ae00..a2527842 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/clientmetrics.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/clientmetrics.proto
@@ -1,6 +1,7 @@
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
option optimize_for = SPEED;
+option java_generic_services = false;
message CClientMetrics_ClientBootstrap_RequestInfo {
optional string original_hostname = 1;
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums.proto
index 7c3307f8..6d284970 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums.proto
@@ -1,5 +1,3 @@
-import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
-
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
option optimize_for = SPEED;
@@ -28,6 +26,8 @@ enum EPublishedFileQueryType {
k_PublishedFileQueryType_RankedByInappropriateContentRating = 19;
k_PublishedFileQueryType_RankedByBanContentCheck = 20;
k_PublishedFileQueryType_RankedByLastUpdatedDate = 21;
+ k_PublishedFileQueryType_RankedByNumParentItems = 22;
+ k_PublishedFileQueryType_RankedByNumParentCollections = 23;
}
enum EPublishedFileInappropriateProvider {
@@ -134,14 +134,6 @@ enum ESystemFanControlMode {
k_SystemFanControlMode_Default = 2;
}
-enum EStartupMovieVariant {
- k_EStartupMovieVariant_Invalid = 0;
- k_EStartupMovieVariant_Generic = 1;
- k_EStartupMovieVariant_DeckBlue = 2;
- k_EStartupMovieVariant_DeckOrange = 3;
- k_EStartupMovieVariant_Machine = 4;
-}
-
enum EColorGamutLabelSet {
k_ColorGamutLabelSet_Default = 0;
k_ColorGamutLabelSet_sRGB_Native = 1;
@@ -169,6 +161,14 @@ enum EBluetoothDeviceType {
k_BluetoothDeviceType_Keyboard = 11;
}
+enum ESpeakerConfiguration {
+ k_ESpeakerConfiguration_Other = 0;
+ k_ESpeakerConfiguration_Stereo = 1;
+ k_ESpeakerConfiguration_51 = 2;
+ k_ESpeakerConfiguration_71 = 3;
+ k_ESpeakerConfiguration_51_Ac3 = 4;
+}
+
enum ESystemAudioDirection {
k_SystemAudioDirection_Invalid = 0;
k_SystemAudioDirection_Input = 1;
@@ -208,6 +208,11 @@ enum ESystemServiceState {
k_ESystemServiceState_Enabled = 2;
}
+enum EBluetoothAudioPreference {
+ k_EBluetoothAudioPreference_Quality = 0;
+ k_EBluetoothAudioPreference_Latency = 1;
+}
+
enum EGraphicsPerfOverlayLevel {
k_EGraphicsPerfOverlayLevel_Hidden = 0;
k_EGraphicsPerfOverlayLevel_Basic = 1;
@@ -479,6 +484,15 @@ enum EProvideDeckFeedbackPreference {
k_EProvideDeckFeedbackPreference_No = 2;
}
+enum EHardwareCompatibilityFeedbackDetails {
+ k_EHardwareCompatibilityFeedbackDetails_Unset = 0;
+ k_EHardwareCompatibilityFeedbackDetails_Performance = 1;
+ k_EHardwareCompatibilityFeedbackDetails_Stability = 2;
+ k_EHardwareCompatibilityFeedbackDetails_Legibility = 4;
+ k_EHardwareCompatibilityFeedbackDetails_Input = 8;
+ k_EHardwareCompatibilityFeedbackDetails_Other = 16;
+}
+
enum EGameFrameRateReportingPreference {
k_EGameFrameRateReportingPreference_Unset = 0;
k_EGameFrameRateReportingPreference_No = 1;
@@ -581,6 +595,7 @@ enum ECompromiseDetectionType {
k_ECompromiseDetectionType_MaliciousRefund = 5;
k_ECompromiseDetectionType_Move2FA = 6;
k_ECompromiseDetectionType_DeviceType = 7;
+ k_ECompromiseDetectionType_LeakedCredentialList = 8;
}
enum EAsyncGameSessionUserState {
@@ -639,10 +654,15 @@ enum EProtoAppType {
k_EAppTypeDepotOnly = -2147483648;
}
-enum EChildProcessQueryCommand {
- k_EChildProcessQueryCommand_Invalid = 0;
- k_EChildProcessQueryCommand_GpuTopology = 1;
- k_EChildProcessQueryCommand_Max = 2;
+enum EAppTestType {
+ k_EAppTestType_BuildReview = 0;
+ k_EAppTestType_StorePageReview = 1;
+ k_EAppTestType_SteamChina_BuildReview = 2;
+ k_EAppTestType_SteamChina_StorePageReview = 3;
+ k_EAppTestType_SteamChinaPlatformOperator_StorePageReview = 4;
+ k_EAppTestType_SteamChinaPlatformOperator_BuildReview = 5;
+ k_EAppTestType_SteamDeckCompatibilityReview = 6;
+ k_EAppTestType_SteamFrameCompatibilityReview = 7;
}
enum EChildProcessQueryExitCode {
@@ -668,6 +688,16 @@ enum EWindowsUpdateRebootBehavior {
k_EWindowsUpdateRebootBehavior_MightNeedReboot = 2;
}
+enum EWindowsUpdateOperationResult {
+ k_EWindowsUpdateOperationResult_Unknown = -1;
+ k_EWindowsUpdateOperationResult_NotStarted = 0;
+ k_EWindowsUpdateOperationResult_InProgress = 1;
+ k_EWindowsUpdateOperationResult_Succeeded = 2;
+ k_EWindowsUpdateOperationResult_SucceededWithErrors = 3;
+ k_EWindowsUpdateOperationResult_Failed = 4;
+ k_EWindowsUpdateOperationResult_Aborted = 5;
+}
+
enum EExternalSaleEventType {
k_EExternalSaleEventType_Unknown = 0;
k_EExternalSaleEventType_Publisher = 1;
@@ -687,7 +717,7 @@ enum EEnhancedMarketAppearanceStatus {
enum EContentReportSubjectType {
k_EContentReportSubjectType_Invalid = 0;
k_EContentReportSubjectType_ForumPost = 1;
- k_EContentReportSubjectType_Unused = 2;
+ k_EContentReportSubjectType_CommentThread = 2;
k_EContentReportSubjectType_UGCFile = 3;
k_EContentReportSubjectType_FriendChatMsg = 4;
k_EContentReportSubjectType_ChatRoomMsg = 5;
@@ -726,7 +756,8 @@ enum EContentReportResolution {
k_EContentReportResolution_RemoveAndKick = 13;
k_EContentReportResolution_Sanctioned = 14;
k_EContentReportResolution_Sustained = 15;
- k_EContentReportResolution_MAX = 16;
+ k_EContentReportResolution_Broken = 16;
+ k_EContentReportResolution_MAX = 17;
}
enum EContentModerationSanction {
@@ -738,7 +769,13 @@ enum EContentModerationSanction {
k_EContentModerationSanction_CommentHistoryDeleted = 5;
k_EContentModerationSanction_Relabelled = 6;
k_EContentModerationSanction_MarkAsSuspicious = 7;
- k_EContentModerationSanction_MAX = 8;
+ k_EContentModerationSanction_Warned = 8;
+ k_EContentModerationSanction_KickedFromGroup = 9;
+ k_EContentModerationSanction_HarassmentBanned = 10;
+ k_EContentModerationSanction_HarassmentStrike = 11;
+ k_EContentModerationSanction_Escalate = 12;
+ k_EContentModerationSanction_MarkedIncompatible = 13;
+ k_EContentModerationSanction_MAX = 14;
}
enum EContentReportSubjectAction {
@@ -750,7 +787,7 @@ enum EContentReportSubjectAction {
k_EContentReportSubjectAction_Updated = 5;
k_EContentReportSubjectAction_Escalated = 6;
k_EContentReportSubjectAction_Disputed = 7;
- k_EContentReportSubjectAction_SustainedOnDispute = 8;
+ k_EContentReportSubjectAction_Sustained = 8;
k_EContentReportSubjectAction_Locked = 9;
k_EContentReportSubjectAction_Unlocked = 10;
k_EContentReportSubjectAction_Deleted = 11;
@@ -765,6 +802,7 @@ enum EContentReportSubjectAction {
k_EContentReportSubjectAction_Claimed = 20;
k_EContentReportSubjectAction_Released = 21;
k_EContentReportSubjectAction_PrivateMessaged = 22;
+ k_EContentReportSubjectAction_OwnerDisputed = 23;
}
enum EContentReportReason {
@@ -832,7 +870,13 @@ enum EContentReportReason {
k_EContentReportReason_NegativeEffectonDiscourseOrElections = 61;
k_EContentReportReason_QuotesModeratedContent = 62;
k_EContentReportReason_CredibleThreatOfViolence = 63;
- k_EContentReportReason_MAX = 64;
+ k_EContentReportReason_AutoCreatedOnModeration = 64;
+ k_EContentReportReason_Piracy = 65;
+ k_EContentReportReason_ToSViolation = 66;
+ k_EContentReportReason_Miscategorized = 67;
+ k_EContentReportReason_BypassingProfanityFilter = 68;
+ k_EContentReportReason_BulkDeletion = 69;
+ k_EContentReportReason_MAX = 70;
}
enum EResolutionAutomation {
@@ -850,5 +894,37 @@ enum EPressOutletAction {
k_EPressOutletAction_Updated = 4;
k_EPressOutletAction_Deleted = 5;
k_EPressOutletAction_Undeleted = 6;
- k_EPressOutletAction_MAX = 7;
+ k_EPressOutletAction_StagedAdd = 7;
+ k_EPressOutletAction_StagedDelete = 8;
+ k_EPressOutletAction_EnterStaging = 9;
+ k_EPressOutletAction_ExitStaging = 10;
+ k_EPressOutletAction_ReverseStagedAdd = 11;
+ k_EPressOutletAction_ReverseStagedDelete = 12;
+ k_EPressOutletAction_MAX = 13;
+}
+
+enum EPressOutletMemberPendingState {
+ k_EPressOutletMemberPendingState_Member = 0;
+ k_EPressOutletMemberPendingState_StagedDelete = 1;
+ k_EPressOutletMemberPendingState_StagedAdd = 2;
+ k_EPressOutletMemberPendingState_MAX = 3;
+}
+
+enum ECommentDeleteReason {
+ k_ECommentDeleteReason_Invalid = 0;
+ k_ECommentDeleteReason_User = 1;
+ k_ECommentDeleteReason_ThreadOwner = 2;
+ k_ECommentDeleteReason_Moderator = 3;
+ k_ECommentDeleteReason_Support = 4;
+ k_ECommentDeleteReason_Spam = 5;
+ k_ECommentDeleteReason_AccountDeletion = 6;
+}
+
+enum EDLCHighlightReason {
+ k_EDLCHighlightReason_None = 0;
+ k_EDLCHighlightReason_New = 1;
+ k_EDLCHighlightReason_ComingSoon = 2;
+ k_EDLCHighlightReason_PlayerFavorite = 3;
+ k_EDLCHighlightReason_Recommended = 4;
+ k_EDLCHighlightReason_NewPlayers = 5;
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto
index c517f7e8..4f569f8b 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto
@@ -1,6 +1,7 @@
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
option optimize_for = SPEED;
+option java_generic_services = false;
enum EContentDescriptorID {
k_EContentDescriptor_NudityOrSexualContent = 1;
@@ -10,3 +11,11 @@ enum EContentDescriptorID {
k_EContentDescriptor_AnyMatureContent = 5;
k_EContentDescriptorMAX = 6;
}
+
+enum EInteractiveElement {
+ k_EInteractiveElement_Invalid = 0;
+ k_EInteractiveElement_InGamePurchases = 1;
+ k_EInteractiveElement_InGamePurchasesOfRandomizedItems = 2;
+ k_EInteractiveElement_InGameChat = 3;
+ k_EInteractiveElement_OnlineInteractivity = 4;
+}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_appratings_types.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_appratings_types.proto
new file mode 100644
index 00000000..c3b043a1
--- /dev/null
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_appratings_types.proto
@@ -0,0 +1,65 @@
+option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+enum ERatingAgency {
+ k_ERatingAgency_Invalid = 0;
+ k_ERatingAgency_ESRB = 1;
+ k_ERatingAgency_PEGI = 2;
+ k_ERatingAgency_BBFC = 3;
+ k_ERatingAgency_USK = 4;
+ k_ERatingAgency_OFLC_AU = 5;
+ k_ERatingAgency_OFLC_NZ = 6;
+ k_ERatingAgency_CERO = 7;
+ k_ERatingAgency_GRAC = 8;
+ k_ERatingAgency_GMEDIA = 9;
+ k_ERatingAgency_DEJUS = 10;
+ k_ERatingAgency_IMDA = 11;
+ k_ERatingAgency_FPB = 12;
+ k_ERatingAgency_TESRI = 13;
+ k_ERatingAgency_RARS = 14;
+ k_ERatingAgency_AGCOM = 15;
+ k_ERatingAgency_IGRS = 16;
+ k_ERatingAgency_Steam_Germany = 17;
+ k_ERatingAgency_Steam_Australia = 18;
+ k_ERatingAgency_CADPA = 19;
+}
+
+enum EAppRatingSource {
+ k_EAppRatingSource_Invalid = 0;
+ k_EAppRatingSource_Official = 1;
+ k_EAppRatingSource_Generated = 2;
+}
+
+enum ERatingDescriptorImage {
+ k_ERatingDescriptorImage_Invalid = 0;
+ k_ERatingDescriptorImage_CERO_Love = 1;
+ k_ERatingDescriptorImage_CERO_SexualContent = 2;
+ k_ERatingDescriptorImage_CERO_Violence = 3;
+ k_ERatingDescriptorImage_CERO_Horror = 4;
+ k_ERatingDescriptorImage_CERO_DrinkingSmoking = 5;
+ k_ERatingDescriptorImage_CERO_Gambling = 6;
+ k_ERatingDescriptorImage_CERO_Crime = 7;
+ k_ERatingDescriptorImage_CERO_Drugs = 8;
+ k_ERatingDescriptorImage_CERO_Language = 9;
+}
+
+message AppRatingAuxData {
+ repeated string descriptors = 1;
+ repeated string interactive_elements = 2;
+ optional string official_id = 3;
+ optional bool esrb_online_music_not_rated = 4;
+ optional bool esrb_online_interactions_not_rated = 5;
+ repeated .ERatingDescriptorImage descriptor_images = 6;
+}
+
+message AppRating {
+ optional .ERatingAgency rating_agency = 1 [default = k_ERatingAgency_Invalid];
+ optional string rating = 2;
+ optional .EAppRatingSource source = 3 [default = k_EAppRatingSource_Invalid];
+ optional bool banned = 4;
+ optional uint32 required_age = 5;
+ optional bool use_age_gate = 6;
+ optional .AppRatingAuxData aux_data = 7;
+}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_auth.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_auth.steamclient.proto
index af883e6c..7f3b3ece 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_auth.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_auth.steamclient.proto
@@ -367,16 +367,6 @@ message CAuthenticationSupport_MarkTokenCompromised_Request {
message CAuthenticationSupport_MarkTokenCompromised_Response {
}
-message CCloudGaming_CreateNonce_Request {
- optional string platform = 1;
- optional uint32 appid = 2;
-}
-
-message CCloudGaming_CreateNonce_Response {
- optional string nonce = 1;
- optional uint32 expiry = 2;
-}
-
message CCloudGaming_GetTimeRemaining_Request {
optional string platform = 1;
repeated uint32 appid_list = 2;
@@ -417,6 +407,5 @@ service AuthenticationSupport {
}
service CloudGaming {
- rpc CreateNonce (.CCloudGaming_CreateNonce_Request) returns (.CCloudGaming_CreateNonce_Response);
rpc GetTimeRemaining (.CCloudGaming_GetTimeRemaining_Request) returns (.CCloudGaming_GetTimeRemaining_Response);
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto
index 4f114643..a7273a07 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto
@@ -129,6 +129,14 @@ message CMsgProtoBufHeader {
optional fixed64 admin_request_spoofing_steamid = 43;
optional bool is_valveds = 44;
optional fixed64 trace_tag = 45;
+ optional uint32 wg_msg_trace_flags = 46;
+ optional uint32 wg_msg_trace_instance = 47;
+ optional uint32 wg_msg_trace_gid = 48;
+ optional string wg_msg_trace_token = 49;
+ optional fixed64 wg_msg_trace_steamid = 50;
+ optional string wg_msg_trace_status = 51;
+ optional uint32 trace_flags = 52;
+ optional string browserapi_site = 53;
oneof ip_addr {
uint32 ip = 15;
@@ -211,7 +219,6 @@ message CMsgAppRights {
}
message CCuratorPreferences {
- optional uint32 supported_languages = 1;
optional bool platform_windows = 2;
optional bool platform_mac = 3;
optional bool platform_linux = 4;
@@ -304,6 +311,7 @@ message CClanEventData {
optional uint32 build_id = 29;
optional string build_branch = 30;
optional bool unlisted = 31;
+ optional uint32 rtime_created = 32;
}
message CBilling_Address {
@@ -332,6 +340,11 @@ message CPackageReservationStatus {
optional string notificaton_token = 10;
optional int32 queue_head_position_at_reservation = 11;
optional int32 queue_head_position_now = 12;
+ optional bool position_is_waitlist = 13;
+ optional string user_waitlist_token = 14;
+ optional bool queue_in_waitlist = 15;
+ optional string queue_waitlist_token = 16;
+ optional uint32 collection_time_active = 17;
}
message CMsgKeyValuePair {
@@ -365,9 +378,26 @@ message UserSystemInformation {
optional string cpu_name = 10;
optional uint32 gaming_device_type = 11;
optional string dx_driver_version = 12;
- optional string dx_driver_name = 13;
optional string adapter_description = 14;
optional string driver_version = 15;
optional string driver_date = 16;
optional uint32 vram_size = 17;
+ optional uint32 screen_width = 18;
+ optional uint32 screen_height = 19;
+ optional bool precise_frame_rate = 20;
+}
+
+message GamePerformanceSettings {
+ enum EGamePerformanceSetting {
+ k_EGamePerformanceSetting_NotSet = 0;
+ k_EGamePerformanceSetting_Low = 1;
+ k_EGamePerformanceSetting_Medium = 2;
+ k_EGamePerformanceSetting_High = 3;
+ k_EGamePerformanceSetting_Ultra = 4;
+ k_EGamePerformanceSetting_Custom = 5;
+ }
+
+ optional .GamePerformanceSettings.EGamePerformanceSetting setting = 1 [default = k_EGamePerformanceSetting_NotSet];
+ optional uint32 game_resolution_width = 2;
+ optional uint32 game_resolution_height = 3;
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_chat.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_chat.steamclient.proto
index 3c5ff515..fa7aa3d4 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_chat.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_chat.steamclient.proto
@@ -1,3 +1,4 @@
+import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_unified_base.steamclient.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_friends.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/enums.proto";
@@ -55,6 +56,11 @@ enum EChatRoomMessageReactionType {
k_EChatRoomMessageReactionType_Sticker = 2;
}
+enum EChatRoomNotice {
+ k_EChatRoomNotice_Invalid = 0;
+ k_EChatRoomNotice_Suspicious = 1;
+}
+
enum EChatRoomMemberStateChange {
k_EChatRoomMemberStateChange_Invalid = 0;
k_EChatRoomMemberStateChange_Joined = 1;
@@ -665,9 +671,20 @@ message CChatRoom_SetSessionActiveChatRoomGroups_Request {
optional int32 virtualize_members_threshold = 3;
}
+message CChatRoomMemberNotice {
+ optional uint32 accountid = 1;
+ optional .EChatRoomNotice notice_type = 2 [default = k_EChatRoomNotice_Invalid];
+}
+
+message CChatRoomGroupMemberNotices {
+ optional uint64 chat_group_id = 1;
+ repeated .CChatRoomMemberNotice member_notices = 2;
+}
+
message CChatRoom_SetSessionActiveChatRoomGroups_Response {
repeated .CChatRoomGroupState chat_states = 1;
repeated uint64 virtualize_members_chat_group_ids = 2;
+ repeated .CChatRoomGroupMemberNotices chat_group_notices = 3;
}
message CChatRoom_SetUserChatGroupPreferences_Request {
@@ -707,6 +724,12 @@ message CChatRoom_DeleteChatMessages_Request {
message CChatRoom_DeleteChatMessages_Response {
}
+message CChatRoom_DismissChatRoomNotice_Notification {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid_sender = 2;
+ optional .EChatRoomNotice notice_type = 3 [default = k_EChatRoomNotice_Invalid];
+}
+
message CChatRoom_UpdateMemberListView_Notification {
optional uint64 chat_group_id = 1;
optional uint64 view_id = 2;
@@ -787,6 +810,7 @@ message CChatRoom_ResolveReport_Request {
optional uint64 chat_group_id = 6;
optional uint32 kick_expiration_time = 7;
optional bool skip_lock = 8;
+ optional uint64 reported_content_id = 9;
}
message CChatRoom_ResolveReport_Response {
@@ -915,6 +939,13 @@ message CChatRoom_MessageReaction_Notification {
optional bool is_add = 8;
}
+message CChatRoom_ChatRoomNotice_Notification {
+ optional uint64 chat_group_id = 1;
+ optional fixed64 steamid_sender = 2;
+ optional .EChatRoomNotice notice_type = 3 [default = k_EChatRoomNotice_Invalid];
+ optional bool active = 4;
+}
+
message CChatUsability_ClientUsabilityMetrics_Notification {
message Settings {
optional bool notifications_show_ingame = 1;
@@ -1065,6 +1096,7 @@ service ChatRoom {
rpc SetSessionActiveChatRoomGroups (.CChatRoom_SetSessionActiveChatRoomGroups_Request) returns (.CChatRoom_SetSessionActiveChatRoomGroups_Response);
rpc SetUserChatGroupPreferences (.CChatRoom_SetUserChatGroupPreferences_Request) returns (.CChatRoom_SetUserChatGroupPreferences_Response);
rpc DeleteChatMessages (.CChatRoom_DeleteChatMessages_Request) returns (.CChatRoom_DeleteChatMessages_Response);
+ rpc DismissChatRoomNotice (.CChatRoom_DismissChatRoomNotice_Notification) returns (.NoResponse);
rpc UpdateMemberListView (.CChatRoom_UpdateMemberListView_Notification) returns (.NoResponse);
rpc SearchMembers (.CChatRoom_SearchMembers_Request) returns (.CChatRoom_SearchMembers_Response);
rpc UpdateMessageReaction (.CChatRoom_UpdateMessageReaction_Request) returns (.CChatRoom_UpdateMessageReaction_Response);
@@ -1092,6 +1124,7 @@ service ChatRoomClient {
rpc NotifyChatRoomDisconnect (.ChatRoomClient_NotifyChatRoomDisconnect_Notification) returns (.NoResponse);
rpc NotifyMemberListViewUpdated (.CChatRoomClient_MemberListViewUpdated_Notification) returns (.NoResponse);
rpc NotifyMessageReaction (.CChatRoom_MessageReaction_Notification) returns (.NoResponse);
+ rpc NotifyChatRoomNotice (.CChatRoom_ChatRoomNotice_Notification) returns (.NoResponse);
}
service ChatUsability {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_client_objects.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_client_objects.proto
index d86d0297..faae8edb 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_client_objects.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_client_objects.proto
@@ -13,6 +13,12 @@ enum ECloudPendingRemoteOperation {
k_ECloudPendingRemoteOperationAppSessionSuspended = 4;
}
+enum EDisplayManagerRGBRange {
+ k_EDisplayManagerRGBRange_Automatic = 0;
+ k_EDisplayManagerRGBRange_Full = 1;
+ k_EDisplayManagerRGBRange_Limited = 2;
+}
+
enum ESteamDeckKeyboardLayout {
k_ESteamDeckKeyboardLayout_QWERTY = 0;
k_ESteamDeckKeyboardLayout_Bulgarian = 1;
@@ -74,7 +80,7 @@ message CMsgNetworkDeviceIP4Config {
}
message CMsgNetworkDeviceIP6Address {
- optional string ip = 1;
+ optional string ip = 1 [default = ""];
}
message CMsgNetworkDeviceIP6Config {
@@ -275,11 +281,8 @@ message CMsgSystemPerfLimits {
optional int32 cpu_governor_manual_max_mhz = 2;
optional int32 fsr_sharpness_min = 3;
optional int32 fsr_sharpness_max = 4;
- optional int32 gpu_performance_manual_min_mhz = 5;
- optional int32 gpu_performance_manual_max_mhz = 6;
optional bool perf_overlay_is_standalone = 7;
optional bool is_manual_display_refresh_rate_available = 9;
- repeated .EGPUPerformanceLevel gpu_performance_levels_available = 10;
optional int32 display_refresh_manual_hz_min = 11;
optional int32 display_refresh_manual_hz_max = 12;
repeated int32 fps_limit_options = 13;
@@ -311,7 +314,6 @@ message CMsgSystemPerfSettingsGlobal {
}
message CMsgSystemPerfSettingsPerApp {
- optional int32 gpu_performance_manual_mhz = 1;
optional int32 fps_limit = 2;
optional bool is_variable_resolution_enabled = 3;
optional bool is_dynamic_refresh_rate_enabled = 4;
@@ -325,7 +327,6 @@ message CMsgSystemPerfSettingsPerApp {
optional bool is_low_latency_mode_enabled = 12;
optional int32 display_refresh_manual_hz = 13;
optional bool is_game_perf_profile_enabled = 14;
- optional .EGPUPerformanceLevel gpu_performance_level = 15 [default = k_EGPUPerformanceLevel_Invalid];
optional int32 display_external_refresh_manual_hz = 17;
optional int32 fps_limit_external = 18;
optional bool is_tearing_enabled = 19;
@@ -506,17 +507,26 @@ message CMsgSystemDisplay {
optional bool is_hdr_capable = 16;
optional bool is_hdr_output_active = 17;
repeated int32 supported_refresh_rates = 18;
+ optional .EDisplayManagerRGBRange rgb_range = 19 [default = k_EDisplayManagerRGBRange_Automatic];
+}
+
+message CMsgSystemDisplayManagerGameResolution {
+ optional uint32 width = 1;
+ optional uint32 height = 2;
}
message CMsgSystemDisplayManagerState {
repeated .CMsgSystemDisplay displays = 1;
optional bool is_mode_switching_supported = 2;
optional .ESystemDisplayCompatibilityMode compatibility_mode = 3 [default = k_ESystemDisplayCompatibilityMode_Invalid];
+ optional .CMsgSystemDisplayManagerGameResolution game_resolution_override_native = 4;
+ optional .CMsgSystemDisplayManagerGameResolution game_resolution_override_default = 5;
}
message CMsgSystemDisplayManagerSetMode {
optional int32 display_id = 1;
optional int32 mode_id = 2;
+ optional .EDisplayManagerRGBRange rgb_range = 3 [default = k_EDisplayManagerRGBRange_Automatic];
}
message CMsgSystemManagerSettings {
@@ -540,7 +550,6 @@ message CMsgSystemManagerSettings {
optional float display_backlight_raw = 23;
optional float display_brightness_adaptivemin = 24;
optional float display_brightness_adaptivemax = 25;
- optional bool is_wifi_powersave_enabled = 26;
optional bool is_fan_control_available = 27;
optional .ESystemFanControlMode fan_control_mode = 28 [default = k_SystemFanControlMode_Invalid];
optional bool is_display_brightness_available = 29;
@@ -561,9 +570,10 @@ message CMsgSelectOSBranchParams {
}
message CMsgSystemUpdateProgress {
- optional float stage_progress = 1;
+ optional float total_progress = 1;
optional int64 stage_size_bytes = 2;
optional fixed32 rtime_estimated_completion = 3;
+ optional int64 stage_bytes_downloaded = 4;
}
message CMsgSystemUpdateCheckResult {
@@ -578,6 +588,7 @@ message CMsgSystemUpdateCheckResult {
message CMsgSystemUpdateApplyParams {
repeated .EUpdaterType apply_types = 1;
+ repeated .EUpdaterType recheck_types = 2;
}
message CMsgSystemUpdateApplyResult {
@@ -646,7 +657,7 @@ message CMsgMonitorInfo {
required string monitor_display_name = 2;
}
- required string selected_display_name = 1;
+ required string selected_device_name = 1;
repeated .CMsgMonitorInfo.MonitorInfo monitors = 2;
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientmetrics.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientmetrics.steamclient.proto
index 2285e578..0694542b 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientmetrics.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientmetrics.steamclient.proto
@@ -115,6 +115,7 @@ message CClientMetrics_ReportClientError_Notification {
optional string message = 2;
optional uint32 count = 3;
optional string context = 4;
+ optional string url = 5;
}
optional string product = 1;
@@ -141,6 +142,8 @@ message CClientMetrics_DownloadRates_Notification {
optional uint32 cache_misses = 10;
optional uint64 hit_bytes = 11;
optional uint64 miss_bytes = 12;
+ optional uint32 chunks_scored = 13;
+ optional double sum_chunk_scores = 14;
}
optional uint32 cell_id = 1;
@@ -212,6 +215,8 @@ message CClientMetrics_ReportLinuxStats_Notification {
optional int32 launcher_type = 4;
optional int32 game_server_appid = 5;
optional string process_name = 6;
+ optional int32 kernel_version_major = 7;
+ optional int32 kernel_version_minor = 8;
}
message CClientMetrics_ReportAccessibilitySettings_Notification {
@@ -257,6 +262,10 @@ message CClientMetrics_GamePerformance_Notification {
optional fixed64 gameid = 1;
optional uint32 frame_rate = 2;
optional int32 session_seconds = 3;
+ optional uint32 framegen_frame_rate = 4;
+ optional .GamePerformanceSettings game_settings = 5;
+ optional uint32 seconds_since_active = 6;
+ optional uint32 frame_rate_limit = 7;
}
repeated .CClientMetrics_GamePerformance_Notification.FrameRate frame_rates = 2;
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver.proto
index 84ed64b3..5d724ec8 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver.proto
@@ -105,7 +105,7 @@ message CMsgClientGamesPlayed {
optional string vr_hmd_model = 14;
optional uint32 launch_option_type = 15 [default = 0];
optional int32 primary_controller_type = 16 [default = -1];
- optional string primary_steam_controller_serial = 17;
+ optional string primary_steam_controller_serial = 17 [default = ""];
optional uint32 total_steam_controller_count = 18 [default = 0];
optional uint32 total_non_steam_controller_count = 19 [default = 0];
optional uint64 controller_workshop_file_id = 20 [default = 0];
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_gameservers.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_gameservers.proto
index c75b17e9..42495ac7 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_gameservers.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_gameservers.proto
@@ -96,7 +96,7 @@ message CMsgGMSClientServerQueryResponse {
optional uint32 query_port = 2;
optional uint32 auth_players = 3;
optional .CMsgIPAddress server_ip = 4;
- optional fixed64 steam_id = 6;
+ optional fixed64 steam_id = 6 [(allow_field_named_steam_id) = true];
optional uint32 revision = 7;
optional uint32 players = 8;
optional uint32 game_port = 9;
@@ -121,6 +121,10 @@ message CMsgGMSClientServerQueryResponse {
optional uint32 gametype_strindex = 27;
optional string spectator_name_str = 30;
optional uint32 spectator_name_strindex = 31;
+ repeated fixed64 friends = 33;
+ optional uint32 friends_count = 34;
+ optional uint32 friends_count_connected = 35;
+ optional uint32 ping_estimate = 36;
}
enum EFlags {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_login.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_login.proto
index f69f6fd3..3b79eb79 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_login.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_login.proto
@@ -85,9 +85,6 @@ message CMsgClientLogon {
optional bool disable_partner_autogrants = 106;
optional string access_token = 108;
optional bool is_chrome_os = 109;
- optional bool is_steam_box_deprecated = 99;
- optional bool is_steam_deck_deprecated = 107;
- optional bool is_tesla_deprecated = 110;
optional uint32 gaming_device_type = 111;
}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_mms.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_mms.proto
index c81cb707..c23a9264 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_mms.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_clientserver_mms.proto
@@ -12,6 +12,11 @@ enum EMMSLobbyStatus {
k_EMMSLobbyStatusNotAMember = 3;
}
+message MMSKeyValuePair {
+ optional string name = 1;
+ optional string value = 2;
+}
+
message CMsgClientMMSSetRatelimitPolicyOnClient {
optional uint32 app_id = 1;
optional bool enable_rate_limits = 2;
@@ -26,10 +31,11 @@ message CMsgClientMMSCreateLobby {
optional int32 lobby_flags = 4;
optional uint32 cell_id = 5;
optional uint32 deprecated_public_ip = 6;
- optional bytes metadata = 7;
+ optional bytes metadata_kv = 7;
optional string persona_name_owner = 8;
optional .CMsgIPAddress public_ip = 9;
optional string network_ping_location = 10;
+ repeated .MMSKeyValuePair metadata = 11;
}
message CMsgClientMMSCreateLobbyResponse {
@@ -50,7 +56,8 @@ message CMsgClientMMSJoinLobbyResponse {
message Member {
optional fixed64 steam_id = 1;
optional string persona_name = 2;
- optional bytes metadata = 3;
+ optional bytes metadata_kv = 3;
+ repeated .MMSKeyValuePair metadata = 4;
}
optional uint32 app_id = 1;
@@ -60,8 +67,9 @@ message CMsgClientMMSJoinLobbyResponse {
optional int32 lobby_type = 5;
optional int32 lobby_flags = 6;
optional fixed64 steam_id_owner = 7;
- optional bytes metadata = 8;
+ optional bytes metadata_kv = 8;
repeated .CMsgClientMMSJoinLobbyResponse.Member members = 9;
+ repeated .MMSKeyValuePair metadata = 10;
}
message CMsgClientMMSLeaveLobby {
@@ -98,12 +106,13 @@ message CMsgClientMMSGetLobbyListResponse {
optional int32 max_members = 2;
optional int32 lobby_type = 3;
optional int32 lobby_flags = 4;
- optional bytes metadata = 5;
+ optional bytes metadata_kv = 5;
optional int32 num_members = 6;
optional float distance = 7;
optional int64 weight = 8;
optional int32 ping = 9;
optional int32 missing_ping = 10;
+ repeated .MMSKeyValuePair metadata = 11;
}
optional uint32 app_id = 1;
@@ -118,8 +127,9 @@ message CMsgClientMMSSetLobbyData {
optional int32 max_members = 4;
optional int32 lobby_type = 5;
optional int32 lobby_flags = 6;
- optional bytes metadata = 7;
+ optional bytes metadata_kv = 7;
optional string network_ping_location = 8;
+ repeated .MMSKeyValuePair metadata = 9;
}
message CMsgClientMMSSetLobbyDataResponse {
@@ -137,8 +147,9 @@ message CMsgClientMMSLobbyData {
message Member {
optional fixed64 steam_id = 1;
optional string persona_name = 2;
- optional bytes metadata = 3;
+ optional bytes metadata_kv = 3;
optional string ping_data = 4;
+ repeated .MMSKeyValuePair metadata = 5;
}
optional uint32 app_id = 1;
@@ -148,10 +159,11 @@ message CMsgClientMMSLobbyData {
optional int32 lobby_type = 5;
optional int32 lobby_flags = 6;
optional fixed64 steam_id_owner = 7;
- optional bytes metadata = 8;
+ optional bytes metadata_kv = 8;
repeated .CMsgClientMMSLobbyData.Member members = 9;
optional uint32 lobby_cellid = 10;
optional bool owner_should_accept_changes = 11;
+ repeated .MMSKeyValuePair metadata = 12;
}
message CMsgClientMMSSendLobbyChatMsg {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_cloud.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_cloud.steamclient.proto
index 917d5451..3a2ee654 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_cloud.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_cloud.steamclient.proto
@@ -60,6 +60,7 @@ message CCloud_BeginUGCUpload_Request {
optional string filename = 3;
optional string file_sha = 4;
optional string content_type = 5;
+ optional bool is_public = 6;
}
message CCloud_BeginUGCUpload_Response {
@@ -324,6 +325,7 @@ message CCloud_AppFileInfo {
optional uint32 platforms_to_sync = 6;
optional uint32 path_prefix_index = 7;
optional uint32 machine_name_index = 8;
+ optional bool reupload_requested = 9;
}
message CCloud_GetAppFileChangelist_Response {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_contentsystem.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_contentsystem.steamclient.proto
index efb5c2f5..c6370b3c 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_contentsystem.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_contentsystem.steamclient.proto
@@ -21,9 +21,9 @@ message CContentServerDirectory_ConnectedSteamPipeServerInfo {
message CContentServerDirectory_GetServersForSteamPipe_Request {
optional uint32 cell_id = 1;
optional uint32 max_servers = 2 [default = 20];
- optional string ip_override = 3;
+ optional string ip_override = 3 [default = ""];
optional int32 launcher_type = 4 [default = 0];
- optional string ipv6_public = 5;
+ optional string ipv6_public = 5 [default = ""];
repeated .CContentServerDirectory_ConnectedSteamPipeServerInfo current_connections = 6;
}
@@ -43,6 +43,7 @@ message CContentServerDirectory_ServerInfo {
repeated uint32 allowed_app_ids = 13;
optional uint32 priority_class = 15;
repeated string bypass_proxies_of_type = 16;
+ optional string group = 17;
}
message CContentServerDirectory_GetServersForSteamPipe_Response {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_friendmessages.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_friendmessages.steamclient.proto
index f4443155..7b3cddf3 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_friendmessages.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_friendmessages.steamclient.proto
@@ -98,6 +98,14 @@ message CFriendMessages_IsInFriendsUIBeta_Response {
optional bool has_used_friendsui = 2;
}
+message CFriendMessages_GetPartnerSharedChatGroup_Request {
+ optional fixed64 steamid = 1;
+}
+
+message CFriendMessages_GetPartnerSharedChatGroup_Response {
+ optional uint64 chat_group_id = 1;
+}
+
message CFriendMessages_UpdateMessageReaction_Request {
optional fixed64 steamid = 1;
optional uint32 server_timestamp = 2;
@@ -132,6 +140,7 @@ message CFriendMessages_ResolveReport_Request {
optional .EContentReportResolution resolution = 5 [default = k_EContentReportResolution_Unresolved];
optional .EContentReportReason reason = 6 [default = k_EContentReportReason_Invalid];
optional bool skip_lock = 7;
+ optional uint64 reported_content_id = 8;
}
message CFriendMessages_ResolveReport_Response {
@@ -176,6 +185,7 @@ service FriendMessages {
rpc SendMessage (.CFriendMessages_SendMessage_Request) returns (.CFriendMessages_SendMessage_Response);
rpc AckMessage (.CFriendMessages_AckMessage_Notification) returns (.NoResponse);
rpc IsInFriendsUIBeta (.CFriendMessages_IsInFriendsUIBeta_Request) returns (.CFriendMessages_IsInFriendsUIBeta_Response);
+ rpc GetPartnerSharedChatGroup (.CFriendMessages_GetPartnerSharedChatGroup_Request) returns (.CFriendMessages_GetPartnerSharedChatGroup_Response);
rpc UpdateMessageReaction (.CFriendMessages_UpdateMessageReaction_Request) returns (.CFriendMessages_UpdateMessageReaction_Response);
rpc ReportMessage (.CFriendMessages_ReportMessage_Request) returns (.CFriendMessages_ReportMessage_Response);
rpc ResolveReport (.CFriendMessages_ResolveReport_Request) returns (.CFriendMessages_ResolveReport_Response);
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_parental_objects.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_parental_objects.proto
index f635be61..084bf224 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_parental_objects.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_parental_objects.proto
@@ -1,4 +1,3 @@
-import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/enums.proto";
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_player.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_player.steamclient.proto
index b7e42d68..1f3477dd 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_player.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_player.steamclient.proto
@@ -7,6 +7,12 @@ option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
option optimize_for = SPEED;
option java_generic_services = false;
+enum EAchievementProgressType {
+ k_EAchievementProgressType_Invalid = 0;
+ k_EAchievementProgressType_Int = 1;
+ k_EAchievementProgressType_Float = 2;
+}
+
enum EProfileCustomizationStyle {
k_EProfileCustomizationStyleDefault = 0;
k_EProfileCustomizationStyleSelected = 1;
@@ -123,6 +129,7 @@ message CPlayer_GetOwnedGames_Request {
optional bool skip_unvetted_apps = 6 [default = true];
optional string language = 7;
optional bool include_extended_appinfo = 8;
+ optional bool include_family_licenses = 9;
}
message CPlayer_GetOwnedGames_Response {
@@ -146,6 +153,7 @@ message CPlayer_GetOwnedGames_Response {
optional bool has_leaderboards = 17;
repeated uint32 content_descriptorids = 18;
optional int32 playtime_disconnected = 19;
+ optional bool family_shared = 21;
}
optional uint32 game_count = 1;
@@ -164,6 +172,7 @@ message CPlayer_GetPlayNext_Response {
message CPlayer_GetFriendsGameplayInfo_Request {
optional uint32 appid = 1;
+ optional bool include_family_licenses = 2;
}
message CPlayer_GetFriendsGameplayInfo_Response {
@@ -419,6 +428,11 @@ message CPlayer_GetAchievementsProgress_Response {
optional bool all_unlocked = 5;
optional uint32 cache_time = 6;
optional bool vetted = 7;
+ optional uint32 groups_completed_base = 8;
+ optional uint32 groups_total_base = 9;
+ optional uint32 groups_completed_dlc = 10;
+ optional uint32 groups_total_dlc = 11;
+ optional uint32 base_game_total = 12;
}
repeated .CPlayer_GetAchievementsProgress_Response.AchievementProgress achievement_progress = 1;
@@ -427,6 +441,7 @@ message CPlayer_GetAchievementsProgress_Response {
message CPlayer_GetGameAchievements_Request {
optional uint32 appid = 1;
optional string language = 2;
+ optional bool hash_only = 3;
}
message CPlayer_GetGameAchievements_Response {
@@ -438,9 +453,107 @@ message CPlayer_GetGameAchievements_Response {
optional string icon_gray = 5;
optional bool hidden = 6;
optional string player_percent_unlocked = 7;
+ optional uint32 internal_key = 8;
+ optional int32 min_progress_int = 9;
+ optional int32 max_progress_int = 10;
+ optional uint32 groupid = 11;
+ optional bool archived = 12;
+ optional .EAchievementProgressType progress_type = 13 [default = k_EAchievementProgressType_Invalid];
+ optional float min_progress_float = 14;
+ optional float max_progress_float = 15;
+ }
+
+ message Group {
+ optional uint32 groupid = 1;
+ optional string localized_name = 2;
+ optional uint32 dlcappid = 3;
+ optional bool archived = 4;
+ optional bool developeronly = 5;
+ optional uint32 order = 6;
+ optional bool ispublic = 7;
+ optional uint32 total_achievements = 8;
+ optional uint32 completion_achievements = 9;
}
repeated .CPlayer_GetGameAchievements_Response.Achievement achievements = 1;
+ optional int32 schema_version = 2;
+ repeated .CPlayer_GetGameAchievements_Response.Group groups = 3;
+ optional uint32 schema_hash = 4;
+}
+
+message CPlayer_GetUserAchievements_Request {
+ optional uint64 steamid = 1;
+ optional uint32 appid = 2;
+}
+
+message CPlayer_GetUserAchievements_Response {
+ message Achievement {
+ optional uint32 internal_key = 1;
+ optional bool unlocked = 2;
+ optional fixed32 unlock_time = 3;
+ optional int32 progress_int = 4;
+ optional float progress_float = 5;
+ }
+
+ message Group {
+ optional uint32 groupid = 1;
+ optional bool is_achievable = 2;
+ optional uint32 completed_achievements = 3;
+ optional bool is_completed = 4;
+ optional fixed32 time_completed = 9;
+ }
+
+ repeated .CPlayer_GetUserAchievements_Response.Achievement achievements = 1;
+ optional int32 schema_version = 2;
+ optional uint32 schema_hash = 3;
+ repeated .CPlayer_GetUserAchievements_Response.Group groups = 4;
+}
+
+message CPlayer_GetGlobalAchievementPercentages_Request {
+ optional uint32 appid = 1;
+}
+
+message CPlayer_GetGlobalAchievementPercentages_Response {
+ message Achievement {
+ optional uint32 internal_key = 1;
+ optional float player_percent_unlocked = 2;
+ }
+
+ message Group {
+ optional uint32 groupid = 1;
+ optional float player_percent_completed = 2;
+ }
+
+ repeated .CPlayer_GetGlobalAchievementPercentages_Response.Achievement achievements = 1;
+ repeated .CPlayer_GetGlobalAchievementPercentages_Response.Group groups = 2;
+}
+
+message CPlayer_GetUserStats_Request {
+ optional uint64 steamid = 1;
+ optional uint32 appid = 2;
+ optional bytes sha_schema = 3;
+ optional uint32 crc_stats = 4;
+ optional uint32 crc_schema = 5;
+ optional bool app_running = 6;
+}
+
+message CPlayer_GetUserStats_Response {
+ message Unlock_Time {
+ optional uint32 achievement_bit = 1;
+ optional fixed32 unlock_time = 2;
+ }
+
+ message Stats {
+ optional uint32 stat_id = 1;
+ optional uint32 stat_value = 2;
+ repeated .CPlayer_GetUserStats_Response.Unlock_Time unlock_times = 3;
+ }
+
+ optional bytes sha_schema = 1;
+ optional uint32 crc_stats = 2;
+ optional bytes schema = 3;
+ repeated .CPlayer_GetUserStats_Response.Stats stats = 4;
+ optional uint32 crc_schema = 5;
}
message CPlayer_GetFavoriteBadge_Request {
@@ -881,6 +994,9 @@ service Player {
rpc GetTopAchievementsForGames (.CPlayer_GetTopAchievementsForGames_Request) returns (.CPlayer_GetTopAchievementsForGames_Response);
rpc GetAchievementsProgress (.CPlayer_GetAchievementsProgress_Request) returns (.CPlayer_GetAchievementsProgress_Response);
rpc GetGameAchievements (.CPlayer_GetGameAchievements_Request) returns (.CPlayer_GetGameAchievements_Response);
+ rpc GetUserAchievements (.CPlayer_GetUserAchievements_Request) returns (.CPlayer_GetUserAchievements_Response);
+ rpc GetGlobalAchievementPercentages (.CPlayer_GetGlobalAchievementPercentages_Request) returns (.CPlayer_GetGlobalAchievementPercentages_Response);
+ rpc GetUserStats (.CPlayer_GetUserStats_Request) returns (.CPlayer_GetUserStats_Response);
rpc GetFavoriteBadge (.CPlayer_GetFavoriteBadge_Request) returns (.CPlayer_GetFavoriteBadge_Response);
rpc SetFavoriteBadge (.CPlayer_SetFavoriteBadge_Request) returns (.CPlayer_SetFavoriteBadge_Response);
rpc GetProfileCustomization (.CPlayer_GetProfileCustomization_Request) returns (.CPlayer_GetProfileCustomization_Response);
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_publishedfile.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_publishedfile.steamclient.proto
index 0568e06b..a8c367b2 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_publishedfile.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_publishedfile.steamclient.proto
@@ -1,6 +1,7 @@
import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_unified_base.steamclient.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto";
+import "in/dragonbra/javasteam/protobufs/steamclient/enums.proto";
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
@@ -26,6 +27,23 @@ enum EPublishedFileForSaleStatus {
k_PFFSS_TentativeApproval = 5;
}
+enum EQueryFilesSpecialFilter {
+ k_EQueryFilesSpecialFilter_None = 0;
+ k_EQueryFilesSpecialFilter_AcceptedForUse = 1;
+ k_EQueryFilesSpecialFilter_FavoritedByFriends = 2;
+ k_EQueryFilesSpecialFilter_CreateByFriends = 3;
+ k_EQueryFilesSpecialFilter_CreatedByFollowed = 4;
+ k_EQueryFilesSpecialFilter_Reported = 5;
+ k_EQueryFilesSpecialFilter_ParentItems = 6;
+ k_EQueryFilesSpecialFilter_ParentCollections = 7;
+}
+
+enum EQueryFilesSearchTextTarget {
+ k_EQueryFilesSearchTextTarget_AllText = 0;
+ k_EQueryFilesSearchTextTarget_Title = 1;
+ k_EQueryFilesSearchTextTarget_Description = 2;
+}
+
message CPublishedFile_Vote_Request {
optional uint64 publishedfileid = 1;
optional bool vote_up = 2;
@@ -98,6 +116,7 @@ message CPublishedFile_Publish_Request {
optional string collection_type = 14;
optional string game_type = 15;
optional string url = 16;
+ optional int32 language = 17;
}
message CPublishedFile_Publish_Response {
@@ -278,6 +297,7 @@ message CPublishedFile_GetItemInfo_Request {
optional uint32 last_time_updated = 2;
repeated .CPublishedFile_GetItemInfo_Request.WorkshopItem workshop_items = 3;
optional .EPublishedFileRevision desired_revision = 4 [default = k_EPublishedFileRevision_Default];
+ optional bool full_reconcile = 5;
}
message CPublishedFile_GetItemInfo_Response {
@@ -305,6 +325,11 @@ message CPublishedFile_GetUserFiles_Request {
repeated string tags = 1;
}
+ message DateRange {
+ optional uint32 timestamp_start = 1;
+ optional uint32 timestamp_end = 2;
+ }
+
optional fixed64 steamid = 1;
optional uint32 appid = 2;
optional uint32 shortcutid = 3;
@@ -322,8 +347,11 @@ message CPublishedFile_GetUserFiles_Request {
optional uint32 cache_max_age_seconds = 27 [default = 0];
optional int32 language = 29 [default = 0];
repeated .CPublishedFile_GetUserFiles_Request.TagGroup taggroups = 34;
+ optional .CPublishedFile_GetUserFiles_Request.DateRange date_range_created = 39;
+ optional .CPublishedFile_GetUserFiles_Request.DateRange date_range_updated = 40;
repeated .EContentDescriptorID excluded_content_descriptors = 37;
optional bool admin_query = 38;
+ repeated .EContentDescriptorID excluded_apps_with_content_descriptors = 41;
optional bool totalonly = 17;
optional bool ids_only = 18;
optional bool return_vote_data = 19 [default = true];
@@ -383,9 +411,11 @@ message CPublishedFile_Update_Request {
optional string filename = 7;
optional string preview_filename = 8;
optional bool spoiler_tag = 10;
+ optional string collectiontype = 14;
optional uint32 image_width = 15;
optional uint32 image_height = 16;
optional int32 language = 17;
+ optional bool update_tags = 18;
}
message CPublishedFile_Update_Response {
@@ -491,6 +521,10 @@ message CPublishedFile_QueryFiles_Request {
optional .CPublishedFile_QueryFiles_Request.DateRange date_range_updated = 45;
repeated .EContentDescriptorID excluded_content_descriptors = 46;
optional bool admin_query = 47;
+ optional .EQueryFilesSpecialFilter special_filter = 48 [default = k_EQueryFilesSpecialFilter_None];
+ repeated uint32 appids_required_for_use = 49;
+ repeated uint32 excluded_appids_required_for_use = 51;
+ optional .EQueryFilesSearchTextTarget search_text_target = 50 [default = k_EQueryFilesSearchTextTarget_AllText];
optional bool totalonly = 16;
optional bool ids_only = 35;
optional bool return_vote_data = 17;
@@ -646,6 +680,7 @@ message CPublishedFile_GetUserVoteSummary_Response {
optional bool vote_for = 2;
optional bool vote_against = 3;
optional bool reported = 4;
+ optional bool vote_later = 5;
}
repeated .CPublishedFile_GetUserVoteSummary_Response.VoteSummary summaries = 1;
@@ -656,6 +691,7 @@ message CPublishedFile_GetItemChanges_Request {
optional uint32 last_time_updated = 2;
optional uint32 num_items_max = 3;
optional .EPublishedFileRevision desired_revision = 4 [default = k_EPublishedFileRevision_Default];
+ optional bool include_legacy_items = 5;
}
message CPublishedFile_GetItemChanges_Response {
@@ -664,6 +700,7 @@ message CPublishedFile_GetItemChanges_Response {
optional uint32 time_updated = 2;
optional fixed64 manifest_id = 3;
repeated .PublishedFileAuthorSnapshot author_snapshots = 4;
+ optional uint32 flags = 5;
}
optional uint32 update_time = 1;
@@ -695,6 +732,32 @@ message CPublishedFile_UpdateContentDescriptors_Response {
optional uint32 timestamp_updated = 1;
}
+message CPublishedFile_SanctionPublishedFile_Request {
+ message Sanction {
+ optional .EContentModerationSanction sanction = 1 [default = k_EContentModerationSanction_Invalid];
+ optional int32 days = 2;
+ optional .EContentModeratorLevel escalate_to = 3 [default = k_EContentModeratorLevel_Any];
+ }
+
+ optional fixed64 publishedfileid = 1;
+ optional .EContentReportReason reason = 2 [default = k_EContentReportReason_Invalid];
+ optional string note = 3;
+ optional .EResolutionAutomation resolved_by_automation = 4 [default = k_EResolutionAutomation_Manual];
+ repeated .CPublishedFile_SanctionPublishedFile_Request.Sanction sanctions = 5;
+}
+
+message CPublishedFile_SanctionPublishedFile_Response {
+ optional bool force_unbanned = 1;
+}
+
+message CPublishedFile_AcquitPublishedFile_Request {
+ optional fixed64 publishedfileid = 1;
+ optional .EResolutionAutomation resolved_by_automation = 2 [default = k_EResolutionAutomation_Manual];
+}
+
+message CPublishedFile_AcquitPublishedFile_Response {
+}
+
message CPublishedFile_FileSubscribed_Notification {
message RevisionData {
optional .EPublishedFileRevision revision = 1 [default = k_EPublishedFileRevision_Default];
@@ -759,6 +822,8 @@ service PublishedFile {
rpc GetItemChanges (.CPublishedFile_GetItemChanges_Request) returns (.CPublishedFile_GetItemChanges_Response);
rpc GetContentDescriptors (.CPublishedFile_GetContentDescriptors_Request) returns (.CPublishedFile_GetContentDescriptors_Response);
rpc UpdateContentDescriptors (.CPublishedFile_UpdateContentDescriptors_Request) returns (.CPublishedFile_UpdateContentDescriptors_Response);
+ rpc SanctionPublishedFile (.CPublishedFile_SanctionPublishedFile_Request) returns (.CPublishedFile_SanctionPublishedFile_Response);
+ rpc AcquitPublishedFile (.CPublishedFile_AcquitPublishedFile_Request) returns (.CPublishedFile_AcquitPublishedFile_Response);
}
service PublishedFileClient {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service.steamclient.proto
index f1e0cdf1..5b7c4ba6 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service.steamclient.proto
@@ -30,6 +30,8 @@ service RemoteClientSteamClient {
rpc NotifyRegisterStatusUpdate (.CRemoteClient_RegisterStatusUpdate_Notification) returns (.NoResponse);
rpc NotifyUnregisterStatusUpdate (.CRemoteClient_UnregisterStatusUpdate_Notification) returns (.NoResponse);
rpc NotifyRemotePacket (.CRemoteClient_RemotePacket_Notification) returns (.NoResponse);
+ rpc NotifyEnableSteamBroadcast (.CRemoteClient_EnableSteamBroadcast_Notification) returns (.NoResponse);
+ rpc NotifyDisableSteamBroadcast (.CRemoteClient_DisableSteamBroadcast_Notification) returns (.NoResponse);
rpc NotifySteamBroadcastPacket (.CRemoteClient_SteamBroadcast_Notification) returns (.NoResponse);
rpc NotifySteamToSteamPacket (.CRemoteClient_SteamToSteam_Notification) returns (.NoResponse);
rpc NotifyRemotePlayTogetherPacket (.CRemotePlayTogether_Notification) returns (.NoResponse);
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service_messages.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service_messages.proto
index a80bb098..ed4c6535 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service_messages.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_remoteclient_service_messages.proto
@@ -53,6 +53,10 @@ message CRemoteClient_CancelPairing_Request {
message CRemoteClient_CancelPairing_Response {
}
+message CRemoteClient_CancelPairing_Notification {
+ optional fixed64 session_id = 1;
+}
+
message CRemoteClient_RegisterStatusUpdate_Notification {
optional fixed64 session_id = 1;
optional fixed64 steamid = 2;
@@ -170,6 +174,12 @@ message CRemoteClient_AllocateSDR_Request {
message CRemoteClient_AllocateSDR_Response {
}
+message CRemoteClient_EnableSteamBroadcast_Notification {
+}
+
+message CRemoteClient_DisableSteamBroadcast_Notification {
+}
+
message CRemoteClient_SteamBroadcast_Notification {
optional fixed64 steamid = 1;
optional fixed64 clientid = 2;
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_seasonpass_types.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_seasonpass_types.proto
new file mode 100644
index 00000000..cc41f827
--- /dev/null
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_seasonpass_types.proto
@@ -0,0 +1,30 @@
+import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
+
+option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+message CSeasonPassDateAndDisplay {
+ optional uint32 rtime = 1;
+ optional string coming_soon_display_type = 2;
+}
+
+message CSeasonPassMilestone {
+ optional int32 milestone_id = 1;
+ repeated .CLocalizationToken title = 2;
+ optional uint32 appid = 3;
+ optional fixed64 event_gid = 4;
+ repeated .CSeasonPassDateAndDisplay dates = 5;
+ optional bool shipped = 6;
+ optional uint32 rtime_complete = 7;
+ repeated .CLocalizationToken milestone_desc = 9;
+ repeated .CLocalizationToken image = 10;
+ optional bool backfilled_release = 11;
+ optional uint32 coming_soon_appid = 12;
+}
+
+message CSeasonPass {
+ optional uint32 appid = 1;
+ repeated .CSeasonPassMilestone milestones = 2;
+}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_steamawards_types.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_steamawards_types.proto
new file mode 100644
index 00000000..0824e609
--- /dev/null
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_steamawards_types.proto
@@ -0,0 +1,14 @@
+option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
+
+option optimize_for = SPEED;
+option java_generic_services = false;
+
+message SteamAward_Localization {
+ optional string title = 1;
+}
+
+message SteamAward {
+ optional int32 voteid = 1;
+ optional .SteamAward_Localization localization = 2;
+ optional int32 award_year = 3;
+}
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_store.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_store.steamclient.proto
index c10ac34a..909fdf04 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_store.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_store.steamclient.proto
@@ -297,7 +297,7 @@ message CStore_GetStorePreferences_Request {
message CStore_UserPreferences {
optional int32 primary_language = 1;
- optional uint32 secondary_languages = 2;
+ optional uint64 secondary_languages = 2;
optional bool platform_windows = 3;
optional bool platform_mac = 4;
optional bool platform_linux = 5;
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_storebrowse.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_storebrowse.steamclient.proto
index 46e13bda..59cfcdc2 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_storebrowse.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_storebrowse.steamclient.proto
@@ -2,6 +2,9 @@ import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_base.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_unified_base.steamclient.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/enums_productinfo.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/enums.proto";
+import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_appratings_types.proto";
+import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_steamawards_types.proto";
+import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_seasonpass_types.proto";
import "in/dragonbra/javasteam/protobufs/steamclient/contenthubs.proto";
option java_package = "in.dragonbra.javasteam.protobufs.steamclient";
@@ -18,6 +21,7 @@ enum EStoreItemType {
k_EStoreItemType_Tag = 4;
k_EStoreItemType_Creator = 5;
k_EStoreItemType_HubCategory = 6;
+ k_EStoreItemType_SalePage = 7;
}
enum EStoreAppType {
@@ -99,6 +103,19 @@ enum EStoreLinkType {
k_EStoreLinkType_MAX = 25;
}
+enum EStoreAppDocumentType {
+ k_EStoreAppDocumentType_None = 0;
+ k_EStoreAppDocumentType_Manual = 1;
+ k_EStoreAppDocumentType_QuickRef = 2;
+ k_EStoreAppDocumentType_Map = 3;
+ k_EStoreAppDocumentType_GettingStarted = 4;
+ k_EStoreAppDocumentType_ReadMe = 5;
+ k_EStoreAppDocumentType_TechTree = 6;
+ k_EStoreAppDocumentType_Keybindings = 7;
+ k_EStoreAppDocumentType_Warranty = 8;
+ k_EStoreAppDocumentType_MAX = 9;
+}
+
enum EStoreCategoryType {
k_EStoreCategoryType_Category = 0;
k_EStoreCategoryType_SupportedPlayers = 1;
@@ -115,6 +132,7 @@ message StoreItemID {
optional uint32 tagid = 4;
optional uint32 creatorid = 5;
optional uint32 hubcategoryid = 6;
+ optional fixed64 salepagegid = 7;
}
message StoreBrowseContext {
@@ -141,6 +159,9 @@ message StoreBrowseItemDataRequest {
optional bool include_assets_without_overrides = 15;
optional bool apply_user_filters = 16;
optional bool include_links = 17;
+ optional bool include_extra_details = 18;
+ optional bool include_best_purchase_option = 19 [default = true];
+ optional bool include_optin_registration_tags = 20;
}
message CStoreBrowse_GetItems_Request {
@@ -175,12 +196,14 @@ message StoreItem {
repeated .StoreItem.Demo standalone_demos = 5;
repeated .StoreItem.Playtest playtests = 6;
optional .StoreItem.RelatedF2P related_f2p = 7;
+ repeated uint32 dlc_parent_appids = 9;
}
message IncludedItems {
repeated .StoreItem included_apps = 1;
repeated .StoreItem included_packages = 2;
repeated .StoreItem included_bundles = 3;
+ repeated .StoreItem included_creators = 4;
}
message Categories {
@@ -241,6 +264,8 @@ message StoreItem {
optional string page_background_path = 15;
optional string raw_page_background = 16;
optional string edition_comparison = 17;
+ optional uint32 last_modified = 21;
+ optional string creator_home_background = 22;
}
message ReleaseInfo {
@@ -265,6 +290,7 @@ message StoreItem {
message VRSupport {
optional bool vrhmd = 1;
optional bool vrhmd_only = 2;
+ optional bool show_optional_vr_mode_notice = 3;
optional bool htc_vive = 40;
optional bool oculus_rift = 41;
optional bool windows_mr = 42;
@@ -278,6 +304,7 @@ message StoreItem {
optional .ESteamDeckCompatibilityCategory steam_deck_compat_category = 11 [default = k_ESteamDeckCompatibilityCategory_Unknown];
optional .ESteamOSCompatibilityCategory steam_os_compat_category = 12 [default = k_ESteamOSCompatibilityCategory_Unknown];
optional .ESteamDeckCompatibilityCategory steam_frame_compat_category = 13 [default = k_ESteamDeckCompatibilityCategory_Unknown];
+ optional .ESteamDeckCompatibilityCategory steam_machine_compat_category = 14 [default = k_ESteamDeckCompatibilityCategory_Unknown];
}
message PurchaseOption {
@@ -327,6 +354,7 @@ message StoreItem {
optional int64 price_to_base_discount_on = 53;
optional uint32 free_with_master_sub_appid = 54;
optional string formatted_lowest_recent_price = 55;
+ optional bool is_free_license = 56;
}
message Screenshots {
@@ -379,6 +407,7 @@ message StoreItem {
optional uint32 start_time = 1;
optional uint32 end_time = 2;
optional string text = 3;
+ optional uint32 appid = 4;
}
message Link {
@@ -400,13 +429,221 @@ message StoreItem {
optional string dropdown_description_bbcode = 5;
}
+ message ExtraDetails {
+ message Anticheat {
+ optional bool kernel_mode = 1;
+ optional bool uninstall_completely = 2;
+ optional bool boot_protection = 3;
+ optional string boot_protection_name = 4;
+ optional string name = 5;
+ optional string name_loc = 6;
+ }
+
+ message Eula {
+ optional string name = 1;
+ optional string url = 2;
+ }
+
+ message AIGeneratedContentService {
+ optional string name = 1;
+ optional string url = 2;
+ }
+
+ message PageSection {
+ enum EPageSectionBanner {
+ k_EPageSectionBanner_None = 0;
+ k_EPageSectionBanner_Workshop = 1;
+ k_EPageSectionBanner_Follow = 2;
+ k_EPageSectionBanner_MachineController = 3;
+ }
+
+ optional string label = 1;
+ optional string content_bbcode = 2;
+ optional .StoreItem.ExtraDetails.PageSection.EPageSectionBanner banner = 3 [default = k_EPageSectionBanner_None];
+ }
+
+ message PressReview {
+ optional string quote = 1;
+ optional string score = 2;
+ optional string site = 3;
+ optional string url = 4;
+ }
+
+ message EarlyAccess {
+ optional string why_bbcode = 1;
+ optional string how_long_bbcode = 2;
+ optional string full_version_bbcode = 3;
+ optional string current_state_bbcode = 4;
+ optional string pricing_bbcode = 5;
+ optional string community_bbcode = 6;
+ optional string description_bbcode = 7;
+ }
+
+ message LinksAndInfo {
+ optional string website = 1;
+ optional string stats_url = 2;
+ optional string online_manual_url = 3;
+ optional string health_warning_url = 4;
+ optional string privacy_policy_url = 5;
+ repeated .EStoreAppDocumentType available_documents = 6;
+ repeated uint32 genreids = 7;
+ repeated string manufacturers = 8;
+ optional bool achievements_visible = 9;
+ optional uint32 achievement_count = 10;
+ }
+
+ message Metacritic {
+ optional uint32 score = 1;
+ optional string url = 2;
+ optional bool always_show = 3;
+ }
+
+ message CastAndCrew {
+ repeated string directors = 1;
+ repeated string producers = 2;
+ repeated string writers = 3;
+ repeated string music = 4;
+ repeated string actors = 5;
+ }
+
+ message SystemRequirements {
+ message Size {
+ optional string amount = 1;
+ optional string units = 2;
+ }
+
+ message Requirements {
+ optional string os_version = 1;
+ optional bool os_version_unsupported = 2;
+ optional string processor = 3;
+ optional .StoreItem.ExtraDetails.SystemRequirements.Size memory = 4;
+ optional string graphics = 5;
+ optional string directx = 6;
+ optional bool broadband = 7;
+ optional .StoreItem.ExtraDetails.SystemRequirements.Size storage = 8;
+ optional .StoreItem.ExtraDetails.SystemRequirements.Size storage_hq = 9;
+ optional string sound_card = 10;
+ optional string vr_support = 11;
+ optional string notes = 12;
+ optional string legacy_bbcode = 13;
+ }
+
+ message PlatformRequirements {
+ optional .StoreItem.ExtraDetails.SystemRequirements.ESysReqPlatform platform = 1 [default = k_ESysReqPlatform_Unknown];
+ optional .StoreItem.ExtraDetails.SystemRequirements.Requirements minimum = 2;
+ optional .StoreItem.ExtraDetails.SystemRequirements.Requirements recommended = 3;
+ optional bool requires_64bit = 4;
+ optional bool requires_apple_silicon = 5;
+ optional .StoreItem.ExtraDetails.SystemRequirements.EUnsupportedOSNote unsupported_os_note = 6 [default = k_EUnsupportedOSNote_None];
+ }
+
+ enum EUnsupportedOSNote {
+ k_EUnsupportedOSNote_None = 0;
+ k_EUnsupportedOSNote_Windows = 1;
+ k_EUnsupportedOSNote_Mac = 2;
+ }
+
+ enum ESysReqPlatform {
+ k_ESysReqPlatform_Unknown = 0;
+ k_ESysReqPlatform_Windows = 1;
+ k_ESysReqPlatform_Mac = 2;
+ k_ESysReqPlatform_Linux = 3;
+ k_ESysReqPlatform_Android = 4;
+ }
+
+ repeated .StoreItem.ExtraDetails.SystemRequirements.PlatformRequirements platforms = 1;
+ }
+
+ message Episode {
+ enum EEpisodeType {
+ k_EEpisodeType_Unknown = 0;
+ k_EEpisodeType_Episode = 1;
+ k_EEpisodeType_Chapter = 2;
+ k_EEpisodeType_Bonus = 3;
+ k_EEpisodeType_BehindTheScenes = 4;
+ k_EEpisodeType_Deleted = 5;
+ }
+
+ optional string number = 1;
+ optional .StoreItem.ExtraDetails.Episode.EEpisodeType type = 2 [default = k_EEpisodeType_Unknown];
+ optional bool hide_details = 3;
+ }
+
+ message Season {
+ optional int32 index = 1;
+ optional string name = 2;
+ repeated uint32 episode_appids = 3;
+ }
+
+ enum EVideoExtrasNote {
+ k_EVideoExtrasNote_Purchase = 0;
+ k_EVideoExtrasNote_Rental = 1;
+ k_EVideoExtrasNote_PurchaseRental = 2;
+ k_EVideoExtrasNote_PurchaseSpecialEdition = 3;
+ k_EVideoExtrasNote_PurchaseDeluxeEdition = 4;
+ }
+
+ repeated .SteamAward steam_award = 1;
+ optional bool vetted = 2;
+ optional bool no_mouse_keyboard_support = 3;
+ optional bool controller_wizard_complete = 4;
+ optional string drm_third_party_type = 5;
+ optional string drm_activation_limit = 6;
+ optional string user_account_third_party = 7;
+ optional bool user_account_third_party_link_to_steam = 8;
+ optional .StoreItem.ExtraDetails.Anticheat anticheat = 9;
+ repeated .StoreItem.ExtraDetails.Eula eula = 10;
+ optional .StoreItem.ExtraDetails.AIGeneratedContentService ai_generation_service = 11;
+ optional bool refund_checks_ea_playtime = 12;
+ repeated .StoreItem.ExtraDetails.PageSection section = 13;
+ optional string legal_notice_bbcode = 14;
+ repeated .EInteractiveElement interactive_elements = 15;
+ optional string content_survey_notes = 16;
+ optional string content_survey_ai_notes = 17;
+ repeated .StoreItem.ExtraDetails.PressReview press_review = 18;
+ optional string partner_awards_bbcode = 19;
+ optional .StoreItem.ExtraDetails.EarlyAccess early_access = 20;
+ optional .CSeasonPass season_pass = 21;
+ optional .StoreItem.ExtraDetails.LinksAndInfo links_and_info = 22;
+ optional bool item_store_eligible = 23;
+ optional bool points_shop_eligible = 24;
+ optional .StoreItem.ExtraDetails.Metacritic metacritic = 26;
+ optional .StoreItem.ExtraDetails.CastAndCrew cast_and_crew = 27;
+ optional .StoreItem.ExtraDetails.SystemRequirements system_requirements = 28;
+ optional uint32 running_time_minutes = 29;
+ optional .StoreItem.ExtraDetails.Episode episode = 30;
+ repeated .StoreItem.ExtraDetails.Season seasons = 31;
+ optional .StoreItem.ExtraDetails.EVideoExtrasNote video_extras_note = 32 [default = k_EVideoExtrasNote_Purchase];
+ }
+
+ message OptInRegistrationTags {
+ optional string optin_name = 1;
+ repeated string values = 2;
+ }
+
+ message PurchaseNote {
+ enum EPurchaseNoteType {
+ k_EPurchaseNoteType_None = 0;
+ k_EPurchaseNoteType_Notice = 1;
+ k_EPurchaseNoteType_LowViolence = 2;
+ k_EPurchaseNoteType_CreditCardRequired = 3;
+ k_EPurchaseNoteType_SystemRequirements = 4;
+ }
+
+ optional .StoreItem.PurchaseNote.EPurchaseNoteType type = 1 [default = k_EPurchaseNoteType_None];
+ optional bool highlighted = 2;
+ optional string text_bbcode = 3;
+ }
+
optional .EStoreItemType item_type = 1 [default = k_EStoreItemType_Invalid];
optional uint32 id = 2;
+ optional fixed64 gid = 76;
optional uint32 success = 3;
optional bool visible = 4;
optional bool unvailable_for_country_restriction = 5;
optional string name = 6;
optional string store_url_path = 7;
+ optional string store_url_slug = 8;
optional uint32 appid = 9;
optional .EStoreAppType type = 10 [default = k_EStoreAppType_Game];
repeated .EStoreAppType included_types = 11;
@@ -444,6 +681,9 @@ message StoreItem {
repeated .StoreItem.Link links = 71;
optional string purchase_description_bbcode = 72;
repeated .StoreItem.PackageGroup package_groups = 74;
+ optional .StoreItem.ExtraDetails extra_details = 75;
+ repeated .StoreItem.OptInRegistrationTags optin_registration_tags = 77;
+ repeated .StoreItem.PurchaseNote purchase_notes = 78;
}
message StoreGameRating {
@@ -451,8 +691,15 @@ message StoreGameRating {
optional string rating = 2;
repeated string descriptors = 3;
optional string interactive_elements = 4;
+ optional .ERatingAgency agency = 5 [default = k_ERatingAgency_Invalid];
+ optional bool banned = 6;
+ optional bool esrb_online_music_not_rated = 7;
+ optional bool esrb_online_interactions_not_rated = 8;
+ repeated .EInteractiveElement survey_interactive_elements = 9;
optional int32 required_age = 10;
optional bool use_age_gate = 11;
+ repeated .ERatingDescriptorImage descriptor_images = 12;
+ optional string content_survey_notes = 13;
optional string image_url = 20;
optional string image_target = 21;
}
@@ -612,6 +859,7 @@ message CHardwarePackageDetails {
optional string queue_waitlist_token = 25;
optional uint32 collection_time_active = 26;
optional bool reservation_not_allowed = 27;
+ optional bool requires_signature = 28;
}
message CStoreBrowse_GetHardwareItems_Response {
diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_useraccount.steamclient.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_useraccount.steamclient.proto
index 4091c827..96a6a412 100644
--- a/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_useraccount.steamclient.proto
+++ b/src/main/proto/in/dragonbra/javasteam/protobufs/steamclient/steammessages_useraccount.steamclient.proto
@@ -28,6 +28,70 @@ message CUserAccount_GetAvailableValveDiscountPromotions_Response {
repeated .CUserAccount_GetAvailableValveDiscountPromotions_Response.ValveDiscountPromotionDetails promotions = 1;
}
+message CUserAccount_GetOptOutEmailOptions_Request {
+ optional string opt_out_token = 1;
+}
+
+message CPerAppEmailOptions {
+ optional uint32 appid = 1;
+ optional bool opt_out_in_library_events = 2 [default = false];
+}
+
+message CPerClanEmailOptions {
+ optional uint32 clanid = 1;
+ optional bool opt_out_in_library_events = 2 [default = false];
+}
+
+message CUserAccount_GetOptOutEmailOptions_Response {
+ optional string email = 1;
+ optional bool opt_out_all = 2;
+ optional bool opt_out_wishlist_sales = 3;
+ optional bool opt_out_seasonal_promo = 4;
+ optional bool opt_out_wishlist_releases = 5;
+ optional bool opt_out_greenlight_releases = 6;
+ optional bool opt_out_curator_connect = 7;
+ optional bool opt_out_creator_home_releases = 8;
+ optional bool opt_out_in_library_events = 9;
+ repeated .CPerAppEmailOptions per_app_opt_outs = 10;
+ repeated .CPerClanEmailOptions per_clan_opt_outs = 11;
+ optional bool opt_out_loyalty_awards_received = 12;
+ optional bool opt_out_partner_messages = 13;
+ optional bool opt_out_year_in_review = 14;
+ optional bool opt_out_wishlist_demo_releases = 15;
+ optional bool opt_out_creator_home_demo_releases = 16;
+ optional bool opt_out_next_fest_starts = 17 [default = true];
+ optional bool opt_out_theme_sale_starts = 18 [default = true];
+ optional bool opt_out_season_pass_ship = 19;
+ optional bool opt_out_roadmap_ship = 20;
+ optional bool is_self = 21;
+}
+
+message CUserAccount_SetOptOutEmailOptions_Request {
+ optional string opt_out_token = 1;
+ optional bool opt_out_all = 2;
+ optional bool opt_out_wishlist_sales = 3;
+ optional bool opt_out_seasonal_promo = 4;
+ optional bool opt_out_wishlist_releases = 5;
+ optional bool opt_out_greenlight_releases = 6;
+ optional bool opt_out_curator_connect = 7;
+ optional bool opt_out_creator_home_releases = 8;
+ optional bool opt_out_in_library_events = 9;
+ repeated .CPerAppEmailOptions per_app_opt_outs = 10;
+ repeated .CPerClanEmailOptions per_clan_opt_outs = 11;
+ optional bool opt_out_loyalty_awards_received = 12;
+ optional bool opt_out_partner_messages = 13;
+ optional bool opt_out_year_in_review = 14;
+ optional bool opt_out_wishlist_demo_releases = 15;
+ optional bool opt_out_creator_home_demo_releases = 16;
+ optional bool opt_out_next_fest_starts = 17;
+ optional bool opt_out_theme_sale_starts = 18;
+ optional bool opt_out_season_pass_ship = 19;
+ optional bool opt_out_roadmap_ship = 20;
+}
+
+message CUserAccount_SetOptOutEmailOptions_Response {
+}
+
message CUserAccount_GetClientWalletDetails_Request {
optional bool include_balance_in_usd = 1;
optional int32 wallet_region = 2 [default = 1];
@@ -154,6 +218,8 @@ message CEmbeddedClient_AuthorizeDevice_Response {
service UserAccount {
rpc GetAvailableValveDiscountPromotions (.CUserAccount_GetAvailableValveDiscountPromotions_Request) returns (.CUserAccount_GetAvailableValveDiscountPromotions_Response);
+ rpc GetOptOutEmailOptions (.CUserAccount_GetOptOutEmailOptions_Request) returns (.CUserAccount_GetOptOutEmailOptions_Response);
+ rpc SetOptOutEmailOptions (.CUserAccount_SetOptOutEmailOptions_Request) returns (.CUserAccount_SetOptOutEmailOptions_Response);
rpc GetClientWalletDetails (.CUserAccount_GetClientWalletDetails_Request) returns (.CUserAccount_GetWalletDetails_Response);
rpc GetAccountLinkStatus (.CUserAccount_GetAccountLinkStatus_Request) returns (.CUserAccount_GetAccountLinkStatus_Response);
rpc CancelLicenseForApp (.CUserAccount_CancelLicenseForApp_Request) returns (.CUserAccount_CancelLicenseForApp_Response);