The beauty of DnD and all TTRPGs is the fluidity which it encapsulates. Where a video game only has a small number of possible outcomes in any given situation, the options that a DM can come up with are limitless. However, unlike video games DnD characters can die forever, which makes mistakes and consequences more severe. So, how do you reconcile potentially extreme results of mundane actions, and to the inverse, how do you punish characters that have become so strong they're hard to kill outright? Let's take a look.
One of the most tried and true methods of showing a PC's actions have consequences is by tying in something from their backstory. This method relies upon having a decent backstory, which is why it's so important to have a session 0 and get a little bit of something from each player on where their character comes from. Again, this doesn't necessarily mean killing off a person from a character's backstory, it could instead mean being forgotten in your hometown, having your wife remarry, or even simply losing sight of the reason you left your home to begin with. Having a character's backstory interact with them makes the character and the consequences feel more real.
Curses and Loot
Players love their items. Conquering a dungeon and being able to gather a bunch of cool stuff is super fun and satisfying. But if the players begin to warp their morals in the name of materialistic goods, value things differently then how they perhaps should or used to, then using items as a road to teach a lesson can be very effective. Sometimes this can come in the form of placing curses on items. Sometimes it can mean taking items away from players through theft, damage or law enforcement. If you want to get super vindictive, you can make a piece of loot incredibly important to the party's success, but make the item itself weak. There are a variety of ways to go about it, but sometimes hitting the party in the rucksack is where it will hurt them the most.
The later in a campaign you get the harder it is to hurt and kill your party. In general this is good, it makes the players feel stronger and means the game stays dynamic. But when the party is rich and strong enough to Revivify anyone who dies, how do you keep making them feel the consequences of their actions? Well, maybe they survive but at what cost? Take away a fighter's use of his sword hand and is he still a fighter? Remove an eye from a wizard who needs to be constantly reading. I would say don't mess with actual stats if you can help it, but to be constantly reminded that a character's actions resulted in them struggling way more in the day to day may make them rethink what they want to do.
The NPCs that players interact with shape the game in so many ways. Having them change their opinions on the party, openly or subtly, will go a long way to making the players see what kind of an affect they're having on the world. The beauty of having NPC reactions be so prominent is that it can go both ways. Bringing around an NPC that hates the party and making them see that the party is good can be incredibly satisfying, and likewise having a character that the players love start to openly hate them would be devastating. Since the DM controls the NPCs, it's an easy, straightforward way to show your players how they are interacting with the world.
This is not an exhaustive list, and like anything in DnD, the best fit for your group is the one that you think is best. That being said, hopefully this little article has helped to inspire, provide ideas, or get the ball rolling on a plot point in your campaign. If you ever need anything from us, feel free to reach out. We love hearing from you and we're always looking for new ideas!