Changelog

Changelog

Version 4.0.0

  • Updated Bukkit API to 1.19-R0.1-SNAPSHOT.
  • Upgrade compile target to Java 8.
  • Upgrade bstats-bukkit from 1.8 to 3.0.0.
  • Migrate from powermock to mockito 4 for mocking API

Version 3.3.4

  • New permission nodes:
    • reporter.help - Ability to view reporting and responding help dialog.
  • Fixes:
    • Fixed issue with some UTF-8 languages not being stored in the database correctly.
    • Fixed respond command failing due to being called on a separate thread.

Version 3.3.3

  • Updated Bukkit API to 1.15.2-R0.1-SNAPSHOT.
  • Updated supported Java version to 1.7.
  • Set Spigot api-version to stop getting flagged as a legacy plugin.
  • Fixes:
    • Fixed no message being sent to the command sender if the report index is out of range.
    • Fixed sending an error instead of a usage hint if the report index is not parsable into an integer.

Version 3.3.2

  • Updated Bukkit API to 1.14.3-R0.1-SNAPSHOT.

Version 3.3.1

  • Fixed error when loading permissions when Vault is not provided.

Version 3.3.0

  • Updated Bukkit API to 1.13.2-R0.1-SNAPSHOT.
  • Features:
    • Use Vault instead of PermissionsEx for player permissions.
    • Use bStats instead of MCStats for plugin statistic collection.
  • Fixes:
    • Fixed the build being broken from a few dependencies that dead and no longer available (PermissionsEx and MCStats).

Version 3.2.7

  • Fixed checking for remote locale files causing an error since Dropbox changed their public folder system.
  • New Configuration Options:
    • general.messaging.alerts.reportedPlayerLogin.enabled - Enable messaging when a reported player logs in.
    • general.messaging.alerts.reportedPlayerLogin.toPlayer - Enable sending messages to player that a reported player logged in.
    • general.messaging.alerts.reportedPlayerLogin.toConsole - Enable sending messages to the console that a reported player logged in.

Version 3.2.6.2

  • This is a maintenance build, it adds no user functionality.
  • Plugin updated to run on 1.9.

Version 3.2.6.1

  • This is a maintenance build, it adds no user functionality.
  • Plugin updated to run on 1.8.

Version 3.2.6

  • Fixed a NullPointerException when trying to respond to a report where the sender or reported player is offline.

Version 3.2.5

  • Fixed a Spigot specific error when trying to respond to a report where an anonymous player was reported.

Version 3.2.4

  • Fixed an IllegalArgumentException when players try to alter a claimed report. (Closes Ticket 43)

Version 3.2.3

  • Fixed the respond message saying null reported someone.

Version 3.2.2

  • SQLite Fixes:
    • Fixed a NullPointerException when a player logs in. (Closes Ticket 42)
    • Fixed multiple NullPointerExceptions when running any command that sets a statistic.

Version 3.2.1

  • Fixes:
    • Fixed the locale being initialized twice while using synchronous initialization.
    • Fixed metrics submitting locale information before the locale is initialized.
    • Fixed metrics submitting locale language as English, even if a different language is being used.
    • Fixed metrics submitting the locale version as 10, even if a different version is being used.
    • Fixed an error when using the command '/report list claimed priority' with the console.
    • Fixed an error when using the command '/report request *'.
    • Fixed a NullPointerException when using the request command.

Version 3.2.0.1

  • Version bump for BukkitDev re-submission.

Version 3.2

  • Features:
    • An alert will be sent when a reported player from an unfinished report logs in. (Closes Ticket 29)
    • Added a statistics system. (Closes Ticket 11 and Ticket 28)
    • Added plugin metrics, using MCStats.
  • Changes:
    • A message of how many reports were deleted is displayed when deleting groups of reports.
    • Database:
      • Created a PlayerStats table.
      • Created a ModStats table.
  • New Configuration Option:
    • plugin.statistics.opt-out
  • New Commands:
    • /report statistic/stat list
    • /report statistic/stat
    • /report statistic/stat all
    • /report statistic/stat all mod|player
  • New Permission Nodes:
    • reporter.alerts.onLogin.reportedPlayerLogin
    • reporter.statistic.list
    • reporter.statistic.read.mod
    • reporter.statistic.read.player

Version 3.1.9

  • Increased efficiency of getting players. (Closes Ticket 40)
  • New Configuration Option:
    • general.matchPartialOfflineUsernames - If the plugin should attempt to match a partial username to an offline player.

Version 3.1.8

  • Fixed trying to find a player even if the username is invalid. (Closes Ticket 39)

Version 3.1.7

  • Database Changes:
    • Changed the 'Sender' column to 32 characters. (Closes Ticket 37)
    • Changed the 'Reported' column to 32 characters. (Closes Ticket 37)
    • Changed the 'ClaimedBy' column to 32 characters.
    • Changed the 'CompletedBy' column to 32 characters.
    • Changed the 'Date' column from a VARCHAR type to a CHAR type.
    • Changed the 'SenderUUID' column from a VARCHAR type to a CHAR type.
    • Changed the 'ReportedUUID' column from a VARCHAR type to a CHAR type.
    • Changed the 'ClaimedByUUID' column from a VARCHAR type to a CHAR type.
    • Changed the 'CompletedByUUID' column from a VARCHAR type to a CHAR type.
    • Changed the 'ClaimedDate' column from a VARCHAR type to a CHAR type.
    • Changed the 'CompletionDate' column from a VARCHAR type to a CHAR type.

Version 3.1.6

  • Fixed a null pointer exception when trying to match a name to an offline player. (Closes Ticket 36)

Version 3.1.5

  • Changes:
    • Changed to use UUID player look-up and verification, whenever possible.
    • Changed to loading the default locale file with a Reader type, instead of an InputStream.
    • Database:
      • Added a 'SenderUUID' column.
      • Added a 'ReportedUUID' column.
      • Added a 'ClaimedByUUID' column.
      • Added a 'CompletedByUUID' column.
      • Removed the 'SenderRaw' column.
      • Removed the 'ReportedRaw' column.
      • Removed the 'ClaimedByRaw' column.
      • Removed the 'CompletedByRaw' column.
      • Changed the 'Sender' column to 16 characters.
      • Changed the 'Reported' column to 16 characters.
      • Changed the 'ClaimedBy' column to 16 characters.
      • Changed the 'CompletedBy' column to 16 characters.

Version 3.1.4.1

  • This is a maintenance build, it adds no user functionality.
  • Added support for a release level version.

Version 3.1.4

  • Fixes:
    • Fixed a message saying the claiming player unassigned their self, when another player moved a report to a higher priority.
    • Fixed the claimed and completion statuses, when using SQLite, incorrectly stating the report is unclaimed or unfinished.

Version 3.1.3

  • Fixes:
    • Fixed the delete command not working when trying to delete the last viewed report.
    • Fixed OPs and console not being able to alter or delete a report if the claiming player had a mod level above theirs.

Version 3.1.2

  • Fixed a ClassCastException when reporting with the console.

Version 3.1.1

  • Changes:
    • Plugin update checking now works with the ServerMods API.
  • New Configuration Option:
    • plugin.updates.api-key - The api-key to send with the plugin update request.

