Что такое диапазон трансляции сущностей
Сущности
Сущности (англ. Entities) — все динамические и движущиеся объекты в мире Minecraft.
В Minecraft сущностями являются и блоки, которые сохраняют дополнительную информацию за 4-битным полем (табличка, сундук), а также и сложно анимированные структуры, имеющие более широкий количественный эквивалент битового поля (кристалл Края, шалкеровый ящик).
Содержание
Особенности [ ]
Почти все сущности имеют следующие свойства:
Разновидности сущностей [ ]
Список сущностей в Minecraft и некоторые их свойства.
Твёрдые сущности препятствуют движению другим сущностям.
Размер указан в длине ребра блока (принимается за 1 метр), и это размер привязанного к координатной сетке граничного поля сущности с размерами в обеих горизонтальных осях (X и Z) и вертикальной (Y). Поле не вращается при визуальном вращении объекта.
Движение сущностей [ ]
Гравитация работает в Minecraft иначе, чем в реальном мире, так как ускорение различно для разных объектов. Кроме того, есть сила сопротивления, пропорциональная скорости, опять же зависящая от объекта.
Объект | Ускорение блоки/такт 2 | Ускорение м/с 2 | Сопротивление 1/такт | Предельная скорость блоков/такт | Предельная скорость м/с |
Игроки и другие живые существа | 0.08 | 32 | 0.02 | 3.92 | 78.4 |
Предметы, падающие блоки, TНT | 0.04 | 16 | 0.02 | 1.96 | 39.2 |
Лодки и вагонетки | 0.04 | 16 | 0.05 | 0.76 | 15.2 |
Брошенные куриные яйца, снежки, зелья и жемчуг Края | 0.03 | 12 | 0.01 | 3.00 | 60.0 |
Выпущенные стрелы | 0.05 | 20 | 0.01 | 5.00 | 100.0 |
Обратите внимание, что для брошенных объектов и выпущенных стрел сопротивление применяется перед ускорением, в этом причина того, что их предельные скорости — круглые числа, в то время как для других объектов это не так.
Заметки [ ]
Картина также является сущностью, хоть она и неподвижна и привязана к сетке блоков. Двери, порталы, кровати и другие объекты больше одного блока на самом деле являются группами смежных блоков.
Стрелы и TНT предположительно, имеют бесконечное здоровье, потому что они не уничтожаются взрывами ТНТ (могут быть выстрелены из пушек) и огнем.
Лодки и вагонетки [ ]
Смотрите также: Способы передвижения (содержит информацию о скорости)
Лодки и вагонетки постепенно восстанавливают свое здоровье. Например, если быстро бить лодку рукой, то можно её уничтожить, но удары с паузами лодку не уничтожат. Количество отображаемых колебаний на лодках и вагонетках при ударе, по-видимому, указывает на их текущее здоровье.
Падающие блоки [ ]
Следующее описание относится к песку. Гравий, цемент и яйцо дракона ведут себя точно так же.
Песок обычно существует в виде блока. После того как опора песка удаляется, он превращается в сущность и падает вниз, пока не достигнет твердой поверхности, а затем либо превращается обратно в блок, либо дропается, если падает на факел, цветок, плиту и т. п. Траектория падения песка может быть перенаправлена взрывом ТНТ.
Если при создании мира под песком генерируется пещера, игра не сможет обновить блок песка и он останется висеть в воздухе, пока не обновится какой-либо блок вплотную к нему. Это также означает, что единственный обновившийся и рухнувший блок песка может спровоцировать цепную реакцию падения прилежащих блоков, поэтому не следует трогать потолок из песка, стоя под ним.
Правый клик [ ]
Сущности с действиями по правому щелчку (лодки, вагонетки, оцелоты и волки), в отличие от используемых блоков (вроде сундуков), не мешают выполнению действия с инструментом, который держится в руке. Например, если попытаться посадить прирученного волка с ведром воды в руке, волк сядет, но вы также выльете на волка воду.
Кормление волков едой не мешает потреблению пищи самим игроком, несмотря на отсутствие визуального эффекта. Если попытаться покормить волка с 2 кусками сырой свинины в руке, волк съест один кусок, а игрок съест второй (для получения этого эффекта нужно зажать ПКМ ). При использовании одного куска волк получит еду быстрее, чем игрок сможет её съесть, поэтому съедание будет остановлено из-за отсутствия еды.
Сущности могут оседлать или прицепиться к другим сущностям. Если так случилось, то за столкновение отвечает объём нижней/внешней сущности (свинья, лодка), и эта же сущность отвечает за движение. Возможны следующие комбинации:
Может существовать несколько уровней, например, игрок, оседлавший свинью в вагонетке.
Из-за ошибки, на 1.11 лодка может сесть в вагонетку.
Что такое диапазон трансляции сущностей
В нашем блоге мы уже рассказывали, как создать свой сервер Minecraft, однако с тех пор прошло 5 лет и многое поменялось. Делимся с вами актуальными способами создания и оптимизации серверной части столь популярной игры.
За свою 9-летнюю историю (если считать от даты релиза) Minecraft заработал потрясающее количество поклонников и хейтеров как среди обычных игроков, так и среди гиков. Простая концепция мира из кубиков превратилась из обычного развлечения в универсальную среду для общения и создания различных объектов из реального мира.
Помимо строительства, в игре есть возможность создавать логические схемы, которые позволяют реализовывать полноценные алгоритмы внутри Minecraft. На YouTube полно весьма впечатляющих роликов, где люди, приложив огромное количество сил и потратив множество времени, создали копию того или иного электронного устройства или построили детальную копию существующих и вымышленных архитектурных сооружений. Все ограничивается лишь фантазией геймера и возможностями игровой вселенной.
Но не будем дальше говорить о том, что именно игроки создают, а посмотрим на серверную часть приложения и осветим проблемы (порой весьма сложные), которые могут возникнуть в процессе работы под нагрузкой. Сразу оговоримся, что речь пойдет только о Java Edition.
Виды серверов
Самым простым вариантом является сервер, встроенный в клиент игры. Создали мир, нажали на одну кнопочку, и вот сервер стал доступен по локальной сети. Никакой серьезной нагрузки такой вариант выдержать не может, а поэтому мы не будем его даже рассматривать.
Vanilla
Компания Mojang Studios распространяет серверную часть игры в виде Java-приложения бесплатно на официальном сайте. Это позволяет создать свой собственный выделенный сервер и персональный мир, сделав его доступным для подключения из любой точки планеты. Для тех, кто делает это впервые, есть отличный туториал, доступный в соответствующей игровой Wiki.
У этого подхода есть один серьезный недостаток, а именно — отсутствие возможностей «из коробки» подключать плагины, расширяющие функционал сервера и позволяющие не только автоматизировать многие процессы, но и оптимизировать производительность. Кроме того, у официального сервера достаточно большое потребление оперативной памяти на каждого подключенного игрока.
Bukkit
Созданное энтузиастами на базе Vanilla-версии серверное приложение Bukkit значительно расширяло возможности игры за счет поддержки плагинов и модов (модификаций). Оно позволило не только добавлять в игровой процесс новые блоки, но и выполнять различные манипуляции, недоступные ванильному ПО. Что интересно, памяти это приложение требовало значительно меньше.
Установить Bukkit не составляет особого труда, соответствующая инструкция есть на ресурсе GamePedia. Но это не имеет смысла, так как с 2014 года команда Bukkit распалась, разработчики проекта стали сотрудниками Mojang Studios, а репозиторий заброшен. Таким образом, Bukkit фактически мертв, и имеет смысл обратить внимание на два следующих проекта.
SpigotMC
Для облегчения жизни разработчиков плагинов была необходимость в API для взаимодействия с игровым миром. Именно эту задачу и решили создатели Spigot, взяв за основу ядро Bukkit и переработав его для достижения лучшей надежности и производительности. Тем не менее, Git-репозиторий проекта был заблокирован в связи с Законом об авторском праве в цифровую эпоху (DMCA), и скачать оттуда исходники невозможно.
На текущий момент SpigotMC активно развивается и используется. Он поддерживает все плагины, созданные под Bukkit, однако с ним обратно не совместим. Чтобы обойти запрет DMCA Takedown, был придуман элегантный способ под названием BuildTools. Этот инструмент избавляет от необходимости дистрибуции скомпилированного приложения и позволяет пользователям выполнить компиляцию Spigot, CraftBukkit и Bukkit из исходного кода. Все это делает запрет DMCA бесполезным.
PaperMC
Казалось бы, все круто, и Spigot стал прекрасным вариантом. Но некоторым энтузиастам этого показалось мало, и они запилили свой собственный форк Spigot «на стероидах». На странице проекта ключевым достоинством указано, что “It’s stupid fast”. Развитое коммьюнити позволяет оперативно решать возникающие вопросы, а расширенное API — делать интересные плагины. Запустить PaperMC можно одной простой командой, приведенной в документации.
С совместимостью у PaperMC все прекрасно, так что написанные плагины под SpigotMC легко заработают и на PaperMC, но без официальной поддержки. Обратная совместимость со SpigotMC также присутствует. Теперь, когда мы перечислили различные варианты создания сервера, перейдем к тем проблемам производительности, которые могут возникать.
Проблемы и решения
Главное, что нужно понимать, — все, что касается обработки игрового мира будет обрабатываться только на одном вычислительном ядре физического сервера. Так что если вдруг у вас прекрасный сервер с десятком вычислительных ядер, то загружено будет только одно. Все остальные будут фактически простаивать. Такова уж архитектура приложения, и ничего вы с этим поделать не сможете. Так что при выборе сервера следует обращать внимание не на количество ядер, а на тактовую частоту. Чем она будет выше, тем лучше будет производительность.
Что касается вопроса об объеме оперативной памяти, тут следует исходить из следующих показателей:
Для запуска серверной части рекомендуем воспользоваться флагами, указанными в статье Tuning the JVM – G1GC Garbage Collector Flags for Minecraft. Эта «черная магия» позволяет серверу грамотно настроить «сборщик мусора» и оптимизирует использование оперативной памяти. Не стоит выделять памяти больше, чем реально потребляет сервер при пиковом наплыве игроков.
Генерация карты блоков
“Вы действительно считаете, что Луна существует, только когда вы на неё смотрите?” (Альберт Эйнштейн)
Абсолютно новый сервер. Как только игрок первый раз успешно подключается, игровой персонаж появляется на общей точке сбора (спаун). Это единственное место, где игровой мир предварительно генерируется сервером. В этот же момент клиентская часть смотрит в настройки, и ключевым параметром является дальность прорисовки. Измеряется она в чанках (область карты 16×16 и высотой в 256 блоков) Сколько чанков там указано, именно столько и будет запрошено у сервера.
На сервере хранится глобальная карта мира, и если в ней еще нет сгенерированных блоков в точке появления игрового персонажа, то сервер их динамически генерирует и сохраняет у себя. Мало того, что это требует больших вычислительных ресурсов, так еще и постоянно увеличивает размер карты мира. На одном из старейших анархических серверов 2b2t (2builders2tools) размер карты уже превысил 8 Tb, а граница мира проходит на отметке в 30 млн блоков. С этим сервером связаны тысячи историй, и он заслуживает отдельной статьи серии статей.
Генерация мира вокруг одного игрока — не проблема. Генерация мира вокруг сотни игроков вызовет незначительные тормоза сервера на протяжении короткого времени, после чего нагрузка снизится. Генерация мира на дальность прорисовки клиента вокруг тысячи игроков уже способна «уронить» сервер и повыбрасывать с него всех клиентов по таймауту.
В серверном ПО имеется такое значение, как TPS (Ticks per Server — тактов в секунду). Штатно 1 такт равен 50 мс. (1 секунда реального мира равна 20 тактам игрового мира). Если обработка одного такта вырастет до 60 секунд — серверное приложение будет закрыто, выкинув всех игроков.
Выход — ограничить мир определенными координатами и выполнить предварительную генерацию блоков. Тем самым мы снимаем необходимость динамической генерации в процессе игры, и серверу будет достаточно прочитать уже существующую карту. Оба вопроса решаются одним-единственным плагином WorldBorder.
Проще всего задать границу мира в виде окружности относительно точки спауна (хотя можно ее сделать любой формы) одной командой:
Если игровой персонаж попытается пересечь границу, то будет отброшен на несколько блоков назад. Если это проделать несколько раз за ограниченное время, то нарушитель будет принудительно телепортирован на точку спауна. Предварительная генерация мира выполняется еще проще, командой:
Поскольку данное действие потенциально может затронуть игроков, находящихся на сервере, не забудьте подтвердить выполнение:
В общей сложности на то, чтобы сгенерировать мир радиусом в 5000 блоков (
40 млрд блоков) ушло примерно 2 часа на процессоре Intel® Xeon® Gold 6240. Поэтому, если хотите запустить прегенерацию большей карты, учитывайте, что этот процесс займет приличное количество времени, а TPS сервера будет серьезно снижено. Кроме того, помните, что даже радиус в 5000 блоков потребует примерно 2 Гб места на дисковом накопителе.
Несмотря на то, что крайняя версия плагина была разработана для Minecraft версии 1.14, опытным путем выяснено, что она прекрасно работает и на последующих версиях. Полный список команд с пояснениями доступен на форуме плагина.
Проблемные блоки
Если блоков TNT несколько, то детонация одного блока вызывает детонацию и включение гравитации у соседних блоков, разбрасывая их во все стороны. Вся эта красивая механика на стороне сервера выглядит как множество операций по подсчету траектории каждого из блоков, а также взаимодействия с соседними блоками. Задача крайне ресурсоемкая, что легко может проверить каждый. Сгенерируйте и подорвите куб из блоков TNT, размером хотя бы 30x30x30. И если вы думали, что у вас хороший мощный игровой компьютер, то сильно заблуждались 😉
Подобный «эксперимент» на сервере с Intel® Xeon® Gold 6240 привел к серьезной «просадке» TPS и 80% нагрузке на CPU в течение всего времени детонации блоков. А следовательно, если кто-либо из игроков сможет проделать подобное, то проблема с производительностью затронет всех находящихся на сервере игроков.
Еще более жесткий вариант — Кристаллы Края. Если TNT все же взрывается последовательно, то Кристаллы Края детонируют все одновременно, что в теории может вообще остановить работу серверного приложения.
Избежать этого сценария можно, только полностью запретив использование данных блоков в игровом мире. Например, с помощью плагина WorldGuard. Обратите внимание, что сам по себе этот плагин не работает без другого плагина WorldEdit. Так что устанавливаете вначале WorldEdit, а затем WorldGuard.
Заключение
Грамотное управление игровым сервером — задача не из простых. Сложности и снижение производительности будут поджидать на каждом шагу, особенно если не брать в расчет саму механику игрового процесса. Предусмотреть все невозможно, ведь игроки порой бывают очень изобретательны в попытках заставить сервер выполнить то, для чего он не был предназначен. Только разумный баланс между рисками и устанавливаемыми ограничениями позволит серверу работать в непрерывном режиме и не снижать свою производительность до критичных значений.
На карантине некоторые наши сотрудники соскучились по любимым офисам и решили воссоздать их внутри Minecraft. У вас тоже есть шанс заглянуть к нам в гости, не рискуя своим здоровьем и не тратя время на дорогу.
Для этого мы приглашаем всех желающих на наш сервер minecraft.selectel.ru (версия клиента 1.15.2), где воссозданы дата-центры Цветочная-1 и Цветочная-2. Не забудьте согласиться со скачиванием дополнительных ресурсов, они необходимы для корректного отображения некоторых локаций.
Вас ждут квесты, промокоды, «пасхалки» и приятное общение.
Сущности
Сущности (англ. Entities) — все динамические и движущиеся объекты в мире Minecraft.
В Minecraft сущностями являются и блоки, которые сохраняют дополнительную информацию за 4-битным полем (табличка, сундук), а также и сложно анимированные структуры, имеющие более широкий количественный эквивалент битового поля (кристалл Края, шалкеровый ящик).
Содержание
Особенности [ ]
Почти все сущности имеют следующие свойства:
Разновидности сущностей [ ]
Список сущностей в Minecraft и некоторые их свойства.
Твёрдые сущности препятствуют движению другим сущностям.
Размер указан в длине ребра блока (принимается за 1 метр), и это размер привязанного к координатной сетке граничного поля сущности с размерами в обеих горизонтальных осях (X и Z) и вертикальной (Y). Поле не вращается при визуальном вращении объекта.
Движение сущностей [ ]
Гравитация работает в Minecraft иначе, чем в реальном мире, так как ускорение различно для разных объектов. Кроме того, есть сила сопротивления, пропорциональная скорости, опять же зависящая от объекта.
Объект | Ускорение блоки/такт 2 | Ускорение м/с 2 | Сопротивление 1/такт | Предельная скорость блоков/такт | Предельная скорость м/с |
Игроки и другие живые существа | 0.08 | 32 | 0.02 | 3.92 | 78.4 |
Предметы, падающие блоки, TНT | 0.04 | 16 | 0.02 | 1.96 | 39.2 |
Лодки и вагонетки | 0.04 | 16 | 0.05 | 0.76 | 15.2 |
Брошенные куриные яйца, снежки, зелья и жемчуг Края | 0.03 | 12 | 0.01 | 3.00 | 60.0 |
Выпущенные стрелы | 0.05 | 20 | 0.01 | 5.00 | 100.0 |
Обратите внимание, что для брошенных объектов и выпущенных стрел сопротивление применяется перед ускорением, в этом причина того, что их предельные скорости — круглые числа, в то время как для других объектов это не так.
Заметки [ ]
Картина также является сущностью, хоть она и неподвижна и привязана к сетке блоков. Двери, порталы, кровати и другие объекты больше одного блока на самом деле являются группами смежных блоков.
Стрелы и TНT предположительно, имеют бесконечное здоровье, потому что они не уничтожаются взрывами ТНТ (могут быть выстрелены из пушек) и огнем.
Лодки и вагонетки [ ]
Смотрите также: Способы передвижения (содержит информацию о скорости)
Лодки и вагонетки постепенно восстанавливают свое здоровье. Например, если быстро бить лодку рукой, то можно её уничтожить, но удары с паузами лодку не уничтожат. Количество отображаемых колебаний на лодках и вагонетках при ударе, по-видимому, указывает на их текущее здоровье.
Падающие блоки [ ]
Следующее описание относится к песку. Гравий, цемент и яйцо дракона ведут себя точно так же.
Песок обычно существует в виде блока. После того как опора песка удаляется, он превращается в сущность и падает вниз, пока не достигнет твердой поверхности, а затем либо превращается обратно в блок, либо дропается, если падает на факел, цветок, плиту и т. п. Траектория падения песка может быть перенаправлена взрывом ТНТ.
Если при создании мира под песком генерируется пещера, игра не сможет обновить блок песка и он останется висеть в воздухе, пока не обновится какой-либо блок вплотную к нему. Это также означает, что единственный обновившийся и рухнувший блок песка может спровоцировать цепную реакцию падения прилежащих блоков, поэтому не следует трогать потолок из песка, стоя под ним.
Правый клик [ ]
Сущности с действиями по правому щелчку (лодки, вагонетки, оцелоты и волки), в отличие от используемых блоков (вроде сундуков), не мешают выполнению действия с инструментом, который держится в руке. Например, если попытаться посадить прирученного волка с ведром воды в руке, волк сядет, но вы также выльете на волка воду.
Кормление волков едой не мешает потреблению пищи самим игроком, несмотря на отсутствие визуального эффекта. Если попытаться покормить волка с 2 кусками сырой свинины в руке, волк съест один кусок, а игрок съест второй (для получения этого эффекта нужно зажать ПКМ ). При использовании одного куска волк получит еду быстрее, чем игрок сможет её съесть, поэтому съедание будет остановлено из-за отсутствия еды.
Сущности могут оседлать или прицепиться к другим сущностям. Если так случилось, то за столкновение отвечает объём нижней/внешней сущности (свинья, лодка), и эта же сущность отвечает за движение. Возможны следующие комбинации:
Может существовать несколько уровней, например, игрок, оседлавший свинью в вагонетке.
Из-за ошибки, на 1.11 лодка может сесть в вагонетку.
, ]> заспаунит паука, на котором сидят скелет и зомби.
Оптимизировать сервер майнкрафт
В Spigot по умолчанию отключено множество улучшений производительности, так как они часто изменяют сервер, чтобы он больше не воспроизводил обычное поведение. Это руководство создано, чтобы помочь вам настроить параметры для достижения оптимальной производительности, одновременно понимая, что вы на самом деле меняете. Если вы не понимаете настройку, о которой я говорю здесь, не меняйте ее.
Оптимизация paper.yml
Вам понадобится ядро Paper, это ворк от Spigot, чтобы paper.yml появился.
Это ядро менее стабильно, но оно очень быстрое, к тому же имеет ряд плюсов, которые
optimize-explosions
По умолчанию отключено, советуем поставить на true
Использует альтернативный, более эффективный алгоритм взрыва. Мгновенно удаляет мертвые сущности внутри взрыва.
mob-spawner-tick-rate
По умолчанию выставлено значение 1, советуем поставить на 2-3
Это изменяет количество проходов тиков, прежде чем спавнеры мобов попытаются создать мобов.
Значение 2 не должно сильно влиять на поведение ванильной версии. Если спаунеры мобов отстают от вашего сервера, это хорошее значение, чтобы поиграть.
disable-chest-cat-detection
По умолчанию false, советуем поставить на true
Этот параметр не позволит сундуку проверять сидит ли на нём оцелот/кошка, сидящие на сундуке, что позволит игрокам открыть его, даже если на нем сидит кошка.(Повышает производительность)
use-hopper-check
По умолчанию false, советуем поставить на true
Опция `hopper-check` в spigot.yml в настоящее время игнорируется, что делает практически невозможным оптимизацию загрузочных файлов самостоятельно. Эта опция повторно включает его.
container-update-tick-rate
Изменяет частоту отметки инвентаря (игрок, сундук, все они). Если установлено значение выше 5, инвентарь может показаться глючным / медленным.
queue-light-updates
По умолчанию false, советуем поставить на true
Попытки разнести легкие обновления по тикам. Асинхронное освещение в настоящее время не работает в 1.9, это может помочь исправить это, пока не будет исправлено.
fire-physics-event-for-redstone
По умолчанию false, советуем поставить на true
Это мешает редстоуну запускать событие BlockPhysicsEvent.
Многие плагины слушают BlockPhysicsEvent, но ничего не делают с редстоуном. Поскольку на некоторых серверах красный камень может очень часто мерцать, это может привести к потере большого количества ресурсов процессора.
Это может быть серьезным улучшением задержки красного камня.
grass-spread-tick-rate
Тики между обновлениями травы.
Увеличение этого параметра приведет к снижению скорости разбрасывания травы! Убедитесь, что вы установили это значение, которое имеет смысл для вашего сервера. то есть серверы Skyblock могут вообще не захотеть это менять.
Оптимизация spigot.yml
late-bind
По умолчанию false, советуем поставить на true
Это не влияет на производительность и может сломать некоторые плагины.
Это заставляет ваш сервер ждать с подключением к любой сети, пока не будут включены все плагины. Я лично считаю это хорошей практикой и безопасностью, но это совершенно необязательно.
mob-spawn-range
По умолчанию 4, советуем поставить 3
Управляет расстоянием от созданных мобов.
Мы собираемся снизить частоту и количество мобов, которые могут появляться, поэтому уменьшение этого значения создаст иллюзию, что мы не снизили количество спавнов мобов.
entity-activation-range
По умолчанию стоит: animals:32, monsters:32, misc:16
Советуем поставить: animals:6, monsters:16, misc:2
hopper-transfer, hopper-check, hopper-amount
По умолчанию стоит: transfer:8, check:8, amount:1
Советуем поставить: transfer:24, check:24, amount:3
max-entity-collisions
Сколько раз объект может столкнуться за тик. Установка этого параметра на 1 обычно не имеет значения. Очень помогает с моб-фермами.
merge-radius
По умолчанию item:2.5, exp:3.0
Советуем поставить item:3.5, exp:6.0
view-distance
Сколько блоков отправлено игроку. Я обычно рекомендую 4, так как установка его на 3 приведет к тому, что жемчужины Эндера разделятся на незагруженные чанки и, следовательно, не будут работать.
Предлагайте варианты оптимизации сервера майнкрафт в комментариях. И я их сюда добавлю
Сущности
В Minecraft есть и блоки, которые сохраняют дополнительную информацию за 4-битным полем (табличка, сундук).
Содержание
Особенности [ ]
Все сущности имеют следующие свойства:
Сущности могут быть передвинуты текущей водой.
Сущности не могут пройти через твердые блоки. Большинство сущностей не дают располагать любые блоки внутри объема, который они занимают, кроме выпавших предметов, которые автоматически выталкиваются из блоков. Также, если сущности оказались внутри блоков (например, после падения песка или гравия), то сущности могут выйти из блока, но не войти в блок. (Например, если дверь закрылась внутри игрока, то игрок может, подпрыгнув, встать на одну половинку двери, если над игроком есть воздух).
Сущности приобретают освещенность в соответствии с освещенностью блока, на котором находятся. Например, если вагонетка окажется внутри твердого блока, она станет черной (потому что твердые блоки всегда имеют уровень света 0), также иногда стрелы становятся черными (особенно если застряли в потолке).
У большинства сущностей круглая тень. Она отображается в виде спрайта на том блоке, на котором находится сущность.
Разновидности сущностей [ ]
Список сущностей в Minecraft и некоторые их свойства.
Твердые сущности препятствуют движению другим сущностям.
Размер указан в длине ребра блока (принимается за 1 метр), и это размер привязанного к координатной сетке граничного поля сущности с размерами в обеих горизонтальных осях (X и Z) и вертикальной (Y). Поле не вращается при визуальном вращении объекта.
Движение сущностей [ ]
Гравитация работает в Minecraft иначе, чем в реальном мире, так как ускорение различно для разных объектов. Кроме того, есть сила сопротивления, пропорциональная скорости, опять же зависящая от объекта.
Заметки [ ]
Картины также являются сущностями, но они неподвижны и привязаны к сетке блоков. Двери, порталы, кровати и другие объекты, большие одного блока, на самом деле являются группами смежных блоков.
Стрелы и TНT предположительно, имеют бесконечное здоровье, потому что они не уничтожаются взрывами ТНТ (могут быть выстрелены из пушек ) и огнем.
Лодки и вагонетки [ ]
Смотрите также: Транспортировка (содержит информацию о скорости)
Лодки и вагонетки постепенно восстанавливают свое здоровье. Например, если быстро бить лодку рукой, то можно ее уничтожить, но удары с паузами лодку не уничтожат. Количество отображаемых колебаний на лодках и вагонетках при ударе, по видимому, указывает на их текущее здоровье.
Падающие блоки [ ]
Следующее описание относится к песку, гравий и яйцо дракона ведут себя точно так же.
Песок обычно существует в виде блока. После того, как опора песка удаляется, он превращается в сущность и падает вниз, пока не достигнет твердой поверхности, а затем либо превращается обратно в блок, либо, если позиция занята (песок упал на факел или плиту), выпадает в качестве предмета. Траектория падения песка может быть перенаправлена взрывом ТНТ.
Если при создании мира под песком генерируется пещера, игра не сможет обновить блок песка и он останется висеть в воздухе, пока не обновится какой-либо блок вплотную к нему. Это также означает, что единственный обновившийся и рухнувший блок песка может спровоцировать цепную реакцию падения прилежащих блоков, поэтому не следует трогать потолок из песка, стоя под ним, если не стоять под поддерживаемом факелом блоке или быть готовым быстро выкапывать песок.
Правый клик [ ]
Кормление волков едой не мешает потреблению пищи самим игроком, несмотря на отсутствие визуального эффекта. Если попытаться покормить волка с 2 кусками сырой свинины в руке, волк съест один кусок, а игрок съест второй (для получения этого эффекта нужно зажать правую кнопку мыши). При использовании одного куска волк получит еду быстрее, чем игрок сможет ее съесть, поэтому съедание будет остановлено из-за отсутствия еды.
Сущности могут оседлать или прицепиться к другим сущностям. Если так случилось, то за столкновение отвечает объем нижней/внешней сущности (свинья, лодка), и эта же сущность отвечает за движение. Возможны следующие комбинации:
Может существовать несколько уровней, например, игрок, оседлавший свинью в вагонетке.
История [ ]
de:Objekt en:Entity es:Entidad fr:Entités hu:Entitás ja:エンティティ ko:구성 요소 nl:Entiteit zh:实体