Difference between revisions of "User:WinX64/Slot Data"

From wiki.vg
Jump to navigation Jump to search
(→‎Structured components: More work done)
(Content moved to the page on the main namespace)
Tag: Blanking
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
The '''Slot''' data structure defines how an item is represented when inside an inventory window of any kind, such as a chest or furnace.
 
  
This page presents the new Slot data structure, using structured components. You can find the documentation of the old structure, that utilizes raw NBT data, [[Special:Permalink/18899|here]].
 
 
= Format =
 
 
Some description does here.
 
 
{| class="wikitable"
 
! colspan="2"| Name
 
! colspan="2"| Type
 
! Meaning
 
|-
 
| colspan="2"| Item Count
 
| colspan="2"| {{Type|VarInt}}
 
| The item count. Every following field is only present if this value is greater than zero.
 
|-
 
| colspan="2"| Item ID
 
| colspan="2"| {{Type|Optional}} {{Type|VarInt}}
 
| The {{Minecraft Wiki|Java Edition data values#Blocks|item ID}}. Item IDs are distinct from block IDs; see [[Data Generators]] for more information.
 
|-
 
| colspan="2"| Number of components to add
 
| colspan="2"| {{Type|Optional}} {{Type|VarInt}}
 
| Number of elements present in the first data component array
 
|-
 
| colspan="2"| Number of components to remove
 
| colspan="2"| {{Type|Optional}} {{Type|VarInt}}
 
| Number of elements present in the second data component array. This serve as a way to remove the default component values that are present on some items.
 
|-
 
| rowspan="2"| Components to add
 
| Component type
 
| rowspan="2"| {{Type|Optional}} {{Type|Array}}
 
| {{Type|Optional}} {{Type|VarInt}} {{Type|Enum}}
 
| colspan="2"| The type of component. See [[#Structured_components|Structured components]] for more detail.
 
|-
 
| Component data
 
| {{Type|Optional}} Varies
 
| colspan="1"| The component-dependent data. See [[#Structured_components|Structured components]] for more detail.
 
|-
 
| rowspan="1"| Components to remove
 
| Component type
 
| rowspan="1"| {{Type|Optional}} {{Type|Array}}
 
| {{Type|Optional}} {{Type|VarInt}} {{Type|Enum}}
 
| colspan="2"| The type of component. See [[#Structured_components|Structured components]] for more detail.
 
|-
 
|}
 
 
== Structured components ==
 
 
The complete list of available components is described below. Items marked in blue cause no noticeable impact on the client, and mainly concern server-side operations.
 
 
For a more in-depth description, and information on how the items below are encoded with the NBT format, check [https://minecraft.wiki/w/Data_component_format here].
 
 
{| class="wikitable"
 
! Type
 
! Name
 
! Description
 
! Data
 
|-
 
| 0
 
| <code>minecraft:custom_data</code>
 
| Customizable data that doesn't fit any specific component.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Data
 
    | {{Type|NBT}}
 
    | Always a Compound Tag.
 
    |}
 
|-
 
| 1
 
| <code>minecraft:max_stack_size</code>
 
| Maximum stack size for the item.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Max stack size
 
    | {{Type|VarInt}}
 
    | Ranges from 1 to 99.
 
    |}
 
|-
 
| 2
 
| <code>minecraft:max_damage</code>
 
| The maximum damage the item can take before breaking.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Max damage
 
    | {{Type|VarInt}}
 
    |
 
    |}
 
|-
 
| 3
 
| <code>minecraft:damage</code>
 
| The current damage of the item.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Damage
 
    | {{Type|VarInt}}
 
    |
 
    |}
 
|-
 
| 4
 
| <code>minecraft:unbreakable</code>
 
| Marks the item as unbrekable.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Show in tooltip
 
    | {{Type|Boolean}}
 
    | Whether the Unbreakable indicator should be shown on the item's tooltip.
 
    |}
 
|-
 
| 5
 
| <code>minecraft:custom_name</code>
 
| Item's custom name.<br>Normally shown in italic, and changeable at an anvil.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Name
 
    | {{Type|Text Component}}
 
    |
 
    |}
 
|-
 
| 6
 
| <code>minecraft:item_name</code>
 
| Override for the item's default name.<br>Shown when the item has no custom name.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Name
 
    | {{Type|Text Component}}
 
    |
 
    |}
 
|-
 
| 7
 
| <code>minecraft:lore</code>
 
| Item's lore.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Number of lines
 
    | {{Type|VarInt}}
 
    | Number of elements in the following array.
 
    |-
 
    | Lines
 
    | {{Type|Array}} of {{Type|Text Component}}
 
    |
 
    |}
 
|-
 
| 8
 
| <code>minecraft:rarity</code>
 
| Item's rarity.<br>This affects the default color of the item's name.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Rarity
 
    | {{Type|VarInt}} {{Type|Enum}}
 
    | Can be one of the following:
 
* 0 - Common (white)
 
* 1 - Uncommon (yellow)
 
* 2 - Rare (aqua)
 
* 3 - Epic (pink)
 
|}
 
|-
 
| 9
 
| <code>minecraft:enchantments</code>
 
| The enchantments of the item.
 
| As follows:
 
  {| class="wikitable"
 
    ! colspan="2"| Name
 
    ! colspan="2"| Type
 
    ! Description
 
    |-
 
    | colspan="2"| Number of enchantments
 
    | colspan="2"| {{Type|VarInt}}
 
    | Number of elements in the following array.
 
    |-
 
    | rowspan="2"| Enchantment
 
    | Type ID
 
    | rowspan="2"| {{Type|Array}}
 
    | {{Type|VarInt}} {{Type|Enum}}
 
    | The ID of the enchantment in the enchantment registry.
 
    |-
 
    | Level
 
    | {{Type|VarInt}}
 
    | The level of the enchantment.
 
    |-
 
    | colspan="2"| Show in tooltip
 
    | colspan="2"| {{Type|Boolean}}
 
    | Whether the list of enchantments should be shown on the item's tooltip.
 
    |}
 
|-
 
| 10
 
| <code>minecraft:can_place_on</code>
 
| List of blocks this block can be placed on when in adventure mode.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Number of predicates
 
    | {{Type|VarInt}}
 
    | Number of elements in the following array.
 
    |-
 
    | Block predicates
 
    | {{Type|Array}} of [[#Block_Predicate|Block Predicate]]
 
    |
 
    |-
 
    | Show in tooltip
 
    | {{Type|Boolean}}
 
    | Whether the list of blocks should be shown on the item's tooltip.
 
    |}
 
|-
 
| 11
 
| <code>minecraft:can_break</code>
 
| List of blocks this item can break when in adventure mode.
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Number of predicates
 
    | {{Type|VarInt}}
 
    | Number of elements in the following array.
 
    |-
 
    | Block predicates
 
    | {{Type|Array}} of [[#Block_Predicate|Block Predicate]]
 
    |
 
    |-
 
    | Show in tooltip
 
    | {{Type|Boolean}}
 
    | Whether the list of blocks should be shown on the item's tooltip.
 
    |}
 
|-
 
| 12
 
| <code>minecraft:attribute_modifiers</code>
 
| The attribute modifiers of the item.
 
| As follows:
 
  {| class="wikitable"
 
    ! colspan="2"| Name
 
    ! colspan="2"| Type
 
    ! Description
 
    |-
 
    | colspan="2"| Number of attributes
 
    | colspan="2"| {{Type|VarInt}}
 
    | Number of elements in the following array.
 
    |-
 
    | rowspan="6"| Attribute
 
    | Type ID
 
    | rowspan="6"| {{Type|Array}}
 
    | {{Type|VarInt}} {{Type|Enum}}
 
    | The ID of the attribute.
 
    |-
 
    | Unique ID
 
    | {{Type|UUID}}
 
    | The attribute's unique ID.
 
    |-
 
    | Name
 
    | {{Type|String}}
 
    | The attribute's name.
 
    |-
 
    | Value
 
    | {{Type|Double}}
 
    | The attribute's value.
 
    |-
 
    | Operation
 
    | {{Type|VarInt}} {{Type|Enum}}
 
    | The operation to be applied upon the value. Can be one of the following:
 
* 0 - Add
 
* 1 - Multiply base
 
* 2 - Multiply total
 
    |-
 
    | Slot
 
    | {{Type|VarInt}} {{Type|Enum}}
 
    | The item slot placement required for the attribute to have effect.<br>Can be one of the following:
 
* 0 - Any
 
* 1 - Main hand
 
* 2 - Off hand
 
* 3 - Hand
 
* 4 - Feet
 
* 5 - Legs
 
* 6 - Chest
 
* 7 - Head
 
* 8 - Armor
 
* 9 - Body
 
    |-
 
    | colspan="2"| Show in tooltip
 
    | colspan="2"| {{Type|Boolean}}
 
    | Whether the list of attributes should be shown on the item's tooltip.
 
    |}
 
|-
 
| 13
 
| <code>minecraft:custom_model_data</code>
 
| Value for the item predicate when using custom item models.<br>More info can be found [https://minecraft.wiki/w/Tutorials/Models#Item_predicates here].
 
| As follows:
 
  {| class="wikitable"
 
    ! Name
 
    ! Type
 
    ! Description
 
    |-
 
    | Value
 
    | {{Type|VarInt}}
 
    |
 
    |}
 
|-
 
| 14
 
| <code>minecraft:hide_additional_tooltip</code>
 
| {{Need Info|What is considered as "additional"? What exact items does this hide?}}
 
| None.
 
|-
 
| 15
 
| <code>minecraft:hide_tooltip</code>
 
| Hides the item's tooltip altogether.
 
| None.
 
|-
 
| 16
 
| <code>minecraft:repair_cost</code>
 
| Description here.
 
| Data here.
 
|-
 
| 17
 
| <code>minecraft:creative_slot_lock</code>
 
| Description here.
 
| None.
 
|-
 
| 18
 
| <code>minecraft:enchantment_glint_override</code>
 
| Description here.
 
| Data here.
 
|-
 
| 19
 
| <code>minecraft:intangible_projectile</code>
 
| Description here.
 
| Data here.
 
|-
 
| 20
 
| <code>minecraft:food</code>
 
| Description here.
 
| Data here.
 
|-
 
| 21
 
| <code>minecraft:fire_resistant</code>
 
| Description here.
 
| None.
 
|-
 
| 22
 
| <code>minecraft:tool</code>
 
| Description here.
 
| Data here.
 
|-
 
| 23
 
| <code>minecraft:stored_enchantments</code>
 
| Description here.
 
| Data here.
 
|-
 
| 24
 
| <code>minecraft:dyed_color</code>
 
| Description here.
 
| Data here.
 
|-
 
| 25
 
| <code>minecraft:map_color</code>
 
| Description here.
 
| Data here.
 
|-
 
| 26
 
| <code>minecraft:map_id</code>
 
| Description here.
 
| Data here.
 
|-
 
| 27
 
| <code>minecraft:map_decorations</code>
 
| Description here.
 
| Data here.
 
|-
 
| 28
 
| <code>minecraft:map_post_processing</code>
 
| Description here.
 
| Data here.
 
|-
 
| 29
 
| <code>minecraft:charged_projectiles</code>
 
| Description here.
 
| Data here.
 
|-
 
| 30
 
| <code>minecraft:bundle_contents</code>
 
| Description here.
 
| Data here.
 
|-
 
| 31
 
| <code>minecraft:potion_contents</code>
 
| Description here.
 
| Data here.
 
|-
 
| 32
 
| <code>minecraft:suspicious_stew_effects</code>
 
| Description here.
 
| Data here.
 
|-
 
| 33
 
| <code>minecraft:writable_book_content</code>
 
| Description here.
 
| Data here.
 
|-
 
| 34
 
| <code>minecraft:written_book_content</code>
 
| Description here.
 
| Data here.
 
|-
 
| 35
 
| <code>minecraft:trim</code>
 
| Description here.
 
| Data here.
 
|-
 
| 36
 
| <code>minecraft:debug_stick_state</code>
 
| Description here.
 
| Data here.
 
|-
 
| 37
 
| <code>minecraft:entity_data</code>
 
| Description here.
 
| Data here.
 
|-
 
| 38
 
| <code>minecraft:bucket_entity_data</code>
 
| Description here.
 
| Data here.
 
|-
 
| 39
 
| <code>minecraft:block_entity_data</code>
 
| Description here.
 
| Data here.
 
|-
 
| 40
 
| <code>minecraft:instrument</code>
 
| Description here.
 
| Data here.
 
|-
 
| 41
 
| <code>minecraft:ominous_bottle_amplifier</code>
 
| Description here.
 
| Data here.
 
|-
 
| 42
 
| <code>minecraft:recipes</code>
 
| Description here.
 
| Data here.
 
|-
 
| 43
 
| <code>minecraft:lodestone_tracker</code>
 
| Description here.
 
| Data here.
 
|-
 
| 44
 
| <code>minecraft:firework_explosion</code>
 
| Description here.
 
| Data here.
 
|-
 
| 45
 
| <code>minecraft:fireworks</code>
 
| Description here.
 
| Data here.
 
|-
 
| 46
 
| <code>minecraft:profile</code>
 
| Description here.
 
| Data here.
 
|-
 
| 47
 
| <code>minecraft:note_block_sound</code>
 
| Description here.
 
| Data here.
 
|-
 
| 48
 
| <code>minecraft:banner_patterns</code>
 
| Description here.
 
| Data here.
 
|-
 
| 49
 
| <code>minecraft:base_color</code>
 
| Description here.
 
| Data here.
 
|-
 
| 50
 
| <code>minecraft:pot_decorations</code>
 
| Description here.
 
| Data here.
 
|-
 
| 51
 
| <code>minecraft:container</code>
 
| Description here.
 
| Data here.
 
|-
 
| 52
 
| <code>minecraft:block_state</code>
 
| Description here.
 
| Data here.
 
|-
 
| 53
 
| <code>minecraft:bees</code>
 
| Description here.
 
| Data here.
 
|-
 
| 54
 
| <code>minecraft:lock</code>
 
| Description here.
 
| Data here.
 
|-
 
| 55
 
| <code>minecraft:container_loot</code>
 
| Description here.
 
| Data here.
 
|}
 
 
== Other types ==
 
 
Common types used in multiple components are described below.
 
 
=== Block Predicate ===
 
 
Describe the block predicate type here.
 
 
[[Category:Protocol Details]]
 
[[Category:Minecraft Modern]]
 

Latest revision as of 13:53, 14 June 2024