Balancing massive worlds

As anticipated there’s something fundamentally wrong in the announce from Blizzard to “disperse the players”. This because from mmorpgs you would ideally expect the exact opposite: connect the players.

This is a topic of a general importance and something I often ranted about because it brings together design and technology. Often these two are treated separately and it is why so many recent games have huge problem to balance the server population, high and off peaks, high and low levels and even the factions in a PvP environment.

It is not a case that one of my first ideas was to find a solution to all these problems together. A basic structure planned around some core goals that I’ve always seen dismissed (or considered too late) in the current mmorpgs.

In the meantime a few mmorpgs made smaller steps toward that goal. While WoW got swamped with a inappropriate server structure even more aggravated by the foolish decision to divide the servers by timezones (that forced them a quick backpedaling by removing them in the servers tab just two weeks after launch with an hotfix) and forbid european players to play on the american servers, other games like FFXI and Guild Wars went through a more conscious planning phase and effectively achieved very good results.

We all know that in Guild Wars the whole world is instanced. As a zone reaches a certain population a new instance is created and the arriving players are moved there. This makes possible a dynamic adaptation: if there are only a few players around, one zone is enough, if there are more players to the point that the problem is the overpopulation, then they get splitted.

This brings to two important goals. The first is to keep the servers balanced, avoiding crashes, instability and cronic lag. The second is to keep high and off-peaks also balanced, which is important to have the PvP arenas always playable, for example. See in comparison how it is absolutely impossible to join a BattleGround in WoW during the morning. And notice again how their plan to cluster some servers is still inappropriate since it is still a fixed mechanic opposed to a dynamic, self-adapting one. The same limitation of the clustering plan made by Mythic (which is merely a less-dramatic server merge).

FFXI also tried something in the form of WorldPasses. Here the solution they found is more debatable since it’s considered as a huge annoyment by the majority of the players. The bottom line is: it worked, but it also pissed off everyone. In FFXI you cannot pick the server where your character will be created, instead the choice is automated so that the population is spread evenly between all servers. It is obvious that this is a major problem if you are trying to join your friends who already started on another server. So there was the possibility to override the automated choice with the in-game purchase of “WorldPasses” that could be used at the character creation to select a precise server. Simply put: a “referral code” given to you by someone already in the game. This code cost some in-game money so you still needed a player already there buying the code for you. Which was still quite annoying.

This mechanic was harshly criticized and still is. But it undoubtedly worked as expected and FFXI is today the game that has achieved the best population balance of any other mmorpg. It worked perfectly. All the servers show similar numbers and are equally populated. The decision to use “global server” to bring together players from all nationalities also allowed them to keep high and off-peaks almost uniform during the 24h cycle. With the considerable advantage that there are less risks that during sharp high peaks of population the servers start to lag and crash.

An undesirable rule that was still worth the pain? Only if there weren’t better solutions. And yes, I have one.

A better solution could have been about taking the WorldPass mechanic and overturn it. Instead of requiring established characters to buy referral codes to allow other players to join, they should have locked completely the possibility to choose where to create the character. With or without the WorldPass. Your character would be created in a server chosen by the system, without offering you the possibility to override this choice in any way. Then you would have the possibility to buy directly (and not through other players) a WorldPass working as a “server teleport system” so that your character could be migrated to the server of your choice. This would have removed the pressure to find the WorldPass as the very first thing you need to play the game. Letting you start to play wirthout worrying where you finish, because you will always have the possibility to move somewhere else later on. The server choice isn’t anymore a cage or an impassable barrier separating you from your friends.

What I described is exactly what happens in Guild Wars. The system itself picks the zones where you’ll finish, but if you arrive at the instance 9 while your friends are in the instance 3 you can still easily join them by picking manually where you want to go. Guild Wars has demonstrated that this is possible.

Now the problem is that GW isn’t a real “virtual world”, nor the VW is something in its objectives. It’s a different kind of game and it leaves out the traits that really define a “massive” online game (like “persistence”). The ideal of a virtual world. Even if it’s exactly in THIS ideal that the technology in GW would be useful.

You could argue about this “massive” idea. It is common to say that having thousands of players around you doesn’t really add anything worthwhile because, even in the best scenario, you’ll only interact with a few of them. The rest is chaotic, disorienting. It would just bring to something unmanageable. But again, this is false. Games like Eve-Online have concretely demonstrated that while you don’t interact directly with every single other players, these players still affect the game-world, so they still indirectly interact with you. Not just a potential, but something concrete. When these systems reach a decent amount of complexity (the systemic approach) every single element in the system has a weight and an effect on every other.

It’s important to segment the playerbase and create groups to keep the game and its community on a manageable level (for game designers and players). But it’s also important to make these barriers, these “wrappers”, permeable.

Permeable barriers.

Permeable barriers in the sense that they exist for an useful purpose, but at the same time they don’t become also restrictions.

Instead of a cage, they would become lines drawn on the ground. They define a space and help to organize it, but at the same time they still allow you to cross the line if you need to. They don’t trap you. They don’t isolate.

This concept of “permeable barriers” is a general one that I reused for other design core systems. Not only the server infrastructure, but even the class and the aligment system. Offering the players to experiment and never remain stuck in a state they don’t like. A system that can remain flexible and adaptable in every part. A system that remains open so that you can access all the content without unsolvable restrictions. A system that could “connect the players” and, in particular remain always accessible. Including instead of excluding. Opening doors instead of shutting them in your face as you try to pass. Something that “moves along” and favors the social fabric instead of going against it as another obstacle.

These are all goals from where I started. My system is based on a very simple principle. Think to the game servers as containers and think the players as water. The idea is to introduce the water into the system so that is kept balanced uniformly between the containers. From the very beginning. Then there is the possibility for the water to mix and move between the containers, but through a system of rules so that its level would be always kept even.

We have already seen in Guild Wars and in WoW (with the server migrations) that the players polish themselves if you give them the possibility to do so. Noone wants to play on a overcrowded, lagged server as noone wants to play on one that is empty. This balance happens spontaneously, this is the point. What is important is to design a dynamic system that can compensate and solve these core problems radically. As I often wrote my system is just a possible implementation but what is important is that these problems are tackled appropriately and not months after release when shit happens as with WoW. At that point it’s too late and you’ll never be able to go back and plan the server infrastructure differently.

Two moments.

One is about replacing the level system with a skill-based system to avoid the segregation and division of the players.

The other is planning the server structure so that it can valorize what these game can offer. Meet and play with your friends and other players you don’t know yet. Removing all the obstacles in the mmorpgs currently on the market.

Leave a Reply