
FeatherMorph
Yet another disguise plugin. Disguise as mobs and players, then acquire unique skills and abilities!
53.0k
93
Adventure
Game Mechanics
FeatherMorph has been archived. FeatherMorph will not receive any further updates unless the author decides to unarchive the project.
Changelog
Starting from 2025/11/3 (YYYY/MM/DD), we have split the 1.21.10 branch to 1.21.10/main and 1.21.10/feature.
If you cloned the repo before, you might want to delete the locally stored 1.21.10 branch before pulling any updates!
Changes in 2.5.1
Bug Fix
- Empty input for
entity/equipmentwould cause unhandled exceptions
Changes in 2.5.0
New Features
- It's now possible for players to save their disguise and apply their locally stored disguises
- This requires players to use 0.16.0-beta.5 or higher version of the client mod!
- Added permission
feathermorph.custom_textforentity/custom_name,mannequin/description, andmannequin/hide_descriptionproperty, and it's available for players by default - Added permission for using disguise properties:
feathermorph.disguise_properties.use - Added permission for setting a custom skin profile for items in
entity/equipmentproperty, restricted to ops by default:feathermorph.disguise_properties.custom_skin_on_items - Added support for Mannequin disguise
- Mannequin disguise is not collectable using the Magic Bottle by default
- Mannequin disguises have the Fake Equip skill, like Armor Stand and Player disguise
mannequin/skinproperty is restricted to ops by default. You can setfeathermorph.custom_skinpermission for players so they can use this property.
- Added support for Copper Golem disguise
- Copper Golem disguise is collectable using the Magic Bottle by default
- Added Weather State property for Copper Golem disguise
- Initial compatibility(?) for Ping Wheel
- Using the official Ping Wheel plugin will work, but pinging while disguising doesn't mask the pinger
- ...So I made a custom plugin to temporarily solve the problem, which can be found at https://github.com/MATRIX-feather/pingwheel-plugin-forked
- Initial support for players with permission
feathermorph.mirror.mannequinto mirror their sneaking actions to mannequins that have the same name and description as their disguise- For BY_NAME executor, mannequins within a range are selected, while setting the affect distance to -1 would disable the range limit
- For BY_SIGHT and BY_RANGE, the targeting mannequin within 5 blocks of sight will be selected
Bug Fixes
- Several bugs with Player Disguises when
feathermorph.disguise_use_real_uuidpermission is given- Players got removed from their TAB view when undisguising
- Disguise not presenting when teleported from far away, or switching gamemode from spectator
slime_magma/sizeproperty has a wrong random range- Nobody is calling
BaseLivingEntityProperties#setupPropertiesFromEntityin the override methods- This makes disguises that have extra properties not copy the target entity's custom name.
Other
- We are planning to remove the BY_RANGE mirror executor in the future, as it's causing chaos when we have players with bad networking
- Some exceptions thrown will now be forwarded to DisguiseState and will undisguise the player
- Tweaked how Server Renderer rebuilds entity metadata packets sent from the server
- Removed disguise NBT blacklist configuration
- As they are not being used anymore
entity/custom_nameandmannequin/descriptionnow accept JSON text component starting with{- Moved some disguise validation to early disguise preparation
Dependencies
Files
feathermorph-2.5.1-1.21.10-final.jar(1.77 MiB) Primary
90% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Metadata
Release channel
ReleaseVersion number
2.5.1Loaders
Paper
Game versions
1.21.10Downloads
327Publication date
November 27, 2025 at 7:27 AMPublisher
MATRIX-feather
Owner
