;This builds an optimized sprite for KFM by reducing his palette to 32 colors
;to take advantage of lz5 compression for lower memory usage.

[Output]
 ;Filename of the SFF file to create (required).
filename = chars/kfm/kfm.sff

[Option]
 ;Input directory where files are to be read from. Defaults to the same
 ;directory as this def file if omitted.
;input.dir = 
 ;Sprite compression method for 5-bit sprites (32 color). Choose from:
 ;none - No compression. This generates very big files (default).
 ;lz5  - Lossless encoding for 5-bit (32 color) sprites. Compression is slow;
 ;       decompression is fast. Compression ratio is good.
 ;rle5 - Lossless encoding for 5-bit (32 color) sprites. Compression is fast;
 ;       decompression is fast. Compression ratio is average.
sprite.compress.5 = lz5
 ;Sprite compression method for 8-bit sprites (256 color). Choose from:
 ;none - No compression. This generates very big files (default).
 ;rle8 - Lossless encoding for sprites with color depth up to 8-bits (256
 ;       colors). Compression and decompression are fast. Compression ratio is
 ;       low. Suitable for images with 33 to 256 colors.
 ;       Advanced: best compression ratio is achieved on images where most of
 ;       the color indices are in the range 0-127 and 192-255.
sprite.compress.8 = rle8
 ;Sprite compression method for 24-bit sprites (true color). Choose from:
 ;none - No compression. This generates very big files (default).
 ;rle16- Lossless encoding for 16-bit (high color) sprites. Input files in 24-
 ;       bit format will be downsampled to 16-bits before being encoded.
 ;       (NOT YET AVAILABLE)
 ;rle24- Lossless encoding for 24-bit (true color) sprites.
 ;       (NOT YET AVAILABLE)
sprite.compress.24 = none
 ;This option affects the program that uses the sprites.
 ;0 - sprites are to be decompressed when needed (default).
 ;1 - sprites are to be decompressed when loaded from disk. This uses more
 ;    memory when the program runs, but the sprite can be drawn faster. This
 ;    setting is suitable for images that are drawn very frequently, especially
 ;    large ones (eg. in backgrounds).
sprite.decompressonload = 0
 ;0 - Detect identical files only through filename. Duplicate files references
 ;    are linked to the original in order to reduce SFF file size as well as
 ;    memory usage (default).
 ;1 - More thorough comparison of sprite files; actual bytes are compared. Use
 ;    this setting to reduce file size.
 ;    Note: Comparisons are done before cropping.
sprite.detectduplicates = 0
 ;0 - Do not auto-crop sprites (default).
 ;1 - Automatically crop sprites before adding to them the SFF file. Use this
 ;    setting to reduce file size.
sprite.autocrop = 1
 ;0 - Detect identical files only through filename. Duplicate files references
 ;    are linked to the original in order to reduce SFF file size as well as
 ;    memory usage (default).
 ;1 - More thorough comparison of palette files; actual bytes are compared. Use
 ;    this setting to reduce file size.
pal.detectduplicates = 1
 ;0 - Do not discard duplicate palettes (default).
 ;1 - Discard any duplicate palettes that are detected, instead of linking
 ;    them. Any sprite using a palette that is removed will be set to use the
 ;    non-duplicate palette instead, eg. if palette (1,2) is a duplicate of
 ;    (1,1),  palette (1,2) will be discarded, and any sprites using palette
 ;    (1,2) will be set to use palette (1,1) instead.
 ;    Use this setting to reduce the number of palettes in use, especially
 ;    when adding many palettes through the auto-add palette option
 ;    (sprite.usepal = -1).
pal.discardduplicates = 1
 ;0 - Do not reverse ACT file color order.
 ;1 - Reverse the order of colors in the palette when loading from an ACT file.
 ;    Can be used to correct the color order if your image editor saves ACT
 ;    files with the color order reversed.  Photoshop is known to do this.
pal.reverseact = 0
 ;0 - Do not reverse PNG file color order.
 ;1 - Reverse the order of colors when loading from a PNG file.
 ;    Can be used to correct the color order if your image editor saves it in
 ;    reverse.  This affects both sprites and palettes read from PNG files.
pal.reversepng = 0

;Palettes
;Accepts .act as well as .pcx/.png files (the palette is extracted from the
;pcx or png).
;Character palettes should be numbered from 1,1 to 1,6. Extra palettes for
;projectiles, etc. may use any other number.
;Format:
;  group,itemno, fname, startcol,endcol
[Pal]
1,1, kfm.act, 224,255
1,2, kfm2.act, 224,255
1,3, kfm3.act, 224,255
1,4, kfm4.act, 224,255
1,5, kfm5.act, 224,255
1,6, kfm6.act, 224,255

