SWhitelist | Group & Player Whitelist with Temporary Access [1.16.5 - 26.1] icon

SWhitelist | Group & Player Whitelist with Temporary Access [1.16.5 - 26.1] -----

An advanced whitelist plugin featuring group, player, and temporary access support.



SWhitelist
A powerful, feature-rich, and easy-to-use whitelist plugin that supports temporary whitelisting, group-based whitelisting via LuckPerms, multi-language system, bypass systems, custom kick actions, sounds, and more. Keep your server secure with style and absolute control!

Features
  • Player & Group Whitelisting: Whitelist individual players or entire groups.
  • Temporary Whitelists: Whitelist players or groups for a specific time (e.g., /swhitelist temp PlayerName 3d12h for 3 days and 12 hours) with automatic background expiration check & removal.
  • LuckPerms Integration: Seamlessly hook into LuckPerms to whitelist specific ranks or groups. If a user is in a whitelisted group, they can join instantly!
  • Multi-Language Support: Fully customizable and translates automatically based on your config.
  • Interactive Version Migrations: Never worry about updates! Both config.yml and language files automatically upgrade to newer versions without losing your custom values.
  • Bypass System: Grant administrators or VIP players the bypass permission (swhitelist.bypass) to log in even when the whitelist is active and they aren't on the list.
  • Sound Feedback: Configurable clean sounds upon commands and actions.
  • Dynamic Kick Actions: Toggle whether to kick non-whitelisted players immediately when the whitelist is enabled. Toggle whether to kick a player immediately when they are removed from the whitelist. Custom configurable kick/expiration kick messages.
  • Tab-Completion: Advanced and friendly tab-completion support for all commands and options.
Supported Versions
(Tested Versions)

new-versions.png
SWhitelist has been individually tested and verified on versions 1.16.5 and above (paper and spigot), with tests based on the latest builds of all versions. You can use the discussions section for bug reports.

Unsupported Versions
old-versions.png
SWhitelist may work on some versions, but the plugin only supports version 1.16.5 and above. For example, the plugin worked in versions 1.8.8 and 1.12.2 during tests, but it hasn't been full-tested on those versions. Therefore, it's impossible to get support.
You are solely responsible for all consequences.

Commands & Permissions
  • /swhitelist on
    • Activates the whitelist.
    • swhitelist.cmd.on
  • /swhitelist off
    • Deactivates the whitelist.
    • swhitelist.cmd.off
  • /swhitelist status
    • Shows current status of the whitelist.
    • swhitelist.cmd.status
  • /swhitelist add <player/group>
    • Permanently whitelists a player or LuckPerms group.
    • swhitelist.cmd.add
  • /swhitelist remove <player/group>
    • Removes a player or group from the whitelist.
    • swhitelist.cmd.remove
  • /swhitelist temp <player/group> <duration>
    • Temporarily whitelists a player/group (e.g., 1d, 12h, 30m).
    • swhitelist.cmd.temp
  • /swhitelist info <player/group>
    • Shows detailed whitelist information of a target.
    • swhitelist.cmd.info
  • /swhitelist list
    • Lists all whitelisted players and groups.
    • swhitelist.cmd.list
  • /swhitelist reload
    • Reloads configurations and language files.
    • swhitelist.cmd.reload
Bypass Permission: swhitelist.bypass

Installation & Setup
  1. Download the SWhitelist.jar file from SpigotMC.
  2. Drop the jar file into your server's plugins/ directory.
  3. Restart or Start the server to generate the configuration files.
  4. Configure the settings in plugins/SWhitelist/config.yml according to your preferences.
  5. (Optional) Install LuckPerms to enable group-based whitelisting.
  6. Run /swhitelist reload or restart your server to apply any changes.
Default Configuration (config.yml)
Code (YAML):
# ========================================
#       SWhitelist Configuration
# ========================================

# DO NOT CHANGE THIS
config-version
: 3

