Resource icon

Experimental FormAuth 1.3.0

Compatible API Versions
1.0
Sourcecode
https://github.com/Shfiso-a/FormAuth
A simple authentication plugin for Nukkit Minecraft servers that uses forms for login and registration.
Telegram
: @Shfisoa
please report bugs/issues in Discussion
check Updates to see plugin features
Supported Database types are: H2, Yaml, MySql, MariaDB
Autologin is based on device-id for now (i will add ip-based autologin too)

Screenshot 2025-03-13 170904.png

Config Example:
YAML:
# FormAuth Configuration

# FormAuth Configuration

# Database settings
# Supported database types:
# - "yaml"     : File-based local YAML storage (e.g. players.yml)
# - "h2"       : Local SQL engine using H2 database file
# - "mysql"    : Remote MySQL server database
# - "mariadb"  : Remote MariaDB server database
database:
  type: "yaml"
  
  # File path to store player credentials if type is "yaml"
  path: "plugins/FormAuth/players.yml"
  
  # File path to store H2 database if type is "h2" (Do NOT add file extension)
  h2:
    path: "plugins/FormAuth/players"
    
  # MySQL and MariaDB connection parameters
  mysql:
    host: "localhost"
    port: 3306
    database: "formauth"
    user: "root"
    password: ""

# Authentication settings
login:
  timeout: 60
  max_attempts: 5
  block:
    enabled: true
    duration: 15 # Minutes

afk:
  timeout: 60

kick:
  "on":
    form:
      close: true

# Persian and Arabic support
persian:
  text:
    enabled: false

# Auto-Login settings
auto-login:
  enabled: true
  # Auto-Login modes:
  # - "device": DeviceID based
  # - "off": Disable auto login
  type: "device"
  duration: 15 # Minutes
  #Do NOT share this salt
  server-salt: ""

# Custom UI forms customization
form:
  login:
    title: "Login"
    label: "Welcome back! Please enter your password to login:"
    password:
      label: "Password"
      placeholder: "Enter your password here"
  register:
    title: "Register"
    label: "Welcome! Please register to play on this server:"
    password:
      label: "Password"
      placeholder: "Enter your password here"
    confirm:
      label: "Confirm Password"
      placeholder: "Enter your password again"

# Plugin messages
messages:
  register:
    success: "You have successfully registered!"
    error: "Error during registration. Please try again."
  login:
    success: "You have successfully logged in!"
    error: "Invalid password. Please try again."
    too_many_attempts: "Too many failed login attempts. Please try again later."
    blocked: "You are temporarily blocked due to too many failed login attempts! Try again in %time% minutes."
  not:
    registered: "You are not registered. Please register first."
  already:
    registered: "You are already registered."
    authenticated: "You are already authenticated."
  afk:
    kick: "You have been kicked for being AFK during authentication"
  form:
    close:
      kick: "Authentication required"
  autologin:
    success: "Auto-logged in!"
Author
Shfiso-a
Downloads
3,859
Views
4,573
First release
Last update
Rating
4.40 star(s) 5 ratings

More resources from Shfiso-a

Latest updates

  1. Security Update - New Feature

    added temporary block when max login attempt reached added MySQL and MariaDB drivers (it will...
  2. FormAuth v1.2.0 - New Databases, Bug Fixes

    New database types are: MySql, MariaDB, H2 changed the config format added update check There...
  3. new feature

    one bug fixed auto login added (it's device id based not IP-based)

Latest reviews

Это больше как предложение, чем отзыв, добавь в плагин библиотеку MySQL, так как многие игроки делают сервера со связкой Waterdog PE лобби + режим, ну и добавить восстановление пароля через E-mail, я как-то переписывал твой плагин со всеми этими механиками, но потерял исходник, чисто как совет для улучшения плагина, ну и сделать механику запоминания IP игрока, чтобы игрок не водил постоянно пароль при заходе на сервер
Здравствуйте, я заметил небольшую ошибку на своём сервере. На моём сервере есть другие таблицы форм. При их открытии, например, по команде /shop, я заметил, что табличка с авторизацией и логином появляется снова, а в консоли и в чате игрока появляется сообщение о том, что он не ввёл пароль. Но при повторном вводе такой таблички появляется сообщение о том, что он уже авторизовался. Можете ли вы исправить эту проблему в коде, чтобы табличка не появлялась во время игры при использовании других таблиц форм?
Shfiso-a
Shfiso-a
Скоро проверю и исправлю баг. Спасибо за репорт
Здравствуйте, автор плагина для аутентификации. Пожалуйста, добавьте автовход (я знаю, что вы его делаете), а также исправьте два момента, которые я обнаружил, пользуясь плагином. Чтобы нельзя было выбрасывать предметы, если вы не авторизовались, а также добавьте команду для сброса пароля, а то неудобно постоянно переустанавливать плагин для всех, если какой-то игрок забыл пароль
Shfiso-a
Shfiso-a
Здравствуйте Спасибо, что сообщили об ошибках (багах). Я скоро исправлю их на этой неделе.
Мне понравилось, но отсутствие автоавторизации вызывает недовольство.
Shfiso-a
Shfiso-a
я знаю Я добавлю это в следующем обновлении
Крутой плагин продолжай в том же духе ! Добавь почту и Базы данных ! Без них сложно будет!
Nice plugin

It would be great if we could set commands to be executed after a player registers or logs in.
Top