Jump to content

  • Log In with Google      Sign In   
  • Create Account

CRPGs and time


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
14 replies to this topic

#1 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 17 September 1999 - 07:33 AM

Hello,

I am currently writing a CRPG for my Master's thesis and I have stumbled into a design problem.

The game I am writing is a real time game, but with pauses - like Baldur's Gate.

The problem comes when long distance travelling and sleeping occurs. If I speed up time here to problems exist:
1. The AI of other characters will fall to zero in this period of game time.
2. The game is not easy to implement as a LAN-networked game because time goes out of sync.

Alternatively I could keep time at the same pace as usually, but then I think that the game would become to boring and - if only one map would be used - very timeconsuming to design.

Games like Ultima games solves travelling problem (but not the sleeping problem) by simply making maps and wilderness smaller, but that is unsatisfying.

Does anybody have any ideas?

------------------
-------
B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark.



Sponsor:

#2 mason   Members   -  Reputation: 128

Like
Likes
Like

Posted 27 August 1999 - 07:36 AM

OK, just off the top of my head, here's a couple of ideas.

Hardcore reality proponents would say that the only way to make things *totally* fair is to create a HUGE game world where every square inch is traversable. Then, to go from Town A to far-away Town B, the users right click on Town B and spend the next 5 days watching their character walk all the way there.

Since this would suck, I'd say the best way to solve the problem is to take the one resource that travelling needs (time) and convert it into a more tangible resource (say, gold). Make up something creative: your world has got wizards which can instantly teleport people to any place on the globe... for a price. Then make sure that the wizards charge more depending on how far away you want to go.

Just a thought...

Mason McCuskey
Spin Studios www.spin-studios.com


#3 felisandria   Members   -  Reputation: 739

Like
Likes
Like

Posted 27 August 1999 - 07:45 AM

I believe that problems like this are solved in Baldur's Gate and games like it by making rules:
Limited multiplayer (generally 4-8) in order to accomodate for the fact that...
All players must agree to sleep at the same time. This is somewhat annoying, and limits you multiplayer parties (in Baldur's Gate, for instance, you are not even allowed to go into another game region without having ALL your characters together.)
The rest of the time problems seem to be fixed by rolling for chance of encounter during the sleep period chosen, each "hour" has a percent chance of an encounter and if an encounter is rolled, the characters must "wake up" at that time to defend themselves. The time-based quests function according to game time and therefore run at an accelerated speed during the rest period.
Quite honestly in my opinion requiring sleep isn't really an asset, and I can guarantee you that I will never buy a game that requires me to sit there and watch my character sleep without acceleration.
As for distance travelling and large maps, I'm fairly impressed at the Darkstone way of handling it, which consists of breaking the map into chunks and walking down the occassional "path" to get to the next chunk.
-fel

#4 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 27 August 1999 - 11:55 AM

Hi,

And thanks to you both for your input. What I forgot to tell was that I am actually making a CRPG authoring system - not just a single game - otherwise my professor would not accept the project.

The project site is: http://fp.image.dk/fpelisjac/rolemaker/index.htm

To put the decision of time speed into the domain of the game world (like Mason suggests) means that the underlying engine should accept various time speeds. The author of the rule system (also not placed in the engine) can then select the speed of time for each situation. This is certainly a solution worth considering, but it this would mean increasing the complexity of authoring games. It would be preferably if I could isolate all these decisions in the engine.

And to felisandria, I can only agree that sitting in front of the screen in 8 hours watching somebody sleeping, is extemely boring and totally out of the question.

And about the Baldur's Gate sleeping policy: I do not think it is a good idea to enforce that all party members should sleep at the same time. For networked games for only a few players I believe that the game just should be timed for the player which is at the earliest game time moment. So if a party member decides to sleep, then he must sit in front of the screen while the other party members go adventuring.

And your comment about random encounters; I do not like the whole idea of random encounters. In my opinion creatures should not just appear out of nowhere just because the party sits down and rests. Encounters should only occur if creatures would have come by the location anyway - which unfortunately requires more computation to determine. I am attempting to create a believable functioning community, which means that if a party goes into a room in a dungeon, locks the door and then goes to sleep, they do not suddenly wake up surprised by kobolds - like it happens in Baldur's Gate. The amount of creatures and items in the world should stay the same throughout the game.

I have never played Darkstone. Tell me more.

------------------

B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark.
http://fp.image.dk/fpelisjac/rolemaker/



#5 felisandria   Members   -  Reputation: 739

Like
Likes
Like

Posted 27 August 1999 - 12:05 PM

Darkstone is a relatively new CRPG (it came out just a few weeks ago), somewhat reminiscent of Diablo, but much larger. The perspective is 3D overhead (and pretty impressive considering some of the stuff you can do with the camera without losing image quality). The major quest is to gather 7 crystals, though this can be done in different ways depending on the randomization of subquests, all of which are randomized every time you start a new game for maximum replayability. Characters are exportable and multiplayer of up to 4 people over LAN or TCP/IP is supported.
It's worth a look.
-fel

#6 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 27 August 1999 - 12:31 PM

Hmm,

Without going in to a discussion about what a CRPG is, lets just say that games like Diablo is of different kind and style that games like Fallout or the Ultima series.

Diablo - and also Darkstone according to the reviews I read - is primarily combat oriented and focused not on making a story but allowing the game to replayed again and again with the same characters. This is good for social gatherings on computer cafe's but is not for single player fun. So, I do not think I will buy it - thats a lot of money.

So fel, could you be so kind as to tell me more about the movements between the submaps in Darkstone and the "paths" you talked about.

------------------

B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark.
http://fp.image.dk/fpelisjac/rolemaker/



#7 DavidRM   Members   -  Reputation: 270

Like
Likes
Like

Posted 27 August 1999 - 01:25 PM

I'm not sure what type of game you're targeting:
(a) Massively multi-player like Everquest or Ultima Online
(b) Single-player with multi-player capability

They have different time-scale requirements. Obviously, the goal of (a) is real-time, while (b) has the flexibility of time-compression and time-dilation. In (b) you can force the players to work in real-time in some scenarios and allow for entire weeks to pass in just seconds as they travel upriver.

In (a) city's are pretty much just locations, places to hang out and use as a "base". Any quests discovered there are usually going to be "reasonably local." That is, the real-time nature for the game prevents a quest from sending the player half-way across the continent. A player might spend the time travelling to a far away city to check it out, but then the world designer would need to provide a lot of detailed scenery and interaction between the two locations to make the trip interesting. Maybe the player can be considered to be "travelling" even when offline to allow him to get further. Or the "magic teleport" alternative mentioned by Mason would work.

In (b) city's and other locations are usually "plot points." It's important that the player arrive there, not that they spend days travelling to get there. In this case, there is literally *nothing* between points A and B except a number representing travel time required.

It comes down to the kind of game you're creating. If it's a large, open-ended multi-player game the problem of time is much different than if it's a scripted, plot-driven game.

------------------
DavidRM
Samu Games
http://www.samugames.com


#8 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 27 August 1999 - 02:08 PM

Hi,
I think that is clear from my first posting that I plan a single player or "few" player network game. What is not clear is that it is plot driven, but with a very non-linear approach in mind. See my site for more info.

I think you (DavidRM) missed the point - I am NOT interested in just making time jump ahead in a snap shot as usually done in games - because the AI would suffer. So its not the travelling that is important but the fact that characters elsewhere (NPCs) still act almost as though the character was still around.

A compromise of speeding time up a few (2-100) factors during travelling or sleep is properly the best thing to do.

Although waiting 8 hours while sleeping is out of the question, maybe waiting 10 minutes is okay??

After all travelling is not taken lightly in the real world and a 100 miles march through the desert should be felt some how on the player, shouldn't it?
And sleeping is usually done i CRPGs to recover from injuries, so resting is often af result of a minor failure in a CRPG. Wouldn't it be okay to give a minor punishment to the player for this?

Punishing players may be controversial, but just consider it. Players often just do not care about combat - "I will just rest afterwards - no problem" - and that should not be like that. Waiting could also be a solution to this problem.

------------------

B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark. http://fp.image.dk/fpelisjac/rolemaker/

[This message has been edited by felonius (edited August 27, 1999).]


#9 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 27 August 1999 - 02:30 PM

To through yet another time related question into the mix:

What do you think about letting the computer initiate pauses to handle high priority AI calculations?

These pauses should of coarse occur as rare as possible and when they occur they should have minimum length of 5 seconds (or so) to ensure that pauses do not occur in small chunks of 1/10 second.

A computer pause is almost like having "Computer turns" in a real time game.


#10 ghowland   Members   -  Reputation: 134

Like
Likes
Like

Posted 28 August 1999 - 09:22 PM

Its probably just a better idea to split up the large AI processes so that they dont all happen at once when possible. Alternating, etc.

Or even better, you can separate the drawing from the internal processing and then it doesnt matter as much if you are waiting to draw the screen on the AI info...

-Geoff



#11 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 29 August 1999 - 01:43 AM

Hi Geoff,

I am already alternating between NPCs and they have different priorities - almost as described in the article "practical NPC management" on Gamedev.net.

The AI routines are already separated from the graphics updates so that is already done. This done by having two ready queues (like in a real OS process schedular), one for real time and one for game time. When game time runs scheduled tasks from the game time queue is moved to the real time queue. The real time queue contains order for screen updates. If the real time queue comes behind schedule then currently the all low priority tasks are postponed (or dropped entirely) until later. The system uses free NPCs, so each AI routine is fairly small.

What I mean is that some times very high priority tasks (for instance the AI of the NPCs currently combating the player characters) becomes behind schedule even if everything else is postponed. This could be caused by a wish to have high AI standards for certain characters at certain times.

The question really is, could it be acceptable for the player if the computer was allowed to pause, if the gain was an increase in the AI of the immediate surroundings?

This is a CRPG authoring system so it is the author/user that defines the AI routines. That mean that I cannot be absolutely sure that all high priority tasks can be handled at all times to a satisfactory level. I only really see the following alternative to pausing:
- Postpone high priority tasks, thereby forcing af a lower AI standard - noticable by the player. If this happens often, then system could lower the priority of some of these tasks.

------------------
B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark.
http://fp.image.dk/fpelisjac/rolemaker/




#12 ghowland   Members   -  Reputation: 134

Like
Likes
Like

Posted 29 August 1999 - 10:57 AM

Well, you have to decide if frame rates are more important than the enemy AI. If it isnt, then delay the frame drawing...

-Geoff


#13 felonius   Members   -  Reputation: 122

Like
Likes
Like

Posted 30 August 1999 - 03:12 AM

Hi,

This might not be totally relevant to post it here, but I have at single report that my home page was unreachable. If you have such a problem, please mail me. (I think that the DNS name distribution of the domain name is faulty somehow)

------------------
B.S. Jacob Marner
Graduate Student of Computer Science, The University of Copenhagen, Denmark.
http://fp.image.dk/fpelisjac/rolemaker/




#14 Anonymous Poster_Anonymous Poster_*   Guests   -  Reputation:

Likes

Posted 16 September 1999 - 11:36 AM

I love this stuff!

First off sleeping can be gotten around you mentioned speeding up time during that period, but there are alternatives for one sleeping doesn't really help heal barely at all and is only used as a method of going offline, two meditation is used rather than sleep player is fully rested in about 30 minutes but player can wake up at any time or can rest in short segments like 5 mins or so this way if hes not watching and monsters stumble upon him hes fried but if watching he can wake up immediately and react to there appearance, three sleeping can only be done in inns or waystations etc... and if it takes no game time it doesn't matter because you are in a safe place and there are no important changes in the surroundings that would need made, four AI areas can be set as circles including all Items nearest any given player and players can only sleep if the AI areas are above a certain size so instant AI computation for an area can be derived semi randomly for instant completion and only time of day will stay the same, this way it won't noticably affect other players and creature placements and other changes will be made in areas affecting player, five I don't know can't think of any others off the top of my head, but they are out there.
Now about travel, this is harder. Teleportation obviously works but is impractical as only method, possibly again using AI spheres you could have player automatically move from area to area going out of auto whenever they get to near another AI or Player that way speed would be possible but in areas near possible conflict they would accually be able to see the enemies before hitting them unlike the common instant travel encounters and all groups on a road would pass as they went so theyb would have better player interaction for multiplayer, three make caravan and boat trips possible for money and have them move your char over areas without you being there in large multiplayer it would mean your char might not be there for an hour or so, but that can be done while offline, in single player it could be a safe instant travel mathod, sorry can't think of four right now.


#15 Anonymous Poster_Anonymous Poster_*   Guests   -  Reputation:

Likes

Posted 17 September 1999 - 07:33 AM

Hey it ran mine together need to remember that SORRY. It was in paragraph form once.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS