Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for TamKungZ_

Securely allow authorized non-premium players to join your Online-Mode server.

Report SideGate?

SideGate

SideGate Logo

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

GitHub Documentation CurseForge SpigotMC

In-Game Screenshot


What is SideGate?

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.

Why use it?

  • Keep premium security path for normal players.
  • Avoid switching the entire server to offline mode.
  • Control exactly who can join as guest.
  • Apply clear guest restrictions and visual labels.

Core Features (Current)

  • Hybrid Login Flow: Premium users go through standard server authentication; guest candidates use SideGate injection flow.
  • Manual Premium Override: premium-usernames always stay in premium path.
  • Guest Admission Policy: Use allow-all-guests or allowed-guests.
  • Optional Auto-Detect: Mojang API lookup with internal cache (auto-detect-premium).
  • Guest Handling: Add guest tag, set gamemode, send title/subtitle/messages.
  • Guest Chat Prefix: Prefix applies to players with guest tag only.
  • Runtime Reload: /sidegate reload.
  • Public API: Addon plugins can integrate via SideGate API service.

Installation

Required dependency: ProtocolLib (SpigotMC)
https://www.spigotmc.org/resources/protocollib.1997/

  1. Install ProtocolLib (5.x+).
  2. Put the SideGate .jar file in your /plugins folder.
  3. Set online-mode=true in server.properties.
  4. Start or restart the server.

Configuration Example

# SideGate Configuration

enable-guest-mode: true
auto-detect-premium: true

allow-all-guests: false

premium-usernames:
  - "TamKungZ"

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=================================="

Requirements

  • Java: 17+
  • Server: Spigot / Paper / Purpur (Bukkit-compatible)
  • Dependency: ProtocolLib 5.x+ (SpigotMC)

Bug Reports

Submit issues at:
https://github.com/TamKungZ/SideGate/issues

Please include:

  • Server software + exact version
  • Java version
  • ProtocolLib version
  • SideGate version
  • Relevant startup/login logs

Project Status & License

Closed Source

  • Normal server usage is allowed.
  • Separate addon plugins using SideGate public API are allowed.
  • Modification/redistribution/repackaging of SideGate is not allowed without permission.
  • Commercial use or monetization requires prior permission by email: [email protected]

Public reference snapshot:
https://github.com/TamKungZ/SideGate (sidegate-1.0.0-rc.1)


Security Notice

Guest/offline access has impersonation risk. For production servers, use an authentication plugin and strict permission setup.

Information

CategoryAdmin Tools
Published onMay 19, 2026
LicenseAll rights reserved
Download1
Stars1
Watchers1

Pinned Versions

Members