Roguelike Wave Defense

by jijhhv

Survive 20 waves of scripted biter assaults. After each wave, choose one of three permanent buffs. Based on Space Age and Rampant.

Content
a day ago
2.0
16
Combat Mining Manufacturing

Changelog

-- Roguelike Wave Defense 1.0.3
Date: 2026-08-13
  Fixes:
    - Fixed wave-gated elite families (strafers/stompers) never spawning in
      regular waves: elite units are now drawn directly by the budget loop
      with a wave-scaled weight, not only after the entity cap is hit
    - Fixed other units standing idle on demolisher waves: demolisher bodies
      are huge, so they no longer spawn inside the nest cluster. They spawn
      at a fixed 200-tile radius on random bearings and advance on the base
      on their own
    - Removed the demolisher-per-wave cap (all demolishers from the budget
      now spawn, spread around the 200-tile ring)
  Balance:
    - Elite units appear in regular waves from their unlock wave onward
  Localisation:
    - English (en)
    - Simplified Chinese (zh-CN)
-- Roguelike Wave Defense 1.0.2
Date: 2026-08-07
  Balance:
    - Lava tiles now granted by Vulcanus Mind II instead of Vulcanus Mind I
      (lava pond access is a mid-game perk, not an early one)
    - Stone-furnace -> calcite recipe rebalanced: 2 stone furnaces -> 1 calcite
  Fixes:
    - Fixed nests always spawning as a single nest: the deterministic (map-seed)
      random generator made every nest sample the SAME candidate points, so only
      the first nest ever found a spot. A shared generator is now reused per wave
    - Nests now spawn as one compact CLUSTER around an anchor instead of being
      scattered across the whole spawn ring; the enemy unit group spawns right
      on top of the cluster (one combined target area)
  Debug:
    - /rl-debug-wave now force-triggers the next wave in ANY state: it clears an
      in-progress wave (destroys nests/enemies) or closes the reward UI first
  Localisation:
    - English (en)
    - Simplified Chinese (zh-CN)
-- Roguelike Wave Defense 1.0.1
Date: 2026-08-06
  Fixes:
    - HUD panels (wave countdown + active buffs) are now draggable via their title bar,
      minimizable, and closable; closed panels reopen with /rl-hud [wave|buff|all]
    - HUD refresh switched to in-place updates so dragging is never interrupted
    - HUD labels now follow the player's language (Chinese players no longer see English)
    - Wave nest capture support: wave nests can be captured with the capture robot into a
      captive biter spawner (biter egg farm); wave-clear logic stays correct
    - Fixed garbled Chinese text in wave arrival message (was showing random characters)
    - Fixed lava/oil tile item names showing raw numeric codes (added tile-name localisation)
    - Replaced locale escape sequences with plain UTF-8 text so Chinese names display correctly
    - Renamed the "armored_up" buff in Chinese (pure name change, no gameplay change)
  Localisation:
    - English (en)
    - Simplified Chinese (zh-CN)
-- Roguelike Wave Defense 1.0.0
Date: 2026-08-05
  Features:
    - 20 scripted waves with a design-token "attack strength" budget
    - After each wave, choose 1 of 3 permanent buffs (3 choices per reward screen)
    - 30-minute wave interval (adjustable) with a pollution-based early-trigger
    - Pollution progress bar + wave countdown HUD (next-wave strength x 500 pollution to trigger early)
    - Wave vs pollution trigger cooldown: waves can never fire more often than every 5 minutes
    - Timer & pollution bar only resume after the player picks the reward buff
    - Difficulty multipliers in Mod Settings:
        * Wave interval multiplier      (1.0 = 30 min)
        * Attack strength multiplier    (1.0 = baseline)
        * Nest count multiplier         (1.0 = baseline)
        * Pollution threshold multiplier (1.0 = strength x 500)
    - Temporary buffs, quests with bottomless donation boxes, magic box, quality upgrader,
      ore generators, surreal plants, space platforms, lava/oil tiles, and more
  Localisation:
    - English (en)
    - Simplified Chinese (zh-CN)
  Notes:
    - Requires Factorio 2.0 + Space Age
    - RampantFixed is optional (not yet used by the wave AI)
    - Changing data-updates autoplace requires reloading the save