Stop doing experience!
By experience, I mean any system where repeatable tasks like killing respawning enemies gives the player points that can be used to upgrade their character. Almost every RPG has experience, even ones that theme it as money instead.
Experience SUCKS! Stop doing it! Every claimed benefit of experience can be had better without it.
First, let's go over the basic problems:
- Players who do a lot of side content or happen to fight more enemies on their way through an area can get much more experience than the designer expected, making the main story content too easy.
- Players who *don't* do a lot of side content or happen to fight fewer enemies on their way through an area can get much less experience than the designer expected, making the main story content too hard.
For a game with experience to stay balanced, you have to straddle the line between two extremes, collecting exactly as much experience as the designer intended, and you have no way to know how much that is.
- Especially subsequent playthroughs, where the player may have less interest in fighting random mooks, tend to get very unbalanced, with bosses that can kill the player in 2 hits instead of the intended 5, and that take 10 minutes to kill instead of the intended 3.
- Any difficult challenge can be trivialized by grinding for long enough. Unlike difficulty settings, players aren't likely to hold back from this because kiling enemies to get experience is part of normal gameplay, and they have no way of knowing if the challenge is supposed to be this difficult or if they're just underleveled.
There's something some games do to address the above problems that you might be thinking of now: leveling enemies. That is, when the player levels up, so do the enemies. But this just renders the entire system pointless. Why have leveling if it doesn't effectively make the player stronger?
What do instead?
Don't have a system where repeatable tasks give money or experience. Instead, make upgrades to the player character only come from fixed things like story progression and exploration. This way, you put a minimum and maximum on the amount of upgrades the player can have at a given point, and can ensure it's not too unbalanced at either end. You also avoid wasting players' time with repetitive grinding.
Now let's go over some reasons I've heard people claim (or imply) why games should have experience.
No joke, I've seen an otherwise intelligent blogger argue at length that letting the player get more powerful by fighting mooks again and again is awesome because it lets people choose the difficulty by choosing how much grinding to do. This is fucking stupid because the solution to letting people choose the difficulty is to *let them choose the difficulty*. We have menus for this! Difficulty should be a setting, not something you have to grind to unlock! And then can't undo once you've made it easier!
Without it there's no reason to fight enemies
This is a simple level design problem. If you want your player to fight enemies, place those enemies so that running past them is difficult or dangerous. Combat should be part of progressing through the game, not a detour that you have to offer an extrinsic reward for.