NieR:Automata™

NieR:Automata™

197 betyg
Setting Up NieR:Automata To Play With Keyboard And Mouse
Av HPenguin
No More Double Tapping To Evade!
When I started out playing NieR:Automata I did not have a controller. It was only until I was halfway done with the game did I find out how tedious the original keyboard and mouse controls were. With a controller you have the ability to dodge with a dedicated button. But with only a keyboard and mouse, you need to double tap to dodge and run which can take up precious time and hinder your split second decision making.

With a simple AutoHotkey script that takes a few minutes to set up combat and movement in NieR:Automata will be significantly smoother.

3
2
   
Utmärkelse
Favorit
Favoritmarkerad
Avfavoritmarkerad
Introduction
Script Features
  • Allows for you to toggle your Pod's "Fire" function by tapping the "Tab" key.
  • Allows you to evade by holding the "Left Shift" key. This allows you to dodge and sprint instantly.
  • Allows you to perform an "Air Slide" by pressing the one key. This is normally done by by using the "Fire" function and Jump. Default key is "Z".
  • Allows you to cycle through weapons with one key. Default Key is "X".
  • Allows you to cycle through pods with one key. Default Key is "C".
Keyboard Bindings
  • We can do this by starting a game or continuing one.
  • Once in a game, while standing still, press Esc and navigate to System > Controls > Customize Keyboard.
  • This is where you can view all the keyboard bindings and change them to your preference.

With a controller as shown above, you have a dedicated button to evade, switch weapons, and switch pods.

With a keyboard as shown above, you need to double tap your movement keys which will slow you down especially when split second decisions are necessary. To switch weapons or pods you also need to press two keys.

Here is where this script is useful.
Installation
1.First we need to download and install AutoHotkey.
You can download it here.[autohotkey.com]
This is absolutely necessary in order for our script to work.

If you don't want to go through all the steps:
Download NieR: Automata Script Here[www.dropbox.com]
You can now skip steps 2-4, which basically involves copying and pasting the code manually. Scroll down to "5. Now lets edit our "Fire 2" keybind in Controls to make the script work."

If you downloaded from Dropbox, you can skip steps 2-4 below.
2.After installing AutoHotkey, we can then make a new Text Document.
This is where we will put our script.

3.Copy and paste this script into the new text document.
; -BEGIN---------------------------------------MAKE SURE THESE MATCH - CHANGE TO YOUR OWN LAYOUT IF NEEDED---------------------------------------- ; -BEGIN-------------------GAME KEYBINDINGS - MUST MATCH TO IN-GAME CONTROLS-------------------- ; controls that correspond to in-game controls ; make sure the in-game controls MATCH the controls below ; basic movement - must match to in-game controls fwdButton := "w" backButton := "s" leftButton := "a" rightButton := "d" ; pod fire & jump - must match to in-game controls fireButton := "Tab" jumpButton := "Space" ; cycle usage - must match to in-game controls altButton := "LAlt" switchWeaponButton := "Up" ; cycle through weapons switchPodButton := "Left" ; cycle through pods ; -END-------------------GAME KEYBINDINGS - MUST MATCH TO IN-GAME CONTROLS-------------------- ; -BEGIN-------------------SCRIPT KEYBINDINGS - CONTROLS ADDED BY THE SCRIPT-------------------- ; extra controls added by the script ; make sure these keybindings for the controls below are NOT used for in-game controls ; evade evadeButton := "LShift" ; air slide (fire + jump normally) airSlideButton := "z" ; cycle through weapons cycleWeaponButton := "x" ; cycle through pods cyclePodButton := "c" ; -END-------------------SCRIPT KEYBINDINGS - CONTROLS ADDED BY THE SCRIPT-------------------- ; -END---------------------------------------MAKE SURE THESE MATCH - CHANGE TO YOUR OWN LAYOUT IF NEEDED---------------------------------------- ; -BEGIN---------------------------------------DELAYS---------------------------------------- ; delays to make sure the script runs smoothly ; all values are in milliseconds (ms) keypressDelay := 50 ; delay between keydown/keyup doubletapDelay := 50 ; wait time between keypresses to perform doubletap sequenceDelay := 50 ; wait time between various sequences dodgeTime := 400 ; cooldown while dodge animation plays, setting it too small will cause derps when holding SHIFT+WSAD. ; -END---------------------------------------DELAYS---------------------------------------- ; -BEGIN---------------------------------------SCRIPT---------------------------------------- #UseHook SendMode Input global fwdButton, backButton, leftButton, rightButton global fireButton, jumpButton global altButton, switchWeaponButton, switchPodButton global evadeButton, airSlideButton, cycleWeaponButton, cyclePodButton global keypressDelay, doubletapDelay, sequenceDelay, dodgeTime press(key) { Send {Blind}{%key% down} Sleep keypressDelay Send {Blind}{%key% up} } handleEvade(key) { Send {Blind}{%key% up} ; stop running first in case we were Sleep sequenceDelay press(key) Sleep doubletapDelay Send {Blind}{%key% down} Sleep dodgeTime if (GetKeyState(fwdButton) && !GetKeyState(fwdButton, "P")) { Send {Blind}{%fwdButton% up} } if (GetKeyState(backButton) && !GetKeyState(backButton, "P")) { Send {Blind}{%backButton% up} } if (GetKeyState(leftButton) && !GetKeyState(leftButton, "P")) { Send {Blind}{%leftButton% up} } if (GetKeyState(rightButton) && !GetKeyState(rightButton, "P")) { Send {Blind}{%rightButton% up} } } waitForEvade() { while (GetKeyState(evadeButton, "P")) { if (GetKeyState(fwdButton, "P")) { handleEvade(fwdButton) } else if (GetKeyState(backButton, "P")) { handleEvade(backButton) } else if (GetKeyState(leftButton, "P")) { handleEvade(leftButton) } else if (GetKeyState(rightButton, "P")) { handleEvade(rightButton) } Sleep, 10 } } toggleFire() { if (GetKeyState(fireButton)) { Send {%fireButton% up} } else { Send {%fireButton% down} } } airSlide() { if (GetKeyState(jumpButton)) { Send {%jumpButton% up} } if (GetKeyState(fireButton)) { Send {%fireButton% up} toggleFireBack := 1 } Sleep sequenceDelay Send {%jumpButton% down} Send {%fireButton% down} Sleep keypressDelay Send {%fireButton% up} Send {%jumpButton% up} Sleep sequenceDelay ; press back what we released if (toggleFireBack) { Send {%fireButton% down} } if (GetKeyState(jumpButton, "P")) { Send {%jumpButton% down} } } cycleWeapons() { Send {%altButton% down} Send {%switchWeaponButton% down} Sleep keypressDelay Send {%altButton% up} Send {%switchWeaponButton% up} } cyclePods(){ Send {%altButton% down} Send {%switchPodButton% down} Sleep keypressDelay Send {%altButton% up} Send {%switchPodButton% up} } #IfWinActive, NieR:Automata ; fire toggle Hotkey $%fireButton%, toggleFire Hotkey $^%fireButton%, toggleFire Hotkey $+%fireButton%, toggleFire ; evades, work when you press/hold LShift while already holding WSAD Hotkey ~*%evadeButton%, waitForEvade ; air slide, normally executed with pod fire + jump Hotkey $*%airSlideButton%, airSlide ; cycles Hotkey $*%cycleWeaponButton%, cycleWeapons Hotkey $*%cyclePodButton%, cyclePods ; -END---------------------------------------SCRIPT----------------------------------------

4.After you save the document, change the file extention to .ahk
Rename the file and change the extension to ".ahk".

If you downloaded from Dropbox, DO NOT skip these steps below.

5.Now lets edit our "Fire 2" keybinding in Controls to make the script work.
Change the LShift to Tab in the "Fire 2" keybinding. These setting are located in System > Controls > Customize Keyboard

6.Finally lets disable Steam Overlay.
Since Tab is being toggled to constantly use the "Fire 2", we will need to turn the Steam Overlay service off so it does not interrupt gameplay. (It is brought up when you press Shift+Tab, two frequently pressed keys) You can still communicate with your friends by Alt-Tabbing.
Uncheck the box next to "Enable the Steam Overlay while in-game".
Usage
Starting the script
Just double-click the .ahk file to start the script.
You can see if its active by viewing your icons and looking for the "H" icon.


Stopping the script
When you are done, just simply right click the "H" icon and select Exit or Pause.










Gameplay
Evading
To Evade, just hold your "Left Shift" key and press any of your "WASD" keys.
Toggling Pod Fire
To Toggle Pod Fire, tap your "Tab" key.
Air Slide
To Air Slide, tap your "Z" key.
Cycle Weapons

To Cycle Weapons tap your "X" key.
Cycle Pods

To Cycle Pods, tap your "C" key.

Changing Keybinding Preference
Game Keybindings
These are the controls that are used by both the game and the script.
Under GAME KEYBINDINGS you can edit these keybindings but must make sure that the assigned keys for each of the controls in this section of the script are the SAME assigned keys for the corresponding controls used by the game.
Script Keybindings
These are extra ease of use controls that the script provides.
Under SCRIPT KEYBINDINGS you can edit these keybindings but must make sure that the assigned keys for each of the controls in this section of the script are NOT used by any controls in the game.
Common Issues
  • For some, the script does not work when run normally. A common workaround is to run the script as administrator.
Thanks For Reading
Thanks for reading this guide. I hope I was able to help you. If you have any questions please feel free to comment below or you can add my steam account. Please rate this guide, and if you liked it you can add it to your favorites. You can find these options at the top of this page.

My Reviews for NieR:Automata and 3C3C1D119440927
NieR:Automata™
NieR:Automata™ - 3C3C1D119440927

Thank You :D

33 kommentarer
YosepRA 27 dec, 2024 @ 4:58 
You dropped this crown, King. I just started to play this game, only to get discouraged because of the choppy dodge on keyboard.
Not The Mama 29 sep, 2024 @ 19:08 
Thanks for this - I've given up playing NA - too frustrating with a keyboard. Its not clear that the new key bindings will make the experience significantly better for me, but I might come back to it later.
Ubarl33td00d 24 mar, 2024 @ 1:47 
i was so excited for this when i clicked it, only to find out i need to use a 3rd party program.
oof.
pretty detailed stuff though so props for that.
ZmEYkA_3310 5 jan, 2024 @ 16:03 
you could also use niaom to do this internally
Muerté 22 jan, 2023 @ 17:46 
Edit : after I had done everything the guide said , I ran into an issue that the script works outside the game and not inside , so all i had to do is run both the game and script as admin mode and it should work just fine.
Axyraandas 16 jan, 2023 @ 22:32 
Check to see if #IfWinActive, NieR:Automata has the right name. It should be the same as the window's title.
Muerté 14 jan, 2023 @ 17:06 
i did everything the guide said . The ahk file is working just fine but there is no difference sadly , what could be possibly be wrong? *playing on a non steam version of the game*
YoRHa tmy 30 jul, 2022 @ 14:50 
I LOVE YOU, THANK YOU FOR EXPLAINING IT FOR FOOLS LIKE ME :steamhappy:
Drizzle 19 maj, 2022 @ 2:26 
hello, i have a question, when i run the script, in game it is not working. do i need to put the ahk file in nier automata game files?
mar10d 3 sep, 2021 @ 4:37 
O Yea Thats A Computer On A PS5 You Can Config In Game To What .....:steamthis: