Here you can find a list of Forge mods with links to their Fabric alternatives.
So, as I update mods and switch more of them over to Fabric, I'm sure I'll frequently get asked "Will you port to Forge" or "Why not Forge," so I figured I'd make a document explaining why and link to it instead of typing up the explanation every time.
Maintaining mods for two different mod loaders is time consuming, and when choosing between them, Fabric is the clear choice to me. If I ever get to the point where my mods are all updated, I will consider porting mods to Forge on a case-by-case basis, but it will not be a priority. The lead developer of Forge, LexManos, has essentially told me he will not support features that allow me to update at least one of my mods past 1.12.2, and on top of that, he did so very rudely while treating me like a complete idiot for trying to make it possible to continue using Forge for that mod. I am not the only person he has treated in this manner, and I do not support this kind of toxic behavior.
I've conside
In the transition of Minecraft version 1.14 to 1.15, Mojang introduced some sweeping changes to the way rendering is performed; while the internal code still relies on GL1-era immediate-mode, block and entity renderer classes now provide their vertices to a specific RenderLayer* which are later rendered in ordered batches.
These changes broke a majority of Minecraft mods; in the process of porting a mod to 1.15, I had to frequently rely on a tool called “apitrace”, and I thought a quick how-to might come in handy for others struggling with similar problems. Apitrace allows capturing every OpenGL call an application makes, and later replaying these calls and inspecting the entire GL state machine at each rendering step.
For this tutorial, I am using the MultiMC launcher.
If you are like me you find yourself cloning a repo, making some proposed changes and then deciding to later contributing back using the GitHub Flow convention. Below is a set of instructions I've developed for myself on how to deal with this scenario and an explanation of why it matters based on jagregory's gist.
To follow GitHub flow you should really have created a fork initially as a public representation of the forked repository and the clone that instead. My understanding is that the typical setup would have your local repository pointing to your fork as origin and the original forked repository as upstream so that you can use these keywords in other git commands.
-
Clone some repo (you've probably already done this step)
git clone [email protected]
create different ssh key according the article Mac Set-Up Git
$ ssh-keygen -t rsa -C "[email protected]"