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

"Error at line 11.
#Include file ā€¦/CenterCasts.ahk cannot be opened.

The program will exit."

Should I put all the include files in the same folder or do I have to edit the GDAutocaster.ahk script?
Deleting the include files wonā€™t make it open either.

ā€œ#Include CenterCasts.ahk
#Include ComboHolds.ahk
#Include CommonFunctions.ahk
#Include Defaults.ahk
#Include HotkeysCollector.ahk
#Include PeriodicCasts.ahkā€

1 Like

You must have older .zip where I put .ahk instead of .exe by mistake.
Please download the program once more from here


(thereā€™s exe and ini there)
but change .iniā€™s content to what I quoted before

Hereā€™s sample Physical Forcewave Witchblade config for the following build
https://www.grimtools.com/calc/RVvBBkkV

Forcewave Physical Witchblade

[general]
suspend_key=Tab
^ suspends all the hotkeys, sometimes you have to press it 
  two times for hotkeys to work after starting the program

capslock_remap=m
^ for capslock to not blink, m set to map in-game

[autocasting]
master_hold=`
master_toggle=`
^ hotkey to stop [8], [9], [0] from working
  (Blood of Dreeg and two Movements Skills)

[camera]
angle=60
counter_clockwise=a
clockwise=d
rotation_key=k
delay=10
^ 60 degree manual keyboard camera rotation, k set to rotate in-game

[periodic casts]
cast1=RButton:6
delay=100
^ War Cry(6) cast instantly on RMB and spammed, Forcewave is on RMB in-game

[combo presses]
combo1=r:1,2,3,4,5
^ press R to have buffs on from 1,2,3,4,5 cast (Oleron, Battle Command, etc.)

combo2=RButton:7
initial_delay2=true
delay2=500
stop_on_release2=true
^ Curse of Frailty(7) cast after 500 ms on RMB, Forcewave is on RMB in-game, 
  half second later so that War Cry doesn't interrupt it

[8]
toggle_key=8
delay=13000
^ Blood of Dreeg(8) cast every 13 seconds, (de)activate with Master Toggle ' or 8

[9]
hold_keys=Space
delay=100
^ Jumping Movement Skill(9) spammed on Space so that you can hold
  this key, move and jump as soon as off cooldown at the same time

[0]
hold_keys=Shift
delay=100
^ Similar to [9] but it's Blitz(0)

hi, thanks for all your work on this program. it seems very helpful and hopefully it can help my build.

so I have a primal strike spammer shaman that replaces left click auto attack. problem is, I also have to upkeep savagery which is also an auto attack replacer. I donā€™t want any optional features, just to have them both be cast on my left click. savagery is on the 0 key.

cheers ~

Please download the program from here
https://github.com/kowariantny/GDAutocaster/raw/master/GDAutocaster.exe

Savagery is the hardest skill to autocast, I made better autocasting specially for it.
In fact, itā€™s the melee Savagery that is the hardest to autocast properly.

Because with ranged Savagery every monster is in range and when my program fires Savagery, then Savagery is fired in-game as well.

Whereas with melee, youā€™re not always in the monsterā€™s range if fighting groups and my program doesnā€™t know when to fire it. It doesnā€™t know the precise moment you approach the monster because youā€™re just constantly holding LMB. Well unless you use the tricking Iā€™m writing about later which is to

  • approach the enemy
  • and then release + press LMB

But this is only the problem in case of weak, one-shottable group of enemies

periodic casts work in the following way

  • after clicking the autocasted attack fires immediately
  • after that while you still holding LMB itā€™s cast every delay milliseconds

How to play with it properly

  • it will work 100% fine on enemies that take some time to kill (not one-shotted)

  • it may not work to well on group of enemies that are one-shotted (on the other hand you donā€™t need Savagery against them either too much)

  • how improve the autocasting performance against groups of weak enemies

    • as I mentioned before it fires Savagery right after you click

      • so to be sure itā€™s fired against a very one-shottable enemy youā€™re approaching , you need to first get in the melee range and then release and press LMB for the program to fire Savagery in a controllable way
  • another issue is if you move your cursor on top of your character while moving, Savagery may attack in-place in a vary jarring way

