Oh and I forgot about the multiplayer thing. They made a choice, they talked about it, they knew the conscequences and the "broken multiplayer" is just the price they are starting to paie for.
When you make a game that is all about building more and more thing, the solution they choose (which is standard client-server replication with some improvement for special cases) will always be a barrier just like processing power already is.
So instead of having to improve on one front to make player able to go further with the game (more and more automation and bigger factory) they have to work on both front (or at least on the one that is limitant). And I think that the internet throughput will be the first limitant for a while as it seems harder to improve on for several reasons, mainly the uncertainty of networking (varaible delai, lost packet...).
I see the choice they had to make as either get quickly a multiplayer that is not perfect, but that can be played while putting themselves in a bad place to bring it to the perfect multiplayer everbody is dreaming of, or preparing for a good working multiplayer but only being able to get it out when it is finished, so not before a long time. That is the choice between incremental improvement or well design complet system that only paie of when complet.
I can only understand their choice because of :
- the pressure from the people wanting a multiplayer mode;
- the fact that by being dependent on others technology (the game engine and and especially the physics engine) the well being of the other possible multiplayer design is not really in their hand, unless they remake so of the stuff by themselves);
- the fact that the first solution is the go to one, well documented, well known one. And that players may understand the issues it causses because they are kind of used to them;
- and finally maybe the fear to never be able to have the second solution in working order because of the added constraint it forces on the whole simulation code and having never experienced it before.
My only hope is that before going to deep into their implementation of the game, they at least try to fellow the constraint the second solution requires to work. So that if one day they (or somebody else) can or want to implement it, they only face the original obstacles and not ones they have created by themselves.