synccursecraft-1.21.1 V0.1.3 curseforge
Curse Maven Snippet
What's new
0.1.3
Update the server and every client together. The format the server announces in theserver list changed, and old and new do not understand each other. They say so plainlyinstead of failing in odd ways, but they will not talk.
Big packs fit in the server list again
A server with 223 mods went over the size limit of the ping response and could notannounce anything at all. Three changes to the wire format:
- Entries travel as positional arrays instead of objects, so the field names are gone.
- Download URLs drop the part that repeats the file name and the CDN prefix, and arerebuilt on the client.
- The display label no longer travels. It was the third most expensive field in a largepack and only served to draw a caption; the file name is shown instead, which is whatyou will see in your
modsfolder anyway.
That same 223 mod pack now takes 14011 of the 20000 characters available. The ceiling isaround 300 mods, depending on how long your file names are.
When the pack is still too big
Above that ceiling the list cannot be announced, and the server now says so in the pingrather than staying quiet. Before, the client could not tell "this server has no mod list"apart from "the list did not fit", and told the player the wrong one of the two.
Players now get: "This server has N mods, too many to list here. Connect to it once andthe list will arrive." Connecting is a real fix, not a workaround — the full list is sentduring the connection handshake, which has no size limit, and nothing else is needed.
Admins get the count and the reason in the console.
Mods with API downloads disabled
When a mod's author turns off third-party distribution on CurseForge, the project isthere but no download URL is. Previously that stopped generation unless you wrote afallbackUrl by hand.
The same file is now looked up on Modrinth by its SHA-1 and used if it is there. Most modsare published in both places, so this usually resolves itself with nothing to configure.A hand-written fallbackUrl still wins over the automatic lookup.
The CurseForge edition does not do this: it would hand the client a URL it is built torefuse. There the entry still fails, with the reason spelled out at generation time.
Requires
Minecraft 1.21.1 · NeoForge 21.1.x · Java 21. Both jars, as always: the mod and thebootstrap.
This mod has no additional files