# Language selection
# Available: en, tr, de, fr, es, zh, ru, pt, ja, ko, pl
language
: en

# Whitelist toggle
whitelist
:
  enabled
: false

# Command settings
commands
:
  # Dynamic command aliases (requires reload to take effect)
  aliases
:
   - "swl"
    - "wl"
  # Permission nodes for each subcommand (customizable)
  permissions
:
    list
: "swhitelist.cmd.list"
    add
: "swhitelist.cmd.add"
    remove
: "swhitelist.cmd.remove"
    temp
: "swhitelist.cmd.temp"
    on
: "swhitelist.cmd.on"
    off
: "swhitelist.cmd.off"
    status
: "swhitelist.cmd.status"
    info
: "swhitelist.cmd.info"
    reload
: "swhitelist.cmd.reload"

# Kick settings
kick
:
  # Kick message for players not on the whitelist
  message
: "&c&lSWhitelist\n\n&fYou are not whitelisted on this server.\n&7Contact an administrator."
  # Kick message when a temporary whitelist entry expires
  expired-message
: "&c&lSWhitelist\n\n&fYour whitelist access has expired.\n&7Contact an administrator."
  # Kick online player when removed from whitelist?
  kick-on-remove
: true
  # Kick non-whitelisted online players when whitelist is enabled?
  kick-on-enable
: true

# Players with this permission bypass the whitelist
bypass-permission
: "swhitelist.bypass"

# How often to check for expired entries (in seconds)
expiration-check-interval
: 5

# Sound settings (played to the command sender on success)
sounds
:
  enabled
: true
  success
:
    sound
: ENTITY_EXPERIENCE_ORB_PICKUP
    volume
: 1.0
    pitch
: 1.2
  error
:
    sound
: ENTITY_VILLAGER_NO
    volume
: 1.0
    pitch
: 1.0

# Integration settings
hooks
:
  # Enable LuckPerms group support (requires LuckPerms plugin)
  luckperms
: true
 
Message File (en.yml)
Code (YAML):
# ========================================
#   SWhitelist Messages - English (en)
# ========================================
# Supports color codes: &a, &b, &c, etc.
# Supports HEX colors: &#FF5555
# Placeholders: {player}, {group}, {name}, {duration}, {count}, {type}, {remaining}, etc.

# DO NOT CHANGE THIS - used for automatic messages migration
messages-version
: 2

prefix
: "&6[SWhitelist] &r"

messages
:
  # General
  no-permission
: "&cYou don't have permission to use this command!"
  reload
: "&aConfiguration, messages and whitelist have been reloaded."

  # Whitelist toggle
  enabled
: "&aWhitelist has been enabled."
  disabled
: "&cWhitelist has been disabled."
  already-enabled
: "&eWhitelist is already enabled."
  already-disabled
: "&eWhitelist is already disabled."

  # Add/Remove
  player-added
: "&a{player} &fhas been added to the whitelist."
  group-added
: "&a{group} &fgroup has been added to the whitelist."
  temp-player-added
: "&a{player} &fhas been added to the whitelist for &e{duration}&f."
  temp-group-added
: "&a{group} &fgroup has been added to the whitelist for &e{duration}&f."
  player-removed
: "&a{player} &fhas been removed from the whitelist."
  group-removed
: "&a{group} &fgroup has been removed from the whitelist."
  already-added
: "&c{name} is already on the whitelist."
  not-found
: "&c{name} was not found on the whitelist."

  # Status
  status-header
: "&6&lWhitelist Status"
  status-state
: " &7State: {state}"
  status-on
: "&aEnabled"
  status-off
: "&cDisabled"
  status-players
: " &7Players: &f{count}"
  status-groups
: " &7Groups: &f{count}"
  status-temp
: " &7Temporary entries: &f{count}"

  # List
  list-header
: "&6&lWhitelist ({filter}) &7- Page {page}/{total_pages}"
  list-entry
: " &7- &e{name} &7[{type}] &8| &f{remaining}"
  list-empty
