Oh, boy, have I thought about this a whole lot:
-Difficulty levels: Gone should be the days of “Easy”, “Medium”, and “Hard”. There should be a dynamic difficulty system for the advanced gamers who want to tweak their gaming experience to the max. Lumpy said “Eliminate automatically picking up any useable object you happen to walk over”. I disagree… they should keep that, but have the option of turning it off. In other words… if you’re not that good at FPS’s, keep the classic “Run over an item and instantly get it” routine.
However, the more advanced players should be able to make the game more difficult, not by making the enemies nearly invincible or impossibly accurate, but just by making it more difficult to funciton in the gaming world. Ever try to reload a gun while sprinting at top speed? Not easy, is it? Or how about bandaging oneself with a medkit? And how come a person can twist, turn, aim, and function perfectly just after being blasted in the air by an explosion?
My dream FPS would have the option to make things more difficult… make it so that you have to slow down and concentrate a little to reload your gun (and as Shalmanese pointed out, no more “Magic Auto-Loading Clip” syndrome). Make it so that you actually have to stop running around, sit down, and spend a few moments applying a bandage to your leg. Make it so that when an explosion - or a large object - knocks you into the air, you see your body go flying uncontrollably… Rocket Jumping is impossible in this manner.
-Health System: Ever been punched? It hurts for a few moments… but eventually the pain goes away. Yet, in a FPS, if you get punched, that’s a few points off your life total that is gone forever. Don’t people heal? Don’t they recover? A gunshot wound should cause you intense amounts of pain and shock at first, but as time goes by, you’ll slowly manage to get over the pain (unless you bleed to death or something, but that’s another point entirely).
Anybody seen the TC for Quake 3, Urban Terror? They incorporate many of these things into the game… you pull out a clip, and any remaining bullets in that clip are gone. You get shot, and you keep bleeding (and eventually you’ll die from it) if you don’t quickly apply a bandage. If you jump up next to a wall that’s eight feet high or so, you’ll put your weapon down and grab onto the top and hoist yourself up (in other words, you can climb over things!). If you get your leg hurt, you’ll limp. I see no reason why any FPS, ever, should NOT have these details incorporated.
Armor: The strength of armor is not a linear, quantifiable number. If you’re wearing body armor, and a bullet penetrates it, does that make the entirety of the rest of the armor lost its overall strength? No, it just puts a tiny little pinprick in that one spot. It will take a hundred such pinpricks before the armor is in danger of falling apart.
Inventory and items: Give us, as Keanu said… “Lots of guns.” I fail to see why there are only ten types of weapons. There should be several different types of assault rifles, dozens of types of pistols, several different types of shotguns… the gun industry is not so monotonous, you know! Sure, an M-16 and an AK-47 may seem to fill the same role, gunwise, in the game, but why not allow the player a little bit of aesthetic customization? If someone happens to think an M-16 rocks the house, let 'im! Or if they think an AK-47 looks cooler… let 'im! Why limit ourselves so much? Give us a bit of cosmetic choices to choose from!
Additionally, no more “Infinite Inventory”… Deus Ex started on this road, but I think that they didn’t quite get it right. For example, if you want just a shotgun with a thousand shells, you should have that option. If, on the other hand, you want to carry a rocket launcher with twenty rockets, that should also be an option. Or if you want to keep your favorite plasma gun and a crapload of power cells, that should also be an option. Or you can mix and match.
In other words, let the player carry around a duffel bag (in fact, put it on his model), and he can fill it however he wishes. Pump it full of grenades, or thousands of rounds of pistol ammo, or a single tactical nuke… why are we limited to just a hundred rounds on the shotgun?!? It makes no sense when we’re limited for no reason like that!
Further… one of the niftiest scenes in movies are the gun battles that happen when the good guy has ducked behind cover, and they’re battling it out. Allow a character to stand behind the corner of a wall, peek out, and point his gun down the hall. Make gun battles where a character can’t just run out and charge the opponent. Make it important to duck behind cover.
Additionally, a person has a bit of a “field sense”. Not just sound will tell him if a bad guy is behind him, or in his peripheral vision (besides, not everyone has perfect surround sound). Give some sort of indication that you sense an enemy in a certain direction… simulate peripheral vision, for instance, by making the left side of the screen flash red when there’s an enemy off to your left (but out of the screen’s field of view).
-Physics: I’ll ignore the issues of shadows and “no more sprites” (hey, it’s tough as hell to calculate destructible terrain in a realistic manner). But other things, such as gravity. Anyone play Ultima: Ascension? Boy, was that game a pooch-screw. You could jump off a hundred-foot tower, and fall to Earth at a casual six miles per hour, maximum speed. What the hell is up with that? 9.8 meters per second, squared! Just throw that little calculation into the game engine! Better yet, base the game engine around that!
-Dirt: Dirt is not a flat, solid surface akin to metal or stone. Dirt moves around. Dirt is grainy. Dirt is uneven. Give us dirt in the engine.
-Plants: I will have a thousand orgasms in one second on the day when I see plants move realistically. If you brush past a plant, what happens? It moves. It waves back and forth. Give us plants, not 2-dimensionl pictures that are placed crossways in a sorry attempt to look 3D.
-Rocks: Outdoors, rocks are everywhere. They are of all sorts of different shapes and sizes. Ever stood up against the side of a cliff? Is it clean, smooth, and otherwise a perfect wall jutting out of the ground? No, it is jagged, broken, and littered with rocks all over the base. Give us rocks.
-Environments: We want massive, humongous levels. These tiny little levels that have all the doors locked except for the ones that take you exactly where you want to go are getting tiresome. Deus Ex won out in this regard… there were almost always several different ways to get somewhere. Yet in games like Max Payne (great game regardless), there was only one direction to go. No thank you. If you don’t want the player to go in a certain direction, just have the character stop, think to himself, “I don’t want to go this way” and force him to turn around.
-Deathmatch SECOND: I don’t know about you people, but if I want to play multiplayer, I get a multiplayer game (like Counterstrike). But Quake II? I bought that game for the single-player missions… but it seems that all the levels weren’t designed realistically, they were designed for multiplayer play. Fuck that. Why have game designers taken the notion of “We’ll make a GREAT online game, and tack a single-player game onto it as a bonus”? No, no, no, a thousand times, no. Look at Return To Castle Wolfenstein. The single player was AMAZING (although, admittedly, a tad lacking in some respects). The multiplayer, in my opinion, sucks balls… but it seems that’s just me…
-Other things: Keep the old enemies. Keep the Imps, keep the undead humans, keep the Cacodemons, keep the Barons from Hell. But give us more than just that. Be creative with your enemies. Give us some enemies that bleed out of the walls, or enemies made out of shadows. Give us enemies that will, literally, track your scent across multiple levels to hunt you down. Give us enemies that move far faster than you can, so sometimes running isn’t an option. Don’t just give the enemies more hit points to make them more difficult… make them dodge, or get behind cover, or apply bandages of their own.
In short, a game should actually deliver what it has promised. Half-Life promised a lot of these things, but either didn’t deliver, or delivered poorly.