Browse the knowledge base
5x · Animals and creatures
Skills
- Take any Aseprite request end to end
- Plan a sprite before drawing it
- Design it first — concept sheet and storyboard
- Create a sprite document
- Choose, build and repair a palette
- Draw a sprite
- Shade a sprite
- Rig a character for animation
- Animate a cycle
- Build a tileset
- Review a sprite before calling it done
- Fix or iterate on existing art
- Export game-ready assets
- Submit a finished sprite to the community gallery
Skill
/aseprite:fix Fix or iterate on existing art
Change a sprite that already exists — the user's own work or your earlier output — without destroying what is already right. Use for edits, touch-ups, style corrections and "make it more X" requests.
On this page
Editing someone's work has a failure mode that drawing from scratch does not: breaking something that was already correct. The whole procedure is built around not doing that.
Procedure
#1. Understand what is there before changing it
#preflight
sprite_info
look op="preview"For a targeted edit, also look op="ascii" on the region. You cannot edit
pixels precisely from a description.
Never assume layer names, frame counts or the palette. Drawing into the
wrong layer is the most common way an agent damages someone's file. When two
groups hold same-named layers (left/arm, right/arm), a bare name is refused
— pass the group path rather than renaming the user's layers.
2. Say what you are about to change
#For anything beyond a small touch-up, state the plan in one line and let the user stop you. Especially before: changing the palette, resizing the canvas, merging layers, or editing a layer you did not create.
3. Scope the edit as tightly as you can
#- A selection limits
draw,recolorandtransformto one area. - A layer target keeps you out of everything else.
- A region on
recoloravoids touching the whole cel.
Scoping is cheaper than repairing.
4. Make the change in one call
#One draw with all its ops, one recolor. That is one Ctrl+Z for the user if
they dislike it. Use label to describe the intent — it becomes their undo
entry.
For a pixel-level fix, edit the text, not coordinates: look op="ascii" layer=… rulers=false region=… gives bare rows, the legend and origin; change
the wrong cells and send the same rows back as one draw kind grid at that
origin. Only that rectangle is touched, and its transparent cells erase — pass
transparent:"skip" when you mean to add pixels without clearing any. Glyphs
are palette indices, so pieces read separately share one legend: merge their
legends when rows from one piece land in another. Only glyphs listed in
offPalette (colours outside the palette) can change between reads.
5. Verify what actually changed
#look op="diff" fromFrame=… toFrame=…for animation work, or look op="ascii" on the region for a static edit. A
preview shows you the result; a diff shows you the change, including the parts
you did not intend. The diff's changedBounds is the quick test: if you edited
the hand and the box spans the whole sprite, something else moved.
6. Validate and report
#validateReport what changed and what you deliberately left alone.
Interpreting vague requests
#| Request | Usually means |
|---|---|
| "more contrast" | Widen the value range of the ramps, not the hue |
| "cleaner" | Remove strays, even out line runs, merge near-duplicate colours |
| "more detail" | Usually wrong at small sizes — ask what should read better |
| "pop more" | Contrast against the background, or a brighter accent |
| "less flat" | Shading exists but does not hue-shift, or has no light direction |
| "muddy colours" | Too many near-duplicates — palette op="extract" on a copy, or analyze + snap |
| "add a label / score / title" | draw kind text; measure with measureOnly first so it lands centred |
| "closer to the reference / concept" | look op="compare", list the three to five largest mismatches, fix only those |
| "off / uncanny" | Run aseprite:review; name the specific cause |
Reflect your reading back before acting on it. "More detail" on a 16×16 sprite usually means the sprite needs to be bigger, and that is worth one question.
What not to do
#- Do not redraw a sprite from scratch because it is easier than editing it, unless the user asked for that.
- Do not "improve" things nobody mentioned.
- Do not widen the palette to fit a colour you chose. Say the palette lacks it.
- Do not flatten, resize or re-index without being asked.
Related
#aseprite:review, rules://00-core-principles, rules://92-generated-art-tells
for what makes art read as machine-made, and the subject file for the part you
are fixing (skill://studio, Subject rules) — "fix the hands" starts at
rules://34-hands-and-feet.