Skip to content
Saltar al contenido
Volver al Blog
Fabric-loom: Construye Mods de Minecraft sin Configuración

Fabric-loom: Construye Mods de Minecraft sin Configuración

Alexandru Maftei
Alexandru Maftei
@ice
Actualizado
27 vistas
Respuesta rápida:Fabric-loom es un plugin de Gradle que automatiza la configuración de un entorno de desarrollo de mods de Minecraft, manejando la desofuscación, el mapeo Yarn y la generación de configuraciones de IDE para un inicio rápido de codificación.
TL;DR:fabric-loom es un plugin de Gradle que automatiza la configuración del desarrollo de mods de Minecraft, manejando desofuscación de código, mapeo e integración con IDE. Si estás construyendo mods de Fabric, esta herramienta te ahorra horas de trabajo tedioso de configuración.
🔫 Proyecto de código abierto de Minecraft

FabricMC/fabric-loom

Plugin del sistema de compilación Gradle usado para automatizar la configuración de un entorno de desarrollo de mods de Minecraft.

⭐ 337 estrellas💻 Java📄 MIT
Ver en GitHub ↗

Construir mods de Minecraft solía significar horas de configuración: desofuscación de código, mapeo de variables, configuración de tu IDE. fabric-loom es un plugin de Gradle que automatiza casi todo, así que puedes empezar a codificar en minutos en lugar de días.

Qué hace fabric-loom

fabric-loom es un plugin de Gradle diseñado para convertir tu computadora en un entorno funcional de desarrollo de mods de Minecraft. Pero esa es la forma aburrida de describirlo. Lo que realmente hace es manejar toda la tubería tediosa que se interpone entre tú y escribir código real.

Cuando ejecutas Minecraft, el código está ofuscado (intencionalmente codificado) para que sea difícil de leer. ¿Quieres modificarlo? Necesitas desofuscarlo primero. Luego necesitas mapeos que traduzcan esos nombres codificados en algo que un humano pueda entender. Luego necesitas configurar tu IDE (IntelliJ, Eclipse, VS Code) para que realmente reconozca todo. fabric-loom hace los tres en el fondo mientras tomas un café.

Está construido específicamente para el ecosistema de Fabric, que usa mapeos Yarn (nombres legibles por humanos contribuidos por la comunidad para el código de Minecraft). El plugin integra esos mapeos automáticamente, configura el remapeo y genera configuraciones de ejecución adecuadas para que puedas entrar en modo de depuración inmediatamente. Admite versiones modernas de Minecraft (1.14.4 en adelante), requiere Java 16 o más reciente, y funciona con Gradle 7 y posterior.


Por qué los Modders lo Usan en lugar de Configuración Manual

Antes de fabric-loom, tener un entorno de desarrollo de mods funcionando era una pesadilla de varias horas. Descargarías el jar del servidor de Minecraft, lo descompilarías con herramientas como Fernflower o CFR, aplicarías manualmente los mapeos, configurarías tu IDE, configurarías tareas de ejecución, y esperarías que nada se rompiera en el proceso. La mitad del tiempo algo estaría mal configurado y pasarías otra hora depurando por qué tu mod no se inicia.

fabric-loom elimina eso completamente. Se maneja automática y consistentemente.

El otro ganador masivo: cuando Minecraft se actualiza, no estás comenzando de cero. Este plugin maneja el remapeo y la recompilación para nuevas versiones. Yarn (el proyecto de mapeo) se actualiza regularmente, y fabric-loom incorpora esas mejoras sin que tengas que editar nada manualmente.

Además, la integración del IDE es genuinamente útil. Obtienes configuraciones de ejecución adecuadas, los puntos de ruptura de depuración funcionan directamente, e IntelliJ realmente entiende el código de Minecraft. Si alguna vez has intentado leer Java ofuscado, sabes qué alivio es.


Comenzando: Instalación y Configuración

En realidad, déjame retroceder. La forma más fácil de comenzar con fabric-loom es clonar el mod de ejemplo oficial, no construir loom desde cero. Un mod de ejemplo ya tiene todo conectado correctamente.

bash
git clone https://github.com/FabricMC/fabric-example-mod.git
cd fabric-example-mod

Eso es todo para la configuración básica. El build.gradle del mod de ejemplo ya tiene fabric-loom configurado.

Si estás agregando loom a un proyecto existente, lo agregarás a tu build.gradle:

gradle
plugins {
 id 'fabric-loom' version '1.16'
}

repositories {
 mavenCentral()
 maven { url 'https://maven.fabricmc.net' }
}

dependencies {
 minecraft 'com.mojang:minecraft:1.21.1'
 mappings loom.officialMojangMappings()
 modImplementation 'net.fabricmc:fabric-loader:0.19.0+'
}

Luego ejecuta `gradle build` y loom maneja el resto. Descarga Minecraft, lo desofusca, aplica los mapeos y configura tu IDE automáticamente.


Características Clave que Ahorran Horas

Descompilación y remapeo automáticos. En serio, esta es la característica. Tu código fuente pasa de nombres ofuscados ilegibles a nombres de variables parecidos al inglés porque los mapeos de Yarn son mantenidos por la comunidad. Cuando ves un método llamado `method_12847`, Yarn probablemente lo ha mapeado a algo significativo como `canFly()`. fabric-loom aplica esos mapeos transparentemente.

