Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details
GeyserOptimizer
A Minecraft server plugin specifically designed to optimize and improve the connection stability of the Geyser plugin, while also providing connection quality monitoring and passive optimization for Java Edition players.
This plugin should be able to use in all versions.
At first, I actually just wanted to stabilize the network performance for Bedrock Edition players, but then I thought, could Java do the same? So I conveniently did connection optimization for Java as well.
To know more: Wiki page[<—中文看这里!]
What can it do?
Optimized connection stability
Real-time monitoring: Regularly check Geyser's connection status
Automatic reconnection: Automatically attempts to restore when connection issues are detected
Passive reconnection: Lightweight optimization is automatically applied when Bedrock Edition/Java Edition players have unstable connections
Health Testing: Assessing connection quality and providing reports
Optimized connection stability
Real-time monitoring: Regularly check Geyser's connection status
Automatic reconnection: Automatically attempts to restore when connection issues are detected
Passive reconnection: Lightweight optimization is automatically applied when Bedrock Edition/Java Edition players have unstable connections
Health Testing: Assessing connection quality and providing reports Intelligent management
Configuration Management: Adjust all parameters through configuration files
Administrator Notifications: Notify online administrators when connection status changes
Detailed Logs: Optional detailed log mode for problem diagnosis
Floodgate Compatibility: Perfectly supports Floodgate offline account systems
Bedrock Edition player optimization
Player Level Optimization: Performs optimizations for individual players with unstable connections Instant Optimization: Immediately performs optimization when unstable connections are detected
Global Optimization: Global optimization is triggered when the proportion of unstable players is too high
Connection Hold: Automatically sends to maintain active data packets and maintain connections Accurate player identification
Three-layer identification: Floodgate API → Geyser's internal session list → player name features as a backup
Unrelied on prefixes: Even if Floodgate does not set Bedrock Edition player prefixes, it can still be accurately identified through Geyser's Session Manager
Caching mechanism: Refreshes the Bedrock Edition player list from Geyser every 30 seconds to avoid frequent reflection calls
Java Edition player optimization
Ping monitoring: Detects the ping of all Java Edition players every 10 seconds
Volatility identification: Detects players experiencing severe network fluctuations through Ping variance
Passive optimization: Automatically performs lightweight optimization when high latency or instability is detected
Connection Quality Report: Generates a Ping statistics report every 5 minutes
Installation requirements
1.EssentialX plugin
2.Optional (Recommended Installation)
3.Geyser - Bedrock Edition connection plugin (without installation, bedrock Edition-related features will not work, Java Edition optimization remains normal)
4.Floodgate - For more accurate Bedrock Edition player identification
Installation steps
1.Export Project: Get the GeyserOptimize.jar file
2.Place the file: Place the GeyserOptimize.jar file into /plugins
3.Compiling plugins: restar the server to load GeyserOptimizer.
Frequently Asked Questions
Q: Plugin prompt "Geyser plugin not detected"
A: Make sure the Geyser plugin is properly installed and enabled. If you don't need the bedrock edition feature, you can ignore this prompt, and the Java edition optimization will still work normally.
Q: The auto-restart function is not working
A: Check the auto-restart-enabled setting in the configuration file and make sure it is true.
Q: Where can I view the detailed log?
A: To view in the server console or log files, you need to enable detailed-logging: true.
Q: How can I check the connection status of Java Edition players?
A: Use the /geyseropt java command to view ping statistics and unstable player information.
Q: How can I view detailed connection statistics?
A: Use the /geyseropt stats command to view detailed statistics.
Q: Floodgate doesn't set a prefix. Can plugins still recognize Bedrock Edition players?
A: Yes, you can. The plugin uses the Floodgate API to determine if Floodgate is unavailable, and will directly retrieve the current connected Bedrock Edition player UUID list from Geyser's internal Session Manager to identify them, without relying on prefix settings.
Q: How do plugins distinguish between Bedrock and Java Edition players?
A: Three-layer recognition mechanism: (1) Floodgate API (most accurate)→ (2) Geyser's internal session list (not dependent on prefixes)→ (3) Player name features (as a backup). The player list refreshes from Geyser every 30 seconds.
Performance recommendations
Geyser recommends setting the inspection interval between 30-60 seconds
Java Edition ping check interval is recommended to be set between 100-600 ticks (5-30 seconds)
Enabling detailed logging on production servers may affect performance
If the server load is high, the inspection interval can be appropriately increased
Update log
v1.0.0
Initial version released
Basic connection monitoring functions
Automatic reconnection mechanism
Status statistics and reporting
The administrator notified the system
Floodgate compatible
Bedrock Edition players passively reconnect
Java Edition player ping monitoring and passive optimization
Connect quality reports
Technical support
If you encounter any issues, please:
Check for error messages in the server logs
Confirm that the Geyser/Floodgate plugin is working properly
Try enabling detailed log mode for diagnosis
Check if the configuration file is correct
License
This project is open source under the MIT license.
Note: Geyser and Floodgate are optional dependencies. If not installed, bedrock Edition features are unavailable, but Java Edition player optimization still works normally.
