YetAnotherWhitelistPlugin (YAWL)

Most simple whitelist plugin for Velocity server.

97

Quick challenge

How far can you run before the mobs catch you?

YetAnotherWhitelistPlugin (YAWL)

YAWL (Yet Another Whitelist Plugin)

Velocity is an incredibly simple, lightweight, and efficient whitelist plugin designed exclusively for the Velocity proxy. If you need a no-fuss, easy-to-manage whitelist solution that just works, this is the plugin for you.

🚀 Overview

The core philosophy of YAWL is simplicity. In a world of complex plugins, YAWL stands out by doing one thing and doing it well. It manages a server whitelist through a plain text file (`whitelist.txt`), making it easy to view, edit, and manage without needing databases or complicated commands. It's built to be as performant and unobtrusive as possible, ensuring zero impact on your server's performance.

✨ Why Choose YAWL?

* 🔒 Permissions-Ready: The plugin has a minimal footprint. It's written to be extremely efficient and won't add any bloat or lag to your proxy. * 🔒 Permissions-Ready: All whitelisted players are stored in a simple `whitelist.txt` file. You can edit this file directly and reload the plugin in-game. * 🔒 Permissions-Ready: A clean `config.toml` file allows you to toggle the whitelist, change message languages, and set case sensitivity with ease. * 🔒 Permissions-Ready: YAWL comes with multiple pre-packaged languages (`en`, `ar`, `de`, `es`, `fr`, `ja`, `ru`, `uk`, `zh-cn`, `pt-br`, `tr`). It can even 🔒 Permissions-Ready:! * 🔒 Permissions-Ready: No need to restart your entire proxy. A simple command reloads the configuration and the whitelist instantly. * 🔒 Permissions-Ready: Fine-grained permission nodes give you complete control over who can manage the whitelist.

📦 Installation

1. Download the latest version of the plugin. 2. Place the downloaded `.jar` file into the `plugins` folder of your Velocity proxy. 3. Start or restart your proxy. 4. The default configuration (`config.toml`), locales, and an empty `whitelist.txt` file will be generated in `plugins/yawl`. Edit them to your liking!

⚙️ Configuration

The configuration is handled in the `plugins/yawl/config.toml` file.

```toml [settings]

Enable or disable the whitelist. If false, the plugin will not kick anyone.

enabled = true

Sets the language for plugin messages.

Corresponds to a file name in the 'locales' folder (e.g., "en", "ru").

locale = "en"

If true and the client has a language set that exists in the plugin's locales folder, it will be displayed.

If false, it will display default locale defined by upper setting.

use-client-locale = false

If true, player names in the whitelist will be case-sensitive (e.g., "Player" is different from "player").

If false, case will be ignored ("Player" and "player" are the same).

It's recommended to keep this 'false' for user-friendliness.

case-sensitive = false

Kick active player immediately after whitelist removal or expiry.

If false, the player will remain connected until they reconnect or reload occurs.

kick-active-on-revoke = true

Placeholder reload interval in minutes

placeholder-reload-interval = 2 ```

🆔 Placeholders

Starting with version 1.2, you can use the `%yawl_duration%` placeholder, which contains the amount of time remaining for the player. To use placeholders, you need to install YetAnotherWhitelistCompanion and PlaceholderAPI on your backend server(s).

image image image

💬 Commands

All commands start with `/yawl`.

| Command | Description | | --------------------------------- | --------------------------------------------------- | | `/yawl` | Displays the plugin help message. | | `/yawl add <player>` | Adds a player to the whitelist. | | `/yawl add <player> [<duration>]` | Adds a player to the whitelist for a specific time. | | `/yawl extend <player> [<duration>] [add|replace]` | Adds time for a specific player. If the white list timer has expired, it will suggest replacing the time based on the actual time or adding to the old time limit. | | `/yawl remove <player>` | Removes a player from the whitelist. | | `/yawl list` | Shows a list of all whitelisted players. | | `/yawl reload` | Reloads the config and `whitelist.txt`. |

🔑 Permissions

Grant these permissions to your staff groups to control who can manage the whitelist.

| Permission | Description | | ---------------------- | ------------------------------------------------------------- | | `yawl.bypass` | Allows a player to join the server even if not on the whitelist. | | `yawl.command.add` | Allows using the `/yawl add` command. | | `yawl.command.extend` | Allows using the `/yawl extend` command. | | `yawl.command.remove` | Allows using the `/yawl remove` command. | | `yawl.command.list` | Allows using the `/yawl list` command. | | `yawl.command.reload` | Allows using the `/yawl reload` command. |

ADS