Skip to content

Commit

Permalink
Add Overlord upgrades
Browse files Browse the repository at this point in the history
  • Loading branch information
Ziktofel committed Jun 10, 2024
1 parent 7930626 commit 891ef5a
Show file tree
Hide file tree
Showing 18 changed files with 738 additions and 14 deletions.
31 changes: 31 additions & 0 deletions Mods/ArchipelagoPlayer.SC2Mod/Base.SC2Data/GameData/AbilData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10644,4 +10644,35 @@
<Flags index="IgnoreUnitCost" value="1"/>
<InfoArray Unit="AP_MercReaperResourceEfficiency"/>
</CAbilMorph>
<CAbilBehavior id="AP_GenerateCreep">
<EditorCategories value="Race:Zerg,AbilityorEffectType:Units"/>
<CmdButtonArray index="On" DefaultButtonFace="AP_GenerateCreep" Requirements="AP_HaveOverlordGenerateCreep"/>
<CmdButtonArray index="Off" DefaultButtonFace="AP_StopGenerateCreep"/>
<Flags index="Toggle" value="1"/>
<Flags index="Transient" value="1"/>
<BehaviorArray value="AP_makeCreep2x2Overlord"/>
</CAbilBehavior>
<CAbilEffectInstant id="AP_SpawnChangeling">
<EditorCategories value="Race:Zerg,AbilityorEffectType:Units"/>
<CmdButtonArray index="Execute" DefaultButtonFace="AP_SpawnChangeling" Requirements="AP_HaveOverlordChangeling"/>
<Cost>
<Vital index="Energy" value="50"/>
</Cost>
<ProducedUnitArray value="Changeling"/>
<Flags index="BestUnit" value="1"/>
</CAbilEffectInstant>
<CAbilEffectTarget id="AP_Contaminate">
<EditorCategories value="Race:Zerg,AbilityorEffectType:Units"/>
<Cost>
<Vital index="Energy" value="125"/>
<Charge Link=""/>
<Cooldown Link=""/>
</Cost>
<TargetFilters value="Structure,Visible;Player,Ally,Neutral,Missile,Stasis,Dead,Hidden,Invulnerable"/>
<Range value="3"/>
<AINotifyEffect value=""/>
<CmdButtonArray index="Execute" DefaultButtonFace="AP_Contaminate" Requirements="AP_HaveOverlordContaminate"/>
<Flags index="AllowMovement" value="1"/>
<Flags index="NoDeceleration" value="1"/>
</CAbilEffectTarget>
</Catalog>
43 changes: 43 additions & 0 deletions Mods/ArchipelagoPlayer.SC2Mod/Base.SC2Data/GameData/ActorData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31935,4 +31935,47 @@
<On Terms="Upgrade.AP_Liberator360DegreeSensorArray.Remove" Send="Destroy"/>
<Weapon value="AP_LiberatorAGWeapon"/>
</CActorRange>
<CActorMissile id="AP_ContaminateMissile" parent="GenericAttackMissile" unitName="AP_ContaminateWeapon">
<Model value="ContaminateWeapon"/>
</CActorMissile>
<CActorAction id="AP_Contaminate" parent="GenericAttack" effectImpact="AP_ContaminateDummy" effectLaunch="AP_ContaminateLaunchMissile">
<ImpactSiteOps Ops="SOpAttachHarness VoidRaySOpForwardLaunch SOpForwardLaunchGuide"/>
<AccuracyHalfArc value="10.000000"/>
<ShieldFlashType value="None"/>
</CActorAction>
<CActorSound id="AP_ContaminateLaunchSound" parent="SoundOneShot">
<Sound value="Corruptor_CorruptionLaunch"/>
<On Terms="Abil.AP_Contaminate.SourceChannelStop" Send="Create"/>
<On Terms="Abil.AP_Contaminate.SourceCastStart" Send="Create"/>
</CActorSound>
<CActorSound id="AP_ContaminateLoopSound" parent="SoundContinuous">
<Sound value="Corruptor_CorruptionLoop"/>
<On Terms="Abil.AP_Contaminate.SourceChannelStart" Send="Create"/>
<On Terms="Abil.AP_Contaminate.SourceChannelStop" Send="Destroy"/>
</CActorSound>
<CActorModel id="AP_ContaminateModel" parent="ModelAddition">
<Model value="ContaminateModel"/>
<AutoScaleFactor value="0.500000"/>
<Inherits index="TintColor" value="0"/>
<!-- This value will get inherited with then model is copied in a snapshot. Transfering
it will only cause the prop to double up with the prop inherited from the parent,
which will cause the model to change scale when it goes under the FoW. -->
<AcceptedHostedPropTransfers index="BaseModelScale" value="0"/>
<Remove Terms="ActorOrphan" Send="Destroy"/>
<On Terms="Behavior.AP_Contaminated.On" Send="Create"/>
<On Terms="Behavior.AP_Contaminated.Off" Send="AnimBracketStop BSD"/>
<On Terms="ActorOrphan" Send="AnimBracketStop BSD"/>
<!-- This needs to be a soft attach to prevent crazy giant scales against a Command
Center under construction. -->
<HostSiteOps Ops="SOpAttachCenterSoft"/>
</CActorModel>
<CActorRange id="AP_ContaminateRange" parent="RangeAbil" abil="AP_Contaminate"/>
<CActorSound id="AP_ContaminateImpactSound" parent="SoundOneShot">
<Sound value="Corruptor_CorruptionImpact"/>
<On Terms="Behavior.AP_Contaminated.On" Send="Create"/>
</CActorSound>
<CActorSound id="AP_ContaminateEndSound" parent="SoundOneShot">
<Sound value="Corruptor_CorruptionEnd"/>
<On Terms="Behavior.AP_Contaminated.Off" Send="Create"/>
</CActorSound>
</Catalog>
Original file line number Diff line number Diff line change
Expand Up @@ -6935,4 +6935,24 @@
<DisableValidatorArray value="AP_HaveCorruptorScourgeIncubation"/>
<EditorCategories value="AbilityorEffectType:Units"/>
</CBehaviorBuff>
<CBehaviorBuff id="AP_Contaminated">
<DisplayDuration index="Self" value="1"/>
<DisplayDuration index="Ally" value="1"/>
<DisplayDuration index="Enemy" value="1"/>
<Alignment value="Negative"/>
<EditorCategories value="Race:Zerg,AbilityorEffectType:Units"/>
<Modification>
<AbilClassDisableArray index="CAbilQueue" value="1"/>
<AbilClassDisableArray index="CAbilResearch" value="1"/>
<AbilClassDisableArray index="CAbilTrain" value="1"/>
<AbilClassDisableArray index="CAbilWarpTrain" value="1"/>
<BehaviorLinkDisableArray value="SpawnLarva"/>
<BehaviorLinkDisableArray value="AP_SpawnLarva"/>
<BehaviorLinkDisableArray value="QueenSpawnLarvaTimer"/>
<BehaviorLinkDisableArray value="AP_QueenSpawnLarvaTimer"/>
</Modification>
<InfoIcon value="Assets\Textures\btn-ability-zerg-fungalgrowth.dds"/>
<Duration value="30"/>
<TimeScaleSource Value="Global"/>
</CBehaviorBuff>
</Catalog>
33 changes: 33 additions & 0 deletions Mods/ArchipelagoPlayer.SC2Mod/Base.SC2Data/GameData/ButtonData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5367,4 +5367,37 @@
<Icon value="Assets\Textures\btn-upgrade-zerg-abathur-improvedmend.dds"/>
<EditorCategories value="Race:Zerg"/>
</CButton>
<CButton id="AP_GenerateCreep">
<Icon value="Assets\Textures\btn-ability-zerg-generatecreep-color.dds"/>
<AlertIcon value="Assets\Textures\btn-ability-zerg-generatecreep-color.dds"/>
<EditorCategories value="Race:Zerg"/>
<HotkeySet value="GenerateCreep"/>
</CButton>
<CButton id="AP_StopGenerateCreep">
<Icon value="Assets\Textures\btn-ability-zerg-generatecreepstop-color.dds"/>
<AlertIcon value="Assets\Textures\btn-ability-zerg-generatecreepstop-color.dds"/>
<EditorCategories value="Race:Zerg"/>
<HotkeySet value="GenerateCreep"/>
<Universal value="1"/>
</CButton>
<CButton id="AP_SpawnChangeling">
<Icon value="Assets\Textures\BTN-Unit-Zerg-changeling.dds"/>
<AlertIcon value="Assets\Textures\BTN-Unit-Zerg-changeling.dds"/>
<EditorCategories value="Race:Zerg"/>
</CButton>
<CButton id="AP_Contaminate">
<Icon value="Assets\Textures\btn-ability-zerg-contaminate-color.dds"/>
<AlertIcon value="Assets\Textures\btn-ability-zerg-contaminate-color.dds"/>
<EditorCategories value="Race:Zerg"/>
</CButton>
<CButton id="AP_OverlordSpeed">
<Icon value="Assets\Textures\btn-upgrade-zerg-pneumatizedcarapace.dds"/>
<AlertIcon value="Assets\Textures\btn-upgrade-zerg-pneumatizedcarapace.dds"/>
<EditorCategories value="Race:Zerg"/>
</CButton>
<CButton id="AP_OverlordSightUpgrade">
<Icon value="Assets\Textures\btn-ability-zerg-overlord-oversight-off.dds"/>
<AlertIcon value="Assets\Textures\btn-ability-zerg-overlord-oversight-off.dds"/>
<EditorCategories value="Race:Zerg"/>
</CButton>
</Catalog>
36 changes: 36 additions & 0 deletions Mods/ArchipelagoPlayer.SC2Mod/Base.SC2Data/GameData/EffectData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16763,4 +16763,40 @@
<SpawnEffect value="AP_AberrationBanelingIncubationBirthHeightBirthSet"/>
<SpawnRange value="1"/>
</CEffectCreateUnit>
<CEffectCreateUnit id="AP_SpawnChangeling">
<EditorCategories value="Race:Zerg"/>
<WhichLocation Value="TargetPoint"/>
<!-- Spawn vanilla changeling due to AI scripts and the unit itself never changes -->
<SpawnUnit value="Changeling"/>
<SpawnRange value="2"/>
<SpawnEffect value="AP_ChangelingTimedLife"/>
</CEffectCreateUnit>
<CEffectApplyBehavior id="AP_ChangelingTimedLife">
<EditorCategories value="Race:Zerg"/>
<Behavior value="Changeling"/>
</CEffectApplyBehavior>
<CEffectCreatePersistent id="AP_Contaminate">
<EditorCategories value="Race:Zerg"/>
<WhichLocation Value="TargetUnit"/>
<Flags index="Channeled" value="1"/>
<InitialEffect value="AP_ContaminateApplyBehavior"/>
<PeriodCount value="8"/>
<PeriodicValidator value="NotDead"/>
<PeriodicEffectArray value="AP_ContaminateLaunchMissile"/>
<PeriodicPeriodArray value="0.125"/>
<ValidatorArray value="noMarkers"/>
</CEffectCreatePersistent>
<CEffectEnumArea id="ContaminateDummy">
<EditorCategories value="Race:Zerg"/>
</CEffectEnumArea>
<CEffectLaunchMissile id="AP_ContaminateLaunchMissile">
<ValidatorArray index="0" value=""/>
<EditorCategories value="Race:Zerg"/>
<AmmoUnit value="AP_ContaminateWeapon"/>
<Visibility value="Visible"/>
</CEffectLaunchMissile>
<CEffectApplyBehavior id="AP_ContaminateApplyBehavior">
<EditorCategories value="Race:Zerg"/>
<Behavior value="AP_Contaminated"/>
</CEffectApplyBehavior>
</Catalog>
Original file line number Diff line number Diff line change
Expand Up @@ -3353,4 +3353,24 @@
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeCorruptorConstructRegenerationCompleteOnly"/>
</CRequirement>
<CRequirement id="AP_HaveOverlordGenerateCreep">
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeOverlordGenerateCreepCompleteOnly"/>
</CRequirement>
<CRequirement id="AP_HaveOverlordChangeling">
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeOverlordChangelingCompleteOnly"/>
</CRequirement>
<CRequirement id="AP_HaveOverlordContaminate">
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeOverlordContaminateCompleteOnly"/>
</CRequirement>
<CRequirement id="AP_HaveOverlordSpeed">
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeOverlordSpeedCompleteOnly"/>
</CRequirement>
<CRequirement id="AP_HaveOverlordSightUpgrade">
<EditorCategories value="Race:Zerg,TechType:Upgrade"/>
<NodeArray index="Show" Link="AP_CountUpgradeOverlordSightUpgradeCompleteOnly"/>
</CRequirement>
</Catalog>
Original file line number Diff line number Diff line change
Expand Up @@ -5814,4 +5814,24 @@
<Count Link="AP_CorruptorConstructRegeneration" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
<CRequirementCountUpgrade id="AP_CountUpgradeOverlordGenerateCreepCompleteOnly">
<Count Link="AP_OverlordGenerateCreep" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
<CRequirementCountUpgrade id="AP_CountUpgradeOverlordChangelingCompleteOnly">
<Count Link="AP_OverlordChangeling" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
<CRequirementCountUpgrade id="AP_CountUpgradeOverlordContaminateCompleteOnly">
<Count Link="AP_OverlordContaminate" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
<CRequirementCountUpgrade id="AP_CountUpgradeOverlordSpeedCompleteOnly">
<Count Link="AP_OverlordSpeed" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
<CRequirementCountUpgrade id="AP_CountUpgradeOverlordSightUpgradeCompleteOnly">
<Count Link="AP_OverlordSightUpgrade" State="CompleteOnly"/>
<Flags index="TechTreeCheat" value="0"/>
</CRequirementCountUpgrade>
</Catalog>
18 changes: 16 additions & 2 deletions Mods/ArchipelagoPlayer.SC2Mod/Base.SC2Data/GameData/UnitData.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16862,7 +16862,11 @@
<AbilArray Link="stop"/>
<AbilArray Link="move"/>
<AbilArray Link="AP_OverlordTransport"/>
<AbilArray Link="AP_GenerateCreep"/>
<AbilArray Link="AP_SpawnChangeling"/>
<AbilArray Link="AP_Contaminate"/>
<BehaviorArray Link="AP_OverlordPreventTransport"/>
<BehaviorArray Link="Detector11"/>
<!-- <AbilArray Link="MorphToOverseer"/>-->
<CardLayouts>
<LayoutButtons Face="Move" Type="AbilCmd" AbilCmd="move,Move" Row="0" Column="0"/>
Expand All @@ -16873,8 +16877,13 @@
<LayoutButtons Face="MovePatrol" Type="AbilCmd" AbilCmd="move,Patrol" Row="0" Column="3"/>
<LayoutButtons Face="OverlordTransportLoad" Type="AbilCmd" AbilCmd="AP_OverlordTransport,Load" Row="2" Column="2"/>
<LayoutButtons Face="OverlordTransportUnload" Type="AbilCmd" AbilCmd="AP_OverlordTransport,UnloadAt" Row="2" Column="3"/>
<LayoutButtons Face="AP_K5ImprovedOverlords" Type="Passive" Requirements="AP_HaveK5ImprovedOverlords" Row="2" Column="0"/>
<RowText value="Row/Overlord/Row1"/>
<LayoutButtons Face="AP_K5ImprovedOverlords" Type="Passive" Requirements="AP_HaveK5ImprovedOverlords" Row="1" Column="4"/>
<LayoutButtons Face="AP_OverlordSpeed" Type="Passive" Requirements="AP_HaveOverlordSpeed" Row="1" Column="3"/>
<LayoutButtons Face="AP_OverlordSightUpgrade" Type="Passive" Requirements="AP_HaveOverlordSightUpgrade" Row="1" Column="2"/>
<LayoutButtons Face="AP_GenerateCreep" Type="AbilCmd" AbilCmd="AP_GenerateCreep,On" Row="2" Column="0"/>
<LayoutButtons Face="AP_StopGenerateCreep" Type="AbilCmd" AbilCmd="AP_GenerateCreep,Off" Row="2" Column="1"/>
<LayoutButtons Face="AP_SpawnChangeling" Type="AbilCmd" AbilCmd="AP_SpawnChangeling,Execute" Row="1" Column="0"/>
<LayoutButtons Face="AP_Contaminate" Type="AbilCmd" AbilCmd="AP_Contaminate,Execute" Row="1" Column="1"/>
</CardLayouts>
<Radius value="1"/>
<SeparationRadius value="0.75"/>
Expand Down Expand Up @@ -23357,4 +23366,9 @@
<EditorCategories value="ObjectType:Unit,ObjectFamily:Campaign"/>
<AIEvalFactor value="0"/>
</CUnit>
<CUnit id="AP_ContaminateWeapon" parent="MISSILE_INVULNERABLE">
<Race value="Zerg"/>
<Mover value="Contaminate"/>
<EditorCategories value="ObjectType:Projectile,ObjectFamily:Melee"/>
</CUnit>
</Catalog>
Original file line number Diff line number Diff line change
Expand Up @@ -12263,4 +12263,18 @@
<EffectArray Operation="Subtract" Reference="Unit,AP_Corruptor,CostResource[Minerals]" Value="50"/>
<EffectArray Operation="Subtract" Reference="Unit,AP_Corruptor,CostResource[Vespene]" Value="25"/>
</CUpgrade>
<CUpgrade id="AP_OverlordGenerateCreep"/>
<CUpgrade id="AP_OverlordSpellcaster">
<EffectArray Reference="Unit,AP_Overlord,EnergyMax" Value="200"/>
<EffectArray Reference="Unit,AP_Overlord,EnergyStart" Value="50"/>
<EffectArray Reference="Unit,AP_Overlord,EnergyRegenRate" Value=".5625"/>
</CUpgrade>
<CUpgrade id="AP_OverlordChangeling"/>
<CUpgrade id="AP_OverlordContaminate"/>
<CUpgrade id="AP_OverlordSpeed">
<EffectArray index="0" Reference="Unit,AP_Overlord,Speed" Value="1.500000"/>
</CUpgrade>
<CUpgrade id="AP_OverlordSightUpgrade">
<EffectArray Reference="Unit,AP_Overlord,Sight" Value="2.75"/>
</CUpgrade>
</Catalog>
Original file line number Diff line number Diff line change
Expand Up @@ -469,3 +469,7 @@ Button/Hotkey/AP_TornadoMissile=E
Button/Hotkey/AP_WarHound=R
Button/Hotkey/AP_StimRedirect=T
Button/Hotkey/AP_HellbatCharge=J
Button/Hotkey/AP_GenerateCreep=G
Button/Hotkey/AP_StopGenerateCreep=N
Button/Hotkey/AP_SpawnChangeling=C
Button/Hotkey/AP_Contaminate=E
Loading

0 comments on commit 891ef5a

Please sign in to comment.