The layered part library, palette config, recipe data-contract, and the live generator source — everything to grab what you need. downloads on
Prefer individual files? Grab any part below, or: README.txt · RECIPE-SCHEMA.md · meatsuit_server.py · palettes.json · tint-roles.json · design note
14 parts across 1 house(s). Each meatsuit uses at
most one part per slot; parts can mix across houses. Eyes carry a companion
.iris.png tint mask (shown dimmed).
A save writes this JSON plus a flat 64×64 PNG and an 8× profile PNG. It's the seam between the generator and the game.
{
"meatsuit": "stal-captain-jax", // <house>-<slug(name)>, the stable id
"name": "Captain Jax",
"house": "stal", // primary house = the torso's house
"layers": { // one entry per filled slot; parts may
"torso": { "house": "stal", "file": "torso-1.png" }, // mix across houses
"head": { "house": "stal", "file": "head-1.png" },
"nose": { "house": "stal", "file": "nose-1.png" },
"mouth": { "house": "stal", "file": "mouth-1.png" },
"eyes": { "house": "stal", "file": "eyes-2.png" },
"hair": { "house": "stal", "file": "hair-1.png" }
},
"z_order": ["head","torso","nose","mouth","eyes","hair"], // bottom -> top
"skin_palette": "medium", // palette id from palettes.json (or null)
"hair_palette": null,
"eyes_palette": null,
"detail": 0, // despeckle/detail level
"canvas": [64, 64], // every part composites onto this grid
"created": "2026-07-07T00:00:00+00:00"
}
python3 -m pip install --user Pillow python3 meatsuit_server.py # then open http://localhost:8790
The live app (server-side PIL compositing) is what lets you swap parts, upload new ones, and save meatsuits. This page is the static drop of its inputs; the running app produces the outputs. Full steps in README.txt.