![Window Storage Lib [Legacy] project artwork](https://moddbcdn.vintagestory.at/WSL+480x320_7b74303b4261adeba4a9ab53e367669a.png)
Vintage Story Mod DB · Vintage Story mod
Window Storage Lib [Legacy]
There is a newer version of this mod Window Storage Lib still works and nothing using it is going to break. But it is no longer being updated - it has been replaced by Window Display Lib, which is a rewrite rather than an update: free item placement instead o
Quick answer
Which Window Storage Lib [Legacy] release matches 1.22.1?
Window Storage Lib [Legacy] 1.2.7 targets 1.22.0, 1.22.1, 1.22.2. It must be installed on the client. Installation on the dedicated server is optional. 1 required mod needs a matching file.
Where it goes
Is Window Storage Lib [Legacy] required on the client, server, or both?
It must be installed on the client. Installation on the dedicated server is optional.
This release supports both sides, but the source does not require it on the server.
What else does Window Storage Lib [Legacy] 1.2.7 need?
1.2.7 on 1.22.1. Every mod below is checked against that same setup.
Install Attribute Rendering Library first, but 1 required mod has no matching file for this setup. Do not mix loader builds to force a match.
We only count dependency files that match this setup. A file for another loader does not fill the gap.
Before you install it
Add Window Storage Lib [Legacy] without breaking your instance.
Built for Window Storage Lib [Legacy] 1.2.7 on 1.22.1. Pick another file and the loader, install side or required mods may change.
- 01
Stick to this file
Use 1.2.7. It targets 1.22.0, 1.22.1, 1.22.2; another release may have different loader, side or dependency requirements.
- 02
Bring the mods it needs
Install Attribute Rendering Library first, but 1 required mod has no matching file for this setup. Do not mix loader builds to force a match.
- 03
Put it on the correct side
It must be installed on the client. Installation on the dedicated server is optional.
- 04
Pick the file you checked
Use the “Get this file” button beside 1.2.7. It opens that exact file at the source.
About this project
What does Window Storage Lib [Legacy] add?
There is a newer version of this mod
Window Storage Lib still works and nothing using it is going to break. But it is no longer being updated - it has been replaced by Window Display Lib, which is a rewrite rather than an update: free item placement instead of fixed slots, per-item rotation, a preview of where things will land, particles from stored items, and multi-block windows.
Both can be installed at once. The new one has its own block codes and does not touch anything this one does, so there is no rush and nothing to migrate before you are ready.
If you are a modder building display blocks of your own, the new library is the one to use - it is documented on its page.
Window Storage Lib
Library for my window storage mods - can be used by modders to make their own as well
Requirements & Important Info
Features
Animations
- • Animations can be called absolutely anything.
- • Uses
animationShapePathto define animations from a separate shape file, which can hold multiple animations. - • You can use
isWindowto animate things without actually changing the open/closed state.
Slot, Frame, & Collision Groups
- • slotGroups now have their own dedicated section in the JSON.
- • Supports any number of slot groups, with a max of 7 slots per group. You can now use asymmetrical counts per group (e.g., 3, 5, 4).
- • Transforms can be adjusted uniquely per group (spacing, startOffset, zCenter, yOffset, rotateY).
- • The
selectionBoxesat the end of the JSON are used to determine the size and placement of item slots. - • frameBoxGroups have their own JSON section. You can tie animations and boxes together for interactions using
animOpen/animClosealongsideopenFrameBoxandclosedFrameBox. - • Allows for multiple independent animations. You can also use
isWindow: falseto stop the open/closed state from changing. - • Includes arrayed
staticFrameBoxesfor fixed elements that don't need animations. - • collisionBoxGroups now have their own JSON section. Uses
openCollisionBoxandclosedCollisionBoxfor animated parts, plusstaticCollisionBoxesfor normal static elements.
Opening & Closing
- • Includes a
canOpenattribute so you can make window styles that stay closed. - • FrameBoxGroups completely manage open/close interactions via selection boxes.
- • The open/closed toggle runs **Server-Side Only**, which allows
linkedOpento sync perfectly. - • The
linkedOpenattribute syncs stacked vertical windows so they toggle open together. Without it, stacked windows open independently. - • Plays a nice "swoosh" sound whenever a window pane is toggled.
- • Breaking an open window will correctly drop its regular closed item variant.
Display, Stagger & Stacking
- • Tooltips show the current display mode per group, individual slot item interactions, and block placement options based on player direction.
- • Includes 4 stagger configurations (Straight, Alternating, Random, Fine Tune) along with slotGroup display interactions.
- • Snaps items directly to texture pixels for a cleaner look.
- • Allows item placement fine-tuning in real-time via the in-game TFEdit menu (
onWindowStorageTransform). - • Detects when a
BEWindowStorageLibblock is placed directly below. When stacked, it completely hides slot selection boxes and blocks item placement. Display mode info is also automatically hidden when fully stacked. - • You can manually pick which slot groups hide when stacked using the
stackingHideGroupsattribute. - • Add
placeWith: "shape path"andpairedWith: "below"to your JSON to automatically lay down stacked multi-block structures. Great for linking animations withlinkedOpen. For 2-high or 3-high layouts, you can pair shapes together so they are placed or broken as one. If it detects a block blocking the space above, it throws a warning and prevents placement.
Food Storage, Lighting & Weather
- • Food Storage: Integrates with vanilla food spoil rules. The spoil rate changes naturally based on whether the window is open or closed, and shows per-slot freshness info and ripening spot metrics directly in the tooltip.
- • Lighting: Placed items with
LightHsvvalues project light, showing their level and color. Lighting updates only when the brightest value shifts (preventing constant flicker). The legacy ghost block lighting bug is also completely fixed. - • Rain Sound: Simulates rain noise against window panes. Uses a single sound instance across all active window instances to preserve frame rates. Volume scales with real-time rainfall intensity and fades naturally. Can be disabled per style using
disableRainSound. When windows are toggled open, it dynamically blends into ambient weather sound.
Controls & Stagger Modes
Interactions are designed to be smooth and intuitive. You can fully interact with slots even while holding items.
- •
Right Clickon FrameBox to interact with window states - •
Right Clickon an empty slot with an item to place it - •
Right Clickon a filled slot to retrieve your item - •
Wrench + Right Clickon a slot with an item to rotate it anti-clockwise (remembers rotation when removed) - •
Wrench + Sprint + Right Clickto rotate clockwise - •
Sneak + Sprint + Right Clickon any slot to cycle display modes for that entire group - •
Sprint + Right Clickon a slot in Random Mode to shuffle item depth - •
Sprint + Right Clickon a slot in Fine Tune Mode to move the item forward - •
Sneak + Right Clickon a slot in Fine Tune Mode Only to move the item backwards
Stagger Modes Explained
Stagger modes can be applied per group (Group 0, 1, and 2 are entirely independent). The current setup is shown via an in-game Info Box format (Display 1/2/3 : Mode)
- •Straight / Alternating: Clean, structured alignments
- •Random Mode: Changes depth naturally per group. Use interactions to shuffle
- •Fine Tune Mode: Adjust the precise depth of an item per individual slot
- •Smart Hiding: Automatically hides slot group info boxes, perish rates, and stagger modes when stacked on other BEWindowStorageLib windows
Config File Options
Settings are managed via Window Storage Lib. Should now automatically update the config file with the latest settings. I highly recommend installing Config Lib and Auto Config Lib to allow mod settings to be changed in game.
- •Universal Rain on Window Volume: Range 0 (Off) to 10 (Loud)
- •Universal Rain Sound Range: 1 to 64 blocks
- •Universal Animation Speed: 1 (Very Slow) to 5 (Very Fast)
- •Universal Slot Rotation Degrees: 5 to 90 degrees
- •Universal Slot Stagger Strength: 1 (Subtle) to 5 (Strong)
- •Room Safe Opening: False (Default): Standard functions, True: Rooms will stay insulated whether windows are open/closed - all windows need to be closed before changing to work properly
How to add Window Storage Transforms
{
"onWindowStorageTransformByType": {
"*": {
"translation": {
"x": 0.0,
"y": 0.00,
"z": 0.0
},
"rotation": {
"x": 0,
"y": 0,
"z": 0
},
"origin": {
"x": 0.5,
"y": 0.0,
"z": 0.5
},
"scale": 0.0
}
View My Other Mods
Recommended Mods
Project description from Vintage Story Mod DB.
Pick your setup
Window Storage Lib [Legacy] releases for each Vintage Story version.
Choose the version and loader you play, then open the matching release.
1.22.3
1 loader build1.22.2
1 loader build1.22.1
1 loader build1.22.0-rc.10
1 loader build1.22.0-rc.9
1 loader build1.22.0-rc.8
1 loader build1.22.0-rc.7
1 loader build1.22.0-rc.6
1 loader build1.22.0-rc.5
1 loader build1.22.0-rc.4
1 loader build1.22.0-rc.3
1 loader build1.22.0-rc.2
1 loader buildShowing the newest 12 of 19 game versions. Older files are in the list below.
Check the dependencies, then try the file in a copied instance before changing a world you care about.
Recent files
Window Storage Lib [Legacy] versions and loaders
1.2.7
WindowStorageLib_1.2.7.zip
3 Jul 2026
1.2.6
WindowStorageLib_1.2.6.zip
12 Jun 2026
1.2.5
WindowStorageLib_1.2.5.zip
25 May 2026
1.2.4
WindowStorageLib_1.2.4.zip
17 May 2026
1.2.3
WindowStorageLib_1.2.3.zip
8 May 2026
1.2.2
WindowStorageLib_1.2.2.zip
7 May 2026
1.2.1
WindowStorageLib_1.2.1.zip
4 May 2026
1.2.0
WindowStorageLib_1.2.0.zip
3 May 2026
Looking for an older file? The official Vintage Story Mod DB project page is in Resources.