Open IrateRedKite opened 6 months ago
There's an interesting bit of code in Hk:Player:AddEquip which adds the equipment to a "shadow list" that is compared to the player's equipment list to ensure they aren't cheating. I'm guessing that something is preventing the tractored in loot from being added to this list.
There's an interesting bit of code in Hk:Player:AddEquip which adds the equipment to a "shadow list" that is compared to the player's equipment list to ensure they aren't cheating. I'm guessing that something is preventing the tractored in loot from being added to this list.
@oliverpechey Interestingly, this seems to be triggering again when I invoke IEngine__ShipDestroyed
in a plugin I'm working on. It happens very consistently, so it's possible the issue lies with the hook and not the death penalty plugin? Not many plugins actually use this hook, player ones seem to leverage the kill message rather than the onDestroyed hook.
Please ignore this, in my sleep-deprived state I loaded my testing setup with deathpenalty.dll, the issue does indeed seem to be confined to the plugin.
Am seeing reproducible behaviour in our mod where clients are kicked 30-60 seconds after tractoring loot from a killed NPC with a
Item is not sold on base
message. I've tested this pretty extensively and it only seems to occur when deathpenalty.dll is running on the server. My guess is that FLHook is putting FLServer into an updated state when it shouldn't be and the server thinks there's a discrepancy between what the player should have and what they do have.@Aingar has speculated that this relates to
ShipDestroyed()
being called when it shouldn't be, the issue requires some investigation to figure out the root cause. Debug logs unfortunately do not reveal anything in this instance