
Mod That Closes The Game When It Opens Mk.2
An experiment to make the smallest possible Fabric mod (with actual code). Does what the title says.
An experiment to make the smallest possible Fabric mod (with actual code). Does what the title says.
So what't the drill?
The (self-imposed) rules are to make the smallest possible Fabric mod that "does something". The definition of that in my opinion is to run, or at least attempt to, some code. So what can be done with that?
- The class.
Although it looks simple, this is not valid Java - the compiled bytecode was manually modified to make it throw apublic class i extends java.io.File { public i() { throw null; } }null, and to removethisparameter in the initializer. Also, by default all classes extendjava.lang.Object, so it was changed tojava.io.Fileto save two letters.
-
Mod metadata
Abusing thefabric.mod.jsonformat, it can be compacted down to{"id":"id","version":"i","initializer":"i"}Back in 2019 Fabric used to have a different metadata format, which is still supported to this day! Thanks to it, the file doesn't need a
schemaVersionfield, or the complexentrypointssetup. -
Build process
There are two files, so there isn't much to compress, but to squeeze the most of it, they are zipped with the zopfli compressor. It is possible to get a smaller file size with .xz format, but it wouldn't be possible to load as a mod in that case. -
Runtime
Well, there isn't much code to ""do something"" - a no-op instruction would technically suffice, but I don't think it's interesting. So instead the code tries to throw an exception, and fails because it can't throw null. Task failed successfully, I guess…
Как поиграть с друзьями с модом Mod That Closes The Game When It Opens Mk.2?
Мод Mod That Closes The Game When It Opens Mk.2 куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода Mod That Closes The Game When It Opens Mk.2 будет готов за пару минут - BungeeHost сделает всё за вас.
