Hi, my name is Cabzki, and I would like to share with you my observations regarding the new villagers for Minecraft 1.14.
I made this because I was trying to make a Villager Trading hall in my world, but failed to do so. That prompted me to study the villager behaviors. I would like to stress that all information I have put down below are my own observations, so some information here may not be 100% correct. Also, this one focuses on the villager behavior regarding their jobs (So nothing about breeding and/or iron farms). Here we go!
Points below were tested on Minecraft 1.14.1.
• You can check for a villager's job site and bed with the command /data get entity <x> Brain. Look at a specific villager and type the command. The value of <x> should appear in the autocomplete if you look at it. Normally the value is a string of numbers and letters.
• Villagers can "see" a job site if they can find a path to it. They will try to go to a block beside the job site or stand on the job site block itself. The job site can be 1 block above from where they are standing. 2 blocks above won't work since they can't get to a block beside the job site (Unless there is a path). They can access a job site regardless of the block above it. (It can be an air/solid/transparent block). See this image for an example.
• If a villager's chosen job site is 1 block above, they will be able to see it, but not use it. That means they won't be able to stock their supplies.
• You can lock a villager's profession(trades) by trading with them at least once to give them experience. You can remove their job site, but they won't go back to being jobless. They won't be able to restock their trades if you take it away though. Example here. They will also not accept any other job sites that does not correspond to their profession. Example.
• Villagers cannot see a job site if they are standing in a 1x1 hole. They must have room to walk in order to see a job site. Minimum is a 1x2 area. Here's an example. The job sites on the leftmost/rightmost cells are similar to the ones in the middle, but they could not get their jobs. If you try to put them in a 1x2 cell, give them a profession, then push them with a piston, they will lose their profession. You can still trade with them if you lock their trades, then put them in a 1x1 hole, but they won't be able to restock.
• A villager can detect job sites as far as 48 blocks. Example. Each red wool is 5 blocks.
• A villager can claim a job site when in a minecart or boat. See example above. Villager is in a boat.
• If a villager claims a job site while in a minecart or boat, other villagers will not be able to claim the specific job site chosen. However, if you drop off a villager (with a profession) into an area where they won't be able to path find to their chosen job site. They will try to run towards the direction of the job site (against the wall) for a few seconds, then revert back to being jobless if you haven't traded with them. If their trades are locked, they just won't be able to restock once their supplies run out.
That's all that I have observed. I hope anyone who passes through this thread will find this useful. Thank you very much! Feel free to share/discuss/ask questions.
As stated, villagers in boats have no problem claiming a jobsite but I have yet to have one restock his trades and they take forever to lose their profession, like several days at least, if their jobsite block is destroyed or the path blocked.
I wish you could easily trace the bed/work station each one belongs to. I have a few that seem to have adopted items far away in buildings I built. I'd like to move them in and get them to stay in that area. But many seem to be torn between beds and workstations that are too far away.
I wish you could easily trace the bed/work station each one belongs to.
/data get entity>UUID< Brain
in chat where >UUID< comes up as a clickable choice if you have the cross hairs on the villager while typing gives you the coordinates of bed, jobsite and village if any.
The command below it is the position of the job block that I want it to be claiming. Which data value do I check to confirm that the villager has claimed the job block and how do I interpret that data value? Ex: the data value for minecraft:last_worked_at_poi is 3395588L, what does that mean?
I wish you could easily trace the bed/work station each one belongs to. I have a few that seem to have adopted items far away in buildings I built. I'd like to move them in and get them to stay in that area. But many seem to be torn between beds and workstations that are too far away.
You can move them and lock them into trading stalls or houses.
These are the trading stalls I made. The building part is 3 blocks wide and 6 blocks long from the job block to the back wall. Over the job block is a gate, in case a kid grows up in stall. There is a space to work and a door right behind that. You can not have any blocks, even half blocks, over the door otherwise the villager gets stuck inside. The last two blocks on the inside are the bed. So the villager can sleep, work, and meet the free roaming villagers in Murkwood. I used wool for the roof and had it overhang one block on all sides.
In Murkwood Port, I built a building for each villager and fenced in the doors, so those villagers can't mingle.
In both the stalls and Murkwood Port, the villagers changed beds and job sites to the ones they can reach. So you should be able to move your villagers and have them switch to new beds and job sites by blocking access to the old ones. Be careful as they will wander a lot to try and get to the old ones if they are not blocked in on all sides.
The free roaming villagers in Murkwood sometimes pick a bed on the other side of the village, rather than a closer one.
I cant find a way to make the villagers pick the workstation right infront of them (so they restock). is there any way to make sure they pick the one infront of them consistently? or using commands? thanks for the help btw.
I cant find a way to make the villagers pick the workstation right infront of them (so they restock). is there any way to make sure they pick the one infront of them consistently? or using commands? thanks for the help btw.
The ones I have in market stalls seem to pick the one in their stall every morning. You could put the stall behind fences or walls with the villager you want to pick it, so that no other villager can path find to it.
Perhaps obvious, but villagers can use composters that are sunk one block into the ground. I do this so that I don‘t accidentally jump on one and destroy tilled farmland when jumping back down. I assume that other workstations can also be one block below a villager but haven‘t tested it. It would certainly make the tiny houses more roomy if all workstations were sunk into the floor.
Perhaps obvious, but villagers can use composters that are sunk one block into the ground. I do this so that I don‘t accidentally jump on one and destroy tilled farmland when jumping back down. I assume that other workstations can also be one block below a villager but haven‘t tested it. It would certainly make the tiny houses more roomy if all workstations were sunk into the floor.
I've had no problem with villagers if the job block is put into the floor as long as the villager can jump on it.
I don't know how well this works but I would try only placing a jobsite block when you have a villager ready to use it.
That is, move a villager to their stall and then place the jobsite block.
If the other stalls with jobsites have villagers that have claimed the jobsites in them then the new villager shouldn't be able to claim them and should therefore claim the jobsite that you place for them.
--
Also, how have you built the stalls?
Last I tested, which was a while ago mind you, the villagers had to be able to reach the jobsites, or at least find a path to them, in order to claim them.
Are you playing in 1.14.4?
If I remember correctly, in 1.14 (just 1.14 , no third number) villagers just had to be close enough to a jobsite (something like 48 blocks away(?) )
The command below it is the position of the job block that I want it to be claiming. Which data value do I check to confirm that the villager has claimed the job block and how do I interpret that data value? Ex: the data value for minecraft:last_worked_at_poi is 3395588L, what does that mean?
Hi, my name is Cabzki, and I would like to share with you my observations regarding the new villagers for Minecraft 1.14.
I made this because I was trying to make a Villager Trading hall in my world, but failed to do so. That prompted me to study the villager behaviors. I would like to stress that all information I have put down below are my own observations, so some information here may not be 100% correct. Also, this one focuses on the villager behavior regarding their jobs (So nothing about breeding and/or iron farms). Here we go!
Points below were tested on Minecraft 1.14.1.
• You can check for a villager's job site and bed with the command /data get entity <x> Brain. Look at a specific villager and type the command. The value of <x> should appear in the autocomplete if you look at it. Normally the value is a string of numbers and letters.
• Villagers can "see" a job site if they can find a path to it. They will try to go to a block beside the job site or stand on the job site block itself. The job site can be 1 block above from where they are standing. 2 blocks above won't work since they can't get to a block beside the job site (Unless there is a path). They can access a job site regardless of the block above it. (It can be an air/solid/transparent block). See this image for an example.
• If a villager's chosen job site is 1 block above, they will be able to see it, but not use it. That means they won't be able to stock their supplies.
• That block beside the job site include diagonals. Shoutout to iskall85.
• You can lock a villager's profession(trades) by trading with them at least once to give them experience. You can remove their job site, but they won't go back to being jobless. They won't be able to restock their trades if you take it away though. Example here. They will also not accept any other job sites that does not correspond to their profession. Example.
• Villagers cannot see a job site if they are standing in a 1x1 hole. They must have room to walk in order to see a job site. Minimum is a 1x2 area. Here's an example. The job sites on the leftmost/rightmost cells are similar to the ones in the middle, but they could not get their jobs. If you try to put them in a 1x2 cell, give them a profession, then push them with a piston, they will lose their profession. You can still trade with them if you lock their trades, then put them in a 1x1 hole, but they won't be able to restock.
• A villager can detect job sites as far as 48 blocks. Example. Each red wool is 5 blocks.
• A villager can claim a job site when in a minecart or boat. See example above. Villager is in a boat.
• If a villager claims a job site while in a minecart or boat, other villagers will not be able to claim the specific job site chosen. However, if you drop off a villager (with a profession) into an area where they won't be able to path find to their chosen job site. They will try to run towards the direction of the job site (against the wall) for a few seconds, then revert back to being jobless if you haven't traded with them. If their trades are locked, they just won't be able to restock once their supplies run out.
That's all that I have observed. I hope anyone who passes through this thread will find this useful. Thank you very much! Feel free to share/discuss/ask questions.
Hi,
Neat, things seem to have changed a bit since 1.4!
One clarification: They can claim a jobsite that is at their chest level but they don't seem to be able to use it.
This Cartographer, for instance, had all his trades locked and wouldn't unlock any until I placed that granite block on the floor for him to stand on.
Just testing.
Interesting. So it's one thing to see and claim a job site, and it's another one to use it. Thank you very much!
As stated, villagers in boats have no problem claiming a jobsite but I have yet to have one restock his trades and they take forever to lose their profession, like several days at least, if their jobsite block is destroyed or the path blocked.
Just testing.
I wish you could easily trace the bed/work station each one belongs to. I have a few that seem to have adopted items far away in buildings I built. I'd like to move them in and get them to stay in that area. But many seem to be torn between beds and workstations that are too far away.
/data get entity>UUID< Brain
in chat where >UUID< comes up as a clickable choice if you have the cross hairs on the villager while typing gives you the coordinates of bed, jobsite and village if any.
:Thanks to ScotsMiser for the command.
Just testing.
Thanks I will give that a try.
I got this output from using the command:
Output from command
The command below it is the position of the job block that I want it to be claiming. Which data value do I check to confirm that the villager has claimed the job block and how do I interpret that data value? Ex: the data value for minecraft:last_worked_at_poi is 3395588L, what does that mean?
The villager in question
You can move them and lock them into trading stalls or houses.
These are the trading stalls I made. The building part is 3 blocks wide and 6 blocks long from the job block to the back wall. Over the job block is a gate, in case a kid grows up in stall. There is a space to work and a door right behind that. You can not have any blocks, even half blocks, over the door otherwise the villager gets stuck inside. The last two blocks on the inside are the bed. So the villager can sleep, work, and meet the free roaming villagers in Murkwood. I used wool for the roof and had it overhang one block on all sides.
In Murkwood Port, I built a building for each villager and fenced in the doors, so those villagers can't mingle.
In both the stalls and Murkwood Port, the villagers changed beds and job sites to the ones they can reach. So you should be able to move your villagers and have them switch to new beds and job sites by blocking access to the old ones. Be careful as they will wander a lot to try and get to the old ones if they are not blocked in on all sides.
The free roaming villagers in Murkwood sometimes pick a bed on the other side of the village, rather than a closer one.
I cant find a way to make the villagers pick the workstation right infront of them (so they restock). is there any way to make sure they pick the one infront of them consistently? or using commands? thanks for the help btw.
The ones I have in market stalls seem to pick the one in their stall every morning. You could put the stall behind fences or walls with the villager you want to pick it, so that no other villager can path find to it.
Perhaps obvious, but villagers can use composters that are sunk one block into the ground. I do this so that I don‘t accidentally jump on one and destroy tilled farmland when jumping back down. I assume that other workstations can also be one block below a villager but haven‘t tested it. It would certainly make the tiny houses more roomy if all workstations were sunk into the floor.
I've had no problem with villagers if the job block is put into the floor as long as the villager can jump on it.
Hi Cabzki,
This post was super useful, thanks a lot for making it.
I do have 1 question.
Is it possible to make a villager take on a job(using a block) only when it is next to it?
The problem I have is that I made a villager breeder which transports villagers to my trading hall but they take on the jobs that are in other stalls.
Is there anyway to stop this?
Thanks
I don't know how well this works but I would try only placing a jobsite block when you have a villager ready to use it.
That is, move a villager to their stall and then place the jobsite block.
If the other stalls with jobsites have villagers that have claimed the jobsites in them then the new villager shouldn't be able to claim them and should therefore claim the jobsite that you place for them.
--
Also, how have you built the stalls?
Last I tested, which was a while ago mind you, the villagers had to be able to reach the jobsites, or at least find a path to them, in order to claim them.
Are you playing in 1.14.4?
If I remember correctly, in 1.14 (just 1.14 , no third number) villagers just had to be close enough to a jobsite (something like 48 blocks away(?) )
Just testing.
I also have this question^
Since the next 2 lines in the linked text say:
"219, 64, -42 has the following block data: {x: 219, y: 64, z: -42, id: "minecraft:lectern"}"
I would expect the villager to have claimed and used a lectern at or next to x: 219, y: 64, z: -42
(The coordinates seem to be where the villager was standing when they used the lectern, not the exact position of the lectern itself.)
Just testing.