Configuraciones de ejecución del IDE. Después de que gradle se ejecuta, tu IDE sabe cómo lanzar Minecraft en modo de desarrollo. Puedes presionar el botón de depuración y avanzar a través de puntos de ruptura en el código de Minecraft. Esto es importante para entender qué está pasando realmente cuando se ejecuta tu mod.

Soporte de descompilador. fabric-loom utiliza tanto los descompiladores Fernflower como CFR para generar código fuente real con comentarios, no solo bytecode. La diferencia de legibilidad es enorme. Estás leyendo código que se parece a lo que escribió un humano, no una traducción automática.

Soporte de mapeos Tiny. El plugin fue construido desde cero para usar mapeos Yarn (formato tiny). Pero esto significa que obtienes nombres mantenidos por la comunidad, legibles por humanos para todo en Minecraft. No es perfecto, pero está años luz por delante de trabajar con código ofuscado.

Soporte multi-IDE. Ya sea que estés en IntelliJ IDEA, Eclipse o VS Code, fabric-loom genera los archivos de configuración correctos. No tienes que conectar manualmente las rutas de origen o directorios de salida.


Consejos y Errores Comunes

Primero: asegúrate de estar en Java 16 o más reciente. He visto a personas intentar usar JDKs más antiguos y obtener errores crípticos que no tienen nada que ver con el problema real.

Segundo: la versión de gradle importa. El plugin se enfoca en Gradle 7 o más reciente. Si tu compilación se rompe misteriosamente, verifica `gradle - version` primero. Lo mismo con el contenedor de Gradle - a veces el contenedor en caché está desactualizado.

La descompilación y el remapeo pueden tomar unos minutos en la primera compilación, especialmente en máquinas más lentas. No entres en pánico si gradle parece atascado. Toma ese café. En compilaciones posteriores está en caché, así que solo esperarás la compilación real.

Una cosa que confunde a la gente: mezclar mapeos de Yarn con otras fuentes de mapeo. Elige uno y cúmplelo. Si estás usando Yarn (como hacen la mayoría de proyectos de Fabric), simplemente usa `loom.officialMojangMappings()` y continúa.

Para la implementación, recuerda que tu jar de mod necesita incluir fabric-loader como requisito. No estás empaquetando Minecraft en sí - solo tu código de mod más el cargador que se conecta a Minecraft en tiempo de ejecución.


Probando tus Mods y el Ecosistema Más Amplio

Una vez que tu mod se compila y ejecuta, las pruebas se vuelven importantes. Si estás construyendo mods que interactúan con características del servidor (sistemas de votación, comandos, etc.), herramientas como la Herramienta de Prueba de Minecraft Votifier son útiles para validar que esa parte del ecosistema funciona. De manera similar, si tu mod genera texto o comandos, la Herramienta Generadora de Texto de Minecraft es útil para crear rápidamente prototipos de sintaxis de comando o mensajes en el juego que desees probar.

El punto más amplio: fabric-loom te lleva a un entorno de desarrollo funcional rápidamente, pero pasarás la mayor parte del tiempo construyendo características, no configurando cosas. Ese es el punto completo.


Cuándo Podrías Querer Alternativas

fabric-loom está específicamente construido para mods de Fabric. Si estás construyendo mods de Forge, el plugin Forge Gradle es el estándar y funciona lo suficientemente diferente como para que quieras sus documentos en su lugar.

Si estás trabajando en complementos puros del servidor (Spigot, Paper, Bukkit), no necesitas loom en absoluto. Esos usan arquitecturas y configuraciones de compilación diferentes.

Y si estás haciendo hacking en el iniciador de Minecraft o herramientas completamente separadas, fabric-loom no ayudará. Es específicamente para el desarrollo de mods dentro del ecosistema de Fabric.

¿Pero si estás construyendo un mod de Fabric? No hay una alternativa real que haga lo que hace loom. Es el estándar por una buena razón. El proyecto tiene 337 estrellas de GitHub y mantenimiento activo. Pero el último lanzamiento (1.16) agregó validación de complementos más estricta y mejor soporte de caché de compilación, lo que muestra que los mantenedores todavía están mejorando activamente las cosas.

Sobre el autor
Alexandru Maftei
Alexandru MafteiRedactor principal

Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.

¡Compártelo con tus amigos!

Preguntas Frecuentes

¿Cómo inicio con fabric-loom en un proyecto existente?
Agrega el plugin al bloque 'plugins' de tu archivo build.gradle, incluye los repositorios necesarios y declara las dependencias. Luego, ejecuta 'gradle build'.
¿Qué requisitos previos necesita fabric-loom?
Java 16 o superior, Gradle 7 o posterior, y soporta Minecraft desde la versión 1.14.4.
¿Cómo maneja fabric-loom el código ofuscado de Minecraft?
Desofusca automáticamente el bytecode y aplica mapeos Yarn para mejorar la legibilidad, con opción de generar código fuente.
¿Con qué IDEs funciona fluidamente fabric-loom?
Genera configuraciones para IntelliJ IDEA y Eclipse, y también es compatible con VS Code, permitiendo depuración sencilla.
¿Hay un modo rápido para empezar sin configurar desde cero?
Clona el repositorio de ejemplo oficial, donde ya está configurado el build.gradle con fabric-loom.

Comentarios

Aún no hay comentarios. ¡Sé el primero en compartir tu opinión!

We use cookies to improve your experience. By continuing to use this site, you agree to our use of cookies. Read our Privacy Policy