π€ AI-Powered Automation Toolkit for florr.io β Smart AFK protection, auto-pathfinding, combat AI, and custom model training
Florr Powerful Tools is a comprehensive automation framework for the popular florr.io browser game. It combines computer vision, deep learning, and path-planning algorithms to provide intelligent game assistance β without cheating, just making the game more enjoyable.
Whether you need AFK protection, want to auto-navigate maps, train custom AI models, or collect training data β this toolkit has you covered.
| Feature | Description | Status |
|---|---|---|
| π‘οΈ AFK Protection | Auto-detect & solve AFK verification challenges | β Stable |
| πΊοΈ Auto Pathfinding | Lazy Theta* algorithm for intelligent navigation | β Stable |
| βοΈ Auto Combat | Smart mob detection, targeting & fighting | β Stable |
| π§ AI Training | Build custom models with PyTorch + YOLO26 | β Stable |
| π Data Collection | Harvest gameplay data for model training | β Stable |
| πΈ Visual Testing | Browser screenshot + functional test harness | β New |
- Python 3.9β3.11
- Windows 10/11, macOS, or Linux
- (Optional) GPU for training
# Clone the repo
git clone https://github.com/PANP2010/florr_powerful_tools.git
cd florr_powerful_tools
# Create virtual environment
python -m venv venv
source venv/bin/activate # Linux/macOS
# venv\Scripts\activate.bat # Windows
# Install dependencies
pip install -r florr_assistant/requirements.txt
# Install Playwright for browser testing (optional)
pip install playwright
playwright install chromiumcd florr_assistant
python main.py# Full test suite (screenshot + module tests)
bash browser_test_env/run_all_tests.sh
# Module tests only
python browser_test_env/module_tester.py
# Screenshot tests only
python browser_test_env/screenshot_tester.py --florrflorr_powerful_tools/
βββ florr_assistant/ # π§ Main integrated assistant
β βββ core/ # Core services (engine, logger, config, platform)
β βββ ui/ # PyQt5 UI (main window, overlay, data collection)
β βββ modules/ # Feature modules
β βββ afk/ # AFK detection & response
β βββ pathing/ # Navigator + map classifier
β βββ combat/ # Fighter + target selector
β βββ data_collector/ # Training data collection
β βββ stats/ # Statistics gathering
β
βββ browser_test_env/ # π Browser test harness (Playwright)
β βββ screenshot_tester.py # Headless screenshot capture
β βββ module_tester.py # Import & functionality tests
β βββ run_all_tests.sh # One-command test runner
β
βββ florr-auto-afk-main/ # Standalone AFK detection
βββ florr-auto-pathing/ # Standalone pathfinding
βββ florr-auto-framework-pytorch/ # AI training framework
βββ florr-auto-sszone/ # Auto mob zone farming
β
βββ upload_package/ # π¦ Kaggle training package
βββ train_package/ # ποΈ Local training package
βββ florr_knowledge_base/ # π Game wiki & data
Never get kicked for being idle again. The AFK module:
- Uses YOLO models (
afk-det.pt,afk-seg.pt) to detect AFK windows (>90% accuracy) - Plans a path through verification using an improved Dijkstra algorithm
- Responds to LLM-powered chat challenges
- Integrates via WebSocket browser extension (Tampermonkey)
# Quick test
cd florr-auto-afk-main
pip install -r py311-requirements.txt
python segment.pyBuilt on the Lazy Theta* path-planning algorithm β smarter than A* because it accounts for line-of-sight:
- β 8-map support: Ocean, Desert, Jungle, Garden, Hel, Anthell, Sewers, and more
- β Real-time player position detection via HSV color filtering
- β Stuck detection & recovery with random directional nudges
- β Configurable target maps and navigation intervals
# Quick test
cd florr-auto-pathing
python main.pyFight smarter, not harder:
- YOLO mob detection across 77+ mob types
- Priority-based targeting with rarity weighting (Mythic 3.7Γ, Ultra 1.8Γ, Legendary 0.6Γ)
- Auto-equip switching and petal management
- Sandstorm detection & avoidance
# Quick test
cd florr-assistant
python -c "from modules.combat import Fighter; print('Combat module loaded')"Train your own custom models:
| Model | Architecture | Input | Output |
|---|---|---|---|
| Base | 3-layer MLP | 73-dim state | 5-dim action |
| Attention | Multi-head attention | 73-dim state | 5-dim action |
Training stack: PyTorch + Ultralytics YOLO26 + NumPy
# Kaggle / Google Colab (free GPU)
!python scripts/train_cloud.py --mode all --num-samples 5000 --epochs 100 --batch 16
# Local (needs GPU)
python scripts/train_cloud.py --mode all --num-samples 10000 --epochs 150 --batch 32YOLO26 vs YOLOv8:
| Metric | YOLOv8s | YOLO26s | Improvement |
|---|---|---|---|
| mAP50-95 | 44.8% | 48.6% | +3.8% |
| Params | 11.2M | 9.5M | -15% |
| CPU speed | baseline | +43% | faster |
The project includes a browser test harness powered by Playwright:
# Run everything
bash browser_test_env/run_all_tests.sh
# Just module import tests
python browser_test_env/module_tester.py
# Screenshot tests
python browser_test_env/screenshot_tester.py --florr
python browser_test_env/screenshot_tester.py --url https://github.comTest coverage:
| Category | Status |
|---|---|
| Core modules (logger, config, engine, events) | β Pass |
| Feature modules (AFK, pathing, combat, data) | β Pass |
| OpenCV (cv2) | β Pass |
| PyTorch | |
| YOLO (ultralytics) | |
| GUI (PyQt5) |
modules:
afk:
enabled: true
idle_threshold: 10
detection_interval: 3
pathing:
enabled: true
target_map: "ocean"
avoid_danger: true
combat:
enabled: false
safe_distance: 200
attack_distance: 150
ui:
theme: "dark" # light / dark
language: "zh-cn" # en-us / zh-cnfrom florr_assistant.modules.base import BaseModule
class MyModule(BaseModule):
name = "my_module"
version = "1.0.0"
description = "My awesome feature"
priority = 50 # Lower = runs later
dependencies = [] # e.g. ["map_classifier"]
def _on_start(self):
self._log("My module started")
def _on_tick(self):
pass # Called every loop iteration
def _on_stop(self):
self._log("My module stopped")| Category | Technologies |
|---|---|
| Language | Python 3.9+ |
| Computer Vision | OpenCV, PIL, NumPy |
| Deep Learning | PyTorch, Ultralytics (YOLO26) |
| GUI | PyQt5, Tkinter |
| Automation | PyAutoGUI, PyWin32, mss |
| Web | FastAPI, WebSocket |
| Testing | Playwright, pytest |
Contributions are welcome! Please:
- Fork the repo
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
GPL v3 β see LICENSE for details.
- Shiny-Ladybug β original florr-auto-afk project
- Ultralytics β YOLO framework
- The florr.io community π
Made with β€οΈ for the florr.io community
