Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
Structure Block Tools

Structure Block Tools

Useful Commands for Structure Block Management

332
5
Management
Optimization
Utility
AboutGalleryChangelogVersions

Structure Block Tools

This datapack gives the player several ways to edit the contents of a Structure Block bounding box, designed to be used when creating custom structure datapacks!

How to Use

  • Right-click any Structure Block (in Save mode) using a Blaze Rod to select that block. This works up to a range of 10 blocks (so if you've used attributes to boost your interaction range, you may need to get closer)
  • With the block selected, type any of the commands below to apply changes to the selected Structure Block's bounding box. No need to calculate the numbers for /fill commands and stuff like that.
  • Commands will update accordingly if you use the Structure Block UI to move/rescale the bounding box
  • When you're done editing, deselect the Structure Block with the command listed below

A full video explaining how to use the datapack can be found HERE

COMMANDS

Recommended command to run when you first install the datapack:

/gamerule commandModificationBlockLimit 110592

(this is the max possible volume of a structure bounding box)

Select Structure Block - Run this command while standing on top of the structure block

/function sbtools:select_structure_block

(this can also be accomplished by just right-clicking the block with a Blaze Rod)

Deselect Current Structure Block

/function sbtools:deselect_structure_block

All "Fill" commands will apply to the selected structure block's entire bounding box without the need for numerical input

Dynamic Fill - Acts a bit like the "Paint Bucket" in pixel art programs. The function's origin (usually the location where the player is standing) will be the starting point. dynamic_fill_voids and dynamic_fill_water replace only air by default.

/function sbtools:dynamic_fill_voids
/function sbtools:dynamic_fill_water
/function sbtools:dynamic_fill {fill:"[block to fill]",replace:"[block to replace]"}

Replace Fill - Replaces all instances of one block with another inside the bounding box

/function sbtools:replace_fill_voids
/function sbtools:replace_fill_water
/function sbtools:replace_fill {fill:"[block to fill]",replace:"[block to replace]"}

Total Fill - Completely fills the bounding box with the specified block

/function sbtools:total_fill_air
/function sbtools:total_fill_voids
/function sbtools:total_fill_water
/function sbtools:total_fill {fill:"[block to fill]"}

Note that for the fill and replace parameters in macros, block states {fill:"minecraft:oak_log[​axis=y]"} do work, and for replace, block tags {replace:"#minecraft:logs"} also work!

DO NOT run any of the commands that begin with sbtools:util/..., as these are "under-the-hood" functions and may break things if executed by a player.

Read more on the PlanetMinecraft Page

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Compatibility

Minecraft: Java Edition

1.21.x
1.20.6

Platforms

Data Pack

Supported environments

Server-side
Client and server (optional)

Links

Join Discord server

Creators

Conure512
Conure512 Member

Details

Licensed MIT
Published 5 months ago
Updated 2 weeks ago

Modrinth is open source.

main@fafd47f

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.