MC Toolkit

Guías / Solución de problemas

pack.mcmeta: números de pack_format y la advertencia de "incompatible"

Un solo campo mal escrito hace que Minecraft te marque el paquete en gris. Esta es la estructura que exige la versión 26.x, cómo abarcar versiones antiguas y nuevas en un mismo archivo, y dónde debe ubicarse.

Casi todos los casos de "mi paquete aparece como incompatible" se reducen a un campo en un archivo pequeño.

El archivo

{
  "pack": {
    "min_format": 97,
    "max_format": 97,
    "description": "My pack"
  }
}

Ese es un paquete de recursos para 26.3; un paquete de datos para 26.3 usa 121. Desde la 1.21.9, cualquier formato superior a 64 (recursos) u 81 (datos) debe declararse con min_format y max_format. Un paquete que todavía escribe un "pack_format": 97 sin más —lo que siguen mostrando la mayoría de los tutoriales y de los generadores— es rechazado y aparece como incompatible.

Debe llamarse exactamente pack.mcmeta y estar en la raíz del zip —junto a assets/ o data/, no dentro de una carpeta dentro del zip—. Comprimir la carpeta contenedora en lugar de su contenido es el segundo error más común, y se ve idéntico a un número de formato equivocado.

Los paquetes de recursos y los de datos usan números distintos

Aquí está la parte que sorprende a la gente: los dos contadores se separaron hace años y no son intercambiables. Un paquete de datos que usa un número de paquete de recursos aparece en gris aunque el número sea el "actual".

En lugar de memorizar una tabla que queda obsoleta con cada versión, lee el número directamente de un paquete vanilla de la versión que te interesa, o deja que un generador lo rellene.

Un solo archivo para versiones antiguas y nuevas

Fijar un único número significa que el paquete se rompe en la siguiente versión. Un rango no —pero un rango que llega hasta la 26.x tiene que estar escrito para dos generaciones del juego a la vez:

{
  "pack": {
    "pack_format": 46,
    "supported_formats": { "min_inclusive": 46, "max_inclusive": 64 },
    "min_format": 46,
    "max_format": 97,
    "description": "My pack"
  }
}

min_format/max_format es el rango que lee la 26.x. pack_format y supported_formats están ahí solo para clientes anteriores a la 1.21.9: supported_formats debe terminar exactamente en 64 (81 para un paquete de datos), min_format debe ser igual a su extremo inferior, y pack_format debe quedar dentro de él. El consejo antiguo —supported_formats hasta algún número grande como 99— es ahora justo la forma que la 26.x rechaza de plano. Para un paquete que solo añade texturas o recetas —que son la mayoría—, un rango amplio es honesto, porque nada se rompe realmente entre versiones.

La descripción admite componentes de texto

"description": [
  { "text": "My pack ", "color": "gold" },
  { "text": "v2", "color": "gray", "italic": true }
]

Los códigos con signo de sección (§6) también siguen funcionando, pero el formato JSON sobrevive al copiar y pegar a través de herramientas que eliminan caracteres de control.

Overlays, para admitir varias versiones a la vez

"overlays": { "entries": [
  { "formats": { "min_inclusive": 42, "max_inclusive": 45 }, "directory": "older" }
] }

La carpeta older/ en la raíz del paquete se usa solo en esos formatos. Así una sola descarga admite dos versiones con formatos de modelo distintos, en lugar de distribuir dos zips.

Diagnóstico rápido

SíntomaCausa
Aparece en gris, "hecho para una versión anterior/nueva"número de formato equivocado, o (1.21.9 y posteriores) falta min_format/max_format
El paquete no aparece en la listapack.mcmeta no está en la raíz del zip, o el JSON no es válido
Carga, pero faltan texturasel formato del paquete está bien; las rutas de las texturas son incorrectas
Funciona en un jugador, pero no en un servidorpaquete de datos en la carpeta de mundo equivocada

Una coma final hace que el JSON no sea válido y provoca el caso de "no aparece en la lista", no un mensaje de error.

Genera un archivo válido para tu tipo de paquete y tu versión objetivo —con min_format/max_format, y los campos heredados donde una versión antigua los necesite— usando el generador de pack.mcmeta.

Generador de pack.mcmeta →

Más guías

Ver todas →