[Option] ;You can set option states at any time
sprite.usepal = -1   ;Use -1 to add and use self's pal (autopal)

;Sprites
;Accepts 8-bit .png files
;group,itemno, fname, axisx, axisy
[Sprite]
9000, 1, f-faceb.png,  0,  0     ? usepal = -1  ;Use own palette (adds as 9000,1)

[Option] ;You can set option states at any time
sprite.usepal = 1,1    ;Use kfm.act for all these sprites
                       ;Sprite's own pal data will be discarded
                       ;Use -1 to add and use self's pal (autopal)
 ;Removes colors from sprites in order to reduce color depth.
 ;Specify the range of colors to remove, or use -1 to disable this feature
 ;(default).
sprite.removecolors = 1,224 ;Convert 8-bit to 5-bit (32 color) sprites

[Sprite]
9000, 0, f-face.png,   0,  0
   0, 0, stand00.png,  18,105
   0, 1, stand01.png,  18,104
   0, 2, stand02.png,  18,104
   0, 3, stand03.png,  18,104
   0, 4, stand04.png,  18,104
   0, 5, stand05.png,  18,104
   5, 0, sturn00.png,  16,105
   6, 0, cturn00.png,  19, 73
  11, 0, crouch00.png,  17, 91
  11, 1, crouch01.png,  17, 79
  11, 2, crouch02.png,  18, 73
  20, 0, walkf00.png,  22,110
  20, 1, walkf01.png,  17,111
  20, 2, walkf02.png,  17,111
  20, 3, walkf03.png,  17,110
  20, 4, walkf04.png,  17,109
  20, 5, walkf05.png,  20,107
  20, 6, walkf06.png,  22,106
  20, 7, walkf07.png,  22,108
  20, 8, walkf08.png,  22,110
  20, 9, walkf09.png,  17,111
  20,10, walkf10.png,  17,111
  20,11, walkf11.png,  17,110
  20,12, walkf12.png,  17,109
  20,13, walkf13.png,  20,107
  20,14, walkf14.png,  22,106
  20,15, walkf15.png,  22,108
  21, 0, walkb00.png,  22,110
  21, 1, walkb01.png,  17,111
  21, 2, walkb02.png,  17,111
  21, 3, walkb03.png,  17,110
  21, 4, walkb04.png,  17,109
  21, 5, walkb05.png,  20,107
  21, 6, walkb06.png,  22,106
  21, 7, walkb07.png,  22,108
  21, 8, walkb08.png,  22,110
  21, 9, walkb09.png,  17,111
  21,10, walkb10.png,  17,111
  21,11, walkb11.png,  17,110
  21,12, walkb12.png,  17,109
  21,13, walkb13.png,  20,107
  21,14, walkb14.png,  22,106
  21,15, walkb15.png,  22,108
  41, 0, jumpup00.png,  18,117
  41, 1, jumpup01.png,  17,110
  41, 2, jumpup02.png,  17,102
  41, 3, jumpup03.png,  17, 95
  41, 4, jumpup04.png,  16, 93
  41, 5, jumpup05.png,  17,102
  41, 6, jumpup06.png,  17,110
  41, 7, jumpup07.png,  17,116
  41, 8, jumpup08.png,  17,116
  42, 0, jumpf00.png,  21,116
  42, 1, jumpf01.png,  20,109
  42, 2, jumpf02.png,  18, 90
  42, 3, jumpf03.png,  27, 77
  42, 4, jumpf04.png,  19, 85
  42, 5, jumpf05.png,  31, 79
  43, 0, jumpb00.png,  18,116
  43, 1, jumpb01.png,  17,110
 100, 0, runf00.png,  38, 99
 100, 1, runf01.png,  55,101
 100, 2, runf02.png,  36,106
 100, 3, runf03.png,  37, 99
 100, 4, runf04.png,  55,101
 100, 5, runf05.png,  33,106
 181, 0, win_a00.png,  16,108
 181, 1, win_a01.png,  12,113
 181, 2, win_a02.png,  13,113
 181, 3, win_a03.png,  12,112
 181, 4, win_a04.png,  13,104
 181, 5, win_a05.png,  13, 89
 181, 6, win_a06.png,  13, 85
 191, 0, wood00.png,  14, 13
 191, 1, wood01.png,  18,  8
 191, 2, wood02.png,  14, 12
 191, 3, wood03.png,   8, 18
 192, 0, woodb00.png,  17, 14
 192, 1, woodb01.png,  15, 16
 120, 0, guards00.png,  22,104
 120, 1, guards01.png,  26,104
 120, 2, guards02.png,  30,104
 121, 0, guardc00.png,  19, 72
 122, 0, guarda00.png,  16,100