Version 3.1

  • Features:
    • Added the ability to limit the number of reports a player can submit against another player. (Closes Ticket 34)
  • New commands:
    • /report request most (Closes Ticket 35)
    • /report delete/remove [reported/sender]
  • New Configuration Options:
    • general.permissions.opsHaveAllPermissions - Specifies if OPs should have all the permissions for this plugin by default. (Closes Ticket 32)
    • general.reporting.limitReportsAgainstPlayers - If players should be limited on how many reports they can submit against another player.
    • general.reporting.limitNumberAgainstPlayers - The number of reports a player can submit against another player.
    • general.reporting.alerts.toConsole.limitAgainstPlayerReached - If the console should log when a player has reached their allowed reporting limit against another player.
    • general.reporting.alerts.toConsole.allowedToReportPlayerAgain - If the console should log when a player is allowed to report another player.
    • general.reporting.alerts.toPlayer.allowedToReportAgain - If the player should be alerted when they are allowed to report again after reaching their reporting limit.
    • general.reporting.alerts.toPlayer.allowedToReportPlayerAgain - If the player should be alerted when they are allowed to report another player after reaching their reporting limit.
  • Changes:
    • Removed Permissions plugin support.
    • Configuration:
      • general.reporting.alerts.limitReached moved to general.reporting.alerts.toConsole.limitReached
      • general.reporting.alerts.allowedToReportAgain moved to general.reporting.alerts.toConsole.allowedToReportAgain

Version 3.0

  • Features:
    • Added claiming system. (Closes Ticket 24)
    • Added a priority system. (Closes Ticket 26)
    • Added pages to the help command.
  • New Commands:
    • /report assign <Index/last>
    • /report claim <Index/last>
    • /report downgrade <Index/last>
    • /report list priority [indexes]
    • /report list claimed [indexes]
    • /report list claimed priority [indexes]
    • /report move <Index/last>
    • /report unassign <Index/last>
    • /report unclaim <Index/last>
    • /report upgrade <Index/last>
    • /report view priority [name]
    • /report view priority [name]
    • /report view claimed [name]
    • /report view claimed priority [name]
    • /report view claimed priority [name]
  • New Permission Nodes:
    • reporter.assign
    • reporter.claim
    • reporter.move
    • reporter.unassign
    • Mod levels:
      • reporter.modlevel.low
      • reporter.modlevel.normal
      • reporter.modlevel.high
  • Changes:
    • Changed most of the display colors.
    • Changed default date format to "Year-Month-Day Hour:Minute:Second".
  • Database:
    • Increased the allowed number of characters in the report details from 100 to 200.
    • Increased the allowed number of characters in the report summary from 100 to 200.
  • Fixes:
    • Fixed a null pointer exception when reloading the plugin then trying to access the last viewed report index.

Version 2.15.4

  • Fixed matching empty strings and spaces to a random player, when reporting. (Closes Ticket 33)

Version 2.15.3

  • Fixed the request command throwing an SQLException, while using SQLite, when searching for a player that was not reported in any reports. (Closes Ticket 27)

Version 2.15.2

  • Fixes:
    • Fixed the plugin update checker not messaging that a new version is available.
    • Fixed an error when viewing all, incomplete, or completed reports when the report details include a dollar sign character ($).

Version 2.15.1

  • Fixes:
    • Removed some unneeded color codes.
    • Added default color formatting to the list command output.
    • Color codes in the locale should be correctly replaced in all output.

Version 2.15.0

  • Features:
    • Locale files can be updated/downloaded asynchronously.
  • Changes:
    • Re-wrote the Locale initializer and downloader.
    • Downloaded locale files are now saved using the source's encoding.
    • Locale files are now hosted on Dropbox.
    • Locale initializer now increments through the backup files to see which, if any, loads.
    • When checking for updates, the actual version of the file is taken into consideration, not just to modification date like previously.
    • When checking for updates, levels of releases can be specified (replaces "check for dev updates" in the configuration).
  • Configuration:
    • Changed general.checkForUpdates to plugin.updates.checkForUpdate.
    • Changed general.checkForDevUpdates to plugin.updates.releaseLevel which now takes a string of the ReleaseLevel wanted.
    • Changed locale.localeAutoDownload to locale.updates.autoDownload
    • Changed locale.keepLocaleBackupFile to locale.updates.keepBackup
    • Added locale.updates.releaseLevel for the minimum release level to download or update to.
    • Added locale.updates.asynchronousUpdate to specify whether the locale file should be downloaded and updated on a separate thread.

Version 2.14.3

  • Added error handling for an error when one or more of the commands fail to register.

Version 2.14.2

  • Changed deprecated Bukkit scheduler calls to the new methods.

Version 2.14.1

  • Fixes:
    • Re-compiled using Java 1.6 compliance
    • Fixed an error when trying to respond to reports

Version 2.14.0

  • Features:
    • The view command can now display the sender and reported player's real names
    • If a report is completed while the report sender is offline, a message stating that their report was completed will display the next time they login
  • New Config Options:
    • displayRealName - The view command will always display both player's display names and real names
    • completedMessageOnLogin - If a message should appear the next time a report sender logs in after their report has been completed
    • completedMessageOnLogin.useDelay - Should there be a delay between when the report sender logs in and when the message is displayed
    • completedMessageOnLogin.delay - How long, in seconds, the plugin should delay before showing the completion message
  • Fixes:
    • Fixed players being able to bypass the reporting limit if they log off then log back in

Version 2.13.0

  • Features:
    • The delete command now allows for deleting only completed or incomplete reports
    • Limit the amount of reports submitted by a player in a certain amount of time
  • Changes:
    • The location of the sender and reported player being displayed when a report is viewed is now configurable
    • Re-wrote the database system
    • Re-structured the entire code base
  • New Permission Node:
    • reporter.report.nolimit - Allows players with this permission node to report without being limited
  • New Config Options:
    • displayLocation - If the location of the sender and reported player should be displayed when someone views the report
    • limitNumberOfReports - If the plugin should limit the amount of reports a player can submit in a given amount of time
    • limitNumber - The number of reports a player can submit
    • limitTime - The time between each report
  • Fixes:
    • Fixed an error when the console would attempt to access it's last report after server startup
    • Cleared up default locale file inconsistencies
    • Fixed the request command to find the player that most matches the player name given

Version 2.12.0

  • Features:
    • Ability to set a delay from the time a player logs in to the time the plugin lists the reports
  • New Config Options:
    • useDelay - If listing the reports should be delayed after a player logs in
    • delay - How long, in seconds, the plugin should delay before listing the reports
  • Config Changes:
    • general.messaging.listOnLogin node changed to general.messaging.listOnLogin.listOnLogin

Version 2.11.0

  • Features:
    • Ability to list the indexes of completed and incomplete reports
    • Ability to use report commands from the console and rcon
    • Ability to view a list of only completed reports or only unfinished reports
  • Changes:
    • Information about where you teleported is now displayed when using the /respond command
    • Coordinates were added for each player when viewing a report
    • The /report request command has been reworked to find the player that most matches the player name given
  • Fixes:
    • Fixed an error when trying to view your last report when using MySQL

Version 2.10.3

  • Fixes:
    • Fixed an error when trying to view a report without any parameters
    • Fixed an error when trying to view a report with MySQL
    • Fixed the unfinished reports header remaining in English even with a locale file being used

Version 2.10.2

  • Fixes:
    • Fixed an error when using /report view all with MySQL and no reports in the database

Version 2.10.1

  • Fixes:
    • Removed debugging messages when a player would join or disconnect

Version 2.10.0

  • Features:
    • Implemented a backup system for when updating the locale file
    • When the plugin loads it checks BukkitDev if an update is available
    • New Config Options:
      • keepLocaleBackupFile - If you want to keep the backup file, instead of having it automatically deleted after a successful update
      • checkForUpdates - If when the plugin loads it should check if there is an update available on BukkitDev
      • checkForDevUpdates - If you should be alerted when Alpha, Beta, and other pre-releases are available on BukkitDev
  • Changes:
    • Config Changes:
      • general.locale node changed to locale.locale
      • general.localeAutoDownload node changed to locale.localeAutoDownload
  • Fixes:
    • Updated to the new Event system
    • Fixed an error when trying to complete a report with incorrect parameters, the player would be told it was both successful and unsuccessful when it really failed

