Guides / Troubleshooting

¿Tu paquete de datos no carga? La estructura de carpetas y los tres nombres que deben coincidir

Un paquete de datos que no aparece en /datapack list tiene un problema de ruta, no de código. Aquí te explicamos la estructura exacta, la regla de los espacios de nombres y las carpetas que cambiaron de nombre.

/datapack list no muestra nada, o muestra el paquete como deshabilitado. Casi siempre el JSON está bien y las carpetas están mal.

La estructura

world/datapacks/my_pack/
├── pack.mcmeta
└── data/
    └── my_namespace/
        ├── function/         one .mcfunction per file
        ├── recipe/
        ├── loot_table/
        ├── advancement/
        ├── predicate/
        └── tags/
            └── function/
                └── load.json

Tres nombres deben coincidir y uno de ellos no es obvio:

  1. pack.mcmeta en la raíz del paquete — junto a data/, no dentro de ella.
  2. data/<namespace>/ — tu espacio de nombres (namespace), en minúsculas, sin espacios. Esto se convierte en el prefijo en my_namespace:my_function.
  3. Los nombres de las carpetas de categoría, que cambiaron y son el culpable habitual.

Las carpetas fueron renombradas a singular

Esto rompió muchos paquetes y muchos tutoriales:

AntiguoActual
functions/function/
recipes/recipe/
loot_tables/loot_table/
advancements/advancement/
predicates/predicate/
structures/structure/

Un paquete que usa los nombres en plural carga —aparece en /datapack list— y simplemente no hace nada, que es el modo de fallo más confuso de todos. tags/ se mantuvo en plural, y también tags/function/ se volvió singular dentro de él. Sí, es inconsistente.

Ejecutar algo automáticamente

Dos etiquetas especiales:

data/minecraft/tags/function/load.json   → runs once on load/reload
data/minecraft/tags/function/tick.json   → runs every tick

Ten en cuenta data/minecraft/, no tu propio espacio de nombres —la etiqueta pertenece a Minecraft, las funciones a las que apunta te pertenecen a ti:

{ "values": ["my_namespace:setup"] }

Diagnóstico en orden

  1. /datapack list — si el paquete no aparece en absoluto, pack.mcmeta falta, está mal formado o está un nivel demasiado profundo.
  2. Listado pero deshabilitado/datapack enable "file/my_pack". Ten en cuenta el prefijo file/ y las comillas.
  3. Listado y habilitado pero inerte — pack_format incorrecto, o nombres de carpetas en plural.
  4. /reload y lee el chat. Los errores de sintaxis en las funciones aparecen allí, no en silencio.

Comprimido o no

Ambos funcionan. Comprimido significa pack.mcmeta en la raíz del zip, exactamente como para los paquetes de recursos. La forma de carpeta es más fácil durante el desarrollo porque /reload detecta las ediciones sin necesidad de volver a comprimir.

Ubicación en el servidor

En un servidor, la ruta es <world>/datapacks/, donde <world> es el valor de level-name en server.properties — no la raíz del servidor. Colocar el paquete en la carpeta del servidor es el error más común en el lado del servidor.

Crea un paquete con los nombres de carpeta actuales, un pack.mcmeta válido y una etiqueta de carga ya configurada, luego descárgalo listo para usar con Datapack Studio.

Datapack Studio →

More guides

Browse all →

¿Buscas más herramientas de Minecraft?

Un conjunto de generadores, visores y conversores que funcionan en el navegador — todos gratis.