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 simplest 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.
-
Open the config file located in
config/cape-provider/config.json -
In the
remoteCustomProviderssection 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" } -
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 way.
It works by reading metadata and resources from the cape directory.
Here is an example:
- Add the following mod metadata:
fabric.mod.json{ ... "custom": { "cape": "Contributors" } } - Create a
capedirectory insideresources - Add the cape texture in
cape/cape.png - Add the players that should be given the cape in
cape/owners.txtwith 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.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
|
R
5.6.1
|
1d ago | 1 | |||
|
R
5.6.0
|
1d ago | 1 | |||
|
R
5.5.1
|
1d ago | 1 | |||
|
R
5.5.0
|
1d ago | 1 | |||
|
R
5.4.3
|
1d ago | 1 | |||
|
R
5.4.2
|
1d ago | 1 | |||
|
R
5.4.1
|
1d ago | 1 | |||
|
R
5.4.0
|
1d ago | 1 | |||
|
R
5.3.2
|
1d ago | 1 | |||
|
R
5.3.1
|
1d ago | 1 | |||
|
R
5.3.0
|
1d ago | 1 | |||
|
R
5.2.0
|
1d ago | 1 | |||
|
R
5.1.0
|
1d ago | 1 | |||
| 1d ago | 1 | ||||
|
R
5.0.0
|
1d ago | 1 | |||
| 1d ago | 1 | ||||
|
R
4.3.1
|
1d ago | 1 | |||
|
A
4.3.0
|
1d ago | 1 | |||
|
R
4.2.1
|
1d ago | 1 | |||
|
R
4.2.0
|
1d ago | 1 | |||
|
R
4.1.3
|
1d ago | 1 | |||
|
B
4.1.2
|
1d ago | 1 | |||
|
R
4.1.1
|
1d ago | 1 | |||
|
R
4.1.0
|
1d ago | 1 | |||
|
R
4.0.2
|
1d ago | 1 | |||
|
R
4.0.1
|
1d ago | 1 | |||
|
B
4.0.0
|
1d ago | 1 | |||
|
R
3.0.0
|
1d ago | 1 | |||
|
R
2.2.0
|
1d ago | 1 | |||
|
R
2.1.0
|
1d ago | 1 | |||
|
R
2.0.1
|
1d ago | 1 | |||
|
R
2.0.0
|
1d ago | 1 | |||
|
R
1.2.0
|
1d ago | 1 | |||
|
R
1.1.1
|
1d ago | 1 | |||
|
R
1.1.0
|
1d ago | 1 | |||
|
R
1.0.2
|
1d ago | 1 | |||
|
R
1.0.1
|
1d ago | 1 | |||
|
R
1.0.0
|
1d ago | 1 |
- Fix releases to CurseForge
- Improve how proxy is applied
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Updated to 26.3
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Improved compatibility with
minecraftcapes#367
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Updated to 26.2
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Improved compatibility with other mods #332
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Cosmetica
- Use optimized cape endpoint
- Correct "Edit Cape" link
- Minor optimizations
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
- Fixed / Updated Cosmetica provider to v2 #324
[Full changelog](https://github.com/litetex-oss/mcm-cape-provider/blob/dev/CHANGELOG.md)
Contains the following changes:
### 4.3.0
- Implement local caching of cape textures - if the provider supports it #205
- Currently only supported by MinecraftCapes
- Textures are saved inside
.mods/cape-provider/texture-cachein the game directory - Unused textures are cleaned up automatically
### 4.2.1
- Fix MinecraftCapes Provider no longer working due to breaking API changes #206
- Removed Wynntils #204