Система координат выглядит следующим образом: - X — увеличивается восток, уменьшается запад
- Y — увеличивается вверх, уменьшается вниз
- Z — увеличивается на юг, уменьшается на север.
Упорядочивание также способствует наилучшему просчитыванию, потому что все индексы в наименее значимом измерении (в данном случае X), отображаются для каждого индекса в следующем наиболее значимом измерении; чтение или понимание упорядоченных координат YZX можно сравнить с книгой, верхняя сторона которой направлена на север: все буквы (или X-индекс) расположены на одной строке (или Z-индексе), и все строки на одной странице (или Y-индексе). Для 2D массивов (таких как «Biomes» и «HeightMap») значения Y просто игнорируются — это можно сравнить с книгой, толщина которой всего одна страница.
Каждая часть чанка равна пространству 16x16x16 блоков, в одном чанке может быть до 16 частей. Часть 0 — это нижняя часть чанка, а часть 15 — это верхняя часть чанка. Ради экономии пространства, пустые части чанка не сохраняются. В каждом разделе есть байт тег «Y» для Y-индекса части, значения которого могут колебаться от 0 до 15, палитра, определяющая подходящий идентификатор части чанка к каждому состоянию блока, а также длинный массив, хранящий идентификаторы местоположения каждого блока. Идентификаторы состояния блока сжимаются для соответствия наименьшему количеству битов в каждом длинном массиве. Массивы байтов «BlockLight» и «SkyLight» используются для определения уровня освещёния блоков и уровня освещения неба соответственно. Значения «SkyLight» показывают, сколько солнечного или лунного света потенциально может достичь блока, независимо от текущего уровня освещения неба.
Порядок байтов 2048-байтового массива (такого как «BlockLight» и «SkyLight»), дающий только 4 бита на блок, кажется аномальным исключением другого, обратного, порядка, широкоформатного хранилища данных. Это также идёт вразрез с естественно читаемой печатью. Если блоки начинаются с 0, они группируются с чётными числами, предшествующими нечётным числам (то есть 0 и 1 разделяют первый байт, 2 и 3 разделяют следующий и так далее); в этих значениях Minecraft хранит чётные блоки в наименее значимых полубайтах, а нечётные блоки в наиболее значимых полубайтах. Таким образом блок[0] — это байт[0] в 0x0F, блок[1] — это байт[0] в 0xF0, блок[2] — это байт[1] в 0x0F, блок[3] — это байт[1] в 0xF0 и так далее…
Пример кода ниже показывает, как получить доступ к информации об отдельных блоках из одной части чанка. Наведите указатель мыши на текст, чтобы просмотреть дополнительную информацию или комментарии.
byte Nibble4(byte[] arr, int index){ return index%2 == 0 ? arr[index/2]&0x0F : (arr[index/2]>>4)&0x0F; int BlockPos = y*16*16 + z*16 + x; byte BlockID_a = Blocks[BlockPos]; byte BlockID_b = Nibble4(Add, BlockPos); short BlockID = BlockID_a + (BlockID_b << 8); byte BlockData = Nibble4(Data, BlockPos); byte Blocklight = Nibble4(BlockLight, BlockPos); byte Skylight = Nibble4(SkyLight, BlockPos);
Формат сущности
Каждая безымянная сущность ( TAG_Compound) содержится в списке сущностей в файле чанка. Единственным исключением является игрок-сущность, хранится в файле level.dat или в файлах <player>.dat на серверах. Все сущности используют эту базовую структуру:
- id: Строковое представление идентификаторов сущностей. Не существует для сущности игрока.
- Pos: 3 TAG_Doubles описывают настоящие X, Y и Z координаты сущности.
- Motion: 3 TAG_Doubles описывают настоящие значения dX, dY и dZ скорости сущности в метрах в тик (м/т).
- Rotation: Два TAG_Floats отображает вращение сущности в градусах.
- Вращение сущности по часовой стрелке вокруг оси Y (также называется отклонением). Значение угла поворота сущности на юг равняется 0, то есть с юга начинается отсчёт. Значение не превышает 360 градусов.
- Отклонение головы сущности от горизонта (также называется наклоном). При горизонтальном положении значение равно 0. При положительном значении голова сущности направлена вниз. Не превышает положительного или отрицательного значения в 90 градусов.
- FallDistance: Расстояние падения сущности. Бо́льшие значения наносят бо́льший урон при приземлении сущности.
- Fire: Число тиков до прекращения горения сущности. Отрицательные значения определяют, как долго сущность может стоять в огне, прежде чем полностью сгореть. По умолчанию значение установлено на -20, когда сущность не горит.
- Air: Каким запасом воздуха обладает сущность, значение указывается в тиках. Заполняется максимум до 300, давая 15 секунд для погружения, прежде чем сущность начнет тонуть, и 35 секунд, прежде чем сущность погибнет (если она имела 20 единиц здоровья). Уменьшается под водой. Если 0, находясь под водой, сущность теряет 1 единицу здоровья в секунду.
- OnGround: 1 или 0 (true/false) — true, если сущность касается земли.
- NoGravity: 1 или 0 (true/false) — если true, сущность не падает, если находится в воздухе.
- Dimension: Известно лишь, что используется в файле <player>.dat для хранения последнего известного местоположения игрока вместе с координатами. Все остальные сущности сохраняются только в региональных файлах измерения, в котором они находятся. -1 для Нижнего мира, 0 для Верхнего мира, и 1 для Края.
- Invulnerable: 1 или 0 (true/false) — true, если сущность не должна получать урон. Это относится как к живым, так и к неживым существам: мобы не должны получать урон из любого источника (включая эффекты от зелий) и не могут быть перемещены удочками, атаками, взрывами или снарядами, а такие объекты, как транспортные средства и рамки, не могут быть уничтожены, если их опорные блоки не были разрушены. Примечательно, что эти объекты могут быть повреждены игроками, находящимися в режиме «Творчество».
- PortalCooldown: Число тиков, по истечении которого сущность сможет телепортироваться обратно через портал Нижнего мира. Изначально начинается с 300 тиков (15 секунд) после телепортации и отсчитывается до 0.
- UUIDMost: Наиболее значимые биты данной сущности (Universally Unique IDentifier). Это работает совместно с UUIDLeast для формирования уникального идентификатора данной сущности.
- UUIDLeast: Наименее значимые биты данной сущности (Universally Unique IDentifier).
- CustomName: Пользовательское имя данной сущности в текстовом файле JSON. Появляется в сообщениях о смерти игрока и в интерфейсах торговли с деревенским жителем, а также над сущностью, когда курсор игрока находится над ней. Может не существовать, а может и существовать, но быть пустым.
- CustomNameVisible: 1 или 0 (true/false) — если true, и эта сущность имеет пользовательское имя, имя всегда появляется над сущностью, независимо от того, куда указывает курсор. Если сущность не имеет пользовательского имени, отображается имя по умолчанию. Может не существовать.
- Silent: 1 или 0 (true/false) — если true, данная сущность перестаёт издавать звуки. Может не существовать.
- Passengers: Данные сущности, управляющей другой сущностью. Примечательно, что обе сущности управляют движением, но самая верхняя сущность управляет условиями спауна, когда она создается спаунером мобов.
- Смотрите этот формат (рекурсивный).
- Glowing: 1 или 0 (true/false) — true, если сущность имеет светящийся контур.
- Tags: Список тегов системы счёта игровых событий данной сущности.
Мобы
Мобы — это подкласс сущностей с дополнительными тегами для хранения данных об их здоровье, состоянии атаки/получения урона, переносимых эффектах и о многом другом, в зависимости от моба. Игроки являются подклассом моба. bat - Данные сущности
- BatFlags: 1, если летучая мышь висит вниз головой на блоке, 0, если летает.
cat
- Данные сущности
- Tameable: Можно приручить.
- CatType: Идентификатор скина кошки. Любой неверный идентификатор делает кошку невидимой.
- CollarColor: Цвет ошейника кошки. Параметр присутствует даже у неприручённых кошек (однако сам ошейник не отображается); по умолчанию значение равно 14.
chicken
- Данные сущности
- IsChickenJockey: 1 или 0 (true/false) — Является ли маленький зомби наездником на курице. Если true, курица может естественным образом деспауниться, а после смерти выпадет 10 опыта вместо 1-3. Малыши-зомби по-прежнему могут контролировать курицу, на которой ездят, даже если для этого задано значение false.
- EggLayTime: Количество тиков между откладыванием яйца курицей. Откладывание происходит при нулевом значении, и таймер возвращается к новому случайному значению: между 6000 и 12000 тиков.
cod
- Данные сущности
- FromBucket: 1 или 0 (true/false) — Была ли рыба когда-либо выпущена из ведра.
creeper
- Данные сущности
- powered: 1 или 0 (true/false) — Может не существовать. true, если крипер заряжен от удара молнии.
- ExplosionRadius: Радиус самого взрыва, по умолчанию 3.
- Fuse: Указывает начальное значение внутреннего таймера крипера (не влияет на крипера, который падает и взрывается при ударе об жертву). Внутренний таймер возвращается к этому значению, если крипер больше не находится в пределах диапазона атаки. По умолчанию 30.
- ignited: 1 или 0 (true/false) — Был ли крипер подожжен огнивом.
dolphin
- Данные сущности
- TreasurePosX: Это значение X-координаты назначения дельфина, когда тот ведёт игрока к сокровищу, 0, если значение CanFindTreasure установлено на
false
. - TreasurePosY: Это значение Y-координаты назначения дельфина, когда тот ведёт игрока к сокровищу, 0, если значение CanFindTreasure установлено на
false
. - TreasurePosZ: Это значение Z-координаты назначения дельфина, когда тот ведёт игрока к сокровищу, 0, если значение CanFindTreasure установлено на
false
. - GotFish: 1 или 0 (true/false) — Если данный дельфин получил рыбу от игрока.
- CanFindTreasure: 1 или 0 (true/false) — Если данный дельфин может привести игрока к сокровищу.
donkey
- Данные сущности
- Bred: 1 или 0 (true/false) — Неизвестно. Остается 0 после разведения. Если true, заставляет лошадь оставаться рядом с другими лошадьми с этим установленным флагом.
- EatingHaystack: 1 или 0 (true/false) — true, если лошадь пасётся.
- Tame: 1 или 0 (true/false) — true, если лошадь приручена.
- Temper: Диапазон от 0 до 100; увеличивается с кормлением. Более высокие значения делают лошадь легче приручаемой.
- OwnerUUID: Содержит UUID игрока, приручившего лошадь. Не влияет на поведение.
- ArmorItem: Предмет брони, носимый данной лошадью. Может не существовать.
- SaddleItem: Седло, которое носит эта лошадь. Может не существовать. (Мобы, не являющиеся игроками, не могут управлять прирученной лошадью, если у неё нет седла.)
- ChestedHorse: 1 или 0 (true/false) — true, если у лошади есть сундуки. Лошадь с сундуком, которая не является ослом или мулом, вылетит из игры.
- Items: Список предметов. Существует, только если лошадь-сундук — true.
- Предмет, включая тег слота. Слоты пронумерованы от 2 до 16 для ослов и мулов, и ни один не существует для всех других лошадей.
drowned
- Данные сущности
- IsBaby: 1 или 0 (true/false) — true, если данный зомби является ребёнком. Может отсутствовать.
- CanBreakDoors: 1 или 0 (true/false) — true, если зомби могут ломать двери (значение по умолчанию — 0).
- DrownedConversionTime: Количество тиков, пока этот зомби не превратится в утопленника, или кадавр в зомби. (Значение по умолчанию равно −1, когда преобразование не выполняется).
- InWaterTime: Количество тиков, которые этот зомби или кадавр находились под водой, используется для запуска процесса утопления. (Значение по умолчанию равно −1, когда преобразование не выполняется).
ender_dragon
- Данные сущности
- DragonPhase: Число, указывающее текущее состояние дракона. Допустимые значения: 0=кружение, 1=стрельба (подготовка к стрельбе кислотой Края), 2=полёт к порталу и приземление (часть перехода в состояние приземления), 3=посадка на портал (часть перехода в состояние приземления) , 4=вылет из портала (часть перехода из состояния приземления), 5=приземление, выполняет атаку дыханием, 6=приземление, ищет игрока для атаки дыханием, 7=приземление, рёв до начала атаки дыхания, 8=атакующий игрок, 9=полёт к порталу, чтобы умереть, 10=зависание без ИИ (по умолчанию при использовании команды
/summon
).
enderman
- Данные сущности
- carriedBlockState: Необязательный. Блок, который несет странник Края.
- Name: Идентификатор пространства имен блока.
- Properties: Необязательный. Состояния блока.
- Name: Название состояния блока и его значение.
endermite
- Данные сущности
- Lifetime: Как долго чешуйница Края существует в тиках. Исчезает, когда это достигает около 2400.
- PlayerSpawned: Странник Края атакует чешуйницу Края, если это значение равно 1.
evoker
- Данные сущности
- SpellTicks: Количество тиков, пока заклинание не может быть прочитано. Установите положительное значение при сотворении заклинания и уменьшается на 1 такт.
fox
- Данные сущности
- Шаблон:Nbt наследование/приручаемые
- TrustedUUIDs: Игроки, которым лиса доверяет. Для списка, содержащего более 2 элементов, учитываются только первый и последний.
- : UUID каждого доверенного игрока.
- Sleeping: 1 или 0 (true/false) – Спит ли лиса.
- Type: Какой это тип лисы?
- Sitting: 1 or 0 (true/false) – Сидит ли лиса?
- Crouching: 1 or 0 (true/false) – Лиса присела.
ghast
- NBT данные сущности
- ExplosionPower: Радиус взрыва, создаваемого огненными шарами, которыми гаст стреляет. Значение по умолчанию — 1.
horse
- Данные сущности
- Bred: 1 или 0 (true/false) — Неизвестно. Остается 0 после разведения. Если true, заставляет лошадь оставаться рядом с другими лошадьми с этим установленным флагом.
- EatingHaystack: 1 или 0 (true/false) — true, если лошадь пасётся.
- Tame: 1 или 0 (true/false) — true, если лошадь приручена.
- Temper: Диапазон от 0 до 100; увеличивается с кормлением. Более высокие значения делают лошадь легче приручаемой.
- OwnerUUID: Содержит UUID игрока, приручившего лошадь. Не влияет на поведение.
- ArmorItem: Предмет брони, носимый данной лошадью. Может не существовать.
- SaddleItem: Седло, которое носит эта лошадь. Может не существовать. (Мобы, не являющиеся игроками, не могут управлять прирученной лошадью, если у неё нет седла.)
- ChestedHorse: 1 или 0 (true/false) — true, если у лошади есть сундуки. Лошадь с сундуком, которая не является ослом или мулом, вылетит из игры.
- Items: Список предметов. Существует, только если лошадь-сундук — true.
- Предмет, включая тег слота. Слоты пронумерованы от 2 до 16 для ослов и мулов, и ни один не существует для всех других лошадей.
husk
- Данные сущности
- IsBaby: 1 или 0 (true/false) — true, если данный зомби является ребёнком. Может отсутствовать.
- CanBreakDoors: 1 или 0 (true/false) — true, если зомби могут ломать двери (значение по умолчанию — 0).
- DrownedConversionTime: Количество тиков, пока этот зомби не превратится в утопленника, или кадавр в зомби. (Значение по умолчанию равно −1, когда преобразование не выполняется).
- InWaterTime: Количество тиков, которые этот зомби или кадавр находились под водой, используется для запуска процесса утопления. (Значение по умолчанию равно −1, когда преобразование не выполняется).
illusioner
- Данные сущности
- SpellTicks: Определяет количество тактов до того, как заклинание может быть наложено. Принимает положительное значение, если заклинание наложено, и с каждым тактом уменьшается на 1.
iron_golem
- Данные сущности
- PlayerCreated: 1 или 0 (true/false) - true, если этот голем был создан игроком. Если true, голем никогда не атакует игрока.
llama
- NBT данные сущности
- Bred: 1 или 0 (true/false) — неизвестно. Значение 0 остаётся даже после кормления. Если true, лама подходит к другим ламам с тем же значением тега.
- ChestedHorse: 1 или 0 (true/false) — true, если на ламу надет сундук.
- EatingHaystack: 1 или 0 (true/false) — true, если ест сноп сена.
- Tame: 1 или 0 (true/false) — true, если лама приручена.
- Temper: В диапазоне от 0 до 100. Чем выше значение, тем легче приручить ламу. Увеличивается при кормлении.
- Variant: Цвет ламы: 0 = сливовый, 1 = белый, 2 = коричневый 3 = серый.
- Strength: В диапазоне от 1 до 5, по умолчанию 3. Определяет, сколько предметов может нести лама. Также усиливает стремление волков убежать, когда ламы плюются.
- DecorItem: Предмет, который носит лама; обычно это ковёр.
- id: ID предмета.
- Damage: Разновидность предмета.
- OwnerUUID: Содержит UUID игрока, который приручил ламу. Не влияет на поведение.
- Items: Список предметов. Существует, только если
ChestedHorse
= 1. - Предмет, включая номер слота.
magma_cube
- Данные сущности
- Size: Размер лавового куба. Обратите внимание, что это значение основано на нуле, поэтому 0 — это наименьший лавовый куб, 1 — следующий больший, и т.д. Естественно, размеры, которые появляются, равны 0, 1 и 3.
- wasOnGround: 1 или 0 (true/false) — true если лавовый куб касается земли.
mooshroom
- Данные сущностей
- Type: Тип грибной коровы это.
- EffectId: Необязательный. Байт, указывающий тип эффекта состояния, который коричневый гриб может дать подозрительному рагу.
- EffectDuration: Необязательный. Целое число, указывающее продолжительность эффекта статуса, который коричневый гриб может дать подозрительному рагу.
mule
- Данные сущности
- Bred: 1 или 0 (true/false) — Неизвестно. Остается 0 после разведения. Если true, заставляет лошадь оставаться рядом с другими лошадьми с этим установленным флагом.
- EatingHaystack: 1 или 0 (true/false) — true, если лошадь пасётся.
- Tame: 1 или 0 (true/false) — true, если лошадь приручена.
- Temper: Диапазон от 0 до 100; увеличивается с кормлением. Более высокие значения делают лошадь легче приручаемой.
- OwnerUUID: Содержит UUID игрока, приручившего лошадь. Не влияет на поведение.
- ArmorItem: Предмет брони, носимый данной лошадью. Может не существовать.
- SaddleItem: Седло, которое носит эта лошадь. Может не существовать. (Мобы, не являющиеся игроками, не могут управлять прирученной лошадью, если у неё нет седла.)
- ChestedHorse: 1 или 0 (true/false) — true, если у лошади есть сундуки. Лошадь с сундуком, которая не является ослом или мулом, вылетит из игры.
- Items: Список предметов. Существует, только если лошадь-сундук — true.
- Предмет, включая тег слота. Слоты пронумерованы от 2 до 16 для ослов и мулов, и ни один не существует для всех других лошадей.
ocelot
- Данные сущности
- Trusting: 1 или 0 (true/false) - true, если оцелот доверяет игрокам.
panda
- Данные сущности
- MainGene: Основной ген, который имеет эта панда, который может передать ребенку.
- HiddenGene: Вторичный ген, который имеет эта панда, который может передать ребенку.
parrot
- Данные сущности
- Шаблон:Nbt наследование/приручаемые
- Variant: Определяет цветовой вариант попугая, по умолчанию 0.
phantom
- Данные сущности
- AX: Фантом, когда не активно атакует, будет пытаться обойти X,Y,Z =
AX
, AY
, AZ
. Появляется для сброса в точку выше целевого игрока каждый раз, когда фантом взлетает после удара. Установить место появления, если не указано. - AY: См.
AX
- AZ: См.
AX
- Size: Размер фантома. Диапазон от
0
до 64
, аналогично слизям. В отличие от слизи, фантомы всегда имеют постоянную 20 ( × 10) здоровья и наносят 6 ()+size
урона. Естественно заспауненные фантомы всегда имеют размер 0.
pig
- Данные сущности
- Saddle: 1 или 0 (true/false) - true, если есть седло на свинье.
pufferfish
- Данные сущности
- FromBucket: 1 или 0 (true/false) - Была ли рыба когда-либо выпущена из ведра.
- PuffState: Значение от 0–2. 0 означает, что рыба сдута, 1 означает, что она наполовину надулась, а 2 означает, что она полностью распухла.
rabbit
- Данные сущности
- RabbitType: Определяет скин кролика. Также определяет, должен ли кролик быть враждебным.
- MoreCarrotTicks: Устанавливается на 40, когда съедается урожай моркови, уменьшается на 0–2 каждый тик, пока не достигнет 0. Не имеет эффекта в игре.
salmon
- Данные сущности
- FromBucket: 1 или 0 (true/false) - Была ли рыба когда-либо выпущена из ведра.
sheep
- Данные сущности
- Sheared: 1 или 0 (true/false) - true, если овца пострижена.
- Color: Цвет овцы. По умолчанию 0.
snow_golem
- Данные сущности
- Pumpkin : 1 или 0 (true/false) - true, если тыква надета на голову.
trader_llama
- NBT данные сущности
- Bred: 1 или 0 (true/false) — неизвестно. Значение 0 остаётся даже после кормления. Если true, лама подходит к другим ламам с тем же значением тега.
- ChestedHorse: 1 или 0 (true/false) — true, если на ламу надет сундук.
- EatingHaystack: 1 или 0 (true/false) — true, если ест сноп сена.
- Tame: 1 или 0 (true/false) — true, если лама приручена.
- Temper: В диапазоне от 0 до 100. Чем выше значение, тем легче приручить ламу. Увеличивается при кормлении.
- Variant: Цвет ламы: 0 = сливовый, 1 = белый, 2 = коричневый 3 = серый.
- Strength: В диапазоне от 1 до 5, по умолчанию 3. Определяет, сколько предметов может нести лама. Также усиливает стремление волков убежать, когда ламы плюются.
- DecorItem: Предмет, который носит лама; обычно это ковёр.
- id: ID предмета.
- Damage: Разновидность предмета.
- OwnerUUID: Содержит UUID игрока, который приручил ламу. Не влияет на поведение.
- Items: Список предметов. Существует, только если
ChestedHorse
= 1. - Предмет, включая номер слота.
tropical_fish
- Данные сущности
- FromBucket: 1 или 0 (true/false) - Была ли рыба когда-либо выпущена из ведра.
- Variant: 4-байтовое целое число.
Существует 22 разновидности тропической рыбы, наиболее часто встречающихся в игровом мире, обладающие значениями тегов Variant
из таблицы, в которой перечислены характеристики — какие цвета, формы и узоры поступают из данного значения.
Форма | Узор | Основной цвет | Цвет для узора | Вариант | Наименование |
0 | 0 | 1 | 0 | 65536 | Orange-White Kob |
0 | 0 | 14 | 0 | 917504 | Red-White Kob |
1 | 3 | 14 | 0 | 918273 | Red-White Blockfish |
1 | 4 | 14 | 0 | 918529 | Red-White Betty |
1 | 5 | 0 | 1 | 16778497 | White-Orange Clayfish |
0 | 4 | 5 | 3 | 50660352 | Lime-Sky Brinely |
0 | 5 | 6 | 3 | 50726144 | Rose-Sky Spotty |
0 | 1 | 7 | 3 | 50790656 | Gray-Sky SunStreak [только для Bedrock Edition] |
1 | 0 | 0 | 4 | 67108865 | White-Yellow Flopper |
0 | 5 | 0 | 4 | 67110144 | White-Yellow Spotty |
1 | 1 | 4 | 4 | 67371265 | Yellow Stripey |
1 | 3 | 10 | 4 | 67764993 | Plum-Yellow Blockfish |
0 | 3 | 9 | 6 | 101253888 | Teal-Rose Dasher |
1 | 2 | 0 | 7 | 117441025 | White-Gray Glitter |
0 | 3 | 0 | 7 | 117441280 | White-Gray Dasher |
0 | 4 | 0 | 7 | 117441536 | White-Gray Brinely |
1 | 1 | 1 | 7 | 117506305 | Orange-Gray Stripey |
1 | 0 | 7 | 7 | 117899265 | Gray Flopper |
0 | 1 | 11 | 7 | 118161664 | Blue-Gray SunStreak |
0 | 1 | 0 | 8 | 134217984 | White-Silver Sunstreak |
1 | 0 | 7 | 11 | 185008129 | Gray-Blue Flopper [только для Java Edition] |
1 | 5 | 0 | 14 | 234882305 | White-Red Clayfish |
0 | 2 | 7 | 14 | 235340288 | Gray-Red Snooper |
turtle - Данные сущности
- HasEgg: 1 или 0 (true/false) - true, если у черепахи есть яйцо.
- HomePosX: Координата X, к которой черепаха движется, чтобы отложить яйца после размножения
- HomePosY: Координата Y, к которой черепаха движется, чтобы отложить яйца после размножения
- HomePosZ: Координата Z, к которой черепаха движется, чтобы отложить яйца после размножения
- TravelPosX: Используется для плавания к случайным точкам в воде.
- TravelPosY: Используется для плавания к случайным точкам в воде.
- TravelPosZ: Используется для плавания к случайным точкам в воде.
vex
- Данные сущности
- BoundX: Когда досаждатель бездействует, он выбирает блоки в области 15×11×15, чей центр расположен в относительной системе координат X, Y, Z =
BoundX
BoundY
BoundZ
. Этот центр обычно является местом, когде вызыватель призвал досаждателя или, если тот не участвовал, местом, куда он начал двигаться в первый раз. - BoundY: См.
BoundX
- BoundZ: См.
BoundX
- LifeTicks: Количество тактов, которое досаждатель будет жить, уменьшается на 1 за 1 такт. Когда количество тактов достигает нуля, досаждатель начинает получать урон и количество тактов
LifeTicks
становится равным 20.
wither
- Данные сущности
- Invul: Количество тиков неуязвимости, оставшихся после первоначального создания. 0, когда неуязвимость истекла
wolf
- Данные сущности
- CollarColor: Цвет ошейника. Существует даже для диких волков (но не отображается); значение по умолчанию: 14.
zombie
- Данные сущности
- IsVillager: 1 или 0 (true/false) — true (истина), если зомби инфицировал жителя. Может отсутствовать.
- IsBaby: 1 или 0 (true/false) — true (истина), если зомби является ребёнком. Может отсутствовать.
- ConversionTime: время в тактах, за которое инфицированный житель превращается в обычного жителя.
- CanBreakDoors: 1 или 0 (true/false) — true (истина), если зомби может выламывать деревянные двери (по умолчанию, 0).
zombie_horse
- Данные сущности
- Bred: 1 или 0 (true/false) — Неизвестно. Остается 0 после разведения. Если true, заставляет лошадь оставаться рядом с другими лошадьми с этим установленным флагом.
- EatingHaystack: 1 или 0 (true/false) — true, если лошадь пасётся.
- Tame: 1 или 0 (true/false) — true, если лошадь приручена.
- Temper: Диапазон от 0 до 100; увеличивается с кормлением. Более высокие значения делают лошадь легче приручаемой.
- OwnerUUID: Содержит UUID игрока, приручившего лошадь. Не влияет на поведение.
- ArmorItem: Предмет брони, носимый данной лошадью. Может не существовать.
- SaddleItem: Седло, которое носит эта лошадь. Может не существовать. (Мобы, не являющиеся игроками, не могут управлять прирученной лошадью, если у неё нет седла.)
zombie_villager
- Данные сущности
- IsBaby: 1 или 0 (true/false) — true, если данный зомби является ребёнком. Может отсутствовать.
- CanBreakDoors: 1 или 0 (true/false) — true, если зомби могут ломать двери (значение по умолчанию — 0).
- DrownedConversionTime: Количество тиков, пока этот зомби не превратится в утопленника, или кадавр в зомби. (Значение по умолчанию равно −1, когда преобразование не выполняется).
- InWaterTime: Количество тиков, которые этот зомби или кадавр находились под водой, используется для запуска процесса утопления. (Значение по умолчанию равно −1, когда преобразование не выполняется).
- ConversionTime:если -1, зомби не будут вылечиваться. Положительные числа — время в тиках, до выздоровления. Эффект регенерации будет параллелен этому.
- ConversionPlayerLeast: Наименее значимые биты UUID игрока, который начал лечить зомби, чтобы присоединиться к
ConversionPlayerMost
для формирования уникального идентификатора. - ConversionPlayerMost: Наиболее значимые биты UUID игрока, который начал лечить зомби, должны быть объединены с
ConversionPlayerLeast
для формирования уникального идентификатора. - ConversionPlayer: UUID игрока, который начал лечить зомби, хранится как четыре целых.
- Данные деревенских жителей: Информация о типе биома, профессии и уровне.
- level: Текущий уровень профессии этого жителя деревни. Влияет на сделки, генерируемые деревенским жителем. Если он превышает максимальный уровень своей профессии, новые предложения не появляются. Увеличивается, когда деревенский житель заполняет свой торговый бар. Также используется для рендеринга кошельков.
- 1: Новичок
- 2: Подмастерье
- 3: Ремесленник
- 4: Эксперт
- 5: Мастер
- profession: Текстовый ID параметр, указывающий профессию деревенского жителя; см. «Профессии деревенских жителей».
- type: Текстовый ID параметр, указывающий тип биома жителя.
- Gossips: Части болтовни, которыми обмениваются жители при встрече.
- Часть болтовни.
- Type: Значение ИД, указывающее тип болтовни. Возможные значения:
major_negative
— «сильно негативный» minor_negative
— «немного негативный» major_positive
— «сильно позитивный» minor_positive
— «немного позитивный» trading
— «торгующий»
- Value: Сила болтовни.
- Для
major_negative
: значение от −5 до 100, +25 если он хочет убить другого жителя деревни, −10 каждые 20 минут, −10 при совместном использовании - Для
minor_negative
: значение от −1 до 200, +25 при попадании -20 каждые 20 минут, -20 при совместном использовании - Для
major_positive
: значение от 5 до 100, +20 когда вылечен, не уменьшается при совместном использовании - Для
minor_positive
: значение от 1 до 200, +25 при излечении, -1 каждые 20 мин, −5 при совместном использовании - Для
trading
: значение от 1 до 25, +2 за сделку, -2 каждые 20 минут, −20 при совместном использовании
- TargetMost Наиболее значимая часть сделок UUID. При присоединении к
TargetLeast
формируется полный UUID. Цель - игрок, вызвавший болтовню. - TargetLeast Наименее значимая часть сделок UUID. Объединяется с
TargetMost
для формирования полного UUID. - Target [UUID]] игрока, вызвавшего болтовню, хранится как четыре целых.
- Xp: Количество опыта которое имеет житель в настоящее время, увеличивается с торговлей в различных количествах.
- от 0 до 9: Новичок
- от 10 до 69: Подмастерье
- от 70 до 149: Ремесленник
- от 150 до 249: Эксперт
- от 250 и более: Мастер
- Offers: Генерируется при первом открытии торгового меню.
- Recipes: Список сделок.
- Параметры сделок.
- rewardExp: 1 или 0 (true/false) указывает предоставлять ли при совершении сделки опыт игроку. Все естественно появившиеся деревенские жители в Java Edition при совершении сделки дают сферы опыта.
- maxUses: Максимальное количество раз, которое эта сделка может быть использована до её блокировки. Увеличивается случайным образом с 2 до 12 при обновлении предложений.
- uses: Количество совершенных сделок. Сделка блокируется, когда она больше или равна maxUses.
- buy: Первый элемент «стоимость», без тега Slot.
- buyB: Необязательный. Второй элемент «стоимость», без тега Slot.
- sell: Товар продается за каждый набор предметов без тега Slot.
- xp: Сколько опыта получает деревенский житель от этой сделки.
- priceMultiplier: Множитель на demand регулятор цен; окончательная скорректированная цена добавляется к цене первого элемента «затрат».
- specialPrice: Модификатор, добавленный к первоначальной цене первого элемента «стоимость».
- demand: Регулятор цены первого элемента «затрат» на основе спроса. Обновляется, когда житель пополняет запасы.
glow_squid
[заплан.] - Данные сущности
- DarkTicksRemaining: Количество тактов, по истечении которых моб начнёт светиться. Когда спрут не светится, он принимает положительные значения; при свечении принимает значение 0.
Снаряды
Снаряды являются подклассом сущности и имеют очень непонятные теги, такие как X, Y, Z (теги координат), несмотря на имеющийся тег сущности Pos
, inTile
, несмотря на inGround
, они колеблются, несмотря на то, что большинство снарядов не являются стрелами. В то время как все снаряды имеют общие теги, все они независимо друг от друга реализуются через Throwable
и ArrowBase
. fireball
Формат чанка/Снаряды
- Item: Элемент для отображения, может отсутствовать.
- ExplosionPower: Мощность и размер взрыва, создаваемого огненным шаром при ударе. По умолчанию — 1.
small_fireball
- Данные сущности
- Power
- Item: Для рендера может отсутствовать.
- ExplosionPower: Стандартное значение силы взрыва равно 1.
wither_skull
- Данные сущности
- direction: Список из 3 пар. Должен быть идентичен
Motion
. - life: Увеличивает каждый тик, когда снаряд не движется; сбрасывается в 0, если он движется. Не имеет никакого эффекта, хотя все еще сохраняется/читается
- power: Список 3-х двойных, который добавляет к
direction
каждому тику. Действует как ускорение.
Предметы и сферы опыта
Предметы-сущности |
Идентификатор сущности | Наименование |
experience_orb | Сфера опыта |
item | Брошенный предмет |
Предметы и сферы опыта являются подклассом сущности.
item
- Данные сущности
- Age: Количество тактов, по истечении которых деспаунится предмет; по умолчанию значение равно 6000 тактам (5 минутам). Если установлено значение −32768, то сущность никогда не исчезнет.
- Health: Здоровье предмета, значение которого по умолчанию равно 5. Эти сущности получают урон от огня, лавы, падающей наковальни[только для Java Edition] и взрывов. Предмет исчезает, когда значение достигает 0.
- Item: Предмет из инвентаря, не имеющий тега
slot
. - Owner: Если этот УУИД присутствует у игрока, то только он может подобрать тот или иной предмет. Используется командами
/give
и /summon
, чтобы не дать игроку без УУИД подобрать предмет. - PickupDelay: Количество тактов, в течение которых предмет не может быть подобран, с каждым тактом значение уменьшается на 1. Если значение равно 32767, то тег не уменьшается, предотвращая поднятие предмета.
- Thrower: УУИД игрока, из которого выпал предмет. Отсутствует, если предмет не был выброшен игроком.
Транспорт
Транспорт является подклассом сущности. Динамические блоки
Динамические блоки-сущности |
Идентификатор сущности | Наименование |
falling_block | Динамический блок |
tnt | ТНТ |
Динамические блоки являются подклассом сущности и используются для моделирования реалистично движущихся блоков.
falling_block
- Данные сущности
- BlockState: Падающий блок, представленный этой сущностью.
- DropItem: 1 или 0 (true/false) — true, если при разрушении блок должен выпасть как предмет. Любой блок, не имеющий предмета с тем же идентификатором, что и у него, не удаляется, даже если он установлен.
- FallHurtAmount: Умножается на значение
FallDistance
, чтобы вычислить наносимый урон. По умолчанию значение всегда равно 2. - FallHurtMax: Максимальное количество единиц урона, наносимое сущностям, на которых упал
falling_block
. В игре всегда по умолчанию равно 40 ( × 20). - HurtEntities: 1 или 0 (true/false) — true, если блок при падении может нанести урон сущности.
- TileEntityData: Необязательный для работы тег, устанавливающий теги блока-сущности для соответствующего блока.
- Time: Количество тактов, в течение которых существует указанная сущность. Когда установлено значение 0, то по истечении 1 такта сущность исчезает, если блок в этом месте имел идентификатор, отличающийся от
TileID
сущности. Если блок в своём положении имеет тот же идентификатор, что и TileID
во время Time
, число тактов которого равно от 0 до 1, то блок удаляется, а сущность продолжает падать, перезаписав его. Когда значение Time
достигает 600 или же 100 (в случае если координата Y равна 0), сущность удаляется.
tnt
- Динамические данные блока-сущности
- Fuse: Такты до взрыва. По умолчанию 0. При активации блока ТНТ продолжительность составляет 80 тактов (4 секунды).
Другое
Другие типы сущностей, которые являются подклассом сущности, но не входят ни в одну из вышеперечисленных категорий. armor_stand - Данные сущности
- ActiveEffects: Список эффектов, наложенных на данного моба. Может не существовать.
- Эффект
- Id: ID эффекта.
- Amplifier: Уровень эффекта. Значение 0 равно уровню 1.
- Duration: Количество тиков до полного снятия эффекта.
- Ambient: 1 или 0 (true/false) — true, если данный эффект наложен маяком и поэтому его частицы не должны отображаться на экране.
- ShowParticles: 1 или 0 (true/false) — true, если частицы отображаются (также касается параметра «Ambient»). false, если частицы не отображаются.
- ShowIcon: 1 или 0 (true/false) — true, если иконка эффекта отображается. false, если иконка не отображается.
- HandItems: Список предметов, находящихся в руках стойки для брони. Каждый составной тег в списке — это предмет без тега слота. Обе записи всегда существуют, но могут быть пустыми составными тегами, чтобы не указывать на предмет.
- 0: Предмет в главной руке стойки для брони.
- 1: Предмет во второй руке стойки для брони.
- ArmorItems: Список предметов, надетых на стойку для брони как броня. Каждый составной тег в списке — это предмет без тега слота. Все 4 записи всегда существуют, но могут быть пустыми составными тегами, чтобы не указывать на предмет.
- 0: Слот ботинок
- 1: Слот понож
- 2: Слот кирас
- 3: Слот шлемов
- Marker: 1 или 0 (true/false) — если true, размер стойки для брони устанавливается на 0, её хитбокс сильно уменьшается, а взаимодействие со стойкой становится невозможным. Может не существовать.
- Invisible: 1 или 0 (true/false) — если true, стойка для брони становится невидимой, однако предметы, находящиеся на ней, остаются видимыми.
- NoBasePlate: 1 или 0 (true/false) — если true, основание стойки для брони не отображается.
- FallFlying: Когда значение для неигровой сущности установлено на 1, сущность будет постоянно скользить по воздуху, пока в слоте для кирасы находятся элитры. Может использоваться для обнаружения, когда игрок скользит без использования системы счёта игровых событий.
- Pose: Значение, определяющее вращение стойки для брони.
- Body: Вращения, индивидуальные для туловища.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- LeftArm: Вращения, индивидуальные для левой руки.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- RightArm: Вращения, индивидуальные для правой руки.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- LeftLeg: Вращения, индивидуальные для левой ноги.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- RightLeg: Вращения, индивидуальные для правой ноги.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- Head: Вращения, индивидуальные для головы.
- : x-вращение.
- : y-вращение.
- : z-вращение.
- ShowArms: 1 или 0 (true/false) — если true, у стойки для брони отображаются полноценные руки. Если false, то взаимодействие со слотом руки отключается.
- Small: 1 или 0 (true/false) — если true, то стойка для брони сильно уменьшается в размере, становится похожа на зомби-малыша.
- Brain: Предметы, которые данная стойка для брони может воспринимать.
- memories: Пусто для всех, кроме деревенских жителей.
- DisabledSlots: Поле битов, позволяющее отключать размещение/замену/снятие элементов брони. Например, значение
2039583
отключает размещение, снятие и замену всей экипировки.
Двоичное значение | Целое число | Результат |
2^0 | 1 | Отключить снятие предметов из рук |
2^1 | 2 | Отключить снятие ботинок |
2^2 | 4 | Отключить снятие понож |
2^3 | 8 | Отключить снятие кирас |
2^4 | 16 | Отключить снятие шлемов |
2^8 | 256 | Отключить замену предметов из рук |
2^9 | 512 | Отключить замену ботинок |
2^10 | 1024 | Отключить замену понож |
2^11 | 2048 | Отключить замену кирас |
2^12 | 4096 | Отключить замену шлемов |
2^16 | 65536 | Отключить добавление предметов из рук |
2^17 | 131072 | Отключить добавление ботинок |
2^18 | 262144 | Отключить добавление понож |
2^19 | 524288 | Отключить добавление кирас |
2^20 | 1048576 | Отключить добавление шлемов |
Формат блока-сущности
Блок-сущность (не относится к сущности) используется Minecraft для хранения инфориации о блоке, информации, которая не может быть сохранена в состояниях блока. Блоки-сущности назывались «объектами-сущностями» до предварительных сборок 1.8 и этот термин всё ещё используется в некоторых применяемых командах. banners - NBT данные блока-сущности
- id:
banner
- x: Координаты блока-сущности по оси X.
- y: Координаты блока-сущности по оси Y.
- z: Координаты блока-сущности по оси Z.
- Base: Определяет цвет фона флага.
- Patterns: Список шаблонов, применяемых для флага.
- : Индивидуальный шаблон.
- Color: Цвет сегмента.
- Pattern: Доступные цвета для сегмента флага.
beehive
- NBT данные блока
- FlowerPos: Запоминает расположение цветка, чтобы другие пчёлы могли к нему подойти.
- X: X координата цветка.
- Y: Y координата цветка.
- Z: Z координата цветка.
- Bees: Сущности, находящиеся в данный момент в гнезде/улье.
- Сущность в гнезде/улье.
- MinOccupationTicks: Минимальное количество времени в тиках, в течение которого сущность будет находиться в гнезде/улье.
- EntityData: NBT данные сущности, находящейся в гнезде/улье.
bell
- NBT данные блока-сущности
- id:
bell
- x: Координаты блока-сущности по оси X.
- y: Координаты блока-сущности по оси Y.
- z: Координаты блока-сущности по оси Z.
brewing_stand
- NBT данные блока-сущности
- id:
brewing_stand
- x: Координаты блока-сущности по оси X.
- y: Координаты блока-сущности по оси Y.
- z: Координаты блока-сущности по оси Z.
- Lock: Опционально. Блокирует варочную стойку.
- CustomName: Опционально. Изменяет название варочной стойки, которое отображается в окне.
- Items: Список предметов в варочной стойке.
- : Предмет в варочной стойке, включая номер слота. Слоты варочной стоки нумеруются от 0 до 3.
- BrewTime: Время в тактах до окончания варки.
- Fuel: Оставшееся количество топлива для варочной стойки.
chest
- NBT данные блока-сущности
- id:
chest
- x: Координаты блока-сущности по оси X.
- y: Координаты блока-сущности по оси Y.
- id: Координаты блока-сущности по оси Z.
- CustomName: Опционально. Меняет название сундука.
- Lock: Опционально. Блокирует сундук.
- Items: Список предметов в сундуке.
- : Предмет в сундуке, включая номер слота. Ячейки в сундуке нумеруются от 0 до 26. 0 обозначает слот в верхнем левом углу.