We are currently living with 6-bit (64 possible colors) due to datablock limitations.
Wouldn't 32-bit colors allow for better looking builds?
1. The 32-bit "color" to which you're referring is a lie. What you're actually talking about is 24-bit "color" (8 bits each for red, green, and blue) and then an 8-bit transparency value. This 24-bit color space most frequently in use is known as the sRGB (standard RGB) color space.
2. Blockland already supports 24-bit colors with transparency. When you connect to a server, the RGBA values of the server's color set are transfered to your client. Currently, you can select 64 colors from the available 16.7 million colors. Each color is assigned an ID (0...n).
3. The 6 bits you're talking about actually refers to the network traffic required to tell a client what color a brick is (decimal-based ID to binary). For example:
60 = 111100, 61 = 111101, 62 = 111110, 63 = 111111
"Bit" stands for "binary digit", and can have the value of 0 or 1. Each of the binary values above contains 6 "bits", so the server must transmit anywhere from 1 to 6 bits per brick to each client. Allowing 7 bits would provide us up to 128 distinct colors from the available 16.7 million. As for transmitting the hex values as you suggested, look at the number of bits required to transmit just the letter "A":
A = 01000001
The real solution here is to convert the paint can to use raycasts instead of projectiles, which will eliminate one datablock per color. Then, just allow us 128 or 256 colors (7 or 8 bits, respectively). I believe Badspot has had some ideas on how to really revamp the paint system since before v9. Maybe he'll finally get around to implementing them.
Allowing the full 16.7 million colors is not only a terrible idea, it's completely unnecessary.