-
Posts
3591 -
Joined
-
Last visited
Everything posted by Dr. McKay
-
After Steam update, don't work function gamesPlayed?
Dr. McKay replied to QuestionRealQuick1's topic in node-steam-user
Works fine for me. client.gamesPlayed(["Test App", 730]); -
Need help with owner_descriptions field
Dr. McKay replied to vmysiur's topic in node-steam-tradeoffer-manager
Sure, get your inventory and check owner_descriptions. -
You probably need to register then login again.
-
You also need to submit these in your login request.
-
Cannot update profile privacy & settings
Dr. McKay replied to TomYoki's topic in node-steamcommunity
Sorry about that, update to 3.35.1 and it should be good to go. -
Question Adding Full Card Sets to a trade offer
Dr. McKay replied to Go Fast's topic in node-steam-tradeoffer-manager
I'm not aware of any public API or database of full card sets. Maybe there's one somewhere. You'd need to either find one or scrape the gamecards page. -
Question amount of gems in trade
Dr. McKay replied to neverhood's topic in node-steam-tradeoffer-manager
You would need to query the gem value for each item individually. Unfortunately, that doesn't work for items that aren't yours. -
This has been added to node-steamcommunity in v3.35.0.
-
That will only respond to invitations that come in while the bot is running. If the invitation was already there when you started up, it won't emit groupRelationship. You want to also check myGroups.
-
https://github.com/DoctorMcKay/node-steam-user#grouprelationship https://github.com/DoctorMcKay/node-steam-user#respondtogroupinvitegroupsteamid-accept
-
You need to escape your backslashes (\\ instead of \). Also CS:GO's appid is 730, not 740 (use the game appid, not the server appid).
- 11 replies
-
- node.js
- node-steam-user
-
(and 2 more)
Tagged with:
-
Question acceptConfirmationForObject is not working
Dr. McKay replied to altend's topic in node-steamcommunity
The module name is steamcommunity, not steam-community. If you're getting that error, either your clock or your secret is wrong. -
There are a few examples that might help you here.
-
There is not, presently. You'd need to make the HTTP request that the browser makes to open one.
-
getReceivedItems items array not complete
Dr. McKay replied to JohnNate's topic in node-steam-tradeoffer-manager
https://github.com/DoctorMcKay/node-steam-tradeoffer-manager/wiki/TradeOffer#getreceiveditemsgetactions-callback -
args.length will always be at least 1.
-
Use getExchangeDetails to get the new assetid.
-
There is no guaranteed order for the output of getReceivedItems. If you need to map input to output items, use getExchangeDetails.
-
Yeah, class-values are a complete black box to Steam.
-
The first parameter to kickGroupMember needs to be a SteamID object.
-
I suppose you could say that. GetAssetClassInfo takes as input a list of classes and responds as output with a single description. That description corresponds to the entire list of input classes. So the response should correspond to all classes. Which means that I think you understand it correctly, Steam does cache the complete signature of classes.
-
Assuming you're talking about what the Steamworks documentation refers to as an "asset class" and that by "inventory provider" you mean an item server backend, which is kind of outside the scope of this thread but I'll answer anyway. Asset classes basically describe the "nature" of an item, and you define them yourself. For example, in Valve games each item has a definition index (defindex), which is a class. def_index: 1234 But each item can also have special attributes, for example a StatTrak CS:GO item. So you might have stattrak: true This means that each item/asset has multiple asset classes. You expose a class to Steam for every kind of attribute that changes how the item is rendered, so you end up with basically a list of display-affecting attributes. You could read the above as "this item has def_index 1234 and it is a stattrak item". Then Steam calls GetAssetClassInfo with that listing of classes and expects you to return a proper description, which gets cached indefinitely for that set of classes. So that means that your set of classes for a specific item needs to include all the data necessary to build a comprehensive description. The purpose of asset classes and descriptions is to decouple the display information from the actual asset. For example, every CS:GO Case Key is completely identical so there's no reason to store all the display information with each individual item. So instead the economy server requests the list of classes for the assetid from the item server, which replies with a list of classes that the economy server has already seen. Thus the econ server knows that it's seen this kind of item before and doesn't need to request display information.
-
You pretty much should use getExchangeDetails instead of getReceivedItems. getReceivedItems isn't useful for the vast majority of people anymore outside of a select few cases.