Jump to content
McKay Development

Dr. McKay

Administrator
  • Posts

    3389
  • Joined

  • Last visited

Everything posted by Dr. McKay

  1. It's indeed inside valueBytes. Wear is attribute 8, and I believe paintindex is attribute 7 (it might be 6 so check that one if 7 doesn't give you the expected result). Loop the attributes array till you find the attribute with the expected defindex, then call valueBytes.readFloat() to get the value as a float.
  2. Are you logging into an individual user? Add this to the loggedOn callback: console.log(client.steamID.getSteam3RenderedID());
  3. Your session is probably expiring. You should call webLogOn every hour or so to refresh it, and also when sessionExpired is emitted on the SteamCommunity instance.
  4. if (itemsToGive.length >0) {} }else{This looks like a syntax error to me.
  5. You shouldn't need to. Try to send the trade. If your session has expired, relog and then send it again.
  6. That means that your session has expired, and you need to login again.
  7. Don't do it that way, that's a very bad idea. Write the entire 64-bit number to the buffer.
  8. Okay, here's the flow of how this works: CS:GO client sends a GCStorePurchaseInit to the GC with the items you want to buy You get back a GCStorePurchaseInitResponse containing a result (1 = OK) and a transaction ID (64-bit, even though it can currently fit into 32 bits) Concurrently, you get a ClientMicroTxnAuthRequest message via Steam. Discard the first byte of the payload (seems to be 1 in the dump you sent, not sure if that's always the case or what the significance of it is), then decode the remainder of the payload as Binary KeyValues (require('binarykvparser').parse(payload.toBuffer().slice(1))). The interesting stuff in there is the total/BillingTotal and transID (orderid is there if you want to make sure it matches what the GC sent back). Grab the transID and send it back in ClientMicroTxnAuthorize (little-endian encoded, as always) and append a 32-bit value of 2 (unsure what the significance of this is, or if it ever changes from 2. Could perhaps be an authorization result, where 1 is deny or something). You'll get back ClientMicroTxnAuthorizeResponse with a payload containing a 32-bit eresult value (1 = OK), and a 1-byte unknown value of 0. If successful, If successful, send GCStorePurchaseFinalize to the GC containing the transaction ID you from the GC before (not transID) to get your items.
  9. All I can say is that your cookies don't appear to be valid. Did you change IPs? It appears that Steam locks sessions to a particular IP.
  10. https://github.com/DoctorMcKay/node-steam-tradeoffer-manager/wiki/TradeOffer#getuserdetailscallback
  11. Remove listeners if you're done with it. But it being emitted is an indicator that something is still trying to do something even when you've logged off.
  12. Would you mind sending me your NetHook dump? It would probably be a good idea to zip it up, encrypt the zip, attach the zip to a reply here, and PM me the password. You can't attach files to PMs. Also, for what purpose are you doing this?
  13. https://github.com/DoctorMcKay/node-steamcommunity/wiki/SteamCommunity#logindetails-callback callback -> steamguard
  14. Please read about asynchronous JavaScript and callbacks. getPersonas does not return anything useful, you need to provide a callback and wait for the response there.
  15. How often is your internet going down? You could periodically make some request that results in a response, and reconnect if you don't get a response in x time after y attempts.
  16. Wrong module. You aren't using steam-tradeoffer-manager. https://httpstatuses.com/429
  17. The first error means that the data is temporarily unavailable, and you should try again. It's Steam's fault. The second error: https://steamerrors.com/26
  18. When Steam goes down the application will be notified of the connection being closed. Experimental does mean that there could be problems, yes.
  19. Your cookies need to be valid, of course. You also need to send more data when accepting a trade offer. For example, you need to include the offer ID in the POST fields, along with some other stuff.
  20. Linux/Unix doesn't seem to think it very important to notify applications of closed TCP connections when the network goes down. You could use node-steam-client's experimental UDP support if this is a situation that will affect you regularly: var SteamClient = require('steam-client'); var client = new SteamClient.CMClient(SteamClient.EConnectionProtocol.UDP); var user = new SteamUser(client);
  21. https://github.com/DoctorMcKay/node-steamcommunity/wiki/SteamCommunity#getconfirmationstime-key-callback
  22. This isn't really the right place to ask for SteamBot help.
×
×
  • Create New...