The Lean MMO(RPG)

Alexander Zacherl
11 min readJan 21, 2015

--

Maximizing player interaction in a persistent online world.

Disclaimer: This is an early draft, meant to provoke feedback and criticism. Please leave your comments here or contact me via email: alex@fairydist.com.

Hi. I’m Alex. I’m currently designing a game named Das Tal.

For the longest time I’ve called Das Tal a “PvP Sandbox MMORPG”. These cryptic letters translate to the less cryptic but longer “Player-versus-player massively multiplayer online role playing game (with a persistent world) focussed on player interaction and player freedom”.

For 7+ years creating this game has been my personal holy grail, something that was on my mind for at least 12 hours every day. So I’ve been thinking a lot about what actually makes a good Sandbox MMORPG for me. Long ago I’ve come to the realization that the most important things to me is this: meaningful player interaction. Preferrably in a very high density.

To me these words mean that whenever I log into the game world I want to be minutes away from interacting with a real person in a way that engages both of us. Preferrably in a contest of sorts (since I enjoy those) — this is what we call PvP. But I’m also happy to interact with you in a non-competitive way. By working on our city together or by engaging in inter-clan diplomacy.

I’ve spent the better part of my life playing MMORPGs. Starting with Ultima Online in 1999 I’ve now played dozens, if not hundreds of the. Over time I came to hate on thing about the genre — and especially about those of the Sandbox nature — they are so extremely vast that these valued player interactions happen only very rarely. For someone like me who sometimes casually plays EVE Online or Darkfall: Unholy Wars it’s very common to fly around in open space or ride through the vast continents of Aegon for an hour or two without finding suitable enemies for PvP.

That sucks. I’m running a game studio and so I have way less time to actually play games then back when I was in school or university. Back then I could get around those boring hours with the fact that I could easily play eight hours a day. But what if you only have an hour of playtime a day or less?

So I’ve set my goals for my own game. I want as much meaningful player interaction as possible. And I want to cut out as much of the “fat” of Sandbox MMORPGs , those minutes and hours which you are wasting in order to find what you’re actually looking for.

In this article I will look at MMORPGs under three lenses: physical space (the world your character lives in), temporal space (the time you spend in the game game) and gameplay space (the actions you take in the game). In all three I’ve identified fat and I’ve tried to device designs to minimize it.

1) Physical Space

My first target is the most obvious: I’m reducing the size of the game world while trying to focus players in the right spots where they will meet each other.

1a) Reduce World Size

A lot of MMOs are built on the premise of simulating a world or a universe. For most people to count as a world or universe, your physical game space has to feel huge. And so as developers we build worlds that span hundreds of virtual square kilometres or thousands of star systems (in the case of EVE).

In my opinion these worlds are generally too big for the amounts of inhabitants they have. Even for a large game like EVE (roughly 500k subscribers & 50k CCU) this is a problem — for a game with Darkfalls couple thousand subscribers it’s very much the end of the game. The problem is simple: Imagine evenly distributing 500 people on 500 square kilometres of space. How many players would you have in your direct vicinity to interact with? Exactly — not one. Now players in online worlds are never evenly distributed but you see that the physical size of the world does in fact lead to a lot of dead space between players. Dead space, because in the empty room no interaction is happening.

1b) Create Choke Points

This one is probably a no-brainer for all experienced level designers in competitive multiplayer games. In order to increase the chances that players meet each other even in otherwise wast spaces you can create choke points where they are very likely to meet each other. A bridge over a babbling brook. A mountain pass. An elevator shaft in a otherwise locked building.

Looking at Sandbox MMORPGs I see those choke points used too rarely. EVE has them in the form of it’s warp gates. But fantasy worlds like Darkfall or Mortal Online — created from height maps — rely way too much on open space and rarely focus players into choke points. It only gets worse when you add flying mounts to the game. Now even the steepest mountains can’t constrict your movement anymore. This is a great way to ensure your players will never meet any other humans on their travels.

1c) Use Points of Interest

A more elegant solution than restricting players’ movement in vast physical spaces is too attract them to the same spots. Because as we said before: Players in virtual worlds are never equally spaced. Like moths are attracted to the light, we are attracted to action, treasures and world wonders.

So on my world maps I’m placing a lot of attractions: a hand full of player settlements (which you want to live in or maybe besiege), ressource spawns (which you want to conquer for your clan), rare treasure spawns (which you want to pick up before someone else does) and mob camps (which you want to have for your own for as long as possible).

Alright. Now we have a couple of ways to making sure that your game world does not only consist of mostly empty space and very bored players. But what can we do outside of the physical space?

2) Temporal Space

It’s hard for us to think that way (well, not if you’re a mathematician I guess) but time can also be viewed as some kind of space. Besides missing each other in the physical space (because we’re running around in totally different regions of the game world) we can also miss each other in the temporal space. For example when I am logged in and you are not. It’s hard to meaningfully interact in a real-time game when we’re not online at the same time.

2a) Create Highlights

As with physical points of interest our first option to get players together in time is to attract them to be in the game at the same time. For Das Tal I thought about lot of ways to do that.

For example, our game worlds do not run forever and ever. Instead they have a start date and a pre-defined end date. And these dates are not too far away from each other — maybe two or three months. So in the lifetime of a game world I can guarantee that you want to be in the game at least twice: When the server starts — because that’s where everybody starts out equally and you still have all the options — and when it ends — because that is when it all gets decided and someone wins and someone loses.

So by emphasizing the start and the end of each game world we’ve already created highlights in the game’s timeline and those highlights will attract players like me — like light attracts moths.

