Good Stuff : Warframe with AutoHotKey

17 November 2018 Cleaned up some codes and added new Quick Pop Zenurik Dash

Back few weeks ago, I decided to write an auto hotkey script to facilitate my Warframe needs. For those whom wanna know more about this awesome game – you may find out here. For those already playing this game on PC, might benefit from this post.

Before we start, I would like a brief introduction on the macro. A macro is an automated input sequence that imitates keystrokes or mouse actions. We normally use a macro to automate a series of complicated sets of keyboard or mouse actions. This will in turn optimize our game play time.

The macro tool that I use in Windows to play Warframe called AutoHotKey. It’s a freeware downloadable here. Problem with AutoHotKey is that; this is a script based tool which means, you have to get your hands a bit dirty to script the key binding yourself to perform what you want. Worry not, I’m sharing this tutorial post and my script in playing Warframe here too.

Some sideline note: Some general knowledge good to know before macro programming.

Typical human keypress is about 100 ms and 25 ms if they spam the same key again.

Pre-requisites

  1. AutoHotKey
  2. Visual Studio Code (A light weight free editor) ; You can use NotePad as well [Just that this one they have syntax/spell checker(makes sure you type your codes correctly) plugin for AutoHotKey]

For example, if you want bind the key Q to do roll and shoot. May look like this. (Assuming you bind roll key as Ctrl). Script goes like this.

#IfWinActive, Warframe 
q::
    Send, {Ctrl}
    Send, {LButton}
Return

In the script above line 1 – create an Active Window Check. Which means, key binding will only work if you are within Warframe window. (which means Warframe is running and you are already in game. It will not work if you quit the game or pop out back to Windows environment. This will save you a lot of frustration later on; when you need to work on Windows after playing the game.)

Line 2, we start binding key “q” to execute pressing of the key Ctrl (assuming you bind this key for rolling), immediately after that fires a left mouse button which trigger a fire weapon button. All binding ends with Return. After writing this sets of script, you are then required to save this text file into an ahk file. (Or just save it as txt, later rename it to ahk). Doing so, you then execute it just by double clicking that ahk file. (If you have AutoHotkey Installed) it will run the script.

Back to Warframe, the most tedious sets of keyboard move we always encounter when playing Warframe for me is always been the Spinning Melee Attack and the Bullet Jump. I figured, wouldn’t it be cool, if I could map these two tedious sets of move into two keys (for me I choose, q and Left Alt).

Below are the script I use for Warframe.

; Warframe Macro Key by isgoodstuff.com version 1.5

MsgBox, Warframe macro is ready Tenno, you may start the game now.

Pause::
    ComObjCreate("SAPI.SpVoice").Speak("AutoKey Is Suspended")
    Suspend On
Return

+Pause::
    Suspend Off
    ComObjCreate("SAPI.SpVoice").Speak("AutoKey Is Resumed")
Return

#IfWinActive, Warframe 
{
    LAlt::
        Send, {Shift Down}
        Send, {c Down}
        Send, {e Down}
        Sleep 100
        Send {e Up}
        Sleep, 150
        Send, {c Up}
        Send, {Shift Up}
    Return

    q::
        Send, {c}
        Sleep 100
        Send, {Space}
    Return

    ; Zenurik Quick Energizing Dash
    +v::
        Send, {5}
        Sleep 250
        Send, {c}
        Sleep 120
        Send, {Space}
    Return

    ; Runs a routine named DoubleShiftC - sending a parameter key "c" and TimeBetween each c is 20 miliseconds.
    +c::
        DoubleShiftC("c",20)
    Return

    DoubleShiftC(key,TimeVar) 
    {
        If (A_ThisHotkey==A_PriorHotkey && A_TimeSincePriorHotkey < TimeVar)
            ; b is my dodge key.
		    Send, {b}
        Else
            Send, {c}
        Return
    }
    ; If I really need my q, it's ctrl + shift + q
    ^+q::
        Send, {q}
    Return

    ^+v::
        Send, {v}
    Return
}
Warframe AHK (4806 downloads)

There are also some video materials you might interested in learning more on AutoHotkey. Especially the mouse button 4 and mouse button 5 binding and writing a more advance script to check for you Warframe Eidolon Hunting Time thanks to Warframe Global Alert system that apps uses.

Below are some of the videos that I’ve made for Warframe Macros
And If you have 5 button mouse, better still let’s write macro for Warframe
How about using a script to check Eidolon Hunting Time in Cetus?

Download the needed tutorial files here
AutoHotKey External Function Files (2051 downloads)

For those interested in further enhancing your gameplay, you can try out my Voice Attack Ordis Voice Pack Here

Download Warframe Ordis Voice Pack
Warframe Ordis Voice Attack Voice Pack (6092 downloads)

And the follow-up tutorial here.

Comments

comments

4 thoughts on “Good Stuff : Warframe with AutoHotKey

  1. Hi,

    I tried to use AHK for Meteoric Dash in Warframe. You look down standing on the ground, near your target (eg. Eidolon feet), goes to void mode (Ctrl default) and dash (default Space) a lot of times until you run out of energy. With a full operator energy bar you can dash almost 30 times what is hard to execute with hand in a short time of course.

    My script works well, except I have to start from normal (not void) mode. That means I have to come out of void mode to execute the script. The problem is that coming out of void mode consumes 25 operator energy because of Void Radiance.

    It would be very good if you could help me to write a script, what works while I’m in void mode. If I just remove a Ctrl lines from my script, executing only the Space commands, nothing works. I don’t know what the problem is, I have very little (means nothing) experience with AKH and game scripting in general.

    Thank you very much if you can help me with this.

    My current script:

    #IfWinActive, Warframe
    MButton::
    Send, {Ctrl Down}
    Loop, 27
    {
    Send, {Space Down}
    Sleep, 1
    Send, {Space Up}
    Sleep, 1
    }
    Send, {Ctrl Up}
    Return

  2. hi there, Thanks for stopping by. I read your script unfornately, I’ve not reached Meteoric Dash tree path yet. So, I cant adjust the script to fix it. However, i do noticed some animation sequence in Warframe will tend to cancel off additional key inputs. For example, if u use my latest 1.5 script. I have Zenurik Dash that will pop out the operator perform a void mode (my C is my Crouch) then a quick dash forward. However, if you execute again, the act of operator returning to the warframe itself has “cancelled” all other key input , meaning by right the Warframe should be using C and Space but its cancelled off. May be you can modify my Zenurik Dash and merge with yours to give a try.

  3. Jojo, try removing the line 15,16 and 65. if is working probably some curly brackets are missing between the lines { }

Leave a Reply

Your email address will not be published. Required fields are marked *