AutoStorage
Automatically stores inventory items in designated locations. Uses per-map default storage points, supports per-item custom destinations, auto stacking, and optional disposal of excess stock to reduce world clutter.
| Last updated | 2 days ago |
| Total downloads | 88 |
| Total rating | 1 |
| Categories | Mods |
| Dependency string | Nanatsu-AutoStorage-1.0.0 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack
BepInEx pack for Mono Unity games. Preconfigured and ready to use.
Preferred version: 5.4.2304README
OldMarket.AutoStorage
Features
Store items from inventory
- Press Y (all slots) or U (current slot) to move items from your inventory to their assigned storage locations.
- All inventory items except bags and tools are eligible to be moved. Fishing trash, empty boxes, and rotten items are automatically routed to the JunkMan.
- If no per-item storage has been defined, items are stored in the default storage locations (these may include coordinates that are not accessible before certain areas such as the Cellar are unlocked).
- Default storage locations are defined for all maps. You can customize them per map if needed.
Auto-stacking
- Press Home to automatically stack items stored in their assigned locations.
- When multiple partial stacks exist in assigned storage, stacks are consolidated up to the stack limit.
- Perishable items are only stacked together when they share the same remaining days.
Auto-disposal of excess items
- When you auto-stack with Home, items above a configured limit are sent to the JunkMan (only sent there, not sold).
- Only items in assigned storage locations are counted. Items in default storage or on display in the shop are not included.
- Can be used to prevent world slowdowns caused by too many objects.
- Requires prior configuration (a
limits.jsonfile). If many items match the criteria, processing can temporarily become heavy.
Item drop
- Drops all items in your inventory at your feet (excluding bags and tools).
Post-install checklist
- On the first game launch after installing the mod, default storage and material category files are created under
BepInEx/config/OldMarket.AutoStorage. If you do not need customization, you can use them as-is. - Put some items in your inventory, then press Y (all slots) or U (current slot). Confirm that items are stored in the default storage locations even without per-item assignments.
- Press F6 to show markers in the world for the current map’s default storage locations.
Assigning per-item storage locations
- Put the item you want to assign into an inventory slot.
- Stand at the desired storage location in the world and press L (default).
Default storage behavior
When you press Y or U, items in your inventory are automatically distributed to default storage locations as follows:
- Workshop front: foraged items (flowers, etc.), ores
- JunkMan: fishing trash, fishing trophies, items with 0 quantity (empty boxes), rotten products
- Cellar: all other items
- Cellar entrance: items with only 1 day remaining (takes priority over assigned storage locations)
- Example: after closing, send all “1-day-left” items here as a temporary holding area so they are easy to re-display together the next day.
If a per-item storage location has been assigned, it takes priority over the default storage location.
Default storage locations are mapped per map, not per save file.
All maps have initial default storage locations defined, and you can customize them if necessary.
Config
You can change the following settings in BepInEx/config/oldmarket.autostorage.cfg.
-
Key bindings (default)
- L: register storage location (per world + per item ID)
- Y: auto-store all inventory slots (excluding bags and tools / storage priority: one-day-left default storage (if enabled) > per-item storage > default storage)
- U: auto-store only the current slot (uses the same rules as Y, but limited to a single slot)
- Home: auto-stack items in assigned storage and send amounts above the configured limit to the disposal location (requires prior setup)
- B: drop all non-bag, non-tool items in the inventory at your feet
- F6: visualize default storage locations per map (Cellar / JunkMan / Workshop / one-day-left Cellar) and output debug info to the log
- F7: debug function to inspect item IDs in your inventory
-
Use dedicated default storage for “one-day-left” items (default: true)
- true: when storing an item with 1 day remaining, the one-day-left default storage location takes priority, even if a per-item storage location is assigned.
- false: the one-day-left default storage is only used if neither a per-item storage nor a map default storage location is defined.
Customizing default storage locations
- Install OldMarket.AutoStorage and start the game.
- Load a world, move to the position you want to use as a default storage location, and press the debug key (F6 by default).
- Open
LogOutput.logunder theBepInExfolder and look for[AutoStorage WORLD DEBUG]. For example:
[Info :Old Market Auto Storage] ========== [AutoStorage WORLD DEBUG] ==========
[Info :Old Market Auto Storage] [AutoStorage DEBUG] MarketTitle = 'EAST WIND MARKET'
[Info :Old Market Auto Storage] [AutoStorage DEBUG] mapId = 2
[Info :Old Market Auto Storage] [AutoStorage DEBUG] worldKey = '2'
[Info :Old Market Auto Storage] [AutoStorage DEBUG] playerPos = (20.66, 25.78, -3.14)
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Cellar: (-2.49, 28.27, -26.84)
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Junkman: (24.69, 26.55, 1.45)
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Workshop: (-39.53, 27.73, 9.02)
[Info :Old Market Auto Storage] [AutoStorage DEBUG] OneDayLeftCellar: (-2.49, 28.27, -25.98)
[Info :Old Market Auto Storage] ==============================================
-
Open
OldMarket.AutoStorage.defaults.jsoninBepInEx/config/OldMarket.AutoStorage. -
In
OldMarket.AutoStorage.defaults.json, edit the block whosemapIdmatches the value shown inLogOutput.log(for example: 0 = TropicalIsland, 1 = EastTown, 2 = RomanTown). -
Apply the
playerPosvalue fromLogOutput.logto the entries you want to change as default storage locations.- You can define only some of the default locations (for example, only JunkMan) and leave the rest unchanged.
-
Start the game and press F6 to confirm that the default storage markers have been updated. If you want to reset everything back to the original defaults, delete
OldMarket.AutoStorage.defaults.json.
Auto-disposal settings
Only items stored in assigned storage locations are affected. To enable auto-disposal:
-
Check the bundled sample file
-
The following sample file is included:
BepInEx/plugins/OldMarket.AutoStorage/Samples/OldMarket.AutoStorage.limits.json
-
The sample configuration will send items to the disposal location when:
- normal fish or brown fish exceed 50 units in storage, or
- whiskey exceeds 100 units.
-
Copy this file to
BepInEx/config/OldMarket.AutoStorage/to use it as-is.
-
-
Identify the target items (itemId)
- Put the item you want to configure into your inventory and press F7.
- Open
LogOutput.logand look for[AutoStorage INVENTORY DEBUG], for example:
[Info :Old Market Auto Storage] ========== [AutoStorage INVENTORY DEBUG] ==========
[Info :Old Market Auto Storage] [AutoStorage DEBUG] CurrentSlotIndex = 0
[Info :Old Market Auto Storage] [AutoStorage DEBUG] CurrentSlot: itemId=1762012563854, amount=1, cost=1200, dayCounter=0
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Current ItemSO: type=BagSO, isBag=True, isTool=False, name='medium_bag', basePrice=1200, stackSize=1, id=1762012563854
[Info :Old Market Auto Storage] ---------- ALL SLOTS ----------
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Slot[0]: itemId=1762012563854, amount=1, cost=1200, dayCounter=0, ItemType=BagSO, isBag=True, isTool=False, ItemName='medium_bag'
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Slot[1]: itemId=1734622959366, amount=1, cost=22, dayCounter=11, ItemType=ItemSO, isBag=False, isTool=False, ItemName='copper_stone'
[Info :Old Market Auto Storage] [AutoStorage DEBUG] Slot[2]: itemId=1760108909804, amount=1, cost=2, dayCounter=13, ItemType=ItemSO, isBag=False, isTool=False, ItemName='stone'
[Info :Old Market Auto Storage] ==============================================
-
Edit
limits.json- Copy the sample file to
BepInEx/config/OldMarket.AutoStorage/and modifyitemIdand the limit quantity. - Remove any entries you do not need.
- Copy the sample file to
-
Test
- Start the game and press Home (default). Items above the configured limits will be sent to the disposal location.
Generated and bundled files
-
Bundled files (under
BepInEx/plugins/OldMarket.AutoStorage/Samples)-
OldMarket.AutoStorage.limits.json- Sample configuration for auto-disposal.
-
OldMarket.AutoStorage.defaults.json- Sample default storage data (matches the file automatically generated on first launch).
-
-
Generated files (under
BepInEx/config/OldMarket.AutoStorage)-
OldMarket.AutoStorage.defaults.json- Default storage location data. Generated on first launch; coordinates can be customized.
-
OldMarket.AutoStorage.[mapId].json- Per-map data for assigned storage locations. Created the first time you register a storage location in that map (not per save file).
-
OldMarket.AutoStorage.materialCategories.json- List of items stored at default JunkMan / Workshop front locations (customizable).
-
Auto-disposal configuration files are not generated automatically. If you want to use auto-disposal, copy the sample file and test your setup before using it in a real save.
Exceptions
- Bags (to prevent accidental assignment)
- Tools (e.g. fishing rods)
Known issues
-
Auto-disposal (when using a configuration file together with auto-stacking)
-
If the number of target items is very large, the game may briefly freeze or stutter.
- Fixing this would require major changes, so this is the current specification.
-
Planned features
- Color-coded markers for default storage locations