B'Dooms Enemies


Custom biters, bosses, and nests for B'Dooms Tower Defense.

Content
3 hours ago
2.0
0
Enemies

Changelog

Version: 0.3.0
Date: 19. 08. 2026
  Features:
    - Standalone play: without bdooms_td installed, this mod's bosses and
      custom nests now come from vanilla's own enemy systems instead of
      sitting completely inert. Swarm Lord and Hive Lord are added as rare,
      evolution-gated entries in the vanilla biter-spawner's result_units
      (prototypes/biters/bosses/swarm-lord.lua, hive-lord.lua) - they spawn
      the same way medium/big/behemoth biters do, get swept into vanilla's
      pollution/retaliation attack groups on their own, and need no explicit
      command from this mod. The four custom nests (prototypes/biters/
      nests.lua) get a real autoplace, scaled to well below the vanilla
      spawner they're cloned from, so they appear during normal map
      generation and are eligible for vanilla's own expansion system to
      build more of over time.
    - New runtime setting td-max-bosses-per-surface (default 3): caps live
      bosses per surface regardless of type or how they came to exist.
      scripts/boss_manager.lua enforces it both for script-driven spawns
      (BossManager.spawn, extracted from control.lua's old local spawn_boss)
      and for vanilla-engine-spawned ones, discovered and registered (for
      ability ticking) or culled past the cap by the new
      BossManager.on_population_tick, called every on_nth_tick(60).
    - Swarm Lord's pulse ability (scripts/bosses/swarm_lord.lua) no longer
      requires a Core to spawn its swarm biter clusters - it only attaches
      an attack command when one exists (bdooms_td installed), otherwise the
      biters spawn uncommanded, same philosophy as the ambient bosses above.
  Changes:
    - With bdooms_td installed, none of the above activates - the
      prototypes/utility/mod_compat.lua ModCompat.is_active("bdooms_td")
      check added in 0.2.0 gates every standalone-only addition, so boss
      waves and nest density remain exactly wave_manager.lua's and
      nest_manager.lua's job, unchanged. No standalone reward drops - Biter
      Essence and its research economy remain exclusively bdooms_td's.
Version: 0.2.0
Date: 19. 08. 2026
  Changes:
    - Adopted bdooms_td's generalized cross-mod integration pattern
      (shared/mod_integrations.lua, scripts/mod_compat.lua,
      prototypes/utility/mod_compat.lua - see bdooms_td 0.23.0) instead of
      staying a one-off remote interface. Registers bdooms_td under a new
      "core" category. This mod doesn't call back into bdooms_td yet - the
      "bdooms_enemies" remote interface (control.lua) is still how
      bdooms_td reaches in - but on_init/on_configuration_changed now log
      detected integrations via mod_compat.log_detected(), matching
      bdooms_td, and the plumbing is in place for this mod to call out
      through ModCompat once there's something worth calling.
Version: 0.1.0
Date: 19. 08. 2026
  Changes:
    - Initial split from bdooms_td (version 0.21.0): the custom biters
      (Swarm Biter/Spitter, Tank Biter/Spitter), bosses (Swarm Lord, Hive
      Lord), and custom nests (Hive Nest, Swarm/Tank Nest and Spitter Nest
      variants), plus their supporting scripts (boss ability logic, boss
      registry, nest seeding), moved here from bdooms_td unchanged in
      behavior. bdooms_td now depends on this mod and drives wave spawning
      and essence-drop bookkeeping through its "bdooms_enemies" remote
      interface, since Factorio gives every mod its own isolated storage
      table at runtime.