5000, 0, hithi00.png,  23,105
5001, 0, hithi00.png,  20, 50
5002, 0, hithi00.png,  16, 20
5000,10, hithi10.png,  31,104
5001,10, hithi10.png,  27, 50
5002,10, hithi10.png,  15, 20
5000,11, hithi11.png,  38, 94
5000,20, hithi20.png,  53, 88
5001,20, hithi20.png,  40, 34
5002,20, hithi20.png,  18, 17
5000,21, hithi21.png,  53, 89
5010, 0, hitlo00.png,  31, 96
5011, 0, hitlo00.png,  15, 43
5012, 0, hitlo00.png,  24, 18
5010,10, hitlo10.png,  34, 87
5011,10, hitlo10.png,  17, 39
5012,10, hitlo10.png,  28, 16
5010,20, hitlo20.png,  35, 80
5011,20, hitlo20.png,  15, 31
5012,20, hitlo20.png,  30, 14
5010,21, hitlo21.png,  35, 81
5020, 0, hitc00.png,  20, 74
5020,10, hitc10.png,  28, 72
5020,20, hitc20.png,  39, 60
5030, 0, hita00.png,  38,107
5031, 0, hita00.png,  38, 44
5032, 0, hita00.png,  17, 16
5030,10, hita10.png,  49, 98
5031,10, hita10.png,  48, 37
5032,10, hita10.png,  19, 20
5030,20, hitf20.png,  49, 80
5031,20, hitf20.png,  44, 37
5032,20, hitf20.png,  18, 29
5030,30, hitf30.png,  58, 90
5031,30, hitf30.png,  52, 34
5032,30, hitf30.png,  20, 40
5030,31, hitf31.png,  58, 90
5030,40, hitf40.png,  47,103
5031,40, hitf40.png,  43, 42
5032,40, hitf40.png,  18, 62
5030,50, hitf50.png,  35,120
5031,50, hitf50.png,  33, 58
5032,50, hitf50.png,  15, 88
5040, 0, hitf20.png,  49, 45
5041, 0, hitf20.png,  44, 37
5042, 0, hitf20.png,  18, 29
5040, 1, hitupf01.png,  49, 63
5040,10, hitlie10.png,  50, 33
5041,10, hitlie10.png,  51, 22
5042,10, hitlie10.png,  19, 30
5040,11, hitlie11.png,  18, 67
5040,20, hitd00.png,  49, 55
5041,20, hitd00.png,  44, 45
5042,20, hitd00.png,  17, 39
5060, 0, hitup00.png,  23,107
5061, 0, hitup00.png,  25, 40
5062, 0, hitup00.png,  20,  7
5060, 1, hitup01.png,  23,107
5060,10, hitup10.png,  19,113
5061,10, hitup10.png,  13, 63
5062,10, hitup10.png,  11, 95
5070, 0, hitth00.png,  41,115
5071, 0, hitth00.png,  42, 47
5072, 0, hitth00.png,  57, 20
5070,10, hitth10.png,  58,105
5071,10, hitth10.png,  56, 39
5072,10, hitth10.png,  78, 19
5070,20, hitth20.png,  60, 92
5071,20, hitth20.png,  60, 18
5072,20, hitth20.png,  91, 12
5300, 0, dizzy00.png,  31, 82
5300, 1, dizzy01.png,  31, 81
5300, 2, dizzy02.png,  31, 79
5300, 3, dizzy03.png,  31, 78
 200, 0, s_x00.png,  16,105
 200, 1, s_x01.png,  14,105
 200, 2, s_x02.png,  14,105
 210, 0, s_y00.png,  11,100
 210, 1, s_y01.png,   7, 97
 210, 2, s_y02.png,   6,101
 210, 3, s_y03.png,  13,103
 210, 4, s_y04.png,  13,103
 210, 5, s_y05.png,  14,104
 230, 0, s_a00.png,  18,108
 230, 1, s_a01.png,  11,106
 230, 2, s_a02.png,  11,107
 240, 0, s_b00.png,  21,106
 240, 1, s_b01.png,  19,106
 240, 2, s_b02.png,  26,104
 240, 3, s_b03.png,  22,104
 240, 4, s_b04.png,  14,104
 240, 5, s_b05.png,   6,104
 400, 0, c_x00.png,  19, 73
 400, 1, c_x01.png,  18, 73
 410, 0, c_y00.png,  12, 83
 410, 1, c_y01.png,  12, 83
 410, 2, c_y02.png,  12, 84
 410, 3, c_y03.png,  11, 94
 410, 4, c_y04.png,  12, 88
 430, 0, c_a00.png,  20, 72
 430, 1, c_a01.png,  28, 64
 430, 2, c_a02.png,  32, 60
 430, 3, c_a03.png,  31, 60
 440, 0, c_b00.png,  14, 71
 440, 1, c_b01.png,  19, 62
 440, 2, c_b02.png,  11, 62
 440, 3, c_b03.png,  22, 65
 440, 4, c_b04.png,  18, 65
 440, 5, c_b05.png,  14, 64
 440, 6, c_b06.png,  19, 63
 600, 0, a_x00.png,  19, 97
 600, 1, a_x01.png,  17, 97
 610, 0, a_y00.png,  30,102
 610, 1, a_y01.png,  12, 98
 610, 2, a_y02.png,  17, 94
 610, 3, a_y03.png,  13, 97
 630, 1, a_a01.png,  27, 97
 630, 2, a_a02.png,  25, 97
 640, 0, a_b00.png,  19, 99
 640, 1, a_b01.png,  30, 97
 640, 2, a_b02.png,  28, 97
 800, 0, s_th_a00.png,  14,103
 800, 1, s_th_a01.png,  14, 97
 800, 2, s_th_a02.png,  13, 92
 800, 3, s_th_a03.png,  13, 88
 800, 4, s_th_a04.png,  15, 90
 800, 5, s_th_a05.png,  12,104
 800, 6, s_th_a06.png,  12,100
 800, 7, s_th_a07.png,  15,100
 800, 8, s_th_a08.png,  24, 95
 800, 9, s_th_a09.png,  29,111
 800,10, s_th_a10.png,  49, 88
 800,11, s_th_a11.png,  39, 86
 800,12, s_th_a12.png,  37, 86
