rRPNames
A lightweight, powerful, and professional plugin for managing RolePlay names with full API support.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
rRPNames
RRPNames is a lightweight, high-performance plugin designed to do one thing perfectly: provide your RolePlay server with a robust and professional naming system. Built with performance and ease of use in mind, RRPNames focuses on quality and stability, offering a seamless experience for both players and administrators.

Forget bulky plugins that try to do everything. RRPNames is the foundational block for character identity, providing a clean, powerful, and developer-friendly solution.
Features
Powerful Validation Engine: When a new player joins, they are guided through a simple name setup process directly in chat, using clear on-screen titles. No complex commands to memorize! Powerful Validation Engine: Customize every aspect of name validation through a detailed config.yml:
Allowed Languages: Choose between CYRILLIC, LATIN, or ANY character sets.
Length Control: Define minimum and maximum lengths for both first and last names.
Character Rules: Allow or disallow numbers and hyphens.
Unique Names: Prevent players from registering duplicate names.
Auto-Capitalization: Automatically format names like jOhN dOE to John Doe.
Full Administrator Control: A complete suite of commands for easy management:
/rpn set <nickname> <FirstName> <LastName> — Force-set an RP name for any player, even if they are offline.
/rpn reset <nickname> — Reset a player's name and prompt them to set a new one on their next join.
/rpn reload — Reload the configuration file without restarting the server.
Seamless PlaceholderAPI Integration: RRPNames provides a rich set of placeholders for use in any other plugin (TAB, chat managers, scoreboards, etc.):
%rrpnames_fullname% — The player's full RP name.
%rrpnames_firstname% — The first name only.
%rrpnames_lastname% — The last name only.
%rrpnames_initials% — The first name and last initial (e.g., "John D.").
Automatic Update Checker: The plugin automatically checks for new versions on GitHub, notifying operators in-game and in the console to ensure you're always running the latest, most stable release.
Extensive Developer API: RRPNames is built as a platform. It exposes a powerful and easy-to-use API, allowing other developers to create addons and integrate our naming system into their own plugins (e.g., for ID cards, factions, or acquaintance systems). RRPNames is more than just a plugin—it's the definitive foundation for character identity on your server. Simple, fast, and done right.
config.yml
```
---------------------------------------------------- #
RRPNames by reallmerry #
---------------------------------------------------- #
The prefix used in all plugin messages.
plugin-prefix: "&#EA3434&lr&lS&#DD2D35<&#D72A36&lu&#D12737&ld&#CA2337&li&#C42038&lo &c»&r"
---------------------------------------------------- #
NAME SETUP SETTINGS #
---------------------------------------------------- #
setup:
Should the title asking for name registration be looped until the player sets a name?
loop-title: true
The interval in seconds for resending the title.
loop-interval-seconds: 5
Should player movement and chat be blocked until a name is set?
block-actions-before-setup: true
---------------------------------------------------- #
NAME VALIDATION SETTINGS #
---------------------------------------------------- #
validation:
The allowed language for names.
CYRILLIC - Only Cyrillic letters (e.g., а-я, А-Я)
LATIN - Only Latin letters (a-z, A-Z)
ANY - Any letters
language: "LATIN"
Allow numbers in the name? (true/false)
allow-numbers: false
Allow hyphens in the name? (e.g., for names like 'Anne-Marie')
allow-hyphens: true
Minimum and maximum length for the first name.
min-firstname-length: 3 max-firstname-length: 15
Minimum and maximum length for the last name.
min-lastname-length: 3 max-lastname-length: 15
Prevent different players from using the same RP name?
prevent-duplicates: true
Automatically capitalize the first letter of the first and last name, making others lowercase.
For example, "jOHn DOE" -> "John Doe"
force-capitalization: true
---------------------------------------------------- #
PLACEHOLDERAPI INTEGRATION #
---------------------------------------------------- #
display: placeholders:
What to display in placeholders if the RP name is not set.
For example, %rrpnames_fullname% will return "Unknown"
name-not-set-text: "Unknown"
---------------------------------------------------- #
MESSAGES #
---------------------------------------------------- #
messages:
Title and subtitle shown when a name needs to be set.
setup-title: "&fPlease enter your name" setup-subtitle: "&fFormat&7: FirstName LastName&f, for example&7: John Doe"
Validation error messages.
error-invalid-format: "&cInvalid format. Use&7: FirstName LastName" error-firstname-too-short: "&cFirst name is too short. Minimum characters: %min%" error-firstname-too-long: "&cFirst name is too long. Maximum characters: %max%" error-lastname-too-short: "&cLast name is too short. Minimum characters: %min%" error-lastname-too-long: "&cLast name is too long. Maximum characters: %max%" error-invalid-characters: "&cName contains invalid characters. Check language and special symbols." error-name-taken: "&cThis name is already taken. Please choose another one."
Successful name setup.
success-name-set: "You have successfully registered your name!"
Messages for administrators.
admin-reset-success: "&aYou have reset the RP name for player &f%player%&a." admin-set-success: "&aYou have forcefully set the name &f%name%&a for player &f%player%&a." admin-player-not-found: "&cPlayer &f%player%&c not found." admin-reload-success: "&aConfiguration successfully reloaded."
Help menu for administrators.
admin-help-message: - "&f&lAdministrator Commands:" - "&e/rpn reload &7- Reload the plugin's configuration." - "&e/rpn set <nickname> <FirstName> <LastName> &7- Forcefully set a player's name." - "&e/rpn reset <nickname> &7- Reset a player's name and force them to set it again."
```