Skip to content

Instantly share code, notes, and snippets.

@Spottedleaf
Spottedleaf / Starlight 1.20.md
Last active June 6, 2024 15:18
The future of the Starlight mod

Final change of plans (March 8, 2024)

I don't see that many people are using Starlight on modern versions anymore. As such, I don't see any reason to continue to maintain the mod versions, given that they do have real mod conflict issues with other mods. Starlight is also not neccessary to use on 1.20.x anyways.

Starlight may make a return in a future project of mine, but for now I am ceasing to upload new mod versions and commit updates to the github. If you want Starlight on the server, you will need to use Paper or one of its derivatives.

Clone of https://github.com/spoorn/SimpleBackup/blob/main/SUMMARY.md. Added as a gist for commenting support

Overview

Below, I'll summarize some of the technical aspects of this mod as I've learned a bit of tricks along the way which may be useful for anyone reading.

This Backup mod was built as a Minecraft Fabric mod which backs up the current world on the server at automatic intervals, with support for various formats, manual backups, and lots of configuration.

Though this is a Minecraft mod, the code here is general to file copying, backups, multi-threading, etc. As I was using the mod on my own server, the world folder became very large (~75 GB) so I had to find ways to optimize the backup logic. Here are my findings.

22w16b docs

Known issues

  • Game can crash while ticking some mobs (parrots, allays, etc). MC-250321

Changes

Loader/Loom update required

Minecraft now uses LWJGL version 3.3.1, which contains Java 19-compiled class files. While you do not need Java 19 to play or build mods, this means Fabric Loader needs to be updated to version 0.14.0 (currently beta), and the same goes to Loom (refresh dependencies). The new Fabric Loader also contains some new features and improvements; the most significant one being ability to mixin into libraries like authlib.

Big Text refactor

Texts were split into text contents and structures. "Text contents" include what was previously called LiteralText, TranslatableText, etc (which no longer subclass or implement Text), and "text structure" is Text/MutableText (now a class with implementation). Text contents implement class_7417/TextContent. Various NBT text implementations have now been changed to "data so

@SizableShrimp
SizableShrimp / README.md
Last active May 9, 2024 13:59
How to fix Java libraries not loading in Minecraft Forge 1.17+

How to fix Java libraries not loading in Minecraft Forge 1.17+

By default, Minecraft Forge does not load dependencies from the classpath unless they are explicitly declared as mods. These steps outline how to remedy this. This guide assumes that:

  1. You are on ForgeGradle 5 or higher.
  2. You are on Forge 1.17.1 (37.0.13) or higher.

Using Java libraries

To configure your Java libraries to be loaded by Forge, you should use the minecraftLibrary configuration provided by ForgeGradle. You now must make sure to declare your dependencies using minecraftLibrary configuration.