MCreator Plugin Builder - Plugin development made easy

Started by NerdyPuzzle on

Topic category: Plugins and third-party tools

MCreator Plugin Builder - Plugin development made easy
Fri, 07/19/2024 - 12:32 (edited)

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
Edited by NerdyPuzzle on Fri, 07/19/2024 - 12:32
Joined Feb 2018
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
@NerdyPuzzle I think the…
Tue, 05/16/2023 - 12:41

@NerdyPuzzle I think the Procedure Block Code Generation is a little broken:

I downloaded the latest Version and for some reason it doesn't generate the .java.ftl file of the Procedure Block.

Also it seems that I cannot save the Project.

Joined Oct 2022
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
LOVE IT! hope to see custom…
Tue, 05/16/2023 - 13:39

LOVE IT! hope to see custom elements soon ^^

SparkleArts that should not…
Tue, 05/16/2023 - 16:56

SparkleArts that should not be happening, I haven't encountered such an issue. Have you placed plugin builder in its own folder?

If you mean that it doesn't…
Tue, 05/16/2023 - 17:29

If you mean that it doesn't generate it in mcreator, that generally just means there's a mistake in your code, mcreator won't generate code that causes a build error if it's the only procedure block there.

Joined Feb 2018
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
@NerdyPuzzle by my first…
Wed, 05/17/2023 - 11:32

@NerdyPuzzle by my first attempt of exporting a Procedure Block it was not generating the .java.ftl file at all.

But after that little mistake it generated it by my second attempt.

Also with the Projct saving it at all was my mistake it seems.

Sry for that ^^

Joined Feb 2018
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Here are some QOL Features:…
Wed, 05/17/2023 - 11:45

Here are some QOL Features:

  • Make it possible to switch the order of the Datalist entries and the Options of the field_dropdown. It will make easier to add new Entries to the Datalist/Dropdown.
  • Make it possible to choose the Color Constants from Blockly like %{BKY_LOGIC_HUE} (at least for Procedure Blocks)
  • Make it possible to choose the already existing Dependencies of MCreator
The procedure block colors…
Wed, 05/17/2023 - 11:47

The procedure block colors can all be found and copied in the help window

Joined Oct 2022
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
can't i add specific imports?
Thu, 05/18/2023 - 08:19

can't i add specific imports?

Specific imports in which…
Thu, 05/18/2023 - 12:43

Specific imports in which place? If you mean global triggers, you can select the code manually option in the latest update and write all of the code yourself (which can include imports.) if you mean procedures, you can't do that since the code is written inside a method, but you can write the entire package path when referencing something from the import. Example: net.path.to.the.class.Example.callStaticMethod();

Joined Feb 2018
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
normally imports are…
Thu, 05/18/2023 - 14:28

normally imports are automatically be added in MCreator. But it could not generate imports from custom Classes.

Beta 4.0 is here, and with…
Thu, 05/18/2023 - 19:31

Beta 4.0 is here, and with it support for creating new mod elements through java plugins!

Joined May 2023
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Saw this yesterday and…
Thu, 05/18/2023 - 21:53

Saw this yesterday and thought it'd maybe try it at some point, then today I saw the ability to make new elements with it and now I'm definitely using it. Logged in just to say this is pretty cool, especially with the new java plugin feature. Can't say how much I've been wanting something like that.