Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.

🫧 Bubblellaneous Pack

This Minecraft pack adds Furniture, Technology, Food & Miscellaneous blocks and items.

To use it you must install the data pack in your world. All players playing on your server must have the resource pack installed.

Use /function menu:bubblellaneous for settings/debugging!

Minecraft version Status
1.20.2 and earlier 🚫 Broken due to Minecraft limitations
1.20.3 ✅ Supported
1.20.4 ✅ Supported
1.20.5 🎯 Will be supported in the future

If you wish to contribute, refer to CONTRIBUTING.md

🔖 Translations

Thanks to wonderful people you can enjoy this pack in different languages:

Maintainer Translation
BubbleFish 🇺🇸 English (US) [100%]
BubbleFish 🇬🇧 English (UK) [100%]
BubbleFish 🇷🇺 Russian [100%]
Unintegrated 🇨🇿 Czech [100%]
Unintegrated 🌍 Toki Pona [100%]
FBreakDance30 🇮🇹 Italian [52%]
Dorlonkho 🇯🇵 Japanesse [22%]

If you want to help with translations, refer to CONTRIBUTING.md

🖥️ About Bubblellaneous

This data pack was originally published by me on Nov 21st, 2021. This is a complete rework, designed to be great for survival, map making, and the creation of your content.

  • You can obtain all custom content without memorizing recipes using Bubble Bench: Drop a glass bottle onto a crafting table!

bubble bench

  • Many blocks/items have different variants (variating in color and material):

variants

📦 For Map Makers / Developers

Storing blocks

Bubblellaneous uses entities to display blocks, this may become inconvenient for mapmakers. For this reason, there's a way of restoring the block's state when loading from structures using structure blocks or /place:

  1. Prevent copying before you save all of the blocks: /function bubblellaneous:blocks/copy_properties/prevent_copying.
  2. Store blocks that you want to save: /execute as @e[tag=bbln.block] run function bubblellaneous:blocks/copy_properties/save_to_block.
  3. Save the structure. You can now break the blocks.
  4. Start copying state: /function bubblellaneous:blocks/copy_properties/stop_prevent_copying.
  5. Now you can place the saved structure template anywhere and it will automatically restore all data.
  6. If you encounter errors, create a GitHub Issue telling which block and how exactly it broke.

Events

Bubblellaneous has several events that can be used to extend the data pack logic. The way you hook to these events is by creating a Function tag in the specified path. The function tag is executed by a certain entity that you can refer to.

[!NOTE] If your project requires more events, create a GitHub Issue or message me on Discord, and I'll add it.

Entity tag is @e[tag=bbln.<value>]. e.g. if the value is name.test, then the actual selector is @e[tag=bbln.name.test].

Function tag Entity tag Description
#bubblellaneous:settings/on_load - Settings were loaded/changed
#bubblellaneous:block/all/on_place block A block was placed
#bubblellaneous:block/all/on_break block A block was broken. Use /return 1 to prevent the block from breaking
#bubblellaneous:block/bear_trap/on_catch name.bear_trap Bear Trap caught a player
#bubblellaneous:block/bear_trap/on_release name.bear_trap Bear Trap released the player
#bubblellaneous:block/electrical_box/on_enable name.electrical_box An electrical box was toggled on
#bubblellaneous:block/electrical_box/on_disable name.electrical_box An electrical box was toggled off
#bubblellaneous:block/alarm_block/on_trigger name.alarm_block An alarm block was triggered with redstone
#bubblellaneous:block/alarm_block/on_trigger name.alarm_block An alarm block was triggered with redstone

Bubble Bench Blacklist

You can hide certain blocks/items from Bubble Bench, preventing players from crafting them.

Substitute <unit>/<id> with the following values:

  • <unit> is either block or item.
  • <id> is the id of the block/item. The same ID is used in commands like /function give:bubblellaneous/... for reference.

Adding unit into blacklist:

data modify storage minecraft:bubblellaneous bench_blacklist append value {entry: "<unit>/<id>"}

# Example:
data modify storage minecraft:bubblellaneous bench_blacklist append value {entry: "block/acacia_table"}

Removing unit from blacklist:

data remove storage minecraft:bubblellaneous bench_blacklist[{entry: "<unit>/<id>"}]

# Example:
data remove storage minecraft:bubblellaneous bench_blacklist[{entry: "item/white_key"}]

The changes will apply on the next /reload.

External resources



Project members

BubbleFish

Owner


Technical information

Project ID