How to make specific player drop item

yes, I would like the killer to be granted the seed, which is something easily doable, but I want it ONLY if the other player had the seed
If there is a way to do this with only a knockout manager this would be better.

1 Like

so I have changed the system to do this:
lifecycle device: on player knocked out > run check for green seed > if check passes > run on channel “deactivatemanager” + wire to activate knockout manager
manager settings, deactivate when channel “deactivatemanager”
on the manager I have set scope to “player”
this does not seem to work, because after this every player drops the seed

I’ve tried your suggestions, nothing has worked yet. Any more detail?

Use a player scoped triggerloop activated by a lifecycle → relay. The triggerloop runs a checker that checks to see if the amount of the seed is greater than one. If check passes activate a knockout manager. If check fails have it deactivate.

I’m not sure how to do this or what this means. Could you elaborate on the process?

Are you confused on the word triggerloop?

Its a more memory efficient version of a repeater.

Check it out

Welcome to the community forums @bob6000!

Do you want the seed on the ground?
or is it okay for it to be deducted from one’s inventory and added to someone else’s

so I have tried this, but it means that it will only deactivate the second time after somebody has died, meaning that the person who has it will drop it, then the next person who dies, and then nobody will drop it until somebody picks it up and the process repeats again.

so with deactivating and reactivating knockout managers I could get it to drop, but Ive tried this numerous times each with problems. At this point I’d be fine with the other player being granted it.

I’ve looked at this guide as well, but I’m not sure I understand it fully. It looks to me like there is a step missing, or it is an incomplete guide. But i’m not trying to do that anyway, I want just the seed to drop.

1 Like

My current setup is a lifecycle device which has a wire “if player knocked out” > “run check” which checks for a green seed. “check passes” > “activate knockout manager” and the manager is set to drop a green seed on the players death spot. The lifecycle device is also hooked up to an identical checker with a wire to the knockout manager which says “check fails” > “deactivate knockout manager”
this is because you cannot have two wires between the same two objects, so I could not have two wires from the same checker to the same manager, one for activating and one for deactivating.
Currently, If I open up multiple test tabs and kill the boss on one, I gain the seed. Then when somebody kills me, I drop it. Then when that person picks it up and somebody kills them, they do not drop it.

I see your error and will elaborate but it might take awhile to type so i will just edit this post

Your knockout manager only activates after the a player is knocked out not after they gain the seed. If they knockout the player with the seed it will be dropped and then they will run a check for the seed immediately before the player can in game pick it up. This check will see that they do not have the seed and won’t activate the manager.

To fix this you are going to want to run a check whenever the amount of the seed changes. To do this get an inventory item manager. Have it manage your desired seed. Now get a property. In its settings make it a number property with player scope. Name it whatever you want, something like Green Seed Medallion. Go back to the inventory item manager and link it to that property you just made. Once you do this wire the property to the checkers. Now this will work regardless

you said that the check will return false because the player doesn’t have a chance to pick it up before the check is run. The check is run for whether or not the player who died had the seed, not the killer. I’m not sure that you understand the problem, but your proposed solution I do not believe would fix the problem. Lifecycle devices, if person dies, wire to a checker to check if the person who died had a green seed. If true, activate manager. If false, deactivate manager.

I do understand just its a little hard to put in words. Just try it for me cause i think it will work.

This checks to see if you have the medallion and then activates it, not to see if the player you killed has it and then have them activate it.

so I have a property that updates when the green seed amount changes. What do I wire this to and what do I configure the wire to do?

Wire the property to your checkers (swap it with the lifecycle) it should only have one option from the property (when property value changes)

So I did this, and it has the same problem as the lifecycle device. I have the “when property changes” wire to a checker for the green seed, and then “when check passes” wire to “activate knockout manager”
to deactivate the manager, I use the channels in the checker because you cannot have two of the same wire. in the checker, I have check fails, transmit on “deactivatemanager” and in the manager, I have deactivate when receiving on “deactivatemanager”
when I kill the boss now, I gain the seed. When somebody kills me, I drop it. When somebody kills the second person, they do not drop it, and the seed is lost forever.

Very odd. Give me a second i will try to replicate this.