Saturday 19 March 2011

A Short Rant About "Unique Selling Points"

In the games industry, there is always some requirement for a new game to have a USP, which is something that sets it apart from other games.  This seems like a good idea at first, but it pretty much always just manifests itself as some pointless gimmick such as the ability to shoot round corners/slow down time a bit/have trousers that turn to jam.  Every time I describe that I'm making a game to a fellow gamer, people tend to ask "Ooh, what's the USP?".  To which I would like to reply "That's a bad question" and slap them.  However, it's generally a bad idea to attack your potential customer base.

I think all this attention on USPs takes attention away from what is genuinely important about a game, and that is is it actually good?  If that's the case, it doesn't really matter much if it has a USP or not, because USPs don't necessarily make a game either good or bad.  In fact, I think feeling the need to try and explicitly crowbar a USP into every single game may well harm the development of some games.

Another thing that the USP idea doesn't take into account is that novelty can appear at lots of different levels within a game.  For example, it could be a completely generic FPS but with amazingly novel level design and very well designed challenges, but because it doesn't feature Jam Trousers it's somehow seen as Not As Novel.

As a good case study, look at the original Half Life.  I've thought about it, and I can't really think of anything that could be considered a USP.  You play a man fighting against an alien horde (ooh, novel!), with plenty of shooting (yawn) and platforming (double yawn).  Of course, what made Half Life an amazing game was a mixture of the story, the atmosphere, the level design and well, pretty much everything.

Anyway, I think my main point here is that concentrating on USPs is a bad idea that may be used to prematurely judge the quality of a game.

If you're thinking that all of this is bollocks, then luckily Juggernaut has a pretty good USP :P

General Progress Update

This is just a general update, alas without any particularly exciting images.  I should have some updated screenshots soon, though. 

Control/AI Improvement

After spending a few hours remembering how to do control theory and Laplace Transforms, I did some significant upgrades to the Proportional + Differential controllers that are used to determine the rotational behaviour of the player and enemy ships. The parameters for the controllers are now calculated appropriately for each ship, thus leading to much better behaviour when rotating to the current target direction (less overshoot and faster damping).

I've also started to do a bit of preliminary work on the swarm mechanics.  One of the main issues here is how to efficiently identify the neighbouring Scourge ships when you could have around 2000 in play simultaneously (leading to around 2000000 naive distance calculations to calculate all neighbours).  I'm currently considering some kind of dynamic histogram-based binning method.

GUI work

I've also been doing a lot of work on some of the required (and slightly non-exciting) GUI aspects of the game.  The most important in-game GUI is the Ship Editor, where you can upgrade existing ship components and add new ones that you've scavenged.  This allows your ship to grow and improve over the course of the game (which is the main RPG aspect) as you add better shields/power generators/weapons etc.   Over the entire game, you will progress from being terrified of facing a single Scourge ship to being able to fend off a swarm of hundreds or thousands.