Перейти к основному содержимому

StaffAuth Extension

Official compatibility

ElementReference
TypeWriterRequired. Use the official TypeWriter release supported by the extension release.
Related extensionsInstall the related extensions listed on this page before using entries that depend on them.

StaffAuth

StaffAuth protects staff accounts marked by a permission until they authenticate after joining. Passwords are stored as BCrypt hashes in a Typewriter artifact; plaintext passwords are never accepted through commands or chat.

Entries

  • Staff Auth Config — permissions, security limits, messages and timeouts.
  • Staff Auth Menu — keypad GUI and Typewriter layout configuration.
  • Staff Auth Data — BCrypt password storage. Keep the generated artifact ID stable after deployment.

Commands

/staffauth or /staffauth login opens the authentication interface for the player. The other supported subcommands are:

  • /staffauth register
  • /staffauth logout
  • /staffauth status
  • /staffauth reset <player> — requires the configured admin permission.
  • /staffauth force-logout <player> — requires the configured admin permission.

Passwords must be entered in the GUI/Dialog interface. StaffAuth does not expose password arguments in commands or chat.

Permissions

PermissionPurpose
security.adminMarks a player as staff and requires authentication.
security.staffauth.adminAllows password reset and force logout operations.

Distribution variants

VariantTypewriterJava bytecodePlaceholders
PublicOfficial published Typewriter APIBuilt with JDK 25, target Java 21Official PlaceholderAPI
CustomBTC/local Typewriter APIJava 25BTC MiniPlaceholders

The public build may run on servers where legacy compatibility is permitted, but StaffAuth itself does not include a legacy fallback. Both variants use the modern Paper/Folia-safe integration.

User guide

  1. Create staff_auth_config for rules, messages, timeouts, and security limits.
  2. Create staff_auth_menu for the GUI keypad, then staff_auth_data for BCrypt data storage.
  3. Grant security.admin to staff members who require authentication and security.staffauth.admin to operators allowed to reset or disconnect an account.
  4. Test /staffauth register, /staffauth login, /staffauth logout, and /staffauth status with a test account.
  5. Finally test /staffauth reset <player> and /staffauth force-logout <player> with the administrator account only.

Passwords are entered through the GUI/Dialog interface. They must not be passed as command or chat arguments.

Troubleshooting

The extension is not visible

Check that the installed release matches the supported TypeWriter release and that the related extensions listed in the compatibility section are present.

An entry is missing

In the Typewriter Web panel, use the Search bar or the + button to find or create the entry with its exact identifier. Entry IDs and field names are case-sensitive; do not translate them.

The entry saves but nothing happens

Check that the entry is connected to the trigger, command, objective, event, or menu interaction required by its type. Test with optional permissions and criteria removed, then add them back one at a time.

An integration does not work

Verify the dependency and version shown in the extension card, then check the server log for the first error. Do not replace a missing dependency with a similarly named plugin unless the extension source explicitly supports it.