Archived

This topic is now archived and is closed to further replies.

drbizzaro

Thought regarding persistent game worlds

Recommended Posts

Hi, I''m designing a distributed real-time persistent game world in my master thesis. During this project we have come in contact with some interesting problems which I think would be interesting to hear your opinions on. If the game world lives on even when the player is not online, how does then the player relocate him/her-self in the game world after some time of absence? In most persistent multiplayer games today (I’m thinking of MMORPG’s here) isn’t this really a problem since the changes in the world isn’t that big. But what if for instance when you come back to the game the country you live in is in the middle of a bloody civil war, technological advances has leaped forward and your house has been burned to the ground. What can the designers of a game do to make this relocation process of the player easier?

Share this post


Link to post
Share on other sites
Interesting question. Personally if there was a chance for me to lose hard earned possessions while off line I wouldnt bother playing. Too often designers try to impose real world penalties in something that is supposed to be fun. So in your example if I was gone, say a month and came back to find hell on earth, cats and dogs playing and my mother in-law in for an indefinate visit and then on top of all of that to find my house that took weeks or months to get a pile of rubble, I would erase the game and spend my time somewhere else. Having the possibility to destroy other peoples virtual property, although interesting would lead to total chaos with the group of players out there that enjoy making life(virtual) hard on other players. Maybe I missed the whole point of your topic but that is my .02

GRELLIN
Don''t sit and complain about a program, make a better one or shut up!

Share this post


Link to post
Share on other sites
That''s quite possibly one of the most difficult to answer questions I''ve seen on this forum in a long time, therefore, I''m going to answer it!

There is very little you could do. One of the easiest ways out would be to "ghost" anyone, and everything they own/control/maintain when they aren''t connected. Meaning, if they aren''t connected, they don''t exist. The problem here? It''s hard to map out a country (or whatever) if it''s constantly changing, which also makes it difficult for people to find their way around. If I walked into my town, and saw 4 houses, walked into my own home, and came out to see 500 houses... let''s just say I''d be a little frustrated.

And then there''s the even simpler solution:

quote:

...when you come back to the game the country you live in is in the middle of a bloody civil war, technological advances has leaped forward and your house has been burned to the ground...



Simply put, you''re screwed. It''s your fault for not being there. Personally, I don''t agree with this an it''s quite harsh, but it''s reality. If you weren''t at your house while your town was hit with an large bomb, would you see it when you came back?

On another note, what if you were in your house when you logged off? Then, you''d be dead when you came on. This is unfair because if you were on, you could possibly have escaped. Obviosly, this method is not the best one.

Maybe the solution would be to not allow players to own homes? Rather, they can rent rooms, or stay at the homes of friendly NPCs. In this situation, the building you are in may be blown up, but when you log back on, you''ll get a message saying you left the town an hour or so before the battle took place. The problem with this? Some people don''t want to constantly be migrating. Is that really a problem though? The game should have a plot, and you really shouldn''t need to stay in a home.

There''s alot that can effect the way this works. I mean, if your game is set in the 1500''s, there isn''t much you can do to avoid destruction, so you need to keep the player occupied so he or she will not need to avoid anything. If your game is set in the year 2900 where instant transmission is possible, you could have it that if a war is occuring and the player isn''t logged on, their house is transported to a safe base in outer space.

Personally, I''d say the following is the best solution:

There is one safe place in your world that is very small, barely any people go there. No one can attack it. Every time you want to save your game, you go to this place, and when you load your game, you start at this place. That''s the easiest and best way out, with little confusion.

Good luck!

------------------------------
Simple DirectMedia Layer:

Main Site - (www.libsdl.org)
Cone3D Tutorials- (cone3D.gamedev.net)
GameDev.net''s Tutorials - (Here)

OpenGL:

Main Site - (www.opengl.org)
NeHe Tutorials - (nehe.gamedev.net)
Online Books - (Red Book) (Blue Book)

Share this post


Link to post
Share on other sites
Luckily, current persistent game world''s don''t have enough events happening to change the world to drastically during a player''s absence. I bet most don''t have a single change in between playing sessions.

But what if a game were to be created where things DO happen? Where even a one day absence can result in a complete reorganization of people, cities, cultures etc.

I think the simplest (and perhaps most non-original) solution would be to come up with a reason why during the player''s absense the virtual character would be absent as well.

Let''s say the player controls a human being playing a video game. When the player stops playing, the human avatar who plays the video stops playing as well. The game world within the game world could continue. When the player comes back, the human avatar boots his computer back up and gets right back into the game. Now, if the game that the avatar plays is somehow related to the virtual world in which the avatar lives (let''s say that the avatar is a hacker trying to get into the world''s top secret organization''s database, trying to prevent them from global domination), you can have a persistent world even when the player isn''t around. When things change within the virtual world, the character would see this as normal. Hey, if the avatar left to go work for a day (making money to buy a new computer, buy electricity etc), he shouldn''t be surprised to see that another hacker has already been able to enter the database of [insert organization]. Or that the organization has developed new means of protection, undoing most of the avatar''s previous work.

So one solution would be to create a virtual world within a virtual world.

Share this post


Link to post
Share on other sites
Well one design idea might be to setup professions in your game. I mean we can''t all go adventuring all the time, we got bills to pay, and sometimes you just need a break from killing orcs.

Replace the NPC shop keeper with an offline player who''s profession is shop keeper.

You could even create customizable AI for an offline player, so they choose how they spend their time and money offline. It might be cool to come back after a week of playing to find out you''ve learned some new skills, and have some money in the bank.

I think it would be cool to watch your character change. It''s like a bonus after you''ve been gone.

Share this post


Link to post
Share on other sites
You could get creative and build the potential dynamics into the story (and world) itself. Set the game up so that when you are logged out, you are really *not there*. One thing that comes to mind is the dream lands of HP Lovecraft. You could only enter the dream lands when you were asleep, and when you woke up, you really truly exited. When you came back, things may have changed around you, but it was alright; dreams are understood to be dynamic and mutable.

There are a couple other ideas floating around my head, but the basic idea is to make the limitations of the system work for you, by making them part of the story.

Take care,
Bill

EDIT - General dorkness

Edited by - Siebharinn on February 18, 2002 10:05:00 PM

Share this post


Link to post
Share on other sites
That idea of a dream world is a lot like Steven Donaldson''s "Chronicles of Thomas Convenant" Series. I think that would be a really good solution, because like in Covenant, and other things like Fushigi Yuugi, it is perfectly reasonable to have time function differently in the different worlds, which means that if your game runs at a different timescale to reality, and say you log out for 6 hours and 2 days pass in game, then that is conviently explained away (just sweep it under the rug)

But a persistent world like that is very cool, as longs as you don''t penilise the player for not being online (no damage to their actual persona) it would add a dramatic feel to know that every time you entered the world, you might have to fight for your position in the world (possibly even your survival).

"In the name of God, impure souls of the living dead shall be banished into eternal damnation, Amen"

Share this post


Link to post
Share on other sites
Here is my stab:

About Loosing property. If you are going to be this realistic, then you might as well have insurance in-game also. AO has this for characters, and it costs money, but it is worth it. Sure, you don''t have to do it, but it is a good idea to not loose too many items.

About Constant Changes. The player should know about the world constantly changing before playing the game (or at least the possibility), and thus not be suprised when he comes back to find a different economy, etc.

About technology advancing, and changes (again). This relates to how fast in-game time relates to real time. And, again, the player would be aware about how much in-game time would be lost when they are away. When I walk away from C&C for 10 mintues, I am pretty sure I am out of luck if I come back later.

What makes a game "A game" is that the player generally knows all the rules. They know the possibilities and the cause and effects. Your question was of course hitting the most drastic case, but if that is possible, then the player should not be suprised, and continue playing.

Share this post


Link to post
Share on other sites
If you are attracting players to a persistent world then they should know what might happen and the game should provide for this.

Suppose I am a player with property etc.. in the game world. I log off and don''t return for a while. After (say) 5 days the game sends me an e.mail giving me a rough idea what is happening in the world as it affects my character. If I do not reply the game NPCises (is that a word???)my character but does nothing else unless game action have an effect on it. Every five days another e.mail is sent updating me. If the war does come to my house then the NPC playing me automatically grabs as much goodies as it can get and becomes a refugee.

