Sueta

TooManyChats

1.0.0

The most customizable staff / custom chat plugin

·Plugin


For more information, view our website: https://lazerpent.com/spigot/too-many-chats

TooManyChats is a customizable plugin which allows you to create staff chats, donator chats, and much more, simply by editing the config.yml. You can create up to 10 chats, each with custom names, commands, prefixes, and permissions.

General Commands
This plugin uses /toomanychats (alias /tmc) with four sub commands as the default commands. The subcommands are:

  • /toomanychats help

Lists a link to the help page for the plugin. By default, this requires permission "toomanychats.help", however this can be changed in config.yml. Running "/toomanychats" without any subcommands, or an invalid subcommand, defaults to this subcommand

  • /toomanychats reload

Reloads the plugin configuration. Using this command loads the plugin the same way restarting the server would. By default, requires permission "toomanychats.reload", however this can be changed in config.yml

  • /toomanychats list

Gives a list of all chats that the player executing the command can access, as well as the command used to toggle it. By default, requires permission "toomanychats.list", however this can be changed in config.yml

  • /toomanychats adminlist

Gives a list of all chats, regardless of whether the executing player can access them. By default, requires permission "toomanychats.adminlist", however this can be changed in config.yml

config.yml settings

settings:
  nopermission: '&cYou do not have permission to use this command!'
  permission:
    help: 'help'
    list: 'list'
    adminlist: 'adminlist'
    reload: 'reload'

This is the settings section of config.yml. This sets the default nopermission message for all general commands, as well as the required permissions for each the help, list, adminlist, and reload commands. These permissions will be appended to "toomanychats"; for example, setting the help permission to 'helpurl' would mean that players would require permission "toomanychats.helpurl" in order to run the command.

Creating chats
Chats are created using the config.yml. Here is the default config.yml (minus the settings which are above), which is included with the plugin:

1:
  name: 'Mod Chat'
  prefix: '#'
  command: 'modchat'
  alias:
    - 'mc'
    - 'm'
  format: '[Mod Chat] | %{player}: %{message}'
  permission: 'mod'
  nopermission: '&cYou do not have permission to use this command!'
2:
  name: 'Admin Chat'
  prefix: '/'
  command: 'adminchat'
  alias:
  format: '[Admin Chat] | %{player}: %{message}'
  permission: 'admin'
  nopermission: '&cYou do not have permission to use this command!'

In order to create a chat, you need to provide all of the settings. The plugin supports up to 10 chats, numbered 1 - 10.

Start by determining the name for the chat. This does support color codes, using both "§" and "&".

Next, select the prefix you want to use. The prefix is a character (or characters) that when added as a start to a message if the user has permission is sent to the channel (for example #hello would send hello to the mod chat if the player had permission). To use no prefix, specify a '/'.

Thirdly, select the command which is used to both toggle this chat, and send messages to it. You must specify this command.

Next, select any aliases for your command. You can have any number including 0. Include it in list form, as shown above in the default mod chat, or, for no aliases, empty.

Skipping format (see header below), you now need to specify the permission for this chat. As the same with "settings", this permission will be appended to "toomanychats", so for example, the admin chat above would use "toomanychats.admin"

Finally, specify the message that the player would receive if they did not have permission to send it to the chat. For prefixes, instead of receiving this message, the original message will just be sent to the chat. (Example: #hello would just print #hello, if the player did not have permission)

Format
The format is how the chat will display on a player's screen. There are a total of nine "variables" which can be provided, which are replaced with data about the player. Four of these variables requires vault to be on the server, if vault is not present, the variables will not function. All variables use the format "%{VAR_NAME}. Any non-variable characters are ignored and will be displayed as shown. You can also use & for color codes.

Usable without vault

  • message
    • The message that is being sent
  • player
    • The name of the player, directly from mojang
  • player-display
    • The players display name (example: name given with /nick)
  • player-health
    • The players current health total (out of 20)
  • player-gamemode
    • The gamemode the player is currently in

Usable with vault

  • player-prefix
    • The prefix defined for the player
  • player-suffix
    • The suffix defined for the player
  • group-prefix
    • The prefix defined for the players highest group
  • group-suffix
    • The suffix defined for the players highest group

NOTE: We will not respond to help requests in the reviews. Please join our discord for assistance.

Similar projects

Plugin →