A lightweight and highly customizable private messaging plugin for Hytale servers with configurable message formats and color schemes.
Communication is essential in multiplayer games. Players need a way to have private conversations without cluttering public chat. HyMSG provides:
- Simple and intuitive commands
- Fully customizable message formats
- Quick reply functionality
- Color-coded messages for better readability
- Easy configuration without code
Whether you're running a roleplay server, a competitive PvP arena, or a creative community, HyMSG gives your players the tools they need to communicate privately and effectively!
/msg <player> <message>- Send a private message to any online player- Multiple command aliases:
/m,/w,/whisper,/tell - Prevents messaging yourself
- Clear error messages for offline players
/r <message>- Instantly reply to the last player who messaged you- Alias:
/reply - Bidirectional reply tracking
- Automatic cleanup when players disconnect
- Configure message formats with placeholders
- Separate formats for sender and receiver
- Console message support
- All formats and colors in
config.yml - Translatable system messages
- No code changes needed
1️⃣ Download the plugin
# Download HyMSG-1.0-SNAPSHOT.jar from releases2️⃣ Install on your server
# Place the JAR in your mods folder
cp HyMSG-1.0-SNAPSHOT.jar /path/to/hytale/mods/3️⃣ Start your server
The plugin will automatically create a default config.yml in mods/HyMSG/
4️⃣ Configure your settings (optional)
Edit mods/HyMSG/config.yml to customize message formats and colors
# Message format configurations
# Available placeholders: {sender}, {receiver}, {message}
senderFormat: "[Me -> {receiver}] {message}"
receiverFormat: "[{sender} -> Me] {message}"messages:
prefix: "[HyMSG] "
playerNotFound: "Player {player} not found or is offline."
cannotMessageSelf: "You cannot send a message to yourself."
noReplyTarget: "You don't have anyone to reply to."
messageUsage: "Usage: /msg <player> <message>"
replyUsage: "Usage: /r <message>"
configReloaded: "Configuration reloaded successfully!"
noPermission: "You don't have permission to use this command."
defaultConfigCreated: "Default config.yml created"
errorCreatingConfig: "Error creating config file, generating default"
errorLoadingConfig: "Error loading configuration: {error}"
configSaved: "Configuration saved successfully"
errorSavingConfig: "Error saving configuration: {error}"
# Colors for system messages
errorColor: "red"
successColor: "green"
infoColor: "yellow"| Command | Aliases | Description | Usage |
|---|---|---|---|
/msg |
/m, /w, /whisper, /tell |
Send a private message | /msg Simon Hello there! |
/r |
/reply |
Reply to last message | /r Thanks for the help! |
Sending a message:
/msg Player123 Hey, want to team up?
/w Player123 Meet me at spawn
/tell Player123 Check out my build!
Quick replies:
Player: /msg Player123 You Got a sword?
You: /r Yes! Want to trade?
Player: /r Sure, meet at marketplace
You: /r On my way!
HyMSG supports placeholders in message formats for dynamic content:
{sender}- Name of the player sending the message{receiver}- Name of the player receiving the message{message}- The actual message content{player}- Player name in error messages
Example Custom Format:
senderFormat: "📤 To {receiver}: {message}"
receiverFormat: "📥 From {sender}: {message}"Result:
You see: 📤 To Steve: Hello!
Steve sees: 📥 From You: Hello!
1️⃣ Clone the repository
git clone https://github.com/alesixdev/HyMSG.git
cd HyMSG2️⃣ Add libraries
Add HytaleServer.jar on libraries3️⃣ Build with Gradle
./gradlew clean build4️⃣ Ready!
# The built plugin will be at:
build/libs/HyMSG-1.0-SNAPSHOT.jarHyMSG/
├── src/main/
│ ├── java/dev/alesixdev/hymsg/
│ │ ├── HyMSGPlugin.java # Main plugin entry
│ │ ├── commands/
│ │ │ ├── MsgCommand.java # /msg command
│ │ │ └── ReplyCommand.java # /r command
│ │ ├── config/
│ │ │ ├── ConfigManager.java # Config loading/saving
│ │ │ └── ConfigData.java # Config data model
│ │ └── utils/
│ │ ├── MessageFormatter.java # Color
│ │ └── ReplyManager.java # Reply tracking
│ └── resources/
│ ├── config.yml # Default configuration
│ └── manifest.json # Plugin manifest
├── build.gradle # Build configuration
└── README.md
- Issues: GitHub Issues
Licensed under the MIT License. Use, modify, and redistribute freely.