You are viewing a potentially older version of this package. View all versions.
ENVYTM-CraftPlanner-0.1.0 icon

CraftPlanner

In-game recursive material calculator: expands recipes and build pieces down to raw materials and compares them with your inventory and nearby containers.

By ENVYTM
Date uploaded 3 days ago
Version 0.1.0
Download link ENVYTM-CraftPlanner-0.1.0.zip
Downloads 22
Dependency string ENVYTM-CraftPlanner-0.1.0

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2360 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured with the correct entry point for mods and preferred defaults for the community.

Preferred version: 5.4.2360

README

Craft Planner (Valheim)

In-game material calculator. Pick any craftable item or building piece and the mod expands its recipe down to raw materials, then compares the total with what you already have in your inventory and in nearby containers.

Built against Valheim 1.0.21 (Unity 6000.0.75f1) and BepInEx 5.4.23.6.

What it does

  • Searchable list of every crafting recipe and build piece known to the game database.
  • Search understands both Russian and English names at once (plus station names and localization ids), no matter which language the game is running in.
  • UI language follows the game (auto), or can be forced with General.UiLanguage.
  • Recursive ingredient tree: Bronze → Copper ×2, Tin ×1; Iron armor → bars, leather, ...
  • Smelting/milling chains: bars are shown as ore, flour as barley (toggle in config).
  • Target amount (×1 / ×5 / ×10 / ×25) and item quality (1–5) selectors, so upgrade costs are visible too.
  • "Have / need" totals against your inventory plus all containers within ScanRadius (default 40 m). Missing materials are highlighted.
  • Client-side only: no server install, no version handshake, works on vanilla servers.

Install

  1. Install BepInExPack Valheim (5.4.2360 or newer) into the game folder.
  2. Drop CraftPlanner.dll into Valheim/BepInEx/plugins/.
  3. Launch the game, load a world, press F6.

Config

Valheim/BepInEx/config/opencode.craftplanner.cfg

Key Default Meaning
General.ToggleKey F6 Window hotkey
General.ScanRadius 40 Container scan radius, meters
General.DecomposeProcessing true Show bars as ore, flour as barley
General.UiLanguage auto auto (follow game), en or ru

Build

dotnet build

ValheimDir defaults to F:\SteamLibrary\steamapps\common\Valheim; override it if needed:

dotnet build -p:ValheimDir="D:\Steam\steamapps\common\Valheim"

The build copies the DLL into BepInEx/plugins automatically.

How it works

  • GameData snapshots ObjectDB (recipes, items) and reads the private m_buildPieces list through Harmony's AccessTools.FieldRefAccess, with an asset-scan fallback.
  • Smelting/milling pairs are derived from Smelter.m_conversion on loaded prefabs; entries with more than one source are skipped, so the map never lies.
  • Materials expands the tree with cycle/depth guards and aggregates leaves.
  • StorageScanner sums ItemData.m_stack across the player inventory and nearby Container components.

Known limitations

  • Container scan covers only the loaded zone around the player (the radius limits it further).
  • Recipes produced by multiple stations use the first one found.
  • UI text is English; item names are localized by the game itself.

Roadmap

  • Show the crafting station requirement per step and warn when no station is in range.
  • Persist the selected item between sessions.
  • Optional Russian UI localization.
  • Pin the window position and add a UI scale setting.

CHANGELOG

Changelog

0.1.0

  • Initial release.
  • Searchable list of every crafting recipe and build piece (recipes, forge, cauldron, hammer menu).
  • Recursive ingredient tree down to raw materials, with smelting/milling chains (ore -> bar, barley -> flour).
  • Target amount (x1 / x5 / x10 / x25) and item quality (1-5) selectors.
  • Have/need totals against the player inventory and nearby containers.
  • Bilingual search: localized names plus internal English ids.
  • UI language follows the game, can be forced to English or Russian.
  • Camera and player input are paused while the planner window is open.