You are viewing a potentially older version of this package. View all versions.
Goldenrevolver-Quick_Stack_Store_Sort_Trash_Restock-1.4.5 icon

Quick Stack Store Sort Trash Restock

Quick Stacking, Sorting, Trashing and more in one cohesive package

Date uploaded 5 months ago
Version 1.4.5
Download link Goldenrevolver-Quick_Stack_Store_Sort_Trash_Restock-1.4.5.zip
Downloads 52959
Dependency string Goldenrevolver-Quick_Stack_Store_Sort_Trash_Restock-1.4.5

This mod requires the following mods to function

denikson-BepInExPack_Valheim-5.4.2202 icon
denikson-BepInExPack_Valheim

BepInEx pack for Valheim. Preconfigured and includes unstripped Unity DLLs.

Preferred version: 5.4.2202

README

This mod attempts to be the one stop inventory management mod, combining various features into one cohesive package, while adding UI elements in addition to hotkeys as well as compatibility for Equipment and Quick Slot mods and localization.

This mod allows you to

  • quickly stack your items into the current or nearby chests
  • quickly restock the items you want (like food and ammo) from the current or nearby chests
  • store all items into the current chest (complementary to the 'take all' button)
  • sort the player inventory or the current chest by configurable criteria
  • trash the currently held item or quick trash all previously trash flagged items in the player inventory

All these features are controlled by the option to favorite items or slots similar to games like Terraria.

There is also an extensive configuration system, that applies changes immediately. I highly recommend using an in-game Configuration Manager mod. I put a lot of effort into the descriptions of the config options, so if you have any questions, please read them.

1 - Favoriting

Favoriting is the main draw to combine all these features into one mod. By holding the Favoriting Key (default: Alt) or by using a new button, you can left click on an item to favorite it, or right click to favorite the slot it is in. This prevents most features of this mod from affecting it. No accidental quick stacking, sorting, storing or trashing. The favoriting state is shown with a custom colored border around the slot.

If you are actively using Favoriting, I recommend changing the config option 'OverrideHotkeyBarBehavior' in the 'General' section from 'NeverAffectHotkeyBar' to 'UseIndividualConfigOptions'.

image

2.1 - Quick Stacking

You are probably already familiar with Quick Stacking. With one button press, every non favorited item possible is put into the current or nearby chests that already contain this kind of item.

