Now, i've finished the campaign which was interesting but lacked cohesion. Each mission starts with ships that you cant build and techlevel at almost 0 even tho the "time" goes forward. I would have made it so that the later missions already have an increased tech-level for the player instead of having to research "Xeno Research" on every single mission.
But thats besides the point, the recommendations i have are mostly for the single player game.
More events, and make some events have a limit of "only once per galaxy" so that we dont see "bug wars" on every second planet. I could be remebering wrong but i seem to remeber getting same events a bit too often.
Ability to release races as puppets. Keep in memory which planets have been controlled by which empires so if an enemy takes over your allies planets and the ally folds and gives you the rest of their planets you can then kick the enemys arse and release your former ally onto the galaxy again. Make it so that the new ally is given your techlevel but none of your trade goods and is moved to your aligment. They start off with their homeworld and you can give them more planets via the trade screen if you wish to. That way i wouldnt have to run my obsecenly large empires when all i want is a little corner of galaxy and manipulate behind the scenes.
Each improvement given to a starbase increases starbase base HP by 5% That way starbases would be harder to destroy and there would be no need for more starbase modules and a huge interstellar tradecenter with one laser would be better at defence due to higher hp than a small military outpost with 2 lasers. That way it would be cheaper to defend outposts that already serve another purpose, and harder to build starbases that are only for military purposes.
with a 5% increase per module the larger starbases would require a considerably larger fleet to take down than they do now. After mid-late game a maxed out military starbase can be taken down by a single determined and well built battleship. If the starbase has 30 modules and a 5% increase per module (exponential growth) it would take more than 1 battleship to take it down. Starbases should be, once very large, a fortress that requires a great deal of planning to take down. You should always feel slightly intimidated when attacking something that takes 2-3 years to build with a ship that took 2-3 weeks to build
Give the possibility to give orders before ground or space combat starts. Something along the lines of: Retreat if damage recieved = 75% of total damage. Target troop transports. Target single ships. Target whole fleet. And for ground combat, i'd want a panic button that commenses orbital bombartment if it looks like i'll lose. So a "Do orbital bombartment if chance of victory drops below X to 1" and have that X modifiable before the battle starts and in the course of the computers calculations of how the battle is going, there is an added trigger that checks for the possibility of win. This would be nice for people who like to use things like information warfare which has a very large variance on the amount of aliens who join your side and since the odds before battle are randomized (the little numbers that flash until you click "go")it would be something of a fallback option.
The ability to build multiple ships at the same time at a slightly increased efficiency. Mass production if you will. When you build a ship and click the "mass produce" option, it opens a subscreen that is where you can determine the amount of ships you wish to build (up to the max freespace on your planets fleet) and then what ships you want to build and if you want to spend money on building them (as it is possible to buy single ships it should be possible to buy parts of ships as well. So in mass production it should be possible to buy all the engines for example. Thus costing a bit more but decreasing the time to build) and the higher the amount of ships you massbuilt the slightly quicker it would be. If it took you 100 weeks to build 1 ship the normal way, to build 10 ships (max fleet size orbiting planet if i remeber correctly) it would take you something like 90 per ship. And thus 900 weeks instead of 1000 weeks. The ships could only be of the same type. This would also benefit those who have planets that produce immense amounts of production but can only build one constructor in 1 week. Thus it would be less micro managing to then build 9 at a time and move them as a fleet instead of seeing that trickle of white lines on the map when your single constructors move to a starbase on the other side of the galaxy.
Give rally points an option that reads roughly "move full fleets to rallypoint X" so you can have a rallypoint form fleets and once the fleet is full it then moves to the front. So rallypoints can serve as a staging area.
The ability to place more than 1 construction module on a constructor.
Overhaul the combat graphics. Make a couple of generic looking planet surfaces and little aliens that run around and shoot at each other. Now they have nothing in between they just walk towards each other, which is really lame looking. It would be much cooler if there was on a large planet a city or on a small planet, a jungle or some general terrain that resembles the planet on the ground and the defenders would be entrenched on the roofs and streets and so forth, while the attackers go through predefined paths along the buildings or trees and shoot at the defenders. Wouldnt be very hard to code. Just add some points where some of the attackers die depending on combat probability and points where some of the defenders do the same. And calculate how it will go before the battle commenses and then play out this animated battle with the user having free camera control. A low priority but the ground combats are really... bad...
Oh, and allies share map information, when you ally with someone you automatically become aware of how their side of the map is, what information they have that you dont and vise versa.
Oh, and one last. The ability for anomalis to appear on the map every so often (dependant on some game setting). Right now, when the anomalies are gone they are gone. But with this, you could make it so that they appear every now and then on the game map and you would want to have such things as "all ships can survey" or hold a few really fast survey ships in stock. Also, an option that reads "building starbases in another players territory = act of war yes/no" So that you would have to build an influence starbase just on your side of the border and slowly move towards the enemy instead of right now, building ready huge fleets of constructors on yoru spare time and going next to some neutrals homeworld and building 4 starbases with full influence on the 4 squares around them and having that planet with very little effort and no war. That should be a obvious and blatanat act of war.
Oh heck, i still have more. Variable space terrain, now the playing field is blank with NOTHING in it. Make areas like nebulas which make "FTL drives inoperative (reduces speed to 1)", "Very thick nebula, reduces speed to 50% and all ships take 10% damage per turn down to a minimum of 1" "Acidic nebula. All ships take 1 point of damage per turn, if HP reaches 0 then ship is destroyed" Ofcourse, repairs would be impossible in a nebula such as this. Space is a very dangerous place you know. And add things like black holes which cause damage, slows your ship down and pulls your ship towards them. Neutron stars which boost energy weapons and cancel out shields. And areas of space where ships go faster (think.. gravitywaves?) And a option which defines how present these special spatial anomalies are. From "no anomalies" to "Its full of dangers" which cause sometimes even planets to be in these nebulas and so forth. And race specific benefits from kinds of nebulas. Also, race specific ability to colonize some planets. Also, colonizing a planet inside an opponents space is considered an act of war or atleast of hostility, depending on the closeness of that space to their homeworld (harder to keep an eye on the fringe ya know). So add all planets an internal system that defines what kind of a planet it is. For example 3-5 different settings(options):
Warmth (20-2000)
Gravity (20-2000)
Sunlight (20-2000)
Atmospheric O2 (20-2000)
Core stability (20-2000)
These could be displayed to the player when they look at the planet but would be unmodifiable. And each player would have a area that has settings ranging from eden-earth-mars-pluto And depending on how many match up with the races internal preferance then that planet would be scored accordingly with the player. These calculations could be made before the game starts during the game setup point. Each race would prefer different planets and thus while us blobs of flesh like humans and altarians would prefer some plant. The aliens like Yor would prefer other planets. Which would further signify the difference between the 2. Having a YOR live on a gas giant that we cant inhabit and we live on earth would serve to keep the competetion for space important as even the backlands you cant use are important since your worst enemy could thrive on them.
And as most life has certain distinc criteria. Like prefering not to be burned in the sun 24/7. There would still be planets that are not inhabitable but you might never be able to conquer the Yor homeworld because they are some nasty critters who live on a pluto like planet. So you just take up orbit and lob rocks onto the surface till they are all dead and then proceed to take that small moon where they had a colony which you can convert to your glorious empire. Would make invasion a little less profitable and cultural conquest a little more profitable. You could invade or culturally convert planets that you could live on yourself. No use trying to educate some deep sea mollusks which dont really like macdonalds either. If you cant live on a planet then the planet wont convert, the popularity of the leader will just go down until the planet is empty, so it serves the same purpose anyway.
Now all the races have all the same criteria for planets, almost the exact same tech trees and the galaxy is very plane field with stars and planets you can inhabit and planets you cant inhabit and lastly, anomalies. Very plain galaxy if you ask me. Also, the ability to create an outpost on planets you cant otherwise colonize. If you know there is some plant that to you, looks like a pile of Bleep, but know that to your potential enemy, it is heaven. And you build a outpost on it, nothing on the surface, it just marks the planet as being owned by you (some orbital satellites and a huge "We own this world yoo" sign. Your enemy would think twice before encroaching on your space. as they would now have to invade that planet in an act of war instead of a "we just colonized some fringe world which you cant use anyway".
Also, give "world condition" specific tech tress, that check what kind of worlds you want to live on and adjusts your tech trees accordingly. This as all the other options, would be apply able for all races or they could convert to the basic techtrees. You could also force races to live on certain planets when you start the game so you could make better RP games. Yor living on hot worlds and insects living on gas giants. For example. So if us humans live on earth then our technology would be something different than if we lived on a gas giant. So now this tech tree wouldnt be race specific as all races are technically a product of the PLANET they live on. And thus would be planet specific. So if you prefer cold worlds you'll have aspects of your techtree different, than if you live on a hot world. I can think of 10 potential differences in thinking that would follow with living in cold-hot enviroments. Think of north europe and sahara. There are some differences that are world (enviroment)based while we are a part of the same race.
Also, the stars and such could move around once every year. So if you play for long enough the planets and stars in the galaxy will move around as if they are circling the center of the galaxy and planets as if they are circling their respectiv stars. this would be simply done by calculation positions of stars before the game stars or during loading of saved games and then calculatiing positions of stars and planets for every year up to 50 years from game stars and after that doing a recalculation. That way you could set some parameters like "2 stars/planets cant be next to each other" and it would help keep the galaxy rougly the same but as parts closest to the center of the galaxy would move quicker than parts on the outside of the galaxy, your empire could turn out to look rather interesting if you expand too vastly. Also, as with all options this should be "turn offable" and it should also be possible to make stars simply move at random instead of around a center. Making it so that planets stay within X distance fromt he sun and if the sun moves to the edge of the galaxy then it moves back towards the center

would look like a massive pingpong field. But if you add stellar phenomena like nebula, this is where it would have an added niceness in that the nebula would expand or constrict randomly. So building a starbase near an acidic nebula that causes damage might not be a good idea even if it is outside of the nebula right now.
I probably have some more ideas but I'll throw those in here for now and see how people react.
Oh, and have sun reading this incredibly long post