PluginMIT
PlayerAccessList
A plugin for managing server access with white and black lists
5
Downloads
0
Followers
2 months ago
Updated
📦
1
Versions
📖About PlayerAccessList
🛡️ PlayerAccessList (PAL)
PlayerAccessList is a powerful and flexible access management system for your Minecraft server, providing whitelist and blacklist functionality.

✨ Features
- MySQL support — The plugin can connect to external databases.
- MiniMessage support — Uses the modern formatting system from Adventure API.
- Asynchronous checks — Most access checks are performed asynchronously.
- Migration — Allows copying data from the vanilla whitelist into the plugin database.
- Logging — Ability to log all actions to console or moderator chat.
- Overrides system — Configure custom access scenarios using Overrides.
- Multi-language support — Several localization files are built in.
Suggest a translation on our Discord server - Developer API — Go to GitHub
🚀 Commands
| Command | Aliases | Description | Permission |
|---|---|---|---|
/whitelist |
/wl, /whl |
Manage the whitelist | pal.whitelist |
/blacklist |
/bl, /bll |
Manage the blacklist | pal.blacklist |
/pal |
/playeraccess, /playeraccesslist |
Main plugin command (reload, migration) | pal.admin |
📈 bStats Analytics
View PlayerAccessList on bStats
# █████▄ ██ ▄████▄ ▄█████ ▄█████ ██ ██ ▄█████ ██████
# ██▄▄█▀ ██ ██▄▄██ ██ ██ ██ ██ ▀▀▀▄▄▄ ██
# ██ ██████ ██ ██ ▀█████ ▀█████ ██████ ██ █████▀ ██
#
# » Support: https://dsc.gg/bytepl
#
# ⚠ Found a bug? Please contact support before leaving a low rating.
# We value your trust and will help you quickly!
# ❤ Like the plugin? Leave a review, it's the best motivation.
# Plugin prefix in messages. (placeholders: %prefix%)
prefix: 'EADFF&lPAL &8»&7'
# Color code and text formatting mode.
# All methods support HEX colors.
#
# Options:
# » LEGACY (Classic: &6, &#aabbcc)
# » LEGACY_UPDATED (Extended: &6, &#aabbcc, <#aabbcc>)
# » MINIMESSAGE (Tags: <red>, <gradient>)
serializer: "legacy"
# Plugin localization (the corresponding file must be in the /lang/ folder)
#
# Available localizations:
# » ru (Russian) [By SuperCHIROK1]
# » en (English) [By SuperCHIROK1]
#
# Help us improve!
# If you've made a high-quality translation into another language,
# suggest it on our Discord server: https://dsc.gg/bytepl
language: en
# Player data storage settings
database:
# Database type.
# It is recommended to change this while the server is offline.
#
# Types:
# sqlite - local file (recommended for small servers)
# mysql - remote DB (recommended for server networks/BungeeCord)
type: "sqlite"
# SQLite file name/path (will be created in the plugin folder)
sqlite_path: 'data.db'
# MySQL connection parameters (used if type: mysql)
mysql:
host: "0.0.0.0" # Database IP address
port: 3306 # MySQL port
username: "pal_user" # Database username
password: "password" # User password
database: "pal_db" # Created database name
# Connection parameters string.
# (if you are not sure what this is, we recommend leaving it as is)
args: "?useSSL=false&autoReconnect=true&characterEncoding=utf8"
# Synchronization section for multiple servers (MySQL only)
polling:
# Should the automatic cache update be enabled?
# If you have multiple servers connected to the same DB,
# this allows them to see changes made on other servers.
enabled: false
# Update check interval (in seconds).
# Lower values mean players can join faster after being added,
# but the plugin will "query" the database more frequently.
# Recommended: 30-60 seconds.
delay: 60
access.yml:
# █████▄ ██ ▄████▄ ▄█████ ▄█████ ██ ██ ▄█████ ██████
# ██▄▄█▀ ██ ██▄▄██ ██ ██ ██ ██ ▀▀▀▄▄▄ ██
# ██ ██████ ██ ██ ▀█████ ▀█████ ██████ ██ █████▀ ██
#
# » Support: https://dsc.gg/bytepl
#
# ⚠ Found a bug? Please contact support before leaving a low rating.
# We value your trust and will help you quickly!
# ❤ Like the plugin? Leave a review, it's the best motivation.
whitelist:
# Enable whitelist?
enabled: false
# Kick message shown to the player.
kick_message:
- '&cYou are not whitelisted on this server!'
- '&7yourserver.net'
# List of players who cannot be added to the whitelist.
cannot_be_added:
- TestPlayer
- player1234
blacklist:
# Enable blacklist?
enabled: false
# Kick message shown to the player.
kick_message:
- '&cYou are blacklisted from this server!'
- '&7yourserver.net'
# List of players who cannot be added to the blacklist.
cannot_be_added:
- TestPlayer
- player1234
overrides:
# Enable overrides system?
enabled: true
# Override files. Must be located in the plugin folder.
# You can add your own files here.
files:
- 'overrides/overrides.yml'
nickname_check:
# Enable nickname validation?
enabled: true
# Kick message if the player's name doesn't match the standards.
kick_message:
- '&cYour nickname does not meet the server standards!'
# Regex pattern for nickname validation.
regex: '^[a-zA-Z0-9_]{3,16}$'
logging.yml:
# █████▄ ██ ▄████▄ ▄█████ ▄█████ ██ ██ ▄█████ ██████
# ██▄▄█▀ ██ ██▄▄██ ██ ██ ██ ██ ▀▀▀▄▄▄ ██
# ██ ██████ ██ ██ ▀█████ ▀█████ ██████ ██ █████▀ ██
#
# » Support: https://dsc.gg/bytepl
#
# ⚠ Found a bug? Please contact support before leaving a low rating.
# We value your trust and will help you quickly!
# ❤ Like the plugin? Leave a review, it's the best motivation.
moderator_log: true
console_log: true
# Type of message sent to moderators.
# Options:
# CHAT_MESSAGE - Chat message
# ACTIONBAR - Actionbar message
message_type: CHAT_MESSAGE
# Sound played to moderators.
# Format: 'sound_id volume pitch'
sound: 'entity.item.pickup 1 0.2'
messages:
whitelist: 'Player &f%player% (%ip%) &7tried to join, but they are not whitelisted.'
blacklist: 'Player &f%player% (%ip%) &7tried to join, but they are blacklisted.'
kick: 'Player &f%player% (%ip%) &7tried to join.'
overrides/overrides.yml:
##
## overrides:
## <name>: (can be anything, it doesn't affect functionality)
## enabled: <true|false> <- Enabled?
## conditions: <- Conditions under which the player will be kicked from the server. (usage and list below)
## - "list of conditions.."
## kick: <- Kick message
## - '&cYou have been kicked from the server'
##
# List of conditions and their descriptions:
## 1. nickname: <nickname> - Checks the player's name.
## Example: - 'nickname: Notch' (will kick the player with this nickname)
## 2. uuid: <id> - Checks the player's unique ID.
## Example: - 'uuid: 069a79f4-44e9-4726-a5be-fca90e38aaf5'
## 3. ip: <address> - Checks the player's IP address.
## Example: - 'ip: 127.0.0.1'
## 4. permission: <permission> - Checks for the presence of a permission node.
## Example: - 'permission: group.guest' (will kick anyone who has this permission)
## 5. world: <world> - Checks which world the player is in.
## Example: - 'world: world_nether' (will kick the player if they are in the nether)
# Using the ! operator (NEGATION):
## If you put ! before a condition, it will trigger for those who DO NOT match the description.
## Example: - '!permission: server.vip' (will kick all who DO NOT have vip status)
# Example configuration: (all are disabled by default)
overrides:
# Check by player nickname.
nickname_check:
enabled: false
conditions:
- 'nickname: BadPlayer' # Kick the player with the nickname BadPlayer
kick:
- '&cBad players are not allowed in!'
- '&6server.net'
# Check for the presence of a permission. (if they have it, let them in, otherwise kick)
# The "negation" operator works here.
permission_check:
enabled: false
conditions:
- '!permission: techwork.work' # Kick the player who does not have the "techwork.work" permission
kick:
- '&cServer is currently under maintenance.'
- '&6server.net'