I remain a refugee in the game world until I log back on when I am instantly deNPCed (hey another word I made up ) and carry on playing.

If I knew this was likely to happen I could take steps beforehand - hiding stuff or having bank accounts etc.. - to avoid the worst of the harm.


Share this post


Link to post
Share on other sites
A combination of a notification system and AI filling in for you when absent seems like a good approach.

Lets say, when creating a game account, the player specifies forms of communication he/she wants to be contacted by. The game could for instance send a SMS to the player notifying him/her that the house is on fire. An interesting follow up to this would be to let the player have some limited form of interaction possible through the notification system.

Regarding the AI trail maybe the player could, when leaving the game world, choose a AI-personality filling in for him/her.

A notification system could probably help the player keep track with changes in the game world, maybe it should be working on two levels.

1.Small events directly affecting the players character, i.e. The house is on fire, someone is proposing a trade and so on.

2.Larger events affecting the whole game world and thus also affecting the players character indirectly, i.e. A civil war, a fame spreading over the world and so on.

A question that pops up is how to balance the AI and notification, if the AI is to fast reacting on upcoming events the notification system will probably lose some of its value as a limited interaction possibility for the player. On the other hand though, if it reacts to slow the character could end up dead. Maybe this delay should be something the player could tweak him/her-self.

Share this post


Link to post
Share on other sites
I think you should just radically change the game-world. You just can''t have a world like our own in a gameworld (yet).

Consider stealing some stuff from the PlaneScape setting. When you build your house, you aren''t just building it in a city. Instead, you place a portal in that city, perhaps a beautifull door, and that portal would lead to your own "pocket dimension". There you would build your house. When you log-off, you could simply close the portal behind you, and nothing could happen to your house.

Though, when you login again, and open the portal, you might find out your portal lies a barren wasteland, because either a) the ''city'' was destroyed, or b) some nice people decided to move you portal around a bit ^_^

-Maarten Leeuwrik
=================
[Illiad] J.R.R TOLKIEN ACHIEVES 40,000 RPM IN GRAVE

Share this post


Link to post
Share on other sites
I think I would have to go more along the "don''t hurt the player for having a life" route. Don''t allow wars to burn houses. Don''t allow territory to change hands between factions unless the word was put out a few days, preferably weeks, ago. You don''t have to tell them what is happening, but give them hints that something big is coming...maybe even come out and say "Something big is coming."

I think something that didn''t allow for real life would make no money. I know the original post was for a dissertation, but the topic is games. Remember that quote: "If real life was so great, we wouldn''t play games." I take that to mean that a game can get TOO realistic.

The only penalty I could see is making the player pay the price for quitting in a hostile area where they can''t survive without help.

ShadeStorm, the Day_Glo Fish

Share this post


Link to post
Share on other sites
I think some kind of "sacred" area is the simple solution. Like stepping into a portal and taking of to another dimension. That does not prevent that the player still can know what''s going on in the world, and be notified about it. Maybe the "sacred" dimension is a parallell one? So he can watch the "real" world even when he is in the other.

Otyherwise I like the idea of having a NPC standing in for you doing everyday work for you when you''re abscent. With some smart programmed AI it could try to save itself if disasters is happening. The player just gets notified about the events, and can then step into the game if he sees he has to. Otherwise the NPC can play the character after some simple rules.

#1 Save myself.
#2 Save my things.
#3 Get to safe place.

All in that order. Donno if it''s a good solution, but still an option.

(drbizzaro sounds familiar...almost like a friend of mine...but wait...it''s HIM!

- Captain_RB

Share this post


Link to post
Share on other sites
One way to soften the blow of returning to the game world would be to have an email "newspaper" detailing important game world occurences sent to the player while offline, which they can read at their leisure to prepare themselves for world changes before reentering.

This also means they will be warned if something bad has happened, ie a war has broken out, and they then have the option of going online immediately for a short time to take precautions, such as moving their posessions to a safer area, boarding up their house, etc.

Another, more radical alternative(which I just thought of and really like), would be not to have solid buildings as player dwellings, rather large vehicles like ships, houseboats, hot air balloons, etc, which can simply fly away to a place where they cannot be reached or damaged when the player goes offline. Actual permanent ground installations could simply be mooring masts or docks, which could be destroyed, but will probably be defended if some community members are still docked there, and to which a player could return his own home when he reenters the world.

Share this post


Link to post
Share on other sites
I think the email notification/news paper idea is great!
Even then, I think a nice web interface of the world would be cool, at least for updates. I think that new EQ:lengends thing is going to do something like that.

Getting world information for a web page would only tax the server as much as logging in, concerning querying resources and such.

I also think having a NPC take your place while you are gone is also an incredible idea. That way the world would actually feal as full as it is. It is kind of weird logging into Online games today to see them full one second, and empty the next. Even if the AI unit just sits there, or sleeps in a bed, it will help.

And YEP, having that many 3D people always on will slow down the computer. It just means that the designers are going to have to actually start worrying about resource handling BEFORE they ship the game.

AO had a pretty world with nothing in it, they added and optimised later. Even DAoC people said at that post mortem that they too concentrated on making it look good first, and later worried about adding things. Adding things later means resource issues are not fully realized until it is too late. Oops, sorry, did not mean to get off topic.

Summary:
NPC placeholders are a good idea, along side an email, or web interface for world updates.

Share this post


Link to post
Share on other sites
A further refinement is that in RL we go away on holiday. In a sense being on holiday is the "safe portal." Thus players perhaps have a holiday option which means they are away in a safe place for a specified period of time and no contact with the game is required. Players in the game or NPCs trying to contact them get a message saying the player is away for the specified time.

They then re-enter the game at an airport, coach station, road or inn and make their way home or to where they usually hang out and get the news.

After the specified time - or if the player has not specified a time - the e.mail and NPCiseing of the player kicks in.



Share this post


Link to post
Share on other sites
Guest Anonymous Poster
i think that the player and there vehical\house should disapere from the world when they arn''t playing and reappere at the same spot later. There should be no ownership of buildings that is you can rent them or have them built but once you leave the game there just and abondond building, not your house any more. One warning for someone making a game this big expect it to take a long time. Also since its multiplay youd need a very powerful server to keep track of thousands of wars going on through out the galaxy.

Share this post


Link to post
Share on other sites
I came up with a futuristic idea of not having places where people live, but a place where you can store your items, like a safe deposit box, but less safe deposit boxey, as when the player leaves the game they merely step into a portal(like stargate) and go back to their ''home planet''. This would give the plausable illusion that they have returned home through this teleporter, but have actually left the game. Their posessions they can take with them, but any others they can leave in the possesion of either A) a friendly NPC, who can own a house in this virtual world(make up some faux game rule about only people being born on this planet can have a dwelling if you have to, and these people only being NPCs), or B) this storage facility idea. Ah,.. another idea that springs to mind.. hiding objects, i mean, we all hide stuff when we don''t want other people to find it, maybe burying it. The teleportation idea could be changed slightly for a medieval game, adding a bit of magic you could still use the world portal idea. Btw.. these portals would be public obviously, dotted around like tube-stations.

DarkStar

Share this post


Link to post
Share on other sites
Well, to solve the exact problem you stated, I would divide the gameworld into zones for logging out. So when Kupa the Krappa logs out in the middle of Midgaard, his logout zone gets recorded as "Midgaard", so that if something happens to Midgaard, his character can be quicly identified as having been affected by the war. Of course, the character''s exact logout coords would be stored, and used if nothing happened -- the usage of zones is only to allow for quick sorting of players. Anyway, let''s say the Kender decide, for some bizzare reason, to invade Midgaard, and the entire city is destroyed in the fierce battle. Since ol'' Kupa is tagged as having logged out in Midgaard, when he logs back on the game has relocated him to a temporary hospital set up by friendly forces. He then wakes up, checks out of the hospital, walks outside, sees the destruction, and screams "OH CRAP!!! MY BASEBALL CARD COLLECTION!!! IT''S GONE!!!", or perhaps he shouts something that makes a little more sense. See where I''m going?

---------------------------------
"It''s groin-grabbingly transcendent!" - Mr. Gamble, my teacher, speaking of his C++ AP class

Share this post


Link to post
Share on other sites