19 Aug, 2010, Rudha wrote in the 1st comment:
Votes: 0
First of all - I wasn't sure where to post this - this is where seemed most appropriate. Sorry if I was wrong about that!

I've been playing with design ideas for my MUDs weather system for a while in my head now, but I haven't come to any concrete conclusions as to what I think would 'work', so I thought I'd ask for some input here, seeing as we seem to have more than a few experienced MUD builders/coders/etc around here! :)

There are really two segments I can't quite decide upon, so I'll touch on them in turn:

How pervasive should I make the weather system in terms of interaction?
This is one thing I can't decide on a 'happy medium' as it were. The first time you get messages that your character makes loud crunching footsteps as they walk through the snow can seem cool for the first hundred times, but it gets old fast. At the same time if it's a weather system that you don't notice at all, well that defeats the purpose of implementing it.

Should the weather system have gameplay effects?
It makes sense that someone whose in extreme temperatures should suffer some sort of ill effects, it seems to me to be a bit detrimental in most cases to have weather have game effects. To give an example - I remember a few times playing Achaea/Imperian/Aetolia et al, where you get stuck in a blizzard, and you cant see -a thing-. And it ends up just hindering people without a system, because there are all sorts of backwards ways to get around it, and it doesn't actually stop you from moving. I really dont like the idea of that kind of thing because it just penalises players who don't have systems/automation/whatever. The problem I have, I suppose, is thinking of examples where extreme weather could have gameplay effects, but not suffer from that pitfall - or at the very least avoids it insomuch as possible.

Any thoughts and input would be appreciated!

Maya/Rudha
19 Aug, 2010, David Haley wrote in the 2nd comment:
Votes: 0
Quote
How pervasive should I make the weather system in terms of interaction?
This is one thing I can't decide on a 'happy medium' as it were. The first time you get messages that your character makes loud crunching footsteps as they walk through the snow can seem cool for the first hundred times, but it gets old fast. At the same time if it's a weather system that you don't notice at all, well that defeats the purpose of implementing it.

Why not make it configurable, or have the frequency of messages decrease as the players get the information?

The answer to this question is also linked to the next:
Quote
Should the weather system have gameplay effects?
It makes sense that someone whose in extreme temperatures should suffer some sort of ill effects, it seems to me to be a bit detrimental in most cases to have weather have game effects. To give an example - I remember a few times playing Achaea/Imperian/Aetolia et al, where you get stuck in a blizzard, and you cant see -a thing-.

With respect to the first question, if weather affects gameplay, your players will probably want to be aware of what's going on. If it's just cosmetics, it could become spam after the initial novelty factor wears off.

With respect to the gameplay effects themselves, I haven't played Achaea etc. so I can't speak to that experience directly. However, I would suggest that you don't want effects that end up crippling the player. It seems reasonable that certain weather conditions could shift tactical balance one way or the other; perhaps you don't want to be using your bow and arrow if it's so foggy you can't see, or the wind is too strong, etc. On the other hand, if the weather is clear but the ground is very icy, you're probably better off using a ranged weapon because it's very hard to get solid footing to use hand-to-hand weapons. So in both cases, you can do whatever you want, it's just that you'll get an advantage if you're aware of weather (and even better, able to predict weather).

I would say that it also depends on what the general game is like. If the game involves pre-combat strategy (like picking equipment for a party) then weather can be quite interesting because it adds another element of strategy to how/where you engage the enemy. (Again, this is not appropriate for all kinds of games.)

In summary I would say that it would be fun to provide advantages and disadvantages, but if weather completely stops a player from functioning normally it's not really fun anymore (unless they have something else to do in the meantime).
19 Aug, 2010, Fevenis wrote in the 3rd comment:
Votes: 0
Adding a weather system is a awesome idea. It's adding a whole new layer not only to game play, but RP as well.

I like your examples, loud foot steps in the snow, blizzards hindering your visibility. Perhaps have rain effect peoples ability to accurately hold their weapons causing them to miss? Who knows.

I wouldn't worry about penalizing players. Put harsh weather (such as snow and blizzards) in zones that are known to have such weather. Unless you go in prepared, you will have a hard time or die. Limit light weather to towns and newbie type zones.

