Installation
Install PkLogin on a standalone Paper, Spigot or Folia server.
This page covers a single server with no proxy in front of it. If your network runs Velocity, read Velocity setup instead — the steps differ and the proxy has to be installed first.
Requirements
- Java 21 or newer
- Paper, Spigot or Folia on API level 1.20 or newer
Steps
Download the jar
Grab PkLogin.jar from the releases page
and drop it into your server's plugins/ folder.
Turn off online mode
online-mode=falseWith online-mode=true the server authenticates every player against Mojang itself, and no
cracked player can join — which leaves PkLogin nothing to do.
Firewall the port
An offline-mode server accepts any name a client claims. Do not expose the game port to the internet without knowing what reaches it.
Start the server
Configuration files are generated on first start:
Edit and reload
Open plugins/PkLogin/config.yml, change what you need, then run:
/pklogin reloadReload re-reads config.yml and the message file. Changing the database engine still
needs a full restart.
Verifying it works
Join the server with a cracked client. You should be frozen in place and asked to register:
/register <password> <password>Then join with a premium account whose name PkLogin has never seen. With
autologin.premium.enable on, you should be logged in without typing anything.
Common first-run problems
Either autologin.premium.enable is false, or the name already exists in the database
as an offline account. An existing offline account is
converted with /premium confirm — PkLogin never changes the mode of an account it already
knows.
online-mode is still true in server.properties, so the server authenticated everyone
against Mojang before PkLogin was reached.
That is Security.time-to-login, the window to run /login or /register. Raise it if
your join flow needs longer.