TerrainMistile

v1.1.2·Updated 2026-10-05

Spawns configurable TerrainMistiles from changed terrain. They seek the edit, detonate, and reset player-made height/paint changes while preserving world/location terrain. Tune biome chance, interval,

Screenshots 5 screenshots

About this mod Author’s original text

TerrainMistile

Spawns configurable TerrainMistiles from changed terrain. They seek the edit, detonate, and reset player-made height/paint changes while preserving world/location terrain. Tune biome chance, interval, radius, health, color, and base protection.

TerrainMistiles try to reset changed terrain, but players can stop them by destroying them before impact.

Terrain changes near player bases can be protected from TerrainMistile spawn checks. The base-check radius and required number of unique base prefabs are configurable per biome.

TerrainMistile spawn chance, interval, visual color, health, and reset radius can be configured per biome.

How It Works

  • Changed terrain is grouped into 32m terrain units.
  • Each changed unit rolls on its biome rule interval while at least one player is within playerSearchRadius.
  • TerrainMistiles target changed terrain points, not players.
  • A TerrainMistile reset happens when it reaches terrain impact or uses its self-destruct attack.
  • Killing a TerrainMistile before self-destruct does not reset terrain.
  • Normal TerrainMistiles recheck base protection before resetting; protected targets or targets with nearby base zones still loading are discarded without a reset. Enforcers bypass this check.
  • Successful resets prompt nearby players to check the localized TerrainMistile Compendium entry, at most once every 60 seconds.
  • Reset clears player-style TerrainComp height and paint deltas in resetRadius.
  • Location and world baseline terrain are preserved, so location terrain changes can remain after reset.
  • Expand World Data blueprint terrain snapshots are protected using their loaded bounds and sample spacing, including when the location's exteriorRadius is smaller than its saved terrain.
  • TerrainMistiles use nonblocking colliders so terrain and pieces do not trap them before impact.

TerrainMistileEnforcer

TerrainMistileEnforcer is a same-size companion prefab intended for external spawn systems such as DropNSpawn events. TerrainMistile does not spawn it through its own periodic spawn rolls.

  • It selects the horizontally nearest living player to its spawn point, then targets the horizontally closest eligible changed terrain around that player.
  • Its localized display name uses the separate terrainmistile_enforcer_name token.
  • Its horizontal target search radius is the larger of 128m and the highest enabled biome playerSearchRadius.
  • It ignores only the TerrainMistile playerBaseValue target suppression.
  • The target biome must still have an enabled TerrainMistile rule.
  • Expand World Data/location protected terrain, temporary external terrain exclusions, and existing target reservations remain protected.
  • Its reset radius and visual color come from the current target biome rule; initial health comes from the first acquired target. Biomes without a dedicated rule use defaults.
  • It retries target acquisition for 10 seconds and then despawns without resetting if no eligible changed terrain is found.
  • A targetless Enforcer does not consume the normal TerrainMistile maxSpawn allowance.

DropNSpawn event entries must specify a biome, and insidePlayerBase: true is needed when the native SpawnSystem spawn point itself may be inside a vanilla PlayerBase effect area:

spawns:

  • prefab: TerrainMistileEnforcer

spawnSystem:

biomes: [All]

insidePlayerBase: true

huntPlayer: false

huntPlayer does not affect Enforcer terrain selection or movement; leave it false or omit it.

DropNSpawn event spawns replace that event's entire spawn list, so keep any existing event spawn entries that should remain.

BepInEx Config

  • Enable TerrainMistile: globally enables new TerrainMistile spawns. Existing TerrainMistiles remain active when disabled.
  • Lock Configuration: server admin config lock.

Localization

English and Korean localization are embedded in TerrainMistile.dll, so the mod keeps its built-in translations when only the DLL is installed. TerrainMistile also loads optional flat YAML files named

Install & use Install: BepInEx plugin

  1. The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
  2. Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
  3. Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
  4. Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.

Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file. In multiplayer, the host and every client need the same mods installed.

Dependencies

Install these first, or the mod will not work:

denikson-BepInExPack_Valheim

File & checksum

Filename
TerrainMistile-1.1.2.zip
File size
315.5 KiB