Actually less of a bug and more of an unexpected behavior that I strongly doubt is working as intended: After further testing,
this is in fact a bug.As part of my campaign setup I have six survey ships requiring rank 3 to command (rank 1 being the lowest). In the Commanders window, I have run an auto-assign by clicking the "Reassign Naval" button. Only four of my six survey ships receive a commander, despite the fact that my two rank-3 commanders with the highest Survey stats are not assigned to any ship at all.
I notice several things:
- My survey ships have missile launchers attached for the purpose of dropping buoys, with MFC, magazine, and an ordnance load.
- Each survey ship also has 2x Boat Bay for the purpose of carrying a single fighter-size survey craft.
- The unemployed commanders in question do not have any skill in Crew Training, Reaction, Engineering, or Tactical.
- Each commander assigned to the survey ship possesses one of these four skills. In fact, one of the commanders assigned lacks any survey skill.
Thus, my conjecture is that the auto-assign is treating my survey ships as warships due to the missile launchers (or perhaps the boat bays?). This strikes me as undesired if not unintended behavior since the auto-assign considers survey ships a higher priority, thus it makes no sense that the algorithm to determine ship type ranks weapons/PPV higher than survey sensors. Certainly, I would think a player is more likely to design a survey ship with weapons than a warship with survey sensors, and the game should account for this!
I have previously noted a similar behavior with orbital mining platforms with an included cargo bay (for a mass driver), which is treated as a freighter and assigned a Logistics commander instead of a Mining commander, even though mining ships are supposed to be a higher priority than freighters. I wonder if the algorithm which determines the ship type for officer assignment is getting its assignments backwards?
----
ADDENDUM: I did a little bit of testing. I designed and built the following ship:
Galorfing C class Deep Space Survey Ship 27,881 tons 57 Crew 503.9 BP TCS 558 TH 400 EM 0
717 km/s Armour 1-81 Shields 0-0 HTK 13 Sensors 0/0/1/1 DCR 1 PPV 0
Maint Life 0.00 Years MSP 11 AFR 6218% IFR 86.4% 1YR 3,223 5YR 48,349 Max Repair 100.0000 MSP
Cargo 25,000 Cargo Shuttle Multiplier 5
Captain of the List Control Rating 1 BRG
Intended Deployment Time: 3 months Morale Check Required
Commercial Inertial Fusion Drive EP400.00 (1) Power 400.0 Fuel Use 2.80% Signature 400.00 Explosion 5%
Fuel Capacity 250,000 Litres Range 57.7 billion km (931 days at full power)
Geological Survey Sensors (1) 1 Survey Points Per Hour
Gravitational Survey Sensors (1) 1 Survey Points Per Hour
This design is classed as a Military Vessel for maintenance purposes
The auto-assignment via "Reassign Naval" button gave this ship a commander with Crew Training 50 and Reaction 20 - not a Survey specialist.
However, I built the following ship:
Galorfing C-2 class Deep Space Survey Ship 2,201 tons 42 Crew 363.1 BP TCS 44 TH 400 EM 0
9087 km/s Armour 1-15 Shields 0-0 HTK 11 Sensors 0/0/1/1 DCR 1 PPV 0
Maint Life 2.12 Years MSP 103 AFR 39% IFR 0.5% 1YR 31 5YR 461 Max Repair 100.0000 MSP
Captain of the List Control Rating 1 BRG
Intended Deployment Time: 3 months Morale Check Required
Commercial Inertial Fusion Drive EP400.00 (1) Power 400.0 Fuel Use 2.80% Signature 400.00 Explosion 5%
Fuel Capacity 250,000 Litres Range 731.5 billion km (931 days at full power)
Geological Survey Sensors (1) 1 Survey Points Per Hour
Gravitational Survey Sensors (1) 1 Survey Points Per Hour
This design is classed as a Military Vessel for maintenance purposes
This ship class receives Survey-spec commanders as expected. The only difference in the designs was the cargo hold and shuttles in the former. There is no logical reason that a cargo hold would cause a survey ship to be reclassified as a
warship (perhaps as a freighter though that would still be non-ideal).
Thus, I now consider this a proper bug and not merely an undesired behavior.SJW: The game assigns a main function to a ship class for auto-assignment. The code checked for weapons before checking for survey sensors. I've now changed it so a ship will be classed as a survey ship if the size of survey sensors exceeds the size of weapons. I've also added a line to the class summary so you can see the class function for assignment purposes.