Easy to use and configure reporting system with DiscordSRV
Description ReportSystem is a plugin allowing you to integrate a player reporting system into your server. The reports made are sent to your Discord server (thanks to your pre-configured bot in the DiscordSRV plugin) in a channel that you have chosen.
Example configuration: Channels: {"global": "000000000000000", "reports": "1111111111111111"}
Here, the channel we are going to use is the "reports" channels with come Discord ID "1111111111111111". Note that the name "reports" does not correspond to the name of the channel but to the identification key used by DiscordSRV.
Copy the ReportSystem plugin into the plugins file, run and stop the server to create the configuration files
Open the config.yml file and enter the identification key in the "reportChannelId" section. (it would be "reports" for us)
Start the server!
Subsequently, you can configure all the possible permissions in the same config file and all the messages of the plugin from A to Z using the
messages.yml file.
Configurations The plugin has two configuration files allowing you to configure the entire plugin. The config.yml file corresponds to the main configuration file: You will find the configuration of all permissions as well as the ID of the report Discord channel and the cooldown of the report command. Here is the default
config.yml file:
Code (YAML):
# ReportSystem main configuration file generated by version 1.0.3
#First, you can setup all commands permission. reportCommandPermission: "report.use" reportCooldownBypassPermission: "report.cooldownbypass" reportReloadPermission: "report.reload" pluginUpdateMessagePermission: "report.update"
#You must configure the name of the channel where the reports will be sent. #To do this, you must already configure this channel in the "config.yml" file of the DiscordSRV plugin. #Here is my config file as an example: #Channels: {"global": "836722599295451218", "reports": "836901598101110824"} #In my case, I will use the channel called "reports" for the plugin. #NB: The name of the channel does not necessarily correspond to the name in the config of the DiscordSRV plugin. This only is an ID. reportChannelId: "reports"
#Setup cooldown for /report command. Set "0" to disable. (seconds) reportCooldown: 10
#So that the reports more readable or more visible, you can choose to send the reports as embeds. enableEmbedMessages: true
#Just like the rest of the plugin, you can fully configure the embeds. #First, you can choose the colors of the embed. Note that you must give an RGB color code with the following formatting: R,G,B. #Placeholders: %sender%, %player% and %reason%. These placehodlers only are usable for embed content. embedColor: 0,105,255
embedFooter: "Report from ReportSystem" embedImageFooter: "https://i.imgur.com/zbBUWh4.jpg" embedTitle: "ReportSystem" #The embed fields contain two variables: the name and the value. #In order to be able to configure both, please put for each field, the two values using this formatting: #"name†value" #If this formatting is not used, the plugin will consider that the message corresponds to the value of the field. embedContent: -
"**New report !**†_%sender%_ reported _%player%_ for **%reason%**." -
"You should check this player !"
The second file, as its name suggests (
message.yml), allows you to configure all the messages sent by the plugin entirely as you wish.
Here is the default
messages.yml file:
Code (YAML):
# ReportSystem message configuration file generated by version 1.0.3 reportHelp: "&7[&4&lReportSystem&7] &7Error. Use: /report <target> <reason>." noPerm: "&7[&4&lReportSystem&7] &7You don't have permission." errorContactAdmin: "&7[&4&lReportSystem&7] &7An internal error occurred while perfoming the command. An error log was sent to the console, please contact an administrator." executeFromPlayer: "&7[&4&lReportSystem&7] &7Only players can perform this command." commandOnCooldown: "&7[&3&lReportSystem&7] &7You're executing this command too quickly! Please wait %cd% seconds." playerReceivedReport: "&7[&3&lReportSystem&7] &7You have reported %player% for: %reason%." reloadSuccessful: "&7[&3&lReportSystem&7] &7Reload successful." reloadInProgress: "&7[&3&lReportSystem&7] &7Reload in progress..." wrongVersion: "&7[&4&lReportSystem&7] &7Please note, the plugin is not up to date!\n&7Remember to update the plugin as soon as possible!" goodVersion: "&7[&3&lReportSystem&7] &7The plugin is up-to-date."
#You should use the Discord layout, not the spigot layout. #Note: If you actived embeds, this section is unnecessary. reportMessageSentOnDiscord: "→ _%sender%_ reported _%player%_ for **%reason%**."
Commands
/report <player> <reason> Main command of the plugin, allowing to report a player for a specific reason.
/reportreload Reload the plugin and its configurations.
Permissions
Note: All the permissions listed below are configurable as you wish in the
config.yml file. These are therefore the default permissions of the plugin.
report.use Access to /report command.
report.cooldownbypass Bypass the /report command cooldown.
report.reload Access to /reportreload
→ Did you like it? Do not hesitate to leave a comment! → Need help ? Do not hesitate to contact me ! → If you need a special addition, customization or a plugin, don't hesitate to ask me!