-
Posts
3573 -
Joined
-
Last visited
Everything posted by Dr. McKay
-
I'm not sure under what conditions DLCs show up in its output, but you could try using the GetOwnedApps WebAPI method.
-
Once you have cookies set, you're logged in (assuming they're still valid). You don't need to call login again. And yes, steamLoginSecure is all you should need, although you might run into trading problems if you don't also include steamMachineAuth<steamid>, if the cookies didn't come from steam-user.
-
CasketItemLoadContents doesn't return anything sane, because it's Valve. When you send it, you get back a bunch of SO_Create messages for the items in the casket. Basically, they get added to your inventory as if they were presently in your inventory, even though they aren't. That's where you need to check those two attributes to determine which items are in the casket.
-
setCookies expects an array.
-
You can't do it with steam-user.
-
You might run into fewer rate limits using steam-session to login and get your cookies.
-
Yes. Those attributes indicate which casket an item is contained in. When you fetch a casket's contents, the items inside of it are spat into your inventory as standard CSOEconItem objects, and you need to check attributes 272 and 273 to figure out which items are contained within the casket. Those messages just get sent automatically. There's nothing you need to send to request them. You need to listen for all of those messages. SO_Create is sent when you receive a new item, SO_Update is sent when an item in your inventory is changed in some way, SO_UpdateMultiple is the equivalent of multiple SO_Update messages.
-
Not as far as I'm aware. I'm not super familiar with CS:GO stuff.
-
Every GC is just a copy of TF2, so check out the documentation on the TF2 wiki. value_bytes is not a serialized protobuf message. You need to either read that value as an integer or a float (little-endian), depending on what the item schema specifies the type of the attribute should be.
-
Sending trade offers using only trade link
Dr. McKay replied to Baby Potato's topic in node-steam-tradeoffer-manager
You can either pass the steamID property from the offer, or the SteamID as you're doing in that last example, but the U needs to be capital. The ID type character is case-sensitive. So, for example, either of these will work: let offer = manager.createOffer(tradeUrl); manager.getUserInventoryContents(offer.partner, 440, 2, true, (err, inv) => { console.log(`Got ${inv.length} items`); }); // OR manager.getUserInventoryContents(`[U:1:${accountid}]`, 440, 2, true, (err, inv) => { console.log(`Got ${inv.length} items`); }); -
Sending trade offers using only trade link
Dr. McKay replied to Baby Potato's topic in node-steam-tradeoffer-manager
Either you're on an old version of steam-tradeoffer-manager, or your trade url isn't valid. -
I'm not aware of any way to do that without rooting/jailbreaking the phone.
-
I need you to clarify what you're trying to transfer from and to. From a phone to a bot?
-
Probably just Steam being dumb as usual.
-
Depots don't belong to betas; they might have a beta option though. What the Steam client calls a "beta" is actually a branch. The default branch is called "public", and any other branch is available in the beta tab of Steam. Public branches have their manifests listed plainly in appinfo (see the public and beta manifests in your screenshot; they match so both branches contain the same content for that depot). For private branches, you have to request the manifest info from Steam using the password.
-
Maybe try calling setPersona(EPersonaState.Online) periodically. Maybe the backend partially forgets that you're online.
-
Yes, descriptions will still be there when loading an inventory directly like that.