An automated player for Bloons TD 6 that helps collect rewards from Collection Events. The bot uses computer vision and automation to play maps repeatedly.
Automatically plays BTD6 Collection Event maps Configurable strategies per map via JSON files Round detection using OCR (Optical Character Recognition) Automated hero placement and tower management Handles game menus and map selection Logging system to track progress and debugging
- Install required dependencies using
pip install -r requirements.txt
- Install Tesseract OCR for your operating system (required for reading game text)
- Configure map strategies in maps directory. Current map strategies may not map to your computer screen and will require adjustment.
- Open BTD6 in fullscreen
- run with
python __main__.py, and shift to the BTD6 screen
app/
├── config/ # Configuration files
│ └── maps/ # Map-specific strategy JSONs
├── game_controller.py # Main controller for tower placement/menu management
├── img_to_str_reader.py # OCR code to determine current round and map name
└── round_monitor.py # Round change event monitor
- Initialize git repo and logging
- Get mouse to click on screen
- Screengrab round counter
- Read from screengrab to determine round #
- Set up event handling for round changes
- Click into a map
- JSON config for per-map strategy
- Validate strategy JSONs
- Get into a collection event map
- Add menu handling for insta monkey collecting
- Confirm stability when map defeats happen
- Confirm stability when level ups occur
- Handle OCR map name variations
- Update JSON to remove "milestones" array