def identifyFleetsRoles(): "identify fleet roles" # assign roles to fleets universe = fo.getUniverse() for fleetID in universe.fleetIDs: foAIstate.addFleetRole(fleetID, FleetUtilsAI.assessFleetRole(fleetID))
def identifyFleetsRoles(): "identify fleet roles" print ("Identifying fleet roles") # assign roles to fleets universe = fo.getUniverse() for fleetID in universe.fleetIDs: print ("considering fleet with id: " + str(fleetID)) foAIstate.addFleetRole(fleetID, FleetUtilsAI.assessFleetRole(fleetID))
def getFleetRole(self, fleetID, forceNew=False): "returns fleet role by ID" if (not forceNew) and fleetID in self.__fleetRoleByID: return self.__fleetRoleByID[fleetID] else: role=FleetUtilsAI.assessFleetRole(fleetID) self.__fleetRoleByID[fleetID] = role makeAggressive=False if role in [AIFleetMissionType.FLEET_MISSION_COLONISATION, AIFleetMissionType.FLEET_MISSION_OUTPOST]: pass if role in [AIFleetMissionType.FLEET_MISSION_EXPLORATION]: thisRating=self.getRating(fleetID) if float(thisRating.get('overall', 0))/thisRating.get('nships', 1) >= 0.5 * ProductionAI.curBestMilShipRating(): makeAggressive=True else: makeAggressive=True fo.issueAggressionOrder(fleetID, makeAggressive) return role