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.
Loading...
Searching...
No Matches
MegaCrush.Spawner.SpecialRule Class Reference

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.
 

Detailed Description

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.

Member Data Documentation

◆ cooldownSeconds

float MegaCrush.Spawner.SpecialRule.cooldownSeconds = 90f

Cooldown after a successful spawn before this rule may fire again.

◆ distanceRange

Vector2 MegaCrush.Spawner.SpecialRule.distanceRange = new Vector2(18f, 32f)

◆ entry

SpawnEntry MegaCrush.Spawner.SpecialRule.entry

The spawn entry (prefab & grouping options) to instantiate when this rule fires.

◆ evalEverySeconds

float MegaCrush.Spawner.SpecialRule.evalEverySeconds = 3f

How often (in seconds) to re-evaluate this rule while it is eligible.

◆ maxAlive

int MegaCrush.Spawner.SpecialRule.maxAlive = 1

◆ minAvgPlayerHP

float MegaCrush.Spawner.SpecialRule.minAvgPlayerHP = -1f

Minimum average player HP required for this rule to pass. Use -1 to ignore.

◆ minPressure

float MegaCrush.Spawner.SpecialRule.minPressure = -1f

Minimum pressure required for this rule to pass. Use -1 to ignore.

◆ name

string MegaCrush.Spawner.SpecialRule.name = "New Rule"

Display name used for analytics and bookkeeping (also emitted as SpawnMeta.SourceName).

◆ requireNoLOS

bool MegaCrush.Spawner.SpecialRule.requireNoLOS = true

If true, requires an occluder between player and spawn point (no direct LOS).

◆ spawnTag

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.

◆ stepRange

Vector2Int MegaCrush.Spawner.SpecialRule.stepRange = new Vector2Int(0, 99)

Inclusive intensity step range in which this rule is valid (x = min, y = max).


The documentation for this class was generated from the following file: