Tutorials/Villager farming

Purpose
Farming villagers can be beneficial for a lot of reasons. If the player has a villager trading hall, then the player will need to fill it with villagers and replace the ones that the player discards. It is difficult to do this through kidnapping villagers alone, so having an artificial breeder can be very helpful.

Another use is for an iron golem farm as they will only work with a certain number of villagers (10 per golem). For example, if the player wanted to be able to store ten golems in the same village at the same time, the player will need 100 villagers. That is a lot of villagers, and it is only possible in the practical sense if the player builds a villager breeder beforehand.

Mechanics
Unlike for other breedable mobs, villager breeding cannot be forced. However, the player can provide for ideal accommodations to make the process efficient. The decision for a villager to show heart particles depends on how “willing” a villager is to mate. If two villagers nearby are willing at the same time, they will spawn a baby villager in between them, like other animals. There are many factors of willingness, but it most importantly depends on the food that the player feeds the parents. To feed villagers, the player must throw the food to them, and let them obtain it in their inventory. Below is a table that tells the player approximately how much food they must give to a villager before they are willing.

Willingness can be increased if the player trades with the villagers. Also, a farmer villager will throw excess food to other villagers. So, if the farmer has free access to crops, and they are within range of a village, then that village will be able to support the autonomous feeding of villagers.

There are more parameters to willingness than just the food villagers have. Villagers take a census of the population of their village about every minute. They will only become willing if the population is less than 100%. This depends on the number of beds. There must be one bed for each villager. If there is an excess of beds, villager breeding will commence. The population is counted based on whether the villagers are within 5 blocks of a door that is recognized as a valid house, in spherical distance. An infinite villager breeder can consist of 6 doors that are more than 5 blocks away from the breeding villagers, with a villager nearby to register the doors to a village. By placing the doors farther than 5 blocks away from the breeder, the villagers will think there is only the one detector villager in a 6-door village. Using the 35% rule shows that the villagers will try to mate until there are 2 villagers in that village. No other villagers can get in range of the doors, however, so mating will occur continuously and endlessly. When using this method, it's recommended to have a way to stop the villagers from breeding, so that they don't produce so many villagers that the game starts to lag.

As of the village and pillage update, villager breeding has changed. Now, the amount of villagers you want to spawn, is set by how many beds are placed. Say you want 300 villagers, you need 300 beds. To breed, said villager must be fed 3 bread.

Setting Up
The area around a villager breeder must be carefully scoured to ensure the breeder works correctly. The village must be small, so the player must ensure that no other villages exist within an 80-block spherical radius. No matter what the player builds, at least three villagers will be needed to initiate the process. Here are what roles they will play in a villager farm:
 * 1) Farmer - collect food from nearby crops to feed the breeder villagers, can be any brown-coated villager
 * 2) Breeder - collects food from the farmer and they both do the breeding work
 * 3) Detector - registers the nearby beds (doors at 1.13 or earlier) at a village so that breeding can occur

In some cases, the farmer will be too busy collecting crops. If this is the case, it may take longer to get baby villagers. Increasing the amount of breedable villagers within the farm (by keeping bred babies inside), will help solving that problem as well as increase breeding speed in general.

Designs
Here are nine different designs for villager farms. They all produce an infinite number of villagers although the villagers in the second, eighth, and ninth videos require food in order to breed. (For the rest, the food is already worked into the design.) The first design does not work on bedrock edition. The next five designs are currently working on all platforms and versions running 1.14 or its platform equivalent. The following three no longer work due to the requirement for beds to breed villagers. The second, third, and fourth designs are confirmed to be working on Bedrock Edition 1.11, PS4 edition 1.9, and all other equivalent 1.14 systems.

ImpulseSV's Design
Works in Java 1.15.2

Jay365's Design
Works in Java 1.14 and Bedrock 1.11

Avomance’s Design
Works in updated 1.14 for Java & Bedrock 1.11.0

Yash Jethwani's Design
Works in Java 1.14.4

Bmcdee’s Design
Working in 1.14 Java, 1.11 Bedrock

Dis_CyaN's Design
Works in 1.14.4 Java edition

The following designs are not currently working in the latest version of Minecraft, although they still work in version 1.13 and below.

Frilioth's Design
Note: as of 1.14+, the villagers that will be breeding will need to be surrounded by beds as opposed to doors. On the same level as the beds is a water source block, beneath which is a fence post surrounded by solid blocks. You then give the villagers enough food to make them willing. The baby villagers fall through the fence post and hypothetically into a water stream leading to a villager trading hall with workstations so you can pick their profession.