PersonalLogistics
This mod is an inventory management system backed by your logistics network. Features:
Open the request management window using this button
Recycle items from inventory by dropping them into the Recycle window. To disable, set the ShowRecycleWindow
config property to false. Items added here will first go the local
Buffer (details below) and then will be sent to the nearest Logistics Station with capacity. Of course, if you try and recycle an item you're currently requesting, it's just going
to come back to your inventory.
Note that items that have no Logistics Stations will not be removed from Recycle area
Below is an example of how you would configure the mod to always keep 5 stacks of Plane smelters in inventory and also to send extra Plane smelters to logistics stations (when you have more than 5 stacks)
Example showing how to keep crude oil out of your inventory completely.
Trash can be sent to logistics network also (disable using SendLitterToLogisticsNetwork config property)
Numerical indicators on item icons in Requests window let you quickly see what is currently requested/banned.
Q: I hate these new indicators, they look terrible
A: That's not really a question, but you can disable them by opening the legacy UI, going to Config section and
disabling 'showAmountsInRequestWindow'. Or edit the config the old-fashioned way
Q: What does the red '0' next to iron ore mean?
A: That item is banned, not allowed to be in your inventory. It will be immediately auto-recycled
Q: Ok, so why does copper ore have a red '1' next to it?
A: That item is not being auto-requested, AND anything more than 1 stack of it in your inventory it will be auto-recyled
Q. In the example above why doesn't titanium glass have a number next to it?
A. That item is not managed by the Personal Logistics System, it's ignored
Q. All right, what about regular glass, does the blue '1' next to it mean that 1 stack of that item is kept in inventory?
How do I know what the max allowed for that item is?
A. Yes, 1 stack will be kept in your inventory, but there's only so much info you can convey with an overview UI like this.
To see the auto-recycle amount you have to click the item for more details
Q. These questions are dumb
A. Check the contact info at the end of this readme and send in smarter ones?
This mod does not alter save games in any way, and as of the latest release available on 2021-Dec-02 does not trigger the game's abnormality checks so should not affect achievements or milestones. Its intent is to improve QOL and a good deal of effort has been taken to respect the game's built-in costs for item transportation. Logistics vessel speed is the limiting factor on item delivery (as well as warper availability) so leveling up vessel speed should provide noticeable increases in transportation time
Requested items are loaded into a local Buffer which requests 1 logistic vessel capacity worth of an item at a time. This is done to save on warpers & energy needed by vessels for transporting items. It also allows for faster loading when laying down blueprints.
The Buffer is persisted locally next to your game save (using DSPModSave) so that your items won't get lost if you load up a different save.
To clear your local Buffer of an item type, you can set that item to be neither requested nor banned (Request 0, Recycle Inf). The Buffer won't be cleared immediately, so if you are uninstalling the mod,
make sure to look at the Buffered items window (click Buffered
section in the settings window) to make sure everything is returned to either your inventory or to logistics stations.
By default, littered items will be sent to the closest logistics station with capacity to hold them. This can be disabled using the SendLitterToLogisticsNetwork config property. Litter, like banned items are first sent to the local Buffer where they will be automatically sent to stations (provided the item type is not currently requested).
Littered items are not completely intercepted to avoid affecting the game's responsiveness. Instead, when littered items are detected a task is created that gets processed later. That task will only cleanup litter that is less than 1km away from the player, (so basically on the local planet). Because of this, some litter may be missed.
In some cases, warpers and energy from the Mecha will be used. This happens when the nearby source for an item is a station with low energy or no warpers. When this happens a UI message will be shown.
The plugin can be configured to automatically keep your Mecha's fuel chamber filled. This must be enabled in the Config section (Add fuel to mecha fuel chamber). Which items are used are decided in the using these priorities (highest priority first)
Similar to adding fuel, the mecha's supply of warpers can be kept topped-off using this setting in the Config section of UI. This will only be done automatically if the logistics network has warpers available and the requested minimum for warpers is at least 1 (can't be banned or unset).
The Station Request Mode
config option can be used to change which stations will be used for supplying your mecha's inventory. The different modes are
All
- Takes items from any station that has it, regardless of supply or demand. Closest stations have highest priorityAnySupply
- Takes items from any station with item set to, "Supply" (PLS) or "Remote Supply", "Local Supply" (ILS)IlsDemandRules
(default) - Follows the same rules as a nearby ILS with Remote Demand/Local Demand set. Will not take from PLS on other planetsPlanetary
- Only take items from supplying stations on the local planetNote that pre-2.2.1 All
was the default. The change to the default value only affects new users since it is stored
as a config property which does change unless you delete the config file
Planetary
request mode is for players who just want to automate the process of taking items from logistics stations, so it has a few additional options
Unrestricted
- When you go to a new planet, buffered items can still be used to refill inventory. So, as you use items on the new planet, your inventory will be replenished from your buffer until empty OnlyLocallyAvailable
- When you go to a new planet, buffered items can still be used to refill inventory, but only if the item is also available on the new planet ReturnBufferOnDepart
- When you leave a planet, all buffered items are returned to the logistics network To make it easier to understand what is happening with your requested items, an area on the left side of the screen shows the status of each requested item that
is being delivered. This can be disabled by opening settings from the Request window and disabling ShowIncomingItemProgress
from the config tab
There are a few different messages depending on where the requested items are in their journey to you.
Copper ingot (7) in-transit to local buffer, ETA 25s
Loading Artificial star (2) from buffer to inventory
- Artificial stars that are already in your Buffer will be added to your inventory shortly, usually less than 5 seconds Failed to load Artificial star (7) from Logistics Stations
The mod was not able to find any stations providing Artificial stars. Check the item tooltip to see how many are available in the network. If the tooltip shows: "Supplied: 0" but "Total Items: X" where X > 0 then the item is probably in a PLS on a remote planet Shipment of Iron ingot delayed due to lack of warpers
- no warpers in inventory or in supplying station, item can't be transported yet Shipment of Iron ingot delayed due to lack of available energy
- the station supplying the ingots didn't have enough power available to power the drones and Icarus was too low on power also Note that the Failed to load
message is only shown periodically for each item type, and won't appear if it was able
to find any of the item (even if it's less than the requested amount). If these failure messages are too annoying, they
can be disabled using the HideIncomingItemFailures
option from the config window. Also, if these items are only available in a PLS on a remote planet
then you'll have to fly to that planet before the items will be loaded. Add them to ILS to make them available everywhere
Some work has been done to support localization. Sadly the only translations right now come either from the game (by re-using labels that the game uses) or from Google Translate. This is very much a WIP so please send along any recommendations for better translations. At the moment, the only languages supported by the game are EN, CN & FR.
This mod has been updated to be compatible with Nebula Multiplayer Mod. Note that it relies on the host to store the client's state so the first time a client connects they won't have any requested items set up. Note: Nebula Multiplayer mod itself is NOT required. Only its API plugin is a dependency
This mod requires BepInEx to function, download and install it first: link
First install the CommonAPI mod. Next install
the DSPModSave mod.
Next, install the Nebula Multiplayer Mod API mod
Then, extract the archive file and drag PersonalLogistics.dll
and pui
into the BepInEx/plugins
directory.
Click the Install with Mod Manager
link above. Make sure dependencies are installed, when prompted
Update: update onTechUnlocked signature to match latest game version (0.9.26.12891)
Update: add UI to disable some fuel items from being added to mecha fuel chamber to Request Window
Bugfix: attempt to handle case where main player object becomes inactive Bugfix: fix error shown on host when client requests item that is not available in any reachable stations
Bugfix: Fix icon
Update: Add item icons to incoming item messages
Bugfix: Fix for errors with deleted stations
Bugfix: Attempted fix for items in PLS not being loaded
Bugfix: Fix issue where some items were not available in network (Failed to load X from logistics stations)
Update: Add more packets to get Nebula working again for clients. Update: Lower minAge of buffered items to 20 seconds to make recycling happen faster
Update: Allow disabling item network status tooltips (showItemTooltips
)
Bugfix: Fixed issue where requested items could get stuck in the "Cost Calculation pending" state (thanks Stylisher for bug report)
Update: Updated CommonAPI TabSystem usage to use new public methods
Update: Added ability to show extra tabs on request pages for mods that add extra tabs for items
Bugfix: Fixed issue with banned in-hand items being duplicated in buffer (thanks KrazePendragon for report)
Update: Added auto-cancellation for inbound requests that are stuck waiting on warpers Bugfix: Made escape key work like other UI Windows. Now settings menu won't be shown if Escape is hit with request window open
Bugfix: Fixed issue where orbital collectors would be used as supply despite 'Never Use Mecha Energy' config being enabled
Bugfix: Fixed bug with auto-refueling. Thanks to nirahiel for bug report. Big oops, very sorry
Bugfix: Fix situation where a store task could be retried indefinitely
Bugfix: Another tweak to IlsDemandRules
Bugfix: Resolved bug introduced in 2.7.1 causing shipping failures (thanks DocHogan for report) Resolved bug where ILS stations can ship to player on same planet even with local demand/remote supply
Bugfix: Fix issue with exception thrown while displaying item tooltip (thanks sparky#1253 for report)
Feature: Added support for proliferator points on items delivered to inventory. This is still a bit of a work in progress so please let me know if you see issues. Bugfix: fixed incoming items area position for clients with reference height set to less than 1000 (thanks Cringely for report)
Bugfix: Band-aid patch for mysterious NRE on startup (thanks Issytia for report)
Bugfix: fix UI bug with incoming items blocking interaction with world (thanks sparky#1253 for report)
Update: Update to work with game version released 20-Jan-2022 (0.9.24.11187), make sure to update to CommonAPI 1.3+
Bugfix: Fixed issue where warper calculation was not honoring new config property for in-system planets
Bugfix: Fixed issue where exception would be thrown when quitting one game and creating another (thanks Valoneu for report)
Bugfix: Fixed issue where 'New Text' is shown when game is started with ShowIncomingItemProgress disabled (thanks Valoneu for report)
Feature: Added config for minimum stacks to load from network. Open config tab of legacy UI to configure Feature: Added configs to disable using mecha energy & warpers for shipping costs. Use with caution, especially the warpers one. Open config tab of legacy UI to set up Bugfix: Fixed issue where 'Shipment delayed' messages would be shown before shipping costs were attempted the first time
Feature: Added support for the Nebula Multiplayer mod. This worked previously, but the item buffer and requested items would not be saved between sessions for clients
Feature: added messages to the incoming items area for items that are being loaded from the Buffer into the inventory, see the 'Incoming Item Notifications' section for more detail
Feature: added numerical indicators to Requests window icons to make it easier to tell what is requested/banned at a glance
Bugfix: fixed issue where item icons would not appear in the recycle area (Thanks Speedy on Discord for report)
Bugfix: fixed a longstanding issue where the nearest station would be used to compute costs even if most of the items are actually coming from other, more distant stations. Now the station that supplies the most items in the shipment is used for computing the cost. (Thanks Speedy on discord for bug report) Tweak: adjusted incoming item text to be a little easier to read against light colored backgrounds
Feature: added play/pause button to request window Refactor: overhauled state persistence to a more robust approach
Bugfix: fixed issue with loading save where actions for items in recycle area were persisted
Feature: switched desired inventory state to be persisted with game save, removed support for copying state from another seed. Added persistence for recycle window contents
Feature: Added popup confirmation before the first time trashed items are recycled automatically.
Features:
Bugfix: handled destruction of logistics station while items are being removed from it Bugfix: fixed issue where recycled item icons were not appearing (blank white square)
Bugfix: resolved issue where request window would not open until after inventory was first opened.
Bugs? Contact me on discord: Semar#1983 or create an issue in the github repository.
Icon credit, B.E. Cimino