The ordering of the researchOrder array is sometimes ignored, such as the Sensor Turret upgrade being researched before the Engineering upgrade despite Engineering being listed before Sensor Turret. This results in usage of sub-optimal ordering in order to minimize time loss and makes perfectly optional ordering impossible.