SpawnPotentials: Optional. List of possible entities to spawn. If this tag does not exist, but SpawnData exists, Minecraft generates it the next time the spawner tries to spawn an entity. The generated list contains a single entry derived from the EntityId and SpawnData tags.
: A potential future spawn. After the spawner makes an attempt at spawning, it chooses one of these entries at random and uses it to prepare for the next spawn.
Entity: An entity. Overwrites SpawnData when preparing the next spawn, including the entity id.
Weight: The chance that this spawn gets picked in comparison to other spawn weights. Must be non-negative and at least 1.
SpawnData: Contains tags to copy to the next spawned entity(s) after spawning. Any of the entity or mob tags may be used. If a spawner specifies any of these tags, almost all variable data such as mob equipment, villager profession, sheep wool color, etc., are not automatically generated, and must also be manually specified (that this does not apply to position data, which are randomized as normal unless Pos is specified. Similarly, unless Size and Health are specified for a Slime or Magma Cube, these are still randomized). This, together with EntityId, also determines the appearance of the miniature entity spinning in the spawner cage. This tag is optional: if it does not exist, the next spawned entity uses the default vanilla spawning properties for this mob, including potentially randomized armor (this is true even if SpawnPotentials does exist). Warning: If SpawnPotentials exists, this tag gets overwritten after the next spawning attempt: see above for more details.
SpawnCount: How many mobs to attempt to spawn each time. Requires the MinSpawnDelay property to also be set.
SpawnRange: The radius around which the spawner attempts to place mobs randomly. The spawn area is square, includes the block the spawner is in, and is centered around the spawner's x,z coordinates - not the spawner itself. It is 2 blocks high, centered around the spawner's y coordinate (its bottom), allowing mobs to spawn as high as its top surface and as low as 1 block below its bottom surface. Vertical spawn coordinates are integers, while horizontal coordinates are floating point and weighted toward values near the spawner itself. Default value is 4.
Delay: Ticks until next spawn. If 0, it spawns immediately when a player enters its range. If set to -1 (this state never occurs in a natural spawner; it seems to be a feature accessed only via NBT editing), the spawner resets its Delay, and (if SpawnPotentials exist) EntityID and SpawnData as though it had just completed a successful spawn cycle, immediately when a player enters its range. Setting Delay to -1 can be useful if the player wants the game to properly randomize the spawner's Delay, EntityID, and SpawnData, rather than starting with pre-defined values.
MinSpawnDelay: The minimum random delay for the next spawn delay. May be equal to MaxSpawnDelay. Requires the SpawnCount property to also be set, otherwise it defaults to 0.
MaxSpawnDelay: The maximum random delay for the next spawn delay. Requires the MinSpawnDelay and SpawnCount properties to also be set.
MaxNearbyEntities: Overrides the maximum number of nearby (within a box of spawnrange*2+1 × spawnrange*2+1 × 8 centered around the spawner block) entities whose IDs match this spawner's entity ID. This is relative to a mob's hitbox, not its physical position. Also, all entities within all chunk sections (16×16×16 cubes) overlapped by this box are tested for their ID and hitbox overlap, rather than just entities within the box, meaning that a large amount of entities outside the box (or within it, of course) can cause substantial lag.
RequiredPlayerRange: Overrides the block radius of the sphere of activation by players for this spawner. For every gametick, a spawner checks all players in the current world to test whether a player is within this sphere. Requires the MaxNearbyEntities property to also be set.