SexyMotdBungee for BungeeCord proxies is released! Get it here
Long running on BukkitDev, SexyMotd has come to Spigot! SexyMotd is a highly customizable MOTD management plugin that offers many features and variables to make your MOTD and server icon truly sexy!
Features:
- Change motd easy and quick with in-game commands (1.2.2 and earlier)
- Colored motds
- Fake online players
- Fake max players
- Player's IP logging
- Display player's name with %playername% //(done with IP logging)
- Display server's name with %servername%
- Display online players with %onlineplayers%
- Display max player slots with %maxplayers%
- Skip to the next line of motd with %newline%
- Display server's version with %version%
- Avatar icons (player's face as a server icon) //(done with IP logging)
- Overlaying a custom transparent image (.png) over the avatar icon, by providing either a file path, or a URL
- Fake version.
- Custom message on list hover.
- Randomized Motds
- Randomized fake online players
- Custom variables!!
- %newplayer%, %banned%, %whitelisted% Boolean variables (for use with conditional/custom variables)
- %groupName% variable (requires PermissionsEx)
- Create infinite custom modes
- Enable custom modes with /motd mode <mode_name>
- Only players with the permission sexymotd.join.<mode_name> can join the specific modes.
Commands and Permissions
- /motd reload
- Reloads the configuration file.
- Permission: sexymotd.reload
- /motd mode <mode_name>
- Changes the motd mode.
- Permission: sexymotd.mode
- Permission: sexymotd.join.<mode_name>:
- Gives access to specific custom modes.
- Permission: sexymotd.join.*:
- Gives access to all custom modes.
Custom (Infinite) Modes
- Create a mode by copying mode.yml and renaming it to "<mode_name>.yml" (change mode_name to whatever you want).
- Get the permission "sexymotd.mode" in order to use the command.
- Use the command "/motd mode <mode_name>" (replace <mode_name> with the mode name) to change the mode.
- Give players the permission "sexymotd.join.<mode_name>" or "sexymotd.mode.*" to allow them to join when the mode is not "config".
- Set the mode to "config" for the default mode.
Variables
Use variables in any static or animated text and it will be replaced with its designated value.
{variable_type} %variablename%
- {Array - String} %groupname%
- {String} %ip%
- {Integer} %maxplayers%
- {String} %newline%
- {Boolean} %newplayer%
- {Boolean} %banned%
- {Boolean} %whitelisted%
- {Boolean} %opped%
- {Integer} %onlineplayers%
- {String} %playername%
- {Array - String} %playernames%
- {String} %randomplayer%
- {String} %servername%
- {String} %version%
- {Boolean} %hasperm:<permission>%
Variable Operators:
Variable operators allow you to modify the output of a variable with a special variable suffix.
Integer Variables -
Add a "+", "-", "*", or "/" followed by a number after any integer type variable to apply the operation to it.
Example: %onlineplayers%+10
Array Variables -
Add a "[x]", where x is the index within the array, after any array type variable to only display one list item.
Otherwise, arrays are displayed as "x, y, z"
Array variables of integer type are not eligible for integer operations after the index declaration.
Example: %playernames%[2]
Custom Variables
Custom variables are just the same as the built in variables that come with the plugin, except you create them yourself! Here is some basic info on custom variables and how they work, so you can make your MOTD even sexier!
Example Custom Variable:
variables:
isnewplayer:
variable: newplayer
operator: '='
condition: 'true'
value: '&bWelcometo&servername%!'
negValue: '&bNicetoseeyouagain!'
Example Usage:
motd:
- "&aHi%playername&!&b%isnewplayer%"
Every variable you create will reside as its own section in the variables section of the config. To begin creating a variable, start by creating a section in the variables section named after what you want the variable name to be. In order to have a fully functioning variable, you need every subsection displayed above.
"varable":
The variable section of your custom variable should contain one of the built in variables that are provided with the plugin. Some examples of what could go here are: playername, newplayer, banned, whitelisted, groupname, online_players, and max_players.
"operator":
The operator section should contain the conditional operator that you want to use to compare the value of "variable" and "condition". Valid operators include: =, >, <, >=, <=. If the "variable" subsection is a text based or boolean (true or false) variable, you can only use the = operator. If it is an integer based variable, you can use any of the operators. Remember to put apostrophes around the operator!
"condition":
The condition section should contain the value you want to compare to the "variable" subsection. For instance, if you wanted to check if online_players was greater than 20, the "variable" section would contain "online_players, the "operator" section would contain ">", and the condition section would contain "20". For Boolean variables, the condition section must either contain true or false, and for integer variables, the condition section must contain an integer.
"value":
The value section should contain the text you want displayed in place of the %variable_name% string in the case that the condition evaluates true to the variable and operator. For instance, if I wanted to display a special message to new players, the "value" section of the variable in the example would be a good fit.
"negValue":
The negValue section should contain the text you want displayed in place of the %variable_name% string in the case that the condition evaluates false to the variable and operator. For instance, if I wanted to display a special message for players who weren't new, the %isnewplayer% example above would display the negValue string if the player pinging the server wasn't a new player.
Use your new variable:
To use your new custom variable, simply surround the name you chose in "%" symbols and place it in the Motd like any other variable.
Additional Info:
The variable system is designed to allow the built in variables that come with SexyMotd to be used in the value and negValue sections of custom variables (Ex. negValue: '&bNice to see you back %playername%!'), but you cannot use custom variables in the value and negValue sections of other custom variables.
Configuration
######################################################################################################################################
## SexyMotd Configuration File ##
## Learn more about how to set up SexyMotd at http://qwertyness.com/index.php/portfolio/sexymotd ##
## ##
## When updating to a new version where the configuration file changes, you must reset the file to prevent errors. ##
## To do this: ##
## 1. Stop the server. ##
## 2. Backup the configuration file and delete it from the plugin folder. ##
## 3. Restart the server. ##
## 4. Copy and paste the desired settings back into the newly generated file. (As long as that section's syntax hasn't changed) ##
######################################################################################################################################
# Add a new sub-entry for each separate Motd you want in the random pool.
# Examples below
motds:
- 'Test motd.'
- 'Hello, motd1;&4Color Test &rw/reset code'
- 'Hello, motd2;Variable Test %servername% %onlineplayers%'
- 'Hello, motd3;Variable Test %playername%'
- '%playername% %servername% %largeplayercount%'
- '%newplayer%, %maxplayers%, %onlineplayers%, %ip%'
# The value to show as the maximum player limit to the server. DOES NOT CHANGE THE ACTUAL LIMIT.
maxPlayers:
enabled: true
maxPlayers: 503
# The value to show as the amount of online players. A random entry is chosen from the list on each ping.
playerCount:
enabled: true
playerCount:
- 10
- -1
- 47
icon:
# Sets the icon to the pinging player's head.
# Using the avatar image could potentially have a drastic effect on response speed, depending on connection. If your server has a slow connection, this is not recommended.
enableAvatarIcon: true
# Adds an overlay to the head image. Can be used independently from the avatar icon.
enableOverlayImage: false
imagePath: 'C:/Users/BillyBobJoe/Pictures/billyBobJoeIcon.jpg'
#The text to display when hovering over the server in the server list.
playerMessage:
enabled: true
playerMessage:
- 'Hello, line 1;Variable Test %servername% %playername%'
- 'Hello, line 2;&7Color &aTest &rw/reset code'
# Replaces the online and max player counts with custom text. Color codes and variables work with this.
fakeVersion:
enabled: false
fakeVersion: 'Hell yeah! Players: %onlineplayers%'
# The default name to display in place of %playername% when the ping's IP address isn't logged.
defaultPlayerName: 'New Player'
# Whether or not to log when a player pings and the connection is closed.
pingLogging: true
# Create custom variables here. Custom variables can be used like any of the default SexyMotdBungee variables.
# MAKE SURE to place apostrophes around all components of the custom variable as they are all read as String objects from the configuration.
variables:
largeplayercount:
variable: 'onlineplayers'
operator: '>'
condition: '10'
value: '&aIts sure getting popular around %servername%!'
negValue: '&cGotta step up that recruiting skill! %servername%'This plugin uses the Minotar service to display player avatars as the server icon.
Plugin requires ProtocolLib 4.3.0 or later to function with Spigot 1.12.
Download it here
I'm happy to develop and maintain this plugin free of charge. However, if you like my work and would like to donate, donations are always appreciated!
You can donate here
Please report any bugs you find!
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta