I changed the .ini file but nothing seems to be working, I press mouse4, mouse5, F6 nothing seems to be working. I want to have skill on R which is keySlot4 to be always enabled, these are my settings:
So, when you press XButton1 (mouse 4/thumb button) it doesn't toggle skill slot 4 or the one on R in your case? If so, the only thing I can think of right now is that the script isn't running properly. Did you check AutoHotkey's log?
Oh, did you try to assign the SkillToggle key to something else other than XButton1? Maybe a simple keyboard key, like "n"? It is possible that your mouse buttons are mapped different or the mapping is intercepted by some other software.
Double click this script's tray icon while the script is running and it should display a log of the code executed. If you want to share it, please don't paste the entire file content here but use a service like pastebin and just post a link to it here.
I can't see anything out of the ordinary, the code is executed as expected. I'll have to look into it again once I get back to it. I'm sorry I can't help you right away.
Could it be that I don't have a keyboard with numpad?
I'd say it is highly unlikely as the script doesn't try to access or map anything related to the Numpad by default. And keyboard mappings are standardised, no matter the type of keyboard you're using. Since AutoHotkey simply calls functions provided by your operating system, this shouldn't be an issue either. I suspect that the script cannot read your INI file for some reason. One last thing you could do is to test every other aspect of the script and its features (toggle, repeater, and teleport). Are all parts/keys non-functional? If so, that could provide some additional insight.
Yeah non work at all, tried also the middle mouse thing that puts items into stash, teleport, repeat and auto skills nothing works, feels like the script is running but completely being ignored by anything I do.
Oh, that narrows down the possible explanations. What version of the game are you running, what mode (online, fake offline, or full offline) and what is the name of your game's executable?
Game version: current 1.2.4.1 Game mode: Tried online and full offline as well Mods: For online no mods, for offline 1. Last epoch mods 2. Death Rush (when first tried the ahk macro I only used the last epoch mods) Executable: I'm launching full offline mode through steam and online through shortcut with -no--mods and both are called "Last Epoch.exe"
; #HotIf WinActive("ahk_exe Last Epoch.exe") ; HotIfWinActive "ahk_exe Last Epoch.exe" But still don't work. But as I was typing this reply, I have noticed, that in browser or any text editor or overall in windows it triggers the keystrokes once but never repeats, and the skill toggle works but I need to enable it outside of the game and then alt tab back into the game. Like the games is actually blocking the script
Today, I tried it again in online mode, and repeat seems to be working but to press the skills I have enabled I have to keep pressing the enable button which I have set to "n". So repeat doesn't seem to be working, but if I enable SkillToggle that works in online mode now.
SkillRepeat isn't meant to repeat indefinitely, but only for as long as you keep pressing that button. That's the difference between SkillToggle and SkillRepeat for the most part.
So, everything seems to be working for you now. Since commenting out those two lines I suggested made the script work for you, I have to figure out why your Windows and therefore AHK don't seem to know that your "Last Epoch.exe" is active, when you're running the game. That's the reason why it wasn't working for you. The script should check if the game is currently the active process to prevent the hotkeys from activating when browsing the web and all sorts of other things. But that part never seems to occur on your end. My initial thought was, that your Last Epoch executable is named differently due to a different game version. But that doesn't seem to be the case. So, I'm a bit puzzled right now.
Yeah I see, now it's working fine but everywhere not only in LE :D But anyways thanks for all your time and help :) Lemme know if you come up with some clever solution :)
Since you've included a script with absolute coordinates, do you happen to have an idea how dynamic/"responsive" the UI, especially the Forge part, is, when it comes to different aspect ratios and screen resolutions? Finding a "good enough" solution for the two entirely different portal types in the game and various screen resolutions almost drove me crazy already. :D
As for autohotkey, the general way is ImageSearch but this game is not kind for image search :( I failed to write a hotkey that auto bought all shatter runes for this reason
A workaround is provide a tool for user to customise their own coordinates, but that's too geek I think 90% players wil skip it...but if 5 players use it and saved their time I think that's worth it
Here's another idea:
; show coord ; debug ; Press insert to show client coord, long press to clear Insert:: { KeyWait(ThisHotkey) static CoordCenter := Array() static TipCount := 0
could you made a better version when I press the spacebar, if the movement skill is on cooldown, use the dodge; otherwise, use the movement skill. some movement skill can reduce cooldown, i cant fix this problem
That would require reading the game's memory because the script doesn't know when things in game are on cooldown. The alternatives would be way too unreliable. I'd rather not mess with the game's memory, though. Other than that, it's a neat idea.
Yes, it opens the portal and tries to activate it right after. But due to differences in screen/window sizes and the game using two different kinds of portals, spawning in two different locations and sizes, this might not work for everyone right away. That's why I included some variable settings in the INI for you to tweak to your setup.
26 comments
[SkillBarKeys]
Any idea why nothing works pls?keySlot1=q
keySlot2=w
keySlot3=e
keySlot4=r
keySlot5=RButton
[ItemTransRepeat]
key=MButton
enabled=1
[SkillToggle]
key=XButton1
enabled=1
enableSlot1=0
enableSlot2=0
enableSlot3=0
enableSlot4=1
enableSlot5=0
delaySlot1=0
delaySlot2=0
delaySlot3=0
delaySlot4=0
delaySlot5=0
[SkillRepeat]
key=XButton2
enabled=0
enableSlot1=0
enableSlot2=0
enableSlot3=0
enableSlot4=1
enableSlot5=1
delaySlot1=1000
delaySlot2=1000
delaySlot3=1000
delaySlot4=1000
delaySlot5=1000
[Portal]
key=+t
enabled=0
keyGame=t
delayClick=1500
winModX=0.0030000000000000001
winModY=0.089999999999999997
edit: Could it be that I don't have a keyboard with numpad?
I suspect that the script cannot read your INI file for some reason. One last thing you could do is to test every other aspect of the script and its features (toggle, repeater, and teleport). Are all parts/keys non-functional? If so, that could provide some additional insight.
Game mode: Tried online and full offline as well
Mods: For online no mods, for offline 1. Last epoch mods 2. Death Rush (when first tried the ahk macro I only used the last epoch mods)
Executable: I'm launching full offline mode through steam and online through shortcut with -no--mods and both are called "Last Epoch.exe"
Are the hotkeys functional now?
; #HotIf WinActive("ahk_exe Last Epoch.exe")
But still don't work.; HotIfWinActive "ahk_exe Last Epoch.exe"
But as I was typing this reply, I have noticed, that in browser or any text editor or overall in windows it triggers the keystrokes once but never repeats, and the skill toggle works but I need to enable it outside of the game and then alt tab back into the game. Like the games is actually blocking the script
So repeat doesn't seem to be working, but if I enable SkillToggle that works in online mode now.
So, everything seems to be working for you now. Since commenting out those two lines I suggested made the script work for you, I have to figure out why your Windows and therefore AHK don't seem to know that your "Last Epoch.exe" is active, when you're running the game. That's the reason why it wasn't working for you. The script should check if the game is currently the active process to prevent the hotkeys from activating when browsing the web and all sorts of other things. But that part never seems to occur on your end. My initial thought was, that your Last Epoch executable is named differently due to a different game version. But that doesn't seem to be the case. So, I'm a bit puzzled right now.
; capslock autorun
Capslock::
XButton1::
{
Send "{LButton down}"
}
; one click shatter equipment
k::{
forgeKey := "{a}"
runePos := [937, 1333]
runeShatterPos := [577, 1477]
forgePos := [777, 666]
forgeConfirmPos := [777, 1777]
MouseGetPos(&mx, &my)
Send(forgeKey)
sleep(30)
Click(runePos*)
sleep(30)
Click(runeShatterPos*)
sleep(30)
Click(mx, my)
sleep(30)
Click(forgePos*)
sleep(30)
Click(forgeConfirmPos*)
sleep(30)
Send(forgeKey)
Click(mx, my, 0)
}
Since you've included a script with absolute coordinates, do you happen to have an idea how dynamic/"responsive" the UI, especially the Forge part, is, when it comes to different aspect ratios and screen resolutions? Finding a "good enough" solution for the two entirely different portal types in the game and various screen resolutions almost drove me crazy already. :D
A workaround is provide a tool for user to customise their own coordinates, but that's too geek I think 90% players wil skip it...but if 5 players use it and saved their time I think that's worth it
Here's another idea:
; show coord ; debug
; Press insert to show client coord, long press to clear
Insert::
{
KeyWait(ThisHotkey)
static CoordCenter := Array()
static TipCount := 0
if (A_TimeSinceThisHotkey > 200) {
ct:=1
while(ct<=20){
ToolTip(, , , ct)
ct++
}
CoordCenter := Array()
TimedToolTip("Cleared", 500)
} else {
MouseGetPos(&mX, &mY)
tipText := mX . ", " . mY
if(CoordCenter.length > 0){
tipText .= "`nOffset: " . mX - CoordCenter[1] . "," . mY - CoordCenter[2]
} else {
CoordCenter := [mX, mY]
}
A_Clipboard := mX . "," . mY . "`n" . mX - CoordCenter[1] . "," . mY - CoordCenter[2]
ToolTip(tipText, , , Mod(TipCount++, 20)+1 )
}
}
TimedToolTip(content, life:=0, x?, y?, whichToolTip:=1){
life := life < 0 ? 0 : life
ToolTip(content, x?, y?, whichToolTip)
SetTimer(()=>ToolTip("", , , whichToolTip), -life)
}
when I press the spacebar, if the movement skill is on cooldown, use the dodge; otherwise, use the movement skill.
some movement skill can reduce cooldown, i cant fix this problem