• You can import a sprite here. (The tool is completely local, nothing gets uploaded anywhere.)
  • Click on the preview to pick a color.
  • The shading value is not written to the gml code.
rgb({{pickedColor.r}}, {{pickedColor.g}}, {{pickedColor.b}}) (x: {{pickedColor.x}}, y: {{pickedColor.y}})
{{colorspelling}}s not in palette ({{colorsNotInPalette.length}}):
unmatched {{colorspelling}}s ({{colorsByRangeMatch.unmatchedColors.length}}):
matched {{colorspelling}}s ({{colorsByRangeMatch.matchedColors.length}}):
sprite's palette
  • Pick {{colorspelling}}s from your sprite and group similar ones here (for example one row for the skin's shades, one for dark greens, one for bright greens...)
  • Colors in the same row will be re{{colorspelling}}ed together.
  • Ranges are automatically calculated from a row's {{colorspelling}}s.
  • Each row needs a main color.
  • ctrl+click a color to set it as main {{colorspelling}}.
  • There's a maximum of 8 rows, and each row can hold up to 5 {{colorspelling}}s.
  • {{colorspellingCap}}s with rgb values all lower than 26 will not be recolored.
  • Rows can be renamed by clicking on their name. This will update the header comment in the code.
  • You can ctrl+c / ctrl+v a {{colorspelling}} as soon as you open it's picker.
alt palettes
  • Select alternate palettes's {{colorspelling}}s here.
  • Each color will be used to re{{colorspelling}} the whole row it corresponds to.
  • There's a minimum of 6 alts, and a maximum of 32.
  • Here too, rows can be renamed by clicking on their name.