Fallout 4
0 of 0

File information

Last updated

Original upload

Created by

emeryrik

Uploaded by

emeryrik

Virus scan

Safe to use

Tags for this mod

About this mod

Ever wanted to shank a mole rat in the heat of combat, but you couldn't take out your machete fast enough? This mod is for you. Add your weapon of choice to the Mod Configuration Menu, and every time you press your desired key, you use that weapon to quickly melee or shoot. Simple as that.

Requirements
Permissions and credits
Changelogs
Hi, everyone! It's been a while since I've had time to invest in modding and even longer since I've updated this mod. Although the mod works well in its current state on my end, please note that any issues that you encounter from this point on WILL NOT BE INVESTIGATED IN A TIMELY MANNER due to time constraints on my part. I am currently in my clinical years of medical school so I simply no longer have spare time to devote to modding. This will be the case for the foreseeable future, although I do intend on revisiting and updating my mods eventually. I appreciate your understanding and please continue to enjoy my mods in their current state!



 What is Quick Attack? 

It's quite simple. Add your desired weapon to the Mod Configuration Menu, make sure you have it in your inventory, and whenever you press the magic button, you automatically equip that weapon, melee or shoot with it, and switch back to your originally equipped weapon. ALL WITH ONE KEY PRESS! Confused? That's okay, I like GIF's too.




 Compatible weapons: 

  • BIG, LONG LIST
  • Any weapon that you can equip!


 Adjusting settings: 

1. Main Settings:

A. Attack weapon settings:
  • Attack weapon - Choose the weapon that you want to use when overriding your current weapon's melee attack. You must have this weapon in your inventory in order for the Quick Attack to succeed.
  • Add equipped weapon to attack weapons array - Equip the weapon you want to use for a Quick Attack, then press this button. You can then select this new option in the 'Attack weapon' drop-down. *** THE BUTTON LABEL IS NOT ASSIGNABLE TO A KEY, JUST A CLICKABLE FUNCTION ***
  • Remove weapon from attack weapons array - Remove the desired entry in the attack weapons array. You will no longer be able to select this option in the 'Attack weapon' drop-down.
  • First person attack style - Choose the applicable animation set for your desired attack weapon. For melee weapons, you can select 'Melee' for the melee animation or 'Attack' for the normal attack animation. For guns, you can select 'Melee' for the melee animation, 'Single fire' for a single pull of the trigger, or 'Automatic fire' for a sustained pull of the trigger (or rapid trigger pulls in the case of semi-automatic weapons).
  • Third person attack style - Choose the applicable animation set for your desired attack weapon. For melee weapons, you can select 'Melee' for the melee animation or 'Attack' for the normal attack animation. For guns, you can select 'Melee' for the melee animation, 'Single fire' for a single pull of the trigger, or 'Automatic fire' for a sustained pull of the trigger (or rapid trigger pulls in the case of semi-automatic weapons).

B. Functionality settings:
  • Quick Attack key - Choose the key you want to press to initiate a Quick Attack attempt. DO NOT SET THIS TO THE SAME KEY AS THE bash/power attack/grenade KEY AS DEFINED IN THE BASE GAME'S KEYBIND SETTINGS. YOU HAVE BEEN WARNED!
  • Quick Attack action point cost - Set the number of action points deducted from the player during a Quick Attack. Please note that using the melee attack style, much like using the vanilla bash action, causes a hardcoded deduction of action points, and there is not a way to get around this using actor values or gamesetting objects. I have put in logic to ensure the correct amount of action points are deducted, including 0, but in the case of a melee attack style you will still need a certain amount of action points to satisfy the vanilla hardcoded deduction.
  • Throw Override - Toggle Throw Override functionality. This feature makes your bash/power attack/grenade key, as defined in the base game's keybind settings, into JUST a throw key, meaning you will no longer have traditional melee functionality. This is compatible with 'cooking' throwables as well as the grenade arc effect from the Demolition Expert rank 2 perk. If you want vanilla functionality of the bash/power attack/grenade key back, simply turn this off.

2. First Person Time Settings:

A. Attack weapon first person timing:
  • Attack weapon first person equip time - Set the interval of time between removing your original weapon and initiating the Quick Attack while in first person. If your Quick Attack is failing, increase this value. If your Quick Attack takes too long to initiate, decrease this value.
  • Attack weapon first person melee time - Set the length of a melee-style Quick Attack while in first person.
  • Attack weapon first person attack time - Set the length of an attack-style Quick Attack while in first person. 
  • Attack weapon first person block time - Set the length of an block-style Quick Attack while in first person. 
  • Attack weapon first person single fire time - Set the length of a singe fire-style Quick Attack while in first person.
  • Attack weapon first person automatic fire time - Set the length of an automatic fire-style Quick Attack while in first person.

* * * For reference, my starting points for melee weapons categorized as fast, medium, and slow according to the Fallout 4 Wiki are 1.25, 2.00, and 2.25, respectively. For guns, you're on your own depending on how long the firing animation is or how long you want to pull the trigger. You will need to tweak this yourself given how long your desired first person attack style animation takes and your personal tastes. * * *

  • Attack weapon failsafe time - (Duplicated in Third Person Time Settings) Set the maximum time that the script attempts to animate the attack weapon before triggering a failsafe and skipping further animation attempts while in first person. Basically, it is a time frame after the equip time expires that cycles the request for the selected animation style. In practice, if you set the 'Attack weapon equip time' too low, so that the Quick Attack is triggered before the equip animation is finished, and this value low enough so that it also expires before the equip animation, then your Quick Attacks will always fail. I suggest keeping this value at 0.5.

B. Original weapon first person timing:
  • Original weapon first person equip time - Adjust the interval of time between forcibly re-equipping the weapon you originally had equipped and permitting another Quick Attack initialization while in first person. If you want to be able to spam the Quick Attack repeatedly without waiting for the weapon you originally had equipped to come into view, decrease this value to taste. If you want to wait until the weapon you originally had equipped completes its equip animation before allowing another Quick Attack, which is how many games handle this kind of operation, increase this value to taste.
  • Original weapon first person melee time - Adjust the interval of time between initializing a regular melee on the originally equipped weapon and permitting another Quick Attack attempt while in first person. If you want to be able to spam Quick Attack attempts repeatedly without waiting for the weapon to complete its melee animation, decrease this value to taste. If you want to wait until the weapon completes its melee animation before allowing another Quick Attack attempt, which is how many games handle this kind of operation, increase this value to taste.

C. Throw Override first person timing:
  • Throw Override failsafe time - (Duplicated in Third Person Time Settings) Set the maximum time that the script attempts to animate a Throw Override attempt before triggering a failsafe and skipping further animation attempts. Basically, this is just the script's way of circling back and resetting itself in the event that it cannot force a throw event. Having this too low may result in not being able to use Throw Override at all due to the failsafe triggering after only one Throw Override attempt. Having this too high may result in the script hanging for the set amount of time, not allowing you to do much of anything during that time. I suggest lowering this as much as possible without failing Throw Override attempts.
  • Throw Override key hold time - (Duplicated in Third Person Time Settings) Set the amount of time the throw key must be held in order to allow the vanilla game's default throwable handling feature to take precedence over the script. This precedence is necessary in order to allow the grenade arc effect from the Demolition Expert rank 2 perk. I recommend keeping this at the default value, as it is as close to the hardcoded time the game uses to distinguish whether you intend to melee or throw a grenade, but if you find that you are getting vanilla melee functionality if you hold the throw key around 0.35s (you can check this by turning on debugging messages) then you can try increasing this ONLY A TINY BIT AT A TIME. YOU HAVE BEEN WARNED!
  • Throw Override first person throw time - Set the interval of time between successful initiation of a Throw Override and re-equipping your original weapon while in first person. The shorter amount of time this is, the sooner the script registers itself for a new Throw Override attempt, but ultimately Throw Override wait time takes precedence over this. This is a necessary option in the event that you want there to be a latent period between re-equipping your original weapon and allowing another Throw Override attempt because the script needs to know whether to block vanilla melee functionality in this latent period. THIS VALUE SHOULD BE NO LONGER THAN THE TIME IT TAKES TO RE-EQUIP YOUR ORIGINAL WEAPON, BUT SLIGHTLY SHORTER IS FINE. YOU HAVE BEEN WARNED!
  • Throw Override first person wait time - Set the interval of time between successful initiation of a Throw Override and permitting another Throw Override attempt while in first person. The shorter amount of time this is, the sooner the script allows a new Throw Override attempt. THIS VALUE SHOULD NEVER BE LOWER THAN Throw Override throw time, BUT CAN BE THE SAME IN ORDER TO AVOID A LATENT PERIOD BETWEEN RE-EQUIPPING YOUR ORIGINAL WEAPON AND PERMITTING ANOTHER THROW OVERRIDE ATTEMPT. YOU HAVE BEEN WARNED!

D. First person timing transfer:
  • Transfer first person timing settings to third person timing settings - Set third person timing settings to their corresponding first person timing settings. This is just an ease-of-use button so that if you find timing settings that you like in first person, you can just apply that to third person with one click.

3. Third Person Time Settings:

A. Attack weapon third person timing:
  • Attack weapon third person equip time - Set the interval of time between removing your original weapon and initiating the Quick Attack while in third person. If your Quick Attack is failing, increase this value. If your Quick Attack takes too long to initiate, decrease this value.
  • Attack weapon third person melee time - Set the length of a melee-style Quick Attack while in third person.
  • Attack weapon third person attack time - Set the length of an attack-style Quick Attack while in third person. 
  • Attack weapon third person block time - Set the length of an block-style Quick Attack while in third person. 
  • Attack weapon third person single fire time - Set the length of a singe fire-style Quick Attack while in third person.
  • Attack weapon third person automatic fire time - Set the length of an automatic fire-style Quick Attack while in third person.

* * * For reference, my starting points for melee weapons categorized as fast, medium, and slow according to the Fallout 4 Wiki are 1.25, 2.00, and 2.25, respectively. For guns, you're on your own depending on how long the firing animation is or how long you want to pull the trigger. You will need to tweak this yourself given how long your desired first person attack style animation takes and your personal tastes. * * *

  • Attack weapon failsafe time - (Duplicated in First Person Time Settings) Set the maximum time that the script attempts to animate the attack weapon before triggering a failsafe and skipping further animation attempts while in first person. Basically, it is a time frame after the equip time expires that cycles the request for the selected animation style. In practice, if you set the 'Attack weapon equip time' too low, so that the Quick Attack is triggered before the equip animation is finished, and this value low enough so that it also expires before the equip animation, then your Quick Attacks will always fail. I suggest keeping this value at 0.5.

B. Original weapon third person timing:
  • Original weapon third person equip time - Adjust the interval of time between forcibly re-equipping the weapon you originally had equipped and permitting another Quick Attack initialization while in third person. If you want to be able to spam the Quick Attack repeatedly without waiting for the weapon you originally had equipped to come into view, decrease this value to taste. If you want to wait until the weapon you originally had equipped completes its equip animation before allowing another Quick Attack, which is how many games handle this kind of operation, increase this value to taste.
  • Original weapon third person melee time - Adjust the interval of time between initializing a regular melee on the originally equipped weapon and permitting another Quick Attack attempt while in third person. If you want to be able to spam Quick Attack attempts repeatedly without waiting for the weapon to complete its melee animation, decrease this value to taste. If you want to wait until the weapon completes its melee animation before allowing another Quick Attack attempt, which is how many games handle this kind of operation, increase this value to taste.

C. Throw Override third person timing:
  • Throw Override failsafe time - (Duplicated in First Person Time Settings) Set the maximum time that the script attempts to animate a Throw Override attempt before triggering a failsafe and skipping further animation attempts. Basically, this is just the script's way of circling back and resetting itself in the event that it cannot force a throw event. Having this too low may result in not being able to use Throw Override at all due to the failsafe triggering after only one Throw Override attempt. Having this too high may result in the script hanging for the set amount of time, not allowing you to do much of anything during that time. I suggest lowering this as much as possible without failing Throw Override attempts.
  • Throw Override key hold time - (Duplicated in First Person Time Settings) Set the amount of time the throw key must be held in order to allow the vanilla game's default throwable handling feature to take precedence over the script. This precedence is necessary in order to allow the grenade arc effect from the Demolition Expert rank 2 perk. I recommend keeping this at the default value, as it is as close to the hardcoded time the game uses to distinguish whether you intend to melee or throw a grenade, but if you find that you are getting vanilla melee functionality if you hold the throw key around 0.35s (you can check this by turning on debugging messages) then you can try increasing this ONLY A TINY BIT AT A TIME. YOU HAVE BEEN WARNED!
  • Throw Override third person throw time - Set the interval of time between successful initiation of a Throw Override and re-equipping your original weapon while in third person. The shorter amount of time this is, the sooner the script registers itself for a new Throw Override attempt, but ultimately Throw Override wait time takes precedence over this. This is a necessary option in the event that you want there to be a latent period between re-equipping your original weapon and allowing another Throw Override attempt because the script needs to know whether to block vanilla melee functionality in this latent period. THIS VALUE SHOULD BE NO LONGER THAN THE TIME IT TAKES TO RE-EQUIP YOUR ORIGINAL WEAPON, BUT SLIGHTLY SHORTER IS FINE. YOU HAVE BEEN WARNED!
  • Throw Override third person wait time - Set the interval of time between successful initiation of a Throw Override and permitting another Throw Override attempt while in third person. The shorter amount of time this is, the sooner the script allows a new Throw Override attempt. THIS VALUE SHOULD NEVER BE LOWER THAN Throw Override throw time, BUT CAN BE THE SAME IN ORDER TO AVOID A LATENT PERIOD BETWEEN RE-EQUIPPING YOUR ORIGINAL WEAPON AND PERMITTING ANOTHER THROW OVERRIDE ATTEMPT. YOU HAVE BEEN WARNED!

D. Third person timing transfer:
  • Transfer third person timing settings to first person timing settings - Set first person timing settings to their corresponding third person timing settings. This is just an ease-of-use button so that if you find timing settings that you like in third person, you can just apply that to first person with one click.

4. Advanced Settings:

A. Dialogue target settings:
  • Minimum dialogue target angle - Set the minimum angle at which the script recognizes you are no longer looking at an NPC, in the event that the player has a dialogue target. By default this is 35 degrees, which allows you to be right in your dialogue target's face but unable to initiate a Quick Attack attempt until you look far enough away from them so as to keep from attacking them by accident.
  • Minimum dialogue target distance - Set the minimum distance away from an NPC at which the script considers them safe, in the event that the player has a dialogue target. By default this is 200, which allows you to look straight at your dialogue target but far enough away that you cannot melee them by accident. You are still able to shoot them though, so be careful.
  • Show current dialogue target - Display the name, distance, and heading angle relative to the player, of the player's dialogue target. This way, you can see which actor is locking the player in dialogue, forcing you to abide by the above two dialogue target settings in order to initiate a Quick Attack. *** THE BUTTON LABEL IS NOT ASSIGNABLE TO A KEY, JUST A CLICKABLE FUNCTION ***
  • Teleport current dialogue target to player - Teleport the player's dialogue target to the player. This brings the actor which is locking the player in dialogue to you so that you can talk to them and end your dialogue; this is a useful way of clearing the player's dialogue target if they are a persistent actor, such as a companion or essential character, and are far away. *** THE BUTTON LABEL IS NOT ASSIGNABLE TO A KEY, JUST A CLICKABLE FUNCTION ***

B. Reset settings:
  • Clear attack weapons array - Pressing this button will clear all weapons from the attack weapon array and set up the default, non-removable options. You cannot undo this. *** THE BUTTON LABEL IS NOT ASSIGNABLE TO A KEY, JUST A CLICKABLE FUNCTION ***
  • Reset settings - Pressing this button will reset all settings except for clearing the attack weapons array. *** THE BUTTON LABEL IS NOT ASSIGNABLE TO A KEY, JUST A CLICKABLE FUNCTION ***

C. Debug settings:
  • Debug messages - Enable or disable debug messaging. If something isn't working quite right, try turning this on to see where the script is stopping or conditions are failing.


 Known bugs/limitations: 

1. The catch to this mod is that Object References cannot be used to identify items in containers, such as the player's inventory. This means that there is no discrimination between weapons of the same base weapon type/Form ID. If you would like to use a particular instance of a weapon for your Quick Attack, make sure it is the only item in your inventory of that base weapon type/Form ID OR make sure it is the first item of its base weapon type/Form ID listed in your inventory BY naming it at a weapon bench OR favoriting it. Additionally, the same goes for your original weapon. Also, this means that if you have multiple weapons with the same base weapon type/Form ID favorited, the script will equip the first that is listed in the inventory OR the one with the lowest favorite slot number; for most people this is not an issue but you should definitely know this. These three aspects will be explained in more detail in a future video.

2. Due to the above engine-level limitations, the original weapon that you have equipped before initiating a Quick Attack will be automatically reloaded, if applicable. There is no way to fix this, unfortunately.


 Updating procedure: 

1. If you do not follow these steps when updating, you risk breaking the script entirely. If that happens, follow these steps to fix it.
2. If installing for the first time or on a new game, you don't need to complete the following steps.
3. Create a new game save.
4. Completely uninstall this mod and make sure "MCM\Config\QuickAttack" folder, "Scripts\QuickAttack" folder, and "QuickAttack.esp" plugin are deleted.
5. Continue your game (it should tell you it relies on "QuickAttack.esp", which is missing, but continue anyway).
6. After loading, make a new save.
7. Install the updated version of this mod and resume your game as normal.

This is not a perfect fix. Ultimately, the best thing to do is to follow this procedure but start a new game. I understand not many will do that no matter how hard I stress it, so this is a procedure that works pretty much all the time. I have heard about game save corruption in removing mods mid-game, but because the only objects added into the world are placed into a normally inaccessible cell and there is only one novel object added to the player's inventory momentarily, I personally have not been worried about it in my game saves. I have not had issues, but I figured I'd add this disclaimer.


 Bug reporting procedure: 

1. Read the ENTIRE description and watch the ENTIRE video before proceeding, don't just skim or skip through them.
2. Turn on debugging in the "Advanced Settings" tab of the Quick Attack Mod Configuration Menu.
3. Make note of all the debug message boxes (the ones that require you to select "OK") while attempting to use Quick Attack.
4. Try starting a new game and reproducing the issue, using the above steps.
5. Post the following in the bug report:
A. What stage of the game you were at/had completed when you installed Quick Attack.
B. What stage of the game you were at/had completed when you first experienced the issue.
C. The list, in order, of the debug messages you get while attempting to use Quick Attack.
D. Any other pertinent information such as mod list/load order, any patterns, etc.


 F.A.Q: 

Question 1. Are Fallout 4 Script Extender and Mod Configuration Menu actually necessary to use Quick Attack?
Answer 1. Both F4SE and MCM are absolutely, 420.69% required for Quick Attack to work at all. No exceptions, sorry.

Question 2. Why is this necessary? This is Fallout 4, not Call of Duty!
Answer 2. This actually started out as a fix for me personally, because I love a specific weapon here on the Nexus but the melee animation is bugged. After I found out that a console batch file could not do this, I finally took the time to learn Papyrus. Once I became comfortable with it, I made the decision to make this work for everyone else too, for any of your favorite weapons to shoot, for any of your favorite melee weapons, and fully customizable. Quick Attack is the brainchild of an eyesore bug, my want to learn Papyrus and finally make a novel mod, and my own stubbornness. Take it or leave it!