2017-09-23 66 views
0

得到蒸汽ID 64的正常蒸汽ID蒸开放ID只返回蒸汽ID 64:如何使用C#

例如:76561198025336843

我怎样才能将其转换成真正的蒸汽ID?

例如:STEAM_0:1:32535557

有没有办法来获得信息?

回答

1

也就是说是绝对可能的。真正的Steam ID可以从64位整数(long)计算得出。

Basicly我们可以提取使用some calculations以下两个信息:

  • 的认证服务器
  • 的认证编号

有了这个信息,我们可以连接蒸汽ID。下面是这两个实用的方法:

public static string GetSteamId(string steamId64) 
{ 
    return GetSteamId(long.Parse(steamId64)); 
} 

public static string GetSteamId(long steamId64) 
{ 
    var authserver = (steamId64 - 76561197960265728) & 1; 
    var authid = (steamId64 - 76561197960265728 - authserver)/2; 
    return $"STEAM_0:{authserver}:{authid}"; 
} 

用法:

var result = GetSteamId("76561198025336843"); 
//result: STEAM_0:1:32535557