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

  • Automatic idling of available games with card drops using any number of active accounts
  • No requirement of running or even having official Steam client installed
  • Guarantee of being VAC-free
  • Complex error-reporting mechanism, allowing ASF to be smart and resume idling even in case of Steam or networking problems
  • Customizable cards idling algorithm which will push performance of card drops to the maximum
  • Offline idling, allowing you to skip in-game status and stop confusing your friends
  • Advanced support for alt accounts, including ability to redeem keys, redeem gifts, accept trades and more through a simple Steam chat
  • Support for latest Steam security features, including SteamGuard, SteamParental and two-factor authentication
  • Unique ASF 2FA mechanism allowing ASF to act as a mobile authenticator (if needed)
  • StreamTradeMatcher integration allowing ASF to help you in completing your steam badges by accepting dupe trades
  • Rebased on .NET Core 2.0, cross-OS compatibility, official support for Windows, Linux and OS X
  • ...and many more!

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.

9 years ago*

Comment has been collapsed.

I get to checking badges now (its online) but its not "running" the game. Not sure what else I can do.

9 years ago
Permalink

Comment has been collapsed.

If it says "Checking badges...", just wait patiently, it's working. Depending on number of pages you have, it may take a while.

9 years ago
Permalink

Comment has been collapsed.

Define a while, 10 minutes, an hour.

9 years ago
Permalink

Comment has been collapsed.

max 15 seconds per page.

9 years ago
Permalink

Comment has been collapsed.

Any chance you can add a debug mode where you dump the names of the badges as you go through them to the console so we can see where it gets stuck?

9 years ago
Permalink

Comment has been collapsed.

Sure, sec.

9 years ago
Permalink

Comment has been collapsed.

Click

Try this one, it has full debug enabled including very verbose output. It should tell you more.

9 years ago
Permalink

Comment has been collapsed.

Hmm, no debug information other than it saying debug at the top. says its checking badges. Well guess it's not going to work for me. Darn it!

9 years ago
Permalink

Comment has been collapsed.

It added the badge page that it was checking for me.

9 years ago
Permalink

Comment has been collapsed.

The user should show in game on Steam if they are farming properly, right? Out of the 3 users that are showing as farming in the app, only 1 of the 3 is showing as being in game and the other 2 have yet to produce cards.

9 years ago
Permalink

Comment has been collapsed.

Make sure you're using 0.2 version. Other than that it doesn't make sense to me, as PlayGames() request is sent for the same appID that is shown in the app.

9 years ago
Permalink

Comment has been collapsed.

I was on the debug but using 0.2 seems to be the same result. It seems to be something specific to the users. I'll keep experimenting with it.

9 years ago
Permalink

Comment has been collapsed.

Can't reproduce, farm works properly for both of my 2/2 active accounts.

9 years ago
Permalink

Comment has been collapsed.

If you're brave, you could give me your two accounts for testing, so I could perhaps fix it. I need reproducable case. Add me on steam if you're interested.

9 years ago
Permalink

Comment has been collapsed.

You know, the levels of how you are dissecting Steam's functions sometimes frighten me. And the artificial intelligence chatbot on top doesn't really reduce the terrify factor.

9 years ago
Permalink

Comment has been collapsed.

I'm using the debug version you posted earlier and I can neither get card farming nor trade accepting to work:

28.10.2015 21:33:38 [#] DEBUG: Main() <DEBUG> Added bot: farming
28.10.2015 21:33:39 [] INFO: OnConnected() <farming> Connected to Steam!
28.10.2015 21:33:40 [
] INFO: OnLoggedOn() <farming> Successfully logged on!
28.10.2015 21:33:40 [*] INFO: StartFarming() <farming> Checking badges...
28.10.2015 21:36:21 [#] DEBUG: CheckTrades() <DEBUG>
28.10.2015 21:36:25 [#] DEBUG: ParseTrade() <DEBUG> 802433728 from 76561197960323531
28.10.2015 21:36:25 [!] WARNING: ParseTrade() <farming> Response <accept: True> to trade 802433728 failed!

9 years ago
Permalink

Comment has been collapsed.

I see missing ISteamUserAuth for some reason. That will break both card farming and accepting trades, strange.

9 years ago
Permalink

Comment has been collapsed.

Update: I see why.

9 years ago
Permalink

Comment has been collapsed.

Done, try 0.2.1.

9 years ago
Permalink

Comment has been collapsed.

The update worked. It even retroactively accepted the trade offer from earlier. Thanks for the quick fix!

9 years ago
Permalink

Comment has been collapsed.

I like how you manage to answer to every user and fix bugs in minutes, yet Steam support can't answer a question in months.

Introducing, 2hu support!

View attached image.
9 years ago
Permalink

Comment has been collapsed.

If something is broken, and I can fix it, I do fix it.

There's no point in magic public release if it's supposed to work only for me. I think I already covered major portion of potential users now, a few days more and all bugs will be slained.

9 years ago
Permalink

Comment has been collapsed.

Another bugfix release.

  • Fixed broken ISteamUserAuth authentication for steam accounts without VanityURL set
  • Fixed misleading status after properly redeeming cd-key (Unknown -> OK)

Download

We're getting better and better, soon I hope that all different steam account combinations will work!

9 years ago
Permalink

Comment has been collapsed.

We have lift off!!!!!!!! Thanks so much for your efforts!!!!

9 years ago
Permalink

Comment has been collapsed.

W/ this release, the farming of 2 accounts works for me. Ty

9 years ago
Permalink

Comment has been collapsed.

notice me botsenpai

9 years ago
Permalink

Comment has been collapsed.

Another bugfix release.

  • [!] You need to refresh your XML configs (to use new features)
  • Added blacklist feature, which allows ignoring certain appIDs from farming
  • Added "Monster Summer Sale" to the blacklist by default

Download

There's no need for update if 0.2.1 works properly for you. This is mostly for accounts with steam summer sale game showing as available to farm, which results in bot trying to farm it, and blocking the rest of the games.
Also it requires a rebase on new example.xml (old configs will still work, but with empty blacklist).

9 years ago*
Permalink

Comment has been collapsed.

just sugestion,
how about adding another way of login using cookies instead of steam login
or adding steam login+steam auth form in running program instead adding password in xml for security purposes

btw, Thank you for your hardwork... ♥♥♥

9 years ago*
Permalink

Comment has been collapsed.

Storing cookies isn't in any way more secure than storing a password. Both allows the same access, with one difference - I also do support SteamGuard, which will make it impossible to log in using login and password only, while your cookie is already preauthenticated and allows doing anything on your account, so point for me.

Although, your suggestion is somehow nice, I can add support for specifying "null" password, and program will ask for password on startup.

9 years ago
Permalink

Comment has been collapsed.

cookies from browser is already preauthenticated, we can't use that...??
because some lazy people using same password for their email and steam account, so irresponsible people can fully hijack their email and steam account xD

Although, your suggestion is somehow nice, I can add support for specifying "null" password, and program will ask for password on startup.

yep, maybe program can ask password when running, thats alternative for user

9 years ago
Permalink

Comment has been collapsed.

I can't use cookies from your browser because I need to physically access your steam account, this doesn't work like idle master which needs cookie only to access badge pages.

https://github.com/JustArchi/ArchiSteamFarm/commit/abcded92870a09367c199c8198df5a10d403cc65

Will be in next version.

9 years ago
Permalink

Comment has been collapsed.

my friend want me to ask you, she always get error like this http://i.imgur.com/OMlpdTC.png
and her account in restricted state

so restricted account cant use the program...??

9 years ago*
Permalink

Comment has been collapsed.

This means that request for http://steamcommunity.com/profiles/STEAMID/badges?p=1 failed. I don't have any restricted account for testing so I don't know what Volvo returns there. I bet you had to give me access to that account if you expect from me to add support for restricted accounts (if ever possible).

If interested, add me on steam, and send me the details so I can check.

9 years ago
Permalink

Comment has been collapsed.

Restricted accounts work normally, but dropped cards and boosters will be untradeable.

9 years ago
Permalink

Comment has been collapsed.

It's not because of restricted account but because of steam parental.

9 years ago
Permalink

Comment has been collapsed.

another question,
-Response <accept: True> to trade 803141791 failed,
this happen when trying to trade with bot, APIkeys and master id set, but getting this error (this problem from my friend)
-if i want to use 3 bots, did i must change api keys for 3 bots or just using 1 api key..? because when i use 1 api key and send trade offer to bot #2 & #3, trade offer didnt approved but bot #1 approved (my experience)

thank you.....♥♥

9 years ago
Permalink

Comment has been collapsed.

Each bot mut have it's own API key.

Also volvo servers are not always working properly, I don't focus on fixing trading part yet. It may work, or not.

9 years ago
Permalink

Comment has been collapsed.

Congrats on making public a part of ArchiBoT, I'm sure alot of people will find it useful!

I don't fancy to fill my played time just to get cards but it's something people really use so it's a really nice addition to the community. Keep up the good work!

9 years ago
Permalink

Comment has been collapsed.

Thank you!

9 years ago
Permalink

Comment has been collapsed.

Last release for today, 0.3.

  • [!] You'll need to rebase your configs on up-to-date example.xml, if using older release.
  • Added support for SteamParentalPIN, which is required for farm to work under restricted accounts.
  • Made it possible to enter confidential data such as steam login, password, and parental PIN on every startup rather than saving in config file, check example.xml for updates.

Download

Now also works with accounts with parental control enabled.

Have fun.

9 years ago
Permalink

Comment has been collapsed.

thank you for the update....

View attached image.
9 years ago
Permalink

Comment has been collapsed.

Damn, so many updates in a single day.
You da real deal, that's awesome dev work.

9 years ago
Permalink

Comment has been collapsed.

Updates are related to bugfixes, as I initially stated - found by the community.

I'm sure there are many people already satisfied with V0.1, I'm just making those unlucky ones happy too.

I expect that we're very close or done already with finding bugs. When that happens, updates will be much less frequent, and consist mostly of enhancements rather than bug fixes.

9 years ago
Permalink

Comment has been collapsed.

No new bug reports, everybody is quiet, I assume you're busy setting up your steam cards farm, alright ( ͡° ͜ʖ ͡°)

Good night then ( ͡° ͜ʖ ͡°)

9 years ago
Permalink

Comment has been collapsed.

whoa, nice
this is something alright, usually i use another PC just to farm
thanks for this

9 years ago
Permalink

Comment has been collapsed.

I hope you know this that you are genius and brilliant. You could actually design something better than even Enhanced Steam if you got down to it.

9 years ago
Permalink

Comment has been collapsed.

doesn't work for me !

9 years ago
Permalink

Comment has been collapsed.

Then you should either buy me a magic crystal ball or tell what exactly is not working if you expect from me to ever try to fix it.

9 years ago
Permalink

Comment has been collapsed.

the hole program doesnt work i got a black command window nothing else...

9 years ago
Permalink

Comment has been collapsed.

Then it's not the program that is broken, but your config and the fact that you don't read carefully.

9 years ago
Permalink

Comment has been collapsed.

that's right now its done and your program work perfectly thanks! but how i can add other acounts ?

9 years ago
Permalink

Comment has been collapsed.

More reading, less talking. Everything is in OP.

9 years ago
Permalink

Comment has been collapsed.

just kidding :P thanks anyway

9 years ago
Permalink

Comment has been collapsed.

This is just perfect! Thank you Archi ;)

9 years ago
Permalink

Comment has been collapsed.

It works

9 years ago
Permalink

Comment has been collapsed.

First I was "wow that's exactly what i need!" and then smth happened that completely ruined my day =_=

This is steam nickname, the one you want to use for bot. Can be anything up to 32 characters

I thought it was a nickname just to identify different accounts inside a bot. I couldn't even imagine that it would change acc's nickname. I had my nickname history clear for 2,5 years and I was never going to change nickname. Well, now its not clear. Thanks to your bot.

I know its not a disaster and all in all I AM guilty but.. I feel so sad now :c

Awesome bot btw. I'll use it anyway.

9 years ago
Permalink

Comment has been collapsed.

Isn't "null" by default? You didn't need to change it :3

BTW, below

<!-- TIP: You can use "null" if you wish to preserve your actual nickname -->
9 years ago
Permalink

Comment has been collapsed.

it wasn't in old version :c

9 years ago
Permalink

Comment has been collapsed.

Shit happens then :C

9 years ago
Permalink

Comment has been collapsed.

farming cards its a thing? xd

How many steam accounts you have? how much you make out of it? xD

9 years ago
Permalink

Comment has been collapsed.

Depends on many factors, usually up to 40-50 euro / month in my case (average ~30). And that's doing nothing, just launching my scripts.

9 years ago
Permalink

Comment has been collapsed.

so.. what do you do? create a bunch of extra steam acc and get multiple copies of games that drop cards?

9 years ago
Permalink

Comment has been collapsed.

Connected with many other things I don't want to spoil, pretty much this.

9 years ago
Permalink

Comment has been collapsed.

hum.. interesting, is there a place where i can learn more about this?

9 years ago
Permalink

Comment has been collapsed.

Test trading worked for one of my bots (which is farming cards) and keeps failing for the other one (which already finished farming cards) with 'WARNING: ParseTrade() <botname> Response <accept: True> to trade tradenumber failed!'... The bot is tradeable in a usual way, but fails using the program.

9 years ago
Permalink

Comment has been collapsed.

API keys correct?

9 years ago
Permalink

Comment has been collapsed.

Yes, I even tried to change it for another one, using another domain, but it is still the same.

9 years ago
Permalink

Comment has been collapsed.

Oh yeah, also it's totally possible that steamguard kicks in. You should disable steamguard verification for trades if bot is supposed to accept them (that's NOT disabling SG, only disabling SG for trades).

9 years ago
Permalink

Comment has been collapsed.

No steamguard verification for trades is enabled - both bots have the same settings.

9 years ago
Permalink

Comment has been collapsed.

No clue then, ask Volvo.

9 years ago
Permalink

Comment has been collapsed.

Okay, I will ;) Thank you very much anyway for your work!

9 years ago
Permalink

Comment has been collapsed.

There is always last resort, you can add me on steam, send me XML of your bot, and I will look inside the issue myself.

This is how I solved at least 2 weird rare issues, such as steam monster game showing on badge pages and steam parental block.

9 years ago
Permalink

Comment has been collapsed.

V0.4 Update.

  • [!] You need to rebase your configs on new example.xml
  • Added update check on startup, ArchiSteamFarm will now notice you if update is available.
  • Added proper message suggesting that failed trades might be caused by 7-days trades lock.
  • Added statistics, which will be useful for me to see how many bots are running (optional)
  • Code review
9 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

9 years ago
Permalink

Comment has been collapsed.

1) All trading-related issues are so far connected with only two things:

  • 7-days trading lock because of account registered from new device, can't be fixed for obvious reasons, will fix itself after 7 days pass from first bot startup (steamguard code entered)
  • Valve's servers being unreliable

So unlikely that I can fix it. Yes, I can implement trading from bot to master, but that will still rely on two above bug reasons.

2) Yeah, that is totally possible, I'll implement something like that later.

3) GUI is out, because I need to use my farm on my Linux server and I definitely don't need/want GUI for it, however basic interaction using console may be possible, although low priority for me.

4) This is written in C#, C# is not C, it's totally different language, although named similar. And I don't know any books, I learn by myself (by doing projects like these)

9 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

9 years ago
Permalink

Comment has been collapsed.

XML redo is only needed when I add new config options, not on every update. I could ignore it, and simply load my defaults in place of missing definitions from older configs, but I intentionally don't want to do that, so users can see new options instead of updating only.

I don't know what is stopping you from creating one group/chat for all of your bots though. If you want just one, you can add/remove from friend list.

9 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

9 years ago
Permalink

Comment has been collapsed.

Does the bot save cookies on your server? If I stop it from my computer, will the 7-day period reset?

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

8 years ago
Permalink

Comment has been collapsed.

Steam saves your login details in cookies files, which are normally saved by your browser. What I want to ask Archi is whether those files are saved on his server (i.e. the bot's computer) or not, and thus, if I stop the bot locally, whether it will "remember" or "forget" my accounts. If it saves my cookies files, then I can safely turn it off instead of leaving it running 24/7 and putting some loads on his server.

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

8 years ago
Permalink

Comment has been collapsed.

Oh, that explains the .key and .bin files then.

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

8 years ago
Permalink

Comment has been collapsed.

This is nice, even better than Iddlemaster. ;)

Good job, dude.

9 years ago
Permalink

Comment has been collapsed.

Works great, thanks...no idea how many cards there are to farm on my second account but I activated some games there (some accidentally instead of my main(not SG wins))

9 years ago
Permalink

Comment has been collapsed.

Closed 5 years ago by JustArchi.