https://github.com/JustArchi/ArchiSteamFarm/wiki/Setting-up
Go to: "Generic setup"
Comment has been collapsed.
Is going through all accounts twice when redeeming some new feature I'm always too lazy to read about? :)
Redeemed 4 DLC keys, but 2 of the accounts which had the game already had DLC too. So first 2x AlreadyPurchased, 2x OK, 7x DoesNotOwnRequiredApp and then another round of 4x AlreadyPurchased, 7x DoesNotOwnRequiredApp before finally giving up and leaving 2 keys unused.
Closer look says it tried key 3 on first round, then tried key 4 for all accounts on second. Also on bigger scale it loops through all accounts for every key, producing huge amounts of activation attemps.
Comment has been collapsed.
I would assume that (as it happend before) there is a missmatch between the package/subpackage id the key redeems and the one really getting activated. Therefore there is no way for ASF to know which account owns the game. (or rather ASF thinks the other accounts do not own the game)
It did not went through all accounts twice. It went through all of them once per key.
Had that a couple of times mostly with game-bundles or special editions.
Comment has been collapsed.
ASF sees it fine with !oa on all accounts, but still does a loop of AlreadyPurchased for every key. Can't remember ever seeing it doing that, always tried once for all accounts and then telling me rest are unused no matter what errors it gave.
Comment has been collapsed.
Well yes. !oa works fine if you enter the name or the appid, but if the key redeems a different id, which just contains the other thing, it wont work...
There are even games (Blockstorm) where you can redeem the normal version of the game twice, since they messed up package ids for retail and store.
Comment has been collapsed.
Don't still see any reason ever to go through the accounts more than once, otherwise you just repeat the same error and get banned in no time. Like with 100 accounts it would try 100x100 attempts banning all of them
https://steamdb.info/app/615140/ is the culprit this time.
Comment has been collapsed.
Obviously for 100 accounts you would redeem 100 keys, hence 100x100.
And it's not expected in any way since nothing else produces this nor does it serve any functionality other than getting banned.
What game the keys are for is totally irrelevant, they could be all the same or mixed, but anything left over after first loop should just stay that way, not get retried over and over again.
Comment has been collapsed.
Got keys redeemed twice on the same account?
I understodd you differently.
For one key it is tried until all remaining accounts own it (which in some rare cases ASF can not tell) or the key is successfuly redeemend.
So one key results in maximal one activation try per account.
If you have X keys, thats X per account, as each key is handled individually.
Thats expected behaivior.
You can get around that using the advanced syntax of the redeem command, i.e. choose distributing but not forwarding, Then each key is tried only on one account. Doesnt really help if you have less keys than accounts, though.
Comment has been collapsed.
No it's still not any kind of expected since it's never done that before. :)
Try redeeming 100 keys on 100 accounts and it will try each key on 100 accounts, then next key etc, making the total still 100x100.
The 1000s of times I've redeemed X keys at a time before have always only resulted in 1 loop and then giving up. And I'm sure as hell not making it even worse with changing configs, already thinking of going back to 3.0.2.0 to get sane mass redeeming working again.
Comment has been collapsed.
already thinking of going back to 3.0.2.0 to get sane mass redeeming working again.
You do not understand, what I am telling you...
The redeeming behavior has NOT changed. you can even go back to V2 and it will be the same.
The only difference and why you never experienced that before is, that point 3 does not work here (because of volvo/publisher fuckup).
But that is 100% what is expected from the normal redeem command.
And I'm sure as hell not making it even worse with changing configs
Why should you do that? Just read about the redeem^ COMMAND and be happy for the rest of your live.
Comment has been collapsed.
Your example is missing the critical point in all of this. In 4, if it was the last alphabetical bot and all bots have been gone through, END. No matter what causes this BUG it's still one in my eyes, because it only serves to spam Steam until banned, not make redeeming any kind of better.
Only redeem command I use is !r and even that against my will. 3.0.2.0 still allows pasting bunch of keys without any, which I was referring. I'm not talking about redeeming single keys on single accounts, totally opposite, so writing commands and figuring out what !redeem"#¤%"#%"#¤&%"#%¤ I need to use this time sounds like a total unwanted hassle.
Comment has been collapsed.
In 4, if it was the last alphabetical bot and all bots have been gone through, END
Yes, thats what it does.
The only change that was made is, that previously:
C -> A,B,D,E,F
and now:
C -> D,E,F,A,B
One key is never redeemend twice on one account unless you have distributing AND forwarding enabled and the keys are of the "bad" kind (unable to ckeck owned, or missing base game)
And yes, if readin like 1/3 of a page to figure out how to use a program is to much to you, you need to just live with the problems you have.
Older version will not change anything there.
Comment has been collapsed.
But it doesn't do that, that's what I've been trying to tell you :)
Also never seen that new saner order either, because switching to this forced command writing made me always just redeem on first bot and let ASF go through all even if I fully know that first 50% already have the game.
So if this is a bug that's caused by bad game ids, isn't it something ASF can trivially avoid by never going through accounts more than once, no matter what the error.
Comment has been collapsed.
Thats what I have been asking you all the time.
Did ASF try to redeem the SAME key to the SAME account twice? If yes, than that should not happen (maybe only if you have a messed up config), if no (DIFFERENT keys for the SAME game do not count btw.) then it is as expected.
So to wrap it up:
X key on Y different accounts
X up to X times Y attempts is expected
More than X times Y should not happen.
Where X times Y is the absolute maximum and only happens for DLCs (when all bots miss the base game) or games/DLCs with fucked up appids.
Comment has been collapsed.
I told you already it tries to redeem 1 key on all accounts and fails. This is normal and usually that's it. Keys were bad and you check what went wrong. But now it tried to redeem every other key too on all accounts, which is silly and can only lead to bans. If this silliness is expected behavior of any sort, I'll really start considering older versions.
What should happen is max Y failed tries, not X*Y. And it happened with bots where all of them own both the game and DLC as well as random mix of each. I understand the game is bugged etc, but how ASF handles the bug is the problem here.
Comment has been collapsed.
I told you already it tries to redeem 1 key on all accounts and fails.
Yes
But now it tried to redeem every other key too on all accounts
Yes, that is expected and wanted behaiviour.
which is silly and can only leads to bans
No, its not and it leads to my games getting redeemend.
If this silliness is expected behavior of any sort, I'll really start considering older versions.
As mentioned quite often IT HAS ALWAYS BEEN THAT WAY.
If YOU have further knowledge about what games you are redeeming use the right command and be happy.
The basic funtion is as it is expected and wanted and needed in the vast majority of cases.
For special cases (like multiple keys for the same game where you want a specific behaivior) there IS ALREADY a "fix" because you can exactly specify how to redeem the keys.
Comment has been collapsed.
Also already told you that I would be happy only with the sane way of pasting bunch of keys to bot and done, not with 10 different commands of which none do what I want. :)
How can it be both a problem caused by mismatching ids AND expected behavior, this part still doesn't make any sense to me. If it's expected, it would happen always. If it's bug, it only happens with bad keys. Pick one.
Edit: if I tried redeeming 100 keys on 10 accounts before, it went through the keys until all bots have been tried once. It didn't start 90 additional loops of 10 attempts. So still nope to always been like that and expected in my eyes.
Comment has been collapsed.
The behaiviour is the same. For bugged and for not bugged keys.
The difference is:
(redeeming 4 keys of the same game to 5 Accounts, where A already owns it)
For not bugged it will do skipped
AB,ABC,ABCD,ABCDE
For bugged keys it will do:
AB,ABC,ABCD,ABCDE
If you configured you config/command "normal good" it is
AB,C,D,E or AB,BC,CD,DE, dunno right now
in both cases.
If you use the perfect command, or have your bots configured for that situation it is:
B,C,D,E
If now more accounts own the game, or are missing the base game, it gets worse.
I would be happy only with the sane way of pasting bunch of keys to bot and done
It feels like talking against a wall, but the old way of just pasting is EXACTLY the same.
not with 10 different commands of which none do what I want.
There are exactly 2 commands, the one you are using and the one that does what you want.
How can it be both a problem caused by mismatching ids AND expected behavior
If the keys are not bugged you do not notice the "normal" behaiviour that strong.
If it's expected, it would happen always. If it's bug, it only happens with bad keys. Pick one.
Nope. The bugged KEYS force ASF to do what it does. It would be same with an unowned game that has region restrictions or something similar.
So again to wrap it up.
The "bug" you experienced is how ASF normally treats keys. If the keys are "fine" that seems to be the "old" behaviour, if the keys are bugged you get your situation and that is, what is wanted, since there are circumstances that prduce a similar situation with "not bugged" keys.
Further if you always need a special way you can configure the configs properly or if you only sometimes need special behaiviour you can use the !redeem^ command instead of !redeem (or !r). Both ways you can do EXACTLY what you want to happen
So there is no bug or problem in ASF, everything is fine and your "suggestions" are already implemented. If you do not want to use them, thats neither mine, nor archis problem.
Comment has been collapsed.
And I feel like the wall is talking to me, I already told you that paste/!redeem is totally unrelated personal preference, not related to this problem. That's just why I will never be happy to be required to write the same command over and over again for no reason.
So which !redeem commands allows me to do what I want? As in stop using any of them? :)
"Please keep in mind that there is per-IP and per-account hourly limit of redeeming tries, and every redeem try that didn't end with OK contributes to failed tries. ASF will do its best to minimize number of AlreadyPurchased failures, e.g. by not attempting to forward a key to another bot that also owns that particular game, but using any of extra redeeming flags will increase your likehood to hit RateLimited, regardless."
Like I've been saying 10k attempts in mere minutes and getting banned might be expected and how it's always been to you, but never to me. Especially since it literally has never done anything like that before to me.
Comment has been collapsed.
You are not understanding the meaning of
most common
and
default behaviour.
Especially since it literally has never done anything like that before to me.
Yes because these "bugged keys" are rare.
I already told you that paste/!redeem is totally unrelated personal preference, not related to this problem.
It is related. !redeem does EXACTLY the same as pasting the keys before, therefore your "going back to old version" makes no sense.
So which !redeem commands allows me to do what I want?
Read the wiki
As in stop using any of them? :)
Use idle master.
Like I've been saying 10k attempts in mere minutes and getting banned might be expected and how it's always been to you, but never to me.
Do you understand that? Normal (default) behaviour seems to suit your needs as long as the keys are not bugged. So just use reddem and it's like it always has been.
If you want to further optimize your redeeming or you have a batch of keys where you know you might run into problems and you want to have a "better" redeeming strategy ASF already has this funtion
It's like wanting to buy a car, standing infront of 2 identical cars one red, one blue and saying:
I want the blue one, but in red, because my old car has been red.
"We can not repaint the car, but just take the red one, which is the same"
NO! I want the blue one but painted to red.
Comment has been collapsed.
When did I claim pasting and !redeem are different in the way they work AFTER you use them? 3rd time explaining to you that it's just a personal preference on how to START the redeeming process. Paste means I don't need to write anything, !redeem means I have to write a command, NOTHING MORE. Was that finally clear enough?
"I'd like a car with automatic gears"
"We have 10 different kinds of stick, you can find the best for your needs"
"I need one with automatic"
"Just choose one with stick"
I was using several VMs to run Steam clients and games before SAM, so I really don't need tutorials on farming, thanks anyways. :)
Comment has been collapsed.
Well, than you need to be clearer:
The 1000s of times I've redeemed X keys at a time before have always only resulted in 1 loop and then giving up. And I'm sure as hell not making it even worse with changing configs, already thinking of going back to 3.0.2.0 to get sane mass redeeming working again.
so I really don't need tutorials on farming
Never done that. Here it's about redeeming. And you want a function that has been removed for a good reason back and you want to change the default behavior that works for a vast majority of people screwing them over just so you do not have to read like 1/3 of a page in the wiki (in a big font btw.).
Thats why we are arguing, nothing more.
Comment has been collapsed.
No, you need to read what I write so I don't have to write it 3 times. Much better solution. Or maybe believe me when I say it's unrelated?
I want a function that was removed because it's against some clean coding principle or whatever aesthetic reason, not because it was in any way working badly.
I want to change the default behavior so that it will never ban all your accounts because ASF fails to notice a key is bugged and causing it. Just like it has protections against all other sorts of Steam fuckups as well. And your idea of people getting screwed is just silly, it would work much better for them too.
We're arguing because you claim that flooding Steam to death and getting banned is expected behavior from ASF and I disagree. Not because I haven't read the Wiki several times, which I have, but it still doesn't contain a single !redeem command I want.
Comment has been collapsed.
No, you need to read what I write so I don't have to write it 3 times.
So you tell me your qoute is not to be understood in the way I did... Ok... Totally my fault. Why can't I read thoughts after all.
And your idea of people getting screwed is just silly, it would work much better for them too.
No. As I mentioned before... There ARE situations where these many attempts are wanted. There is just no way to distinguish them from "bugged" keys. E.g. different games with region locks, same game with different region locks and so on.
Or if I have 5 keys, 4 for the same game and the fith for a different one? And now it stops.
The only valid improvement (thats doesn't screw other people) would be to keep track of "bugged" ids and link them to the real id for checking, which is a major change for a case that happen for like 0.01% of keys.
We're arguing because you claim that flooding Steam do death and getting banned is expected behavior from ASF and I disagree.
What ASF DOES in the default case is perfectly fine. As with literally EVERY program there are situations where the default behaviour leads to unwated results... Thats what advanced options or commands are for.
I haven't read the Wiki several times, which I have, but it still doesn't contain a single !redeem command I want.
So,
!redeem^ FD,SK key1,key2...
sent to the first bot which does not own it, does not what you want to do? Or do you just don't want to use it because?
I want a function that was removed because it's against some clean coding principle or whatever aesthetic reason, not because it was in any way working badly.
It was removed because a bot reacting to something when it's not a command is a bad thing. Imagine trading a key and you make a mistake and drop the PUBG key into the bot chat instead of the other trader. Mistakes happen and now the key is gone...
If you want a program to do something there is no better way than to be forced to explicitly state that.
IE once had a function that preloads webpages by guessing what you might want to click next and it went very very poorly. It's not a coding principle, it hinders usability.
I want to change the default behavior so that it will never ban all your accounts
First you run into Rate limited. Then ASF will stop trying (in the newest version) anyways. If you redeem so many keys on so many accounts that you actually get banned you have different problems.
Comment has been collapsed.
How on earth did you understand "I already told you that paste/!redeem is totally unrelated personal preference, not related to this problem." as it being super related? Don't read minds, read text.
Yes, default ASF with redeeming on 3 usually does almost what I want. Why would I need to specify a command for something already in the config?
Like I said, cosmetic reasons that are irrelevant to me. I know where I put things and accept my losses if I fail. Potentially losing 1 key because my mistake is less a bother than having to write !r(edeem(^)) 100 times in a row.
Anything that prevents me from using Steam is a ban to me. It can be called by any other fancy name but that's still what it is.
Comment has been collapsed.
If you listened to what KlappPc said above instead of blindly believing that you're right and everybody else is wrong then you'd see that there is no change compared to any previous way of how it worked, everything is in order. ASF is not always capable of telling which bot owns the game already and it should be avoided when forwarding - there can be 2 or more packageIDs activating the same thing, if all your accounts own packageID 1 already, and you're redeeming key that grants packageID 2, then ASF has no way to know that it grants the same license that you already own and that it should skip redeeming for all bots - you do not redeem games, you redeem packageIDs, and ASF only has logic for skipping packageIDs you already have - it does not go into detail of what each packageID activates because perhaps you own some other packageID that already activates everything that your currently redeemable packageID also includes - it's not Steam key manager app. In this case, you're properly getting AlreadyOwned
. Exactly the same logic is happening with DoesNotOwnRequiredApp
, because ASF once again does not know about pre-requirements which packageID requires what license first.
Everything you said above is wanted scenario, depending how you configured ASF when talking about forwarding/distributing. If you want to distribute your keys among your bots then use distributing, not forwarding. Only then you can be sure that every bot keys only a key once. If you use any sort of forwarding then it's wanted scenario that ASF will try to forward key to every bot until it eventually runs out of them. There is no bug, there is no any logical change compared to any previous ASF release - it works exactly the same like before and you're totally misunderstanding logic behind that.
And it's not expected in any way since nothing else produces this nor does it serve any functionality other than getting banned.
Wrong, it's not expected only if you use forwarding when distributing keys for the same game. It's expected in every other scenario when ASF cannot guarantee that all keys are for the same game. If 99 of your bots own all required things already, and 1 is missing all of them, and you use forwarding with 4 keys, then you can see that ASF has to skip 99 x 4 key redeeming attempts in order to success with 1 x 4 attempts. Now whether that skipping will happen automatically because ASF can match packageIDs and come to the logical conclusion that it's not needed to try them on those 99 bots first, or not, is entirely independent thing out of entire redeeming process, as I explained above.
Comment has been collapsed.
I don't believe I'm blindly right, I believe in hard evidence like things either working or not.
So I'm wrong because you agree with me? Or did I read that wrong somehow? Distributing + forwarding have been my ASF redeeming settings ever since there have been such and wont change until really required for something.
Comment has been collapsed.
I didn't agree with you, neither disagree with you. I explained how ASF works, how it always worked and how you have entirely wrong expectations from the mode you're using. Distributing + forwarding will make ASF to switch bot, but not switch the key on failure, as opposed to distributing alone that would make ASF switch both bot and the key on failure. This is not only in current code, but also in V2.X code. You're acting like something changed in terms of how ASF worked with that option, which is absolutely wrong because it always worked like that and there is no logical mistake, neither a change that would affect your scenario. You're more than welcome to reproduce your issue on outdated V2 versions to confirm this.
So to sum it up with your words:
Hard evidence is that you've always thought that this option works in a way it doesn't work and it's not supposed to. Everything is in order and the only mistake is you misunderstanding how distribution + forwarding works.
Comment has been collapsed.
No that's exactly how I think it has worked before too. But only once per bot unless key is dupe/bad etc. That it can loop through all bots the number of times there are keys is totally new to me. Not how it works with non bugged games which don't do that.
So if it has always been ABCDEFABCDEFABCDEFABCDEFABCDEFABCDEF instead of ABCDEF, then I clearly was mistaken.
Saying I'm wrong means you disagreed with me, which made me wonder if I misread you saying the problem is unexpected in exact the way I use ASF or the opposite.
Everything has been in order before that silly bugged DLC and has been ever since it, no worries :). Until I encounter the next one that is.
Comment has been collapsed.
So if it has always been ABCDEFABCDEFABCDEFABCDEFABCDEF instead of ABCDEF, then I clearly was mistaken.
Yes it was. Only that it looked like:
ABCDEFABCDEFABCDEFABCDEFABCDEF
because ASF was skipping bots, where the game has been recongnized as beeing owned (or stopped because the key was redeemend, depending on the initial setting).
Since the keys are "bugged" (but as mentioned that can happen with region restricted, etc. as well) that check failed and ASF was not able to skip any bots. If you want ABCDEF ALWAYS then use only distributing and not forwarding.
Comment has been collapsed.
Package can grant more than one appID, and what actually is included in them is up to Steam to decide, not the user. ASF is never letting user to make assumption what is included in the key being redeemed - even when distributing, it only alters the process, not makes ASF automatically assume that for example we can just skip all logic related to multiple games and assume that user knows what he's doing. This is too advanced feature to code, for close to no benefits. Redeeming feature is already more complex than I want it to be - ASF is not necessarily key management tool.
Comment has been collapsed.
I thought it would make things simpler when you can check which own the id the user claimed and not try adding on those. The worst that can go wrong with that is having it try based on wrong game or bad result, leading to it trying all bots anyways.
Comment has been collapsed.
Ah thanks!
That made me remember why I wanted forwarding too. It's a relic from an age where I still marked owned games on excel per bot. So just using distributing sounds like it will leave holes with a bad key, since all bots just get 1 with no retries. Having both makes the hole be continuous and in the end of botlist. :)
Now I just face a big problem, OCD or switching to something that is in theory better for redeeming.
Comment has been collapsed.
I want a "!redeem Indiegala Monday #XX" command, where ASF goes and buys the bundle, reveals the keys and then redeems them to the fitting bots. ;->
@Starwhite: No offense, but that function is only needed by very few people in very few cases and I guess it's not worth the effort requiered to implement.
Comment has been collapsed.
The problem is that people see a feature as fixed 10 minutes of coding that can be put once and left like this, which is wrong. Rufus developer pointed out perfectly why it's wrong, so I'm just going to link to that.
I will actually give you Pete's rule on that subject: In the lifetime of an Open Source project, only 10 percent of the time spent adding a feature will be spent coding it. The other 90 percent will be spent in support of that feature. Therefore, if you don't plan spending a lot more time supporting a feature than what what you plan adding the code for it, you shouldn't add the feature in the first place!
This is also why your full Steam suite would take you next 10 years to develop, and your entire life to maintain. I can barely maintain ArchiBoT, and its features can be listed only on 35 A4 pages (I'm writing master thesis from it so I know how much exactly).
Comment has been collapsed.
I corrected the wiki to be more explicit on this.
Enabling both Forwarding and Distributing will add distributing feature on top of forwarding one, which makes ASF trying to redeem one key on all bots firstly (forwarding) before moving to the next one (distributing). Typically you want to use this option only when you want Forwarding, but with altered behaviour of switching the bot on key being used, instead of always going in-order with every key (which would be Forwarding alone). This behaviour can be beneficial if you know that majority or even all of your keys are tied to the same game, because in this situation Forwarding alone would try to redeem everything on one bot firstly (which makes sense if your keys are for unique games), and Forwarding + Distributing will switch the bot on the next key, "distributing" the task of redeeming new key onto another bot than the initial one (which makes sense if keys are for the same game, skipping one pointless attempt per key).
Comment has been collapsed.
I was just about to patreon you, cause this really saves time, just to realize that your "program" automatically enters in your Steam group with MY steam profile quietly EVERY fucking time I start it (⸇ᴴᴱ HUИTΞƦ has joined Archi's SC Farm, Archi's SC Farm and Archi's SC Farm.). I don't have anything against your group, but I'm not okey with that.
Comment has been collapsed.
If you're not okay with that, <path-to-your-asf-folder>\config\ASF.json
> change "Statistics": true
to "Statistics": false
, and you're done.
If you're curious to know how do Statistics
work, you can check the privacy policy on the Wiki page.
Comment has been collapsed.
And I was sure that ASF stating on the first run "please refer to our privacy policy on the wiki if you're concerned about what ASF is in fact doing" was more than enough for everybody to read that section if they're "concerned about what ASF is in fact doing".
I think I'll instead put 20 randomized questions and force you through A/B/C/D test of what ASF is and what is its purpose, just to be sure nobody will complain that he's using a software with absolutely no idea what the hell it does :3.
What is ASF?
What ASF stands for?
What ASF is in fact doing?
How you can learn more about ASF?
What is Archi doing with his ASF Steam group?
How often new stable ASF is being released?
Which word defines main ASF developer in the best way?
Can you use ASF for free?
Should you donate to JustArchi for his work on ASF?
What ASF can't farm?
Which game ASF doesn't farm by default, and why?
What ASF's code was initially based on?
How you can contribute to make ASF better?
How first ASF logo looked like?
What it means that ASF is open source software?
Why ASF works on Linux?
Can ASF work on offline PC?
Why ASF can't idle games while you're playing?
What is the purpose of continuous integration used during ASF development?
Why this stupid quiz was written in the first place?
Comment has been collapsed.
1 A
2 A
3 D
4 D
5 D
6 D
7 B
8 D
9 D
10 no correct answer
11 B
12 C
13 A
14 C
15 D (poland, right?)
16 A
17 C
18 A
19 D
20 A
Comment has been collapsed.
I was just about to patreon you
But I didn't because of a opt-out feature thats clearly explained in the wiki
btw I don't see why I should join
And blaming it on the community.
You are free, to take the code from ASF and do your own branch giving nice support to everyone.
Comment has been collapsed.
greetings,
i would ask a question please: i used ASF for the first time yesterday cuz Idlemaster gave me to much problem lately. i configured via web UI, like ASF sitesaid, i didn't put my credential on web page so, when i launched ASF, it asked me to put steamID, password and Steamguard code... and ASF done his job very well...toda i launched it again, and , with my surprise, it asked me to put only my SteamID and NOT my password...this means my PW was stored somewhere?? i don't like to have my PW stored and i prefer to put in every time i launch ASF....any tip? thanks
Comment has been collapsed.
but in IM i must put session id e steam login value every time.(i didn't used the sing in web like method).so i think my password was stoered yeasterday in my Bot ...am i right?
but if there is a way to disable this i prefer put my login id every time.and not have store my password.thanks
Comment has been collapsed.
No, the password is not stored...
In the config folder is a BOTNAME.db. If you open it with a texteditor, you see a "_LoginKey" value. That value acts like a cookie.
There is nothing else in that file and if you delete it before starting ASF you have to enter password again.
Comment has been collapsed.
Like said above, ASF doesn't store your password anywhere, but only login key in BotName.db file. This login key can be used only once on next login in order to skip a need of full account credentials - it works exactly the same as "remember me" option but in Steam client, but not Steam web. Once login key is used, it has to be replaced by new one, so it's not possible to use it more than once.
Currently this behaviour is not configurable, since it doesn't result in any potential security breach, but if you'd like to skip even that misc covnience thing, then I don't see a problem making it possible to turn off in the next version, even though it doesn't allow potential attacker to discover your password, steamguard e-mail or anything.
Comment has been collapsed.
I made it configurable since V3.0.4.9+.
UseLoginKeys
-bool
type with default value oftrue
. This property defines if ASF should use login keys mechanism for this Steam account. Login keys mechanism works very similar to official Steam client's "remember me" option, which makes it possible for ASF to store and use temporary one-time use login key for next logon attempt, effectively skipping a need of providing password, Steam Guard or 2FA code as long as our login key is valid. Login key is stored inBotName.db
file and updated automatically. This is why you don't need to provide password/SteamGuard/2FA code after logging in successfully with ASF just once.
.
Login keys are used by default for your convenience, so you don't need to inputSteamPassword
, SteamGuard or 2FA code (when not using ASF 2FA) on each login. It's also superior alternative since login key can be used only for a single time and does not reveal your original password in any way. Exactly the same method is being used by your original Steam client, which saves your account name and login key for your next logon attempt, effectively being the same as usingSteamLogin
withUseLoginKeys
and emptySteamPassword
in ASF.
.
However, some people might be concerned even about this little detail, therefore this option is available here for you if you'd like to ensure that ASF won't store any kind of token that would allow resuming previous session after being closed, which will result in full authentication being mandatory on each login attempt. Disabling this option will work exactly the same as not checking "remember me" in official Steam client. Unless you know what you're doing, you should keep it with default value oftrue
.
Comment has been collapsed.
thank you all for the clarification, much apprechiated
i must admit that ASFperform much better than IM.i'm uysing it only for dropping cards for 1 account ..1 thing that is different ,and worse (but could be available.don't know) ao't playing steam games when ASF is idling...am i wrong?thanks
Comment has been collapsed.
ASF will auto detect if you’re library is in use (like you’re playing) therefore you don’t have to shut it down... also if ASF is idling a game and you want to play, steam tells you that you’re library is in use and you have the option to “kick” the other player. If you do so ASF will wait until you’re done and then continue as you’re finished playing
Comment has been collapsed.
Same problem here. Have had this problem for a couple of days. Just bothered with to see what reason and figured out that it was when I were running ASF. :)
Comment has been collapsed.
hi
im getting this message when checking the update (in french) what does mean ASF binary ?
ASF|CheckForUpdate() Impossible de procéder à la mise à jour car il n'y a aucune correspondance au binaire en cours d'exécution ! Veuillez vous assurer que votre binaire ASF est nommé de manière appropriée !
thanks
Comment has been collapsed.
It means that you're using ASF V2 and didn't read V3 migration.
Comment has been collapsed.
Hello, i tried to find this problem above but i dont see it, since couple of days ago (idk a week maybe?) if asf is opened, whenever i log in into any of the clients that connected to the running asf they logiin offline (it says 0 friends online - you are offline) so then i press online in the friends tab and i am online. I only use offline farmiing on 1 account while affected all the accounts.
Comment has been collapsed.
Hey, I've got a problem regarding the farming algorithm setting - it's always in the Complex mode, even though I get card drops without the 2-hour limit. I've tried with the "HoursUntilCardDrops": 0, and it didn't work. Or is there a parameter for Simple mode that I can't find in the faqs?
(Yes, I don't like the massive card drop right after I switch to manual mode)
Comment has been collapsed.
2017-12-03 20:14:00|INFO|archi|StartFarming() We have a total of 6 games (19 cards) left to idle (~9 hours, 30 minutes remaining)...
2017-12-03 20:14:00|INFO|archi|Farm() Chosen idling algorithm: Simple
Then you're doing something wrong because it works perfectly fine for my own use case. I suggest to verify that you're using latest ASF version, and you have proper line in your config for it.
"HoursUntilCardDrops": 0
Comment has been collapsed.
I created json files for my two alt accounts today, but somehow ASF ignores them and just farms my main account. I checked the json files and couldn't find anything wrong (they have account name and password and are set to "enabled"). I also put them in the same directory the json file as the main one. I searched through wiki but couldn't find anything about it. As I understand it, it just tells me to create bot files for the additional accounts.
So, am I missing something obvious? Did I get wrong what I have to do? Anyone also having this problem?
Comment has been collapsed.
Maybe your files actually have .txt extension and you have "hide common file extensions by default" enabled. You can always navigate to the directory with cmd
and execute dir
if you're unsure.
ASF reads all .json files in config directory, apart from those that start with a dot (.
). Even if those bots would be disabled or have invalid JSON structure, you'd get info about them being initialized in ASF output.
Comment has been collapsed.
i dont really know what to do. If i click the link on the wiki where this is written: Install .NET Core prerequisites.
It shows this: https://github.com/dotnet/core/blob/master/Documentation/prereqs.md
If i press Windows Prerequisites, this site comes up. https://docs.microsoft.com/en-us/dotnet/core/windows-prerequisites?tabs=netcore2x
I dont know what to do. can you help me with this steps?
Comment has been collapsed.
I tried to install the above link but it says i already have it.
then i proceeded to put the bot.json in the config and start archissteamfarm but it says that i didnt configure a bot. but i did.
EDIT: ok, i just copied the example and named it bot.json. now it starts up.
it works. thanks.
Comment has been collapsed.
I've just updated from 3.0.1.9 to 3.0.4.9 and I'm getting this error regularly:
2017-12-08 21:46:11|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:46:12|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:46:13|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:46:14|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:46:14|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:46:33|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:50:49|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 21:56:33|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 22:01:33|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
2017-12-08 22:06:33|ArchiSteamFarm-26038|WARN|ASF|OnNotifications() Received unknown value for Key, please report this: 3
Not sure why this happens but since it asks me to report it, that's what I'm doing :P
Comment has been collapsed.
Hi everyone!
I noticed the change on GET commands formats and I'm getting used to it now. But yet I'm a little troubled by it.
And then I saw there is a new UI working - saw on github that MrBurrBurr made one, but didn't share the link, so who can use it? As ASFUI isn't working (for me, at least) anymore, and the commands I remembered aren't working the same way as was stored on my browse history (have to addapt to /Api/Command/ ) , I'm interested in any news about any beta release of any GUI being made!
Thanks!
PS: opted to write here as it's less formal than github posts should be
Comment has been collapsed.
I'm interested in any news about any beta release of any GUI being made!
When ready :3. I'm not working on it myself and I'm only helping making it happen, but because IPC is HTTP-based now, once the GUI is ready we can support it officially and avoid ASFui problems of general incompatibility.
P.S. There is nothing hard in using IPC, it's even easier now. Previously you had to do http://127.0.0.1/IPC?command=version
, now it's just http://127.0.0.1/Api/Command/version
.
Comment has been collapsed.
Thanks for the answer, Archi!
Yes, I know you're not the one on the work of the GUI, I just saw MrBurrBurr printscreen and thought it was on a "public" state, and you or someone else could point me out where to find it (or any other GUIs).
And yes, after a little trouble I figured out the changes! :D Just need to change the ones I use from my browser history, and really it's not that hard work.
ASFui isn't getting any support lately, so it didn't addapt for the changes, so the "multi-bot commands" that I used on ASFui isn't working anymore, and I'm doing it for each bot individually via URL.
As GET mode won't be removed for a POST version before a GUI be ready, I'm OK and waiting! :) Merry Xmas!
Comment has been collapsed.
Archi, I have a little problem with multi-bots commands.
If I do something like:
http://127.0.0.1:1242/Api/Command/owns 1Bot 2Bot 3Bot 4Bot 5Bot Chompy
(putting %20 instead of spaces, but put this way just for clarification)
I'll have an answer like:
{"Message":"OK","Result":"\r\n<1Bot> Not owned yet: 2Bot 3Bot 4Bot 5Bot Chompy\r\nThere are 0/1 bots that already own all of the games being checked.","Success":true}
so the other bots are interpreted as the name of the games I'm searching for! Is there any separator I should use?
Thanks again!
Comment has been collapsed.
Archi, quick question: I'm currently planning on playing some "pile of shame" games from my bib. Is this tool able to list all of the games I'm able to get card drops on? Even if it's only 1 remaining drop for example? The Steam badges tab doesn't show all games and I'm not into downloading every game to check if there were drops left. Ty in advance!
Comment has been collapsed.
Yes, you could do it by waiting till ASF's CardsFarmer is initialized, then get its status with IPC's /Api/Bot/<YourBotName>
and parse CardsFarmer->GamesToFarm
. It will not only list you game names, but also appIDs, hours played and cards remaining on per-game basis.
Whether that is easy to do is entirely different question :3. It is easy if somebody is familiar with ASF's IPC, otherwise you can easily learn how it works from ASF wiki.
Basically:
SteamOwnerID
to proper non-zero value (Wiki -> Configuration)--server
mode (Wiki -> Command-line arguments)http://127.0.0.1:1242/Api/Bot/BotName
in your browser, replacing BotName
with name of your bot (Wiki -> IPC)Then simply copy-paste entire ASF's messy output, put in some formatter like this one and it'll result in nice formatted structure that your human eyes can clearly read :3.
(Only you can answer whether all of the above is worth the effort for your end result, but I can guarantee you that it's much easier than it looks like)
Comment has been collapsed.
KlappPc where? For example: Tropico 5 doesn't show up on my badges list, I know it has cards though. I don't have different pages to look through. If I would download Tropico 5 again and start it - it would show up in the badges page (tried with some smaller sized games yesterday).
Comment has been collapsed.
The page shows ALL games you either:
have card drops remaining, have cards in your inventory or have played the game recently.
ASF does nothing more than parsing the different pages of the badge page.
PS: Of course steam might mess up sometimes, but not regularly. You can directly check your drops if you open the single badge page (where you would craft stuff).
Comment has been collapsed.
You can check that here:
http://steamcommunity.com/my/gamecards/245620/
(for easy checking go to http://www.steamcardexchange.net/index.php?inventorygame-appid-245620, choose the game you want to check in the dropdown and click on "steam profile" on the right).
Comment has been collapsed.
Oh, I just remembered... The best way to check if you have already farmed all cards from a game is to check Badges - Booster pack eligibility. If the game is listed there that means you have already received all cards ;)
Comment has been collapsed.
I did not know that :)
Do you mean for F2P games or are there really DLC that have their own set of cards seperate from the set of the base game ?
Comment has been collapsed.
So, I wanted to update from version 2.something to the current one, because I noticed a while ago the auto-updater didn't auto-update anymore. But of course it doesn't work. I copied the configuration. I open a chat to my second account. I try to redeem a key with !redeem command - and nothing. Seems I have to find what part of the configuration is not backwards compatible this time. ^^
Any hint maybe where I might find the problem?
Comment has been collapsed.
alright, thanks. i guess i have to do that at some point. for now i went back to v2, just so it works. don't have the time here at work today. ^^
Comment has been collapsed.
Well, just copy the "new config" from the wiki, take your old.
Transfer all values that are still there, then read up on the few that are new. It's not that it has completly changed, so it shouldn't take that long (but you should work at work, shouldn't you?^^)
Comment has been collapsed.
Still saying: bring back the sane way of activating bunch of keys purely by dropping them in chat. Doesn't make anything any better if being forced to write "!r bot1 " before the keylist every time.
Haven't talked with anyone who actually uses ASF yet that wants the extra hassle of figuring out and writing random commands, but many are annoyed when the only sane way stopped working with update.
Comment has been collapsed.
I'd even be willing to pay for a version that just does its job with no useless hassle, removing all !redeem commands and internationalization would be a nice start for that. But since custom versions aren't supported any more, it would require someone else to comment out some code before compiling I guess. :)
Comment has been collapsed.
I already said that bot should answer only to messages being commands and nothing else - there is no place for discussion here. If it annoys you that much then you're free to write your own wrapper for !r bot
and use IPC. Or you can also create your own ASF fork, since it's open-source after all.
Comment has been collapsed.
Yes that is your principle of coding or whatever philosophical reason for it. It still has nothing at all to do with the lazy end-user.
And I'm also free to try to get others to do that, aren't I?
Edit: Not a matter of annoyance purely, but waste of time and work. Paying someone to automate a process that you're always doing the same way makes sense to me, since time = money etc.
Comment has been collapsed.
And I'm also free to try to get others to do that, aren't I?
Of course, but in this case you should use another thread for that with an actual offer. Repeating the same already answered question/suggestion in this thread will lead to nothing but people repeating themselves, and I'm very bad when it comes to repeating myself.
Comment has been collapsed.
Dunno where I would find more people interested in ASF code than here, but that point I get.
Yes people get annoyed and bad when they have to repeat the same thing over and over for no reason, the point I was trying to make.
But since you didn't use any !, I couldn't parse what you said. :P
Comment has been collapsed.
No, I don't consider writing 5 extra characters per batch of 50 keys as troublesome, considering how much ASF automates the rest. You can always redeem keys manually if it's that big hassle for you :3.
Or, like I said, write 10 lines in python that will be nothing but IPC wrapper for !r
. Even better and you don't need to keep your own ASF fork up-to-date.
Or accept the fact that the only way to make software fit your vision perfectly is to create your own one - this is what I did with ASF.
Regardless what you chose, command-less method of activating keys won't come back. I won't make a step back and once again make it inconsistent only because people are too lazy to write extra 5 characters per 50 keys. Even if it was 10 characters per a single key then I'd probably keep it anyway. That's my decision for my own program and I don't consider changing it without an argument that would be good enough to consider - so far there was nothing else but "I'm lazy". I'm lazy too, but that's not a reason why every Windows should launch Visual Studio, Steam, Discord and Chromium by default on each boot.
"But there is a way to do that!" - of course there is, there is also a way in ASF to do that - by using IPC.
Comment has been collapsed.
Yes it's not much work per 1 batch. Try 100 batches of 50, 100 batches of 20 and 100 batches of 10 in a row and you're starting to get there.
So the tool that's supposed to make things automated and easier requires you to learn coding to remove things that make it less automated and more work to use? I still find this funny.
Older versions of ASF did fit my vision quite perfectly, if anything I would switch to one of those. Actually I guess I could run 2 versions, one for redeeming keys and other for farming them etc. Since all this is still less work than 100(0)s of times 10 characters.
So instead of doubleclicking on Visual Studio icon, you would need to start PowerShell and write " !start thispc visualstudio". Maybe even require a voice command to be absolutely sure the user actually wanted to start it and not just clicking for fun. Then learn Klingon or Esperanto to issue voice commands that allow doubleclicking again.
Dunno about this rebooting stuff either, I just keep my PC and most programs on 24/7 so I have fast access to everything I want.
You have already declined both my reasons for it, less waste of time for no reason and money, so it's just something we have to disagree about.
Comment has been collapsed.
Did you delete V2 yet ? It will probably sound silly but I kept V2 (additionally) for the very same reason until I find the time to familiarize myself with the new redemptions modes and everything that changed about key redemption.
Comment has been collapsed.
I should have probably finished reading your conversation first since you mentioned the same solution in your last comment :D
Comment has been collapsed.
That the nice thing about IPC.
You can just take one of the 500 IRC bots, in like node.js add a few lines of code to forward stuff to IPC and you're done.
Example: https://davidwalsh.name/nodejs-irc
Perhaps 2 hours (without testing, if all goes well) up to maybe 15 if you have a little hassle.
And btw. it's currently using http, which is literally THE most used protocol out there (at least stuff people notice).
Comment has been collapsed.
Want to bet about the 2-15 hours? :P
It can use any remote protocol it wants, I just don't feel a need for any on a local PC other than Steam chat and I always have Steam open when working with Steam things. Without coding some random solution and a GUI for it to be usable.
I know what HTTP is, I have even used Gopher to read about it. But I simply don't care what remote Internet protocol gets used inside the same PC when it's not going anywhere. And those IPC commands looked like 20-30 extra characters for the same thing.
Also have a dislike for WebUI vs GUI. :)
Comment has been collapsed.
Just for you. Assuming your comment right now you might not like it, but easier it doesnt get.
Put one file for each Bot (.html) , replace BOTNAME in line 8, and create a bootmark. Then you just open that page instead of the steamchatwindow (browser is usually always open as well), paste your keys and klick send.
It's even easier than steamchat, since if you want to redeem stuff to multiple bots, you can open all pages simultaniously.
That was like 5 Minutes of work.
<body>
<form id="myForm" action="http://127.0.0.1:1243/Api/Command/redeem">
<button onclick='sendCommand();'>Send</button> <br />
</form>
<textarea id="keys" cols="150" rows="10"></textarea>
<script>
function sendCommand(){
document.getElementById("myForm").action="http://127.0.0.1:1242/Api/Command/redeem"+encodeURI(" BOTNAME " + document.getElementById('keys').value.split('\n').join(","));
document.getElementById("myForm").submit();
}
</script>
</body>
Want to bet about the 2-15 hours? :P
Actually, yes. We can talk about that in february. There are well functioning libraries and you literally just have to do minimal adjustments.
Comment has been collapsed.
Why would I want one of those per bot or open all of them at once? That still sounds like extra work. I only ever want to paste a list of keys to the same bot. Also opening these pages all the time in browsers that already have 100s of tabs is much more work than selecting already open Steam chat.
Don't even use bookmarks, I know where I want to go and autocomplete is for that.
Comment has been collapsed.
Well if you only redeem keys to one bot, then you obviously need only one file. Thought you redeem to different bots all the time.
And I have to say, going on my friendslist, searching for the bot, open a new chat is way more work for me, than just strg+clicking a bootmark (or strg+t and entering the start of the url if you want).
But here it is. A very simple solution that frees you from typing "!r BOTNAME" everytime.
Over everything else, we can talk next year, when I have time ;->
If you only use autocompletion, how do you find the pages, you do not want to have in your history? If you know what I mean ;->
Comment has been collapsed.
I redeem all keys to 1 bot that forwards and distributes them to rest, just like I always have. Only sane way to handle batches of keys.
I open the group they are in by default so I can much easier check the situation with 1 glance. And from there I can click on any bot I want to give it commands, but it's still the same one. This also only happens about once a month, or whenever 10 gets me convinced I should reboot for updates, rest of the time it's already right there.
Actually. I'm using 3+ Chrome user profiles to keep stuff out from histories. Not because of why silly people do it tho.
Mine are on a dedicated file server mounted to X: and I don't even use any of those stamp sized flash sites
Edit: your simple solution requires me to read about and set up IPC or whatever :)
Firefox can’t establish a connection to the server at 127.0.0.1:1242..
So from just paste of keys through adding couple extra chars we're now at configuring web services that don't really serve much use.
Comment has been collapsed.
No need to reply, just realized that you spent 5 minutes to reinvent https://store.steampowered.com/account/registerkey
Comment has been collapsed.
I am never wrong when I'm having silly personal fun. I know how ^ is similar to having .htmls for all bots and how it's not to having just one .html to rule them all. :)
I just find fun in the absurdity of Steam making their service better and ASF worse, when it's been the other way around for ages and ASF has helped us combat Gaben's latest madness.
Comment has been collapsed.
I know how ^ is similar to having .htmls for all bots
No, since you can have all files open simultainiously in the same browser without the need to relogin every time or having multiple browserprofiles.
ow it's not to having just one .html to rule them all.
Thats literally one line of code more, but I assumed you are to lazy to type the Botname everytime. You could do it by dropdownlist or checkboxes or seperate submitbuttons as well, but for that you hat to modify more lines.
I just find fun in the absurdity of Steam making their service better and ASF worse
Oh and one last question. How are you redemming more than one key at once with the steampage? You Don't (Oh and have I mentioned that you do not need to be logged into steam for my version?)
What I build was perfectly specialized for YOUR description of just pasting 50 keys and redeeming them without the need of typing any additional characters. So do not blame me, if that produced overhead like having one file for each bot.
Comment has been collapsed.
Yeah not opening dozens of tabs to add to the 100s already in browsers just for that.
You seem to be missing how ASF forward+distribute works because you're even suggesting opening a tab per bot. Which your solution should already do, right? Paste keys to first bot, it spreads them to the rest. Without any extra lines of code, maybe changing the redeem command if anything.
By pressing the button that's clearly labeled: ACTIVATE MULTIPLE PRODUCTS, that opens a window where you can paste tons of keys, being exactly same as your solution of having .html per bot and using that to only activate games on that bot. If anything I would write a wrapper for that with stored cookies per account and simple script that breaks 100x game A, 100x game B, etc lists into 1 of each and then redeems via that page. Still not something that makes any sense or is better in any way, but let's add that to the list of useless stuff I could waste time on. :)
Comment has been collapsed.
Yeah not opening dozens of tabs to add to the 100s already in browsers just for that.
Have you read the comment above?
YOU mentioned batches of 50 key, which only makes sense if you send 50 keys to ONE bot WITHOUT distributing. Otherwise you are not limited to 50.
Thats why I did, what I did.
If you are not able to specify what exactly you want, you get what I think you want.
One of the major advantages of GUI vs. steamchat is, that the chatlength is limited. Even in my shitty "GUI" you could paste 10000 keys at once and have them distributed (assuming as many bots) Ok, you're limited to about 200 here, since URL length but if really needed that could be changed.
To be honest, I get more and more the impression, that you literally want to missunderstand everything I write. YOu think we don't want to help you, but lecture you and therefore you are pretty biased...
By pressing the button that's clearly labeled: ACTIVATE MULTIPLE PRODUCTS,
That button does not exist. Are you sure you are not using any userscript or browserextension that adds that button and sends multiple requests to steam afterwards?
being exactly same as your solution of having .html per bot and using that to only activate games on that bot.
As mentioned before. If you use distributing you only need one file. Even if you don't you can use one file and select the bot you want to send to... Thats literally in the comment you replied to.
If anything I would write a wrapper for that with stored cookies per account and simple script that breaks 100x game A, 100x game B, etc lists into 1 of each and then redeems via that page.
Jeha right, thats totally better....
So to wrap it up:
I take your usecase is sending a lot of keys to always the same bot having him distribute stuff?
Then just take the thing I made, have ONE SINGLE file you can open whenever you like and be able to just copy and paste your keys again without writing the extra letters. You can even paste more keys than in steamchat
Or you know... you could think for yourself and come up with a solution fitting your needs (which I still don't know what these are) like using a keyboard makro to insert the "!r botname" or anything else, but the only thing you do is complaining about every solution we give you.
You make contradictionary statements and you do not read comments written to you...
Comment has been collapsed.
The number is just the amount of keys I have for that game or number of bots, not any kind of chat limit. Like if I bought 10 or 50 Go Go bundles or 500 copies for 2 cents from DIG etc. So I have totally random amounts per game in the list and I want to redeem them game at a time and check what the results are to see if keys were bad or Steam crapped out or whatever.
What happens if I paste let's say 100 games with 100 keys each so 10k keys to 50 bots? Other than every account getting banned.
You were right, it's Enhanced Steam that added the button there. My mistake for thinking Steam made stuff better just because they added the whole web redeeming thing people have been asking for 10y+ :)
Like I've mentioned, I have only ever used distribute and forward flags together ever since they were introduced to ASF. So talking about any other mode is meaningless to me since just like you and Archi already said, that's how you handle massive amounts of the same game at a time.
Never claimed it was better, just a lame joke really, so not planning to do that either :)
TL;DR: I always want to redeem 1-xyz keys of the same game and distribute+forward them to all bots and see the results somewhere. Where does your script output them?
I know I can map macros to any key I want, I even did that for something ASF related with F1 and F2 because Steam chat doesn't have a message buffer you could just press up key to get same command (which was also ages ago so no memory of what it was). Or I can do any number of other silly solutions that still aren't the best one.
Comment has been collapsed.
Where does your script output them?
On the page you land after clicking submit? You see the ASF response there...
What happens if I paste let's say 100 games with 100 keys each so 10k keys to 50 bots?
Well you have a limit of 50keys per hour, as you should know. So if you only have 50 bots, you can submit at most 2.5k keys for 50games. If you have 200 bots, you can submit your 10k keys without a ban.
Or I can do any number of other silly solutions that still aren't the best one.
So wait. Your main critic is, that you need to move your hands to the keyboard and type the same stuff again and again and now you have a solution you are able to do easily, that reduces that to one key (or even mousekey) but that is silly?
Ok.
PS: Added a little to my last comment dunno if you read that.
Comment has been collapsed.
Nice, didn't try it out yet by setting up IPC but probably will.
I still don't see why I would want to paste even 2.5k keys at once because for 50 bots there might be 10-500 keys for one game and the amounts would have to be figured out first. Then the results would be a huge mess to go through as well.
No my main critic is that someone is sitting on a script that does everything I could ever ask for and I'm left with worse solutions. You think I'll be able to redeem any games before February now? :P
Comment has been collapsed.
Jeha well. I can give you the current version of the script, which is a java file... So you would need to have eclipse installed or run it from console.
But it's not working with the current ASF version (thing it was even WCF) and it's optimized for gameids.
So it still requieres large portions of edits ^^ Especially validating the owns from gamename.
Well the idea is, that you post all your keys once, and click send, and the script does the rest for you (i.e. splitting it up the keys, redeeming them, parsing the feedback, etc.)
So you basically can paste 10000000 keys, and the script tells you "These were duped, these worked, and I could not try these because account reached its limit, so try them again in an hour". (obviously thats not, what the minimal thing above does ^^)
You think I'll be able to redeem any games before February now? :P
Well with a mouse makro it should get even easier than before (if you integrate crtl-v) So yes ;->
Comment has been collapsed.
Now if the script used an SQL db to keep track of how many of which game is still missing from bots and the extra keys and and and .. we would probably get Archibot from ASF.
Yes now I can at least continue to happily redeem keys with just 1 hand. :)
Comment has been collapsed.
Not for redeeming purposes and checking every time is much more load than just knowing it already isn't it. More like having a list of games available that can be quickly compared to what is already owned and such. And having a database with gameid as key would allow adding much more information there as well later.
Like if I have a massive list of extra crap keys that I'd like to start trading for any other crap key that I still don't have enough of. I could just paste the list from another trader and get results of how many of each. Bit like http://compare2steam.com/ but on bigger scale.
Edit: or a browser plugin that shows the number next to every Store link, just like I now know if my main account has it or not.
Comment has been collapsed.
!owns does not produces load to steam. ASF has that list. You can even get it by "!owns *" in the beginning.
Oh, and (uploaded that for someone else a while back):
https://github.com/KlappPc/MiscUserscripts/tree/master/CheckAccountsForGames
Provide a list with steamid64 of your bots, a list with appid,name and you get an output how many of these keys are needed for which account.
Haven't used in in a few month, but should still work.
Does not cache any games either. It just grabs a list from steam at startup. Thats not a heavy request.
Edit: Works without ASF and outputs html.
Comment has been collapsed.
Yes, because 90% of what I am doing are little helperscripts for a task I think is to bothersome to do it manually.
Its able to add info if a games was removed and if a game has cards.
But again. That thing is 250 lines. Again half whitespace or comments.
More complicated stuff is more complicated. ;->
Comment has been collapsed.
"!r bot1 " = 8 characters already! Just !r without bot doesn't do list of keys does it?
I guess one way to make it much less work would be to bind that useless command to F1 or some other useless key..That way only 1 keypress gets repeated for 1000s of times.
Comment has been collapsed.
I have botnames that make sense obviously. But it hardly matters if it's 5, 8 or 12 when it's repetitive task you have to do over and over for no visible benefit. Same thing repeated for 1000s of times and you will stop thinking it's any kind of good idea to do it like that.
Comment has been collapsed.
What changed BTW? It wasn't anything bad for years and everyone liked it, then suddenly it became the worst thing ever and needs to be removed. A key pasted to a Steam key redeeming and farming bot is a command if anything is, much more so than 666 tradebot blacklist commands and whatnot which are clearly in scope of farming cards.
And yes yes, will pay someone to comment out and change some code whenever someone is willing, not trying to argue with you but just curious about the philosophy behind it. I know many IRC bots that respond to whatever word/etc triggers, not just the ones starting with a command char.
Comment has been collapsed.
If you care about actual explanation, then it's rather simple.
Command-less method of redeeming keys was introduced somewhere in ASF V0 when command system didn't even exist yet. It was supposed to do one simple thing - accept any message, then try to redeem it as a key.
After command system was introduced (also by the end of V0), that functionality now existed in command system that had !redeem
command responsible for it. Command-less method was deemed obsolete at first (back in V0), and all traces of it removed before release of V1.
Then I forgot to remove it for two good major versions, accidentally finding out its traces when rewriting code. Since that method wasn't mentioned on the wiki at any point of given time, and obsolete since ever, it was a candidate for immediate removal. The only actually valid argument that happened after removal was the fact that !redeem
at that point didn't accept list of keys separated by a newline that old command-less method did, which was added to !redeem
in the next version. Right now the functionality is the same, and any actual logical complaints were solved for good.
The amount of reasons why command-less method was wrong is overwhelming. We can start with consistency and the fact that ASF is not supposed to respond to anything that is not a command. This is mentioned in several wiki places, as the only communication that was ever stated to be available is commands communication through either steam chat or IPC. Command-less communication doesn't fit here at all. Second reason is being unable to specify which bot is the target of a command, which is yet another limitation that is solved with !redeem
. On top of all of that, ASF needed to have actual validator forced and triggered on each message, if perhaps the message being sent is a key from master (to redeem), or totally irrelevant message that is not a command sent from somebody else (such as your friend). There should be no such thing in the first place, it's dirty and awful. Either something is a command from the start, and ASF should try to parse it, or it's not a command and no CPU cycles should be wasted on anything that goes with it.
I could now go on and list another pile of logical reasons why that thing was wrong in the first place and should be removed before you even had a chance to use ASF for the first time, but there is no need to do any of that. If you can't accept the logical fact that removal of that method gave ASF more actual advantages in terms of the code, consistency and program's quality, then I can end the argument with "I didn't like it and that's it", which I don't like to use because it doesn't explain anything and feels irrational, but sometimes people can't understand the logic behind given change and it's easier to end the discussion with nonsense rather than go on and waste time explaining things over and over again. Like I said initially, this thing is not coming back in my program, whether you like it or not. There are superior alternative ways to do what you want to do, and actually even better than before - if you decide to not use them only because you don't want to, then that's your choice.
I also consider this discussion finished at this point since it's not going anywhere. The reasoning was explained at least 2 good times in this thread alone, and there is nothing left to add. Don't expect a response from me regarding this anymore.
Comment has been collapsed.
Like I have said, things look totally different to lazy end-users who have gotten used to too good things that suddenly get taken away from them than to the people who actually have to do something. You keep trying to tell kids that they need to write their Brussels sprouts before getting the tasty dessert of redeemed keys.
Adding layers and layers on top of each other and opening all sorts of ports for random services has never been how I see anything good working, more like a huge security hole. No need to explain it's not one and only local, just like commandless redeeming looks like a mess to you, that looks like a much bigger mess to me.
I guess I'll switch back to some old working version until February (hopefully) so I can finally start going through the thousands of keys I haven't bothered to redeem yet because it's too much work.
Wouldn't even have started this again if I didn't get friends farming cards for holiday again and noticing how ASF doesn't work any more for redeeming and then asking me. So blame them and yourself for making ASF too good so people expect only the best (for them obviously) and have happy holidays :)
Comment has been collapsed.
Adding layers and layers on top of each other and opening all sorts of ports for random services
You are aware that that has not been done as a replacement for commandless redeemtion?
It was always there starting with WCF and now IPC to just communicate from other programs with ASF.
It's just ONE of many ways how you can send commands. And as long as you do not start ASF as a server it isn't even active... so no security risk there.
Comment has been collapsed.
Why wouldn't I be aware of that?
How exactly are you suggesting I use IPC without configuring it active first?
I don't want 666 useless ways to enter commands that I don't even use or want, I want 1 best way to redeem bunch of keys 100 times in a row without extra hassle. Just like many people who actually farm cards, not want some interactive trade/chatbot.
Comment has been collapsed.
How exactly are you suggesting I use IPC without configuring it active first?
If you think it's shit, just do not use it.
You could also write like a 2 line userscript for browser steamchat to add the !r bot automatically or do whatever the fuck you want.
I want 1 best way to redeem bunch of keys 100
The best way for that is LITERALLY a little script and IPC. Then you just klick once (assuming you have your keys stored somewhere already) and they all get redeemend automatically.
So you are literally complaining that the very inefficient method you used got a little more inefficient, but the best way is to much hassle for you?
Sorry, if you don't want to be helped, I won't try anymore.
Comment has been collapsed.
Yes, I haven't ever used it and it still doesn't sound like a better solution of any kind to me.
I could write 2 lines of userscript after I learned how that works or cared about it, yes. Just like all the "help" here has been, "learn to code to make a simple thing that got complicated to be simple again". If I wanted to do that I would've done it a long time ago already. Still much rather pay someone a bit to do that for me.
You say the best way is to open 100 extra browser tabs for no reason all the time, I say the best way is to use the Steam chat that is already there without adding or coding anything at all. When opinions are that different, it's probably quite hard to find a common way to see things.
Comment has been collapsed.
You say the best way is to open 100 extra browser tabs for no reason all the time
No. You are not able to read, what I write. You obviously do not understand, what I did or what for.
I am sorry that I confused you even more.
already there without adding or coding anything at all
You say you paste a lot of codes in chat ("Try 100 batches of 50, 100 batches of 20 and 100 batches of 10") Thats at least 300 times strg+c, strg+v. Not including mouseclicks and stuff. While a script once done requires 1 (one) click.
That is damm fucking inefficient. Complaining about the few additional characters is like:
I walked the 20miles to my work everyday and now they build a trafficlight thats costs me a bit more. What? You tell me I can ride a bike, but I first have to learn how? Nah, thats to much hassle.
You do not need to learn enterprise level of coding, you have no fixed language you need to take. Depending on where you have stored the keys it takes you a few hours even with no prior knowledge. It's literally
For literally ANY language google and stackoverflow give you codesnippets to put it together. Thats not learning programming, thats copieing 10-30 lines of code together and hit it until it works.
And didn't you mentioned you have at least some experience (not going to read through all your comments) in something?
If you have the keys in an xls file you even could use a 3-WORD inline formular to generate the links and just click them manually.
When opinions are that different, it's probably quite hard to find a common way to see things.
The thing is you are aggressivly (at least passiv aggresivly) complaining that the totally inefficient way you used before got a little more inefficient (by removing something for good reasons you just can't/want to accept), but you are totally ignorant to everyone telling you how you can save a lot of time (at least according to the amount of keys you redeem based on your own comments) because everytime you hear the word "script" or IPC you seem to think about complicated stuff where you have to read tutorials and learn a full language for 2 weeks straight.
a simple thing that got complicated to be simple again
Your approach was always inefficient, and the "complicated" thats the wrong word, since it's no harder by writing a fixed text before. So both are simple version is only little more inefficient. At most twice as inefficient (if you save the text somewhere and copy paste it each time). Depending on your typingspeed it may even be below 1/10.
Comment has been collapsed.
I am fully able to read, no need to worry about it. Just don't take my exaggerating stuff to show my points so seriously. Like I already explained just 1 .html would work the way I want, not opening all of them. :)
Yes I know doing it manually in any way is inefficient, no arguments there. But that I can do with just mouse, or then left hand is on keyboard for Ctrl(took some time to figure out what strg is :) and c/v. In both cases moving hands to write "!r 1 " would make a delay for it.
I prefer bus or taxi anyways, so in this case the bus (ASF) that took me right from home to work now suddenly requires me to swipe my bus card couple times a minute instead of just when entering. Then someone suggests buying my own car to solve the problem or says it's still easier than walking.
I have experience coding in MSX Basic, C64 ASM and Q(uick)Basic later, which one do you suggest for this purpose? :)
The keys are already as .csv or .ods, "Gamename | key" per line, so yes it would be trivial for a script to handle and redeem those. But my own hit&miss coding isn't what I want when it can ban my Steam accounts right before holiday so I'll still rather pay someone a bit to put up those 30 lines of code. In addition it would be nice to check if accounts own the game before trying to redeem to prevent timeouts, but matching names to ids would probably be bigger hassle and require manual supervision.
I'm complaining that I'm actively and aggressively lazy and inefficient and haven't learned any coding in couple years even if I've wanted stuff like that to help with Steam and other sites. It's obviously the best suggestion to do so, but not one that's likely to bear fruit.
Comment has been collapsed.
Basic should work fine. Not sure about openoffice, but with excel you could do that directly from the open file via makro.
I btw. literally build a script that does exactly what you want.
It reads a csv file, checks with owns which bots have the game and redeems as many keys as you have to the bots missing it.
It's just not updated. But as I said, we can talk about that in february.
gamenames would be fine, as long as it is the full name (and basically what ASF returns when asking with owns).
PS: You don't get banned (at least if you not like totally screw up and ddos steam), you just get blocked from redeeming keys for an hour after 10 failed (duplicated/owned/invalid) attempts.
In both cases moving hands to write "!r 1 "
You have no extra mousbutton you can add a makro to? If you have a logitech (e.g., might work with many others) mouse you can just make the middle mousbutton write that for you.
Just don't take my exaggerating stuff to show my points so seriously
We are on the internet, about 3/4 of communication (pronounciation, body language, etc) is missing. Especially when I have no clue about your actual usecase and if your point is invalid (100 files is an exegeration of multiple, which I wrote are not nessessary) it's hard to figure out what your actual point is.
Oh, and as I said, just copying code from stackoverflow after googling the 4 tasks I mentioned above is enough in any language. I bet you yould have already finished a script, in the time you used for all the comments.
Comment has been collapsed.
Only using LibreOffice because it's the only one without ribbon. This should give you some notion of how far I will go to avoid things I dislike. :)
I know, also happens with 50 successful redeems, but to me anything that prevents me from using Steam the way I want is a ban, they can call it whatever they want :)
I have one of those: https://www.logitechg.com/en-roeu/product/g402-hyperion-fury-fps-gaming-mouse
Middle button can't be used for stuff like that since it's used for so many others things like opening new tabs etc, but looks like there are 3 useless buttons in addition to back/forward on the side I could program for that. Good suggestion, I've completely ignored the possibility since I don't play any games where I need to remap keys and this is my first one with more than 3 buttons. :)
I was just poking fun of your comment that I can open all bot .htmls at once in a browser, which made me shiver because my Chrome is already using 5-6GB while doing almost nothing. So they would add a horrible amount of tabs I totally don't want. And I thought I already explained that I fully understand I can do it with just 1.
Comment has been collapsed.
Using libre myself latly, but use the term openoffice still for any alternative to MS. Old habits die hard.
That mous should even have a Game dependend key mapping, i.e. you can map the middle key to the "normal" middle key, but to something else in games. But I'm not sure if you somehow can make him accept the steamchat as a game ^^.
But if you have spare buttons, that should work fine. You can even try to integrate crtl+v into the makro than you even save klicks.
Comment has been collapsed.
Ribbon is the only reason I know they are a different thing.
DPI shift, DPI up and DPI down will now get removed from working no matter if I use one for this or not. They seem to be the culprit why my mouse is slow sometimes. Now I have an ASF key that I cab randomly hit and paste redeems everywhere :)
Comment has been collapsed.
Nah, I dont think that !r Bot1 will happen, you dont hit your !r Bot1 mouse buttons that often by accident.
Jeha DPI settings are the first stuff I remove everytime. I have one mousespeed I like to work with and for games I adjust the sensitivity ingame.
Comment has been collapsed.
I just set it to fastest possible and forget. But I've accidentally pressed some of the DPI keys at least 2-3 times, thought it's some driver/windows glitch and went back to settings to put it back. Now I know what the keys even do. I don't play any FPS or whatever games that would require tweaking mouse speed or buttons. Altho I found out that it has a ready profile for Civilization 6, now I want to try that out to see what it does.
Comment has been collapsed.
Not sure if that's what you need, but:
keys=(`cat -`) ; arraylength=${#keys[@]} ; list_keys="${keys[0]}" ; for (( i=1; i<${arraylength}; i++ )); do list_keys="$list_keys,${keys[$i]}" ; done ; curl "http://127.0.0.1:1242/Api/Command/r^%20Bot1%20FF,FD%20${list_keys}"
Enter all the keys you want (one per line), press Ctrl-D and wait for the miracle to happen.
You can wrap that in a shell script, or just do an
alias lazy='keys=(`cat -`) ; arraylength=${#keys[@]} ; list_keys="${keys[0]}" ; for (( i=1; i<${arraylength}; i++ )); do list_keys="$list_keys,${keys[$i]}" ; done ; curl "http://127.0.0.1:1242/Api/Command/r^%20Bot1%20FF,FD%20${list_keys}"'
And invoke it by typing "lazy" whenever you want. No need to remember that long command anymore!
If you're using Windows... Well, I pity you (you can Google for some info on Cygwin, though).
PS: You might need to tweak the FF,FD options of the redeem^ command since I always have problems to remember how they work when combined/not combined :P
PS2: I've never used the "drop key directly into chat" feature myself. Well, I did once accidentally and I ended up redeeming a key that was intended for a trade instead of giving it to the right person, so I really like the "a bot should answer only to commands" logic.
Comment has been collapsed.
You're on a site dedicated to gifting games and you pity people on the best desktop/gaming OS there is? Did you win many TuxRacers yet? :P
I do have couple Linux servers but only running ASF on Win, could always SSH tunnel the port anywhere if needed.
Doesn't that just do about the same thing as Klapp's .html? I never use any options, just "!r bot1 "+keys since the redeeming settings have been configured to have both since ever.
Comment has been collapsed.
PS2: I've never used the "drop key directly into chat" feature myself. Well, I did once accidentally and I ended up redeeming a key that was intended for a trade instead of giving it to the right person, so I really like the "a bot should answer only to commands" logic.
And that's 4th reason why this feature was removed, I'm actually glad and sad at the same time that somebody ran into this.
Comment has been collapsed.
That is an invalid reason for me, since adding the !r command becomes automatic without thinking. If I'm already mistaken about where the game should end, I'll redeem it there no matter what it takes. Did that once with a win from here and ended up buying the game from store to fix it. Which is why I only ever redeem games going to main account with Steam client (or even web now), can't take the risk of ASF not doing it right because Gaben decides it's fuck-up time and not learning the different modes since they don't serve any other use for me.
Nice how my ranting a little caused people to share useful scripts for the problem while it helped me to be less annoyed with ASF because of purely selfish reasons and being an unique user case. :)
Comment has been collapsed.
can't take the risk of ASF not doing it right because Gaben decides it's fuck-up time
With properly configured ASF it's not possible for any fuck-up to ruin the target account of redeeming process. Redeeming SG win with SF and SD can't cause ASF to redeem the game on the wrong account, even if Steam crashes the moment ASF tries to redeem the key.
not learning the different modes since they don't serve any other use for me.
Perhaps if you leant about them first then you'd find an usage for them, because I just told you about one important usage that you could already make use of instead of being forced to redeem in traditional way only because you can't use appropriate mode for the redeeming scenario that you need. But it's your decision, just don't claim that ASF has any possibility to redeem key on the wrong account, because that's not possible when using appropriate redeeming scenario, regardless of Steam issues.
Comment has been collapsed.
It would be tons more work to read the manual and write the command each and every time I want to redeem something on main account. I would be much more likely to forget to add the special characters and letters than to do it right.
I have looked at the commands several times and they have always seemed useless to me personally, several ways of doing something I don't need. I would be forced to do the silly commands I dislike, not the other way around. I never claimed ASF would be at fault, only me or Gaben.
Comment has been collapsed.
I have a question. I wonder if I might get VAC banned because I have VAC secured games in the list of GamesPlayedWhileIdle?
Comment has been collapsed.
i have a 32 bit windows 7, it always shows this error when i try to run it.
https://imgur.com/a/J21Nu
Comment has been collapsed.
i tried to find the 32 bit version but couldn't, could you please provide me with the link.
Comment has been collapsed.
fuckin god, replied within 30 seconds. anyway thank you so so much.
Comment has been collapsed.
i'm really sorry to bother again, but i still can't find the 32 bit one. and generic one is too much hassle.
Comment has been collapsed.
From the compatibility page
For example, if you're running 32-bit Windows then despite of no dedicated win-x86 ASF version, you can still install .NET Core SDK in win-x86 version and run generic ASF just fine.
Comment has been collapsed.
16,284 Comments - Last post 1 hour ago by AdJ
1,797 Comments - Last post 1 hour ago by MeguminShiro
23 Comments - Last post 1 hour ago by Bigshrimp
493 Comments - Last post 4 hours ago by sallachim
205 Comments - Last post 4 hours ago by carlica
381 Comments - Last post 4 hours ago by OsManiaC
54 Comments - Last post 5 hours ago by sensualshakti
16 Comments - Last post 7 minutes ago by Carenard
187 Comments - Last post 11 minutes ago by softbearcas
55 Comments - Last post 25 minutes ago by Axelflox
45 Comments - Last post 28 minutes ago by sallachim
42 Comments - Last post 51 minutes ago by Axelflox
4 Comments - Last post 58 minutes ago by RePlayBe
21 Comments - Last post 1 hour ago by Bum8ara5h
ASF is a C# application that allows you to farm steam cards using multiple steam accounts simultaneously. Unlike Idle Master which works only for one account at given time, requires steam client running in background, and launches additional processes imitating "game playing" status, ASF doesn't require any steam client running in the background, doesn't launch any additional processes and is made to handle unlimited steam accounts at once. In addition to that, it's meant to be run on servers or other desktop-less machines, and features full cross-OS support, which makes it possible to launch on any .NET Core-supported operating system, such as Windows, Linux or OS X. ASF is possible thanks to gigantic amount of work done in marvelous SteamKit2 library.
ASF doesn't require and doesn't interfere in any way with Steam client. In addition to that, it doesn't require exclusive access to given account, which means that you can use your main account in Steam client, and use ASF for idling the same account at the same time. If you decide to launch a game, ASF will get disconnected, and resume idling once you finish playing your game, being as transparent as possible during entire process.
Core features
Interesting features
For comparison with other similar programs and further read about the most interesting exclusive ASF features, I recommend to visit appropriate FAQ entry that explains everything in detail. It's also a very good starting point if you want to have a glimpse on what ASF can do, besides the obvious.
Setting up
Detailed guide regarding setting up and using ASF is available in the setting up article on our wiki. It's user-friendly tutorial with helpful screenshots that compacts the whole basic knowledge about ASF into a single document.
Useful links
Main page / Source code
Latest version / Download
Wiki / Help
Steam group
Discord
You might be also interested in our side project, ASF STM listing.
Is the project still supported?
As stated in my thread closing statement, despite of SG thread being closed, I intend to keep the project up-to-date and supported through non-SG channels. You can check the date of the latest release for reference.
This thread
The thread on SG is open for discussion and support matters that are related to ASF as a program. If you have any particular issue, question or other case to discuss, feel free to leave a comment.
Have fun.
Please do not add me on steam, if you have questions or issues - ask in the thread.
Prior to doing so, make sure to read main page and the wiki, especially our FAQ.
Comment has been collapsed.