Skip to content
Owen edited this page Jun 1, 2024 · 11 revisions

There are several files you can use to modify your GSAuth plugin settings:

Configuration

Backend vs Local

GSAuth plugin and documentation sometimes refers to backend vs local when mentioning certain features or settings.

Backend Server

Backend servers are servers that handle the major communication and authentication logic in the network. For multi-server networks, this will be considered the proxy. Single servers, however, will consider "backend" as the standalone servers (single-server: true).

Backend servers store player data in a database, and must have keys put into keyinput.txt.

Local Server

Local servers are "child" servers of a proxy (single-server: false). These servers are responsible for forwarding authentication modals to the player and do not do any authentication logic locally. If there is no proxy, then the standalone servers are considered "local"

These servers require no database or keys, as local servers do not contact the GamerSafer API.

config.yml

Note: Some sections may not be present depending on your server configuration (single-server: true/false).

authentication-flow:
   authentication-book:
      has-exit-button: true
   invite-menu:
      has-exit-option: true
      has-bossbar: true
single-server: true
auto-deop: true
verbose-logging: true
when-player-is-not-verified:
   allow-commands: false
   command-allowlist:
   - gslink
   - gsverify
   - warp
   - rtp
   allow-chat: false
   allow-movement: true
   allow-block-place: false
   allow-block-break: false
   allow-interact: false
   allow-interact-entity: false
   allow-item-pickup-and-drop: false
   is-invincible: true
   allow-inventory-click: true
authentication-save-timer: 1
prompt-verification-on-login: false
database:
   type: SqlLite
   database: gsauth
   mysql-configuration:
      address: localhost:3306
      user: mysqluser
      password: mysqlpass
reverification:
   commands-to-check-verification:
   - op
   - deop

messages.yml

Note: Some sections may not be present depending on your server configuration (single-server: true/false).

GSAuth supports MiniMessage formatting for messages to players. Learn more about how to use this at https://docs.adventure.kyori.net/minimessage#the-components

GamerSafer comes with a localization feature for translating many lines of text found throughout the plugin.

logs:
   player-deoping: Deoping player {player}
   plugin-loaded-with-proxy: GSAuth Plugin loaded in server network / proxy mode.
   plugin-init-failed: Failed to initialize Plugin! Look for problems above.
   reloaded: Reloaded!
   shutdown: Shutting down...
   send-gs-data: Sending GS data of {player} to server '{server}'
   send-gs-required-data: Sending GS required data of {player} to server '{server}'
   open-verification-book: Sending open verification book on {player} to server '{server}'
   close-verification-book: Sending close verification book on {player} to server
      '{server}'
   open-scan-menu: Sending open scan menu on {player} to server '{server}'
   close-scan-menu: Sending close scan menu book on {player} to server '{server}'
   player-joined-first-time: Player {player} has joined for the first time.
   player-verification-stage: Player {player}'s has requested authentication through
      {stage}
   player-link-successful: Player {player} has successfully linked their account to
      the server
   player-link-failed: Player {player} has failed to link their account to the server
   player-link-error: Error while handling invite for player {player}!
   player-unlinked-successful: Player {player}'s account was successfully unlinked
      from the server
   player-auth-successful: Player {player} has successfully authenticated with GamerSafer
      account
   player-auth-failed: Player {player} failed to authenticate with GamerSafer account
   player-auth-error: Error while handling verify for player {player}!
   db-type-not-implemented: 'Failed to establish a connection with the database: Database
      type {type} not fully implemented!'
   db-failed-to-connect: Failed to establish a connection with the database. Did you
      set it up in the config.yml?
   db-failed-fixup: Failed to fixup old database layout
   db-failed-migration: Error while executing migration {migration}
   db-executing-migration: Executing migration {migration}
   key-manager-load-failed: 'KeyManager: Failed to load keys: {exception}'
   key-manager-importing: 'KeyManager: Importing keys'
   key-manager-import-failed: 'KeyManager: Failed to import keys: {exception}'
   key-manager-loading-keys: 'KeyManager: Loading keys'
   plugin-loaded-standalone: GSAuth Plugin loaded in single server / standalone mode.
   missing-api-key-or-guild-id: GSAuth Plugin is installed and using local data but
      NOT active with the service! Please put your API Key AND Guild ID in keyinput.txt
      and restart the server.
   api-connection-successful: Connection to API successful
