Sneak Attack (Mostly) Fixed

Created On
Updated On
Total Views
Total Downloads
SmoothAsFelt and DuskNemesis

**This mod has been made mostly irrelevant by the existence of the Cunning Strike mod (Download here: ). I will keep this mod up simply for those who prefer it for whatever reason, or in case saves have become dependent on it. Go check out the mod linked though, as it's a much cleaner fix compared to the band-aid solution I have come up with.

Footnote to this: If you want to uninstall this mod and switch to the Cunning Strike mod, you must respec any rogues in your party (and companions that are not in your party but in your camp, notably Astarion unless you've changed him) into any class that is not rogue. Just keep them at level 1, save your game, and then you can safely uninstall the mod. Then, after you install the Cunning Strike mod instead, you may load your save safely and respec back into rogue. It will cost you 200 gold, but there's nothing I can really do to fix or prevent this given how the game crashes when loading abilities/spells that you no longer have installed. If it bothers you, you can always cheat engine in the extra 200 gold for the respecs.**

So I am new to modding, forgive me for the very likely bugs that using this mod will entail. It was a complicated process that required some workarounds to get it to work. The basics are as follows:

The mod grants rogues a new action at Level 1. It's still named Sneak Attack, but it uses a bonus action, uses your off-hand weapon, and has a different icon to distinguish it from the normal sneak attack. It changes how both the original sneak attack, and this added bonus action one works to not consume your hidden sneak attack charge if you miss. Essentially, if you use your Sneak Attack action, and miss, you can still attempt to Sneak Attack again with the bonus action.

Now you may be asking, "Why not just use the reaction version?"

Well that's where things get interesting. The "Interrupt" as the game files treats it, or in this case Reaction (even though it does not actually consume your reaction similar to Divine Smite) is now on a separate hidden resource called ReactionSneakAttack. This can only be used with your main hand (to prevent double-sneak attacks on your turn), and also has a charge limit of 1/round. Now, if you are able to make an additional attack thanks to something like commander's strike, the interrupt will appear giving you a chance to sneak attack.

I did this to prevent every single turn giving you two sneak attacks just by dual wielding, but there are still problems I have not been able to fix.

If you are given a second action, or you have Extra Attack, you can sneak attack on both the main attack and the extra attack. This will consume your ReactionSneakAttack charge though, so it can't stack with Commander's Strike and other similar features. Fighter/Rogue multiclassers rejoice I guess, I have no plans to fix this as I don't know how and I am playing a pure rogue in my game. I just wanted to share this for anyone who might be trying the same setup as me.

As an important note, you must make the attacks on your turn with the Sneak Attack (Melee) or Sneak Attack (Ranged) actions, do not use Main Hand Attack or Ranged Attack. If you do so, you will consume your reaction and not be able to Sneak Attack outside of your turn. I think it still works fine either way via Commander's Strike, but it will not work with attacks of opportunity, mage slayer, etc.

Install is simple, just drop it in your appdata/local/larian studios/baldurs gate 3/mods folder and enable it via a mod manager. Let me know if any bugs come up, I haven't really tested out attacks of opportunity yet as that is somewhat difficult to set up, but as I continue playing if I run into issues I will try to fix them and update the mod here.

Another side effect I have discovered with the off-hand sneak attacks is that you can actually use them even if you do not have an off-hand weapon equipped. However, it deals 0 damage + sneak attack damage, and still consumes your charge, so it's mostly useless