{
  "format_version": "1.16.0",
  "minecraft:entity": {
    "description": {
      "identifier": "minecraft:player",
      "is_spawnable": true,
      "is_summonable": true,
      "is_experimental": false,
      "runtime_identifier": "minecraft:player"
    },
    
		"component_groups": {
			"despawn": {
				"minecraft:instant_despawn": {}
			},
			"baby": {
				"minecraft:is_baby": {},
				"minecraft:scale": {
					"value": 0.3
				},
				"minecraft:attack": {
					"damage": 5
				},
				"minecraft:damage_sensor": {
					"triggers": [
						{
							"cause": "all",
							"damage_multiplier": 2
						}
					]
				},
				"minecraft:movement": {
					"max": 0.075
				}
			},
			"power_hypnotized": {
				"minecraft:transformation": {
					"into": "gpvz:buckethead_mummy<normal_hypnotized>"
				}
			},
			"costume_hypnotized": {
				"minecraft:transformation": {
					"into": "gpvz:gargantuar<power_hypnotized>"
				}
			},
			"hypnotized": {
				"minecraft:is_tamed": {},
				"minecraft:type_family": {
					"family": [
						"player",
						"villager",
						"mob"
					]
				},
				"minecraft:damage_sensor": {
					"triggers": [
						{
							"on_damage": {
								"filters": {
									"any_of": [
										{
											"test": "is_family",
											"subject": "damager",
											"value": "zombie"
										}
									]
								}
							},
							"damage_multiplier": 0.9
						}
					]
				},
				"minecraft:behavior.nearest_attackable_target": {
					"priority": 2,
					"must_see": true,
					"reselect_targets": true,
					"within_radius": 25.0,
					"must_see_forget_duration": 17.0,
					"entity_types": [
						{
							"filters": {
								"any_of": [
									{
										"test": "is_family",
										"subject": "other",
										"value": "monster"
									}
								]
							},
							"max_dist": 35
						}
					]
				}
			},
			"hate_garlic": {
				"minecraft:behavior.avoid_mob_type": {
					"max_dist": 1,
					"max_flee": 3,
					"walk_speed_multiplier": 1,
					"sprint_speed_multiplier": 1,
					"probability_per_strength": 1,
					"ignore_visibility": false,
					"entity_types": [
						{
							"filters": {
								"test": "is_family",
								"subject": "other",
								"value": "garlic"
							}
						}
					],
					"remove_target": true
				}
			},
			"add_resistance": {
				"minecraft:knockback_resistance": {
					"value": 1
				}
			},
			"remove_resistance": {
				"minecraft:knockback_resistance": {
					"value": 0
				}
			}
		},
		"components": {
			"minecraft:environment_sensor": {
				"triggers": [
					{
						"event": "remove_resistance",
						"target": "self",
						"filters": {
							"test": "on_ground",
							"subject": "self",
							"operator": "not",
							"value": true
						}
					},
					{
						"event": "add_resistance",
						"target": "self",
						"filters": {
							"test": "on_ground",
							"subject": "self",
							"operator": "equals",
							"value": true
						}
					}
				]
			},
			"minecraft:skin_id": {
				"value": 0
			},
			"minecraft:variant": {
				"value": 0
			},
			"minecraft:mark_variant": {
				"value": 0
			},
			"minecraft:scale": {
				"value": 0.85
			},
			"minecraft:nameable": {},
			"minecraft:type_family": {
				"family": [
					"zombie",
					"undead",
					"monster",
					"eatable",
					"S",
					"mob"
				]
			},
			"minecraft:collision_box": {
				"width": 0.6,
				"height": 1.9
			},
			"minecraft:movement": {
				"max": 0.15
			},
			"minecraft:underwater_movement": {
				"value": 0.10
			},
			"minecraft:behavior.mount_pathing": {
				"priority": 2,
				"speed_multiplier": 1.25,
				"target_dist": 0.0,
				"track_target": true
			},
			"minecraft:movement.basic": {},
			"minecraft:navigation.walk": {
				"is_amphibious": true,
				"can_pass_doors": true,
				"can_walk": true,
				"can_jump": true,
				"can_break_doors": true
			},
			"minecraft:jump.static": {},
			"minecraft:can_climb": {},
			"minecraft:health": {
				"value": 38,
				"max": 38
			},
			"minecraft:hurt_on_condition": {
				"damage_conditions": [
					{
						"filters": {
							"test": "in_lava",
							"subject": "self",
							"operator": "==",
							"value": true
						},
						"cause": "lava",
						"damage_per_tick": 4
					}
				]
			},
			"minecraft:breathable": {
				"total_supply": 15,
				"suffocate_time": 0,
				"breathes_air": true,
				"breathes_water": true
			},
			"minecraft:attack": {
				"damage": 10
			},
			"minecraft:annotation.break_door": {},
			"minecraft:despawn": {
				"despawn_from_distance": {
					"max_distance": 50,
					"min_distance": 40
				},
				"despawn_from_simulation_edge": true,
				"filters": {
					"any_of": [
						{
							"test": "is_difficulty",
							"value": "peaceful"
						},
						{
							"test": "distance_to_nearest_player",
							"subject": "self",
							"operator": ">",
							"value": 50
						}
					]
				}
			},
			"minecraft:behavior.summon_entity": {
				"priority": 1,
				"summon_choices": [
					{
						"max_activation_range": 16,
						"min_activation_range": 0,
						"weight": 1,
						"cooldown_time": 10,
						"do_casting": true,
						"cast_duration": 2,
						"sequence": [
							{
								"shape": "circle",
								"target": "self",
								"sound_event": "plop",
								"base_delay": 2,
								"delay_per_summon": 0,
								"num_entities_spawned": 1,
								"entity_type": "gpvz:egypt_tombstone",
								"size": 5,
								"entity_lifespan": 60
							}
						]
					}
				]
			},
			"minecraft:behavior.melee_attack": {
				"priority": 3
			},
			"minecraft:behavior.random_stroll": {
				"priority": 7,
				"speed_multiplier": 1
			},
			"minecraft:behavior.look_at_player": {
				"priority": 8,
				"look_distance": 6,
				"probability": 0.02
			},
			"minecraft:behavior.random_look_around": {
				"priority": 9
			},
			"minecraft:follow_range": {
				"value": 35,
				"max": 35
			},
			"minecraft:behavior.nearest_attackable_target": {
				"priority": 2,
				"must_see": true,
				"reselect_targets": true,
				"within_radius": 25.0,
				"must_see_forget_duration": 17.0,
				"entity_types": [
					{
						"filters": {
							"any_of": [
								{
									"test": "is_family",
									"subject": "other",
									"value": "player"
								},
								{
									"test": "is_family",
									"subject": "other",
									"value": "plants"
								},
								{
									"test": "is_family",
									"subject": "other",
									"value": "plant"
								},
								{
									"test": "is_family",
									"subject": "other",
									"value": "snowgolem"
								},
								{
									"test": "is_family",
									"subject": "other",
									"value": "irongolem"
								}
							]
						},
						"max_dist": 35
					},
					{
						"filters": {
							"any_of": [
								{
									"test": "is_family",
									"subject": "other",
									"value": "villager"
								},
								{
									"test": "is_family",
									"subject": "other",
									"value": "wandering_trader"
								}
							]
						},
						"max_dist": 35,
						"must_see": false
					}
				]
			},
			"minecraft:physics": {},
			"minecraft:pushable": {
				"is_pushable": true,
				"is_pushable_by_piston": true
			},
			"minecraft:conditional_bandwidth_optimization": {}
		},
		"events": {
			"despawn": {
				"add": {
					"component_groups": [
						"despawn"
					]
				}
			},
			"add_resistance":{
				"add": {
					"component_groups": [
						"add_resistance"
					]
				},
				"remove": {
					"component_groups": [
						"remove_resistance"
					]
				}
			},
			"remove_resistance":{
				"remove": {
					"component_groups": [
						"add_resistance"
					]
				},
				"add": {
					"component_groups": [
						"remove_resistance"
					]
				}
			},
			"hate_garlic": {
				"add": {
					"component_groups": [
						"hate_garlic"
					]
				},
				"queue_command": {
					"command": "playsound zombie.hate.garlic @a ~ ~ ~"
				}
			},
			"remove_hate": {
				"remove": {
					"component_groups": [
						"hate_garlic"
					]
				}
			},
			"hypnotized": {
				"add": {
					"component_groups": [
						"hypnotized"
					]
				},
				"queue_command": {
					"command": "playsound plant.hypno.attack @a ~ ~ ~"
				}
			},
			"power_hypnotized": {
				"add": {
					"component_groups": [
						"power_hypnotized"
					]
				}
			},
			"costume_hypnotized": {
				"add": {
					"component_groups": [
						"costume_hypnotized"
					]
				}
			},
			"minecraft:as_baby": {
				"add": {
					"component_groups": [
						"baby"
					]
				}
			}
		}
	}
}
with summary of components and how it works