But that’s not all. Over the playtime we can set a lot more temporal highlights than just beginning and end. For example we’ll have treasure spawns (think chest full of gold, only cooler) that spawn every couple of minutes. And all players in their vicinity will get notified of these spawns. Then we have the option of turning one of our mob camps into “hot zones” where for an hour or two you get a lot more XP than usual. We’ll have ressource spawns that your clan has to defend once a day — or take away someone else’s. And we have siege fights that will sporadically attract all the big clans in the area for one big battle.

And these are by far not the only events planned. So while we could all be online at different times and in the game world in different places: It’s highly unlikely because there is a lot of cool stuff going on and everybody will be part of it.

2b) Focus on Prime Time

Since most players of our game will have a similar daily schedule — sleep at night and work during day — a “prime time” for each time zone and game world will become apparent soon. For the western world that is likely to be the time from around 6 to 10 PM when most people are home from work/school but not asleep yet.

So in order to make sure that this is also the most action-packed time we make sure that big events happen during this time. So for example most if not all siege fights will happen during this time. This will also be the time to fight about bigger resource spawns. Because nothing is as boring as taking over someone’s settlement at 4 AM when they are asleep — both for the attacker and the defender.

2c) Reduce Uptime Even?

But we can even go further than this. Your typical MMORPG server normally runs 24/7: 24 hours a day and seven days a week. Always. But why does this have to be? As all MMO developers and most players can tell you: Game servers are really quiet at 4 AM in the morning. Not a lot of people are around at that time. And that’s quite similar at noon on a tuesday.

So why not use this and actually turn the servers off during those times? There’s a couple models I can see this working: Servers that are only available from 2 PM to 10 PM (after school). Servers that are only online from 6 PM to 2 AM (after work). Or servers that only run on the weekend. For someone who does not have that much time to play games anymore, this is hardly a constraint. And it guarantees that everybody else is also online at the same times. And more people online leads to more player interaction. Simple as that.

Of course this requires a lot of servers that cater to the different time zones in the world and to different kinds of players. Because as a players on the US west coast you probably don’t want to play during European prime time. And vice versa. And we’ll have a lot of those servers. I’ll tell you why in a second.

3) Gameplay Space

There’s a third lense under which you can look at MMORPGs and that is the lense of gameplay. Let’s have a look at what game designers regularly do that is detrimental to the idea of maximizing player interaction:

3a) Create Smaller Communities

Most MMORPG developwers advertise there games as having many players, some of them going far into the millions. And on the first glance this focus on large numbers makes sense: If you have more players in your game world then you will also find more people to play with, right?

But in the end it does work out like this. Take a look a Dunbar’s number for example. Humans are social beings but we seem to be pretty much hard-wired to only be able to create meaningful relationships with a limited amount of other people. So while “MILLIONS OF PLAYERS” are nice in theory, in the actual game you play you only need a couple of dozens or hundreds to even satisfy the most social of players.

This is also reflected in the realities of game engineering and physics. Yes, the notion of having battles with thousands of players sounds exciting at first. But once you find out that battles with even 100+ players generally turn into 5-FPS lag-fests it becomes less appealing. Client performance is something that is getting better and better — but even CCP have to make their game time clock run with 1/10th of its normal speed. Server architecture just ist’t there yet.

And the focus on worlds with too many players leads to many more problems:

3b) Don’t Employ Instancing

Ever since WoW became a massive hit in the MMORPG space, Instancing became THE THING to do when designing a “Themepark MMORPG”. Instancing is the act of creating pockets of “private” space that exist outside of the pysical game world that we expect.

Blizzard used this first to allow thousands of players to defeat the same raid bosses at the same time. Arena Net extensively made use of instancing in order to have hub towns that both feel relatively small but that are all still connected to the same game server (they mirrored them based on how many players were currently online). Most recently, Albion Online has introduced instancing as a way to allow every player of their game to have their own private house — something that is close to impossible if you have 100k+ players and try to put player housing inside your game world. UO is the best example of what happens if you don’t.

So why do I dislike instancing? Pretty simple: It removes your ability to meet other players since you are in different, unconnected pockets of world space. And directly interacting with someone you cannot ever meet is pretty much impossible.

3c) De-Emphasize Solo Play

Something else that WoW made very popular with MMO designers was the extreme focus on the single-player experience inside an MMORPG. In WoW, the biggest amount of content is arguably not focussed on groups of players — most of their quests are geared at solo players.

This is understandable. Many players who are playing MMOs are often not in the mood of interacting with other humans. Waiting for other players to do a dungeon with is boring. So why not go out on your own, kill hundreds of mobs and experience an epic storyline on your own? If your intention for your game is to design it so that is accessible for everybody all the time — and that is more or less Blizzard’s design philosophy — then this might sound prudent. Or if you are making a predominantly single-player game.

But I think this is very dangerous to a pure multiplayer game. Because this is kind-of a self-fulfilling prophecy: Train your players to see other players as distractions from the insta-gratification of the solo player experience and you will make them turn to those experiences. Waiting for other players to join your raid group is boring? Go questing on your own. And since you are playing on your own, why even look at chat or be in voice comms? So now we have one less player who is in the might-go-raiding-with-you pool. The waiting time for the raid increases slightly. And so on and so forth …

This is where this article ends for now. I’ve already spent more time on writing this then I originally planned. And it is still not saying everything I want it to. It feels a bit long, a bit bloated and a bit inconsistent. My apologies for that.

I hope you still enjoyed reading it and that you either agree with me on some of these points or — even better — disagree and want me to challenge my assumptions. In both cases: Please leave your comments behind in this article and/or send me an email to alex@fairydist.com.

--

--

Alexander Zacherl

Trying to help design social systems that improve people’s lives. Systems Designer at DeepMind. He/him.