Plugin Release LimboAuth - Auth System built in virtual server - Limbo.

  • After careful consideration and due to limited usage, we’ve made the decision to discontinue the PaperMC forums. Moving forward, we recommend using Hangar for plugin uploads, and for all other community discussions and support, please join us on Discord.
Download Link
https://github.com/Elytrium/LimboAuth/releases/tag/1.0.6
Source Code
https://github.com/Elytrium/LimboAuth/
Support
https://elytrium.net/discord
Minecraft Versions
1.7.2 - 1.19.2
Compatible Java Versions
Java 11+
LimboAuth

Auth System built in virtual server (Limbo).
Needs LimboAPI to be installed on the proxy!

Test server: ely.su

See also
  • LimboFilter - Most powerful bot filtering solution for Minecraft proxies. Built with LimboAPI.
  • LimboAPI - Library for sending players to virtual servers (called limbo)
Features of LimboAuth
  • Supports H2, MySQL, PostgreSQL databases;
  • Geyser Floodgate support;
  • Hybrid (Floodgate/Online/Offline) mode support;
  • Uses BCrypt - the best hashing algorithm for password;
  • Ability to migrate from AuthMe-alike plugins;
  • Ability to block weak passwords;
  • TOTP 2FA support;
  • Ability to set UUID from database;
  • Highly customisable config - you can change all the messages the plugin sends, or just disable them;
  • MCEdit schematic world loading;
  • And more...
Start the server with LimboAuth (+ SocialAddon, if needed) on the desired SQL database.
Then you should execute the SQL statement (e.g. in PhpMySQL or in HeidiSQL)
And set the migration-hash field to the desired value in the LimboAuth config file.

JPremium:
SQL:
INSERT INTO limbo.AUTH
SELECT lastNickname, LOWER(lastNickname), IF(hashedPassword IS NULL, "", IF(premiumId IS NULL, hashedPassword, "")), COALESCE(firstAddress, ""), "", (UNIX_TIMESTAMP(firstSeen) * 1000), CONCAT(SUBSTR(uniqueId, 1, 8), '-', SUBSTR(uniqueId, 9, 4), '-', SUBSTR(uniqueId, 13, 4), '-',  SUBSTR(uniqueId, 17, 4), '-', SUBSTR(uniqueId, 21)), IF(premiumId IS NULL, "", CONCAT(SUBSTR(premiumId, 1, 8), '-', SUBSTR(premiumId, 9, 4), '-', SUBSTR(premiumId, 13, 4), '-',  SUBSTR(premiumId, 17, 4), '-', SUBSTR(premiumId, 21))), NULL, NULL, NULL FROM jpremium.user_profiles WHERE lastNickname IS NOT NULL
If you've used SHA256 in JPremium, set migration-hash to AUTHME_NP; if you've used SHA512, to SHA512_DBA. If you've used BCrypt, leave this field blank.

NLogin:
SQL:
INSERT INTO limbo.AUTH
SELECT realname, name, COALESCE(password, ""), COALESCE(address, ""), "", 0, CONCAT(SUBSTR(uniqueId, 1, 8), '-', SUBSTR(uniqueId, 9, 4), '-', SUBSTR(uniqueId, 13, 4), '-',  SUBSTR(uniqueId, 17, 4), '-', SUBSTR(uniqueId, 21)), IF(premiumId IS NULL, "", CONCAT(SUBSTR(premiumId, 1, 8), '-', SUBSTR(premiumId, 9, 4), '-', SUBSTR(premiumId, 13, 4), '-',  SUBSTR(premiumId, 17, 4), '-', SUBSTR(premiumId, 21))), NULL, NULL, NULL
FROM nlogin.table 

MoonVKAuth/DSKAuth:
SQL:
INSERT INTO база_лимбы.AUTH SELECT username, LOWER(username), IF(password IS NULL, "", IF(premium = 1, "", password)), COALESCE(register_ip, ""), "", reg_date, "", "", NULL, NULL, NULL FROM база_мунвк.auth WHERE username IS NOT NULL;
INSERT IGNORE INTO база_лимбы.SOCIAL
SELECT LOWER(username), vk_id, NULL, NULL, ban, double_auth, notification
FROM база_мунвк.vk;

migration-hash: AUTHME

AuthMe:

SQL:
INSERT INTO limbo.AUTH SELECT realname, username, COALESCE(password, ""), COALESCE(ip, ""), COALESCE(totp, ""), regdate, "", "", NULL, NULL, NULL FROM authme.table WHERE username IS NOT NULL
DBA:

SQL:
INSERT IGNORE INTO u27303_data.AUTH SELECT name, LOWER(name), IF(password IS NOT NULL, CONCAT("SHA512$", salt, "$", password), ""), COALESCE(reg_ip, ""), "", (UNIX_TIMESTAMP(firstjoin) * 1000), uuid, "", NULL, NULL, NULL FROM u27303_data.playerdata WHERE name IS NOT NULL 

Donation
Your donations are really appreciated. Donations wallets/links/cards:

  • MasterCard Debit Card (Tinkoff Bank): 5536 9140 0599 1975
  • Qiwi Wallet: PFORG or this link
  • YooMoney Wallet: 4100 1721 8467 044 or this link
 
Last edited:
  • Like
Reactions: Honnisha