Files
FastLogin/README.md

129 lines
5.3 KiB
Markdown
Raw Permalink Normal View History

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).
So they don't need to enter passwords. This is also called auto login (auto-login).
2015-11-03 17:44:57 +01:00
## Features
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
* 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
* No client modifications needed
* 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
## 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.
2018-04-02 14:43:43 +02:00
## Development builds
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
side on `Changes`, you can see iterative change sets leading to a specific build.
2018-04-02 14:43:43 +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
## Commands
/premium [player] Label the invoker or the argument as paid account
/cracked [player] Label the invoker or the argument as cracked account
## Permissions
fastlogin.bukkit.command.premium
fastlogin.bukkit.command.cracked
fastlogin.command.premium.other
fastlogin.command.cracked.other
## 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
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`.
2022-01-14 12:12:05 +01:00
Possible values: `Premium`, `Cracked`, `Unknown`
## 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.
2021-02-18 18:16:06 +01:00
### Supported auth plugins
#### Spigot/Paper
* [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/)
* [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/)
2021-02-18 18:16:06 +01:00
#### BungeeCord/Waterfall
* [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
***
## 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
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
* 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
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