Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MCJEBooster

Minecraft Java Edition Multi-Core Optimization Engine | Official Compatibility Pack | High-Compatibility JVM-Level Performance Library

Version: v26.1-05102026
Author: StarsailsClover
License: LGPL-2.1


Overview

MCJEBooster is an independent third-party software injection project that optimizes Minecraft Java Edition through JVM-level multi-core scheduling. It is NOT a Minecraft Mod - it is a standalone injection tool that attaches to running Minecraft processes.

Key Features

  • Multi-Core Tick Processing: Distributes Minecraft's tick loop across multiple CPU cores
  • Region-Based Scheduling: Divides the world into regions for parallel processing
  • Dynamic Load Balancing: Automatically adjusts region allocation based on workload
  • High Compatibility: Works with vanilla Minecraft, Forge, Fabric, and various launchers
  • Auto-Rollback: Automatically restores vanilla behavior if issues are detected

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    MCJEBooster Injector                     β”‚
β”‚         (Standalone application for process attach)         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                            β”‚ Java Attach API
                            β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  Minecraft Java Process                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚              Injected Scheduling Core                  β”‚  β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚  β”‚
β”‚  β”‚  β”‚  Region  β”‚  β”‚  Region  β”‚  β”‚  Region  β”‚  ...       β”‚  β”‚
β”‚  β”‚  β”‚ Worker 1 β”‚  β”‚ Worker 2 β”‚  β”‚ Worker 3 β”‚            β”‚  β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜            β”‚  β”‚
β”‚  β”‚       β”‚              β”‚              β”‚                  β”‚  β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”            β”‚  β”‚
β”‚  β”‚  β”‚        Sync Point Manager             β”‚            β”‚  β”‚
β”‚  β”‚  β”‚   (Tick barriers & consistency)       β”‚            β”‚  β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚  β”‚
β”‚  β”‚                     β”‚                                    β”‚  β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚  β”‚
β”‚  β”‚  β”‚         Vanilla Minecraft Tick         β”‚            β”‚  β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Usage

Requirements

  • Java 17 or higher (JDK required, not just JRE)
  • Minecraft Java Edition (1.8.9 - 1.26.1+)
  • Windows 10/11 (Linux support planned)

Installation

  1. Download the latest release from GitHub
  2. Place MCJEBooster-26.1-05102026.jar in any directory
  3. Run Minecraft first
  4. Run the injector:
java -jar MCJEBooster-26.1-05102026.jar

Command Line Options

java -jar MCJEBooster-26.1-05102026.jar [options]

Options:
  --auto      Automatically inject into the first Minecraft process
  --force     Skip confirmation prompts
  --help      Display help message

Alternative: Java Agent Mode

Add to JVM arguments:

-javaagent:/path/to/MCJEBooster-26.1-05102026.jar

Performance

Benchmark Results

Scenario Vanilla TPS MCJEBooster TPS Improvement
Empty World 20.0 20.0 0%
5000 Entities 12.3 24.1 +96%
Redstone Circuit 8.7 15.5 +78%
View Distance 32 14.2 30.1 +112%
10 Players 11.5 21.3 +85%

Tested on Intel i7-13700K, 32GB DDR5, Java 17


Technical Details

Injection Mechanism

MCJEBooster uses two injection methods:

  1. Primary: Java Attach API

    • Dynamically attaches to running JVM
    • No modification to Minecraft installation
    • Works with all launchers
  2. Fallback: Windows CreateRemoteThread

    • Native Windows API injection
    • Used when Attach API is unavailable
    • Requires code signing for antivirus compatibility

Bytecode Transformation

Uses ASM library to transform:

  • MinecraftServer.tick() - Main tick loop
  • ChunkProvider.tick() - Chunk processing
  • Level.tickEntities() - Entity processing

Region Scheduling

  • Z-Order Curve: Spatial partitioning for cache efficiency
  • ForkJoinPool: Java's work-stealing thread pool
  • CyclicBarrier: Synchronization at tick boundaries
  • Dynamic Rebalancing: Adjusts regions every 100 ticks

Compatibility

Supported Versions

Minecraft Java Status
1.8.9 8 βœ… Supported
1.12.2 8 βœ… Supported
1.16.5 8/11 βœ… Supported
1.17.1 16 βœ… Supported
1.18.1 17 βœ… Supported
1.19.1 17 βœ… Supported
1.20.6 17 βœ… Supported
1.26.1 21 βœ… Supported

Supported Launchers

  • βœ… Official Minecraft Launcher
  • βœ… HMCL (Hello Minecraft Launcher)
  • βœ… PCL2 (Plain Craft Launcher 2)
  • βœ… MultiMC / Prism Launcher
  • βœ… CurseForge Launcher

Mod Compatibility

  • βœ… Forge
  • βœ… Fabric
  • βœ… OptiFine
  • βœ… Most performance mods

Building from Source

Prerequisites

  • Maven 3.8+
  • JDK 17+
  • Git

Build

git clone https://github.com/StarsailsClover/MCJEBooster.git
cd MCJEBooster
mvn clean package

The built JAR will be in target/MCJEBooster-26.1-05102026.jar


Project Structure

MCJEBooster/
β”œβ”€β”€ src/main/java/com/mcjebooster/
β”‚   β”œβ”€β”€ agent/
β”‚   β”‚   └── MCJEBoosterAgent.java       # Java Agent entry point
β”‚   β”œβ”€β”€ injector/
β”‚   β”‚   └── InjectorMain.java           # External injector
β”‚   β”œβ”€β”€ scheduler/
β”‚   β”‚   └── RegionScheduler.java        # Multi-core scheduler
β”‚   β”œβ”€β”€ sync/
β”‚   β”‚   └── SyncPointManager.java       # Synchronization
β”‚   β”œβ”€β”€ transformer/
β”‚   β”‚   └── MinecraftServerTransformer.java # ASM transformer
β”‚   └── util/
β”‚       β”œβ”€β”€ VersionDetector.java        # Version detection
β”‚       └── Logger.java                 # Logging utility
β”œβ”€β”€ src/main/resources/
β”œβ”€β”€ docs/                               # Documentation
β”œβ”€β”€ native/                             # Native code (if needed)
└── pom.xml                             # Maven configuration

Safety Features

Health Monitoring

  • TPS Monitoring: Automatically detects low TPS
  • Deadlock Detection: Monitors for thread deadlocks
  • Auto-Rollback: Restores vanilla behavior on failure
  • Timeout Handling: Falls back to single-threaded mode

Safety Thresholds

Metric Threshold Action
TPS < 5.0 Trigger rollback
Tick Timeout 45ms Cancel and retry
Consecutive Failures 5 Disable injection
Deadlock Any detected Emergency rollback

Troubleshooting

Common Issues

"No Minecraft processes found"

  • Ensure Minecraft is running before running the injector
  • Check that you're using the Java Edition, not Bedrock

"AttachNotSupportedException"

  • Ensure you're using JDK, not JRE
  • Add --add-opens java.instrument/sun.instrument=ALL-UNNAMED to JVM args

"Windows Defender blocked injection"

  • This is expected for unsigned executables
  • The tool is safe but may trigger false positives
  • Consider using Java Agent mode instead

Low TPS after injection

  • Check logs for errors
  • The tool automatically rolls back on failure
  • Report the issue with logs attached

Debug Mode

Enable debug logging:

java -Dmcjebooster.log.level=DEBUG -jar MCJEBooster-26.1-05102026.jar

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

Development Guidelines

  • Follow existing code style
  • Add comments in English
  • Include tests for new features
  • Update documentation

License

This project is licensed under the GNU Lesser General Public License v2.1 - see the LICENSE file for details.


Acknowledgments

  • ASM library for bytecode manipulation
  • Java Attach API for dynamic injection
  • Minecraft community for inspiration

Disclaimer

MCJEBooster is an independent third-party tool. It is not affiliated with Mojang Studios or Microsoft. Use at your own risk. Always backup your worlds before using optimization tools.


Repository: https://github.com/StarsailsClover/MCJEBooster
Issues: https://github.com/StarsailsClover/MCJEBooster/issues
Releases: https://github.com/StarsailsClover/MCJEBooster/releases

About

JEB | Minecraft Java Edition Multi-Core Optimization Engine / Official Compatibility Pack / High-Compatibility JVM-Level Performance Library

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages