Trending Games | Elder Scrolls Online | Guild Wars 2 | WildStar | Rift

  Network:  Gamertube FPSguru RTSguru
Login:  Password:   Remember?  
Show Quick Gamelist Jump to Random Game

Show Blog

Link to this blogs RSS feed

The Quinquennial (or sometimes more often)

Various thoughts on online gaming, often pulled from articles I've written for other sources.

Author: Quizzical

The right way to instance open-world content

Posted by Quizzical Thursday December 11 2008 at 9:59PM
Login or Register to rate this blog post!

The most common complaint about Guild Wars from people who don't like the game seems to be the extensive instancing. Everywhere you go outside of town gets a separate instance just for you (or rather, your party). I happen to like a lot of the consequences of that, such other players not interfering with my fights, and mobs staying dead when killed rather than respawning ten minutes later. But it is a very different experience without seeing a lot of other players fighting nearby.

But what annoys me about the complaints is that the people making it don't seem to recognize that nearly all games heavily instance their content. Suppose, for example, that you play WoW and stand in Ironforge, just outside the bank. Do you see everyone else in the game who happens to be standing just outside the bank in Ironforge? No, you most certainly do not. 99% of them are on other servers, and hence invisible to you. That is, they are in separate instances of Ironforge.

There are some exceptions to this, of course. The main ones are games with too small of a playerbase to overfill a single server--meaning the company would like to instance content, but can't. The only other exceptions I'm aware of are EVE, which has an enormous world to let players adequately spread out, and Puzzle Pirates, which has separate servers, but gives each a separate map, so that a player standing on Tinga must necessarily be in the Midnight Ocean, and other servers have no analogous geographical location.

I understand that EVE has some very devoted fans, and people who want that sort of non-instancing may well have a decent case. But apart from that, the question is not whether a company will instance content, but how. The fans of WoW, WAR, LotRO, EQ2, etc. who decry the instancing of Guild Wars often seem to not recognize that their own preferred game is extensively instanced via servers--on top of the Guild Wars-style instancing of a separate instance for each party in selected locations.

If the question is how a game is going to be instanced, then separate servers is a rather clumsy way to go about it. Suppose that you need a party of six players to clear a dungeon, and there are sixty players online at the time who would like to party for that particular dungeon. That sounds like it should work nicely: partition the players into ten groups of six each, and let each of the ten groups do the instance.

But instancing by separate servers says no, you can't do that. The sixty players who would like to do the instance are spread across twenty different servers. Only one of those servers actually has six players who want to do the instance. Those six can't form a party and go, either, because none of them is a healer.

I'm not against games requiring parties to do some content. What I am strongly against is games requiring parties to do content without providing the means for players to form such parties fairly easily. And the separate servers issue is worse still: it actually prevents players who would have liked to form a party and should have been able to do so from forming said party. That is catastrophically stupid.

But the separate servers solution to instancing doesn't work so well in the open-world content that many players think of as non-instanced, either. Suppose that there are two different zones of about the same size, and built to hold about the same number of players. For whatever reason, five times as many players wish to fight in zone A as in zone B. If each zone gets one instance per server, then either zone A will be overcrowded or zone B will be nearly empty--or both.

One might hope that a company rebalances the zones such that zone A and zone B will attract the same number of players, but that's impractical. The ratio of high level players to low level players tends to increase as a game ages. Even if the player density of both high and low level areas can be about right at some particular point in time, there will be too few high level players well before that time, and too few low level players well after it. Even for zones of the same level range, players will figure out that farming one is more effective than farming the other, and some players will spend a lot more time in the former zone.

Another problem is time of day dependence. Most players are more likely to play a game at 7 pm in their local time zone than at 5 am. Most games have their playerbase fairly concentrated in particular areas. Language barriers encourage this when a game has different servers for different languages. If a game has separate servers for separate geographical regions (so that some people don't get a dreadful ping time because the server is 10000 miles away), this is guaranteed to be the case.

This leads to a given server often having several times as many players online at one time of day as at another. Even if the company could distribute the playerbase among the various regions of the game as they wish, a given zone can easily be overcrowded at peak times and then nearly empty in the middle of the night.

The solution is to allow the number of instances of a given zone to vary. If zone A has enough players to fill 15 instances, while zone B can't have more than 5 without seeming underpopulated, then let zone A have fifteen instances and zone B have five. Don't insist on one per server. If the playerbase dwindles at off-peak times, then let zone A have six instances and zone B two at the times when that's all that the playerbase can fill. Let instances be created and closed dynamically as players enter and leave. In case a player wishes to party with a friend who is placed in a different instance of the same zone, let players switch from one instance of a zone to another while inside the zone (perhaps in selected safe areas, to avoid landing on top of some mobs).

This isn't a completely new idea. It's basically what Guild Wars does with towns already (and theoretically outposts and mission areas, though most rarely have enough players to force a second instance). The number of players in an instance of a town is far less important than in an area where fighting occurs, of course. I've also seen this done in Infantry, which as a purely PvP game, was highly dependent on the number of players in a zone in order to function properly. But it's possible to refine the system of either game to work better for open-world content.

The key is to keep the population relatively balanced among the instances. It is essential to quickly go from the players roughly evenly divided among three instances to pretty evenly divided among four instances, or vice versa. This can for the most part be done without obstructing players simply by setting up the default way of distributing players among instances intelligently. So long as players aren't placed into an overcrowded or nearly empty instance for extended periods of time, most will simply accept their default instance.

Suppose, for example, that the game designers think that a zone ought to have n players per instance. Suppose furthermore that at a given time, there are k instances open. The game should keep k instances open so long as the total number of players in the zone stays between (k-2/3)n and (k+2/3)n. So long as this happens, any new players entering the area should be placed in whichever instance has the fewest players.

If the number of players exceeds (k+2/3)n, then it's time to open a new instance. Create the instance and it will immediately be the lowest population instance. All players entering the zone will be put in this new instance by default for a while. Player turnover, as some players leave an area while others enter it, will fill up the new instance pretty quickly.

If the number of players falls below (k-2/3)n, then it's time to close an instance. This is a little harder. Pick an instance to close (e.g., the lowest population one), and stop putting new players into that instance by default. After several minutes, notify players in that instance that it is closing down, and let them switch to a higher population instance if they prefer, but don't kick them out just yet. Don't block players from manually switching to the closing instance immediately, either. Let the playerbase in the closing instance dwindle for a while, but don't close it until all players leave, or perhaps kick out the last few stragglers after an hour or so.

This can be kind of rough when trying to go from one instance to two or vice versa. But even there, it's a far superior approach to having separate servers. It really only breaks down entirely when there aren't nearly enough players to fill one instance--in which case, the system would break down no matter how you distribute players among servers or instances. The transition will be very smooth when there is a larger number of instances, such as going from four instances to five or vice versa.

This would allow all players to play in an instance with the appropriate player density at nearly all times. More importantly, it would greatly facilitate grouping. If the playerbase is spread across 20 different servers, then on average, only 1/20 of the players who show up wishing to do the same quest as you will be allowed to group with you. With separate instances and an easy way for players looking for groups to communicate with those in other instances, every single player who wishes to do the same quest as you is eligible for the group. That means a new potential group-mate shows up 20 times as often, so you're not stuck waiting half an hour hoping that someone else will come along.

And most importantly, that can often be the difference between content that requires a group being viable or not. I don't have much objection to taking a couple minutes to get a group together. I object much more strongly to taking half an hour to get a group, especially if I'm only going to be on for 45 minutes in total. That would not only mean that more of the players who wish to do a given group quest will be eligible to group with you, but also that more players will come along wishing to do that group quest. Thus, the game would have more fun and less frustration. Unless, of course, you really, really hate PUGs. 

Kordesh writes:

 TL;DR summary: "I <3 Guild Wars and everything should be like it" What you describe is my worst nightmare.

Thu Dec 11 2008 11:23PM Report
Quizzical writes:

Except that what I describe is not at all similar to what Guild Wars does.  To have nightmares about having an easier time finding a group is rather strange. 

Fri Dec 12 2008 1:04AM Report
koogco writes:

 i have been thinking about somehting like this. i play WoW alot myself, and i hate it that everytime you get a new friend "in real life" you are almost guaranteed that they play on a different server. meaning i have to leave other friends and pay alot of money if i wish to play with them.

the system you describe is exactly what age of conan ultilises. but they also use several servers. i am absolutely clueless why, but they maintain (or try to, since they are not that successfull so far) very big servers, using an instance system like you describe.

Fri Dec 12 2008 5:32AM Report
birken writes:

Using thing instance system is nice if you limit it. If u think about  the way it is made is more like RL you have servers which we will call states each stats has store and river and lakes  but just differnt people. You choose to live in a certain state casue of family friend work whatever. It work the same with servers. You still get the same goods just differnt place. To put everyone on one server and then instance it would be boring. Well though are my thoughts on it.

Fri Dec 12 2008 9:21AM Report
Consensus writes:

or just do it the runescape way, you can choose which servers to play on, look on the list to see which is populated or ask your friend which one he is in. inside the server there virtually no instancing and no zones/loading screens.

I dislike the whole choosing a zone ala, gw aoc, because I don't like zones. but I don't mind different servers, there are just like HUGE zones.

you have to credit good old runescape for some things.

Fri Dec 12 2008 12:44PM Report
Consensus writes:

or just do it the runescape way, you can choose which servers to play on, look on the list to see which is populated or ask your friend which one he is in. inside the server there virtually no instancing and no zones/loading screens.

I dislike the whole choosing a zone ala, gw aoc, because I don't like zones. but I don't mind different servers, there are just like HUGE zones.

you have to credit good old runescape for some things.

Fri Dec 12 2008 12:44PM Report
Samuraisword writes:

Or just don't have instancing and offer a real seamless virtual world the way it is supposed to be. See you in Darkfall.

Fri Dec 12 2008 1:43PM Report
mackdawg19 writes:

I would of read more of your long list of text which shows you don't have organization, but I had to stop reading at one point. You mention WoW and instancing in Ironforge. You do realize that doesn't happen in wow, right? You also must realize that wows classic engine is not built to use that type of instancing. And that is not the type of instancing people bark at when they are referring to GW, so this blog fails on so many levels already. 

First off, go read what types of instancing there are out there. There are more then just one type. If your going to talk about a subject, atleast do your homework on it. 

Fri Dec 12 2008 2:48PM Report
Quizzical writes:

koogko:  "the system you describe is exactly what age of conan ultilises."

If so,  then why all the fuss about server transfers there?

birken:  "If u think about the way it is made is more like RL you have servers which we will call states each stats has store and river and lakes but just differnt people."

I've yet to see two different states with identical maps.

Consensus:  It's been years since I played Runescape, and I didn't play it much, but when I did, it had no concept of grouping.  If it's played as a single player game except that there happen to be other people wandering around that you ignore, then population density issues and people finding to group with don't matter.

Samuraisword:  If you're claiming that Darkfall isn't going to have enough people to require a second server (that is, a second instance), then you're not going to see many people there.

mackdawg19:  Scientific research has found that replies are more likely to be relevant to the topic at hand if you actually read the post first.  Or at least read to the end of the second paragraph.  You should try it sometime.

Fri Dec 12 2008 3:13PM Report
birken writes:

@Quizzical

You have missed the point. Not sure if you just type before thinking or what . I wasnt trying to prove that all states where the same shape i was trying to tell you everyone pick a server for some reason. i was compareing it to something. It ok if you dont agree with me just pick your battle better then just saying never seen two identical  states just make you sound slow and not  stuck in traffic slow short bus slow.

Fri Dec 12 2008 3:47PM Report
Quizzical writes:

Different states are different enough as hardly be different instances of the same thing.  Different instances of the same content means the same mobs spawn in the same places, the same buildings are in the same places, and the like.  The only thing that varies from one instance to another is which players are transient things such as the positions of particular players and mobs that will very soon be gone.  The main difference is the particular players who play on which particular server, but various laws of large numbers ensure that even that won't be much of a systematic change.  With hundreds of thousands of characters saved on a particular server, you'll never meet the overwhelming majority of them.

Fri Dec 12 2008 4:32PM Report
Deewe writes:

The real solution lies in technology like AIX LPAR and capacity on demand ;)

