Sodium

Sodium

44M Downloads

Sodium should verify the LWJGL installation at startup

jellysquid3 opened this issue ยท 7 comments

commented

Some launchers appear to be using the incorrect version of the LWJGL libraries, which causes problems since LWJGL doesn't follow Semver and makes breaking changes to some public interfaces in point releases.

We should check at startup that Minecraft is using a compatible version of LWJGL to avoid issues like #2560. For the Minecraft versions we currently provide updates for, this is:

  • Minecraft 1.20.1: LWJGL 3.3.1
  • Minecraft 1.20.6 and 1.21: LWJGL 3.3.3

This will avoid problems where users are given cryptic errors caused by binary mismatches, by instead presenting the user with a clear error message explaining that their LWJGL version is out of date.

Unfortunately (or perhaps fortunately?) many piracy launchers update LWJGL by default and don't provide any option to not do that, meaning the mod will always abort with an error for those launchers. But we're already crashing there, so implementing this check won't make anything worse.

commented

Resolved with ebed80b.

We still need to implement a front-end for showing error messages on Linux/macOS, but that's true of all the other early startup checks.

commented

Tested on Windows 11 and Arch linux with the latest version of prism launcher.

commented

Invalid verification Procedures

commented

Prob due to Axiom.

commented

@IGN-Styly If you have Axiom installed, then yes, #2585 is relevant and the likely culprit. But you should open a new issue rather than use this one if you are erroneously receiving the error message.

commented

Thanks for the help, it was my mistake. Can you close it?

commented

Sodium requires LWJGL version 3.3.1 on my Minecraft instance, while I am actually uses 3.3.3, which prevents the game from launching. When launching with 3.3.1 it freezes the game on startup, which is why I manually set version 3.3.3. This is weird behavior. Is there maybe a different solution?