You can use conditions both in mission offering and for ship conditions. For example:
if (missionVariables.assassins_rebooted_stage === 0 && galaxyNumber === 6 && player.score > 199) {
In that example, the mission will only be offered if you are in Galaxy 7 and have 200 or more kills. You can also chain missions by having as a condition that another mission has been completed. Similarly you can add conditions scripts to ships, so they will only appear when certain conditions are met. For example:
if (galaxyNumber === 6 && system.ID === 39 && missionVariables.assassins_rebooted_battlebot_development_level === 3) return true;
if (galaxyNumber === 6 && system.ID === 39 && missionVariables.assassins_rebooted_battlebot_development_level === "Complete") return true;
This ship will only appear if you are at a particular system in Galaxy 7 and the Technocrats running the system have replaced their police force with AI drones (set by the mission variable).
Most of the mission OXPS do this sort of thing. If you are in G1 for example as a new player, then at 6,000 Credits something will happen. Something else will happen when you hit 256 kills. That something else will give you a reason to go to Galaxy 2. Its a bit of an info dump, but I've put the system populator script for 4 of the systems modified by the Assassins Guild in a code box below if you want to have a poke around it as it has a lot of chained events happening and gives you some examples of how to make a 'story' play out over time and the actions of the player and NPCs. (Contains Spoilers!). The Galactic Almanac also contains an example of chained story advancement and missions. If you have both it and GNN News OXZ installed, then over time a series of news broadcasts will appear. Once you've seen all of them, you will receive a message asking you to go somewhere.
Code: Select all
//Function to Populate all Assassins Systems with planets, moons, ships and stations
this.assassins_populator = function assassins_populator() {
// If Strangers World is installed we don't want to add anything until after the first launch from a save game.
// So if we haven't yet launched and Strangers world is installed, bail out of the assassins populator and run it on the first launch instead.
if (missionVariables.assassins_rebooted_stranger_installed === "Yes" && !missionVariables.assassins_rebooted_stranger_has_populated) return;
// Populate Orramaor
if (system.ID === 73) {
// The resort planet Appollodrus is always added regardless of whether any missions are running or not.
var apollodorus = system.addPlanet("assassins_rebooted_Apollodorus");
apollodorus.displayName = "Apollodorus (Planet)";
// Because we have given it a display name, Planetary Compass OXZ (if installed) will not assign a name to the moon or give it a beacon.
// If the Galactic Almanac is installed then it will automatically add the name and beacon. But we don't want to do this twice as then it will end up with two beacons on it.
// The Assassins script will only add beacon labels to any planets and moons it adds therefore if the Galactic Almanac is not installed.
// The same code is used to name and add beacons to all the moons, planets and gas giants added by the OXZ.
if (!missionVariables.assassins_rebooted_almanac_installed) {
this.beacon = system.addVisualEffect("assassinsCompass_planet", apollodorus.position);
this.beacon.beaconCode = apollodorus.displayName;
this.beacon.beaconLabel = apollodorus.displayName;
}
// Likewise, The Sunset Retirement Home is always present.
system.legacy_addShipsAt("assassins_rebooted_sunset_retirement_home_station", 1, "pwm", [-100000, -500000, 305000]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [-100000, -489900, 305000]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [-100000, -510100, 305000]);
// ***************************************************************************** Story Note *****************************************************************************************
// The 1st Mission to kill Be Soin in his Vintage Adder takes place near the Sunset Retirement Home Station. The station's own script populates space around
// it with a Tourist Shuttle, Tourist Lander and a Tourist Transporter. The Lander and the Shuttle will fly to and land on Apollodorus. The Transporter will fly to the main station
// and dock with it. The script also adds three Tourist Ophidian Yachts, one with an AI to go to the witchpoint and dock with the nearest station to the witchpoint, another with an AI
// to go to the main station and dock with it and a third with an AI to dock with the Retirement Home. These six ships will always be encountered near the station as their AIs,
// fly around near the station until the player arrives before setting off towards their destinations.
// The stations script also spawns 4 more Ophidian Yachts in a line between the station and the main station at 50, 100, 150 and 300kms from the Retirement Home. These
// ships start flying towards their destinations as soon as they are spawned. One will go to the Retirement Home, the second to the Main Station, the third to a random OXZ
// station within 500kms of its starting point and the fourth with an AI to go to the witchpoint and dock with the nearest station to the witchpoint. The main script adds 10 more yachts
// in the spacelanes with AIs to go to the Retirement Home, Main Station or OXZ stations.
// The transporters, shuttles and landers are all unarmed and will try to flee if attacked. The yachts are armed with a pulse laser and will only attack ships which attack them first.
// None of these ships present any threat to the player and are there for flavour. All these ships are lawful however so attacking them will make the player a fugitive. The Retirement
// Home will launch Micro Mambas armed with Beam Lasers to attack criminal ships nearby to it, but it has no ships on patrol as the first hit is meant to be very easy.
// The station's own script adds Be Soin's Adder, armed with a Pulse Laser about 20kms from the Retirement Home. His ship will stay between 15 to 20 kms from the
// retirement home until the player arrives. When it detects the player it will send a friendly greeting to give away its position and fly to within 10kms of the player before
// heading towards Apollodorus. As his ship is very weak he can be destroyed easily, although the player will become an offender. The station will launch Mambas once
// Be Soin has been killed, but these do not present a major threat and the player can just leave once Be Soin is dead.
// Assassins also uses a condition script (only run at Orramaor) to override the native populater adding shuttles and hunters. All shittles in the system are replaced with
// Tourist shuttles, transporters and landers with AIs to land on the nearest planet to the station which launched them. Hunters are replaced with Soin Clan Micro Mambas,
// Geckos, Kraits, Sidewinders and Morays.
// ***************************************************************************** Story Note *****************************************************************************************
// Add a Tourist Ophidian Yacht fairly near the main station with an AI to go to the main station and dock with it.
system.addShips("assassins_rebooted_sunset_planet_yacht",1,system.mainStation.position.add([27500,0,0]), 1000)[0];
// Add a Tourist Ophidian Yacht near the player's position with an AI to go to the Retirement Home.
system.addShips("assassins_rebooted_sunset_homebound_yacht",1,player.ship.position.add([17500,0,0]), 2000)[0];
// Add a Tourist Ophidian Yacht in the spacelane with an AI to go to the witchpoint and dock with the nearest station to the witchpoint.
system.legacy_addShipsAt("assassins_rebooted_sunset_outbound_yacht", 1, "wpu", [0, 0, 0.25])
// Add 5 Tourist Ophidian Yachts in the spacelane with an AI to go to the Retirement Home, Main Station or an OXZ station and dock with it.
system.legacy_addShipsAt("assassins_rebooted_sunset_homebound_yacht", 1, "wpu", [0, 0, 0.35])
system.legacy_addShipsAt("assassins_rebooted_sunset_spacelane_yacht", 1, "wpu", [0, 0, 0.45])
system.legacy_addShipsAt("assassins_rebooted_sunset_spacelane_yacht", 1, "wpu", [0, 0, 0.55])
system.legacy_addShipsAt("assassins_rebooted_sunset_outbound_yacht", 1, "wpu", [0, 0, 0.65])
system.legacy_addShipsAt("assassins_rebooted_sunset_homebound_yacht", 1, "wpu", [0, 0, 0.75])
// Add a Tourist Ophidian Yacht in the spacelane with an AI to go to the main station and dock with it.
system.legacy_addShipsAt("assassins_rebooted_sunset_planet_yacht", 1, "wpu", [0, 0, 0.85])
// Add a Tourist Ophidian Yacht in the spacelane with an AI to go to go to the witchpoint and dock with the nearest station to the witchpoint.
system.legacy_addShipsAt("assassins_rebooted_sunset_outbound_yacht", 1, "wpu", [0, 0, 0.95])
// The first hit takes place in this system - Be Soin in his Vintage Adder is added by the Retirement Home's script when the mission to kill him is running.
// Closing Bracket for Orramaor.
}
// Populate Esrire
if (system.ID === 107) {
// The first mission is handed in at the Station Orbiting the Gas Giant.
// The Gas Giant and station are always added regardless of the mission stage.
// Add the Gas Giant Cerberus.
var cerberus = system.addPlanet("assassins_rebooted_Cerberus");
cerberus.displayName = "Cerberus (Gas Giant)";
if (!missionVariables.assassins_rebooted_almanac_installed) {
this.beacon = system.addVisualEffect("assassinsCompass_planet", cerberus.position);
this.beacon.beaconCode = cerberus.displayName;
this.beacon.beaconLabel = cerberus.displayName;
}
// Add the Torus Station: Corpse Bride in orbit around Cerberus.
// Having completed the first mission to kill Be Soin, the player is invited to go to the Corpse Bride station in Esrire if they wish to join the Guild.
// ***************************************************************************** Story Note *****************************************************************************************
// The first time the player docks having killed Be Soin they will receive a message from the guild paying them for the hit and inviting them to meet the Guild Master aboard the
// Corpse Bride Station in the Esire system if they wish to join the Guild. Meeting the Guild Master and joining the guild is mandatory to progress the OXZs missions as further
// missions are only offered once the player has joined the guild.
// The first time the player docks whilst the stage variable is at 3, they will get a mission screen explaining how the are inducted into the guild and are awarded a Mark Transponder
// Scanner, which will mark assassination targets on the scanner. The guild states it will be in contact with more work soon and the stage variable advances to 4. Further messages
// offering hits and News broadcasts will now start being sent. Each event has a scripted delay, so a certain number of hyperspaces jumps have to be made before the next event
// will occur.
// The Gas Giant and the Corpse Bride Station are permanent features of the system. The station is Neutral in alignment. It will allow any ship to dock with it regardless of the ship's
// legal status. It does not police space around it and so will not mark ships for committing offenses and it won't defend ships against attacks by other ships. All goods are legal
// at the station, and it will have larger than normal quantities of slaves, narcotics and firearms for sale. It will launch well equipped Cobra Mark IIIs to attack any ship which
// attacks the station itself.
// If the player docks with the station (at any time except when the meet the guild master mission is running) then a custom arrival screen is shown, and a docking fee is charged.
// If the player has attacked the station however, an arrival screen refusing landing permission is shown and the player is forcibly launched back into space. The hostility variable
// is set when the station is attacked by the player and cleared on making a hyperspace jump, so the station will cease being hostile to the player from an attack if the player
// jumps out and returns later.
// ***************************************************************************** Story Note *****************************************************************************************
system.legacy_addShipsAt("assassins_rebooted_corpse_bride_station", 1, "pwm", [7000000, 8000000, 23278750]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [7000000, 7989900, 23278750]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [7000000, 8010100, 23278750]);
// Closing Bracket for Esrire.
}
// Populate Tiared
if (system.ID === 194) {
// ***************************************************************************** Story Note *****************************************************************************************
// The planet and the orbiting stadium are permanent features of the system. The stadium is lawful in alignment. It will only grant docking permission to clean ships, and it will launch
// fighters to attack any offenders or fugitives within its scanner range. The station has Ramon’s Nemesis from the original Assassins OXP as its defence ships and a squad of 3
// Nemesis ships are added near the stadium with an AI to patrol around the stadium and attack any offender or fugitive ships they encounter. This is done by the Stadium's own
// script. As the station and its ships are lawful, attacking them make the player a fugitive. The Nemesis fighters all have custom pilots and comms messages. The model and texture
// for the Nemesis are Ramon’s originals, but the ships are given new Ais, scripts and shipdata entities.
// As with all the lawful stations in assassins, if a clean player docks with the station, they will receive a custom arrival report and be charged a docking fee. Non-clean players who
// dock without permission receive a message explaining how they were refused landing permission and are forcibly launched back into space. Clean players can trade with the
// station and use the shipyard. The stadium will pay slightly higher prices than normal for food, liquors & wines and gem stones. Otherwise, prices are similar to the main station
// but with less in stock.
// The 2nd Assassination, to kill the Zarausxian Hockey Team takes place in Tiared. The team are in the Armoured Passenger Liner by Ramon from the original Assassins OXP.
// As with all the ships from the original Assassins, the ship has a new Ai, script and shipdata entry. As per the mission briefing, at the time of the mission, the ship is added 150kms
// from the stadium in a straight line with the main station by the Stadum's own script. It slowly flies toward the main station accompanied by 4 Nemesis fighters. If it reaches the
// main station, it will turn round and fly back to the Stadium and then back to the main station again. As it starts about 900kms from the main station, it takes it about an hour of real
// time to get there. It can easily be found by flying to the Stadium and then setting the ASC for the main station and flying the route. Or, if the player starts at the main station, setting
// the ASC for the Stadium and flying the route to the Stadium will also encounter the team. Killing the team will raise the player’s bounty to 65, so the player will need to deal with
// this until time or measures from OXZs are used to reduce it.
// ***************************************************************************** Story Note *****************************************************************************************
// The desert planet Diomedes is always added regardless of whether any missions are running or not.
var diomedes = system.addPlanet("assassins_rebooted_Diomedes");
diomedes.displayName = "Diomedes (Planet)";
if (!missionVariables.assassins_rebooted_almanac_installed) {
this.beacon = system.addVisualEffect("assassinsCompass_planet", diomedes.position);
this.beacon.beaconCode = diomedes.displayName;
this.beacon.beaconLabel = diomedes.displayName;
}
// Likewise, the Madison Square Orbital Stadium is always added in orbit around Diomedes.
system.legacy_addShipsAt("assassins_rebooted_orbital_stadium", 1, "pwm", [-200000, 600000, 924120]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [-200000, 589900, 924120]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [-200000, 610100, 924120]);
// The second hit takes place in this system, the mission ship is added by the Stadium's own script at the time of the mission.
//Closing Bracket for Tiared
}
// Populate Beatle
if (system.ID === 203) {
// ***************************************************************************** Story Note *****************************************************************************************
// Assassins makes fairly extensive modifications to Beatle and the third assassination to destroy the Fair Wind is scripted near the Repair Facility. The Fair Wind with two
// Phantom Escorts is added by the Facilities own script when the mission is running. The station, moon and the other ships added are permanent features of Beatle.
// The Facility is a lawful station, but it will only grant docking permission to its own ships. Neither the player nor other NPCs can dock with the station. If the player attempts
// to manually dock, they will crash into the back wall of the dock and die as the station will only open its docking port to its own pre-booked customers. Whilst it will not permit
// ships to dock with it, it will not be hostile to clean ships in its vicinity. It will launch Phantoms armed with three forward mounted Beam Lasers to attack any offenders or fugitives
// within scanner range.
// The script also adds a squadron of three Phantoms to patrol around the Facility. These ships will also attack any offenders or fugitives they detect and will also attack any ships
// which attack the facility's ships. 3 Damaged Ships, each with two phantom escorts are added with Ais to orbit the facility. The Damaged Ships are clones of the standard oolite
// ships, but they are unarmed and have no equipment. The escorts will attack any ship which attacks their mother but will not intervene to defend other ships in the yard.
// Attacking one of the Damaged Ships will therefore cause the player to be attacked by 5 Phantoms as the escorts and the three Phantoms on patrol will all attack the attacker.
// The facility will also start launching more Phantoms to engage the attacker.
// The Damaged Ships are picked from three pools. Pool 1 (Python, Boa Mark I, Transporter, Cobra Mark I & Cobra Mark III). Pool 2 (Asp, Fer-de-lance, Moray Star Boat & Viper).
// Pool 3 (Gecko, Krait, Mamba & Sidewinder). One ship from each pool is spawned on each visit to the system, so there will always be three different Damaged Ships with escorts
// orbiting the facility.
// The Phantoms and the Damaged Ships all have unique pilots and comms messages, but as the Damaged Ships have no escape capsules, their crews never eject. The main script
// also adds two Damages Ships each with 2 Phantom escorts to the spacelanes. These ships will fly to the witchpoint, main station or directly to the Facility. If they went to the
// witchpoint or main station first, then they will fly to the Facility once they arrive at the witchpoint or main station. They are not armed (but their escorts are). Their escorts will only
// attack ships which attack their mother and won’t attack other ships (regardless of their legal status) unless they attack their mother.
// On system population, the main script will add a squadron of 3 Phantoms within 13kms of the player’s position. This will be near the witchpoint if jumping into the system or near
// the station the player is docked with if loading from a saved game. These Phantoms have an AI to fly directly to the Facility and dock with it if they reach it. If they cannot dock
// with the Facility for any reason, they will switch Ais to patrol between the sun, main planet or witchpoint. These ships will actively attack any offenders or fugitives they come
// across and will answer distress calls from clean ships.
// A condition script is also used to over-ride the native populator to replace all hunters added by the native populator at Beatle with Augeas Security Phantoms. These ships have
// an AI to patrol between the Facility, Planet, Witchpoint or Sun hunting for ships with bounties.
// At the time of the 3rd Assassination the Repair Facilities own script adds The Fair Wind with two Phantom escorts to the ships around the facility. As with the other Damaged
// Ships, it is unarmed and has no equipment. As it is an Anaconda it is very slow and cannot outrun missiles of any type, although its escorts will ECM standard missiles and the
// minesweepers will disarm any q-mines or other cascade weapons. The Fair Wind will be the only Anaconda around the Facility and as the player by this stage has the Mark
// Transponder Scanner, its golf club on the scanner with be flashing.
// The trick to completing the mission is to make sure you are Clean and arrive at the Facility with full tanks. If you are anything other than Clean the three security Phantoms on
// patrol will instantly attack you and the Facility will start launching more Phantoms to attack you. However, provided you are clean none of the ships will bother you until you start
// shooting at the Fair Wind. As soon as you do its two Phantom escorts will attack you and the three Phantoms on patrol will turn hostile and start flying towards you.
// The range of the Phantoms three Beam Lasers is limited, so initially you’ll only have to deal with the two escorts.
// The Fair Wind has a higher than normal energy level, but it is a sitting duck as it too slow and damaged to avoid attack. You can simply creep up behind it and fire off a couple of
// hard head missiles as this will take care of it, provided they both hit and give it a full blast of your forward laser to make sure. You need to destroy it quickly however and then
// hit the injectors and flee out of the repair yard as the Phantoms will overwhelm you once they reach you. Destroying the Fair Wind will raise the player’s bounty to 70 Credits,
// so having enough fuel for the 4.4 light year jump to the nearest system is useful as Security Phantoms may be encountered near the Sun if topping up the tanks by fuel skimming.
// ***************************************************************************** Story Note *****************************************************************************************
// The moon Augeas is always added regardless of whether any missions are running or not.
var augeas = system.addMoon("assassins_rebooted_Augeas");
augeas.displayName = "Augeas (Moon)";
if (!missionVariables.assassins_rebooted_almanac_installed) {
this.beacon = system.addVisualEffect("assassinsCompass_moon", augeas.position);
this.beacon.beaconCode = augeas.displayName;
this.beacon.beaconLabel = augeas.displayName;
}
// The third hit takes place at the Augeaian Orbital Repair Facility, but the station is always present regardless of whether any missions are running or not.
// Add the Station
system.legacy_addShipsAt("assassins_rebooted_orbital_repair_facility", 1, "pwm", [300000, 700000, 724270]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [300000, 700000, 714170]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [300000, 700000, 734370]);
// Add three Phantom Secuity Ships (leader with two escorts) to patrol the area around the facility where the damaged ships are parked.
system.legacy_addShipsAt("assassins_rebooted_augeas_security_patrol_leader", 1, "pwm", [300000, 700000, 713170]);
// Add 3 damaged ships escorted by 2 Phantoms each .
// Each ship is chosen from a pool of small, medium and large ships (so different types of ships appear on each visit.
// The ships slowly fly around near the facility. Attacking them will cause their escorts to attack and make the attacking ship a fugertive.
// The Phantoms on patrol will also then join the attack and the facility will launch more Phantoms to attack the aggressor.
system.legacy_addShipsAt("assassins_rebooted_augeas_damaged_ship_type1", 1, "pwm", [300000, 700000, 743070]);
system.legacy_addShipsAt("assassins_rebooted_augeas_damaged_ship_type2", 1, "pwm", [300000, 681200, 724270]);
system.legacy_addShipsAt("assassins_rebooted_augeas_damaged_ship_type3", 1, "pwm", [281200, 700000, 724270]);
// The third hit takes place here. If the mission is running the target ship The Fair Wind will also be present - Added by the Facility's own script.
// Add another group of Phantoms near the player's position on system population. This means they will be near the witchpoint when entering the system from hyperspace
// or near the station the player is docked with if loading from a saved game.
// Either way, these Phantoms will fly from their starting point to the Repair Facility. When they reach it they will dock with it. If unable to dock they will switch AIs to patrol
// between the main planet, sun, the main station and the witchpoint. They will attack pirates and offenders and answer distress calls.
system.addShips("assassins_rebooted_augeas_security_long_patrol_leader",1,player.ship.position.add([10000,0,0]),3560)[0];
// Add a damaged ship with two escorts somewhere in the main spacelane about a third on the way between the witchpoint and the main planet.
// This version of the damaged ships will cruise the spacelane and then fly to the repair facility. Should it get there it will switch AIs to the same AI as the ships already at the Facility
// and orbit the station. If you have Anarchies OXZ installed, the spawn point for these ships is near the Salvage Gang, so they will start from the Salvage Gang and make their
// way to the Repair Facility. If you don't have it installed the ships will still be at the same position.
system.legacy_addShipsAt("assassins_rebooted_augeas_damaged_ship_spacelane", 1, "wpu", [0, 0, 0.35])
// Add a second damaged ship (again with two escorts). This one is closer to the main planet, about 25% of the way between the planet and the witchpoint.
system.legacy_addShipsAt("assassins_rebooted_augeas_damaged_ship_spacelane", 1, "wpu", [0, 0, 0.75])
// Closing Bracket for Beatle
}
// Populate Geteve
if (system.ID === 18) {
// The moon Hercules is always added regardless of whether any missions are running.
var hercules = system.addPlanet("assassins_rebooted_Hercules"); // Added as a planet so it has an Atmosphere as its a habitable moon.
hercules.displayName = "Hercules (Moon)";
if (!missionVariables.assassins_rebooted_almanac_installed) {
this.beacon = system.addVisualEffect("assassinsCompass_moon", hercules.position);
this.beacon.beaconCode = hercules.displayName;
this.beacon.beaconLabel = hercules.displayName;
}
// Add the Special Branch Outpost (also always present regardless of the mission stage).
system.legacy_addShipsAt("assassins_rebooted_special_branch_hq", 1, "pwm", [80000, 300000, -220000]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [80000, 300000, -209900]);
system.legacy_addShipsAt("assassins_rebooted_minesweeper", 1, "pwm", [80000, 300000, -230100]);
// ***************************************************************************** Story Note *****************************************************************************************
// The Geteve system features in the 4th Assassination and the system is also subject to a Thargoid Invasion. This is measured with a variable and additional ships are added as
// the invasion variable is advanced. At the start of the OXZ the variable is at zero as the Invasion hasn’t started yet. The following changes are permanent and are always added
// regardless of whether the invasion is in progress or not:
// The moon Hercules and the orbiting Special Branch Outpost are always present. The outpost's own script adds two groups of three Special Branch Asps with Ais to patrol around
// the outpost and attack any offender or fugitive ships. The Special Branch Asps have custom pilots and comms messages. The station is lawful and so as with other lawful
// Assassins stations, it will deny docking permission to and attack non-clean ships. If the player docks without permission, they will be thrown out of the station and forcibly
// launched. Clean players will see a custom arrival report and be charged a docking fee. The outpost does not have much in stock but will pay higher than normal prices for
// liquors & wines, luxuries and alien items.
// On system population, the mains script adds a group of three special branch Asps with an AI to go to the outpost and dock with it within 12.5kms of the player’s position
// (either near the station the player is docked with or near the witchpoint). Another group of three Asps with an AI to patrol around the main station are added near the main station.
// Two more groups of Special Branch Asps are added in the spacelane with an AI to pick one of 5 patrol destinations: The planet, the main station, the sun, the special branch
// outpost or the witchpoint. The ships will fly the route picked responding to distress calls and attacking offenders & fugitives. Ships which end up at the main station or the outpost
// will dock. If they can't dock, they'll resume patrol going to the witchpoint or sun.
// Assassins also uses a condition script to override the native populator at Geteve and replace all the police ships in the system with Special Branch Asps. Ships called by the
// native populator as police specifically (either as individual ships or group leaders) use the same AI as the Asps added by script in the spacelane and so will patrol all over the
// system. Ships called as wingmen and interceptors will also be Special Branch Asps but have auto AI turned on and so will use the standard Oolite police Ais.
// As the player plays through the missions the Guild will have cause to silence an inquisitive journalist, whose suspicious death is being investigated by Inspector Thorstan of
// GalCop Special Branch. Shortly after the Thargoids begin an invasion of Geteve and the invasion variable is set to 1. Whilst the invasion is underway the OXZ adds Thargoid
// raiders to Geteve. All are like-ships of the normal Oolite Thargoid Warship but have custom Ais, roles and scripts.
// At invasion stage 1, a group of Thargoids with an AI to go to the main station and attack it are added 50kms from the main station. A second group of Thargoids are added 75kms
// from the Special Branch Outpost to with an AI to go and attack it. A third group are added in the spacelane with an AI to go and attack the nearest OXZ station or either the
// witchpoint or main station if there are none. A fourth group with Ais to go to the witchpoint and attack any ships they find there are added 30kms from the witchpoint. All ships
// with the role pirate are also converted into Thargoids with Ais to patrol the system and attack any ships they encounter. Groups of Thargoids are also added to the system generally.
// The fourth Assassination takes place during the Thargoid Invasion as the player will be offered the contract to kill Inspector Thorstan whilst he is fighting the Thargoids attacking
// the Outpost. At the time of the mission the outpost's own script adds Inspector Thorstan's Special Branch Asp near the Outpost. He will be marked on the player’s scanner as
// his golf club will be flashing. His Asp is a standard Special Branch Asp, although he has shield boosters fitted. The challenge of the mission is having to fight or evade the waves
// of Thargoids in the system.
// Later in the OXZ’s plot when Griff Research Ltd perfect and release their Navy BattleBots and Control Drones the variable is advanced to 2. The invasion continues and the same
// ships added at stage 1 still appear, but BattleBots and Control drones are also added to the system with Ais to attack Thargoids in the system.
// Towards the end of the OXZ's plot it will be announced on the news that Geteve has been victorious and the Thargoids have been repelled. At this point the variable will be set
// to “over”. Without a numeric value no Thargoids or BattleBots are added, so the only ships appearing are the default ones which are always present and Geteve returns to being
// a normal system policed by Special Branch Asps. The description of Geteve is changed as the Thargoid Invasion plot line plays out and its productivity and population
// decline during the invasion.
// ***************************************************************************** Story Note *****************************************************************************************
// The Ships below always appear regardless of the mission variables.
// Add a wing (Leader and two escorts) near the Main Station with AIs to patrol the area 25 kms around the main station.
system.addShips("assassins_rebooted_special_branch_asp_planet_patrol",1,system.mainStation.position.add([10000,0,0]),20750)[0];
// Add another wing with AIs to go from their spawn point (near the station if loading from a saved game or near the witchpoint if entering from hyperspace) to the Outpost.
// If they reach the Outpost they will dock with it. If they can't dock then they will switch AIs to patrol the main spacelane.
system.addShips("assassins_rebooted_special_branch_asp_long_patrol",1,player.ship.position.add([10000,0,0]),12500)[0];
// Add two groups of 3 ships is the spacelane with an AI to go to the Witchpoint, Main Planet, the Sun or the nearest station. (Random dice roll for destination).
system.legacy_addShipsAt("assassins_rebooted_special_branch_asp_lawful_patrol", 1, "wpu", [0, 0, 0.45])
system.legacy_addShipsAt("assassins_rebooted_special_branch_asp_lawful_patrol", 1, "wpu", [0, 0, 0.65])
// Thargoid Invasion - Main Script Part
if (missionVariables.assassins_rebooted_thargoid_invasion > 0 && missionVariables.assassins_rebooted_thargoid_invasion !=="Over") {
// Thargoid Raiders always present during the Invasion.
// Add a group of Thargoids at the Witchpoint. These Thargoids will go to the witchpoint and remain within 5 to 15kms of the witchpoint, attacking any ships there.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type1", 10, "wpu", [0, 0, 0.0])
// One ship at the witchpoint will specifically target the player.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type2", 1, "wpu", [0, 0, 0.0])
// Add a smaller groups out of scanner range of the wichpoint with an AI to go to the witchpoint.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type1", 4, "wpu", [0, 0, 0.15])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type1", 4, "wpu", [0, 0, 0.25])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type1", 4, "wpu", [0, 0, 0.35])
// Add a group at the same positions at the Special Branch Asps with AI to go to the Witchpoint, Main Planet, the Sun or the nearest station. (Random dice roll for destination).
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type3", 4, "wpu", [0, 0, 0.45])
// Two ships out of the group will specifically target the player if they are not already being attacked by another ship.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type2", 2, "wpu", [0, 0, 0.55])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type3", 4, "wpu", [0, 0, 0.65])
// Add groups with AIs to go to the nearest station to their spawn point and remain there attacking the station and any nearby ships.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type4", 4, "wpu", [0, 0, 0.75])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type4", 4, "wpu", [0, 0, 0.85])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type4", 4, "wpu", [0, 0, 0.95])
// Add a large group near the main station. Most will go to the main station, but if there are any OXZ stations near the main station some will also go there.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type4", 10, "wpu", [0, 0, 1.0])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type6", 10, "wpu", [0, 0, 1.0])
// Two ships added near the main station will specifically target the player
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type2", 2, "wpu", [0, 0, 1.0])
// Add a Thargoid with an AI specifically to attack the player near the player's position.
system.addShips("assassins_rebooted_thargoid_raider_type2",1,player.ship.position.add([4000,0,0]),6500)[0];
// The Special Branch Outpost's script populates the space around it with Thargoids. The main script also adds Thargoids in the spacelanes with AIs to go to the Outpost.
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 2, "wpu", [0, 0, 0.10])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 1, "wpu", [0, 0, 0.30])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 1, "wpu", [0, 0, 0.50])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 2, "wpu", [0, 0, 0.60])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 1, "wpu", [0, 0, 0.70])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 1, "wpu", [0, 0, 0.80])
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type5", 1, "wpu", [0, 0, 0.90])
// Navy BattleBots and Control Drones added when the variable is at 2.
if (missionVariables.assassins_rebooted_thargoid_invasion === 2) {
// Add one Navy Control Drone with 4 BattleBot escorts at the witchpoint.
system.legacy_addShipsAt("assassins_rebooted_navy_control_drone_geteve_type1", 1, "wpu", [0, 0, 0.0])
// Add another Navy Control Drone with 4 BattleBot escorts near the main station with an AI to patrol around the main station.
system.addShips("assassins_rebooted_navy_control_drone_geteve_type2",1,system.mainStation.position.add([1000,0,0]),10750)[0];
// Add some additional Thargoid Ships.
system.addShips("assassins_rebooted_thargoid_raider_type4",4,system.mainStation.position.add([1000,0,0]),15750)[0];
system.legacy_addShipsAt("assassins_rebooted_thargoid_raider_type1", 3, "wpu", [0, 0, 0.0])
// Closing Bracket for adding Navy BattleBots and Control Drones.
}
// Closing Bracket for the Thargoid Invasion being in progress
}
// The fourth Assassination takes place here. If the mission is running the target ship of Inspector Thorstan’s Special Branch Asp is added by the Outpost's own script.
// Closing Bracket for Geteve.
}
return;
//Closing Bracket for the whole populator function.
}