A long time ago, I read an article titled, “Silver Bullet Combat” that was rather coherent about describing a common problem in game design. The article is now only available as a PDF and might eventually disappear, so I’m going to reiterate it in my terms.
So the gist of silver bullet style design is that Werewolves can only be harmed by silver, but once you shoot them with something silver they die instantly. A silver bullet is an option that can simply and clearly solve a problem that has no other (viable) solution. Part of game design is trying to differentiate the player’s options from one another, by making them good at different things. The easy way to do this to give enemies special resistances that can only be penetrated if you use a specific option. The trouble is that if a problem has a specific solution, then it’s not an interesting choice to solve it. There’s no tradeoffs, and no depth.
Batman Arkham Asylum is a great example of this problem. In Batman, you have 4 basic combat options, attack, counter, cape stun, and jump. These options have been designed such that they’ll produce the same results regardless of circumstance. Your punches will always take the same amount of time and recover in the same amount of time, the counter will prevent enemies from hitting you while you’re doing it, cape stun and jump lock to enemies. These moves lack inherent depth, because their use and outcomes don’t change situationally. In order to get you to use these basic moves, some enemies have knives, and some have stun batons. To hit enemies with knives, you need to stun them first. To hit enemies with stun batons, you need to jump over their heads first. There’s no other way to deal with these enemies, and the solution to them is a press of the button.
Remember Me is also a game featuring mechanics that lack depth. The attacks have different animations, but like batman, they’re all paired animations that don’t have real hitboxes and have the same startup and recovery times. Unlike Batman, Remember Me does the barest minimum to differentiate attacks, by making attacks either deal damage, heal you, or shave time off your cooldown abilities. This presents an interesting choice. Then, later in the game, there’s an enemy that hurts you when you hit it, so you need to hit it exclusively with healing punches, or you’ll die, thus creating silver bullet design. Apart from that however, the game has done the bare minimum to create an interesting choice by having you ask, “do I need to deal damage, heal myself, or get closer to one of my cooldown powers?”
An example of a game avoiding this problem would be Dark Souls. In Dark Souls, your options are light attack, heavy attack, block, dodge, parry, and walk. Unlike the prior two games, dark souls does not use paired animations, so attacks are allowed to function differently, and attacks have physical hitboxes that need to connect with the hurtboxes of the enemy. Blocking can hold out against multiple hits, and doesn’t require good timing, but slows your stamina regeneration as you hold the button, so you need to stop blocking in order to keep your stamina up. Dodges move you out of the way of attacks and are also invincible at the start, so can phase through attacks with good timing, but the recovery can be punished. Parries are tricky and only work on specific enemies, but are the strongest attack you can do on these enemies and they have no way to beat your parry, and you’re invincible when you do it successfully, which unfortunately means parries are a bit of silver bullet design. Walking doesn’t cost stamina, but you’re vulnerable to attacks, so you need to stand in a place where you won’t get hit. Since walking doesn’t commit you to a blocking or rolling animation, it also means you have more time to punish an enemy’s attack when they miss. These options all compete for attention, and are better or worse at times depending on the situation.
An example of a later game failing somewhat at this is Sekiro. In Sekiro, you have a spear weapon and an axe weapon. Some enemies have armor or shields they can use to guard against you, making them difficult to deal with. The spear can strip the enemy’s armor, and the axe can chop the enemy’s shield. Once you’ve done this, the armor or shield is completely gone and won’t come back. For some enemies, these can be so difficult to bypass that they make fighting that enemy almost infeasible without using the spear or axe (nearly impossible to get the enemy to show you their backside). Thankfully, the spear and axe have unique attacks that make them useful even against enemies without armor or shields, but the armor stripping and shield chopping abilities are one-dimensional and lack nuance. In a broader way, Sekiro suffers from a bit of silver bullet design in that the most effective ways to deal with enemies is typically well timed blocks to get a deflect, and using the mikuru counter when enemies use unblockable thrusting attacks. Neither of these options move you or the enemy, or have different outcomes based on your spacing relative to the enemy, you can stand in place and use them repeatedly. Sekiro has other viable options in battle, but they tend to only show up if you’re bad at timing these more basic defensive options.
For another genre, Pokemon largely succeeds at creating a battle system with a lot of different powerful team compositions, but the main storyline frequently fails at creating compelling challenges, because of the way the gyms are arranged by type. This makes overcoming a gym as simple as picking pokemon and moves that beat the type favored by that gym. Of course, it’s not a complete failure, because pokemon who don’t have a type advantage can still win, and pokemon who have a type disadvantage can still win if they have the right moves, or they’re high enough level (which is another problem with the main story, but I won’t get into it).
An example of a simple game that avoids this would be Zelda 1. In Zelda 1, you don’t have many discrete options for attacking enemies. You have a sword, boomerang, candle, arrows/magical rod, and bombs. Most of the time you use the sword, which has nuance in that you can only attack in the direction you move, so you can’t attack an enemy you’re moving away from, or around, unless you move in towards them slightly to change your facing direction. This means picking where you stand and when you attack is important. Zelda 1 has some small examples of Silver Bullet Design: You can’t harm dodongos without using bombs and you can’t harm digdogger until you play the recorder. The first example isn’t a total loss, because placing bombs such that Dodongos are on top of them when they go off is rather tricky. You can coax them on top or get them while they’re in a corner. The second example is more straight up silver bullet design, but you at least get a regular fight afterwards. Ganon also has a bit of this, because he can only be harmed by a sword (and honestly it’s a shitty fight in general and LTTP vastly improved it). Despite these, most of the game is about dodging projectiles and enemies, and picking the right angle to attack them from, which makes Zelda 1 deep, despite being simple.
It’s a basic expectation of games to give you a bunch of things and get you to use all of them. It can be tempting to design so that using different mechanics is required, but the real goal is to make the options distinct, yet still compete with each other for attention depending on the situation. This means designing options and obstacles so they have nuance. Both need to create unique situations, and mutate the situation so that the best option at any given moment is always changing, and unclear. This is what creates depth, creating unique situations where players make different challenging choices each time. Silver bullet design is the opposite of this: Having only one viable choice that does the same thing regardless of the situation.