What are you searching for?

Cape Provider
Cape Provider

Cape Provider

Provides you with capes! You can choose from various providers or add your own

download 153.8K Downloads · favorite 48 Followers · Updated 2 weeks ago
Decoration Equipment Fabric Social Utility 1.21 1.21.1 1.21.4 1.21.5 1.21.6-rc1 +6 more

Versions

inventory_2
5.0.0.0-legacy+1.21.1

5.0.0.0-legacy+1.21.1 · 2 weeks ago · 189.62 KB

Release download
Fabric 1.21 1.21.1
inventory_2
5.0.0

5.0.0 · 1 month ago · 200.36 KB

Release download
Fabric 1.21.11
inventory_2
4.3.1.0-legacy+1.21.10

4.3.1.0-legacy+1.21.10 · 1 month ago · 176.26 KB

Release download
Fabric 1.21.10
inventory_2
4.3.1

4.3.1 · 1 month ago · 176.17 KB

Release download
Fabric 1.21.11
inventory_2
4.3.0

4.3.0 · 1 month ago · 176.23 KB

Fabric 1.21.11

Gallery

About

Provides you with capes!

You can choose from various providers or add your own.

Improved/Reworked version of the "Capes" mod:

  • Improved and easier cape provider integration
  • Allows ordering providers
  • Support for custom providers
  • More options to fine tune how capes are applied
  • Written only in Java (no Kotlin needed)
  • Various fixes and improvements

Creating a custom cape provider

The mod provides many different ways how a provider can be added.

The following possibilities are sorted by simplicity:

Simple Local Provider

Recommended for:

  • Users that just want a customizable cape
  • Modpacks (using config/cape-provider/simple-custom)

The simples way to display a cape is by going into the config/cape-provider directory and creating a cape texture file named cape.png.

Additionally there are the following optional files:

  • owners.txt - Determines which player names or UUIDs will get the cape displayed. If this file is not present then all players will display with the cape.
  • name.txt - To override the display name of the provider

You can also add more providers by creating corresponding directories in config/cape-provider/simple-custom.
Example: config/cape-provider/simple-custom/my-super-cool-provider/cape.png

Remote Provider in configuration

Recommended for:

  • Users that want to add a custom remote provider

This demo showcases how to apply the capes inside custom-cape-demo.

  1. Open the config file located in config/cape-provider/config.json

  2. In the remoteCustomProviders section add the following entry:

    {
      "id": "cp1",
      "name": "CustomProvider1",
      // You can replace uuid with $id, $name or $idNoHyphen to customize the cape per Player
      "uriTemplate": "https://raw.githubusercontent.com/litetex-oss/mcm-cape-provider/refs/heads/dev/custom-cape-demo/uuid.png"
    }
    
    Example for SkinMC
    {
      "id": "skinmc",
      "name": "SkinMC",
      "uriTemplate": "https://skinmc.net/api/v1/skinmcCape/$id"
    }
    
  3. Restart the game and activate the provider

For more details have a look at RemoteCustomProvider and RemoteCustomProviderConfig

NOTE: Texture resolvers can be selected using the textureResolverId attribute (see below for details).

via Mods

Recommended for:

  • Mods

If you are a mod developer and want to e.g. display a cape for supporters or contributors of your mod, you can provide it using the mod's resources and/or metadata in fabric.mod.json. The overall behavior is similar to how modmenu handles this.

Local/Simple (Recommended)

This approach requires no network communication and is the recommended approach. It works by reading metadata and resources from the cape directory.

Here is an example:

  1. Add the following mod metadata: fabric.mod.json
    {
      ...
      "custom": {
        "cape": "Contributors"
      }
    }
    
  2. Create a cape directory inside resources
  3. Add the cape texture in cape/cape.png
  4. Add the players that should be given the cape in cape/owners.txt with their UUIDs or names
Note: There is also a more detailed variant

fabric.mod.json

{
  "custom": {
    "cape": {
      "name-extra": "Contributors",
      "owners": {
        // You can also used UUIDs
        "names": [
          "Notch"
        ]
      }
    }
  }
}

The mod uses this strategy itself. See the fabric.mod.json or cape directory for details.

Remote

Here's an example implementation that shows how a remote cape provider can be added:

fabric.mod.json

{
  ...
  "custom": {
    "cape": "https://raw.githubusercontent.com/litetex-oss/mcm-cape-provider/refs/heads/dev/custom-cape-demo/uuid.png"
  }
}
Here's a more detailed variant

fabric.mod.json

{
  "custom": {
    "cape": {
      // Gives everyone a christmas cape
      // You can also use variables here, like $uuid. See above for more details
      // You may have to escape the $ with \ or you can alternatively use § instead of $
      // Alternative: "uriTemplate"
      "url": "https://example.org/textures/§uuid.png",
      "changeCapeUrl": "https://...",
      "rateLimitedReqPerSec": 20 // Default is 20
    }
  }
}

Programmatic

You can also create a programmatic cape provider.

Further notes

Maximum size

Images/Textures should not exceed 10MB. Otherwise they might be ignored.

Texture resolvers / Animated textures

The following resolvers are currently built-in:

Resolver-ID Animated Format Example Notes
default / null PNG uuid.png
sprite Stacked PNG animated.png
gif GIF animated.gif Usage not recommended
GIFs require more resources when compared to more modern formats like PNG.

Please note that animated textures can be frozen or completely disabled in the settings.

open_in_new View on Modrinth
Compatibility
Client: Required Server: Unsupported
gavel LGPL-2.1-or-later

Conversation

What are your thoughts?

Related projects

Decoration Optimization
Iris Shaders
Iris Shaders

by coderbot

A modern shader pack loader for Minecraft intended to be compatible with existing OptiFine shader packs

download 90.5M
favorite 23,773
Optimization Utility
FerriteCore
FerriteCore

by malte0811

Memory usage optimizations

download 84.3M
favorite 12,712
Utility
Mod Menu
Mod Menu

by Prospector

Adds a mod menu to view the list of mods you have installed.

download 77.7M
favorite 22,127
Library Management Utility
YetAnotherConfigLib (YACL)
YetAnotherConfigLib (YACL)

by isxander

A builder-based configuration library for Minecraft!

download 66.1M
favorite 7,607
lock Cookie consent

SkinMC uses cookies to provide functionality and features.