elytrium / limboauth Goto Github PK
View Code? Open in Web Editor NEWMinecraft Auth System for Velocity proxy built in virtual server (Limbo). Built with LimboAPI.
License: GNU Affero General Public License v3.0
Minecraft Auth System for Velocity proxy built in virtual server (Limbo). Built with LimboAPI.
License: GNU Affero General Public License v3.0
Describe the bug
If there is no connection to the database server continues to work and lets players in without the auth. This is a serious security concern
To Reproduce
Expected behavior
The server should stop immediately
Same as the title.
Why not add a whitelist for the authserver
Изменить заполнители сообщений.
Сейчас заполнители имеют вид {0}
, это не удобно при переводе, т.к приходится проверять каждое сообщение при переводе на другой язык.
В идеале всё же сделать плейсхолдеры, скорость прогрузки прокси это конечно хорошо, но это мизерные миллисекунды потерь, если всё же поменять заполнители на более понятные)
Было бы в разы удобнее тем, кто переводит сообщения на свой язык.
Add a /lauth info command whose return avaliable data from database.
Example after execute command:
Informations about Player1:
IP: <>
UUID: <>
Account type: <PREMIUM/CRACKED>
Register date: <>
Описание
Смена пароля в игре для игроков не работает.
Конкретнее
Должно было быть
Пароль должен был смениться.
Информация
Все плагины лимбо (Авторизация, фильтр и API) 1.0.5 версии.
Дамп велосити: https://dump.velocitypowered.com/yiyimifoqe.json
when i want limbo auth to load scheme file it doesn't work
[21:51:38 ERROR]: Couldn't pass ProxyInitializeEvent to limboauth
java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
at net.elytrium.limboapi.api.file.SchematicFile.toWorld(SchematicFile.java:61) ~[?:?]
at net.elytrium.limboauth.LimboAuth.reload(LimboAuth.java:344) ~[?:?]
at net.elytrium.limboauth.LimboAuth.onProxyInitialization(LimboAuth.java:182) ~[?:?]
at net.elytrium.limboauth.Lmbda$7.execute(Unknown Source) ~[?:?]
at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:47) ~[server.jar:3.1.2-SNAPSHOT (git-e8bf6ab5-b161)]
at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:598) ~[server.jar:3.1.2-SNAPSHOT (git-e8bf6ab5-b161)]
at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:479) ~[server.jar:3.1.2-SNAPSHOT (git-e8bf6ab5-b161)]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
Какие Разрешения у команды /premium в luckperms
Без прав "*" нет доступа к команде
При подключении плагина к базе данных выдаёт следующую ошибку - https://pastebin.com/yxDiK8Kf
Как я понял связанно как-то с размером строк или что-то такое, при импорте базы говорит:
"Указан слишком длинный ключ. Максимальная длина ключа составляет 767 байт"
Your issue should be based on the "Bug Report" template, in another cases the issue will be closed.
Upload your logs and error messages on pastebin-alike services without autodeletion.
Make sure that you can reproduce your bug on the latest build from the actions tab.
Your issue should be based on the "Feature Request" template, in another cases the issue will be closed.
Make sure that your idea is not implemented in the latest build from the actions tab.
Please, correctly define your idea. If we can't understand what you mean, your issue will be closed.
You can join our Discord server, there you can ask questions in the public chat or open tickets to get personal help.
Describe the feature you'd like to have implemented
Update h2 database library to version 2.x and perhaps also implement auto migration.
Is your feature request related to an existing problem? Please describe.
I had bad experience with h2 database 1.x because of its risk of database corruption. The 1.x version is not recommend by its developer anymore.
There are more details in the following link.
Additional context
LuckPerms/LuckPerms#3458
Adding a email authentication system :
New mode of registration (email only), it sends an email with a temporary password and the user can change it later.
New config :
Thank you !
Hello i use MYSQL database and my Site also connected to same database when my players use /premium command the plugin delete's password from database thats why my players couldnt login from site. how can i fix that ?
Describe the bug
LimboAuth generates TOTP scratch codes, but doesn't store them anywhere (see there).
dev.samstevens.totp.recovery.RecoveryCodeGenerator
just provides N random strings, that should be stored yourself.
TOTP doesn't describe recovery codes, it's a mechanism that is outside the scope of TOTP.
Possible solution
Add table column or separate table for storing generated recovery codes.
p.s. I think such long alphanumeric strings for recovery codes is a bad idea for a Minecraft server. It might be better to generate small integers, such it does GoogleAuth.
Now while players have premium minecraft account, they are automatically bypass registration and authorization process, then if Mojang's session server is down, all the players can't join the game.
Expectations:
Some config parameter, that forces all player to register, and then if user is premium easily bypass auth process, but if session server is down, force all users to log in.
Приветствую.
Было бы здорово иметь команду для проверки твинков (одинаковый ip) и собственно просмотр ip по нику.
Также не будет лишним добавить title subtitle с подсказкой reg/login
Describe the bug
Some player have bug when they not have an online UUID, they have offline instead despite having premium
To Reproduce
Idk, just join server and hope that your UUID brakes
Server Info (please complete the following information):
Velocity 3.1.2-SNAPSHOT
limboapi-plugin-1.0.4-SNAPSHOT
limboauth-1.0.4-SNAPSHOT
LuckPerms-Velocity-5.4.10
minimotd-velocity-2.0.6
[/velocity dump link]](https://dump.velocitypowered.com/owijacakor.json)
Describe the bug
not working minimessage formating
Server Info (please complete the following information):
Describe the feature you'd like to have implemented
Добавьте возможность вводить команды по типу /unreg, /changepass из консоли на случай если необходимо админу сервера помочь игроку.
Describe the bug
[13:22:40] [Geyser player thread-5-4/ERROR]: Unable to translate package ClientboundLoginPacket
java.lang.NullPointerException: Cannot invoke "com.github.steveice10.opennbt.tag.builtin.CompoundTag.get(java.lang.String)" because "tag" is null
at org.geysermc.geyser.util.JavaCodecEntry.iterateAsTag(JavaCodecEntry.java:41) ~[?:?]
at org.geysermc.geyser.translator.protocol.java.JavaLoginTranslator.translate(JavaLoginTranslator.java:73) ~[?:?]
at org.geysermc.geyser.translator.protocol.java.JavaLoginTranslator.translate(JavaLoginTranslator.java:58) ~[?:?]
at org.geysermc.geyser.registry.PacketTranslatorRegistry.translate0(PacketTranslatorRegistry.java:86) ~[?:?]
at org.geysermc.geyser.registry.PacketTranslatorRegistry.lambda$translate$0(PacketTranslatorRegistry.java:67) ~[?:?]
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:995) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at java.lang.Thread.run(Unknown Source) [?:?]
[13:22:40] [Geyser player thread-5-4/ERROR]: java.lang.NullPointerException: Cannot invoke "com.github.steveice10.opennbt.tag.builtin.CompoundTag.get(java.lang.String)" because "tag" is null
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.util.JavaCodecEntry.iterateAsTag(JavaCodecEntry.java:41)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.translator.protocol.java.JavaLoginTranslator.translate(JavaLoginTranslator.java:73)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.translator.protocol.java.JavaLoginTranslator.translate(JavaLoginTranslator.java:58)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.registry.PacketTranslatorRegistry.translate0(PacketTranslatorRegistry.java:86)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.registry.PacketTranslatorRegistry.lambda$translate$0(PacketTranslatorRegistry.java:67)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:995)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
[13:22:40] [Geyser player thread-5-4/ERROR]: at java.base/java.lang.Thread.run(Unknown Source)
[13:22:40] [Geyser player thread-5-4/ERROR]: Unable to translate package ClientboundSystemChatPacket
java.lang.NullPointerException: Cannot invoke "org.geysermc.geyser.text.ChatTypeEntry.bedrockChatType()" because the return value of "org.geysermc.geyser.platform.velocity.shaded.fastutil.ints.Int2ObjectMap.get(int)" is null
at org.geysermc.geyser.translator.protocol.java.JavaSystemChatTranslator.translate(JavaSystemChatTranslator.java:44) ~[?:?]
at org.geysermc.geyser.translator.protocol.java.JavaSystemChatTranslator.translate(JavaSystemChatTranslator.java:35) ~[?:?]
at org.geysermc.geyser.registry.PacketTranslatorRegistry.translate0(PacketTranslatorRegistry.java:86) ~[?:?]
at org.geysermc.geyser.registry.PacketTranslatorRegistry.lambda$translate$0(PacketTranslatorRegistry.java:67) ~[?:?]
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:995) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[velocity-3.1.2-SNAPSHOT-153.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at java.lang.Thread.run(Unknown Source) [?:?]
[13:22:40] [Geyser player thread-5-4/ERROR]: java.lang.NullPointerException: Cannot invoke "org.geysermc.geyser.text.ChatTypeEntry.bedrockChatType()" because the return value of "org.geysermc.geyser.platform.velocity.shaded.fastutil.ints.Int2ObjectMap.get(int)" is null
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.translator.protocol.java.JavaSystemChatTranslator.translate(JavaSystemChatTranslator.java:44)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.translator.protocol.java.JavaSystemChatTranslator.translate(JavaSystemChatTranslator.java:35)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.registry.PacketTranslatorRegistry.translate0(PacketTranslatorRegistry.java:86)
[13:22:40] [Geyser player thread-5-4/ERROR]: at org.geysermc.geyser.registry.PacketTranslatorRegistry.lambda$translate$0(PacketTranslatorRegistry.java:67)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:995)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[13:22:40] [Geyser player thread-5-4/ERROR]: at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
[13:22:40] [Geyser player thread-5-4/ERROR]: at java.base/java.lang.Thread.run(Unknown Source)
To Reproduce
Bedrock edition players join the server
Expected behavior
Geyser translated limboauth correctly
Screenshots
I
Server Info (please complete the following information):
limboapi 1.0.5(dowload from github)
limboauth 1.0.5(download from github)
geyser 2.0.4(master-691d674)
Additional context
Error: https://www.toptal.com/developers/hastebin/atatapuqip.properties
When I log in with my premium account after restarting the proxy, it disconnects me and the console shows the error that I left previously
(Client kick message "Disconnected")
Describe the bug
BE Players can't join the server
To Reproduce
Steps to reproduce the behavior:
Expected behavior
emmmmmm
Server Info (please complete the following information):
All Limbo plugins versions:
[e.g. LimboAPI 1.0.4-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/1926762894]
[e.g. LimboAuth 1.0.3-rc3, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/1806267878]
/velocity dump link [e.g. https://dump.velocitypowered.com/iqefukiliq.csharp]
Additional context
None
Пробовал на пустом конфиге велосити и лимбо плагинов
/velocity dump --> https://dump.velocitypowered.com/aterebiliz.json
На 1.18.2 все видно на том же запущеном сервере
Describe the bug
Everytime I try to connect to a 1.19.2 server via limboauth the client crashes due to packet errors.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
I should be able to join without any problems
Server Info (please complete the following information):
LimboAPI and LimboAuth 1.0.6
Limbo Api Social Addon 1.0.2
Other plugins: floodgate, geyser, luckperms, minimotd-velocity, skinsrestorer, velocity_tools, viaversion, viabackwards, viarewind
Joining to the limbo with 1.18.2 on 1.16.5 server with ViaVersion just disconnects the client.
When the session is active the 1.18.2 client can play normally.
Describe the feature you'd like to have implemented
Please add an option in the config to disable deleting password hashes after a user does /premium
Additional context
Keeping the hash would help with website integrations
Players when logged in from a limbo server would be moved to the lobby with the fewest players.
Add wiki.
Can you add a "forgot password" system for those who forgot their password?
While registering, if "mail" is mandatory, an e-mail will be sent via SMTP when players forget their password. And in this way, the password reset process can be done automatically.
Finally, can you add "title" messages that we can send in the Registration / Login section?
Describe the bug
I want to enable the online and offline authentication functions of limboauth. and I set the "online-mode-need-auth" in the configuration file to false. However, when an offline player enters the server, the client prompts "failed to log in:invalid session." I confirm that I have turned off the "online-mode" function of spigot and velocity
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Offline players and online players successfully enter the server, and online players do not need to authenticate their accounts
Server Info (please complete the following information):
LimboAPI 1.0.6
LimboAuth 1.0.6
Additional context
Отсутствует команда /logout закрывающую сессию игрока.
Понятно что не каждый этим пользуется, однако в некотором случае нужная функция.
Можно добавить в конфиг опцию которая выключает сохранении сессии и при каждом заходе будет требовать пароль + добавить всё и саму команду /logout
Describe the bug
My configuration: https://pastebin.com/M2nBQHuw
So i configure the plugin when a premium player join he doesn't need to register. The problem is randomly they connected on the server and the system doesn't recognize them as "Premium Players" and changed their UUID and they have to register. To fix the problem all i have to do is remove the specific player form LimboAuth Database but it's happen with A LOT of premium players and it's really annoying.
To Reproduce
Steps to reproduce the behavior:
Server Info (please complete the following information):
All Limbo plugins versions:
LimboAuth 1.0.4 Snapshop downloaded from https://github.com/Elytrium/LimboAuth/actions/runs/1745448894
LimboAPI 1.0.3 latest
Velocity Dump in private: noiraksA#9930
Additional context
Add any other context about the problem here.
As far as I know, you cannot set a certain amount of time for auto-login.
Can you add this?
Describe the bug
When players with premium minecraft account join my server plugin doesn't seem to be detecting that they are using premium account.
To Reproduce
My config:
version: "1.0.6-SNAPSHOT"
# Available serializers:
# LEGACY_AMPERSAND - "&c&lExample &c&9Text".
# LEGACY_SECTION - "§c§lExample §c§9Text".
# MINIMESSAGE - "<bold><red>Example</red> <blue>Text</blue></bold>". (https://webui.adventure.kyori.net/)
# GSON - "[{"text":"Example","bold":true,"color":"red"},{"text":" ","bold":true},{"text":"Text","bold":true,"color":"blue"}]". (https://minecraft.tools/en/json_text.php/)
# GSON_COLOR_DOWNSAMPLING - Same as GSON, but uses downsampling.
serializer: "LEGACY_AMPERSAND"
prefix: "Logowanie &6>>&f"
# Don't use \n, use {NL} for new line, and {PRFX} for prefix.
main:
# Maximum time for player to authenticate in milliseconds. If the player stays on the auth limbo for longer than this time, then the player will be kicked.
auth-time: 60000
enable-bossbar: true
# Available colors: PINK, BLUE, RED, GREEN, YELLOW, PURPLE, WHITE
bossbar-color: "RED"
# Available overlays: PROGRESS, NOTCHED_6, NOTCHED_10, NOTCHED_12, NOTCHED_20
bossbar-overlay: "NOTCHED_20"
min-password-length: 4
# Max password length for the BCrypt hashing algorithm, which is used in this plugin, can't be higher than 71. You can set a lower value than 71.
max-password-length: 71
check-password-strength: true
unsafe-passwords-file: "unsafe_passwords.txt"
online-mode-need-auth: false
# Needs floodgate plugin.
floodgate-need-auth: true
# TOTALLY disables hybrid auth feature
force-offline-mode: false
# Forces all players to get offline uuid
force-offline-uuid: false
# Delay in milliseconds before sending auth-confirming titles and messages to the player. (login-premium-title, login-floodgate, etc.)
premium-and-floodgate-messages-delay: 1250
# Forcibly set player's UUID to the value from the database
# If the player had the cracked account, and switched to the premium account, the cracked UUID will be used.
save-uuid: false
enable-totp: true
totp-need-password: true
register-need-repeat-password: false
change-password-need-old-password: true
# Used in unregister and premium commands.
confirm-keyword: "confirm"
# This prefix will be added to offline mode players nickname
offline-mode-prefix: ""
# This prefix will be added to online mode players nickname
online-mode-prefix: ""
# If you want to migrate your database from another plugin, which is not using BCrypt.
# You can set an old hash algorithm to migrate from.
# AUTHME - AuthMe SHA256(SHA256(password) + salt) that looks like $SHA$salt$hash (AuthMe, MoonVKAuth, DSKAuth, DBA)
# AUTHME_NP - AuthMe SHA256(SHA256(password) + salt) that looks like SHA$salt$hash (JPremium)
# SHA256_NP - SHA256(password) that looks like SHA$salt$hash
# SHA256_P - SHA256(password) that looks like $SHA$salt$hash
# SHA512_NP - SHA512(password) that looks like SHA$salt$hash
# SHA512_P - SHA512(password) that looks like $SHA$salt$hash
# SHA512_DBA - DBA plugin SHA512(SHA512(password) + salt) that looks like SHA$salt$hash (DBA, JPremium)
# MD5 - Basic md5 hash
# ARGON2 - Argon2 hash that looks like $argon2i$v=1234$m=1234,t=1234,p=1234$hash
# MOON_SHA256 - Moon SHA256(SHA256(password)) that looks like $SHA$hash (no salt)
# SHA256_NO_SALT - SHA256(password) that looks like $SHA$hash (NexAuth)
# SHA512_NO_SALT - SHA512(password) that looks like $SHA$hash (NexAuth)
# SHA512_P_REVERSED_HASH - SHA512(password) that looks like $SHA$hash$salt (nLogin)
migration-hash: ""
# Available dimensions: OVERWORLD, NETHER, THE_END
dimension: "THE_END"
purge-cache-millis: 3600000
purge-premium-cache-millis: 28800000
# QR Generator URL, set {data} placeholder
qr-generator-url: "https://api.qrserver.com/v1/create-qr-code/?data={data}&size=200x200&ecc=M&margin=30"
totp-issuer: "ELOCraft"
bcrypt-cost: 10
login-attempts: 3
ip-limit-registrations: 3
totp-recovery-codes-amount: 16
# Time in milliseconds, when ip limit works, set to 0 for disable.
ip-limit-valid-time: 21600000
# Regex of allowed nicknames
# ^ means the start of the line, $ means the end of the line
# [A-Za-z0-9_] is a character set of A-Z, a-z, 0-9 and _
# {3,16} means that allowed length is from 3 to 16 chars
allowed-nickname-regex: "^[A-Za-z0-9_]{3,16}$"
load-world: false
# World file type: "schematic" (1.12.2 and lower, not recommended), "structure" block .nbt (saved in 1.17 - 1.18.2).
world-file-type: "structure"
world-file-path: "world.nbt"
# World time in ticks (24000 ticks == 1 in-game day)
world-ticks: 1000
# World light level (from 0 to 15)
world-light-level: 15
# Available: ADVENTURE, CREATIVE, SURVIVAL, SPECTATOR
game-mode: "ADVENTURE"
# Custom isPremium URL
# You can use Mojang one's API (set by default)
# Or CloudFlare one's: https://api.ashcon.app/mojang/v1/user/%s
# Or use this code to make your own API: https://blog.cloudflare.com/minecraft-api-with-workers-coffeescript/
# Or implement your own API, it should just respond with HTTP code 200 only if the player is premium
ispremium-auth-url: "https://api.ashcon.app/mojang/v1/user/%s"
# If Mojang rate-limits your server, we cannot determine if the player is premium or not
# This option allows you to choose whether every player will be defined as premium or as cracked while Mojang is rate-limiting the server
# True - as premium; False - as cracked
on-rate-limit-premium: true
register-command:
- "/r"
- "/reg"
- "/register"
login-command:
- "/l"
- "/log"
- "/login"
totp-command:
- "/2fa"
- "/totp"
# New players will be kicked with registrations-disabled-kick message
disable-registrations: false
world-coords:
x: 0
y: 0
z: 0
cracked-title-settings:
fade-in: 10
stay: 70
fade-out: 20
clear-after-login: false
premium-title-settings:
fade-in: 10
stay: 70
fade-out: 20
strings:
reload: "{PRFX} &aReloaded successfully!"
reload-failed: "{PRFX} &cReload failed, check console for details."
error-occurred: "{PRFX} &cAn internal error has occurred!"
database-error-kick: "{PRFX} &cA database error has occurred!"
not-player: "{PRFX} &cKonsola nie może tego uruchomić!"
not-registered: "{PRFX} &cNie jesteś zarejestrowany albo masz konto &6PREMIUM!"
cracked-command: "{PRFX}{NL}&aNie możesz użyć tego polecenia, ponieważ masz konto &6PREMIUM&a!"
wrong-password: "{PRFX} &cZłe hasło!"
nickname-invalid-kick: "{PRFX}{NL}&cTwój nick zawiera niedozwolone znaki. Zmień go!"
# 6 hours by default in ip-limit-valid-time
ip-limit-kick: "{PRFX}{NL}{NL}&cTwó adres IP osiągnął limit zarejestrowanych graczy."
wrong-nickname-case-kick: "{PRFX}{NL}&cWielkość liter w twoim nicku jest nieodpowiednia."
bossbar: "{PRFX} Masz &6{0} &fsekund na zalogowanie."
times-up: "{PRFX}{NL}&cCzas na logowanie minął."
login-premium: "" # Can be empty.
login-premium-title: "" # Can be empty.
login-premium-subtitle: "" # Can be empty.
login-floodgate: "" # Can be empty.
login-floodgate-title: "" # Can be empty.
login-floodgate-subtitle: "" # Can be empty.
login: "{PRFX} &aZaloguj się używając &6/login <hasło>&a, pozostało &6{0} &aprób."
login-wrong-password: "{PRFX} &cWpisałeś złe hasło. Masz &6{0} &cprób."
login-wrong-password-kick: "{PRFX}{NL}&cZbyt wiele razy wpisałeś złe hasło!"
login-successful: "{PRFX} &aPomyślnie zalogowano!"
login-title: "" # Can be empty.
login-subtitle: "" # Can be empty.
login-successful-title: "" # Can be empty.
login-successful-subtitle: "" # Can be empty.
# Or if register-need-repeat-password set to false remove the "<repeat password>" part.
register: "{PRFX} Zarejestruj się używając &6/register <hasło>"
register-different-passwords: "{PRFX} &cHasła różnią się od siebie!"
register-password-too-short: "{PRFX} &cZa krótkie hasło, użyj innego!"
register-password-too-long: "{PRFX} &cZa długie hasło, użyj innego!"
register-password-unsafe: "{PRFX} &cHasło nie jest bezpieczne, użyj innego!"
register-successful: "{PRFX} &aPomyślnie zarejestrowano!"
register-title: "" # Can be empty.
register-subtitle: "" # Can be empty.
register-successful-title: "" # Can be empty.
register-successful-subtitle: "" # Can be empty.
unregister-successful: "{PRFX}{NL}&aPomyślnie wyrejestrowano!"
unregister-usage: "{PRFX} Użyj: &6/unregister <aktualne hasło> confirm"
premium-successful: "{PRFX}{NL}&aZmieniono konto na &6PREMIUM&a!"
already-premium: "{PRFX} &cTwoje konto jest już zarejestrowane jako &6PREMIUM&c!"
not-premium: "{PRFX} &cTwoje konto nie jest zarejestrowane jako &6PREMIUM&c!"
premium-usage: "{PRFX} Użycie: &6/premium <hasło> confirm"
event-cancelled: "{PRFX} Authorization event was cancelled"
force-unregister-successful: "{PRFX} &6{0} &apomyślnie odrejestrowano!"
force-unregister-kick: "{PRFX}{NL}&aZostałeś odrejestrowany przez administratora!"
force-unregister-not-successful: "{PRFX} &cNie udało się odrejestrować &6{0}&c. Prawdopodobnie gracz nie był na serwerze."
force-unregister-usage: "{PRFX} Użycie: &6/forceunregister <nick>"
registrations-disabled-kick: "{PRFX} Registrations are currently disabled."
change-password-successful: "{PRFX} &aPomyślnie zmieniono hasło!"
# Or if change-password-need-old-pass set to false remove the "<old password>" part.
change-password-usage: "{PRFX} Użycie: &6/changepassword <stare hasło> <nowe hasło>"
force-change-password-successful: "{PRFX} &aPomyślnie zmieniono hasło dla gracza &6{0}&a!"
force-change-password-message: "{PRFX} &aTwoje hasło zostało zmienione na &6{0} &aprzez administratora!"
force-change-password-not-successful: "{PRFX} &cNie można zmienić hasła dla gracza &6{0}&c. Przwdopodobnie gracz nie był na serwerze."
force-change-password-usage: "{PRFX} Użycie: &6/forcechangepassword <nick> <nowe hasło>"
totp: "{PRFX} Wpisz klucz 2FA używając &6/2fa <klucz>"
totp-title: "" # Can be empty.
totp-subtitle: "" # Can be empty.
totp-successful: "{PRFX} &aPomyślnie włączono 2FA!"
totp-disabled: "{PRFX} &aPomyślnie wyłączono 2FA!"
# Or if totp-need-pass set to false remove the "<current password>" part.
totp-usage: "{PRFX} Użycie: &6/2fa enable <hasło>&f lub &6/2fa disable <klucz 2FA>&f."
totp-wrong: "{PRFX} &cZły klucz 2FA!"
totp-already-enabled: "{PRFX} &c2FA jest już włączone. Dyłącz je używając &6/2fa disable <klucz 2FA>&c."
totp-qr: "{PRFX} Naciśnij tutaj aby otworzyć kod 2FA w przeglądarce."
totp-token: "{PRFX} &aTwój token 2FA &7(naciśnij, aby skopiować)&a: &6{0}"
totp-recovery: "{PRFX} &aTwoje kody odzyskiwania &7(kliknij, aby skopiować)&a: &6{0}"
destroy-session-successful: "{PRFX} &eTwoja sesja została zniszczona. Musisz zalogować się ponownie po ponownym dołączeniu."
auth-coords:
x: 0.0
y: 0.0
z: 0.0
yaw: 0.0
pitch: 0.0
# Database settings
database:
# Database type: mysql, postgresql or h2.
storage-type: "mysql"
# Settings for Network-based database (like MySQL, PostgreSQL):
hostname: "127.0.0.1:3306"
user: "something"
password: "something"
database: "something"
connection-parameters: "?autoReconnect=true&initialTimeout=1&useSSL=false"
Expected behavior
When player joins server they should have been detected as a premium account or not.
Server Info (please complete the following information):
All Limbo plugins versions:
[e.g. LimboAPI 1.0.6-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/2675404300]
[e.g. LimboAuth 1.0.6-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/2656704149]
/velocity dump link: https://dump.velocitypowered.com/nocifuleca.json
Am I doing something wrong or is this a bug?
so i got a friend and he forget his passowrd at my server and now we dont know how can i reset it anyone please help i cant reset and it is stored at h2 format
Describe the bug
When a player join using minecraft bedrock it sometimes go through and most of the time getting time out by limboapi
To Reproduce
Steps to reproduce the behavior:
Join a limboauth server with minecraft bedrock
Expected behavior
Works nicely without error
Screenshots
If applicable, add screenshots to help explain your problem.
Server Info (please complete the following information):
All Limbo plugins versions:
[e.g. LimboAPI 1.0.5-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/2579535740]
[e.g. LimboAuth 1.0.3-rc3, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/2481464963]
/velocity dump link [(https://dump.velocitypowered.com/nonuyokipo.json)]
Additional context
Add any other context about the problem here.
Describe the feature you'd like to have implemented
There should be a config option to filter out names using regex or specified list of names.
This would help reduce inappropriate names on servers.
This can be implemented to check on non-registered players only to reduce the load of every time a player join.
Limbo is a greate option but Not for bungeecord if you can add it to bungeecord too it would be greate.The main problem with velocity is it doesnt support BungeeCoord plugins which is needed like for an example i setup a bedwarspractise but to connect it with proxy it need a plugin installed at Bungeecord and it doesnt support velocity and this is only one example so ya if you can possibly make limbo to bungeecord too that's greate.
Describe the bug
Errors show up in console on proxy start with a postgres database.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
No errors. Though the plugin works perfectly fine even with the errors, it's just kind of annoying.
Screenshots
https://pastes.dev/oqioDnogFB
Server Info (please complete the following information):
All Limbo plugins versions:
[e.g. LimboAPI 1.0.4-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/runs/5630619580]
[e.g. LimboAuth 1.0.4-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAuth/runs/5618221017]
/velocity dump link https://dump.velocitypowered.com/jocozaxewo.json
Additional context
Add any other context about the problem here.
Authentication and connection still works, it's just annoying that it spams the console with it during start up.
Once someone does /premium, he can't view his skin and /unregister gives an error. Can someone tell how do I rewind /premium?
After I turn on option "force-offline-uuid",my online skin not be display, cannot be moved
But if I close "force-offline-uuid" my data stored on the offline UUID will be lost
(my velocity server have SkinsRestorer)
Describe the bug
in high version minecraft , clients display errors when entering commands,that may results from permissions issue.
the command works, but the warning seems weird.
To Reproduce
Steps to reproduce the behavior:
1.enter the velocity server
2. input in game 'login or register commands'
3. See error
Expected behavior
The commands should be in white color without warnings and it's better to have command prompt.
Server Info (please complete the following information):
All Limbo plugins versions:
[LimboAPI 1.0.3, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/xxxxxx]
[LimboAuth 1.0.3-rc3, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/xxxxxx]
/velocity dump link https://dump.velocitypowered.com/vinadilepa.json
Additional context
I am not good at English,and if there are sth which can't be expressed well,i am sorry.
Couldn't pass ProxyInitializeEvent to limboauth
java.lang.IllegalStateException: If you want floodgate players to automatically pass auth (floodgate-need-auth: false), please install floodgate plugin.
at net.elytrium.limboauth.LimboAuth.reload(LimboAuth.java:207) ~[?:?]
at net.elytrium.limboauth.LimboAuth.onProxyInitialization(LimboAuth.java:182) ~[?:?]
at net.elytrium.limboauth.Lmbda$3.execute(Unknown Source) ~[?:?]
at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:47) ~[server.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:598) ~[server.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:479) ~[server.jar:3.1.2-SNAPSHOT (git-74edac96-b153)]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
what can i do?
У меня проблема короче не просит пароль даже если я с пиратной версий, и в титл пишет Ты авторизован как премиум аккаунт
Describe the feature you'd like to have implemented
Add support for 1.19.2
Is your feature request related to an existing problem? Please describe.
When players try to join through 1.19.2, they get kicked
Describe the bug
A clear and concise description of the bug.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Server Info (please complete the following information):
/ - /velocity dump link [e.g. https://dump.velocitypowered.com/abcdef.json]
Additional context
[16:12:47 INFO] [limboapi]: likangxian1007 (/47.102.156.194:27683) has connected to the LimboAuth Limbo
[16:12:47 ERROR]: [initial connection] /47.102.156.194:27683: exception encountered in com.velocitypowered.proxy.connection.client.AuthSessionHandler@7999d319
io.netty.handler.codec.EncoderException: PreparedPacketEncoder must produce at least one message.
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:96) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:709) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:792) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:702) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.DefaultChannelPipeline.write(DefaultChannelPipeline.java:1015) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.AbstractChannel.write(AbstractChannel.java:301) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at com.velocitypowered.proxy.connection.MinecraftConnection.delayedWrite(MinecraftConnection.java:230) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at net.elytrium.limboapi.server.LimboImpl.lambda$spawnPlayer$4(LimboImpl.java:224) ~[?:?]
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:503) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[velocity-3.1.2-SNAPSHOT-137.jar:3.1.2-SNAPSHOT (git-aa38d3e5-b137)]
at java.lang.Thread.run(Thread.java:833) [?:?]
[16:12:47 INFO] [limboapi]: likangxian1007 (/47.102.156.194:27683) has disconnected from the LimboAuth Limbo
Describe the bug
Anyone that join the server get kicked and "Disconnected" message appear
To Reproduce
Steps to reproduce the behavior:
Expected behavior
User can successfully connect to the server
Server Info (please complete the following information):
All Limbo plugins versions:
[LimboAPI 1.0.4-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAPI/actions/runs/2082878209]
[LimboAuth 1.0.4-SNAPSHOT, downloaded from https://github.com/Elytrium/LimboAuth/actions/runs/2086353707]
/velocity dump link [https://dump.velocitypowered.com/uwefasagoh.json]
Additional context
None
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.