如何获得CS:GO市场项目的浮动价值?

时间:2015-11-05 11:31:52

标签: steam steam-web-api

最近我发现您可以通过在csgo.exchange和csgozone.net等网站上输入inspect链接来查看蒸汽市场中商品的浮动价值。

经过一番研究后,我想出了一个检查链接的语法。

steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561197973845818A3130594988D7956282211490500705

正常的检查链接包括所有者的蒸汽输送和物品的装配

steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S <STEAM_ID> A <ASSET_ID> D7956282211490500705

Steam市场项目检查链接:

steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20M322366017503471651A4084214062D7521609830474722133

使用此信息,您可以获得项目的浮动值。 但是,从玩家库存中的物品检查链接与从蒸汽市场上的物品检查链接之间存在差异。来自市场的检查链接包含市场listingid而不是所有者的蒸汽。

如何使用市场检查链接中的信息获取项目的浮动值?

3 个答案:

答案 0 :(得分:6)

要完成一点答案,而不是只指向我的npm module,将检查链接转换为浮点值的整个过程将被分解为:

  • 您需要连接SteamClient,为此,请提供您的登录信息。请注意,您可能会在此前几天延迟(Steam安全性)。
  • 成功的身份验证意味着SteamGameCoordinator将以4004消息类型进行响应,基本上通过header.msg ~0x80000000进行纠缠来检索。
  • 之后,您可以通过4个参数有效地向CMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockRequest发送GCparam_sparam_aparam_dparam_m可以通过分解检查链接来检索,在您的情况下为S:76561197973845818,A:3130594988和D:7956282211490500705,并为{M}传递0
  • 然后,您会收到一封9157消息,您可以通过CMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockResponse创建一个新的Buffer 4字节和writeUInt32LE response.iteminfo.paintwear来解码。< / LI>

你现在有浮动,恭喜!

csgo-float正在抽象所有内容并允许您只需提供您的登录信息,并发送您的蒸汽检查链接,这将返回一个承诺,使其变得简单:

client.requestFloat('S76561197973845818A3130594988D7956282211490500705')
  .then(floatValue => console.log(floatValue))
  .catch(err => console.log(err))

答案 1 :(得分:1)

Aperçu有解决方案,并且理所当然地接受了答案。但是,如果您想要更快地返回结果的内容,则可以使用Chrome扩展程序(Stmy's CS:GO Market Details)来完成此操作。它会自动为整个页面返回浮点值(以及所有其他项目信息)。它还允许根据不同的标准对多页结果进行排序。我已经使用了其他几种解决方案,但您不得不点击每个值和/或复制/粘贴到第三方网站。

答案 2 :(得分:0)

The csgo-float module(使用node-steam)可以通过游戏协调器获取项目的浮点值。它处理市场上市检查链接和定期库存检查链接。