Skip to content

Instantly share code, notes, and snippets.

@williambl
Last active May 27, 2023 15:59
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save williambl/c143c7f89cc55bdf9cff06b5bc49f915 to your computer and use it in GitHub Desktop.
Save williambl/c143c7f89cc55bdf9cff06b5bc49f915 to your computer and use it in GitHub Desktop.
History of Fabric

[13:13] Prospector: modmuss started OML (open mod loader) which was targeting minecraft 1.10, as a project mostly for fun. a bunch of people jumped on board with it

[13:14] Prospector: there was a big problem with this project, and that was that it didn't really do anything better than forge. like there was a list of events people wanted to add and it was basically just the forge event list lol

[13:14] Prospector: there weren't very many...new ideas with it

[13:14] Prospector: other than the fact that it used an open set of mappings, instead of MCP (called Open Mappings I believe)

[13:16] Prospector: OML pretty much died, and as 1.11 snapshots were rolling around, asie and modmuss started Fabric (after 2 name changes, Chorus and Prismarine) to play with these snapshots because some interesting changes were being made to the code, specifically to itemstacks. Fabric was determined to do things differently, using a modular approach, so you had fabric-loader, fabric-event-entity, fabric-resources, fabric-command, fabric-registry, etc. Fabric also used its own open source mappings, POMF (publicly open mapping files)

[13:18] Prospector: however, fairly quickly Fabric ran out of steam. Asie was unhappy with the problems using Sponge Mixin had, and I believe a custom solution was worked on for a bit but ultimately Fabric was somewhat abandoned and not in a great state. However, the little bit that they did get done was ported a bit, to 1.11 release and to 1.12.

[13:19] Prospector: But other than these yearly or semi-yearly ports, nothing really happened with Fabric. It didn't help that almost no one knew about it at this time (2016-mid2018)

[13:19] Prospector: then 1.13 rolls around, and many things happen at the same time

[13:20] Prospector: firstly, it's a big refactor to begin with, changing a lot of stuff within the codebase on mojang's end, which are of course interesting to check out, as with 1.11

[13:21] Prospector: secondly, Forge decides to go for a rewrite on their end, so there was no Forge on 1.13+

[13:22] Prospector: thirdly, Rift had cropped up as a new mod loader, sort of trying to fill the hole left by Forge on 1.13

[13:23] Prospector: fourthly, OML returns as OML2, with Coded and modmuss leading it, based on Fabric's POMF mappings and targeting 1.13

[13:24] Prospector: fifthly, it had been so long since 1.13 had come out that 1.14 snapshots were beginning

[13:26] Prospector: Asie began working on Fabric again and modmuss returns to it, dropping OML2. This time they settled for Sponge Mixin despite the issues, and got it going on some early 1.14 snapshots

[13:27] Prospector: This time, instead of going for the highly modular approach of having separate projects for each module of the API, it was decided to simplify that to 2: fabric-loader and fabric (api). Managing like 100 different GitHub repos can be a massive pain. This compromised slightly on the uniqueness, but it made development less fragmented and was good early on when it was mainly just asie writing the api.

[13:34] Prospector: Continuing where I left off...

Asie and modmuss continued to get Fabric's API and mappings to a presentable point, and it was decided internally that it was better to release sooner rather than later. I believe I made the first fabric mod other than modmuss and asie and it was Mod Menu

[13:35] Prospector: my first fabric screenshots:

[13:35] Prospector: on 11/11/18

[13:37] Prospector: this very well might be from before asie added resource loading hooks?

[13:37] Prospector: actually, no way

[13:37] Prospector: I probably just forgot to add them

[13:38] Prospector: anyway, on December 10th, 2018 Fabric launched publicly https://fabricmc.net/2018/12/10/announcement.html

[13:40] Prospector: Lots of stuff happened between December 10th and now

[13:40] Prospector: But not much as big as up until this point

[13:40] Prospector: so I will go over the highlights

[13:43] Prospector: History highlights:

  • Grondag was a lead developer of fabric for a bit, and contributed the renderer api
  • Fabric API was re-modularized, this time using only 1 github repo lol
  • big boring gap, can't think what happened in mid-late 2019 lol
  • Yarn was fraudulantly DMCA'd in June of 2020
  • Fabric is now pretty big

[13:44] Prospector: also this screenshot in the Fabric announcement post

[13:44] Prospector: that mod was literally an OML mod that was ported over

[13:44] Prospector: like pretty much 1:1

[13:44] shedaniel: 0.4.0 loader is like the big update that allowed jij

[13:47] Prospector: https://discord.com/channels/507304429255393322/507982478276034570/511271823506276362

[13:47] Prospector: asie wanted to make modmenu

[13:47] Prospector: but then i went: no

[13:50] LambdAurora: https://img.asie.pl/dTtp.mp4

@LePichu
Copy link

LePichu commented Sep 13, 2020

Pog.

@YTG1234
Copy link

YTG1234 commented Sep 13, 2020

continue updating the gist pls

@williambl
Copy link
Author

@YTG1234 Updated.

@Sollace
Copy link

Sollace commented Nov 9, 2020

Don't forget the death of LiteLoader, and the resulting shift that brought more mods to Fabric!

Oh yes, also the first place I learned about Fabric was in the Forge discord server where they gave examples of competing mod loaders you were not allowed to talk about. 💯

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment