Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is this? #13

Open
Decme opened this issue Dec 12, 2021 · 1 comment
Open

What is this? #13

Decme opened this issue Dec 12, 2021 · 1 comment

Comments

@Decme
Copy link

Decme commented Dec 12, 2021

This shows up in the md menu, but the info on the <> Code page looks aimed at describing the mod for programmers only. Anyone know how to explain what this is to a non-programmer?

@kanpov
Copy link

kanpov commented Dec 23, 2021

@Decme here's my attempt

Minecraft code is not built for mods. Many things available to Mojang developers are initially not available for modders.

If a modder encounters that something he/she needs is locked, there are multiple options:

  • Use Fabric API, the thing that you probably heard of, which fixes many of such inconveniences
  • If Fabric API doesn't support what you're trying to do, use a third-party library, like Geckolib or Fabric Shield Lib
  • If you didn't find any library that suits your needs, use Mixin, which is (disclaimer: this explanation is oversimplified for the sake of clarity) a tool that lets modders modify the game's code. One large benefit of Mixin is that, for the most part, it keeps you safe from breaking absolutely everything and ruining compatibility with other mods.
  • Unfortunately, for more specialized needs, Mixin might not support what you're trying to do, you'll have to use ASM, which is what Mixin is based on and a tool for directly modifying, replacing and adding code. ASM is limitless but it is extremely dangerous and there are limitless possibilities of screwing up.
  • This library, Fabric-ASM, is a set of utilities that makes working with ASM easier and, maybe, safer for Fabric modders.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants