Would it be hard to create a datapack to stop players from being able to place/take away blocks to make Villagers change their trades repeatedly, as players do to get a specific overpowered trade before a single trade is done with the Villager?
This seems like incredibly broken functionality in the game and can be widely abused to get specific/cheap trades, and if I'm hosting a semi-public vanilla server with others, I'd really not want something like this be available for players and ruins the flow and balance of gameplay.
I go through many videos and read a lot of things, it seems like this sort of abusive functionality has been accepted by many users and Youtubers, but it's clearly, entirely broken on top of the already insanely cheap trades players get later on in higher leveled Villagers.
The easiest way I can think of is entirely impractical and would probably lag the server into oblivion. I'm not an extremely technical player, but as far as I can think of there isn't a good way you could do this with vanilla commands. Your two best options would either be to find a plugin that does this or, the easiest of all, just inform players that you don't want them to do it. I agree completely with your point, but circumventing vanilla mechanics like this would be extremely difficult when dealing with something as complex as villagers.
Would it be hard to create a datapack to stop players from being able to place/take away blocks to make Villagers change their trades repeatedly, as players do to get a specific overpowered trade before a single trade is done with the Villager?
This seems like incredibly broken functionality in the game and can be widely abused to get specific/cheap trades, and if I'm hosting a semi-public vanilla server with others, I'd really not want something like this be available for players and ruins the flow and balance of gameplay.
I go through many videos and read a lot of things, it seems like this sort of abusive functionality has been accepted by many users and Youtubers, but it's clearly, entirely broken on top of the already insanely cheap trades players get later on in higher leveled Villagers.
As simple as this:
/execute as @e[type=minecraft:villager,nbt={Xp:0}] run data modify entity @s Xp set value 1
Would it be hard to create a datapack to stop players from being able to place/take away blocks to make Villagers change their trades repeatedly, as players do to get a specific overpowered trade before a single trade is done with the Villager?
This seems like incredibly broken functionality in the game and can be widely abused to get specific/cheap trades, and if I'm hosting a semi-public vanilla server with others, I'd really not want something like this be available for players and ruins the flow and balance of gameplay.
I go through many videos and read a lot of things, it seems like this sort of abusive functionality has been accepted by many users and Youtubers, but it's clearly, entirely broken on top of the already insanely cheap trades players get later on in higher leveled Villagers.
The easiest way I can think of is entirely impractical and would probably lag the server into oblivion. I'm not an extremely technical player, but as far as I can think of there isn't a good way you could do this with vanilla commands. Your two best options would either be to find a plugin that does this or, the easiest of all, just inform players that you don't want them to do it. I agree completely with your point, but circumventing vanilla mechanics like this would be extremely difficult when dealing with something as complex as villagers.Check out my mod! You can find it on CurseForge here:
https://www.curseforge.com/minecraft/mc-mods/the-spookjams-mod
As simple as this:
/execute as @e[type=minecraft:villager,nbt={Xp:0}] run data modify entity @s Xp set value 1
Run this in repeating mode.