BellGate

🚪🛡️ BellGate — Secure Access, VIP Management & Discord Link

# 🚪🛡️ BellGate — Secure Access, VIP Management & Discord Link

### *Complete server access management — auth, whitelist, VIP subscriptions, and Discord linking.*

![API](https://img.shields.io/badge/Spigot | Paper-1.21+-green)
![Java](https://img.shields.io/badge/Java-21-orange)

---

## 🛡️ What is BellGate?

> **Your server's front door — secure, automated, and connected.**

BellGate is a **comprehensive server access management** plugin that handles everything from player authentication to VIP subscriptions. Secure login with **bcrypt hashing**, flexible whitelist management, seamless **Discord account linking**, and a fully automated **timed VIP system** with ecosystem-wide event broadcasting.

Whether you run a small SMP or a large network — BellGate keeps your server safe and your VIPs happy.

---

## ✨ Features

### 🔐 Authentication System
- 🔑 **Secure login & register** — bcrypt password hashing, industry-standard security
- ⏱️ **Session management** — configurable session timeout, stay logged in across reconnects
- 🌐 **IP-based memory** — optionally skip login for recognized IPs
- 🔒 **Movement lock** — unauthenticated players can't move, chat, or interact
- 🔄 **Password changes** — players manage their own credentials safely

### 📋 Whitelist Management
- ✅ **Flexible whitelist** — add/remove players with simple commands
- 🖥️ **Admin GUI** — visual whitelist management, no commands needed
- 📊 **Whitelist info** — see who's on the list at a glance

### 🔗 Discord Integration
- 💬 **DiscordSRV integration** — link Minecraft accounts to Discord
- 🆔 **Account verification** — require Discord linking before play
- 📡 **Status sync** — linked status visible to admins

### 👑 Timed VIP System
- ⏰ **Time-limited VIP** — grant VIP for X days, automatic expiration
- 🔄 **Auto-revoke** — groups and permissions cleanly removed when VIP expires
- 📢 **Ecosystem hooks** — `onVipChanged`, `onVipGranted`, `onVipRevoked` broadcast to all listeners
- 🔗 **LuckPerms integration** — VIP group assignment handled automatically
- 📊 **VIP tracking** — check status, list active VIPs, review expiration dates

### 🌍 Quality of Life
- 🌐 **Multi-language** — English and Polish built-in
- ⚡ **Lightweight** — minimal performance footprint
- 🔌 **Modular** — every feature can be toggled independently

---

## 📦 Dependencies

| Plugin | Required? | Purpose |
|--------|-----------|---------|
| *None* | — | BellGate works standalone! |
| LuckPerms | ⚙️ Optional | VIP group assignment |
| DiscordSRV | ⚙️ Optional | Discord account linking |
| BellLP | ⚙️ Optional | Ecosystem-wide VIP event propagation |

---

## 💻 Commands

### 🔐 Player Commands

| Command | Description |
|---------|-------------|
| `/register <password> <confirm>` | Register a new account |
| `/login <password>` | Log in to your account |
| `/changepassword <old> <new>` | Change your password |

### 👑 VIP Management

| Command | Description |
|---------|-------------|
| `/bellgate vip add <player> <days>` | Grant VIP for specified days |
| `/bellgate vip remove <player>` | Revoke VIP immediately |
| `/bellgate vip list` | List all active VIPs with expiry dates |
| `/bellgate vip check <player>` | Check a player's VIP status |

### ⚙️ Administration

| Command | Description |
|---------|-------------|
| `/bellgate whitelist add <player>` | Add player to whitelist |
| `/bellgate whitelist remove <player>` | Remove player from whitelist |
| `/bellgate whitelist list` | Show all whitelisted players |
| `/bellgate discord link <player>` | Force-link a player's Discord |
| `/bellgate discord unlink <player>` | Unlink a player's Discord |
| `/bellgate discord status <player>` | Check Discord link status |
| `/bellgate reload` | Reload all configuration files |

---

## 🔑 Permissions

| Permission | Description | Default |
|------------|-------------|---------|
| `bellgate.admin` | Access all admin commands and GUI | OP |
| `bellgate.vip` | VIP management commands | OP |
| `bellgate.whitelist` | Whitelist management commands | OP |
| `bellgate.bypass` | Bypass authentication requirement | false |

---

## ⚙️ Configuration Highlights

```yaml
# config.yml — Authentication settings
auth:
  enabled: true
  session-timeout-minutes: 60
  ip-remember: true
  max-login-attempts: 5
  lockout-duration-minutes: 15
  require-registration: true

# Movement restriction before login
restrictions:
  block-movement: true
  block-chat: true
  block-commands: true
  allowed-commands:
    - /login
    - /register
```

```yaml
# vip.yml — VIP system configuration
vip:
  enabled: true
  luckperms-group: "vip"
  notify-on-expire: true
  expire-message: "&cYour VIP status has expired!"
  grant-message: "&aYou have been granted VIP for {days} days!"

  # Ecosystem hooks — broadcast VIP changes to other Bell plugins
  ecosystem-hooks:
    enabled: true
    broadcast-grant: true
    broadcast-revoke: true
```

```yaml
# discord.yml — DiscordSRV integration
discord:
  enabled: false    # Enable when DiscordSRV is installed
  require-link: false
  link-reward-group: "linked"
```

---

## 🔒 Security Details

BellGate takes security seriously:

- **bcrypt hashing** — passwords are never stored in plain text
- **Rate limiting** — brute-force protection with configurable lockout
- **Session tokens** — cryptographically random session identifiers
- **IP validation** — optional IP-based session persistence
- **Restricted state** — unauthenticated players are fully locked down

---

## 🔌 Ecosystem Integration

BellGate's VIP system is designed to work seamlessly with the Bell plugin ecosystem:

```
Player purchases VIP
        │
        ▼
  /bellgate vip add <player> <days>
        │
        ▼
  ┌─────────────────────┐
  │   BellGate sets VIP  │──► LuckPerms group assigned
  │   and broadcasts     │──► BellLP syncs to ecosystem
  │   VipEcosystemHooks  │──► BellChat updates prefix
  └─────────────────────┘──► BellLandsPro raises limits
        │
        ▼
    VIP expires after X days
        │
        ▼
  ┌─────────────────────┐
  │  Auto-revoke fires   │──► All changes cleanly reversed
  └─────────────────────┘
```

---

## 📥 Installation

1. Drop `BellGate.jar` into your `/plugins` folder
2. Start or restart your server
3. Edit the generated config files in `plugins/BellGate/`
4. *(Optional)* Install LuckPerms for VIP group integration
5. *(Optional)* Install DiscordSRV for Discord linking
6. Run `/bellgate reload` to apply changes
7. Your server is now secured! 🎉

---

## 🤝 Support & Links

- 💬 **Discord:** [https://discord.gg/6q7bnSYaR](#) — fastest way to get help
- 📖 **Wiki:** [Full documentation](#)
- 🐛 **Issues:** [Report bugs](#)
- ⭐ **Rate this plugin** if it helps your server — it means a lot!

---

<p align="center">
  <b>BellGate</b> — Secure access. Seamless VIP. Connected ecosystem.<br>
  Made with ❤️ for the Minecraft community.
</p>

The BellGate Team

profile avatar
Owner
  • 8
    Projects
  • 61
    Downloads

More from BellzebView all

  • SkinStudio project image

    SkinStudio

    • 12
    • Bukkit Plugins

    SkinStudio is a premium Paper (1.21+) plugin that allows players to apply custom 3D models and textures to weapons and armor using collectible tokens without any mods.

    • 12
    • June 27, 2026
    • Bukkit Plugins
    • +1
  • ServerGuard_by_Bell project image

    ServerGuard_by_Bell

    • 5
    • Bukkit Plugins

    🛡️🔍📋 ServerGuard — Complete Server Monitoring & Security

    • 5
    • June 26, 2026
    • Bukkit Plugins
    • +3
  • BellTrade  project image

    BellTrade

    • 4
    • Bukkit Plugins

    💰🏪 BellTrade — The Ultimate Player Economy Suite

    • 4
    • June 26, 2026
    • Bukkit Plugins
    • +3
  • BellLP  project image

    BellLP

    • 4
    • Bukkit Plugins

    🔑🔗 BellLP — The Central Hub of Your Plugin Ecosystem

    • 4
    • June 26, 2026
    • Bukkit Plugins
    • +3
  • SkinStudio project image

    SkinStudio

    • 12
    • Bukkit Plugins

    SkinStudio is a premium Paper (1.21+) plugin that allows players to apply custom 3D models and textures to weapons and armor using collectible tokens without any mods.

    • 12
    • June 27, 2026
    • Bukkit Plugins
    • +1
  • ServerGuard_by_Bell project image

    ServerGuard_by_Bell

    • 5
    • Bukkit Plugins

    🛡️🔍📋 ServerGuard — Complete Server Monitoring & Security

    • 5
    • June 26, 2026
    • Bukkit Plugins
    • +3
  • BellTrade  project image

    BellTrade

    • 4
    • Bukkit Plugins

    💰🏪 BellTrade — The Ultimate Player Economy Suite

    • 4
    • June 26, 2026
    • Bukkit Plugins
    • +3
  • BellLP  project image

    BellLP

    • 4
    • Bukkit Plugins

    🔑🔗 BellLP — The Central Hub of Your Plugin Ecosystem

    • 4
    • June 26, 2026
    • Bukkit Plugins
    • +3