Entity Data Format
This content applies only to Java Edition. For the Bedrock entity format, see the Bedrock article.
Each entity type has its own data format on top of the common tags. For complete field lists, see mc_java_sources/ or Minecraft Wiki.
Common entity tags (entity data root tags)
- id (string): (namespace ID) entity type. Only present in persistent storage (chunk files, structure templates, beehives, passengers). Cannot be read/modified via
/data.
- Air (short): remaining air value (−20 ≤ v ≤ entity max); +4 per tick in air, decreases in suffocating environments; at −20 the entity takes damage and resets to 0. Default: entity max air.
- CustomName (text component): custom name; shown in death messages, trading UIs, and above the entity. Treated as the
custom_name data component.
- CustomNameVisible (bool): always render the name. Default false.
- data (any NBT): arbitrary data; string form only for loading, saves use compound. Treated as the
custom_data data component.
- fall_distance (double): accumulated fall distance. Default 0.
- Fire (short): ticks remaining on fire; negative = ticks immune while standing in fire. Unlit: −20 for players, −1 otherwise. Default 0.
- Glowing (bool): glowing outline. Default false.
- HasVisualFire (bool): visually on fire. Default false.
- Invulnerable (bool): immune to most damage; only creative damage and
#bypasses_invulnerability apply. Default false.
- invulnerable_time (int): remaining invulnerability ticks; not stored when ≤0.
- Motion (list of 3 doubles): velocity (−10 ≤ v ≤ 10 per axis; out-of-range resets to 0; NaN loads normally).
- NoGravity (bool). Default false.
- OnGround (bool). Default false.
- Passengers (list): riding entities (recursive); only effective via
/summon, spawners, and trial spawners.
- PortalCooldown (int): ticks until the next nether portal use. Default 0.
- Pos (list of 3 doubles): coordinates; X/Z −30000512–30000512, Y −20000000–20000000; out-of-range clamped, NaN causes load errors.
- Rotation (list of 2 floats): yaw/pitch in degrees; non-finite values reset to 0.
- Silent (bool). Default false.
- Tags (list of strings): scoreboard tags, ≤1024.
- TicksFrozen (int): freezing time. Default 0.
- UUID (int array): cannot be modified via
/data.
Mobs
Mob tags store health, states, and effects on top of the common tags. Inheritance chain (parent→child): entity → living → mob → breedable → animal → tameable; common branches: horse, angerable, raidable, zombie. The entries below list representative fields only.
- Allay:
DuplicationCooldown (long; 6000 ticks on duplication), Inventory (list, ≤1 stack, itemnoslot), listener (vibration listener).
- Armadillo:
scute_time (int; drops scute at <1, resets to 6000–12000), state (string: idle/rolling/scared).
- Armor Stand:
DisabledSlots (int, bitmask; 16191/4144896 disable all), Invisible (bool), Marker (bool, default false), NoBasePlate (bool), Pose (compound: Body/Head/LeftArm/LeftLeg/RightArm/RightLeg float lists, defaults [0,0,0] etc.), ShowArms (bool), Small (bool).
- Axolotl:
FromBucket (bool), Variant (int → axolotl/variant component).
- Bat:
BatFlags (bool, hanging).
- Bee:
CannotEnterHiveTicks, CropsGrownSincePollination (>10 stops growing crops), HasNectar, HasStung, TicksSincePollination (>2400 flies to flower_pos if present), flower_pos/hive_pos (int arrays).
- Blaze: none.
- Breeze: none.
- Camel:
LastPoseTick (long; negative = sitting).
- Cat:
CollarColor (byte, 0–15, default 14; → cat/collar), sound_variant (string, default classic), variant (string, default black).
- Cave Spider: none.
- Chicken:
EggLayTime (int), IsChickenJockey (bool), variant (default temperate), sound_variant (default classic).
- Cod:
FromBucket.
- Copper Golem:
next_weather_age (long, default −1; −2 when waxed), weather_state (string: unaffected/exposed/weathered/oxidized).
- Cow:
sound_variant, variant (default temperate).
- Creaking: none.
- Creeper:
ExplosionRadius (byte, default 3), Fuse (short, default 30), ignited (bool), powered (bool).
- Dolphin:
GotFish, Moistness (int, default 2400; ≤0 → 1 damage/tick out of water).
- Donkey:
ChestedHorse (bool), Items (15 slots when chested).
- Drowned: none.
- Elder Guardian: none.
- Ender Dragon:
DragonDeathTime (int, default 0; removed at >200), DragonPhase (int 0–10), sitting_damage_received (float).
- Enderman:
carriedBlockState (block state).
- Endermite:
Lifetime (int; removed at ≥2400).
- Evoker:
SpellTicks.
- Frog:
variant (default temperate; temperate/warm/cold).
- Fox:
Crouching, Sleeping, Sitting, Trusted (≤2 player UUIDs), Type (red/snow).
- Ghast:
ExplosionPower (byte, default 1).
- Giant: none.
- Glow Squid:
DarkTicksRemaining.
- Goat:
HasLeftHorn, HasRightHorn (default true), IsScreamingGoat.
- Guardian: none.
- Happy Ghast:
still_timeout (int; control restored at 0).
- Hoglin:
CannotBeHunted, IsImmuneToZombification, TimeInOverworld (>300 → zombified).
- Horse:
Variant (int; low 8 bits type, next 8 bits markings; → horse/variant).
- Husk: none.
- Illusioner:
SpellTicks.
- Iron Golem:
PlayerCreated.
- Llama:
ChestedHorse, Items (3×Strength slots), Strength (1–5), Variant (0–3: creamy/white/brown/gray).
- Magma Cube:
Size (0–126), wasOnGround.
- Mannequin (player model):
description (text component), hidden_layers (list: cape/jacket/left_sleeve/right_sleeve/left_pants_leg/right_pants_leg/hat), main_hand (left/right), pose (standing/crouching/swimming/fall_flying/sleeping), profile (→ profile component), hide_description (default false), immovable (default false).
- Mooshroom:
stew_effects (brown variant), Type (red/brown).
- Mule:
ChestedHorse, Items (15 slots).
- Nautilus: none.
- Ocelot:
Trusting.
- Panda:
HiddenGene, MainGene.
- Parrot:
Variant (0–4: red/blue/green/cyan/gray).
- Phantom:
anchor_pos (int array, circling center), size (0–64; +1 damage per size).
- Pig:
sound_variant, variant (default temperate).
- Piglin:
Inventory (≤8 stacks), IsBaby, IsImmuneToZombification, TimeInOverworld (>300 → zombified), CannotHunt.
- Piglin Brute:
IsImmuneToZombification, TimeInOverworld.
- Pillager:
Inventory (≤5 stacks).
- Polar Bear: none.
- Pufferfish:
FromBucket, PuffState (0–2).
- Rabbit:
MoreCarrotTicks, RabbitType (0 brown, 1 white, 2 black, 3 white-splotched, 4 gold, 5 salt, 99 killer).
- Ravager:
AttackTick, RoarTick, StunTick.
- Salmon:
FromBucket, type (small/medium/large).
- Sheep:
Color (byte, dye index), Sheared (bool).
- Shulker:
AttachFace (0–5), Color (0–16, default 16), Peek (byte, 0–100).
- Silverfish: none.
- Skeleton:
StrayConversionTime (int; −1 when not converting; converts at ≤0).
- Skeleton Horse:
SkeletonTrap, SkeletonTrapTime (removed at 18000).
- Slime:
Size (0–126), wasOnGround.
- Snow Golem:
Pumpkin (bool, default true).
- Sniffer: none.
- Spider: none.
- Squid: none.
- Stray: none.
- Strider: none.
- Sulfur Cube:
Size (0–126), pickup_timer (default 0), FromBucket, fuse (default −1; <0 disables explosion), wasOnGround.
- Tadpole:
Age (≥24000 → frog), AgeLocked, FromBucket.
- Trader Llama:
ChestedHorse, Strength (1–5), Variant (0–3), DespawnDelay (default 47999), Items.
- Tropical Fish:
FromBucket, Variant (int: low bytes = body size (0 large/1 small), pattern, color, pattern color; → tropical_fish/base_color/pattern/pattern_color components).
- Turtle:
has_egg.
- Vex:
bound_pos (int array, roaming center 15×11×15), life_ticks (damage countdown, 1 hunger damage at 0), owner (UUID of summoner).
- Villager:
FoodLevel (byte, default 0; breed willingness >12 with inventory food), Inventory (≤8 stacks), Offers (trades; see below), Gossips (list: Target UUID, Type major_negative/minor_negative/major_positive/minor_positive/trading, Value >0, LastGossipDecay), VillagerData (compound: level default 1, profession default minecraft:none, type default minecraft:plains; → villager/variant), AssignProfessionWhenSpawned, LastRestock, RestocksToday, Xp.
- Vindicator:
Johnny (bool).
- Wandering Trader:
DespawnDelay (default 0; ≤0 = never despawns), Inventory, Offers, wander_target (int array).
- Warden:
anger (compound: suspects list with anger 0–150 and uuid), listener.
- Witch: none.
- Wither:
Invul (int; invulnerability ticks).
- Wither Skeleton: none.
- Wolf:
CollarColor (byte, 0–15, default 14), sound_variant (default classic), variant (default pale).
- Zombie: none.
- Zombie Horse: none.
- Zombie Nautilus:
variant (default temperate).
- Zombified Piglin: none.
- Zombie Villager:
ConversionPlayer (UUID array), ConversionTime (int; −1 = not converting), Offers, Gossips, VillagerData.
Trade offer (Offers.Recipes entry)
buy (compound): first buy item; count = n + max(0,⌊ndm⌋) + s (d=demand, m=priceMultiplier, s=specialPrice); internal id (never air), components, count (>0, default 1).
buyB (compound, default empty): second buy item.
sell (compound, itemnoslot): sold item.
demand (int, default 0; updated to d′=d+2u−m on restock).
maxUses (int, default 4), priceMultiplier (float, default 0), rewardExp (bool, default true), specialPrice (int, default 0), uses (int, default 0), xp (int, default 1).
Projectiles
Inheritance: entity → projectile → arrow / fireball / item projectile.
- Arrow: none.
- Dragon Fireball: none.
- Egg: none.
- Ender Pearl: none.
- Experience Bottle: none.
- Fireball:
ExplosionPower (byte, default 1), Item (itemnoslot, default fire charge).
- Fishing Bobber: none.
- Lingering Potion: none.
- Llama Spit: none.
- Splash Potion: none.
- Shulker Bullet:
Dir (int 0–5), Steps (int), Target (UUID array), TXD/TYD/TZD (doubles).
- Small Fireball:
Item.
- Snowball: none.
- Spectral Arrow:
Duration (int, default 200).
- Trident:
DealtDamage (bool; enables Loyalty return).
- Wind Charge: none.
- Wither Skull:
dangerous (bool; blue skull).
Vehicles
- Boat:
leash (int array fence position or compound with UUID).
- Chest Boat:
leash (same as boat).
- Minecart: none.
- Chest Minecart: none.
- Command Block Minecart:
Command, CustomName, LastOutput (when TrackOutput), SuccessCount, TrackOutput (default true), UpdateLastExecution (default true).
- Furnace Minecart:
Fuel (short), PushX, PushZ (doubles).
- Hopper Minecart:
Enabled (bool, default true).
- Spawner Minecart: none (spawner common tags).
- TNT Minecart:
explosion_power (float, default 4), explosion_speed_factor (float, default 1; final power in [b, b+1.5sa)), fuse (int, default 80 when lit, −1 unlit).
Other entities
Area Effect Cloud
Age, Duration (default −1; −1 = never despawns), Radius (float 0–32), RadiusOnUse, RadiusPerTick, WaitTime, potion_contents (→ potion_contents component), DurationOnUse, Owner, custom_color, custom_effects, custom_name, potion, potion_duration_scale, ReapplicationDelay, custom_particle.
Display entities (item/block/text)
- billboard (string, default
fixed): fixed/vertical/horizontal/center
- brightness (compound:
block 0–15, sky 0–15)
- glow_color_override (int, default −1; RGB)
- height / width (floats, default 0; culling box; 0 = never culled)
- shadow_radius (float, default 0), shadow_strength (float, default 1)
- start_interpolation (int, load-only), interpolation_duration (int, default 0), teleport_duration (int, default 0)
- transformation (16-float row-major matrix, or decomposition:
right_rotation, scale, left_rotation, translation; all sub-tags required)
- view_range (float, default 1)
- Item display: item, item_display (
none/thirdperson_lefthand/thirdperson_righthand/firstperson_lefthand/firstperson_righthand/head/gui/ground/fixed/on_shelf)
- Block display: block_state
- Text display: alignment (
center/left/right), background (int ARGB, default 0x40000000; A<26 transparent), **default_background** (bool), **line_width** (int, default 200), **see_through** (bool), **shadow** (bool), **text** (text component), **text_opacity** (byte, default 255; values >127 as value−256; 4–25 invisible)
End Crystal
beam_target (int array), ShowBottom (bool; false when placed by item).
Evoker Fangs
Owner (UUID array), Warmup (int; −8 damages; removed after 22 ticks).
Experience Orb
Age (short; removed at 6000), Count (int; remaining pickups), Health (short), Value (short).
Eye of Ender
Item (itemnoslot; rendering + drop item).
Falling Block
BlockState (block state; air removes the entity; default sand), CancelDrop (bool), DropItem (bool, default true), HurtEntities (bool, default true for #anvil), TileEntityData (block entity data without id/x/y/z), Time (int; removed at >600, or >100 outside build height), FallHurtAmount (default 0), FallHurtMax (default 40).
Firework Rocket
FireworksItem (itemnoslot), Life, LifeTime (10(f+1)+rand(6)+rand(7)), ShotAtAngle (bool, default false).
Interaction
attack (compound: player UUID, timestamp long), interaction (same), height/width (floats, default 1), response (bool, default false).
Item (entity)
Age (short, default 0; −32768 = never despawns/merges), Health (short, default 5), Item (itemnoslot; air removes the entity), Owner (UUID array; only owner can pick up), PickupDelay (short, default 40; 32767/negative = never), Thrower (UUID array).
Item Frame
Facing (byte 0–5), Fixed (bool), Invisible (bool), Item, ItemDropChance (float, default 1), ItemRotation (byte 0–7).
Leash Knot
None. Lightning Bolt: none. Marker: none.
Ominous Item Spawner
item (itemnoslot; projectiles spawn as projectiles), spawn_item_after_ticks (long).
Painting
facing (byte 0–3: south/west/north/east), variant (string, default alban; → painting/variant).
Primed TNT
block_state (display state, default TNT), explosion_power (float 0–128, default 4), fuse (short, default 80), owner (UUID array).
Storage format
Entity data files are region files under <dimension root>/entities (e.g. <save>/dimensions/minecraft/overworld/entities). Per chunk: DataVersion (int; −1 if absent), Position (int array, chunk X/Z), Entities (list; passengers are stored within the root entity's Passengers, not separately).
1---2name: minecraft-entity-data-format3description: Minecraft Entity Data Format 实体数据格式:Common Entity Tags 通用实体标签(id/Air/CustomName/CustomNameVisible/data/fall_distance/Fire/Glowing/HasVisualFire/Invulnerable/invulnerable_time/Motion/NoGravity/OnGround/Passengers/PortalCooldown/Pos/Rotation/Silent/Tags/TicksFrozen/UUID)、Mobs 生物标签(继承链 entity→living→mob→breedable→animal→tameable;各生物特有字段如 Allay/Armadillo/Armor Stand/Axolotl/Bat/Bee/Camel/Cat/Chicken/Cow/Creeper/Dolphin/Ender Dragon/Enderman/Frog/Fox/Ghast/Goat/Hoglin/Horse/Iron Golem/Llama/Magma Cube/Mannequin/Mooshroom/Ocelot/Panda/Parrot/Phantom/Pig/Piglin/Pillager/Pufferfish/Rabbit/Ravager/Sheep/Shulker/Skeleton/Slime/Snow Golem/Sniffer/Squid/Strider/Sulfur Cube/Tadpole/Turtle/Vex/Villager/Warden/Wither/Wolf/Zombie/Zombie Villager)、Trade Offers 交易报价(buy/buyB/sell/demand/maxUses/priceMultiplier/rewardExp/specialPrice/uses/xp)、Projectiles 投射物(Arrow/Fireball/Ender Pearl/Trident/Wind Charge/Wither Skull 等)、Vehicles 载具(Boat/Minecart variants)、Other Entities 其他实体(Area Effect Cloud/Display entities billboard/brightne4---56# Entity Data Format78This content applies only to Java Edition. For the Bedrock entity format, see the Bedrock article.910Each entity type has its own data format on top of the common tags. For complete field lists, see mc_java_sources/ or Minecraft Wiki.1112## Common entity tags (entity data root tags)1314- **id** (string): (namespace ID) entity type. Only present in persistent storage (chunk files, structure templates, beehives, passengers). Cannot be read/modified via `/data`.15- **Air** (short): remaining air value (−20 ≤ v ≤ entity max); +4 per tick in air, decreases in suffocating environments; at −20 the entity takes damage and resets to 0. Default: entity max air.16- **CustomName** (text component): custom name; shown in death messages, trading UIs, and above the entity. Treated as the `custom_name` data component.17- **CustomNameVisible** (bool): always render the name. Default false.18- **data** (any NBT): arbitrary data; string form only for loading, saves use compound. Treated as the `custom_data` data component.19- **fall_distance** (double): accumulated fall distance. Default 0.20- **Fire** (short): ticks remaining on fire; negative = ticks immune while standing in fire. Unlit: −20 for players, −1 otherwise. Default 0.21- **Glowing** (bool): glowing outline. Default false.22- **HasVisualFire** (bool): visually on fire. Default false.23- **Invulnerable** (bool): immune to most damage; only creative damage and `#bypasses_invulnerability` apply. Default false.24- **invulnerable_time** (int): remaining invulnerability ticks; not stored when ≤0.25- **Motion** (list of 3 doubles): velocity (−10 ≤ v ≤ 10 per axis; out-of-range resets to 0; NaN loads normally).26- **NoGravity** (bool). Default false.27- **OnGround** (bool). Default false.28- **Passengers** (list): riding entities (recursive); only effective via `/summon`, spawners, and trial spawners.29- **PortalCooldown** (int): ticks until the next nether portal use. Default 0.30- **Pos** (list of 3 doubles): coordinates; X/Z −30000512–30000512, Y −20000000–20000000; out-of-range clamped, NaN causes load errors.31- **Rotation** (list of 2 floats): yaw/pitch in degrees; non-finite values reset to 0.32- **Silent** (bool). Default false.33- **Tags** (list of strings): scoreboard tags, ≤1024.34- **TicksFrozen** (int): freezing time. Default 0.35- **UUID** (int array): cannot be modified via `/data`.3637## Mobs3839Mob tags store health, states, and effects on top of the common tags. Inheritance chain (parent→child): entity → living → mob → breedable → animal → tameable; common branches: horse, angerable, raidable, zombie. The entries below list representative fields only.4041- **Allay**: `DuplicationCooldown` (long; 6000 ticks on duplication), `Inventory` (list, ≤1 stack, itemnoslot), `listener` (vibration listener).42- **Armadillo**: `scute_time` (int; drops scute at <1, resets to 6000–12000), `state` (string: `idle`/`rolling`/`scared`).43- **Armor Stand**: `DisabledSlots` (int, bitmask; 16191/4144896 disable all), `Invisible` (bool), `Marker` (bool, default false), `NoBasePlate` (bool), `Pose` (compound: Body/Head/LeftArm/LeftLeg/RightArm/RightLeg float lists, defaults `[0,0,0]` etc.), `ShowArms` (bool), `Small` (bool).44- **Axolotl**: `FromBucket` (bool), `Variant` (int → `axolotl/variant` component).45- **Bat**: `BatFlags` (bool, hanging).46- **Bee**: `CannotEnterHiveTicks`, `CropsGrownSincePollination` (>10 stops growing crops), `HasNectar`, `HasStung`, `TicksSincePollination` (>2400 flies to `flower_pos` if present), `flower_pos`/`hive_pos` (int arrays).47- **Blaze**: none.48- **Breeze**: none.49- **Camel**: `LastPoseTick` (long; negative = sitting).50- **Cat**: `CollarColor` (byte, 0–15, default 14; → `cat/collar`), `sound_variant` (string, default `classic`), `variant` (string, default `black`).51- **Cave Spider**: none.52- **Chicken**: `EggLayTime` (int), `IsChickenJockey` (bool), `variant` (default `temperate`), `sound_variant` (default `classic`).53- **Cod**: `FromBucket`.54- **Copper Golem**: `next_weather_age` (long, default −1; −2 when waxed), `weather_state` (string: `unaffected`/`exposed`/`weathered`/`oxidized`).55- **Cow**: `sound_variant`, `variant` (default `temperate`).56- **Creaking**: none.57- **Creeper**: `ExplosionRadius` (byte, default 3), `Fuse` (short, default 30), `ignited` (bool), `powered` (bool).58- **Dolphin**: `GotFish`, `Moistness` (int, default 2400; ≤0 → 1 damage/tick out of water).59- **Donkey**: `ChestedHorse` (bool), `Items` (15 slots when chested).60- **Drowned**: none.61- **Elder Guardian**: none.62- **Ender Dragon**: `DragonDeathTime` (int, default 0; removed at >200), `DragonPhase` (int 0–10), `sitting_damage_received` (float).63- **Enderman**: `carriedBlockState` (block state).64- **Endermite**: `Lifetime` (int; removed at ≥2400).65- **Evoker**: `SpellTicks`.66- **Frog**: `variant` (default `temperate`; `temperate`/`warm`/`cold`).67- **Fox**: `Crouching`, `Sleeping`, `Sitting`, `Trusted` (≤2 player UUIDs), `Type` (`red`/`snow`).68- **Ghast**: `ExplosionPower` (byte, default 1).69- **Giant**: none.70- **Glow Squid**: `DarkTicksRemaining`.71- **Goat**: `HasLeftHorn`, `HasRightHorn` (default true), `IsScreamingGoat`.72- **Guardian**: none.73- **Happy Ghast**: `still_timeout` (int; control restored at 0).74- **Hoglin**: `CannotBeHunted`, `IsImmuneToZombification`, `TimeInOverworld` (>300 → zombified).75- **Horse**: `Variant` (int; low 8 bits type, next 8 bits markings; → `horse/variant`).76- **Husk**: none.77- **Illusioner**: `SpellTicks`.78- **Iron Golem**: `PlayerCreated`.79- **Llama**: `ChestedHorse`, `Items` (3×Strength slots), `Strength` (1–5), `Variant` (0–3: `creamy`/`white`/`brown`/`gray`).80- **Magma Cube**: `Size` (0–126), `wasOnGround`.81- **Mannequin (player model)**: `description` (text component), `hidden_layers` (list: `cape`/`jacket`/`left_sleeve`/`right_sleeve`/`left_pants_leg`/`right_pants_leg`/`hat`), `main_hand` (`left`/`right`), `pose` (`standing`/`crouching`/`swimming`/`fall_flying`/`sleeping`), `profile` (→ `profile` component), `hide_description` (default false), `immovable` (default false).82- **Mooshroom**: `stew_effects` (brown variant), `Type` (`red`/`brown`).83- **Mule**: `ChestedHorse`, `Items` (15 slots).84- **Nautilus**: none.85- **Ocelot**: `Trusting`.86- **Panda**: `HiddenGene`, `MainGene`.87- **Parrot**: `Variant` (0–4: red/blue/green/cyan/gray).88- **Phantom**: `anchor_pos` (int array, circling center), `size` (0–64; +1 damage per size).89- **Pig**: `sound_variant`, `variant` (default `temperate`).90- **Piglin**: `Inventory` (≤8 stacks), `IsBaby`, `IsImmuneToZombification`, `TimeInOverworld` (>300 → zombified), `CannotHunt`.91- **Piglin Brute**: `IsImmuneToZombification`, `TimeInOverworld`.92- **Pillager**: `Inventory` (≤5 stacks).93- **Polar Bear**: none.94- **Pufferfish**: `FromBucket`, `PuffState` (0–2).95- **Rabbit**: `MoreCarrotTicks`, `RabbitType` (0 brown, 1 white, 2 black, 3 white-splotched, 4 gold, 5 salt, 99 killer).96- **Ravager**: `AttackTick`, `RoarTick`, `StunTick`.97- **Salmon**: `FromBucket`, `type` (`small`/`medium`/`large`).98- **Sheep**: `Color` (byte, dye index), `Sheared` (bool).99- **Shulker**: `AttachFace` (0–5), `Color` (0–16, default 16), `Peek` (byte, 0–100).100- **Silverfish**: none.101- **Skeleton**: `StrayConversionTime` (int; −1 when not converting; converts at ≤0).102- **Skeleton Horse**: `SkeletonTrap`, `SkeletonTrapTime` (removed at 18000).103- **Slime**: `Size` (0–126), `wasOnGround`.104- **Snow Golem**: `Pumpkin` (bool, default true).105- **Sniffer**: none.106- **Spider**: none.107- **Squid**: none.108- **Stray**: none.109- **Strider**: none.110- **Sulfur Cube**: `Size` (0–126), `pickup_timer` (default 0), `FromBucket`, `fuse` (default −1; <0 disables explosion), `wasOnGround`.111- **Tadpole**: `Age` (≥24000 → frog), `AgeLocked`, `FromBucket`.112- **Trader Llama**: `ChestedHorse`, `Strength` (1–5), `Variant` (0–3), `DespawnDelay` (default 47999), `Items`.113- **Tropical Fish**: `FromBucket`, `Variant` (int: low bytes = body size (0 large/1 small), pattern, color, pattern color; → `tropical_fish/base_color`/`pattern`/`pattern_color` components).114- **Turtle**: `has_egg`.115- **Vex**: `bound_pos` (int array, roaming center 15×11×15), `life_ticks` (damage countdown, 1 hunger damage at 0), `owner` (UUID of summoner).116- **Villager**: `FoodLevel` (byte, default 0; breed willingness >12 with inventory food), `Inventory` (≤8 stacks), `Offers` (trades; see below), `Gossips` (list: `Target` UUID, `Type` `major_negative`/`minor_negative`/`major_positive`/`minor_positive`/`trading`, `Value` >0, `LastGossipDecay`), `VillagerData` (compound: `level` default 1, `profession` default `minecraft:none`, `type` default `minecraft:plains`; → `villager/variant`), `AssignProfessionWhenSpawned`, `LastRestock`, `RestocksToday`, `Xp`.117- **Vindicator**: `Johnny` (bool).118- **Wandering Trader**: `DespawnDelay` (default 0; ≤0 = never despawns), `Inventory`, `Offers`, `wander_target` (int array).119- **Warden**: `anger` (compound: `suspects` list with `anger` 0–150 and `uuid`), `listener`.120- **Witch**: none.121- **Wither**: `Invul` (int; invulnerability ticks).122- **Wither Skeleton**: none.123- **Wolf**: `CollarColor` (byte, 0–15, default 14), `sound_variant` (default `classic`), `variant` (default `pale`).124- **Zombie**: none.125- **Zombie Horse**: none.126- **Zombie Nautilus**: `variant` (default `temperate`).127- **Zombified Piglin**: none.128- **Zombie Villager**: `ConversionPlayer` (UUID array), `ConversionTime` (int; −1 = not converting), `Offers`, `Gossips`, `VillagerData`.129130### Trade offer (`Offers.Recipes` entry)131132- `buy` (compound): first buy item; count = n + max(0,⌊ndm⌋) + s (d=demand, m=priceMultiplier, s=specialPrice); internal `id` (never `air`), `components`, `count` (>0, default 1).133- `buyB` (compound, default empty): second buy item.134- `sell` (compound, itemnoslot): sold item.135- `demand` (int, default 0; updated to d′=d+2u−m on restock).136- `maxUses` (int, default 4), `priceMultiplier` (float, default 0), `rewardExp` (bool, default true), `specialPrice` (int, default 0), `uses` (int, default 0), `xp` (int, default 1).137138## Projectiles139140Inheritance: entity → projectile → arrow / fireball / item projectile.141142- **Arrow**: none.143- **Dragon Fireball**: none.144- **Egg**: none.145- **Ender Pearl**: none.146- **Experience Bottle**: none.147- **Fireball**: `ExplosionPower` (byte, default 1), `Item` (itemnoslot, default fire charge).148- **Fishing Bobber**: none.149- **Lingering Potion**: none.150- **Llama Spit**: none.151- **Splash Potion**: none.152- **Shulker Bullet**: `Dir` (int 0–5), `Steps` (int), `Target` (UUID array), `TXD`/`TYD`/`TZD` (doubles).153- **Small Fireball**: `Item`.154- **Snowball**: none.155- **Spectral Arrow**: `Duration` (int, default 200).156- **Trident**: `DealtDamage` (bool; enables Loyalty return).157- **Wind Charge**: none.158- **Wither Skull**: `dangerous` (bool; blue skull).159160## Vehicles161162- **Boat**: `leash` (int array fence position or compound with `UUID`).163- **Chest Boat**: `leash` (same as boat).164- **Minecart**: none.165- **Chest Minecart**: none.166- **Command Block Minecart**: `Command`, `CustomName`, `LastOutput` (when `TrackOutput`), `SuccessCount`, `TrackOutput` (default true), `UpdateLastExecution` (default true).167- **Furnace Minecart**: `Fuel` (short), `PushX`, `PushZ` (doubles).168- **Hopper Minecart**: `Enabled` (bool, default true).169- **Spawner Minecart**: none (spawner common tags).170- **TNT Minecart**: `explosion_power` (float, default 4), `explosion_speed_factor` (float, default 1; final power in [b, b+1.5sa)), `fuse` (int, default 80 when lit, −1 unlit).171172## Other entities173174### Area Effect Cloud175`Age`, `Duration` (default −1; −1 = never despawns), `Radius` (float 0–32), `RadiusOnUse`, `RadiusPerTick`, `WaitTime`, `potion_contents` (→ `potion_contents` component), `DurationOnUse`, `Owner`, `custom_color`, `custom_effects`, `custom_name`, `potion`, `potion_duration_scale`, `ReapplicationDelay`, `custom_particle`.176177### Display entities (item/block/text)178- **billboard** (string, default `fixed`): `fixed`/`vertical`/`horizontal`/`center`179- **brightness** (compound: `block` 0–15, `sky` 0–15)180- **glow_color_override** (int, default −1; RGB)181- **height** / **width** (floats, default 0; culling box; 0 = never culled)182- **shadow_radius** (float, default 0), **shadow_strength** (float, default 1)183- **start_interpolation** (int, load-only), **interpolation_duration** (int, default 0), **teleport_duration** (int, default 0)184- **transformation** (16-float row-major matrix, or decomposition: `right_rotation`, `scale`, `left_rotation`, `translation`; all sub-tags required)185- **view_range** (float, default 1)186- Item display: **item**, **item_display** (`none`/`thirdperson_lefthand`/`thirdperson_righthand`/`firstperson_lefthand`/`firstperson_righthand`/`head`/`gui`/`ground`/`fixed`/`on_shelf`)187- Block display: **block_state**188- Text display: **alignment** (`center`/`left`/`right`), **background** (int ARGB, default 0x40000000; A<26 transparent), **default_background** (bool), **line_width** (int, default 200), **see_through** (bool), **shadow** (bool), **text** (text component), **text_opacity** (byte, default 255; values >127 as value−256; 4–25 invisible)189190### End Crystal191`beam_target` (int array), `ShowBottom` (bool; false when placed by item).192193### Evoker Fangs194`Owner` (UUID array), `Warmup` (int; −8 damages; removed after 22 ticks).195196### Experience Orb197`Age` (short; removed at 6000), `Count` (int; remaining pickups), `Health` (short), `Value` (short).198199### Eye of Ender200`Item` (itemnoslot; rendering + drop item).201202### Falling Block203`BlockState` (block state; air removes the entity; default sand), `CancelDrop` (bool), `DropItem` (bool, default true), `HurtEntities` (bool, default true for `#anvil`), `TileEntityData` (block entity data without id/x/y/z), `Time` (int; removed at >600, or >100 outside build height), `FallHurtAmount` (default 0), `FallHurtMax` (default 40).204205### Firework Rocket206`FireworksItem` (itemnoslot), `Life`, `LifeTime` (10(f+1)+rand(6)+rand(7)), `ShotAtAngle` (bool, default false).207208### Interaction209`attack` (compound: `player` UUID, `timestamp` long), `interaction` (same), `height`/`width` (floats, default 1), `response` (bool, default false).210211### Item (entity)212`Age` (short, default 0; −32768 = never despawns/merges), `Health` (short, default 5), `Item` (itemnoslot; air removes the entity), `Owner` (UUID array; only owner can pick up), `PickupDelay` (short, default 40; 32767/negative = never), `Thrower` (UUID array).213214### Item Frame215`Facing` (byte 0–5), `Fixed` (bool), `Invisible` (bool), `Item`, `ItemDropChance` (float, default 1), `ItemRotation` (byte 0–7).216217### Leash Knot218None. **Lightning Bolt**: none. **Marker**: none.219220### Ominous Item Spawner221`item` (itemnoslot; projectiles spawn as projectiles), `spawn_item_after_ticks` (long).222223### Painting224`facing` (byte 0–3: south/west/north/east), `variant` (string, default `alban`; → `painting/variant`).225226### Primed TNT227`block_state` (display state, default TNT), `explosion_power` (float 0–128, default 4), `fuse` (short, default 80), `owner` (UUID array).228229## Storage format230231Entity data files are region files under `<dimension root>/entities` (e.g. `<save>/dimensions/minecraft/overworld/entities`). Per chunk: `DataVersion` (int; −1 if absent), `Position` (int array, chunk X/Z), `Entities` (list; passengers are stored within the root entity's `Passengers`, not separately).