MCTOOLBOX
MC ToolboxMC TOOLBOX
Migrazione comandi Java

Convertitore da NBT a Componenti di Minecraft

Converti il NBT degli oggetti Java legacy dalla 1.20.4 e precedenti nella sintassi dei componenti oggetto per le versioni 1.20.5, 1.21.x e le attuali release 26.x. I comandi restano nel tuo browser.

Input legacy

Vecchio NBT oggetto o comando /give

Carica esempio:

Output convertito

Comando /give attuale

/give @p minecraft:diamond_sword[minecraft:custom_name={text:'Frost Blade',color:'aqua',italic:false},minecraft:lore=[{text:'Forged below Y -59',color:'gray'}],minecraft:damage=12,minecraft:repair_cost=3,minecraft:custom_model_data={floats:[27]},minecraft:unbreakable={},minecraft:enchantments={'minecraft:sharpness':5},minecraft:tooltip_display={hidden_components:['minecraft:unbreakable']}] 1

Componenti convertiti

8

Oggetto rilevato

minecraft:diamond_sword

Componenti convertiti

  • display.Nameminecraft:custom_name
  • display.Loreminecraft:lore
  • Damageminecraft:damage
  • RepairCostminecraft:repair_cost
  • CustomModelDataminecraft:custom_model_data
  • Unbreakableminecraft:unbreakable
  • Enchantmentsminecraft:enchantments
  • HideFlagsminecraft:tooltip_display

Campi riconosciuti

Nomi, lore, incantesimi, danni, costo di riparazione, infrangibilità, CustomModelData, dati delle pozioni, profili, attributi e predicati in modalità avventura vengono mappati ai componenti.

Output sensibile alla versione

Minecraft 1.21.4 ha modificato CustomModelData, mentre la 1.21.5 ha semplificato diversi componenti e introdotto tooltip_display. Scegli la versione del server che usi effettivamente.

Fallback sicuro

I tag sconosciuti vengono conservati in minecraft:custom_data ed elencati per la revisione. Il convertitore non finge che custom_data faccia funzionare meccaniche di gioco obsolete.

Perché Minecraft ha sostituito il NBT degli oggetti con i componenti

Minecraft Java 1.20.5 ha sostituito il vecchio tag oggetto per lo più non strutturato con componenti dati tipizzati. Nei comandi, i componenti appaiono tra parentesi quadre dopo l'ID dell'oggetto, separati da virgole. Damage è diventato minecraft:damage, display.Name è diventato minecraft:custom_name, Enchantments è diventato minecraft:enchantments, e i campi personalizzati arbitrari sono stati spostati in minecraft:custom_data.

Non è stato un cambiamento di sintassi una tantum. Minecraft 1.21.4 ha ampliato custom_model_data in elenchi usati dal nuovo sistema di modelli degli oggetti. Minecraft 1.21.5 ha spostato la visibilità dei tooltip in minecraft:tooltip_display e ha semplificato incantesimi, attributi, colori tinti e predicati della modalità avventura. I comandi attuali 26.x continuano da quel formato di componenti più recente.

Un convertitore può mappare i campi noti degli oggetti, ma non può riparare automaticamente ogni blocco di comando o data pack. Anche NBT delle entità, dati delle entità di blocco, funzioni di loot, predicati e componenti di testo sono cambiati tra le versioni. Testa sempre il comando generato in una copia del mondo di destinazione o su un server di staging.

Come convertire un vecchio comando /give

  1. 1Incolla un comando /give di Java Edition dalla 1.20.4 o precedente. Puoi anche incollare solo il composto tra parentesi graffe.
  2. 2Scegli la famiglia di destinazione esatta. Usa 1.21.5 - 26.x per i server attuali, non il vecchio formato di componenti 1.20.5.
  3. 3Leggi ogni avviso. Il custom_data preservato è un archivio sicuro, ma non attiva un tag obsoleto Damage, Potion o AttributeModifiers.
  4. 4Copia il comando generato e testalo in un mondo temporaneo prima di sostituire i comandi in un data pack o in un sistema di blocchi di comando.

Cosa questo convertitore non modifica

Converte un singolo stack di oggetti o comando /give alla volta. Non esegue la scansione di un intero data pack, non riscrive i controlli execute if data, né aggiorna i predicati degli oggetti memorizzati nei file JSON.

Non converte il JSON degli oggetti di Bedrock. I componenti degli oggetti di Java e i componenti dei componenti aggiuntivi di Bedrock sono sistemi diversi anche quando alcuni nomi sembrano simili.

I componenti di testo di versioni molto vecchie potrebbero richiedere ancora una modernizzazione manuale. Profili giocatore complessi, effetti di pozione personalizzati e payload di entità di blocco dovrebbero essere verificati rispetto alla versione di destinazione.

FAQ da NBT a componenti

Perché il mio vecchio comando /give ha smesso di funzionare nella 1.20.5?

Java 1.20.5 ha spostato i dati degli oggetti fuori dalla vecchia struttura {tag} e nei componenti tipizzati scritti tra parentesi quadre dopo l'ID dell'oggetto.

Posso mettere ogni vecchio tag dentro minecraft:custom_data?

Puoi preservare campi arbitrari lì, ma le meccaniche integrate non leggono più i vecchi tag strutturali come Damage o Enchantments da custom_data. Hanno bisogno dei loro componenti reali.

Quale destinazione dovrei usare per Minecraft 26.2 o 26.3?

Usa Minecraft 1.21.5 - 26.x. Quell'output usa forme semplificate di incantesimi e attributi più tooltip_display del sistema di componenti più recente.

Il convertitore supporta comandi completi?

Sì. Legge un target /give legacy, ID oggetto, composto NBT e quantità, poi ricostruisce un comando /give attuale. Accetta anche un composto NBT autonomo.

Perché c'è un avviso per BlockEntityTag?

Il block_entity_data attuale deve identificare un'entità di blocco valida. Alcuni vecchi comandi si basavano sul tipo di oggetto e omettevano l'id, quindi quel campo richiede una revisione manuale.

La conversione viene eseguita su un server?

No. L'analisi e la conversione avvengono localmente nel tuo browser. Il comando non viene caricato da questo strumento.