A lightweight virtual limbo server plugin for Velocity proxy using LimboAPI.
A lightweight virtual limbo server plugin for Velocity proxy using LimboAPI.
plugins/simplelimbo/config.ymllimbos:
auth:
enabled: true
dimension: "OVERWORLD"
gamemode: "ADVENTURE"
world-time: 6000
spawn:
x: 0.0
y: 100.0
z: 0.0
yaw: 0.0
pitch: 0.0
settings:
read-timeout: 30000
should-rejoin: true
should-respawn: false
disable-falling: true
disable-falling-delay-ms: 5000
commands:
- "login"
- "register"
display:
on-join:
chat: "&eUse /login or /register"
title:
enabled: true
title: "&eAuthentication"
subtitle: "&7Please authenticate"
For plugins like JPremium that expect players to be on a named server:
velocity-bridge:
enabled: true
register-aliases: true
aliases:
auth: "auth" # Maps server name "auth" to limbo "auth"
Then in your auth plugin config, set the limbo server to auth.
disable-falling keeps players from dropping after join (Y lock mode).disable-falling-delay-ms controls when anti-fall starts.disable-falling-delay-ms (for example: 1200, 1500, 2000).should-rejoin: true keeps LimboAPI rejoin flow enabled (recommended for stability).should-respawn: false avoids extra respawn packet during join.Automatically catch players when backend servers crash:
auto-triggers:
fallback:
enabled: true
limbo: "fallback"
kick-patterns:
- ".*server.*closed.*"
- ".*timed out.*"
message: "&cServer offline. Moved to fallback."
Move idle players to a dedicated limbo:
auto-triggers:
afk:
enabled: true
limbo: "afk"
idle-time: 300
check-interval: 30
exempt-permission: "simplelimbo.afk.exempt"
Load schematic files for limbo environments:
limbos:
lobby:
world-file:
enabled: true
type: "SCHEMATIC"
path: "plugins/simplelimbo/worlds/lobby.schem"
offset:
x: 0
y: 64
z: 0
light-level: 15
| Command | Permission | Description |
|---|---|---|
/simplelimbo send <player> <limbo> |
simplelimbo.admin |
Send a player to a limbo |
/simplelimbo list |
simplelimbo.admin |
List all limbo servers |
/simplelimbo reload |
simplelimbo.admin |
Reload configuration |
| Permission | Description |
|---|---|
simplelimbo.admin |
Access to admin commands |
simplelimbo.afk.exempt |
Exempt from AFK trigger |
SimpleLimbo includes compatibility features for authentication plugins that call player.getCurrentServer():
fake-server-name in your limbo config to a valid Velocity server nameExample for JPremium:
# SimpleLimbo config.yml
velocity-bridge:
aliases:
auth: "auth"
limbos:
auth:
fake-server-name: "auth"
# ... other settings
# JPremium configuration.yml
limboServerNames: [auth]
mainServerNames: [lobby]
git clone https://github.com/ItsAzni/SimpleLimbo.git
cd SimpleLimbo
./gradlew shadowJar
The compiled JAR will be in build/libs/.
MIT License