Topic category: Plugins and third-party tools
MCreator Plugin Builder is a program that allows the user to easily create MCreator plugins, only requiring you to know how to code in Java. This concept has been attempted before, but none have so far been as simple to use as this, nor offering as many features.
Disclaimer
This project is not official. It is not affiliated with the respective owners and maintainers of MCreator and Pylo.
Features
MCreator Plugin Builder includes support for various options. Here is a summary of most of its capabilities:
Procedure blocks
Procedure mutators
Global triggers
Blockly categories
Datalists
Translations
APIs
Model animations
Mod elements
Git integration
Variable types
Overriding generator templates
Testing in MCreator
These are all of Plugin Builder's capabilities at this time.
An example plugin project can be cloned using the link https://github.com/NerdyPuzzle/Example-plugin-project.git
The latest version of Plugin Builder can be found here
Changelog
Release 2.0
-Updated global trigger generated code to work with the 1.20.6+ neoforge event system
-Added a search bar to filter plugin files
Release 1.8
-Added the option to make new variable types
Release 1.7
-Fixed deleting global triggers or procedures crashing the program
-Fixed global trigger custom dependencies always being lowercase named
Release 1.6
-Fixed a bug that caused procedure template code to replace the code of other procedures
-Procedures can now be coded manually too like global triggers
Release 1.5
-Fixed global triggers not exporting code properly
-Global triggers can now have new custom dependencies
-Improved the procedure template text editor
Release 1.4
-Global triggers and procedures now support the damage source variable
-Global triggers and procedures now save as json in plugin builder projects
-Refactored old hardcoded systems in preparation of new plugin builder features
Release 1.3
-Fixed color selectors generating color codes incorrectly in some cases
-Fixed procedure blocks not working when using statements in some cases
-Fixed the copy code button providing incorrect code for statements
-Fixed procedure blocks not working with custom categories in some cases
-Fixed mod elements not generating java code
-Added the logic, math and text procedure categories
-Mod elements no longer require a manual installation of java 17 to compile
Release 1.2
-You can now make procedure block mutators
-Blockly categories can now be subcategories of other categories
-NeoForge generator is now supported
-Added the missing 2023.4 procedure block categories to procedures
-Fixed some issues with the procedure block gui
Release 1.1
-Some minor UI improvements
-Vanilla templates from the MCreator generator plugins can now be overriden
Release 1.0
-UI theme redesign (minecraft launcher inspired)
Beta 4.3
-Fixed client-side global triggers causing minecraft to not load
Beta 4.2
-Fixed mod elements with spaces in their names not compiling
-Added the option to select base types for mod elements
-Added the option to use procedure selectors in mod elements
Beta 4.1
-Fixed some issues that caused crashes
Beta 4.0
-New mod elements can now be made with plugin builder
(Requires java 17 or newer to be installed in order to compile the java files)
Beta 3.0
-Fixed a small bug in procedure json generation
-Global triggers can now be coded fully manually
-Procedure block field inputs can now include default text
Beta 2.1
-Fixed a bug where procedure block code would generate incorrectly
-Procedure block number inputs can now have floats as default values
Beta 2.0
-Fixed a bug that generated extra unused code
-Added support for java model animation templates
Beta 1.0
-Official release
With the v1.1 update, plugin builder can also be used for overriding generator templates
@Goldorion
I want to add an advanced Enchantment Mod Element that has some more Features. So what exactly has the Default Enchantment Mod Element for a local template, where can I see that? I need to know exactly what code it is using for local template.
@NerdyPuzzle, do you have an example of creating Mod Elements with this Tool?
bryanguillaume, it works for any MCreator version above 2022.3, try cloning the example plugin if you have any issues figuring it out.
thanks,
I created some procedures, I came to a small problem I want to create a block to have two coordinates example break block at x y z and drop at x y z as I can create the variable so that by default in both there is x y z, I I tried x2 but as default value it puts 0 dnas mcreator
I also made a block which requires level and name level accessor in the class execute only impossible to make mcreator understand that it is level that must be executed please help me
the "level" is the Variable for the World. So if you make a Block that requires this variable is the world. For Example with the "level" you can also access the current Minecraft Server and get and set certain Server Properties such as MOTD.
thank you for your response, thanks to you my problem is solved; I have one last little problem when I create a procedure block with a block as input, in mcreator it replaces it in the code with the example name (CUSTOM:NAME OFBLOCK), and name not its exact code, how to solve this little problem?
@bryanguillaume
On my Profile Page there you can contact me on different Platforms, for example Discord. Because I need a Screenshot to see the Problem or a Video that shows the issue. I need further Information of your Issue to solve it.
ok thanks
Don"t work anymore with 2023.4
I have been using your plugin builder to help create plugins successfully, however, today I thought I would try and create a Java plugin. As far as I can tell, I have done everything correctly, but when I export the plugin, it doesn't generate the "Launcher" in the "javacode" folder, and therefor does not work in MCreator
Do you have any suggestions that could help me resolve this? As far as I can tell, I have Java 17 and Java 21 active, unless I have done this part wrong.
I guess I should give you a little more information than that, It was late when I did my last comment there. I'm using "pluginbuilder_release_1.1" to make the plugins now, but all my other plugins were made on an unlabelled version of your Plugin Maker from ages ago. I see that it is required to be linked to the MCreator Directory, could it be my version of [MCreator 2023.2]? I'm not sure how old that version is. Its heavily modified to suit my mod specifically and porting takes hours.
I'm actually really excited to see and use your project. It has a few clunks but I get around them easy enough as I have been making my plugins in Notepad++ for the last 3 years. Testing them used to take hours. but If I build the structure using this, all I have to do is change some code after exporting. Tis a good program. I hope to do whatever I need to do in order to get this to work. I'm also interested in how you actually make the "Java" plugin. I learned Java by literally reverse engineering code, Find an example, restructure it to suit.
Also is there a way I could discuss things with you directly. I would like to learn more about Java plugins, I'm not good enough at Java to figure it out and I can't find any documentation what so ever. I may even be able to help you with the Project and would be happy to help with what I can.