Even if the weather doesn't have an effect directly on the player, it's a good RP mechanic as well and makes you feel more immerged in that world.
19 Aug, 2010, Runter wrote in the 4th comment:
Votes: 0
I don't like weather systems in most muds. They boarder on annoying often. My only suggestion is don't make giant balls of ice randomly bludgeon players to death. My first mud I played did that.
19 Aug, 2010, Rudha wrote in the 5th comment:
Votes: 0
David Haley said:
With respect to the gameplay effects themselves, I haven't played Achaea etc. so I can't speak to that experience directly. However, I would suggest that you don't want effects that end up crippling the player. It seems reasonable that certain weather conditions could shift tactical balance one way or the other; perhaps you don't want to be using your bow and arrow if it's so foggy you can't see, or the wind is too strong, etc. On the other hand, if the weather is clear but the ground is very icy, you're probably better off using a ranged weapon because it's very hard to get solid footing to use hand-to-hand weapons. So in both cases, you can do whatever you want, it's just that you'll get an advantage if you're aware of weather (and even better, able to predict weather).

I would say that it also depends on what the general game is like. If the game involves pre-combat strategy (like picking equipment for a party) then weather can be quite interesting because it adds another element of strategy to how/where you engage the enemy. (Again, this is not appropriate for all kinds of games.)

In summary I would say that it would be fun to provide advantages and disadvantages, but if weather completely stops a player from functioning normally it's not really fun anymore (unless they have something else to do in the meantime).


Yes, I agree entirely, and its finding that balance that is elusive. Though, I hadn't thought of wind effecting bow/ranged weapons and that is definetely something that would make sense without being overly hindering to the majority.

I like the idea that kind of comes out of both your and Fevenis' words - some sort of basic climate codings for areas/zones. Some areas could have more temperate weather, some more tropical, some more artic, etc, and then it rewards a player for learning some about the gameworld which I think is a good thing to encourage.

One thing I like the idea of is having equipment and how much you're wearing mitigate - or worsen - the effects of weather depending on what you're wearing. Wearing a full suit of platemail in a desert is a heat stroke case just waiting to happen, I'd think. But as far as the actual mechanics go, Im not sure I want it to do -damage- - that's probably a bit much for it simply being part of the ambient environment. Perhaps make them tire out quicker?> Im not sure what to do.

I guess in the end I'm trying to think of ideas here, brainstorming a little how I could implement weather without it being overdone and with -meaningful- mechanics that don't make the game unnecessarily difficult. The wind with bows/guns/whatever idea is a good one! Im not sure how I feel about blizzards. If I made it so you couldnt see the exits that would be pretty bad, I think, for reasons I named in my example.

Maya/Rudha
19 Aug, 2010, David Haley wrote in the 6th comment:
Votes: 0
Quote
One thing I like the idea of is having equipment and how much you're wearing mitigate - or worsen - the effects of weather depending on what you're wearing. Wearing a full suit of platemail in a desert is a heat stroke case just waiting to happen, I'd think. But as far as the actual mechanics go, Im not sure I want it to do -damage- - that's probably a bit much for it simply being part of the ambient environment. Perhaps make them tire out quicker?> Im not sure what to do.

It depends on the rest of your game model. If you have no notion of stamina, then you can't really express being tired. You could add a small penalty to everything they do (similar to over-encumbrance). I agree that damage is probably inappropriate. If you do have stamina of some sort, excessive equipment in hot weather (or lack of warmth in cold weather) could be like a stamina drain.

Quote
Im not sure how I feel about blizzards. If I made it so you couldnt see the exits that would be pretty bad, I think, for reasons I named in my example.

Yes, I agree, it penalizes players to the point where it's just not really fun. But you can still play on visibility. If your game has some notion of looking around ('scan' in Diku) you could increase/decrease the visible range according to weather. On a clear day you can see many rooms away but in a blizzard you can't see anything except your current room.



I think it's also important to not focus too much on realism per se but on fun effects. It's true that being too cold and too hot have different physiological effects on the human body and so forth. But you can model both as "you get tired quickly", and that will probably create some fun strategy to work around, even if it's not realistic, strictly speaking.
19 Aug, 2010, Hades_Kane wrote in the 7th comment:
Votes: 0
I've thought a lot about weather too, and I keep going back and forth between making it work better (coding in separate regions so that there isn't one weather condition world wide, along with one weather pattern in one region being able to affect the weather in another, and so on).

But do players really notice or care about weather?

I'm beginning to think the effort spent on a (usually at best trivial) cosmetic effect might be better spent elsewhere. If I'm not making it affect combat or magic, is it just unnecessary spam?
19 Aug, 2010, Rudha wrote in the 8th comment:
Votes: 0
Well, I do want it to have gameplay effects. But gameplay effects that make it fun and encourage some thinking on the part of the players are a difficult balance - doing it that the mechanics aren't overdone and make the game unenjoyable it pretty tricky.

David Haley said:
It depends on the rest of your game model. If you have no notion of stamina, then you can't really express being tired. You could add a small penalty to everything they do (similar to over-encumbrance). I agree that damage is probably inappropriate. If you do have stamina of some sort, excessive equipment in hot weather (or lack of warmth in cold weather) could be like a stamina drain.


Elvenblade has health, mana (which I might rename at some point), and stamina as its vital statistics, for the record. A stamina drain could work I think, in that situation. Perhaps I could scale it so that more extreme environments are bigger drains than less extreme ones. I suppose that bleeds into the question of how we decide what's extreme and what's not - especially since the different races in the gameworld are used to different climates - which granted is probably increasing the complexity exponentially, but if it were implemented in a way thats not too hard on players to figure out, could be an interesting distinction between races, I think.

Maya/Rudha
19 Aug, 2010, KaVir wrote in the 9th comment:
Votes: 0
IMO, even purely cosmetic weather can be worth having, as long as it's handled in moderation so that it doesn't become spammy - its one of those little touches I find can make the world feel more immersive. It's also a good candidate for inclusion in your soundpack, if you use MSP.

Weather doesn't do a great deal in my mud - I mainly added it to help me flesh out my dynamic descriptions - but rain does cause people and their equipment to get wet. This grants a minor bonus against heat damage and a minor penalty against shock damage (and because equipment can be layered, multiple layers of wet clothing can really add up).

Wet equipment also tends to rust or rot after a while (depending on its material), which makes it less resilient to damage. This can be easily fixed by the player between hunting sessions, but it can impact them if they spend a lot of time out in the field.

Rain can also extinguish torches, which can be pretty annoying when you're trying to burn down a village. This wasn't exactly intentional though - the original plan was that flaming things should be extinguished when dropped in water, so that (for example) if someone sets you on fire you can leap into a river to put out the flames. But lit torches get the flaming behaviour and rain gets the wet behaviour, and I'm still trying to decide how best to handle it.
19 Aug, 2010, Runter wrote in the 10th comment:
Votes: 0
How about a magnitude of wetness or flame? I think it would take a reasonably heavy shower to extinguish a torch.
19 Aug, 2010, quixadhal wrote in the 11th comment:
Votes: 0
Personally, I'd try to make a weather system that flows across the landscape. IE: if the weather is currently clear, and you are looking north, adding a "you see storm clouds, heavy on the horizon" could tell you that the zone north is currently raining/snowing/etc. If the wind is from the north, you might reasonably guess it will start raining where you are soon.

I'd probably want to track temperature, precipitation, pressure, and wind speed seperately. The idea being, you want things to change in interesting ways without having to have a zillion cases. So, dig out a few formulas from the weather service and modify them so they work well for your game environment.

I'd make physical effects correspond to the magnitude of the event and the environment. A light snow storm on a day where the temperature is 50F with mild wind is refreshing. A heavy snow storm in 10F with high wind is devastating and would probably slow most people by 2/3 or 3/4 movement, possibly also doing damage if they don't have special cold weather gear on.

If you have magic systems (arcane, spiritual, etc) which deal with elements…. that could also be tied in. A water spell should work well on a rainy day. A fire spell, not so much.

I also like the idea of properties…. so if you're out in the rain/snow, your equipment is flagged as "wet" for a while.
20 Aug, 2010, Rudha wrote in the 12th comment:
Votes: 0
A lot of good ideas to be had here! Thanks guys, I appreciate it :) I'll address in turn again:

DaVir said:
Wet equipment also tends to rust or rot after a while (depending on its material), which makes it less resilient to damage. This can be easily fixed by the player between hunting sessions, but it can impact them if they spend a lot of time out in the field.


This is probably a very realistic way of handling item decay that both seems real and works mechanically in the MUD. I'll play with that a bit and implement it probably.

Runter said:
How about a magnitude of wetness or flame? I think it would take a reasonably heavy shower to extinguish a torch.


And lower amounts of precipitation would reduce its effectiveness but not put it out, I like that.

quixadhal said:
Personally, I'd try to make a weather system that flows across the landscape. IE: if the weather is currently clear, and you are looking north, adding a "you see storm clouds, heavy on the horizon" could tell you that the zone north is currently raining/snowing/etc. If the wind is from the north, you might reasonably guess it will start raining where you are soon.


