[Tool] GDAutocaster - play šŸŽ¹ builds with ease, autocasting of skills, combos, faster / automatic camera, autohiding of items, centered Inquisitor Seal and more for all games!

Total combo mayhem with not less than 20 skills at your disposaaaaal ! :smiley:

One guy wanted to have Aether Ray on Left Click and in all games people would like to have whatever they like on LMB so this feature also needs to be added

[hold buttons to have another button held]
hold1=LButton:1 (or hold1=LButton,Shift:1)
mode=1
retain_native_key_press=true

So far Iā€™m thinking of the following modes:

  1. holds ā€œ1ā€ if you double click/press the button (LButton) in this case

  2. holds ā€œ1ā€ after 200 ms to retain standard function of a button without any interruption (for example Left Click)
    Iā€™ve tested that in this mode running is still possible (if you hold LMB (Aether Ray is cast) and then quickly press and hold again)

  3. straight up holds a button without any delay or anything (maybe not so useful for LMB but could be used for other keys)

This is going to be names combo holds and the previous feature combo presses:

[combo presses]
delay=300
combo1=RButton:7,3
combo2=h:t,1,2,3,t

[combo holds]
combo1=LButton:1 (or combo1=LButton,Shift:1)
mode1=1

Please share if you have another mode idea.

And one more thing. If you have 2 movement skills (i.e. Vireā€™s Might + from Augment) I strongly recommend you to assign them to one button. Itā€™s super comfy!

In GDAutocaster this would be something like (holding Shift spams 2 and 5)

[2]
hold_keys=Shift

[5]
hold_keys=Shift

and if you donā€™t use the program, probably something like this

SetTimer, Move, 100

Move()
{
    if (GetKeyState("Shift", "P"))
    {
        Send {2}
        Send {5}
    }
}

By the way you can see in the code above that the timer is running constantly from the start of the program. This is deliberate. Most of the timers in GDAutocaster are like this. I havenā€™t experienced any downsides of this and it vastly reduces the code complexity and logic.

So any chance on getting this to work in Diablo 2? Iā€™ve been playing single player Median XL and itā€™s great but as a Paladin It would be amazing to autocast my timed auras. I canā€™t tell if itā€™s hitting the toggle to turn it on. Any help would be appreciated.

Well I tested it and the program technically works (but for some reason only if you run it like as Admin [had to google that]), it switches the selected skill to some aura.

The problem is in D2 you have to not only select a skill but also Right Click and I donā€™t have a feature of pressing two buttons periodically and I donā€™t plan to add it.

Diablo 2 is popular so there must be many AutoHotkey program for that or maybe just use the following program/script and tweak it to your needs (you have to download AutoHotkey, copy this code to some_name.ahk and then run it as admin to test it):
D2Autocaster.ahk.txt (532 Bytes)
(need to remove .txt and run as admin, click ` to have F1, Right Click, F2 spammed every 5s)

#NoEnv
#SingleInstance Force
#MaxHotkeysPerInterval 1000 
#MaxThreadsPerHotkey 1
#HotkeyModifierTimeout -1
#KeyHistory 50
#persistent
SetWorkingDir %A_ScriptDir%
SetTitleMatchMode, 3

global game := "Diablo II"
global autocasting := false
SetTimer, Aura, 5000

Loop
{      
    Suspend % WinActive(game) ? "Off" : "On"   
    Sleep, 1000
}

`::autocasting ^= WinActive(game)

Aura()
{
    if (WinActive(game) and autocasting)
    {
        Send {F1}
        Click, Right
        Send {F2}
    }
}

Below you can see how itā€™s working in the video.
I click ` and then F1, Right Click, F2 is spammed every 5 seconds.
(5s for testing so that I donā€™t have to wait 30 seconds)
[F1 is meant to be some aura, F2 is the skill we go back to after casting F1 Aura]

Can you give me somehow savefile with your character so I can make it work? Because I have 1-level Paladin and cannot test multiple auras :wink: then I could compile it so that you donā€™t have to download AHK. Or maybe you are able to tweak the code above to your needs yourself. With one skill I spam F1, RMB, F2 one after another with any delay and it works, not sure if you donā€™t have to put some Sleep delay between the presses if we put multiple auras there (to the Aura function).

save.zip (20.8 KB)

paste it in: C:\Users(your user name)\AppData\Roaming\MedianXL\save
This is easy to get to if you open up your median xl loader and go to the settings, then in the bottom right thereā€™s a direct link to the folder.

Screenshot__170_-removebg-preview

Am I supposed to use other code in the ini file to get this working? Doesnā€™t work for me

  1. You need to run the program as an administrator
  2. toggle_key If you press this key in-game, every time_between_casts milliseconds thereā€™s the following thing going on:
    • First button from the skill_sequence (F1 in this example) is pressed
    • Then Right Click is pressed
    • Then thereā€™s a delay of time_between_presses milliseconds (needed for multiple skills to be cast properly)
    • <repeat the 3 steps above for the 2nd button in the skill_sequence (F2 in this example)>
    • ā€¦
    • <repeat the 3 first steps for the the next to last button in the skill sequence (F2 in this example)>
    • The last button (F3 in this example) is just pressed (thereā€™s no delay or Right Click after that)

So yeah, you need to tweak the config to your needs.

As someone who has trouble finding keyboard configurations that my hands donā€™t resent me for, Iā€™m really glad to have this option!

Iā€™m curious to know, are there any significant barriers that might make transposing this idea to controller difficult?

Well I donā€™t know and donā€™t really have the time to explore the topic.
I guess if I had some simple working program in AutoHotkey that remaps buttons, sends presses and works with Steam, adjusting GDAutocaster in a similar manner should be very easy.

However I think GDAutocaster v4 will be pretty much complete and then I can try to explore the controller topic
(I love playing with a controller so thereā€™s certainly a motivation)

Program got too big and unreadable so Iā€™ve started using Git, put it on GitHub and now Iā€™m slowly dividing it into separate files :wink:


You can download it if you want some new features I mentioned in the previous posts like

  • binding multiple spells to a single key
  • channeling skills to single/double click + hold
  • changing autocasting keys from 0, 1, ā€¦, 9 [default] to whatever keys youā€™d like

Inquisitor skill in the center of the screen etc.

If we combine it with another feature of GDAutocaster (holding one button makes another button being pressed down) we can achieve

Automatic Central Inquisitor Seal + Channeling Skill with just Right Click
3v3leb
Program run with the following config (in-game RButton is empty, 9 is Seal and 7 is FoI). Not released, only on GitHub.

[combo holds]
combo1=RButton:7

[center casts]
cast1=RButton:9

(you need Combo Hold feature for Flames of Ignaffar (7) because if you simply bind it to Right Click in-game, the Inquisitor Sealā€™s animation is interrupted and the spell is not cast)

[edit] I worked on combining features into one button more and even centered Inquisitor Seal + Word of Pain + Channeling skill all on Right click are possible. Word of Pain can be multiple spell combo. Since every feature has a delay option, you can adjust them, space them out to be certain every skill is cast (for example start channeling after 300 ms):

[combo holds]
combo1=RButton:7

[combo presses]
combo2=RButton:0

[center casts]
cast1=RButton:9

1 Like

Iā€™ve been working more on Center Casts and combining it with standard combos.

First video is center Seal + Wendigo cast on Right Click while running
Second is Storm Box + Word of Pain + center Seal and Wendigo, all on Right Click


Itā€™s impossible to put it into words how comfortable and lazy this is.

Hi, i would love to use this program. I have downloaded it and it does not seem to be loading, are there any written instructions on how to install it?

Please download the most update-to-date version from here:

Sometimes it doesnā€™t work just after running it (you need to either restart it or click Suspend keys [Tab in this example] two times). But then itā€™ll always work from the get go. You donā€™t need to turn it off ever gain (unless you change your config obviously).

[general]
suspend_key=Tab

You donā€™t have to install, you just run the .exe You wonā€™t see anything besides an icon on your taskbar.

You can ask me what features you want if youā€™d like some help with config (need some experience to know what features are best suited for different stuff)

Besides whatā€™s in OP there are new features:

  • combo presses - press one button for casting 4 skills or i.e. 3 buffs from the second quickbar, basically chains of inputs with chosen time delays and initial delay so that Grim Dawn actually registered them. Think casting your debuffs with one key once every 8 seconds or something like that

  • combo holds with double click also - mainly used for binding skills to Left Click or Double Left Click + Hold if Grim Dawn doesnā€™t allow you to

  • center casts for casting i.e. Inquisitor Seal or Wendigo Totem on top of your self

  • combining features into one button, for example you can create a combo where first centered skill is cast and then 3 skills normally where your cursor is

  • suspend_hotkeys renamed to suspend_key

The config in the .zip archive shows all the features and stuff you can configure at the moment.

Hereā€™s a sample config for my current character:

  • suspend key turn off camera, combos, master toggle and hold

  • master hold turn on/off stuff in [9] and [0]

  • master toggle turns on/off [8] which is Wind Devil on 8 in Grim Dawn cast automatically asap if I press master toggle or 8

  • stuff in [combo presses] is for casting all my auras in the second quickbar by clicking R (T is set to switch to another quickbar in grim dawn)

  • center cast is for casting Wendigo Totem on top of my character when I start Force Waving with Space

  • camera is for fast rotation with A i D (60 degress by one click)

  • [8] is for automatically casting Wind Devil as Iā€™ve already said, presses 8 every 500 ms (I like having as many Wind Devils as possible to proc devos)

  • [0] and [9] basically combines two movement skills into one button (you just hold it and two buttons responsible for those two movements skills are spammed)

Forcewave Lightning Warder

[general]
suspend_key=Tab
capslock_remap=m

[autocasting]
master_hold=`
master_toggle=`

[combo presses]
combo1=r:t,1,2,3,4,t

[center casts]
cast1=Space:7
inq_seal=false
initial_delay=200

[camera]
angle=60
counter_clockwise=a
clockwise=d
rotation_key=k
delay=40

[8]
toggle_key=8
delay=500

[9]
hold_keys=Shift
delay=100

[0]
hold_keys=Shift
delay=100

With my Korvan Wyrm with 9 active skills I reduced number of buttons needed from 9 to 3
In my opinion Itā€™s really worth it to invest your time into understanding and using it.

What should I do if I want to move character and use an skill with just left click, but the skill cannot be bound to it? The skill been Panettiā€™s Replicating Missile with a different template which makes not possible to bind it to left click.

Well, the only practical thing I can think of is binding Panettiā€™s to double Left Click. Because if we bound Panettiā€™s to LMB normally (which is possible with GDAutocaster) then you will not be able to move with Lef Click (well unless we bind it to long Left Click hold but it would not be practical). Not sure if itā€™s ok to you

If youā€™d like to test it, download the program from here: https://www.dropbox.com/s/gx15rw30z2axdvp/GDAutocaster.zip?dl=0
but change the config to the following

  • (Panettiā€™s is bound to ā€œ5ā€)
    (in the file from DropBox itā€™s ā€œoā€ so you need to change it)

  • delay1 is the time between the 2nd Left Click and when 5 is held
    (in the file from DropBox itā€™s 0 but you need to increase it a bit to work without issues but you can experiment with lowering this value, maybe even to 0, maybe itā€™s only an issue with my laptop)

  • time_gap is the time window after 1st Left Click that you need to press 2nd Left Click in for ā€œ5ā€ PRM to be held

So I will still have to do single left clicks to attack? It canā€™t be auto attack when you mouse over mobs?
Btw can you explain how to make it work, where should I put those files?

This script doesnā€™t read gameā€™s memory in any way so it doesnā€™t know whether your cursor is over mobs or not. This makes it impossible to have Panettiā€™s work precisely as if it was bound to Left Click.

But I can provide the following for example:

  • when you hold Left Click, you move normally
  • when you press Left Click two times (double Left Click) and hold it, you start spamming PRM

Program

  • To run the program, you just double click the .exe (you will then see it in the taskbar). Thatā€™s all you need to do, it can be running all the time, doesnā€™t need to suspended etc. To have it read modified config you need to restart it

  • but before that you need to change GDAutocaster.ini content to what Iā€™ve quoted in my previous post
    (with this config you need to have your Panettiā€™s on 5 in-game but of course you can change it)

  • the files donā€™t need to be anywhere specifically, just .exe and .ini in the same folder, also nothing is installed