Плагины/FeatherMorph
FeatherMorph

FeatherMorph

Yet another disguise plugin. Disguise as mobs and players, then acquire unique skills and abilities!

51.6K
91

2.8.0-alpha.2

alpha10 декабря 2025 г.

Bug Fix

  • Debug message Text icon for <...> is <...> spamming in console if any usage of disguise text icon is invoked

Full Changelog: https://github.com/NiFeather/FeatherMorph/compare/2.8.0-alpha.1...2.8.0-alpha.2

2.6.0-alpha.3

alpha10 декабря 2025 г.

New Features

  • Now an instance of DisguiseProperty can declare that it's invisible for the client mod
    • FeatherMorph doesn't have properties that require this feature yet; it's mainly made for other plugins' development.
  • Added readString method for InputHandles.
  • The plugin will now attempt to show the exception's message if it occurred while updating or has been forwarded to the DisguiseState.
  • Bring the ability for async player data loading in Instance Network to IManagePlayerData.
    • Currently, only when the Instance Network is enabled, and the current server is a Slave Server in the network, the async loading feature is fully utilized.
    • If supported, when a player enters the configuration state, the plugin will attempt to load their data async, and wait for up to 150ms per player, then allow them to keep logging in after the timeout, and notify their client when the data finishes loading.
      • We wait for up to 150ms is to make sure that the disguise unlock data can immediately be available after the player logs in on fast machines.
      • And maybe this waiting feature would be removed in the next (edit: next or future) releases, as it literally conflicts with the async concept... 🤯

Other

  • Simplified exception handling in some places.
  • The message morph.error_while_disguising_user_fault in the language file has been renamed to morph.error_parsing_property.
  • The interval of batching player data requests has been changed from 10 ticks to 2 ticks, to adapt to the new IManagePlayerData#loadPlayerDataAsync method

Full Changelog: https://github.com/NiFeather/FeatherMorph/compare/2.6.0-alpha.2...2.6.0-alpha.3

2.8.0-alpha.1

alpha10 декабря 2025 г.

This is a release on the 1.21.11/feature branch.

New Feature

  • [2.7.0] Added new debug command /debugForValue, for listing all registered SingleValue in the given value set.
  • Added support for Zombie Nautilus's variant property.

Other

  • [2.7.0] We are now 1.21.11
  • [2.7.0] Bumped PacketEvents to 2.11.0
  • [2.7.0] Added a workaround not to send the packet if we have a huge data body.
    • This prevents exceptions from being thrown when trying to send a huge amount of available disguise or a huge disguise data.
    • Currently, I have no idea how to solve the problem, so let's not sync the list for now. Players can still select the disguise using the /morph command, and other features would still work... Unless the data still exceeds the limit.

Full Changelog: https://github.com/NiFeather/FeatherMorph/compare/2.6.0-alpha.3...2.8.0-alpha.1

2.7.0

release10 декабря 2025 г.

This is a release on the 1.21.11/main branch. For the upcoming new features, see https://github.com/NiFeather/FeatherMorph/pull/61

New Feature

  • Added new debug command /debugForValue, for listing all registered SingleValue in the given value set.

Other

  • We are now 1.21.11
  • Bumped PacketEvents to 2.11.0
  • Added a workaround not to send the packet if we have a huge data body.
    • This prevents exceptions from being thrown when trying to send a huge amount of available disguise or a huge disguise data.
    • Currently, I have no idea how to solve the problem, so let's not sync the list for now. Players can still select the disguise using the /morph command, and other features would still work... Unless the data still exceeds the limit.

Full Changelog: https://github.com/NiFeather/FeatherMorph/compare/2.5.2...2.7.0

2.6.0-alpha.2

alpha4 декабря 2025 г.

New Features

  • Now applying the Interaction Mirror for mannequins also requires the player to have the normal Interaction Mirror permission
  • On new installations, the Icon for the current disguise is now shown in the actionbar by default
  • Killing mobs with feathermorph_nogrant tag will now not unlock the relevant disguise for the player
  • Refactored how the plugin sends messages to players
  • It's now possible to extract the built-in language file using the /fm extract language <lang> command
    • Permission for this command is feathermorph.admin.
    • If there's already a matching file on the disk, the extracted file will install to messages/<lang>.fmnew.json by default
    • You can overwrite it by using /fm extract language <lang> true, this operation requires you to confirm by executing again
  • Slaves in the Instance Network now request data for the player when they join, instead of the master server loading and syncing all data to slaves upon startup.
  • It's now possible to get the relevant DisguiseState instance in PlayerUnMorphEvent.
  • Third-party plugins are now able to add their SingleProperty instances to DisguiseProperties on bootstrap, which would allow automatic assignment from player inputs.

Other

  • Mannequins would now be normally selected by Interaction Mirror Executors, instead of being treated as specials.
  • by_sight mirror mode now respects the maximum affect distance set in the config
  • Gradle task runFolia is now available
  • The actionbar message for disguise is now handled by DisguiseState.
  • readRotations from InputHandles now throws an error when the player gives more than 3 elements
    • This means that giving more than 3 elements for various rotation properties for the Armor Stand disguise will now result in an error message.
  • Migrated configuration definition from plugin's own ConfigOption enum to ConfigOption class from PluginBase

Full Changelog: https://github.com/NiFeather/FeatherMorph/compare/2.5.2...2.6.0-alpha.2

Совместимость

Minecraft: Java Edition

1.20–1.21.111.19.3–1.19.4

Создатели

MATRIX-feather

MATRIX-feather

Владелец

Детали

Лицензия:GPL-3.0-only
Опубликован:2 года назад
Обновлён:3 дня назад