Cheep-Cheep: Special ability: TO BE THE MOST ANNOYING FUCKING THING EVER. Flies diagonally upwards at high velocity.

Hammer Bros.: Shoot projectiles towards you in a parabolic arc.

Each of these separate enemies has a different modus operandi that alters how the player deals with them.

Reality marches in

When I’ve played indie games towards the low end of the quality spectrum, I’ve noticed a tendency to ignore this simple design tenet. On more than one occasion I’ve encountered the Monster, and then the Palette-Swapped Monster, and then the Yet-Again-Palette-Swapped Monster. At our luckiest, they will be of increasing speed or variable hit points instead of exactly the same gameplay-wise; At our unluckiest, they will be brokenly faster or tougher.

If video games exist to make you feel like a rockstar, then power-ups are the nosecandy that fuel you and alter your world for a short time until it all comes crashing down. And then you will do anything to get another one.

Unless you’re targetting masochistic assholes with your game (which you may!), making your game insanely hard is a losing strategy. You will alienate your players. Your game will not be fun.

A lot of the time in Mario 1, the level design was built specifically around the enemies. Lakitu levels were designed for Lakitu, low and flat so he was a hazard, with occasional moderate-difficulty jumps for the opportunity to take that bitch out.

Similarly, the SMB powerups all did specific things. The Super Mushroom gave you wiggle-room HP, and was required for firepower, which was helpful against most enemies, and necessary against a few. Invincibility was rarely granted when you would’ve wanted it in SMB, but was a pleasant distraction; The player didn’t notice that it was almost never granted when needed, they were just pleased to be an all-powerful god for ten seconds.

Often when I see power-ups in beginners indie games, they aren’t as clearly black-and-white. Assuming that the power scale is held in check, you get temporary effects that are largely inconsequential for how you interact with the enemies or the levels. Whereas the super mushroom in SMB lets you break bricks and the Fire Flower lets you destroy previously unassailable enemies, these games trend more (again) towards speed increases, HP increases, and damage-inflicting buffs.

I assume that the low-end indie games trend this way because, programatically, these traits are the amoung the easiest and most straightforward to tweak.

I’ve come to believe over the years that a power up exists so you are eager to get it. Video Games exist to make the user feel badass, as the man once said, and becoming slightly more of what you were just isn’t badass. What’s badass in the context of platformers is killing the unkillable, or exploring what was previously unexplorable.

Hey guy! What should I do?

The easy-to-implement usually doesn’t equal fun for the player. Give thought to your level design, and how the player can interact with the levels. Hide tempting things in plain sight and then give them the power to grab that forbidden fruit by smashing a brick or jumping higher over a wall.

Do not fear Lack of Content. If you don’t have a really compelling reason to have a Red Slime and a Green Slime, just stick with the Green one. Super Mario Bros 1 had the plain, simple goomba in every world. It wasn’t compelled to make a color-shifted goomba that was faster or meaner.

Do not be afraid to have a short level. Do not be afraid to have a short game. As long as you’ve got some clever tricks and conceits that your levels are based around, you will entertain. If you artificially inflate your game just to be longer, you will bore.

This kind of thing is especially evident in even AAA MMORPG titles. At level 1 you fight a rat. At level 20 you fight an ogre. The only difference is a model-swap and stats being higher numbers.

I’d even go further and say that even when the enemy has some sort of purported “weakness” like vulnerability to fire, or ice, it rarely matters. You might just as well bash away at it until dead. There’s never a NEED to use fire/ice/whatever.

It would be very refreshing to see a game with a variety of enemies who have to be tackled in a certain way: learn a pattern, use a certain type of weapon, use a specific tactic, etc.

Some might complain this is either a) too hard or b) leads to repetitive encounters. I would suggest that the “next level” would be to make those same dozen enemies (you don’t need 100’s!) have abilities and unique features that can eventually interlock together to present more difficult challenges: abilities that complement/augment one another, attack patterns that are more difficult in unison…

I’m currently building my own indie platformer game (called BEEP) in which you play a small robot with a jetpack and a gravity gun. (shameless plug, http://www.bigfatalien.com)

I made the design decision early in development that I wasn’t going to ‘pad-out’ the game with different colored enemies and cheap gimmicks. One of my central design principles is to treat the player’s time with respect. That means, less repetition (a certain amount is necessary for honing skills), no re-skinned enemies and each enemy has a unique behavior pattern and vulnerabilities.

These are really basic and essential staples of design philosophy. It’s a shame that more developers don’t take them seriously!