Dummy components are useless components that are only used for data storage. Dummy components don’t do anything on their own. They need to be paired with secondary mechanics to have any function. Dummy components are useful because they allow us to store information on the entities, and use the information to drive graphics/gameplay mechanics.
Good examples are
mark_variant. These components can be set with an Integer value. In the vanilla resource pack, this Integer is used to pick the textures for the Cat, and Horse. Another good example is
is_tamed, which is used by the Horse to handle whether he is ridable or not.
Dummy components are good because they allow us to save data about our entity, and then query this data using Molang.
Integer dummies are set with an integer value, which allows you to store numbers, such as 1, 10, or 1423. These integers can be read using queries. Integer dummies are the most useful.
Bit dummies store a single bit of information. Namely
False. For example
is_tamed, which is either
False (not added to the entity), or
True (Added to the entity).
|Int*||Filter like: ||minecraft:color||Also sets color in materials.|
|Int*||No known filter, but can be used with ||minecraft:color2||Also sets color in materials.|
|Bit||query.is_chested||minecraft:is_chested||Will drop chest on death|
|Bit||query.can_climb||minecraft:can_climb||Will allow entities to climb ladders|
|Bit||query.can_fly||minecraft:can_fly||Marks the entity as being able to fly, the pathfinder won’t be restricted to paths where a solid block is required underneath it.|
|Bit||query.can_power_jump||minecraft:can_power_jump||Allows the entity to power jump like the horse does in vanilla.|