Snog's Simple Wave Spawner View on Asset Store (opens in new tab)

Package details

Latest version
1.0
Last updated
First released
Unity version
6000.0.62 or later
Package size
357 KB
Files
23
Favorites
11
Views in the past week
34

Price tracking

Last checked
Tracked since
Lowest recorded
Free on

Keywords

Snog's Simple Wave Spawner

by Snog (opens in new tab)

1 rating, too few to average

A simple data-driven wave spawner, spawn patterns, pooling, events and more. Easy to tune via ScriptableObjects.

Price Free

Get it free on Asset Store (opens in new tab)

Affiliate link · Purchases support this site

Price history

Last 6 months

USD
Price history for Snog's Simple Wave Spawner, 6 months Current Free; lowest Free; highest Free in this period. $0 Jun Jul Aug Sep Oct Nov

Asset preview

1 / 3

Snog's Simple Wave Spawner screenshot 1

Snog's Simple Wave Spawner screenshot 1

About this asset

Wave Spawner System is a lightweight, data-driven framework for spawning enemy waves in Unity. It’s designed to be easy for designers to tune and easy for programmers to integrate — without hardcoding wave formulas.

Waves are configured using ScriptableObjects (EnemyDefinition + WaveDefinition), allowing you to control difficulty scaling through AnimationCurves for budget, duration, spawn rate, and optional caps. The spawner supports multiple spawn patterns and spawn shapes, making it suitable for arena games, survival modes, tower defense variants, and roguelike-style encounters.

To integrate cleanly into any project, the system exposes both C# events and UnityEvents (for non-coders), including wave start/end and enemy spawn notifications. It also includes optional boss waves, elite spawns, and special wave modifiers such as Rush, Tank, and Swarm, which apply configurable multipliers to your curves.

For performance, the system includes an optional lightweight pooling component (warmup + auto-expand). And for editor usability, it ships with a custom inspector featuring validation warnings and a one-click “Generate Next Wave Preview” that displays computed values and a seeded simulation of enemy counts.

Core Features

  • ScriptableObject-based configuration
    • EnemyDefinition: prefab, cost, weight, minWave/maxWave
    • WaveDefinition: curve-driven scaling, allowed enemy lists, modifiers
  • Curve-based difficulty scaling
    • Budget curve (points per wave)
    • Duration curve (seconds per wave)
    • Spawn rate curve (spawns/second)
    • Optional caps via curves (max enemies per wave, max alive at once)
    • Optional spawn pacing curve (multiplier over wave progress)

Spawning System

  • Spawn modes
    • Round-robin
    • Random
    • Weighted random (optional SpawnPoint weight component)
    • Closest to target / Farthest from target
    • Outside camera / offscreen spawn (camera-aware)
    • NavMesh-valid spawn (optional sampling)
  • Spawn shapes
    • Predefined spawn transforms
    • Random point in box (Bounds)
    • Ring around target (inner/outer radius)

Wave Variety

  • Boss waves
    • Boss every N waves
    • Boss can spawn at start or end
    • Optional “boss consumes budget”
    • Boss spawns in addition to normal wave enemies
  • Elite spawns
    • Separate elite enemy pool
    • Elite chance scales via curve and can occur on any wave type
  • Special wave modifiers
    • Rush (faster, shorter, lower budget)
    • Tank (slower, fewer spawns, cost-biased toward expensive enemies)
    • Swarm (faster, more spawns, cost-biased toward cheap enemies)

Integration Hooks

  • C# events + UnityEvents
    • OnWaveStarted(int wave)
    • OnWaveEnded(int wave)
    • OnEnemySpawned(GameObject enemy)
    • OnAllEnemiesDefeated()

Performance (Optional)

  • Lightweight pooling
    • Pool warmup entries
    • Auto-expand toggle
    • Works with inactive-as-dead tracking for pooled enemies

Editor Tools

  • Custom inspector
    • One-click Generate Next Wave Preview
    • Displays computed values (duration, budget, spawn rate, caps, elite chance, special type)
    • Seeded simulation for repeatable preview counts
    • Validation warnings (missing wave definition, enemies, spawn points, target/camera, pooling setup)

From the publisher's Asset Store listing.

Technical details

Requirements / Notes

  • Uses built-in Unity systems only (no third-party dependencies).
  • NavMesh option uses UnityEngine.AI (only needed if you enable NavMesh sampling).
  • Editor tooling is included in an Editor/ folder (excluded from builds automatically).
  • Compatible with any Render Pipeline (Built-in, URP, HDRP)

Compatibility

Render pipelines supported in each Unity version
Unity version Built-in URP HDRP
6000.0.62f1 Compatible Compatible Compatible

As listed on the Asset Store.