-
Posts
3394 -
Joined
-
Last visited
Everything posted by Dr. McKay
-
https://steamerrors.com/15
-
Are you sure that you're logged in? Also, are you up to date?
-
What exactly is the error message you're getting, and where? Also, please show the code that is generating and sending this offer.
-
Cannot load new Trade Data - But accepted the Tradeoffer
Dr. McKay replied to laroz's topic in node-steam-tradeoffer-manager
Sometimes Steam just doesn't return any data. There's nothing we can do about it. Retry if you get unexpected results. -
You can only use a code once. Subsequent uses will be rejected. Codes change every 30 seconds. In practice, this means that a second login within a 30-second interval will be rejected and ask for a new code.
-
Cannot load new Trade Data - But accepted the Tradeoffer
Dr. McKay replied to laroz's topic in node-steam-tradeoffer-manager
When that happens, some server is probably down or being unstable. If you wait, things will fix themselves. -
start confirmation poll with trade offer manager?
Dr. McKay replied to spock's topic in node-steam-tradeoffer-manager
You'd use myCommunity as normal. Passing it in will cause TradeOfferManager to set cookies on it when you call offerManager.setCookies. -
start confirmation poll with trade offer manager?
Dr. McKay replied to spock's topic in node-steam-tradeoffer-manager
No, you can't access the auto-created instance if you don't supply one. Just create your own and pass it in if you need to use it for confirmations. -
asset Id of an item changes after trade?
Dr. McKay replied to spock's topic in node-steam-tradeoffer-manager
Asset IDs are unique, but not necessarily persistent. Only one item with a given asset ID will only exist at once within a given context (for Valve games there is only one context, so that can be expanded to "game-wide"), but it can also change to a new unique number at whim. As you discovered, you can use getReceivedItems to get the new IDs. -
It could be implemented, but I wouldn't bank on it happening anytime soon.
-
Sorry, you're a bit confused as to what the function of the storage engine is. It isn't for Steam Cloud data (that hasn't been implemented in steam-user at all). Rather, it's for saving data generated by the module itself (for example, sentry files and server lists). By default that data is saved to a platform-specific application data path, but the storage engine allows you to redirect storage elsewhere.
-
I'm confused as to what you're talking about regarding an "actual game via steam". Can you explain exactly what you're doing and what you expect to happen?
-
I don't know exactly why you're getting "Malformed response", but your offer is getting declined somehow. Perhaps you have another bot running somewhere else that is declining offers?
-
Question Getting escrow during creation of a trade?
Dr. McKay replied to Techload's topic in node-steam-tradeoffer-manager
I'm glad you got it working. If you haven't already, I suggest that you check all the breaking changes in v2 to make sure nothing else needs to be changed on your end. -
-
Please read up on callbacks and asynchronicity in JavaScript.
-
Question How to calculate a price
Dr. McKay replied to 72juju's topic in node-steam-tradeoffer-manager
This function should do the trick quite nicely. As with any currency that has decimal places, floating-point imprecision can be an issue so it's best to convert everything to the lowest denomination. function decimalToMetal(dec) { var output = {}; var scrap = Math.round(dec * 9); // Convert it to the lowest denomination (scrap) because floats suck output.refined = Math.floor(scrap / 9); scrap -= output.refined * 9; output.reclaimed = Math.floor(scrap / 3); scrap -= output.reclaimed * 3; output.scrap = scrap; return output; } Returns an object with properties refined, reclaimed, and scrap. -
This is one of those things that has multiple solutions, and even then won't always work. For example, CS:GO by default won't announce game server IPs to Steam friends, so you can't see what map someone is playing in CS:GO if they haven't enabled that client-side option. However, for games that do announce to Steam, this is probably the easiest way: 1. Call GetPlayerSummaries for the user in question to get their game server SteamID (e.g. "gameserversteamid": "90104923353593862",) 2. Call GetServerList to look up the data for that server (e.g. https://api.steampowered.com/IGameServersService/GetServerList/v1/?key=xxx&limit=1&filter=\steamid\90104923353593862) This will give you the data for that server: { "response": { "servers": [ { "addr": "195.154.166.219:27015", "gameport": 27015, "steamid": "90104923353593862", "name": "Meta Construct - how do u carate your charecter", "appid": 4000, "gamedir": "garrysmod", "version": "16.04.30", "product": "garrysmod", "region": 3, "players": 37, "max_players": 123, "bots": 0, "map": "gm_construct_m_222", "secure": false, "dedicated": true, "os": "l", "gametype": " gm:sandbox" } ] } }
-
Question Getting escrow during creation of a trade?
Dr. McKay replied to Techload's topic in node-steam-tradeoffer-manager
It looks like you're using TradeOfferManager v1. That particular method was added in v2. -
1. You're on your own with that. 2. When SteamUser emits webSession, call SteamCommunity#setCookies with the cookies that webSession gave you.
-
Question Getting escrow during creation of a trade?
Dr. McKay replied to Techload's topic in node-steam-tradeoffer-manager
What exactly (please show code) have you tried, and what was the outcome? -
Then you must be doing something wrong. Sorry I can't be more helpful, but error code 2 literally just means "Fail". Maybe try again later?
-
No, that's an object. If you don't know what an array is, please google it.