Skip to content

Sqrilizz/Luckpumpkin

Repository files navigation

LuckPerms — Pumpkin

License: MIT Build

A LuckPerms platform adapter for PumpkinMC via PatchBukkit.

Developed by Sqrilizz on top of LuckPerms by Luck.

Important

This adapter is currently under active development and tracks PatchBukkit compatibility as it evolves.

About

LuckPerms-Pumpkin brings the full LuckPerms permissions system to PumpkinMC servers. It is not a rewrite — it's a platform adapter that preserves LuckPerms' mature architecture while adapting it for Pumpkin's multi-threaded, async-oriented runtime.

Features

  • Plugin loading via PatchBukkit
  • /luckperms command and all subcommands
  • Web editor integration
  • Storage backends — H2, SQLite, MySQL, PostgreSQL, MongoDB
  • Permission resolution — inheritance, wildcards, negation, cached calculations
  • Per-player LuckPermsPermissible injection (1:1 Bukkit parity)
  • Server-level PermissionMap / DefaultsMap / SubscriptionMap injection
  • Child-permission resolution via PumpkinPermissionMap
  • Contexts — gamemode, world
  • Groups, tracks, meta, prefixes, suffixes
  • Multi-language translations
  • Cross-server messaging (luckperms:update channel)
  • Diagnostics & benchmarks (pumpkin-diag, pumpkin-benchmark)
  • Native BukkitScheduler (merged upstream — PatchBukkit#15)
  • ServicesManager / LuckPerms API registration (merged upstream — PatchBukkit#15)
  • Vault integration (Permission and Chat via VaultUnlocked)
  • Plugin messaging (Messenger API — channel registration and dispatch)

Installation

  1. Requirements: PumpkinMC with PatchBukkit installed, Java 21+
  2. Download: Grab LuckPerms-Pumpkin-*.jar from the releases
  3. Deploy: Place the JAR into patchbukkit/patchbukkit-plugins/
  4. Start: Start your Pumpkin server — config generates on first run
patchbukkit/
  └── patchbukkit-plugins/
        └── LuckPerms-Pumpkin-*.jar

Building

Note

Requires Java 21 JDK or newer and Git.

git clone https://github.com/Sqrilizz/LuckPerms.git
cd LuckPerms/
./gradlew :pumpkin:loader:shadowJar

Output: pumpkin/loader/build/libs/LuckPerms-Pumpkin-*.jar

Commands

/luckperms user <name>       # Manage user permissions
/luckperms group <name>      # Manage group permissions
/luckperms track <name>      # Manage tracks
/luckperms editor            # Open web editor
/luckperms sync              # Sync data from storage
/luckperms verbose           # Verbose permission checking
/luckperms tree              # Permission tree viewer
/luckperms log               # View action log
/luckperms info              # Plugin info
/luckperms pumpkin-diag      # Thread & cache diagnostics  (requires luckperms.admin)
/luckperms pumpkin-benchmark # Permission benchmarks        (requires luckperms.admin)

Note

Aliases lp, perm, perms are also registered.

PatchBukkit Compatibility

API Status
Commands ✅ Supported
Player events (login/quit/gamemode/world) ✅ Supported
PermissibleBase injection ✅ Supported
PluginManager map injection ✅ Supported
ServicesManager ✅ Merged upstream — LP API registered on startup
BukkitScheduler ✅ Merged upstream — native async scheduling
Vault (Permission / Chat) ✅ Implemented via VaultUnlocked
getMessenger() ✅ Implemented — channel registration and message dispatch
getWorlds() ✅ Implemented — world context supported

Development Roadmap

  • Phase 1 — Initial port (plugin loading, commands, permissions, storage)
  • Phase 2 — Compatibility fixes (threading, player lifecycle, events)
  • Phase 3 — Performance layer (caches, concurrent reads, benchmarks, diagnostics)
  • Phase 3.5 — Full server-level permission infrastructure (1:1 Bukkit parity)
  • Phase 4 — Pumpkin-native improvements (native scheduler, Vault integration)
  • Phase 5 — Plugin messaging & World API

Contributions

Contributions are welcome! Please follow the Google Java Style Guide and try to match the style of the file you're editing.

License

LuckPerms is licensed under the permissive MIT License.

About

This pluign brings the full LuckPerms permissions system to PumpkinMC servers.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages