Понятно. Ну в общем я через строку начал записывать цвет в структуру и теперь оно сохраняется корректно.
char szColor[16];
FormatEx(szColor, sizeof(szColor), "%i %i %i %i", g_iColor[iClient][0], g_iColor[iClient][1], g_iColor[iClient][2], g_iColor[iClient][3]);
g_hKeyValues.SetString("color"...