World Time Plugin for Godot 4
A downloadable asset pack
Buy Now$30.00 USD or more
A customizable time and calendar system for your Godot 4 game with signals for creating time based events and UI controls.
Game Time
- The game time system by default, automatically increments the time game seconds and use the GameCalendar to recalculate the current DateTime for the state of your game on process intervals.
- Scale time differently depending on your game needs. (Ex. 1 day in 10 minutes)
- Modify speed of character movement and animations seperately with EngineTimeSpeedSlider or setting Engine.time_scale directly
Time of Day & 2D Lighting
- Define special Time of Days that serve as important markers for your game and UI
- Trigger events at specific times of day such as when Dawn or Dusk enters
- Setup light to adjust color and strength settings as the time of day updates.
Ageing
- Age ANY object in the game by giving it an AgeingComponent. When the world AgeState ages, objects tied to the world age as well.
- Replace objects by age is an option baked into AgeingComponent. Total object age is passed into the replacement scene.
- Age is measured by an arbitrary unit threshold you define tied to the TimeState. An age can be days, hours, minutes, etc so you have control over how fast objects age in your game.
- AgeState provides signals for reaching a full age unit threshold and each time the age is modified at all
Upcoming 1.1 Patch (Very Soon)
- Calendar GUI for displaying days, weeks, months, and years that tracks current date changes while open.
- EventDays show icons for special holidays or birthday events in game. Signals emitted on the time state whenever an event day is entered.
- Better String Formatting for GameDate, HoursTime, and DateTime ~ Can swap positions of day, month, year, hours, minutes, seconds as needed.
- Templates turned to separate zip package so updating plugin doesn't interfere with current UI assets.
Tutorials & Updates Playlist
0.4.1 to 1.0.0 Upgrade Tutorial
World Time Playlist on YouTube
Here's a preview of the main systems and components in this package
There are currently 3 major systems that handle the processing of data and emission of signals through the Time State and AgeState resources.
- Game Time System - Tracks the time and date as real world time progresses by converting it to game time changes and storing game seconds and DateTime data on the TimeState which emits signals as it's values are updated so you can easily create time based events.
- Day Night Cycle System - Uses the HoursTime from the current DateTime in order to determine what time of day it is. After calculating a new TimeOfDay, it is emitted on the TimeState through time_of_day_changed signals. This is useful for game events or lighting that wants to rely on the TimeOfDay as a triggering event like switching the lighting color with TimeOfDayDirectionalLight2D nodes.
- World Age System - After a set amount of game time passing, the world age will increase and emit ageing signals on the world AgeState. This can be used by components like AgeingComponent to age other objects in the game and replace them with new scenes through a nested SceneReplacement resource (switch out a young character to an adult one with different game mechanics for instance)
Useful Components that React to Game Time
- TimeOfDayDirectionalLight2D - Light that reacts in color and intensity as the time of day transitions from one to the next one.
- AddAfterGameSecondsComponent - Calls add(amount : float) on another node after game seconds elapsed. Handy for replenishing depleted resources in the game as time progresses.
- AddWhenAgeingComponent - Calls add(amount : float) on another node after the current age on an AgeData resource increases. Can be another way of replenishing a resource or increasing some other statistic as age milestones are reached in your game.
The plugin README.md has details about setting up each system with relevant signal bus resource objects and components to receive the data from for game play mechanics.
Assets Used in Screenshots & Videos (Not Included in Plugin)
Updated | 6 days ago |
Status | In development |
Category | Assets |
Author | Chris' Tutorials |
Tags | 2D, Godot, godot4, lighting, plugin, time |
Purchase
Buy Now$30.00 USD or more
In order to download this asset pack you must purchase it at or above the minimum price of $30 USD. You will get access to the following files:
world_time_1.0.2.zip 40 kB
world-time-dev-project-1.0.2.zip 1.3 MB
Development log
- 1.0.2 Starting Date HotfixAug 07, 2024
- 1.0.1 Bug Fixes & Warning ImprovementsMay 10, 2024
- 1.0.0 Release - Stateful Shared ResourcesMay 05, 2024
- 0.4.1 Full Video Tutorial, Useful Tester UIs, and Bug FixesOct 25, 2023
- 0.4 Cleaner Signals and DateTime StructureOct 12, 2023
Comments
Log in with itch.io to leave a comment.
Hey thanks for creating such seamless plugins!
Wanted to double check - are they all allowed to be used commercially after purchase? (World Time, Grid Builder, Item Drop, etc...)
Yes it is allowed to use each plugin for commercial usage in games. Just no repackaging and reselling of the source code itself. Update coming soon for World Time with a visual calendar, weeks, and event days among other improvements.