Git Product home page Git Product logo

bhbot's Introduction

BHBot

GitHub release GitHub Release Date GitHub issues by-label GitHub last commit GitHub All Releases GitHub top language

What is BHBot?

BHBot is a program that automates different aspects of the Bit Heroes game. It is a non intrusive program that works by opening up a Chromium window and controls it as a normal user would. It works by taking a screenshot every few seconds, detecting cues from the screenshot and then simulating mouse clicks. BHBot is a good example of how to create such bots to automate flash games or other browser games (it can be easily adjusted to play some other game).

Once configured and running the bot is designed to run unattended indefinitely.

Features

This bot will automatically farm items, familiars and schematics running the following:

  • Dungeons (zones 1 to 9)
  • World Bosses (Orlag, Nether or Melvin)
  • Raids (1 to 7)
  • Gauntlet / Trials
  • PvP / GvG
  • Expedition / Invasion

The level/difficulty for each activity can be defined in the settings file. The bot can also:

  • Bribe specific familiars defined in the settings file (with limits so you dont waste gems)
  • Revive fallen party members in Trials/Gauntlets/Raids
  • Save shrines for use before the boss in Trials and Raids
  • Use consumables to keep 25% IF/XP/Gold boosts running unattended
  • Strip items for PvP to lower TS
  • Solo certain zones for bounty requirements
  • Collect completed bounties
  • Collect fishing baits
  • Claim all weekly rewards
  • Screenshot and close PMs
  • Open skeleton chests
  • Handle incomplete teams
  • Notify you on your mobile devices through Pushover on how it is doing and if any issue is present

If the bot detects a "Disconnected" dialog, it will pause its execution for an hour giving the user a chance to play manually. Disconnects are usually result of another instance logging into the game. This is why bot pauses in case it detects it.

Download

You can download a release ready BHBot.jar from the releases page.

For the latest functionality it is recommended to compile your own version as there are frequent commits with bug-fixes and new functionality between major releases.

First time setup

See the wiki for the first time setup guide.

Important

  • While bot is running, do not interfere with the Chromium window that the bot has open via chromedriver. That means don't open menus and click around since that may confuse the bot and it could fail to do its tasks (which could lead to crashing it).
  • If you want to continue using your computer while running the bot use, the 'hide' command to minimize the window. The bot clicks on certain buttons and cues and expects certain thing to pop up, and if they don't (due to user interaction), then it will fail to function properly.
  • If you are running the bot in Windows, you may want to run it under a separate account in order for it to not interfere with your work.

Commands

Here is a list of most common commands used with the bot (must be typed in the console window, or, if you use web interface, in the command input box):

  • do dungeon|expedition|gauntlet|gvg|pvp|raid|trials: force the bot to perform a dungeon . Example: "do raid". Used for debugging purposes more or less (bot will automatically attempt dungeons).
  • hide: hides Chromium window.
  • pause [mins]: pauses bot's execution. Useful when you want to play the game yourself (either from the same Chromium window, or by starting another Chromium window). The bots is paused untill are resue command is issued or, if specified, for a number of minutes equal to mins
  • plan <plan_name>: if you have different configurations you can use this command to swith between them. BHBot will look for file named <plan_name.ini> in the plans/ subfolder
  • pomessage [message]: use this command to verify that the Pushover integration is correctly configured. Message parameter is optional and if not specified, a standard messabe will be sent.
  • print: Using this command, you can print different informations regarding the bot
    • familiars: output the full list of supported familiars in the encounter management system
    • version: output the version of BHBot. This is is useful when reporting a bug
  • readouts: will reset readout timers (and hence immediately commence reading out resources).
  • reload: will reload the 'settings.ini' file from disk and apply any changes on-the-fly.
  • restart: restarts the chromedriver (closes Chromium and opens a fresh Chromium window). Use only when something goes wrong (should restart automatically after some time in that case though).
  • resume: resumes bot's execution.
  • set: sets a setting line, just like from a 'settings.ini' file. Example: "set raids 1 3 100", or "set difficulty 70". Note that this overwritten setting is NOT saved to the 'settings.ini' file! Once you issue command, it will get discharged.
  • shot [prefix]: takes a screenshot of the game and saves it to 'shot.png'. If a prefix is specified it will be used instead of the default shot one.
  • show: shows Chromium window again after it has been hidden.
  • stop: stops the bot execution (may take a few seconds. Once it is stopped, the console will close automatically).

Finally

Hopefully this bot will prove useful to you, if you have any questions just raise an issue! Enjoy :-)

Author

I, Betalord, am the original author of the bot. I have been using the bot until my character achieved level 165. On 29th of September 2017 (a 1st year anniversary of the Bit Heroes game) I have quit the game and released the bot to the public.

If anyone is willing to continue maintaining and developing the bot contact me so that I can give you the repository rights.

bhbot's People

Contributors

betalord avatar fortigate avatar ilpersi avatar jodriscoll avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.