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.
ItemDrawers
Cybrp ItemDrawers — standalone rework of kg_ItemDrawers with EpicLoot support, rarity markers, localization, station auto-feed, QuickStack, Norse font, and mod API.
| Date uploaded | a day ago |
| Version | 1.2.5 |
| Download link | cybrp-ItemDrawers-1.2.5.zip |
| Downloads | 1 |
| Dependency string | cybrp-ItemDrawers-1.2.5 |
This mod requires the following mods to function
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.2333ValheimModding-Jotunn
Jötunn (/ˈjɔːtʊn/, 'giant'), the Valheim Library was created with the goal of making the lives of mod developers easier. It enables you to create mods for Valheim using an abstracted API so you can focus on the actual content creation.
Preferred version: 2.29.2README
Cybrp ItemDrawers
A standalone rework and improvement of the original kg_ItemDrawers mod by KGvalheim.
Thunderstore: Cybrp/ItemDrawers
What's New in 1.2.4
- Display name renamed to Cybrp ItemDrawers (plugin GUID unchanged:
kg.ItemDrawers)
Added (since 1.0.2)
- EpicLoot-aware storage: enchanted / modded items keep full magic properties (
m_customData) - Rarity circle on the drawer icon (Magic / Rare / Epic / Legendary / Mythic), using EpicLoot rarity colors
- Stack only identical enchantments (config) — different magic items do not merge into one stack
- Self-contained localization (English + Russian embedded JSON)
- EpicLoot display names on drawer hover (and live re-lookup of legendary names from config so translated names apply to old items)
- Station auto-feed / deposit for smelters, kilns, cooking stations, fireplaces, fermenters, beehives, sap collectors
- QuickStackStore Quick Stack (P) / Restock (L) with nearby drawers
- Norse-Bold stack digits, outline + shadow, Tiffany default color
#0ABAB5 - Console load banner (Tiffany)
Fixed
- Dedicated-server sync for enchanted items (no lost items / ZDO byte[] crashes)
- Correct counters with mixed vanilla + enchanted contents
- QuickStack / Restock desync when writing drawer ZDOs from the client
- Icon stays when assigned drawer amount is 0
- Ore / stackables no longer mis-routed into enchanted storage
- Rarity circle colors match EpicLoot item borders
- Localization language detection without HarmonyX field-not-found spam
- Text outline/shadow on dynamically created fonts (full SDF shader)
Features
Core Storage
- 7 drawer variants: Wood, Stone, Black Marble, Panel variants (Wood/Stone/Marble), and an invisible No-Model variant
- Single-item-type bulk storage: Each drawer holds one item type at a time with a large stack count
- Visual display: Item icon, stack count, quality stars, and optional EpicLoot rarity circle
- Enchanted / modded items: Full custom data preserved; optional same-enchantment-only stacking
- Auto-pickup: Drawers pull matching ground items within a configurable range (with VFX)
- Per-drawer customization: Crouch + Use — text color (RGB) and pickup range
- Exclude list: Config-driven prefab names that cannot be stored
- Contents drop on destroy
- Dungeon placement
- Custom build category: "Item Drawers" tab in the Hammer menu (via Jotunn)
Text Effects
- Norse-Bold font for stack count digits
- Configurable outline and drop shadow
- Tiffany turquoise default color:
#0ABAB5(RGB 10, 186, 181)
Station Auto-Feed & Deposit
- Feed from drawers: Smelter, Kiln (extended radius), Cooking station, Fireplace, Fermenter
- Deposit to drawers: Cooking station output, Beehive honey, Sap collector
- Throttled to ~1 second per station instance
QuickStackStore Integration
- Quick Stack (P) into matching nearby drawers
- Restock (L) from matching nearby drawers
- Respects QuickStackStore range, hotbar, and favorites
- Soft dependency — works without QuickStackStore
AzuCraftyBoxes Compatibility
- Build/craft material pulling from drawers via AzuCraftyBoxes + mod API
Mod API
API.ClientSideV2 for third-party mods:
AllDrawers()— valid drawerZNetViewinstances- ZDO fields:
Prefab,Amount,Quality,PickupRange,Color, plus enchanted storage fields
Configuration
Config file: BepInEx/config/kg.ItemDrawers.cfg
[General]
| Setting | Default | Description |
|---|---|---|
ExcludeList |
(empty) | Comma-separated item prefab names excluded from drawers |
DrawerPickupRange |
4 | Default auto-pickup range (blocks) |
MaxDrawerPickupRange |
100 | Max pickup range in per-drawer GUI |
DefaultColor |
(0.039, 0.729, 0.710) | Default text color — Tiffany #0ABAB5 |
[TextEffects]
| Setting | Default | Description |
|---|---|---|
OutlineEnabled |
true | Outline around count digits |
OutlineWidth |
0.15 | Outline thickness (0.0–1.0) |
OutlineColor |
black | Outline color |
ShadowEnabled |
true | Drop shadow |
ShadowColor |
(0, 0, 0, 0.6) | Shadow color (alpha = opacity) |
ShadowOffset |
0.4 | Shadow offset (0.0–1.0) |
ShadowSoftness |
0.15 | Shadow blur (0.0–1.0) |
[Enchanted]
| Setting | Default | Description |
|---|---|---|
StackOnlySameEnchantment |
true | Only stack items with identical enchantment data |
RarityColorEnabled |
true | Show EpicLoot rarity circle on the drawer icon |
[StationAuto]
| Setting | Default | Description |
|---|---|---|
Enabled |
true | Master switch |
Radius |
8 | Search radius (m) for most stations |
SmelterRadius |
15 | Extended radius (m) for smelters/kilns |
FeedFromDrawers |
true | Stations pull fuel/materials from drawers |
DepositToDrawers |
true | Stations push finished output into drawers |
DebugLogs |
false | Verbose logging |
[QuickStackBridge]
| Setting | Default | Description |
|---|---|---|
Enabled |
true | Master switch |
QuickStackToDrawers |
true | Quick Stack (P) into drawers |
RestockFromDrawers |
true | Restock (L) from drawers |
DebugLogs |
false | Verbose logging |
Player Interactions
| Action | Behavior |
|---|---|
| Use hotbar item on drawer | Deposit matching item (prefab + quality; enchantment rules apply) |
| Use | Withdraw full stack (up to item max stack) |
| Left Alt + Use | Withdraw 1 item |
| Left Shift + Use | Deposit all matching items from inventory |
| Crouch + Use | Per-drawer options GUI (color, pickup range) |
Dependencies
- BepInEx Pack for Valheim (denikson)
- Jotunn (ValheimModding) — custom build category
Optional Integrations
- QuickStackStore (Goldenrevolver)
- AzuCraftyBoxes (Azumatt)
- EpicLoot (RandyKnapp) — magic names, rarity circle, preserved enchant data
Credits
Standalone rework of kg_ItemDrawers by KGvalheim, with station automation, QuickStack support, EpicLoot handling, localization, custom font/text effects, and a mod API.
CHANGELOG
Changelog
1.2.5
- Maintenance release
1.2.4
- Fix: Text outline/shadow now switches to full SDF shader for compatibility with dynamically created fonts
1.2.3
- Fix: Removed HarmonyX spam from localization language lookup (wrong AccessTools field names)
- Fix: Language now reads Valheim
GetSelectedLanguage()/m_language, withSetupLanguageoverride - Fix: Clean compile (CS0109 on Log property)
1.2.2
- Fix: Console load banner Tiffany color (#0ABAB5) — write to BepInEx ConsoleStream + Virtual Terminal truecolor
1.2.1
- New: Tiffany-colored ASCII banner on mod load
1.2.0
- New: EpicLoot legendary/mythic display names re-looked up from translated config
- New: Drawer hover text shows EpicLoot magic item names
- Fix: Rarity circle colors read EpicLoot private rarity color fields
1.1.x
- New: Self-contained EN/RU localization (embedded JSON)
- New: EpicLoot hybrid storage — enchanted items keep full
m_customData/ magic properties - New: Rarity circle marker on drawer icon
- New: Config
StackOnlySameEnchantmentandRarityColorEnabled - Fix: Dedicated-server RPC / ZDO sync for enchanted items
- Fix: Counter sync for mixed vanilla + enchanted contents
- Fix: QuickStack / Restock use owner RPCs
- Fix: Icon remains when drawer amount is 0
- Fix: Ore and stackables use Amount storage correctly
1.0.2
- Fix: Text outline/shadow full SDF shader compatibility
1.0.1
- Fix: API assembly name mismatch — third-party mod integration now works
1.0.0
- Initial release