I recall from the start them saying the engine did not allow custom power colors - then it DID allow them. It appears they made quite a few hack-arounds that went around the original engines perimeters.
In a certain sense, nothing is genuinely impossible with software in the sense that you can always rewrite the software. But if you didn't actually know the implementation details, it was basically impossible to simply guess at what the difficulty of a change was. No player without first hand knowledge of some kind ever guessed anything right about the game implementation in all the time I was keeping score on the forums. This was so absolute that whenever someone said something even close to true I knew they either had inside knowledge or was tinkering with the game on the side or both.
Custom power colors was one of those things that sounded simple but was a gigantic undertaking. Here's what you needed to do to make that work, starting from the original game:
1. Redo all the power FX art assests to allow tinting.
2. Add tint information to the data channel sent to the game client
3. Add power customization data to the character database
4. Add tint settings to power customization database schema
5. Add User interface to adjust color tint to powers
So, allowing players to change the color of their fire blasts involved changing the back end databases, the communications code, the server code, the game client, the character creation user interface, and redo a few hundred art assets. If none of those things have been done yet and the studio had never before tackled a project involving even one quarter the scope, in the days of the Cryptic 15 you'd have rightly called that task - just to tint some blasts - basically impossible.
What was "hard" and what was "easy" sometimes had nothing to do with on-paper technical difficulty and more to do with what was simply things people said yes to and things people said no to. For example, when I was asked to work on the Architect custom critter system, I designed a valuation system that had three tunable parameters, alpha, beta, and gamma. However, by the time I was asked to work on it some preliminary work had already been done based on informal conversations I had with the devs way back in I14, and the fixed tables for those tunable parameters had already been written into the code for I18. Alpha, and beta. No gamma. When I asked for that fixed data table to be extended by one more column I was told if I needed it the entire thing would be scrapped as undoable, because they didn't have the resources to make that change available at that time. So I refactored my system to work with two variables instead. I also had a proposed change rejected because it required adding a button to the AE custom critter screen.
A button.
I learned an awful lot about what the game could and could not do in the last thirty days, because I managed to acquire admin rights to the Beta server - that's how we were able to pull off that Immortal Game event there. A *lot* of trial and error testing (and more than one multi-zone crash). Hypothetically speaking, I may have granted that access to a few other players that made better use of that information than I was in a position to do so.