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

CraftSearch

Client-side recipe and chest search with localized-name filtering and sorting, independent search fields, JEI-style @mod filters, quantity crafting with scaled resources/time, native Shift batches, and localized labels. No server installation required.

Date uploaded 2 weeks ago
Version 1.2.0
Download link XineladaLendaria-CraftSearch-1.2.0.zip
Downloads 399
Dependency string XineladaLendaria-CraftSearch-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

README

Search Bar Plus 1.2.0

Client-side mod for searching recipes in the Valheim inventory and crafting stations.

Features

  • Search field above the recipe list on the crafting and upgrade tabs.
  • The Improvements/upgrade tab keeps Valheim's vanilla Improve action; quantity controls are added only to the Production tab while search remains available on both.
  • Craft search text and chest search text are separate. Each has its own memory toggle (KeepCraftSearchText and KeepChestSearchText), both enabled by default, and both are cleared when you leave the world.
  • JEI-style mod filtering: use @ModName item, or quote a mod name with spaces as @"Mod Name" item. Matching is case-insensitive, accent-insensitive, and supports partial names; source discovery checks plugin metadata, prefab and child-component identifiers, and registered item definitions used by mods with shared components. The filter remains limited to the recipes the game exposes, so discovery and Veiled Recipes entries are preserved.
  • Quantity input and Craft button appear only in the right recipe details panel, immediately above the recipe resource icons and below the item description. Plus, minus, direct numeric editing, and focus commit all refresh the displayed requirements; resource requirements and craft time scale with the selected quantity, and the craft action is disabled when the selected quantity cannot be supplied.
  • Holding Shift keeps Valheim's native five-unit batch behavior. The custom quantity remains unchanged, while the requirement slots temporarily show the five-unit batch and restore the typed quantity when Shift is released.
  • While crafting, the quantity controls are hidden, the action becomes Cancel, and the native progress bar is clipped to its own panel so it cannot overlap the action button.
  • Configuration Manager groups the options like the camera mod: global switches under 00 - Toggles, search behavior under 10 - Search, chest behavior under 30 - Chest, and the recipe-log switch under 40 - Diagnostics. All feature toggles are enabled by default; quantity crafting and recipe-log suppression require a restart when their toggles change.
  • Optional chest/container search controlled by EnableChestSearch. Its input is attached to the chest modal below the chest title and above the slots, so it follows the modal if another mod moves it.
  • Chest filtering matches only the localized item name, packs matching slots into the grid, preserves slot click/drag mapping, and restores the original layout when cleared.
  • Optional chest sorting controlled by EnableChestSort; its compact sort button sits below the chest weight indicator and orders items by their localized names.
  • “Search”, quantity, and craft labels follow the language selected in the game where a translation is available.
  • Localized text for 35 languages. Abenaki and additional languages fall back to “Search” in English.
  • Searches the translated item name, ignoring case and accents.
  • Enter multiple words in any order, for example iron axe.
  • × button to clear the field; closing the inventory keeps the search when the memory toggle is enabled.
  • Enter finishes editing. Click outside the field to return focus to the game controls.
  • Preserves unlocked recipes, requirements, and the game's ordering.
  • Does not require a server installation or Jötunn. Mod-name matching uses plugin metadata when available and falls back to the item's prefab name for custom items.
  • Hides only the game's repetitive Setting selected recipe message. All other logs, warnings, and errors remain available.

See CHANGELOG.md for the release history.

Installation

  1. Close Valheim.
  2. Extract CraftSearch-1.2.0.zip into the folder that contains valheim.exe.
  3. Confirm that BepInEx/plugins/CraftSearch/CraftSearch.dll exists. The in-game plugin name is Search Bar Plus.
  4. Start the game with BepInEx and open the inventory or a crafting station.

When using a mod manager, keep the existing CraftSearch package so Thunderstore can update it in place. To uninstall, close the game and remove only CraftSearch.dll.

Validation and limitations

