Added
Asynchronous block loading
● All custom blocks now load asynchronously from their files. This ensures smooth and invisible performance on your server.
Quick Select feature (Minecraft 1.21.4+)
Works just like in vanilla Minecraft — simply middle-click a custom block to get it in your hand.
● Works only with installed
PasketEvents
● In Creative mode you can obtain blocks even if they are not in your inventory.
● Permission for this creative feature:
bdc.quickselect.creative
New Block Parameters
stage-settings.place.placement-mode – Control where and how a block may be placed. There are 5 modes:
- default — place on any face (top, bottom, sides).
- vertical_only — only top/bottom faces; side faces are blocked.
- horizontal_only — only side faces; top/bottom are blocked.
- vertical_with_horizontal — prefers vertical behavior even when placed on a side; treats side placement as if vertical for visuals/logic.
- horizontal_with_vertical — prefers horizontal behavior even when placed on top/bottom; treats vertical placement as if horizontal for visuals/logic.
Example:
Code (Text):
stage-settings:
place:
placement-mode: vertical_with_horizontal
stage-settings.break.drop-mode – Choose how the block drops its item on break.
- on_ground — default; drop at the block location.
- inventory — give directly to the player’s inventory; if full, drop at player location.
Example:
Code (Text):
stage-settings:
break:
drop-mode: inventory
✅ All parameters can be configured via
/bdc custom-block editfile.
️
SuperiorSkyblock2 integration
Island privileges to control access to custom blocks:
- place_cb — place custom blocks
- break_cb — break custom blocks
- interact_cb — interact with custom blocks
Use them in
permissions.yml →
items (SSB2) to make them toggleable in the island UI.
For unrestricted access use
bdc.bypass.skyblock or
superior.skyblock.bypass.
Message settings are made in
messages.yml
Subfolder loading for custom blocks
● Custom blocks can now be organized in subfolders inside
custom-blocks directory. Perfect for keeping things tidy and organized.
New permission system
● Separate permissions for each major subcommand
● Wildcards with
*
Code (Text):
bdc.quickselect.creative
bdc.bypass.*
bdc.bypass.wg
bdc.bypass.skyblock
bdc.command.*
bdc.command.reload
bdc.command.erasecbdata
bdc.command.custom-block.*
bdc.command.custom-block.give
bdc.command.custom-block.place
bdc.command.custom-block.break
bdc.command.custom-block.editfile
Expanded messages.yml
● The message system has been greatly expanded.
● Most messages related to commands and blocks are configurable.
● Each message supports placeholders (block names, locations, players, reasons).
Improved
● Block names can now safely contain special characters (auto-quoted in commands).
● Sound handling in
/bdc editfile: sounds correctly play for players.
● Improved filtering of block & sound names.
● Documentation improvements.
Changed
● Command
/bdc killcbentities has been renamed to:
Code (Text):
/bdc erasecbdata
Now removes interaction entities, display entities, shulkers, and clears block data in the selected area.
Fixed
● Bug with incorrect rendering of
barrel.yml.
● Bug with wrong block rotation at small
sides-count.
● Bug causing duplicate custom blocks.
● Bug with missing block service data at its location.
● Bug with enchantment loading.
● Bug with
null interaction command.