Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b33135f704 | ||
|
|
67e03fc938 | ||
|
|
3c39cfa5d9 | ||
|
|
be1f1ce08c | ||
|
|
7b7815a021 | ||
|
|
5b70c24c7b | ||
|
|
636745f47b | ||
|
|
4d083bee83 | ||
|
|
fe8c6d5de0 | ||
|
|
857052c75d | ||
|
|
bf7ce99c5f | ||
|
|
b6260327b7 | ||
|
|
8a85f38819 | ||
|
|
c2bd99af18 | ||
|
|
5e43da1f02 | ||
|
|
f5fb8561c6 | ||
|
|
eb6dd85063 | ||
|
|
fd2d57fb0c | ||
|
|
fa1297e15e | ||
|
|
e184db7045 | ||
|
|
d46624e932 | ||
|
|
6d88ccb379 | ||
|
|
2d9307cb94 | ||
|
|
2aff1800ef | ||
|
|
17b7fcc2a2 | ||
|
|
1e1b4a2da0 | ||
|
|
68f2f0f3ce | ||
|
|
05fe77a5d0 | ||
|
|
c2a017c517 | ||
|
|
4c52045f08 | ||
|
|
f1d228c9d7 | ||
|
|
0f156be4d6 | ||
|
|
86db356ca4 | ||
|
|
2c53524e79 | ||
|
|
ea74a3b43f | ||
|
|
308c74ac4f | ||
|
|
ede3dcd91b | ||
|
|
8a773f4e5c | ||
|
|
496340be8d | ||
|
|
5c877c428e | ||
|
|
876df0dd5e | ||
|
|
d69a9942ac | ||
|
|
cec307cf9c | ||
|
|
825e787dbe | ||
|
|
702a2ebfca | ||
|
|
0156b80ee6 | ||
|
|
2043c45d48 | ||
|
|
503be01463 | ||
|
|
84a5b6257f | ||
|
|
81d513b0c9 | ||
|
|
e64891dbbf | ||
|
|
3bd3364b4b | ||
|
|
afefdfd6b4 | ||
|
|
7c5e94979b | ||
|
|
93d2a4bc8b | ||
|
|
9559cf0e23 | ||
|
|
aacb344f32 | ||
|
|
69870e73c5 | ||
|
|
ea8fc96f83 | ||
|
|
54d27cace8 | ||
|
|
7e365fb1cf | ||
|
|
ca9e459de6 | ||
|
|
2efcd66d99 | ||
|
|
6e38fd5dd7 | ||
|
|
37a4c8e0b2 | ||
|
|
872fcccb00 | ||
|
|
9644e7a36e | ||
|
|
19af63f965 | ||
|
|
ee29e0918b | ||
|
|
571f2101e8 | ||
|
|
18c5344af7 | ||
|
|
f7b1c834c9 | ||
|
|
bbda12709f | ||
|
|
0b6b1bfa2a | ||
|
|
01284ae62e | ||
|
|
af5e4ffebe | ||
|
|
e6491d8642 | ||
|
|
589defb38e | ||
|
|
b0d3552121 | ||
|
|
6554ad167b | ||
|
|
5822151d14 | ||
|
|
8b438b25ff | ||
|
|
3459d4a35e | ||
|
|
84d1bf1559 | ||
|
|
0d6c02486a |
@@ -14,9 +14,10 @@ run.onefile-build/
|
||||
generated/
|
||||
botty_v*/
|
||||
custom.ini
|
||||
config/custom.ini
|
||||
*info_*.png
|
||||
.vscode
|
||||
.vs/
|
||||
info_screenshots/
|
||||
loot_screenshots/
|
||||
.venv
|
||||
.venv
|
||||
|
||||
@@ -14,23 +14,16 @@ It is highly recommended to let botty run with /nopickup active. This will reduc
|
||||
|
||||
### 1) Graphics and Gameplay Settings
|
||||
|
||||
All settings will automatically be set when you execute `run.exe` and press the hotkey for "Adjust D2R settings" (default f9). Note that D2R should not run during this process, or if it does you will have to restart afterwards. 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 f9). Note that D2R should not run during this process, or if it does you will have to restart afterwards. 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**: There have been issues reported with image sharpening being truned on via the graphic card settings itself outside of D2R. Try turning it off when running botty. Also HDR should be truned off.
|
||||
|
||||
### 2) Supported builds
|
||||
|
||||
#### Sorceress
|
||||
|
||||
You can put any skills on left and right attack and see if it works out. E.g. Glacial Spike on left attack and Blizzard or right attack.
|
||||
Adjust the hotkeys in the **custom.ini** or **param.ini** for the `[char]` and `[sorceress]` section accordingly. Check out the param.ini section in the Readme for more details on each param.
|
||||
|
||||
#### Hammerdin
|
||||
|
||||
Your standard Hammerdin. Same story as with sorc, set up your skills in the .ini file to what you have in D2R or the other way around. When running more than just pindle or shenk you need to start with a full tome of tps in your inventory. If you do not have an engima, leave the teleport hotkey empty in the .ini file and the hammerdin will run with vigor instead.
|
||||
Check the documentation for **param.ini** further down. Currently you can set skills for Sorceress, Hammardin and Trapsin. The later two can also be set up without teleport.
|
||||
|
||||
#### Other builds
|
||||
|
||||
You can "highjack" the sorc or hdin config to also run other builds. There will be a more flexibel char system comming up in the upcoming releases.
|
||||
You can "highjack" any config to also run other builds. Or properly implement a new build and make a PR : )
|
||||
|
||||
### 3) Start Location
|
||||
|
||||
@@ -38,7 +31,7 @@ Open up D2R and wait till you are at the hero selection screen. Make sure the ch
|
||||
|
||||
### 4) Start Botty
|
||||
|
||||
You can either run from python. Follow [development.md](development.md) for that. Or you download the a prebuilt release [here](https://github.com/aeon0/botty/releases). Start `run.exe` in the botty folder. Focus your D2R window window and press the start key (default f11). You can always force stop botty with f12.
|
||||
You can either run from python. Follow [development.md](development.md) for that. Or you download the a prebuilt release [here](https://github.com/aeon0/botty/releases). Start `main.exe` in the botty folder. Focus your D2R window window and press the start key (default f11). You can always force stop botty with f12.
|
||||
|
||||
## Graphic Debugger
|
||||
|
||||
@@ -63,60 +56,67 @@ run_pindle=1
|
||||
run_shenk=0
|
||||
```
|
||||
|
||||
| [general] | Descriptions |
|
||||
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| name | Name used in terminal and discord messages |
|
||||
| saved_games_folder | Optional folder path of Diablo 2 : Ressurrected saved games |
|
||||
| monitor | Select on which monitor D2R is running in case multiple are available |
|
||||
| max_game_length_s | Botty will attempt to stop whatever its doing and try to restart a new game. Note if this fails, botty will attempt to shut down D2R and Bnet |
|
||||
| exit_key | Pressing this key (anywhere), will force botty to shut down |
|
||||
| resume_key | After starting the exe botty will wait for this keypress to atually start botting away |
|
||||
| [general] | Descriptions |
|
||||
| -------------------- | --------------------------|
|
||||
| name | Name used in terminal and discord messages |
|
||||
| saved_games_folder | Optional folder path of Diablo 2 : Ressurrected saved games |
|
||||
| monitor | Select on which monitor D2R is running in case multiple are available |
|
||||
| max_game_length_s | Botty will attempt to stop whatever its doing and try to restart a new game. Note if this fails, botty will attempt to shut down D2R and Bnet |
|
||||
| exit_key | Pressing this key (anywhere), will force botty to shut down |
|
||||
| resume_key | After starting the exe botty will wait for this keypress to atually start botting away |
|
||||
| graphic_debugger_key | Pressing this key will start a debug mode to check if the color filtering works with your settings. It also includes the item search and marks items it would pick up with red circles |
|
||||
| logger_lvl | Can be any of [info, debug] and determines how much output you see on the command line |
|
||||
| randomize_runs | If 0, the order will always be pindle -> eldritch/shenk. If 1 the order will be random. |
|
||||
| difficulty | Set to `normal` `nightmare` or `hell` for game difficulty |
|
||||
| custom_discord_hook | Add your own discord hook here to get messages about drops and in case botty got stuck and can not resume |
|
||||
| logger_lvl | Can be any of [info, debug] and determines how much output you see on the command line |
|
||||
| randomize_runs | If 0, the order will always be pindle -> eldritch/shenk. If 1 the order will be random |
|
||||
| difficulty | Set to `normal` `nightmare` or `hell` for game difficulty |
|
||||
| custom_message_hook | Add your own message hook here to get messages about drops and in case botty got stuck and can not resume, discord webhook is default |
|
||||
| discord_status_count | Number of games between discord status messges being sent. Leave empty for no status reports.
|
||||
| info_screenshots | If 1, the bot takes a screenshot with timestamp on every stuck / chicken / timeout / inventory full event. This is 1 by Default, so remember to clean up the folder every once in a while |
|
||||
| loot_screenshots | If 1, the bot takes a screenshot with timestamp everytime he presses show_items button and saves it to loot_screenshots folder. Remember to clear them once in a while... |
|
||||
| loot_screenshots | If 1, the bot takes a screenshot with timestamp everytime he presses show_items button and saves it to loot_screenshots folder. Remember to clear them once in a while... |
|
||||
|
||||
| [routes] | Descriptions |
|
||||
| ------------ | ------------------------------------------------------------------------ |
|
||||
| run_trav | Run Trav in each new game. Select "1" to run it "0" to leave it out. Specific trav gear is suggested |
|
||||
| run_pindle | Run Pindle in each new game. Select "1" to run it "0" to leave it out. |
|
||||
| run_eldritch | Run Eldritch in each new game. Select "1" to run it "0" to leave it out. |
|
||||
| run_shenk | Run shenk in each new game. Select "1" to run it "0" to leave it out. |
|
||||
| run_nihlatak | Run Nihlatak in each new game. Select "1" to run it "0" to leave it out. (Teleport required) |
|
||||
|
||||
| [char] | Descriptions |
|
||||
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| type | Build type. Currently only "sorceress" or "hammerdin" is supported |
|
||||
| [char] | Descriptions |
|
||||
| ------------------ | -------------------------------------------------------------------------------------------------|
|
||||
| type | Build type. Currently only "sorceress" or "hammerdin" is supported |
|
||||
| casting_frames | Depending on your char and fcr you will have a specific casting frame count. Check it here: https://diablo2.diablowiki.net/Breakpoints and fill in the right number. Determines how much delay there is after each teleport for example. |
|
||||
| stash_gold | Bool value to stash gold each time when stashing items |
|
||||
| atk_len_pindle | Attack length for hdin or number of attack sequences for sorc when fighting pindle |
|
||||
| atk_len_eldritch | Attack length for hdin or number of attack sequences for sorc when fighting eldritch |
|
||||
| atk_len_shenk | Attack length for hdin or number of attack sequences for sorc when fighting shenk |
|
||||
| num_loot_columns | Number of columns in inventory used for loot (from left!). Remaining space can be used for charms |
|
||||
| take_health_potion | Health percentage when healing potion will be used |
|
||||
| take_mana_potion | Mana percentage when mana potion will be used. Currently belt managment is not very clever and it is safest to only pick up health pots and make sure mana reg is enough for pindle to not need mana pots. |
|
||||
| heal_merc | Merc health percentage when giving healing potion to merc |
|
||||
| chicken | Will chicken (leave game) when player health percentage drops below set value, range 0 to 1. Set to 0 to not chicken. |
|
||||
| merc_chicken | Will chicken (leave game) when merc health percentage drops below set value, range 0 to 1. Set to 0 to not chicken. |
|
||||
| show_items | Hotkey for "show items" |
|
||||
| inventory_screen | Hotkey to open up inventory |
|
||||
| stand_still | Hotkey for "stand still". Note this can not be the default shift key as it would interfere with the merc healing routine. |
|
||||
| tp | Hotkey for using a town portal |
|
||||
| belt_rows | Integer value of how many rows the char's belt has |
|
||||
| show_belt | Hotkey for "show belt" |
|
||||
| potion1 | Hotkey to take potion in slot 1 |
|
||||
| potion2 | Hotkey to take potion in slot 2 |
|
||||
| potion3 | Hotkey to take potion in slot 3 |
|
||||
| potion4 | Hotkey to take potion in slot 4 |
|
||||
| belt_rejuv_columns | Number of belt columns for rejuv potions |
|
||||
| belt_hp_columns | Number of belt columns for healing potions |
|
||||
| belt_mp_columns | Number of belt columns for mana potions |
|
||||
| cta_available | 0: no cta available, 1: cta is available and should be used during prebuff |
|
||||
| weapon_switch | Hotkey for "weapon switch" (only needed if cta_available=1) |
|
||||
| battle_order | Hotkey for battle order from cta (only needed if cta_available=1) |
|
||||
| battle_command | Hotkey for battle command from cta (only needed if cta_available=1) |
|
||||
| stash_gold | Bool value to stash gold each time when stashing items |
|
||||
| gold_trav_only | Hacky config that will restrict gold pickup to trav only. misc_gold must be set to 1 for this to have any effect |
|
||||
| use_merc | Set to 1 for using merc. Set to 0 for not using merc (will not revive merc when dead), default = 1 |
|
||||
| atk_len_trav | Attack length for hdin fighting trav (note this atk length will be applied in 4 different spots each) |
|
||||
| atk_len_pindle | Attack length for hdin or number of attack sequences for sorc when fighting pindle |
|
||||
| atk_len_eldritch | Attack length for hdin or number of attack sequences for sorc when fighting eldritch |
|
||||
| atk_len_shenk | Attack length for hdin or number of attack sequences for sorc when fighting shenk |
|
||||
| num_loot_columns | Number of columns in inventory used for loot (from left!). Remaining space can be used for charms |
|
||||
| take_health_potion | Health percentage when healing potion will be used |
|
||||
| take_mana_potion | Mana percentage when mana potion will be used. Currently belt managment is not very clever and it is safest to only pick up health pots and make sure mana reg is enough for pindle to not need mana pots. |
|
||||
| heal_merc | Merc health percentage when giving healing potion to merc |
|
||||
| chicken | Will chicken (leave game) when player health percentage drops below set value, range 0 to 1. Set to 0 to not chicken. |
|
||||
| merc_chicken | Will chicken (leave game) when merc health percentage drops below set value, range 0 to 1. Set to 0 to not chicken. |
|
||||
| show_items | Hotkey for "show |
|
||||
| inventory_screen | Hotkey to open up |
|
||||
| stand_still | Hotkey for "stand still". Note this can not be the default shift key as it would interfere with the merc healing routine. |
|
||||
| force_move | Hotkey for "force move" |
|
||||
| tp | Hotkey for using a town |
|
||||
| belt_rows | Integer value of how many rows the char's belt has |
|
||||
| show_belt | Hotkey for "show |
|
||||
| potion1 | Hotkey to take potion in slot |
|
||||
| potion2 | Hotkey to take potion in slot |
|
||||
| potion3 | Hotkey to take potion in slot |
|
||||
| potion4 | Hotkey to take potion in slot |
|
||||
| belt_rejuv_columns | Number of belt columns for rejuv potions |
|
||||
| belt_hp_columns | Number of belt columns for healing potions |
|
||||
| belt_mp_columns | Number of belt columns for mana potions |
|
||||
| pre_buff_every_run | 0: Will only prebuff on first run, 1: Will prebuff after each run/boss |
|
||||
| cta_available | 0: no cta available, 1: cta is available and should be used during prebuff |
|
||||
| weapon_switch | Hotkey for "weapon switch" (only needed if cta_available=1) |
|
||||
| battle_order | Hotkey for battle order from cta (only needed if cta_available=1) |
|
||||
| battle_command | Hotkey for battle command from cta (only needed if cta_available=1) |
|
||||
|
||||
| [sorceress] | Descriptions |
|
||||
| ------------- | ----------------------------------------------------------------------------- |
|
||||
@@ -136,14 +136,19 @@ run_shenk=0
|
||||
| redemption | Optional Hotkey for redemption |
|
||||
| vigor | Optional Hotkey for vigor |
|
||||
|
||||
| [trapsin] | Descriptions |
|
||||
| -------------- | ----------------------------------------------------------------------------------- |
|
||||
| teleport | Optional Hotkey for teleport. If left empty trapsin will run instead of teleport. |
|
||||
| skill_left | Optional Hotkey for Left Skill |
|
||||
| burst_of_speed | Optional Hotkey for Burst of Speed |
|
||||
| fade | Optional Hotkey for Fade |
|
||||
| shadow_warrior | Optional Hotkey for Shadow Warrior |
|
||||
| lightning_sentry | Required Hotkey for Lightning Sentry |
|
||||
| death_sentry | Required Hotkey for Death Sentry |
|
||||
|
||||
| [advanced_options] | Descriptions |
|
||||
| -------------------- | --------------------------------------------------------------------- |
|
||||
| pathing_delay_factor | A linear scaling factor, between 1 and 10, applied to pathing delays. |
|
||||
| template_threshold | Threshold to find templates used during pathing. |
|
||||
|
||||
| [items] | Descriptions |
|
||||
| --------- | ----------------------------------------------------------------------------------------------------------------------- |
|
||||
| item_type | 0: Item will not be picked up. 1: Item will be picked up. 2: Item will be picked up and a discord message will be sent. |
|
||||
|
||||
## Support this project
|
||||
|
||||
|
||||
@@ -42,5 +42,7 @@
|
||||
"Chat Gem Mode": 1,
|
||||
"Item Name Display": 1,
|
||||
"Chat Background": 0,
|
||||
"Always Run": 1
|
||||
"Always Run": 1,
|
||||
"Quick Cast Enabled": 0,
|
||||
"Display Active Skill Bindings": 0
|
||||
}
|
||||
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
After Width: | Height: | Size: 5.1 KiB |
|
After Width: | Height: | Size: 8.9 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
|
After Width: | Height: | Size: 9.5 KiB |
|
After Width: | Height: | Size: 39 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 64 KiB |
|
After Width: | Height: | Size: 78 KiB |
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 46 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 70 KiB |
|
After Width: | Height: | Size: 7.3 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 6.5 KiB |
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.5 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 7.4 KiB |
|
After Width: | Height: | Size: 7.2 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 4.5 KiB |
|
After Width: | Height: | Size: 5.8 KiB |
|
After Width: | Height: | Size: 585 KiB |
|
After Width: | Height: | Size: 523 KiB |
|
After Width: | Height: | Size: 647 KiB |
|
After Width: | Height: | Size: 76 KiB |
|
After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 137 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 132 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 36 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 62 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 95 KiB |
|
After Width: | Height: | Size: 119 KiB |
|
After Width: | Height: | Size: 115 KiB |
|
After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 99 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 93 KiB |
|
After Width: | Height: | Size: 90 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 70 KiB |
|
After Width: | Height: | Size: 91 KiB |
|
After Width: | Height: | Size: 148 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 75 KiB |
|
After Width: | Height: | Size: 35 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 86 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 67 KiB |
|
After Width: | Height: | Size: 49 KiB |
|
After Width: | Height: | Size: 53 KiB |
|
After Width: | Height: | Size: 14 KiB |