Villagers seem to have an unintuitive/inconsistent behavior that, while could make sense from a technical point of view, it definitely makes crop farms more unreliable:
First impression:
If a vilager receives two stacks of bread, and they share it to another villager, they keep 24 bread on both slots, instead of calculating the total amount of bread, thus making them unable to pick up other items if they fill their their inventory, since each slot keeps 24 items.
Second impression:
It's related to the first one, but also adds something different. If a villager has more than half a stack in a slot, they share exactly half of what they have, otherwise (if there's more than 24 in the slot), will share the number of items in that slot minus 24.
So, if a villager receives 34 bread, it will share 17 with another villager, and both will have 17 on each slot.
More details:
If a villager has at least 24 food items in total (wheat doesn't count, bread counts as 4), and the other villager is either a farmer or has less than 12 items (same counting, in that case, the villager can share all food item slots (except wheat).
In the case of wheat, if a villager has more than half a stack of wheat (in total) and the other villager is a farmer. In this case, the villager can only share slots containing wheat.
Possible fixes:
I'll list here some fixes to make this more intuitive for players:
Make villagers calculate the total amount of items on their inventory, to prevent them from having 24 items on each slot, making them more versatile on item farms.
Remove whichever rule makes villagers share half the amount of items they have, which seems to be colliding with the rule that makes them share the extra amount of food items on amounts larger than 24.
Make non-farmer villagers able to share all wheat, wheat seeds and beetroot seeds they have with farmers, as they cannot convert wheat to bread nor plant seeds. This would make villagers more friendly to players and have a more intuitive behavior.
Since villagershave a "can gather" function (I don't know the name so I just named it like that), make non-farmers only able to pick up beetroots, bread, carrtos and potatoes, while farmers should be able to pick up all crop/food related items as well as bonemeal as they currently do.
Related bugs:
Since both bugs are from 1.16, it's possible that this report may be partially colliding with both, but the villager behavior is way too inconsistent to be sure this isn't the same bug or a group of bugs, so I make a central report here.
Comments 2
The reason of why I did report this on a separate ticket is that even with this testing it's not always happening like this, but some weird calculations happen (if you use /data get entity <villager>
, you can see that items being shared aren't in a consistent behavior if you give a villager more than 2 stacks), and also specifically wheat behavior is more inconsistent than other crops, sometimes it isn't shared, other times it is, and I'm not a technical person, but this looks like it's a bug originated from how villager stack-splitting sharing collides with the 24 excess sharing.
Please only report one issue per ticket, and don't intentionally create duplicates.
The only new thing you're reporting here is the stack-splitting sharing (rather than excess sharing), which is more in lines with a change requestthan a bug.