Wednesday, October 17, 2012

My MMManifesto: Monster AI

It's been a while since i've added another page to my little manifesto. In some distant future i swear to dog i will summarize it into something succinct and coherent, but for now i'm still tallying up salient points.

Here's what prompted this little ramble:
"Foraging Brown Bear threatens to attack."
Ain't that great? There are monsters in LOTRO and other games which will only attack if you stay in close proximity for a few seconds, as opposed to the usual routine of every monster instantly charging at the first player it sees, or the normal alternative of absolute bovine complacency. They tend to be the ones that would logically not be hunting adventurers but still hold some aggression such as wild bulls or sapient fungi. Yes, i'm speculating about the sapient fungi. It's a minimal departure from the hum-drum norms of PvE interaction, the tip of the iceberg, especially when considering the further ramifications of PvE in a PvP environment.

Attempts at improving the old monster-hunt, whether significant or facetious, abound as a selling point in single-player games. For MMOs unfortunately, the question of spicing up PvE falls into the general category of challenging gameplay, which is avoided like the plague for fear of frustrating customers into quitting. Some attempts have been made or at least planned. It's usually all talk, and abandoned as soon as a game starts getting enough customers that it can afford to drive away the few smarter ones who demand quality. The sadly defunct Dawntide, for instance, promised among other things, some degree of randomization in monster aggressiveness. Wolves and Bears would only attack players "if they're hungry." One of Dawntide's accidental spiritual predecessors, Darkfall, boasted a wide array of PvE improvements like migrations, patrols, alarm calls or fleeing which were almost entirely abandoned when the game was restructured as a dumbed-down PvP dick-measuring contest.

Without further ado, my brilliant ideas. These all assume a persistent fantasy-themed virtual world with interconnected PvP and PvE.

Movement. The most obvious, most common and most reasonable complaint about online game PvE is that monsters simply stand around wherever they spawn or pace around for only a couple of steps, waiting for players to kill them. This falls back to the basic principle of designing a virtual world, which is that the world itself should be the focus, a living, awe-inspiring setting to make players feel dwarfed and insignificant (dwarves will be allowed to just feel insignificant). Mobs should have their own motivations. Look alive! Not only should monsters patrol much larger areas than the usual few steps, but their movement speeds and the time or range to which they'll chase once aggroed should vary.

Landscape interaction. Various landscape objects can be designated as attractors or repulsors with each monster type having different reactions. Giant spiders should seek out vegetation or player housing on which to anchor their webs, birds should seek high spots on which to roost, most animals should once in a while seek out a water source and travel to it even if it's farther than their normal range. Mobs can be set to avoid each other to avoid clustering or seek each others' company to spontaneously create herds and the weight placed on these factors would yield practically endless variation in their behavior.
This may seem similar to simply giving monsters spawn sites in logical spots and leaving them there as per the usual static mob spawns, but combined with freely moving, wide-ranging mobs, it should create true shifting populations. Dire beavers would spread from stream to stream and ghouls would follow each other from cemetery to cemetery.

Variable aggression. Carnivores should only attack if they're hungry, simulated by a simple timer since the last time they killed a herbivore. Herbivores should avoid players, keeping various distances, running when threatened and fighting back sporadically. Social creatures should run if caught alone, calling for help and fighting in packs. Standing with various NPC factions should determine their aggression against a player, from actually helping to simple neutrality to 'warning shots' to all-out manhunts. Stereotypic 'bad guys' like goblins or vampires should occasionally set out on short hunts against player settlements detected near their territories.
'Aggro' should also be context-dependent. Mobs should switch targets to interrupt players' spellcasting and gain increased aggression on players attacking their healers. It's long past time to do away with the nuker/tank/healer triad which depends entirely on using tank skills with 'bonus' aggro. Players should be forced or at least encouraged to create balanced characters, not just pre-set min-maxed archetypes. In PvE this means abandoning the idea that building 'aggro' should allow players to control mobs' behavior.

Coordination. Monsters should be 'aware' of each other and act accordingly. The same goblin's AI should adjust from running in fear if alone, to ganging up in melee if it has another goblin helping him, to sitting back using its bow if it's part of a small group. If it has a spellcaster nearby, it should be working to defend it, run back into range for healing and bumrush players using AoE abilities to force friendly-fire.

Preferred targets. Not all mobs should target all players equally. 'Mage-hunter' monsters should have a wider aggro range and increased aggro for players wearing robes or waving a glow-stick around. Spellcaster mobs should toss their fireballs at players in heavy armor. Spiders should net whichever player evaded the most attacks during the fight to keep them flat-footed.
Entire NPC factions could be set up to preferentially target players who use a certain skill set. For instance if you've been dabbling in necromancy you should expect NPC paladins to come after you from a mile away, hunters should be hated by werewolves and rogues should be actively hunted down by town guards.

Invasions. Intelligent species like goblins or demons should be working toward world domination. Their populations should be more centralized and as their villages and cabals grow they should begin to stage large-scale invasions against resource nodes or other objectives in ever-larger radii.
Monsters should be an active threat in the game world, not simply a convenient target to beat on.

The most important point is how much all this could ad to a PvP-centered game. Much of the problem of combining PvP and PvE stems from the current banality of AI. Companies are scared of scaring customers away with any novelty so the only way to make PvE seem challenging is in highly scripted encounters which reward simple repetition, practice, or the old level-based fall-back position of infinite escalation of stats.
This needlessly widens the divide between how combat 'works' when fighting players or mobs and creates a host of aggro-management, movespeed, invisibility and crowd control abilities which are useless or impossible to balance in either PvP or PvE.
However, in a good game, a true persistent world where players are always fighting each other for territory, every variation in mobs' behavior throws another kink in their plans. They should be removed as a main focus of the game, i.e. the idiotic farming of instances for loot and used instead to vary the players experience in the main game world as they go about their goals of resource-acquisition and world domination. To this end, PvE has to be much more variable, less predictable. There is a risk of losing players to frustration, sure, but it keeps things interesting without the monstrous development timesink of having to constantly design new scripted encounters, new instances and boss fights.

No comments:

Post a Comment