Tips and tricks for the new procedure system

Published by Klemen on Sun, 05/06/2018 - 17:44
Tips and tricks for the new procedure system

There have been many questions on MCreator's website on how to use procedure system. We have decided to create a getting started guide for the new procedure system.

We have created a separate wiki page for this purpose. Old event related pages were marked as "legacy" on our wiki, but we will keep them on the website for the users of older MCreator versions.

Many users complained that they can not make things that were possible in event system before. This is not true, however. Just the way how to achieve the same effect is now different. Everything that was possible before is still possible, even with many more options and combinations. This new procedure system is very similar to the one found in Scratch editor. The block system framework we use is called Blockly and is developed by Google. It allows us to make a visual programming experience that was never possible before.

On the procedures wiki page, there are examples of procedures including the explanation of trigger and dependencies. Below, you can see an example of how to make a random possibility condition in the new procedure system.

Random possibility

In this example, we show how to create an if condition that triggers in 70% of the cases. In case it is triggered, the block at x, y, z (these coordinates depend on the trigger that provides actual coordinate values) is removed.

Random possibility of event in the procedure editor

Examples such as the one provided in the citation above and many others can be found on our wiki on the new page dedicated to procedures.

Procedure system wiki page

We will update this wiki page with more examples in the future. If you would like to see a specific example, comment on this post and we will select the best requests and add them to the wiki page. Right now, only some procedures that were most commonly asked are shown. These include examples of how to create conditions that could previously be made using the event condition text box.

Share this on:


Of course, you can, but right now I don't have a code snippet as it will most likely involve Java reflection in order to access the text field variables from the procedure class. I suggest you open a feature request ticket on our tracker and I will post the code there once I have a working sample.

Submitted by mc85 on Mon, 05/14/2018 - 17:38

Is there a way to change the random possibility in the random block?

you use multipliers and adders. For example if you want a number from 34 to 78 you take
44 * random 0 to 1 + 34
because by multiplying you get random 0 to 44, then by adding you get random 34 to 78

You just change the number in the condition. Random generates decimal numbers between 0 and 1 with equal possibility. So if you check if the number is smaller than 0.3, this will be true in 30% of cases if the condition is < 0.9, this will be true in 90% of the cases, so the probability for this condition to be true is 90% out of 100%.

How exactly do I add a procedure, the new system doesn't even allow me to select any weather it be "When Block Right Clicked" Or "When Start To Destroy", I cannot even attempt to edit them

Submitted by aidanete on Tue, 05/15/2018 - 17:05

With the new procedure system, you can detect the gamemode of the player?

Submitted by StyBuilder on Wed, 05/16/2018 - 14:21

umm how am i supposed to make it pick a number between 0 and 25

How do i detect which block it is that someone clicked with the "When Tool Right Clicked On Block" Trigger? I need it so that the procedure will only trigger or continue if the block clicked is stone.

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.