How do you implement difficulty settings?
I put extra supplies for HMP.
Remove some enemies for HNTR without having the extra supplies I added for HMP.
With both of these difficulty settings implemented that way it turns ITYTD into a combination of both HMP and HNTR; it has HNTR's lesser enemies and ITYTD's double ammo and health hard-coded stat, similarly to how extra supplies were added for HMP.
If I can think of something creative like disabling teleporting monsters or moving a key around I'll do that too.
If I ever make a mapset, I'll rename the difficulty settings to represent what's been changed.
One of my go-to's is enemy downgrades. I'll sometimes replace a Mancubus with a Hell Knight, and about 50% of Arch-viles get turned into Revenants on lower difficulties. I usually avoid changing fodder like Shotgunners and Zombiemen, tho, unless they're in flanking positions or something; killing lots of them is always fun and fairly low-danger.
I like upgrading items and adding powerups so giving extra armor and a soulsphere should work out nicely. Maybe remove/replace a few select troubling monsters but my aim is to keep the opposition similar but with boons you didn't need to type any codes for.
I tend to design for a shade of difficulty between HMP and UV and then balance from there. I consider UV to be properly done if I'm challenged by it, but am able to beat it with all monsters killed without any secrets collected (as I tend to put extra supplies in these). From there I'll submit a map to people for crit/feedback and adjust accordingly.
Lower difficulties see less enemies and some get replaced with lower-tier ones, though I do my best to make sure the replacements have similar roles. I'll never replace a pinky with a chaingunner, for example, but I may downgrade a revenant turret into an imp turret, or swap out a chaingunner for a shotgunner (if I do this though I try to be mindful of the change this makes to what ammo the player will have and adjust ammo pickups accordingly). Changing out a baron for a hell knight's an obvious one. Once I replaced a trio of revenants on UV with a single mancubus on HMP.
Generally speaking I tend to group enemies into these threat classes:
- Zombieman/Shotgunner/Imp/Nazi SS
- Chaingunner/Pinky/Spectre/Lost Soul
- Revenant/Hell Knight/Cacodemon
- Pain Elemental (individual/in a small encounter)
- Pain Elemental (clusters/in a large encounter)
And these roles (note monsters don't necessarily fit into just one group and can depend on how they are deployed):
- Pinners (Space/Movement Restriction): Shotgunner, Chaingunner, Revenant, Arachnotron, Arch-Vile, Spiderdemon, Cyberdemon
- Flushers (Space/Movement Enforcement): Lost Soul, Pinky, Spectre, Revenant
- HVTs (Combat Tempo/Route Management): Revenant, Pain Elemental, Arch-Vile, Spiderdemon, Cyberdemon
- Bruisers (Short-Range): Imp, Revenant, Pinky, Spectre, Cacodemon, Hell Knight, Baron, Mancubus
- Reachers (Long-Range): Shotgunners, Chaingunners, Revenant, Arachnotron, Arch-Vile, Cyberdemon
- Aerial (Can avoid walls, float, etc. fun stuff): Lost Soul, Cacodemon, Pain Elemental
- Fodder (Easy kills often as reward or to fill downtime): Zombieman, Shotgunner, Imp, Lost Soul (Best paired with a convenient set of barrels for the player to shoot to score big gibs!)
(You may notice the Revenant is in almost all of these groups; its popularity is imo derived from its unique versatility as a monster!)
Higher difficulties I'll use less generous health pickups. A soulsphere on HMP may be replaced with a set of three or four medikits, or a medikit might be downgraded to a stimpack. Sometimes I'll downgrade a megasphere to a soulsphere (again I try to be mindful of the fact that the player won't get a blue armor out of the deal there).
I tend not to touch armor, ammo pickups, or bonuses, though on HNTR if the situation calls for it I might replace a green armor with a blue armor. I tend to leave blue armor only for secrets or if a big fight is coming and I want to make sure the player is able to survive it.