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.

View attached image.
8 years ago
Permalink

Comment has been collapsed.

So, lets see if I got it right:

  1. This is a standalone project (program) which doesn't need Steam at all and for nothing to farm your cards?
  2. So if its doesn't interfere with Steam, that should mean that I can start it when my PC is on and still play any game on Steam, and the cards will still drop.

So did I got it right, JustArchi? Thank you for your time and reply.

8 years ago
Permalink

Comment has been collapsed.

  1. Yes
  2. If you use same account in ASF and Steam Client - then no, while you play cards would not drop.
8 years ago
Permalink

Comment has been collapsed.

  1. Okey when I play and I quit, will it automatically resume farming? I didn't get that part.
  2. When I start to play will it automatically pause until I quit, and than back to point №1.
8 years ago
Permalink

Comment has been collapsed.

Yes and Yes)

8 years ago
Permalink

Comment has been collapsed.

And one last question. When I start a game while the bot is on, it promps a window telling me that i'm logged and playing somewhere else (the bot) and will disconnect him. So is that a problem?

8 years ago
Permalink

Comment has been collapsed.

I don't really understand the question. Just answer "yes" and play, bot will be disconnected, and will reconnect when detect that you finished playing.

8 years ago
Permalink

Comment has been collapsed.

7.3.2016 г. 22:54:54 [!] WARNING: OnDisconnected() <primary> Account is being used elsewhere, will try reconnecting in 30 minutes...

Is there a way to make it 5 minutes for example? That's my final question and I'm really grateful for you help.

8 years ago
Permalink

Comment has been collapsed.

Not yet, but in TODO list (if I understand it right)

8 years ago
Permalink

Comment has been collapsed.

Thank you, have a nice evening.

P.S.: Yes, you understood it right.

8 years ago
Permalink

Comment has been collapsed.

Glad to help)

8 years ago
Permalink

Comment has been collapsed.

Thanks for saving some of my time! :3

8 years ago
Permalink

Comment has been collapsed.

Hey Archi,

I have read the wiki on github and have been using the program for a while but haven't gotten to transferring cards from my alt accounts to the primary account yet. I have read that the bots need an API key ($5 / bot) for them to be able to send trades.

Correct me if this raises some technical barriers, I was thinking about a feature...

  • Since it is possible to use the "master" account as a bot itself
  • Most people have an API key for their main account
  • All the bots have an account specified as "master"
  • As you have written the bots "Automatically accept all trades coming from master"

Would it be possible to implement a feature where the master account sends automated trade requests to the bot accounts, selecting ALL items the bot account has in it's possession? It's like the reverse of the !loot <bot name> command. The bot account IDs / trade tokens(?) could be stored in a separate XML entry, which ones should be sent a trade request.

Overall this would help avoid spending $5 / bot.
I'm really enjoying your program, thanks for taking your time making it.

8 years ago
Permalink

Comment has been collapsed.

This would not help to avoid spending $5. When account is limited (i.e. prior to spending 5$) it can't do ANY trading, no matter if it's incoming or outcoming. And even more, you would not be able to send a trade request to such account, you can check this manually.

8 years ago
Permalink

Comment has been collapsed.

That's a shame really. It hasn't been 15 days since I have created my alt accounts and set up SteamGuard, I was thinking that is the only thing blocking me from sending trade offers on alt accounts. However if this is the case, I'm having trouble seeing my bot network's worth. I would need to have ~ 250 cards accumulated on a single alt account to justify spending $5 to get that money back in card sales. $5 doesn't get me too far and I would rather spend it on games I'll actually play.

I could buy a gift with the alt account and send it to the main, but Steam is not the cheapest place really. I mostly buy Steam keys elsewhere.

8 years ago*
Permalink

Comment has been collapsed.

Well, actually you can buy a gift from this account and then send it to your main (or even trade it), this counts too. But you would still need to spend real money to do this, as there is no way to get steam wallet funds on limited account.

8 years ago
Permalink

Comment has been collapsed.

If there was a way to "exploit" the system and workaround it then it'd be done already long time ago. The easiest way is just buying a gift for yourself, or for a giveaway, with bot's account, and it's enough to "activate" it. Other (more complex) methods include loading wallet with money, activating steam market and "buying" your primary acc item, so you can get those funds back on your primary acc, BUT in this way you lose at least 15% that Volvo takes as a cut, and also the game used for activating the market.

