Maintenance Seasons

Linus

Member
Contributor
Name: Seasons
Summary: A library mod that adds seasons to Terasology.
Scope: Module
Current Goals:
  • Add some configuration options (at least season lengths and the starting season).
  • NUI Calendar?
Phase:Implementation
Curator: DizzyDragon

https://github.com/LinusVanElswijk/Terasology-Seasons

Inspired by the comments of Glasz on the game-balance-and-longevity thread, I decided to create a simple module that adds seasons and related events to the game.
I share the believe that seasons can enrich the game by adding more variety.
Example uses are season depended quests, mobs, flora and textures.

This module is intended to be a library module and there does not add and will not add any content to the game by itself, but instead makes it possible for other modules to adapt their behavior to the seasons.

Note: The current version does output some stuff to the console for debugging purposes.
 

Skaldarnar

Development Lead
Contributor
Art
World
SpecOps
This is great. I was thinking about seasons recently, investigating some minecraft mods and stuff (interesting how a change of leaf color changes the environment ...).
Are you working on a gradient transition between seasons or just "hard changes?
 

Linus

Member
Contributor
The mod just sends out seasonChanged and dayChanged events. The mod is able to tell how many days you are into a season, how long each season lasts and what the order of the seasons is.
With some interpolation magic it should be possible to implement smooth transitions between the seasons, but that is left up to the users of the mod.
 

Skaldarnar

Development Lead
Contributor
Art
World
SpecOps
Ok, nice :)

With the given values it should be totally doable to have smooth transitions. Can't wait to test it out :D
 

Immortius

Lead Software Architect
Contributor
Architecture
GUI
I don't think the dayChanged events are needed? Terasology already has OnDawnEvent, OnDuskEvent, OnMiddayEvent and OnMidnightEvent. Also, rather than checking for season change every frame, the season system could hook into one of those four events.
 

Linus

Member
Contributor
I don't think the dayChanged events are needed? Terasology already has OnDawnEvent, OnDuskEvent, OnMiddayEvent and OnMidnightEvent. Also, rather than checking for season change every frame, the season system could hook into one of those four events.

Ah, yes, thanks. I didn't know about these events. I will remove the dayChanged event and change the update code.
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Spiffy :)

Want to have this live in a formal Terasology/Seasons module on GitHub? Will put you in its admin team. Or if not we can mirror it to still have it in the official lineup :)
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Done!

https://github.com/Terasology/Seasons
http://jenkins.movingblocks.net/view/ModulesPending/job/Seasons/

Admin team created with you in it

Whenever you need a repo like that just let me know :)

Note: Try to get the latest template version of .gitignore and module.txt (if you don't have them already), and exclude build.gradle - that build file is added on fetching the module in source format to a local workspace and Jenkins likewise copies in the template fresh (from the Core module) rather than use a build.gradle in the repo

Edit: Oh, of course, you'll need to actually add the new repo as a remote reference and push to it to get the base code in there. I haven't done that part :geek:
 
Top