介绍
RainJava
Write Java Code Inside Minecraft. Reload Instantly. No Restarts.
RainJava is a powerful in-game scripting mod that brings the full Java language into Minecraft. Write, compile, and execute Java code while the game is running — modify behavior, inject methods, transform bytecode, and see changes immediately without restarting.
What You Can Do
Live Coding
Create Java scripts that execute at startup, when the server starts, or during client setup. Edit code in any text editor, save the file, and use /java reload to apply changes instantly. The built-in Eclipse compiler handles everything automatically, even if your system has no Java compiler installed.
Mixin Injection
Write Mixin classes directly in source form to inject code into any Minecraft method. Target the beginning of a method with @Inject.At("HEAD"), catch return points with "RETURN", or intercept the final exit with "TAIL". All game classes are available for modification with full IDE-style autocomplete support.
CoreMod & ASM Transformation
For deep modifications, write CoreMod plugins that transform raw bytecode before the JVM sees it. Access every instruction, field, and method of any loaded class. This is the same power level as traditional Forge coremods, but accessible through simple Java source files that compile on demand.
Asset & Data Packs
Bundle custom textures, models, sounds, recipes, loot tables, and tags directly in your RainJava project. The assets/ and data/ folders work exactly like standard resource and data packs, loaded automatically with your scripts.
How It Works
Place Java source files in the RainJava/ folder inside your Minecraft directory. The folder structure determines when code runs:
startup/— Executes once when the game initializes
server/— Executes each time the server starts
client/— Executes during client setup
mixins/— Mixin classes for runtime method injection
coremod/— CoreMod plugins and ASM transformers
Every script declares a simple init() method. The framework discovers, compiles, and executes automatically. Errors appear in dedicated log files and in-game chat via the /java errors command.
Essential Documentation
Every installation includes a comprehensive README.txt in the RainJava/ folder. This file contains complete reference material for package declarations, Mixin syntax, injection points, CoreMod architecture, available commands, and troubleshooting — all available offline without internet access.
The README is updated with each release to reflect current API behavior and supported features. Consult it first for syntax questions, error messages, or advanced usage patterns.
Commands
/java reload [startup|server|client]— Hot-reload scripts without restart
/java hand getId— Display held item registry ID
/java hand getClass— Display held item Java class name
/java errors [type]— Show compilation and runtime errors in chat
Requirements
- Minecraft 1.20.1 with Forge
- Java 17 or higher
- Compatible with standard Forge mods and Mixin systems
常见问题
RainJava 支持哪些 Minecraft 版本?
RainJava 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。
RainJava 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端和服务端都要装。
RainMelody 的其他作品
查看全部 →MoreEventsJS
It adds more events for kubejs
Arcane Convergence
Arcane Convergence: Unifies Goety, Iron's Spells & Ars Nouveau mana systems with configurable spell costs.
KubeJS Data Component
KubeJS Data Component is an addon mod for Minecraft 1.21.1 NeoForge
Stellar Striker
This mod adds two weapons from Terraria Calamity
评论
登录后评论和评分