UltraWhitelist
ModrinthMulti-list whitelist with Named lists, Hotswap and importing
UltraWhitelist
UltraWhitelist is a Paper/Folia whitelist plugin with multiple named lists, JSON imports, and folia-safe enforcement.
Features
- Multi Whitelist support: Designed for multiple Lists at the same time
- Hotswapping Lists: Lists can be swapped using a single command
- Easy Import:
/wl import whitelist.json xxximports your already existing Server whitelist.json - Enforcement: Kicks all players not on the list
- Extensive list management: Lots of commands to Create/Delete/Merge/Manage lists
- Developer friendly API: Easy plugin integration
Commands
| Command | Purpose |
|---|---|
| /wl on | Enable whitelist. |
| /wl off | Disable whitelist. |
| /wl info | Show current status. |
| /wl list | Show every whitelist. |
| /wl listplayers <list> [page] | Show player names in a list. |
| /wl find <player> | Show every list containing a player. |
| /wl create <name> | Create a list. |
| /wl delete <list> | Delete a list |
| /wl add <list\|all> <player> | Add a player to a list / all lists. |
| /wl remove <list\|all> <player> | Remove a player from a list / all lists. |
| /wl use <list> | Change the active in-use list. |
| /wl enforce [list] | Kick online players not allowed by a list. |
| /wl merge <a> <b> <new> | Merge two lists into a new list. |
| /wl addfromlist <source> <destination> | Copy new entries between lists. |
| /wl import <file.json> <list> | Import a whitelist-style JSON file. |
| /wl reload | Reload the plugin. |
| /wl help | Show command help. |
Permissions
| Permission | Purpose | Default |
|---|---|---|
| ultrawhitelist.admin | Use whitelist-management commands. | Operators |
| ultrawhitelist.bypass | Avoid /wl enforce kicks. | Operators |
Developer API
1. Add the Dependency:
Maven
<repositories>
<repository>
<id>lolyay-releases</id>
<url>https://maven.lolyay.dev/releases</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>io.lolyay.mc</groupId>
<artifactId>WhitelistPlugin</artifactId>
<version>1.0.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
Gradle (Kotlin DSL)
repositories {
maven("https://maven.lolyay.dev/releases")
}
dependencies {
compileOnly("io.lolyay.mc:WhitelistPlugin:1.0.0")
}
2. Depend on it:
depend: [UltraWhitelist]
3. Get the service
Everything goes through WhitelistService, reachable from the plugin instance:
import io.lolyay.mc.whitelistPlugin.WhitelistPlugin;
import io.lolyay.mc.whitelistPlugin.core.WhitelistService;
WhitelistPlugin wl = (WhitelistPlugin) Bukkit.getPluginManager().getPlugin("UltraWhitelist");
if (wl == null || wl.service() == null) return; // not installed / not enabled yet
WhitelistService service = wl.service();
3. WhitelistService API
Global state
| Method | Description |
|---|---|
| boolean isEnabled() | Is whitelisting globally on? |
| boolean setEnabled(boolean) | Turn whitelisting on/off; returns false when unchanged. |
| String activeListName() | Name of the active (login-enforced) list, or null. |
| WhitelistList activeList() | The active list object, or null. |
| boolean setActiveList(String name) | Set the active list (null clears it); false when unchanged. |
Membership
| Method | Description |
|---|---|
| boolean isWhitelisted(UUID id, String name) | The exact check used on login. true if whitelisting is off, no active list, or the identity is on the active list (by UUID or name). |
boolean allowed = service.isWhitelisted(event.getUniqueId(), event.getName());
Lists
| Method | Description |
|---|---|
| WhitelistList getList(String name) | Case-insensitive lookup, or null. |
| Collection<WhitelistList> lists() | All lists. |
| List<String> findLists(UUID id, String name) | Sorted names of every matching list. |
| boolean createList(String name) | false if it already exists. |
| boolean deleteList(String name) | false if no such list. |
Entries
| Method | Description |
|---|---|
| boolean addUuid(String list, UUID id) | Add an entry; false when unchanged or missing. |
| boolean addName(String list, String name) | Add a name entry; false when unchanged or missing. |
| boolean removeUuid(String list, UUID id) | Remove an entry; false when unchanged or missing. |
| boolean removeName(String list, String name) | Remove an entry; false when unchanged or missing. |
| List<String> addUuidToAll(UUID) / addNameToAll(String) | Add to every list and return changed list names. |
| List<String> removeUuidFromAll(UUID) / removeNameFromAll(String) | Remove from every list and return changed list names. |
| MergeResult merge(String a, String b, String newName) | Merge two lists into a new one. |
| int addFromList(String src, String dest) | Copy entries and return the number added (-1 if missing). |
Name cache (UUID <-> name)
Entries are stored UUID-first; a persistent cache maps UUIDs to last-known names
(fed by logins, imports, and playerdb.co lookups).
| Method | Description |
|---|---|
| void cacheName(UUID id, String name) | Record/persist a UUID -> name mapping. |
| String nameFor(UUID id) | Last-known name for a UUID, or null. |
| UUID uuidForName(String name) | Cached UUID for a name (case-insensitive), or null. |
WhitelistList
| Method | Description |
|---|---|
| String name() | Display name. |
| boolean contains(UUID id, String name) | Matches by UUID or name. |
| Set<UUID> uuids() | Live UUID entries. |
| Map<String,String> names() | lower-cased name -> display name. |
| int size() | Total entry count. |
MergeResult: { OK, MISSING_A, MISSING_B, TARGET_EXISTS }.
Versions
FAQ
Comment installer UltraWhitelist ?
Téléchargez le fichier pour votre version de Minecraft et votre loader sur cette page, puis placez le .jar dans le dossier mods (ou plugins) et lancez le jeu.
UltraWhitelist est-il gratuit ?
UltraWhitelist est gratuit sur Modgrid — nous renvoyons directement vers la source officielle, sans paywall.
Quelles versions de Minecraft UltraWhitelist prend-il en charge ?
Compatible avec Folia, Paper, Purpur. Prend en charge les versions 26.1.2–26.2. La liste des versions et loaders pris en charge est dans la section de téléchargement de cette page.

Commentaires 0
Aucun commentaire pour l'instant. Sois le premier à donner ton avis.