Built against the local DLLs from the September 2026 update (network version 39), Unity 6000.0.75, and BepInEx 5.4.23.3. Automated tests verify search behavior in the compiled DLL. A complete in-game session has not been automated: layout, keyboard focus, controller input, and interactions with other mods still need manual testing. Interfaces replaced by mods such as Auga may require an adaptation.

In-game checklist: search in the inventory, workbench, forge, and cauldron; switch between crafting and upgrades; search for a missing item; try @mod item and quoted mod names; clear the field; estimate and craft a quantity; close and reopen the UI; search an opened chest; type words containing E; and test interface scaling. Check BepInEx/LogOutput.log for errors containing Search Bar Plus.

Build

Requires the .NET SDK with netstandard2.1 support, an installed Valheim copy, and BepInEx 5.

.\build.ps1 -GameDir 'D:\SteamLibrary\steamapps\common\Valheim'

The script runs the tests and creates dist/CraftSearch-1.2.0.zip. The game and BepInEx DLLs are local references only and are not distributed.

Update reference: official Valheim 1.0 announcement.

CHANGELOG

Changelog

2.0.10 - 2026-09-27

  • Let vanilla input focus track Shift press and release when Quantity Crafting is disabled, preventing the native x5 modifier from sticking after rapid toggles or clicks.
  • Clear stale TMP/EventSystem selection on live mode changes and rebuild the native recipe preview only once after the custom controls are hidden.
  • Apply the selected custom batch during every native requirement-list build, including the first frame of a live toggle, preventing a transient x1 recipe display.

2.0.9 - 2026-09-27

  • Clarify on the Quantity Crafting toggle that a game restart may be needed for the setting to apply correctly.

2.0.8 - 2026-09-27

  • Removed assembly-wide reflection and static-registry traversal from the @mod recipe-filter hot path. Loaded plugin names and assemblies are indexed once, and each recipe prefab's mod source is cached.
  • Parse the current recipe query once per text change instead of reparsing it for every recipe during list rebuilds.

2.0.7 - 2026-09-27

  • Release Search Bar Plus input focus during live Quantity Crafting toggles so Valheim can read native Shift/AltPlace again immediately.
  • Schedule one native recipe refresh after disabling Quantity Crafting, ensuring the Shift x5 label and ingredient list are rebuilt together from the actual key state.

2.0.6 - 2026-09-27

  • Keep the selected custom craft quantity in Valheim's native requirement-list rebuild, avoiding a one-unit flash/reset when the native Shift modifier changes.

2.0.5 - 2026-09-27

  • Kept Shift crafting on Valheim's native AltPlace path when Quantity Crafting is disabled; the mod does not synthesize a replacement Shift action.
  • Refresh the native recipe preview once when the modifier is pressed or released, so the x5 label and ingredient requirements stay in sync without requiring an unrelated click.
  • Release Search Bar Plus text-field focus when the native craft action starts, preventing focused search inputs from making Shift/crafting appear stuck.

2.0.4 - 2026-09-27

  • Restored Valheim's captured native multi-craft amount when Quantity Crafting is disabled. This preserves the vanilla five-craft Shift behavior instead of leaving the field at the custom feature's single-craft value.
  • Clear only our transient craft modifier state during the live handoff, preventing stale Shift/touch state while returning control to Valheim.
  • Recreate the quantity controls when the feature is enabled at runtime after starting with it disabled; no restart is required in either direction.

2.0.3 - 2026-09-26

  • Made Quantity Crafting a live Configuration Manager toggle; no game restart is needed.
  • A custom batch already in progress completes before disabling the feature. The UI then returns to the native craft action, and vanilla Shift crafting remains available.
  • Kept quantity hooks behaviorally inert while the feature is off; they pass through the game's native craft quantity values.

2.0.2 - 2026-09-26

  • When Quantity Crafting is disabled at startup, skip all quantity-only Harmony patches, including the crafting input filter, requirement refresh, and exact-batch hooks. This restores vanilla Shift crafting (five crafts while held) without Search Bar Plus reading or writing the game's quantity/timing fields.
  • Guarded quantity-state cleanup and duration synchronization so unrelated features such as recipe search, filters, and chest tools do not reset vanilla crafting state.

