Baldur's Gate 3's spell tooltips have been lying to you for (potentially) months, though if you've been running off the % chance to hit, you're just fine
If there's one thing Baldur's Gate 3 players know, it's that Sacred Flame, Shadowheart's starting offensive cantrip, almost never actually lands. Players have been trying to figure out the arcane maths behind this most accursed of spells which, by all accounts, should probably hit some of the time—but it remains a mystery.
This morning, however, I stumbled upon a thread on the game's subreddit that appears to have found the culprit, decrying Sacred Flame's lack of accuracy as a mirage. The conclusions drawn don't appear to be exactly right, but in investigating this myself, I've confirmed that Baldur's Gate 3's spell tooltips are indeed bugged—and may have even been this way for months.
But first, if you're unfamiliar with tabletop systems, you're going to need some very boring technical details to understand what's going on here. Roll a constitution saving throw to bear with me.
What's a saving throw?
There are, broadly speaking, two kinds of offensive actions in D&D 5th edition. These result in either an attack roll being made against an armour class, or a saving throw being rolled. A lot of spells will ask for the latter.
A saving throw is a roll made by the target of a spell against something called a "spell save DC", which is essentially what they need to meet or beat to resist the spell's effects, determined by the caster's stats.
The problem, as user UncommonEra highlights, is that the tooltip for every single spell that needs a saving throw is bugged: "the tooltip states that your Spell Save DC is based on YOUR DEX modifier, rather than your spellcasting modifier (usually WIS) … the biggest takeaway is that it WILL hit more often than it says it will."
That can't be right, I thought, so I hopped into the game myself to test it. Turns out, the truth is more complicated than I thought. It's also more annoying.
Science is magic you write down
Here's how I tested this theory using Sacred Flame, a Cleric cantrip that forces a dexterity saving throw against the caster's spell save DC, which is calculated using the wisdom stat.
I made sure that both my target's dexterity and my caster's wisdom were both 10, which, at level 1, means that the target is trying to beat a 10 or higher on their die. This means that the UI should display a 45% chance for the spell to land (the target has 11 out of 20 sides on the die that allow them to pass). It did.
Then I adjusted the target's dexterity, and the number changed accordingly. Similarly, I changed the caster's wisdom while leaving the dexterity alone—to similar results. To show my working, everything panned out as follows.
- +2 to dexterity save against a spell DC of 10 = 35% chance to land, displayed correctly.
- +0 to dexterity save against a spell DC of 12 = 55% chance to land, displayed correctly.
However, in both instances, the DC on the tooltip was completely inaccurate. The game is, indeed, lying to you by accident. As the thread's creator confirms, the tooltip is running off the caster's dexterity rather than the caster's wisdom, which is completely wrong.
To further analyse this, I went ahead and prepared Banishment, which uses a charisma saving throw, on the same character—and the spell save DC on the tooltip used the caster's charisma.
So that's the mystery solved, right? The spell save DC on the tooltip is lying to you, but the game will still correctly show your percentage chance of success, right? Enter this person who, quite rightly, has noticed that the % chance to hit of Tasha's Hideous Laughter is inaccurate, displaying a 56% chance of connecting.
I proceeded to then tear my non-existent hair out for the next few minutes trying to reproduce this, but I think I've found out what's happening.
Always check for advantage
In the example given, their opponent's rolling with a +6 against a DC of 22. This should require a 16 or higher on the die to beat, resulting in a success rate of 75%.
I think what's happening here is that the good warlock Turbulent-Quality-29 has missed that their target has advantage, which means they're rolling two 20-sided dice and picking the higher one. Mathematically, this shakes out to a +5 modifier on the roll for statistical reasons I am in no way qualified to explain, so here's a different thread that lays it out on the D&D subreddit.
They cannot be blamed for this, because I was similarly confused when I had Gale point a dex-save based spell against our party's barbarian during testing, saw an incorrect number, and realised that Barbarians get advantage on dexterity saves as per their Danger Sense feat.
Anyway, this would give their target the equivalent of +11 on the roll to beat a DC of 22, which shakes out to a 45-46%ish chance of their target saving or, as the mouse-over would display, a 55-56% chance of landing the spell.
In case that made your head hurt (I'm wondering where my painkillers are) here's the gist: As long as you don't care about tooltips, you're fine. The mouse-over number is still correct, and everything is being rolled properly in the combat log. Still, judging by this thread from about six months ago, this is a bug that's persisted for a while.
Despite the fact I've got plenty of glowing words to say about Baldur's Gate 3, this is a major fumble from a UI standpoint and it's kind of baffling it's been kicking around for this long. It's never impacted me because I'm very familiar with the D&D 5e ruleset, but any new player trying to suss out why their Sacred Flame isn't landing might be led completely astray, and given an entirely incorrect understanding of how spells in the system work. Hopefully, Patch 7 will address this issue before more are led down this accursed path.