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.

Even if my computer is totally off powered, ASF is still active? Just want clarity about offline farming.

8 years ago
Permalink

Comment has been collapsed.

No. Program requires hardware and OS to run.

8 years ago
Permalink

Comment has been collapsed.

Yup, I have both of those. What if I turn off my gaming laptop, will Archi bot still farm?

8 years ago
Permalink

Comment has been collapsed.

If you run ASF on another computer after turning off your gaming laptop - yes, otherwise no.

8 years ago
Permalink

Comment has been collapsed.

Can you help me with this problem https://www.steamgifts.com/go/comment/9J09i0R ? I tried to fix it by revoked my dev api key and request new one, manually take all items from bot and again farmed new cards, but nothing helped :(

EDIT: I used both !loot and !lootall commands, none work

8 years ago*
Permalink

Comment has been collapsed.

I don't know what help you expect, it's explained in FAQ.

8 years ago
Permalink

Comment has been collapsed.

Lastly, will sleep mode have an affect on the farming?

8 years ago
Permalink

Comment has been collapsed.

Can't farm if your computer is sleeping. Otherwise no.

8 years ago
Permalink

Comment has been collapsed.

your PC has to run to farm. if you put it to sleep everything stops.
If your PC isnt that loud you can let it run over night to farm, its pretty rewarding.

8 years ago
Permalink

Comment has been collapsed.

Thank you JustArchi, used Idle Master until now, i'll give a try to your's ASF

Working flawless so far: 3 Cards/45Min
With simple algo.

Thank again Just Archi

8 years ago*
Permalink

Comment has been collapsed.

Mason, what do the numbers mean?!

Example: "Still farming XXXXXX"

8 years ago
Permalink

Comment has been collapsed.

that is the appid of the game that is farmed

8 years ago
Permalink

Comment has been collapsed.

So far, my lil Archi bot is doing great. Got myself 2 cards in 3 hours earlier today.

8 years ago
Permalink

Comment has been collapsed.

Since yesterday ASF stoped working for me , it shows me next msg

2016-07-24 23:09:19|ERROR|ASF|Load() Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: ?. Path '', line 0, position 0.
at Newtonsoft.Json.JsonTextReader.ParseValue()
at Newtonsoft.Json.JsonTextReader.Read()
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType(JsonReader reader, JsonContract contract, Boolean hasConverter)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at ArchiSteamFarm.GlobalDatabase.Load(String filePath)
2016-07-24 23:09:19|ERROR|ASF|InitServices() Global database could not be loaded!

8 years ago
Permalink

Comment has been collapsed.

Your database is corrupted. Removing ASF.db might help.

8 years ago
Permalink

Comment has been collapsed.

When using the program the black window with text appears(to tell the farming is in progress), so if I exit out of the black screen does that stop the farming?

8 years ago
Permalink

Comment has been collapsed.

Yes.

8 years ago
Permalink

Comment has been collapsed.

hey, do you have instructions somewhere how to import that mobile auth stuff from android in Linux?

8 years ago
Permalink

Comment has been collapsed.

You will need root.

The easiest way is copying /data/data/com.valvesoftware.android.steam.community/files/Steamguard-XXX where XXX is your SteamID of the account you want to add (if more than one, because if you have only one then this will be the only file). You should then put this file as Bot.maFile in ASF config directory, where Bot is name of your bot - this is well explained on the wiki. After this step, launch ASF and it should notice the .maFile and import it. You will need to do only one more step - when ASF asks you for deviceID of your authenticator, find it in /data/data/com.valvesoftware.android.steam.community/shared_prefs/steam.uuid.xml, it will be inside XML tags starting with android:. Copy the deviceID and put it in ASF when asked and that should be it. Confirm that tokens as well as confirmations work properly. If you screw up something, remove Bot.maFile and Bot.db and start over.

8 years ago*
Permalink

Comment has been collapsed.

don't have root on my phone. it's slowly dying, won't try to root it
any other way from Linux to set up asf as authentificator?

8 years ago
Permalink

Comment has been collapsed.

You should be able to run SDA with Mono, although I never tried that and I'm not even sure if it's possible. If that won't work, then I'm afraid there is no way.

Thing is, if you have your authenticator in your phone already, then most likely you won't be able to import it without root anyway - I updated wiki on that topic, so you might give it a re-read (Escrow section).

8 years ago
Permalink

Comment has been collapsed.

I have 2 questions:

1) My anti-virus detects this program as a virus, Is it false alarm?

2) If I run this program in the background and in the meantime I play VAC secured game. Is it likely that I will be banned?

8 years ago
Permalink

Comment has been collapsed.

Both questions are answered in the FAQ.

8 years ago
Permalink

Comment has been collapsed.

wow this is amazing. Let's try and welcome to my WL ;)

8 years ago
Permalink

Comment has been collapsed.

You're welcome :3

8 years ago
Permalink

Comment has been collapsed.

I wonder when will ArchiBot have the hidden feature of putting you and itself on everyone's whitelist if they detect SteamGifts being open, like how it adds everyone to the ASF Steam Group. :3

8 years ago
Permalink

Comment has been collapsed.

It's easier than you think it is, adding to WL is single post request, but that would be abuse :3.

8 years ago
Permalink

Comment has been collapsed.

In ASF Global Data not loading error since last night.

8 years ago
Permalink

Comment has been collapsed.

Log?

8 years ago
Permalink

Comment has been collapsed.

Log doesn't show anything at current time. Get yellow text in ASF box:
http://imgur.com/82dXJ4X

8 years ago
Permalink

Comment has been collapsed.

Copy ASF.db and send it on my e-mail as attachment: JustArchi[at]JustArchi[dot]net. Then remove ASF.db and let ASF recreate it. I'll check what might lead to such situation.

8 years ago
Permalink

Comment has been collapsed.

I did delete it before reading your reply on a hunch and it seemed to work. I am afraid I cant trace that exact asf Json file now. Let me recover that one.
EDIT: it's notepad readout is a series of ip addresses.

8 years ago
Permalink

Comment has been collapsed.

That file is fine and I can't reproduce your issue.

8 years ago
Permalink

Comment has been collapsed.

Anybody tried to farm Ghost in the Shell with ASF? After 8 hours it still has one card to drop.

8 years ago
Permalink

Comment has been collapsed.

is working great i got my first card :D maybe try to restart it?

8 years ago
Permalink

Comment has been collapsed.

I did it many times. What comes to my mind is that the game detects I'm playing two games at the same time and thats why the drop rate is so low, but as far as I know, that's impossible with ASF :S

8 years ago
Permalink

Comment has been collapsed.

It's normal. Took about 10 hours for mine to drop all cards.

8 years ago
Permalink

Comment has been collapsed.

So it's just the developers/steam chose a ridiculous drop rate?

8 years ago
Permalink

Comment has been collapsed.

Yes, it's up to the dev

8 years ago
Permalink

Comment has been collapsed.

Thanks for solving the mistery 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.

i used idle master for couple of months it did good but when it reaches 2 hour of idling it stops and you have to restart it so it could drop cards. in ASF it keeps it steady with no stopping :D i love it <3

8 years ago
Permalink

Comment has been collapsed.

2.1.3.0
CustomGamePlayedWhileFarming doesn't seem to work after a game finished farming (reverts to showing actual game played - funny feature though).

8 years ago
Permalink

Comment has been collapsed.

Please note that ASF cannot guarantee the actual display order of Steam Network, therefore this is only a suggestion that may, or may not, display properly. Default value of null disables this feature.

8 years ago
Permalink

Comment has been collapsed.

Related to some other topic: that's where diagonal reading is a downside.
Funny feature nevertheless. Thanks for your hint.

Edit: any way to help you in this regard?

8 years ago*
Permalink

Comment has been collapsed.

Help with what, steam fuckups? No, go help GabeN.

8 years ago
Permalink

Comment has been collapsed.

I managed to create docker container running ASF on Raspberry Pi 3 (it should doable for RPi 2, but I have no way of testing that). This way I can have server running 24/7 without any need of turning on PC.
Will you be interested in tutorial on how to do it after I'm done with testing it?
Question is mostly for author(s) of ASF, since they can only decide on how people are using their software.