Fri Dec 12 2008 6:29PM Report
mackdawg19 writes:

You tell me why games use instancing and maybe, just maybe I will read the rest of your un-organized wall of text. 

Sat Dec 13 2008 1:22AM Report
Gravarg writes:

I wish there was a game with absolutle 0% instancing.  It's stupid and not good for role-players.  Why play a MASSIVE MULTIPLAYER game when you can't play with other players...

Sat Dec 13 2008 1:30AM Report
Claes writes:

Words can't describe how wrong you are. And calling a different server another instance? Are you that mis-informed?

Sat Dec 13 2008 1:46AM Report
Quizzical writes:

mackdawg:  Games use instancing (that is, making multiple copies of the same area) to prevent overcrowding in an area if a company anticipates that more players will wish to go to that area simultaneously than the area was built to hold.  This can be done whether an area is meant to hold 1 player or 1000, or any other number.

Claes:  That separate servers are more persistent than what you normally think of as instancing and you cannot travel from one server to another does not mean that a separate server is not another copy of the same area.

-----

It's interesting to note that after all the complaints about saying things that I didn't say, not a single person has commented on the heart of the post:  the way I propose that games be instanced.  That is, after all, the title of the post.

Don't get hung up on loading screens and stuff like that.  If someone plays EVE, do you think that the game loads everything that is going on on the entire server at all times onto the computer of every single player?  Of course not; bandwidth wouldn't allow it.  Rather, it only loads the stuff nearby, and loads different areas as the player moves around.

That could readily be done with instancing as I describe it above, too.  Get near the border from one area to another, and the game would pick an instance of the other area to send you to and load it automatically.  It would all happen invisibly in the background with no loading screen, making it seem as seamless as what you think of as non-instanced content.

Indeed, the only times it would be obvious that the content was instanced at all is when you go to manually switch from one instance to another, or perhaps occasionally if you're in an instance that is shutting down.

What would, however, be obvious is that you could actually find groups for whatever it is that you want to do, and that the player density was pretty constant, rather than depending greatly on (real-life) time of day, as so many games currently do--and to their detriment.  And those are the point of the system.

But you'd have already known that if you read the post before replying.

 

 

 

 

Sat Dec 13 2008 3:12AM Report
Syldra writes:

it's a shame that it seems like noone's actually read the whole thing.

you're on the right track, i would think that there's a smoother way to close instances/districts/channels tho.

simpiler implementation for access-to-everybody-for grouping is XServer chat/LFG and easy transfer between servers, doesn't fix crowding issues tho. there are a few games around with that simple version tho.

Sat Dec 13 2008 1:45PM Report
mackdawg19 writes:

 Quiz, the reason why nobody is reading the rest of your blog is because of what you "think" is instancing. I asked you to do your homework and you answered me with the wrong answer. It isn't just about server population and its not just a server type of thing. If you had actually looked over the different ways instancing is present in MMO's today and why they instance in the first place, you would know this. But as I already stated, you didn't and decided to formulate your own idea of why you "think" they do it. Put it this way, instancing isn't always about population or server capacity, some games chose to do it for story reasons, and simply because technology won't allow it any other way. 

Now I did read the rest of your blog, and on paper it sounds ok. But in reality, it sounds like some un-informed idea of how to go about instancing. And lets be honest here, there is no one way of instancing. There can't be. Not every company can afford to do things the same way, nor have the proper staff to do it. Like I said, good on paper, not so great in reality. Just go read over the many ways instancing is present in todays MMO, then come up with a more logical scenario. And make sure your organized, your blog may actually get read to the end if you do. 

Sat Dec 13 2008 4:49PM Report
Quizzical writes:

Mackdawg, the reasons you list for instancing are merely some of the reasons why a company might want a particular number of players in a zone.  That is, your answer is merely a special case of my answer, so if my answer is wrong, then so is yours.  If for storyline reasons, a dungeon is supposed to have a 5-man group with no one else interfering, then the company makes every group have its own instance in order to cap the size at 5 players.  If for technological reasons, a company's servers cannot hold more than 100 players in an area, then they create enough instances (often, enough servers) that the area will never or rarely have more than 100 players.

Is it technologically possible to open and close additional instances as the number of players fluctuates?  Infantry did it 8 or 9 years ago.  Surely technology hasn't regressed since then.

 

Sat Dec 13 2008 11:19PM Report
ReRoller writes:

City of heroes/villans would be an example of what your talking about. Fun game to try, by the way, if you haven't already.

Still, for thoose of us that would like to see a world where the player can choose to do things other then complete the check list the devs created for us its still just an instance. Nothing is going to be changed or affected. Its all just static. Sitting there for the next player to come along and prove he has enough brain power to follow the script and get to max level.

Making a more efficent cattle corral isn't the future for these games.

Sun Dec 14 2008 1:19AM Report
mackdawg19 writes:

Quiz, what list are you talking about? I told you that was ONE reason they COULD instance. I'm not sure if you read my statement or just the first line, but either way it seems you really don't care to actually look up the several ways they instance and why. Yes the important reason is why, because as you clearly state in your thread title, "The right way to instance", doesn't make sense when you didn't state the why. Mainly you just think they do it because of server populations and that it should play out like GW or COV. 

If you would of did your homework, not only could you of come up with a system that makes sense, it also wouldn't sound like a game you already play. So since you won't do your homework, I list some sites from not only bloggers but informational. Look over them, please do. 

http://tobolds.blogspot.com/2007/01/to-instance-or-not-to-instance.html

http://www.mmocrunch.com/2007/11/01/one-instance-to-rule-them-all/

http://www.mmorpg.com/blogs/Shawk/012008/1091_Instances

The third blog is a toss up from something I found on this site just to show you what others think. The second link is probably the better of the 3, but if your curious, I easily searched over 4+ pages using google on this very subject. Have fun reading, and if your serious about this blog, maybe you will read them or find your own. 

Sun Dec 14 2008 11:28AM Report
Syldra writes:

@mack: seriously, stop trolling.

specifically:

a) by reading his post it's easy to determine exactly what he is refering to by instancing.

b) your recommended second link uses it in much the same manner as quiz used it.

c) there is no case where instances are put in for a reason other than to control how many or who can access a specific area. you seem to be trying to say there is, which is wrong.

d) that you have the balls to post a blog with a lower quality of writing as if it's somehow better because it uses instance only in a rather narrow sense of the word is laughable.

e) quiz's usage agrees with the dictionary definition (a case or occurrence of anything)

naturally, i present you with the chance to redeem yourself: find the word that more accurately describes what quiz is refering to with instance. beware that by providing a word without a meaningful increase in accuracy you would basically be admiting to be trolling.

 

Sun Dec 14 2008 9:47PM Report
mackdawg19 writes:

 Troll, really? I'm trying to show the man that his blog, stated clearly, "The right way to instance, ............" is in fact the gamers view of what instance means. There is more then just server populations that come into play when instancing content. The population is only part of the scenario. The scenery, the level of detail, the "entitys", the technology at hand and the programers level of expertise. 

Heres some technical aspects of several ways to instance. The first is more of a instancing of models to reduce CPU load. Also known as mesh-instancing. There is also geometry instancing ontop of other forms of instancing. But thats really not the point, you can search those terms to find out more about them and what they do. 

And that dictionary term you provided is a broad term, hence the reason its in the dictionary. Even you with your wit, could of looked up a more game refrenced term of what instancing is. And your c list item is laughable. Clearly you don't read up on game development, so I won't even get into it. Do me a favor, quit with the word troll, or do you not realise what a comment box and forum is. 

 

Mon Dec 15 2008 12:23AM Report
Quizzical writes:

So let me get this straight, mackdawg.  You protest that I use the word "instance" to mean something slightly different from what an average gamer thinks of as an instance, when it's probably most descriptive word in common use for the game mechanics I propose.  And in protest, you're going to use the word "instance" to mean something totally different entirely?

Fine then, to give you the benefit of the doubt:  what should I have called it?  If I called it a way to partition a playerbase into servers, you could complain that what I propose isn't actually using separate servers in the sense that gamers normally think of.  And unlike now, that way, you might actually have a point.

 

Mon Dec 15 2008 1:29AM Report

MMORPG.com writes:
Login or Register to post a comment