Skip to content

Commit 7e42632

Browse files
committed
Deprecate IsSteamDeck, add GamingDeviceType to LogOnDetails
1 parent 0e3df15 commit 7e42632

File tree

3 files changed

+45
-4
lines changed

3 files changed

+45
-4
lines changed

Resources/SteamLanguage/enums.steamd

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1673,3 +1673,18 @@ public enum EUIMode
16731673
MobileChat = 5;
16741674
EmbeddedClient = 6;
16751675
}
1676+
1677+
public enum EGamingDeviceType
1678+
{
1679+
Unknown = 0;
1680+
StandardPC = 1;
1681+
1682+
Console = 256;
1683+
PS3 = 272; // Console + 16
1684+
Steambox = 288; // Console + 32
1685+
Tesla = 320; // Console + 64
1686+
1687+
Handheld = 512;
1688+
Phone = 528; // Handheld + 16
1689+
SteamDeck = 544; // Handheld + 32
1690+
}

SteamKit2/SteamKit2/Base/Generated/SteamLanguage.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3407,6 +3407,18 @@ public enum EUIMode
34073407
MobileChat = 5,
34083408
EmbeddedClient = 6,
34093409
}
3410+
public enum EGamingDeviceType
3411+
{
3412+
Unknown = 0,
3413+
StandardPC = 1,
3414+
Console = 256,
3415+
PS3 = 272,
3416+
Steambox = 288,
3417+
Tesla = 320,
3418+
Handheld = 512,
3419+
Phone = 528,
3420+
SteamDeck = 544,
3421+
}
34103422
public enum EUdpPacketType : byte
34113423
{
34123424
Invalid = 0,

SteamKit2/SteamKit2/Steam/Handlers/SteamUser/SteamUser.cs

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -132,17 +132,24 @@ public sealed class LogOnDetails
132132
/// </summary>
133133
/// <value>The chat mode.</value>
134134
public ChatMode ChatMode { get; set; } = ChatMode.Default;
135-
135+
136136
/// <summary>
137137
/// Gets or sets the ui mode.
138138
/// </summary>
139139
/// <value>The ui mode.</value>
140140
public EUIMode UIMode { get; set; } = EUIMode.Unknown;
141-
141+
142+
/// <summary>
143+
/// Gets or sets the gaming device type.
144+
/// </summary>
145+
/// <value>The gaming device type.</value>
146+
public EGamingDeviceType GamingDeviceType { get; set; } = EGamingDeviceType.Unknown;
147+
142148
/// <summary>
143149
/// Gets or sets whether this is Steam Deck login.
144150
/// </summary>
145151
/// <value>The Steam Deck login value.</value>
152+
[Obsolete( "Use GamingDeviceType instead" )]
146153
public bool IsSteamDeck { get; set; }
147154

148155
/// <summary>
@@ -284,16 +291,23 @@ public void LogOn( LogOnDetails details )
284291
{
285292
logon.Body.chat_mode = ( uint )details.ChatMode;
286293
}
287-
294+
288295
if ( details.UIMode != EUIMode.Unknown )
289296
{
290297
logon.Body.ui_mode = ( uint )details.UIMode;
291298
}
292299

300+
if ( details.GamingDeviceType != EGamingDeviceType.Unknown )
301+
{
302+
logon.Body.gaming_device_type = ( uint )details.GamingDeviceType;
303+
}
304+
305+
#pragma warning disable CS0618 // Type or member is obsolete
293306
if ( details.IsSteamDeck )
294307
{
295-
logon.Body.is_steam_deck = true;
308+
logon.Body.is_steam_deck_deprecated = true;
296309
}
310+
#pragma warning restore CS0618 // Type or member is obsolete
297311

298312
// steam guard
299313
logon.Body.auth_code = details.AuthCode;

0 commit comments

Comments
 (0)