8 years ago
Permalink

Comment has been collapsed.

Couldn't you make a tutorial on how to setup ASF on a Raspberry Pi or a dedicated server? I'm super interested in that, but I'm very n00b :(

8 years ago
Permalink

Comment has been collapsed.

Sure, can do. I'll create docker image and post link with (hopefully detailed enough) how-to here as reply or separate comment.

8 years ago
Permalink

Comment has been collapsed.

That would be awesome! Thanks man :D

8 years ago
Permalink

Comment has been collapsed.

How does farming multiple games at once affect the card drop efficiency?

8 years ago
Permalink

Comment has been collapsed.

Drop rate is 0 when farming more than one game.

8 years ago
Permalink

Comment has been collapsed.

I was thinking can this be compiled on a android phone since android have some powerful compilers available as cheap as $2 (c# shell (compiler repl)) and like you said it doesn't require a steam running in background which is a perfect , putting a $200 phone on continues load seems to be a good option . We will able to farm cards anywhere . I am not familiar with this language(c#) or else i would have done it myself . Or is this even possible ?

8 years ago
Permalink

Comment has been collapsed.

[...]
2016-07-28 15:22:59|ERROR|tymar|UrlRequest() Request: https://steamcommunity.com/tradeoffer/new/send failed!
2016-07-28 15:22:59|ERROR|tymar|UrlRequest() Status code: InternalServerError
2016-07-28 15:22:59|ERROR|tymar|UrlRequest() Content:
{"strError":"There was an error sending your trade offer.  Please try again later.<br><br>You cannot trade with SilentGuy. (50)"}
2016-07-28 15:22:59|WARN|tymar|UrlPostRetry() Request failed even after 5 tries
[....]

Hm, I haven't changed any setting etc they should be the same as they were back when it still worked...

Okay, there are trade offers but they all seem immediately expired. Also, manually logging in as bot and sending trades works fine.

Manually making an offer seems to have fixed it... KicksSteamForBeingSoBroken

8 years ago*
Permalink

Comment has been collapsed.

Can I set this up on a VPS?

8 years ago
Permalink

Comment has been collapsed.

Why not?

8 years ago
Permalink

Comment has been collapsed.

did the order of forwardkeystootherbots changed with the last update?

8 years ago
Permalink

Comment has been collapsed.

No.

8 years ago
Permalink

Comment has been collapsed.

Well something changed or now just works differently since it now forwarded in a different order. Or, is it now smart enough to forward only to the next bot which doesn't have the game?

8 years ago
Permalink

Comment has been collapsed.

Before update if I sent a key to bot 1 and it it had the key the order was

bot 1 has game
main has game
bot 2 has game
bot 3 doesn't have game

Now it went

bot 1 has game
bot 3 doesn't have game

8 years ago
Permalink

Comment has been collapsed.

8 years ago
Permalink

Comment has been collapsed.

Ok, just weird when things suddenly work differently as it has previously worked exactly the same every time.

8 years ago
Permalink

Comment has been collapsed.

Makes it more difficult to track if all bots already have some game as I can't just check bot 3 which has been easy to check to this point.

8 years ago
Permalink

Comment has been collapsed.

If you want to redeem key on specific bot, then you should use specific bot instance in !redeem command and not keys forwarding feature.

8 years ago
Permalink

Comment has been collapsed.

That's not convenient as I wanted the key to be redeemed by the next bot which doesn't have the key without me having to check which bot already has it. The order was earlier always the same which was very convenient for me. Now I have to either check the bots first or try redeeming the key in wanted order one by one.

But, I'll try figure some new way to work things as conveniently as before.

8 years ago
Permalink

Comment has been collapsed.

That's not convenient as I wanted the key to be redeemed by the next bot which doesn't have the key without me having to check which bot already has it

But you don't have to check it, ASF will do and forward the key further if needed.

8 years ago
Permalink

Comment has been collapsed.

Yes I do if I want the keys to be redeemed by the bots in the same order as before. Or am I missing something obvious? You said said the order is now random due to the changes.

Ps. And yes, the order matters to me, because reasons.
But, like I said. I'll figure some way of doing this the way I want it.

8 years ago*
Permalink

Comment has been collapsed.

No, I said the order is not guaranteed. If bot already owns the game it will forward it further until it gets redeemed somewhere else, what order has to do with it?

8 years ago
Permalink

Comment has been collapsed.

The order matters to me because it makes other things easier for me.

8 years ago
Permalink

Comment has been collapsed.

Well, then forwarding keys feature is not for you, as stated in the wiki.

This option serves the purpose of "I have key X, I want to farm cards off it, and it doesn't matter for me on which bot the key will be redeemed"

8 years ago
Permalink

Comment has been collapsed.

Yes, it just had conveniently worked in a logical reliable order, until now. Even if it was unintentional.

I'll figure out some other way of doing things which works for me.

8 years ago
Permalink

Comment has been collapsed.

Well, if I tell you that this change was required for upcoming feature everybody is looking forward to, it should make you happier :3.

8 years ago
Permalink

Comment has been collapsed.

Hmm, maybe. Based on the description the improvement eliminates unnecessary redeem attemps, but that really isn't the issue for me. I guess I'll see what it does when it is released :)
Excellent improvement in any case!

8 years ago
Permalink

Comment has been collapsed.

As a side note, it's probably because ASF now uses concurrent map for thread-safe concurrent access as opposed to non-thread-safe map used previously. This was done to improve multi-threading.

8 years ago
Permalink

Comment has been collapsed.

2.1.3.1 not working

EDIT: Working after install Net Framework 4.61

8 years ago*
Permalink

Comment has been collapsed.

here is not working too

8 years ago
Permalink

Comment has been collapsed.

before update bots eat key 0000 0001 0002 etc
after update its random ?

8 years ago*
Permalink

Comment has been collapsed.

I can't see any issue here, the order of bots redeeming keys was never guaranteed, it's only guaranteed that all bots will receive a key. This is mentioned several times in the wiki.

8 years ago
Permalink

Comment has been collapsed.

I have named my bots with number too, so they redeeming keys with specific order. Now its random. Same thing with !statusall command. Looks like I need previous version(((
Or download Pre-release!)

8 years ago*
Permalink

Comment has been collapsed.

The change was partially required for upcoming feature everybody is looking forward to, so keys forwarding can be more reliable.

8 years ago
Permalink

Comment has been collapsed.

!statusall results are random anyway(

8 years ago
Permalink

Comment has been collapsed.

They are random, because bots don't have any particular order and never had one.

8 years ago
Permalink

Comment has been collapsed.

same here

8 years ago
Permalink

Comment has been collapsed.

When are you going to install a Eliza-type chat mod so that we can give life to our bots? Bots are people too.

8 years ago
Permalink

Comment has been collapsed.

framerwork install and now works correctly THANKS!

8 years ago
Permalink

Comment has been collapsed.

It kept crashing after the update, so I came here and read the last few comments. I installed the latest .NET and now everything works fine again. SG solves my problems without me even asking :D
Thanks again for developing ASF, it's a great service <3

8 years ago
Permalink

Comment has been collapsed.

dayum! pretty nifty thing. THANK YOU JUSTARCHI !!!!! :D

never heard of this project before, was eager to try it out (have a few unfarmed games in my account ;)
but don't wanna have another computer running. > so I thought let's run it on the computer that runs all the time anyway > the NAS.
Well, doesn't have the right mono version, won't connect to steam even :( , but then I thought, wait a minute docker! so there's a mono docker, so easy as this I got it running on my nas:

  1. mono ASF.exe #find out if everything works tweak config, log in

  2. create dockerfile in the same folder you have ASF.exe and your config folder in:

    FROM mono:latest
    ADD . /home/someplace/asf
    CMD [ "mono",  "/home/someplace/asf/ASF.exe" ]
  3. sudo docker build -t ASFdocker . #build the container

  4. sudo docker run ASFdocker #run the container to test

  5. sudo docker save -o ~/ASFdocker.image ASFdocker #save the container to a file to upload to nas and start there.

  6. Profit!

8 years ago*
Permalink

Comment has been collapsed.

Closed 5 years ago by JustArchi.