Version 2.9.1

  • Fixes:
    • Fixed an error when trying to view a report using MySQL

Version 2.9.0

  • Features:
    • Added command aliases:
      • respond: rrespond or resp
      • report: rreport or rep
    • Ability to view the last viewed report with command /report view last
    • Ability to delete the last viewed report with command /report delete last
    • Ability to complete the last viewed report with command /report complete/finish last [Summary]
    • Ability to respond to the last viewed report with command /respond last [sender/reported]
    • Ability to report offline players
    • Ability to view a 'quick view' of all reports using command /report view all
    • Ability to complete a report without submitting a summary if canCompleteWithoutSummary is true
    • New Config Option:
      • canCompleteWithoutSummary - If reports can be completed without specifying a summary

Version 2.8.1

  • Features:
    • PermissionsEx support
  • Fixes:
    • Switched from the deprecated Configuration class to the current YamlConfiguration class
    • Fixed a cast exception when sending commands from console
    • Broadcast messages now go to players with the reporter.list permission node
    • The player is now alerted if an error occurs when running a command instead of just printing the error to the console
    • Re-wrote and optimized most of the code

Version 2.8.0

  • Features:
    • Players can view the reports they submit
    • New Config Options:
      • canViewSubmittedReports - If the players that submitted reports can view their reports

Version 2.7.1

  • Fixes:
    • Locale auto download/update now works properly

Version 2.7.0

  • Features:
    • Multi-language support
  • Changes:
    • Config Options:
      • New:
        • locale - The name of the locale file
        • localeAutoDownload - If the plugin should automatically download and updated the specified locale from BukkitDev
      • Removed:
        • reportList
        • reportSubmitted
        • reportCompleted

Version 2.6.0

  • Features:
    • Added ability to search for reports where a player was reported
  • Changes:
    • New permissions nodes:
      • reporter.report - Ability to submit reports.
      • reporter.list - Ability to list reports.
      • reporter.view - Ability to view reports.
      • reporter.request - Ability to request which reports have a specified player in them.
      • reporter.complete - Ability to complete a report.
      • reporter.delete - Ability to delete a report.
      • reporter.respond - Ability to respond to a report (teleport to the report location).
  • Fixes:
    • Better protection against SQL injection.
    • Better database resources handling.

Version 2.5.1

  • Fixed an error when running /report without any parameters

Version 2.5.0

  • Features:
    • New configuration options:
      • listOnLogin - If the amount of reports should be shown to admins and mods when they login
      • reportList - The message to be sent when the /report list command is used.
      • reportSubmitted - The message to be broadcast when a report is submitted.
      • reportCompleted - The message to be broadcast when a report is completed.
      • dbName - The file name that SQLite will use.
  • Changes:
    • reporter.reports permission node now changed to reporter.admin
    • Default SQLite reports location changed from reports to reports.db
  • Fixes:
    • Players with the reporter.mod are notified how many reports their are when they login

Version 2.4.1

  • Fixes:
    • Report messages now only go to players with the reporter.reports and reporter.mod permissions.
    • Fixed the multiple broadcast message problem.

Version 2.4.0

  • Features:
    • Added the ability to complete a report and fill out a summary.
  • Changes:
    • Report messages now only broadcast to players with the reporter.reports and reporter.mod permissions.
    • Locations of the players removed from report view.
    • Report ID added to the report view.

Version 2.3.0

  • Added teleporting to the location of the report and help commands.

Version 2.2.0

  • Added the ability to report an anonymous player.

Version 2.1.0

  • Added X,Y,Z locations of player that submitted the report and the player reported.

Version 2.0.0

  • Added MySQL support and a configuration file.

Version 1.1_01

  • Removed the option to ban players from reporting as it was conflicting with the '*' permission.

Version 1.1

  • Fixed a little bug which stopped some users reporting. Only ops and players with reporter.reports will be notified of reports upon login.

Version 1.0

  • Initial Release