Skip to content

Drop Policy

Drop policy answers a simple question: what should happen when the player drops an item somewhere it cannot be placed directly.

For example:

  • the slot is occupied
  • the slot is blocked by rules
  • the target stack is already full
  • the item was dropped on an inventory area instead of a slot

Main Options

Setting What it does
Reject Rejects the transfer. The item returns to where it came from.
FindAlternative Looks for another suitable slot.
Swap Tries to swap the dragged item with the item in the occupied slot.

If The Slot Is Occupied

Policy Behavior
Reject Nothing moves.
FindAlternative The system searches for another slot where the item can fit.
Swap The system tries to exchange the two items.

If the selected slot is valid, policy does not interfere: the item is placed into that slot.

If The Item Was Dropped On An Inventory Area

When the player drops an item on the inventory area instead of a concrete slot, the system searches for a suitable place.

This uses PlacementCandidateOrderer:

Orderer Behavior
Natural Uses the natural slot order.
MergeFirst Tries to merge with existing stacks first.
EmptyFirst Tries empty slots first.
MergeOnly Tries only stack merging.
EmptyOnly Tries only empty slots.

If the player drops directly on a concrete slot, sorting is not used: the selected slot is checked first.

Partial Transfer

PartialTransferMode controls whether only part of a stack may be transferred.

Value Behavior
Allow Transfers as much as fits. The rest returns back.
RequireFull Cancels the transfer if the whole stack cannot fit.

This applies to one transfer entry. If the player drags several selected items, failure of one item does not cancel items that were already transferred before it.

Alternative Slot Inside The Same Inventory

AllowSameInventoryAlternativePlacement matters when moving an item inside the same inventory.

If enabled, dropping onto an occupied slot can make the system look for another free slot in the same inventory.

If disabled, that drop does not become “put it somewhere else”. The item stays where it was if the selected slot is not valid.

Swap

Swap exchanges two items.

It works only for one dragged item and one concrete occupied slot. If the player drags several items onto one occupied slot, batch swap is rejected before anything changes.

What To Choose

Desired behavior Choose
Place only into the selected slot Reject
Allow “put it somewhere suitable” FindAlternative
Allow exchange with an occupied slot Swap
Allow moving part of a stack PartialTransferMode.Allow
Forbid partial transfers PartialTransferMode.RequireFull

See also: