es:tutorial:setup

Instalando todo el entorno de trabajo

Prerrequisitos

  • Un “Kit de desarrollo en Java (JDK)” para Java 17 (recomendado) o una versión posterior. Visita https://adoptium.net/releases.html para ver los instaladores.
    • Si eres un profesional, puedes descargarlo de http://jdk.java.net/, que necesita ser extraído y ajustar las variables en el sistema manualmente.
  • Cualquier IDE que permita usar Java, por ejemplo Intellij IDEA(El más usado y recomendado) y Eclipse. También puedes usar otros editores de código, como Visual Studio Code.
    • Si no has usado nada de esto antes, te recomendamos usar Intellij IDEA, ya que es el que más la gente escoge para modding.

Instalando el mod

Manualmente

  1. Copia los archivos para empezar en fabric-example-mod (o desde the template generator, si deseas usar Kotlin u otras funciones.) puedes eliminar los archivos LICENSE y el README.md - ya que no son necesarias para tu mod, luego podrás hacerlas como prefieras.
  2. Edita el archivo gradle.properties:
    • Asegúrate de poner archives_base_name y maven_group a tu preferencia.
    • Asegúrate de actualizar las versiones del Minecraft, los mapeos, el loader y el loom - todo esto puedes saberlo con más detalle en

https://fabricmc.net/develop/ - para poder ajustar las versiones como tú desees.

  • Agrega cualquier otra dependencia que planeas usar al build.gradle.
  1. Importa el build.gradle a tu IDLE. Puedes ver más detalle en los siguientes pasos dependiendo tu IDLE.
  2. ¡Disfruta el modding!

Cambiar el Fabric Mod ID

Desde Minecraft 1.19.2, el mod ID de la Fabric API cambio de fabric a fabric-api. Cuando estés haciendo un backport de 1.19.2 a versiones más nuevas, asegúrate de cambiar esta parte en la sección de depends en tu fabric.mod.json.

IntelliJ IDEA

Si estas usando IntelliJ IDEA, por favor sigue los siguientes pasos:

  1. En el menú principal del IDLE, selecciona 'Import Project' (o File → Open… si ya tienes un proyecto abierto).
  2. Select the project's build.gradle file to import the project.
  3. After Gradle is done setting up, close (File → Close Project) and re-open the project to fix run configurations not displaying correctly.
  4. (If the run configurations still don't show up, try reimporting the Gradle project from the Gradle tab in IDEA.)

Optional, but recommended: By default, IntelliJ delegates to Gradle to build the project. This is unnecessary for Fabric and causes longer build times and hotswapping related weirdness, among other problems. To make it use the builtin compiler:

  1. Open the 'Gradle Settings' dialog from the Gradle tab.
  2. Change the 'Build and run using' and 'Run tests using' fields to 'IntelliJ IDEA'.

Unfortunately, it is currently impossible to set an IDE-wide default for the 'Build and run using' and 'Run tests using' options, so these steps have to be repeated for every new project.

NOTE: Don't run the idea gradle task. It is known to break development environment.

If you are using IntelliJ IDEA you can use the MinecraftDev plugin. This plugin adds support for automatically generating Fabric projects as well as some mixin related features like inspections, generating accessors/shadow fields, and copying Mixin Target References (JVM Descriptors). You can install it using IntelliJ's internal plugin browser by navigating to File → Settings → Plugins, then clicking the Marketplace tab and searching for Minecraft.

NOTE: The default template in the mcdev plugin blindly uses the latest unstable version of the loom. Use with caution.

Eclipse

If you are using Eclipse and you would like to have the IDE run configs you can run gradlew eclipse. The project can then be imported as a normal (non-gradle) Eclipse project into your workspace using the 'File' - 'Import…' menu, then 'General' → 'Existing Projects into Workspace'.

Visual Studio Code

If you are using VSCode, please follow these instructions.

Generating Minecraft Sources

Reading the Minecraft source is an essential part of modding. Unfortunately, we can't publish the Minecraft source because it violates the Minecraft EULA. You need to generate the Minecraft source yourself.

To generate the Minecraft source. run the genSources gradle task. If your IDE doesn't have gradle integration, run the following command in the terminal: gradlew genSources (or ./gradlew genSources on Linux/macOS). It can take a while depending on your computer power. You may need to refresh gradle after running the task.

See Reading the Minecraft source for how to read the source.

Getting started

Try adding an item or a block. It's also a good idea to visit Applying changes without restarting Minecraft.

Advice

  • While Fabric API is not strictly necessary for developing mods, its primary goal is to provide cross-compatibility and hooks where the game engine does not, and as such it is highly recommended! Even some of the tutorials on the wiki implicitly require Fabric API.
  • Occasionally, with development of fabric-loom (our Gradle build plugin) issues may crop up which require resetting the cache files. This can be done by running gradlew cleanloom. Running gradlew --stop can also help with a few rare issues.
  • Keep up with the latest Loom version (which is defined in build.gradle) and the Fabric Loader and Fabric API version for your mod (which is defined in build.gradle or gradle.properties). Latest version can be found in https://fabricmc.net/develop/. Even the old version Minecraft is supported by latest Loom and latest Fabric Loader.
  • Keep up with the latest Gradle version, which can be defined in gradle/wrapper/gradle-wrapper.properties. Old version Minecraft is supported by latest Gradle.
    • Different Gradle versions require different Java versions. Usually latest Gradle supports the recommended Java version 17.
  • If you're developing mods for old version Minecraft, besides changing gradle.properties, you may also need to change the Java compatibility version in build.gradle and the mixin config.
  • Don't hesitate to ask questions! We're here to help you and work with you to make your dream mod a reality.

Troubleshooting

"no usages" on every method

After running the genSources gradle task in IntelliJ IDEA, check if the sources are attached properly. Open a Minecraft .class file and click on the “Choose Sources…” button on the top right of the screen. Select the jar with “-sources” at the end (e.g. .gradle\loom-cache\1.20.1\net.fabricmc.yarn.1_20_1.1.20.1+build.10-v2\minecraft-project-@-merged-named-sources.jar)

Missing sounds

Sometimes, when importing the Gradle project into an IDE, the assets might not download correctly. In this case, run the downloadAssets task manually - either using IDE's built-in menu or by simply running gradlew downloadAssets.

Could not find or load class net.fabricmc.devlaunchinjector.Main: java.lang.ClassNotFoundException / "no JDK module specified" in the run config

It seems to be a bug of Intellij IDEA since a recent update 2023.2. To fix, just delete the `.idea` folder entirely and then restart Intellij IDEA. The module will be reconstructed. You may need to specify Java versions again. If after restarting there is no run config, you can run `gradle ideaSyncTask` then check it again.

java.lang.ClassNotFoundException: net.fabricmc.loader.impl.launch.knot.KnotClient / java.lang.TypeNotPresentException: Type net/minecraft/util/Identifier not present / java.lang.RuntimeException: Minecraft game provider couldn't locate the game! The game may be absent from the class path, lacks some expected files, suffers from jar corruption or is of an unsupported variety/version.

This may be because the project path contains non-ASCII characters that may cause incompatibility. Try move the project to paths without non-ASCII characters, or in the run config of “Minecraft Client” and “Minecraft Server”, set “Shorten Command Line” from “@argfile (Java 9+)” to “none”.

What's Next?

Create your first item.

es/tutorial/setup.txt · Last modified: 2024/06/30 00:38 by 40.77.167.7