Jump to content
McKay Development

Dr. McKay

Administrator
  • Posts

    3544
  • Joined

  • Last visited

Everything posted by Dr. McKay

  1. The sentOfferChanged event will be emitted when an offer you sent is accepted or declined.
  2. https://github.com/DoctorMcKay/node-steam-tradeoffer-manager/releases/tag/v2.0.0-beta1
  3. No, images for two items with identical classid/instanceid pairs (which is not uncommon) will be identical. Plus I believe it can change from time to time unpredictably.
  4. Unfortunately there isn't. You'll need to just avoid moving two items which might get mixed up inside of one trade.
  5. You're trying to invite people to TeamSpeak through Steam?
  6. The problem with this is that I'm about 99% sure that you need to actually be "in" a server in order to invite someone to a game, unless it's a Steam lobby. And "joining" a server is a non-trivial task.
  7. Don't worry about poll failures unless you aren't getting any successful polls at all. Failures will happen.
  8. I'm not very familiar with Dota, but as far as I know TF2 and possibly Dota are the only Valve games where IEconService gives enough useful information to build an item's display information. For everything else, you need to use inventory JSON. Attributes are only a concept in Valve-land; the Steam econ server has no concept of "attributes". Consequently, attribute data doesn't translate to the inventory JSON. Attributes are just that: attributes attached to an item. For example in TF2 an attribute might change how much damage the weapon does. In CS:GO, wear is an attribute. IEconService has no classids because again, it has no concept of classids. They're entirely assigned by and used by the Steam econ server, and consequently they're only available in the econ endpoints (like inventory JSON and GetAssetClassInfo).
  9. I purposefully didn't mention the WebAPIs because they aren't really "Steam items". They're "Valve items", and third-party games don't need to follow any of the same standards. However, for Valve games, the "id" in the WebAPI is the item's asset ID, and "original_id" is the item's asset ID when it was originally created. If it's identical to the item's "id", that means that the item was never traded or modified. Quality (generally) determines the color of the item's name, and (sometimes) a prefix to the item's name (for example, StatTrak, ★, etc). Quality has nothing to do with wear. For CS:GO, you can't really get much useful information out of the WebAPI except an item's raw wear value (frequently, incorrectly, and ignorantly referred to as its "float value") and perhaps original ID.
  10. I can't help in any way with C#.
  11. The trade receipt page contains the new item data. If you're using node-steam-tradeoffer-manager, you only need to use offer.getReceivedItems.
  12. Use offer.getReceivedItems, which will contain the new asset IDs of those items.
  13. Check if itemsToGive.length is 0, and itemsToReceive.length is greater than 0. If both tests pass, then accept the offer. Make sure you check both, as both itemsToGive and itemsToReceive could be empty when the Steam econ server is acting up, even though you might be giving items in that offer.
  14. That error means that either your secret is wrong or your clock is wrong. If you're using the same code and the same secret on both machines, then the time must be wrong on the VPS.
  15. If you're being redirected to login, then you pretty clearly aren't logged in.
  16. Make sure your "output log" is capturing stdout.
  17. Please answer my questions.
  18. Is this module the entry point for your application? What output are you getting?
  19. Well, you wrapped everything in a "login" function. Call that.
  20. You have to actually call logOn to connect to Steam and log on.
  21. Please read this guide and let me know if you still have questions.
  22. If you're using node-steam-user, you can do this pretty easily.
  23. Sometimes (I've only seen it happen to CS:GO), Steam will "lose" an inventory like you describe. I suspect there's some error when the econ server requests it from the GC, so it defaults to "empty, can't trade", then that gets cached. There are three (public) ways to break an inventory cache. 1. Launch/close that game (of course, you need to own it first) 2. Complete a trade containing items from that game (obviously this doesn't work if Steam won't let you trade items for that game) 3. Accept a real-time trade request. Obviously, only #3 is an option here. You don't need to actually complete the trade (or even begin the session). All you need to do is send and accept a real-time trade request. This will flush all inventory caches for both parties. If you're using a bot, you can send and accept trade requests programmatically. Don't worry about actually handling the trade session, as it will expire on its own.
  24. You can use getPersonas to get persona data. Off the top of my head (this might not work), getting an avatar URL would go something like this: user.getPersonas(["76561198006409530"], (personas) => { var hash = personas["76561198006409530"].avatar_hash.toString('hex'); var url = "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/" + hash.substring(0, 2) + "/" + hash + "_full.jpg"; });
×
×
  • Create New...