How to get the float value of CS:GO market items?

17,218

Solution 1

To complete a bit the answer, rather than only pointing to my npm module, the whole process of converting an inspect link to a float value is decomposed like this:

  • You need to get a SteamClient connected, for this, provide your login info. Note that you might have a delay of a few days before this (Steam security).
  • A successful authentication will mean that the SteamGameCoordinator will respond with a 4004 message type, basically retrieved by bitwising the header.msg with ~0x80000000.
  • After that, you can effectively send a CMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockRequest to the GC with 4 parameters: param_s, param_a, param_d, param_m that can be retrieved by decomposing the inspect link, in your case S: 76561197973845818, A: 3130594988 and D: 7956282211490500705, and pass 0 for M.
  • You will then receive a 9157 message that you can decode with CMsgGCCStrike15_v2_Client2GCEconPreviewDataBlockResponse by creating a new Buffer of 4 bytes and writeUInt32LE the response.iteminfo.paintwear.

You now have the float, congratz!


csgo-float is abstracting everything and allow you to only have to provide your login infos, and sending your steam inspect link that will return a promise, making it easy:

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

Solution 2

Aperçu has the solution, and rightfully, the accepted answer. However, if you want something that returns results much quicker there is a Chrome extension (Stmy's CS:GO Market Details) that does exactly this. It returns the float value (along with all other item information) automatically for the entire page. It also allows for sorting multiple pages of results based on different criteria. I've used a couple of other solutions, but you are forced to click for each value and/or copy/paste to a 3rd party website.

Share:
17,218
Admin
Author by

Admin

Updated on June 17, 2022

Comments

  • Admin
    Admin about 2 years

    Recently I discovered that you can check the float value of an item from the steam market by entering the inspect link on sites like csgo.exchange and csgozone.net.

    After some research I figured out the syntax of an inspect link.

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

    A normal inspect link consists of the steamid of the owner and the assetid of the item

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

    Steam market item inspect link:

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

    With this information you can get the float value of the item. But there is a difference between inspect links from items in player inventories and inspect links from items on the steam market. An inspect link from the market contains the market listingid instead of the steamid of the owner.

    How can I get the float value of the item with the information from the market inspect link?