: " &7No entries found."
  list-footer
: " &7Use &e/swl list <filter> <page> &7to navigate."

  # Info
  info-header
: "&6&lWhitelist Info: &e{name}"
  info-type
: " &7Type: &f{type}"
  info-added-by
: " &7Added by: &f{added_by}"
  info-added-at
: " &7Added at: &f{added_at}"
  info-remaining
: " &7Remaining: &f{remaining}"

  # Errors
  invalid-duration
: "&cInvalid duration format! Examples: 1d12h, 30m, 2w, 1h30m"
  luckperms-not-found
: "&cLuckPerms is not available. Group features are disabled."
  player-not-exists
: "&c{player} has never joined this server!"
  group-not-exists
: "&cGroup '{group}' does not exist in LuckPerms!"

  # Usage messages
  usage-add
: "&cUsage: /swl add <player|group> <name>"
  usage-remove
: "&cUsage: /swl remove <player|group> <name>"
  usage-temp
: "&cUsage: /swl temp <player|group> <name> <duration>"
  usage-info
: "&cUsage: /swl info <name>"

  # Expiration
  expired-kicked
: "&e{player}'s whitelist access has expired and they were kicked."

  # Help menu
  help-header
: "&6&lSWhitelist Commands"
  help-lines
:
   - " &7- &e/swl add &6<player|group> &d<name> &7- &fAdd to whitelist"
    - " &7- &e/swl remove &6<player|group> &d<name> &7- &fRemove from whitelist"
    - " &7- &e/swl temp &6<player|group> &d<name> <duration> &7- &fAdd temporarily"
    - " &7- &e/swl list &6[players|groups|all] [page] &7- &fList whitelist entries"
    - " &7- &e/swl info &d<name> &7- &fShow entry details"
    - " &7- &e/swl on &7- &fEnable whitelist"
    - " &7- &e/swl off &7- &fDisable whitelist"
    - " &7- &e/swl status &7- &fShow whitelist status"
    - " &7- &e/swl reload &7- &fReload all configs"
 
FAQ
#1 Will there be support for older versions(1.8.8-1.15.2)?
During version testing, the plugin was able to start without errors on some older versions. However, its functionality was not fully tested on those versions. Because of this, older versions are not officially supported. You are free to try using the plugin on unsupported versions if you wish, but please note that no support will be provided for issues related to older versions.

#2 Which Minecraft versions are officially supported?
All versions from 1.16.5 and above have been tested. If you encounter any issues with a specific version, please request support. (Reviews are for rating the plugin, please do not use them for support requests.)

#3 Does the plugin support both Spigot and Paper?
Yes, the plugin has been tested on both Spigot and Paper for all versions 1.16.5 and above. However, due to the high number of versions tested, some versions were only checked to confirm that the plugin starts correctly. If you encounter any issues, please request support.

#4 I installed the plugin but something went wrong. What should I do?
This plugin uses a simple algorithm, so it should not easily produce errors. If you encounter an issue, please provide the error message (all of them if there are multiple), along with your full version details (including both the version number and server type such as Paper or Spigot).

#5 Are there any dependencies?
No required dependencies. However, if you want to use the group feature, you need to have LuckPerms installed.

#6 Does this plugin support reload (/reload)?
While it may work on its own, it is not recommended due to potential conflicts and issues with other plugins. A full server restart is recommended instead.

DO NOT USE REVIEWS FOR BUG REPORT!


Usage Terms

This plugin is provided for personal and authorized server use only. Redistribution, resale, sublicensing, sharing, copying, modification for redistribution, or reuploading of this plugin, in whole or in part, is strictly prohibited without prior written permission from the author.

You may not sell, distribute, reproduce, or claim ownership of this plugin or any of its contents. Any unauthorized use, reproduction, or distribution may result in legal action.
Resource Information
Author:
----------
Total Downloads: 10
First Release: Jun 4, 2026
Last Update: Jun 4, 2026
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings