JavaScript Object Notation (JSON) es un formato ligero de intercambio de datos.[1]
En Minecraft, el formato JSON se utiliza para almacenar los siguientes datos:
- Texto en libro escrito, cartel, nombres personalizados y el
/tellraw
,/title
,/bossbar
,/scoreboard
y/team
.[Solo Java Edition] - El archivo
pack.mcmeta
que describe un Java Edition paquete de recursos y un paquete de datos. - El archivo
manifest.json
que describe un Bedrock Edition add-on. - Archivos en un paquete de recursos que definen modelos, eventos de sonido, UI, etc.[Solo Bedrock Edition]
- Archivos en un paquete de comportamiento que define comportamientos de entidad, us/minecraft/creator/reference/content/blockreference/ bloquear comportamientos, comportamientos de elementos, etc.[Solo Bedrock Edition]
- Avances y estadísticas (como
.minecraft/saves/*/data/stats/*.json
) - Los datos de perfil para el launcher (como
.minecraft/launcher_profiles.json
) - Información sobre las versiones descargadas (como
.minecraft/versions/*/*.json
) - Archivos en un paquete de datos que definen avances, tabla de botín, etiquetas, recetas, dimensiones, tipos de dimensión y predicados[Solo Java Edition].
Sintaxis[]
Tipos de datos[]
Un archivo JSON debe contener un único valor JSON, que puede utilizar cualquiera de los cinco tipos de datos siguientes: cadena, número, objeto, matriz y booleano. Los archivos JSON pueden estar contenidos en una sola línea; sin embargo, a menudo resulta útil utilizar sangrías y saltos de línea para hacer que un archivo JSON largo sea más legible.
Cadena[]
Una cadena está delimitada por comillas y puede contener cualquier combinación de caracteres. Es necesario utilizar caracteres de escape para algunos caracteres especiales; esto se hace con una barra invertida (\
).
"foo"
"Hello, world"
"An escaped \" quote within a string"
Número[]
Un número se define ingresando cualquier número. Los números pueden ser no enteros, como se indica con un punto, y pueden usar exponentes con e
.
2
-0.5
3e6
(=3×106)
Objeto[]
Un objeto, también conocido como compuesto, está delimitado abriendo y cerrando llaves y contiene pares clave/valor. Los pares se separan con comas, las claves y los valores asociados se separan con dos puntos. Cada clave contenida debe tener un nombre que sea único dentro del objeto. Un valor también puede ser de cualquier tipo de datos (incluido otro objeto).
{
"Bob": {
"ID": 1234,
"lastName": "Ramsay"
},
"Alice": {
"ID": 2345,
"lastName": "Berg"
}
}
Matriz[]
Las matrices están delimitadas por corchetes de apertura y cierre y pueden contener valores de cualquier tipo de datos, separados por comas. A diferencia de las listas en NBT, los valores en una matriz JSON pueden usar diferentes tipos de datos.
["Bob", "Alice", "Carlos", "Eve"]
Booleano[]
Un booleano puede ser true
or false
.
{
"Steve": {
"isAlive": true
},
"Alex": {
"isAlive": false
}
}