
Functional Storage Legacy
Backport of Functional Storage features for Minecraft 1.12.2.
About this Mod
Backport of Functional Storage features for Minecraft 1.12.2 (Forge).
Implemented Features
Compared with traditional 1.12.2 drawer mods, this project is closer to modern Functional Storage interaction patterns:
- Storage upgrades use a multiplicative scaling model
- Drawer contents, upgrades, and config are preserved in item NBT after block break
- Drawer items can expose
IItemHandlercapability for cross-mod interaction - Collector upgrade supports both dropped-item and fluid collection behaviors
Main Content
Drawers and Storage Blocks
- Wooden drawers:
1x1,1x2,2x2 - Wood types:
oak,spruce,birch,jungle,acacia,dark_oak - Compacting Drawer: 3-tier compacting storage
- Simple Compacting Drawer: 2-tier compacting storage
- Fluid Drawer:
1/2/4-slot fluid variants - Ender Drawer: frequency-based shared single-slot storage
- Storage Controller
- Controller Extension
- Armory Cabinet
Upgrade System
Storage Upgrades
Iron DowngradeCopper UpgradeGold UpgradeDiamond UpgradeNetherite UpgradeCreative Vending Upgrade
Notes:
- Storage upgrades are calculated multiplicatively instead of single-tier overwrite
- Default multipliers: copper
x8, goldx16, diamondx24, netheritex32 - Upgrades affect normal storage, fluid capacity, and controller range calculations
- If removing an upgrade causes stored amount to exceed new capacity, that slot is locked and cannot be extracted directly
- If holding a higher-level storage upgrade, it can still directly replace a lower-level one
- Upgrade conflict checks are centralized (for example,
Void Upgradecannot be installed more than once)
Functional Upgrades
Void UpgradeRedstone UpgradePulling UpgradePushing UpgradeCollector Upgrade
Notes:
Void Upgradediscards overflow of matching items/fluidsRedstone Upgradeoutputs signal based on fill ratioPulling/Pushinginteract with adjacent item/fluid capabilitiesCollector Upgradecollects dropped items from the block in front and collects fluids at a slower interval- Directional functional upgrades store facing in upgrade item NBT; sneak-right-click to cycle direction
Storage Features
Normal Drawers
- Uses a high-capacity item handler; each slot can hold far more than vanilla 64
- Item matching preserves metadata and NBT
- Supports template retention when locked
Compacting Drawers
- Automatically detects compacting/decompacting recipes
- Supports initialization from any valid tier
- Automatically converts total amount across multi-level outputs
Fluid Drawers
- Each slot stores only one fluid type
- Supports direct interaction with buckets and fluid containers
- Locked slots retain fluid templates
Ender Drawers
- Uses frequency strings for shared storage
- Drawers with the same frequency share the same inventory
- Does not support storage upgrades
Armory Cabinet
- High-capacity storage for non-stackable equipment/tool items
- Default capacity:
4096slots - Independent from controller and drawer upgrade systems
Controller Network
Storage Controller
- Aggregates item and fluid capabilities from connected drawers
- Prioritizes already-matched/locked drawers on insertion
- Controller range is affected by storage upgrade calculations
Controller Extension
- Provides additional access points for a controller network
- Can connect to adjacent controllers or already-connected extension blocks
Tools
Linking Tool
- Right-click controller: record target controller
- Right-click drawer: add or remove connection
- Supports single mode and area batch mode
- Supports add/remove mode switching
- Also used to copy and set Ender Drawer frequency
Configuration Tool
- Sneak-right-click air: cycle modes
- Right-click drawer or controller: apply current mode
- Supported modes include:
- Lock
- Number Display Toggle
- Item Render Toggle
- Upgrade Icon Toggle
- Indicator Bar Mode
Item Form Capabilities and Tooltip
- When a drawer block is broken or middle-click picked, contents and upgrades are written into item
TileData - Normal drawer items and compacting drawer items expose
IItemHandlercapability - Other mods can interact with drawer items as containers
- Tooltip displays stored content and amounts
Available Versions
How to Install Functional Storage Legacy on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set forge Loader
In the panel under "Egg", select the forge loader and matching Minecraft version (1.12.2).
Install Mod
Open the mod browser in the dashboard and search for "Functional Storage Legacy". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.12.2
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Functional Storage Legacy server crashes on startup – what to do?
Most common cause: wrong forge version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.12.2). You can switch loaders with one click in the panel.
Is Functional Storage Legacy compatible with forge?
Functional Storage Legacy officially supports forge for Minecraft 1.12.2. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Functional Storage Legacy – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Functional Storage Legacy consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Functional Storage Legacy with just one click on your server.