World Activity System

v1.0.0

Component Reference

Complete API reference for all components and ScriptableObjects.

Overview

This page provides a complete reference for all components and ScriptableObjects in the World Activity System. Use this as your API documentation when building activities and events.

Note: All components integrate seamlessly with Game Creator 2 visual scripting. No C# coding required for basic usage.

WorldActivityManager

MonoBehaviourCentral singleton that manages all activities, events, and player state.

Properties

PropertyTypeDescription
playerReferenceGameObjectPlayer object for proximity checks (auto-finds by tag if null)
schedulerEnabledboolEnable/disable automatic event scheduling
debugModeboolEnable verbose console logging
autoRegisterActivitiesboolAutomatically find all activity assets on start
discoveryCheckIntervalfloatSeconds between proximity checks (default: 0.5)

Public Methods

MethodDescription
RegisterActivity(activity)Add a spatial or temporal activity to tracking
UnregisterActivity(activity)Remove activity from tracking
DiscoverActivity(activity)Mark spatial activity as discovered
CompleteActivity(activity)Mark activity as completed
IsDiscovered(activity)Check if activity has been discovered
IsCompleted(activity)Check if activity has been completed
GetDiscoveredActivities()Get list of all discovered activities
TriggerTemporalEvent(activity)Manually trigger a temporal event

SpatialActivity

ScriptableObjectDefines a discoverable activity at a fixed location.

Create: Right-click in Project → Create → World Activity System → Spatial Activity

Properties

PropertyTypeDescription
displayNamestringName shown in UI and debug tools
descriptionstringDetailed description of the activity
iconSpriteIcon for map markers and UI
categoryActivityCategoryClassification (Shrine, Dungeon, etc.)
discoveryRangefloatDistance at which player can discover
autoDiscoverboolDiscover automatically on proximity
oneTimeOnlyboolCan only be completed once
prerequisitesConditionsGC2 conditions required for discovery
onDiscoveredInstructionsGC2 instructions on discovery
onCompletedInstructionsGC2 instructions on completion

Activity Categories

Shrine
Dungeon
Landmark
FastTravel
EliteBoss
WorldBoss
Secret
Treasure
Collectible
NPC
Merchant
HazardZone
RestArea
Custom

TemporalActivity

ScriptableObjectDefines a time-based or conditional event that can be automated.

Create: Right-click in Project → Create → World Activity System → Temporal Activity

Properties

PropertyTypeDescription
displayNamestringName shown in scheduler debug
descriptionstringEvent description
triggerTypeTriggerTypeHow event is triggered
intervalfloatSeconds between triggers (Interval type)
timeOfDayTimeOfDayDawn/Noon/Dusk/Midnight (TimeOfDay type)
conditionsConditionsGC2 conditions (Conditional type)
eventDurationfloatHow long event stays active (0 = instant)
eventPriorityfloatPriority 0.0-1.0 (higher = more important)
cooldownfloatSeconds before event can trigger again
incompatibleEventsListEvents that cannot run simultaneously
onActivateInstructionsGC2 instructions when event starts
onDeactivateInstructionsGC2 instructions when event ends

Trigger Types

IntervalTriggers repeatedly at fixed time intervals
TimeOfDayTriggers at specific times (Dawn, Noon, Dusk, Midnight)
ConditionalTriggers when GC2 conditions evaluate true
OneShotTriggers once when conditions met, never repeats

EventScheduler

Internal ComponentManages automatic triggering of temporal activities. Configured via WorldActivityManager.

Configuration Properties

PropertyTypeDescription
enabledboolMaster enable/disable for scheduler
evaluationIntervalfloatSeconds between condition checks
dawnTimefloatHour for Dawn events (default: 6.0)
noonTimefloatHour for Noon events (default: 12.0)
duskTimefloatHour for Dusk events (default: 18.0)
midnightTimefloatHour for Midnight events (default: 0.0)
cacheEnabledboolEnable prerequisite caching (recommended)
cacheDurationfloatSeconds before cache expires

SpatialActivityAnchor

MonoBehaviourScene component that places a SpatialActivity at a specific location.

Properties

PropertyTypeDescription
activitySpatialActivityReference to the activity asset
overrideRangeboolUse custom discovery range
customRangefloatCustom discovery range (if override enabled)
showGizmoboolShow range sphere in Scene view
gizmoColorColorColor of the range gizmo
Tip: The anchor shows a gizmo sphere in Scene view representing the discovery range. Green = undiscovered, blue = discovered.