MCreator 1.8.3 is all about the features requested by the community. While we listen to the community each update, this one is really focused on fulfilling as many requests as possible.
Mac and Linux version improvements
We have improved the Mac and Linux versions. Now they come with bundled Java so there is no need to mess with JAVA_HOME parameters, Java versions and other troublesome configuration that was required before. The installation procedure has been improved for both platforms too.
More variable types
We have added new variable types in MCreator 1.8.3. New variable types include:
- block specific variables that are stored with the game save
- entity specific variables that are stored with the game save
- dimension specific variables that are stored with the game save
- world save specific variables that are stored with the game save
OBJ models with UV textures
Another important addition in MCreator 1.8.3 is support for OBJ models with UV texture maps. MCreator will automatically detect UV mappings and open a texture mapping dialog upon importing such models. There are some limitations to this, however, more on this on OBJ models wiki page.
New entity procedure blocks
Many new entity related procedure blocks were added. Some of them are: get entity coordinates, velocity, health, is sneaking, burning, sprinting, riding, being ridden, current entity dimension ID and display name of the entity. These procedure blocks should add many new options and possibilities to MCreator mods.
World generators improvements
We have added dimension and biome restriction options to all world generators so now the world generation can be much more specific and diverse. Structure spawn mod elements got some improvements too, including spawning height offset and option to randomize spawning rotation. Example of the newly revamped block spawning options panel can be seen on the image below.
Multiplayer compatibility
In this update, we have fixed many issues with multiplayer/server compatibility. Before 1.8.3, custom mobs crashed Minecraft server. This bug is now fixed. Many procedures caused the Minecraft server crash too. A new trigger side indicators were added to indicate which events are triggered on client side only and therefore not directly server compatible.
Release notes
Here are some release notes for the users updating from the existing workspaces from older versions.
Entity dependency on block procedures
Some block (and plant and fluid) procedures used to have entity dependency on procedure triggers such as when block added to the world, when block explodes, when the neighbor block is placed, block tick update and similar procedures. This entity was loaded from the client side and this caused many mods to not work on servers. Now we have decided to remove entity dependency on these block types.
It does not make much sense to have entity dependency on these events as one can not determine which entity (if any) has added the block to the world - it could be placed by world generator and we can't link this event to any entity.
If you used entity dependency with this kind of procedures, you mod might not compile when importing older workspaces in 1.8.3. To fix this, just edit and go through all steps of these mod elements to redesign the procedure triggers to not call procedures that do not provide the entity as a dependency anymore.
Improved Minecraft Forge code format compatibility
MCreator used to generate a code that would not follow some of the rules of the Minecraft Forge code style and mechanisms. As MCreator is seen as a learning tool, it is not good to give bad examples on how the code should look like. Therefore we have decided to improve this. From MCreator 1.8.3 on, the generator will make more compatible code.
Some of the changes include event-driven registration of blocks, items, biome, and entities. Mod element model registration was improved too. Many changes to improve server compatibility have been done too.
One of the consequences of this is that we have done some changes on the way mod elements are registered too. Because of this, users will need to unlock all the locked mod elements so the code is regenerated with the new format and then apply their changes to the code again.
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 #47700] Custom mobs were crashing Minecraft Server
- [Bugfix #44985] In survival mode, custom portals did not spawn player on the portal position
- [Bugfix #40695] Fixed MCreator mods crashing server and some other multiplayer issues
- [Bugfix #46819] Custom rotatable block bounding box did not rotate with the block
- [Bugfix #47578] Caves and ravines did not generate in custom dimensions with non-vanilla stone
Other improvements
As with many recent updates, 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:
- Updated bundled Java to version OpenJDK 8u202, Linux and Mac versions now come with bundled OpenJDK
- Improved launch and install procedure for MCreator for Linux and Mac
- Improved procedure editor performance for large procedures
- Added option to select multiple elements at once on some of the lists in the UI
- Changed workspace format for the upcoming "workspaces in folder" format
- Added basic support for OBJ models with UV textures
- Added custom mob shadow size option
- Custom blocks/ores, fluids, and plants can now be set to spawn in any selected vanilla or custom dimensions
- Custom plant spawning can now be restricted to specific biomes
- Added custom structure spawning height offset parameter
- Added add enhancement to item procedure block
- Added true custom block log rotation mode
- [#42990] Added save and dimension-specific saveable global variables, added block and entity NBT procedure blocks
- [#47096] Textures are now stored in modid assets folder, not in default Minecraft folder
- [#46740] Added option to disable strict Minecraft Forge version check
- [#46720] Added automated backups of workspace file
- [#46565] Added option to disable ammo for ranged items
- [#46971] Added get entity coordinates and velocity procedure blocks
- [#47221] Added get entity health procedure block
- [#45776] Added entity procedure blocks: is sneaking, burning, sprinting, riding, being ridden, dimension ID
- [#47313] Added more vanilla tree types in custom biomes
- [#47330] Added new add potion effect procedure block with more options
- [#47251] Added set and get players food level procedure blocks
- [#44293] Added option to randomize custom structure generation rotation
- [#45542] Custom structures can now be set to spawn in any vanilla or custom dimension or more of them at once
- [#41710] Custom block/ore spawning can now be restricted per specific biomes
- [#41785] Custom ores can now be set to spawn instead of any block, not just stone
- [#44832] Added option to export and import translations in CSV spreadsheet format for external translators
- [#46263] Added custom food eating speed dial
- [#46106] Added ranged item max stack size dial
- [#47390] Ranged items now use item durability as ammo if the ammo item is damagable
- [#45608] Added option to disable custom GUI background box
- [#46036] Smelting recipes now have output stack size dial
- [#45534] Custom dimensions can now have weather disabled
- [#47485] Added get item and get entity display name procedure blocks
- [#44813] Added option to import multiple files at once
- [#45768] Added has player completed advancement procedure block
- [#46755] Added when ranged item bullet hits entity procedure trigger
- [#47501] Added get provided item fuel power procedure block
- [#47462] Added get selected enchantment level of item procedure block
- [Bugfix] Custom GUI background was darker compared to vanilla GUIs
- [Bugfix #47700] Custom mobs were crashing Minecraft Server
- [Bugfix #46978] Substring procedure block caused build errors in some cases
- [Bugfix #46925] Custom dimension portal texture is not saved
- [Bugfix #46401] Some mod element files were not removed after deleting mod element from the workspace
- [Bugfix #44985] In survival mode, custom portals did not spawn player on the portal position
- [Bugfix #44418] Metadata for items was not properly transferred in procedure blocks
- [Bugfix #40695] Fixed MCreator mods crashing server and some other multiplayer issues
- [Bugfix #47387] Damage item in block inventory procedure did not work properly
- [Bugfix #47464] Ranged items were not properly rendered in the third person
- [Bugfix #46819] Custom rotatable block bounding box did not rotate with the block
- [Bugfix #47578] Caves and ravines did not generate in custom dimensions with non-vanilla stone
- [Bugfix] Other minor bugfixes and stability improvements
Leave a comment below and tell us what is your favorite feature addition in MCreator 1.8.3. Make sure to share this post with all your modder friends so no one will miss this update. A website update is just around the corner too so stay tuned!
UPDATE 22. 3. 2019, 18:45 CET
There were some bugs found in 1.8.3 so we decided to release a patch update. If you are having one of the following bugs and downloaded MCreator before the time of the patch, consider reinstalling MCreator 1.8.3:
- [#47784] Custom blocks with log rotation placed by tree or world genertator or by procedures have broken model texture
- Armor texture selector is not showing textures
To apply the patch (fix these bugs), uninstall MCreator 1.8.3, download it again and install it again.
UPDATE 28. 3. 2019
There have been some issues with MCreator and Avast detecting false positives with MCreator. We have contacted them and the issue is now resolved so users can now use MCreator 1.8.3 without having to disable their antivirus.
Comments
You can add the NOT before it to get the equivalent of survival assuming players are in one or the other.
Also for your other question about checking for armor, you just need to identify the slot number as Klemen stated. Here is an inventory showing the #'s. Google it yourself for any other slot #'s you need to evaluate. http://i.imgur.com/JDQnGk1.png
So, question on "custom code snippet" in procedures....how does that work, exactly? Specifically, can I call objects/methods/etc from the Forge API (https://maven.thiakil.com/forge-1.12-javadoc/overview-summary.html) and get it to work in there? Coz if so.... coool!!!
Oh. Ahhh! I got it now. Just the Minecraft API *unless* something from the Forge API is imported in the procedure mod element...or imported any other package/class, for that matter. So (as an example), if I haven't imported anything from, say, net.minecraft.advancements.Advancement, any code I put in the code snippet will not work. Interesting.
Thanks!
please show the full screen.