I think you're right Maiden - in both that it's done to save the AI survey ships, and also that they never build replacement / additional surveyors. Makes very little difference as sooner or later they will hit a wormhole to the other side of the galaxy and have to spend 50+ turns getting back in to range.
All anomalies belong to me, of course, so that is acceptable
Seriously, it would be nice if the AI became smarter in that regard (better challenge)
- depending on the number of available anomalies & opponents, an AI should consider building additional Surveyors
- depending on the largeness of the map there should be a tendency that wormholes are ignored
The auto-survey also needs some tweaking:
- First off, always heading towards the closest anomaly isn't automatically the best choice (eg. when this is a single anomaly which could detract the surveyor from a cluster of anomalies in another direction)
- a sub-option which could command that specific objects would be ignored could be handy, just like "don't survey wormoles/graveyards etc". As for me, I always ignore wormoles, and this has the additional effect that if AI surveyor survive + anomalies become short, it often goes for wormholes which throws it off-track giving me even more time to round up the very last anomalies.
- a sub-option making the ship avoiding all enemy confrontation at all cost
- and perhaps a tendency to rather survey into regions whic are already known to be friendly (cleared of enemies) instead of unknown space even if the first option takes more movepoints or nets lesser anomalies
I seems like some complicated coding to me.
Donno about C++ but I can program (Schneider) BASIC and there this would be a single line, and I assume that logical operations work basically the same in most languages. Dependant on the return of a single variable, which determines if auto-survey is set or not, the code executes a line or a sub-routine that either will delete the pirates or create them, and then simply proceed.