Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.games647:fastlogin:1.11'
}
dependencies {
implementation("com.github.games647:fastlogin:1.11")
}
<dependency>
<groupId>com.github.games647</groupId>
<artifactId>fastlogin</artifactId>
<version>1.11</version>
</dependency>
libraryDependencies += "com.github.games647" % "fastlogin" % "1.11"
:dependencies [[com.github.games647/fastlogin "1.11"]]
Checks if a Minecraft player has a paid account (premium). If so, they can skip offline authentication (auth plugins). So they don't need to enter passwords. This is also called auto login (auto-login).
Please use issues for bug reports, suggestions, questions and more. Please check for existing issues. Existing issues can be voted up by adding up vote to the original post. Closing issues means that they are marked as resolved. Comments are still allowed and it could be re-opened.
Development builds contain the latest changes from the Source-Code. They are bleeding edge and could introduce new bugs,
but also include features, enhancements and bug fixes that are not yet in a released version. If you click on the left
side on Changes, you can see iterative change sets leading to a specific build.
You can download them from here: CodeMC(Jenkins)
sequenceDiagram
autonumber
participant C as Client
participant S as Server
participant M as Mojang
C->>S: LOGIN_START (name)
Note over S: DB: check if username is saved as premium
S->>C: ENCRYPTION_REQUEST
Note right of C: Offline clients terminates connection here
Note right of C: In Offlinemode: LOGIN_SUCCESS is sent directly
rect rgb(240, 240, 240)
C->>M: POST /session/minecraft/join
C->>S: ENCRYPTION_RESPONSE
Note right of C: Client starts encrypting
end
Note over S: Decrypt and verify token
S->>M: GET /hasJoined (async)
M->>S: {uuid, name, skin}
Note over S: Server encrypts traffic
Note over S: Inject skin and premium UUID
S->>S: Re-inject LOGIN_START(name)
S->>C: LOGIN_SUCCESS
/premium [player] Label the invoker or the argument as paid account
/cracked [player] Label the invoker or the argument as cracked account
fastlogin.bukkit.command.premium
fastlogin.bukkit.command.cracked
fastlogin.command.premium.other
fastlogin.command.cracked.other
This plugin supports PlaceholderAPI on Spigot. It exports the following variable
%fastlogin_status%. In BungeeCord environments, the status of a player will be delivered with a delay after the player
already successful joined the server. This takes about a couple of milliseconds. In this case the value
will be Unknown.
Possible values: Premium, Cracked, Unknown
This plugin performs network requests to:
FastLoginBukkitonlinemode in your server.properties to falseInstall the plugin on both platforms, that is proxy (BungeeCord or Velocity) and backend server (Spigot).
spigot.yml or paper.ymlallowed-proxies.txt file in the FastLogin folder of the restarted server
stats-id from the BungeeCord config into this fileproxyId.txt inside the plugins folder of the proxymysql for MySQL/MariaDBmariadb for MySQL/MariaDBonlinemode in your config.yml to false