Introduction
Runtime Spawner is a modular system for spawning enemies, NPCs, and objects dynamically at runtime.
It provides a data-driven, designer-friendly workflow for controlling:
what gets spawned
when it happens
where it appears
how it scales over time
What Problem Does It Solve?
In many projects, spawning logic is:
tightly coupled to gameplay scripts
difficult to tune
hard to reuse across levels
Runtime Spawner separates these concerns by introducing a consistent spawning pipeline that is:
data-driven - configured through assets and inspectors
modular - built from interchangeable systems (addons)
scalable - works from small scenes to large worlds
How It Works
Runtime Spawner is built from three main layers:
Core
Handles execution:
spawning pipeline
placement and validation
population tracking
pacing via the Spawn Director
Addons
Define behavior:
Global (ambient population)
Local Area (region-based encounters)
Waves (structured spawning)
Spawnpoints (authored placement)
Special Encounters (conditional events)
Factories & Networking
Control instantiation:
object pooling
multiplayer synchronization (PUN / Fusion)
Example Use Cases
Ambient population systems (wildlife, pedestrians)
Wave-based combat or survival modes
Open-world encounters that scale over time
Scripted missions with controlled pacing
Multiplayer sessions with synchronized spawning
Basic Workflow
Add a Runtime Spawner to your scene
Define Spawn Entries (what to spawn)
(Optional) Configure a Spawn Director (pacing)
Add one or more addons (behavior)
Press Play - spawning is handled automatically
In Short
Runtime Spawner turns spawning into a composable system:
Core executes
Addons define behavior
Data drives configuration
This makes it easy to build anything from simple ambient scenes to complex, scalable gameplay systems - in both single-player and multiplayer.
Last updated