Matt Ep. 3 - Day/Night Cycle, Round Management, Game Flow
Written by Matt Koopman of TDM Productions:
Being that are game was round based, I was tasked with creating the Game Manager, Round Manager, and general game loop + flow. To create a first prototype, I had decided to with an Observer pattern to set up the flow, as we decided that we didn't want the rounds ending in a timed matter, but ending when the last enemy of the round was killed. I never encountered too many issues with this at the start, I created events in the RoundManager for the RoundEnd, RoundStart, EnemyKilled, and generally coordinated most of the game through the RoundManager. Other than Player deaths, I had very little setup in our GameManager. I created UI Manager to subscribe to events from the Round Manager, and linked the UI to player Health. By the end of my first prototype, I had Round Variables that could be easily tailored to our specs, the UI was coordinated well with the variables of the Round, and the game now defined rounds, and had a beginning and end.
At a basic level, everything seemed perfect, but we knew we needed something to make our rounds a bit more special. This lead to me starting to experiment with animating the sun through Dotween (you will hear that name a lot) to create different times of day, and triggering all that to happen with Events. When I showed the guys, we all agreed that this was the way to go - Night would serve as the 'Round', and would thematically work with the idea of hunting Vampires. Day could only be reached by killing the dwellers of the Night, and so our unique and visually striking Round System was born. It took a lot of tweaking to get this right, and later on, I would realize that it would need some significant refactoring to be more adjustable and extending...
A refactoring included taking the round system which designated a RoundStart and RoundEnd as events, and renaming that to be NightStart, DayStart, and including events for the transitions between these states. It was important to have this control so that things like SFX could be easily triggered via Event subscription, and so that the periods of Dawn, Dusk, Night could be controlled easier. This took some tweaking to get right, but eventually we landed on something that worked, and was also incredibly performant, even with thousands of trees and wind patterns animating those trees. To add to that fact, it also LOOKED. SO. GOOD.
Combined with our isolated forest environment, the day night cycle adds a lot to the functional, aesthetic, and thematic ideas that we had in mind when planning a Vampire Hunting, RoundBased FPS Shooter.
Get Sanguine Falls
Sanguine Falls
Atmospheric FPS with a Night/Day cycle for killing rounds of vampires in a coastal forest town.
Status | Prototype |
Authors | TDMProductions, Saje, Adequate guy |
Genre | Survival, Shooter |
Tags | Atmospheric, Creepy, daynightcycle, First-Person, Horror, roundbased, Singleplayer, Unity |
More posts
- Build 0.1.4 - Sensitivity Bar addedJan 15, 2024
- Matt Ep. 5 - Finishing touches, polish, details, fxJan 12, 2024
- Matt Ep. 2 - Blender/Pro builder Modelling, Environment, Main Menu + DotweenJan 12, 2024
- Matt Ep. 4 - AudioManager, SFX, MusicJan 12, 2024
- PlayerController/HealthJan 11, 2024
- Projectile LogicJan 11, 2024
- Shooting FunctionalityJan 11, 2024
- Matt Ep. 1 - Planning, Vision, MVPJan 06, 2024
- Pause MenuJan 03, 2024
Leave a comment
Log in with itch.io to leave a comment.