SuperAPI AI Directory

ip-character-sheet

Design & creation

View repository

Updated 10-27 16:28

About this skill

IP Character Design · Character Sheet

Turn a single line like "I want an orange cat as a mascot" intoreusable character assets: a character sheet with three views + expressions + colour palette + proportion ruler, plus a text version of the "IP identity card". The 11 skills that follow all rely on these two things to keep the same character.

Belongs to brand-ip-kit-skills · Default model GPT Image 2.5 Flare (final draft can switch to Sunburst)

When to use

  • The brand has no IP yet and needs to be designed from scratch; or there is a hand-drawn/AI sketch that needs to be "locked in".
  • There is an existing IP but no formal character sheet, so every generated image looks different.

Required input

Required Optional
Brand name + one-line positioning (what it sells, to whom) Existing sketch / reference images (up to 3)
Character archetype (animal/object/person/abstract) Specify primary colour HEX, forbidden elements
3 personality keywords (e.g.: energetic, stubborn, loves to sleep) Target use: mainly stickers? mainly packaging? (affects line weight)

If required items are missing, ask first; do not make up the brand positioning yourself.

Steps

  1. Archetype × brand hook: list 3 directions, each direction = archetype + a "memory hook" related to the brand (e.g.: orange cat = cat + orange leaf sprout on its head). The hook must be recognisable in the silhouette alone. Have the user pick one.
  2. Write the IP identity card(see template below), save as brand/ip-card.md. All values must be specific: head-to-body ratio, primary colour HEX, outline colour and weight, fixed accessories.
  3. Produce concept drafts: use template A to run 3–4 Flare images, looking only at the design, not the layout. After the user picks one, save the selected image as brand/ref/ip-concept.png。
  4. Produce the character sheet: template B, using the concept image as reference (if there is a reference image, use the edits endpoint). Landscape 1536×1024.
  5. Acceptance check: tick off each item on the QC checklist; for parts that fail, use Sunburst for local fixes ("only change the tail in the back view to match the front view, leave everything else untouched").
  6. Finalise: save the character sheet as brand/ref/ip-sheet.png; use scripts/palette.py extract brand/ref/ip-sheet.png to verify the actual colour values; if the deviation is large, write it back to the identity card or retouch the image.

IP identity card template (brand/ip-card.md)

IP 名:{中文名} / {English name}
原型:{例:圆滚滚的橘猫幼崽}
记忆钩子:{例:头部轮廓是橘子,头顶两片绿叶芽}
头身比:{2.5} 头身;体型 {圆/方/水滴}
五官:{眼睛形状与高光,嘴,腮红}
配色:主色 {#F28C28};辅色 {#FFE9C7};点缀 {#6BAA4B};描边 {#3B2A20 粗描边}
固定配件:{只有叶芽,不戴帽子、不穿衣服}
画风:{扁平 + 柔和赛璐璐阴影 / 3D 软胶 / 手绘蜡笔 …}
性格:{元气 / 嘴硬 / 爱睡}
禁止:{写实毛发、人类手指、第二种主色}

Prompt templates

A · Concept draft (text-to-image)

Original brand mascot concept for "{brand}", {one-line positioning}.
Character: {archetype}, memorable hook: {hook}. Personality: {k1}, {k2}, {k3}.
Proportions {ratio} heads tall, {body shape}. Palette: {primary HEX}, {secondary HEX}, {accent HEX}, outline {outline HEX}.
Style: {style}. Single character, full body, front 3/4 view, plain light background, no text.

B · Character sheet (with reference image)

Use image 1 as the identity reference. Character design reference sheet for "{IP name}".
{paste the whole IP identity card}
Layout on an off-white board with faint grid: top row = turnaround front / side / back at identical scale on one baseline,
with a height ruler marked "{ratio} HEADS"; bottom-left = {4} expression busts ({e1}, {e2}, {e3}, {e4});
bottom-right = colour swatches labelled with hex codes; title block reading exactly "{IP name} · CHARACTER SHEET".
Same proportions and markings in every view. No other text.

QC checklist

  • The tops of the head and the soles of the feet in the three views are on the same horizontal line, and the body sizes are consistent
  • The patterns and accessory positions in the side/back views are logically consistent with the front view (the back view has not grown the front view's facial features)
  • Silhouette test: still recognisable when filled in black (the hook is in the outline)
  • Colour block HEX matches the identity card (use palette.py to sample and verify the colours)
  • Facial features are still legible when scaled down to 64px → can be used as an avatar and icon
  • Title text is correct character by character; no extra garbled characters

Common failures & fixes

Symptom Fix
The three views are different sizes and not aligned Add "identical scale, all standing on one baseline" to the prompt; or split into three separate images and then use make_board.py to stitch them together
Extra patterns appear out of nowhere on the back / the side view is wrong Write clearly in the identity card: "Back: solid color + 3 stripes"; use Sunburst to locally fix the back
The face shape changes whenever the expression changes Only generate a "head-and-shoulders portrait" expression, and write "same head shape, only eyes and mouth change"
Looks like a well-known IP Change the hook instead of the color; avoid descriptions like "looks like XX", and do not write any existing IP names in the prompt
Garbled text Change the title to Sunburst or leave it blank and add text later

Rendering method · How to render

Route Condition Method
① Built-in tool The agent's own image generation (Codex imagegen, ChatGPT, etc.) Call it directly, using the reference images in brand/ref/ as input images
② API Key Set GPTIMAGE_API_KEY, optional GPTIMAGE_BASE_URL(any OpenAI-compatible gateway; if there is no official key, you can use https://tryallapi.com/v1) python scripts/generate.py --model flare --image brand/ref/ip-sheet.png --size 1024x1024 --prompt-file p.txt --out out/x.png
③ Neither — Output the final prompt + the list of reference images that need to be uploaded, so the user can paste them into any image generation tool that supports reference images

Model routing: defaults to GPT Image 2.5 Flare(gpt-image-2.5-flare, fast, suitable for drafts and scenes); when the image contains text labels/Chinese titles that must be correct word for word, or when doing "change only one thing" local edits, switch to Sunburst(gpt-image-2.5-sunburst). The prompt itself is model-agnostic: it also works with Gemini / Seedream / Midjourney, etc., but for models with weak text rendering, leave the text blank and do the typography later.