Files
my-botty/FIRST-RUN.md
alexpolo1 c04c60ead7 release: v0.9.1 — production cleanup
- Restore FIRST-RUN.md onboarding guide
- Pin environment.yml to requirements.txt (was loose 24 packages)
- Remove debug screenshots from git (debug_*.png -> .gitignore)
- Remove .hermes/ dev plans from git (already in .gitignore)
- Archive botty_next/ test harness to alexpolo1/my-botty-tools
- Archive docs/legacy-go/ to alexpolo1/my-botty-tools
- Move 14 dev tools from repo root to tools/ directory
- Extend .gitignore to prevent dev artifacts re-entering root
- Promote stable branch with all bug fixes from main
- Bump version 0.8.4 -> 0.9.1
2026-08-08 09:59:31 +02:00

5.3 KiB

Botty First Run Guide

After running install.bat and seeing "Installation complete!", follow these steps.


Step 1 — Create your character profile

Botty uses profiles to store your character setup. Each profile is a single file in config/profiles/.

Find your character type

Open config/params.ini in Notepad, scroll to [char], find type=:

If you play... Set type= to
Hammerdin Paladin hammerdin
FoH Paladin fohdin
Blizzard Sorceress sorceress
Bone Necromancer necro
Traps Assassin trapsin
Amazon amazon
Barbarian barbarian
Warlock Druid warlock

Set your keybinds

In config/params.ini, scroll to [char] and match these to your D2R key bindings:

[char]
type=hammerdin              ; your build (see table above)
tp_key=b                    ; Teleport key
stand_still=capslock        ; Hold to stand still (capslock is common)
show_belt=k                 ; Open belt
weapon_switch=w             ; Swap weapons (for CTA builds)
force_move=e                ; Force movement through mobs

Important: stand_still cannot be shift (conflicts with merc healing). capslock is the recommended default.

Pick your runs

Scroll to [routes] in config/params.ini:

[routes]
; Enable the runs you want (1 = on, 0 = off)
run_pindle=1                ; Act 5 Nihlathak temple red portal boss
run_countess=0              ; Act 1 Forgotten Tower
run_andariel=0              ; Act 1 Catacombs
run_arcane=0                ; Act 2 Arcane Sanctuary / Summoner (teleport recommended)
run_trav=0                  ; Act 3 Travincal council
run_mephisto=0              ; Act 3 Durance of Hate
run_diablo=0                ; Act 4 Chaos Sanctuary (teleport recommended)
run_vizier=0                ; Act 4 Chaos, Vizier only (faster than full Diablo)
run_nihlathak=0             ; Act 5 Halls of Vaught (teleport recommended)
run_eldritch=0              ; Act 5 Frigid Highlands, Eldritch only
run_eldritch_shenk=0        ; Act 5 Eldritch then Shenk in the same game

; Execution order (only includes enabled runs)
order=run_pindle

There is no run_shenk option — Shenk is Act 5 and is farmed via run_eldritch_shenk. The commented route list at the top of the [routes] section in params.ini is always the authoritative set of names.

Common combinations:

  • Pindle only: run_pindle=1, order=run_pindle
  • Pindle + Arcane: run_pindle=1, run_arcane=1, order=run_pindle, run_arcane
  • Full farm: Enable all you want, set order= to your preferred sequence

Set difficulty

In [general]:

difficulty=hell     ; normal, nightmare, or hell

Start with nightmare if you're testing. Use hell for serious farming.


Profiles survive git pulls. To save your setup:

  1. Create a folder: config/profiles/mychar/
  2. Create config/profiles/mychar/profile.ini with:
[general]
name=mychar
difficulty=hell

[char]
type=hammerdin
tp_key=b
stand_still=capslock
show_belt=k
weapon_switch=w
force_move=e

[routes]
run_pindle=1
order=run_pindle
  1. Select it. The profile is chosen by config/active_profile.txt, not by name= in params.ini (that field is only a display/label value). Either:

    • start the bot and press end to cycle to your profile, or
    • put the profile folder name on the first line of config/active_profile.txt

    At startup the bot logs which one it loaded: Profile active: mychar (config\profiles\mychar\profile.ini)


Step 3 — Launch

  1. Start D2R — set to 1280x720 windowed mode
  2. Log in and select your character
  3. Double-click run_botty.bat
  4. The bot shows a hotkey menu — press f11 to start or pause it. Press f12 to stop.

The hotkey menu printed at startup is always the source of truth — it reflects your actual config/params.ini keys. Do not press insert: that is restore_settings_from_backup_key, which overwrites your current D2R settings with a previously saved backup.


Step 4 — Optional: Discord notifications

To get bot status in Discord:

  1. Create a Discord webhook: Server Settings → Integrations → Webhooks → New Webhook → Copy Webhook URL
  2. In config/params.ini, under [general]:
custom_message_hook=https://discord.com/api/webhooks/YOUR/WEBHOOK_URL
discord_log_chicken=1
discord_log_errors=1

Troubleshooting

"Could not find botty conda environment" — Run install.bat first.

"D2R is not running" — Launch D2R before running run_botty.bat, or set auto_login=1 in params.ini with your Battle.net credentials.

Bot can't see templates / everything fails — Make sure D2R is 1280x720 windowed, not fullscreen or borderless.

OCR not workinginstall.bat sets up OCR automatically. Check the install output for "tesserocr: OK" or "pytesseract: OK". At least one must work.

Check logs: Open log/log.txt in Notepad for detailed output.


Quick reference: what to edit

File What to change
config/params.ini type=, keybinds, difficulty=, routes, Discord webhook
config/profiles/*/profile.ini Per-character overrides (optional)
config/game.ini Don't edit — templates and UI coordinates
config/shop.ini Don't edit — vendor buy/sell lists