局域网世界中玩家之间的 Minecraft 共享库存

Minecraft Shared Inventory Between Players in a LAN World

我要解决的问题是允许所有玩家在 Minecraft LAN 世界中共享相同的物品栏。这意味着如果有人砍倒一棵树并得到木头,那么每个人都会得到那块木头。如果有人掉落一件物品,该物品将从所有人的物品栏中移除。如果有人用热键栏上 1 号槽中的镐进行采矿,那么它应该会失去其他人的耐久性。如果有人重新排列清单中的物品,则应该为其他人重新排列。基本上,我想知道是否有一种方法可以将每个人的库存设置为相同的对象,以便对库存进行的任何修改对每个人都是相同的。

我试过使用 NBTExplorer 复制物品栏,但不能在玩家之间实时同步。我也知道有些服务器插件可以将库存同步到数据库,例如 MySQL,但我几乎可以肯定,除了托管服务器并尝试设置插件之外,还有一种更简单的方法可以做到这一点数据库。

有没有我可以修改的值,它会导致所有库存都具有相同的种子?我可以使用一些命令来生成一个所有玩家库存都指向一个位置的世界吗?

这可不是生成种子之类的那么简单。您需要坚持并将每个玩家的每个库存变化传输给所有玩家。并找到一种方法来保持同步。

您可能最好使用服务器端插件,因为这不能仅在客户端实现。使用插件侦听器侦听任何库存事件,然后遍历除触发事件的玩家之外的所有玩家,对他们的库存执行相同的操作以保持所有玩家同步。

使用原版命令post 1.13,你可以做一个简单的命令方块循环,或者使用数据包。这些是它将采取的步骤: -设置一个中央箱子矿车来存储通用库存 -用一套基本的用品设置库存 - 使用 /execute unless 命令检查每个玩家的物品栏和箱子矿车之间的差异 -发生这种情况时,/data 将箱子矿车的库存合并到每个玩家

数据命令教程:https://www.google.com/url?sa=t&source=web&rct=j&url=%23&ved=2ahUKEwj1noDl9pLnAhUEGc0KHdGxC00QwqsBMAB6BAgMEAU&usg=AOvVaw0VTJzWxrN8ZFOD4xbU2nov 执行命令教程:https://minecraft.gamepedia.com/Commands/execute#unless

我还没有想出确切的命令,但这个系统应该可以工作。