66 lines
2.5 KiB
Markdown
66 lines
2.5 KiB
Markdown
# LitePermissions (Spigot / BungeeCord Plugin)
|
||
|
||
**LitePermissions** is a lightweight, hybrid permissions plugin designed for **Spigot and BungeeCord** servers.
|
||
It aims to offer clean, fast, and flexible permission management across single or multi-server networks, with full support for **multi-world** and **per-user overrides**.
|
||
|
||
---
|
||
|
||
## 🚧 Project Status
|
||
|
||
This plugin is currently in **active development**. Major features are being implemented incrementally.
|
||
🛠️ Expect bugs, missing features, and frequent changes.
|
||
|
||
---
|
||
|
||
## ✅ Planned Features
|
||
|
||
### Core Features
|
||
- ✅ **Custom Permissible Injection** (Spigot)
|
||
- ✅ **Multi-world Permission Support** – Define permissions per world
|
||
- 🔄 **GroupsData** – Group-based permission management with weights
|
||
- 🔄 **UserData** – Per-player permission overrides
|
||
- 🔄 **Reload Command** – Reload permission data without restarting
|
||
|
||
### GUI & Web
|
||
- 🔄 **GUI Editor** – In-game menus to manage permissions and groups
|
||
- 🔄 **Web Panel (PHP)** – Remote permission management from a browser
|
||
|
||
### Network Support
|
||
- 🔄 **BungeeCord Compatibility** – Cross-server permission sync (planned)
|
||
- 🔄 **Messaging Channel or Database Syncing**
|
||
- 🔄 **Network-wide Group Inheritance**
|
||
|
||
---
|
||
|
||
## 📊 How Permissions Are Decided
|
||
|
||
LitePermissions checks permissions in this priority order:
|
||
|
||
1. ✅ User's **world-specific** permission
|
||
2. ✅ User's **global** permission
|
||
3. ✅ Group’s **world-specific** permission (highest-weight group only)
|
||
4. ✅ Group’s **global** permission (highest-weight group only)
|
||
5. ❌ If not found anywhere, permission is **denied by default**
|
||
|
||
---
|
||
|
||
### 🔍 Examples
|
||
|
||
| Where is it set? | User Value | Group Value | Final Result | Why? |
|
||
|---------------------|------------|-------------|--------------|----------------------------|
|
||
| In world settings | `true` | `false` | ✅ `true` | User's world setting wins |
|
||
| In world settings | `false` | `true` | ❌ `false` | User's world setting wins |
|
||
| Global (not world) | `true` | `false` | ✅ `true` | User's global setting wins |
|
||
| Not set for user | *(none)* | `true` | ✅ `true` | Comes from group |
|
||
| Not set anywhere | *(none)* | *(none)* | ❌ `false` | Denied by default |
|
||
|
||
---
|
||
|
||
## 🔧 Installation
|
||
|
||
> ⚠️ No public releases yet. Clone and build manually.
|
||
|
||
### Spigot Installation
|
||
```bash
|
||
git clone https://git.triler.eu/JernejTDO/LitePermissions.git
|