Jump to content
McKay Development

Dr. McKay

Administrator
  • Posts

    3629
  • Joined

  • Last visited

Everything posted by Dr. McKay

  1. Use 'english' as the language.
  2. Sorry, I have no experience with the Steam datagram relay.
  3. Let me see your constructor code.
  4. Yes, you would want to use NetHook (and NetHookAnalyzer) to inspect the traffic going to and from the GC when you do a trade-up if you wanted to implement it yourself.
  5. Unfortunately no, Steam doesn't tell the client what its SteamID is until you successfully log on.
  6. Check the users property to see if you already have their info cached, and if you don't, use getPersonas. The URL to the image is available in the resulting object as avatar_url_icon, avatar_url_medium, and avatar_url_full.
  7. OpenID doesn't do what you think it does. It doesn't log you into Steam; it allows third-party sites to verify you are who you claim you are on Steam. So yes, you'd need to implement the whole login flow to get a session cookie.
  8. Yeah, if it has to store all that item data in RAM, naturally it's going to consume RAM.
  9. I don't think a block is detectable, no.
  10. I don't see any reason why that wouldn't work. Maybe your proxies are shared or something.
  11. There isn't, since descriptions aren't uniform across games.
  12. Yeah, that happens from time to time. Steam is not the most stable service. No, it won't automatically retry.
  13. Yes.
  14. No, if you want to create gameserver accounts programmatically, you'd want to use the WebAPI.
  15. That sounds like a reasonable assumption. Game content downloads are sometimes compressed with LZMA, so Valve using it somewhere else makes perfect sense.
  16. Inside of that callback function, this refers to the SteamCommunity instance and not the outer context's this. Replace that with an arrow function and it should work as you expect. this.community.on('sessionExpired', () => { this.client.webLogOn(); });
  17. A more proper way would be to check if client.steamID is set before calling logOn and aborting if it is.
  18. Yeah... I really am not sure about the best way to approach this. It's necessary to use process.nextTick in order to avoid errors caused by calling logOn inside of an error callback, meaning that the thrown Error can't be caught. But I also don't like the idea of using the error event for this, since when this error occurs, the client actually still is logged on and the error event always indicates that the client has disconnected...
  19. Client connections and web sessions are two separate things. When steam-user connects to the Steam servers, it also negotiates a web session (which is what the cookies you've received contain). That web session expires pretty much whenever it wants, and when it does you'll get that error. You should use the sessionExpired event in steamcommunity to detect when your web session has expired and use webLogOn() in steam-user to get a new session. Or, just call webLogOn() every half hour or so. That tends to work well enough in my experience.
  20. That data isn't account-specific, so it would work fine between accounts.
  21. const SteamUser = require('./index.js'); let instance = 0; const getAppBranchInfo = (appId, branch) => new Promise(resolve => { let user = new SteamUser(); let inst = ++instance; user.on('loggedOn', async () => { console.log(inst + ' logged on'); const productInfo = await user.getProductInfo([appId], []); const appName = productInfo.apps[appId].appinfo.common.name; const buildId = productInfo.apps[appId].appinfo.depots.branches[branch].buildid; const timeUpdated = productInfo.apps[appId].appinfo.depots.branches[branch].timeupdated; console.log(inst + ' ' + buildId); // Graefully logoff. user.logOff(); resolve({ appName: appName, buildId: buildId, timeUpdated: timeUpdated }); }); user.logOn(); }); setInterval(() => getAppBranchInfo(740, 'public'), 1000); I ran this for 5 minutes and it didn't crash. What version of steam-user are you on?
  22. You would probably add a new argument to your SteamBot constructor for the proxy URL to use.
  23. I don't know. My best guess would be that it's either protobuf or binary KV, but that doesn't look like either. It could possibly be compressed.
×
×
  • Create New...