Not sure if issue is with Backpacks or ItemRetriever, but with toggles Gather: Existing, Retrieve: On ... normally you can reload weapon with ammo stored in backpack etc. I could have swore it worked last month just fine, but this month (probably updated related) I noticed it only works if you re-toggle those settings, so on game load you need to turn them off, then back on and it works with ammo in BP. I suspect this would also be an issue with anyone trying to build a base using BP resources after loading into game. I've just toggled it off, back on again so assume others might be doing the same but hoping an automated resolution could be made. :)
Weapon reload issue with Item RetrieverSolved
I'm aware of some usability issues with the retrieve capability. Some of these issues are explained in the plugin documentation.
First, players cannot retrieve items when their backpack is not loaded. A player's backpack does not load until it is accessed (e.g., when it is opened). This is an intentional performance optimization in Backpacks to avoid loading data that may not be used. When the server saves, the backpacks of all disconnected players are automatically unloaded, so most of the time when a player connects to the server, they will find that their backpack is unloaded, unless they were connected a very short while ago and had opened their backpack during that previous session. In order to help players be aware of whether their backpack is loaded, the Backpack Button addon plugin will only show the Gather/Retrieve indicators on the button UI while the backpack is loaded. I highly recommend installing that plugin, enabling the Gather/Retrieve indicators (on by default), and informing your players about this so they can pay attention to the UI. In the future, I will consider adding an optional feature to Backpacks to automatically load players' backpacks when they connect to the server.
Second, ammo cannot be retrieved from pages that have not been accessed since the backpack loaded. For example, if ammo is on page 2, and the player has only opened page 1 since connecting to the server, the ammo on page 2 cannot yet be retrieved. This is partly due to a performance optimization in Backpacks where pages that have not been accessed use only virtual representations, and virtual representations do not allow some operations (most notably reloading) due to limitations in Item Retriever and Rust itself (it can be done, but will add complexity and has performance consequences that would have to be mitigated).
Third, when a players' backpack loads (e.g., when they open it for the first time during a play session), the plugin does not immediately send a network snapshot to the client to inform it about the additional items, so those items won't show in the craft menu, nor will they appear in the reload options. In other words, retrieve is indeed on and will function server-side, but the client's inventory data is stale, so any operation that requires the client to be aware of the items (e.g., crafting, reloading) will not work. In many cases, that is fine because inventory snapshots are sent to the client due to many events, such as when there is any change to the inventory contents, or when the player activates a belt item (e.g., when they pull out or holster a weapon). As soon as a vanilla event triggers an inventory snapshot to be sent to the client, the client will be made aware of all of the items in their backpack. It is not necessary to toggle retrieve off and on, but doing so does cause Backpacks to send an inventory snapshot to the client, which is why you found it to be a successful mitigation. In a future version of Backpacks, I will make it automatically send an inventory snapshot to the client when the backpack is opened, to eliminate this stale inventory issue.
Very detailed breakdown, appreciate the time you took to inform me of the functionality... makes sense, and thank you for looking into additional improvements. It's a fantastic plugin, my members love it. I will take a little of this information you provided, and explain it to my players in Discord as a PIN for our support channel. :)
Merged post
Very detailed breakdown, appreciate the time you took to inform me of the functionality... makes sense, and thank you for looking into additional improvements. It's a fantastic plugin, my members love it. I will take a little of this information you provided, and explain it to my players in Discord as a PIN for our support channel. :)
I implemented improvements for stale inventory data in v3.12.0.
Locked automatically