If you have spent any significant time building open-world or stylized environment systems in Unity, you know that connecting atmospheric visuals to core gameplay logic is usually a headache. Distant Lands' COZY: Stylized Weather is one of the cleanest tools available for handling volumetric clouds, day-night cycles, and seasonal shifts. Meanwhile, Game Creator 2 (GC2) is a staple visual scripting and game architecture tool for rapid iteration.
The COZY Stylized Weather Integration | Game Creator 2 asset functions as a zero-friction bridge between these two popular systems. Instead of writing custom C# event wrappers to link atmospheric states with player stats, quest triggers, or environmental damage, this integration exposes COZY’s inner API directly into GC2's modular Instructions, Conditions, and Triggers framework. In my experience running production pipelines, eliminating the need to write glue code between core mechanics and environment subsystems saves dozens of engineering hours per project.
The architecture of this integration focus on event-driven execution and zero-allocation updates where possible. Rather than running heavy Update() polls to check whether it is raining or snowing, the integration uses event listeners tied directly to COZY's core CozyWeather controller.
The core power of this package lies in its native exposure of atmospheric controls to GC2 action lists. You can manipulate climate states without touching C# code:
Because this package is strictly an architectural bridge, its CPU footprint is virtually non-existent. It relies on lightweight C# structs and standard C# events. Rendering performance is dictated by your COZY Stylized Weather settings in the Universal Render Pipeline (URP) or Built-in Render Pipeline. The integration handles setup cleanly without introducing memory leaks or garbage collection spikes during scene transitions.
This integration shines anywhere environmental factors directly affect gameplay mechanics. Here are a few genres where it saves substantial development time:
Setting up the integration takes just a few minutes once you have imported your prerequisites. Here is the standard workflow I follow in project setups:
Ensure you have imported assets in the following sequence into a clean Unity project:
Add the main CozyWeather manager prefab to your scene. Ensure your main camera has the required Cozy Sky Sender component attached if you are working within URP.
Create a standard GC2 Trigger in your scene. In the Actions list, click Add Action, navigate to the COZY Weather category, and choose your desired operation (e.g., Set Weather Profile or Set Time of Day).
If you need to extend the integration through code to push COZY weather profile names into GC2 Global Variables manually, you can use a script like this:
using UnityEngine;
using GameCreator.Runtime.Common;
using DistantLands.Cozy;
namespace Project.Environment
{
public class WeatherGC2Bridge : MonoBehaviour
{
[SerializeField] private CozyWeather cozyManager;
private void OnEnable()
{
if (cozyManager != null)
{
cozyManager.Events.onWeatherChange.AddListener(OnWeatherProfileChanged);
}
}
private void OnDisable()
{
if (cozyManager != null)
{
cozyManager.Events.onWeatherChange.RemoveListener(OnWeatherProfileChanged);
}
}
private void OnWeatherProfileChanged(WeatherProfile profile)
{
// Set a GC2 Global String Variable named "CurrentWeather"
Variables.SetGlobal("CurrentWeather", profile.name);
Debug.Log($"[Weather Bridge] Updated GC2 variable to: {profile.name}");
}
}
}
Here is my honest take on what works well and what you should consider before adding this package to your project stack:
| Category | Tools / Game Toolkits |
|---|---|
| Latest Version | v1.0 |
| File Size | 3.99 MB |
| Added to Platform | May 28, 2026 |
| Views | 6 views |
| Downloads | 2 downloads |
| Favourites | 0 favourites |
| Official Store | Buy Original License on Unity Asset Store → |
| Issue with Package? | Report Broken Link → |