I really like this idea and I'll probably mesh it with the idea of limiting visibility and implement that much when I program weather.

quixadhal said:
I'd probably want to track temperature, precipitation, pressure, and wind speed separately. The idea being, you want things to change in interesting ways without having to have a zillion cases. So, dig out a few formulas from the weather service and modify them so they work well for your game environment.


Pressure? I'm not sure I see the usefulness of tracking air pressure to any sort of game mechanic that would make sense, I think. Why do you suggest it?

Tracking precipatatin and wind speed separately is a good idea though. Avoiding monolithic conditional statements is always a good thing if it's possible.

Maya/Rudha
20 Aug, 2010, Runter wrote in the 13th comment:
Votes: 0
Air pressure may be important if you want to accurately model storms.

But I agree. Its a bit overkill for most.
20 Aug, 2010, quixadhal wrote in the 14th comment:
Votes: 0
Right, pressure is mostly a component of meshing wind direction/speed with storm systems. In real weather, storms develop along the boundry lines between high and low pressure nodes. Winds flow from areas of high pressure into areas of low pressure. So, you could derive both wind direction/speed and precipitation amounts from the movements of these pressure nodes.

Randomly create a new high pressure node, allow it to build to some maximum and then diminish. Do the same with low pressure nodes. Have them move across the map in a known direction (but with a bit of variance) – typically this is west to east for the northern hemisphere. Now, you can figure the wind speeds and directions based on the strengths of the pressure nodes and how far apart they are.

You can also figure the chance for precipitation (and the violence of it) by looking at the high wind areas and factoring in temperature. Add in a cloud layer that moves in general like the nodes do, but make them affected by the wind as well. The clouds hold the moisture, so when you get a combination of the right pressure gradient + clouds, you get precipitation. Temperature decides what kind.

Obviously, I wouldn't try to make it as complex as real weather – waaaay overkill. But I suspect something like the above would make pretty realistic weather that manages itself (once you find the right numbers to plug in), and would seem pretty natural to the players.
20 Aug, 2010, Scandum wrote in the 15th comment:
Votes: 0
You can integrate temperature into your game's physics which would give it an inherit pervasiveness, downside is increased complexity, and it would only be really cool in combination with a dynamic description engine.

For random snippets creature tracking comes to mind, tracks in snow are easy to find, rain erases smells and blood trails, etc. Farming could be affected (seasons), lakes could freeze so you can walk over them instead of having to swim, drought could result in forest fires, certain creatures might appear in certain seasons/climates/conditions (wilderness stuff), quests could allow weather checks, clouds could reduce visibility slightly if you use a 1 to 1000 scale which in turn can affect the distance you can see, wind blowing in a certain direction might make it easier to move if you go with it; harder against it, and if you add sailing wind ought to be a big influence as well.
20 Aug, 2010, Koron wrote in the 16th comment:
Votes: 0
quixadhal said:
Personally, I'd try to make a weather system that flows across the landscape. IE: if the weather is currently clear, and you are looking north, adding a "you see storm clouds, heavy on the horizon" could tell you that the zone north is currently raining/snowing/etc. If the wind is from the north, you might reasonably guess it will start raining where you are soon.

This was basically what I was going to do with my weather system that I never got around to implementing (the death of most good ideas, it seems). I really like the ability to have different weather in different areas; global weather simply makes no sense. Localized weather also lets players do some interesting (if only novel) things with weather controlling effects. Instead of laying siege to a city directly, why not send in your weather-mages to flood the bastards out? :D
20 Aug, 2010, Rudha wrote in the 17th comment:
Votes: 0
quixadhal said:
Right, pressure is mostly a component of meshing wind direction/speed with storm systems. In real weather, storms develop along the boundry lines between high and low pressure nodes. Winds flow from areas of high pressure into areas of low pressure. So, you could derive both wind direction/speed and precipitation amounts from the movements of these pressure nodes.

Randomly create a new high pressure node, allow it to build to some maximum and then diminish. Do the same with low pressure nodes. Have them move across the map in a known direction (but with a bit of variance) – typically this is west to east for the northern hemisphere. Now, you can figure the wind speeds and directions based on the strengths of the pressure nodes and how far apart they are.

You can also figure the chance for precipitation (and the violence of it) by looking at the high wind areas and factoring in temperature. Add in a cloud layer that moves in general like the nodes do, but make them affected by the wind as well. The clouds hold the moisture, so when you get a combination of the right pressure gradient + clouds, you get precipitation. Temperature decides what kind.

Obviously, I wouldn't try to make it as complex as real weather – waaaay overkill. But I suspect something like the above would make pretty realistic weather that manages itself (once you find the right numbers to plug in), and would seem pretty natural to the players.


I really don't think I'd do something this complex at least on the onset of the weather system, but the basic idea there is workable and I will probably use it. It occurs to me its probably worthwhile keeping these different variables as seperate systems anyways as that makes it easier to debug them when they get problematic.

Scandum said:
You can integrate temperature into your game's physics which would give it an inherit pervasiveness, downside is increased complexity, and it would only be really cool in combination with a dynamic description engine.


I use dynamic descriptions already - most of the rooms in my mud have different descriptions during night and day for example. That much is already there its just a matter of utilising it. All of the descriptions include a few pre-generated bits anyways, depending on circumstances, for example if you're outside where you can see the sun its always time.get_tod_room_message() + room.desc - well more complex than that but that should give yu the basic idea. The -real- drawback really is the increased complexity. I can use further pre-generated bits to mitigate that but then it starts feeling redundant and same. I suppose I could add fields to the room data for different weather strings for those bits and if it doesn't have a custom one I can use the pre-generated ones. I think that's probably a fair compromise.


Scandum said:
For random snippets creature tracking comes to mind, tracks in snow are easy to find, rain erases smells and blood trails, etc.


You know I'm really perplexed I didn't think of that! I have a very complex tracking skill in my 'survival' skillset that gives you signs like shine etc and I didnt even think of hooking that into weather. I should probably check and make sure my head is still screwed on.

Scandum said:
and if you add sailing wind ought to be a big influence as well.


Sailing is really something I would love to add but there are a few difficulties to it. It really isn't very good without some sort of overland map display and neither Chahiero nor I can get our heads around the text formatting problems that presents trying to give that information to the player. That would definitely be important to sail-rigged ships, though, you'd think!

Maya/Rudha

edit:

Koron said:
This was basically what I was going to do with my weather system that I never got around to implementing (the death of most good ideas, it seems). I really like the ability to have different weather in different areas; global weather simply makes no sense. Localized weather also lets players do some interesting (if only novel) things with weather controlling effects. Instead of laying siege to a city directly, why not send in your weather-mages to flood the bastards out? :D


I too like the idea of different weather for different area. I'll probably at least have a concept of climates. I'm not sure if I'll make it flow in the way that is described - its a lot more complicated in the implementation than it sounds, I think.
20 Aug, 2010, David Haley wrote in the 18th comment:
Votes: 0
I don't think you need to model the components of weather forecasting too accurately in order to make a statistical model that creates plausible weather. If you know which states transition to which other states with how much probability, then you can just have a "random" weather system that happens to feel real. In general, unless those underlying components actually matter somehow, I would not bother modeling them.
20 Aug, 2010, Rudha wrote in the 19th comment:
Votes: 0
That is my problem with a pressure system. I can see the benefit of measuring wind speed seperately as that would have an effect on archery and ranged attacks of other varieties. I can see the benefit of modelling precipitation seperately as rain or snow can have all manner of effects. But what would pressure do, other than be an underlying, additional layer of programming for me to have to code and debug? While I dont think random would entirely work - I do think there becomes a cut-off point where the cost of modelling something further in terms of time and effort and added complexity outweighs the benefits.

Maya/Rudha
20 Aug, 2010, David Haley wrote in the 20th comment:
Votes: 0
To be clear, I meant a very particular kind of random, and not random such that all states have equal probability. If you observe weather patterns, you can compute probability of changing from one state to another. For example, the probability of changing from a hot clear day to a blizzard is extremely low. Therefore, your weather system can be a set of states each of which has a probability of switching to another state (or staying the same) – then, at given intervals, you roll the dice to see where you should go. This lets weather change, without you having to even get close to coding a weather simulator.

Furthermore, this lets you get values for wind, temperature and precipitation. If the current state is "hot clear", you know there's no precipitation, high temperature, and you can make up a number for wind. If the state moves to "overcast", you know that things are basically the same but there is probably lower temperature. If by then you move into "rain", you make the appropriate adjustments.

Basically, all you need to simulate is what players actually see. As far as the player is concerned, it is utterly irrelevant if your weather system is modeled using accurate measurements and interaction between pressure, temperature, and so forth, or if it's modeled using a statistical model that only cares about the output. After all, what players see is the output, not the inner mechanisms of the model. And note that the game effects you speak of – temperature, wind, etc. – are also just output.
0.0/32