Foundations Required

by NOiZE

Machines can only be placed on solid flooring. Works correctly across all planets including Gleba and space platforms.

Tweaks
8 days ago
2.0 - 2.1
170
Environment Manufacturing

Changelog

Version: 1.0.11
Date: 2026-09-10
  Changes:
    - Tiles with walking_speed > 1 are only treated as solid flooring if they are player-minable
      (stone-path, concrete, etc.). Non-minable fast tiles such as Fulgora ruin paving
      (fulgoran-paving) now require solid flooring under machines.
Version: 1.0.10
Date: 2026-09-05
  Bugfixes:
    - Banned natural ground (including moshine-hot-swamp) uses path flooring (stone-path /
      brick / concrete), same as grass or dirt — not the Space Age foundation fill tile.
    - Clears prototype default_cover_tile on banned ground so a mod's foundation fill does not
      override brick/concrete for shift-build (Moshine hot-swamp).
    - Covers re-seeded on surface change; /fr-heal-covers available.
Version: 1.0.9
Date: 2026-09-04
  Changes:
    - Shift-build on modded planet terrain (e.g. Moshine dust/sand/rock) now gets default cover
      tiles without manually placing flooring first. Covers are re-seeded when a player changes
      surface, not only on surface create.
    - Without TerrainToggle, liquid/meltable tiles (including mod lava such as moshine-lava) get
      a sensible default cover (foundation / landfill / ice-platform) when missing.
  Ease of use:
    - Added /fr-heal-covers command to re-seed covers on all surfaces.
Version: 1.0.8
Date: 2026-09-02
  Changes:
    - Landfill again requires solid flooring (stone-path / concrete) under machines, matching
      Aquilo's ice-platform → concrete chain: water → landfill → concrete → machine.
    - Foundation (Vulcanus/Fulgora fill) remains an acceptable final surface (not banned).
    - Landfill is seeded with stone-path as default cover so the second cover step works for
      force-build. Liquid covers (water → landfill) stay managed by TerrainToggle when present.
Version: 1.0.7
Date: 2026-08-30
  Bugfixes:
    - New surfaces now receive stone-path default cover seeding (on_surface_created,
      on_configuration_changed, on_force_created).
    - Landfill, foundation, and is_foundation tiles no longer get the banned collision layer
      (fixes missing landfill under force-built blueprints).
    - When TerrainToggle is present, liquid default_cover_tile is left entirely to TerrainToggle
      (no prototype restore, no runtime heal) so the landfill/foundation toggles work correctly.
    - Without TerrainToggle, missing liquid prototype covers are restored to landfill/foundation/
      ice-platform.
Version: 1.0.6
Date: 2026-08-24
  Ease of use:
    - Listed "Transport Belt Direction Indicator" as recommended mod
Version: 1.0.5
Date: 2026-06-28
  Features:
    - Updated for Factorio 2.1
Version: 1.0.4
Date: 2026-06-07
  Changes:
    - Removed hardcoded default_cover_tile = "concrete" from banned tiles. Instead, stone brick
      is set as the initial ghost default for all banned tiles at game start. When a player
      manually lays any solid flooring tile on top of a natural tile, that tile becomes the new
      ghost default for all banned tiles on that surface for their force — naturally following
      progression (stone brick early game, concrete later).
    - The "Chests" setting now only applies to 1x1 containers (wooden, iron, steel chest).
      Larger containers added by mods always require a foundation regardless of the setting.
Version: 1.0.3
Date: 2026-05-25
  Features:
    - Added startup setting for a tile whitelist: a comma-separated list of tile names that are
      exempt from the foundation requirement. Machines can be placed freely on whitelisted tiles
      without solid flooring. Leave empty to use only the built-in exemptions.
Version: 1.0.2
Date: 2026-05-24
  Features:
    - Added startup setting "Chests" to control whether wooden, iron and steel chests require a foundation. Defaults to enabled. Logistic chests are unaffected and always require a foundation.
Version: 1.0.1
Date: 2026-05-05
  Bugfixes:
    - Hidden helper entities from other mods (e.g. invisible reactors used as smoke emitters) are no longer incorrectly given foundation requirements, preventing issues with upgrade planners and quick-place.
Version: 1.0.0
Date: 2026-04-05
  Changes:
    - Forked from "Buildings On Concrete" by Zenyatta11 (v1.4.0), renamed to "Foundations Required" by NOiZE
    - Fixed: Space platform foundation tiles are now treated as solid flooring
    - Fixed: Gleba shallow water and wetland tiles (water_tile/meltable collision layers) are now
      correctly banned even though some have walking_speed_modifier > 1
    - Fixed: Electric furnaces now correctly require solid flooring. The prototype type for all
      furnaces (stone, steel, electric) is "furnace" — adding "electric-furnace" as a machine
      type was hitting an empty table and doing nothing. Now uses "furnace" type with stone-furnace
      and steel-furnace blacklisted to preserve early-game playability.
    - Fixed: Shift-building on Gleba and other planets no longer requires the player to have
      manually placed concrete there first. All banned tiles now have default_cover_tile = "concrete"
      so the engine always has a fallback cover tile on any fresh planet visit.
    - Removed: Dead [errors] locale keys that were defined but never used by the mod
    - Bumped minimum base dependency from 1.1 to 2.0