Hence, first option is the best.

8 years ago
Permalink

Comment has been collapsed.

Well I guess you had everything worked out, before I had thought about it :P

8 years ago
Permalink

Comment has been collapsed.

Hey Archi
Ive just downloaded version 2.0.0 somehow . Fix it.

8 years ago
Permalink

Comment has been collapsed.

?

8 years ago
Permalink

Comment has been collapsed.

Need global config LimitInventoryRequest for !loot command because 7 seconds ( "RequestLimiterDelay": 7,) its too much. 1.5-3 seconds will be fine
Thx ;)

8 years ago*
Permalink

Comment has been collapsed.

"If you decide to launch a game, ASF will get disconnected, and resume farming once you finish playing your game, being as transparent as possible."

Ouch! I need to be able to play games while farming other stuff like I used to with IM, hope this feature is on the roadmap :'-(

Other than that, I need your Patreon to support you on this awesome software. I would feel much better afterwards. Please.

8 years ago
Permalink

Comment has been collapsed.

Ouch! I need to be able to play games while farming other stuff like I used to with IM, hope this feature is on the roadmap :'-(

Nope. Farming more than one game decreases cards drop to 0 anyway, and ASF uses totally different mechanism than IM, it's physically not possible to play and farm at the same time. Therefore I can't see a reason why you'd want to do that.

Other than that, I need your Patreon to support you on this awesome software. I would feel much better afterwards. Please.

PayPal donation is available on ASF GitHub page. You can also donate if you don't have PP account. Thank you in advance!

8 years ago
Permalink

Comment has been collapsed.

Well I can assure you that with IM you do get card drops if you're playing another game (perhaps only if you already have all card drops for the game you're playing).

8 years ago
Permalink

Comment has been collapsed.

That might be true, but still it doesn't change the fact that ASF works in totally different way and I can't make it happen.

(Although from my observations all cards being dropped in such measure is steam fuckups, and not intended way, we checked that already)

8 years ago
Permalink

Comment has been collapsed.

It is not a matter of dropping cards, but rather achieve the 2 hours playtime required on my (and most) account(s) actually.

This would make playtime useful, preparing all the newly redeemed games for the post-play farming, making it quicker.
I hope I made myself clear enough and yes, you can still play any game with IM enabled (either farming multiple games up to 2 hours or dropping cards 1 game at a time).

If one day ASF manages to achieve such, we would save a lot of time ! Hope this can become an option (if technically possible of course) in the future. Thanks again !

8 years ago
Permalink

Comment has been collapsed.

Not technically possible, because ASF farms in totally different way, and steam does not allow to play from 2 logged sessions at the same time.

8 years ago
Permalink

Comment has been collapsed.

Just 1 question:

If I idle a game for cards will it still appear that I've played said game for X hours?

That's the only thing that's deterring me from using Idle Master, I do want to know which gaming sins I have and need to play to expiate.

8 years ago
Permalink

Comment has been collapsed.

Yes, because you need to play games to obtain card drops.

Although with offline farming you won't actually be shown on Steam as playing, game will only be recorded in your history.

8 years ago
Permalink

Comment has been collapsed.

Ok, thanks for clarifying! I might still come to terms with the reality that I might never play all of my backlog, lol.

8 years ago
Permalink

Comment has been collapsed.

Silly Question: How do you "properly" close ASF?

8 years ago
Permalink

Comment has been collapsed.

By clicking [X]?

8 years ago
Permalink

Comment has been collapsed.

:D :D :D For a moment I thought there was some "stop & logout" ritual necessary, Thank you.

8 years ago
Permalink

Comment has been collapsed.

Have you seen latest market bullshit guys?

Don't worry, my beloved ASF users will be able to automatically accept all pending confirmations in upcoming V2.0 version.

8 years ago
Permalink

Comment has been collapsed.

Is this the "Added support for SteamDesktopAuthenticator .maFile."? Guess I should start looking into SteamDesktopAuthenticator then, to be prepared to have something to transition ;)

8 years ago
Permalink

Comment has been collapsed.

I think he means that you need to confirm all market listings now. Previously is was only needed for items above a certain price.
I sold like 900 cards during the holidays. I can't imagine having to confirm all those >_>

8 years ago
Permalink

Comment has been collapsed.

I know what he means in general. This was more about how this will be implemented

