Thursday 25 September 2008

Using NPCs to create a more believable gameworld

One of the problems with MMORPGs is that, unlike their offline counterparts, you can’t actually have any lasting effect on the world. It’s rather ironic when you think about it – it’s almost the entire point of an RPG to play a hero who changes the world. You don’t play it for the combat, though of course that’s an important part – mostly you play it for the story. So, as I’ve mentioned in earlier posts, the RPG model isn’t exactly the ideal model for modern MMOs.

However, things could still be done to make players feel like they are achieving something in the gameworld without changing the fundamental game mechanics that prevent this from actually happening (a dragon like Onyxia can’t reasonably be expected to stay dead after one person on the server has killed her, for example). They key to this is probably in the social world, and the most obvious way of accomplishing this would be through use of NPCs.

Currently, NPCs just stand in one place and either give players quests or sell things to them. They’re just manifestations of the services available to players – the game needs a repair system, so they add in an NPC that repairs items. Even at the most basic level, players need something to kill to level up, so NPCs are drafted in to die for our levelling pleasure. The main thing that surprises me about how the current crop of MMOs handle NPCs is that they are all part of the persistent world.

Slay me ten cheeseburgers!

This means that it can be difficult to suspend disbelief. In terms of game mechanics, it makes sense, as (as mentioned above) most of the NPCs provide services to the game world in one way or another. The games are sufficiently advanced that the NPCs will interact with different players in different ways, generally their ‘faction’ or alignment, though the reactions tend to fall into one of three camps – normal behaviour, attacking the player, or standing around sulkily refusing to talk or provide any services.

The king of NPC interaction was, of course, the original Everquest. There were at least eight or nine starting cities, and you would be treated differently in all of them depending on what race you belonged to. It actually made your choice of race fairly important, as much of the world was policed by wandering guards and choosing an unpopular race (like the Iksar) was a definite disadvantage right through the game. Happily though, every NPC had both positive and negative factions, so killing them would increase your popularity with some groups while losing it with others.

This meant that you could actually be a dark elf who was welcome in the home city of the wood elves, provided you killed enough of the nearby Crushbone orcs (though you might not be welcome in certain areas of your own home city afterwards). I personally loved this feature, as it was a bit of a badge of honour to be able to stroll through the gates of an enemy city unmolested (though due to the game’s numerous factions, you might be acceptable to a city’s guards but still find that a few NPCs will still attack you on sight due to being on a completely different faction from the rest). WoW came along with a far more binary system, the Horde/Alliance divide, which wasn’t particularly advanced but fitted the game well, particularly on the PvP servers that I played on.

Anyway, tangent over and getting back on subject. While Everquest’s system was pretty cool (and probably the most advanced I know about), when you think about it, it’s not really much of a patch on most offline RPGs. Let’s take Fable as an example. It has a lot of features that MMOs would do well to copy. For example, the characters start as weedy children and as they progress through the game and level up, they first become strong and powerful young men and then eventually wizened and greying older men. I’d love to see an MMO where you start at level 1 with a scrawny teenager and become a huge bull of a man as you hit max level. It’d give you a sense of achievement. But I’ll probably cover that in another entry.

Three's a crowd. Technically.

Fable used NPCs that changed their reaction to you as you became more famous and achieved great things. Once you were a great and good hero, gleeful children would chase you around and crowds of men and women would cheer when you entered town. In MMOs (and even in some recent offline RPGs like Oblivion), NPCs treat you exactly the same whether you’re a level 5 hunter covered in rags or a hardened level 60 adventurer clad in flame-spewing armour and carrying the head of a dragon. I don’t know how difficult it would be to make the persistent NPCs appear with different animations on different player’s screen in a technical sense, but it would make a huge difference if they started off surly and uncaring and would wave or salute or something after you’d hit a certain level of faction or completed one of the epic quest chains that resulted in you saving the city.

Better yet, though, would be the use of non-persistent NPCs – ie, ones that didn’t appear on anyone else’s screens or interact with the actual game mechanics in any way. You’d have to make them graphical options, so people could turn them off if their PC wasn’t up to it performance-wise. It would certainly help to sort out the problems of having cities that are mostly empty and lifeless, without choking up the players with lower-end systems. The best bit, though, would be that you’d be able to give the NPCs appropriate behaviour depending on what reputation you have in that particular zone.

If you were unpopular in the city (or just starting out and a nobody), you could have people barging past you and making rude gestures. When you got a bit more respectable and powerful, the crowds might get out of your way as you walk through the town. When you become well known, you might get the occasional nods or waves or stares from the crowds. When you become really famous, you could have the whole hog, with cheering crowds and saluting guards and perhaps even a changed appearance of the city. As long as the zones are non-PvP I really can’t see this interfering with the gameplay at all. The collision detection for them would probably be turned off, so they wouldn’t impede your own character or any of the other player characters on your screen. Assuming they weren’t exploitable in any way, I think it’d add a huge amount of immersion to the game.

Overall, I think the MMO genre still has a lot to learn from the standard RPG genre (though it seems many MMO developers think they are a cut above offline games). One trick would be more advanced clients that display the same persistent world in different ways for different players. This would help hide the underlying fact that MMORPGs by definition can’t have a story or players who change the world in any great way. In itself, that’s not necessarily a huge problem, as long as you look at the genre the right way – MMOs aren’t games that will last forever, just a long time.

1 comment:

Loner Gamer said...

I love the way you ended this article: "MMOs aren’t games that will last forever, just a long time." A very true statement.

The one thing that I think MMOs need to copy from offline RPGs is the ability to play offline! So I pay an average of $14.99 a month to play an MMO then after 3 months or so, the game gets super stale and I cancel my subscription. Guess what? I also lose my character until I pay the subscription again! The offline - online gameplay dynamic can work very well (think the original Phantasy Star Online on the Dreamcast) and it will attract more people to play MMOs. It is of course more fun to play with other players so only those who pay the subscription fee should be able to access the online feature of the game.