feat(loot): a picked up item says which object it dropped from

Live's AddItemToInventoryClientSync for a picked up drop had
_Metric_Souce_LOT_Int in its extra info on all 2,344 live pickups: the LOT
of the DropClientLoot's source object, 1 when a player was the source
(activity rewards and chests, which drop from the player). DLU sent none.

The drop remembers its source object's LOT when it is registered for the
player, and the pickup sends it. A source object already gone when it drops sends
no key. Package contents keep sending none, as live's did.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aaron Kimbrell
2026-09-30 07:45:56 -05:00
parent a1ee18fce7
commit 898ae024f0
2 changed files with 9 additions and 1 deletions

View File

@@ -20,6 +20,9 @@ namespace Loot {
LWOOBJID id = 0;
LOT lot = 0;
int32_t count = 0;
// The LOT of the object it dropped from (1 when a player was the source), 0 when that object was not found.
// Sent back as the item's source when it is picked up (LootMetrics::sourceLot).
LOT sourceLot = 0;
};
using Return = std::map<LOT, int32_t>;