messages:
   guild-join-success-message:
      actionbar-enabled: false
      actionbar-message: ''
      bossbar-enabled: false
      bossbar-message: ''
      bossbar-color: PURPLE
      bossbar-style: PROGRESS
      bossbar-time: 0
      chat-enabled: true
      chat-message: <color:#dedaff>Success! You have authenticated and now have all
         your permissions.
      title-enabled: true
      title-message: <color:#dedaff>Success!
      subtitle-message: <color:#9a91e5>Enjoy the server.
      title-time: 10
      commands-enabled: false
      commands: []
   reverify-success-message:
      actionbar-enabled: false
      actionbar-message: ''
      bossbar-enabled: false
      bossbar-message: ''
      bossbar-color: PURPLE
      bossbar-style: PROGRESS
      bossbar-time: 0
      chat-enabled: true
      chat-message: <color:#dedaff>Success! You have authenticated and now have all
         your permissions.
      title-enabled: true
      title-message: <color:#dedaff>Success!
      subtitle-message: <color:#9a91e5>Enjoy the server.
      title-time: 10
      commands-enabled: false
      commands: []
   kick-unlinked-screen: |-
      <color:#d84684><b>Your GamerSafer account was unlinked from this server!<reset>

      <color:#d84684>Please rejoin to link your GS account.
   action-denied: <color:#d84684><b>You cannot do this until you authenticate with
      the GamerSafer app.
authentication-flow:
   authentication-book:
      description: Welcome! Please authenticate with the notification sent to your
         phone.
      verify-button: <blue><bold>  Click to Confirm
      loading-title: <gray><bold>      Loading...
      failed-title: <red><bold> Failed! Try again.
   invite-menu:
      has-exit-option: true
      exit-option-description: <!italic><white>Click Swap Hands to close this inventory.
      menu-title: Scan QR then click Emerald
      bossbar-title: <!italic><gray>Hover over the book
      book-name: <!italic><white><bold>Info Book
      book-lore:
      - <!italic><white>Authenticate using the GamerSafer App
      - ''
      - <!italic><white>Scan the QR code on the right
      - <!italic><white>Click the emerald block when completed!
      confirm-name: <!italic><white><bold>Confirm Authentication
      confirm-lore:
      - <!italic><white>Click to confirm your authentication
      has-bossbar: true
   invite-menu-info-book:
      description: You are now being given a QR code to scan using the GamerSafer
         App.
      confirm-button: <blue><bold>  Click to Confirm
plugin-prefix: '[GSAuth] '
commands:
   no-permission: <red>You are not permitted to use this command!
   console-only: <red>This command must be run from console!
   not-online: <red>Player {player} is not online!
   player-not-found: <red>Could not find a player by that name!
   already-linked: Already linked
   linking-started: Account linking process started
   not-linked: Player {player} has not linked their account to the server
   internal-error: An internal error occurred
   platform-invalid: These commands can only be run in-game or via the proxy console.
   reloading-frontend: Reloading frontend proxy servers, note however a player must
      be online!
snip-playername: player name

keyinput.txt

Note: This is NOT required on local servers. (single-server: false)

Input your API Key and Guild ID

Screenshot 2023-10-28 at 5 09 05 PM

An example of the keyinput.txt file where you'll paste your API Key and Guild ID

Locate and open the keyinput.txt file in the GSAuth folder on your server. You will see the two following lines:

  • guild-id=YOUR_GUILD_ID_HERE
  • api-key=YOUR_API_KEY_HERE

Copy and paste the API Key and Guild ID that we provided to you as shown in the screenshot above. Replace "YOUR_API_KEY_HERE" and "YOUR_GUILD_ID_HERE" with the appropriate keys. Then save and close the file.

ℹ️ Note: After you restart the server, this file will be reset as if you hadn't added your key and ID yet. That's normal. The key and ID have been encoded and stored elsewhere as an extra layer of protection. If you are ever in need of resetting your API Key, please contact us and we'll be happy to send you a new one.

Clone this wiki locally