Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

eharper256's Dynamic Time System VERSION 5.1!!

Dynamic Time System
UPDATED TO VERSION 5.1!!
By eharper256


Hello all, this is a EVENT Based Dynamic Time System that I created. It was created to meet my needs for an adaptable time system which weren't catered for by the currently available systems, scripting based or otherwise. I wanted the ability to alter the speed of times flow, like Calderons time, the adaptive weather of punkids system, and, most importantly, the ability to fiddle with the time of day at will without screwups and have it tell other events via a simple switch whether it was Night, or bad weather, or suchlike.

Features
  • Keeps track of minutes, hours, days, weeks and years through easily alterable variables. As a result of this, you can easily implement things like Inns that add 8 hours to the clock, and such...
  • Automatically checks if its night-time; and if it is, pulls a switch. You can have things like shops closing at night and such through this.
  • Set up default values for the time, like the AMS; and reset them to this value at will by a simple switch pull (hey I can do a Majoras Mask with this and return to the beginning, LOL).
  • Change the speed of times flow by altering a variable. This achieves an effect similar to Calderons Time; you can have time speed by quicker when on the World Map, for instance, or go slower in the Snowfield of Death. There are 5 settings for time flow by default (Normal, Fast, Faster, Uber-Fast and Slow).
  • Changes screen tone according to the hour; and changes it differently whenever one is inside, or when the weather is bad.
  • But there is the easy option to Switch the screen tone change off whenever you need to, whilst keeping time flowing in the background. Useful for cutscenes and places with unusual light conditions.
  • Support for Ccoa's Weather. Checks the weather every hour of game time based on Seasonal evaluation.
  • Much, Much, Much better weather support in version 2! The weather change is no longer quite so random; but more reliant on seasons and their individual likelihood of generating high/low pressure fronts. The system can be turned off at will.
  • Additionally, the weather now works in the same fashion as the tone changer; running then turning itself off every game hour. This has required an additional switch to be added to the line-up, but as a result the whole affair is much more stable and is also less laggy.
  • A final weather based addition: automatic application of appropriate BGS; which stays on (though lessens in volume) when you go inside. This feature is also easy to disable if you want your own BGS.
  • Also, a stupid bug in the demo was quashed. It continued to rain inside because of my lazy event programming before.
  • Much like the night-time check, theres a check for bad weather that pulls a switch. You can have people react differently to bad weather.
  • No big daft clock hangin' around onscreen all the time. I figure that most fantasy characters don't really have digital watches, in any case. ':| As of 5.1, still no big daft clock, HOWEVER, there is a toggle-able time & date window. See below.
  • However, you can tell the time at any time (tongue twister!) by simply calling a common event. This way, your characters can still look at the town clock or use a personal sundial, or something. This clock calling event has support for Dubealex's AMS by default, so the time shows up in a clear text box rather than a message; but if you don't have that, you can remove dependancy on it easily by a quick event modification. (I'm sure its easily changable to Ccoa's UMS as well, but I don't have that)
  • Finally, because of the separated events and conditionals, it does not lag at all. (At least it doesn't on my old laptop, which is a 1.6 GHz Athlon)

Version 3 Adds alot of cool new features!
  • Due to popular demand, I added a feature called FastTone. People didn't seem to like the fact that the tone change was slow when switching between inside and outside. This feature addresses that; it should detect when it is needed, and then make the tone alter considerably quicker.
  • SpecialLight was added. Previously, when you wanted to use a special kind of light not conductive with the typical day/night effect, you would have to apply the Tint Fixer switch and do it manually. SpecialLight addresses this problem by offering a standard library of unique lighting conditions, defined from within the Tint Changing Common Event. Therefore, you can define your special light type there, assigning it a variable value. Then, whenever you need to use that light type, you call upon it in a snap by simply setting the variable to your desired value, flipping a switch and then raising the Tint changing FLAG as normal. The Tint changer will then recognise the need for your Special Light; and it will usurp the typical Day/Night Tint whilst still letting time run and recognising the difference between day and night.
  • Special Light currently has the following default conditions programmed into it: Dark Cave, Sewer, Crystal Caverns (Blue and Purple), Icy Cavern, Fiery Cavern and Forested Canopy. You can add additional types if you have a reasonable proficiency with event programming.
  • Time Based Lighting was added. This basically allows the system to utilise the unique symbiosis of Time and Tint in ways besides the standard day/night cycle. As a result, you can add considerable amounts of atmosphere to your game with very little effort! For example, you can have a eerie dungeon with a pulsating light effect, or have the effects of thunderclaps with lightning flashes without the rain for that mad professors hideout.
  • Time Based Light currently supports the following unique conditions: Slow Strobe Light, Pulsating Light, Intermittant (Flickering) Light, Disco Lights :D , Battlefield effect with explosions, Underwater effect with bubbles, and Lightning Flashes for interiors. If you can think of other effects you'd like, post 'em here and I'll see what I can do.

Version 4 Adds some pretty funky new stuff also!
  • Now using Ccoa's Tileset swap script, the Dynamic Time system can automatically adjust the tileset for you depending on the season! This allows a switch to new tilesets to show the effects of winter, autumn and such more dramatically. In order to utilise this feature, simply adjust the tileset values for seasons in the configuration event. By default, Spring will use the default selected tileset, Summer will add +50 to this number, Autumn will add +100, and Winter will add +150. Hence, if you wanted versions of the RTP grasslands to change season, the spring version would be Database Tileset ID 1, Summer 51, Autumn 101, Winter 151 etc.
  • As mentioned, better customisation was my main goal for this version. To achieve this, the system now makes use of Script Arrays which are fully customisable in the setup event. For example, previous versions didn't recognise the difference between weekdays, and all months were always 30 days long. But no longer! The arrays allow the system to store both important numerical and string related data like the names of weekdays, the lengths of months, etc. without having to use further variables and switches. In a nutshell, this means the system now fully recognises the Date, the Day of the week and the month, and these things are fully changeable to the game-makers needs.
  • By fully customisable, I mean it! You can decide for yourself how many days are in a week, what those days are named in your world, how many weeks are in a month, how many months are in a year, how long each of those months are, and what each of those months is called!
  • As a result of the above change, the Time-Telling common event from before is a little bit more advanced; incorporating a calendar. Hence now when you call the common event that tells you the time, you not only recieve precise information on the time, but also learn what the date, day of the week and month are. Example: "Its 12:31pm! And its Tuesday the 15th of February, 2009!"
  • Another slight change: I've supplied a couple of fogs for this release, which are utilised by The Weather Generator to create further atmosphere. Like all of the other, similar, features, you can choose to deactivate this at will.
  • And finally, this version incorporates the mod I did a while back for Grimreaper; more extensive day period decision. The system automatically pulls switches when its Early Morning, Late Morning, Afternoon, Evening and Night. While this neccesitates a chunk of extra switches; you can use these switches as a comprehensive basis for creating fully scheduled NPC's (i.e. they go shopping in the morning, then go to work in the afternoon, then to the pub for the evening, then into bed for night)
Version 5 Adds THIS Stuff!
  • Stupid Bugfix Sorry guys, version 4 caused stupid errors with savegames due to '[]' not being defined. I didn't notice this until about 3 months after I released since I was using an outdated version 3.5 in my game until then. Then again, no-one gave me any feedback on the issue either...
  • Its gone partly Script-a-licious Partly in order to more easily quash the above bug, and partly to tidy things up a bit, the global settings of the DTS now have their own script class, $JT_DTS.
  • Phased Lighting. The main new feature. Technically an upgrade for the ol' Special Light thats been with the system since V3. Are all caves universally dark throughout? Do you see the glow from lava even on the next floor? Do rooms stay dark even with the lights on? No, of course not. Whilst it is not truly possible to model the advanced lighting of modern games in base RMXP, I thought of Phased Lighting to be a buffer of sorts. Basically, whilst Special Light may provide a 'library' of effects, Phased Light takes this a step beyond and offers the user controlled change of circumstances.
    Change a variable, raise the usual flag, and the properties of the area's light change to match your predefined options. Got closer to that lava? Then make the red saturation of the screen go up! Close to a caves exit? Then it should be brighter, right? Phased Light should be able to do this to create even better atmosphere.
    The DEMO only includes the Fire Cavern Phases. Since I can't anticipate how everyone is gonna want to use various phases, its up to you to actually make them and place them into the Tonal Change event. So this is an intermediate feature; you'll need a small modicum of event programming skill to make it happen.
  • World-Map-Time An additional setting for the time flow module thats been around since the beginning. This changes how the time flow operates from the usual frame based operation to a X-Y co-ordinate operation. In a nutshell, this means every time you move a square on a map, X amount of minutes instantly pass; but time is frozen when you're standing still. This is obviously meant for maps like world maps, where simulating the time it takes to travel large distances is beyond the capabilities of the normal time flow engine: crossing a country should take days, not minutes, after all.
  • Torches that deplete over time. I've had this one on the back burner for a while. Its still not up to my expectations, however, since it has a tendancy to lag behind the player. Lazy light, if you like, lol. Still, irregardless, I'll probably include it in this release. Its now much better since I made it based upon SephirothSpawns Torches, and changed some of the settings, fogs and graphics. It also supports flashlights at a remove, but you'll have to enable those manually.
  • Pre-defined days (holidays, holy days etc.) A Calender addition. Though we've had days of the week already, what if you wanted special stuff to happen in your game on certain days? So it happens to be a festival day in the game, and you want a market to be in town on this day only, etc.
    That said, its up to you actually take a special day and use it so, making this also an intermediate feature.
Version 5.1 Just adds the watch feature!
  • Watch/Dynamic Time Window Initially created by robot79796, this allows a clock and calender to displayed as a window at the top left hand part of the screen, which dynamically updates itself, and like many parts of the system, can be turned on and off at will with a switch.

The Watch & Calender window
Withthewatch.jpg


Worldmaptime in action
Worldmap1.jpg

Notice the fairly short (map-wise) distance to the junction.
Worldmap2.jpg

A fair while has passed getting there, as travelling a world map should do.
Worldmap3.jpg


Phased Light in action
PhaseLight1.jpg

PhaseLight2.jpg

PhaseLight3.jpg

PhaseLight4.jpg


More seasonal stuff
Seasonal1.jpg

Seasonal2.jpg

Seasons
Spring
DTSSpring.jpg

Autumn
DTSAutumn.jpg

Winter
DTSWinter.jpg

Night
DTSNight.jpg

Disco! (looks better in motion)
DTSDisco.jpg

Underwater
DTSUnderwater.jpg

Get the !Updated! Version 5.1 Demo from RAPIDSHARE here:
http://rapidshare.com/files/119548714/DTS-V5-1.exe
Or Get the !Updated! Version 5.1 Demo from MEDIAFIRE here:
http://www.mediafire.com/?fue1fzmjify

Want more mirrors? Just ask!

Get the !Updated! Version 5 Demo from RAPIDSHARE here:
http://rapidshare.com/files/118540685/DTS-V5.exe

---------------------------------------------------------
--------Using Version 4 is not recommended: It has an issue with Savegames...---------
Get the !Updated! Version 4 Demo from RAPIDSHARE here:
http://rapidshare.com/files/38525076/DynamicTime4.exe
Or get the !Updated! Version 4 Demo from MEGAUPLOAD here:
http://www.megaupload.com/?d=AWO9KRTM
--------Using Version 4 is not recommended: It has an issue with Savegames...---------

---------------------------------------------------------
Get the !Updated! Version 3 Demo from RAPIDSHARE here:
http://rapidshare.com/files/26498482/DynamicTime.exe
Or get the !Updated! Version 3 Demo from MEGAUPLOAD here:
http://www.megaupload.com/?d=ZYNSY6ZX[/SIZE]
Or get the !Updated! Version 3 Demo from the RMXP download manager here:
http://www.rmxp.org/forums/downloads.php?do=file&id=832

---------------------------------------------------------
The Old Version (Version 2) is also still available on Rapidshare Here:
http://rapidshare.com/files/16561109/DynamicTime.exe
OR here from the RMXP.org Download Manager:
http://www.rmxp.org/forums/downloads.php?do=file&id=481
---------------------------------------------------------

Enjoy; and feel free to use it in your games with credit.:thumb:

NEED HELP?? Here's a F.A.Q.
Q: How do actually go about adding this to my RMXP project?
A: Check out the Addition Guide I wrote:
viewtopic.php?f=7&t=14739&p=457573#p457573

Q: What the hell do all the switches and variables do?!?
A: Lots of stuff! Studying the comments I made will typically tell you all you need to know.
But, if you want a quick summary of what each component does, check this below post:
viewtopic.php?f=7&t=14739&p=514866#p514866

Q: Does it work with VX?
A: No, sorry, it probably doesn't. But I can't check since I've not had the moolah to buy VX.

Q: Does it work with the SDK/MACL etc.?
A: Yes. It hardly involves any scripting at all, so it'll co-operate with these scripting devkit things without any issues, as far as I'm aware.

Q: I have another question not listed here!
A: Fire away. I'll probably answer. But I'm a lazy & busy git, so don't expect an awesomely quick reply. Sorry.
 
Sorry for the slow reply, been busy as heck.

Put an autostart event that switches the Time Reset switch on in your first map. Thats all for basic function (see setup event for more advanced options)

Remember that the DTS cannot automatically recognise the difference between indoor and outdoor areas. You'll have to alter each door event you have; adding this:
Is Inside = ON/OFF
Tonal Change Flag = ON

This is not neccessary for moving between areas of the same type; only if it changes.

Or are you asking how to transfer it across to a project in earnest? Just copy all of the common events to your project; and ensure all of the switches and variables it requires are free. You'll have to name your variables/switches manually.
 
This is what i tried and all it does is give me an error of sorts. Also is there anyway of getting the day and night system out of the rest of it. Because i get a fair bit of lag from it all and was wondering if i could just extract the stuff i want out of it?
 
Well, sure, you can simply take the bits you need and eliminate all of the references to the other parts, if you like. It'll help you learn event programming whilst you're at it. :D

Or you can download one of the older versions; I've left them up specifically for that purpose. Pick v3 if you can do without seasons + naming conventions, but like the SpecialLight effects. Pick v2 if all you need is the Time & Weather system. You can see what features were added in what versions in the first post; and also D/L them there.
 
I have a problem in the month/weekday editing portion of the event...
for some reason whenever i modify the months or weekdays i get a script error. If i put them back to their original values they still dont work and i must re-copy that segment from your demo. This error always pops up if I edit the month or weekday names in any way possible. Just opening the editing window and pressing ok screws it up.

The error i get is:
Name error occured while running script.

undefined local variable or method 'it' for #<Interpreter:0x3d91a78>

I must in any case recopy the segment from the demo or I will always get this message when the even starts. I can modify any thing exept those weekday/month name ones.

I would be greatful for any help. Thanks in advance.
 
Oh, thanks for solving the problem Chausette. My work week just temporarily doubled to cover another employee and I don't get much time to visit RMXP at the moment.

Strange...not seen the comments pushed onto the next line like that before. Though; perhaps it has something to do with the fact my main laptop is a widescreen one...heh... :D

Glad you like it Moose Milk.
 
bojox3m":39nhpr38 said:
hey man! this looks nice! i hope more eventers would be inspired by this XD

Yikes its been ages since I've been and checked this out!

Though its seriously belated, thanks for the comment bojox3m.

In other news; I'll likely include v4 of the DTS in the 0.8 version of The Enemy Within.

And for random trivia, 324 people in total have downloaded a version of the Dynamic Time System since its original release... Not bad, I suppose. Hope you've all enjoyed the system!

Edit: Urm, sorry for the Necropost. Apologies if that's not allowed...
 
Hey guys; an update here. I realised that version 4 ~might~ have an issue with save games because the system forgets about a global variable on re-boot. (oops)

I'm working on version 5, which will rectify this (adds some more mini-scripting) and add some additional special features, like the ability to have special movement based time progression for world maps. If you have any requests for the time systems new version, now is the moment to make them; and I'll see if it can be done.
 
Hi robot797, terribly sorry about the slow reply. Glad to see you found a workaround. I'm busy adding crap to the DTS whilst simultaneously trying to work on my game; it should be out by the end of the week. I have well and truly quashed the save bug already, however, so if you'd like a preliminary version with just the bug fix, please say so and I'll upload.
 
Thought I'd give a quickie update to this. I haven't forgotten about releasing Version 5, but I'm the bizarre type who doesn't like to make a release just for a bugfix.

As of now, version 5 is set to include:
- **NEW** Phased Lighting. The main new feature. Technically an upgrade for the ol' Special Light thats been with the system since V3. Are all caves universally dark throughout? Do you see the glow from lava even on the next floor? Do rooms stay dark even with the lights on? No, of course not. Whilst it is not truly possible to model the advanced lighting of modern games in base RMXP, I thought of Phased Lighting to be a buffer of sorts. Basically, whilst Special Light may provide a 'library' of effects, Phased Light takes this a step beyond and offers the user controlled change of circumstances.
Change a variable, raise the usual flag, and the properties of the area's light change to match your predefined options. Got closer to that lava? Then make the red saturation of the screen go up! Close to a caves exit? Then it should be brighter, right? Phased Light should be able to do this to create even better atmosphere.

-World-Map-Time An additional setting for the time flow module thats been around since the beginning. This changes how the time flow operates from the usual frame based operation to a X-Y co-ordinate operation. In a nutshell, this means every time you move a square on a map, X amount of minutes instantly pass; but time is frozen when you're standing still. This is obviously meant for maps like world maps, where simulating the time it takes to travel large distances is beyond the capabilities of the normal time flow engine: crossing a country should take days, not minutes, after all.

- Torches that deplete over time. I've had this one on the back burner for a while. Its still not up to my expectations, however, since it has a tendancy to lag behind the player. Lazy light, if you like, lol. Still, irregardless, I'll probably include it in this release.

- Weather varies more. Through use of different fogs and more lighting settings, a day might look different depending on the season and location such like. I've often thought I could still make more use of the options in ccoa's weather for the DTS. For example, during autumn in a forest, the DTS should occassionally generate the falling leaves weather. I've still gotta finish implementing this.

- Pre-defined days (holidays, holy days etc.) A Calender addition. Though we've had days of the week already, what if you wanted special stuff to happen in your game on certain days? So it happens to be a festival day in the game, and you want a market to be in town on this day only, etc.
 
Well, I put some serious effort into getting the V5 demo done. Phased Light is now complete. Just gotta finish the stuff on Pre-defined days. They currently exist but do nothing, lol.

Dadevster":c0edxtrx said:
I can't wait for Version 5! This is a truly awesome script.  :thumb:
Thanks for the appreciation. It'll be very soon.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top