MBE - Max's Block Entity
Introduction
Sourced By Bedrock Commands Community Discord
This method, developed by Reddit user u/Maxed_Out10 allows you to create near-perfect entity replications of any Minecraft block using armor stands and some sequential /playanimation
commands.
To preserve credits to the creator, the community termed this method as "Max's Block Entity" or MBE for short.
Points to Note
- This method uses 1 armor stand per block entity. Therefore, too many armor stands (like any entity) can contribute to server lag.
- Players will still be able to pass through them as well as interact with them (if not restricted).
- While the block entity may render in one spot, it's actual hitbox will have a slight offset.
Video Demonstration
Setup
To be typed in chat:
/summon armor_stand Grumm
- It is necessary to name it 'Grumm' to avoid inverted block textures.
/execute as @e [type= armor_stand, name=Grumm, c=1] at @s run tp @s ~~~ 260
- This will match the MBE rotation to the normal Minecraft block grid.
TIP
- Crouch & right-click (on mcpe: long press) the armor stand 6 times to place it in Pose 7
- Doing this negates the need to use the 2nd command in the system below.
- Only use this if you wish to reduce one command from the system.
- Lastly, place the desired block item in the armor stand's main-hand.
TIP
/replaceitem entity @e [name=Grumm] slot.weapon.offhand 0 <itemID>
- Instead of manually placing the desired block item in the armor stand's main-hand, use this command to place it in it's offhand to prevent players from taking the item.
System
Note: Adding a delay of 100-200 ticks is recommended.
BP/functions/MBE/render.mcfunction
yaml
effect @e [type= armor_stand, name=Grumm] invisibility 999999 1 true
playanimation @e [type= armor_stand, name=Grumm] animation.armor_stand.entertain_pose null 0 "0" align.arms
playanimation @e [type= armor_stand, name=Grumm] animation.player.move.arms.zombie null 0 "0" size.mini_block
playanimation @e [type= armor_stand, name=Grumm] animation.ghast.scale null 0 "0" size.full_block
playanimation @e [type= armor_stand, name=Grumm] animation.fireworks_rocket.move null 0 "0" align.full_block
execute as @e [type= armor_stand, name=Grumm] at @s run tp ~~~
Purpose Of Each Command
- Hides the armor stand body.
- Automatically sets the armor stand pose to 7 for arms alignment. Skip this command you prefer to do it manually.
- Required command. Increases size to present as mini-block.
- Optional command. Increases size to present as full-block.
- Optional command. Aligns the full-block size MBE properly.
- Skip 4 & 5 if you do not need full-block size MBE.
- Locks in place to prevent fall in case block beneath is removed.
Rotations & Alignments
Note: These rotation commands (when item placed in main-hand) are to be triggered once through a command block.
Full MBE
yaml
# Face North
tp @e [type=armor_stand, name=Grumm, c=1] ~-1.1245 ~0.2260 ~-0.097 81
# Face South
tp @e [type=armor_stand, name=Grumm, c=1] ~1.1245 ~0.2260 ~0.097 260
# Face East
tp @e [type=armor_stand, name=Grumm, c=1] ~0.097 ~0.2260 ~-1.1245 171
# Face West
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.097 ~0.2260 ~1.1245 350
Mini MBE
yaml
# Face North
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.417~-0.5 ~-0.035 81
# Face South
tp @e [type=armor_stand, name=Grumm, c=1] ~0.417 ~-0.5 ~0.035 260
# Face East
tp @e [type=armor_stand, name=Grumm, c=1] ~0.035 ~-0.5 ~-0.417 171
# Face West
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.035 ~-0.5 ~0.417 350
Stair MBE
yaml
# Face North
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.097 ~0.2325 ~1.1245 350
# Face South
tp @e [type=armor_stand, name=Grumm, c=1] ~0.097 ~0.2325 ~-1.1245 171
# Face East
tp @e [type=armor_stand, name=Grumm, c=1] ~-1.1245 ~0.2325 ~-0.097 81
# Face West
tp @e [type=armor_stand, name=Grumm, c=1] ~1.1245 ~0.2325 ~0.097 260
Bottom Slab MBE
yaml
# Face North
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.097 ~0.2325 ~1.1245 350
# Face South
tp @e [type=armor_stand, name=Grumm, c=1] ~0.097 ~0.2325 ~-1.1245 171
# Face East
tp @e [type=armor_stand, name=Grumm, c=1] ~-1.1245 ~0.2325 ~-0.097 81
# Face West
tp @e [type=armor_stand, name=Grumm, c=1] ~1.1245 ~0.2325 ~0.097 260
Top Slab MBE
yaml
# Face North
tp @e [type=armor_stand, name=Grumm, c=1] ~-1.1245 ~0.484 ~-0.097 81
# Face South
tp @e [type=armor_stand, name=Grumm, c=1] ~1.1245 ~0.484 ~0.097 260
# Face East
tp @e [type=armor_stand, name=Grumm, c=1] ~0.097 ~0.484 ~-1.1245 171
# Face West
tp @e [type=armor_stand, name=Grumm, c=1] ~-0.097 ~0.484 ~1.1245 350
Saving & Loading MBE
To save, run:
/execute as @e [type=armor_stand, name=Grumm, c=1] at @s run structure save MBE ~~~ ~~~
To load, run:
/structure load MBE <coordinates>
Note: Structure name
MBE
can be changed to your preference.