Skins - MarkusBordihn/BOs-Easy-NPC GitHub Wiki
Bring your NPCs to life with unique skins! The skin configuration screen offers plenty of options to make each NPC stand out.
Easy NPC knows four ways to give an NPC its look:
| Source | Where it comes from | Works for |
|---|---|---|
| Default skin | Built into the mod | All NPC types |
| Player skin | A Minecraft account name | Humanoid-style NPCs |
| URL skin | A remote image link | Humanoid-style NPCs |
| Custom skin | A PNG in config/easy_npc/skin
|
All NPC types with a skin list |
NPCs that render a foreign model do not use this screen at all - a Doppler NPC takes the look of its target entity, a Cobblemon NPC its species, and an Easy Model NPC its model profile. See CustomModels and ModIntegration.
Quickly give your NPCs a fresh look by choosing from a variety of built-in skins. Just select one from the list, and itโs instantly applied.

The available skins vary based on the NPC type. For example, Villager NPCs have more skin options
than Humanoid NPCs.

Want your Humanoid NPCs to wear a Minecraft player's skin? Just enter the player's name, click "
Add," and your NPC will mirror their look. Any updates the player makes to their skin will
automatically update on the NPC too!

Add a personal touch with remote URL skins! Paste the URL of any online skin into the configuration screen, click "Add," and watch your NPC transform instantly.
To keep things running smoothly, Easy NPC uses a local cache, so server performance wonโt take a hit.


Note: Be cautious with short-lived URLs, like those from Discord. These links can expire, causing the skin to disappear for new players or after some time.
URL skins are guarded, because the image is downloaded on every client:
- The download is capped at 5 MB; larger images are rejected.
- At most 5 redirects are followed, and every hop is validated again.
- Adding a URL skin requires the
URL_RESOURCEfeature (default: creative player). See Permissions.
Servers can additionally reject URLs that point into their own network in
config/easy_npc/remote_texture.cfg:
blockPrivateAddresses=trueThis blocks loopback, private, and link-local addresses, including redirect targets. Recommended for public servers.
Unleash your creativity with custom skins! You can use your own images stored locally. Just save
your skins in the config/easy_npc/skin folder in your Minecraft directory, with subfolders for
each NPC type.

After adding your skins, click "Reload Custom Textures" to see them in-game.
Remember, if you're playing multiplayer, all players need the same skins in the same folders. Otherwise, theyโll see the default skin instead.

Custom skins are perfect for mod packs, making it easy to deploy unique NPC appearances. ๐ฎ
The built-in skins of an NPC type are called variants. Some variants carry extra properties, for example an Illager variant with crossed arms or a horse variant with a saddle - those are part of the variant, not something you toggle separately.
Variants can also be set with commands:
/easy_npc skin set variant <NPC> <variant>Humanoid-style NPCs additionally have a skin layer (the outer overlay of a player skin, e.g. hair and jacket):
/easy_npc skin layer <NPC>
/easy_npc skin layer <NPC> enable
/easy_npc skin layer <NPC> disableWithout enable or disable the command reports the current state.
Skins are cached locally to boost performance. If you need to clear the cache, simply stop your
Minecraft client and delete the easy_npc/cache folder in your game directory.
Skins are processed on the client side, so if you're having issues, check your client-side logs for errors. Skin errors will also appear as local system messages, so keep an eye out for those.

The mod will retry to load failed skins after a short delay or if the client is restarted.