1000, 0, palm00.png,  39, 94
1000, 1, palm01.png,  49, 89
1000, 2, palm02.png,  49, 89
1000, 3, palm03.png,  54, 83
1000, 4, palm04.png,  54, 83
1000, 5, palm05.png,  54, 83
1000, 6, palm06.png,  54, 83
1000, 7, palm07.png,  53, 86
1050, 0, knee00.png,  19, 99
1050, 1, knee01.png,  18,102
1050, 2, knee02.png,  24,114
1050, 3, knee03.png,  27,115
1050, 4, knee04.png,  27,115
1050, 5, knee05.png,  23,113
1050, 6, knee06.png,  18,113
1050, 7, knee07.png,  16,115
1052, 0, kneeld00.png,  19, 99
1052, 1, kneeld01.png,  15, 85
1052, 2, kneeld02.png,  15, 91
1052, 3, kneeld03.png,  18,106
1055, 0, kneek00.png,  36,107
1055, 1, kneek01.png,  29,108
1055, 2, kneek02.png,  26,109
1055, 3, kneek03.png,  20,118
1055, 4, kneek04.png,  18,110
1055, 5, kneek05.png,  18,113
1055, 6, kneek06.png,  19,113
1055, 7, kneek07.png,  19,112
1100, 0, upper00.png,  14,103
1100, 1, upper01.png,  14,103
1100, 2, upper02.png,  12,102
1100, 3, upper03.png,  11,102
1100, 4, upper04.png,  10,104
1100, 5, upper05.png,   7,139
1100, 6, upper06.png,   7,132
1100, 7, upper07.png,   7,132
1100, 8, upper08.png,   7,128
1100, 9, upper09.png,   8,113
1210, 0, stun00.png,  20,106
1210, 1, stun01.png,  21,107
1210, 2, stun02.png,  18,105
1210, 3, stun03.png,  15,104
1210, 4, stun04.png,  13, 93
1210, 5, stun05.png,  15, 93
1210, 6, stun06.png,  18, 95
1300, 0, block00.png,  17,105
1300, 1, block01.png,  17,105
1300, 2, block02.png,  17,105
1320, 0, cblock00.png,  16, 71
1320, 1, cblock01.png,  16, 71
1320, 2, cblock02.png,  19, 71
1340, 0, ablock00.png,  16,101
1340, 1, ablock01.png,  16,101
1400, 0, tzanko00.png,  16,78
1400, 1, tzanko01.png,  15,78
1400, 2, tzanko02.png,  35,76
1400, 3, tzanko03.png,  26,106
1400, 4, tzanko04.png,  26,106
1400, 5, tzanko05.png,  26,106
1400, 6, tzanko06.png,  23,104
1400, 7, tzanko07.png,  29,101