2.0.1 - 2026-09-22

  • Fixed compatibility with chest-pulling crafting mods, including CraftFromChests bundled with ValheimQOL. When an external resource provider is detected, the custom craft button trusts Valheim's patched availability check and the native requirement UI is preserved, so nearby chest materials are shown and can be used without losing exact quantity crafting.
  • Added one-time detection of chest/resource crafting plugins by plugin identity and Harmony patches to requirement and consumption methods. Without a detected provider, the existing inventory-only quantity validation remains unchanged.
  • Updated the build script to name the distribution folder and ZIP from the package version.

2.0.0 - 2026-09-20

  • Added independent craft and chest search inputs with optional text persistence.
  • Added recipe filtering by localized item name, including multi-word and accent-insensitive searches.
  • Added optional JEI-style @mod and @"Mod Name" filtering with metadata and prefab-name fallback.
  • Improved mod-source discovery for child prefab components and plugin identifiers; quoted, case-insensitive partial names now match reliably (for example, @"reef pac").
  • Added registry-based source discovery for mods that use shared item components, including Reef Packs PackDef entries and backpack prefabs.
  • Added quantity crafting controls with plus, minus, numeric input, resource scaling, craft-time scaling, and insufficient-resource blocking.
  • Quantity values now represent recipe executions consistently, including recipes that produce multiple items per execution; the current value is written to Valheim immediately before crafting so lowering the input cannot reuse an older amount.
  • Synchronized quantity changes across the recipe title, native requirements, batch amount, and craft timing; mass recipes now show their total output while unit recipes omit x1.
  • Disabled the native Shift/AltPlace modifier while the custom Production quantity row is active, preventing it from replacing or multiplying the selected quantity.
  • Kept the Improvements/upgrade tab vanilla, adding only the shared search field and leaving its Improve action untouched.
  • Added custom Create/Cancel behavior and a clipped native progress bar that stays beside the action button.
  • Added chest filtering that matches only item names, packs matching slots, and restores the normal grid after clearing.
  • Added localized-name chest sorting with a compact button below the chest weight indicator.
  • Added vertical single-selection recipe filter toggles with category glyphs below the vanilla repair button. An All toggle restores every recipe; the other toggles group Weapons, Armor, Consumables, Construction, Other, and detected mod sources. Selecting an active non-All toggle returns to All, and KeepRecipeTypeFilters controls persistence. Mod entries are shown only for mods that contribute recipes and wrap into a third column after 20 entries.
  • Reduced filter buttons to the compact station scale, restored visible category glyphs, added localized built-in category tooltips with a one-second delay, safe glyph fallbacks, and left-side mod columns. Fast metadata-only source detection keeps the first inventory open responsive; the reflective registry scan is reserved for explicit @ searches.
  • Replaced unsupported armor and construction fallback glyphs with generated chest-plate and hammer sprites, added the ExcludedRecipeCategories Configuration Manager setting, and synchronized exclusions without rebuilding the whole panel on every frame.
  • Removed stale imports and avoided repeated texture uploads while creating category icons.
  • Craft debug logging is now disabled by default; enable EnableCraftDebugLogs only when diagnosing a craft issue.
  • Stabilized built-in filter ordering when exclusions change, compacted re-enabled categories without gaps, and replaced the construction glyph with a clearer generated hammer silhouette.
  • Standardized the built-in category art with generated crossed swords, a colored chest plate, a potion, and the hammer silhouette.
  • Added localized labels and support for 35 language identifiers with English fallback.
  • Added Configuration Manager categories and feature toggles for search, quantity crafting, chest search/sort, text persistence, mod-name matching, and diagnostic log suppression.
  • Preserved the legacy text-persistence key as a hidden migration setting.
  • Removed the repetitive vanilla Setting selected recipe diagnostic while leaving other logs intact.
  • Removed obsolete layout and state code that was no longer referenced.

1.1.0

  • Added the original recipe and chest search implementation, quantity controls, localized labels, and JEI-style mod filtering.