MCreator 2021.3 - Full Minecraft 1.17.x support

Published by Klemen on Tue, 12/14/2021 - 16:24
MCreator 2021.3 - Full Minecraft 1.17.x support

MCreator 2021.3 is here. The first release that fully and officially supports Minecraft 1.17.x. We didn't forget to add some new features too. Read on!

Minecraft 1.17.x support

The biggest change in this release is full and official Minecraft 1.17.x support for Java and Bedrock edition. The generated code for 1.17.1 Forge mods is now also much more cleaner, with a unified registry design and improved procedure code. The code was never that human-like as it is now.

Full Minecraft 1.17.1 support for making mods

Real-time code preview

Another big new feature is real-time code preview. Now with a single click, you can enable a preview that will show you code changes as you edit the mod element and highlight the lines that were affected by the UI change the user did.

Realtime generated Minecraft mod code preview

New procedure blocks

This update added quite some new procedure blocks. Below you can see the new "Time and date" procedures category that allows you to make procedures depend on the current date, eg. below, the player will be greeted with a custom message on Christmas when joining the world.

Day and time procedure blocks

Some new direction procedures were added too. You can now iterate all directions or all horizontal directions to more efficiently scan neighboring blocks, for example.

New direction procedures

A new ternary operator procedure block was added that allows users to shorten some of the procedure compositions.

Ternary operator in MCreator

More biome structures

Quite some new vanilla biome structures were added, making it possible to improve your biome's terrain variety with vanilla-based structures.

More vanilla Minecraft structures in MCreator biome mod element

Better element selectors

We have improved quite some UI components and selectors that now try to be more helpful and visual. One of such places are block lists as shown on the video below.

Improved element selector previews in MCreator

Release notes

  • Java entity models before 1.17 are not compatible with 1.17 and vice versa. Two separate instances with the same name need to be imported, one for an older generator and one in 1.17 generators and MCreator will pick the right version depending on the current generator
  • Custom wall blocks now need to be tagged in the walls vanilla blocks tag group to make them connect with other wall types
  • [Plugins] Generators can now use global templates for each mod element type
  • [Plugins] Generators can now use common definition files for different base types
  • [Plugins] Generators no longer need to define partial support for mod elements as MCreator automatically detects coverage support using excludes/includes parameters.
  • [Plugins] Variables and procedure categories can now use hex color codes
  • [Plugins] Plugins can now register custom Blockly JavaScript files
  • [Plugins] Plugins now fully support custom data lists

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] Water entities moved very slowly

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 important features that were not mentioned previously are highlighted with bold text):

  • Updated bundled Java to version OpenJDK 16
  • Added base support for Minecraft Forge 1.17.1
  • Added Minecraft add-on generator for 1.17.x
  • Added Minecraft data pack generator for 1.17.x
  • [FG 1.17.1] Added support for mod elements: advancement, fuel, command, overlay, food, painting, procedure, tag, function, dimension, loot table, recipe, music disc, key binding, potion effect, potion item, GUI, armor, particle, structure, block, plant, biome, custom element, fluid, item, enchantment, game rule, tool, ranged item, living entity, and creative tab
  • Added ternary operator procedure block
  • Plant suspicious stew parameter now supports custom potions
  • Added date and time-related procedure blocks
  • Improved element list selector fields and windows
  • Improved code generator performance and generated code
  • Improved code formatted and import formatter
  • Added option to see real-time code changes while working with mod elements in UI
  • Added missing vanilla structure options to custom biome mod element
  • Added new procedure blocks: for each direction, for each horizontal direction, direction iterator, and random iterator
  • Added option to disable automatic ticking of custom blocks and fluids
  • Improved procedure block sorting inside procedure editor categories
  • [Bugfix] Cave and canyon carvers did not carve through the last surface layers in custom dimensions
  • [Bugfix] Procedures could crash the game in cases where dependency was unknown
  • [Bugfix] Water entities moved very slowly
  • [Bugfix] Living entity arrow immunity did not work with certain arrow types
  • [Bugfix] Some other minor fixes and improvements

But Minecraft 1.18 is here!

