- Read character .key file from Saved Games / D2R install dir / APPDATA - Auto-fill empty hotkeys in [char] section (inventory, belt, potions, etc.) - Match skill slots to configured skills for validation - Normalize key variants (left alt ~ alt, left shift ~ shift) - params.ini values always take priority over detected bindings - Warn on genuine mismatches between config and .key file
3.9 KiB
Botty Singleplayer Test Plan
Pre-Flight Checklist
Before running, verify:
- D2R installed and running at 1280x720 windowed
- D2R language is English
- Offline play is available (no battle.net required for singleplayer)
- Character is a sorceress with Town Portal + Teleport (level 65+)
- Belt setup: Col 1=HP potions, Col 2=MP potions, Col 3-4=Rejuv
- Skill hotkeys match params.ini:
- F1 = Nova (right skill, pre-selected)
- F3 = Energy Shield, F4 = Frozen Armor, F5 = Static Field
- 5 = Teleport, 6 = Town Portal
- W = weapon switch, 7 = Battle Orders, 8 = Battle Command
Phase 1: Launch Test
Goal: Verify botty starts without import errors.
-
Open cmd, activate the botty env: conda activate botty cd C:\Users\alex\Downloads\my-botty
-
Run: python src\main.py
Expected:
- "============ Botty 0.8.1-dev [name: bigfont] ============="
- Hotkey table (F7, F8, F9, F10, F11, F12)
- Console idles waiting for hotkey input
- No Python errors in console
If it crashes here, we fix the import error before proceeding.
Phase 2: Auto Settings
Goal: Apply the required D2R graphics settings so botty's template matching works.
Preparation:
- D2R must be running (on main menu or character selection)
- Press F9 in botty console
Expected:
- Botty reads your Settings.json and rewrites it
- Botty sets launch options: -mod bigfont -txt
- Console prints: "Adapted settings successfully"
- You restart D2R and it runs at 720p with low settings
After this, restart D2R once.
Phase 3: Character Selection
Goal: Botty detects the character selection screen and clicks Play.
- Start D2R, navigate to character selection
- Highlight your Nova sorc character (left-click it)
- Make sure the "Offline" tab is selected (bottom left of char selection)
- Press F11 in botty
Expected console output:
- "Wait for Play button" / "Found Play Btn"
- D2R difficulty key pressed (H = Hell)
- D2R loading screen appears (black screen)
Press F12 to stop botty once the loading screen appears.
If botty can't find the Play button:
- Make sure D2R is at 720p windowed (not fullscreen, not borderless)
- Make sure the window is not minimized
Phase 4: Full Run Cycle (Travincal)
Goal: Complete first run without manual intervention.
- D2R at character selection, sorc selected
- Press F11
- Watch botty:
- Selects character, starts game
- Loads into town (Kurast for Act 3 / Lut Gholein)
- Pre-buffs: Energy Shield -> Battle Orders -> Battle Command
- Casts Town Portal on ground, steps through
- Teleports to Travincal area, enters the dungeon
- Finds Travincal, attacks with Nova (right click)
- Travincal dies
- Picks up loot
- Town Portal back to town
- Save & Exit
- Returns to hero selection
- Restarts automatically
Watch for problems:
- Character doesn't move -> check Always Run is ON
- Character doesn't attack -> check Nova is pre-selected right skill
- Character doesn't TP -> check teleport hotkey (5)
- Character gets stuck pathing -> bot may need to adjust, or D2R settings off
Phase 5: Second Run (Eldritch/Shenk)
After Trav completes, botty starts a new game and does the second configured run. Same flow, different destination.
Phase 6: Multi-Game Stability
Run 5-10 complete rotations without touching the keyboard. Watch for:
- Consistent runs (no crashes or freezes)
- Potions being consumed
- Bot recovering from failures (auto-restart via chicken/save-and-exit)
- Memory/Python stability
Hotkeys
F9 = Auto Settings (reconfigure D2R graphics) F11 = Start/Pause bot F12 = Stop bot
Troubleshooting
- "No play button found" -> D2R not at main menu, or wrong resolution
- Character doesn't move -> "Always Run" not enabled in D2R options
- Character doesn't attack -> right skill not set to Nova, or hotkey wrong
- "Failed to detect MAIN_MENU" -> restart D2R, make sure window is visible
- OCR errors on character name -> ensure -mod bigfont is in launch options