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.
WorldActivityManager
MonoBehaviourCentral singleton that manages all activities, events, and player state.
Properties
| Property | Type | Description |
|---|---|---|
| playerReference | GameObject | Player object for proximity checks (auto-finds by tag if null) |
| schedulerEnabled | bool | Enable/disable automatic event scheduling |
| debugMode | bool | Enable verbose console logging |
| autoRegisterActivities | bool | Automatically find all activity assets on start |
| discoveryCheckInterval | float | Seconds between proximity checks (default: 0.5) |
Public Methods
| Method | Description |
|---|---|
| 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
| Property | Type | Description |
|---|---|---|
| displayName | string | Name shown in UI and debug tools |
| description | string | Detailed description of the activity |
| icon | Sprite | Icon for map markers and UI |
| category | ActivityCategory | Classification (Shrine, Dungeon, etc.) |
| discoveryRange | float | Distance at which player can discover |
| autoDiscover | bool | Discover automatically on proximity |
| oneTimeOnly | bool | Can only be completed once |
| prerequisites | Conditions | GC2 conditions required for discovery |
| onDiscovered | Instructions | GC2 instructions on discovery |
| onCompleted | Instructions | GC2 instructions on completion |
Activity Categories
TemporalActivity
ScriptableObjectDefines a time-based or conditional event that can be automated.
Create: Right-click in Project → Create → World Activity System → Temporal Activity
Properties
| Property | Type | Description |
|---|---|---|
| displayName | string | Name shown in scheduler debug |
| description | string | Event description |
| triggerType | TriggerType | How event is triggered |
| interval | float | Seconds between triggers (Interval type) |
| timeOfDay | TimeOfDay | Dawn/Noon/Dusk/Midnight (TimeOfDay type) |
| conditions | Conditions | GC2 conditions (Conditional type) |
| eventDuration | float | How long event stays active (0 = instant) |
| eventPriority | float | Priority 0.0-1.0 (higher = more important) |
| cooldown | float | Seconds before event can trigger again |
| incompatibleEvents | List | Events that cannot run simultaneously |
| onActivate | Instructions | GC2 instructions when event starts |
| onDeactivate | Instructions | GC2 instructions when event ends |
Trigger Types
EventScheduler
Internal ComponentManages automatic triggering of temporal activities. Configured via WorldActivityManager.
Configuration Properties
| Property | Type | Description |
|---|---|---|
| enabled | bool | Master enable/disable for scheduler |
| evaluationInterval | float | Seconds between condition checks |
| dawnTime | float | Hour for Dawn events (default: 6.0) |
| noonTime | float | Hour for Noon events (default: 12.0) |
| duskTime | float | Hour for Dusk events (default: 18.0) |
| midnightTime | float | Hour for Midnight events (default: 0.0) |
| cacheEnabled | bool | Enable prerequisite caching (recommended) |
| cacheDuration | float | Seconds before cache expires |
SpatialActivityAnchor
MonoBehaviourScene component that places a SpatialActivity at a specific location.
Properties
| Property | Type | Description |
|---|---|---|
| activity | SpatialActivity | Reference to the activity asset |
| overrideRange | bool | Use custom discovery range |
| customRange | float | Custom discovery range (if override enabled) |
| showGizmo | bool | Show range sphere in Scene view |
| gizmoColor | Color | Color of the range gizmo |