The D&D 5e Monster Manual has been out for awhile now, and it is 95% goddamn amazing. I want to get that out of the way, because this is a discussion of one of its problem areas. Seriously, though, it has a great variety of monsters, excellent artwork, a reasonable level spread, and incredibly compelling lore. I have read a lot of monster books in my life, and this is the first time I have ever found lore that made me want to run more games immediately, using this creature right here.
Anyway, the problem is immunities. Yes, I'm always complaining about them. Today, though, I'm going to talk in detail about why this implementation is a problem and a better role for immunities in game design.
If you page through the Monster Manual, you'll quickly see that immunity to various flavors of damage and conditions is quite common among creatures of every level of play. The most common of these are poison damage, and the charmed, frightened, and poisoned conditions. I understand that poison/poisoned immunity represents having no metabolism, but seriously, there are subclasses built almost exclusively around the charmed and frightened conditions.
Most of you remember what it was like for rogues in 3.x. Phenomenal murdering Sneak Attack powers... but if you're fighting any significant number of constructs, elementals, or undead, you should have just picked a different class. Any other class. At least in 5e it's not whole classes, just subclasses - but I feel really bad for enchanters and fey-pact warlocks, because charms are good crowd control that will work very little of the time, if you're up against very many non-humanoid opponents. The good news is that they can learn other spells for such situations; the bad news is that they aren't using any of their subclass features, so they should have played something else in the first place.
Poison spray looks like a great cantrip on the surface. It does even more damage than fire bolt! What's not to like? Other than its short range, I mean. Well... that d12 damage isn't going to affect many of the creatures you're fighting. Relatively few creatures are immune to fire - tons and tons of things are immune to poison. If you're going to take poison spray, make damn sure you have a backup plan, and that backup plan needs to not be chill touch, because more than a few creatures are immune to both cold and poison.
A weird thing - there are tons of creatures immune to the charmed and/or frightened conditions, but because confusion isn't a condition and they don't have a "mental effect" parent class that includes all three, nothing is immune to confusion. The creatures that justify their charm/fear immunity by their mindlessness don't get a pass on confusion, and that makes no sense. Since immunities are based on "what makes sense for the creature," it really bugs me that there's no broad consistency. Also, I really wonder why skeletons and zombies are subject to the charmed condition but flameskulls, ghouls, and ghosts are not. I would have thought that the thinking undead could be more influenced in their thinking, not less.
Okay, so let's talk about weapon immunity. There are a small number of creatures that are immune to nonmagical weapons, and rather more than are resistant to weapons that are neither magical nor (material type). This is a massive throwback, ultimately to 2e and prior. The problem here is that satisfying the condition for ignoring the resistance or immunity isn't an interesting choice on anyone's part. Magical weapons always satisfy the conditions for ignoring damage resistance or damage immunity, and even if they didn't you would still want magical weapons for their other properties - at absolute minimum, attack and damage bonuses. Either you can't hurt the creature, or you can hurt it using the weapon that was already optimal. Also, if you're a paladin (with smites), an archer ranger (with hail of thorns and its upgrades), a blade-pact warlock, a monk of 6th level or higher, or a Circle of the Moon druid of 6th level or higher, you don't even need that much - magical damage is just a way of life for you. Sorry, Beast Master ranger, this is just another place where you lose out, because I don't think there's any currently-evident way for your pet to deal magic damage.
What that comes down to is that barbarians, fighters, rogues, Valor bards, and melee rangers are the only people that really need to plan ahead for how they're going to deal magical damage. (If your melee cleric isn't preparing any attack spells, just wait for 8th level.) Therefore the solutions for dealing with immunity to non-magic damage are level progression for some classes and gear progression for others. Unless the party wizard prepares magic weapon, there aren't a lot of solutions once you're actually in the fight.
There are a series of different solutions here. Since all design is just a series of interrelated choices, I'll go through some of them here.
Solution One: Variety
WotC has a solution to this, but they buried the lead on it like whoa. It's in the D&D Basic release of the DMG, on page 58, at the bottom of the bulleted list of advice on making fun combat encounters: different types of monsters working together. This is a good idea regardless of anything relating to immunity, and one of the under-appreciated lessons of 4e. Even in a pack of wolves, make one or two of them a bit different, because variety is good. Even solo encounters are improved with the addition of an Adds phase.
This improves on the immunities issue as long as you make sure the Venn diagram of your creatures' immunities means that everyone in the party has one or more opponents to face. It's going a little far to have each monster in the group be vulnerable to only one PC, but even that kind of encounter has its place. What this solution leaves out is telegraphing immunities to your players - if the spellcasters are spending a bunch of their per-long-rest abilities just to get shut down by immunities as they figure out what they can and can't do, that's more frustrating than compelling. Players will probably learn not to use poison on undead, or just about any kind of condition on incorporeal undead, or any kind of mind-affecting power on thinking undead, but beyond this D&D doesn't have a robust language of cues as to what sorts of effects are a good idea against a given creature. (Chromatic dragons, however, are color-coded for your convenience.)
You can also get into a situation where, by chance, the party opens the fight by focusing fire on the thing you had intended for the weapon-users to handle while the spellcasters tackle the weapon-immune creatures. Because everyone is targeting the monsters you had planned for the fighters and rogues to go after, they die quickly... and then the fighters and rogues get to sit tight while they wait for the casters to finish off the rest of the encounter. Telegraphing helps with this, but there's not going to be a perfect solution that generalizes across all of the encounter groups you might want to implement.
Solution Two: Immunity as Plot Hurdle
This is a different kind of immunity, basically outside the paradigm presented in the Monster Manual, though I'll also get into how to combine them. In books, movies, and video games, it's a normal feature of gameplay to have antagonists that the protagonist(s) can't possibly fight - they possess an immunity that the protagonist has to solve. This is the fictional root of damage immunity to non-magical weapons, of course - the magical weapon has to be discovered, reforged, mastered, or whatever in Act 3 or 4. Or, hell, maybe it's Mega Man and the cycle of new boss, new weapon, lather-rinse-repeat is the essential gameplay loop.
This doesn't translate all that well into ongoing campaign play, though. For one thing, the rules don't have room for needing a new and better magic weapon every time - the damage immunity rules are strictly pass/fail. For another, there is not a lot new to say in the world of the weapon-upgrade treadmill, if the whole plot of the game is going to hang a lampshade on it. (Without the lampshade, it's just an expected part of gameplay.)
So don't make it about getting a new and better weapon. Instead, like a lich's phylactery, the enemy is invincible while some other element is unresolved. Maybe there's a shield generator down on the forest moon of Endor. Look, as long as you don't do it every time and you change up what the source and flavor of the invincibility are, you can get away with lots of different uses. Once again, the key is telegraphing - if the Plot Hurdle is present and solvable when the PCs first encounter the invincible creature, then give some signal of this, because every round that goes by with the players using various attacks and getting nowhere, their goodwill bleeds away and becomes frustration.
Immunity as a plot hurdle is one approach to answering the question of encounter design. In a tabletop context, I would phrase that as, "Why shouldn't the PCs just make a straightforward assault with their biggest attacks?" (Or, to quote 13th Age, "What makes this fight unfair?") Now, there's nothing wrong with some low-priority encounters not needing anything more than a straightforward assault - easy encounters where the PCs build confidence and take their fun toys out for a spin. If all of your encounters have the same essential solution, you're missing out on a chance to make them individually memorable. Likewise, if you're using physical immunity, extremely high regeneration values, or damage-resistance-plus-enemy-that-can-squash-you every time, players grow jaded about it (even faster than normal), and the illusionism of the game suffers.
In summary, this kind of solution should be a tool in your toolkit, and that's all. For the love of God, never make it a player-accessible ability, or they will find ways to make you hate life. Also, establish this kind of thing in the first few adventures of the campaign, if possible. If your campaign gets to high-level without a single encounter where the PCs had to think outside the box, it may be too late to teach them new tricks, whereas if you show them that this is part of how the game and the world work early on, they will understand that the door is open to all kinds of other situations requiring inventive solutions.
Solution Three: No Effect, No Cost
For a recent Dust to Dust event, we used a puzzle fight, in which half of the monsters were immune to weapon attacks, and the others were immune to spell attacks. It was obvious that this could create a huge amount of frustration, so for that event only we decided to mitigate that feeling of frustration with a short-term rules change. For that one event, anytime an opponent called "No Effect" in response to a weapon swing or a spell, the spell or any combat maneuver was not expended. This freed the players to test each creature without feeling like they were just wasting their abilities. The final effect was that the PCs had to rearrange their battle lines while under fire, to match up their attacks against the opponents' vulnerability.
I will probably implement a comparable rule in my 5e game, but as a permanent state (since immunity is vastly more common in D&D than in Dust to Dust). Any attack that expends Combat Superiority, spell slots for smiting, or the like, that can do nothing whatsoever to all included targets by reason of immunity is not expended. Likewise, any spell that targets one or more opponents and can do nothing to them by reason of immunity is not expended. Sure, you still spent your turn to no effect other than gathering information about the opponent... but hey, at least you can use that attack on some other unfortunate soul later in the day. (If you're fighting an endless progression of creatures that are all immune to that attack or spell, it's legal in most jurisdictions to punch your DM right in the loins.)
The down-ish side of this is that I will probably wind up earning at least one such punch just from failing to think about every immunity going into play. Also, it takes a lot of the "bite" out of damage immunities, but if that frustration is critical to gameplay, the WotC designers are just wrong.
Solution Four: Change Magic Weapons
This is a solution that coexists well with the others. One of the earliest posts in this blog discussed replacing most permanent magic weapons and armor with temporary enchantments, mostly to drive the game economy. If having a magic weapon is an economic decision that PCs make several times over the course of play, then that's at least interesting... and there can be times when the treasure has dried up and you just can't afford anything better than good steel until your next big score. The downside of this is that there's some serious work involved in convincing players accustomed to traditional D&D paradigms that the temporary-enchantments-only structure is still a reward.
The other solution, as I see it, is to draw a distinction between "this sword has special, magical properties" and "this sword deals magic damage." Those bonuses to attack and damage signify the weapon's quality, but they don't give the weapon the extra je ne sais quoi to cleave through mystically powerful creatures like rakshasas and jackalweres - for that, you need some other enchantment that carries a sense of opportunity cost compared to other magical weapons. To implement this, of course, you'd also change the blade-pact warlock's weapon to not strike as magic, while monks and CotM druids would strike as silver or cold iron at 6th, and might not strike as magic until a much higher level. (After all, monks can wield weapons, and CotM druids can fall back on a quite substantial spellcasting ability.)
Now, this could all too easily create a situation where casters always qualify for ignoring damage immunity, while weapon-users might be frequently ineffective. Unless you've also thoroughly embraced Solution One, consider tacking on increased magical resistance to any creature with damage immunity to non-magical weapons. Immunity to non-magical weapons made a little more sense in a 3.x-and-prior context, where the spellcasters were always spending a daily currency to deal magic damage. With 5e's approach to cantrips (don't get me wrong, an improvement in literally every other context), casters deal magic damage every round, starting at level 1. If you want to re-level the playing field, take a page from 5e's rakshasa - everything that is immune to non-magical weapons is also immune to cantrips. Why? I dunno, the magic is too paltry to pierce their mystical warding. But mostly because the martial power source of fighters, rogues, and barbarians isn't really meant to suck compared to all of the others.
Solution Five: No Immunities, Just Big Resists
I have to admit, I was surprised when I saw previews from the 5e MM and learned that 2e-style damage immunities were coming back. I had genuinely believed that we had all come away from 3.x with the conclusion that immunities were lame and even red dragons could get burned if the fire was hot enough. You could always just re-engineer the rules terms "damage immunity" and "condition immunity" to mean something more like "resistance++" - comparable to or even better than the Evasion ability. Now, you might have to do some fancy footwork to make sure there's always a downgraded state of the spell effect ready to go, and you'd have to invent something for damage immunity to nonmagical weapons... but changing the definition of the term could be one of the least invasive solutions.
The downside of the Big Resists solution is that it turns a fight from a puzzle (to find a workaround to the immunity) into a grind (since the players can keep pounding their heads against the wall and win). If the question of encounter design is why a straightforward assault won't work, this is the non-answer - the straightforward assault will work, it just needs bigger numbers and more determination. This teaches players to double down and play through their boredom, since an approach that is working a little might just mean that this monster is really tough and this is how the DM wanted the encounter to go in the first place.
It has to be externally clear that this won't cut it, even if you have to describe an hourglass on the wall that gives the boss a huge murderous power-up when the sands run out. (One hopes you would be a defter touch than that, but when a clue-by-four is the tool for the job, accept no substitutes.) In video games, this is called an enrage timer, and it's meant to twist players' arms into solving the puzzle of the fight (which, in MMOs, may mean "have better gear"). Since this would probably feel kludgy in a tabletop game, I don't think Solution Five is all that great, but your mileage (and your gaming group's expectations) may vary enough from mine that it's right for you.
I do think Solution Five might be worth a close look for a lot of condition immunities (charmed, frightened, and poisoned most of all), as well as immunity to poison damage in particular. Those immunities are so endemic that characters reliant on them simply must have some workaround.
For my own campaign, I expect to implement 1, 2, and 3 at minimum, and I'll keep thinking about 5 and whether I really think individual creatures deserve their immunities. I probably won't implement 4 in a campaign already in progress, but if I were to start a new game, it might be right at the top of my list.