Plugin Downloads

v0.8.1– New Command: /gsunlink <playername> can be run from console. Will remove the specified player’s GS account info from that specific Minecraft account in the gamersafer_players table. Kicks the player with a configurable message telling them to scan the QR code again when they rejoin.
– New option in config.yml: force-player-look-up in config.yml will allow you to force the player to look up when they join the server to see the QR code. Set to “false” to disable.
– Support for Java Edition 1.19 and Java 17
July 13th, 2022
v0.8.0Consider deleting your /lang folder and messages.yml to get the latest updates.

– New Command: /gscheck <playername> will check for alts based on GamerSafer profile (or IP if enabled in config.yml). Also returns the age group and confidence, as well as recent punishments.
– New Command: /gsverify <playername> locks the player’s account based on gsrequired settings in config.yml and sends them a push notification to verify
– New Commands: /banlist, /mutelist, /kicklist, and /warnlist are similar to /reportlist but will only show punishments of a specific type. Many new aliases also added relating to these commands: /blist, /mlist, /klist, /wlist, /hist, /rlist
– Enhancement: Report list commands have the order reversed so that the newest punishments show at the top of the first page. Timestamps added to the list as well with general message cleanup.
– Enhancement: /reportlist and /reporthistory now do the same thing (show the punishment history of the entire server). A new command replaces the old /reportlist feature: /preporthistory <playername> will show the activity of a specific player, with several aliases: /playerhistory, /phistory, /phist, /preportlist, /prlist
– Enhancement: Certain proxy commands, like /server are checked before allowing the player to send them so that players can’t bypass GSAuth when only installed on a hub server. You will get a warning in console if these commands are not blocked for gsrequired players.
– Enhancement: When GSAuth is installed on a proxy network, commands that are run via a server console will attempt to be sent to the proxy for successful triggering. It is always recommended to run the commands on the proxy when the plugin is installed in proxy mode.
– Page counter for /reporthistory and /reportlist fixed
– Fixed HEX color support on punishment messages
– Removed gendered language from the code
– Improved the format of default messaging to help fresh installs
– QR Codes are now properly hidden if console runs /gsdisable while players are in the process of joining a guild
– LiteBans Integration Improvements (particularly relating to mutes)
– Removed config.yml setting for log-user-logins since that is no longer used
– Removed console logging of “known player”
– Removed old “recheckUnauthedPlayer” code that is no longer used
– Many other bug fixes to improve stability and performance
– br-PT language file update
July 1st, 2022
v0.7.6Please delete your /lang folder to get the new files for setting punishment category aliases.

– Lang files parity
– Push category aliases to the API
– New config option “gs-required-allow-inventory-click” to disable inventory clicks for not authenticated players
– New config option “gs-required-allow-interact-entity” to disable entities interactions for not authenticated players
– Fix unmutes and mutes in Litebans integration
– Log a message when trying to run commands from paper console and single-server is false
May 19th, 2022
v0.7.5Please delete your /lang folder to get the new files for setting punishment category aliases.

– Punishment categories can now be given aliases or translated to other languages! Use the lang files to set these aliases.
– In punishment category tab completion, spaces are replaced with ‘_’ and characters are set to lowercase. (eg. “Exploiting Mechanics” -> “exploiting_mechanics”).
– Report logs of type “Unban” and “Unmute” are now pushed to the API with category “other”.
– Punishments imported from Litebans will use the categeory “other” (but are not pushed to the API, stored only locally)
– /unban, /unbanip, and /unmute accept optional text descriptions after the playername. Example: /unban stifflered Appealed ban approved by stifflered
– Fixed an error impacting Spigot servers
– Hungarian translation provided by ReddiiX. THANK YOU!
May 11th, 2022
v0.7.4– Added “/cmi msg” to the muted commands default blocklist
– Update “messages.on-unmute” default message
– Display duration in mute messages
– Autocomplete duration options in duration based commands
– Set “enable-command-aliases” true by default
April 25th, 2022
v0.7.3– MySQL config.yml options have split the jdbc string to allow better parsing of unique passwords with special characters
– MySQL database has been updated to include duration of temporary punishments and updated actions column
– New config.yml option for blocking commands on player mute
– New aliases for /banip including /ipban, /tempipban, /gsipban, and /gstempipban
– When a punishment is triggered, log the event in the console
– Fixed an error on pre-1.17.1 servers
– More information about punishments now sent to GS API for generating monthly reports
April 20th, 2022
v0.7.1– The <reason> parameter in kicks, mutes, and warnings is now optional
– Grab the server origin name where staff member is punishing from if the target player is offline
– Fix an error that was thrown when a player with a new username joined the sever and ip-punishments was set to false
– Fix error that was thrown on /gsreload if ProtocolLib was not present and onboarding-room was set to false
March 28th, 2022
v0.7.0– New temporary punishment commands:
– /tempban (permission: gsauth.ban.temporary)
– /tempmute (permission: gsauth.mute.permanent)
– Implement IP punishments: /banip (permission: gsauth.banip.permanent)
– /tempbanip (permission: gsauth.banip.temporary)
– /unbanip (permission: gsauth.unbanip)
– Permission changes:
– gsauth.mute -> gsauth.mute.permanent
– gsauth.ban -> gsauth.ban.permanent
– Punishments <reason> parameter is now optional
– Persist kicks in the database
– /gsimport command improvements: avoid importing the same punishment multiple times
– Fix startup errors on velocity
– New option in messages.yml: tempban-screen
– Removed vanilla color code (&3, &7, etc…) support from messages.yml and only using MiniMessage formatting
– Better handling of name and IP address changes
March 22nd, 2022
v0.6.1– The /gsreload command now handles reloading the gsroom, as well. No more /gsroom reload command or gsroom.reload perm
– Included more clickable link examples in the default messages.yml and onboarding.yml files
– Updated lang files to include more strings that can be translated. If you’d like to contribute a translation, please let me know!
– Added Papiemento and Dutch lang files
– Fix for LuckPerms not properly syncing permissions across an entire network after a player authenticates
– MiniMessage support added to onboarding.yml messages, lectern, and holograms
– PlaceholderAPI support expanded through the plugin
Feb 2nd, 2021
v0.6.0– New localization feature with included language files (English, Polish, German, and Portuguese)
– MiniMessage formatting and HEX color support in messages.yml and lang files
– Display more useful information on kicks, bans, and tempbans
– Added uniqueServerId column in database for identifying which server a punishment occurred on
– Fix for an issue when a player changes their Minecraft username
– LiteBans import now includes flatfile
– Fix for LiteBans import duplicating punishments sent between installing GS and migrating from LB
– Clearer logging and console messages
Jan 26th, 2021
v0.5.4– New Command: /gsimport litebans allows migrating punishment data from LiteBans into GSAuth. Can only be done via console.
– New Command: /gsreload reloads the following settings and files: messages.yml, verbose-logging, verbose-logging-hide-reminders, gamersafer-required (and related config.yml options), deop-on-logout
– Added uniqueServerId column to MySQL database tables for identifying which server an event was recorded from
– Bug fix for ping spam in console on Bungee
– Bug fix relating to LiteBans caching
– Staff team member ID for punishments now optional for when a command is run via console
– Various messages in console and game have cleaner default values
Jan 12th, 2021
v0.5.3– Bug fixes. Not available outside of private testing. Notes added into v0.5.4 above
v0.5.2– Bug fix relating to caching issues when also using LiteBansDec 30th, 2021
v0.5.1– Fixed a minor bug where players that were required to use GamerSafer and in the required GS group that had not yet linked their account but were banned could login again until they scanned the QR code.
– Added information to some database-related console messages
Dec 28th, 2021
v0.5.0– New Plugin-Based Developer API Pages
– Better ban and kick message view with configurable text
– Separated all configurable text out of config.yml and created new messages.yml file
– Significantly smaller plugin file size for faster install
– Can now set the “minutes-until-reauthentication-needed:” config setting to “0” so it forces reauthentication every time the player relogs
– Fixed some errors relating to punishment commands
– Changed “Player Griefing” and “Staff or Server Griefing” to “Griefing Players” and “Griefing Staff or Server” to make it easier for server mods to find in autocomplete
Dec 21st, 2021
v0.4.1– Initial support for Spigot, Paper, Bungee, Waterfall, and Velocity 1.18.1

