-
Notifications
You must be signed in to change notification settings - Fork 15
[Lastest Version] Basic Multiblock
This page mainly covers MBD's visual editor. To see how to use CraftTweaker for more detailed control, please see the CT Section (TODO).
All multiblock definitions will be saved in the folder "./multiblocked/definition/controller/"
.
Let's demonstrate the visual editor by making an example electric blast furnace machine. The machine will use energy to smelt items into other items or fluids.
Tip: You can easily save your progress whenever you want to by clicking the capital F on the top right and then clicking Save Pattern
First place down your multiblock's structure, and use the Blueprint right click to select the area of the structure. This will save the structure onto the Blueprint item.
Tip: shift-right click to remove selected area!
Place the Blueprint Table down and insert the **Blueprint **into the table by simply adding the blueprint to the Blueprint Table's drawer. The Blueprint Table is the core of MBD, you can configure nearly everything about your multiblocks through this multiblock. For how to build it, you can refer via **JEI **or use **Builder **to right-click on the controller for automatic building.
- Right-click the Blueprint Table to open the GUI
- Select Controller
- Select the blueprint you want to use
*1
- Select which block you want the controller of the multiblock to be
*2
as well as selecting a default face for it, the facing cannot be of the Y-axis (up/down) - Select Create a controller for Specified Blueprint
*3
Tip: You can open the "./multiblocked/definition/controller/"
folder by clicking Open Folder *4
!
This is where you can se up all the details of your multiblock controller. From the definition to the stacksize and even whether the multiblock is formed by clicking the controller with an item.
-
Registry Name
: controller's registry name must be unique, the format is as follows group:name, be sure to set it first each time you create a new multiblock. -
rotateState
: whether the multiblock's controller is allowed to be rotated, and the relative position of the multiblock would be determined by the controller's front face. If set to NON_Y_AXYS, the copntroller can face North, East, South and West. If set to none, the controller always faces North, and there is no orientation restriction for formed checking. -
showInJei
: whether to display this multiblock in JEI. -
isOpaqueCube
: this is an important property, if your model (renderer) is not opaque please do not check it, otherwise it can cause render issues. Check it for better performance (face culling, etc., although not as necessary) when you are sure your model is made of complete full blocks. -
hasDynamicShape
: ??????? -
hasCollision
: If disabled, players and other entities will be able to go trough the controller. -
destroyTime
: How long it takes for the player to mine this block. -
explosionResistance
: How resistant it is to explosions. -
speedFactor
: How fast entities will walk/run on this block. -
jumpFactor
: How high entities will jump on this block -
friction
: ??????? -
harvestLevel
: This determines the harvestlevel needed to mine this block. -
stackSize
: How many items will fit into one stack. -
tabGroup
: ??????? -
needCatalyst
: If false, the multiblock is formed automatically. Otherwise, the player would need to provide a catalyst and right-click the controller to trigger the multiblock to be formed. You can set the catalyst by dragging from JEI into Catalyst. (Please note that JEI mustn't be in cheat mode) -
consumeCatalyst
: If the catalyst is needed, whether to consume the catalyst (consume one).
This is where you can change how the controller and multiblock look and sound. There is a list of build in status types *1
. Each type follows the settings from the previous types unless they are altered (suspend > working > idle > unformed). More in depth info can be found here.
-
unformed
: Renderer for the mutliblock controller block. -
idle
: Renderer for when the multiblock is build but isn't active. -
working
: Renderer for when the multiblock is build and active. -
suspend
: Renderer for when the multiblock is build but the recipe was stopped during the process.
NO CLUE 😢
Here you can customize many useful things. From where input and output slots can be placed to which blocks can be replaced by other blocks down to whether to use gregtech's slice extension structure.
You can check the structure formed in *1
. Click Pattern Setting *2
to start customizing the multiblock.
These settings are somewhat complex, please refer to Pattern. We don't do too much setup here, we just disable the rendering of the input and outputs after the structure is formed and name the slots for later. To do this, click on the item bus in then click on settings *1
. Now you can enable disableRenderFormed *4
, change BOTH *3
to IN and name the slot item_out by clicking slot *2
. Now repeat this for the output slots (item_bus_out = OUT
and item_out
| fluid_bus_out = OUT
and fluid_out
).
As shown in *1
, an empty RecipeMap (built-in RecipeMap) is used by default. Press the button *2
to create a new RecipeMap. See RecipeMap for more details about RecipeMap editor.
To create a new recipe inside this recipe map, click the plus button in the top right corner *1
.
On the left side are the consumed items and on the right side the produced items. To add a item press the plus button *2
, now you can use JEI to drag an the item to change it. To add energy usage do the same thing and then change it to consume per tick by clicking the setting button *4
and set amount the consumed amount. For fluids again do the same thing but in order to change the fluid you CANNOT be in cheat mode for JEI. Find the fluid you want to change to and drag it on top of the fluid you want to change. And finally ad an output item and change the duration of the recipe *3
All that is left to do is save the multiblock, this is done by first clicking the Finish button *1
and Saving the Pattern *2
Now simply restart the game and try out your multiblock!