Update docs and params defaults

This commit is contained in:
alex
2026-05-25 13:52:39 +02:00
parent 7eb961476e
commit 54f0e3ebcc
3 changed files with 59 additions and 19 deletions

View File

@@ -34,14 +34,14 @@ main.py (main thread)
### Input Layer (`src/input_layer/`)
Native Windows API input replacement (no kernel drivers):
Native Windows API input replacement designed to evade kernel-level anti-cheat (Warden). It bypasses common Python libraries like `pyautogui` or `pynput` which can be easily detected.
| File | Purpose |
|---|---|
| `win_input.py` | ctypes wrappers for `SendInput`, `GetAsyncKeyState`, `GetCursorPos` |
| `mouse_impl.py` | Humanized mouse with Bezier curves, Gaussian distortion, endpoint wobble |
| `hotkey.py` | Polling-based hotkey manager (replaces `keyboard.add_hotkey`) |
| `__init__.py` | Drop-in API: `from input_layer import keyboard, mouse` |
| `win_input.py` | Low-level `ctypes` wrappers for `SendInput`, `GetAsyncKeyState`, `GetCursorPos`. Uses standard Windows user-mode APIs. |
| `mouse_impl.py` | Humanized mouse controller. Features include: Bezier curve trajectories, Gaussian noise (hand tremor), endpoint wobble, and randomized arrival-to-click delays. |
| `hotkey.py` | Polling-based hotkey manager that avoids global hooks. All polling intervals include micro-jitter. |
| `__init__.py` | Drop-in API that shims standard input calls with stealth timing and variable duration automatically. |
All key presses include stealth micro-pauses and variable press duration automatically.
@@ -162,12 +162,15 @@ Singleton that merges config files in priority order:
Supports variable substitution via `[variables]` sections.
### Stealth (`src/utils/stealth.py`)
### Stealth System (`src/utils/stealth.py`)
Three-tier stealth system:
- **Tier 1 (Input)**: Micro-pauses, click variance, key press duration, endpoint wobble
- **Tier 2 (Behavior)**: Wrong waypoint chance, skill mistake chance, skill hesitation
- **Tier 3 (Session)**: AFK breaks, run skipping, personality seed per character
A multi-tiered approach to mimicking human behavior and evading detection:
- **Tier 1: Input Stealth**: Automatic micro-pauses (20-120ms), variable key press durations (20-200ms), and non-linear mouse paths via `input_layer`.
- **Tier 2: Behavioral Stealth**: Probabilistic "mistakes" such as clicking the wrong waypoint (2.5% chance) or skill hesitation (80-300ms) before casting.
- **Tier 3: Session Stealth**: Randomized run durations (+/-15%), AFK breaks (2-12 mins), and shuffling of farming routes between rotations.
All timing across the bot is routed through `utils.misc.wait()`, which applies Gaussian jitter to every sleep call.
### Utilities (`src/utils/`)
@@ -181,6 +184,17 @@ Three-tier stealth system:
| `node_recorder.py` | Record new path nodes |
| `stealth.py` | Stealth behavior randomization |
### Auxiliary Tools
Standalone tools located in the root directory for project maintenance and development:
- `asset_manager.py`: Unified interface for auditing, searching, and optimizing template assets.
- `asset_extractor.py`: Screenshot capture and AI-assisted entity cropping workflow.
- `build.py`: PyInstaller wrapper for building production executables.
- `desktop_snap.py`: Lightweight tool for capturing full desktop screenshots.
- `quest_debug.py`: Debugging interface for the questing system.
- `screenshot_tool.py`: Simple utility for taking D2R client area screenshots.
## Data Flow
```

View File

@@ -36,7 +36,7 @@ Double-click **`run_botty.bat`**. Switch to D2R, go to the hero selection screen
### 1) Graphics and Gameplay Settings
All settings will automatically be set when you execute `main.exe` and press the hotkey for "Adjust D2R settings" (default f9). It is not a 100% thing, in rare cases you might still have to fiddle around with your brightness. I suggest using the "Graphic Debugger" to verify your settings.
All settings will automatically be set when you execute `main.exe` and press the hotkey for "Adjust D2R settings" (default **ctrl+f9**). It is not a 100% thing, in rare cases you might still have to fiddle around with your brightness. I suggest using the "Graphic Debugger" to verify your settings.
**Note**: Make sure that no other external programs adapt your graphics settings (HDR, Geforce Experience, etc.)
### 2) Supported builds
@@ -222,6 +222,32 @@ python tools/click_recorder.py playback # replay with human-like timing
Records mouse clicks with timestamps and replays them with configurable speed and repeat count.
### Asset Manager
A comprehensive tool for managing bot assets (templates). It helps with inventorying, auditing, searching, and optimizing template images.
```bash
python asset_manager.py inventory # List all templates
python asset_manager.py audit # Check for missing/low-quality templates
python asset_manager.py search <name> # Search for a specific template
python asset_manager.py quality # Analyze template quality (SNR, contrast)
python asset_manager.py batch resize 64x64 # Batch process templates
```
Features include similarity checking (to find duplicates), automatic cropping, and validation of template paths.
### Asset Extractor
A workflow tool for capturing and cropping new templates from D2R screenshots. Designed to work alongside an AI agent for rapid asset generation.
```bash
python asset_extractor.py
```
- **F1**: Capture D2R screen to `screenshots/debug/latest.png`.
- **F2**: Crop entities using an AI-generated `latest_annotations.json` file.
- **F3**: List all currently extracted assets.
### Builds
|| [sorceress] | Descriptions |
|| ------------- | ----------------------------------------------------------------------------- |

View File

@@ -18,8 +18,8 @@ bnet_pass=
char_name=ZapZap
; messaging
custom_loot_message_hook=
custom_message_hook=
custom_loot_message_hook=https://discord.com/api/webhooks/1508382502857871380/J4JGQVz0cCyQSM9sSDWvkAUIqb2w7Z2UgEXDQcqBygiDqAgOwhQy5qb0Stj_iQ-RaufH
custom_message_hook=https://discord.com/api/webhooks/1508382502857871380/J4JGQVz0cCyQSM9sSDWvkAUIqb2w7Z2UgEXDQcqBygiDqAgOwhQy5qb0Stj_iQ-RaufH
discord_log_chicken=1
discord_status_count=20
message_api_type=discord
@@ -169,7 +169,7 @@ use_merc=1
atk_len_arc=2.5
atk_len_eldritch=3.0
atk_len_nihlathak=4.0
atk_len_pindle=9.0
atk_len_pindle=3.0
atk_len_shenk=4.0
atk_len_diablo=3.0
atk_len_trav=3.0
@@ -444,11 +444,11 @@ buff_2=
[advanced_options]
; startup hotkeys
select_runs_key=f6
restore_settings_from_backup_key=f7
settings_backup_key=f8
auto_settings_key=f9
graphic_debugger_key=f10
select_runs_key=f9
restore_settings_from_backup_key=f10
settings_backup_key=pause
auto_settings_key=scrolllock
graphic_debugger_key=insert
resume_key=f11
exit_key=f12