Leaf
Friends | StaffChat | StaffList | and more!
Leaf
<img src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/leaf_slogon.png">
<div align=center> <a href="https://github.com/smuddgge/Leaf/releases"> <img src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/download.png" width="512" alt="Download"></a> <a href="https://smuddgge.gitbook.io/leaf-4.3.0/"> <img alt="Wiki" src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/wiki.png" width="512"></a> <a href="https://discord.gg/pax7uFhaaD"> <img alt="Discord" src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/Discord.png" width="512"></a> </div>
<div > <a href="https://builtbybit.com/resources/leaf-velocity-plugin.26200/field?field=dependencies"> <img alt="Dependencies" src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/download dependencys.png" width="190"></a> </div>
<img src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/features.jpg" alt="Features">
Overview
You get to decide what you want on your proxy! - Simply add configuration to add your own custom commands. - And remove configuration to remove un-used commands. - Organise the configuration with multiple directories and files! - Create your own proxy commands. - Create multiple staff chats and player chats. - Create GUI's. - Load balancing. - Utility commands. - Global messaging. - Global session history. - and more!
Commands
- This plugin adds the ability to create your own proxy commands that players can use on your network. - When creating a command in the configuration file, you can choose from many different types that have different functions. - You can delete any command in the configuration file and it will be removed from the server. - You can have multiple commands with the same type as long as the identifier is different. - The reload command lets you reload all the commands so you don't have to restart the server.
Command Example ```yaml
The commands identifier.
info:
The type of command.
type: "info"
If the command is enabled.
enabled: true
The command name.
In this instance it will let you do /leaf.
name: "leaf"
The message sent to the player when they run the command.
message: - "&8&m&l-------&r &a&lLeaf &8&m&l-------" - "&7" - "&7Velocity Proxy Plugin" - "&7Version &f<version>" - "&7Author &fSmudge" - "&7" - "&8&m&l--------------------" ``` | Command Type | Usage | Description | | - | - | - | | message | [name] [player] [message] | Used to message a player. | | reply | /[name] [message] | Used to reply to the last message. | | ignore | /[name] [player] | Used to ignore a player.| | unignore | /[name] [player] | Used to unignore a player.| |ignorelist|/[name]|Used to list the ignored players.| |togglemessages|/[name]|Used to toggle your messages.| |togglespy|/[name]|Used to toggle veiwing other players messages.| |messagehistory|/[name] [query]|Similar to core protect, it lets you see player's message history.| |alert|/[name] [message]|Used to send a message to everyone on the server. |alertraw|/[name] [json]|Used to send a json message to everyone on the server. Simular to /tellraw |chat|/[name] [message]|Used to send a message to a chat. |find|/[name] [player]|Used to get infomation about an online player. |history|/[name] [player]|Used to get global session history about a player from the database. |info|/[name]|Displays a message to the player. |inventory|/[name]|Displays a inventory to the player. |join|/[name]|Sends a player to a server. |list|/[name]|Displays a list of players that are online. This could be a staff list. |reload|/[name]|Reloads the entire plugin. Configuration, commands, events, placeholders and variables. |report|/[name]|Send a message to a group of players. Commonly used to report bugs to staff. Simular to /helpop| |send|/[name] [from] [to]|Send a group of players to a server. |servers|/[name]|Displays a list of online servers and the amount of players online. |teleport|/[name] [player]|Teleport to the server a player is on. |variable|/[name] [value]|Set the value of a variable. You can set options for players to pick from.|
And more! All command types are listed in the wiki. If you have any suggestions, feel free to create a feature request in the GitHub issues page or message me directly in the discord.
Events
You can create custom events. Currently there is only a option for when a player joins the proxy. This allows you to do load balancing, and send players to the server with the least amount of players on. ```yaml
load_balancing:
The type of event.
type: "playerjoin"
Used to enable and disable the event.
Defaults to true.
enabled: false
Add commands to be run.
commands: - "leaf"
Add servers to be sent to.
If more than 1 server is stated the player will
go to the server with the least amount of players
servers: - "hub1" - "hub2" ```
Placeholders
You can create your own conditional placeholders that you can use elsewhere in the plugin. - Placeholders will not work outside the plugin. Example of a vanish placeholder ```yaml vanish_colour: condition: "MATCH:<vanished>" options: true: "&#c0fce6" false: "&#ffffee" ```
Variables
When the database is enabled, you can use variables to store data for each player. When you have created a variable in the configuration, you can then create a command for players to set the variable. This enables you to used the variable as a placeholder in other commands and inventories. Example ```yaml
The variable identifier.
Example: <theme> will return the string data that is set for the player.
theme:
The default value if the variable is not set.
default: "green" ``` <div> <a href="https://builtbybit.com/resources/leaf-velocity-plugin.26200/"><img src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/builtbybit.png" width="200"></a> <a href="https://forums.papermc.io/threads/leaf-★-create-your-own-essential-proxy-commands.580/"><img src="https://raw.githubusercontent.com/smuddgge/Leaf/main/graphics/paper.png" width="200"></a> </div>