2015-09-05 10:03:06 +02:00
|
|
|
# FastLogin
|
2015-09-04 19:56:58 +02:00
|
|
|
|
2016-05-18 15:47:51 +02:00
|
|
|
Checks if a Minecraft player has a paid account (premium). If so, they can skip offline authentication (auth plugins).
|
2015-11-14 20:03:24 +01:00
|
|
|
So they don't need to enter passwords. This is also called auto login (auto-login).
|
2015-11-03 17:44:57 +01:00
|
|
|
|
2018-04-05 17:33:32 +02:00
|
|
|
## Features
|
2016-04-05 11:40:23 +02:00
|
|
|
|
2015-11-03 17:44:57 +01:00
|
|
|
* Detect paid accounts from others
|
|
|
|
* Automatically login paid accounts (premium)
|
|
|
|
* Support various of auth plugins
|
2016-03-20 11:30:52 +01:00
|
|
|
* Cauldron support
|
|
|
|
* Forge/Sponge message support
|
2016-03-23 10:15:48 +01:00
|
|
|
* Premium UUID support
|
2020-05-07 16:21:03 +02:00
|
|
|
* Forward skins
|
2022-01-14 12:12:05 +01:00
|
|
|
* Detect username changed and will update the existing database record
|
2015-11-13 22:46:38 +01:00
|
|
|
* BungeeCord support
|
2016-03-20 11:30:52 +01:00
|
|
|
* Auto register new premium players
|
|
|
|
* Plugin: ProtocolSupport is supported and can be used as an alternative to ProtocolLib
|
2015-11-04 19:41:47 +01:00
|
|
|
* No client modifications needed
|
2020-05-07 16:21:03 +02:00
|
|
|
* Good performance by using async operations
|
2016-06-10 09:22:21 +02:00
|
|
|
* Locale messages
|
2022-07-15 15:54:19 +02:00
|
|
|
* Support for Bedrock players proxies through FloodGate
|
2015-11-03 17:44:57 +01:00
|
|
|
|
2020-05-07 16:21:03 +02:00
|
|
|
## Issues
|
|
|
|
|
2022-01-14 12:12:05 +01:00
|
|
|
Please use issues for bug reports, suggestions, questions and more. Please check for existing issues. Existing issues
|
2020-05-14 15:11:01 +02:00
|
|
|
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.
|
2020-05-07 16:21:03 +02:00
|
|
|
|
2018-04-02 14:43:43 +02:00
|
|
|
## Development builds
|
|
|
|
|
2021-07-12 17:25:52 +02:00
|
|
|
Development builds contain the latest changes from the Source-Code. They are bleeding edge and could introduce new bugs,
|
2022-01-14 12:12:05 +01:00
|
|
|
but also include features, enhancements and bug fixes that are not yet in a released version. If you click on the left
|
2021-07-12 17:25:52 +02:00
|
|
|
side on `Changes`, you can see iterative change sets leading to a specific build.
|
2018-04-02 14:43:43 +02:00
|
|
|
|
2021-07-12 17:25:52 +02:00
|
|
|
You can download them from here: https://ci.codemc.org/job/Games647/job/FastLogin/
|
2018-04-02 14:43:43 +02:00
|
|
|
|
2015-11-03 17:44:57 +01:00
|
|
|
***
|
2015-09-04 19:56:58 +02:00
|
|
|
|
2018-04-05 17:33:32 +02:00
|
|
|
## Commands
|
|
|
|
|
2018-03-09 13:57:51 +01:00
|
|
|
/premium [player] Label the invoker or the argument as paid account
|
|
|
|
/cracked [player] Label the invoker or the argument as cracked account
|
2015-10-01 19:35:41 +02:00
|
|
|
|
2018-04-05 17:33:32 +02:00
|
|
|
## Permissions
|
|
|
|
|
2018-03-09 13:57:51 +01:00
|
|
|
fastlogin.bukkit.command.premium
|
|
|
|
fastlogin.bukkit.command.cracked
|
|
|
|
fastlogin.command.premium.other
|
|
|
|
fastlogin.command.cracked.other
|
2015-10-01 19:35:41 +02:00
|
|
|
|
2020-05-14 13:41:32 +02:00
|
|
|
## Placeholder
|
|
|
|
|
2022-01-14 12:12:05 +01:00
|
|
|
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
|
2020-05-14 13:41:32 +02:00
|
|
|
already successful joined the server. This takes about a couple of milliseconds. In this case the value
|
2022-01-14 12:12:05 +01:00
|
|
|
will be `Unknown`.
|
2020-05-14 13:41:32 +02:00
|
|
|
|
2022-01-14 12:12:05 +01:00
|
|
|
Possible values: `Premium`, `Cracked`, `Unknown`
|
2020-05-14 13:41:32 +02:00
|
|
|
|
2018-04-05 17:33:32 +02:00
|
|
|
## Requirements
|
|
|
|
|
2024-02-13 16:40:14 +01:00
|
|
|
* Java 17+ (Recommended)
|
2022-06-08 10:20:15 +02:00
|
|
|
* Server software in offlinemode:
|
|
|
|
* Spigot (or a fork e.g. Paper) 1.8.8+
|
|
|
|
* Protocol plugin:
|
2024-02-13 16:40:14 +01:00
|
|
|
* [ProtocolLib 5.1+](https://www.spigotmc.org/resources/protocollib.1997/) or
|
2022-06-08 10:20:15 +02:00
|
|
|
* [ProtocolSupport](https://www.spigotmc.org/resources/protocolsupport.7201/)
|
2024-02-13 16:40:14 +01:00
|
|
|
* Latest BungeeCord (or a fork e.g. Waterfall) or Velocity
|
2021-02-18 18:16:06 +01:00
|
|
|
* An auth plugin.
|
2016-03-20 15:19:02 +01:00
|
|
|
|
2021-02-18 18:16:06 +01:00
|
|
|
### Supported auth plugins
|
|
|
|
|
|
|
|
#### Spigot/Paper
|
2016-03-20 15:19:02 +01:00
|
|
|
|
2016-05-14 13:25:12 +02:00
|
|
|
* [AdvancedLogin (Paid)](https://www.spigotmc.org/resources/advancedlogin.10510/)
|
2021-02-18 18:17:52 +01:00
|
|
|
* [AuthMe (5.X)](https://dev.bukkit.org/bukkit-plugins/authme-reloaded/)
|
2016-11-26 10:06:27 +01:00
|
|
|
* [CrazyLogin](https://dev.bukkit.org/bukkit-plugins/crazylogin/)
|
|
|
|
* [LoginSecurity](https://dev.bukkit.org/bukkit-plugins/loginsecurity/)
|
2021-02-18 18:17:52 +01:00
|
|
|
* [LogIt](https://github.com/games647/LogIt)
|
|
|
|
* [UltraAuth](https://dev.bukkit.org/bukkit-plugins/ultraauth-aa/)
|
2021-02-18 18:16:06 +01:00
|
|
|
* [UserLogin](https://www.spigotmc.org/resources/userlogin.80669/)
|
2021-02-18 18:17:52 +01:00
|
|
|
* [xAuth](https://dev.bukkit.org/bukkit-plugins/xauth/)
|
2016-03-20 15:19:02 +01:00
|
|
|
|
2021-02-18 18:16:06 +01:00
|
|
|
#### BungeeCord/Waterfall
|
2016-03-20 15:19:02 +01:00
|
|
|
|
|
|
|
* [BungeeAuth](https://www.spigotmc.org/resources/bungeeauth.493/)
|
2021-02-18 18:16:06 +01:00
|
|
|
* [BungeeAuthenticator](https://www.spigotmc.org/resources/bungeecordauthenticator.87669/)
|
2016-03-20 12:49:24 +01:00
|
|
|
|
2019-04-14 10:16:33 +02:00
|
|
|
## Network requests
|
|
|
|
|
|
|
|
This plugin performs network requests to:
|
|
|
|
|
|
|
|
* https://api.mojang.com - retrieving uuid data to decide if we should activate premium login
|
|
|
|
* https://sessionserver.mojang.com - verify if the player is the owner of that account
|
|
|
|
|
2015-11-03 17:44:57 +01:00
|
|
|
***
|
|
|
|
|
2018-04-05 17:33:32 +02:00
|
|
|
## How to install
|
2016-05-14 14:00:43 +02:00
|
|
|
|
2020-05-23 21:39:47 +02:00
|
|
|
### Spigot/Paper
|
2016-05-14 14:00:43 +02:00
|
|
|
|
2018-03-31 10:34:26 +02:00
|
|
|
1. Download and install ProtocolLib/ProtocolSupport
|
2022-02-15 11:59:59 +01:00
|
|
|
2. Download and install FastLogin (or `FastLoginBukkit` for newer versions)
|
|
|
|
3. Set your server in offline mode by setting the value `onlinemode` in your server.properties to false
|
|
|
|
|
|
|
|
### BungeeCord/Waterfall or Velocity
|
|
|
|
|
|
|
|
Install the plugin on both platforms, that is proxy (BungeeCord or Velocity) and backend server (Spigot).
|
|
|
|
|
|
|
|
1. Activate proxy support in the server configuration
|
|
|
|
* This is often found in `spigot.yml` or `paper.yml`
|
|
|
|
2. Restart the backend server
|
|
|
|
3. Now there is `allowed-proxies.txt` file in the FastLogin folder of the restarted server
|
2022-08-23 16:18:20 +02:00
|
|
|
* BungeeCord: Put your `stats`-id from the BungeeCord config into this file
|
2022-02-15 11:59:59 +01:00
|
|
|
* Velocity: On plugin startup the plugin generates a `proxyId.txt` inside the plugins folder of the proxy
|
|
|
|
4. Activate ip forwarding in your proxy config
|
|
|
|
5. Check your database settings in the config of FastLogin on your proxy
|
|
|
|
* The proxies only ship with a limited set of drivers where Spigot supports more. Therefore, these are supported:
|
2024-04-04 17:43:23 +02:00
|
|
|
* BungeeCord: `com.mysql.jdbc.Driver` for MySQL/MariaDB/PostgreSQL
|
|
|
|
* Velocity: `fastlogin.mariadb.jdbc.Driver` for MySQL/MariaDB/PostgreSQL
|
2022-02-15 11:59:59 +01:00
|
|
|
* Note the embedded file storage SQLite is not available
|
2024-04-04 17:43:23 +02:00
|
|
|
* MySQL/MariaDB/PostgreSQL requires an external database server running. Check your server provider if there is one available
|
2022-02-15 11:59:59 +01:00
|
|
|
or install one.
|
|
|
|
6. Set proxy and Spigot in offline mode by setting the value `onlinemode` in your `config.yml` to false
|
2022-06-09 12:04:42 +02:00
|
|
|
7. You should *always* configure the firewall for your Spigot server so that it's only accessible through your proxy
|
2022-02-15 11:59:59 +01:00
|
|
|
* This is also the case without this plugin
|
|
|
|
* https://www.spigotmc.org/wiki/bungeecord-installation/#post-installation
|