About Soul bind items to individual players, or groups, for exclusive use and various protections. Use commands or integrate into your kits and quests for seamless game design.
Features:
Bind items to a single player or to a permission for multiple players.
Prevent unauthorized players from picking up soul bound items or removing them from a container or inventory.
With a player permission, soul bound items kept in inventory on death.
Can be used with kits: Items with the register string (default %soulbind% , configurable) in their lore will be soul bound to the player when they click/drop/pickup the item. See below for additional command that checks a player's inventory for such items and forces soul bind on them: run this command after giving player a kit.
Additional mechanics to only bind on use / equip / pickup
Prevent soul bound blocks being placed, modified through crafting, enchanting, or with an anvil.
Remote binding of items in a target player's inventory.
Commands
Code (Text):
commands:
bindItem:
description: Soul bind an item
usage: /bindItem <username>
permission: itemsoulbind.bind
bindAll:
description: Bind all items in inventory
usage: /bindAll
permission: itemsoulbind.bindall
unbindItem:
description: Remove soul bind protection from item
usage: /unbindItem
permission: itemsoulbind.unbind
groupBindItem:
description: Bind item to all players with permission itemsoulbind.group.<permission>
usage: /groupBindItem <permission>
permission: itemsoulbind.groupbinditem
remoteBindItem:
description: Remotely bind an item in a player's inventory
usage: /remoteBindItem <player> slot|0-40|all
permission: itemsoulbind.remotebind
bindInvItems:
description: Scan player's inventory and bind any items with the register string in the lore
usage: /bindInvItems <username>
permission: itemsoulbind.bindinvitems
returnItems:
description: Get found soul bound items back
usage: /returnItems
permission: itemsoulbind.returnitems
isb-reload:
description: Reload config. Console Only.
usage: /isb-reload
permission: itemsoulbind.admin
bindOnUse:
description: sets item to bind on use
usage: /bindOnUse
permission: itemsoulbind.admin
bindOnEquip:
description: sets item to bind on equip
usage: /bindOnEquip
permission: itemsoulbind.admin
bindOnPickup:
description: sets item to bind on pickup
usage: /bindOnPickup
permission: itemsoulbind.admin
Permissions
Code (Text):
permissions:
itemsoulbind.admin:
description: All permissions + reload command
default: op
children:
itemsoulbind.bind: true
itemsoulbind.bindall: true
itemsoulbind.bind.others: true
itemsoulbind.unbind: true
itemsoulbind.groupbinditem: true
itemsoulbind.remotebind: true
itemsoulbind.notify: true
itemsoulbind.bindinvitems: true
itemsoulbind.bypass: true
itemsoulbind.keepondeath: true
itemsoulbind.bind:
description: Allows use of /bindItem
default: false
itemsoulbind.bindall:
description: Allows use of /bindAll
default: false
itemsoulbind.bind.others:
description: Allows use of /bindItem <player>
default: false
children:
- itemsoulbind.bind
itemsoulbind.unbind:
description: Allows use of /unbindItem <player>
default: false
itemsoulbind.groupbinditem:
description: Allows use of /groupBindItem <permission>
default: false
itemsoulbind.remotebind:
description: Allows use of /remoteBindItem <player>
default: false
itemsoulbind.notify:
description: Notifies if player somehow has item soulbound to another player in their inventory
default: false
itemsoulbind.bindinvitems:
description: Allows use of /bindInvItems
default: false
itemsoulbind.keepondeath:
description: Soul bound items do not get removed from inventory when player dies
default: false
itemsoulbind.bypass:
description: Bypass soul bind protection, item register string, (crafting, enchanting, anvil) restrictions
default: false
children:
itemsoulbind.bypass.craft: true
itemsoulbind.bypass.enchant: true
itemsoulbind.bypass.anvil: true
itemsoulbind.bypass.craft:
description: Bypass crafting restriction (if enabled)
default: false
itemsoulbind.bypass.enchant:
description: Bypass enchanting restriction (if enabled)
default: false
itemsoulbind.bypass.anvil:
description: Bypass anvil restriction (if enabled)
default: false
itemsoulbind.returnitems:
description: Permits returning of soul bound items to player and use of return items command
default: true
Config
Code (Text):
# When player interacts with an item with the register string in its lore, item will be soul bound to them
registerString: "%soulbind%"
# Group bind string
# Place permission after this string, terminated by a space or end of line
# Example: %soulbindgroup%perm which will have permission itemsoulbind.group.perm
groupRegisterString: "%soulbindgroup%"
# SPECIAL BINDS - items with relevant bind string will only be bound in the specified conditions
# Color is ignored when checking for string. Case-sensitive.
# Binds when tool is used: used to break block, sword used to hit entity
bindOnUse: false
bouString: "&9Soul binds on use"
# Binds when armor is equipped through in-hand right click
bindOnEquip: false
boeString: "&9Soul binds on equip"
# Binds when item is picked up
bindOnPickup: false
bopString: "&9Soul binds on pickup"
# Display message in item lore of soul bound item
# Use %username% for player name placeholder
displayLoreMsg: true
loreMsg: "&9Soul bound to %username%"
# Similarly for group binds, using placeholder %group%
displayLoreMsgGroup: true
loreMsgGroup: "&9Soul bound to group %group%"
# Log player detected with item soul bound to another player in console
consoleLogDetection: true
# Prevents crafting with soul bound items
preventCraft: false
# Prevents enchanting with soul bound items
preventEnchant: false
# Prevents anvil use with soul bound items
preventAnvil: false
# Blocks commands when soul bound item is held in hand
# Only provide the first part of the command, e.g. for "/auction sell" :
blockedCommands:
- "auction"
# =======================
# Messages | use '&' for color codes
msgPrefix: "&8[&bSoul&3Bind&8]&r "
denyMsg: "&9This item is soul bound to another player"
denyMsgGroup: "&9This item is soul bound"
detectedItemMessage: "&cAn item soul bound to another player was removed from your inventory. Event has been logged."
detectedItemMessageGroup: "&cA soul bound item that you do not have access to has been detected in your inventory. Event has been logged."
detectedItemBroadcast: "was detected with an item soul bound to another player."
detectedItemBroadcastGroup: "was detected with a soul bound item they do not have access to."
noPermissionGeneric: "&cInsufficient permissions."
noPermissionBindOthers: "&cInsufficient permissions to bind for other players."
bindSuccess: "&aSoul bind complete."
bindErrorHeldItem: "You must be holding an item in your main hand."
bindErrorAlreadyBound: "This item is already soul bound."
bindErrorNoSuchPlayer: "No such player found online."
bindErrorRemoteNoItem: "Specific target player inventory slot is empty."
unbindErrorNotBound: "Item is not soul bound."
unbindSuccess: "&aSoul bind removed."
inventoryProcessSuccess: "&aProcessed inventory of "
craftDeny: "&cCannot craft with soul bound items."
enchantDeny: "&cCannot enchant soul bound items."
anvilDeny: "&cCannot use anvil on soul bound items."
foundItems: "&7Soul bound items found with another player have been returned to you. Use &b/returnItems &7to get them."
noItems: "You have no items to retrieve."
specialBindDone: "&aSpecial bind applied to item."
cmdBlocked: "&cCannot perform this command on a soul bound item."
# ======================
configVersionDoNotModify: 1.6
Support: Discord Report bugs and Exploits: HERE Contributing: Check out the GitHub and project board.
Sponsors:
Disclaimers: Plugin uses bStats to collect anonymous usage statistics.