Да, для зеленого тона и некоторых других, плохо различается насыщенность. Как не корректируй — ничего не помогает. Действительно, единственным способом решения проблемы является уменьшение количества градаций насыщенности. Но это испортит визуальную структуру палитры — будут дырки. Вот я и на распутье. Но скорее всего я таки «продрежу» палитру.
Игра Proto Raider запущена на Стиме и iOS т.ч. он кросплатформенная. Другое дело, что платформ могло быть и побольше. Все дело во времени. Такие игры не приносят прибыль — это как хобби. Поэтому сложно иногда выделать время.
ASCII спрайты — это честные символы с дополнительной информацией о цвете каждого. Спрайты я делал в обычном текстовом редакторе с моноширинным шрифтом. Выводятся в игре они уже движком, посимвольно с помощью шрифта, который можно выбирать. Вот, например, как храниться спрайт:
javascript
var bossDoctor = {
frameTime: 500, // Duration of one frame in msec.
sprites: [[ // Array of frames
".--.", // Each frame is array of regular strings
"'oO'",
' "| ',
"/[]|",
" TT "
],[
".--.",
"'Oo'",
' "| ',
"/[]|",
" TT "
]],
colorsPattern: [[ // Array of colors of frames
"wwww", // Each frame is an array of regular strings
"wggw", // Characters in the strins are indexes of colors from "colorPresets"
" g. ",
" aa ",
" ss "
],[
"wwww",
"wggw",
" g. ",
" aa ",
" ss "
]],
colorPresets: { // Colors indexes
"a": "888888",
"s": "FF4400",
"g": "00CCFF",
"w": "FFFFFF",
".": "444444"},
defaultColor: "FF8800" // Default color for spaces in "colorsPattern"
}
Далее, HSB в RGB можно перевести так:
Ссылка
Proto Raider