You're comparing image editing software and two multi-media web browsers with a text-based IRC client. Of course they will have more colour choice-- that's practically what they are built for.

Colours over IRC were an after thought. They're technically not even part of the protocol. The limit is implicit in how the protocol was proposed well over a decade ago (when you started using IRC). So the 16 colour limit isn't really something mIRC can do much about now.

Of course you can also use colours locally, and there need not be any limit here, but the way colours are rendered are tied closely to the way they are rendered over IRC (it uses the same syntax), so extending the 16 colour limit would require a new syntax for local use. This would probably not be all that trivial.

However, the assumption here is that 16 colours is limiting. Is it really? We're talking local usage only, we can't change how colours work remotely. Colour usage locally would probably just be used for theming scripts. Themes tend to use only a handful of colours-- maybe 6 or 7 at most. Most themes only make use of ~3-4 colours (text, event, bg, accent). I don't know any themes that actually use 16 colours... so I'd question why you'd need more.

Note that the reason web browsers support all 16-million colours is because they are meant to allow designers to develop anything they want. Basically, if designers want to break the rules and use lots of colours, they can-- but this doesn't really happen that often. Designers are also responsible for designing the entire page, not just the content, so it's often required to use more colours when you're dealing with the overall page design (though even this is limited to a very small palette, in practice). If you actually look at most websites, you'll find that, minus the "chrome" (the skeleton of the design), there are again only a handful of colours used for text content (foreground, background, accent). Browsers still have to let developers pick any set of colours, which is why they support any colour, but designers won't just use every colour that is available to them just because they can.

mIRC actually works the same way in this respect-- you can pick ANY colour you want. So technically, your statement is misleading... mIRC offers 16 million colours. The difference is that you can only use 16 of them at a time. But again, given what I said above about themes, this tends to be way more than enough in practice.

The only real problem with colour limitations is that you have to share your local colour palette with the remote colour palette. IOW, if you change your "royal blue" (color #2) to a "neon blue", someone typing Ctrl+K+2 will send a neon blue, not a royal blue. That can make it difficult to apply non-standard theme colours while still using the standard colours over IRC. But again, this limitation is due to the way mIRC shares the palette. I think a separate palette for local use was suggested (extending Ctrl+K to 99 when not sent over the server and using the 16+ values for local palette codes), but I imagine it's not an easy change.


- argv[0] on EFnet #mIRC
- "Life is a pointer to an integer without a cast"