Skip to content
LlaGuiTo edited this page Oct 5, 2026 · 2 revisions

Tags

Applies to Carry Mechanics across all supported versions.

What is carryable, and what can be stacked, is decided by datapack tags rather than by config alone. That means a modpack — or a server — can change the rules without touching any settings.

The seven tags

carry_mechanics:block/block_whitelist
carry_mechanics:block/block_blacklist
carry_mechanics:entity_type/entity_whitelist
carry_mechanics:entity_type/entity_blacklist
carry_mechanics:entity_type/stacking_whitelist
carry_mechanics:entity_type/stacking_blacklist
carry_mechanics:entity_type/hostile_pickup_whitelist

All seven are under the mod's own namespace, so a datapack overrides them with the usual data/<your-namespace>/tags/... layout.

Whitelist or blacklist — it is a config switch, not a separate tag

This is the part that catches people. There are pairs of tags, and a config option decides which one the mod reads:

Config Default Then the mod reads
useWhitelistBlocks false block_blacklist — the list is what is disallowed
useWhitelistEntities false entity_blacklist — disallowed
useWhitelistStacking false stacking_blacklist — disallowed

Set a useWhitelist* option to true and the same tag file becomes the allow list instead.

In blacklist mode an empty tag means everything is allowed. That is the default behaviour, and it is what makes the mod work out of the box.

In whitelist mode an empty tag means nothing is allowed — so switching a useWhitelist* to true without filling the tag in will appear to break carrying entirely. That is the single most likely cause of "I turned the whitelist on and now I cannot carry anything".

The three decisions

Question Block Entity Stacking
Can it be picked up? block_* entity_* —
Can it be stacked? — — stacking_*
Can it be picked up while hostile? — hostile_pickup_whitelist —

hostile_pickup_whitelist is the one the README does not list, and it is the tag that matters when pickupHostileMobs is enabled: it defines which hostile mobs you are allowed to grab.

Datapacks are the supported way to change this

Because these are ordinary Minecraft tags, a datapack can extend them the usual way — with add and remove entries against the mod's namespace:

{
  "replace": false,
  "values": [],
  "add": ["minecraft:chest", "minecraft:furnace"]
}

So a pack that wants to forbid one specific item in an otherwise permissive pack does it with a datapack, not by asking players to edit a TOML. See Configuration for the config side.

Default state

The mod ships all seven tag files, empty, with blacklist behaviour active by default. That combination means out of the box only blocks with tile entities are carryable, and any entity is — subject to the false-by-default options like pickupHostileMobs.

Scripting goes further

Tags decide what is carryable. Scripts decide when — datapack-driven conditions and custom commands. Where a tag is an identity check, a script can depend on game state.

Controlled by useScripts, on by default. See Configuration.

Clone this wiki locally