- Works With
Nameless Players replaces all player names with an invisible character by default, giving your server a unique anonymous feel while allowing trusted players to set their own custom display names.
Stores player Steam Ids mapped to their custom display names, persisting across server restarts.
Features
- Automatically hides all player names with an invisible character (zero-width space)
- Permission-based custom name system for trusted players
- Admin commands to manage other players' display names
- Name validation with configurable length restrictions
- Forbidden word list to prevent inappropriate names
- Stores original names and restores them on plugin unload
- Better Chat integration for chat display names
Permissions
namelessplayers.setname-- Allows players to set their own custom display namenamelessplayers.admin-- Grants access to admin commands for managing other players' names
Commands
Player Commands
/setname <name>-- Sets your custom display name. Name must meet configured length requirements and not contain forbidden words./resetname-- Removes your custom display name and reverts to default
Admin Commands
/setname <player> <name>-- Sets another player's custom display name. Player can be identified by partial name match./resetname <player>-- Removes another player's custom display name
Configuration
JSON:
{
"Version": "2.0.0",
"Name Replacement": "\u200B",
"Minimum Name Length": 3,
"Maximum Name Length": 32,
"Forbidden Names": [
"admin",
"moderator",
"owner",
"server"
]
}
Name Replacement-- Character used to replace player names for those without custom names (default:"\u200B"invisible zero-width space)Minimum Name Length-- Minimum number of characters required for custom display names (default: 3)Maximum Name Length-- Maximum number of characters allowed for custom display names (default: 32)Forbidden Names-- List of words that cannot be used in custom names. Uses case-insensitive partial matching, so"admin"blocks "Admin", "Administrator", "MyAdmin", etc.
Stored Data
JSON:
{
"Custom Names": {
"76561198000000001": "ShadowWarrior",
"76561198000000002": "NightHunter",
"76561198000000003": "IronDefender"
}
}
Localization
JSON:
{
"NoPermission": "You do not have permission to use this command.",
"Usage.SetName": "Usage: /setname <n>",
"Usage.SetNameAdmin": "Usage: /setname <player> <n>",
"Name.Set": "Your display name has been set to: {0}",
"Name.SetOther": "Set {0}'s display name to: {1}",
"Name.Reset": "Your display name has been reset.",
"Name.ResetOther": "Reset {0}'s display name.",
"Name.TooShort": "Name must be at least {0} characters.",
"Name.TooLong": "Name cannot exceed {0} characters.",
"Name.Forbidden": "That name is not allowed.",
"Player.NotFound": "Player not found."
}
