All versions
🛠️ Admin Commands (
📧 Email System (
4.0
Release
NewLogin 4.010 months ago 1,183
Compatibility
Minecraft: Java Edition
1.21.x
Platform
Paper
Changes
🎉 Major Release - Complete Security Update
Release Date: January 2026
Minecraft Version: 1.21+
Java Version: 21
✨ New Commands
| Command | Description | Permission |
|---|---|---|
/logout |
Manual logout for players | - |
/unregister <player> [--confirm] |
Remove a player's registration (admin) | newlogin.unregister |
/newlogin |
Administrative commands | newlogin.admin |
/email |
Email management for password recovery | - |
🛠️ Admin Commands (/newlogin)
reload- Reload plugin configurationinfo <player>- Show detailed player informationlist [page]- List all registered players (paginated)stats- Show plugin statisticsforcelogin <player>- Force login a playerforcelogout <player>- Force logout a playersetspawn- Set the login spawn locationhelp- Display help menu
📧 Email System (/email)
set <email>- Set your email addressremove- Remove your emailshow- Display your current emailrecover <email>- Request password recoveryconfirm <code>- Confirm email or recovery code
🔒 New Security Features
- Damage Protection - Players cannot receive damage before login
- Hunger Protection - Hunger bar doesn't decrease before login
- Inventory Protection - Cannot open inventories before login
- Item Pickup Protection - Cannot pick up items before login
- Block Protection - Cannot break/place blocks before login
- Entity Interaction Protection - Cannot interact with entities before login
- Item Swap Protection - Cannot swap hand items before login
🎯 Login Spawn System
- Teleport unlogged players to a specific location
- Automatically restore original location after login
- Configurable via
/newlogin setspawnorconfig.yml
login-spawn:
enabled: false
world: "world"
x: 0.0
y: 64.0
z: 0.0
yaw: 0.0
pitch: 0.0
👻 Invisibility System
- Players become invisible until they login
- Hidden from other players completely
- Invisibility potion effect applied automatically
- Configurable in
config.yml
🏷️ New Aliases
| Command | Aliases |
|---|---|
/login |
/l |
/register |
/reg |
/changepassword |
/changepass, /mudarsenha |
/resetpassword |
/resetpass |
/logout |
/sair |
/newlogin |
/nl, /nlogin |
/email |
/mail |
🎨 Tab Completion
- Full tab completion support for all commands
- Smart suggestions for player names
- Permission-aware completions
📊 New Player Data Tracking
- Login Count - Track total logins per player
- Last IP - Store last known IP address
- Registration Date - When player registered
- Last Login - Last successful login timestamp
🔐 New Permissions
newlogin.* - Access to all commands
newlogin.admin - Admin commands access
newlogin.admin.reload - Reload configuration
newlogin.admin.info - View player info
newlogin.admin.list - List registered players
newlogin.admin.stats - View statistics
newlogin.admin.forcelogin - Force player login
newlogin.admin.forcelogout - Force player logout
newlogin.admin.setspawn - Set login spawn
newlogin.resetpassword - Reset player passwords
newlogin.unregister - Unregister players
newlogin.bypass.timeout - Bypass login timeout
newlogin.bypass.lockout - Bypass attempt lockout
📝 New Configuration Options
Login Protection
login-protection:
invisibility: false
blindness: false
no-damage: true
no-hunger: true
Email System (SMTP)
email:
enabled: false
smtp:
host: "smtp.gmail.com"
port: 587
username: ""
password: ""
tls: true
from: "noreply@server.com"
Logging
logging:
successful-logins: true
failed-logins: true
password-changes: true
registrations: true
Allowed Commands Before Login
security:
allowed-commands:
- "help"
- "rules"
💬 New Messages
auto-login-success: "&aSession restored! You were logged in automatically."
not-logged-in: "&cYou are not logged in!"
logout-success: "&aYou have been logged out successfully!"
login-timeout-kick: "&cLogin timeout! Please reconnect and login."
unregister-success: "&aPlayer {player} has been unregistered!"
unregistered-by-admin: "&cYour registration was removed by an administrator."
invalid-email: "&cInvalid email format!"
email-already-used: "&cThis email is already in use!"
email-confirmation-sent: "&aConfirmation email sent to {email}!"
email-set-success: "&aEmail set successfully: {email}"
recovery-email-sent: "&aRecovery email sent to {email}!"
invalid-code: "&cInvalid or expired code!"
🐛 Bug Fixes & Improvements
- Improved password hashing with SHA-256 + salt
- Better session management
- Fixed movement detection (allows camera rotation)
- Improved lockout system with remaining time display
- Better error handling and logging
- Async data saving to prevent lag
- Memory leak fixes in session cleanup
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:HE8bRw2l:IoIw5Krq"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:HE8bRw2l:IoIw5Krq"
}

