While the “d20 system” as introduced by D&D third edition wasn’t the first game to have this not-so-good feature as a core part of the design (the original “d6” version of Star Wars has the same problem, requiring you to add dice together), it’s well known and can serve as an example of what I’m talking about.
In 3e, 4E and 5e D&D, you roll a d20, then add a number to that die roll, and then compare to a target number. In its worst iteration, that target number is even kept secret by the Dungeon Master, but even when rolled against an open target number, this has a couple of problems.
Since the d20 result number is variable, you’re afforded to re-add this for every single strike. If instead it was the target number that changed, then you’d only need to do it once. The most straight-forward example of that is the house variant of subtracting your to-hit bonus from the enemy AC to “know what you need to roll”. For example, you’re bashing a poor AC 13 skeleton and you have a +3 to hit? You need to roll ten or higher. And now you know that for every strike against those rattling bones, you need to roll a ten or higher. Math once instead of math all day.
The math-all-the-time isn’t even the biggest problem. Some people are happy to do nothing but add add add all day long it seems. And against a weak foe it might be one-hit-one-kiss anyway i.e. you only needed that one strike.
But the timing of the math is what bugs me the most. You roll and then you add. I wanna have all the math behind me when I roll so I only know what I need to look for! Fortune at the very end of ends!
D20 didn’t even change anything because you could already roll, add their armor class to your roll and compare that to THAC0 and you were done. You could already do d20 + small number vs big number. Not that I like doing that, I hate it, as you could see above.
In Rules Cyclopedia, on page 108, it says to subtract the enemy AC from THAC0 so you know what to roll. Good. There’s also a less good version on page 9 where it says to subtract your rolled roll from your THAC0 to find out what AC you hit. Awful. All the same problems as in 3e but now you’ve got to subtract all day long.
Even though one of the THAC0 approaches, specifically “subtract their AC from your THAC0 and know that before you roll”, makes sense, what does not make sense is that on top of that you still get more bonuses sometimes and if so, those bonuses do go on the die roll instead of lowering the target number. I can’t even with this.
There’s an even bigger problem called Target 20, which is for systems that use THAC0 and descending armor class where you need to roll your die and then add add both of those things together and then compare that to twenty. So it’s all of the worst of the previous add-after-rolling methods but with one more term, congratulations. And unfortunately it’s made its way into many OSR games.
I’m not sure there even needs to be three terms. With saving throws, you just roll over a specific number and you’re done. In Apocalypse World the targets numbers are always seven and ten, maybe that’s fine? But then again you do need to add your Sharp and Hard and stuff to the dice.
I accidentally invented a method which I thought was only good for cards, we used them for initiative cards, but turns out it’s good for dice too, I didn’t think of that at all.
One game that uses that method is Christian Mehrstam’s Suldokar’s Wake. Rolling high is good but so is rolling low. With old school stats, roll over your THAC0 or under their AC to hit; with new school stats, roll over their AC or under your to-hit-bonus to hit. Finally I can speedrun that Castle Ravenloft boardgame which uses 4e-style stats.
There’s also the idea of having a low decreasing attack roll value (like how saves work in the old game) and a small increasing AC value; add them together and roll over that. But that needs conversion from every system which is no fun. If only that had been the standard, that woulda been my favorite method.