/steam-hour-booster

Farm your in-game hours on Steam

Primary LanguageTypeScriptMIT LicenseMIT

steam-hour-booster

This program allows you to farm your in-game hours on Steam.
You can use it to farm hours for multiple games on multiple accounts at once.
Accounts with Steam Guard enabled are supported.

Uses node-steam-user library for communicating with Steam.

This software is not affiliated with Valve Corporation or Steam.

Result of hours farming

Table of contents

Requirements

Usage

Install dependencies:

bun install

Run:

bun .

If your accounts have Steam Guard enabled, you will be prompted to enter Steam Guard codes for each account. Once logged in, a refresh token will be stored and used to automatically log in to your accounts in the future.

To take full advantage of this program, you should run it on a device (server) that is always running.

To run the program in the background, I recommend using Docker, but you can also setup your own solution.
Before running the program in the background, make sure to run it once normally to be able to enter your Steam Guard codes (if needed).

Configuration

Configuration consists of a JSON file containing a list of accounts to farm hours on.

Copy the default configuration:

cp config-example.json config.json

Edit the configuration file to your liking.

Example configuration:

[
    {
        "username": "foo",
        "password": "bar",
        "games": [730]
    }
]

You can add as many accounts as you want.

The games array contains the IDs of the games you want to farm hours for.
Game IDs can be found on SteamDB.
I believe the maximum amount of games you can play at once on a single account is 32.

You can also add "online": true to make the account appear online & in-game while farming hours. This is disabled by default.

Environment variables

You can provide a .env file to configure environment variables. You probably won't need to modify these anyway.

Copy the template:

cp .env.template .env
Name Description Default value
CONFIG_PATH Path to the config file ./config.json
STEAM_DATA_DIRECTORY Path to the directory where Steam will store it's data ./steam-data
TOKEN_STORAGE_DIRECTORY Path to the directory where Steam refresh tokens will be stored, used for remembering sessions ./tokens

Docker

For Docker usage, see here.

FAQ

Is this safe to use?

People have been using similar programs for years (decades?) without any issues.
Don't take my word for it though, use at your own risk.