Makes i3ncore's dodge mod more advanced and useful but dodge is still simple and responsive. All features can be changed/toggled with a holotape. (not MCM) Requirements: "Simple Dodges - Sidestep Dodges and Dodge Rolls" + "Garden of Eden Papyrus Script Extender"
Only the main file is required and supported. Basically, I don't guarantee that any other files will work with this mod.
Permissions and credits
Credits and distribution permission
Other user's assetsAll the assets in this file belong to the author, or are from free-to-use modder's resources
Upload permissionYou are not allowed to upload this file to other sites under any circumstances
Modification permissionYou must get permission from me before you are allowed to modify my files to improve it
Conversion permissionYou are not allowed to convert this file to work on other games under any circumstances
Asset use permissionYou must get permission from me before you are allowed to use any of the assets in this file
Asset use permission in mods/files that are being soldYou are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
Asset use permission in mods/files that earn donation pointsYou are not allowed to earn Donation Points for your mods if they use my assets
Console modding permissionThis mod won't work on consoles or would not be acceptable on Bethesda.net according to their rules
Author notes
This author has not provided any additional notes regarding file permissions
File credits
i3ncore, author of "Simple Dodges - Sidestep Dodges and Dodge Rolls" mod. toounx, author of the original mod's dodge roll animation. LarannKiar, author of Garden of Eden Papyrus Script Extender.
DP will be distributed equally among mod authors other than myself.
Donation Points system
This mod is opted-in to receive Donation Points
Changelogs
Version 0.87BETA
1: Added visual effects to Perfect Dodge. (Use "VATSScanImod" in the base game as VFX.) 2: Added "Slide Anim - Quick/Type2" option. If Quick, the animation will be somewhat shorter. (Like my mod, "Slide - Standalone".) 3: Minor improvement to add holotape to player immediately after exiting Vault 111. 4: Minor changes to slide sounds. Fits both Slide Anims.
Version 0.86BETA
1: Fixed an issue where camera height for sneak was not applied after Slide. 2: Added "SimpleDodgesAddonF4SE_" as sender to GoE/F4SE installation error notification message. Now at least you know where this message is coming from.
Version 0.85BETA
1: Supports "Dak's Shoulder Mounted Machinegun (M2)" and "ITO Institute Technology Overhaul - Weapons". 2: For those having issues with sprints starting after dodge roll, the "Dodge Anim Fix" option has been re-implemented (mainly for debugging). You can enable animation event debugging. Expected: "AnimationEvent = FootSprintLeft" or "AnimationEvent = FootSprintRight". 3: Disable some controls during Slide (VATS/Menu/etc.) 4: Changed trigger event for Slide. This change is more sane but somewhat experimental. 5: Made some debug messages slightly more detailed.
Version 0.84BETA
No more random slide animation delays.
Version 0.83BETA
1: Mod name and holotape name changed from "Dodge Mod Addon" to "Simple Dodges Addon F4SE". 2: This update is for Garden of Eden Papyrus Script Extender version 17.1. If GoE 17.1+, redirect to new functions that are more responsive and stable. ;That said, the Simple Dodges behavior is script-free, so this improvement only affects "more responsive iframes" and "allowing button spam".
Version 0.82BETA
1: Fixed a minor issue where melee/firearms checks were incorrect when re-equipping a weapon when ammo was zero. 2: Changed allow rotation function ("Unlocked camera controls during slide and melee dodge roll") from script to annotation in animation file. Allow rotation is now more accurate and reliable.
Version 0.81BETA
Unlocked camera controls during slide and melee dodge roll.
Version 0.80BETA
1: Renamed "Sprint-Sneak Slide" to "Slide" for naming consistency with First Person Dodge mod. 2: Improved the script for "Slide" and resolved responsiveness and reliability issues. 3: Fixed a bug where weapon draw animation would fail during hit reaction animation.
Version 0.75BETA
1: Changed melee dodge back animation to toounx's animation base. Compared to vanilla, dodge distance is longer and animation duration is shorter. 2: Tweaked firearms dodge cooldown again to match dodge roll animation (0.8s).
Version 0.74BETA
1: Added "Power Attack Only" to Perfect Dodge option. If this is selected, it will only be available if the enemy is power attacking. 2: Power armor jumping costs 10 AP and triggers 0.15s iframes, and also triggers Perfect Dodge if enabled. In the current version, it can only be changed with console commands, not with holotape options. ("DIFAPCostPGV to XX" and "DodgeInvTimePGV to 0.X")
Version 0.73BETA
1: Added "Set Default Jump Height" for Jump Key Input Mode. This allows you to change this without console commands. 2: Added dodge start sound. Not optional, this is always enabled in the current version.
Version 0.72BETA
Added "(F/M) If No AP" (No Dodge/No iframes) option.
Version 0.71BETA
Adjusted melee dodge roll animation, mainly for forward and backward. It was previously shared with firearms and the animations were somewhat weird. (By editing toounx's animation as pose, I was barely able to edit it without any specialized knowledge. Don't expect anything more advanced than this to happen.)
Version 0.70BETA
1: Improved responsiveness of blocking dodge available when Jump Key Input Mode is disabled. 2: Changed melee dodge to do a random right/left step instead of a back step if not moving. 3: Cleaned up script properties that are no longer used. (If you have papyrus logging enabled in your ini settings, you will receive about 30 harmless one-time warnings.) 4: Cleaned up holotape options menu. Also removed the "Dodge Anim Fix" listed under "Experimental" and made it always enabled. 5: Optimized the equipped weapon check function and removed keyword checks. 6: Some other tweaks and optimizations.
Version 0.65BETA
1: Fixed jump height getting stuck at 0.0 while swimming when Jump Key Input Mode is enabled. 2: Fixed jump height getting stuck at 0.0 when changing camera state during dialouge and exiting dialouge when Jump Key Input Mode is enabled. 3: Changed the weapon keyword check function from "HasKeyword" to "HasKeywordInFormList" by OnItemEquipped/OnItemUnequipped events and added some keywords. This theoretically eliminates the possibility of other mod weapons being overlooked.
Version 0.64BETA
1: Fixed broken dodge animation for "AnotherOne CyberOut 77" or any katana mods that use that animation. 2: Blocking while blocking can now trigger dodge if Jump Key Input Mode is disabled. Jump Key Input Mode is still highly recommended as it is more responsive and convenient. 3: "IsFirstPerson" graph variable seems to break after exiting Vertibird and stuck to false until using power armor. So the script was changed to check for "bGraphDriven" instead of the "IsFirstPerson" graph variable, and some script conditions related to this issue were revamped somewhat. (This was a more annoying problem than I thought and it caused the update to be delayed.)
Version 0.63BETA
1: Forward dodges always forward dodge rolls while sneaking. 2: Changed the method of checking for installed addons. 3: Fixed sneaking or blocking animations triggering during melee forward dodge rolls. (Melee Dodge Roll Addon - 4 directions)
Version 0.62BETA
1: In "Melee Dodge Roll Addon - 4 directions", fixed issue where attack/power attack input during forward dodge roll cancels animation. Only the main file is updated. 2: Added "WeaponTypePlasma" keyword to script condition checks to fix an issue caused by a vanilla bug where the Plasma Pistol/Rifle didn't have the "QuickkeyGun" keyword.
Version 0.61BETA
1: Added "(F) Dodge Anim Fix". This is listed under experimental just in case, but it works fine. - "Fixed an issue where the animation was buggy when inputting in the order of "direction, neutral, direction" during firearms dodge roll animation." 2: Fixed dodge not working with Buzz Blade animation type melee weapons.
Version 0.60BETA
1: Added "Perfect Dodge". Dodge at the same moment as an enemy's melee attack triggers slow time effect and iframes for 1 second. 2: Melee forward dodge roll animation during sprint now works without "playidle" script, no more delay.
Version 0.56BETA
1: In Bash Key Input, fixed behavior when spamming a bash attack while dodge. 2: Minor changes to iframes related functions make avoid hits more responsive, especially in Jump Key Input Mode. In previous versions this part was covered by fake iframes.
Version 0.55BETA
(Hotfix): Fixed an issue where the animation graph variable check added by version 0.54 was breaking the Bash Key Input version of dodge iframes.
Version 0.54BETA
1: If Melee Dodge Roll Addon is installed, unlocks 0.4s and 0.5s options for "*(M) iframes". 2: If both legs are crippled, dodge and iframes are not triggered. 3: Prevents dodge key input triggering iframes when stimpak animations are playing.
Version 0.53BETA
(Hotfix): Version 0.52 made Melee Sprint-Sneak Slide somewhat unstable, this was causing iframes to be canceled before 1.2 seconds, version 0.53 fixed this issue.
Version 0.52BETA
Minor update to main file (for "Melee Dodge Roll Addon".)
Version 0.51BETA
1: Added "*(M) iframes" to allow different settings between firearms and melee. (0.1s/0.15s/0.2s/0.25s/0.3s, Default iframes is 0.2s) 2: If current AP is less than AP Cost, dodge animation will be triggered but without iframes. 3: Adds iframes 0.2s to melee forward dodge roll. (add to base iframes) 4: Slightly improved melee dodge iframes responsiveness. 5: Minor text tweaks to "Settings" in holotape.
Version 0.50BETA
1: "Jump key Input Addon" has been merged into the main file. 2: "dmelee" option (i.e. melee dodge roll) has been omitted. 3: "iframes, Entire Animation" option has been omitted. 4: Disabled dodge key/button input during dodge animation. 5: Added "(F/M) Sprint-Sneak Slide". It has 1.5x AP cost and 1.2s iframes. 6: Added sound to melee dodge roll/slide. (if Jump Key Input Mode is enabled) 7: Added fake iframes (reducing damage by 100%) for about 0.1 seconds to firearms dodge rolls in a non-scripted way inspired by my PS4 modding. This does not avoid hits but works without any delay based on the firearms dodge roll animation.
Version 0.40BETA
1: The options menu has been pretty sorted. 2: Added "(M) AP Cost" to allow different settings between firearms and melee. (Default cost is 10.) 3: The first known issue, blinking iframes caused by bash attacks has been almost completely resolved. 4: However, "firearms, sidestep dodge" is no longer supported due to the way the mod functions do this. If I find a solution, the firearms sidestep dodge will be unlocked again in the upcoming version. 5: Debug is now disabled by default, and is now non-persistent (disabled when reloading the game).
Version 0.32BETA
1: The first known issue, blinking iframes caused by bash attacks has been somewhat resolved. (Main files) 2: Allow dodge during stagger/hit reactions. (Main files/Optional files) +(Fixed, for Jump Key Input Addon): Fixed an issue where the dodge animation for the 2 handed weapon was always "roll" instead of "step". +(Tweaked, for Jump Key Input Addon): In previous versions, forward dodge was a "forward dodge roll" even when melee dodge was set to "step". This update makes the following changes: "Forward walking = 50% left step, 50% right step, and if sprinting = forward dodge roll."
Version 0.31BETA
1: In version 0.3BETA, the main scripts have been slightly optimized, so you can expect slightly better iframes response. At this point, I think the mod has reached the fastest theoretical iframes responsiveness. 2: Reduced the cooldown of iframes in the main script to allow dodges to run in shorter intervals. 3: Made minor changes to the options menu. Even without the addon the menu for the addon is displayed but they are marked with an asterisk and contain text explaining that it is not available without the addon. 4: Added AP Cost option. AP cost is 0 to 30, default is 15. Or do "set DIFAPCostGV to XX". +(Hotfix): Fixed "DIFAPCostGV" (global value) records with out-of-range IDs for ESL flags.
Version 0.21BETA
1: Changed the mod title and holotape name to "Dodge Mod Addon (iframes, etc.)", plugin name is still "DodgeInvincibilityFrames.esp". 2: Added "Jump Key Input Addon" in the optional file, it's an addon for addons. 3: After this update, only "Simple Dodges - Sidestep Dodges and Dodge Rolls (version 2 or higher)" is supported. +(Hotfix): I fixed an issue where certain combinations of camera state/weapon draw state in mod functions would cause iframes to stop working when the game was loaded without the Jump Key Input Addon.
If current AP is less than AP Cost, dodge animation will be triggered but without iframes. Or use the "If No AP - No Dodge" option.
Power armor is not supported, but works as follows: Power armor jumping costs 10 AP and triggers 0.15s iframes, and also triggers "Perfect Dodge" if enabled.
"3 way direction dodge roll and back step" is available for Firearms.
"3 way direction step" is available for Melee. (Or you can use Melee Dodge Roll Addon 1.X or 2.X.)
In this mod, melee dodge can be triggered by Jump Key Input Mode or block while block. (Jump Key Input Mode is still highly recommended as it is more responsive and convenient.)
[Description] All features can be changed/toggled with a holotape. Holotapes are automatically added to your inventory, or you can use a chemistry station and craft it in the "utilities" (or "settings"?) category.
F = Firearms M = Melee * = for Jump Key Input Mode
"Debug" - Default is disabled and is non-persistent (disabled when the game is reloaded). This applies transparent/translucent visual effects to iframes.
"Settings" - You can set global values for settings in the original mod, but some have been omitted. Also, this is not for Jump Key Input Mode.
"Invincibility Frames Addon" - Default is enabled. This toggles the mod enabled or disabled.
"AP Cost" - Default is 20/15 (F/M). You can choose from 0/5/10/15/20/25/30, or use the console command.
"iframes" - Default is 0.3s/0.2s (F/M). You can choose from 0.1s/0.2s/0.3s/0.4s/0.5s for firearms, 0.1s/0.15s/0.2s/0.25s/3s(/4s/5s, if Melee Dodge Roll Addon is installed) for melee, or use the console command.
"If No AP" - Default is "No iframes". If you want to disable No AP dodge, use "No Dodge".
"Slide" - Default is enabled. Triggered by sneaking while sprinting, has 1.5x AP cost and 1.2 second iframes.
"Perfect Dodge" - Default is enabled. Dodge at the same moment as an enemy's melee attack triggers slow time effect and iframes for 1 second.
"Jump Key Input Mode" - Default is disabled. If your weapon is drawn, replace jump with dodge. When this system is enabled, dodge roll control from other sources will be disabled. Highly Recommended!
"(F) If Not Move" - Forward dodge or back dodge, for firearms.
"Version 1.X" - Replace Melee Dodge in Jump Key Input Mode with 3 way direction dodge roll. (Right = Right Dodge Roll, Left = Left Dodge Roll, Forward/Backward/Standing = Forward Dodge Roll)
"Version 2.X" - This is somewhat experimental, please use this and give feedback if you want a 4 way direction melee dodge.
[About Melee Dodge] For convenience, if Jump Key Input Mode is disabled, it is called Block Key Input Mode. Block Key Input Mode is similar to the original Simple Dodges mod, but works differently.
If Block Key Input Mode, 1: Always forward dodge roll while sneaking. 2: Otherwise, first trigger blocking and do 3 way direction dodge while blocking. (Right/left/backward) 3: If forward or no direction, trigger right or left dodge.
If Jump Key Input Mode, 1: Forward dodge roll while sneaking forward/sprinting. (So sprint forward dodge roll is only available in Jump Key Input Mode.) 2: If forward or no direction, trigger right or left dodge.
[Notes]
"Jump Key Input Mode" - This system dynamically changes the game setting "fJumpHeightMin" that defines the jump height. You can change the default jump height with "Set Default Jump Height" or the console command. Also, "JumpRoot" in IdleAnimation has been edited. Generally speaking, it's still conflict-free.
"Melee Dodge Roll Addon 2.X" - A side effect is that NPCs' melee dodge animations are also affected.
"Options" - No MCM, because I haven't learned it yet. I'm not a beginner but not a professional.
"Uninstall" - If you later want to uninstall the mod, I recommend using a holotape to stop the mod.
"Side step for firearms" - I decided to (temporarily) omit this. Technically:
Spoiler:
Show
I found a reliable "bAllowRotation" animation variable to detect is bash attacking, but this also triggers on firearms sidestep dodge. I've decided to use this animation variable, so it's a trade-off with the firearms sidestep dodge.
"Melee landing animation" - To make a non-scripted melee sprint dodge roll, I needed to override "JumpRunImpactLand.hkx" (variant for landing animation after falling from height). So when the melee weapon is drawn, the forward dodge roll animation is played instead of this landing animation.
"Perfect Dodge" - While the slow time effect with iframes by "Perfect Dodge" is active, power attacks/bash attacks do not consume AP and aid/food from the favorite menu have no effect. This is a side effect and minor issue of giving the player ghost status.
[Known Issue]
Sometimes only invincibility frames are triggered when the dodge animation is blocked for some reason.
[Tips]
Especially for gamepads, Jump Key Input Mode is more responsive and reliable than Bash Key Input, because the former is triggered by the "OnControlDown" Event while the latter is triggered by the "OnControlUp" Event.
"Set DodgeInvTimeGV to 0.XX" (or "Set DodgeInvTimeMGV to 0.XX" for melee) can be used to change the invincibility frames. (console command)
"Set DIFAPCostGV to XX" (or "Set DIFAPCostMGV to XX" for melee) can be used to change the AP Cost. (console command)
"Set DIFJumpDefaultHeightGV to XX.X" is the default value this mod refers to to toggle "fJumpHeightMin". (default is 90.0) You can change this if you have a clear understanding of what you want. e.g. if you have something like a higher jumping mod installed. (console command)
A: No, because the original mod doesn't support power armor animations. But, "Power armor jumping costs 10 AP and triggers 0.15s iframes, and also triggers Perfect Dodge if enabled."
Q: Does the mod include an option to replace the dodge input with any key/any button/double tap/long press etc?
A: Unfortunately Jump Key Input Mode is the only input option available for this mod. Because technically the input should be a "control", not a "key". It's gamepad friendly and keeps dodge animations script-free, but lacks the flexibility of key customization. Also, the delay the script itself has and the delay caused by the double tap input could easily ruin this mod.
Q: Can you allow jumping while "aiming/forward moving/something"? (Jump Key Input Mode)
A: I understand your idea, but Jump Key Input Mode was not intended to be toggled frequently, as it would hijack the jump behavior. I believe I can do something with Actor Velocity Framework functions, but I won't work on it for now.