Cooldowns are not features. They were primarily invented to solve problems in the days of latency-riddled networking and limited bandwidth. By setting a server-side cooldown, the server can ignore specified input from a client and make sure that the clock behind the scenes isn’t choked.
Cooldowns have since stayed with games, probably because many of today’s game designers grew up on a diet of World of Warcraft, but also because they’re an effective and immediately recognizable tool for balancing complex features against each other.
But the thing is: all they really do is slap an arbitrary duration on your features. They make something that could be made intuitive and skill-based live entirely in the UI space.
Traditionally, action games never used them, at least not in the ubiquitous HUD progress bars we see today.
So just for the sake of argument, here are some ways you can not have cooldowns.
To use the feature you need to hold the button for a duration, for visible buildup, or chain inputs together. The difference from a cooldown is that it’s visible and interactive. Even if it’s still arbitrary, it moves the interaction into the game’s world space and won’t have you looking at the UI all the time.
- Charging. Hold the button for just the right amount of time, then release. The charged shot in the Metroid games.
- Chaining. Multiple quick interactions building up to a more massive one. Yoshimitsu’s sword thrust in Tekken.
Making the feature truly interactive, but with a crucial tradeoff, puts all the power in the player’s hands and once again removes it from the UI space. Rewarding the player for learning to use a repetitive mechanic at the right time will get them closer to the coveted Flow state.
- Combined Timing. Pull it off for a boost, fail to get penalized. Consider the reloading mechanic in Gears of War.
- Anticipation. Time it right to avoid a negative effect, time it wrongly to get punished. The self-healing in Stranger’s Wrath is a good example; use it in the midst of combat, and you get killed.
The most obvious way to limit an interaction is to tie it directly to a resource. This can be something you collect all the time as you play, like ammunition in a survival horror game, or it can be something that accumulates over time automatically.
- Hard Restrictions. Spells per day in D&D. Number of ammo rounds available in almost every game with guns. If you have the resource, you can use the feature.
- Durability features. Weapons in Diablo or Zelda: Breath of the Wild. A different theme on hard restrictions, but the same thing in effect.
- Accumulation and cost. Accumulating a resource along the way, enabling use by removing the accumulated value. Consider the “supers” of many popular multiplayer games, like Destiny 2 or Overwatch; and the resource accumulation and building progress bars in a strategy game.
- Self-Regenerating Resource. Use the resource while you have it; wait for it to recharge. Stamina in Dark Souls, force powers in Dark Forces 2: Jedi Knight. But also of course health in the Call of Duty games.
- Powerups. Temporary boosts that enhance specific features or make strong technical exceptions. When you find the Quad Damage in Quake, or the Active Camouflage in Halo, it’s the game’s invitation to make the best of it while you have it.
Communicating a feature in a consistent way and letting the player adopt it systemically is my personal favorite when it comes to restrictions. You know intuitively that wherever there’s a dab of yellow or white paint in a modern adventure game, you can climb, for example.
- Activation Requirements. Web jumping in Spider-Man; web slinging in Spider-Man. It requires certain prerequisites that become fairly obvious with experience. The aforementioned dabs of paint are also like this.
- World Requirements. Rope arrows in Thief: The Dark Project only attach to wooden surfaces. Requires that you pay close attention to the world you’re in, and invites experimentation. But also puts more demand on the level design.
Rather than having the arbitrary cooldown timer to wait for, you can have duration as something that happens because of activation. The time will still be arbitrary, but again it’s something that happens in the game world and not in UI space.
- Activation Duration. Sprinting in Call of Duty. Many hack effects in Cyberpunk 2077. Activate the thing, use it for the duration, then you can (usually) activate it again.
- Player-Activated Duration. You know it’ll take a certain amount of time, but you can decide when to do it. Reloading works this way in most first-person shooters. Repairing in Hawken.
Let the player use the feature however much they want, but make it a little less effective every time. Use it too much and it loses its effect entirely.
- Boost. Morphine in Call of Cthulhu: Dark Corners of the Earth automatically heals you to full health and sanity, but lasts a limited time. Each successive use makes it last shorter.
The pattern you should recognise is that there are many ways you can move the information you need into the game space, away from UI space, without taking away the arbitrary restriction that a cooldown really is.
You’ll still have that cooldown in practice, but it will be represented in a way that at best makes more intuitive sense, and at worst makes the player focus on the game world instead of the frontend. This is always a good thing.
By all means, use cooldowns. Just think of the alternatives before you do.