67 data.difficulty = difficulty;
70 mission.requireSystemTags(ReqMode.NOT_ANY, Tags.THEME_CORE);
71 mission.preferSystemTags(ReqMode.ANY, Tags.HAS_CORONAL_TAP);
72 mission.preferSystemUnexplored();
73 mission.preferSystemInteresting();
76 mission.requireSystemNotHasPulsar();
77 mission.preferSystemBlackHoleOrNebula();
78 mission.preferSystemOnFringeOfSector();
80 StarSystemAPI system = mission.pickSystem();
83 FleetSize size = FleetSize.HUGE;
84 FleetQuality quality = FleetQuality.SMOD_3;
85 OfficerQuality oQuality = OfficerQuality.AI_ALPHA;
86 OfficerNum oNum = OfficerNum.ALL_SHIPS;
87 String type = FleetTypes.PATROL_LARGE;
90 mission.triggerCreateFleet(size, quality, Factions.REMNANTS, type, data.
system);
91 mission.triggerSetFleetOfficers(oNum, oQuality);
92 mission.triggerAutoAdjustFleetSize(size, size.next());
93 mission.triggerSetRemnantConfigActive();
94 mission.triggerSetFleetNoCommanderSkills();
95 mission.triggerFleetAddCommanderSkill(Skills.FLUX_REGULATION, 1);
96 mission.triggerFleetAddCommanderSkill(Skills.ELECTRONIC_WARFARE, 1);
97 mission.triggerFleetAddCommanderSkill(Skills.COORDINATED_MANEUVERS, 1);
98 mission.triggerFleetAddCommanderSkill(Skills.NAVIGATION, 1);
99 mission.triggerFleetSetAllWeapons();
100 mission.triggerMakeHostileAndAggressive();
101 mission.triggerFleetAllowLongPursuit();
102 mission.triggerPickLocationAtInSystemJumpPoint(data.
system);
103 mission.triggerSpawnFleetAtPickedLocation(
null,
null);
104 mission.triggerFleetSetPatrolActionText(
"sending hyperwave signals");
105 mission.triggerOrderFleetPatrol(data.
system,
true, Tags.JUMP_POINT, Tags.NEUTRINO, Tags.NEUTRINO_HIGH, Tags.STATION,
106 Tags.SALVAGEABLE, Tags.GAS_GIANT);
109 if (data.
fleet ==
null)
return null;
112 WeightedRandomPicker<String> picker =
new WeightedRandomPicker<String>(mission.getGenRandom());
113 picker.add(
"tesseract_Attack");
114 picker.add(
"tesseract_Attack2");
115 picker.add(
"tesseract_Strike");
116 picker.add(
"tesseract_Disruptor");
117 fleet.getFleetData().addFleetMember(picker.pick());
118 FleetMemberAPI member = fleet.getFlagship();
120 AICoreOfficerPlugin plugin = Misc.getAICoreOfficerPlugin(Commodities.OMEGA_CORE);
121 PersonAPI person = plugin.createPerson(Commodities.OMEGA_CORE, Factions.OMEGA, mission.getGenRandom());
122 member.setCaptain(person);
124 int i = data.
fleet.getFleetData().getMembersListCopy().size() - 1;
125 FleetMemberAPI last = data.
fleet.getFleetData().getMembersListCopy().get(i);
126 data.
fleet.getFleetData().removeFleetMember(last);
128 data.
fleet.setCommander(person);
129 data.
fleet.getFleetData().addFleetMember(member);
130 data.
fleet.getFleetData().sort();
131 List<FleetMemberAPI> members = data.
fleet.getFleetData().getMembersListCopy();
132 for (FleetMemberAPI curr : members) {
133 curr.getRepairTracker().setCR(curr.getRepairTracker().getMaxCR());
136 member.setVariant(member.getVariant().clone(),
false,
false);
137 member.getVariant().setSource(VariantSource.REFIT);
138 member.getVariant().addTag(Tags.SHIP_LIMITED_TOOLTIP);
139 member.getVariant().addTag(Tags.VARIANT_CONSISTENT_WEAPON_DROPS);
142 data.
fleet.getMemoryWithoutUpdate().set(
"$ignorePlayerCommRequests",
true);