
Hybrid Login Bridge for Online-Mode Servers
Keep online-mode security, allow selected non-premium usernames to join as guests with configurable restrictions.

SideGate is a Bukkit-compatible plugin (Spigot/Paper/Purpur) for servers that want to keep online-mode=true while still allowing selected non-premium players.
Premium players continue normal Mojang authentication, while approved guest players are handled by SideGate guest flow.
When Floodgate or Geyser-Spigot is installed, detected Bedrock players remain on the Bedrock authentication path and are not treated as SideGate guests.
premium-usernames always stay in premium path.allow-all-guests or allowed-guests.auto-detect-premium)./sidegate reload.Required dependency: ProtocolLib (SpigotMC)
https://www.spigotmc.org/resources/protocollib.1997/
.jar file in your /plugins folder.online-mode=true in server.properties.# SideGate Configuration
enable-guest-mode: true
auto-detect-premium: true
allow-all-guests: false
premium-usernames:
- "TamKungZ"
premium-session-failure:
action: "KICK_WITH_MESSAGE" # or FALLBACK_TO_GUEST
message: "&cThis username belongs to a Premium account.\n&eChange your username and try again."
allowed-guests:
- "FriendName1"
- "FriendName2"
guest-settings:
default-gamemode: "SURVIVAL"
chat-prefix: "&7[Guest] &r"
messages:
join-title: "&cACCESS RESTRICTED"
join-subtitle: "&7Guest Mode"
join-message:
- "&c=================================="
- "&6 Welcome to SideGate Protocol"
- "&7 Account Status: &cGuest (Non-License)"
- "&7 You have restricted gameplay access."
- "&c=================================="
Submit issues at:
https://github.com/TamKungZ/SideGate/issues
Please include:
Closed Source
Public reference snapshot:
https://github.com/TamKungZ/SideGate (sidegate-1.0.0-rc.1)
Guest/offline access has impersonation risk. For production servers, use an authentication plugin and strict permission setup.
If Mojang profile lookup is unavailable, SideGate does not assume the player is a guest. The server's normal online-mode authentication remains responsible for the login.
FALLBACK_TO_GUEST is a high-risk server-wide policy. It allows cracked clients to use Premium-registered usernames with Guest/offline UUIDs. Use an authentication plugin and UUID-based permissions.
The Premium session failure policy requires auto-detect-premium: true.
A client that deliberately spoofs the exact official UUID remains on normal online-mode authentication and cannot bypass Mojang session verification.