TurboClean
Ultra-fast performance optimization plugin for Minecraft Paper servers
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
TurboClean
TurboClean ⚡
> Ultra-fast performance optimization plugin for Minecraft Paper servers
🚀 Features
⚡ Lightning-Fast Performance
- Network optimization - Operations complete in milliseconds - Network optimization - Minimal resource usage - Network optimization - Non-blocking operations with thread safety - Network optimization - Optimized data access - Network optimization - Dramatically improves server speed - Network optimization - Reduces packet spam and network lag
🧹 Ultra-Smart Cleanup System
- Network cleanup - Remove lag-causing entities (items, arrows, experience orbs, TNT, fireworks, minecarts, boats, armor stands) - Network cleanup - Automatic garbage collection and RAM management - Network cleanup - Unload unused chunks to save memory - Network cleanup - Limit AI processing and optimize redstone/hoppers - Network cleanup - Remove excessive mobs that cause lag - Network cleanup - Batched entity removal to reduce network load
⚙️ Flexible Configuration
- Smart defaults - `/turboclean settings <setting> <value>` - Smart defaults - Edit `config.yml` for detailed customization - Smart defaults - Update settings without server restart - Smart defaults - Automatic config validation and correction - Smart defaults - Optimized for all server sizes (1.20+)
📊 Advanced Monitoring
- Historical data tracking - Track server performance - Historical data tracking - Get notified of high memory usage - Historical data tracking - Automatic cleanup when needed - Historical data tracking - ASCII graphs showing RAM, CPU, Disk, Network - Historical data tracking - See performance trends over time
🎯 Smart Automation
- Named entity protection - Configurable cleanup schedules - Named entity protection - Automatic cleanup during performance drops - Named entity protection - Keep entities near players, remove distant ones - Named entity protection - Exclude named entities from cleanup
📋 Requirements
- Compatibility: 1.20+ (Paper/Purpur/Folia) - Compatibility - Compatibility: 17 or higher (supports Java 21) - Compatibility: Paper MC (or forks like Purpur, Folia) - Compatibility: Works on all server types (low-end, medium-end, high-end)
📥 Installation
1. Download the latest `TurboClean.jar` from Releases 2. Place the jar file in your server's `plugins` folder 3. Restart your server 4. Configure the plugin in `plugins/TurboClean/config.yml` 5. Use `/turboclean reload` to apply changes
🎮 Commands
| Command | Description | Permission | |---------|-------------|------------| | `/turboclean clean` | Perform full cleanup | `turboclean.use` | | `/turboclean quick` | Quick entity cleanup | `turboclean.use` | | `/turboclean network` | Network-optimized cleanup | `turboclean.use` | | `/turboclean stats` | Show performance stats with graphs | `turboclean.use` | | `/turboclean reload` | Reload configuration | `turboclean.admin` | | `/turboclean settings <setting> <value>` | Update settings | `turboclean.admin` |
Command Examples
```bash
Perform a full cleanup
/turboclean clean
Quick cleanup for immediate performance boost
/turboclean quick
Network-optimized cleanup (reduces lag from packets)
/turboclean network
Check server performance with cool ASCII graphs
/turboclean stats
Update cleanup interval to 2 minutes (balanced)
/turboclean settings auto-cleanup.interval 120
Enable smart entity cleanup
/turboclean settings entities.enabled true /turboclean settings entities.player-distance 32 ```
🛡️ Permissions
| Permission | Description | Default | |------------|-------------|---------| | `turboclean.*` | All permissions | OP | | `turboclean.use` | Basic usage | OP | | `turboclean.admin` | Admin commands | OP | | `turboclean.notify` | Receive notifications | OP |
⚙️ Configuration
Quick Settings via Commands
```bash
Essential settings you can change via commands:
/turboclean settings auto-cleanup.enabled true /turboclean settings auto-cleanup.interval 60 /turboclean settings entities.enabled true /turboclean settings memory.enabled true /turboclean settings monitoring.enabled true ```
Configuration File (`config.yml`)
Click to view full configuration
```yaml
TurboClean Configuration
general: enabled: true debug: false
auto-cleanup: enabled: true interval: 120 # 2 minutes for balanced performance cleanup-on-start: true cleanup-on-save: true
entities: enabled: true max-per-chunk: 20 # Smart limit cleanup-types: - "DROPPED_ITEM" - "ARROW" - "EXPERIENCE_ORB" - "PRIMED_TNT" - "FIREWORK" - "ITEM_FRAME" - "ARMOR_STAND" - "MINECART" - "BOAT" - "FALLING_BLOCK" exclude-named: true player-distance: 32 # Optimized distance
memory: enabled: true force-gc: true gc-interval: 300 cleanup-threshold: 70 # Smart threshold clear-unused-chunks: true
Network optimization for reduced lag
advanced: network-optimization: batch-packets: true batch-size: 50 batch-delay: 1
monitoring: enabled: true tps-alert-threshold: 18.0 memory-alert-threshold: 90 ```
📈 Performance Impact
Before TurboClean
- ❌ 200+ entities causing lag - ❌ 90%+ memory usage - ❌ 15-17 TPS during peak hours - ❌ Frequent lag spikes
After TurboClean
- ✅ Entities kept under control - ✅ 60-70% memory usage - ✅ Stable 19-20 TPS - ✅ Smooth gameplay experience
🔧 Advanced Features
Smart Entity Management
- Chunk-based limits - Only removes entities far from players - Chunk-based limits - Choose exactly which entities to clean - Chunk-based limits - Keeps entities with custom data - Chunk-based limits - Prevent entity overload per chunk
Memory Optimization
- Emergency cleanup - Smart garbage collection timing - Emergency cleanup - Automatic unused chunk unloading - Emergency cleanup - Real-time usage tracking - Emergency cleanup - Automatic cleanup at high memory usage
CPU Optimization
- Async processing - Reduce entity AI processing load - Async processing - Optimize redstone calculations - Async processing - Improve hopper performance - Async processing - Non-blocking operations
📊 Monitoring & Alerts
TurboClean provides comprehensive monitoring:
- Historical Trends - Real-time server tick rate tracking - Historical Trends - Notifications when memory usage is high - Historical Trends - Automatic actions based on performance - Historical Trends - Cool ASCII graphs and charts - Historical Trends - Sparkline graphs showing performance over time
🎨 Cool Visual Stats Dashboard
Run `/turboclean stats` to see a beautiful ASCII dashboard with:
``` ╭─────────────────────────────────────────╮ │ TURBOCLEAN STATS │ ├─────────────────────────────────────────┤ │ RAM Usage: │ │ ████████████████████░ 85% (3.2GB/4GB) │ │ Trend: ▁▂▃▄▅▆▇█▇▆▅▄▃▂▁ (15min history) │ ├─────────────────────────────────────────┤ │ CPU & Performance: │ │ ██████████████░░░░░░ 70% CPU Usage │ │ 19.8 TPS (1,247 entities) │ │ TPS Trend: ▇▇▆▅▄▅▆▇▇█ │ ├─────────────────────────────────────────┤ │ Disk Storage: │ │ ████████████░░░░░░░░ 60% (120GB/200GB) │ ├─────────────────────────────────────────┤ │ Network Status: │ │ ████████████████████ 100% Optimal │ │ Packets: Optimized • Lag: Minimal │ ├─────────────────────────────────────────┤ │ Overall Status: EXCELLENT │ ╰─────────────────────────────────────────╯ ```
- Performance tips - Green/Yellow/Orange/Red based on usage - Performance tips - Live RAM, CPU, Disk, and Network status - Performance tips - Sparkline charts showing trends - Performance tips - Automatic suggestions when needed
🎯 Use Cases
Low-End Servers (Limited RAM/CPU)
- Set cleanup interval to 60-90 seconds - Enable network-optimized cleanup - Use memory threshold of 60-70% - Enable all optimizations - Use `/turboclean network` command regularly
High-End Servers (Dedicated Hardware)
- Set cleanup interval to 120-180 seconds - Enable standard cleanup with monitoring - Use memory threshold of 75-85% - Focus on entity management - Use `/turboclean clean` for comprehensive cleanup
Medium-End Servers (VPS/Shared)
- Set cleanup interval to 90-120 seconds - Balance between network and quick cleanup - Use memory threshold of 70-80% - Enable smart monitoring - Use `/turboclean quick` for regular maintenance
🔧 Troubleshooting
High Memory Usage
1. Lower `memory.cleanup-threshold` to 70-80 2. Reduce `auto-cleanup.interval` to 180 seconds 3. Enable `memory.clear-unused-chunks` 4. Check `entities.max-per-chunk` setting
Low TPS
1. Enable `turboclean quick` command regularly 2. Lower `entities.player-distance` to 32-48 3. Increase cleanup frequency 4. Enable CPU optimizations
Plugin Not Working
1. Check console for errors 2. Verify Paper/Purpur server (not Spigot) 3. Ensure Java 17+ is installed 4. Check permissions are set correctly
Commands Not Responding
1. Use `/turboclean settings` instead of `/turboclean:settings` 2. Make sure you have proper permissions 3. Check if plugin loaded correctly with `/plugins` 4. Restart server if needed
Thread Safety Errors
1. Plugin now runs all cleanup on main thread 2. No more "Chunk getEntities call" async errors 3. All operations are thread-safe 4. Improved stability and performance
🤝 Support
- Wiki: Wiki - Wiki: %%MD1%% - Wiki: %%MD2%%
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
💖 Support the Project
If TurboClean helps your server run smoothly, consider: - ⭐ Starring the project on GitHub - 💬 Leaving a review on Modrinth - 🔄 Sharing with other server owners - 💝 Supporting development
---
Made with ❤️ for the Minecraft community
*TurboClean - Because performance matters!*