Общий ресурс Minecraft между игроками в мире LAN - PullRequest
0 голосов
/ 18 января 2020

Проблема, которую я пытаюсь решить, позволяет всем игрокам делить один и тот же инвентарь в мире Minecraft LAN. Это означает, что если кто-то срубит дерево и получит дерево, то каждый получит это дерево. Если кто-то уронит предмет, он будет удален из инвентаря каждого. Если кто-то занимается майнингом с пиком, который находится в слоте 1 на горячей панели, он должен потерять долговечность для всех остальных. Если кто-то переставляет предметы в инвентаре, его следует переставить для всех остальных. По сути, мне интересно, есть ли способ настроить инвентарь каждого на один и тот же объект, чтобы любые модификации инвентаря были одинаковыми для всех.

Я пытался использовать NBTExplorer для копирования запасов, но это не так. t syn c между игроками в режиме реального времени. Мне также известно, что существуют серверные плагины, которые могут синхронизировать ресурсы с базой данных, например MySQL, но я почти уверен, что существует более простой способ сделать это, кроме размещения сервера и попытки установить плагин и базу данных для this.

Есть ли значение, которое я могу изменить, чтобы все запасы имели одинаковое начальное число? Могу ли я использовать какую-то команду, чтобы создать мир со всеми описями игроков, указывающими на одно место?

Ответы [ 2 ]

1 голос
/ 20 января 2020

Используя команды vanilla, опубликованные после 1.13, вы можете сделать простой командный блок l oop или использовать пакет данных. Это следующие шаги: -Установите центральную сундук с сундуком, в котором будет храниться универсальный инвентарь. -Установите этот инвентарь с базовым набором c припасов. -Проверьте различия между инвентарем каждого игрока и сундуком-сундуком, используя / выполнить, если только команда -Когда это происходит, / данные объединяют инвентарь сундука с шахтой для каждого игрока

Учебное пособие по командам данных: https://www.google.com/url?sa=t&source=web&rct=j&url=%23&ved=2ahUKEwj1noDl9pLnAhUEGc0KHdGxC00QwqsBMAB6BAgMEAU&usg=AOvVaw0VTJzWxrN8ZFOD4xbU2nov Учебное пособие по выполнению команд: https://minecraft.gamepedia.com/Commands/execute#unless

Я еще не придумал точных команд для этого, но эти системы должны работать.

0 голосов
/ 18 января 2020

Это не так просто, как просто создать семя или что-то в этом роде. Вы должны сохранять и передавать каждое изменение инвентаря, для каждого игрока, всем игрокам. И найдите способ сохранить это в синхронизации c.

Лучше всего использовать плагин на стороне сервера, поскольку этого нельзя добиться только на стороне клиента. Слушайте любые события инвентаря, используя слушатель плагина, а затем итерируйте по всем игрокам кроме того, кто вызвал событие, чтобы выполнить те же самые операции с их инвентарём, чтобы держать всех игроков в курсе c.

...