You are viewing a potentially older version of this package. View all versions.
Chazman-RunicCrafting-1.1.1 icon

RunicCrafting

Craft and build from nearby containers, see combined material requirements, configure workshop access, and repair all without inventory shuffling.

Date uploaded 5 days ago
Version 1.1.1
Download link Chazman-RunicCrafting-1.1.1.zip
Downloads 2587
Dependency string Chazman-RunicCrafting-1.1.1

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2350 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.2350

README

Runic Crafting 1.1.1

Your workshop already contains the wood, stone, metal, and components you need. Moving those materials from a nearby chest into your pockets—and back again—does not make crafting more meaningful; it makes the workshop feel disconnected from its own supplies.

Runic Crafting lets crafting and building use eligible materials stored nearby. It also improves requirement information, adds configurable workshop policies, supports carefully controlled stationless building, and provides Repair All.

Major features

  • Craft recipes using carried materials first and nearby containers second.
  • Use nearby meat at cooking racks and fetch fuel for fires, refillable lights, ovens and smelters.
  • Build from eligible workshop storage without hauling every stack by hand.
  • See combined carried and nearby material availability.
  • Reuse verified chest material counts, share queries within menu refreshes, and briefly reuse UI availability answers to reduce repeated work in well-stocked bases. Crafting and placement still check fresh materials.
  • Configure who may use a station and who may use its nearby supplies.
  • Repair all eligible inventory equipment in one action.
  • Repair nearby hammer structures with a configurable hotkey, radius, and independent enable switch.

How it feels in-game

Your workshop behaves like one connected workspace. You stock the room, approach the bench, and make what those real supplies allow instead of performing an inventory-transfer ritual before every recipe or wall section.

Cooking and refueling from chests

Press the object's normal Use button. When you are not carrying a suitable item, Runic Crafting fetches one accepted ingredient or fuel item from an eligible nearby chest and lets Valheim perform the normal action. No Production links or replenishment examples are needed.

  • Cooking racks/ovens use their native ingredient list. Finished food is collected first; fire and free-slot checks remain in effect.
  • Fires use wood, resin-fueled standing/wall torches use resin, and other supported objects use their own fuel definitions. Normal toggle and hold-repeat behavior is preserved.
  • Keep inventory space for one fetched item. If the native action declines before consuming it, that item stays in your inventory; it is not automatically sent back or refunded after a network request.
  • This is manual loading, not background automation. Ordinary crafting at cauldrons/workbenches still uses the recipe system. Smelter ore loading and handheld torches are not part of this feature.

Both features default on. Under [Manual Interactions], configure CookFromContainers, RefuelFromContainers, and RangeMeters (default 20 metres around the object, limited by [Materials] RangeCapMeters). The master Enabled switch disables everything. Accessible chest, ward, personal-container, synchronization and item-protection checks still apply.

Install RunicCrafting on each player's client, including a listen host. A dedicated server does not need RunicCrafting for this feature. RunicProduction may remain installed; its linked automation is independent, while these actions use the normal game interaction.

Safety and compatibility

Materials are still consumed normally. Containers must be loaded, accessible, synchronized, ward-allowed, and locally owned; uncertain containers are skipped. Crafting uses short local rollback scopes rather than global locks or persistent recovery systems. It is standalone, requires only BepInEx, and supports solo, listen-server, and dedicated-server clients under Valheim's native ownership rules.

Material ownership

Crafting considers the local player's carried inventory first, then eligible nearby containers in stable distance and endpoint order. Recipe previews read synchronized inventory snapshots without taking chest ownership or changing contents. Consuming materials additionally requires current native ownership. Containers must be loaded, in range, not in use, and accessible to the player and ward. These checks apply in solo, listen-server, and dedicated-server client sessions.

An exact process-local lease removes the selected material stacks before Valheim creates the output. The lease commits after Valheim reports output or placement progress and rolls back if the action is cancelled or throws. The lease blocks only another Runic Crafting material allocation in the same process. Accessible unused chests can be claimed through Valheim's native ownership mechanism when another player owns the surrounding zone; synchronized busy chests remain excluded. It never locks unrelated inventory, tools, or other mods. There are no RPC sagas, persistent journals, join-time recovery checks, or cross-mod transaction records.

Carried-only actions stay on Valheim's normal path. Special one-ingredient recipes and no-cost mode also remain vanilla.

Workshop Access

Station Use and Local Material Use are separate policies stored in the existing station ZDO keys:

  • everyone
  • approved
  • owner
  • nobody
  • ward
  • ward.exceptions
  • group

Use runiccrafting_access show while standing at a station. The station owner may use:

runiccrafting_access station <policy>
runiccrafting_access materials <policy>
runiccrafting_access approve <playerId>
runiccrafting_access unapprove <playerId>
runiccrafting_access group <canonicalGroupUuid>

New configurations default both policies to everyone. Existing configuration values and saved station restrictions are preserved. To open an existing workshop to shared materials, its creator can use runiccrafting_access materials everyone. For stations without a saved override, set [Workshop Access] DefaultLocalMaterialUse = Everyone in the mod configuration. Ward and personal chest restrictions still apply. Anyone can inspect the nearby station's policy with show; changing it still requires the station creator and current native ownership.

Group policy is an optional integration. When Runic Portals exposes the matching preserved group record, membership is evaluated through its public reflection seam. If that provider is absent or unavailable, a Group policy denies without preventing Crafting from loading.

Building and UI

Hammer building searches for chests around the player. Station-required pieces use [Materials] RangeCapMeters; the required station must still be nearby and permit access. Explicitly allowed stationless pieces use their configured player-local range, capped by RangeCapMeters. The preview, requirement rows, and placement use the same search origin and range. Requirement rows show combined available/required counts and put the carried, nearby, total, and missing breakdown in the tooltip.

Placement costs are committed only after Valheim creates the piece or reaches its native consumption boundary. A rejected placement restores every earlier removal.

Area repair

Press ; (semicolon) to repair damaged, loaded hammer-buildable structures within 50 meters: walls, roofs, floors, fences, and other hammer pieces. No hammer needs to be equipped. This shortcut does not repair tools, weapons, or armor, and does not consume equipment durability or stamina. The existing inventory Repair All feature remains separate.

Successful area-repair requests play the normal wooden building-piece repair sound at your position, so distant repairs are audible. Large batches share paced sound feedback rather than playing a sound for every piece simultaneously. No successful repairs means no repair sound.

In Configuration Manager (F1, if installed), open Runic Crafting → Area Repair:

  • Enabled: turn area repair on or off. Off ignores the hotkey and cancels queued repairs.
  • Hotkey: choose your preferred key or key combination; default Semicolon.
  • RadiusMeters: choose 1–100 meters; default 50. This is separate from chest range.

The same settings are in [Area Repair] in chazman.RunicCrafting.cfg. Repairs respect wards, personal-chest access, and the required station's coverage and workshop permissions at each structure. They use native networked repair requests without claiming ownership. Unloaded structures are not brought into memory. Work runs in small batches; stay near the starting spot until it finishes. Moving more than two meters, changing the radius, leaving the session, or disabling the feature cancels remaining work. The hotkey is ignored while typing or using menus.

Installation

Install RunicCrafting.dll on each client that wants the features. Installing it on a dedicated server is harmless and keeps the mod list uniform, but the material feature acts only for a locally owned player and locally owned containers.

Configuration is in BepInEx/config/chazman.RunicCrafting.cfg. Changes apply at runtime.

For optional performance diagnostics, set [Diagnostics] LogCacheStats = true to log cache hits, chest loads, and source-query time every five seconds. Leave it off for normal play.

Credits

Thanks to Megamos and Aedis for their reports, testing, and optimization suggestions that helped improve crafting and building performance.

CHANGELOG

Changelog

1.1.3 - 2026-09-19

  • Author confirmed in-game testing on September 19, 2026; prepared for Thunderstore release.
  • RunicCrafting now always uses its own Modded Containers.PullPrefabIds list for custom container material pulls, including when RunicStorage is installed. Storage settings continue to govern its own QuickStack/Restock actions.
  • Keep Makail ItemDrawers enabled by default with piece_drawer. Ordinary modded containers using native inventories remain automatic; unknown custom save formats still require an adapter.
  • Add query regressions for independent enabled/disabled lists in read-only previews and writable material sources.

1.1.2 - 2026-09-19

  • Added optional Makail ItemDrawers material sources for crafting/building and manual material pulls, using RunicStorage pull configuration when installed.
  • Read the custom drawer payload for previews and synchronize owner-held drawers before consumption. Keep normal stack limits when staging an item in the backpack.

1.1.1 - 2026-09-14

  • Added the wooden building-piece repair sound to successful AreaRepair batches, played at the player's position so repairs across the area provide audible feedback.
  • Use the registered woodwall piece's native sound effect, excluding placement dust/debris. Rate-limit feedback during large batches; denied, failed, or empty batches are silent.
  • Sound playback failure does not interrupt repairs. Existing repair eligibility, pacing, ownership and access checks remain unchanged.

1.1.0 - 2026-09-12

  • Fixed hammer-building chest searches to use the player's position and configured material range, including station-required pieces such as the forge.
  • Kept building previews, material counts, and placement consumption on the same search scope while preserving station and chest access checks.
  • Added optional area repair for hammer-built structures: configurable hotkey (default semicolon) and radius (default 50m, up to 100m).
  • Added an independent area-repair enable switch, paced networked repairs, ward/personal-chest checks, and menu/typing protection. Inventory equipment is unaffected.
  • Added piece-specific building diagnostics showing the material search range and required station.

1.0.8 - 2026-09-11

  • Reduced repeated crafting-menu work with a short-lived availability cache, combined with verified chest material counts and shared menu-refresh queries.
  • Shared nearby-material queries across building pieces during moving hammer previews, while preserving exact search positions and ranges.
  • Added targeted cache invalidation and fresh checks for crafting and placement, plus optional performance counters.
  • Thanks to Megamos and Aedis for their reports, testing, and optimization suggestions.

1.0.7 - 2026-09-11

  • Improved crafting and hammer-menu performance near large storage areas by reusing unchanged chest material counts.
  • Shared nearby-container queries across recipes and building pieces within each menu refresh.
  • Preserved access restrictions and normal material consumption, with cache invalidation when relevant state changes.
  • Thanks to Megamos and Aedis for their reports, testing, and optimization suggestions.

1.0.6 - 2026-09-10

  • Added cooking from nearby chests through the normal Use interaction on cooking racks and ovens.
  • Added nearby fuel fetching for fires, refillable torches/lamps, ovens and smelters, using each object's native fuel type.
  • Added separate cooking/refueling switches and a configurable interaction search range; no Production links are required.
  • Preserved carried-item priority, finished-food collection, fire requirements, fuel capacity and light-toggle behavior.
  • Added one-item staging with exact transfer checks, inventory-capacity feedback and protected-item checks.

1.0.5 - 2026-09-10

  • Fixed weapon and armor recipes remaining uncraftable despite enough materials in nearby chests.
  • Fixed recipe previews unnecessarily taking ownership of nearby chests just to count materials.
  • Enabled shared workshop materials by default for new configurations while preserving existing settings.
  • Fixed workshop access inspection requiring ownership of the station's network record.
  • Fixed worn equipment incorrectly blocking material consumption; rollback preserves item references, durability, and custom data.

1.0.4 - 2026-09-10

  • Fixed ordinary workbench recipes incorrectly requiring hidden upgrader-only ingredients, leaving Craft disabled despite sufficient visible materials.
  • Recipe availability and consumption now select the same station-specific ingredient set as vanilla. Native upgrader stations still require their special ingredients; ordinary upgrade costs, batch multipliers, and building costs remain intact.
  • Replaced lossy inventory save/reload preflight and rollback with exact in-memory snapshots so worn equipment cannot falsely block material consumption. Rollback preserves original item references, full durability precision, and custom data.
  • Chest synchronization accepts only the exact durability conversion made by one native load/save, without ignoring altered quantities or other item data.
  • Existing workshop policies, ward checks, personal-container exclusions, ownership checks, and capacity safeguards remain unchanged.

1.0.3 - 2026-09-10

  • Fixed craft/build-from-nearby-container discovery failing merely because another player owned the surrounding zone.
  • Accessible unused containers now use Valheim's native ownership claim before mutation.
  • Containers whose synchronized ZDO state says they are in use remain excluded, preventing an active chest editor from being overwritten.

1.0.2 - 2026-09-09

  • Updated output insertion, build placement, and inventory-change integration to Valheim 1.0's exact signatures.
  • Re-audited the installed Valheim 1.0.7 client assemblies and updated the BepInEx dependency to 5.4.2350.

1.0.1 - 2026-09-05

  • Reworked the Thunderstore description and README opening to lead with the player problem, the mod's core benefit, major features, in-game feel, and then safety and compatibility details.
  • Description-only package update. The plugin DLL and gameplay behavior are byte-for-byte unchanged from 1.0.0.

1.0.0

  • Removed the mandatory Runic Core, Persistence, Permissions, Transactions, and Inventory runtime dependencies without changing the published version.
  • Deleted capability registration, protocol coupling, the durable remote crafting saga, composite container claims, player journals, recovery enforcement, and the suite-wide mutation gate.
  • Kept exact carried-first material allocation and rollback as a Crafting-owned process-local lease.
  • Enabled the same native local-player and container-owner path for solo, listen-server, and dedicated-client processes; non-owned containers are excluded from the attempt.
  • Preserved Workshop Access ZDO keys and added optional group membership lookup through Runic Portals without making Portals a load requirement.
  • Kept combined requirement displays, stationless build rules, placement rollback, and Repair All.