JHotReload

Published by bo bo on
Tags / plugin type
API support
Java plugin
Procedures
QOL improvements
Variables
Supported MCreator versions
2026.2
JHotReload MCreator Plugin logo
Downloads:
175
Upvotes: 2

JHotReload for MCreator lets you manually change variable values while Minecraft is running without having to restart the game.

This is especially useful while balancing or testing things such as:

  • Damage values
  • Health
  • Speeds
  • Chances and probabilities
  • Any other value that would normally require changing a procedure and restarting the client

Installation

  1. Download the plugin
  2. Make sure Java plugins are enabled, then restart MCreator
  3. Add the plugin through MCreator's plugin manager
  4. Enable the JHotReload API in your workspace settings

How to use it

When you want a variable whose value can be manually changed while Minecraft is running, declare it as a Hot Variable instead of a normal one. And that's it! Now you can change its value at runtime.

A Hot Variable can be both declared in procedures and custom code.

See Procedures.
See Custom Code.

But how do you actually change its value?
See Hot Variables Editor.

Should you always keep it active?
See When to activate it.

 

Hot Variables Editor

You can access the editor from the setting JHotReload → Open hot variables or by pressing the button in the toolbar:

Hot Variables button

Once you do, this window will pop up:

Hot Variables window just opened

On the left side, under JHotReload, you can navigate your workspace directory structure. Locate a mod element that contains Hot Variables (elements that don't contain any Hot Variable will not be shown) and select it.

Note that Hot Variables will only appear here if the code/procedure where they are declared runs at least one time. You only need to make it run once and hit the Refresh button, with no need to restart the game.

Now the window will become something like this:

Hot Variables window with variable located

You can simply type whatever value you want in the value section of the variable you want to edit, and changes will be applied automatically in game too. And don't worry, entering invalid values by mistake won't crash the game.

The values you insert here are permanent, so even if you restart Minecraft or MCreator your variables will use the values you inserted here, not the ones in the procedures/code.

And yes, even when you export the mod it will keep using the values you set here.

 

Procedures

There are just a few procedures needed to manage Hot Variables. They can be found in the JHotReload section.

To declare a Hot Variable you can use:

Declare procedures

These are needed to declare a Hot Variable and set its initial value. The initial value will only be used until you change it manually in the editor.

Declaring two or more Hot Variables with the same name in the same procedure can cause issues.

 

To get the value of a Hot Variable, so that you can use it for any purpose such as setting health, damage, etc., you can use:

Getter procedures

 

To change the value of a Hot Variable in a procedure, like you'd do with a normal variable, you can use:

Setter procedures

Note that this will also overwrite the value you set in the editor.

 

Simple procedure example:

Procedure example

This procedure will constantly display a value in chat. Try changing said value in the editor while the game is running to see how Hot Variables work!

 

When to activate it

You shouldn't keep JHotReload active even when you don't need it. It can cause performance issues and weird behaviour in some cases.

There is an indicator in the toolbar to remind you when it's active, so you won't forget about it.

To disable it, go to its config: JHotReload → Config and disable isJHotReloadActive.

Doing this will remove the possibility to update variable values while Minecraft is running, but the values you set in the editor will still be used once to declare the variables. This means you won't have to set them manually in the procedures/code, while preventing JHotReload-related issues from happening.

When you export a mod, JHotReload is automatically disabled from the exported file (only from the exported JAR, not from your workspace), so don't worry about forgetting it enabled before exporting.

 

Config

To access the config settings go to:

JHotReload → Config

JHotReload config loacated

Make sure to do this after a procedure/code that contains a Hot Variable was run at least once.

 

This window will pop up:

JHotReload config window opened

To know what isJHotReloadActive is needed for, see When to activate it.

When crashOnJReadWriteFailure is enabled, if a Hot Variable fails to read or write a value the game will crash. Otherwise, it will simply display an error message in the console.

If one or more errors occur, they will be reported in:

run/JHotReload/@ErrorLog.log


Plugin source 

This plugin is an MCreator implementation of the JHotReload library (that was also made by me), it's a library that simulates hot reload.

JHotReload library source

Project members
Lead developer
License
MIT License
Plugin downloads
(1.0.1) JHotReload for MCreator 2026.2 - jhotreload-for-mcreator-1.0.1_0.zip Uploaded on: 08/09/2026 - 15:00   File size: 76.83 KB