Ang /give command pagkatapos ng data components: ang pumalit sa mga NBT tag
Pinalitan ng 1.20.5 ang NBT ng item ng data components, at karamihan sa mga /give snippet online ay nakasulat pa rin sa lumang paraan. Narito ang mapping mula sa mga tag na alam mo patungo sa mga component na gumagana na ngayon.
Kung mag-paste ka ng /give command from an older guide and the game answers Unknown item tag or silently drops your enchantments, the command is written against the pre-1.20.5 NBT format. Item data moved to data components, at ang lumang {display:{Name:...}} blob no longer parses.
Nagbago ang anyo
old /give @p diamond_sword{display:{Name:'"Skybreaker"'},Enchantments:[{id:sharpness,lvl:5}]}
new /give @p diamond_sword[custom_name='"Skybreaker"',enchantments={sharpness:5}]
Square brackets, hindi braces. Ang components ay isang flat at comma-separated na listahan sa item id.
Ang mga mapping na madalas mong gagamitin
| Lumang NBT | Data component |
|---|---|
display:{Name:...} | custom_name |
display:{Lore:[...]} | lore |
Enchantments:[{id,lvl}] | enchantments={id:level} |
Unbreakable:1b | unbreakable={} |
CustomModelData:3 | custom_model_data=3 |
AttributeModifiers:[...] | attribute_modifiers |
display:{color:...} | dyed_color |
SkullOwner | profile |
Tatlong bitag
- Pag-quote.
custom_nametakes a JSON text component, so a plain string still needs
sarili nitong mga quote sa loob ng argument: custom_name='"Skybreaker"'.
- Pag-alis ng default. I-prefix gamit ang
!to strip a component the item normally has —
[!attribute_modifiers] gives a sword with no damage bonus at all.
- Walang ganito ang Bedrock. Bedrock
/givestill uses its own data-value and
component model; hindi gagana doon ang Java component string.
Ang /give Generator ang sumusulat ng component form para sa iyo at nagpapakita ng output para sa parehong edisyon, para makopya mo ang tumutugma sa server kung nasaan ka.