We hear the phrase “If it’s not broken, don’t fix it” often in the MMO genre, and sometimes you have to ask “Do we know what broken is?” I’d like to throw out that I believe mob AI, in particular agro rules, are in fact ‘broken’ in many of today’s MMOs, but they are accepted because they don’t come out and scream “BROKEN!” like falling through the world or other obvious errors.
Let’s start with the most basic of mob rules: If I see you, I attack you. We know this as ‘agro radius’, and we simply accept it. Why? Why is every creature you encounter outside of a squirrel immediately interested in nothing but running up to you and bashing you until someone dies, especially when 99% of the time it’s the mob running towards its inevitable death?
I get that some creatures are brainless and only interested in violence, so maybe that line of thinking works for them, but what about ‘smart’ monsters? Why would a might dragon be interested in attacking a clearly weaker player just passing by? Beyond just a lack of realism (which should only be considered when it helps gameplay, not when it hinders it), a dragon programmed in that way is basically griefing everyone who passes it, killing them only for the sake of killing them, over and over if given the chance.
I think part of the problem is many of the design decisions in an MMO come from their solo player RPG history. In a tightly scripted and paced RPG, mobs rushing you when they see you usually makes sense. The story is designed to have you invade an orc lair at point A, defend a village at point B, and slay a dragon at point C. But while that works in a scripted single player game, it does not translate perfectly to a virtual world (themeparks, especially solo-hero based ones, are somewhat of a gray area here). The designers don’t know when you will be slaying that dragon, or with who, yet the same rule of “if I see you, I attack” still applies.
The traditional solution to this problem is to place only the monsters you want a player to fight in a certain zone/area. If you are level 50, you go to the level 50 zone and fight level 50 monsters. Obviously in a seamless virtual world this gets tricky the more freedom you give your players, but again the solution only goes so far as to say ‘fight what you can, move on if you can’t’. It’s the reason starter areas are populated by weakling mobs, and only the highest areas get the really cool stuff.
What if you placed the hardest mob in the game right in the starter area?
Everyone joining the game would get bind-camped by the impossible mob and quit shortly after, but only if we play by today’s rules.
If you change the dragon’s agro rules to only attack when someone attacks him, or when someone enters his lair, you can place him in that starter area and allow new players to see him flying around without being ‘griefed’ by such a powerful mob. The mob is ‘real’, so anyone can attack him, and high-level characters will eventually make the trip back to challenge him (with new players able to watch the show), which gives the area some multi-purpose. New players on the other hand will quickly learn to not attack him and to avoid his lair, all while enjoying seeing him flying above, perhaps even occasionally lighting a weak goblin on fire or swooping down for a snack. As a new player, one of your eventual goals (get strong enough to slay the dragon) is put directly in front of you, connecting you more directly with the game, all while giving you some nice eye candy as you bash goblins. Plus now all that time and effort put into creating and animating the dragon is enjoyed by almost everyone, even those who never make it to the ‘end’.
The important point to remember here is that mobs exist to be killed, rather than to kill the player. Of course challenge is important, and in the right situation dying can be more interesting than rolling over countless creatures, but at the end of the day a mobs job is to die, so you don’t want to make them frustratingly hard or behave in a way that makes players avoid the ‘hassle’ of killing them. At the same time, keeping a mob interesting to kill is a great way to keep a player coming back, especially if it’s not a given that the mob will die every time, or at least in the same way.