A short guide how to permit placing soil on roofs, inside prefab buildings, on metal, in the starter crashed ship, etc.!
What Does This Do?
You may be like me, that likes building on top of things. You know, piston-elevator and safely camp on top of a roof of an existing building. The survival mode has one major limitation in this: soil spots can only be placed on ‘original’ ground level areas. This prohibits planting inside, or on top of a (metal) roof, or… anywhere that’s not the ground really.
I find this a bit limiting! I want to build a huge house on top of the workshop. It’s a beautiful flat, large area. Why wouldn’t I be able to grow crops there if I bring the soil myself?
This fix will allow you to place your soil in a lot more places, meaning rooftop farming becomes possible.
Want to make your starter farm on top of your spaceship? Sure.
Want to use the workshop roof as a nice farming area? Go ahead.
Want to build a huge farm on top of a warehouse? Why not.
Be warned: rooftop farming may inbalance the game because the Farmbots can’t reach you.
How Does this Fix Affect my Game?
- This fix will ONLY apply to your game. If you play multiplayer, other players that want to place soil elsewhere will each have to go through these steps.
- This fix will allow you to place soil on ‘forbidden’ areas, including: generated structures like barns, your starting crashed spaceship, the workshop where you make craftbots, on the roof of virtually any building.
- This fix DOES NOT allow you to place soil on player-made buildings or vehicles. While it is possible to enable this, it is buggy and does not result in plantable soil.
Applying the Fix
- Access your local folder of Scrap Mechanic. Usually:
C:\Program Files (x86)\Steam\steamapps\common\Scrap Mechanic\
- Acces the following subfolder: Survival > Scripts > game > tools
- Back up the file “SoilBag.lua”! If anything goes wrong, you can use this to restore.
- Open the file “SoilBag.lua” with Notepad or Notepad++
- Look for the line (LINE 172) if result.type == “terrainSurface” then.
- Replace with if result.type == “terrainSurface” or result.type == “terrainAsset” then.
- Save the file, start the game.
- You can now place soil on steel structures!