GDAutocaster.ini

[general]
suspend_key=Tab

[periodic casts]
cast1=LButton:0
delay1=1900

suspend_key:

  • can be change to ` for example
  • is for disabling the Savagery autocasting
  • also sometimes you need to press it 2 times for the program to start working after starting it

You may also experiment with delay1 for some reason

  • for example lowering may be useful if youā€™re fighting groups of very weak enemies
  • and you donā€™t want to think about controlling Savagery with ā€˜Approach, Release and then Press + Hold methodā€™

yeah dude its working! thank you so much. when I move the cursor on top of my character it does cast savagery, but its not that big of a deal since the radius is small enough and I can train myself to avoid it. interestingly enough if iā€™m holding left click and I move it fast enough over my character it doesnā€™t cast savagery which is nice. it has trouble proccing against one shot enemies like you said, but again not a big deal. it does work if I click instead of hold most times.

anyway thanks again man this is a huge help.

1 Like
Comfortable item pickup - hold a button to pick up stuff on the ground
s - bound to pick-up in-game

[autocasting]
pressed_buttons=s

[s]
hold_keys=s
delay=100

Does this have a radius associated with it or do you have to be on top of the object/run over it to pick it up ? It would be sweet if it just picks up everything you can see on screen.

No it doesnā€™t. You would have to mod it I guess. But still it makes picking up items a lot more pleasant.

Very true. I use the GI pickup settings atm. Only problem there is that is picks up all the greens, most of which I donā€™t want. A better filter in GrimDawn like Filterblade or StupidFatHobbit for POE would be nice

Also other possibility comes to mind

  • Savagery on double left click

    • you double left click + hold on a boss, get stacks of Savagery, then release + single left click + hold for Primal Strike

For

  • a change of gameplay/fun minigame

  • if you donā€™t like a small chance of having accidental Savagery attack while just moving

  • 0% chance of Savagery while fighting weak, one-shootable monsters

that sounds cool, altho what I have now works fine. if you donā€™t mind typing it up so that I can save it somewhere that would be sweet. also might be a good idea to have this part and your first reply to my post in the OP so noobs like me can see it and try to do it themselves.

Even though i have used autohotkey several times in everything from wow classic to torchlight and diablo. I canā€™t for the life of me figure out how to just refresh my Phantom Falcon pet in Dawn of Masteries. it has a living time of 64 seconds BUT i play with grim internals at 2.3x speed.

https://github.com/kowariantny/GDAutocaster/raw/master/GDAutocaster.exe

GDAutocaster.ini

[general]
suspend_key=Tab

[2]
toggle_key=2
delay=25000
  • make a config file GDAutocaster.ini in the same folder as GDAutocaster.exe with the content above

  • start the .exe it should be seen in the task bar or the task manager

  • make sure no other AHK programs are running at the same time

  • get in-game and press 2 (assuming the skill is on 2 on the hotbar)

  • wait and see if the skill is autocast every 25 seconds

  • when you turn in on with 2 it may start autocasting in a random moment, for example it will start in 8 seconds, but after that it will be cast every 25 seconds

  • suspend key is to turn on/off the ability to turn on/off autocasting by pressing 2
    or sometimes turning on/off autocasting by pressing 2 may not work after starting the .exe and you may need to press Suspend Key two times

  • the program should remeber that you have the skill autocast which means that

    • if you turn off the game/minimize it, the autocasting should resume by itself
  • press 2 again to disable the autucasting of the skill

  • you donā€™t need to turn autocasting with the same buttons as the skill, you can have it on seperate button, for example

[general]
suspend_key=`

[2]
toggle_key=Tab
delay=25000

There was a bug in Periodic Cast with initial_delay set. Itā€™s now fixed.
https://github.com/kowariantny/GDAutocaster/raw/master/GDAutocaster.exe

1 button 7 spells config: - hereā€™s sample configuration for a character with many spells to cast

Of course this is sample configuration. You can change timings (if you find they need adjustment), stuff around if youā€™d like. For example you can try lowering the delay and check if it still works between Plague of Corruption, Bloody Pox, Curse of Frailty from 200 ms to 150 if youā€™d like more optimization. Or lowering the initial delay before Sigil/Totems spam casting.

Weā€™re using 3 buttons

  • one for casting spells
  • one for Rune of Displacement (i.e. Space)
  • one for moving (Left Mouse Button)

You can make additional separate button for long duration spells if you want (Curse of Frailty, Plague of Curruption) instead of having all spells on one button.

[general]
suspend_key=Tab

[autocasting]
master_hold=`
master_toggle=`

[combo presses]
This is combo for your buffs from the second hotbar (y is for switching hotbars)
combo1=k:y,1,2,3,4,y
delay1=400

This is combo for initial cast of long duration spells while clicking RButton
I put Bloody Pox and Plague of Corruption before Curse because they need precise cast on target
Also added first Devouring Swarm cast Here 
combo2=RButton:6,9,8,5
delay2=200

[periodic casts]
Wendigo Totem / Storm Totem / Sigil spamming; Initial delay is not to interrupt Bloody Pox/Curse etc
cast1=RButton:1,2,3
initial_delay1=800
delay1=50

Devouring Swarm - it's has very small range and pretty small duration
so I propose we cast it more often that once per click and hold of RButton
for example every 2 seconds
cast2=RButton:8
initial_delay2=800
delay2=2000

[7]
Rune of Displacement spam while holding Space
hold_keys=Space
delay=100

[4]
Blood of Dreeg, can be turned on with ` or 4, change delay to whatever you like
toggle_key=4
delay=5000

Hi tqFan - if I wanted to use this feature would the script look like this or do I remove the second [autocasting] and just have it under the one [autocasting] one heading ?

[autocasting]
master_hold=+
master_toggle=+

[autocasting]
pressed_buttons=s

[s]
hold_keys=s
delay=100

one heading

Albrecht's Aether Ray on Double Left Click + Hold

https://github.com/kowariantny/GDAutocaster/raw/master/GDAutocaster.exe

GDAutocaster.ini

[general]
suspend_key=Tab

[combo holds]
combo1=LButton:7
delay1=150
double_press1=true
double_press1_time_gap=300
  • Tab - turn the feature on/off

  • 7 - key set in-game to cast AAR (where you have in on hotbar)
    can be changed obviously

  • delay1 - time between the moment of second click and the moment AAR is cast
    lower it as much as possible as long as it still working every time

  • double_press1_time_gap - depending on the user preference and how fast he clicks
    time window starting at the moment of the first click you need to click for the second time in order for AAR to start channeling

Does this only support the default action keys (ie 1-0)? I have mine bound to other keys, and noticed that it doesnā€™t work on something like Q or Z. The program fails to even load.

Yes, all types of autocasting support all keys, I would tell you how to do it but itā€™s not needed because in Grim Dawn all skills can have 2 keys bound to it so you can have both Q, Z and 1, 2 bound to your skills.

How do you know that? Is there some error? Do you have 32-bit processor? You donā€™t see the process working in Task Manager / Task bar? Thereā€™s no confirmation when the program is working.

Periodic Casts support all keys right out of the gate. Something like this (but I still recommend 1, 2, 3, 4 because why not and they are easily recognizable by anyone and can be Secondary bindings

[periodic casts]
cast1=RButton:Q,W
delay1=50
initial_delay1=0

For the basic hold / toggle autocasting:

[9]
skill=Wind Devil
hold_keys=Space

[2]
skill=Aura
toggle_key=2

one needs to change the appropriate option in autocasting section (I always recommend newest version from GitHub)

From

[autocasting]
pressed_buttons=0,1,2,3,4,5,6,7,8,9

to for example

[autocasting]
pressed_buttons=Q,W

and then you can write something like this (Q, W buttons are automatically presses instead of 9 and 2)

[Q]
skill=Wind Devil
hold_keys=Space

[W]
skill=Aura
toggle_key=2

but I donā€™t recommend it because itā€™s simply not needed as Iā€™ve already explained

I recommend you telling me what functionality youā€™d like and Iā€™ll write you the best config for it.