NOTE: We will not consider 1.18+ support to be stable until after full stable releases of the above listed software.
Dec 13th, 2021
v0.4.0– The database table gamersafer_players now includes age assurance information so that you can understand the overall demographics of your players that have joined with the GamerSafer app, determine the severity of a punishment based on a user’s age group, and make age-appropriate content and feature decisions for your community. We do not share the DOB or exact age of an individual, only the confidence score of their self-reported age group which we get consent to share (either from the adult or a child’s parent)
– Many punishment commands have been revamped to improve consistency and usability across the plugin. /kick, /mute, /unmute, /ban, and /unban have all been refreshed
/gswarn and /warn have been added
– New configurable punishment messages have been added to config.yml which you can modify as you’d like.
– LiteBans is now supported: You can install GSAuth standalone without LiteBans, or you can run GSAuth on top of an existing LiteBans installation. This allows the LiteBans database you already have to continue to be used while rolling out GSAuth features to your server. If LiteBans is installed, punishments and warnings will be pushed to both databases and the GS API simultaneously.
– Punishments are now sent to the GamerSafer API for tracking multiple alt Minecraft accounts linked to a single GamerSafer player profile, and for use in the future GS web dashboard.
– Variety of related bug fixes and improvements to punishment commands for GamerSafer-connected players
Dec 10th, 2021
v0.3.2IMPORTANT: This update includes changes to the GSAuth MySQL/MariaDB database tables and how punishments are stored. Please take careful note of these as you upgrade.

– GSAuth MySQL tables now use the prefix gamersafer_ to prevent conflicts with other plugins that use similarly named tables. In order to keep your existing GSAuth data, make sure to change your GSAuth tables to include that new prefix.
– Bans, Reports, and Mutes are now stored to three new tables rather than flat yaml files for consistency across server networks
– Some messages in console logs have been changed for more clarity on server networks
– Ban, Report, Mute, and Kick categories have been slightly adjusted to match our API endpoints
– Onboarding Room is now disabled by default in config.yml on first install
Nov. 17th, 2021
v0.3.1– Bug FixesOct. 22nd, 2021
v0.3.0 (use v0.3.1)– New optional dependency ProtocolLib for displaying holograms on the onboarding island.
– A brand new onboarding world (built in collaboration with TeamVisionary) is now available for you to use on your servers. By default it is setup with information to help your staff team members get started with the GamerSafer app for 2FA. Feel free to edit this however you’d like!
– New /gsroom (permission “”) and /gsroom {playername} (permission “”) make it possible for players to teleport to this world and get started with GamerSafer. This will automatically generate the QR code for them when they run that command.
– Players in the GSRoom will not see each other or be able to interact. They will also not be able to break or place blocks. After they authenticate and join your guild by scanning the QR code, they will be in adventure mode until you teleport them using whatever method you want.
– New command /gsroom reload allows you to edit the new onboarding.yml file to change the hologram or lectern book text and reloading the world without restarting the server.
– Enable the onboarding world in config.yml new setting onboarding-room: true. Players that have not yet joined your guild but are in a GSRequired group (like new staff members) will be forced to this onboarding room to complete those steps. Players not in a GSRequired group will not be force teleported to the onboarding world.
– Enable the new setting for force-onboarding-all-players: false in the config.yml file if you want ALL players, even those not in a GSRequired group, to be force teleported to the onboarding world.
– Permissions for messages have been updated to be more consistent with other permissions. gsauth.message.reminder and gsauth.message.success
Oct. 20th, 2021