The inaccuracy in GetTickCount is supposedly only ~30 ms and I'm measuring the results of thousands of iterations once, not each iteration individually, which gives me consistent numbers. So it seems accurate.
Why is STL list so much faster in all ways than custom list implementation in MSVS 2012 for a thousand iterations? What tricks can be used in C90 to make it as fast? Is a significant boost in performance possible with C90?
I don't think rebellion spreads at the scale of planets. Suppose they have interstellar flight or interstellar Internet. Would there be a lot of tourism between close planets? Close in light years. Or trade. I think you need some reason for rebellion like starvation or high prices or mass poverty. Have partial rebellion in cities and that detract from efficiency or productivity. Or population, growth rate.
There's two ways you could make terrain type transitions.
One is partly transparent transition terrain tiles from all combinations of sides. Then you just render four terrain transition images in place of one tile and the bottom layer is a full tile.
Other way is to prerender all transition combinations. There are e*e*e*e-1 permutations of elevation types, where e is the number of elevation levels, multiplied by t*t*t*t terrain transition permutations, where t is the number of terrain types.
I'd join in but I'm working on an RTS. Maybe in 2 years.
Some thoughts. You'd need a server in every region players play or else it will be too laggy, and then you also need some way for the servers to communicate to keep the game world together. You'd also need a large level editing tool.
How about this. You have different "technologies" or "knowledges" that your strata (group of labourers) can possess. To obtain certain knowledges (eg "refinery operation") you might require simpler knowledges. Just make some up to build a hierarchy of knowledge (eg "knowledge 5,2". Some can be obtained by experimentation and trial and error which might require money. The knowledges might slowly diffuse and rate of diffusion increases with education institutions. Being employed at a job where somebody higher up is more knowledgable also diffuses knowledge. There is also a sink as older generations die without passing on their knowledge.