From 79399c153eed19d4bf68c304ae6c232755028cb3 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 30 Aug 2022 18:41:17 -0700 Subject: [PATCH] Update to 1.19.2 --- extracted/entities.json | 3689 +++++++++-------- extracted/packets.json | 709 ++++ extractor/build.gradle | 8 +- extractor/gradle.properties | 8 +- .../valence_extractor/extractors/Packets.java | 2 +- src/client.rs | 21 +- src/lib.rs | 4 +- src/protocol_inner/packets.rs | 2 +- src/protocol_inner/packets/c2s.rs | 111 +- src/protocol_inner/packets/s2c.rs | 68 +- src/server.rs | 4 +- 11 files changed, 2681 insertions(+), 1945 deletions(-) create mode 100644 extracted/packets.json diff --git a/extracted/entities.json b/extracted/entities.json index 2fd66e6..dbef6d9 100644 --- a/extracted/entities.json +++ b/extracted/entities.json @@ -1,481 +1,8 @@ { - "TadpoleEntity": { - "parent": "FishEntity", - "type": "tadpole", - "translation_key": "entity.minecraft.tadpole", - "fields": [] - }, - "FishEntity": { - "parent": "WaterCreatureEntity", - "fields": [ - { - "name": "from_bucket", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "WaterCreatureEntity": { - "parent": "PathAwareEntity", - "fields": [] - }, - "PathAwareEntity": { - "parent": "MobEntity", - "fields": [] - }, - "MobEntity": { - "parent": "LivingEntity", - "fields": [ - { - "name": "mob_flags", - "index": 15, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "ai_disabled", - "index": 0 - }, - { - "name": "left_handed", - "index": 1 - }, - { - "name": "attacking", - "index": 2 - } - ] - } - ] - }, - "LivingEntity": { - "parent": "Entity", - "fields": [ - { - "name": "living_flags", - "index": 8, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "using_item", - "index": 0 - }, - { - "name": "off_hand_active", - "index": 1 - }, - { - "name": "using_riptide", - "index": 2 - } - ] - }, - { - "name": "health", - "index": 9, - "type": "float", - "default_value": 6.0, - "bits": [] - }, - { - "name": "potion_swirls_color", - "index": 10, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "potion_swirls_ambient", - "index": 11, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "stuck_arrow_count", - "index": 12, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "stinger_count", - "index": 13, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "sleeping_position", - "index": 14, - "type": "optional_block_pos", - "default_value": null, - "bits": [] - } - ] - }, - "Entity": { - "fields": [ - { - "name": "flags", - "index": 0, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "on_fire", - "index": 0 - }, - { - "name": "sneaking", - "index": 1 - }, - { - "name": "sprinting", - "index": 3 - }, - { - "name": "swimming", - "index": 4 - }, - { - "name": "invisible", - "index": 5 - }, - { - "name": "glowing", - "index": 6 - }, - { - "name": "fall_flying", - "index": 7 - } - ] - }, - { - "name": "air", - "index": 1, - "type": "integer", - "default_value": 300, - "bits": [] - }, - { - "name": "custom_name", - "index": 2, - "type": "optional_text_component", - "default_value": null, - "bits": [] - }, - { - "name": "name_visible", - "index": 3, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "silent", - "index": 4, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "no_gravity", - "index": 5, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "pose", - "index": 6, - "type": "entity_pose", - "default_value": "standing", - "bits": [] - }, - { - "name": "frozen_ticks", - "index": 7, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "FrogEntity": { - "parent": "AnimalEntity", - "type": "frog", - "translation_key": "entity.minecraft.frog", - "fields": [ - { - "name": "variant", - "index": 17, - "type": "frog_variant", - "default_value": "temperate", - "bits": [] - }, - { - "name": "target", - "index": 18, - "type": "optional_int", - "default_value": null, - "bits": [] - } - ] - }, - "AnimalEntity": { - "parent": "PassiveEntity", - "fields": [] - }, - "PassiveEntity": { - "parent": "PathAwareEntity", - "fields": [ - { - "name": "child", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "FireballEntity": { - "parent": "AbstractFireballEntity", - "type": "fireball", - "translation_key": "entity.minecraft.fireball", - "fields": [] - }, - "AbstractFireballEntity": { - "parent": "ExplosiveProjectileEntity", - "fields": [ - { - "name": "item", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - } - ] - }, - "ExplosiveProjectileEntity": { - "parent": "ProjectileEntity", - "fields": [] - }, - "ProjectileEntity": { - "parent": "Entity", - "fields": [] - }, - "VillagerEntity": { - "parent": "MerchantEntity", - "type": "villager", - "translation_key": "entity.minecraft.villager", - "fields": [ - { - "name": "villager_data", - "index": 18, - "type": "villager_data", - "default_value": { - "type": "plains", - "profession": "none", - "level": 1 - }, - "bits": [] - } - ] - }, - "MerchantEntity": { - "parent": "PassiveEntity", - "fields": [ - { - "name": "head_rolling_time_left", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "ZombieEntity": { - "parent": "HostileEntity", - "type": "zombie", - "translation_key": "entity.minecraft.zombie", - "fields": [ - { - "name": "baby", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "zombie_type", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "converting_in_water", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "HostileEntity": { - "parent": "PathAwareEntity", - "fields": [] - }, - "GlowSquidEntity": { - "parent": "SquidEntity", - "type": "glow_squid", - "translation_key": "entity.minecraft.glow_squid", - "fields": [ - { - "name": "dark_ticks_remaining", - "index": 16, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "SquidEntity": { - "parent": "WaterCreatureEntity", - "type": "squid", - "translation_key": "entity.minecraft.squid", - "fields": [] - }, - "PaintingEntity": { - "parent": "AbstractDecorationEntity", - "type": "painting", - "translation_key": "entity.minecraft.painting", - "fields": [ - { - "name": "variant", - "index": 8, - "type": "painting_variant", - "default_value": "kebab", - "bits": [] - } - ] - }, "AbstractDecorationEntity": { "parent": "Entity", "fields": [] }, - "FishingBobberEntity": { - "parent": "ProjectileEntity", - "type": "fishing_bobber", - "translation_key": "entity.minecraft.fishing_bobber", - "fields": [ - { - "name": "hook_entity_id", - "index": 8, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "caught_fish", - "index": 9, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "WitherSkullEntity": { - "parent": "ExplosiveProjectileEntity", - "type": "wither_skull", - "translation_key": "entity.minecraft.wither_skull", - "fields": [ - { - "name": "charged", - "index": 8, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "PandaEntity": { - "parent": "AnimalEntity", - "type": "panda", - "translation_key": "entity.minecraft.panda", - "fields": [ - { - "name": "ask_for_bamboo_ticks", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "sneeze_progress", - "index": 18, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "eating_ticks", - "index": 19, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "main_gene", - "index": 20, - "type": "byte", - "default_value": 0, - "bits": [] - }, - { - "name": "hidden_gene", - "index": 21, - "type": "byte", - "default_value": 0, - "bits": [] - }, - { - "name": "panda_flags", - "index": 22, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "sneezing", - "index": 1 - }, - { - "name": "playing", - "index": 2 - }, - { - "name": "sitting", - "index": 3 - }, - { - "name": "lying_on_back", - "index": 4 - } - ] - } - ] - }, - "MuleEntity": { - "parent": "AbstractDonkeyEntity", - "type": "mule", - "translation_key": "entity.minecraft.mule", - "fields": [] - }, "AbstractDonkeyEntity": { "parent": "AbstractHorseEntity", "fields": [ @@ -488,6 +15,18 @@ } ] }, + "AbstractFireballEntity": { + "parent": "ExplosiveProjectileEntity", + "fields": [ + { + "name": "item", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + } + ] + }, "AbstractHorseEntity": { "parent": "AnimalEntity", "fields": [ @@ -532,132 +71,6 @@ } ] }, - "FireworkRocketEntity": { - "parent": "ProjectileEntity", - "type": "firework_rocket", - "translation_key": "entity.minecraft.firework_rocket", - "fields": [ - { - "name": "item", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - }, - { - "name": "shooter_entity_id", - "index": 9, - "type": "optional_int", - "default_value": null, - "bits": [] - }, - { - "name": "shot_at_angle", - "index": 10, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "RavagerEntity": { - "parent": "RaiderEntity", - "type": "ravager", - "translation_key": "entity.minecraft.ravager", - "fields": [] - }, - "RaiderEntity": { - "parent": "PatrolEntity", - "fields": [ - { - "name": "celebrating", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "PatrolEntity": { - "parent": "HostileEntity", - "fields": [] - }, - "EndermanEntity": { - "parent": "HostileEntity", - "type": "enderman", - "translation_key": "entity.minecraft.enderman", - "fields": [ - { - "name": "carried_block", - "index": 16, - "type": "optional_block_state", - "default_value": null, - "bits": [] - }, - { - "name": "angry", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "provoked", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "PillagerEntity": { - "parent": "IllagerEntity", - "type": "pillager", - "translation_key": "entity.minecraft.pillager", - "fields": [ - { - "name": "charging", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "IllagerEntity": { - "parent": "RaiderEntity", - "fields": [] - }, - "GhastEntity": { - "parent": "FlyingEntity", - "type": "ghast", - "translation_key": "entity.minecraft.ghast", - "fields": [ - { - "name": "shooting", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "FlyingEntity": { - "parent": "MobEntity", - "fields": [] - }, - "GiantEntity": { - "parent": "HostileEntity", - "type": "giant", - "translation_key": "entity.minecraft.giant", - "fields": [] - }, - "SpawnerMinecartEntity": { - "parent": "AbstractMinecartEntity", - "type": "spawner_minecart", - "translation_key": "entity.minecraft.spawner_minecart", - "fields": [] - }, "AbstractMinecartEntity": { "parent": "Entity", "fields": [ @@ -705,483 +118,86 @@ } ] }, - "StrayEntity": { - "parent": "AbstractSkeletonEntity", - "type": "stray", - "translation_key": "entity.minecraft.stray", - "fields": [] + "AbstractPiglinEntity": { + "parent": "HostileEntity", + "fields": [ + { + "name": "immune_to_zombification", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] }, "AbstractSkeletonEntity": { "parent": "HostileEntity", "fields": [] }, - "LightningEntity": { - "parent": "Entity", - "type": "lightning_bolt", - "translation_key": "entity.minecraft.lightning_bolt", - "fields": [] - }, - "EyeOfEnderEntity": { - "parent": "Entity", - "type": "eye_of_ender", - "translation_key": "entity.minecraft.eye_of_ender", - "fields": [ - { - "name": "item", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - } - ] - }, - "HoglinEntity": { - "parent": "AnimalEntity", - "type": "hoglin", - "translation_key": "entity.minecraft.hoglin", - "fields": [ - { - "name": "baby", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "CatEntity": { - "parent": "TameableEntity", - "type": "cat", - "translation_key": "entity.minecraft.cat", - "fields": [ - { - "name": "cat_variant", - "index": 19, - "type": "cat_variant", - "default_value": "black", - "bits": [] - }, - { - "name": "in_sleeping_pose", - "index": 20, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "head_down", - "index": 21, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "collar_color", - "index": 22, - "type": "integer", - "default_value": 14, - "bits": [] - } - ] - }, - "TameableEntity": { - "parent": "AnimalEntity", - "fields": [ - { - "name": "tameable_flags", - "index": 17, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "sitting_pose", - "index": 0 - }, - { - "name": "tamed", - "index": 2 - } - ] - }, - { - "name": "owner_uuid", - "index": 18, - "type": "optional_uuid", - "default_value": null, - "bits": [] - } - ] - }, - "CaveSpiderEntity": { - "parent": "SpiderEntity", - "type": "cave_spider", - "translation_key": "entity.minecraft.cave_spider", - "fields": [] - }, - "SpiderEntity": { - "parent": "HostileEntity", - "type": "spider", - "translation_key": "entity.minecraft.spider", - "fields": [ - { - "name": "spider_flags", - "index": 16, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "climbing_wall", - "index": 0 - } - ] - } - ] - }, - "PolarBearEntity": { - "parent": "AnimalEntity", - "type": "polar_bear", - "translation_key": "entity.minecraft.polar_bear", - "fields": [ - { - "name": "warning", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "MooshroomEntity": { - "parent": "CowEntity", - "type": "mooshroom", - "translation_key": "entity.minecraft.mooshroom", - "fields": [ - { - "name": "type", - "index": 17, - "type": "string", - "default_value": "red", - "bits": [] - } - ] - }, - "CowEntity": { - "parent": "AnimalEntity", - "type": "cow", - "translation_key": "entity.minecraft.cow", - "fields": [] - }, - "ExperienceBottleEntity": { - "parent": "ThrownItemEntity", - "type": "experience_bottle", - "translation_key": "entity.minecraft.experience_bottle", - "fields": [] - }, - "ThrownItemEntity": { - "parent": "ThrownEntity", - "fields": [ - { - "name": "item", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - } - ] - }, - "ThrownEntity": { - "parent": "ProjectileEntity", - "fields": [] - }, - "PufferfishEntity": { - "parent": "FishEntity", - "type": "pufferfish", - "translation_key": "entity.minecraft.pufferfish", - "fields": [ - { - "name": "puff_state", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "PotionEntity": { - "parent": "ThrownItemEntity", - "type": "potion", - "translation_key": "entity.minecraft.potion", - "fields": [] - }, - "EvokerEntity": { - "parent": "SpellcastingIllagerEntity", - "type": "evoker", - "translation_key": "entity.minecraft.evoker", - "fields": [] - }, - "SpellcastingIllagerEntity": { - "parent": "IllagerEntity", - "fields": [ - { - "name": "spell", - "index": 17, - "type": "byte", - "default_value": 0, - "bits": [] - } - ] - }, - "MinecartEntity": { - "parent": "AbstractMinecartEntity", - "type": "minecart", - "translation_key": "entity.minecraft.minecart", - "fields": [] - }, - "TurtleEntity": { - "parent": "AnimalEntity", - "type": "turtle", - "translation_key": "entity.minecraft.turtle", - "fields": [ - { - "name": "home_pos", - "index": 17, - "type": "block_pos", - "default_value": { - "x": 0, - "y": 0, - "z": 0 - }, - "bits": [] - }, - { - "name": "has_egg", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "digging_sand", - "index": 19, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "travel_pos", - "index": 20, - "type": "block_pos", - "default_value": { - "x": 0, - "y": 0, - "z": 0 - }, - "bits": [] - }, - { - "name": "land_bound", - "index": 21, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "actively_traveling", - "index": 22, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "BoatEntity": { - "parent": "Entity", - "type": "boat", - "translation_key": "entity.minecraft.boat", - "fields": [ - { - "name": "damage_wobble_ticks", - "index": 8, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "damage_wobble_side", - "index": 9, - "type": "integer", - "default_value": 1, - "bits": [] - }, - { - "name": "damage_wobble_strength", - "index": 10, - "type": "float", - "default_value": 0.0, - "bits": [] - }, - { - "name": "boat_type", - "index": 11, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "left_paddle_moving", - "index": 12, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "right_paddle_moving", - "index": 13, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "bubble_wobble_ticks", - "index": 14, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "FurnaceMinecartEntity": { - "parent": "AbstractMinecartEntity", - "type": "furnace_minecart", - "translation_key": "entity.minecraft.furnace_minecart", - "fields": [ - { - "name": "lit", - "index": 14, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "ZombifiedPiglinEntity": { - "parent": "ZombieEntity", - "type": "zombified_piglin", - "translation_key": "entity.minecraft.zombified_piglin", - "fields": [] - }, - "OcelotEntity": { - "parent": "AnimalEntity", - "type": "ocelot", - "translation_key": "entity.minecraft.ocelot", - "fields": [ - { - "name": "trusting", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "EndermiteEntity": { - "parent": "HostileEntity", - "type": "endermite", - "translation_key": "entity.minecraft.endermite", - "fields": [] - }, - "ShulkerEntity": { - "parent": "GolemEntity", - "type": "shulker", - "translation_key": "entity.minecraft.shulker", - "fields": [ - { - "name": "attached_face", - "index": 16, - "type": "facing", - "default_value": "down", - "bits": [] - }, - { - "name": "peek_amount", - "index": 17, - "type": "byte", - "default_value": 0, - "bits": [] - }, - { - "name": "color", - "index": 18, - "type": "byte", - "default_value": 16, - "bits": [] - } - ] - }, - "GolemEntity": { - "parent": "PathAwareEntity", - "fields": [] - }, - "LeashKnotEntity": { - "parent": "AbstractDecorationEntity", - "type": "leash_knot", - "translation_key": "entity.minecraft.leash_knot", - "fields": [] - }, - "SilverfishEntity": { - "parent": "HostileEntity", - "type": "silverfish", - "translation_key": "entity.minecraft.silverfish", - "fields": [] - }, - "HuskEntity": { - "parent": "ZombieEntity", - "type": "husk", - "translation_key": "entity.minecraft.husk", - "fields": [] - }, - "TntMinecartEntity": { - "parent": "AbstractMinecartEntity", - "type": "tnt_minecart", - "translation_key": "entity.minecraft.tnt_minecart", - "fields": [] - }, - "TropicalFishEntity": { - "parent": "SchoolingFishEntity", - "type": "tropical_fish", - "translation_key": "entity.minecraft.tropical_fish", - "fields": [ - { - "name": "variant", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "SchoolingFishEntity": { - "parent": "FishEntity", - "fields": [] - }, - "IllusionerEntity": { - "parent": "SpellcastingIllagerEntity", - "type": "illusioner", - "translation_key": "entity.minecraft.illusioner", - "fields": [] - }, - "LlamaSpitEntity": { - "parent": "ProjectileEntity", - "type": "llama_spit", - "translation_key": "entity.minecraft.llama_spit", - "fields": [] - }, "AllayEntity": { "parent": "PathAwareEntity", "type": "allay", "translation_key": "entity.minecraft.allay", + "fields": [ + { + "name": "dancing", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "can_duplicate", + "index": 17, + "type": "boolean", + "default_value": true, + "bits": [] + } + ] + }, + "AmbientEntity": { + "parent": "MobEntity", "fields": [] }, + "AnimalEntity": { + "parent": "PassiveEntity", + "fields": [] + }, + "AreaEffectCloudEntity": { + "parent": "Entity", + "type": "area_effect_cloud", + "translation_key": "entity.minecraft.area_effect_cloud", + "fields": [ + { + "name": "radius", + "index": 8, + "type": "float", + "default_value": 3.0, + "bits": [] + }, + { + "name": "color", + "index": 9, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "waiting", + "index": 10, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "particle_id", + "index": 11, + "type": "particle", + "default_value": "entity_effect", + "bits": [] + } + ] + }, "ArmorStandEntity": { "parent": "LivingEntity", "type": "armor_stand", @@ -1279,326 +295,20 @@ } ] }, - "ChestMinecartEntity": { - "parent": "StorageMinecartEntity", - "type": "chest_minecart", - "translation_key": "entity.minecraft.chest_minecart", - "fields": [] - }, - "StorageMinecartEntity": { - "parent": "AbstractMinecartEntity", - "fields": [] - }, - "CreeperEntity": { - "parent": "HostileEntity", - "type": "creeper", - "translation_key": "entity.minecraft.creeper", + "ArrowEntity": { + "parent": "PersistentProjectileEntity", + "type": "arrow", + "translation_key": "entity.minecraft.arrow", "fields": [ { - "name": "fuse_speed", - "index": 16, + "name": "color", + "index": 10, "type": "integer", "default_value": -1, "bits": [] - }, - { - "name": "charged", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "ignited", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] } ] }, - "MagmaCubeEntity": { - "parent": "SlimeEntity", - "type": "magma_cube", - "translation_key": "entity.minecraft.magma_cube", - "fields": [] - }, - "SlimeEntity": { - "parent": "MobEntity", - "type": "slime", - "translation_key": "entity.minecraft.slime", - "fields": [ - { - "name": "slime_size", - "index": 16, - "type": "integer", - "default_value": 1, - "bits": [] - } - ] - }, - "WitchEntity": { - "parent": "RaiderEntity", - "type": "witch", - "translation_key": "entity.minecraft.witch", - "fields": [ - { - "name": "drinking", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "SkeletonEntity": { - "parent": "AbstractSkeletonEntity", - "type": "skeleton", - "translation_key": "entity.minecraft.skeleton", - "fields": [ - { - "name": "converting", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "EvokerFangsEntity": { - "parent": "Entity", - "type": "evoker_fangs", - "translation_key": "entity.minecraft.evoker_fangs", - "fields": [] - }, - "DolphinEntity": { - "parent": "WaterCreatureEntity", - "type": "dolphin", - "translation_key": "entity.minecraft.dolphin", - "fields": [ - { - "name": "treasure_pos", - "index": 16, - "type": "block_pos", - "default_value": { - "x": 0, - "y": 0, - "z": 0 - }, - "bits": [] - }, - { - "name": "has_fish", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "moistness", - "index": 18, - "type": "integer", - "default_value": 2400, - "bits": [] - } - ] - }, - "EndCrystalEntity": { - "parent": "Entity", - "type": "end_crystal", - "translation_key": "entity.minecraft.end_crystal", - "fields": [ - { - "name": "beam_target", - "index": 8, - "type": "optional_block_pos", - "default_value": null, - "bits": [] - }, - { - "name": "show_bottom", - "index": 9, - "type": "boolean", - "default_value": true, - "bits": [] - } - ] - }, - "DragonFireballEntity": { - "parent": "ExplosiveProjectileEntity", - "type": "dragon_fireball", - "translation_key": "entity.minecraft.dragon_fireball", - "fields": [] - }, - "ElderGuardianEntity": { - "parent": "GuardianEntity", - "type": "elder_guardian", - "translation_key": "entity.minecraft.elder_guardian", - "fields": [] - }, - "GuardianEntity": { - "parent": "HostileEntity", - "type": "guardian", - "translation_key": "entity.minecraft.guardian", - "fields": [ - { - "name": "spikes_retracted", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "beam_target_id", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "SnowballEntity": { - "parent": "ThrownItemEntity", - "type": "snowball", - "translation_key": "entity.minecraft.snowball", - "fields": [] - }, - "DrownedEntity": { - "parent": "ZombieEntity", - "type": "drowned", - "translation_key": "entity.minecraft.drowned", - "fields": [] - }, - "ShulkerBulletEntity": { - "parent": "ProjectileEntity", - "type": "shulker_bullet", - "translation_key": "entity.minecraft.shulker_bullet", - "fields": [] - }, - "ChickenEntity": { - "parent": "AnimalEntity", - "type": "chicken", - "translation_key": "entity.minecraft.chicken", - "fields": [] - }, - "GlowItemFrameEntity": { - "parent": "ItemFrameEntity", - "type": "glow_item_frame", - "translation_key": "entity.minecraft.glow_item_frame", - "fields": [] - }, - "ItemFrameEntity": { - "parent": "AbstractDecorationEntity", - "type": "item_frame", - "translation_key": "entity.minecraft.item_frame", - "fields": [ - { - "name": "item_stack", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - }, - { - "name": "rotation", - "index": 9, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "LlamaEntity": { - "parent": "AbstractDonkeyEntity", - "type": "llama", - "translation_key": "entity.minecraft.llama", - "fields": [ - { - "name": "strength", - "index": 20, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "carpet_color", - "index": 21, - "type": "integer", - "default_value": -1, - "bits": [] - }, - { - "name": "variant", - "index": 22, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "ZoglinEntity": { - "parent": "HostileEntity", - "type": "zoglin", - "translation_key": "entity.minecraft.zoglin", - "fields": [ - { - "name": "baby", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "SnowGolemEntity": { - "parent": "GolemEntity", - "type": "snow_golem", - "translation_key": "entity.minecraft.snow_golem", - "fields": [ - { - "name": "snow_golem_flags", - "index": 16, - "type": "byte", - "default_value": 16, - "bits": [ - { - "name": "has_pumpkin", - "index": 4 - } - ] - } - ] - }, - "TraderLlamaEntity": { - "parent": "LlamaEntity", - "type": "trader_llama", - "translation_key": "entity.minecraft.trader_llama", - "fields": [] - }, - "FallingBlockEntity": { - "parent": "Entity", - "type": "falling_block", - "translation_key": "entity.minecraft.falling_block", - "fields": [ - { - "name": "block_pos", - "index": 8, - "type": "block_pos", - "default_value": { - "x": 0, - "y": 0, - "z": 0 - }, - "bits": [] - } - ] - }, - "SmallFireballEntity": { - "parent": "AbstractFireballEntity", - "type": "small_fireball", - "translation_key": "entity.minecraft.small_fireball", - "fields": [] - }, "AxolotlEntity": { "parent": "AnimalEntity", "type": "axolotl", @@ -1627,134 +337,6 @@ } ] }, - "TntEntity": { - "parent": "Entity", - "type": "tnt", - "translation_key": "entity.minecraft.tnt", - "fields": [ - { - "name": "fuse", - "index": 8, - "type": "integer", - "default_value": 80, - "bits": [] - } - ] - }, - "DonkeyEntity": { - "parent": "AbstractDonkeyEntity", - "type": "donkey", - "translation_key": "entity.minecraft.donkey", - "fields": [] - }, - "WardenEntity": { - "parent": "HostileEntity", - "type": "warden", - "translation_key": "entity.minecraft.warden", - "fields": [ - { - "name": "anger", - "index": 16, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "PiglinEntity": { - "parent": "AbstractPiglinEntity", - "type": "piglin", - "translation_key": "entity.minecraft.piglin", - "fields": [ - { - "name": "baby", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "charging", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "dancing", - "index": 19, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "AbstractPiglinEntity": { - "parent": "HostileEntity", - "fields": [ - { - "name": "immune_to_zombification", - "index": 16, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "SpectralArrowEntity": { - "parent": "PersistentProjectileEntity", - "type": "spectral_arrow", - "translation_key": "entity.minecraft.spectral_arrow", - "fields": [] - }, - "PersistentProjectileEntity": { - "parent": "ProjectileEntity", - "fields": [ - { - "name": "projectile_flags", - "index": 8, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "critical", - "index": 0 - }, - { - "name": "no_clip", - "index": 1 - } - ] - }, - { - "name": "pierce_level", - "index": 9, - "type": "byte", - "default_value": 0, - "bits": [] - } - ] - }, - "WanderingTraderEntity": { - "parent": "MerchantEntity", - "type": "wandering_trader", - "translation_key": "entity.minecraft.wandering_trader", - "fields": [] - }, - "RabbitEntity": { - "parent": "AnimalEntity", - "type": "rabbit", - "translation_key": "entity.minecraft.rabbit", - "fields": [ - { - "name": "rabbit_type", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, "BatEntity": { "parent": "AmbientEntity", "type": "bat", @@ -1774,97 +356,6 @@ } ] }, - "AmbientEntity": { - "parent": "MobEntity", - "fields": [] - }, - "ItemEntity": { - "parent": "Entity", - "type": "item", - "translation_key": "entity.minecraft.item", - "fields": [ - { - "name": "stack", - "index": 8, - "type": "item_stack", - "default_value": "1 air", - "bits": [] - } - ] - }, - "GoatEntity": { - "parent": "AnimalEntity", - "type": "goat", - "translation_key": "entity.minecraft.goat", - "fields": [ - { - "name": "screaming", - "index": 17, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "left_horn", - "index": 18, - "type": "boolean", - "default_value": true, - "bits": [] - }, - { - "name": "right_horn", - "index": 19, - "type": "boolean", - "default_value": true, - "bits": [] - } - ] - }, - "SalmonEntity": { - "parent": "SchoolingFishEntity", - "type": "salmon", - "translation_key": "entity.minecraft.salmon", - "fields": [] - }, - "ExperienceOrbEntity": { - "parent": "Entity", - "type": "experience_orb", - "translation_key": "entity.minecraft.experience_orb", - "fields": [] - }, - "SheepEntity": { - "parent": "AnimalEntity", - "type": "sheep", - "translation_key": "entity.minecraft.sheep", - "fields": [ - { - "name": "color", - "index": 17, - "type": "byte", - "default_value": 0, - "bits": [] - } - ] - }, - "VexEntity": { - "parent": "HostileEntity", - "type": "vex", - "translation_key": "entity.minecraft.vex", - "fields": [ - { - "name": "vex_flags", - "index": 16, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "charging", - "index": 0 - } - ] - } - ] - }, "BeeEntity": { "parent": "AnimalEntity", "type": "bee", @@ -1899,20 +390,146 @@ } ] }, - "HorseEntity": { - "parent": "AbstractHorseEntity", - "type": "horse", - "translation_key": "entity.minecraft.horse", + "BlazeEntity": { + "parent": "HostileEntity", + "type": "blaze", + "translation_key": "entity.minecraft.blaze", "fields": [ { - "name": "variant", - "index": 19, + "name": "blaze_flags", + "index": 16, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "fire_active", + "index": 0 + } + ] + } + ] + }, + "BoatEntity": { + "parent": "Entity", + "type": "boat", + "translation_key": "entity.minecraft.boat", + "fields": [ + { + "name": "damage_wobble_ticks", + "index": 8, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "damage_wobble_side", + "index": 9, + "type": "integer", + "default_value": 1, + "bits": [] + }, + { + "name": "damage_wobble_strength", + "index": 10, + "type": "float", + "default_value": 0.0, + "bits": [] + }, + { + "name": "boat_type", + "index": 11, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "left_paddle_moving", + "index": 12, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "right_paddle_moving", + "index": 13, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "bubble_wobble_ticks", + "index": 14, "type": "integer", "default_value": 0, "bits": [] } ] }, + "CatEntity": { + "parent": "TameableEntity", + "type": "cat", + "translation_key": "entity.minecraft.cat", + "fields": [ + { + "name": "cat_variant", + "index": 19, + "type": "cat_variant", + "default_value": "black", + "bits": [] + }, + { + "name": "in_sleeping_pose", + "index": 20, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "head_down", + "index": 21, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "collar_color", + "index": 22, + "type": "integer", + "default_value": 14, + "bits": [] + } + ] + }, + "CaveSpiderEntity": { + "parent": "SpiderEntity", + "type": "cave_spider", + "translation_key": "entity.minecraft.cave_spider", + "fields": [] + }, + "ChestBoatEntity": { + "parent": "BoatEntity", + "type": "chest_boat", + "translation_key": "entity.minecraft.chest_boat", + "fields": [] + }, + "ChestMinecartEntity": { + "parent": "StorageMinecartEntity", + "type": "chest_minecart", + "translation_key": "entity.minecraft.chest_minecart", + "fields": [] + }, + "ChickenEntity": { + "parent": "AnimalEntity", + "type": "chicken", + "translation_key": "entity.minecraft.chicken", + "fields": [] + }, + "CodEntity": { + "parent": "SchoolingFishEntity", + "type": "cod", + "translation_key": "entity.minecraft.cod", + "fields": [] + }, "CommandBlockMinecartEntity": { "parent": "AbstractMinecartEntity", "type": "command_block_minecart", @@ -1934,12 +551,123 @@ } ] }, + "CowEntity": { + "parent": "AnimalEntity", + "type": "cow", + "translation_key": "entity.minecraft.cow", + "fields": [] + }, + "CreeperEntity": { + "parent": "HostileEntity", + "type": "creeper", + "translation_key": "entity.minecraft.creeper", + "fields": [ + { + "name": "fuse_speed", + "index": 16, + "type": "integer", + "default_value": -1, + "bits": [] + }, + { + "name": "charged", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "ignited", + "index": 18, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "DolphinEntity": { + "parent": "WaterCreatureEntity", + "type": "dolphin", + "translation_key": "entity.minecraft.dolphin", + "fields": [ + { + "name": "treasure_pos", + "index": 16, + "type": "block_pos", + "default_value": { + "x": 0, + "y": 0, + "z": 0 + }, + "bits": [] + }, + { + "name": "has_fish", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "moistness", + "index": 18, + "type": "integer", + "default_value": 2400, + "bits": [] + } + ] + }, + "DonkeyEntity": { + "parent": "AbstractDonkeyEntity", + "type": "donkey", + "translation_key": "entity.minecraft.donkey", + "fields": [] + }, + "DragonFireballEntity": { + "parent": "ExplosiveProjectileEntity", + "type": "dragon_fireball", + "translation_key": "entity.minecraft.dragon_fireball", + "fields": [] + }, + "DrownedEntity": { + "parent": "ZombieEntity", + "type": "drowned", + "translation_key": "entity.minecraft.drowned", + "fields": [] + }, "EggEntity": { "parent": "ThrownItemEntity", "type": "egg", "translation_key": "entity.minecraft.egg", "fields": [] }, + "ElderGuardianEntity": { + "parent": "GuardianEntity", + "type": "elder_guardian", + "translation_key": "entity.minecraft.elder_guardian", + "fields": [] + }, + "EndCrystalEntity": { + "parent": "Entity", + "type": "end_crystal", + "translation_key": "entity.minecraft.end_crystal", + "fields": [ + { + "name": "beam_target", + "index": 8, + "type": "optional_block_pos", + "default_value": null, + "bits": [] + }, + { + "name": "show_bottom", + "index": 9, + "type": "boolean", + "default_value": true, + "bits": [] + } + ] + }, "EnderDragonEntity": { "parent": "MobEntity", "type": "ender_dragon", @@ -1954,168 +682,266 @@ } ] }, - "ParrotEntity": { - "parent": "TameableShoulderEntity", - "type": "parrot", - "translation_key": "entity.minecraft.parrot", - "fields": [ - { - "name": "variant", - "index": 19, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "TameableShoulderEntity": { - "parent": "TameableEntity", - "fields": [] - }, - "PiglinBruteEntity": { - "parent": "AbstractPiglinEntity", - "type": "piglin_brute", - "translation_key": "entity.minecraft.piglin_brute", - "fields": [] - }, "EnderPearlEntity": { "parent": "ThrownItemEntity", "type": "ender_pearl", "translation_key": "entity.minecraft.ender_pearl", "fields": [] }, - "TridentEntity": { - "parent": "PersistentProjectileEntity", - "type": "trident", - "translation_key": "entity.minecraft.trident", - "fields": [ - { - "name": "loyalty", - "index": 10, - "type": "byte", - "default_value": 0, - "bits": [] - }, - { - "name": "enchanted", - "index": 11, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "StriderEntity": { - "parent": "AnimalEntity", - "type": "strider", - "translation_key": "entity.minecraft.strider", - "fields": [ - { - "name": "boost_time", - "index": 17, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "cold", - "index": 18, - "type": "boolean", - "default_value": false, - "bits": [] - }, - { - "name": "saddled", - "index": 19, - "type": "boolean", - "default_value": false, - "bits": [] - } - ] - }, - "WitherEntity": { + "EndermanEntity": { "parent": "HostileEntity", - "type": "wither", - "translation_key": "entity.minecraft.wither", + "type": "enderman", + "translation_key": "entity.minecraft.enderman", "fields": [ { - "name": "tracked_entity_id_1", + "name": "carried_block", "index": 16, - "type": "integer", - "default_value": 0, + "type": "optional_block_state", + "default_value": null, "bits": [] }, { - "name": "tracked_entity_id_2", + "name": "angry", "index": 17, - "type": "integer", - "default_value": 0, + "type": "boolean", + "default_value": false, "bits": [] }, { - "name": "tracked_entity_id_3", + "name": "provoked", "index": 18, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "invul_timer", - "index": 19, - "type": "integer", - "default_value": 0, + "type": "boolean", + "default_value": false, "bits": [] } ] }, - "ArrowEntity": { - "parent": "PersistentProjectileEntity", - "type": "arrow", - "translation_key": "entity.minecraft.arrow", - "fields": [ - { - "name": "color", - "index": 10, - "type": "integer", - "default_value": -1, - "bits": [] - } - ] - }, - "MarkerEntity": { - "parent": "Entity", - "type": "marker", - "translation_key": "entity.minecraft.marker", + "EndermiteEntity": { + "parent": "HostileEntity", + "type": "endermite", + "translation_key": "entity.minecraft.endermite", "fields": [] }, - "WolfEntity": { - "parent": "TameableEntity", - "type": "wolf", - "translation_key": "entity.minecraft.wolf", + "Entity": { "fields": [ { - "name": "begging", - "index": 19, + "name": "flags", + "index": 0, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "on_fire", + "index": 0 + }, + { + "name": "sneaking", + "index": 1 + }, + { + "name": "sprinting", + "index": 3 + }, + { + "name": "swimming", + "index": 4 + }, + { + "name": "invisible", + "index": 5 + }, + { + "name": "glowing", + "index": 6 + }, + { + "name": "fall_flying", + "index": 7 + } + ] + }, + { + "name": "air", + "index": 1, + "type": "integer", + "default_value": 300, + "bits": [] + }, + { + "name": "custom_name", + "index": 2, + "type": "optional_text_component", + "default_value": null, + "bits": [] + }, + { + "name": "name_visible", + "index": 3, "type": "boolean", "default_value": false, "bits": [] }, { - "name": "collar_color", - "index": 20, - "type": "integer", - "default_value": 14, + "name": "silent", + "index": 4, + "type": "boolean", + "default_value": false, "bits": [] }, { - "name": "anger_time", - "index": 21, + "name": "no_gravity", + "index": 5, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "pose", + "index": 6, + "type": "entity_pose", + "default_value": "standing", + "bits": [] + }, + { + "name": "frozen_ticks", + "index": 7, "type": "integer", "default_value": 0, "bits": [] } ] }, + "EvokerEntity": { + "parent": "SpellcastingIllagerEntity", + "type": "evoker", + "translation_key": "entity.minecraft.evoker", + "fields": [] + }, + "EvokerFangsEntity": { + "parent": "Entity", + "type": "evoker_fangs", + "translation_key": "entity.minecraft.evoker_fangs", + "fields": [] + }, + "ExperienceBottleEntity": { + "parent": "ThrownItemEntity", + "type": "experience_bottle", + "translation_key": "entity.minecraft.experience_bottle", + "fields": [] + }, + "ExperienceOrbEntity": { + "parent": "Entity", + "type": "experience_orb", + "translation_key": "entity.minecraft.experience_orb", + "fields": [] + }, + "ExplosiveProjectileEntity": { + "parent": "ProjectileEntity", + "fields": [] + }, + "EyeOfEnderEntity": { + "parent": "Entity", + "type": "eye_of_ender", + "translation_key": "entity.minecraft.eye_of_ender", + "fields": [ + { + "name": "item", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + } + ] + }, + "FallingBlockEntity": { + "parent": "Entity", + "type": "falling_block", + "translation_key": "entity.minecraft.falling_block", + "fields": [ + { + "name": "block_pos", + "index": 8, + "type": "block_pos", + "default_value": { + "x": 0, + "y": 0, + "z": 0 + }, + "bits": [] + } + ] + }, + "FireballEntity": { + "parent": "AbstractFireballEntity", + "type": "fireball", + "translation_key": "entity.minecraft.fireball", + "fields": [] + }, + "FireworkRocketEntity": { + "parent": "ProjectileEntity", + "type": "firework_rocket", + "translation_key": "entity.minecraft.firework_rocket", + "fields": [ + { + "name": "item", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + }, + { + "name": "shooter_entity_id", + "index": 9, + "type": "optional_int", + "default_value": null, + "bits": [] + }, + { + "name": "shot_at_angle", + "index": 10, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "FishEntity": { + "parent": "WaterCreatureEntity", + "fields": [ + { + "name": "from_bucket", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "FishingBobberEntity": { + "parent": "ProjectileEntity", + "type": "fishing_bobber", + "translation_key": "entity.minecraft.fishing_bobber", + "fields": [ + { + "name": "hook_entity_id", + "index": 8, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "caught_fish", + "index": 9, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "FlyingEntity": { + "parent": "MobEntity", + "fields": [] + }, "FoxEntity": { "parent": "AnimalEntity", "type": "fox", @@ -2180,6 +1006,669 @@ } ] }, + "FrogEntity": { + "parent": "AnimalEntity", + "type": "frog", + "translation_key": "entity.minecraft.frog", + "fields": [ + { + "name": "variant", + "index": 17, + "type": "frog_variant", + "default_value": "temperate", + "bits": [] + }, + { + "name": "target", + "index": 18, + "type": "optional_int", + "default_value": null, + "bits": [] + } + ] + }, + "FurnaceMinecartEntity": { + "parent": "AbstractMinecartEntity", + "type": "furnace_minecart", + "translation_key": "entity.minecraft.furnace_minecart", + "fields": [ + { + "name": "lit", + "index": 14, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "GhastEntity": { + "parent": "FlyingEntity", + "type": "ghast", + "translation_key": "entity.minecraft.ghast", + "fields": [ + { + "name": "shooting", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "GiantEntity": { + "parent": "HostileEntity", + "type": "giant", + "translation_key": "entity.minecraft.giant", + "fields": [] + }, + "GlowItemFrameEntity": { + "parent": "ItemFrameEntity", + "type": "glow_item_frame", + "translation_key": "entity.minecraft.glow_item_frame", + "fields": [] + }, + "GlowSquidEntity": { + "parent": "SquidEntity", + "type": "glow_squid", + "translation_key": "entity.minecraft.glow_squid", + "fields": [ + { + "name": "dark_ticks_remaining", + "index": 16, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "GoatEntity": { + "parent": "AnimalEntity", + "type": "goat", + "translation_key": "entity.minecraft.goat", + "fields": [ + { + "name": "screaming", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "left_horn", + "index": 18, + "type": "boolean", + "default_value": true, + "bits": [] + }, + { + "name": "right_horn", + "index": 19, + "type": "boolean", + "default_value": true, + "bits": [] + } + ] + }, + "GolemEntity": { + "parent": "PathAwareEntity", + "fields": [] + }, + "GuardianEntity": { + "parent": "HostileEntity", + "type": "guardian", + "translation_key": "entity.minecraft.guardian", + "fields": [ + { + "name": "spikes_retracted", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "beam_target_id", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "HoglinEntity": { + "parent": "AnimalEntity", + "type": "hoglin", + "translation_key": "entity.minecraft.hoglin", + "fields": [ + { + "name": "baby", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "HopperMinecartEntity": { + "parent": "StorageMinecartEntity", + "type": "hopper_minecart", + "translation_key": "entity.minecraft.hopper_minecart", + "fields": [] + }, + "HorseEntity": { + "parent": "AbstractHorseEntity", + "type": "horse", + "translation_key": "entity.minecraft.horse", + "fields": [ + { + "name": "variant", + "index": 19, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "HostileEntity": { + "parent": "PathAwareEntity", + "fields": [] + }, + "HuskEntity": { + "parent": "ZombieEntity", + "type": "husk", + "translation_key": "entity.minecraft.husk", + "fields": [] + }, + "IllagerEntity": { + "parent": "RaiderEntity", + "fields": [] + }, + "IllusionerEntity": { + "parent": "SpellcastingIllagerEntity", + "type": "illusioner", + "translation_key": "entity.minecraft.illusioner", + "fields": [] + }, + "IronGolemEntity": { + "parent": "GolemEntity", + "type": "iron_golem", + "translation_key": "entity.minecraft.iron_golem", + "fields": [ + { + "name": "iron_golem_flags", + "index": 16, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "player_created", + "index": 0 + } + ] + } + ] + }, + "ItemEntity": { + "parent": "Entity", + "type": "item", + "translation_key": "entity.minecraft.item", + "fields": [ + { + "name": "stack", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + } + ] + }, + "ItemFrameEntity": { + "parent": "AbstractDecorationEntity", + "type": "item_frame", + "translation_key": "entity.minecraft.item_frame", + "fields": [ + { + "name": "item_stack", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + }, + { + "name": "rotation", + "index": 9, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "LeashKnotEntity": { + "parent": "AbstractDecorationEntity", + "type": "leash_knot", + "translation_key": "entity.minecraft.leash_knot", + "fields": [] + }, + "LightningEntity": { + "parent": "Entity", + "type": "lightning_bolt", + "translation_key": "entity.minecraft.lightning_bolt", + "fields": [] + }, + "LivingEntity": { + "parent": "Entity", + "fields": [ + { + "name": "living_flags", + "index": 8, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "using_item", + "index": 0 + }, + { + "name": "off_hand_active", + "index": 1 + }, + { + "name": "using_riptide", + "index": 2 + } + ] + }, + { + "name": "health", + "index": 9, + "type": "float", + "default_value": 20.0, + "bits": [] + }, + { + "name": "potion_swirls_color", + "index": 10, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "potion_swirls_ambient", + "index": 11, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "stuck_arrow_count", + "index": 12, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "stinger_count", + "index": 13, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "sleeping_position", + "index": 14, + "type": "optional_block_pos", + "default_value": null, + "bits": [] + } + ] + }, + "LlamaEntity": { + "parent": "AbstractDonkeyEntity", + "type": "llama", + "translation_key": "entity.minecraft.llama", + "fields": [ + { + "name": "strength", + "index": 20, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "carpet_color", + "index": 21, + "type": "integer", + "default_value": -1, + "bits": [] + }, + { + "name": "variant", + "index": 22, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "LlamaSpitEntity": { + "parent": "ProjectileEntity", + "type": "llama_spit", + "translation_key": "entity.minecraft.llama_spit", + "fields": [] + }, + "MagmaCubeEntity": { + "parent": "SlimeEntity", + "type": "magma_cube", + "translation_key": "entity.minecraft.magma_cube", + "fields": [] + }, + "MarkerEntity": { + "parent": "Entity", + "type": "marker", + "translation_key": "entity.minecraft.marker", + "fields": [] + }, + "MerchantEntity": { + "parent": "PassiveEntity", + "fields": [ + { + "name": "head_rolling_time_left", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "MinecartEntity": { + "parent": "AbstractMinecartEntity", + "type": "minecart", + "translation_key": "entity.minecraft.minecart", + "fields": [] + }, + "MobEntity": { + "parent": "LivingEntity", + "fields": [ + { + "name": "mob_flags", + "index": 15, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "ai_disabled", + "index": 0 + }, + { + "name": "left_handed", + "index": 1 + }, + { + "name": "attacking", + "index": 2 + } + ] + } + ] + }, + "MooshroomEntity": { + "parent": "CowEntity", + "type": "mooshroom", + "translation_key": "entity.minecraft.mooshroom", + "fields": [ + { + "name": "type", + "index": 17, + "type": "string", + "default_value": "red", + "bits": [] + } + ] + }, + "MuleEntity": { + "parent": "AbstractDonkeyEntity", + "type": "mule", + "translation_key": "entity.minecraft.mule", + "fields": [] + }, + "OcelotEntity": { + "parent": "AnimalEntity", + "type": "ocelot", + "translation_key": "entity.minecraft.ocelot", + "fields": [ + { + "name": "trusting", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "PaintingEntity": { + "parent": "AbstractDecorationEntity", + "type": "painting", + "translation_key": "entity.minecraft.painting", + "fields": [ + { + "name": "variant", + "index": 8, + "type": "painting_variant", + "default_value": "kebab", + "bits": [] + } + ] + }, + "PandaEntity": { + "parent": "AnimalEntity", + "type": "panda", + "translation_key": "entity.minecraft.panda", + "fields": [ + { + "name": "ask_for_bamboo_ticks", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "sneeze_progress", + "index": 18, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "eating_ticks", + "index": 19, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "main_gene", + "index": 20, + "type": "byte", + "default_value": 0, + "bits": [] + }, + { + "name": "hidden_gene", + "index": 21, + "type": "byte", + "default_value": 0, + "bits": [] + }, + { + "name": "panda_flags", + "index": 22, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "sneezing", + "index": 1 + }, + { + "name": "playing", + "index": 2 + }, + { + "name": "sitting", + "index": 3 + }, + { + "name": "lying_on_back", + "index": 4 + } + ] + } + ] + }, + "ParrotEntity": { + "parent": "TameableShoulderEntity", + "type": "parrot", + "translation_key": "entity.minecraft.parrot", + "fields": [ + { + "name": "variant", + "index": 19, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "PassiveEntity": { + "parent": "PathAwareEntity", + "fields": [ + { + "name": "child", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "PathAwareEntity": { + "parent": "MobEntity", + "fields": [] + }, + "PatrolEntity": { + "parent": "HostileEntity", + "fields": [] + }, + "PersistentProjectileEntity": { + "parent": "ProjectileEntity", + "fields": [ + { + "name": "projectile_flags", + "index": 8, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "critical", + "index": 0 + }, + { + "name": "no_clip", + "index": 1 + } + ] + }, + { + "name": "pierce_level", + "index": 9, + "type": "byte", + "default_value": 0, + "bits": [] + } + ] + }, + "PhantomEntity": { + "parent": "FlyingEntity", + "type": "phantom", + "translation_key": "entity.minecraft.phantom", + "fields": [ + { + "name": "size", + "index": 16, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "PigEntity": { + "parent": "AnimalEntity", + "type": "pig", + "translation_key": "entity.minecraft.pig", + "fields": [ + { + "name": "saddled", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "boost_time", + "index": 18, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "PiglinBruteEntity": { + "parent": "AbstractPiglinEntity", + "type": "piglin_brute", + "translation_key": "entity.minecraft.piglin_brute", + "fields": [] + }, + "PiglinEntity": { + "parent": "AbstractPiglinEntity", + "type": "piglin", + "translation_key": "entity.minecraft.piglin", + "fields": [ + { + "name": "baby", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "charging", + "index": 18, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "dancing", + "index": 19, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "PillagerEntity": { + "parent": "IllagerEntity", + "type": "pillager", + "translation_key": "entity.minecraft.pillager", + "fields": [ + { + "name": "charging", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, "PlayerEntity": { "parent": "LivingEntity", "type": "player", @@ -2258,21 +1747,574 @@ } ] }, - "PigEntity": { + "PolarBearEntity": { "parent": "AnimalEntity", - "type": "pig", - "translation_key": "entity.minecraft.pig", + "type": "polar_bear", + "translation_key": "entity.minecraft.polar_bear", "fields": [ { - "name": "saddled", + "name": "warning", "index": 17, "type": "boolean", "default_value": false, "bits": [] + } + ] + }, + "PotionEntity": { + "parent": "ThrownItemEntity", + "type": "potion", + "translation_key": "entity.minecraft.potion", + "fields": [] + }, + "ProjectileEntity": { + "parent": "Entity", + "fields": [] + }, + "PufferfishEntity": { + "parent": "FishEntity", + "type": "pufferfish", + "translation_key": "entity.minecraft.pufferfish", + "fields": [ + { + "name": "puff_state", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "RabbitEntity": { + "parent": "AnimalEntity", + "type": "rabbit", + "translation_key": "entity.minecraft.rabbit", + "fields": [ + { + "name": "rabbit_type", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "RaiderEntity": { + "parent": "PatrolEntity", + "fields": [ + { + "name": "celebrating", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "RavagerEntity": { + "parent": "RaiderEntity", + "type": "ravager", + "translation_key": "entity.minecraft.ravager", + "fields": [] + }, + "SalmonEntity": { + "parent": "SchoolingFishEntity", + "type": "salmon", + "translation_key": "entity.minecraft.salmon", + "fields": [] + }, + "SchoolingFishEntity": { + "parent": "FishEntity", + "fields": [] + }, + "SheepEntity": { + "parent": "AnimalEntity", + "type": "sheep", + "translation_key": "entity.minecraft.sheep", + "fields": [ + { + "name": "color", + "index": 17, + "type": "byte", + "default_value": 0, + "bits": [] + } + ] + }, + "ShulkerBulletEntity": { + "parent": "ProjectileEntity", + "type": "shulker_bullet", + "translation_key": "entity.minecraft.shulker_bullet", + "fields": [] + }, + "ShulkerEntity": { + "parent": "GolemEntity", + "type": "shulker", + "translation_key": "entity.minecraft.shulker", + "fields": [ + { + "name": "attached_face", + "index": 16, + "type": "facing", + "default_value": "down", + "bits": [] + }, + { + "name": "peek_amount", + "index": 17, + "type": "byte", + "default_value": 0, + "bits": [] + }, + { + "name": "color", + "index": 18, + "type": "byte", + "default_value": 16, + "bits": [] + } + ] + }, + "SilverfishEntity": { + "parent": "HostileEntity", + "type": "silverfish", + "translation_key": "entity.minecraft.silverfish", + "fields": [] + }, + "SkeletonEntity": { + "parent": "AbstractSkeletonEntity", + "type": "skeleton", + "translation_key": "entity.minecraft.skeleton", + "fields": [ + { + "name": "converting", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "SkeletonHorseEntity": { + "parent": "AbstractHorseEntity", + "type": "skeleton_horse", + "translation_key": "entity.minecraft.skeleton_horse", + "fields": [] + }, + "SlimeEntity": { + "parent": "MobEntity", + "type": "slime", + "translation_key": "entity.minecraft.slime", + "fields": [ + { + "name": "slime_size", + "index": 16, + "type": "integer", + "default_value": 1, + "bits": [] + } + ] + }, + "SmallFireballEntity": { + "parent": "AbstractFireballEntity", + "type": "small_fireball", + "translation_key": "entity.minecraft.small_fireball", + "fields": [] + }, + "SnowGolemEntity": { + "parent": "GolemEntity", + "type": "snow_golem", + "translation_key": "entity.minecraft.snow_golem", + "fields": [ + { + "name": "snow_golem_flags", + "index": 16, + "type": "byte", + "default_value": 16, + "bits": [ + { + "name": "has_pumpkin", + "index": 4 + } + ] + } + ] + }, + "SnowballEntity": { + "parent": "ThrownItemEntity", + "type": "snowball", + "translation_key": "entity.minecraft.snowball", + "fields": [] + }, + "SpawnerMinecartEntity": { + "parent": "AbstractMinecartEntity", + "type": "spawner_minecart", + "translation_key": "entity.minecraft.spawner_minecart", + "fields": [] + }, + "SpectralArrowEntity": { + "parent": "PersistentProjectileEntity", + "type": "spectral_arrow", + "translation_key": "entity.minecraft.spectral_arrow", + "fields": [] + }, + "SpellcastingIllagerEntity": { + "parent": "IllagerEntity", + "fields": [ + { + "name": "spell", + "index": 17, + "type": "byte", + "default_value": 0, + "bits": [] + } + ] + }, + "SpiderEntity": { + "parent": "HostileEntity", + "type": "spider", + "translation_key": "entity.minecraft.spider", + "fields": [ + { + "name": "spider_flags", + "index": 16, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "climbing_wall", + "index": 0 + } + ] + } + ] + }, + "SquidEntity": { + "parent": "WaterCreatureEntity", + "type": "squid", + "translation_key": "entity.minecraft.squid", + "fields": [] + }, + "StorageMinecartEntity": { + "parent": "AbstractMinecartEntity", + "fields": [] + }, + "StrayEntity": { + "parent": "AbstractSkeletonEntity", + "type": "stray", + "translation_key": "entity.minecraft.stray", + "fields": [] + }, + "StriderEntity": { + "parent": "AnimalEntity", + "type": "strider", + "translation_key": "entity.minecraft.strider", + "fields": [ + { + "name": "boost_time", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "cold", + "index": 18, + "type": "boolean", + "default_value": false, + "bits": [] }, { - "name": "boost_time", + "name": "saddled", + "index": 19, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "TadpoleEntity": { + "parent": "FishEntity", + "type": "tadpole", + "translation_key": "entity.minecraft.tadpole", + "fields": [] + }, + "TameableEntity": { + "parent": "AnimalEntity", + "fields": [ + { + "name": "tameable_flags", + "index": 17, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "sitting_pose", + "index": 0 + }, + { + "name": "tamed", + "index": 2 + } + ] + }, + { + "name": "owner_uuid", "index": 18, + "type": "optional_uuid", + "default_value": null, + "bits": [] + } + ] + }, + "TameableShoulderEntity": { + "parent": "TameableEntity", + "fields": [] + }, + "ThrownEntity": { + "parent": "ProjectileEntity", + "fields": [] + }, + "ThrownItemEntity": { + "parent": "ThrownEntity", + "fields": [ + { + "name": "item", + "index": 8, + "type": "item_stack", + "default_value": "1 air", + "bits": [] + } + ] + }, + "TntEntity": { + "parent": "Entity", + "type": "tnt", + "translation_key": "entity.minecraft.tnt", + "fields": [ + { + "name": "fuse", + "index": 8, + "type": "integer", + "default_value": 80, + "bits": [] + } + ] + }, + "TntMinecartEntity": { + "parent": "AbstractMinecartEntity", + "type": "tnt_minecart", + "translation_key": "entity.minecraft.tnt_minecart", + "fields": [] + }, + "TraderLlamaEntity": { + "parent": "LlamaEntity", + "type": "trader_llama", + "translation_key": "entity.minecraft.trader_llama", + "fields": [] + }, + "TridentEntity": { + "parent": "PersistentProjectileEntity", + "type": "trident", + "translation_key": "entity.minecraft.trident", + "fields": [ + { + "name": "loyalty", + "index": 10, + "type": "byte", + "default_value": 0, + "bits": [] + }, + { + "name": "enchanted", + "index": 11, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "TropicalFishEntity": { + "parent": "SchoolingFishEntity", + "type": "tropical_fish", + "translation_key": "entity.minecraft.tropical_fish", + "fields": [ + { + "name": "variant", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "TurtleEntity": { + "parent": "AnimalEntity", + "type": "turtle", + "translation_key": "entity.minecraft.turtle", + "fields": [ + { + "name": "home_pos", + "index": 17, + "type": "block_pos", + "default_value": { + "x": 0, + "y": 0, + "z": 0 + }, + "bits": [] + }, + { + "name": "has_egg", + "index": 18, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "digging_sand", + "index": 19, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "travel_pos", + "index": 20, + "type": "block_pos", + "default_value": { + "x": 0, + "y": 0, + "z": 0 + }, + "bits": [] + }, + { + "name": "land_bound", + "index": 21, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "actively_traveling", + "index": 22, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "VexEntity": { + "parent": "HostileEntity", + "type": "vex", + "translation_key": "entity.minecraft.vex", + "fields": [ + { + "name": "vex_flags", + "index": 16, + "type": "byte", + "default_value": 0, + "bits": [ + { + "name": "charging", + "index": 0 + } + ] + } + ] + }, + "VillagerEntity": { + "parent": "MerchantEntity", + "type": "villager", + "translation_key": "entity.minecraft.villager", + "fields": [ + { + "name": "villager_data", + "index": 18, + "type": "villager_data", + "default_value": { + "type": "plains", + "profession": "none", + "level": 1 + }, + "bits": [] + } + ] + }, + "VindicatorEntity": { + "parent": "IllagerEntity", + "type": "vindicator", + "translation_key": "entity.minecraft.vindicator", + "fields": [] + }, + "WanderingTraderEntity": { + "parent": "MerchantEntity", + "type": "wandering_trader", + "translation_key": "entity.minecraft.wandering_trader", + "fields": [] + }, + "WardenEntity": { + "parent": "HostileEntity", + "type": "warden", + "translation_key": "entity.minecraft.warden", + "fields": [ + { + "name": "anger", + "index": 16, + "type": "integer", + "default_value": 0, + "bits": [] + } + ] + }, + "WaterCreatureEntity": { + "parent": "PathAwareEntity", + "fields": [] + }, + "WitchEntity": { + "parent": "RaiderEntity", + "type": "witch", + "translation_key": "entity.minecraft.witch", + "fields": [ + { + "name": "drinking", + "index": 17, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "WitherEntity": { + "parent": "HostileEntity", + "type": "wither", + "translation_key": "entity.minecraft.wither", + "fields": [ + { + "name": "tracked_entity_id_1", + "index": 16, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "tracked_entity_id_2", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "tracked_entity_id_3", + "index": 18, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "invul_timer", + "index": 19, "type": "integer", "default_value": 0, "bits": [] @@ -2285,127 +2327,94 @@ "translation_key": "entity.minecraft.wither_skeleton", "fields": [] }, - "ChestBoatEntity": { - "parent": "BoatEntity", - "type": "chest_boat", - "translation_key": "entity.minecraft.chest_boat", - "fields": [] - }, - "BlazeEntity": { - "parent": "HostileEntity", - "type": "blaze", - "translation_key": "entity.minecraft.blaze", + "WitherSkullEntity": { + "parent": "ExplosiveProjectileEntity", + "type": "wither_skull", + "translation_key": "entity.minecraft.wither_skull", "fields": [ { - "name": "blaze_flags", - "index": 16, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "fire_active", - "index": 0 - } - ] - } - ] - }, - "PhantomEntity": { - "parent": "FlyingEntity", - "type": "phantom", - "translation_key": "entity.minecraft.phantom", - "fields": [ - { - "name": "size", - "index": 16, - "type": "integer", - "default_value": 0, - "bits": [] - } - ] - }, - "SkeletonHorseEntity": { - "parent": "AbstractHorseEntity", - "type": "skeleton_horse", - "translation_key": "entity.minecraft.skeleton_horse", - "fields": [] - }, - "HopperMinecartEntity": { - "parent": "StorageMinecartEntity", - "type": "hopper_minecart", - "translation_key": "entity.minecraft.hopper_minecart", - "fields": [] - }, - "CodEntity": { - "parent": "SchoolingFishEntity", - "type": "cod", - "translation_key": "entity.minecraft.cod", - "fields": [] - }, - "ZombieHorseEntity": { - "parent": "AbstractHorseEntity", - "type": "zombie_horse", - "translation_key": "entity.minecraft.zombie_horse", - "fields": [] - }, - "IronGolemEntity": { - "parent": "GolemEntity", - "type": "iron_golem", - "translation_key": "entity.minecraft.iron_golem", - "fields": [ - { - "name": "iron_golem_flags", - "index": 16, - "type": "byte", - "default_value": 0, - "bits": [ - { - "name": "player_created", - "index": 0 - } - ] - } - ] - }, - "AreaEffectCloudEntity": { - "parent": "Entity", - "type": "area_effect_cloud", - "translation_key": "entity.minecraft.area_effect_cloud", - "fields": [ - { - "name": "radius", + "name": "charged", "index": 8, - "type": "float", - "default_value": 3.0, + "type": "boolean", + "default_value": false, "bits": [] - }, + } + ] + }, + "WolfEntity": { + "parent": "TameableEntity", + "type": "wolf", + "translation_key": "entity.minecraft.wolf", + "fields": [ { - "name": "color", - "index": 9, - "type": "integer", - "default_value": 0, - "bits": [] - }, - { - "name": "waiting", - "index": 10, + "name": "begging", + "index": 19, "type": "boolean", "default_value": false, "bits": [] }, { - "name": "particle_id", - "index": 11, - "type": "particle", - "default_value": "entity_effect", + "name": "collar_color", + "index": 20, + "type": "integer", + "default_value": 14, + "bits": [] + }, + { + "name": "anger_time", + "index": 21, + "type": "integer", + "default_value": 0, "bits": [] } ] }, - "VindicatorEntity": { - "parent": "IllagerEntity", - "type": "vindicator", - "translation_key": "entity.minecraft.vindicator", + "ZoglinEntity": { + "parent": "HostileEntity", + "type": "zoglin", + "translation_key": "entity.minecraft.zoglin", + "fields": [ + { + "name": "baby", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "ZombieEntity": { + "parent": "HostileEntity", + "type": "zombie", + "translation_key": "entity.minecraft.zombie", + "fields": [ + { + "name": "baby", + "index": 16, + "type": "boolean", + "default_value": false, + "bits": [] + }, + { + "name": "zombie_type", + "index": 17, + "type": "integer", + "default_value": 0, + "bits": [] + }, + { + "name": "converting_in_water", + "index": 18, + "type": "boolean", + "default_value": false, + "bits": [] + } + ] + }, + "ZombieHorseEntity": { + "parent": "AbstractHorseEntity", + "type": "zombie_horse", + "translation_key": "entity.minecraft.zombie_horse", "fields": [] }, "ZombieVillagerEntity": { @@ -2426,11 +2435,17 @@ "type": "villager_data", "default_value": { "type": "plains", - "profession": "none", + "profession": "fisherman", "level": 1 }, "bits": [] } ] + }, + "ZombifiedPiglinEntity": { + "parent": "ZombieEntity", + "type": "zombified_piglin", + "translation_key": "entity.minecraft.zombified_piglin", + "fields": [] } } \ No newline at end of file diff --git a/extracted/packets.json b/extracted/packets.json new file mode 100644 index 0000000..78ea512 --- /dev/null +++ b/extracted/packets.json @@ -0,0 +1,709 @@ +{ + "serverbound": { + "handshaking": [ + { + "name": "HandshakeC2SPacket", + "id": 0 + } + ], + "play": [ + { + "name": "TeleportConfirmC2SPacket", + "id": 0 + }, + { + "name": "QueryBlockNbtC2SPacket", + "id": 1 + }, + { + "name": "UpdateDifficultyC2SPacket", + "id": 2 + }, + { + "name": "MessageAcknowledgmentC2SPacket", + "id": 3 + }, + { + "name": "CommandExecutionC2SPacket", + "id": 4 + }, + { + "name": "ChatMessageC2SPacket", + "id": 5 + }, + { + "name": "RequestChatPreviewC2SPacket", + "id": 6 + }, + { + "name": "ClientStatusC2SPacket", + "id": 7 + }, + { + "name": "ClientSettingsC2SPacket", + "id": 8 + }, + { + "name": "RequestCommandCompletionsC2SPacket", + "id": 9 + }, + { + "name": "ButtonClickC2SPacket", + "id": 10 + }, + { + "name": "ClickSlotC2SPacket", + "id": 11 + }, + { + "name": "CloseHandledScreenC2SPacket", + "id": 12 + }, + { + "name": "CustomPayloadC2SPacket", + "id": 13 + }, + { + "name": "BookUpdateC2SPacket", + "id": 14 + }, + { + "name": "QueryEntityNbtC2SPacket", + "id": 15 + }, + { + "name": "PlayerInteractEntityC2SPacket", + "id": 16 + }, + { + "name": "JigsawGeneratingC2SPacket", + "id": 17 + }, + { + "name": "KeepAliveC2SPacket", + "id": 18 + }, + { + "name": "UpdateDifficultyLockC2SPacket", + "id": 19 + }, + { + "name": "PositionAndOnGround", + "id": 20 + }, + { + "name": "Full", + "id": 21 + }, + { + "name": "LookAndOnGround", + "id": 22 + }, + { + "name": "OnGroundOnly", + "id": 23 + }, + { + "name": "VehicleMoveC2SPacket", + "id": 24 + }, + { + "name": "BoatPaddleStateC2SPacket", + "id": 25 + }, + { + "name": "PickFromInventoryC2SPacket", + "id": 26 + }, + { + "name": "CraftRequestC2SPacket", + "id": 27 + }, + { + "name": "UpdatePlayerAbilitiesC2SPacket", + "id": 28 + }, + { + "name": "PlayerActionC2SPacket", + "id": 29 + }, + { + "name": "ClientCommandC2SPacket", + "id": 30 + }, + { + "name": "PlayerInputC2SPacket", + "id": 31 + }, + { + "name": "PlayPongC2SPacket", + "id": 32 + }, + { + "name": "RecipeCategoryOptionsC2SPacket", + "id": 33 + }, + { + "name": "RecipeBookDataC2SPacket", + "id": 34 + }, + { + "name": "RenameItemC2SPacket", + "id": 35 + }, + { + "name": "ResourcePackStatusC2SPacket", + "id": 36 + }, + { + "name": "AdvancementTabC2SPacket", + "id": 37 + }, + { + "name": "SelectMerchantTradeC2SPacket", + "id": 38 + }, + { + "name": "UpdateBeaconC2SPacket", + "id": 39 + }, + { + "name": "UpdateSelectedSlotC2SPacket", + "id": 40 + }, + { + "name": "UpdateCommandBlockC2SPacket", + "id": 41 + }, + { + "name": "UpdateCommandBlockMinecartC2SPacket", + "id": 42 + }, + { + "name": "CreativeInventoryActionC2SPacket", + "id": 43 + }, + { + "name": "UpdateJigsawC2SPacket", + "id": 44 + }, + { + "name": "UpdateStructureBlockC2SPacket", + "id": 45 + }, + { + "name": "UpdateSignC2SPacket", + "id": 46 + }, + { + "name": "HandSwingC2SPacket", + "id": 47 + }, + { + "name": "SpectatorTeleportC2SPacket", + "id": 48 + }, + { + "name": "PlayerInteractBlockC2SPacket", + "id": 49 + }, + { + "name": "PlayerInteractItemC2SPacket", + "id": 50 + } + ], + "status": [ + { + "name": "QueryRequestC2SPacket", + "id": 0 + }, + { + "name": "QueryPingC2SPacket", + "id": 1 + } + ], + "login": [ + { + "name": "LoginHelloC2SPacket", + "id": 0 + }, + { + "name": "LoginKeyC2SPacket", + "id": 1 + }, + { + "name": "LoginQueryResponseC2SPacket", + "id": 2 + } + ] + }, + "clientbound": { + "handshaking": [], + "play": [ + { + "name": "EntitySpawnS2CPacket", + "id": 0 + }, + { + "name": "ExperienceOrbSpawnS2CPacket", + "id": 1 + }, + { + "name": "PlayerSpawnS2CPacket", + "id": 2 + }, + { + "name": "EntityAnimationS2CPacket", + "id": 3 + }, + { + "name": "StatisticsS2CPacket", + "id": 4 + }, + { + "name": "PlayerActionResponseS2CPacket", + "id": 5 + }, + { + "name": "BlockBreakingProgressS2CPacket", + "id": 6 + }, + { + "name": "BlockEntityUpdateS2CPacket", + "id": 7 + }, + { + "name": "BlockEventS2CPacket", + "id": 8 + }, + { + "name": "BlockUpdateS2CPacket", + "id": 9 + }, + { + "name": "BossBarS2CPacket", + "id": 10 + }, + { + "name": "DifficultyS2CPacket", + "id": 11 + }, + { + "name": "ChatPreviewS2CPacket", + "id": 12 + }, + { + "name": "ClearTitleS2CPacket", + "id": 13 + }, + { + "name": "CommandSuggestionsS2CPacket", + "id": 14 + }, + { + "name": "CommandTreeS2CPacket", + "id": 15 + }, + { + "name": "CloseScreenS2CPacket", + "id": 16 + }, + { + "name": "InventoryS2CPacket", + "id": 17 + }, + { + "name": "ScreenHandlerPropertyUpdateS2CPacket", + "id": 18 + }, + { + "name": "ScreenHandlerSlotUpdateS2CPacket", + "id": 19 + }, + { + "name": "CooldownUpdateS2CPacket", + "id": 20 + }, + { + "name": "ChatSuggestionsS2CPacket", + "id": 21 + }, + { + "name": "CustomPayloadS2CPacket", + "id": 22 + }, + { + "name": "PlaySoundIdS2CPacket", + "id": 23 + }, + { + "name": "HideMessageS2CPacket", + "id": 24 + }, + { + "name": "DisconnectS2CPacket", + "id": 25 + }, + { + "name": "EntityStatusS2CPacket", + "id": 26 + }, + { + "name": "ExplosionS2CPacket", + "id": 27 + }, + { + "name": "UnloadChunkS2CPacket", + "id": 28 + }, + { + "name": "GameStateChangeS2CPacket", + "id": 29 + }, + { + "name": "OpenHorseScreenS2CPacket", + "id": 30 + }, + { + "name": "WorldBorderInitializeS2CPacket", + "id": 31 + }, + { + "name": "KeepAliveS2CPacket", + "id": 32 + }, + { + "name": "ChunkDataS2CPacket", + "id": 33 + }, + { + "name": "WorldEventS2CPacket", + "id": 34 + }, + { + "name": "ParticleS2CPacket", + "id": 35 + }, + { + "name": "LightUpdateS2CPacket", + "id": 36 + }, + { + "name": "GameJoinS2CPacket", + "id": 37 + }, + { + "name": "MapUpdateS2CPacket", + "id": 38 + }, + { + "name": "SetTradeOffersS2CPacket", + "id": 39 + }, + { + "name": "MoveRelative", + "id": 40 + }, + { + "name": "RotateAndMoveRelative", + "id": 41 + }, + { + "name": "Rotate", + "id": 42 + }, + { + "name": "VehicleMoveS2CPacket", + "id": 43 + }, + { + "name": "OpenWrittenBookS2CPacket", + "id": 44 + }, + { + "name": "OpenScreenS2CPacket", + "id": 45 + }, + { + "name": "SignEditorOpenS2CPacket", + "id": 46 + }, + { + "name": "PlayPingS2CPacket", + "id": 47 + }, + { + "name": "CraftFailedResponseS2CPacket", + "id": 48 + }, + { + "name": "PlayerAbilitiesS2CPacket", + "id": 49 + }, + { + "name": "MessageHeaderS2CPacket", + "id": 50 + }, + { + "name": "ChatMessageS2CPacket", + "id": 51 + }, + { + "name": "EndCombatS2CPacket", + "id": 52 + }, + { + "name": "EnterCombatS2CPacket", + "id": 53 + }, + { + "name": "DeathMessageS2CPacket", + "id": 54 + }, + { + "name": "PlayerListS2CPacket", + "id": 55 + }, + { + "name": "LookAtS2CPacket", + "id": 56 + }, + { + "name": "PlayerPositionLookS2CPacket", + "id": 57 + }, + { + "name": "UnlockRecipesS2CPacket", + "id": 58 + }, + { + "name": "EntitiesDestroyS2CPacket", + "id": 59 + }, + { + "name": "RemoveEntityStatusEffectS2CPacket", + "id": 60 + }, + { + "name": "ResourcePackSendS2CPacket", + "id": 61 + }, + { + "name": "PlayerRespawnS2CPacket", + "id": 62 + }, + { + "name": "EntitySetHeadYawS2CPacket", + "id": 63 + }, + { + "name": "ChunkDeltaUpdateS2CPacket", + "id": 64 + }, + { + "name": "SelectAdvancementTabS2CPacket", + "id": 65 + }, + { + "name": "ServerMetadataS2CPacket", + "id": 66 + }, + { + "name": "OverlayMessageS2CPacket", + "id": 67 + }, + { + "name": "WorldBorderCenterChangedS2CPacket", + "id": 68 + }, + { + "name": "WorldBorderInterpolateSizeS2CPacket", + "id": 69 + }, + { + "name": "WorldBorderSizeChangedS2CPacket", + "id": 70 + }, + { + "name": "WorldBorderWarningTimeChangedS2CPacket", + "id": 71 + }, + { + "name": "WorldBorderWarningBlocksChangedS2CPacket", + "id": 72 + }, + { + "name": "SetCameraEntityS2CPacket", + "id": 73 + }, + { + "name": "UpdateSelectedSlotS2CPacket", + "id": 74 + }, + { + "name": "ChunkRenderDistanceCenterS2CPacket", + "id": 75 + }, + { + "name": "ChunkLoadDistanceS2CPacket", + "id": 76 + }, + { + "name": "PlayerSpawnPositionS2CPacket", + "id": 77 + }, + { + "name": "ChatPreviewStateChangeS2CPacket", + "id": 78 + }, + { + "name": "ScoreboardDisplayS2CPacket", + "id": 79 + }, + { + "name": "EntityTrackerUpdateS2CPacket", + "id": 80 + }, + { + "name": "EntityAttachS2CPacket", + "id": 81 + }, + { + "name": "EntityVelocityUpdateS2CPacket", + "id": 82 + }, + { + "name": "EntityEquipmentUpdateS2CPacket", + "id": 83 + }, + { + "name": "ExperienceBarUpdateS2CPacket", + "id": 84 + }, + { + "name": "HealthUpdateS2CPacket", + "id": 85 + }, + { + "name": "ScoreboardObjectiveUpdateS2CPacket", + "id": 86 + }, + { + "name": "EntityPassengersSetS2CPacket", + "id": 87 + }, + { + "name": "TeamS2CPacket", + "id": 88 + }, + { + "name": "ScoreboardPlayerUpdateS2CPacket", + "id": 89 + }, + { + "name": "SimulationDistanceS2CPacket", + "id": 90 + }, + { + "name": "SubtitleS2CPacket", + "id": 91 + }, + { + "name": "WorldTimeUpdateS2CPacket", + "id": 92 + }, + { + "name": "TitleS2CPacket", + "id": 93 + }, + { + "name": "TitleFadeS2CPacket", + "id": 94 + }, + { + "name": "PlaySoundFromEntityS2CPacket", + "id": 95 + }, + { + "name": "PlaySoundS2CPacket", + "id": 96 + }, + { + "name": "StopSoundS2CPacket", + "id": 97 + }, + { + "name": "GameMessageS2CPacket", + "id": 98 + }, + { + "name": "PlayerListHeaderS2CPacket", + "id": 99 + }, + { + "name": "NbtQueryResponseS2CPacket", + "id": 100 + }, + { + "name": "ItemPickupAnimationS2CPacket", + "id": 101 + }, + { + "name": "EntityPositionS2CPacket", + "id": 102 + }, + { + "name": "AdvancementUpdateS2CPacket", + "id": 103 + }, + { + "name": "EntityAttributesS2CPacket", + "id": 104 + }, + { + "name": "EntityStatusEffectS2CPacket", + "id": 105 + }, + { + "name": "SynchronizeRecipesS2CPacket", + "id": 106 + }, + { + "name": "SynchronizeTagsS2CPacket", + "id": 107 + } + ], + "status": [ + { + "name": "QueryResponseS2CPacket", + "id": 0 + }, + { + "name": "QueryPongS2CPacket", + "id": 1 + } + ], + "login": [ + { + "name": "LoginDisconnectS2CPacket", + "id": 0 + }, + { + "name": "LoginHelloS2CPacket", + "id": 1 + }, + { + "name": "LoginSuccessS2CPacket", + "id": 2 + }, + { + "name": "LoginCompressionS2CPacket", + "id": 3 + }, + { + "name": "LoginQueryRequestS2CPacket", + "id": 4 + } + ] + } +} \ No newline at end of file diff --git a/extractor/build.gradle b/extractor/build.gradle index 8712c2f..645789a 100644 --- a/extractor/build.gradle +++ b/extractor/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'fabric-loom' version '0.12-SNAPSHOT' + id 'fabric-loom' version '1.0-SNAPSHOT' } sourceCompatibility = JavaVersion.VERSION_17 @@ -35,3 +35,9 @@ tasks.withType(JavaCompile).configureEach { java { withSourcesJar() } + +jar { + from("LICENSE") { + rename { "${it}_${project.archivesBaseName}"} + } +} diff --git a/extractor/gradle.properties b/extractor/gradle.properties index 2a1e67a..20e9fd5 100644 --- a/extractor/gradle.properties +++ b/extractor/gradle.properties @@ -3,9 +3,9 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check these on https://fabricmc.net/develop - minecraft_version=1.19 - yarn_mappings=1.19+build.4 - loader_version=0.14.8 + minecraft_version=1.19.2 + yarn_mappings=1.19.2+build.8 + loader_version=0.14.9 # Mod Properties mod_version = 1.0.0 @@ -13,4 +13,4 @@ org.gradle.jvmargs=-Xmx1G archives_base_name = valence-extractor # Dependencies - fabric_version=0.57.0+1.19 + fabric_version=0.60.0+1.19.2 diff --git a/extractor/src/main/java/dev/_00a/valence_extractor/extractors/Packets.java b/extractor/src/main/java/dev/_00a/valence_extractor/extractors/Packets.java index fcfeda6..73da2d4 100644 --- a/extractor/src/main/java/dev/_00a/valence_extractor/extractors/Packets.java +++ b/extractor/src/main/java/dev/_00a/valence_extractor/extractors/Packets.java @@ -17,7 +17,7 @@ public class Packets implements Main.Extractor { } @Override - public JsonElement extract() throws Exception { + public JsonElement extract() { var packetsJson = new JsonObject(); for (var side : NetworkSide.values()) { diff --git a/src/client.rs b/src/client.rs index 074eb33..89a2eb4 100644 --- a/src/client.rs +++ b/src/client.rs @@ -26,10 +26,9 @@ use crate::player_textures::SignedPlayerTextures; use crate::protocol_inner::packets::c2s::play::{ C2sPlayPacket, DiggingStatus, InteractKind, PlayerCommandId, }; -pub use crate::protocol_inner::packets::s2c::play::TitleAnimationTimes; +pub use crate::protocol_inner::packets::s2c::play::TitleFade; use crate::protocol_inner::packets::s2c::play::{ - BiomeRegistry, ChatType, ChatTypeChat, ChatTypeNarration, ChatTypeRegistry, - ChatTypeRegistryEntry, ChunkLoadDistance, ChunkRenderDistanceCenter, ClearTitles, + BiomeRegistry, ChatTypeRegistry, ChunkLoadDistance, ChunkRenderDistanceCenter, ClearTitles, DimensionTypeRegistry, DimensionTypeRegistryEntry, Disconnect, EntitiesDestroy, EntityAnimation, EntityAttributes, EntityAttributesProperty, EntityPosition, EntitySetHeadYaw, EntityStatus, EntityTrackerUpdate, EntityVelocityUpdate, GameJoin, GameMessage, @@ -450,12 +449,12 @@ impl Client { /// A title is a large piece of text displayed in the center of the screen /// which may also include a subtitle underneath it. The title /// can be configured to fade in and out using the - /// [`TitleAnimationTimes`] struct. + /// [`TitleFade`] struct. pub fn set_title( &mut self, title: impl Into, subtitle: impl Into, - animation: impl Into>, + animation: impl Into>, ) { let title = title.into(); let subtitle = subtitle.into(); @@ -654,6 +653,7 @@ impl Client { } C2sPlayPacket::QueryBlockNbt(_) => {} C2sPlayPacket::UpdateDifficulty(_) => {} + C2sPlayPacket::MessageAcknowledgment(_) => {} C2sPlayPacket::CommandExecution(_) => {} C2sPlayPacket::ChatMessage(p) => self.events.push_back(ClientEvent::ChatMessage { message: p.message.0, @@ -1411,16 +1411,7 @@ fn make_registry_codec(shared: &SharedServer) -> RegistryCodec { }, chat_type_registry: ChatTypeRegistry { kind: ident!("chat_type"), - value: vec![ChatTypeRegistryEntry { - name: ident!("system"), - id: 0, - element: ChatType { - chat: ChatTypeChat {}, - narration: ChatTypeNarration { - priority: "system".into(), - }, - }, - }], + value: Vec::new(), }, } } diff --git a/src/lib.rs b/src/lib.rs index b7884c4..1fdceb5 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -161,10 +161,10 @@ pub mod protocol { } /// The Minecraft protocol version this library currently targets. -pub const PROTOCOL_VERSION: i32 = 759; +pub const PROTOCOL_VERSION: i32 = 760; /// The name of the Minecraft version this library currently targets, e.g. /// "1.8.2" -pub const VERSION_NAME: &str = "1.19"; +pub const VERSION_NAME: &str = "1.19.2"; /// The namespace for this library used internally for /// [identifiers](crate::ident::Ident). diff --git a/src/protocol_inner/packets.rs b/src/protocol_inner/packets.rs index e5c2b84..c2d07d8 100644 --- a/src/protocol_inner/packets.rs +++ b/src/protocol_inner/packets.rs @@ -380,7 +380,7 @@ def_struct! { } def_struct! { - SignatureData { + PublicKeyData { timestamp: u64, public_key: Vec, signature: Vec, diff --git a/src/protocol_inner/packets/c2s.rs b/src/protocol_inner/packets/c2s.rs index d316fb8..735183f 100644 --- a/src/protocol_inner/packets/c2s.rs +++ b/src/protocol_inner/packets/c2s.rs @@ -55,7 +55,8 @@ pub mod login { def_struct! { LoginStart { username: BoundedString<3, 16>, - sig_data: Option, + sig_data: Option, + profile_id: Option, } } @@ -121,6 +122,19 @@ pub mod play { } } + def_struct! { + MessageAcknowledgment { + entry: Option, + } + } + + def_struct! { + MessageAcknowledgmentEntry { + profile_id: Uuid, + signature: Vec, + } + } + def_struct! { CommandExecution { command: String, // TODO: bounded? @@ -668,53 +682,54 @@ pub mod play { TeleportConfirm = 0, QueryBlockNbt = 1, UpdateDifficulty = 2, - CommandExecution = 3, - ChatMessage = 4, - RequestChatPreview = 5, - ClientStatus = 6, - ClientSettings = 7, - RequestCommandCompletion = 8, - ButtonClick = 9, - ClickSlot = 10, - CloseHandledScreen = 11, - CustomPayload = 12, - BookUpdate = 13, - QueryEntityNbt = 14, - PlayerInteractEntity = 15, - JigsawGenerate = 16, - KeepAlive = 17, - UpdateDifficultyLock = 18, - MovePlayerPosition = 19, - MovePlayerPositionAndRotation = 20, - MovePlayerRotation = 21, - MovePlayerOnGround = 22, - MoveVehicle = 23, - BoatPaddleState = 24, - PickFromInventory = 25, - CraftRequest = 26, - UpdatePlayerAbilities = 27, - PlayerAction = 28, - PlayerCommand = 29, - PlayerInput = 30, - PlayPong = 31, - RecipeBookChangeSettings = 32, - RecipeBookSeenRecipe = 33, - RenameItem = 34, - ResourcePackStatus = 35, - AdvancementTab = 36, - SelectMerchantTrade = 37, - UpdateBeacon = 38, - UpdateSelectedSlot = 39, - UpdateCommandBlock = 40, - UpdateCommandBlockMinecart = 41, - UpdateCreativeModeSlot = 42, - UpdateJigsaw = 43, - UpdateStructureBlock = 44, - UpdateSign = 45, - HandSwing = 46, - SpectatorTeleport = 47, - PlayerInteractBlock = 48, - PlayerInteractItem = 49, + MessageAcknowledgment = 3, + CommandExecution = 4, + ChatMessage = 5, + RequestChatPreview = 6, + ClientStatus = 7, + ClientSettings = 8, + RequestCommandCompletion = 9, + ButtonClick = 10, + ClickSlot = 11, + CloseHandledScreen = 12, + CustomPayload = 13, + BookUpdate = 14, + QueryEntityNbt = 15, + PlayerInteractEntity = 16, + JigsawGenerate = 17, + KeepAlive = 18, + UpdateDifficultyLock = 19, + MovePlayerPosition = 20, + MovePlayerPositionAndRotation = 21, + MovePlayerRotation = 22, + MovePlayerOnGround = 23, + MoveVehicle = 24, + BoatPaddleState = 25, + PickFromInventory = 26, + CraftRequest = 27, + UpdatePlayerAbilities = 28, + PlayerAction = 29, + PlayerCommand = 30, + PlayerInput = 31, + PlayPong = 32, + RecipeBookChangeSettings = 33, + RecipeBookSeenRecipe = 34, + RenameItem = 35, + ResourcePackStatus = 36, + AdvancementTab = 37, + SelectMerchantTrade = 38, + UpdateBeacon = 39, + UpdateSelectedSlot = 40, + UpdateCommandBlock = 41, + UpdateCommandBlockMinecart = 42, + UpdateCreativeModeSlot = 43, + UpdateJigsaw = 44, + UpdateStructureBlock = 45, + UpdateSign = 46, + HandSwing = 47, + SpectatorTeleport = 48, + PlayerInteractBlock = 49, + PlayerInteractItem = 50, } } } diff --git a/src/protocol_inner/packets/s2c.rs b/src/protocol_inner/packets/s2c.rs index 0989f79..cc759ee 100644 --- a/src/protocol_inner/packets/s2c.rs +++ b/src/protocol_inner/packets/s2c.rs @@ -543,11 +543,11 @@ pub mod play { def_struct! { ChatMessage { + // TODO: more 1.19 stuff. message: Text, /// Index into the chat type registry kind: VarInt, sender: Uuid, - // TODO more fields } } @@ -569,7 +569,7 @@ pub mod play { game_mode: GameMode, ping: VarInt, display_name: Option, - sig_data: Option, + sig_data: Option, } } @@ -694,7 +694,7 @@ pub mod play { def_struct! { #[derive(Copy, PartialEq, Eq)] - TitleAnimationTimes { + TitleFade { /// Ticks to spend fading in. fade_in: u32, /// Ticks to keep the title displayed. @@ -765,37 +765,37 @@ pub mod play { BlockUpdate = 9, BossBar = 10, ClearTitles = 13, - Disconnect = 23, - EntityStatus = 24, - UnloadChunk = 26, - GameStateChange = 27, - KeepAlive = 30, - ChunkData = 31, - GameJoin = 35, - MoveRelative = 38, - RotateAndMoveRelative = 39, - Rotate = 40, - ChatMessage = 48, - UpdatePlayerList = 52, - PlayerPositionLook = 54, - EntitiesDestroy = 56, - PlayerRespawn = 59, - EntitySetHeadYaw = 60, - ChunkSectionUpdate = 61, - UpdateSelectedSlot = 71, - ChunkRenderDistanceCenter = 72, - ChunkLoadDistance = 73, - PlayerSpawnPosition = 74, - EntityTrackerUpdate = 77, - EntityVelocityUpdate = 79, - UpdateSubtitle = 88, - WorldTimeUpdate = 89, - UpdateTitle = 90, - TitleAnimationTimes = 91, - GameMessage = 95, - PlayerListHeaderFooter = 96, - EntityPosition = 99, - EntityAttributes = 101, + Disconnect = 25, + EntityStatus = 26, + UnloadChunk = 28, + GameStateChange = 29, + KeepAlive = 32, + ChunkData = 33, + GameJoin = 37, + MoveRelative = 40, + RotateAndMoveRelative = 41, + Rotate = 42, + ChatMessage = 51, + UpdatePlayerList = 55, + PlayerPositionLook = 57, + EntitiesDestroy = 59, + PlayerRespawn = 62, + EntitySetHeadYaw = 63, + ChunkSectionUpdate = 64, + UpdateSelectedSlot = 74, + ChunkRenderDistanceCenter = 75, + ChunkLoadDistance = 76, + PlayerSpawnPosition = 77, + EntityTrackerUpdate = 80, + EntityVelocityUpdate = 82, + UpdateSubtitle = 91, + WorldTimeUpdate = 92, + UpdateTitle = 93, + TitleFade = 94, + GameMessage = 98, + PlayerListHeaderFooter = 99, + EntityPosition = 102, + EntityAttributes = 104, } } } diff --git a/src/server.rs b/src/server.rs index 1a9ffb8..c7c560a 100644 --- a/src/server.rs +++ b/src/server.rs @@ -76,7 +76,6 @@ pub struct Server { /// be shared between threads. /// /// [update]: crate::config::Config::update - pub struct SharedServer(Arc>); impl Clone for SharedServer { @@ -636,7 +635,8 @@ async fn handle_login( let LoginStart { username: BoundedString(username), - sig_data: _, // TODO + sig_data: _, // TODO + profile_id: _, // TODO } = c.dec.read_packet().await?; ensure!(valid_username(&username), "invalid username '{username}'");