Skip to content

Latest commit

 

History

History
78 lines (61 loc) · 3.12 KB

README.md

File metadata and controls

78 lines (61 loc) · 3.12 KB

ShittyAuthPatcher

A command-line tool for patching Mojang's authlib as well as Minecraft

Download

Prebuilt jar files can be downloaded from here

Compiling the tool

The tool uses Maven for building.

To compile the tool, use

$ mvn package

which will generate a ShittyAuthPatcher-VERSION.jar in the target folder

Usage

The tool can be used to patch both client as well as server jars.

Client

To patch your Minecraft client, use the authlib patch

e.g. with https://your.server being a server running ShittyAuthServer:

$ java -jar ShittyAuthPatcher-VERSION.jar authlib \
    --patch-all https://your.server \
    --patch-download-key \
    --library /path/to/your/.minecraft/libraries/com/mojang/authlib/1.18.2/1.18.2.jar \
    --library-out /path/to/your/.minecraft/libraries/com/mojang/authlib/1.18.2/1.18.2.jar

This will patch the authlib jar file in-place.

For older versions of Minecraft (older than 1.7.6), there is no authlib jar file. Instead, you need to patch the minecraft jar itself using the minecraft patch. e.g.:

$ java -jar ShittyAuthPatcher-VERSION.jar minecraft \
    --patch-all https://your.server \
    --minecraft /home/mr/.minecraft/versions/1.18.2/1.18.2.jar \
    --minecraft-out client.jar

Notes:

  • If you don't specify the --*-out parameters, they will default to replacing the original jar file

Server

Vanilla (notchian) server

To patch a (notchian) server jar file, use the server patch

e.g. with https://your.server being a server running ShittyAuthServer:

$ java -jar ShittyAuthPatcher-VERSION.jar server \
    --patch-all https://your.server \
    --patch-download-key \
    --server server.jar \
    --server-out server-patched.jar

Paper

Newer versions of Paper (1.18+) can be automatically patched as well using the paper patch:

e.g. with https://your.server being a server running ShittyAuthServer:

$ java -jar ShittyAuthPatcher-VERSION.jar paper \
    --patch-all https://your.server \
    --patch-download-key \
    --server paper.jar \
    --server-out paper-patched.jar

Notes:

  • --server-out is optional and will default to replacing the original jar file if not specified
  • This patch currently only works with notchian (meaning only the official server jar files provided by Mojang) and newer Paper servers. If you plan on patching your Spigot or older Paper server jar, you might need to do some manual work as well.

Custom (non-ShittyAuth) server setups

You can also provide all of the separate servers when patching the jar file if you're not using a ShittyAuthServer instance. Just use the --patch-auth, --patch-accounts, --patch-services, --patch-session, --patch-skins instead of --patch-all. You must also specify the path to the public key of the server using --patch-key.

For further information about these parameters, use the --help option on any patch.