Thursday, July 14, 2011

Game design - a plea to developers

A simple do/don't do list compiled from my many years of playing video games.

Control system

So the player has been running around in third person and now the game decides to place them in a first-person perspective behind a gun-turret. They move the mouse/stick up to shoot an overhead flyer just as they've done a thousand times before and end up targeting the ground. Congratulations the game has just inflicted them with a case of control change. It's okay to change the control system provided the player is informed of such, but the basic mechanisms shouldn't be altered.

In a similar fashion item/weapon slots shouldn't alter or should reflect the physical controls. If it's possible to map something to one of the four d-pad positions the menu should be displayed as such. If when cycling weapons the assault rifle appears after the shotgun it should always appear after the shotgun and not be moved back a place should the player pick up another different weapon.

Save system

There are two types of save - manual and automatic, and never the twain shall meet. That means the player should never be able to see the auto-save in the save menu and thus never able to save over it by accident. Likewise it should be possible, with caveats, to delete save files from the load menu in the game. Finally when a save file is loaded the game should not start until the player acknowledges they are ready and the game should notify the player of this via an audio cue. The sheer length of time some games can take to load, means the ability to wander off to answer a call-of-nature only for the player to return and find their character dead and the screen asking them to re-load.

By the same nature auto-saving should exist for two reasons. Firstly the character is about to head into a situation it cannot reverse from; and secondly the game is performing a major loading sequence. If this becomes annoying to the player options should be available to turn these off and on their own heads be it. Said situational saves should be contextual in manner not location based, in other words I should get a save if the character is about to head into a room that locks behind them and fills with poison gas, but it shouldn't save again once the mechanism has been disabled, they've left and returned to the now non-dangerous room.

Squad interactions

If the game is not multiplayer yet the player is controlling multiple characters in a squad formation the game should pause while commands are issued. This may not seem 'realistic' in the heat of battle, but until voice recognition gets a lot better allowances must be made for the use of hand-held controllers.

Likewise all available members of a squad should be accessible from the same menu without having to back out and select them individually.

NPC interaction

Mostly the province of RPG and such that use branching questions. There's nothing stupider than saying to an NPC "I have some more questions" and the only choice at the next branch being "I can't think of anything to ask". If that's the only answer than the previous option should not be presented.

NPCs should also react to the player depending on their status. Discussing the new head of the guild with the new head of the guild who is wearing their Guild Head badge makes me wonder why I'm bothering to help these people.

Levelling up

Sadly increasing in a level still tends to be an all or nothing prospect when presented as a multi-step process. To illustrate imagine the player can upgrade one ability and one skill. They perform the first step, but discover that there are no skills available that they want without another ability upgrade. The correct response from the developer is to allow the player to take the ability upgrade but save the skill point

If the actions on a previous screen lock or unlock something on the next screen the player should be informed of this before they move to that screen. There's little more frustrating than taking time carefully allocating points to attributes then moving onto the next screen and being told that the skill you want requires one more point of Dexterity to unlock and having to go back a screen to fix.

Goal seeking

If the player is given specific instructions as to where to go or what to do next some form of indication should be available. That means if a character tells them to head to the gun emplacement and if in-game they should know where the gun-emplacement is it should show as a goal on their map (of whatever type) to allow the out-game player to know where to go. The opposite should also be true if they're told to find the fuel-depot "somewhere to the west" they should receive no such goal indicator until they are in visual confirmation range of the target in which case this is merely confirmation of such.

If multiple goals are presented the player should be able to choose which is active, inactive targets should not appear on the map unless the player is next to them and then they should be presented as an in-active colour. This is to stop players getting annoyed at walking past such goals on the way to others. If the game spreads over several 'levels' the goal indicator should be placed on the nearest exit to the target.

As with auto-saves this should be an on/off option.

Inventory Juggling

Although a main staple of RPGs this is cropping up in FPSs that restrict weapon loads. Put simply the player should be able to tell if the item they're picking up is better or worse than the item they're putting down.

Another problem is the choice over using item size/weight or simple existence as an inventory measure. In the former a missile launcher is bigger/heavier than a grenade and takes up more storage; in the latter they are identical. The former method is more realistic, but creates juggling needs when inventory is limited (Do I ditch the heavy but valuable missile launcher to pick up five AK47s?), the latter leads to the amusing ability to drop a grenade in order to make space for the missile launcher.

Either system is acceptable dependent on the desire of the developer as to where the player's attention should be directed, however both systems require the original prerequisite of being able to compare items easily.

System Limitations

Is this game designed for a computer, a console or both? Sounds obvious, but still some designers don't get or possibly don't care about the differences. I present two examples from games I've recently played.

BioShock 2's initial installation sequence for the PS3. A looped soundtrack with a looped slideshow. Each PS3 is nigh-on identical with the other therefore the length of this sequence should be known to within a minute. So why a looped intro? Yes it should be a one-off install, but it sets the tone so badly. Particularly egregious when you consider the in-game loading sequences use actual songs that often last beyond the load-up time.

Dragon Age:Origins Codex management. When something in-game happens, when you read a book or update a quest the codex is added to or altered. When this happens an announcement appears and by accessing the menu at that point you are taken directly to that entry. If for some reason you don't then you can find that entry manually. All codex entries are grouped by topic, if a group has a new entry the topic head glows white. Within the topic all such topics also glow white until they have been accessed. On a PC this is fine as you can use the scroll bar to move through the entries and find the ones just added. On a console you don't have access to the scroll bar independently of the entry selection. You scroll through each entry; however as soon as you scroll off the bottom of the list you are selecting that entry and marking it as read. Therefore unless the entry appears on the very first screen it's indistinguishable from any other entry.

Escort Missions

Don't! No really don't! It seems to be a blind spot in developers. Perhaps some escort mission demon taps them on the head and makes them forget about the countless numbers of complaints about the escort mission in previous games they've made. Perhaps they're just optimists and think that this time the game AI will work and everyone will love them again.

Regardless of how good you think your AI is escort missions fall into a simple graph structure with an X-axis of controlled/not controlled and Y-axis of invulnerable and vulnerable. If they're AI controlled they'll still run off into that minefield or charge that demon with only a toothpick as a weapon. If they're vulnerable as well this becomes annoying. In that case if the player is given control of them, then you're back to all the problems of squad control, most players will just tell them to stay put and clear out an area then reel them in again this is annoying and no, making the player stay within a certain distance of the escorted person is not deemed a solution; at least by players anyway.

If they're invulnerable there's no point to having an escort mission at all, the player can happily treat things in the single-player they've been used to with the sure and certain knowledge that the escorted person can take care of themselves.

Anywhere else away from those extremes just brings both sets of problems into the mix.


Yes I know they're great at presenting information or allowing the director to pretend they're shooting a movie and done well cut-scenes are fine, shame so many aren't. Firstly cut-scenes need to be pausable; the real world has a tendency to intervene in your 5 minute epic. Secondly they need to be skippable, replaying the game either in full or from a load point before the scene and watching the characters going through exactly the same motions as they did just before the character got killed is not enjoyable.

Next, important information should not be confined solely to a cut-scene. It's all to easy to skip it when pause was meant and then leave the player in a state of 'What do I do now?'

Finally never ever move characters during a cut-scene unless they really are being moved against their own will. Nothing can confuse a player more than running into a room, watching a scene, then restarting gameplay on the other side of said room.