In deinem CharToInt hätten ein paar ELSE nicht schaden können, aber wie wäre es mit
StrToInt :winker:
RTE.SelAttributes.Color := IrcColors[StrToInt(Text[i])];
Aber du bist dir wirklich ganz sicher, das dort eine Zagl drin ist?
(hast es getestet ... über'n Debugger, oder 'ne MessageBox)