Mohave-compiler-UP
Описание
MOHAVE — автономный моддинг для Minecraft Среда разработки модов с нулевой конфигурацией. Успешно скомпилированных проектов - 2.
Языки
- Python98,1%
- Java0,9%
- Shell0,3%
- Batchfile0,2%
- Nushell0,2%
- JavaScript0,2%
- Остальные0,1%
MOHAVE v2.3.2 - Pure Java Minecraft Mod Compiler
Обзор
MOHAVE - это полностью автономная, высокопроизводительная платформа для разработки Minecraft модов, которая обходит блокировки в России и обеспечивает профессиональный уровень инструментов, сравнимый с Unreal Engine или Unity.
НОВОЕ в v2.3.2: Полное удаление CMake, чистая Java архитектура, упрощенная установка!
v2.3.0: Полная автономность, 4.2x производительность, обход блокировок, встроенные инструменты!
v2.1.0: Поддержка Bukkit/Paper плагинов, улучшенная производительность сборки, CLI с отладкой!
v2.0.0: Мульти-лоадерная поддержка, продвинутый менеджмент проектов, улучшенная автоматизация!
Requirements
- Python 3.8+
- Java 17+ JDK (automatically downloaded if missing)
- Internet connection for initial setup
Installation
Usage
Basic Mod Compilation
Full Environment Setup
Mod Project Validation
Required Project Structure
Your Forge mod project must have at minimum:
my_mod_project/
├── build.gradle
├── gradle.properties
└── src/main/resources/META-INF/mods.toml
build.gradle example
gradle.properties example
org.gradle.jvmargs=-Xmx3G
minecraft_version=1.20.1
forge_version=47.2.0
loader_version_range=[47,)
mod_id=mymod
mod_name=My Mod
mod_version=1.0.0
mod_authors=Your Name
mod_description=My awesome Forge mod
mods.toml example
Creating a New Mod Project
Advanced Compilation Options
Command Line Interface (CLI) (v2.1.0)
MOHAVE now provides a convenient command-line interface for development tasks with built-in debug logging support.
Installation
After installing MOHAVE, the command will be available in your PATH:
Debug Logging Support
The parameter enables detailed diagnostic logging to help troubleshoot problems:
When is enabled:
- All logging levels are set to DEBUG for all MOHAVE modules
- Detailed timestamps, module names, and line numbers are shown
- Internal operations, file operations, and network calls are logged
- Full stack traces are shown for errors
CLI Commands
compile
Compile a mod or plugin project:
create-project
Create a new project with the specified loader:
validate
Validate project structure:
setup
Setup development environment:
list-loaders
Show available mod loaders:
version
Show MOHAVE version:
Troubleshooting with Debug Logs
When encountering problems, always use to get detailed diagnostic information:
The debug logs will show:
- File system operations
- Process executions and their outputs
- Network requests and responses
- Internal state changes
- Error conditions and stack traces
Integration with Scripts
For automation scripts, you can enable debug logging programmatically:
Troubleshooting
Common Issues
- Java not found: Install JDK 17+ and set JAVA_HOME
- Gradle errors: MOHAVE creates Gradle wrapper automatically
- Missing project files: Use validation and auto-setup features
- Build hangs: See build performance improvements in v2.1.0
- Debugging problems: Use
parameter for detailed diagnostics--debug-log
Debug Build (Library API)
Multi-Loader Support (v2.0.0)
MOHAVE now supports multiple Minecraft mod loaders:
Advanced Project Management
New Loader Support
Fabric Projects
MOHAVE can now create and manage Fabric mods:
fabric_project/
├── build.gradle # Fabric Loom configuration
├── gradle.properties # Fabric-specific properties
└── src/main/resources/fabric.mod.json # Fabric mod metadata
Forge Projects (enhanced)
Improved Forge support with automatic template generation.
Bukkit/Paper Server Plugins (v2.1.0)
MOHAVE now supports server-side plugin development:
bukkit_plugin/
├── build.gradle # Standard Java build configuration
├── src/main/resources/plugin.yml # Plugin metadata
└── src/main/java/com/example/plugin/PluginMain.java # Main plugin class
Key features:
- Automatic Paper API dependency management
- Plugin.yml generation and validation
- Event handler and command registration templates
- Server-side development focus
API Reference
: Enhanced compilation class with multi-loader supportModCompiler(project_path): Alias for backward compatibility with ModCompilerForgeCompiler(project_path): JDK/Gradle environment managementEnvironmentSetup(): Project structure validationModProjectValidator(): Manages different mod loadersModLoaderManager(): Forge-specific loader implementationForgeLoader(project_path): Fabric-specific loader implementationFabricLoader(project_path): Bukkit/Paper server plugin loader implementationBukkitLoader(project_path): Automated testing (future feature)ModTester()
Changelog
- v2.1.0: Bukkit/Paper server plugin support and build performance improvements
- Added Bukkit/Paper server plugin support with automatic Paper API management
- Plugin.yml generation and validation for server-side development
- Fixed build hang issue during temp file cleanup - improved timeout handling
- Enhanced file cleanup system with permission fixes and daemon threading
- Better error handling for locked files and permission issues
- v2.0.0: Multi-loader support and advanced mod development features
- Support for multiple mod loaders (Forge, Fabric, NeoForge)
- Modular loader system with extensible architecture
- Enhanced compiler with automatic loader detection
- Improved project templates for different loaders
- Backward compatibility maintained for existing code
- v1.4.0: Autonomous environment setup with automatic JDK 17 and Gradle installation
- Automatic local JDK 17 download and installation
- Automatic local Gradle download and installation
- Cross-platform support (Windows, Linux, macOS)
- Local tools storage in
directory~/.mohave/ - No manual setup required - fully autonomous operation
- v1.3.0: Improved Gradle wrapper integration, enhanced error handling
- v1.2.0: Added auto-setup features and project validation
- v1.1.0: Basic compilation support for Forge 1.20.1
License
MIT License - see LICENSE file for details