/clicker-heroes-sw1ft-bot

A mid/late game bot for Clicker Heroes

Primary LanguageAutoHotkeyMIT LicenseMIT

Clicker Heroes Sw1ft Bot

A mid/late game bot for Clicker Heroes.

Overview

Features

  • Fully automated (optimal zone) Hero Souls farming
  • Can run in the background (behind windows, but not minimized)
  • Supports both Steam and Web clients
    • (Steam) Supports window re-sizing (including Full Screen mode)
  • Hybrid mode support (e.g. 27 minutes idle plus 6 minutes active)
  • Separate active monster clicker script
    • Built in click speed throttle (when mouse enters window)
    • Remotely operated by the main bot script during hybrid/deep runs
  • Supports user defined skill combos (see tools/combo_tester.ahk)
  • Built in re-gilder between rangers
  • Built in configuration assistant
  • Option to auto-save before ascending
  • Progress bar showing remaining time
  • Mis-click prevention with a click safety zone around the in-game tabs (that triggers an automatic script pause when breached)

Minimum recommended game state

To operate as intended, the bot needs a certain minimum game state:

  • Atlas or higher ranger gilded
  • Optimal zone > 1000
  • Iris > 145
  • Siyalatas > 200
    • Argaiv, Libertas/Mammon/Mimzee, Morgulis and Solomon following the Rules of Thumb
  • Maxed: Atman, Bubos, Dogcog, Dora, Fortuna, Khrysos and Kumawakamaru

These recommendations should give you enough gold after ascending with a clickable, to instantly unlock, level and buy all upgrades for every hero down to and including Frostleaf.

Setup

  • In Clicker Heroes, turn off the Show relic found popups option and keep all heroes expanded.
  • Download and install the latest version of AutoHotkey
  • Download all .ahk script files to a new folder (ZIP)
  • Copy the file ch_bot_settings_default.ahk to ch_bot_settings.ahk
  • Set the variables listed in the table(s) below in the newly created file

Mandatory bot configuration variables

Variable Explanation
irisLevel Set to your Iris level in game
optimalLevel Your optimal zone level (1)
speedRunTime The duration of the speed run (1)
gildedRanger The number of your gilded ranger (2)

(1) Set according to the Ancients Optimizer
(2) 1:Dread Knight, 2:Atlas, 3:Terra, 4:Phthalo, 5:Banana, 6:Lilin, 7:Cadmia, 8:Alabaster, 9:Astraea

Optional bot configuration variables

Variable Explanation
deepRunTime The duration of the deep run
hybridMode [true/false] Chain a deep run when the speed run finish
autoAscend [true/false] Warning! Set to true will both salvage relics and ascend without any user intervention!
saveBeforeAscending [true/false] Auto-save before ascending

Note: Not a complete list (see Optional Settings in the bot file)

Mandatory lib configuration variables

These only need to be changed if you run the browser client.

Variable Explanation
SetTitleMatchMode 3 for Steam or regex for browser version
browserTopMargin Browser top margin (3)

(3) Start Windows Spy, then check the relative y position of the top edge of the CH area (below the logo).

Starting the bot

Double-click the ch_sw1ft_bot.ahk file to start the bot. In your taskbar you should see a green H icon.

Note: If your Windows account don't have administrator rights, you might have to start the script by right-clicking it and select Run as Administrator.

Function tests

  1. Ctrl+Alt+F1 should scroll down to the bottom
  2. Ctrl+Alt+F2 should switch to the relics tab and then back

If any of these fail, reload the script with Alt+F5 and try again.

Starting the main speed run loop

If you plan on doing any hybrid (or deep) runs, then start the monster_clicker.ahk script too (unless you set deepRunClicks to false).

After a fresh ascend with an available clickable, start the speed run loop with Ctrl+F1.

Note: Changing settings while a script is running don't take effect until you reload the script.

Main Hotkeys

Hotkey Function
Ctrl+Alt+Shift+F12 Suspend/Unsuspend all other Hotkeys
Ctrl+F1 Loop speed runs
Ctrl+F2 Start a deep run (requires a running monster_clicker.ahk)
Pause Pause/unpause the script
Alt+Pause Abort active speed/deep runs and an initiated auto ascension
Shift+Pause Do not start new speed/deep runs after finishing the current run and ascension
Alt+F5 Reload the script (needed after configuration changes and a client window resize)
Shift+F5 Reload the script after the current run and restart the speedrun loop afterwards

Supplementary Hotkeys

These hotkeys can be executed while a speed or deep run is active.

Hotkey Function
Ctrl+F6 Set previous ranger as re-gild target
Ctrl+F7 Set next ranger as re-gild target
Ctrl+F8 Move reGildCount gilds to the target ranger (will pause the monster clicker if running)
Ctrl+F11 Autosave the game
Shift+Ctrl+F1 Toggle the autoAscend flag
Shift+Ctrl+F2 Toggle the screenShotRelics flag
Shift+Ctrl+F3 Toggle the playNotificationSounds flag
Shift+Ctrl+F4 Toggle the playWarningSounds flag
Shift+Ctrl+F5 Toggle the showSplashTexts flag
Shift+Ctrl+F11 Toggle the saveBeforeAscending flag

Test Hotkeys

Hotkey Function
Ctrl+Alt+F1 Should scroll down to the bottom
Ctrl+Alt+F2 Should switch to the relics tab and then back
Alt+F1 Test the getClickable() function
Alt+F2 Test the initRun() function
Alt+F3 Test the speedRun() function
Alt+F4 Test the ascend() function

Questions or comments?

Check the FAQ or visit the original script home on Reddit.