![]() |
Runtime Spawner 1.2.5
Generic Runtime spawn and instance pooling system for spawning random AI agents around a map. Works with ANY AI system easily.
|
Describes when and how to spawn a single special encounter. Evaluated by SpecialEncounterManager on a cadence, subject to intensity step, player/telemetry gates, and placement constraints. More...
Public Attributes | |
string | name = "New Rule" |
Display name used for analytics and bookkeeping (also emitted as SpawnMeta.SourceName ). | |
SpawnEntry | entry |
The spawn entry (prefab & grouping options) to instantiate when this rule fires. | |
int | maxAlive = 1 |
float | cooldownSeconds = 90f |
Cooldown after a successful spawn before this rule may fire again. | |
float | evalEverySeconds = 3f |
How often (in seconds) to re-evaluate this rule while it is eligible. | |
Vector2Int | stepRange = new Vector2Int(0, 99) |
Inclusive intensity step range in which this rule is valid (x = min, y = max). | |
float | minPressure = -1f |
Minimum pressure required for this rule to pass. Use -1 to ignore. | |
float | minAvgPlayerHP = -1f |
Minimum average player HP required for this rule to pass. Use -1 to ignore. | |
Vector2 | distanceRange = new Vector2(18f, 32f) |
bool | requireNoLOS = true |
If true, requires an occluder between player and spawn point (no direct LOS). | |
string | spawnTag = "Flank" |
Optional semantic tag used to choose a matching WaveSpawnPoint (e.g., "Flank", "Ambush", "Far"). Also emitted as SpawnMeta.SpawnTag . | |
Describes when and how to spawn a single special encounter. Evaluated by SpecialEncounterManager on a cadence, subject to intensity step, player/telemetry gates, and placement constraints.
float MegaCrush.Spawner.SpecialRule.cooldownSeconds = 90f |
Cooldown after a successful spawn before this rule may fire again.
Vector2 MegaCrush.Spawner.SpecialRule.distanceRange = new Vector2(18f, 32f) |
SpawnEntry MegaCrush.Spawner.SpecialRule.entry |
The spawn entry (prefab & grouping options) to instantiate when this rule fires.
float MegaCrush.Spawner.SpecialRule.evalEverySeconds = 3f |
How often (in seconds) to re-evaluate this rule while it is eligible.
int MegaCrush.Spawner.SpecialRule.maxAlive = 1 |
float MegaCrush.Spawner.SpecialRule.minAvgPlayerHP = -1f |
Minimum average player HP required for this rule to pass. Use -1 to ignore.
float MegaCrush.Spawner.SpecialRule.minPressure = -1f |
Minimum pressure required for this rule to pass. Use -1 to ignore.
string MegaCrush.Spawner.SpecialRule.name = "New Rule" |
Display name used for analytics and bookkeeping (also emitted as SpawnMeta.SourceName
).
bool MegaCrush.Spawner.SpecialRule.requireNoLOS = true |
If true, requires an occluder between player and spawn point (no direct LOS).
string MegaCrush.Spawner.SpecialRule.spawnTag = "Flank" |
Optional semantic tag used to choose a matching WaveSpawnPoint (e.g., "Flank", "Ambush", "Far"). Also emitted as SpawnMeta.SpawnTag
.
Vector2Int MegaCrush.Spawner.SpecialRule.stepRange = new Vector2Int(0, 99) |
Inclusive intensity step range in which this rule is valid (x = min, y = max).