Skip to content

AutoBanana automates opening and closing of games. Features include running on startup, timed sessions. Easily configure settings in config.ini and track actions with detailed logging. Perfect for automating your gaming routine!

License

Notifications You must be signed in to change notification settings

Beelzebub2/AutoBanana

Repository files navigation

Static Badge Static Badge User Count GitHub issues GitHub forks GitHub stars GitHub contributors GitHub Actions Build Status

AutoBanana

Now supports multiple games and multiple accounts!

AutoBanana is an automated script designed to manage the opening and closing of games through Steam. The primary features of AutoBanana include:

Features

  • Modern web UI: A Flask-powered dashboard with an animated gradient background, a "fake console" feed, and smooth transitions. All controls live in the browser instead of the terminal.
  • Adjustable schedule: Configure the run interval (run_interval_seconds) and wait time between launch/close cycles directly from the UI. No more fixed three-hour loop.
  • Single instance + tray: AutoBanana keeps a single instance alive, opens the existing UI if already running, and (on Windows) adds a system tray icon to reopen the dashboard.
  • Automatic Startup: Configure the script to run on system startup (Windows) with one toggle.
  • Logging: Logs all actions to AutoBanana.log and streams them into the web console for quick monitoring.
  • Account switching: Switches between all saved Steam accounts that have the "Remember me" checkbox enabled.

Installation

You can find the latest releases here.

Simply download and run AutoBanana-win64.exe

I am aware of the false positive on the windows defender and working on a solution

Manual Installation

  • Download the repository: here
  • Extract the contents of the zip file
  • Install python Make sure to add python to PATH it's an option when installing!
  • Run setup.bat
  • Insert game ID's into the config file separated by a comma ',' (you can find the ids on the game properties under the updates page on library or steam shop link). The config now lives under %APPDATA%\AutoBanana\config.ini on Windows or ~/.config/AutoBanana/config.ini on Linux/macOS. A synced copy is kept alongside AutoBanana.exe for convenience—edit whichever file you prefer and AutoBanana will migrate the newer version automatically on the next launch.

Linux / Ubuntu quick start

  • Install Python 3 and Steam (sudo apt install python3 python3-pip steam) and sign into Steam once so loginusers.vdf exists.
  • If Steam lives outside the default ~/.local/share/Steam, set STEAM_PATH=/path/to/steam before running.
  • Run bash setup.sh (or pip3 install -r requirements.txt followed by python3 AutoBanana.py).
  • Windows-only features: adding to system startup and console title sizing. Everything else runs cross-platform.

Development

  • Clone the repository: git clone https://github.com/Beelzebub2/AutoBanana/
  • Navigate to the project directory: cd AutoBanana
  • Install dependencies:
pip install -r requirements.txt
pip install -r requirements-dev.txt
  • Run the script: python AutoBanana.py

Manually Building

  • Navigate to the project directory: cd AutoBanana
  • Build with pyinstaller: pyinstaller -F -n AutoBanana-win64 -i banana.ico AutoBanana.py

Release Notes

Pending Features:
!   Add option to trigger game install thourgh steam://install/gameid with a Xseconds delay
!   Fix executable false positive on antivirus
!   Add UI using customtkinter to mess with config file

v2.3 02/09/24

+   Organized the countdown code
+   Added a startup logo
+   Added Docker file for easy setup
+   Added switch steam account functionality
+   Organized code moving themes to theme_manager.py and steam account changer to steam_manager.py

v2.2 28/07/24

+   Added flake file for developers. Use "pip install flake8" then in project file "flake8 AutoBanana.py"
!   Started working on the Autoupdater
+   Added more themes (configurable in config)
+   Changes console title
+   Overall optimizations thanks to @SavageCore

v2.1 10/07/24

+   Fixed Logo not showing correctly, thanks to @SavageCore

v2.0 09/07/24

+   Fixed check steam games location a bit more optimized
+   Fixed logo.txt missing
+   Fixed error with moving files across drives (by removing the necessity to do that)

v1.9 04/07/24

+   Added function to download missing files
+   Automatically removes games that are not installed from config.ini
+   Now detects Keyboard interrupt

v1.8 03/07/24

!   Started looking for ways to fix false positive on executable
+   Removed a duplicate function
+   Added documentation to functions (generated with Mintlify Doc Writer)

v1.7 02/07/24

+  Now Downloads the config.ini if it's missing
+  Executable version available
+  Now adds icon to executable

v1.6 27/06/24 Thank you guys :)

+  Actually opens all games, thanks to @SavageCore
+  Improved get_steam_games, thanks to @SavageCore
+  Fixed startup error, thanks to @SavageCore
+  More games like banana in the config thanks to @Gesugao-san

v1.5 24/06/24

+   Actually closes the other games now

v1.4 20/06/24

+   Added total games count to UI
+   Added multiple games support
-   Removed install verification

v1.3 19/06/24

+   Now checks if game was installed correctly
+   Code rework

v1.2 17/06/24

+   Added statistics tracker
+   Fixed bug with UI

v1.1 17/06/24

+   Improved UI
+   Organized the code
+   Added time until next open
+   Added start on startup

About

AutoBanana automates opening and closing of games. Features include running on startup, timed sessions. Easily configure settings in config.ini and track actions with detailed logging. Perfect for automating your gaming routine!

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •