Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
TerraHoe
Expand Valheim terrain tool radius with synced preview ring, Ctrl+Wheel radius adjust, and optional full terraforming mode. Author: SoulEmper0r
By SoulEmper0r
| Date uploaded | 2 weeks ago |
| Version | 2.0.0 |
| Download link | SoulEmper0r-TerraHoe-2.0.0.zip |
| Downloads | 1948 |
| Dependency string | SoulEmper0r-TerraHoe-2.0.0 |
This mod requires the following mods to function
denikson-BepInExPack_Valheim
BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.
Preferred version: 5.4.2202README
TerraHoe
Author: SoulEmper0r
Expand the radius of Valheim's terrain tools while keeping the preview and the actual operation synchronized.
Features
- Hold Left Ctrl and scroll the mouse wheel to change the terrain operation radius.
- Works with the selected vanilla or modded
TerrainOp. - The preview ring is resized together with the real operation.
- Optional Full Terraforming mode: press F8 to force a large-radius flatten operation and extend the vanilla height limits.
- Debug diagnostics can be disabled in-game with F9 while they are enabled.
Configuration
The file is BepInEx/config/terrahoe.cfg.
[General]
Enabled = true
FullTerraformingEnabled = true
FullTerraformingToggle = F8
[Radius]
ScrollModifier = LeftControl
ScrollStepMeters = 0.5
MinRadius = 0.5
MaxRadius = 100
ShowRadiusMessage = true
[FullTerraforming]
MinHeight = -200
MaxHeight = 200
[Debug]
EnableDebugLogging = true
DebugToggle = F9
LogInput = true
LogSelection = true
FullTerraformingEnabled is the global permission switch. F8 only works when it is enabled. F9 turns active diagnostic logging off; when logging is already off, F9 does nothing.
Installation
Install with r2modman/Thunderstore, or place TerraHoe.dll in:
BepInEx/plugins/TerraHoe/TerraHoe.dll
Requires BepInExPack for Valheim.
Notes
Very large radii can temporarily freeze the game because Valheim recalculates the terrain synchronously. Start with 10–20 metres and increase gradually.
TerraHoe is an independent continuation inspired by the radius behavior of MagicMike's MyDirtyHoe.
CHANGELOG
Changelog
2.0.0
- Full terraforming mode: extend the vanilla +/- 8 m height limit to -200/200 m by configuring
General.FullTerraformingEnabledandFullTerraforming.MinHeight/MaxHeight. The clamps are global configuration, not a session hotkey, so the heightmap owner and every client agree and terrain survives a re-log. - Network-synchronized radius: the scrolled radius is now embedded in the RPC payload (
RadiusWirev2). The placing client and the heightmap owner see the same radii, so the preview ring and the actual operation always match. - Terrain clamps derived from config, not from a session value, so they are identical on the server and on every client.
- Unit-test suite (
TerraHoe.WireTest, 65 cases) covering the wire format, the clamp wrappers and Harmony patch resolution — runs outside the game. - Author: SoulEmper0r.
1.0.0
- Finalized MyDirtyHoe-style radius control.
- Added full terraforming mode with F8 toggle and global enable switch.
- Added runtime Debug control with F9.
- Updated Thunderstore metadata and documentation.
0.4.0
- Full terraforming now forces the selected operation to
LevelTerrainonly. - Added runtime
DebugToggle(defaultF9) for diagnostic logging. - Full-mode changes are applied immediately to the currently selected operation.
0.3.0
- Added global
FullTerraformingEnabledsetting. - Added runtime
FullTerraformingToggle(defaultF8). - Ported MyDirtyHoe heightmap limit transpilers for
LevelTerrain,RaiseTerrainandApplyToHeightmap. - Added configurable
MinHeightandMaxHeightlimits (default-200/200).
0.2.0
- Radius control rewritten to follow the working MyDirtyHoe 2.0.2 path.
- Reads
Input.mouseScrollDeltafrom the pluginUpdate()loop. - Changes the selected
TerrainOp.m_settingsdirectly and scales_GhostOnly. - Added
[Debug]settings for modifier, wheel and selected-operation logging.
0.1.1
- Fixed the argument binding of
TerrainComp.DoOperationvia the Harmony position__2. - Eliminated the
Parameter "tc" not founderror that prevented actual terrain changes.
0.1.0
- Legacy MyDirtyHoe for Valheim 1.0.x.
TerrainComp.DoOperationPrefix: scales all 4 radii (level/raise/smooth/paint) by_currentRadius / 2f.TerrainOp.Settings.GetRadiusPrefix (ref, return false): preview ring and heightmaps receive the new radius.Player.UpdatePlacementPrefix: Ctrl+Wheel interceptsm_scrollCurrAmount, changes radius, resets the counter (build menu does not scroll).- Top-left message: "TerraHoe radius: N m".
- Configuration via
BepInEx/config/terrahoe.cfg. - Dependency: BepInExPack.
- Stable: no custom prefabs (no "Failed to deserialize TerrainOp").