8 years ago
Permalink

Comment has been collapsed.

please add a turn on/off command for auto confirmations. So that we can use it safely on main while still having the trade/market hold protection when we are not selling/trading anything.
Seeing pre release versions on github, I guess it is coming soon. Thanks for the updates archi :)

8 years ago
Permalink

Comment has been collapsed.

yeah listing items for a few cent requires mobile confirmation WTF , i dont remember reading that in the changes

8 years ago
Permalink

Comment has been collapsed.

You answered my question 22 hours before I even thought of asking it!
What kind of sorcery is this?!

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago
Permalink

Comment has been collapsed.

Yes.

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago
Permalink

Comment has been collapsed.

This whole ASF looks complicated.. but also interesting. I guess I'll have to try it.

8 years ago
Permalink

Comment has been collapsed.

It may just look this way. In fact it's pretty simple, cool and most important usefull IM alternative. And It's told you by many year IM customer. That's pretty high recomendation ! :)

8 years ago
Permalink

Comment has been collapsed.

It's not complicated. It's just Archi overcomplicating things :P

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago*
Permalink

Comment has been collapsed.

Each game has its own dropping time, depending on many aspects (it can even be set manually), so it's not because of IM or ASF. For example some games that drop 6 cards simply takes longer to idle than those dropping 3 cards or so.

8 years ago
Permalink

Comment has been collapsed.

Switched to ASF for the past week, and dropped all the cards for my last 15 games.
Quite easy to use for simple card drops...somehow it worked quicker than previous software.
Hoping to explore additional functionality in the coming weeks.
Thanks Archi!

8 years ago
Permalink

Comment has been collapsed.

How to use I need help D:

8 years ago
Permalink

Comment has been collapsed.

Detailed instructions on setting up everything are available on the main page. More help is available on the wiki.

8 years ago
Permalink

Comment has been collapsed.

I love this and you.

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 8 years ago.

8 years ago
Permalink

Comment has been collapsed.

Works fine here.

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago
Permalink

Comment has been collapsed.

https://github.com/JustArchi/ArchiSteamFarm/releases/tag/2.0.0.3

24 hours of final tests, the revolution is close.

8 years ago
Permalink

Comment has been collapsed.

at first I didn't want to bother seeing so many letters but then I downloaded sublime and edited it with it easily
Thank you Archi :3

8 years ago
Permalink

Comment has been collapsed.

ASF V2.0 solves that issue :3

8 years ago
Permalink

Comment has been collapsed.

according to some guide from backpack.tf "identity_secret":"blablablablablabla=" field is enough for auto confirmations.
I managed to extract \apps\com.valvesoftware.android.steam.community\f Steamguard file from my samsung tablet without root using adb and android backup extractor. The file is very similar to the *.auth files in ASF config folder but missing a few fields. What should I do from here to enable autoconfirmations?

tools used:
adb:
https://developer.android.com/sdk/index.html

Samsung Android USB Driver for Windows:
http://developer.samsung.com/technical-doc/view.do?v=T000000117

Android Backup Extractor
https://sourceforge.net/projects/adbextractor/

PS: Ah.. I noticed I had to add SteamApiKey, for auto confirmations. So tried to do that with missing
device_id":, fully_enrolled": and all "Session" {SessionID, SteamLogin,...} fields. But the program crashed at main acc login.
Without adding SteamApiKey it works and even gives 2fa tokens tho, just doesn't auto-confirm market listings...

8 years ago*
Permalink

Comment has been collapsed.

Use SDA for import - https://github.com/Jessecar96/SteamDesktopAuthenticator/wiki/Importing-account-from-an-Android-phone

Then when you generate .maFile with SDA, simply put it in the config directory of ASF V2.0+.

8 years ago
Permalink

Comment has been collapsed.

Couldn't make it work.. For some reason SDA gives me error after backup.ab is imported. It says steamguard file does not exist etc and a long list..
Anyway backup.ab is basically the same file I imported with adb. I tried to enter every field by hand, wasn't sure about the WebCookie, used wgtoken_secure in login.json for it. Seems to be working so far, but I guess 1.6.1 isn't supposed to confirm market listings, I'll try with the 2 version.

PS: Ok everything seems to be working in 2. But I get this all the time:
[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] WTF: GetGameCardsPage() <bot1> Request failed even after 5 tries, WTF?

8 years ago*
Permalink

Comment has been collapsed.

Hey Archi, I wanted to say if you add support for WinAuth format, it will also work for the default format coming with the steamguard file directly imported from the phone. Only exception is it starts with {"steamid":"REDACTED" in addition to the rest of WinAuth 2fa file.
Modifying the file by hand was not very easy, I wonder why noone else had the same problem. Either everyone is already using SDA or people don't import 2fa from their phones :D

8 years ago
Permalink

Comment has been collapsed.

adb backup -f .\tmp\steam.ab -apk com.valvesoftware.android.steam.community
java -jar android-backup-extractor-20151102-bin\abe.jar unpack .\tmp\steam.ab steam.tar

steam.ab is basically the same file SDA uses as backup.ab while importing 2fa from phone and reformatting it to maFile
java -jar android-backup-extractor-20151102-bin\abe.jar unpack .\backup.ab backup.tar
done in the SDA directory gives the same tar file.

if you do that basically everything will be extracted to steam.tar.
After opening it with winrar

  • com.valvesoftware.android.steam.community/f/Steamguard-steamid
    is almost identical to WinAuth file
  • com.valvesoftware.android.steam.community/sp/steam.uuid.xml
    is where device id is located
  • com.valvesoftware.android.steam.community/r/app_cache_i/login.json
    is where OAuthToken and WebCookie can be found
  • com.valvesoftware.android.steam.community/r/app_webview/Cookies
    is the file that has SessionID, SteamLogin, SteamLoginSecure in it

I should probably make a github account. to participate those issue discussions :D

8 years ago
Permalink

Comment has been collapsed.

Yeah, development discussions are happening on github :3.

Basically, now as WinAuth format works, if you make a little effort you can also import it directly from your phone, but as you probably noticed I suggest people to still use SDA or WinAuth for importing, as it's easier than executing ADB commands manually.

8 years ago
Permalink

Comment has been collapsed.

Apologies for necro'ing this but is the above a working solution to get my 2fa to ASF?

I tried to use Steam Desktop Authenticator on my unrooted Nexus 6 but it keeps failing the import. I've already asked for any solution on the SDA subreddit (as that seems to be the only current place for support if I am to believe certain GitHub posts) but after three days no one has said anything yet.

8 years ago
Permalink

Comment has been collapsed.

It should work but there is a lot of stuff you need to do manually. I suggest you to use WinAuth instead if SDA is not working.

8 years ago
Permalink

Comment has been collapsed.

WinAuth doesn't let you import an existing account from an unrooted phone. From what I can tell the only option with WinAuth is basically create a new Authenticator but then the one on my phone won't work.

8 years ago
Permalink

Comment has been collapsed.

https://github.com/winauth/winauth/issues/288

  • Use the tools and the method I explained here to import the steam app files.
  • Then start WinAuth and do Add --> Steam --> Import Android
  • copy paste the required data from the files you imported from your phone.

You will have a working WinAuth using your the same 2FA with your phone.

Now you can follow the instructions here: https://github.com/JustArchi/ArchiSteamFarm/wiki/Escrow

I just did it to confirm, and it is working. You don't need a rooted phone. GL

8 years ago
Permalink

Comment has been collapsed.

Perfect, I'll try that later today or tomorrow.

Thanks!

8 years ago
Permalink

Comment has been collapsed.

I just tried and I get a steam.ab file of only 41 bytes. I'm assuming that's not correct.

When using Android Backup Extractor on it I get a faulty .tar file of 1 KB.

It's weird cause everything seems to be going correctly. When using ADB I get a screen on my phone asking if I really want to backup and then is shows "backup starting" and "backup finished", or words to that effect.

Any idea how I can fix this?

Thanks!

8 years ago
Permalink

Comment has been collapsed.

I've done some Googling and found this: https://github.com/IzzySoft/Adebar/wiki/Known-Issues

I've installed the latest version of ADB directly from the Android website but unfortunately I am still getting a 41 byte file.

Downgrading to version 31 as suggested via that link doesn't work at all as now I am not getting a screen on my phone to start the backup.

8 years ago*
Permalink

Comment has been collapsed.

Sorry I can't help you with that. Try to do it with a different computer, laptop etc.

8 years ago
Permalink

Comment has been collapsed.

I tried a different pc (same result) and then finally got smart and tried to backup another app; that one did get backed up correctly.

From more googling it seems the 41 byte result can also be because the manifest for the app disables backups, as seen on the answer on this page: http://android.stackexchange.com/questions/114437/backup-restore-sms-mms-via-adb-on-a-non-rooted-device

The only thing I don't understand why it worked for you but not for me; the manifest should be the same on every phone...

8 years ago
Permalink

Comment has been collapsed.

Adding this for other people who might run into the same thing:

It seems that Steam updated the app to block the backup option (it might only block you if you are on Android 6) but I found a solution.

Lots of googling lead me to this post: http://forums.backpack.tf/index.php?/topic/20204-backpacktf-automatic-help-thread/page-83#entry530652

At the bottom of that post is the 'solution'; going back to an older version of the Steam app that allows backing up. This way you can use Shindo's solution (and maybe also SDA) on an non-rooted phone.

8 years ago
Permalink

Comment has been collapsed.

I apologize if this has been already asked, but when using ASF, will you appear in-game to your friends list, or nah? It's difficult for me to idle anymore due to friends not being able to tell when I'm actually playing a game and getting upset with me when I haven't.

8 years ago
Permalink

Comment has been collapsed.

In the xml config file there is an option:
<FarmOffline type="bool" value="false"/>
if you set it to true, your account will appear as offline when farming.
So when you login to you account via steam client, if this is set to true, you'll just look Online when farming and they will see you in-game only when you are actually playing something.

8 years ago*
Permalink

Comment has been collapsed.

Ah, sweet! Thanks for the response!

8 years ago
Permalink

Comment has been collapsed.

Works like a charm. Thanks Archi!

8 years ago
Permalink

Comment has been collapsed.

8 years ago
Permalink

Comment has been collapsed.

Thank you JustArchi, btw, is there any problem if you are running ASF AND the steam client with the same account at the same time?

8 years ago
Permalink

Comment has been collapsed.

I've been doing that since ASF came out, no problems at all. You can even launch games from the steam client, ASF will then just pause idling untill you stop playing

8 years ago
Permalink

Comment has been collapsed.

Not sure if this is intended or not, but v 2.0.0.4 did not migrate my blacklist from the old xml files to ASF.json

8 years ago
Permalink

Comment has been collapsed.

Intended, as blacklist has been moved. Same happened with Statistics

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago
Permalink

Comment has been collapsed.

Did you put a ASF.json in the config folder?

8 years ago
Permalink

Comment has been collapsed.

^

8 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 6 years ago.

8 years ago
Permalink

Comment has been collapsed.

Where is ASF.json.

8 years ago
Permalink

Comment has been collapsed.

You can find one in the zip package or in the configuration page.

8 years ago
Permalink

Comment has been collapsed.

Thanks.

8 years ago
Permalink

Comment has been collapsed.

[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] ERROR: CheckHours() <bot1> htmlDocument is null!
[!!] WTF: GetGameCardsPage() <bot1> Request failed even after 5 tries, WTF?

I am getting this a lot, only on main! Log will become huge soon.. I deactivated 2fa, deleted bin and db, logged in again as normal but this is still happening.

8 years ago
Permalink

Comment has been collapsed.

Ask Volvo why ASF can't connect with steamcommunity.

Perhaps you might want to increase HttpTimeout to something bigger like 120.

8 years ago
Permalink

Comment has been collapsed.

Set it to 90 but it is fixed with the last update.

8 years ago
Permalink

Comment has been collapsed.

I didn't change anything regarding that, so either Volvo fixed their crap servers, or increased delay helped.

If value of 90 helps, then you should definitely keep it. Default value of 30 should satisfy most users.

8 years ago
Permalink

Comment has been collapsed.

It was the first time I saw that error only happened after switching to asf 2. So either asf 1.x didn't show them, or you lowered the timeout or it's the weekend :D

8 years ago
Permalink

Comment has been collapsed.

I did, old default was 180

8 years ago
Permalink

Comment has been collapsed.

MINOR: FarmingDelay property is not explained in wiki.
SOLVED

8 years ago*
Permalink

Comment has been collapsed.

Nice eye madth3, added, thank you!

8 years ago
Permalink

Comment has been collapsed.

I'm one of those geeks who actually reads the manuals.
And thank you!

8 years ago
Permalink

Comment has been collapsed.

Closed 5 years ago by JustArchi.