On SMAC, it used the rule of three: Food, mineral, energy determined by precipitation, rocky-ness and height. (then modified by everything else). I think it's a nice way to do things - sticking to three variables makes it easy for a player to remember and work with, and three is about the minimum to have some interesting complexity.
In a similar way you have three unique terrains per race, 3 leaders per race etc. (3s all around. I like that for the above reason. I'm curious as to what other 3s this game will have)
If not weather patterns, perhaps mountains could alter the footprint of terraforming building effects or similar. It doesn't have to be too complex, nor hidden too deep (just to make you care about the shape and texture of the map, especially if you end up having some way of messing with it later). In SMAC, it didn't explain it to you through tutorials, instead you had messages like "Spartan workers at fort Scary have altered rainfall patterns at xxx" Which makes you think, wait... you can alter rainfall? How do I do that? I'm *so* gonna do that.
Anyway, I hope you have a look at the building colour stuff. Just a thought but couldn't the building textures all generated at game-start or even before that, to avoid extra work during the game? Or have a sheet for each building with it rendered in different colours for it to pick one piece of to draw? I'm reminded of this old post (from may 2012... I went looking for it) discussing blitting and trying to improve performance of draw-calls during the development of Gemcraft 2, it's half way down after he mentions the problem of lag:
http://gameinabottle.com/blog/2012/05/gc2cs-features-sparks-monsters/Although that's the extent of my knowledge on the issue. It sounds like one possible way of making buildings both pretty and not too cpu-intensive. Whatever he did it certainly worked for Gemcraft (IMO it looks much more beautiful now than the first games). Also I know he does *Science!* and actually compares the results on different computers using different versions of DirectX and other such experiments to squeeze out every drop of performance improvements he can get, usually favouring better performance on old computers over new computers (which is nice for those who aren't swimming in RAM). I'm not sure if it's helpful. But it can't hurt... well it could... but if it did that would be a very unhappy blitting accident.