Track LocalMods as part of monolith
This commit is contained in:
+1877
File diff suppressed because it is too large
Load Diff
+83
@@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Randomevents>
|
||||
<EventPrefabs>
|
||||
<!-- Configuration Event - Allows the player to customize certain aspects of the mod | can only be accessed by manually triggering it with the configuration item "de_config" -->
|
||||
<ScriptedEvent identifier="de_config">
|
||||
<ConversationAction targettag="statuseffecttarget" text="Welcome to DynamicEuropa! Please choose your preferred playstyle:">
|
||||
<Option text="DEFAULT - They way things were intended by the developers.">
|
||||
<SetDataAction identifier="jobboard_always" value="false" />
|
||||
<SetDataAction identifier="jobboard_all_options" value="false" />
|
||||
</Option>
|
||||
<Option text="CUSTOM - Customize your experience.">
|
||||
<Label name="settingsmenu" />
|
||||
<ConversationAction text="Select an option to customize it:">
|
||||
<Option text="Job Board">
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- always" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- sometimes" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- all" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- location specific" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="MISSION SELECTION:" type="remove" ParentObjectiveId="JOB BOARD SETTINGS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="COMMONNESS:" type="remove" ParentObjectiveId="JOB BOARD SETTINGS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="JOB BOARD SETTINGS:" type="remove" />
|
||||
<WaitAction time="2" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="JOB BOARD SETTINGS:" type="add" />
|
||||
<WaitAction time="0.1" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="COMMONNESS:" type="add" ParentObjectiveId="JOB BOARD SETTINGS:" />
|
||||
<WaitAction time="0.1" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="MISSION SELECTION:" type="add" ParentObjectiveId="JOB BOARD SETTINGS:" />
|
||||
<Label name="jobboardsettings" />
|
||||
<ConversationAction text="Job Board Settings:">
|
||||
<Option text="ALWAYS - The job board will always be available on supported locations.">
|
||||
<SetDataAction identifier="jobboard_always" value="true" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- sometimes" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- always" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- always" type="add" ParentObjectiveId="COMMONNESS:" />
|
||||
<WaitAction time="2" />
|
||||
<GoTo name="jobboardsettings" />
|
||||
</Option>
|
||||
<Option text="SOMETIMES - The job board will randomly become available. (Default)">
|
||||
<SetDataAction identifier="jobboard_always" value="false" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- always" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- sometimes" type="remove" ParentObjectiveId="COMMONNESS:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- sometimes" type="add" ParentObjectiveId="COMMONNESS:" />
|
||||
<WaitAction time="2" />
|
||||
<GoTo name="jobboardsettings" />
|
||||
</Option>
|
||||
<Option text="ALL OPTIONS - The job board will disregard your current location type and let you choose from all available mission types.">
|
||||
<SetDataAction identifier="jobboard_all_options" value="true" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- location specific" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- all" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- all" type="add" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<WaitAction time="2" />
|
||||
<GoTo name="jobboardsettings" />
|
||||
</Option>
|
||||
<Option text="LOCATION SPECIFIC - The job board will only display mission types in correlation to your current location type. (Default)">
|
||||
<SetDataAction identifier="jobboard_all_options" value="false" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- all" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- location specific" type="remove" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- location specific" type="add" ParentObjectiveId="MISSION SELECTION:" />
|
||||
<WaitAction time="2" />
|
||||
<GoTo name="jobboardsettings" />
|
||||
</Option>
|
||||
<Option text="- Back -">
|
||||
<GoTo name="settingsmenu" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="- CONFIRM AND EXIT -" endconversation="true">
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- always" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- sometimes" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- all" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="- location specific" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="JOB BOARD SETTINGS:" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="COMMONNESS:" type="remove" />
|
||||
<EventObjectiveAction targettag="statuseffecttarget" id="MISSION SELECTION:" type="remove" />
|
||||
<ClearTagAction tag="user" />
|
||||
<ClearTagAction tag="statuseffecttarget" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent>
|
||||
</EventPrefabs>
|
||||
</Randomevents>
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 368 KiB |
+311
@@ -0,0 +1,311 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Override>
|
||||
<Randomevents>
|
||||
<EventPrefabs>
|
||||
<!-- added Base as potential location -->
|
||||
<ScriptedEvent identifier="missionevent_jailbreak_coalition" commonness="80">
|
||||
<CheckReputationAction targettype="faction" identifier="coalition" condition="gte 30">
|
||||
<Failure>
|
||||
<!-- Do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_coalition.c1" speakertag="outpostmanager" invokertag="triggerer_player" endeventifinterrupted="false" eventsprite="Coalition">
|
||||
<Option text="EventText.missionevent.pleasecontinue">
|
||||
<!-- "please continue" -->
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_coalition.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Coalition" endconversation="true" />
|
||||
<MissionAction missionidentifier="jailbreak_coalition" locationtype="Colony,City,Base,Military" requiredfaction="separatists" minlocationdistance="1" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<!-- added Base as potential location -->
|
||||
<ScriptedEvent identifier="missionevent_jailbreak_separatists" commonness="80">
|
||||
<CheckReputationAction targettype="faction" identifier="separatists" condition="gte 30">
|
||||
<Failure>
|
||||
<!-- Do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_separatists.c1" speakertag="outpostmanager" invokertag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent.pleasecontinue">
|
||||
<!-- "please continue" -->
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_separatists.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists" endconversation="true" />
|
||||
<MissionAction missionidentifier="jailbreak_separatists" locationtype="Colony,City,Base,Military" requiredfaction="coalition" minlocationdistance="1" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="missionevent_jailbreak_sootman" commonness="80">
|
||||
<CheckReputationAction targettype="faction" identifier="separatists" condition="gte 50">
|
||||
<Failure>
|
||||
<!-- Do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<CheckDataAction identifier="jailbreak_sootman_unlocked" condition="eq true">
|
||||
<Success>
|
||||
<!-- do nothing -->
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_sootman.c1" speakertag="outpostmanager" invokertag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent_tormsdalereport.whosthat">
|
||||
<!-- who's that? -->
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.whospetran" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists">
|
||||
<Option text="EventText.missionevent_tormsdalereport.o1.o1">
|
||||
<!-- ok, what's the mission -->
|
||||
<Goto name="givemission" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="EventText.missionevent.pleasecontinue">
|
||||
<!-- we're interested -->
|
||||
<Goto name="givemission" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
<Label name="givemission" />
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_sootman.c1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent_jailbreak_sootman.c1.o1">
|
||||
<ConversationAction text="EventText.missionevent_jailbreak_sootman.c1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1" />
|
||||
<MissionAction missionidentifier="jailbreak_sootman" locationtype="Colony,City,Base,Military" requiredfaction="coalition" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
<SetDataAction identifier="jailbreak_sootman_unlocked" value="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<!-- changed viable locations for the mission -->
|
||||
<ScriptedEvent identifier="missionevent_tormsdalereport" commonness="80">
|
||||
<CheckReputationAction targettype="faction" identifier="separatists" condition="gte 30">
|
||||
<Failure>
|
||||
<!-- Do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<CheckDataAction identifier="tormsdalereport" condition="eq 0">
|
||||
<Failure>
|
||||
<!-- do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1" speakertag="outpostmanager" invokertag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent_tormsdalereport.whosthat">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.whospetran" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent_tormsdalereport.o1.o1">
|
||||
<Goto name="givemission" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="EventText.missionevent.pleasecontinue">
|
||||
<Goto name="givemission" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
<Label name="givemission" />
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Stuckinthemiddle1">
|
||||
<Option text="EventText.missionevent_tormsdalereport.c1.o1">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists">
|
||||
<Option text="EventText.missionevent_tormsdalereport.c1.o1.o1">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.o1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists">
|
||||
<Option text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists">
|
||||
<Option text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1.o1">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists">
|
||||
<Option text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1.o1.o1">
|
||||
<ConversationAction text="EventText.missionevent_tormsdalereport.c1.o1.o1.o1.o1.o1.c1" targettag="triggerer_player" endeventifinterrupted="false" eventsprite="Separatists" endconversation="true" />
|
||||
<MissionAction missionidentifier="tormsdalereport" locationtype="outpost,settlement,colony,city,camp,base,military,blockade,study,research,clinic,hospital,hydroponics,factory,shipyard" requiredfaction="coalition" minlocationdistance="2" CreateLocationIfNotFound="true" />
|
||||
<SetDataAction identifier="tormsdalereport" value="1" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="waytoascension3">
|
||||
<CheckDataAction identifier="subraevent_state" condition="lt 3">
|
||||
<Failure>
|
||||
<!-- cannot continue the way to ascension if Subra has been assassinated (see assassinationofjacovsubra4) -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<CheckDataAction identifier="waytoascension" condition="eq 4">
|
||||
<Failure>
|
||||
<!-- do nothing -->
|
||||
</Failure>
|
||||
<Success>
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<SpawnAction npcsetidentifier="outpostnpcs1" npcidentifier="huskcultecclesiast" targettag="ecclesiast" spawnlocation="Outpost" targetmoduletags="huskmodule" />
|
||||
<TriggerAction target1tag="player" target2tag="ecclesiast" applytotarget1="triggerer_player" waitforinteraction="true" />
|
||||
<NPCFollowAction npctag="ecclesiast" targettag="triggerer_player" follow="true" />
|
||||
<ConversationAction targettag="triggerer_player" text="EventText.waytoascension3.c1" eventsprite="Ecclesiast">
|
||||
<Option text="EventText.waytoascension3.o1">
|
||||
<ConversationAction targettag="triggerer_player" text="EventText.waytoascension3.o1.c1" eventsprite="Ecclesiast">
|
||||
<Option text="EventText.waytoascension3.o1.o1">
|
||||
<GoTo name="givemission" />
|
||||
</Option>
|
||||
<Option text="EventText.waytoascension3.o1.o2">
|
||||
<ConversationAction targettag="triggerer_player" text="EventText.waytoascension3.o1.o2.c1" eventsprite="Ecclesiast">
|
||||
<Option text="EventText.waytoascension3.o1.o2.o1">
|
||||
<Label name="givemission" />
|
||||
<ConversationAction targettag="triggerer_player" text="EventText.waytoascension3.o1.o2.o1.c1" eventsprite="Ecclesiast" endconversation="true" />
|
||||
<MissionAction missionidentifier="huskcultspecialassassinate" minlocationdistance="2" requiredfaction="coalition" locationtype="outpost,settlement,colony,city,camp,base,military,blockade,study,research,clinic,hospital,hydroponics,factory,shipyard" CreateLocationIfNotFound="true" />
|
||||
<SetDataAction identifier="waytoascension" value="5" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<NPCFollowAction npctag="ecclesiast" targettag="triggerer_player" follow="false" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
</ScriptedEvent>
|
||||
<!-- overriding to make the spawning in our custom modules easier + no repeat -->
|
||||
<ScriptedEvent identifier="malfunctioningdefensebot" commonness="100">
|
||||
<CheckDataAction identifier="malfunctioningdefensebotnorepeat" condition="eq 0">
|
||||
<Failure>
|
||||
<Goto name="end" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<SpawnAction speciesname="Defensebot" targettag="scrapbot" spawnlocation="Outpost" targetmoduletags="ProductionFactory,ProductionShipyard" />
|
||||
<SpawnAction itemidentifier="defensebotammobox" amount="1" targetinventory="scrapbot" SpawnIfInventoryFull="false" ContinueIfFailedToSpawn="true" />
|
||||
<StatusEffectAction targettag="scrapbot">
|
||||
<StatusEffect target="This" IsDead="true" setvalue="true" />
|
||||
</StatusEffectAction>
|
||||
<Label name="restart" />
|
||||
<ClearTagAction tag="triggerer_player" />
|
||||
<TriggerAction target1tag="scrapbot" target2tag="player" applytotarget2="triggerer_player" radius="100" waitforinteraction="true" DisableIfTargetIncapacitated="false" />
|
||||
<SetDataAction identifier="malfunctioningdefensebotnorepeat" operation="set" value="1" />
|
||||
<ConversationAction text="EventText.malfunctioningdefensebot.c1" targettag="triggerer_player" eventsprite="brokenmachinery">
|
||||
<Option text="EventText.malfunctioningdefensebot.o1">
|
||||
<SkillCheckAction requiredskill="Mechanical" requiredlevel="60" targettag="triggerer_player">
|
||||
<Success>
|
||||
<ConversationAction text="EventText.malfunctioningdefensebot.o1.c1" targettag="triggerer_player" eventsprite="brokenmachinery">
|
||||
<Option text="EventText.malfunctioningdefensebot.o1.c1.o1">
|
||||
<SkillCheckAction requiredskill="Electrical" requiredlevel="40" targettag="triggerer_player">
|
||||
<Success>
|
||||
<ConversationAction text="EventText.malfunctioningdefensebot.o1.c1.o1.c1" targettag="triggerer_player" eventsprite="brokenmachinery" endconversation="true"></ConversationAction>
|
||||
<!-- Revive it -->
|
||||
<StatusEffectAction targettag="scrapbot">
|
||||
<StatusEffect target="This" IsDead="false" setvalue="true">
|
||||
<Sound file="Content/Characters/Defensebot/DEFENCEBOT_interact1.ogg" range="100" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<!-- 'Petting' (playing with) them makes them join the crew automatically -->
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction text="EventText.malfunctioningdefensebot.o1.c1.o1.c2" targettag="triggerer_player" eventsprite="brokenmachinery" endconversation="true"></ConversationAction>
|
||||
<!-- Revive it-->
|
||||
<StatusEffectAction targettag="scrapbot">
|
||||
<StatusEffect target="This" IsDead="false" setvalue="true">
|
||||
<Sound file="Content/Characters/Defensebot/DEFENCEBOT_interact3.ogg" range="100" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<!-- Turn hostile -->
|
||||
<NPCChangeTeamAction npctag="scrapbot" teamid="Team2" />
|
||||
</Failure>
|
||||
</SkillCheckAction>
|
||||
</Option>
|
||||
<Option text="EventText.malfunctioningdefensebot.o1.c1.o2" endconversation="true">
|
||||
<!-- Revive it -->
|
||||
<StatusEffectAction targettag="scrapbot">
|
||||
<StatusEffect target="This" IsDead="false" setvalue="true">
|
||||
<Sound file="Content/Characters/Defensebot/DEFENCEBOT_interact3.ogg" range="100" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<!-- Turn hostile -->
|
||||
<NPCChangeTeamAction npctag="scrapbot" teamid="Team2" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction text="EventText.malfunctioningdefensebot.o1.c2" targettag="triggerer_player" eventsprite="brokenmachinery">
|
||||
<Option text="EventText.malfunctioningdefensebot.o1.c2.o1" endconversation="true">
|
||||
<!-- Player broke it, but learns some mechanical skill in the process -->
|
||||
<GiveSkillEXPAction skill="mechanical" amount="2" targettag="triggerer_player" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</SkillCheckAction>
|
||||
</Option>
|
||||
<Option text="EventText.malfunctioningdefensebot.o2" endconversation="true">
|
||||
<!-- Leave -->
|
||||
<Goto name="restart" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<!--Reworked shockjock2 to add power to the damn beacon and some dialog -->
|
||||
<ScriptedEvent identifier="shockjock2" commonness="50">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<CheckDataAction identifier="shockjock_broadcast" condition="eq 0">
|
||||
<Success>
|
||||
<TagAction criteria="submarine:BeaconStation" tag="beaconstation" />
|
||||
<TagAction criteria="itemtag:reactor" submarinetype="BeaconStation" tag="beaconreactor" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="beaconmonitor" submarinetype="BeaconStation" />
|
||||
<!-- Wait with spawning until a player is close enough to the beacon station-->
|
||||
<TriggerAction target1tag="player" target2tag="beaconstation" radius="4000" />
|
||||
<SetDataAction identifier="shockjock_broadcast" value="2" />
|
||||
<StatusEffectAction targettag="beaconmonitor">
|
||||
<StatusEffect target="this" condition="-100" setvalue="true" />
|
||||
<SpawnItem identifier="banditprop7" spawnposition="This" Offset="0,-10" />
|
||||
</StatusEffectAction>
|
||||
<SpawnAction itemidentifier="fuelrod" targetinventory="beaconreactor" condition="37" />
|
||||
<StatusEffectAction targettag="beaconreactor">
|
||||
<StatusEffect target="this" targetitemcomponent="Reactor" PowerOn="true" AutoTemp="true" />
|
||||
</StatusEffectAction>
|
||||
<SpawnAction npcsetidentifier="customnpcs1" npcidentifier="shockjock" targettag="okelly" spawnpointtag="saferoom" spawnlocation="beaconstation" requirespawnpointtag="true" />
|
||||
<SpawnAction speciesname="orangeboy" spawnpointtag="saferoom" targettag="maurice" spawnlocation="beaconstation" requirespawnpointtag="true" />
|
||||
<SpawnAction itemidentifier="petnametag" targetinventory="maurice" targettag="mauricenametag" />
|
||||
<StatusEffectAction targettag="mauricenametag">
|
||||
<StatusEffect target="This" writtenname="Maurice" />
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="player" target2tag="okelly" radius="700" />
|
||||
<Label name="okellyramblingloop" />
|
||||
<StatusEffectAction targettag="okelly">
|
||||
<StatusEffect target="this">
|
||||
<Forcesay message="EventText.shockjock2.ramble" sayinradio="false" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<WaitAction time="10" />
|
||||
<CheckVisibilityAction EntityTag="okelly" TargetTag="player" MaxDistance="500" AllowSameEntity="false">
|
||||
<Success>
|
||||
<GoTo name="okellyconversation" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="okellyramblingloop" />
|
||||
</Failure>
|
||||
</CheckVisibilityAction>
|
||||
<Label name="okellyconversation" />
|
||||
<ConversationAction text="EventText.shockjock2.whoareyou" speakertag="okelly" invokertag="triggerer_player" endeventifinterrupted="false" dialogtype="regular" eventsprite="shockjock">
|
||||
<Option text="EventText.shockjock2.crazy">
|
||||
<ConversationAction text="EventText.shockjock2.getlost" targettag="triggerer_player" endconversation="true" />
|
||||
</Option>
|
||||
<Option text="EventText.shockjock2.preach">
|
||||
<ConversationAction text="EventText.shockjock2.getlost" targettag="triggerer_player" endconversation="true" />
|
||||
</Option>
|
||||
<Option text="EventText.shockjock2.repair">
|
||||
<ConversationAction text="EventText.shockjock2.getlost" targettag="triggerer_player" endconversation="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
<!-- <StatusEffectAction targettag="beaconmonitor">
|
||||
<StatusEffect target="this" noninteractable="false" setvalue="true" />
|
||||
<SpawnItem identifier="banditprop7" spawnposition="This" Offset="0,-10"/>
|
||||
</StatusEffectAction> -->
|
||||
<CombatAction combatmode="Offensive" npctag="okelly" enemytag="triggerer_player" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
<CombatAction combatmode="Offensive" npctag="maurice" enemytag="triggerer_player" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
</ScriptedEvent>
|
||||
</EventPrefabs>
|
||||
</Randomevents>
|
||||
</Override>
|
||||
Executable
+1184
File diff suppressed because it is too large
Load Diff
Executable
+1269
File diff suppressed because it is too large
Load Diff
+2310
File diff suppressed because it is too large
Load Diff
Executable
+2107
File diff suppressed because it is too large
Load Diff
+3529
File diff suppressed because it is too large
Load Diff
+272
@@ -0,0 +1,272 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Missions>
|
||||
<!--
|
||||
ALL OF THESE ARE UNUSED
|
||||
ALL OF THESE ARE UNUSED
|
||||
ALL OF THESE ARE UNUSED
|
||||
-->
|
||||
<GotoMission name="Investigate Radio Signal" identifier="gotorandomencounter" type="GoTo" difficulty="1" commonness="1" reward="1000">
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<TriggerEvent eventidentifier="getrandomencountermission" campaignonly="true" />
|
||||
<LocationType locationtype="Lair,HuskgroundsDE,PirateOutpost" />
|
||||
<message header="missionheader0.gotorandomencounter" text="missionmessage0.gotorandomencounter" />
|
||||
</GotoMission>
|
||||
<SalvageMission identifier="random_salvageartifactruins" textidentifier="random_salvageskyholderartifactruins" tags="randomencounter,randomencounter_salvage,randomencounter_salvageartifact,randomencounter_salvageartifactruins" type="Salvage" difficulty="3" commonness="50" reward="1000" achievementidentifier="artifactmission" spawntype="ruin" itemtag="alienartifact" existingItemTag="alienartifact" containertag="artifactholder" requireruin="true" maxsonarmarkerdistance="500">
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
<message header="missionheader0.random_salvageskyholderartifactruins" text="missionmessage0.random_salvageskyholderartifactruins" />
|
||||
</SalvageMission>
|
||||
<SalvageMission identifier="random_salvageartifactcave" textidentifier="random_salvagethermalartifactcave" tags="randomencounter,randomencounter_salvage,randomencounter_salvageartifact,randomencounter_salvageartifactcave" type="Salvage" difficulty="3" commonness="50" reward="1000" achievementidentifier="artifactmission" spawntype="cave" itemtag="alienartifact" existingitemtag="alienartifact" containertag="artifactholder" requireruin="true" maxsonarmarkerdistance="500">
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
<message header="missionheader0.random_salvagethermalartifactcave" text="missionmessage0.random_salvagethermalartifactcave" />
|
||||
</SalvageMission>
|
||||
<SalvageMission identifier="random_salvagewreck1" tags="randomencounter,randomencounter_salvage,randomencounter_salvagewreck" type="Salvage" difficulty="3" commonness="100" reward="1000" achievementidentifier="salvagewreckmission" spawntype="wreck" showmessagewhenpickedup="true" itemidentifier="handheldterminal" containertag="locker" requirewreck="true" maxsonarmarkerdistance="500">
|
||||
<chooserandom>
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: cbspusbvnbhbnf.dpn/efsfmjdu/[ERR:_INSERT_PASS].htm" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_1]beweht" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_2]108 101 116 109 101 105 110" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_3]LLL SLS SL LS LLS S LSSS LLL LSLL" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_4]zorxv" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_5]s_m_l_t_d_ _i_i_i_u_e" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_6]DSPERiapa" />
|
||||
<StatusEffect target="This" showmessage="Receiving encrypted transmission: [PASS_7]4 5 1 4 13 5 14" />
|
||||
</chooserandom>
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
<message header="missionheader0.random_salvagewreck1" text="missionmessage0.random_salvagewreck1" />
|
||||
</SalvageMission>
|
||||
<MonsterMission identifier="random_killhammerhead" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set2" type="Monster" difficulty="2" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="Hammerhead_m" min="2" max="3" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killhammerhead" text="missionmessage0.random_killhammerhead" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killhammerhead2" textidentifier="random_killhammerhead" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set3" type="Monster" difficulty="3" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="Hammerheadgold_m">
|
||||
<monster character="Hammerhead_m" min="2" max="3" />
|
||||
<monster character="Hammerheadgold_m" min="1" max="1" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killhammerhead" text="missionmessage0.random_killhammerhead" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killhammerhead_basic" textidentifier="random_killhammerhead" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set1" type="Monster" difficulty="2" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="Hammerhead_m" min="1" max="1" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killhammerhead_basic" text="missionmessage0.random_killhammerhead_basic" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killlargecrawler" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set1" type="Monster" difficulty="2" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="Crawler_large">
|
||||
<monster character="crawler" min="3" max="4" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm1" text="missionmessage0.random_killlargecrawler" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmoloch" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set3" type="Monster" difficulty="3" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="Moloch_m">
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmoloch" text="missionmessage0.random_killmoloch" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmolochblack" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set4" textidentifier="random_killmoloch" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="Molochblack_m">
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmoloch" text="missionmessage0.random_killmoloch" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerbroodmother1" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set2" type="Monster" difficulty="3" commonness="50" reward="1000" maxsonarmarkerdistance="500" monsterfile="crawlerbroodmother_m">
|
||||
<monster character="crawler" min="3" max="4" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerbroodmother1" text="missionmessage0.random_killcrawlerbroodmother1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerbroodmother2" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set3" textidentifier="random_killcrawlerbroodmother1" type="Monster" difficulty="3" commonness="50" reward="1000" maxsonarmarkerdistance="500" monsterfile="crawlerbroodmother_m">
|
||||
<monster character="crawler" min="6" max="7" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerbroodmother1" text="missionmessage0.random_killcrawlerbroodmother1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerbroodmother3" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set4" textidentifier="random_killcrawlerbroodmother1" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="crawlerbroodmother_m">
|
||||
<monster character="crawler" min="10" max="12" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerbroodmother1" text="missionmessage0.random_killcrawlerbroodmother1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmatriarch1" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set4" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="hammerheadmatriarch" count="1" />
|
||||
<monster character="hammerhead" min="3" max="5" />
|
||||
<monster character="hammerheadgold" min="1" max="2" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmatriarch1" text="missionmessage0.random_killmatriarch1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmatriarch2" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set3" type="Monster" difficulty="3" commonness="50" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="hammerheadmatriarch" count="1" />
|
||||
<monster character="hammerhead" min="2" max="2" />
|
||||
<monster character="hammerheadgold" min="1" max="2" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmatriarch2" text="missionmessage0.random_killmatriarch2" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killgiantspineling1" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set2" type="Monster" difficulty="3" commonness="50" reward="1000" maxsonarmarkerdistance="500" monsterfile="spineling_giant">
|
||||
<monster character="spineling" min="2" max="3" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killgiantspineling1" text="missionmessage0.random_killgiantspineling1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killgiantspineling2" textidentifier="random_killgiantspineling1" tags="randomencounter,randomencounter_killmonster,randomencounter_killmonster_set3" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500" monsterfile="spineling_giant">
|
||||
<monster character="spineling" min="8" max="10" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killgiantspineling1" text="missionmessage0.random_killgiantspineling1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killthresherswarm1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set4" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="tigerthresher" min="8" max="10" />
|
||||
<monster character="bonethresher" min="2" max="3" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killthresherswarm1" text="missionmessage0.random_killthresherswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killthresherswarm2" textidentifier="random_killthresherswarm1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set3" type="Monster" difficulty="3" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="tigerthresher" min="3" max="5" />
|
||||
<monster character="bonethresher" min="1" max="2" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killthresherswarm1" text="missionmessage0.random_killthresherswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerswarm1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set1" type="Monster" difficulty="2" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="crawler" min="5" max="8" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm1" text="missionmessage0.random_killcrawlerswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerswarm1large" name="missionname.killcrawlerswarm1large" description="missiondescription.killcrawlerswarm1large" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set1" type="Monster" difficulty="3" commonness="40" reward="1000" successmessage="missionsuccess.killcrawlerswarm1" maxsonarmarkerdistance="500">
|
||||
<monster character="crawler" min="8" max="10" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm1" text="missionmessage0.random_killcrawlerswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerswarm1huge" name="missionname.killcrawlerswarm1huge" description="missiondescription.killcrawlerswarm1huge" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set2" type="Monster" difficulty="4" commonness="10" reward="1000" successmessage="missionsuccess.killcrawlerswarm1" maxsonarmarkerdistance="500">
|
||||
<monster character="crawler" min="14" max="15" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm1" text="missionmessage0.random_killcrawlerswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerswarm2" name="missionname.killcrawlerswarm1large" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set2" type="Monster" difficulty="3" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="crawler" min="10" max="12" />
|
||||
<monster character="crawlerbroodmother" min="0" max="1" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm2" text="missionmessage0.random_killcrawlerswarm2" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killcrawlerswarm2b" textidentifier="random_killcrawlerswarm2" name="missionname.killcrawlerswarm1large" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set2" type="Monster" difficulty="3" commonness="75" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="crawlerhusk" min="10" max="12" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm2" text="missionmessage0.random_killcrawlerswarm2" />
|
||||
<LocationType from="HuskgroundsDE" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killspinelingswarm1" textidentifier="random_killspinelingswarm1" name="missionname.killspinelingswarm1" description="missiondescription.killspinelingswarm1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set1" type="Monster" difficulty="2" commonness="40" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="Spineling" min="5" max="6" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killcrawlerswarm1" text="missionmessage0.random_killcrawlerswarm1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmudraptors1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set2" type="Monster" difficulty="3" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="mudraptor_unarmored" min="2" max="3" />
|
||||
<monster character="mudraptor" min="1" max="2" />
|
||||
<monster character="mudraptor_veteran" min="1" max="1" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmudraptors1" text="missionmessage0.random_killmudraptors1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmudraptors_basic" textidentifier="random_killmudraptors1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set1" type="Monster" difficulty="2" commonness="70" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="mudraptor_unarmored" min="2" max="3" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmudraptors1" text="missionmessage0.random_killmudraptors1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<MonsterMission identifier="random_killmudraptors2" textidentifier="random_killmudraptors1" tags="randomencounter,randomencounter_killmonster,randomencounter_killswarm,randomencounter_killswarm_set3" type="Monster" difficulty="4" commonness="100" reward="1000" maxsonarmarkerdistance="500">
|
||||
<monster character="mudraptor_unarmored" min="1" max="2" />
|
||||
<monster character="mudraptor" min="4" max="5" />
|
||||
<monster character="mudraptor_veteran" min="1" max="2" />
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_killmudraptors1" text="missionmessage0.random_killmudraptors1" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</MonsterMission>
|
||||
<!-- PIRATES -->
|
||||
<PirateMission type="Pirate" identifier="random_pirate_heavy" tags="randomencounter,randomencounter_pirates" difficulty="4" commonness="20" reward="1000" achievementidentifier="piratemission" addedmissiondifficultyperplayer="8" maxsonarmarkerdistance="500">
|
||||
<SubmarineTypes>
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/U-41SPirate.sub" preferreddifficulty="20" />
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/LuotiPirate.sub" preferreddifficulty="30" />
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/BerthaPirate.sub" preferreddifficulty="40" />
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/Winterhalter [PIRATE].sub" preferreddifficulty="40" />
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/U-42CPirate.sub" preferreddifficulty="50" />
|
||||
</SubmarineTypes>
|
||||
<Characters>
|
||||
<Character typeidentifier="piratecaptain" minamount="1" maxamount="1" />
|
||||
<Character typeidentifier="piratesecurity" minamount="4" maxamount="6" />
|
||||
<Character typeidentifier="pirateannihilator" minamount="0" maxamount="2" />
|
||||
<Character typeidentifier="piratemechanic" minamount="2" maxamount="3" />
|
||||
<Character typeidentifier="pirateengineer" minamount="1" maxamount="3" />
|
||||
</Characters>
|
||||
<CharacterTypes>
|
||||
<CharacterType typeidentifier="piratecaptain">
|
||||
<Character identifier="piratecaptain" from="pirate_npcs" preferreddifficulty="50" iscommander="true" />
|
||||
<Character identifier="piratecaptainlord" from="pirate_npcs" preferreddifficulty="90" iscommander="true" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="piratesecurity">
|
||||
<Character identifier="piratesecurityrecruit" from="pirate_npcs" preferreddifficulty="40" />
|
||||
<Character identifier="piratesecuritygunner" from="pirate_npcs" preferreddifficulty="60" />
|
||||
<Character identifier="piratesecuritybrute" from="pirate_npcs" preferreddifficulty="70" />
|
||||
<Character identifier="piratesecurityelite" from="pirate_npcs" preferreddifficulty="100" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="pirateannihilator">
|
||||
<Character identifier="pirateannihilator" from="pirate_npcs" preferreddifficulty="60" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="piratemechanic">
|
||||
<Character identifier="piratemechanicrecruit" from="pirate_npcs" preferreddifficulty="40" />
|
||||
<Character identifier="piratemechanicveteran" from="pirate_npcs" preferreddifficulty="70" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="pirateengineer">
|
||||
<Character identifier="pirateengineerrecruit" from="pirate_npcs" preferreddifficulty="40" />
|
||||
<Character identifier="pirateengineerveteran" from="pirate_npcs" preferreddifficulty="70" />
|
||||
</CharacterType>
|
||||
</CharacterTypes>
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_pirate_heavy" text="missionmessage0.random_pirate_heavy" />
|
||||
<message header="missionheader1.random_pirate_heavy" text="missionmessage1.random_pirate_heavy" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</PirateMission>
|
||||
<PirateMission type="Pirate" identifier="random_pirate_party" tags="randomencounter,randomencounter_pirates" difficulty="4" commonness="15" reward="1000" achievementidentifier="piratemission" addedmissiondifficultyperplayer="8" maxsonarmarkerdistance="500">
|
||||
<SubmarineTypes>
|
||||
<Submarine path="%ModDir:2532991202%/EnemySubmarines/U-41SPartyPirate.sub" preferreddifficulty="20" />
|
||||
</SubmarineTypes>
|
||||
<Characters>
|
||||
<Character typeidentifier="partypiratecaptain" minamount="1" maxamount="1" />
|
||||
<Character typeidentifier="partypiratesecurity" minamount="3" maxamount="3" />
|
||||
<Character typeidentifier="partypiratemechanic" minamount="1" maxamount="1" />
|
||||
<Character typeidentifier="partypirateengineer" minamount="1" maxamount="1" />
|
||||
</Characters>
|
||||
<CharacterTypes>
|
||||
<CharacterType typeidentifier="partypiratecaptain">
|
||||
<Character identifier="partypiratecaptain" from="partypirates" preferreddifficulty="50" iscommander="true" />
|
||||
<Character identifier="partypiratecaptainlord" from="partypirates" preferreddifficulty="90" iscommander="true" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="partypiratesecurity">
|
||||
<Character identifier="partypiratesecurityrecruit" from="partypirates" preferreddifficulty="40" />
|
||||
<Character identifier="partypiratesecuritygunner" from="partypirates" preferreddifficulty="60" />
|
||||
<Character identifier="partypiratesecuritybrute" from="partypirates" preferreddifficulty="70" />
|
||||
<Character identifier="partypiratesecurityelite" from="partypirates" preferreddifficulty="100" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="partypiratemechanic">
|
||||
<Character identifier="partypiratemechanicrecruit" from="partypirates" preferreddifficulty="40" />
|
||||
<Character identifier="partypiratemechanicveteran" from="partypirates" preferreddifficulty="70" />
|
||||
</CharacterType>
|
||||
<CharacterType typeidentifier="partypirateengineer">
|
||||
<Character identifier="partypirateengineerrecruit" from="partypirates" preferreddifficulty="40" />
|
||||
<Character identifier="partypirateengineerveteran" from="partypirates" preferreddifficulty="70" />
|
||||
</CharacterType>
|
||||
</CharacterTypes>
|
||||
<Icon texture="%ModDir:2532991202%/UI/MissionIcons.png" sourcerect="0,0,256,256" color="255,255,255" />
|
||||
<message header="missionheader0.random_pirate_party" text="missionmessage0.random_pirate_party" />
|
||||
<message header="missionheader1.random_pirate_party" text="missionmessage1.random_pirate_party" />
|
||||
<LocationType from="Any" to="Any" />
|
||||
</PirateMission>
|
||||
</Missions>
|
||||
+6771
File diff suppressed because it is too large
Load Diff
+689
@@ -0,0 +1,689 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Randomevents>
|
||||
<EventPrefabs>
|
||||
<!-- OUTPOST TAKEOVER -->
|
||||
<!--GET SEPARATIST-OUTPOST TAKEOVER MISSION | Triggered on coalition sergeant character in OutpostNpcs.xml-->
|
||||
<ScriptedEvent identifier="getcoalitiontakeovermission">
|
||||
<TagAction criteria="humanprefabidentifier:sergeantcoalition" tag="sergeant" />
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemidentifier:militaryradiocoalition" tag="targetradio" ContinueIfNoTargetsFound="true" />
|
||||
<Label name="restart" />
|
||||
<WaitAction time="1" />
|
||||
<ClearTagAction tag="gtom_player" />
|
||||
<CheckReputationAction TargetType="Faction" identifier="separatists" condition="lte -30">
|
||||
<Failure>
|
||||
<GoTo name="end" />
|
||||
</Failure>
|
||||
<Success>
|
||||
<!-- Continue -->
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
<TriggerAction target1tag="player" target2tag="sergeant" applytotarget1="gtom_player" waitforinteraction="true" />
|
||||
<CountTargetsAction targettag="targetradio" MinAmount="1">
|
||||
<Failure>
|
||||
<!-- gives a radio after completing a takeover mission (eq 1), and gives you a new radio if you lost it -->
|
||||
<CheckDataAction identifier="completedcoalitiontakeover" condition="eq 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.giveradio.coalition" eventsprite="radiocall" />
|
||||
<SpawnAction itemidentifier="militaryradiocoalition" targetinventory="gtom_player" />
|
||||
<SetDataAction identifier="completedcoalitiontakeover" operation="Add" value="1" />
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure></Failure>
|
||||
</CheckDataAction>
|
||||
<CheckDataAction identifier="completedcoalitiontakeover" condition="gt 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.newradio" eventsprite="coalition" />
|
||||
<SpawnAction itemidentifier="militaryradiocoalition" targetinventory="gtom_player" />
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="start" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<!-- get takeover mission -->
|
||||
<Label name="start" />
|
||||
<CheckDataAction identifier="cotakeoveractive" value="eq 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" dialogtype="small" text="eventtext.gettakeovermission.general.isactive" eventsprite="coalition" />
|
||||
<Goto name="end" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.coalition.lowrep.askingforhelp" eventsprite="coalition">
|
||||
<Option text="eventtext.gettakeovermission.option.accept">
|
||||
<!-- accept takeover -->
|
||||
<SetDataAction identifier="cotakeoveractive" operation="Set" value="1" />
|
||||
<TriggerEventAction identifier="resetactivetakeovercounter" nextround="true" />
|
||||
<MissionAction missionidentifier="cotakeover_separatistoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="separatists" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer" eventsprite="coalition" />
|
||||
<!-- if high reputation, can hire soldiers -->
|
||||
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="gte 50">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.addcrew" eventsprite="coalition">
|
||||
<Option text="eventtext.gettakeovermission.option.accept.answer.acceptcrew">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer.acceptcrew.answer" eventsprite="coalition" endconversation="true" />
|
||||
<GoTo name="acceptcrew" />
|
||||
</Option>
|
||||
<Option text="eventtext.gettakeovermission.option.accept.answer.declinecrew">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer.declinecrew.answer" eventsprite="coalition" endconversation="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.nocrew" eventsprite="coalition" endconversation="true" />
|
||||
<Goto name="end" />
|
||||
</Failure>
|
||||
</CheckReputationAction>
|
||||
</Option>
|
||||
<Option text="eventtext.gettakeovermission.option.decline">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.decline.answer" eventsprite="coalition" />
|
||||
<GoTo name="restart" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
<!-- preventtrigger is not used anywhere in will always fail. This is to prevent this part of the event from automatically playing out. -->
|
||||
<CheckDataAction identifier="preventtrigger" value="eq 1">
|
||||
<Success>
|
||||
<Label name="acceptcrew" />
|
||||
<!--spawn temporary crewmembers which will be removed from the crew after 6h or when completing the mission-->
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<TagAction criteria="hullname:airlock" tag="subairlock" submarinetype="Player" ContinueIfNoTargetsFound="true" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="true" />
|
||||
<WaitAction time="15" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="false" />
|
||||
<NPCChangeTeamAction npctag="tempcrew" teamtag="Team1" addtocrew="true" />
|
||||
<AfflictionAction targettag="tempcrew" affliction="temporarycrew" strength="50000" />
|
||||
</Success>
|
||||
<Failure></Failure>
|
||||
</CheckDataAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<!--GET COALITION-OUTPOST TAKEOVER MISSION | Triggered on separatist sergeant character in OutpostNpcs.xml-->
|
||||
<ScriptedEvent identifier="getseparatiststakeovermission">
|
||||
<TagAction criteria="humanprefabidentifier:sergeantseparatists" tag="sergeant" />
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemidentifier:militaryradioseparatists" tag="targetradio" ContinueIfNoTargetsFound="true" />
|
||||
<Label name="restart" />
|
||||
<WaitAction time="1" />
|
||||
<ClearTagAction tag="gtom_player" />
|
||||
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="lte -30">
|
||||
<Failure>
|
||||
<GoTo name="end" />
|
||||
</Failure>
|
||||
<Success>
|
||||
<!-- Continue -->
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
<TriggerAction target1tag="player" target2tag="sergeant" applytotarget1="gtom_player" waitforinteraction="true" />
|
||||
<CountTargetsAction targettag="targetradio" MinAmount="1">
|
||||
<Failure>
|
||||
<!-- gives a radio after completing a takeover mission (eq 1), and gives you a new radio if you lost it -->
|
||||
<CheckDataAction identifier="completedseparatiststakeover" condition="eq 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.giveradio.separatists" eventsprite="radiocall" />
|
||||
<SpawnAction itemidentifier="militaryradioseparatists" targetinventory="gtom_player" />
|
||||
<SetDataAction identifier="completedseparatiststakeover" operation="Add" value="1" />
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure></Failure>
|
||||
</CheckDataAction>
|
||||
<CheckDataAction identifier="completedseparatiststakeover" condition="gt 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.newradio" eventsprite="separatists" />
|
||||
<SpawnAction itemidentifier="militaryradioseparatists" targetinventory="gtom_player" />
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="start" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<!-- get takeover mission -->
|
||||
<Label name="start" />
|
||||
<CheckDataAction identifier="septakeoveractive" value="eq 1">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" dialogtype="small" text="eventtext.gettakeovermission.general.isactive" eventsprite="separatists" />
|
||||
<Goto name="end" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.separatists.lowrep.askingforhelp" eventsprite="separatists">
|
||||
<Option text="eventtext.gettakeovermission.option.accept">
|
||||
<!-- accept takeover -->
|
||||
<SetDataAction identifier="septakeoveractive" operation="Set" value="1" />
|
||||
<TriggerEventAction identifier="resetactivetakeovercounter" nextround="true" />
|
||||
<MissionAction missionidentifier="septakeover_coalitionoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="coalition" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer" eventsprite="separatists" />
|
||||
<!-- if high reputation, can hire soldiers -->
|
||||
<CheckReputationAction TargetType="Faction" identifier="separatists" condition="gte 50">
|
||||
<Success>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.addcrew" eventsprite="separatists">
|
||||
<Option text="eventtext.gettakeovermission.option.accept.answer.acceptcrew">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer.acceptcrew.answer" eventsprite="separatists" endconversation="true" />
|
||||
<GoTo name="acceptcrew" />
|
||||
</Option>
|
||||
<Option text="eventtext.gettakeovermission.option.accept.answer.declinecrew">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.answer.declinecrew.answer" eventsprite="separatists" endconversation="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.accept.nocrew" eventsprite="separatists" endconversation="true" />
|
||||
<Goto name="end" />
|
||||
</Failure>
|
||||
</CheckReputationAction>
|
||||
</Option>
|
||||
<Option text="eventtext.gettakeovermission.option.decline">
|
||||
<ConversationAction targettag="gtom_player" text="eventtext.gettakeovermission.option.decline.answer" eventsprite="separatists" />
|
||||
<GoTo name="restart" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
<!-- preventtrigger is not used anywhere in will always fail. This is to prevent this part of the event from automatically playing out. -->
|
||||
<CheckDataAction identifier="preventtrigger" value="eq 1">
|
||||
<Success>
|
||||
<Label name="acceptcrew" />
|
||||
<!--spawn temporary crewmembers which will be removed from the crew after 6h or when completing the mission-->
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="tempsoldierseparatists" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="tempsoldierseparatists" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<TagAction criteria="hullname:airlock" tag="subairlock" submarinetype="Player" ContinueIfNoTargetsFound="true" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="true" />
|
||||
<WaitAction time="15" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="false" />
|
||||
<NPCChangeTeamAction npctag="tempcrew" teamtag="Team1" addtocrew="true" />
|
||||
<AfflictionAction targettag="tempcrew" affliction="temporarycrew" strength="50000" />
|
||||
</Success>
|
||||
<Failure></Failure>
|
||||
</CheckDataAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<!-- Coalition Attackers-->
|
||||
<ScriptedEvent identifier="cooutposttakeoverevent">
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<TriggerEventAction identifier="resettakeoverdata" nextround="true" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="friendlyoutpostbot" />
|
||||
<TagAction criteria="itemidentifier:dockinghatch" tag="eventstart" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="hull" tag="eventstart" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="player" target2tag="eventstart" radius="100" disableincombat="false" disableiftargetincapacitated="false" waitforinteraction="false" allowmultipletargets="true" />
|
||||
<!-- tag and remove security: they are terminators and keep responding to attacks after surrender -->
|
||||
<TagAction criteria="humanprefabidentifier:securitynpc" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:securitynpcseparatists" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:securitynpccoalition" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:sergeantseparatists" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:sergeantcoalition" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<!-- kill the outpostmanager so you can loot its ID card to access the cabinet. I kind of hate it but spawning a new one didnt work, and if you take control of the outpost the manager casually gives you missions which is stupid -->
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="killmanager" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="killmanager" ContinueIfNoTargetsFound="true" />
|
||||
<AfflictionAction targettag="killmanager" affliction="gunshotwound" strength="999" />
|
||||
<!-- tag and remove watchman (unlock path NPC) since the doors to control room will open automatically -->
|
||||
<TagAction criteria="humanprefabidentifier:watchman" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:watchmanseparatist" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:soldierseparatists" tag="defenders" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Defensebot_outpost" submarinetype="Outpost" team="FriendlyNPC" tag="defenders" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="jobidentifier:cosoldier" tag="attackers" ContinueIfNoTargetsFound="true" />
|
||||
<!-- making sure these are in team 2 -->
|
||||
<NPCChangeTeamAction npctag="defenders" teamtag="Team2" />
|
||||
<WaitAction time="1" />
|
||||
<StatusEffectAction targettag="removenpc">
|
||||
<StatusEffect type="Always" target="Character" interval="1" stackable="false">
|
||||
<RemoveCharacter />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ReputationAction targettype="Faction" identifier="separatists" increase="-200" />
|
||||
<ConversationAction text="eventtext.takeover.attack" dialogtype="Small" targettag="player" eventsprite="coalition" ContinueAutomatically="true" />
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="separatistssoldier" CompareToTarget="separatistssoldier" MinPercentageRelativeToTarget="75">
|
||||
<!-- complete mission if >75% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<MissionStateAction missionidentifier="cotakeover_separatistoutpost" operation="Set" value="1" />
|
||||
<ModifyLocationAction faction="Coalition" />
|
||||
<SetDataAction identifier="cotakeoveractive" operation="Set" value="0" />
|
||||
<SetDataAction identifier="completedcoalitiontakeover" operation="Add" value="1" />
|
||||
<NPCChangeTeamAction npctag="defenders" teamtag="FriendlyNPC" />
|
||||
<AfflictionAction targettag="defenders" affliction="stun" strength="10" />
|
||||
<NPCChangeTeamAction npctag="attackers" teamtag="FriendlyNPC" removefromcrew="true" />
|
||||
<CombatAction combatmode="Arrest" npctag="attackers" enemytag="defenders" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
<ConversationAction text="eventtext.takeover.success" dialogtype="Mission" targettag="player" eventsprite="firefight" />
|
||||
<ConversationAction text="eventtext.takeover.complete" dialogtype="Mission" targettag="player" eventsprite="Coalition" endconversation="true" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</ScriptedEvent>
|
||||
<!-- Separatist Attackers-->
|
||||
<ScriptedEvent identifier="sepoutposttakeoverevent">
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<TriggerEventAction identifier="resettakeoverdata" nextround="true" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="friendlyoutpostbot" />
|
||||
<TagAction criteria="itemidentifier:dockinghatch" tag="eventstart" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="hull" tag="eventstart" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="player" target2tag="eventstart" radius="100" disableincombat="false" disableiftargetincapacitated="false" waitforinteraction="false" allowmultipletargets="true" />
|
||||
<!-- tag and remove security: they are terminators and keep responding to attacks after surrender -->
|
||||
<TagAction criteria="humanprefabidentifier:securitynpc" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:securitynpcseparatists" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:securitynpccoalition" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:sergeantseparatists" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:sergeantcoalition" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<!-- kill the outpostmanager so you can loot its ID card to access the cabinet. I kind of hate it but spawning a new one didnt work, and if you take control of the outpost the manager casually gives you missions which is stupid -->
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="killmanager" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="killmanager" ContinueIfNoTargetsFound="true" />
|
||||
<AfflictionAction targettag="killmanager" affliction="gunshotwound" strength="999" />
|
||||
<!-- tag and remove watchman (unlock path NPC) since the doors to control room will open automatically -->
|
||||
<TagAction criteria="humanprefabidentifier:watchman" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:watchmanseparatist" tag="removenpc" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:soldiercoalition" tag="defenders" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Defensebot_outpost" submarinetype="Outpost" team="FriendlyNPC" tag="defenders" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="jobidentifier:sepsoldier" tag="attackers" ContinueIfNoTargetsFound="true" />
|
||||
<!-- making sure these are in team 2 -->
|
||||
<NPCChangeTeamAction npctag="defenders" teamtag="Team2" />
|
||||
<WaitAction time="1" />
|
||||
<StatusEffectAction targettag="removenpc">
|
||||
<StatusEffect type="Always" target="Character" interval="1" stackable="false">
|
||||
<RemoveCharacter />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ReputationAction targettype="Faction" identifier="coalition" increase="-200" />
|
||||
<ConversationAction text="eventtext.takeover.attack" dialogtype="Small" targettag="player" eventsprite="separatists" ContinueAutomatically="true" />
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="coalitionsoldier" CompareToTarget="coalitionsoldier" MinPercentageRelativeToTarget="75">
|
||||
<!-- complete mission if >75% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<MissionStateAction missionidentifier="septakeover_coalitionoutpost" operation="Set" value="1" />
|
||||
<ModifyLocationAction faction="Separatists" />
|
||||
<SetDataAction identifier="septakeoveractive" operation="Set" value="0" />
|
||||
<SetDataAction identifier="completedseparatiststakeover" operation="Add" value="1" />
|
||||
<NPCChangeTeamAction npctag="defenders" teamtag="FriendlyNPC" />
|
||||
<AfflictionAction targettag="defenders" affliction="stun" strength="10" />
|
||||
<NPCChangeTeamAction npctag="attackers" teamtag="FriendlyNPC" removefromcrew="true" />
|
||||
<CombatAction combatmode="Arrest" npctag="attackers" enemytag="defenders" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
<ConversationAction text="eventtext.takeover.success" dialogtype="Mission" targettag="player" eventsprite="firefight" />
|
||||
<ConversationAction text="eventtext.takeover.complete" dialogtype="Mission" targettag="player" eventsprite="separatists" endconversation="true" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</ScriptedEvent>
|
||||
<!-- Timer to reset XXXtakeoveractive after several jumps, allows you to get another takeover if you missed the first one or it is very far back in the campaign. Does both coalition and separatists in one event because realistically you will get takeovers from only 1 faction so there shouldnt be conflict -->
|
||||
<ScriptedEvent identifier="resetactivetakeovercounter">
|
||||
<CheckDataAction identifier="cotakeoveractive" value="gte 1">
|
||||
<Success>
|
||||
<SetDataAction identifier="cotakeoveractive" operation="Add" value="1" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<CheckDataAction identifier="cotakeoveractive" value="gte 10">
|
||||
<Success>
|
||||
<SetDataAction identifier="cotakeoveractive" operation="Set" value="0" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<CheckDataAction identifier="septakeoveractive" value="gte 1">
|
||||
<Success>
|
||||
<SetDataAction identifier="septakeoveractive" operation="Add" value="1" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<CheckDataAction identifier="septakeoveractive" value="gte 10">
|
||||
<Success>
|
||||
<SetDataAction identifier="septakeoveractive" operation="Set" value="0" />
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<TriggerEventAction identifier="resetactivetakeovercounter" nextround="true" />
|
||||
</ScriptedEvent>
|
||||
<!-- Remove Temporary Crewmembers -->
|
||||
<ScriptedEvent identifier="removetempcrew">
|
||||
<TagAction criteria="jobidentifier:cosoldier" tag="tempcrew" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="jobidentifier:sepsoldier" tag="tempcrew" ContinueIfNoTargetsFound="true" />
|
||||
<NPCChangeTeamAction npctag="tempcrew" teamtag="FriendlyNPC" removefromcrew="true" />
|
||||
</ScriptedEvent>
|
||||
<!-- spawn more soldiers if very low reputation, so there's more to fight in stations -->
|
||||
<ScriptedEvent identifier="spawnsoldierslowrep_co">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="lte -60">
|
||||
<Success>
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="soldiercoalition" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="soldiercoalition" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="soldiercoalition" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="spawnsoldierslowrep_sep">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="lte -60">
|
||||
<Success>
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="soldierseparatists" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="soldierseparatists" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="soldierseparatists" teamid="FriendlyNPC" SpawnLocation="Outpost" TargetTag="extrasoldier" />
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<!-- ////////// MANUALLY TRIGGERED TAKEOVERS \\\\\\\\\\ -->
|
||||
<ScriptedEvent identifier="startmanualtakeovercoalition">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="coalitionstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="separatiststation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerpirate" tag="banditstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerhusk" tag="churchstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:reactor" tag="targetreactor" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<!-- check if a takeover is active | succeed and allow starting a takeover if no takeover is currently active at this location -->
|
||||
<CheckDataAction identifier="takeoverinprogress" condition="false">
|
||||
<Failure></Failure>
|
||||
<Success>
|
||||
<!-- If the value for takeoverinprogress is true, check for an outpost reactor. If none is found and thus meaning this is not a station level, reset the takeoverinprogress data to false -->
|
||||
<!-- This just acts as a way to reset the takeoverinprogress value, should it not get reset after completing a takeover due to the game bugging out -->
|
||||
<CountTargetsAction minamount="1" targettag="targetreactor">
|
||||
<Failure>
|
||||
<Label name="nostation" />
|
||||
<ConversationAction text="eventtext.manualtakeover.call.nostation" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
<Goto name="end" />
|
||||
</Failure>
|
||||
<Success></Success>
|
||||
</CountTargetsAction>
|
||||
<!-- Set the takeoverinprogress data to true to prevent being able to call this event again by another player while it's currently active -->
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<!-- Check if faction outpost manager is present, if not checking for the next target. If none found, goto no station -->
|
||||
<CountTargetsAction minamount="1" targettag="coalitionstation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="separatiststation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="banditstation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="churchstation">
|
||||
<Failure>
|
||||
<Goto name="nostation" />
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.church" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.bandits" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.coalition" dialogtype="Small" targettag="statuseffecttarget" eventsprite="coalition">
|
||||
<Option text="eventtext.manualtakeover.call.playerresponse">
|
||||
<ConversationAction text="eventtext.manualtakeover.call.permissiongranted" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<TriggerEventAction identifier="manualcooutposttakeoverevent" />
|
||||
</Option>
|
||||
<Option text="eventtext.option.nevermind" endconversation="true">
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.friendlystation" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" endconversation="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="startmanualtakeoverseparatists">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagercoalition" tag="coalitionstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerseparatists" tag="separatiststation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerpirate" tag="banditstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="humanprefabidentifier:outpostmanagerhusk" tag="churchstation" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:reactor" tag="targetreactor" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<!-- check if a takeover is active | succeed and allow starting a takeover if no takeover is currently active at this location -->
|
||||
<CheckDataAction identifier="takeoverinprogress" condition="false">
|
||||
<Failure></Failure>
|
||||
<Success>
|
||||
<!-- If the value for takeoverinprogress is true, check for an outpost reactor. If none is found and thus meaning this is not a station level, reset the takeoverinprogress data to false -->
|
||||
<!-- This just acts as a way to reset the takeoverinprogress value, should it not get reset after completing a takeover due to the game bugging out -->
|
||||
<CountTargetsAction minamount="1" targettag="targetreactor">
|
||||
<Failure>
|
||||
<Label name="nostation" />
|
||||
<ConversationAction text="eventtext.manualtakeover.call.nostation" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
<Goto name="end" />
|
||||
</Failure>
|
||||
<Success></Success>
|
||||
</CountTargetsAction>
|
||||
<!-- Set the takeoverinprogress data to true to prevent being able to call this event again by another player while it's currently active -->
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<!-- Check if faction outpost manager is present, if not checking for the next target. If none found, goto no station -->
|
||||
<CountTargetsAction minamount="1" targettag="separatiststation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="coalitionstation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="banditstation">
|
||||
<Failure>
|
||||
<CountTargetsAction minamount="1" targettag="churchstation">
|
||||
<Failure>
|
||||
<Goto name="nostation" />
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.church" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.bandits" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.separatists" dialogtype="Small" targettag="statuseffecttarget" eventsprite="separatists">
|
||||
<Option text="eventtext.manualtakeover.call.playerresponse">
|
||||
<ConversationAction text="eventtext.manualtakeover.call.permissiongranted" targettag="statuseffecttarget" eventsprite="radiocall" ContinueAutomatically="true" />
|
||||
<TriggerEventAction identifier="manualsepoutposttakeoverevent" />
|
||||
</Option>
|
||||
<Option text="eventtext.option.nevermind" endconversation="true">
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Failure>
|
||||
<Success>
|
||||
<ConversationAction text="eventtext.manualtakeover.call.friendlystation" dialogtype="Small" targettag="statuseffecttarget" eventsprite="radiocall" endconversation="true" />
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</Success>
|
||||
</CountTargetsAction>
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<!-- Reset the takeoverinprogress data to false to allow triggering a manual takeover or destroying an outpost again -->
|
||||
<ScriptedEvent identifier="resettakeoverdata">
|
||||
<SetDataAction identifier="takeoverinprogress" value="false" />
|
||||
</ScriptedEvent>
|
||||
<!-- TODO: remove specific NPCs? wait for devs fixing interacting with manager/services in hostile outpost -->
|
||||
<!-- Coalition Attackers-->
|
||||
<ScriptedEvent identifier="manualcooutposttakeoverevent">
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<TriggerEventAction identifier="resettakeoverdata" nextround="true" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="sepnpc" />
|
||||
<TagAction criteria="jobidentifier:cosoldier" tag="attackers" ContinueIfNoTargetsFound="true" />
|
||||
<ReputationAction targettype="Faction" identifier="separatists" increase="-200" />
|
||||
<NPCChangeTeamAction npctag="sepnpc" teamtag="Team2" />
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="sepnpc" CompareToTarget="sepnpc" MinPercentageRelativeToTarget="75">
|
||||
<!-- complete mission if >75% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<ModifyLocationAction faction="Coalition" />
|
||||
<!-- Disabled to not allow getting a new official takeover mission when completing a manually triggered one -->
|
||||
<!-- <SetDataAction identifier="cotakeoveractive" operation="Set" value="0" /> -->
|
||||
<NPCChangeTeamAction npctag="sepnpc" teamtag="FriendlyNPC" />
|
||||
<!-- Disabled to allow keeping the crew for the outpost they're actually supposed to take over -->
|
||||
<!-- <NPCChangeTeamAction npctag="attackers" teamtag="FriendlyNPC" removefromcrew="true" /> -->
|
||||
<CombatAction combatmode="Arrest" npctag="attackers" enemytag="sepnpc" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
<ConversationAction text="eventtext.takeover.success" dialogtype="Mission" targettag="player" eventsprite="firefight" />
|
||||
<CheckReputationAction targettype="faction" identifier="coalition" condition="lt -70">
|
||||
<Success>
|
||||
<ReputationAction targettype="Faction" identifier="coalition" increase="25" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ReputationAction targettype="Faction" identifier="coalition" increase="7" />
|
||||
</Failure>
|
||||
</CheckReputationAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</ScriptedEvent>
|
||||
<!-- Separatist Attackers-->
|
||||
<ScriptedEvent identifier="manualsepoutposttakeoverevent">
|
||||
<SetDataAction identifier="takeoverinprogress" value="true" />
|
||||
<TriggerEventAction identifier="resettakeoverdata" nextround="true" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="conpc" />
|
||||
<TagAction criteria="jobidentifier:sepsoldier" tag="attackers" ContinueIfNoTargetsFound="true" />
|
||||
<ReputationAction targettype="Faction" identifier="coalition" increase="-200" />
|
||||
<NPCChangeTeamAction npctag="conpc" teamtag="Team2" />
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="conpc" CompareToTarget="conpc" MinPercentageRelativeToTarget="75">
|
||||
<!-- complete mission if >75% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<ModifyLocationAction faction="Separatists" />
|
||||
<!-- Disabled to not allow getting a new official takeover mission when completing a manually triggered one -->
|
||||
<!-- <SetDataAction identifier="septakeoveractive" operation="Set" value="0" /> -->
|
||||
<NPCChangeTeamAction npctag="conpc" teamtag="FriendlyNPC" />
|
||||
<!-- Disabled to allow keeping the crew for the outpost they're actually supposed to take over -->
|
||||
<!-- <NPCChangeTeamAction npctag="attackers" teamtag="FriendlyNPC" removefromcrew="true" /> -->
|
||||
<CombatAction combatmode="Arrest" npctag="attackers" enemytag="conpc" isinstigator="true" guardreaction="none" witnessreaction="none" />
|
||||
<ConversationAction text="eventtext.takeover.success" dialogtype="Mission" targettag="player" eventsprite="firefight" />
|
||||
<CheckReputationAction targettype="faction" identifier="separatists" condition="lte -70">
|
||||
<Success>
|
||||
<ReputationAction targettype="Faction" identifier="separatists" increase="25" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ReputationAction targettype="Faction" identifier="separatists" increase="7" />
|
||||
</Failure>
|
||||
</CheckReputationAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</ScriptedEvent>
|
||||
<!-- ////////// OUTPOST DESTRUCTION \\\\\\\\\\ -->
|
||||
<!-- Turns a station into an abandoned station -->
|
||||
<ScriptedEvent identifier="outpostdestruction">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:reactor" tag="targetreactor" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="targetnpc" />
|
||||
<WaitAction time="1" />
|
||||
<StatusEffectAction targettag="targetreactor">
|
||||
<StatusEffect target="This" invulnerabletodamage="false" indestructible="false" setvalue="true" />
|
||||
</StatusEffectAction>
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="targetreactor" CompareToTarget="targetreactor" MinPercentageRelativeToTarget="1">
|
||||
<!-- succeed if at least 1 reactor is destroyed -->
|
||||
<Conditional condition="eq 0" />
|
||||
<Success>
|
||||
<CountTargetsAction targettag="targetnpc" CompareToTarget="targetnpc" MinPercentageRelativeToTarget="90">
|
||||
<!-- succeed if >90% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<!-- check if a takeover is active | succeed and allow destruction of the station if no takeover is active at this location -->
|
||||
<CheckDataAction identifier="takeoverinprogress" condition="false">
|
||||
<Success>
|
||||
<ReputationAction targettype="Location" increase="-75" />
|
||||
<ModifyLocationAction type="destroyedstation" />
|
||||
<ConversationAction text="eventtext.outpostdestruction.npcsflee" dialogtype="Mission" targettag="player" eventsprite="destruction" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="endevent" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
<Label name="endevent" />
|
||||
</ScriptedEvent>
|
||||
<!-- Turns a station into an empty location -->
|
||||
<ScriptedEvent identifier="outpostdestructionnostation">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:reactor" tag="targetreactor" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="hull" tag="targethull" submarinetype="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="speciesname:Human" submarinetype="Outpost" team="FriendlyNPC" tag="targetnpc" />
|
||||
<WaitAction time="1" />
|
||||
<StatusEffectAction targettag="targetreactor">
|
||||
<StatusEffect target="This" invulnerabletodamage="false" />
|
||||
</StatusEffectAction>
|
||||
<Label name="checkforcomplete" />
|
||||
<CountTargetsAction targettag="targethull" CompareToTarget="targethull" MinPercentageRelativeToTarget="50">
|
||||
<!-- succeed if at 50% of the hulls are at least 50% flooded -->
|
||||
<Conditional waterpercentage="gte 50" />
|
||||
<Success>
|
||||
<CountTargetsAction targettag="targetnpc" CompareToTarget="targetnpc" MinPercentageRelativeToTarget="90">
|
||||
<!-- succeed if >90% enemies dead -->
|
||||
<Conditional isdead="True" />
|
||||
<Success>
|
||||
<!-- check if a takeover is active | succeed and allow destruction of the station if no takeover is active at this location -->
|
||||
<CheckDataAction identifier="takeoverinprogress" condition="false">
|
||||
<Success>
|
||||
<ModifyLocationAction type="none" />
|
||||
<ConversationAction text="eventtext.outpostdestruction.placeruined" dialogtype="Mission" targettag="player" eventsprite="destruction" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="endevent" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<Waitaction time="1" />
|
||||
<GoTo name="checkforcomplete" />
|
||||
</Failure>
|
||||
</CountTargetsAction>
|
||||
<Label name="endevent" />
|
||||
</ScriptedEvent>
|
||||
<!-- use this to break radio for compatibility -->
|
||||
<ScriptedEvent identifier="takeoverradiobroke">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<ConversationAction text="eventtext.manualtakeover.call.radiobroke" dialogtype="Small" targettag="statuseffecttarget" eventsprite="mines" endconversation="true" />
|
||||
</ScriptedEvent>
|
||||
</EventPrefabs>
|
||||
</Randomevents>
|
||||
+324
@@ -0,0 +1,324 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Randomevents>
|
||||
<!-- PUT ALL THE EVENTS FOR TESTING HERE -->
|
||||
<EventPrefabs>
|
||||
<!-- CHEAT COMMANDS -->
|
||||
<!-- CHEAT COMMANDS -->
|
||||
<!-- CHEAT COMMANDS -->
|
||||
<!-- CHEAT COMMANDS -->
|
||||
<!-- GENERIC TEST EVENT, USED TO COPY PASTE THINGS FOR QUICK TESTING -->
|
||||
<ScriptedEvent identifier="genericTESTevent" commonness="0">
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="beaconmonitor" submarinetype="BeaconStation" />
|
||||
<Label name="loop" />
|
||||
<StatusEffectAction targettag="beaconmonitor">
|
||||
<StatusEffect target="this" IsActive="True" currentmode="Active" voltage="1" targetitemcomponent="Sonar" setvalue="true" spritecolor="0,255,0,255" duration="999999" />
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<!-- ONLY EXISTS FOR EASY UNLOCKING OF PATH IF PEOPLE BROKE THEIR MAP AND THERE'S NO BLOCKADE -->
|
||||
<ScriptedEvent identifier="blockade_unstuck" commonness="0">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<UnlockPathAction />
|
||||
<ConversationAction text="This command only works in an outpost bordering the new biome. If you have no outpost, open console and type togglecampaignteleport to teleport to the other biome" targettag="player" dialogtype="Regular" endconversation="true" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="getnewtakeovermission" commonness="0">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<ConversationAction text="Only use this if your takeover mission is unreachable. This will give you another mission (in another location hopefully), but will not remove the current one. You have to be ahead of the old mission for this to work." targettag="player" dialogtype="Regular" endconversation="true" />
|
||||
<CheckReputationAction TargetType="Faction" identifier="coalition" condition="lte -30">
|
||||
<Success>
|
||||
<MissionAction missionidentifier="septakeover_coalitionoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="coalition" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
<CheckReputationAction TargetType="Faction" identifier="separatists" condition="lte -30">
|
||||
<Success>
|
||||
<MissionAction missionidentifier="cotakeover_separatistoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="separatists" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="takeovertestcoal">
|
||||
<MissionAction missionidentifier="cotakeover_separatistoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="separatists" minlocationdistance="1" CreateLocationIfNotFound="true" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="tempsoldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<TagAction criteria="hullname:airlock" tag="subairlock" submarinetype="Player" ContinueIfNoTargetsFound="true" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="true" />
|
||||
<WaitAction time="2" />
|
||||
<NPCFollowAction npctag="tempcrew" targettag="subairlock" follow="false" />
|
||||
<NPCChangeTeamAction npctag="tempcrew" teamtag="Team1" addtocrew="true" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="spawnescortboy">
|
||||
<SpawnAction NPCSetIdentifier="customnpcs" NPCIdentifier="escortboy" TargetTag="tempcrew" SpawnLocation="MainSub" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="forcesayTEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<Label name="keeptalking" />
|
||||
<StatusEffectAction targettag="player">
|
||||
<StatusEffect target="this">
|
||||
<Forcesay message="eventtext.forcesayTEST.testing" sayinradio="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<WaitAction time="1" />
|
||||
<Goto name="keeptalking" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="blindexplosionTEST">
|
||||
<TagAction criteria="itemtag:board" tag="board" />
|
||||
<StatusEffectAction targettag="board">
|
||||
<StatusEffect target="this">
|
||||
<Explosion range="1500.0" force="0" debris="false" flashrange="9999" flashColor="0,0,0,255" flashduration="20.0" screencolor="0,0,0,255" screencolorrange="9999" screencolorduration="20.0" showeffects="false"></Explosion>
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="MOODEXPLOSIONTEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<StatusEffectAction targettag="player">
|
||||
<StatusEffect target="NearbyCharacters" range="1000" oneshot="true" disabledeltatime="true">
|
||||
<ReduceAffliction identifier="mood" strength="25" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<!-- change the missionidentifier and value to test mission "states" -->
|
||||
<ScriptedEvent identifier="missionstateeventTEST">
|
||||
<MissionStateAction missionidentifier="escortorangeboys" operation="Set" value="0" />
|
||||
</ScriptedEvent>
|
||||
<!-- test for militaryforces, unused -->
|
||||
<!-- <PirateMission
|
||||
type="Pirate"
|
||||
identifier="militarypatrol2"
|
||||
tags="militarypatrol"
|
||||
showinmenus="false"
|
||||
showstartmessage="false"
|
||||
issideobjective="true"
|
||||
achievementidentifier="combatmissionseparatistsvscoalition"
|
||||
difficulty="4"
|
||||
commonness="0"
|
||||
reward="0"
|
||||
addedmissiondifficultyperplayer="8">
|
||||
<Reputation identifier="separatists" amount="10" amountforopposingfaction="-10" />
|
||||
<SubmarineTypes>
|
||||
<Submarine path="Content/Map/EnemySubmarines/DugongPirate.sub" faction="coalition" preferreddifficulty="10" alternatereward="3200"/>
|
||||
</SubmarineTypes>
|
||||
<Characters>
|
||||
<Character typeidentifier="coalitioncaptain" minamount="1" maxamount="1"/>
|
||||
</Characters>
|
||||
<CharacterTypes>
|
||||
<CharacterType typeidentifier="coalitioncaptain">
|
||||
<Character identifier="coalitioncaptain" from="combatmissioncoalitionnpcs" preferreddifficulty="50" iscommander="true" />
|
||||
</CharacterType>
|
||||
</CharacterTypes>
|
||||
<Icon texture="Content/UI/MissionIcons.png" sourcerect="0,768,256,256" color="243,146,55"/>
|
||||
<message header="missionheader0.pirate1" text="missionmessage0.pirate1"/>
|
||||
<message header="missionheader1.pirate1" text="missionmessage1.pirate1"/>
|
||||
<LocationType from="AnyOutpost" to="MilitaryForces" />
|
||||
</PirateMission> -->
|
||||
<ScriptedEvent identifier="testcheckselected">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemtag:hiddenalienpylon" tag="hiddenalienpylon" />
|
||||
<TutorialHighlightAction targettag="hiddenalienpylon" />
|
||||
<Label name="beforecheck" />
|
||||
<WaitAction time="1" />
|
||||
<CheckSelectedAction targettag="hiddenalienpylon" charactertag="player">
|
||||
<Success>
|
||||
<ConversationAction targettag="player" text="tutorial.basics.endmessage.1" eventsprite="captain" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="beforecheck" />
|
||||
</Failure>
|
||||
</CheckSelectedAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="TAKEOVERRADIODATATEST">
|
||||
<SetDataAction identifier="completedcoalitiontakeover" operation="Add" value="1" />
|
||||
<SetDataAction identifier="completedseparatiststakeover" operation="Add" value="1" />
|
||||
</ScriptedEvent>
|
||||
<!-- Change mission ID. Runs a spectrum of mission actions to find out which one does what -->
|
||||
<ScriptedEvent identifier="MISSIONSTATEACTIONTEST1">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<MissionStateAction missionidentifier="beaconfloodedrescue" operation="Set" value="1" />
|
||||
<ConversationAction targettag="player" eventsprite="GuyWithAlcohol" text="1" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="MISSIONSTATEACTIONTEST2">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<MissionStateAction missionidentifier="beaconfloodedrescue" operation="Set" value="2" />
|
||||
<ConversationAction targettag="player" eventsprite="GuyWithAlcohol" text="2" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="MISSIONSTATEACTIONTEST3">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<MissionStateAction missionidentifier="beaconfloodedrescue" operation="Set" value="3" />
|
||||
<ConversationAction targettag="player" eventsprite="GuyWithAlcohol" text="3" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="MISSIONSTATEACTIONTEST4">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<MissionStateAction missionidentifier="beaconfloodedrescue" operation="Set" value="4" />
|
||||
<ConversationAction targettag="player" eventsprite="GuyWithAlcohol" text="4" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="MISSIONSTATEACTIONTEST5">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<MissionStateAction missionidentifier="beaconfloodedrescue" operation="Set" value="5" />
|
||||
<ConversationAction targettag="player" eventsprite="GuyWithAlcohol" text="5" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="soldierspawnTEST">
|
||||
<SpawnAction NPCSetIdentifier="de_coalitioncombat" NPCIdentifier="soldiercoalition" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="Team1" addtocrew="true" />
|
||||
<SpawnAction NPCSetIdentifier="de_separatistscombat" NPCIdentifier="soldierseparatists" LootingIsStealing="True" TargetTag="tempcrew" SpawnLocation="Outpost" TeamID="Team1" addtocrew="true" />
|
||||
<NPCChangeTeamAction npctag="tempcrew" teamid="Team1" addtocrew="true" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="missionevent_industrialincidentTEST" requiredDestinationTypes="factory,shipyard">
|
||||
<MissionAction missionidentifier="industrialincident" locationtype="factory,shipyard" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="missionevent_retrievesecretdocumentsTEST" requiredDestinationTypes="colony,city,base,military">
|
||||
<MissionAction missionidentifier="retrievesecretdocuments" locationtype="colony,city,base,military" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="pinkindustrialsTEST" commonness="50">
|
||||
<TagAction criteria="itemtag:junctionbox" tag="pinkthis" SubmarineType="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:fabricator" tag="pinkthis" SubmarineType="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:deconstructor" tag="pinkthis" SubmarineType="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:reactor" tag="pinkthis" SubmarineType="Outpost" ContinueIfNoTargetsFound="true" />
|
||||
<StatusEffectAction targettag="pinkthis">
|
||||
<StatusEffect target="This" spritecolor="255,0,255,255" setvalue="true" />
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="missionevent_hostagesituationTEST" requiredDestinationTypes="settlement,colony,research,hospital,hydroponics,factory,shipyard">
|
||||
<MissionAction missionidentifier="hostagesituation" locationtype="settlement,colony,research,hospital,hydroponics,factory,shipyard" requiredfaction="Coalition" minlocationdistance="1" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="eventiconsTEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<ConversationAction targettag="player" text="Testing" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="MysteryWoman" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="MysteryMan" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="MysteryMan2" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="ScrapMetal" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="piratehaven" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="bandittalk" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="radiocall" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="sonar" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="subblueprint" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="hitthelever" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="bloodycuffs" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="firefight" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="traitoress" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="hostage" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="huskoutbreak" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="brokenmachinery" endconversation="true" />
|
||||
<ConversationAction targettag="player" text="Testing" eventsprite="malfunction" endconversation="true" />
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="traitorlikeeventTEST">
|
||||
<Icon texture="Content/UI/MissionIcons.png" sourcerect="256,0,256,256" color="200,150,0,255" />
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<ConversationAction targettag="player" text="Testing" dialogtype="Regular" endconversation="true" />
|
||||
<EventLogAction targettag="player" id="initialinfo" text="EventText.bakingstation.objective1" />
|
||||
<EventObjectiveAction targettag="player" type="add" id="traitorobjective.bakingstation.meltdown" />
|
||||
<OnRoundEndAction>
|
||||
<GiveExpAction targettag="player" amount="5000" />
|
||||
<EventLogAction targettag="player" id="success" text="EventText.bakingstation.objective2" />
|
||||
<EventObjectiveAction targettag="player" type="remove" id="traitorobjective.bakingstation.meltdown" />
|
||||
</OnRoundEndAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="operateTEST">
|
||||
<SpawnAction NPCSetIdentifier="customnpcs" NPCIdentifier="scrapdealer" targettag="controllernpc" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" targetmoduletags="crewmodule" />
|
||||
<WaitAction time="1" />
|
||||
<SpawnAction itemidentifier="rum" SpawnPointTag="controllernpc" targettag="controlleditem" offset="100" />
|
||||
<WaitAction time="1" />
|
||||
<NPCOperateItemAction npctag="controllernpc" targettag="controlleditem" ItemComponentName="Holdable" operate="true" OrderOption="" RequireEquip="true" />
|
||||
<WaitAction time="1" />
|
||||
<!-- <NPCOperateItemAction npctag="controllernpc" targettag="controlleditem" ItemComponentName="Holdable" operate="false" OrderOption="" RequireEquip="true"/> -->
|
||||
<!-- <NPCWaitAction npctag="controllernpc" wait="true" priority="50"/> -->
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="jobboardTEST" commonness="100">
|
||||
<TagAction criteria="itemidentifier:de-jobboard" tag="potentialjobboard" />
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<StatusEffectAction targettag="potentialjobboard">
|
||||
<StatusEffect target="This" noninteractable="false" setvalue="true" />
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="potentialjobboard" target2tag="player" waitforinteraction="true" radius="500" />
|
||||
<StatusEffectAction targettag="potentialjobboard">
|
||||
<StatusEffect target="This" noninteractable="true" condition="-100" setvalue="true">
|
||||
<Sound file="Content/Items/Medical/ITEM_proteinBarOpen.ogg" range="500" volume="1.5" frequencymultiplier="0.7" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="huskinfectionTEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<AfflictionAction affliction="husktransformimmunity" strength="100" targettag="player" />
|
||||
<AfflictionAction affliction="huskinfection" strength="90" targettag="player" />
|
||||
</ScriptedEvent>
|
||||
<!-- check if player sub has a docking hatch with "bottom" force direction, enables carrying transport pods to outpost? -->
|
||||
<ScriptedEvent identifier="checkbottomportTEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemidentifier:dockinghatch" tag="bottomport" submarinetype="Player" />
|
||||
<CheckConditionalAction targettag="bottomport" targetitemcomponent="DockingPort" ForceDockingDirection="Bottom">
|
||||
<Success>
|
||||
<ConversationAction targettag="player" text="bottom port detected" eventsprite="MysteryWoman" endconversation="true" />
|
||||
</Success>
|
||||
</CheckConditionalAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="mudraptorracing_TEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemtag:petfoodgun" tag="petfoodgun" />
|
||||
<TagAction criteria="itemtag:raptorracelever" tag="raptorracelever" />
|
||||
<TagAction criteria="itemtag:confettilauncher" tag="confettilauncher" />
|
||||
<StatusEffectAction targettag="raptorracelever">
|
||||
<StatusEffect target="this" duration="10">
|
||||
<Sound file="Content/Sounds/ClubMusic_transitionScratch.ogg" range="1500" volume="3" frequencymultiplier="0.5" loop="true" dontmuffle="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<StatusEffectAction targettag="confettilauncher">
|
||||
<StatusEffect target="this" duration="10">
|
||||
<ParticleEmitter particle="whitespark" particlespersecond="10" velocitymin="250" velocitymax="400" anglemin="70" anglemax="110" scalemin="1" scalemax="2" distancemin="5" distancemax="250" colormultiplier="30,30,255,255" lifetimemultiplier="2" HighQualityCollisionDetection="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<StatusEffectAction targettag="confettilauncher">
|
||||
<StatusEffect target="this" duration="10">
|
||||
<ParticleEmitter particle="steamspray" particlespersecond="5" velocitymin="50" velocitymax="100" anglemin="260" anglemax="280" scalemin="0.8" scalemax="1.2" distancemin="0" distancemax="0" colormultiplier="30,30,255,255" lifetimemultiplier="2" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<WaitAction time="10" />
|
||||
<!-- <SpawnAction speciesname="Mudraptorred" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
||||
<SpawnAction speciesname="Mudraptorgreen" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
||||
<SpawnAction speciesname="Mudraptorblue" targettag="raceraptor" spawnlocation="Outpost" spawnpointtag="raceraptors" offset="50" />
|
||||
<WaitAction time="3" />
|
||||
<StatusEffectAction targettag="petfoodgun">
|
||||
<StatusEffect target="This" offset="30,0">
|
||||
<Sound file="Content/Items/Weapons/Shotgunshot2.ogg" range="1500" volume="3" frequencymultiplier="0.5" dontmuffle="true"/>
|
||||
<ParticleEmitter particle="weldspark" particleamount="20" anglemin="-20" anglemax="20" velocitymin="250" velocitymax="500" distancemin="0" distancemax="30" scalemin="1.5" scalemax="1.9" colormultiplier="255,200,225,180" lifetimemultiplier="2" />
|
||||
<SpawnItem identifier="raptorrubberduck" spawnposition="This" impulse="1.1" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<TagAction criteria="eventtag:raceraptor" tag="slowerraptor" submarinetype="Outpost" ChooseRandomExcludingTag="slowerraptor" chooserandom="true"/>
|
||||
<TagAction criteria="eventtag:raceraptor" tag="slowerraptor" submarinetype="Outpost" ChooseRandomExcludingTag="slowerraptor" chooserandom="true"/>
|
||||
<StatusEffectAction targettag="slowerraptor">
|
||||
<StatusEffect target="This" speedmultiplier="0.7" duration="4" setvalue="true">
|
||||
<Affliction identifier="psychosis" strength="100" />
|
||||
<Affliction identifier="burn" strength="20" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction> -->
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="mudraptorracing_DUCK_TEST">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemtag:petfoodgun" tag="petfoodgun" />
|
||||
<WaitAction time="1" />
|
||||
<StatusEffectAction targettag="petfoodgun">
|
||||
<StatusEffect target="This" offset="30,0">
|
||||
<Sound file="Content/Items/Weapons/Shotgunshot2.ogg" range="1500" volume="3" frequencymultiplier="0.5" dontmuffle="true" />
|
||||
<ParticleEmitter particle="weldspark" particleamount="20" anglemin="-20" anglemax="20" velocitymin="250" velocitymax="500" distancemin="0" distancemax="30" scalemin="1.5" scalemax="1.9" colormultiplier="255,200,225,180" lifetimemultiplier="2" />
|
||||
<SpawnItem identifier="raptorrubberduck" spawnposition="This" impulse="1.1" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="npcspawnerTEST">
|
||||
<SpawnAction NPCSetIdentifier="customnpcs" NPCIdentifier="suitcaseman" LootingIsStealing="True" TargetTag="suitcaseman" SpawnLocation="Outpost" TeamID="FriendlyNPC" AllowDuplicates="True" />
|
||||
<WaitAction time="1" />
|
||||
</ScriptedEvent>
|
||||
<!-- <ScriptedEvent identifier="laircrawlersoutsideTEST">
|
||||
<SpawnAction speciesname="crawler" amount="3" SpawnLocation="MainPath" offset="500" />
|
||||
</ScriptedEvent> -->
|
||||
<ScriptedEvent identifier="TAKEOVERdudesTEST">
|
||||
<MissionAction missionidentifier="cotakeover_separatistoutpost" locationtype="city,research,military,colony,base,blockade,hospital,factory,shipyard" requiredfaction="separatists" minlocationdistance="2" CreateLocationIfNotFound="true" />
|
||||
<WaitAction time="2" />
|
||||
<MissionAction missionidentifier="gettakeoverdudes" locationtype="outpost,settlement,colony,city,camp,base,military,blockade,study,research,clinic,hospital,hydroponics,factory,shipyard" requiredfaction="coalition" minlocationdistance="1" CreateLocationIfNotFound="false" />
|
||||
</ScriptedEvent>
|
||||
</EventPrefabs>
|
||||
</Randomevents>
|
||||
+611
@@ -0,0 +1,611 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Randomevents>
|
||||
<EventPrefabs>
|
||||
<!--commsrelay EVENTS-->
|
||||
<!-- UNUSED.
|
||||
TODO: Rework by adding a custom logbook item that rarely spawns in wrecks, upon reading trigger an unknown monster mission
|
||||
Change tags of randomencounter missions to match logbook description -->
|
||||
<!-- <ScriptedEvent identifier="commsrelay_randomencounter" commonness="100">
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:navterminal" tag="commsrelay" submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" Submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" SubmarineType="BeaconStation" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="commsrelay" target2tag="player" applytotarget2="cre_trig_player" radius="100" waitforinteraction="true" />
|
||||
<ConversationAction text="eventtext.commsrelay.monster" dialogtype="Small" targettag="cre_trig_player" eventsprite="sonar">
|
||||
<Option text="eventtext.option.listen" endconversation="true">
|
||||
<StatusEffectAction targettag="cre_trig_player">
|
||||
<StatusEffect target="NearbyItems" tags="commsrelay" duration="10.5">
|
||||
<Sound file="%ModDir:2532991202%/Sounds/Events/MonsterBroadcast.ogg" volume="1" loop="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction text="eventtext.commsrelay.monster.answer" dialogtype="Small" targettag="cre_trig_player" />
|
||||
<MissionAction missiontag="randomencounter" locationtype="None" minlocationdistance="1" />
|
||||
<ClearTagAction tag="cre_trig_player" />
|
||||
</Option>
|
||||
<Option text="eventtext.option.ignore" endconversation="true">
|
||||
<ClearTagAction tag="cre_trig_player" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent> -->
|
||||
<!--TRIGGERED AT A WRECK TO ALERT YOU
|
||||
displays the location of the wreck on sonar -->
|
||||
<ScriptedEvent identifier="commsrelay_wreck">
|
||||
<!-- <TagAction criteria="itemtag:surveymonitor" tag="surveymonitor" submarinetype="outpost" ContinueIfNoTargetsFound="false" /> -->
|
||||
<TagAction criteria="hull" tag="wreck" submarinetype="wreck" ContinueIfNoTargetsFound="false" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<WaitAction time="30" />
|
||||
<TriggerAction target1tag="wreck" target2tag="player" radius="500000" waitforinteraction="false" />
|
||||
<TagAction criteria="itemtag:navterminal" tag="commsrelay" submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" Submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" SubmarineType="BeaconStation" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="commsrelay" target2tag="player" applytotarget2="crw_trig_player" radius="100" waitforinteraction="true" />
|
||||
<ConversationAction text="eventtext.commsrelay.wreck" dialogtype="Small" targettag="crw_trig_player" eventsprite="sonar">
|
||||
<Option text="eventtext.option.investigate">
|
||||
<StatusEffectAction targettag="crw_trig_player">
|
||||
<StatusEffect target="NearbyItems" tags="commsrelay" duration="10.5">
|
||||
<Sound file="%ModDir:2532991202%/Sounds/Events/SOSBroadcast.ogg" volume="1" loop="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction text="eventtext.commsrelay.wreck.answer" dialogtype="Small" targettag="crw_trig_player" />
|
||||
<SpawnAction itemidentifier="broadcasterwreck" spawnlocation="wreck" />
|
||||
<ClearTagAction tag="crw_trig_player" />
|
||||
<SetDataAction identifier="commsrelay_multiwreck_triggered" operation="Set" value="0" />
|
||||
</Option>
|
||||
<Option text="eventtext.option.ignore">
|
||||
<ConversationAction text="eventtext.general.decline" dialogtype="Small" targettag="crw_trig_player" />
|
||||
<ClearTagAction tag="crw_trig_player" />
|
||||
<SetDataAction identifier="commsrelay_multiwreck_triggered" operation="Set" value="0" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent>
|
||||
<!--TRIGGERED AT A RUIN TO ALERT YOU
|
||||
displays the location of the ruin on sonar -->
|
||||
<ScriptedEvent identifier="commsrelay_ruin" commonness="100">
|
||||
<TagAction criteria="hull" tag="ruin" submarinetype="ruin" ContinueIfNoTargetsFound="false" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<WaitAction time="30" />
|
||||
<TriggerAction target1tag="ruin" target2tag="player" radius="500000" waitforinteraction="false" />
|
||||
<TagAction criteria="itemtag:navterminal" tag="commsrelay" submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" Submarinetype="player" ContinueIfNoTargetsFound="true" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="commsrelay" SubmarineType="BeaconStation" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="commsrelay" target2tag="player" applytotarget2="crr_trig_player" radius="100" waitforinteraction="true" />
|
||||
<ConversationAction text="eventtext.commsrelay.ruin" dialogtype="Small" targettag="crr_trig_player" eventsprite="sonar">
|
||||
<Option text="eventtext.option.investigate">
|
||||
<StatusEffectAction targettag="commsrelay">
|
||||
<StatusEffect target="This" duration="10.5">
|
||||
<Sound file="%ModDir:2532991202%/Sounds/Events/AlienBroadcast.ogg" volume="1" loop="true" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction text="eventtext.commsrelay.ruin.answer" dialogtype="Small" targettag="crr_trig_player" eventsprite="sonar" />
|
||||
<SpawnAction itemidentifier="broadcasterruin" spawnlocation="ruin" />
|
||||
<ClearTagAction tag="crr_trig_player" />
|
||||
</Option>
|
||||
<Option text="eventtext.option.ignore">
|
||||
<ConversationAction text="eventtext.general.decline" dialogtype="Small" targettag="crr_trig_player" eventsprite="sonar" />
|
||||
<ClearTagAction tag="crr_trig_player" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent>
|
||||
<!-- TODO: rework this, including stealingintel. Completely forgot what this does -->
|
||||
<!-- <ScriptedEvent identifier="factionseparatist" commonness="100">
|
||||
<TagAction criteria="itemtag:hidden" tag="deaddrop" ContinueIfNoTargetsFound="true" />
|
||||
<Label name="deaddropreturn" />
|
||||
<TriggerAction target1tag="deaddrop" target2tag="player" applytotarget1="selecteddeaddrop" applytotarget2="fs_trig_player" radius="50" waitforinteraction="true" />
|
||||
<ConversationAction text="eventtext.factionseparatist.hiddenstash" dialogtype="Small" targettag="fs_trig_player" eventsprite="vent">
|
||||
<Option text="eventtext.option.investigate">
|
||||
<ConversationAction text="eventtext.factionseparatist.hiddenstash.take" targettag="fs_trig_player" />
|
||||
<SpawnAction itemidentifier="detonator" targetinventory="fs_trig_player" />
|
||||
<MissionAction missionidentifier="stealingintel" locationtype="City,Colony,Military,Base" requiredfaction="coalition" minlocationdistance="2" />
|
||||
<ClearTagAction tag="fs_trig_player" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent> -->
|
||||
<!-- "Stowaway 2", functional version of the unused vanilla event
|
||||
NPC hides in one of your lockers, can join your crew. Sometimes it's a clown -->
|
||||
<ScriptedEvent identifier="stowaway22" commonness="50">
|
||||
<!-- requires a cargo mission. note: not all cargo missions are tagged "cargo" -->
|
||||
<CheckMissionAction missiontag="cargo" Type="Current">
|
||||
<Success>
|
||||
<WaitAction time="25" />
|
||||
<CheckDataAction identifier="stowaway2_complete" condition="gt 0">
|
||||
<Success>
|
||||
<!--Don't repeat event-->
|
||||
</Success>
|
||||
<Failure>
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemidentifier:steelcabinet" tag="potentialcabinet" submarinetype="player" />
|
||||
<TagAction criteria="itemidentifier:mediumwindowedsteelcabinet" tag="potentialcabinet" submarinetype="player" />
|
||||
<TagAction criteria="itemidentifier:mediumsteelcabinet" tag="potentialcabinet" submarinetype="player" />
|
||||
<!-- use a trigger to tag a single cabinet -->
|
||||
<TriggerAction target1tag="potentialcabinet" target2tag="player" applytotarget1="triggered_cabinet" radius="150" waitforinteraction="false" />
|
||||
<StatusEffectAction targettag="triggered_cabinet">
|
||||
<StatusEffect target="this">
|
||||
<Sound file="Content/Items/Door/Duct2.ogg" range="800" volume="3" frequencymultiplier="0.25" />
|
||||
<ParticleEmitter particle="shockwavesmall" particleamount="3" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<Label name="stowawayreturn" />
|
||||
<TriggerAction target1tag="triggered_cabinet" target2tag="player" applytotarget2="triggerer_player" radius="150" waitforinteraction="true" />
|
||||
<ConversationAction text="EventText.stowaway2.c1" dialogtype="Regular" targettag="triggerer_player" eventsprite="Stowaway2">
|
||||
<Option text="EventText.stowaway2.o1">
|
||||
<CheckReputationAction targettype="faction" identifier="clowns" condition="gte 20">
|
||||
<Success>
|
||||
<SpawnAction npcsetidentifier="customnpcs1" npcidentifier="clownmessenger" targettag="messenger" spawnpointtag="triggerer_player" />
|
||||
<SetDataAction identifier="stowaway2_complete" value="1" />
|
||||
<StatusEffectAction targettag="triggered_cabinet">
|
||||
<StatusEffect target="this">
|
||||
<Sound file="Content/Items/Jobgear/Clown/ITEM_bananaSlip1.ogg" range="800" volume="2" frequencymultiplier="1" />
|
||||
<ParticleEmitter particle="impactfirearm" particleamount="30" velocitymin="50" velocitymax="100" anglemin="45" anglemax="135" scalemin="0.5" scalemax="1" Spread="75" distancemin="-75" distancemax="75" colormultiplier="255,255,255,255" lifetimemultiplier="5" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction text="EventText.stowaway2.o1.c1" dialogtype="Regular" targettag="triggerer_player">
|
||||
<Option text="EventText.stowaway2.o1.o1">
|
||||
<ConversationAction text="EventText.stowaway2.o1.o1.c1" dialogtype="Regular" targettag="triggerer_player" />
|
||||
<TriggerEventAction identifier="stowaway2clownmission" nextround="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Success>
|
||||
<!-- regular stowaway -->
|
||||
<Failure>
|
||||
<ConversationAction text="EventText.stowaway2.o1.c2" dialogtype="Regular" targettag="triggerer_player">
|
||||
<Option text="EventText.stowaway2.o1.o2">
|
||||
<ConversationAction text="EventText.stowaway2.o1.o2.c1" dialogtype="Regular" targettag="triggerer_player">
|
||||
<Option text="EventText.stowaway2.o1.o2.o1">
|
||||
<Label name="whatamIgoingtodo" />
|
||||
<ConversationAction text="EventText.stowaway2.o1.o2.o1.c1" dialogtype="Regular" targettag="triggerer_player">
|
||||
<Option text="EventText.stowaway2.o1.o2.o1.o1">
|
||||
<ConversationAction text="EventText.stowaway2.o1.o2.o1.o1.c1" dialogtype="Regular" targettag="triggerer_player">
|
||||
<Option text="EventText.stowaway2.o1.o2.o1.o1.o2">
|
||||
<SpawnAction npcsetidentifier="customnpcs1" npcidentifier="stowaway" spawnpointtag="triggerer_player" targettag="stowaway" />
|
||||
<SetDataAction identifier="stowaway2_complete" value="2" />
|
||||
<ConversationAction text="EventText.stowaway2.o1.o2.o1.o1.o1.c1" dialogtype="Regular" targettag="triggerer_player" />
|
||||
<EventLogAction targettag="player" id="initialinfo" text="EventDescription.stowaway2.snuckin" />
|
||||
<EventObjectiveAction targettag="player" type="add" id="EventObjective.stowaway2.escort" />
|
||||
</Option>
|
||||
<Option text="EventText.stowaway2.o1.o2.o1.o1.o3">
|
||||
<SpawnAction npcsetidentifier="customnpcs1" npcidentifier="stowaway" spawnpointtag="triggerer_player" targettag="stowaway" />
|
||||
<SetDataAction identifier="stowaway2_complete" value="1" />
|
||||
<ConversationAction text="EventText.stowaway2.o1.o2.o1.o1.o3.c1" dialogtype="Regular" targettag="triggerer_player" />
|
||||
<NPCChangeTeamAction npctag="stowaway" teamid="Team1" addtocrew="true" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="EventText.stowaway2.o1.o2.o2" endconversation="true">
|
||||
<GoTo name="stowawayreturn" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="EventText.stowaway2.o1.o2.o1">
|
||||
<Goto name="whatamIgoingtodo" />
|
||||
</Option>
|
||||
<Option text="EventText.stowaway2.o1.o2.o2" endconversation="true">
|
||||
<GoTo name="stowawayreturn" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckReputationAction>
|
||||
</Option>
|
||||
<Option text="EventText.generic.walkaway" endconversation="true">
|
||||
<GoTo name="stowawayreturn" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</Success>
|
||||
<Failure>
|
||||
<!-- End -->
|
||||
</Failure>
|
||||
</CheckMissionAction>
|
||||
<OnRoundEndAction>
|
||||
<CheckDataAction identifier="stowaway2_complete" condition="eq 2">
|
||||
<Success>
|
||||
<!-- TODO: reenable the state action when barodevs fix https://github.com/FakeFishGames/Barotrauma/discussions/16160 -->
|
||||
<CheckConditionalAction targettag="Stowaway" IsDead="False">
|
||||
<Success>
|
||||
<GiveExpAction targettag="player" amount="200" />
|
||||
<EventLogAction targettag="player" id="success" text="EventDescription.stowaway2.Success" />
|
||||
<EventObjectiveAction targettag="player" type="remove" id="EventObjective.stowaway2.escort" />
|
||||
<ReputationAction targettype="Location" increase="2" />
|
||||
<!-- <SetTraitorEventStateAction state="Completed" /> -->
|
||||
</Success>
|
||||
<Failure>
|
||||
<EventLogAction targettag="player" id="failure" text="EventDescription.stowaway2.Failure" />
|
||||
<EventObjectiveAction targettag="player" type="remove" id="EventObjective.stowaway2.escort" />
|
||||
<!-- <SetTraitorEventStateAction state="Failed" /> -->
|
||||
</Failure>
|
||||
</CheckConditionalAction>
|
||||
</Success>
|
||||
</CheckDataAction>
|
||||
</OnRoundEndAction>
|
||||
</ScriptedEvent>
|
||||
<ScriptedEvent identifier="stowaway2clownmission">
|
||||
<MissionAction missiontag="salvageclown" />
|
||||
</ScriptedEvent>
|
||||
<!-- "Troubled Engine"
|
||||
Engine randomly starts malfunctioning and taking damage until you roll a mechanic skill check -->
|
||||
<ScriptedEvent identifier="troubledengine">
|
||||
<Label name="delay" />
|
||||
<WaitAction time="30" />
|
||||
<RNGAction chance="0.2">
|
||||
<Success>
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="delay" />
|
||||
</Failure>
|
||||
</RNGAction>
|
||||
<Label name="start" />
|
||||
<TagAction criteria="itemtag:engine" tag="activeengine" submarinetype="player" />
|
||||
<TagAction criteria="itemidentifier:statusmonitor" tag="monitor" submarinetype="player" />
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TriggerAction target1tag="monitor" target2tag="player" applytotarget1="activemonitor" radius="2200" waitforinteraction="false" />
|
||||
<!-- drop engine condition, for 60 seconds -->
|
||||
<StatusEffectAction targettag="activeengine">
|
||||
<StatusEffect target="This" condition="-30" disabledeltatime="true">
|
||||
<Sound file="Content/Items/Door/DoorBreak1.ogg" range="500" volume="2" frequencymultiplier="0.5" />
|
||||
</StatusEffect>
|
||||
<StatusEffect target="This" condition="-2" duration="60" stackable="false">
|
||||
<ParticleEmitter particle="weldspark" particlespersecond="10" velocitymin="100" velocitymax="300" anglemin="-90" anglemax="90" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<!-- monitor effects -->
|
||||
<StatusEffectAction targettag="activemonitor">
|
||||
<StatusEffect target="this" duration="20" noninteractable="false">
|
||||
<Sound file="Content/Items/WarningBeepSlow.ogg" range="500" volume="0.5" loop="true" />
|
||||
<ParticleEmitter particle="impactfirearm" particlespersecond="1" velocitymin="0" velocitymax="0" anglemin="0" anglemax="0" scalemin="0.5" scalemax="0.5" distancemin="0" distancemax="0" colormultiplier="255,0,0,255" lifetimemultiplier="2" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="activemonitor" target2tag="player" applytotarget2="monitorchecker" radius="200" waitforinteraction="true" />
|
||||
<ConversationAction targettag="monitorchecker" text="eventtext.troubledengine.monitor" dialogtype="Small" eventsprite="malfunction" endconversation="true" />
|
||||
<Label name="restart" />
|
||||
<ClearTagAction tag="te_player" />
|
||||
<TriggerAction target1tag="activeengine" target2tag="player" applytotarget2="te_player" radius="300" waitforinteraction="true" />
|
||||
<ConversationAction targettag="te_player" text="eventtext.troubledengine.engine" eventsprite="officeinside">
|
||||
<Option text="eventtext.option.smack">
|
||||
<!-- if success, cancel out the engine decay, if failure either try again or drop a scrap and wait -->
|
||||
<SkillCheckAction requiredskill="Mechanical" requiredlevel="55" targettag="te_player">
|
||||
<Success>
|
||||
<StatusEffectAction targettag="activeengine">
|
||||
<StatusEffect target="This" condition="2" duration="60" stackable="false">
|
||||
<Sound file="Content/Sounds/Impact/MetalImpactHeavy2.ogg" range="500" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<GiveSkillEXPAction skill="mechanical" amount="2" targettag="triggerer_player" />
|
||||
<ConversationAction targettag="te_player" text="eventtext.troubledengine.engine.success" eventsprite="officeinside" endconversation="true" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<RNGAction chance="0.5">
|
||||
<Success>
|
||||
<ConversationAction targettag="te_player" text="eventtext.troubledengine.engine.failure" endconversation="true" eventsprite="officeinside" />
|
||||
<WaitAction time="1" />
|
||||
<GoTo name="restart" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<AfflictionAction affliction="lacerations" strength="5" limbtype="LeftHand" targettag="te_player" />
|
||||
<AfflictionAction affliction="stun" strength="0.5" targettag="te_player" />
|
||||
<SpawnAction itemidentifier="scrap" spawnpointtag="activeengine" />
|
||||
<StatusEffectAction targettag="activeengine">
|
||||
<StatusEffect target="this" condition="-25" disabledeltatime="true">
|
||||
<Sound file="Content/Sounds/Impact/MetalImpactHeavy2.ogg" range="500" />
|
||||
<Sound file="Content/Items/MechanicalRepairFail.ogg" range="500" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction targettag="te_player" text="eventtext.troubledengine.engine.smack.failure" endconversation="true" eventsprite="ScrapMetal" />
|
||||
</Failure>
|
||||
</RNGAction>
|
||||
</Failure>
|
||||
</SkillCheckAction>
|
||||
</Option>
|
||||
<Option text="eventtext.option.dontbother" endconversation="true">
|
||||
<GoTo name="restart" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</ScriptedEvent>
|
||||
<!-- Reactor Malfunction
|
||||
The reactor malfunctions and switches to manual mode for 2 minutes -->
|
||||
<ScriptedEvent identifier="reactormalfunction">
|
||||
<Label name="delay" />
|
||||
<WaitAction time="30" />
|
||||
<RNGAction chance="0.2">
|
||||
<Success>
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="delay" />
|
||||
</Failure>
|
||||
</RNGAction>
|
||||
<Label name="start" />
|
||||
<TagAction criteria="itemtag:reactor" tag="activereactor" submarinetype="player" />
|
||||
<TagAction criteria="itemidentifier:statusmonitor" tag="monitor" submarinetype="player" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="monitor" target2tag="player" applytotarget1="activemonitor" radius="2200" waitforinteraction="false" />
|
||||
<!-- first trigger of effects, just a taste -->
|
||||
<StatusEffectAction targettag="activereactor">
|
||||
<StatusEffect target="This" AutoTemp="false">
|
||||
<ParticleEmitter particle="weldspark" particlespersecond="2" velocitymin="150" velocitymax="300" anglemin="0" anglemax="180" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Electricity/zap3.ogg" range="500" loop="false" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<!-- monitor effects -->
|
||||
<StatusEffectAction targettag="activemonitor">
|
||||
<StatusEffect target="this" duration="20" noninteractable="false">
|
||||
<Sound file="Content/Items/WarningBeepSlow.ogg" range="500" volume="0.5" loop="true" />
|
||||
<ParticleEmitter particle="impactfirearm" particlespersecond="1" velocitymin="0" velocitymax="0" anglemin="0" anglemax="0" scalemin="0.5" scalemax="0.5" distancemin="0" distancemax="0" colormultiplier="255,0,0,255" lifetimemultiplier="2" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="activemonitor" target2tag="player" applytotarget2="monitorchecker" waitforinteraction="true" />
|
||||
<ConversationAction targettag="monitorchecker" text="eventtext.reactormalfunction.monitor" endconversation="true" eventsprite="malfunction" dialogtype="Small" />
|
||||
<TriggerAction target1tag="activereactor" target2tag="player" applytotarget2="rm_player" radius="300" waitforinteraction="true" />
|
||||
<StatusEffectAction targettag="activereactor">
|
||||
<StatusEffect target="This" AutoTemp="false" duration="120" stackable="false">
|
||||
<ParticleEmitter particle="weldspark" particlespersecond="2" velocitymin="150" velocitymax="300" anglemin="0" anglemax="180" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Electricity/zap3.ogg" range="500" loop="false" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<ConversationAction targettag="rm_player" text="eventtext.reactormalfunction.reactor" endconversation="true" continueautomatically="true" eventsprite="officeinside" dialogtype="Small" />
|
||||
<WaitAction time="120" />
|
||||
<ClearTagAction tag="rm_player" />
|
||||
<StatusEffectAction targettag="activereactor">
|
||||
<StatusEffect target="This">
|
||||
<ParticleEmitter particle="heavysmoke" particleamount="3" velocitymin="0" velocitymax="0" anglemin="70" anglemax="110" scalemin="2" scalemax="3" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Door/duct2.ogg" range="500" volume="2" frequencymultiplier="0.5" loop="false" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="activereactor" target2tag="player" applytotarget2="rm_player" radius="300" waitforinteraction="true" />
|
||||
<ConversationAction targettag="rm_player" text="eventtext.reactormalfunction.backtonormal" continueautomatically="true" endconversation="true" eventsprite="officeinside" dialogtype="Small" />
|
||||
</ScriptedEvent>
|
||||
<!-- Oxygen generator leak
|
||||
Oxygen generator malfunctions and the vents leak a toxic, flammable gas. You can wait it out or purge it. -->
|
||||
<ScriptedEvent identifier="oxygenfluidleak">
|
||||
<Label name="delay" />
|
||||
<WaitAction time="30" />
|
||||
<RNGAction chance="0.2">
|
||||
<Success>
|
||||
<GoTo name="start" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<GoTo name="delay" />
|
||||
</Failure>
|
||||
</RNGAction>
|
||||
<Label name="start" />
|
||||
<TagAction criteria="itemtag:oxygengenerator" tag="activeoxygengenerator" submarinetype="player" />
|
||||
<TagAction criteria="itemidentifier:statusmonitor" tag="monitor" submarinetype="player" />
|
||||
<TagAction criteria="player" tag="player" ContinueIfNoTargetsFound="true" />
|
||||
<TriggerAction target1tag="monitor" target2tag="player" applytotarget1="activemonitor" radius="2200" waitforinteraction="false" />
|
||||
<!-- first trigger of effects, just a taste -->
|
||||
<StatusEffectAction targettag="activeoxygengenerator">
|
||||
<StatusEffect target="This" duration="10">
|
||||
<ParticleEmitter particle="weldspark" particlespersecond="2" velocitymin="150" velocitymax="300" anglemin="0" anglemax="180" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<ParticleEmitter particle="heavysmoke" particlespersecond="2" velocitymin="20" velocitymax="50" anglemin="50" anglemax="130" scalemin="2" scalemax="3" Spread="50" distancemin="0" distancemax="50" colormultiplier="150,255,150,255" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/MechanicalRepairFail.ogg" range="800" loop="false" frequencymultiplier="0.5" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<WaitAction time="10" />
|
||||
<!-- gas loop -->
|
||||
<TriggerEventAction identifier="oxygenfluidleakloopevent" />
|
||||
<!-- monitor effects -->
|
||||
<StatusEffectAction targettag="activemonitor">
|
||||
<StatusEffect target="this" duration="20" noninteractable="false">
|
||||
<Sound file="Content/Items/WarningBeepSlow.ogg" range="500" volume="0.5" loop="true" />
|
||||
<ParticleEmitter particle="impactfirearm" particlespersecond="1" velocitymin="0" velocitymax="0" anglemin="0" anglemax="0" scalemin="0.5" scalemax="0.5" distancemin="-2" distancemax="2" colormultiplier="255,0,0,255" lifetimemultiplier="2" Spread="50" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<StatusEffectAction targettag="activeoxygengenerator">
|
||||
<StatusEffect target="This" duration="150" stackable="false">
|
||||
<ParticleEmitter particle="weldspark" particlespersecond="2" velocitymin="150" velocitymax="300" anglemin="0" anglemax="180" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<ParticleEmitter particle="heavysmoke" particlespersecond="2" velocitymin="20" velocitymax="50" anglemin="70" anglemax="110" scalemin="2" scalemax="3" Spread="50" distancemin="0" distancemax="30" colormultiplier="255,255,255,255" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Electricity/zap3.ogg" range="500" loop="false" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<TriggerAction target1tag="activemonitor" target2tag="player" applytotarget2="monitorchecker" waitforinteraction="true" />
|
||||
<ConversationAction targettag="monitorchecker" text="eventtext.oxygenfluidleak.monitor" endconversation="true" eventsprite="malfunction" />
|
||||
<Label name="repairgenerator" />
|
||||
<ClearTagAction tag="ofl_player" />
|
||||
<TriggerAction target1tag="activeoxygengenerator" target2tag="player" applytotarget2="ofl_player" radius="300" waitforinteraction="true" />
|
||||
<CheckDataAction identifier="oxygenfluidleakloopcount" condition="gte 30">
|
||||
<Success>
|
||||
<!-- do nothing if too much time passed -->
|
||||
<ConversationAction targettag="ofl_player" text="eventtext.oxygenfluidleak.toolate" eventsprite="officeinside" endconversation="true" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="ofl_player" text="eventtext.oxygenfluidleak.leakyscrubber" eventsprite="officeinside">
|
||||
<Option text="EventText.generic.continue">
|
||||
<ConversationAction targettag="ofl_player" text="eventtext.oxygenfluidleak.waitorpurge" eventsprite="officeinside">
|
||||
<Option text="eventtext.oxygenfluidleak.purgeoption">
|
||||
<SkillCheckAction requiredskill="Mechanic" requiredlevel="55" targettag="ofl_player">
|
||||
<Success>
|
||||
<ConversationAction targettag="ofl_player" text="eventtext.oxygenfluidleak.goodpurge" eventsprite="officeinside" endconversation="true" />
|
||||
<SetDataAction identifier="oxygenfluidleakloopcount" operation="set" value="31" />
|
||||
<TagAction criteria="itemtag:vent" tag="allvents" submarinetype="player" />
|
||||
<StatusEffectAction targettag="allvents">
|
||||
<StatusEffect target="This">
|
||||
<ParticleEmitter particle="heavysmoke" particleamount="5" velocitymin="20" velocitymax="50" anglemin="50" anglemax="130" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="50" colormultiplier="255,255,255,255" lifetimemultiplier="3" />
|
||||
<SpawnItem identifiers="ventleakcloud" spawnposition="This" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<StatusEffectAction targettag="activeoxygengenerator" condition="-20" disabledeltatime="true" forceplaysounds="true">
|
||||
<StatusEffect target="This">
|
||||
<Sound file="Content/Items/Warningbeep.ogg" range="800.0" />
|
||||
<Sound file="Content/Items/Reactor/ReactorTemperatureBoostUp.ogg" range="800.0" frequencymultiplier="0.5" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<GiveSkillEXPAction skill="mechanical" amount="2" targettag="ofl_player" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<ConversationAction targettag="ofl_player" text="eventtext.oxygenfluidleak.badpurge" eventsprite="officeinside" endconversation="true" />
|
||||
<SetDataAction identifier="oxygenfluidleakloopcount" operation="set" value="31" />
|
||||
<TagAction criteria="itemtag:vent" tag="allvents" submarinetype="player" />
|
||||
<StatusEffectAction targettag="allvents">
|
||||
<StatusEffect target="This">
|
||||
<ParticleEmitter particle="heavysmoke" particleamount="5" velocitymin="20" velocitymax="50" anglemin="50" anglemax="130" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="50" colormultiplier="255,255,255,255" lifetimemultiplier="3" />
|
||||
<SpawnItem identifiers="ventleakcloud" spawnposition="This" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<StatusEffectAction targettag="activeoxygengenerator">
|
||||
<StatusEffect target="This" condition="-80" disabledeltatime="true" forceplaysounds="true">
|
||||
<ParticleEmitter particle="spark" particleamount="20" velocitymin="150" velocitymax="300" anglemin="0" anglemax="180" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="100" colormultiplier="255,255,255,255" highqualitycollisiondetection="true" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Warningbeep.ogg" range="800.0" />
|
||||
<Sound file="Content/Items/Reactor/ReactorTemperatureBoostUp.ogg" range="800.0" frequencymultiplier="0.5" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<SpawnAction itemidentifier="ventleakcloud" spawnpointtag="activeoxygengenerator" />
|
||||
<GiveSkillEXPAction skill="mechanical" amount="2" targettag="ofl_player" />
|
||||
</Failure>
|
||||
</SkillCheckAction>
|
||||
</Option>
|
||||
<Option text="EventText.oxygenfluidleak.waititout" endconversation="true"></Option>
|
||||
<Option text="eventtext.option.dontbother">
|
||||
<WaitAction time="1" />
|
||||
<GoTo name="repairgenerator" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Option>
|
||||
<Option text="EventText.option.ignore">
|
||||
<WaitAction time="1" />
|
||||
<GoTo name="repairgenerator" />
|
||||
</Option>
|
||||
</ConversationAction>
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
</ScriptedEvent>
|
||||
<!-- spawns the toxic gas from the event above -->
|
||||
<ScriptedEvent identifier="oxygenfluidleakloopevent">
|
||||
<SetDataAction identifier="oxygenfluidleakloopcount" operation="set" value="0" />
|
||||
<Label name="pickavent" />
|
||||
<ClearTagAction tag="selectedvent" />
|
||||
<TagAction criteria="itemtag:vent" tag="selectedvent" submarinetype="player" chooserandom="true" choosepercentage="1" />
|
||||
<CheckConditionalAction targettag="selectedvent">
|
||||
<Conditional OxygenFlow="gt 10" targetitemcomponent="Vent" />
|
||||
<Success>
|
||||
<StatusEffectAction targettag="selectedvent">
|
||||
<StatusEffect target="This">
|
||||
<ParticleEmitter particle="heavysmoke" particleamount="5" velocitymin="20" velocitymax="50" anglemin="50" anglemax="130" scalemin="0.5" scalemax="1" Spread="50" distancemin="0" distancemax="50" colormultiplier="255,255,255,255" lifetimemultiplier="3" />
|
||||
<Sound file="Content/Items/Electricity/zap3.ogg" range="500" loop="false" />
|
||||
<SpawnItem identifiers="ventleakcloud" spawnposition="This" />
|
||||
</StatusEffect>
|
||||
</StatusEffectAction>
|
||||
<SetDataAction identifier="oxygenfluidleakloopcount" operation="add" value="1" />
|
||||
</Success>
|
||||
<Failure></Failure>
|
||||
</CheckConditionalAction>
|
||||
<WaitAction time="5" />
|
||||
<CheckDataAction identifier="oxygenfluidleakloopcount" condition="gte 30">
|
||||
<Success>
|
||||
<!-- end -->
|
||||
</Success>
|
||||
<Failure>
|
||||
<Goto name="pickavent" />
|
||||
</Failure>
|
||||
</CheckDataAction>
|
||||
<Label name="end" />
|
||||
</ScriptedEvent>
|
||||
<!-- "Beacon comms jam"
|
||||
Beacon malfunctions when turned on, jams your headsets for the rest of the mission -->
|
||||
<ScriptedEvent identifier="beaconcommsjam">
|
||||
<TagAction criteria="player" tag="player" />
|
||||
<TagAction criteria="itemtag:sonarmonitor" tag="beaconmonitor" submarinetype="BeaconStation" />
|
||||
<TagAction criteria="itemtag:mobileradio" tag="mobileradio" />
|
||||
<Label name="beaconactivecheck1" />
|
||||
<CheckConditionalAction targettag="beaconmonitor" targetitemcomponent="Sonar" LogicalOperator="And">
|
||||
<Conditional targetitemcomponent="Sonar" voltage="gt 0.5" />
|
||||
<Conditional targetitemcomponent="Sonar" CurrentMode="Active" />
|
||||
<Success>
|
||||
<ConversationAction text="EventText.beaconcommsjam.jammed" dialogtype="Small" targettag="player" eventsprite="brokenmachinery" endconversation="true" continueautomatically="true" />
|
||||
<Goto name="beaconactivecheck2" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<WaitAction time="1" />
|
||||
<Goto name="beaconactivecheck1" />
|
||||
</Failure>
|
||||
</CheckConditionalAction>
|
||||
<Label name="beaconactivecheck2" />
|
||||
<CheckConditionalAction targettag="beaconmonitor" targetitemcomponent="Sonar" LogicalOperator="And">
|
||||
<Conditional targetitemcomponent="Sonar" voltage="gt 0.5" />
|
||||
<Conditional targetitemcomponent="Sonar" CurrentMode="Active" />
|
||||
<Success>
|
||||
<StatusEffectAction targettag="mobileradio">
|
||||
<StatusEffect target="This" JamTimer="1.5" setvalue="true" forceplaysounds="true" />
|
||||
</StatusEffectAction>
|
||||
<WaitAction time="1" />
|
||||
<Goto name="beaconactivecheck2" />
|
||||
</Success>
|
||||
<Failure>
|
||||
<WaitAction time="1" />
|
||||
<Goto name="beaconactivecheck2" />
|
||||
</Failure>
|
||||
</CheckConditionalAction>
|
||||
</ScriptedEvent>
|
||||
<!-- UNUSED prototype would spawn a mission when getting in range of the "patrol spawner" item -->
|
||||
<!-- <ScriptedEvent identifier="militarypatrol">
|
||||
<MissionAction missiontag="militarypatrol" />
|
||||
</ScriptedEvent> -->
|
||||
</EventPrefabs>
|
||||
<!-- SPAWNS WASTEYARD ENEMIES WITH VERY HIGH COMMONNESS SO REGULAR ENEMIES DONT SPAWN. -->
|
||||
<EventSet identifier="Wasteyard" biome="hydrothermalwastes" chooserandom="false" allowatstart="true" campaign="true">
|
||||
<Commonness commonness="0">
|
||||
<Override leveltype="wastesgraveyard" commonness="100000" />
|
||||
</Commonness>
|
||||
<!--10% or 2 min-->
|
||||
<EventSet identifier="first" chooserandom="true" mindistancetraveled="0.10" minmissiontime="120" minintensity="0.0" maxintensity="0.8">
|
||||
<EventSet identifier="wastecrawlers" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastecrawler" minamount="7" maxamount="9" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="wastehammerheads" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastehammerhead" minamount="2" maxamount="3" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
</EventSet>
|
||||
<!--30% or 5 min-->
|
||||
<EventSet identifier="second" chooserandom="true" mindistancetraveled="0.30" minmissiontime="300" minintensity="0.0" maxintensity="0.8">
|
||||
<EventSet identifier="wastecrawlers" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastecrawler" minamount="8" maxamount="10" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="wastehammerheads" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastehammerhead" minamount="3" maxamount="4" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
</EventSet>
|
||||
<!--50% or 20 min-->
|
||||
<EventSet identifier="third" chooserandom="true" mindistancetraveled="0.50" minmissiontime="1200" minintensity="0.0" maxintensity="0.8">
|
||||
<EventSet identifier="wastecrawlers" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastecrawler" minamount="9" maxamount="11" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="wastehammerheads" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastehammerhead" minamount="4" maxamount="5" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
</EventSet>
|
||||
<!--80%-->
|
||||
<EventSet identifier="fourth" chooserandom="true" mindistancetraveled="0.80" minmissiontime="100000" minintensity="0.0" maxintensity="0.8">
|
||||
<EventSet identifier="wastecrawlers" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastecrawler" minamount="10" maxamount="12" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="wastehammerheads" chooserandom="false">
|
||||
<MonsterEvent characterfile="De-wastehammerhead" minamount="5" maxamount="6" spawntype="mainpath,sidepath" />
|
||||
</EventSet>
|
||||
</EventSet>
|
||||
</EventSet>
|
||||
<!-- spawn an exosuit pirate in bandit beacons at higher difficulty if low reputation -->
|
||||
<EventSet identifier="banditbeaconexosuit" minleveldifficulty="45" maxleveldifficulty="100" campaign="true" requiredspawnpointtag="beacon_bandit" chooserandom="false" triggereventcooldown="false" allowatstart="true" additive="true">
|
||||
<ScriptedEvent identifier="banditbeaconexosuit">
|
||||
<CheckReputationAction TargetType="Faction" identifier="bandits" condition="lte -13">
|
||||
<Success>
|
||||
<SpawnAction NPCSetIdentifier="pirate_npcs" NPCIdentifier="pirateannihilator" team="None" SpawnLocation="beaconstation" spawnpointtag="beacon_bandit" TargetTag="extrapirate" requirespawnpointtag="true" />
|
||||
</Success>
|
||||
</CheckReputationAction>
|
||||
</ScriptedEvent>
|
||||
</EventSet>
|
||||
<!-- UNUSED - Supposed to spawn more enemies outside the lair so they attack the submarine.
|
||||
can't trigger an eventset using a mission (to spawn the creatures properly)
|
||||
mainpath/nearmainsub/abyss spawns are very bad in outpost levels and will sometime get lost or spawn in your sub -->
|
||||
<!-- <EventSet identifier="laircrawlersoutside" leveltype="outpost" locationtype="lair" allowatstart="true" minleveldifficulty="0" maxleveldifficulty="100" ignorecooldown="true" campaign="true" chooserandom="false" commonness="100" >
|
||||
<EventSet identifier="first" minmissiontime="10" >
|
||||
<MonsterEvent characterfile="mudraptor" minamount="1" maxamount="2" spawntype="mainpath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="second" minmissiontime="20" >
|
||||
<MonsterEvent characterfile="crawler" minamount="1" maxamount="2" spawntype="mainpath" />
|
||||
</EventSet>
|
||||
<EventSet identifier="third" minmissiontime="30" >
|
||||
<MonsterEvent characterfile="crawler" minamount="1" maxamount="2" spawntype="mainpath" />
|
||||
</EventSet>
|
||||
</EventSet> -->
|
||||
</Randomevents>
|
||||
+1379
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user