Talos Mud Development Blog

One mans quest to blog about Mud Development

Archive for the ‘Conversions’ Category

Weather System

leave a comment »

I’ve often come back to making a weather system because I really believe that a highly integrated well developed weather system adds a huge amount of immersion in the game, and really helps set the ‘mood’ of the game.

So in 2.1.18 of DS I rewrote the SEASON_D and added rain and wind, but it was just there. So I’ve spent the last day or two breaking down the system and really taking an indepth look at the way that the system works. I decided to break it out a little more and develop independent Daemons for each part of the whole.

PERCIPITATION_D obviously controls all of the Percipitation and the transitions between each stage. But it does not determine what is being Percipitated. It simply says we need to percipitate.

WIND_D, can’t get much simpler then this little Daemon. How strongly is the wind blowing and what direction is the wind blowing in. Since we’ve broken this out it can be used for a lot of other things! Like a Hot Air Balloon which is blown about by the wind!

TEMPERATURE_D simply just tracks the temp according to the day and season.

Advertisements

Written by Troy

January 19, 2010 at 10:09 pm

SEASON_D Changes

leave a comment »

Well I am still converting my old 2.1.18 code to 3.0 and had to start hacking on the SEASONS_D

I’ve added the following time Sections: Evening, Afternoon and I had to put the weather changes aside until I have more time.  To fix an issue that I had with one of my NPC’s I had to add some sefuns:

int query_noon()  { return (SEASONS_D->GetTimeOfDay() == “noon”); }
int query_afternoon(){return (SEASONS_D->GetTimeOfDay() == “afternoon”); }
int query_evening() { return (SEASONS_D->GetTimeOfDay() == “evening”); }
int query_dawn()   { return (SEASONS_D->GetTimeOfDay() == “dawn”); }
int query_morning() { return (SEASONS_D->GetTimeOfDay() == “morning”); }
int query_twilight(){ return (SEASONS_D->GetTimeOfDay() == “twilight”); }
int query_night()  { return (SEASONS_D->GetTimeOfDay() == “night”); }
int query_midnight(){ return (SEASONS_D->GetTimeOfDay() == “midnight”) ; }

Written by Troy

January 18, 2010 at 8:55 am