d2qol 1.5.0 - Quality of Life Utility

Threads that no longer serve a purpose. Read-only.
User avatar
ryunp
Lava Lord
97 | 73
Great Popularity Badge
Has a thread with over 50.000 views
Common Love Badge
Earned over 20 cookies
Common Guide Badge
Created a complete character guide
Great Contribution Badge
Is an active collaborator / developer
Image

Median XL's end-game requires highly repetitive crafting mechanics. Working with the cube slowly eats away at game time, but can also cause physical stress on the wrists and fingers. These actions are a perfect target for automation since the behavior is simple and well defined. This was designed foremost as a crafting aid utility, but it easily extends out to normal gameplay.

The scope of functionality is very simple which allows support for all resolutions. This utility does nothing more than click-on-command in locations you have specified. There is no memory peeking, no automated gameplay logic, no cheating mechanics. The 'Actions' currently provided all aim to save wrist movement and finger usage. Very handy when both precision and quantity are needed, such as buying oils or reallocating stat points.

[Download v1.5.0] [Github]

► Features
► GUI Preview
► Bugs and Feedback
► Changelog
Edited by ryunp 6 years.
User avatar
Mord0r_
Pit Knight
104 | 3
ryunp wrote:This is a little tool I built and feel it may be helpful to others.

https://github.com/ryunp/d2qol

The github page has some pictures and GIFs to showcase the functionality.

Diablo II is old. The interface is old. Carpal Tunnel is real. This AutoHotKey program provides assistance for common tasks.

The goal is to replace the small, tedious, repetitive clicking sequences.

Many gameplay activities are based on RNG, requiring huge amounts repitition. Despite being 'braindead' activities, the compounding nature adds up quickly.


There is room for expansion on the concept. It's extremely simple, as previous versions I attempted would blow up into building a full on framework of sorts.

If Marco approves/approved of this nice!
User avatar
ryunp
Lava Lord
97 | 73
Great Popularity Badge
Has a thread with over 50.000 views
Common Love Badge
Earned over 20 cookies
Common Guide Badge
Created a complete character guide
Great Contribution Badge
Is an active collaborator / developer
I've updated the post to give a better sense of what the heck this thing is.
User avatar
Quirinus
Team Member
1510 | 184
Common Posting Badge
Posted over 1.000 messages
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Common Supporter Badge
Donated 1 time
Legendary Contribution Badge
Median XL Team Member
btw I've already done something similar a long time ago on the old forum, you can check it out here to see if you can find something useful in it (it's in AutoIt3 tho):
http://www.medianxl.com/t5397-d2-move-item-v0-74

I don't have time to continue developing and fixing the few bugs on my script, or by contributing on the github project of your script, so it's nice to see someone doing something similar. coding/scripting stuff like that is so fun though. xD

Random comments on my script:
► Show Spoiler


@mordor: there's no problem using it on realm, since it's like d2clicker, and we allow that.

I'll move this thread to general discussion.
"but if it's simple it's not that hard" - Quirinus 2017
"small things like this are not a big deal" - Quirinus 2017
User avatar
hellgrind
Mangler
458 | 21
Common Popularity Badge
Has a thread with over 10.000 views
Common Love Badge
Earned over 20 cookies
And what if your qube is full ? it will be dropped on ground or your script will crash ?
User avatar
Segolia
Djinn
541 | 38
Great Popularity Badge
Has a thread with over 50.000 views
Common Love Badge
Earned over 20 cookies
Common Guide Badge
Created a complete character guide
hellgrind wrote:And what if your qube is full ? it will be dropped on ground or your script will crash ?


Most likely not. I assume his script doesen't check to see if the cube is full. From the looks of it, the scripts simply moves your mouse to certain points on the screen to perform the actions that you request. The only thing it checks for is where your cube is, which is defined by you.
DeaTh
Cog
206 | 16
Quirinus wrote:btw I've already done something similar a long time ago on the old forum, you can check it out here to see if you can find something useful in it (it's in AutoIt3 tho):
http://www.medianxl.com/t5397-d2-move-item-v0-74

Can you reupload this file? Links are broken.
User avatar
Quirinus
Team Member
1510 | 184
Common Posting Badge
Posted over 1.000 messages
Legendary Popularity Badge
Has a thread with over 250.000 views
Great Love Badge
Earned over 100 cookies
Common Supporter Badge
Donated 1 time
Legendary Contribution Badge
Median XL Team Member
"but if it's simple it's not that hard" - Quirinus 2017
"small things like this are not a big deal" - Quirinus 2017
User avatar
ryunp
Lava Lord
97 | 73
Great Popularity Badge
Has a thread with over 50.000 views
Common Love Badge
Earned over 20 cookies
Common Guide Badge
Created a complete character guide
Great Contribution Badge
Is an active collaborator / developer
hellgrind wrote:And what if your qube is full ? it will be dropped on ground or your script will crash ?


It will attempt to place in the cube. Since the cube it full, it won't go into the cube and stay 'picked up'.

Segolia wrote:
hellgrind wrote:And what if your qube is full ? it will be dropped on ground or your script will crash ?


Most likely not. I assume his script doesen't check to see if the cube is full. From the looks of it, the scripts simply moves your mouse to certain points on the screen to perform the actions that you request. The only thing it checks for is where your cube is, which is defined by you.


Indeed. This simply performs a small sequence of mouse moves and clicks. There is no conditional logic that acts on game state.

I've tried building more complex versions that deal with detecting game state (without memory reading) but my architecture would spiral out of control.

This may not be super useful for most gameplay, but there is many times where a ton of cube usage is needed, and this simple utility makes a huge difference.

Quirinus wrote:I'll move this thread to general discussion.


Thanks, wasn't sure where to put it. Saw other AHK/AI threads and didn't want to overrun the larger thread categories. And yeah, definitely fun stuff. Your program is pretty slick, looks like lots of work put in there. Impressive you managed all the responsibilities without total collapse :)
DeaTh
Cog
206 | 16

Quirinus, could you tell me about settings related to the ping? I can't set up script to work with ladder latency (around 140-200ms)
I tried change settings MouseClickDelay/MouseClickDownDelay and sleep_click but this has no effect :(