Yes, we know :D But we almost completely rewrote the code generator for Minecraft 1.17 and that took a lot of time. We would actually want to thank all donators and contributors that helped us bring this release to life. We have already started working on 1.18.x support too so stay tuned. While we work on 1.18, you can develop your mods for 1.17.1 and then later switch to 1.18 with just a few clicks!

Tell us what you think about the update in the comments! If you like what we do, consider donating to help us keep this project up.

UPDATE 1: We have released a patch update to fix some bugs found in the 2021.3 release:

2021.3.51610:

  • [Bugfix, 1.17.x] End and nether-like dimensions inverted imitate overworld behavior setting
  • [Bugfix, 1.17.x] Custom end-like dimensions had bedrock roof and floor
  • [Bugfix] Biome dictionary list in biome mod element editor was empty
  • [Bugfix] Some other minor fixes and improvements

To install the patch, re-download 2021.3 and install it again. Make sure to uninstall the current version first.

UPDATE 2: We have released a patch update to fix some more bugs found in the 2021.3 release:

2021.3.52418:

  • [Bugfix] Changing custom item inventory size could crash existing world saves
  • [Bugfix] Big spruce trees in custom biomes could cause the game to crash
  • [Bugfix] Some procedure templates using text variable procedure blocks failed to import properly
  • [Bugfix] Some other minor fixes and improvements

To install the patch, re-download 2021.3 and install it again. Make sure to uninstall the current version first.

UPDATE 3: We have released a patch update to fix some more bugs found in the 2021.3 release:

2021.3.53117:

  • [Bugfix, FG 1.17.1] GUI labels have a shadow that was not there in previous versions
  • [Bugfix] Some older workspace completely fail to open

To install the patch, re-download 2021.3 and install it again. Make sure to uninstall the current version first.

Share this on:

Comments

Creating a new custom gui in this version crashes my game eveytime I open it. This didn't happen in the prev snapshot. Pls help

Great job and good release.

But I have questions:

1. Do I can still develop MC 1.16.5 mods in this version of MCreator(of course without copper and other things offered by 1.17.x MC, I know that) with no problem?

2. Do you have plans to merge/remake some other features from other plugins(especially from plugins that seems abandoned and that don't work with new version of MCreator etc).
Idea of move features from "Date/Calendar" plugin to MCreator itself, was a really great thing.
But there would be really handy having in directly MCreator, possibility of change attributes of entities(max_health), possibility of operating on arrays, possibility of operating on world's chunks, checks of mod loaded or even feature of operating on external files.

Thank of this, there would be no worries about wait for plugin, or - what worst - having to resignation of some important features due to the abandoned development of the plugin.

You can still try to update the plugin yourself. Just extract the plugin zip and rename the forge-<mc-version> folder to forge-1.17.1 or the version you want. Some plugins will work e.g. ArrayLists, but some will not compile and you'll have to manually update the code (changing the imports most of the time)

Concerning my plugins, I moved my Date/Calendar plugin because it wasn't too hard. However, I already asked Klemen if I could merge my File Manager and Chunk manager plugins, but he answered me that both are too complex to use, except for Chunk Manager he accepted to have a few blocks. About my ArrayList plugin, I started to work on implementing it, but I can't simply take the plugin and move it into the core because it won't be the best implementation. I still need to work a lot on it, but I hope it will be ready during the next feature update. Concerning the Fabric generator, the last time I asked to Klemen, a few months ago, he didn't want it because nobody except me knows how to use Fabric.

You know, some plugins seem tiny and procedures are simple to use.

In case of "DTM's Toolkit - Attributes", just doing extracting and renaming folders isn't work.
This plugin is very important for me and I care about update this to MCreator 2021.3 so much.
But author of this plugin isn't here since 5 month ago! And there is unknown if he will appear here and when.

Well, if I would to know, how to exactly update some plugin, I would do this by myself. Too bad... :(
So, then that why I mentioned about merge of some small plugins or just a procedures to MCreator itself...

I bought a new PC but it was Windows 11.
Is MCreator compatible with Windows 11?

I bought a new PC but it was Windows 11.
Is MCreator compatible with Windows 11?

And MCreator is the best tool.



Donate to MCreator

By donating to developers you can speed up development, as with more resources, we can dedicate more time to MCreator. It is a free project made by developers working on it in their free time.