Commands/replaceitem

From Minecraft Wiki
Jump to: navigation, search
replaceitem
Restrictions

Operator

First introduced

Java Edition 1.8 (14w26a)
PE 1.0.5 (PE alpha 1.0.5.0)

Replaces items in the inventories of blocks (chest, furnaces, etc.) or entities (players or mobs) with the given item(s).

Syntax[edit]

  • Java Edition
replaceitem block <pos> <slot> <item> [<count>]
replaceitem entity <targets> <slot> <item> [<count>]
  • Bedrock Edition
replaceitem block <position: x y z> slot.container <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]
replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <itemName: Item> [amount: int] [data: int] [components: json]
replaceitem block <position: x y z> slot.container <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]
replaceitem entity <target: target> <slotType: EntityEquipmentSlot> <slotId: int> <oldItemHandling: ReplaceMode> <itemName: Item> [amount: int] [data: int] [components: json]

Arguments[edit]

<pos> (BE: position: x y z) (block mode only)

Specifies the position of the block to be modified. May use tilde notation to specify a position relative to the command's execution.

<targets> (BE: target: target) (entity mode only)

Specifies one or more entities to modify. Must be a player name, target selector, or a UUID[Java Edition only].
Permits entities other than players.

<slot> (BE: slotType: EntityEquipmentSlot and slotId: int)

Specifies the inventory slot to be modified. Valid values depend on whether a block or an entity is being modified.
For blocks, must be container.slot_number (BE: slot.container <slotId: int>) where slot_number or slotId: int is replaced with a number specifying the slot.
  • Chests, dispensers, droppers, hoppers, and trapped chests are numbered 0 for the top-left slot and then increase first horizontally, then vertically (so, for example, a chest's top row slots are numbered 0 to 8 from left to right). Double chests and double trapped chests are treated as two single container blocks.
  • A brewing stand's bottom slots are numbered 0 to 2 from left to right, its top slot is 3 and the fuel slot is 4.
  • A furnace's slots are numbered 0 for the input slot, 1 for the fuel slot, and 2 for the output slot.
Other blocks which hold items but don't have inventory GUIs (flower pots and jukeboxes) can only be changed with /data.
For entities, must be one of the following, where slot_number is replaced with a number specifying the slot:
Slot Slot Numbers Restrictions
armor.chest armor stands, mobs, and players only (though not all mobs will show or make use of the items)
armor.feet
armor.head
armor.legs
weapon.mainhand
weapon.offhand
container.slot_number[Java Edition only] 0–53 players and minecarts only
enderchest.slot_number
(BE: slot.enderchest <slotId: int>)
0–26 players only
hotbar.slot_number
(BE: slot.hotbar <slotId: int>)
0–8
inventory.slot_number
(BE: slot.inventory <slotId: int>)
0–26 item frames (slot 0) and players only
horse.saddle
(BE: slot.saddle <slotId: int>)
horses, donkeys, and mules only; item must be a saddle
horse.chest[Java Edition only] donkeys, and mules only; item must be a chest
horse.armor
(BE: slot.armor)
horses and llamas only; item must be a type of horse armor (if a horse) or a carpet (if a llama)
horse.slot_number
(BE: slot.chest <slotId: int>)
0–14 donkeys and mules with chests only
villager.slot_number[Java Edition only] 0–7 villagers only

<item> (BE: itemName: Item)

Specifies the item to be placed in the block or entity's inventory slot. Must be an item id, or a block id for which an item exists.

<count> (BE: amount: int)

Specifies the number of items to be placed in the block or entity's inventory slot. Must be between 1 and 64 (inclusive), even for items with a smaller stack size.

data: int[Bedrock Edition only]

Specifies the item data for the item(s) to be placed in the block or entity's inventory slot. Must be an integer between -2,147,483,648 and 2,147,483,647 (inclusive, without the commas), but values which are invalid for the specified item id will default to 0. If not specified, defaults to 0.

components: json[Bedrock Edition only]

Specifies the item components. Like data tags but only supports minecraft:can_place_on and minecraft:can_destroy functions (for example, replaceitem entity @s slot.weapon.mainhand 0 iron_shovel 1 0 {"minecraft:can_destroy":{"blocks":["grass"]}})

oldItemHandling: ReplaceMode[Bedrock Edition only]

Must be one of:
destroy - Directly replaces items ignoring the original items in the specified slot.
keep - Does not replace items if an item occupies that slot.

Result[edit]

Fails if the arguments are not specified correctly, if the specified block is not a container, if <targets> fails to resolve to one or more entities (named players must be online), if none of the targeted entities have the specified slot (for example, zombies don't have horse.armor), or if an item occupies the specified slot in keep mode in Bedrock Edition.

On success, replaces the items in the specified slot with the specified items (previous items in that slot are lost) wherever possible.

Examples[edit]

  • To replace the items in the bottom-right slot of a single chest two block above with four spruce saplings:
    • replaceitem block ~ ~2 ~ container.26 minecraft:spruce_sapling 4[Java Edition only]
    • replaceitem block ~ ~2 ~ slot.container 26 sapling 4 1[Bedrock Edition only]
  • To replace the items in the rightmost hotbar slot of the nearest player with four spruce saplings:
    • replaceitem entity @p hotbar.8 minecraft:spruce_sapling 4[Java Edition only]
    • replaceitem entity @p slot.hotbar 8 sapling 4 1[Bedrock Edition only]

History[edit]

Java Edition
1.814w26aAdded /replaceitem.
1.1418w43a/replaceitem can now be used on item frames.
Pocket Edition
1.0.5alpha 1.0.5.0Added /replaceitem.
1.1.0alpha 1.1.0.0CanPlaceOn and CanDestroy functions are now supported for /replaceitem.
Bedrock Edition
1.16.0beta 1.16.0.55 Added new overload for /replaceitem with an option for destroy or keep.

See also[edit]

  • /blockdata — can also replace items in a container
  • /entitydata — can also replace items in a mob's inventory, or modify the drop chances of armor and weapons
  • /give — give items to players without specifying specific inventory slots or overwriting other items