MCreator 2022.2, a feature update, is here. It adds tons of new interesting stuff, such as command parameters, many new procedures, java plugins, and much more. Read on!
Command parameters
One of the biggest new features in this update is command parameters. With them, you can define what type and number of arguments your command accept, and in what order. This also enables autocomplete on custom commands. Check out the video below to see an example of custom command arguments in action.
Below you can find the list of all currently supported command argument parameters, which include different types of number, text, entity, block, item, and block position parameters.
Projectile procedures
Another big feature, especially given how much this was requested in the past, is much more customizable projectile procedures. Now you can not only also shoot different arrow types, fireballs, and throwables. And not only that, one can now specify parameters of the projectile in much more detail, and also shoot projectiles from non-entity sources. This means you can now make blocks that shoot projectiles, for example, without having to involve an entity in the process.
Java plugins
Another really big feature that will grow with time is Java plugins. If one enables Java plugins (for safety reasons, as Java plugins have full access to MCreator and to the computer), those plugins can deeply integrate with MCreator. This includes, but is not limited to adding new menu and toolbar items, mod elements, and much more. With this feature and features built around this in the future, plugins will be able to extend MCreator in ways not imaginable before.
New texture types
Another neat feature is new texture types. Now all textures that are not block, item, or armor will not be the other type of texture, but the right texture for the category such as screens, potion effects, particles, and entities. Existing textures will be sorted into new categories for you, but will still be also kept in the other textures category just in case you still use that texture for other purposes too.
Item extensions
We have added one new mod element in this release: item extensions. This mod element will be replacing the fuel mod element and dispenser behavior settings of custom items. The existing setup will be migrated for you.
Item extension allows one to extend the behavior of existing vanilla items or custom items. You can specify any item to be fuel, with an optional condition for smelting success and dynamic power options, make any item compostable, and make any item have custom dispense behavior in dispensers.
Plant improvements
Plants got some attention too. The first change is that now plants can now be marked as solid, which will prevent entities from freely passing through them.
Two new plant procedure triggers were added too: projectile hits the plant, entity walked on the plant. Projectile hits procedure trigger was added to the block mod element too.
Block improvements
Alongside the new procedure trigger, blocks got some other new features too. One of them is the checkbox "Requires the correct tool for drops?", which makes the block still drop the item even if the harvest level of the tool is too low, but harvesting takes longer. This makes it possible to make more realistic logs that can be harvested by hand too, but much slower than when the correct tool is used.
Another new feature is to enable block attachment face support, which allows pitch rotation around the axe the block was placed on. This feature then works in combination with the horizontal rotation types. This makes the block act the way eg. levers, buttons, or grindstones operate.
Entity improvements
Entities got a new parameter, that is follow range, which defines how far the entities follow another entity when following or attacking that entity. As there are many parameters on the properties section, we have re-arranged the UI a bit to make it more clear.
Blockstate procedures
Quite a big new feature is also blockstate procedures. With those procedures, you can get, set, and add blockstate parameters to any block in the game. With this feature, you can do things such as check the cauldron level or fill it, rotate blocks, check and set the growth stages of plants and much more. You can set and get any integer, boolean, and enum property of any block.
Other new procedure blocks
We have added some other new procedure blocks too. This also includes new text management procedure blocks that check if the text is empty, trim text, can uppercase or lowercase it and can check if the string starts or ends with a certain substring.
We have also added some new passenger-related procedures that allow you to get passengers of the entity, indirect passengers of the entity, passenger that is controlling the entity, and the lowest entity in the stack of passengers.
Release notes
- Added 4 new texture categories: entities, effects, particles, and screens. Existing workspaces will be converted to new categories automatically.
- Removed fuel mod element (replaced by the new item extension mod element). Existing fuel mod elements will be converted to item extensions automatically.
- Removed custom item dispense behavior settings (replaced by the new item extension mod element). Existing item mod element dispense behavior settings will be converted to item extensions automatically.
- Replaced current shoot ranged item procedure block with new projectile procedure blocks
- [Plugins] Replaced some of the custom Blockly extensions with a new field type
- [Plugins] Added a new template type for command arguments
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, FG 1.16.5] Mega spruce trees in custom biomes crashed the world generation
- [Bugfix] Command actions did not run when called from a command block
- [Bugfix] Some dialog windows in image maker froze the UI on macOS in some cases
- [Bugfix] AI task editor was disabled in the add-on generator
- [Bugfix] Checkboxes in custom GUIs had too big of a click region
Other improvements
The article would be too long if we described all the changes and bug fixes in-depth, so you can see the full list in the full changelog of this release here (some more notable features that were not mentioned previously are highlighted with bold text):
- Updated Blockly to 2022 Q1 Patch 2
- Updated bundled Java to version OpenJDK 17.0.3
- Added new Java plugins system for more advanced MCreator plugins
- Added some new tags to the common tags tool
- Added blockstate management procedure blocks to universally read, write and modify block states
- Added requires correct tool option for blocks
- Added is solid option for plants
- Added new block triggers: projectile hits the block
- Added new plant triggers: projectile hits the plant, entity walked on the plant
- Added new command argument builder with Blockly editor
- Added new command argument types: number, logic, string, literal, block position, entity, item, block state, message
- Added procedure blocks to read specific command arguments
- Added support for adding custom trades to wandering traders
- Added custom block pitch rotation support
- Spawn entity procedure blocks and biome selectors now only show spawnable entities
- Added duplicate layer button to the image editor
- Added some more block and plant tint types
- Added new mod element type: item extension
- Added follow range parameter to living entity mod element
- Added support to switch between Minecraft Forge and Fabric generators
- Scoreboard procedures now work with all entities, not just players
- Added new projectile procedure blocks: shoot a projectile from the entity, shoot a projectile at a location with direction, added arrow, fireball, and throwable projectile definition blocks
- Added new entity procedures: for each passenger, for each direct passenger, get passenger that is controlling entity, and get lowest ridden entity, is in wall, get remaining ticks on fire, is sleeping, is glowing, is swimming
- Added new text procedures: is text empty, trim text, uppercase text, lowercase text, does text start/end with
- Added four new texture categories: entities, screens, effects, and particles
- [Bugfix, FG 1.16.5] Mega spruce trees in custom biomes crashed the world generation
- [Bugfix, FG 1.16.5] When custom projectile hits block procedure trigger executed twice
- [Bugfix] Fixed common tags tool dirt tag using the wrong namespace
- [Bugfix] Command actions did not run when called from a command block
- [Bugfix] Some dialog windows in image maker froze the UI on macOS in some cases
- [Bugfix] AI task editor was disabled in the add-on generator
- [Bugfix] Food mod element failed to properly convert to the item in some cases
- [Bugfix] Checkboxes in custom GUIs had too big of a click region
- [Bugfix] Custom slots did not look the same as vanilla slots
- [Bugfix] On GUI closed procedure was not called on non-slot custom GUIs
- [Bugfix] Removed some unnecessary generated code in some cases
- [Bugfix] Some other minor fixes and improvements
Feature overview video
If you would like to see all the most important features of the 2022.2 update collected in a video made by our contributors Goldorion and NorthWestTrees, check it out below.
Thanks to all the contributors
Big thanks to the people who opened all the PRs that made this update that huge, to the people who reported issues, and looked for bugs, thanks to translators and proofreaders, tutorial makers, and everyone involved in the community!
Tell us what you think about the update (and what your favorite new feature or bug fix is) in the comments! We are already looking forward to all new mods utilizing new features from this update :) If you like what we do, consider donating to help us keep this project up.
UPDATE: We have released a patch update to fix some bugs found in the 2022.2 release:
2022.2.34517:
- [Bugfix, FG 1.16.5] Dispense output and compost layer chance parameters in item extension mod element did not work
- [Bugfix] Some other minor fixes and improvements
To install the patch, re-download 2022.2 and install it again. Make sure to uninstall the current version first.
These updates keep getting cooler and cooler