ArchiSteamFarm
C# application with primary purpose of farming Steam cards from multiple accounts simultaneously.
Top Related Projects
Claim available free game promotions from the Epic Games Store.
Desktop implementation of Steam's mobile authenticator app
Quick Overview
ArchiSteamFarm (ASF) is an open-source C# application designed for automated Steam card farming and managing multiple Steam accounts simultaneously. It operates without any Steam client dependencies, making it lightweight and efficient for users who want to idle their Steam games for trading cards without running the actual games.
Pros
- Efficient card farming without running games
- Supports multiple Steam accounts simultaneously
- Cross-platform compatibility (Windows, Linux, macOS)
- Active development and community support
Cons
- Requires some technical knowledge to set up and configure
- May be considered a violation of Steam's terms of service
- Limited GUI, primarily operated through command-line or web interface
- Potential security risks if not configured properly
Getting Started
- Download the latest ASF release from the GitHub releases page.
- Extract the archive to a directory of your choice.
- Create a new file named
config/ASF.json
with the following content:
{
"SteamOwnerID": "your_steam_64_id_here"
}
- Create a new file named
config/Bot1.json
(replace "Bot1" with your desired bot name) with the following content:
{
"SteamLogin": "your_steam_username",
"SteamPassword": "your_steam_password",
"Enabled": true
}
- Run the ASF executable appropriate for your operating system.
- Access the ASF web interface at
http://localhost:1242
for further configuration and management.
For more detailed instructions and advanced configuration options, refer to the official ASF wiki.
Competitor Comparisons
Claim available free game promotions from the Epic Games Store.
Pros of epicgames-freebies-claimer
- Specifically designed for claiming free games on the Epic Games Store
- Lightweight and focused on a single platform
- Easier setup for users only interested in Epic Games freebies
Cons of epicgames-freebies-claimer
- Limited to Epic Games Store, while ArchiSteamFarm supports multiple platforms
- Less active development and community support compared to ArchiSteamFarm
- Fewer features and customization options
Code Comparison
ArchiSteamFarm (C#):
public sealed class Bot : IDisposable {
internal async Task<bool> AcceptDigitalGiftCard() {
if (GiftCards == null || GiftCards.Count == 0) {
return false;
}
// ...
}
}
epicgames-freebies-claimer (JavaScript):
async function claimOffer(offer) {
try {
const { data } = await client.purchase(offer, 1);
console.log(`Claimed ${offer.title} (${data.orderComplete ? "Success" : "Failed"})`);
} catch (err) {
console.log(`Failed to claim ${offer.title} (${err.message})`);
}
}
The code snippets show different approaches:
- ArchiSteamFarm uses C# and has a more complex structure with classes and methods
- epicgames-freebies-claimer uses JavaScript and has a simpler, more focused approach for claiming offers
Both projects serve different purposes, with ArchiSteamFarm being a more comprehensive tool for Steam-related tasks, while epicgames-freebies-claimer is specialized for Epic Games Store freebies.
Desktop implementation of Steam's mobile authenticator app
Pros of SteamDesktopAuthenticator
- Focused specifically on Steam authentication, providing a dedicated desktop solution
- User-friendly interface for managing Steam Guard codes and trade confirmations
- Lightweight and easy to set up for users primarily interested in Steam account security
Cons of SteamDesktopAuthenticator
- Limited functionality compared to ArchiSteamFarm's broader feature set
- Less active development and community support
- Lacks advanced automation capabilities for Steam account management
Code Comparison
ArchiSteamFarm (C#):
public sealed class Bot : IDisposable {
internal async Task<bool> AcceptTrade(ulong tradeID) {
if (tradeID == 0) {
throw new ArgumentOutOfRangeException(nameof(tradeID));
}
return await ArchiWebHandler.AcceptTrade(tradeID).ConfigureAwait(false);
}
}
SteamDesktopAuthenticator (C#):
public class SteamGuardAccount {
public string GenerateSteamGuardCode() {
return GenerateSteamGuardCodeForTime(TimeAligner.GetSteamTime());
}
public string GenerateSteamGuardCodeForTime(long time) {
if (SharedSecret == null) return "";
string sharedSecretUnescaped = Regex.Unescape(SharedSecret);
byte[] sharedSecretArray = Convert.FromBase64String(sharedSecretUnescaped);
byte[] timeArray = new byte[8];
time /= 30L;
for (int i = 8; i > 0; i--) {
timeArray[i - 1] = (byte)time;
time >>= 8;
}
HMACSHA1 hmacGenerator = new HMACSHA1();
hmacGenerator.Key = sharedSecretArray;
byte[] hashedData = hmacGenerator.ComputeHash(timeArray);
byte[] codeArray = new byte[5];
try {
byte b = (byte)(hashedData[19] & 0xF);
int codePoint = (hashedData[b] & 0x7F) << 24 | (hashedData[b + 1] & 0xFF) << 16 | (hashedData[b + 2] & 0xFF) << 8 | (hashedData[b + 3] & 0xFF);
for (int i = 0; i < 5; ++i) {
codeArray[i] = steamGuardCodeTranslations[codePoint % steamGuardCodeTranslations.Length];
codePoint /= steamGuardCodeTranslations.Length;
}
} catch (Exception) {
return null;
}
return string.Join("", codeArray.Select(a => (char)a));
}
}
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
ArchiSteamFarm
Description
ASF is a C# application with primary purpose of farming Steam cards from multiple accounts simultaneously. Unlike Idle Master which works only for one account at given time, while requiring Steam client running in the background and launching 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 operating system with .NET Core runtime, such as Windows, Linux and macOS. ASF is possible thanks to gigantic amount of work done in marvelous SteamKit2 library.
Today, ASF is one of the most versatile Steam power tools, allowing you to make use of many features that were implemented over time. Apart from farming Steam cards, which remains the primary focus, ASF includes bunch of features on its own, such as a possibility to use it as Steam authenticator or chat logger. In addition to that, ASF includes plugin system, thanks to which anybody can further extend it to their needs.
Core features
- Automatic farming 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, focus on security and privacy
- Complex error-reporting mechanism, reliability even during Steam issues and other networking quirks
- Flexible cards farming algorithm, pushing the performance to the maximum while still allowing a lot of customization
- Offline farming, enabling you to skip in-game status and stop confusing your friends with fake playing status
- Advanced support for Steam accounts, including ability to redeem keys, redeem gifts, accept trades, send messages and more
- Support for latest Steam security features, including SteamGuard, SteamParental and 2-factor authentication
- Unique ASF 2FA mechanism allowing ASF to act as a mobile authenticator, if needed
- STM-like integration for trades, both passive (accepting) and active (sending), ASF can help you complete your sets
- Special plugin system, which allows you to extend ASF in any way you wish through your own code
- Powered by .NET Core, cross-OS compatibility, official support for Windows, Linux and macOS
- ...and many more!
For learning about even more ASF features, we recommend starting with our FAQ entry.
Setting up / Help
Detailed guide regarding setting up and using ASF is available on our wiki in setting up section. It's user-friendly guide that shows basic, as well as a bit more complex ASF setup, covering all the required dependencies and other steps that are required in order to start using ASF software.
Compatibility / Supported operating systems
ASF officially supports Windows, Linux and macOS operating systems, but it can work anywhere where you can obtain working .NET Core runtime. Please visit compatibility section on the wiki for more information regarding environments that ASF can work in.
Want to know more?
Our wiki includes a lot of other articles that will tell you about everything in regards to ASF, as well as show you other features that you can make use of. If you have some time to spare and you'd like to find out what else ASF can do for you, we heavily encourage you to take a look!
Top Related Projects
Claim available free game promotions from the Epic Games Store.
Desktop implementation of Steam's mobile authenticator app
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot