You are viewing a potentially older version of this package. View all versions.
L4zerShark_Team-AzuCraftyBoxesBuildingOnly-1.2.0 icon

AzuCraftyBoxesBuildingOnly

Per-player building, crafting, and machine chest-pull toggles, live hotkeys, and a Build Camera consumption fix.

Date uploaded a week ago
Version 1.2.0
Download link L4zerShark_Team-AzuCraftyBoxesBuildingOnly-1.2.0.zip
Downloads 54
Dependency string L4zerShark_Team-AzuCraftyBoxesBuildingOnly-1.2.0

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2333 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.2333
Azumatt-AzuCraftyBoxes-1.8.15 icon
Azumatt-AzuCraftyBoxes

AzuCraftyBoxes is a Valheim mod that allows players to access and use resources from nearby containers when crafting and building, based on a configurable range and item restrictions. Restrictions are controlled by the yaml file Azumatt.AzuCraftyBoxes.yml

Preferred version: 1.8.15

README

AzuCraftyBoxes Building Only 1.2.0

At a glance

  • Toggle nearby-chest use separately for building, crafting, and machines.
  • Every player has independent settings, including non-admins standing in the same area.
  • Change settings live through Configuration Manager, the config file, or configurable F8/F9/F10 hotkeys.
  • Fix Build Camera free-camera placement failing to consume nearby-chest materials.

Give every player independent, live control over when AzuCraftyBoxes may use nearby-container resources.

Per-player feature switches

Local setting Default Controls
Building From Nearby Chests true Requirement display and material consumption for placed building pieces
Crafting From Nearby Chests false Crafting, upgrading, and supported crafting-like interfaces
Machines From Nearby Chests false Smelters, cooking stations, fires, fermenters, shield generators, and turrets

The three switches are independent. Any combination is valid, including all on or all off.

These values are intentionally not synchronized. Each client reads its own config and applies it only to that client's local player. Two players can stand beside the same chest or use the same machine while keeping different settings. No admin status is needed to change or use them.

AzuCraftyBoxes still controls range, eligible containers, YAML exclusions, permissions, its own enabled state, and its per-player Prevent Pulling Logic control. This add-on never forces a pull that AzuCraftyBoxes has already rejected.

Live changes and hotkeys

Changes made in BepInEx Configuration Manager take effect on the next relevant check; no restart is required. Saving the generated config file while the game is running also reloads the local values.

Default local hotkeys:

Hotkey Action
F8 Toggle building from nearby chests
F9 Toggle crafting from nearby chests
F10 Toggle machine filling from nearby chests

Every shortcut is configurable. Set a shortcut to None if that player does not want a hotkey.

Build Camera resource-consumption fix

Version 1.2.0 covers the complete Valheim placement transaction used by Build Camera Custom Hammers Edition, including Player.UpdatePlacement, TryPlacePiece, and PlacePiece.

Valheim consumes building resources after TryPlacePiece returns but before UpdatePlacement ends. Earlier versions stopped identifying the action as building too soon, which could allow a chest-funded piece to be placed while the later withdrawal fell back to an empty player inventory. The new context remains active through the real consumption call. It does not add a second withdrawal, so it cannot double-charge through this fix.

This compatibility path is automatic and does not require Build Camera as a dependency.

Multiplayer installation and synchronization

Install version 1.2.0 on:

  • The dedicated server or host
  • Every connecting client

The server connection uses AzuCraftyBoxes' bundled ServerSync only to require the mod and a compatible version. No gameplay toggle or hotkey is synchronized. The dedicated server's local gameplay values have no effect because it has no local player.

This gives the intended split:

  • Server: verifies that everyone has the fix.
  • Each client: controls only its own player's three features and hotkeys.

Choose combined or standalone

Do not install this together with ValheimCompatibilityFixes. They contain the same AzuCraftyBoxes gate and are marked incompatible to prevent duplicate patching.

You may install this package with the separate BreedingUpgradesChickenEggFix package.

Requirements and checked versions

  • BepInExPack Valheim 5.4.2333
  • AzuCraftyBoxes 1.8.15
  • Valheim 0.221.4 API
  • Optional compatibility checked against Build Camera Custom Hammers Edition 1.2.10

The package was compiled and statically checked against those versions. A live Valheim client and dedicated server are still required for the final gameplay test.

Updating from 1.1.0

Replace 1.1.0 on the server and every client. Do not keep both DLLs.

On first launch, the old shared Mode is migrated into local switches on each installation:

Old mode Building Crafting Machines
Full On On On
BuildingOnly On Off Off
Disabled Off Off Off

The obsolete Lock Configuration, old mode, and old combined-mode hotkey entries are removed. Mod Enabled is retained but becomes a local master switch.

Install with Thunderstore Mod Manager or r2modman

  1. Remove or disable version 1.1.0.
  2. Import AzuCraftyBoxesBuildingOnly-1.2.0.zip as a local mod, or update to 1.2.0 after it is published.
  3. Confirm AzuCraftyBoxes is installed.
  4. Put the same mod version on the server and every client.
  5. Launch once to generate or migrate the config.

For a manual installation, place AzuCraftyBoxesBuildingOnly.dll in BepInEx/plugins/AzuCraftyBoxesBuildingOnly/.

Config

Generated at:

BepInEx/config/local.valheim.azucraftyboxesbuildingonly.cfg

Setting Default Scope
1 - General / Mod Enabled true Local player; off leaves normal AzuCraftyBoxes behavior unfiltered
2 - Per-Player Features / Building From Nearby Chests true Local player only
2 - Per-Player Features / Crafting From Nearby Chests false Local player only
2 - Per-Player Features / Machines From Nearby Chests false Local player only
3 - Per-Player Hotkeys / Toggle Building F8 Local player only; None disables
3 - Per-Player Hotkeys / Toggle Crafting F9 Local player only; None disables
3 - Per-Player Hotkeys / Toggle Machines F10 Local player only; None disables

See CONFIG_REFERENCE.md for the full interaction and migration reference.

Copied-profile multiplayer test

  1. Start a copied world with the dedicated server and two non-admin clients using 1.2.0.
  2. Put both players beside the same chest. Enable building for player A and disable it for player B. Confirm only A can build from that chest, and confirm A's materials are consumed.
  3. Reverse the two settings without moving either player. Confirm the behavior reverses immediately.
  4. Repeat the independent test for a crafting recipe.
  5. Repeat it for smelter ore and fuel, cooking food and fuel, a fire, a fermenter, a shield generator, and a turret.
  6. Change each option through Configuration Manager and confirm the next check uses the new value.
  7. Test F8, F9, and F10, then rebind one shortcut and set another to None.
  8. Put building materials only in a nearby chest, place one piece through Build Camera free-camera mode, and confirm exactly one recipe's materials leave the chest.
  9. Check the BepInEx logs on the server and both clients for Harmony or ServerSync errors.

Uninstall

Remove this package from the server and every client, then restart. AzuCraftyBoxes returns to its normal behavior. The add-on stores no world objects or item data.

Complete source is included under src/ and released under the MIT License.

CHANGELOG

Changelog

1.3.1

  • Correct the AzuCraftyBoxes 1.8.15 crafting-state type lookup from AzuCraftyBoxes.ConsumptionManager to AzuCraftyBoxes.Util.Functions.ConsumptionManager.
  • Restore the intended stale deferred-consumption cleanup for one-ingredient crafts.
  • Make the pending-consumption property a required runtime member so future incompatibilities disable the add-on safely instead of silently skipping the advertised crafting fix.
  • Remove the resulting HarmonyX AccessTools.TypeByName warning during startup.

1.3.0

  • Rename the visible plug-in and README title to AzuCraftyBoxes Fixes & Config while retaining the existing Thunderstore package ID, plug-in GUID, DLL name, and config filename for a clean update.
  • Treat each started craft as one transaction and preserve its crafting-toggle choice until completion.
  • Clear stale AzuCraftyBoxes deferred one-ingredient consumption state before and after crafting, cancellation, or closing the crafting panel.
  • Guarantee cleanup of AzuCraftyBoxes' temporary recipe-scan guard after errors.
  • Mark the exact successful placement transaction used by normal building and Build Camera Custom Hammers Edition.
  • Audit building-resource consumption after AzuCraftyBoxes runs and remove only a missing remainder from the player or eligible nearby containers.
  • Respect AzuCraftyBoxes container access, range, exclusions, pull rules, and Leave One behavior in the placement fallback.
  • Document that this plug-in never inserts items into player inventories; unexplained returning items need an inventory-mod/log diagnosis rather than a speculative transfer patch.

1.2.0

  • Replace the one shared server-controlled mode with independent per-player building, crafting, and machine switches.
  • Make every gameplay switch available to non-admin players and intentionally exclude it from ServerSync.
  • Add configurable local F8, F9, and F10 hotkeys; any shortcut can be rebound or set to None.
  • Apply Configuration Manager changes immediately and reload local config-file edits while the game is running.
  • Keep required-mod/version enforcement on the server without synchronizing player preferences.
  • Fix chest-funded Build Camera placement by keeping the building context active through Player.UpdatePlacement, where Valheim actually consumes resources.
  • Cover TryPlacePiece, every current PlacePiece overload, and the full machine interaction/hover paths used by AzuCraftyBoxes 1.8.15.
  • Migrate legacy Full, BuildingOnly, and Disabled values to the equivalent three local switches and remove obsolete lock/mode entries.
  • Add a two-client same-zone test matrix and updated source/build documentation.

1.1.0

  • Require the package on the dedicated server and every client through version checking.
  • Synchronize Lock Configuration, Mod Enabled, and Mode from the server.
  • Keep the F8 key assignment local while making authorized mode changes global.
  • Block non-admin clients from overriding a locked server mode.
  • Live-reload and broadcast dedicated-server config-file changes.
  • Fail closed if AzuCraftyBoxes' bundled ServerSync cannot be initialized.
  • Correct the multiplayer installation and configuration documentation.

1.0.0

  • Add Full, BuildingOnly, and Disabled modes for AzuCraftyBoxes.
  • Default to nearby-container use for structure placement only.
  • Add an F8 runtime switch between Full and BuildingOnly.
  • Preserve AzuCraftyBoxes container maintenance and its own enable/permission decisions.
  • Add compatibility notes and a copied-profile test checklist.
  • Include complete Thunderstore listing, configuration and source-build references plus high-resolution icon masters.