Что такое LibsDisguises?
LibsDisguises — это плагин, который позволяет серверам маскировать любую сущность под любой другой тип сущности. Например, вы можете замаскировать игроков под овец или замаскировать овец под игроков.
Существуют бесплатная и премиум версии LibsDisguises. LibsDisguises был создан и поддерживается другими разработчиками, поэтому, пожалуйста, не просите поддержки по нему в разделах поддержки EliteMobs.
Как замаскировать сущность под игрока?
Чтобы замаскировать пользовательского босса (или регионального босса, или даже NPC!) под игрока, всё, что вам нужно сделать, — это добавить следующую строку в конфигурационный файл босса:
disguise: player:name
Например, если вы хотите замаскировать босса под скин моего игрока, строка конфигурации будет выглядеть так:
disguise: player:magmaguy
Примечание: если вы настроили пользовательскую модель для вашего босса с помощью системы пользовательских моделей EliteMobs, пользовательская модель будет иметь приоритет, и маскировка не будет применена. Вам следует использовать либо пользовательские модели, ЛИБО маскировки, но не оба.
Видимость никнейма при маскировке под игрока
При использовании маскировок под игрока видимость никнейма управляется настройкой конфигурации EliteMobs alwaysShowEliteMobNameTags в файле config.yml. Если эта настройка включена, маскировки под игрока будут отображать пользовательское имя сущности над её головой. Если отключена, никнеймы будут скрыты, за исключением сущностей-жителей (Villager), которые всегда отображают никнеймы независимо от этой настройки.
Как замаскировать сущность под скин игрока, но не обязательно под игрока?
Это самый гибкий способ замаскировать сущность под игрока, так как он позволяет администраторам использовать онлайн-скины или даже создавать собственные для маскировки босса. Это также немного сложнее сделать.
Для простоты примеры, перечисленные здесь, предполагают, что вы собираетесь использовать скин, доступный онлайн. LibsDisguises предоставляет разные способы десериализации скинов, в том числе один, где вы помещаете свой собственный пользовательский скин в их папку. Проверьте их документацию, если вы не хотите использовать скин, уже доступный онлайн.
1. Задание маскировки
Для маскировки вам нужно сделать что-то вроде этого:
disguise: custom:your_unique_skin_name
2. Генерация данных маскировки
Это самая сложная часть. Вы начинаете с создания следующей записи конфигурации:
customDisguiseData: player your_unique_skin_name setskin
Крайне важно, чтобы имя, которое вы задаёте в disguise для your_unique_skin_name, совпадало с тем, что в customDisguiseData!
Затем вам нужно будет десериализовать скин игрока. Самый простой способ сделать это для скина, общедоступного онлайн, — использовать команду LibsDisguises /grabskin.
Допустим, вы хотите получить этот скин.
Чтобы сделать это, вам нужно выполнить команду /grabskin https://www.minecraftskins.com/uploads/skins/2021/07/28/buff-villager-18512841.png?v437
Примечание: вам нужно предоставить прямую ссылку на файл скина, а не на страницу, содержащую скин. Обратите внимание, куда указывает ссылка. В skindex вы можете получить прямую ссылку, нажав кнопку "Image Link", которая присутствует в правом нижнем углу каждого скина.
После того как вы успешно это сделаете, LibsDisguises предоставит вам около 3–6 чисел с надписью "Click to copy". Если вы нажмёте на них, появится длинный список цифр и букв. Вам нужно убедиться, что вы начинаете с 1 и проходите все числа по порядку. Чтобы скопировать их, нажмите ctrl-a, а затем ctrl-c, потом вставьте их в файл с помощью ctrl-v. После завершения это должно выглядеть примерно так:
customDisguiseData: player your_unique_skin_name setskin {"id":"d1fbb77f-b184-4718-b0a2-c7ae866798d3","name":"Unknown","properties":[{"name":"textures","value":"ewogICJ0aW1lc3RhbXAiIDogMTYyNzU0ODkwMjQ0OSwKICAicHJvZmlsZUlkIiA6ICIxOTI1MjFiNGVmZGI0MjVjODkzMWYwMmE4NDk2ZTExYiIsCiAgInByb2ZpbGVOYW1lIiA6ICJTZXJpYWxpemFibGUiLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzlmYTZkMWFlODA2YTY2OGI0OTgzYmZhY2ZkMGUzMzQ5MGE5MGU4YTZmMWE2MmEwZGQ5YzQ1YjdkYjBiNjU1MyIKICAgIH0KICB9Cn0=","signature":"P/XSvxX45MUZGc5uuDKuVgmMUk2V1HADPI84Os5J4NnmURhLeS4jL4FSeShmz0cH7sBWmMg80g9ADP33R9PcOmzbHK4hJBFt2VYLJNgSYHK6VGp6qLGXDfdAa3vRNXN7jKtsrqVEANax7Gzv3xcWARLbq1FuQ6yYdXDY8Coc02Y/POMRG/i6iACtro5DQGhr2JgbL++95UhSBFxmU82Zef3UMHLfgt7lC4vWN4c4xrOAKllzF2mwohuMmEkoKzu/6s/eu5q4J4bBH08M8UN02/yJuEH5sTy/iVJfaoPs90ZfcVdRpUZvVDZh5eXapQN1/Q9/79Pc8YOXF/20iygZ/hpvTPKP8wbMP2b1cJSyAaEIUtG9I7mG3bAXbH7mcswM1CNFF3+GEFnZI5dPxzuOelJR/t2mtVl82a4zEm9KG9Fq7iGfuK9aiWR8Yot1KeuIddPbBL8JnxHy2wW9OySjzAbs8tUI/i5KKmZmQrPH0RmHrFIuVK4C849QtRt57sQaUr1+W6Vto3r7J5jhpZ30wIIfS9hvW/ReB9rbwUQWERWie5Lchfcp7YkKbzuuaddnIjPew2IQDESlXzVW84kXtYKCs8hFgYVn27wU8jqtBCVkr0iHW7YLQTl4SFUzTFCSgAx5KSFHGm/4kqXqpHNdjS687o13MWpxrxLkV1svIp4="}],"legacy":false}
И это всё! customDisguiseData будет работать с любым десериализованным кодом скина, так что если вы найдёте другие способы генерации того же кода в LibsDisguises, вы можете использовать его здесь.
Преимущество customDisguiseData в том, что он самодостаточен, то есть вам не нужно полагаться на онлайн-игроков, игроков с определёнными скинами или что-либо ещё. EliteMobs использует его, чтобы наделять скинами всех замаскированных боссов в паках подземелий!
Как замаскировать пользовательского босса под другой тип сущности?
Чтобы замаскировать пользовательского босса (или регионального босса) под другой тип сущности, всё, что вам нужно сделать, — это добавить следующую строку в конфигурационный файл босса:
disguise: ENTITY_TYPE
Например, если вы хотите, чтобы ваш пользовательский босс был замаскирован под овцу, вы сделаете:
disguise: SHEEP
Как замаскировать пользовательского босса под детёныша сущности?
Чтобы замаскировать пользовательского босса (или регионального босса) под детёныша сущности, всё, что вам нужно сделать, — это добавить следующую строку в конфигурационный файл босса:
disguise: HOGLIN:baby
Как вы можете видеть в этом примере, наш босс будет замаскирован под детёныша хоглина.
Как замаскировать сущность с помощью пользовательской маскировки?
Чтобы замаскировать пользовательского босса (или регионального босса) под пользовательскую сущность LibsDisguises, вам сначала нужно создать маскировку LibsDisguises.
После того как это сделано, правильный синтаксис таков:
disguise: custom:your_custom_disguise_name
Допустимые маскировки
Официального списка допустимых типов сущностей нет, но вот неофициальный список. Этот список был в последний раз обновлён для Minecraft 1.16 (август 2020). Более новые версии Minecraft (1.17+) включают дополнительные типы сущностей, такие как AXOLOTL, GLOW_SQUID, GOAT, ALLAY, FROG, TADPOLE, WARDEN, CAMEL, SNIFFER, BREEZE, BOGGED и ARMADILLO.
Полный список сущностей, совместимых с вашей версией Minecraft, см. в документации Spigot EntityType или в документации плагина LibsDisguises
Развернуть список
ARMOR_STAND
ARROW
BAT
BLAZE
BOAT
CAT
CAVE_SPIDER
CHICKEN
COD
COW
CREEPER
DOLPHIN
DONKEY
DRAGON_FIREBALL
DROWNED
DROPPED_ITEM
EGG
ELDER_GUARDIAN
ENDER_CRYSTAL
ENDER_DRAGON
ENDER_PEARL
ENDER_SIGNAL
ENDERMAN
ENDERMITE
EVOKER
EVOKER_FANGS
EXPERIENCE_ORB
FALLING_BLOCK
FIREBALL
FIREWORK
FISHING_HOOK
FOX
GHAST
GIANT
GUARDIAN
HOGLIN
HORSE
HUSK
ILLUSIONER
IRON_GOLEM
ITEM_FRAME
LLAMA
LLAMA_SPIT
LEASH_HITCH
MAGMA_CUBE
MINECART
MINECART_CHEST
MINECART_COMMAND
MINECART_FURNACE
MINECART_HOPPER
MINECART_MOB_SPAWNER
MINECART_TNT
MODDED_MISC
MODDED_LIVING
MULE
MUSHROOM_COW
OCELOT
PAINTING
PANDA
PARROT
PHANTOM
PIG
PIG_ZOMBIE
PIGLIN
PILLAGER
PLAYER
POLAR_BEAR
PRIMED_TNT
PUFFERFISH
RABBIT
RAVAGER
SALMON
SHEEP
SHULKER
SHULKER_BULLET
SILVERFISH
SKELETON
SKELETON_HORSE
SLIME
SMALL_FIREBALL
SNOWBALL
SNOWMAN
SPECTRAL_ARROW
SPLASH_POTION
SQUID
STRAY
STRIDER
THROWN_EXP_BOTTLE
TIPPED_ARROW
TRIDENT
TRADER_LLAMA
TROPICAL_FISH
TURTLE
VEX
VILLAGER
VINDICATOR
WANDERING_TRADER
WITCH
WITHER
WITHER_SKELETON
WITHER_SKULL
WOLF
ZOGLIN
ZOMBIE
ZOMBIE_HORSE
ZOMBIE_VILLAGER
ZOMBIFIED_PIGLIN
AXOLOTL
GLOW_SQUID
GOAT
ALLAY
FROG
TADPOLE
WARDEN
CAMEL
SNIFFER
BREEZE
BOGGED
ARMADILLO