Skip to content

tossww/minecraft-custom-armour

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Minecraft Custom Armour Manager

A local web app for creating and managing custom armor resource packs for Minecraft Java Edition. Built for easy deployment to Realms.

Quick Start

python3 app.py

Then open http://127.0.0.1:8420 in your browser.

Requirements

  • Python 3.9+ with Pillow (pip install Pillow)
  • Minecraft Java Edition installed (for extracting default textures)

How It Works

  1. Create an armour set — pick a name and choose which armor material to reskin (diamond, netherite, iron, gold, copper, chainmail, leather)
  2. Edit textures — use the built-in pixel editor, upload PNGs, or open the folder in Blockbench
  3. Build resource pack — packages everything into a correctly structured .zip
  4. Install locally — one-click copy to your Minecraft resourcepacks/ folder
  5. Upload to Realm — the Realm owner uploads the .zip so all players see it

Texture Files Per Armour Set

File Size What It Controls
humanoid.png 64x32 Helmet, chestplate, and boots as worn on the 3D player model
humanoid_leggings.png 64x32 Leggings as worn on the 3D player model
item_helmet.png 16x16 Helmet inventory icon
item_chestplate.png 16x16 Chestplate inventory icon
item_leggings.png 16x16 Leggings inventory icon
item_boots.png 16x16 Boots inventory icon

Important: Editing item_*.png only changes the inventory icons. To change how armor looks on the player, you must edit humanoid.png and humanoid_leggings.png.

Version Compatibility

Minecraft 26.1 (Current)

  • Resource pack format: min_format: 77, max_format: 84
  • Armor texture path: assets/minecraft/textures/entity/equipment/humanoid/ and humanoid_leggings/
  • The old pack_format + supported_formats fields cause "Broken or incompatible" errors
  • Must use min_format / max_format instead (confirmed by examining the built-in Programmer Art pack)

pack.mcmeta format (26.1)

{
  "pack": {
    "description": "Your pack description",
    "min_format": 77,
    "max_format": 84
  }
}

Minecraft 1.21.4 - 1.21.11

  • Resource pack format: pack_format: 46
  • Armor texture path: Same as 26.1 (equipment/humanoid/ structure)

Minecraft 1.21.3 and earlier

  • Resource pack format: pack_format: 34 (1.21) or lower
  • Armor texture path (old): assets/minecraft/textures/models/armor/diamond_layer_1.png (layer_1 = body, layer_2 = leggings)
  • This app does NOT support pre-1.21.4 texture paths

How We Determined the Correct Format

The pack_format field and structure changed in Minecraft 26.1. We found the correct format by:

  1. Extracting the built-in Programmer Art resource pack from the Minecraft jar's asset index
  2. Reading its pack.mcmeta which uses min_format/max_format instead of pack_format
  3. The asset index is at ~/.minecraft/assets/indexes/30.json (for 26.1)
  4. Built-in packs are stored as hashed objects in ~/.minecraft/assets/objects/

Texture Paths in the Minecraft Jar

Since Minecraft 1.21.4, armor textures moved from the old models/armor/ path to:

assets/minecraft/textures/entity/equipment/humanoid/<material>.png      # body (helmet, chest, boots)
assets/minecraft/textures/entity/equipment/humanoid_leggings/<material>.png  # leggings
assets/minecraft/textures/item/<prefix>_<piece>.png                     # inventory icons

Materials: iron, chainmail, diamond, gold, netherite, copper, leather

Note: Gold uses the prefix golden for item textures (e.g., golden_helmet.png).

Leather armor has additional overlay files (leather_overlay.png) used for dye tinting.

Realm Deployment

For Realm Owners

  1. Build the resource pack in the app
  2. In Minecraft: Realms > Configure > Edit World > Resource Packs > Upload Pack
  3. Select the .zip from workspace/output/
  4. All players will be prompted to download it when they join

For Non-Owners (Operators)

  • Operators cannot upload resource packs to a Realm — only the owner can
  • Options: ask the owner to upload, or share the .zip for players to install locally
  • Ownership can be transferred: Realms > Configure > Members > Transfer Ownership

Local-Only Install

Players can install the pack on their own machine:

  • Mac: ~/Library/Application Support/minecraft/resourcepacks/
  • Windows: %appdata%\.minecraft\resourcepacks\
  • Linux: ~/.minecraft/resourcepacks/

Limitations

  • 7 armour sets max (one per material) when reskinning vanilla armor via resource packs
  • Reskinning replaces the texture globally — all diamond armor looks the same
  • Custom 3D armor models require mods (not yet supported)
  • Resource packs are client-side; Realm upload requires the owner

Project Structure

minecraft-custom-armour/
  app.py                  # Python backend (HTTP server + API)
  static/
    index.html            # Web UI with built-in pixel editor
  workspace/
    templates/            # Default textures extracted from MC jar

# Resource packs are created directly in:
~/Library/Application Support/minecraft/resourcepacks/
  MyPack/
    pack.mcmeta           # Pack metadata (auto-generated)
    armour_manager.json   # Our metadata marker
    assets/minecraft/textures/entity/equipment/
      humanoid/diamond.png          # On-body texture
      humanoid_leggings/diamond.png # On-body leggings
    assets/minecraft/textures/item/
      diamond_helmet.png            # Inventory icon
      ...

Live Editing

The app works directly in Minecraft's resourcepacks/ folder as folder-based packs (not zips). This means:

  • No "build" or "install" step needed
  • Edits are saved directly to the resource pack
  • Press F3+T in Minecraft to reload textures and see changes instantly
  • Use "Export .zip" when you need to share the pack or upload to a Realm

Blockbench Integration

The app works alongside Blockbench:

  1. Click "Open Folder" on any armour set to reveal the texture files in Finder
  2. Open the .png files in Blockbench for advanced editing
  3. Save in Blockbench — the file updates in place
  4. Rebuild the resource pack in the app to apply changes

Future Plans

  • AI-powered texture generation (describe your armor, get textures)
  • Custom items via data packs (break the 7-set limit)
  • Custom 3D armor models
  • One-click deploy to Realm
  • Package as a standalone desktop app

About

Local web app for creating custom armor resource packs for Minecraft Java Edition

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors