ServerSettingsGUI
Advanced Admin Control Panel for Popups, Gamerules, and server.properties
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
What is ServerSettingsGUI?
ServerSettingsGUI gives server admins a full in-game control panel to manage:
- Recipe popups
- Advancement popups
- Advancement chat messages
- Unverified chat warning popup
- Boolean gamerules
- server.properties settings
No more manual file editing every time.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Required Dependency
- ProtocolLib is required.
- ServerSettingsGUI will not start without ProtocolLib installed.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Main Features
- Main Admin GUI with clickable toggles
- Popup controls:
- Recipe unlock toast popup
- Advancement toast popup
- Advancement chat announcements
- Unverified chat warning popup
- Dedicated Gamerules GUI:
- All boolean gamerules
- Real applied-state checks
- Reset to server default gamerules
- Full server.properties GUI:
- Boolean settings via click toggle
- Enum/choice settings via selection submenu
- Numeric settings via numeric editor GUI (buttons, range, apply/default)
- Text settings via chat input editor
- Chat text editor controls:
- Type new value directly in chat
- Type "" to save empty value
- Type cancel to abort safely
- Value validation / safety:
- Invalid or incoherent values are rejected
- Invalid edits are not written
- Code-of-conduct safety handling:
- Prevents invalid folder-state issues when those fields are changed
- Reset systems:
- Popup reset
- Gamerules reset
- server.properties reset to initial generated defaults (snapshot-based)
- Snapshot-based server.properties defaults:
- Captures initial generated values
- Reset restores those real baseline values
- EN / IT localization
- Fully customizable messages in config.yml (EN and IT)
- MySQL or YAML storage mode
- Multi-server live sync through shared MySQL revision polling
- Admin notifications for effective changed values
- OP or permission-node access (works with LuckPerms/PEX)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Editors Overview (server.properties)
1. Toggle Editor (boolean)
- Click to switch true/false
2. Choice Editor (enum)
- Open submenu
- Select allowed value
- Optional "Use server default" action
3. Numeric Editor (GUI only)
- Increase/decrease buttons
- Range display
- Apply value button
- Use server default button
- No numeric editing via chat
4. Text Editor (chat)
- Used only for text/write fields
- cancel to abort
- "" for empty string
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Commands
- /admin - Open the main admin GUI
- /adnin - Alias of /admin
- /admin test - Run diagnostics
- /adminabout - Show plugin/server/database/hooks info
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Permissions
norecipetoast.admin
- Access to /admin and /adminabout
Default: op
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Configuration Highlights
- Language: EN / IT
- Debug mode
- Update notifier
- YAML/MySQL storage selection
- Live sync interval for MySQL
- Customizable messages (EN + IT)
- Customizable gamerule descriptions (EN + IT)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Installation
1. Install ProtocolLib in /plugins (required)
2. Put ServerSettingsGUI-1.0.0.jar into /plugins
3. Start server once to generate files
4. Configure config.yml (language, storage, messages)
5. Use /admin in-game as admin
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Important Notes
- Some changes require restart to take full effect (message shown in GUI)
- Plugin will stay disabled if ProtocolLib is missing
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Simple. Powerful. Fully admin-focused.
ServerSettingsGUI keeps server settings manageable, safe, and fast from in-game GUI.
WARNING: Project under active development. Feedback and bug reports are welcome.