This implementation is based on the original Quick Stack mod by damnsneaker, who gave me permission. This mod has a smarter algorithm for accessing multiple containers than the original (even if it's not threaded like Quicker Stack, but that prevents the issues that mod is currently facing).

image

2.2 - Restocking

Restocking is like Quick Stacking but in reverse. Quickly refill your arrows, your food or your one emergency stack of wood from the current or nearby chests. With one button press, restocking tops off (or optionally partially refills) the stack size for each item in your inventory that you want to restock, which can easily be configured (for example based on item type or favoriting status).

image

2.3 - Area Quick Stacking and Restocking

This mod uses improved checks for multiplayer compared to most Quick Stack mods, so you can't quick stack into or restock out of chests that are currently opened by someone else. Still, this mod cannot wait for network requests when blocking chests as in use (then everyone would need the mod installed), so it does have its limitations, especially with high latency. The ship container has even been excluded from area stacking as a precaution, as lots of players open and close it in rapid succession while they wait for their friends to set sail.

If you want to get rid of those limitations, this mod is compatible with the mod Multi User Chest. If you are not using it, then area quick stacking and restocking in multiplayer is disabled by default, but you can simply enable the config setting 'AllowAreaStackingInMultiplayerWithoutMUC' if you are comfortable with it.

All area quick stacking and restocking config settings are also server synced, but it is not required for every user to have the mod installed.

3 - Store and Take All

This simply adds a 'Store All' button to the chest overlay which stores all non favorited items (it can even store and unequip equipped items if you configure it that way).

The logic of the 'Take All' button of chests (excluding tomb stones for compatibility) was also updated to work complementary and symmetrically to 'Store All'.

4 - Sorting

Sorting is based on the popular mod Inventory Sorting by end360 (with permission). It adds a 'sort inventory' and 'sort container' button that respects favoriting.

There are various different sort criteria to choose from:

  • category (bunches up similar item types into categories like armor, weapons, etc)
  • internal name
  • translated name
  • weight
  • value

Ties are always broken by internal name, quality and stack size. You can also sort automatically when opening the inventory or a container.

image

5 - Trashing and Quick Trashing

Trashing is based on the amazing mod Trash Items by virtuaCode (with permission). It adds a trash can UI element to the inventory screen to quickly trash any non favorited item.

This mod also adds Quick Trashing. By holding the Favoriting Key while you attempt to trash an item, you instead 'trash flag' this kind of item, similar to favoriting. When you click on the trash can without holding an item, an option to Quick Trash will appear allowing to trash all trash flagged items in your inventory.

image

If you are scared of trashing the one stack of an item that you usually consider trash flagged, consider putting it in a favorited slot.

Compatibility

Multi User Chest:

  • Due to the continued efforts of the author MSchmoecker, the newest version of 'Multi User Chest' and my mod are now compatible. Be aware that sorting a container, that someone else is already using, only works if that user also has my mod installed.

This mod has explicit compatibility for the following Equipment and Quick Slot mods:

Comfy Quick Slots:

  • My mod will respect both the equipment slots and the quick slots, and intentionally allows restocking the quick slots. 'Take All' will put items into the quick slots though, but that is intended functionality of 'Comfy Quick Slots'.

Azu Extended Player Inventory:

  • My mod will respect both the equipment slots and the quick slots, and intentionally allows restocking the quick slots. The buttons from my mod will move to not overlap if the separate equipment slot UI is enabled.

Odins QOL and Odins Extended Inventory:

  • My mod will respect both the equipment slots and the quick slots, and intentionally allows restocking the quick slots. The buttons from my mod will move to not overlap if the separate equipment slot UI is enabled.

Aedenthorn's Extended Player Inventory:

  • This mod behaves identically to AzuEPI, OdinsQOL and OdinsExtendedInventory, because they used Aeden's work as a base. If you use this, be sure to download this mod from Nexus and not from Thunderstore, as those are unofficial irregularly updated versions.

RandyKnapp's Equipment and Quick Slots:

  • The slots from this mod are not actual inventory slot, so my mod cannot affect them in any way (which is good). Due to that, restocking the quick slots is not possible though. The buttons from my mod will move to not overlap with the equipment slot UI and while using a chest the small Quick Stack and Restock buttons are hidden if you have quickslots enabled (because there is no room for them).

Better Archery:

  • My mod will respect the slots this mod reserves for the quiver feature (all 16 of them, even if it only uses 3), and intentionally allows restocking the arrows. 'Better Archery' also changes how item adding, including 'Take All', works, so please be aware that that is not my doing.

Incompatibility

Stacks of items with custom data, like from Jewelcrafting, Blacksmithing or Cooking, are excluded from getting merged by sorting or getting restocked, but otherwise behave normally.

The container buttons from this mod are intentionally hidden when using certain custom containers (like the jewelry bag from Jewelcrafting), because my mod cannot affect them anyway.

The UI from this mod is currently incompatible with Project AUGA, but compatibility is being worked on. Hotkeys should work though.

This mod is incompatible with Trash Items because it is included in this mod.

Localization

This mod includes a translation system for all ingame display texts (not the config menu). Currently English, Chinese, Russian, French, Brazilian Portuguese, Polish, Swedish, Korean and Italian are supported.

For minor edits, you can override any display text in the config. If you want to translate everything to your native language, you can take the QuickStackStore.English.json as a template and name your file QuickStackStore.<language>.json, where <language> needs to be the folder name of the base game for your language. When you are done or need help, please reach out to me, so I can add it to the mod for everyone.

Thank you to everyone who provided a translation:

The Chinese translation was provided by Tiomer.
The Russian translation was provided by Opik7.
The French translation was provided by cyouinlan.
The Brazilian Portuguese translation was provided by kaiqueknup and updated by the YggBrasil team.
The Polish translation was provided by ViRooz.
The Swedish translation was provided by DeathDaisy.
The Korean translation was provided by hanawa07.
The Italian translation was provided by Marcuz08.

Source code available on github: https://github.com/Goldenrevolver/QuickStackStore If you want to support me, check out my ko-fi: https://ko-fi.com/goldenrevolver

CHANGELOG

Changelog

1.4.7

  • Made sure that when the favoriting borders are spawned no child elements of it are copied. This is the same fix AzuAutoStore applied and once Recycle_N_Reclaim also applies it, it fixes seeing borders on items that are no longer favorited.

1.4.6

  • Fixed a visual glitch with the favoriting borders when using the mod Recycle_N_Reclaim (thanks for the heads up, Azu)

1.4.5

  • Fixed critical bug when using Adventure Backpacks with 'AllowAreaStackingToNonPhysicalContainers' which deleted other players if you did an area stack/restock close to them (possible since version 1.4.0)
  • 'AllowAreaStackingToNonPhysicalContainers' is no longer required to detect Item Drawers
  • Added Korean translation, provided by hanawa07
  • Added Italian translation, provided by Marcuz08

1.4.4

  • Fixed trash can not reacting to clicks when using both AzuEPI 1.3 and Jewelcrafting
  • Replaced controller key check with a more modern version for better compatibility
  • Reenabled controller key hints that were disabled in 1.3.9 as their base game performance has since been improved

1.4.3

  • Added full compatibility for AzuEPI 1.3 using its API (thank you, Azu!)
  • Fixed backwards compatibility for AzuEPI 1.2 due to config type change

1.4.2

  • Update for current public release 0.217.24
  • Added option to hide the base game 'Place Stacks' button (enabled by default)
  • Added option to override the behavior of quick stacking by holding the open button on a chest to use the modded quick stacking logic (enabled by default)
  • Fixed layouting problems with the base game 'Place Stacks' button, if it's not disabled

1.4.1

  • Update for current public release 0.217.14 (thank you to JuniorAndria for the pull request on github)

1.4.0

  • Update for current public release 0.216.9 (thank you to Mistermycelium for the pull request on github)
  • Added config option to exclude non player built containers (like dungeon chests) from area quick stacking/ restocking (enabled by default)
  • Added config option to exclude containers without a physical build piece (like backpacks) from area quick stacking/ restocking (disabled by default)
  • Edited the display config option for every inventory + container button pair (quick stack, restock, sort) to allow disabling both of them (I thought I added this already)
  • Fixed the sort inventory button not respecting the BothButDependingOnContext config setting
  • Updated simplified chinese translation, provided by taotao
  • Made sure controller key hints don't even get spawned, instead of immediately getting disabled, to not trigger another base game visual bug (which affects other mods that spawn buttons too)

1.3.10

  • Fixed controller key hints for the trash button not being completely disabled, causing a small visual bug (independent of whether you used a controller or not)

1.3.9

  • Recompiled for newest version of BepInEx. Temporarily disabled the new controller key hints completely, as they caused a significant fps drop when opening the inventory

1.3.8

  • Rebuilt for 0.214.2, adapted to new controller key hints

1.3.7

  • Fixed an error and a warning when using Auga (still only supported using keybinds)

1.3.6

  • Fixed repeated log messages about adding a canvas component multiple times

1.3.5

  • Fixed area quick stacking potentially causing issues when affecting a container at the edge of the loading range due to a very high range setting
  • Added Swedish translation
  • Updated Polish translation

1.3.4

  • Added compatibility for AzuExtendedPlayerInventory
  • All trashing features are now disabled when using RecyclePlus
  • The ingame config menu now changes the display of settings that are overridden for compatibility reasons
  • Updated BR portuguese translation

1.3.3

  • Full controller support (including keybind hints and favoriting)
  • Fixed ServerSync messing up button layout
  • Fixed trash hotkey doing quick trash and vice versa (introduced in 1.3.1)
  • Added French, BR Portuguese and Polish translation
  • Added config template feature
  • Added 'Take All' and 'Store All' keybind

1.3.2

  • Non public testing version of 1.3.3

1.3.1

  • Multi User Chest support (requires MUC 0.4)
  • Area quick stacking and restocking in multiplayer can now be disabled when not using MUC (default). Ships are excluded from area quick stacking in multiplayer without MUC
  • Area quick stacking and restocking buttons are now hidden when their range is set to zero, or when disabled by the above config setting
  • Added ServerSync for area quick stacking and restocking config values (it's not required for everyone to use the mod)
  • You can now set custom restocking stack size limits (individual configs for ammo, consumables and general items)
  • Converted all KeyCode configs to KeyboardShortcut configs (including backwards compatibility), fixed default restock keybind
  • Improved translation system to read json files (or internal files as a fallback)
  • Fixed loading translations too early (better compatibility)
  • Added Russian translation by Opik7
  • The 'Take All' button changes no longer break certain custom containers (like jewelry bags)
  • The new container buttons are now hidden when a custom container is open that is not supported (like jewelry bags)
  • Improved start up performance by 300%

1.3.0

  • Non public testing version of 1.3.1

1.2.5

  • Stacks of items with custom data can no longer get merged by sorting or get restocked to improve compatibility. Overhauled translation system, added chinese translation by Tiomer. Option to override the Take All button label

1.2.4

  • Fixed quick stacking sometimes not starting since version 1.2, because the game thinks there is a held item when there isn't. "Quick stack only one item" feature disabled until better implementation is found

1.2.3

  • Increased performance for quickstacking when using other mods that listen for Inventory.Changed calls (by reducing the amount of calls, related: xkcd.com/1691)

1.2.2

  • Reverted 1.2.1 due to logic error

1.2.0

  • Replaced favoriting mode hotkey with favoriting mode UI button (disabled by default, just like the old hotkey)
  • Added way to quick stack only one item by dragging it onto the mini quick stack button
  • Fixed compatibility with SmarterContainers and Backpacks by excluding my changes to the 'Take All' Button, and added config option to do this regardless of mod setup for compatibility
  • When disabling quick slots in EAQS the mini buttons will now revert to being horizontal rather than vertical
  • Sorting stack merging now respects quality of modded items (base game stackables don't have quality)
  • Lessened likelihood of issue with the trash can UI button when using Better UI Reforged and changing display configs while ingame (the proper fix will be included in Better UI Reforged)
  • Flagged 'Multi User Chest' as incompatible until they add compatibility for this mod (which we are working on)

1.1.1

  • Fixed trash button not being clickable for some people. Added config options for auto sorting and favorite toggling

1.1.0

  • Compatibility for Better Archery, even better compatibility for other equipment and quick slot mods (see compatibility section), new config options for debugging

1.0.3

  • Fixed config option for quick stacking trophies together

1.0.2

  • Sorting now respects ComfyQuickSlots. QuickStack and Restock hotkeys no longer require the inventory to be open

1.0.1

  • Fixed sort merging leaving empty slots after removing stacks. Renamed 3 config options that were double negatives

1.0.0

  • Initial release