BetterSettings
The Ultimate Player Preference Framework
█ PAPER • PURPUR • FOLIA 1.20.5+ █
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⚡ Why BetterSettings?
Stop forcing players to memorize confusing commands like /togglechat or /sb toggle.
BetterSettings acts as the central nervous system for your server. It unifies 50+ options into one highly optimized GUI. It is the only settings plugin designed to allow other plugins to inject their own settings directly into the menu.
- Folia & Async Native
Built strictly for multithreading. Zero main-thread blocking. Database saves happen asynchronously.
- Universal API Framework
Don't write your own GUI. Hook into ours. We provide the layout, sounds, and pagination automatically.
- Premium UX Design
Categorized menus, glass borders, toggle sounds, and instant visual feedback.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
️ Clean UI & Modules
No more endless scrolling. Categories keep things organized.
Included Settings (Out of the Box):
Communication
Global Chat • Private Messages • Death Messages • Join/Quit Messages •
Mentions (API)
️ Visuals
Scoreboard • Vanish • Night Vision • Personal Time • Personal Weather • Tab List •
Particles (API)
Gameplay
Auto-Pickup • Flight • PvP • Auto-Sprint • Auto-Respawn • God Mode • Speed Boosts • No Hunger
️ Protection
Drop Protection (Anti-Q) • Inventory Lock • No Fall Damage • No Mob Targeting
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Developer API
The core value is the API. It is guaranteed thread-safe. Don't write your own GUI logic—hook into ours with one line of code.
1. Register a Setting
Code (Java):
@Override
public
void onEnable
(
)
{
// Your setting appears in the GUI automatically
SettingsRegistry.
getInstance
(
).
registerSetting
(
new MyCustomSetting
(
)
)
;
}
2. Intercept & Cancel Toggles
Code (Java):
@EventHandler
public
void onToggle
(PlayerToggleSettingEvent event
)
{
// Perfect for Rank-Based features or Economy hooks
if
(event.
isEnabling
(
)
&&
!player.
hasPermission
(
"vip.chat"
)
)
{
event.
setCancelled
(
true
)
;
event.
getPlayer
(
).
sendMessage
(
"§cYou need VIP to enable this!"
)
;
}
}
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⚙️ Files & Configuration
We use a split-config system for maximum organization.
- config.yml » Main system preferences.
- settings.yml » Configure the 50+ built-in toggles (Icons, Names, Lore).
- ui.yml » Customize the GUI layout, borders, and glass colors.
- messages.yml » Full translation support with Hex Colors.
- ⚡ performance.yml » Database tuning for high-player-count servers.