The middle of the year update, MCreator 2024.2 is here. It adds Minecraft 1.20.6 support and plenty of other useful new features and fixes. Check it out!
Minecraft 1.20.6
This update adds support for Minecraft 1.20.6 for Java-edition mods and data packs. Based on the community vote, we have decided to keep Minecraft version 1.20.1 alongside 1.20.6.
Vanilla Minecraft texture references
This update adds a feature we have been asked for quite a while. One can now reference vanilla textures in their mods. This will not include the texture in the mod file, but merely reference it, meaning it will also update if the resource pack is changed, for example. MCreator will offer vanilla textures in the selector alongside custom ones when applicable.
Below you can see an example of a custom block that combines custom texture files and vanilla texture references.
Structure start height parameter
Another new feature added is the structure start height parameter, which allows one to define height range instead of ground height detection type, allowing one to define custom Minecraft structures that generate underground or in the air.
Below you can see an example of a Jigsaw structure that is generated from multiple pieces underground. This allows one to make custom Minecraft Mineshaft or Stronghold style structures.
The parameter is not limited to underground only. One can also make new air structures using this parameter, as one can see in the image below.
Improved workspace panel side tabs
We have also done some further work on the UI and UX improvements in this update. Most notably, we have widened the side tabs in the workspace panel for mod elements, resources, element tags, variables, and localization. The style now also matches other tabs in the software.
Custom Minecraft raider entities
In this MCreator update, you can specify custom Minecraft living entities as raiders for behavior type, which will make your entity spawn as part of the vanilla Minecraft village raids.
Below you can see part of the UI dedicated to the raiders. One can specify how many custom entities spawn in each raid wave, as well as the celebration sound the entity plays when the raid is over and won by the attacking side.
Armor item glow effect
One can now specify fixed or conditionally defined glow for custom Minecraft armor items. Now all items defined in MCreator have this functionality implemented.
Dynamic particle scale
One can now define a dynamic particle scale. Existing fixed scales will be kept fixed, but alongside that, one can also use procedures to specify the particle size, allowing for some quite interesting particle effects.
Ranged item power variation
This one is big for all the ranged item Minecraft mods. One can now specify that the shooting power of the ranged item is based on the charging time/holding time of the item, very similar to how a regular bow operates. The parameter is optional and off by default for existing items to match current behavior where equal power is used no matter how long the ranged item is held before it is released to fire.
Feature mod element improvements
The Minecraft worldgen feature mod element has seen quite some improvements too. One of the more significant improvements is an option to skip feature placement, which allows one to just configure the feature without placing it. This allows the feature to be later used in either procedures or referenced in other features without itself directly being placed in the world. Quite handy!
Additionally, one can now specify a blockstate property list when specifying blocks that the feature is made out of. This way, one can place semi-broken, rotated, waterlogged blocks, and more.
To complement features without placements, there is now a new procedure block that allows one to place a feature in the world at any given moment from procedures. One can place any custom or vanilla feature.
Last but not least, a new spring feature type has been added, and a complementing procedure block to check for the fluid type at a given position.
Hurt overlay parameter for Minecraft entity model layers
This one is big for users making utility entities that are not supposed to get hurt. One can now specify if the hurt red overlay is shown over the model for each model layer.
Custom Minecraft items in multiple creative tabs
One can now place one custom Minecraft block or item into multiple creative mode tabs simultaneously. Additionally, the order and placement of said item can be independently controlled for each of the tabs.
Improved mod element dragging in the workspace panel
We got feedback from the community that dragging of the mod elements from and into folders was too complex as one had to do two fast clicks to grab onto the element. We have improved that so now a single click on the selected element is needed to drag it to a desired folder.
Calling procedures with custom dependencies
Big and complex mod makers will love this one. Now one can specify and also override any dependency passed to the calling procedure. In practice, this means procedures now have arguments/parameters, meaning a single procedure can be reused for different situations simply by calling it with different dependency values for those different situations. This was a complex one to develop, so we are especially proud of this one!
Player hurt advancement trigger
A new Minecraft advancement trigger has been added - when a player gets hurt by a particular entity type with a specific damage amount. This comes in handy for cases where a global procedure trigger was needed so far to achieve the same result.
Color palettes in the image editor
Finally, we did not forget to make some improvements to the image editor too. One can now specify workspace-specific color palettes in MCreator, allowing one to have unified colors according to the Minecraft mod being developed. MCreator also comes pre-loaded with some vanilla color palettes for an easier start. A single click on the palette color selects the clicked color for the current tool color.
Release notes
- XP dropped dependency is no longer present in block broken global procedure trigger
- Custom enchantment mod element minimal level is now fixed to 1, existing enchantment mod elements will have the minimal level set to 1 automatically
- Removed harvest level parameter from blocks and replaced it with vanilla tool tier parameter. Vanilla harvest levels will be converted automatically. For custom tiers, a custom harvest condition procedure needs to be used. We recommend using custom tags to tag blocks a certain custom tool tier/type can harvest.
- Removed harvest level parameter from tools and replaced it with drop tier parameter. Vanilla harvest levels will be converted automatically. For custom tiers, a custom drop condition procedure needs to be used. We recommend using custom tags to tag blocks a certain tool can harvest.
- Harvest level procedure blocks for blocks and items were removed. As the concept of harvest levels no longer exists, existing blocks will be converted to math blocks with a value of 0.
- Due to changes to the creative tab ordering system, custom mod element ordering in creative tabs will have to be manually redone. If the user did not alter the order of the tabs using the creative tab order editor tool, no changes are needed and the order will be preserved.
Important bug fixes
Many bugs were fixed in this update. All the bug fixes are listed in the list below, but more notable bug fixes are:
- [Bugfix] Tag namespace "mod" was not converted to mod ID in cases such as biome tag references
- [Bugfix] Custom user code block contents were cleared when regenerating the code of the whole workspace
- [Bugfix] Custom dimension effects such as dense fog did not work in some cases
- [Bugfix] When deleting a mod element, its files were not correctly removed in some cases
- [Bugfix] Placing item frames on certain custom blocks with block base was not possible
- [Bugfix] Deleting a custom Java model did not delete all of its files in some cases
- [Bugfix] Vanilla recipe overrides did not work correctly in some cases
- [Bugfix] Opening another GUI from the currently open GUI moved the mouse cursor to the center of the screen in some cases
- [Bugfix] Disabling slot interaction for automation for a block disabled said slot in the GUI as well in some cases
Other improvements
You can see the full list in the full changelog of this release here (some more notable features not mentioned before are highlighted with bold text):
- Updated bundled Java to version OpenJDK 21.0.3
- Updated Minecraft Forge for 1.20.1 to 47.3.0
- Made some minor UI improvements across the interface
- Significantly improved performance of Blockly editor
- Improved performance of code generator in some cases
- Improved mod element and folder dragging in the workspace panel
- Added a new user code block at the bottom of mods.toml file
- Improved Gradle setup and build performance for NeoForge workspaces
- Improved the way the potion effect category is specified
- Added workspace-specific color palettes support to the image editor
- Custom mod elements can now specify multiple creative tabs they belong to
- Added support for passing custom values to dependencies when calling another procedure from a procedure
- Custom tool mod elements are now automatically tagged with appropriate tags
- Global procedure trigger "on entity tick update" is now cancellable
- Custom living entities can now specify raider as their behavior type, making them spawn in raids
- Added armor item glow parameter with optional logic procedure input
- Added support to specify dynamic custom particle scale using a number procedure
- Added a parameter that allows one to disable the hurt overlay on a custom living entity model layers
- Added an option for custom items with a ranged attack to charge projectile power based on item use duration
- Added an option to skip custom feature mod element placement
- Added an option to specify blockstate properties when specifying blocks for custom features
- Added new team procedure blocks: check team death message visibility, check team nametag visibility, set team death message visibility, set team nametag visibility
- Added procedure blocks to place a feature and to check if the placement was successful
- Added new advancement triggers: if the player is hurt by an entity of type
- Added an option for custom mod elements to reference vanilla block and item textures
- Added an option for custom structures to specify a custom start height range
- Added new worldgen features: spring
- Added new worldgen feature predicates: is fluid at the location of type
- Added base support for NeoForge 1.20.6
- Added Minecraft data pack generator for 1.20.6
- [DP 1.20.6] Added support for: damage types, functions, structures, recipes, loot tables, biomes, dimensions, advancements
- [NF 1.20.6] Added support for: sounds, variables, 3D models, armor, biomes, custom code, damage types, dimensions, functions, game rules, GUIs, items, key bindings, loot tables, music discs, paintings, recipes, structures, tabs, villager professions, villager trades, item extensions, potions items, commands, particles, potion effects, enchantments, overlays, projectiles, features, blocks, fluids, tools, living entities, procedures, AI tasks, plants, advancements
- [1.20.6] Added support for "encapsulate" terrain adaptation type for custom structures
- [Bugfix] Tag namespace "mod" was not converted to mod ID in cases such as biome tag references
- [Bugfix] Custom user code block contents were cleared when regenerating the code of the whole workspace
- [Bugfix] Custom dimension effects such as dense fog did not work in some cases
- [Bugfix] Text contents of text fields got reset when the game window was resized
- [Bugfix] Help tips were not visible on some smaller popup dialogs
- [Bugfix] When deleting a mod element, its files were not correctly removed in some cases
- [Bugfix] Global procedure trigger "player left clicks on block" did not fire in some cases
- [Bugfix] Placing item frames on certain custom blocks with block base was not possible
- [Bugfix] Deleting a custom Java model did not delete all of its files in some cases
- [Bugfix] Vanilla recipe overrides did not work correctly in some cases
- [Bugfix] Opening another GUI from the currently open GUI moved the mouse cursor to the center of the screen in some cases
- [Bugfix] Disabling slot interaction for automation for a block disabled said slot in the GUI as well in some cases
- [Bugfix] Some other minor fixes and improvements
Patch update 1
We have released a patch update to fix some bugs found in the 2024.2 release:
2024.2.29712:
- [Bugfix, NF 1.20.6] Block broken global procedure trigger was not triggered in all cases
- [Bugfix, NF 1.20.6] Block broken global procedure trigger cancellation did not cancel breaking but dropping
- [Bugfix, NF 1.20.6] Setting tool durability to 0 did not disable item damage
- [Bugfix, NF 1.20.6] Loot table silk touch parameters did not work correctly
- [Bugfix] Vanilla texture references were not loaded properly in some cases
- [Bugfix] Structures converted to NBT features using too big offsets crashed the game if not manually corrected
- [Bugfix] Some other minor fixes and improvements
To install the patch, re-download 2024.2 and install it again. Make sure to uninstall the current version first.
Patch update 2
We have released another patch update to fix some more bugs found in the 2024.2 release:
2024.2.32117:
- [Bugfix, NF 1.20.6] Advancements using the "biome entered" trigger were all granted when the world was first time loaded
- [Bugfix, NF 1.20.6] Advancements using the "item damaged" trigger were not granted correctly in some cases
- [Bugfix] Mod element actions such as delete/edit could operate on the wrong element when filters were active
- [Bugfix] It was not possible to run the client after running the debugger in some cases
- [Bugfix] Some other minor fixes and improvements
To install the patch, re-download 2024.2 and install it again. Make sure to uninstall the current version first.
Let us know what is your favorite feature of the update in the comments! All other feedback is very welcome too. We are already looking forward to all the new creative mods using all the new features :) If you like what we do, consider donating to help us keep this project up.
Comments
We have released another patch update to fix some more bugs found in the 2024.2 release:
2024.2.32117:
- [Bugfix, NF 1.20.6] Advancements using the "biome entered" trigger were all granted when the world was first time loaded
- [Bugfix, NF 1.20.6] Advancements using the "item damaged" trigger were not granted correctly in some cases
- [Bugfix] Mod element actions such as delete/edit could operate on the wrong element when filters were active
- [Bugfix] It was not possible to run the client after running the debugger in some cases
- [Bugfix] Some other minor fixes and improvements
To install the patch, re-download 2024.2 and install it again. Make sure to uninstall the current version first.
This new version is not working on my Windows 11 PC but the previous one is fine. When I try to open my workspace it says that the gradle caches got corrupted or something like that, but I already tried opening the same workspace on another PC with Windows 10 and mcreator 2024.2 installed and it worked fine. I don't know how to solve this can someone help?
Ummmm... not sure if it was this update, but i miss the easy custom tools updates. I don't know how to do the Procedure version.