Here's how I did it:
Ability file:
TXT
entityType "Ability"
buffInstantActionType "ApplyOrRemoveBuffToSelf"
instantActionTriggerType "AlwaysPerform"
buffType "BuffFrigateSiegeMode"
effectInfo
effectAttachInfo
attachType "Center"
smallEffectName "Ability_FrigateSiegeMode"
largeEffectName "Ability_FrigateSiegeMode"
soundID "EFFECT_SiegeMode"
toggleStateOnNameStringID "IDS_ABILITY_SIEGEMODEACTIVE_NAME"
toggleStateOnDescStringID "IDS_ABILITY_SIEGEMODEACTIVE_DESCRIPTION"
needsToFaceTarget FALSE
canCollideWithTarget TRUE
moveThruTarget FALSE
isUltimateAbility FALSE
maxNumLevels 1
levelSourceType "FixedLevel0"
aiUseTime "OnlyWhenBombing"
aiUseTargetCondition "Any"
isAutoCastAvailable TRUE
isAutoCastOnByDefault TRUE
pickRandomPlanetToExploreForAutoCastTarget FALSE
ignoreNonCombatShipsForAutoCastTarget TRUE
onlyAutoCastWhenDamageTakenExceedsPerc 0.000000
useCostType "AntiMatter"
antiMatterCost
Level:0 0.000000
Level:1 0.000000
Level:2 0.000000
cooldownTime
Level:0 20.000000
Level:1 0.000000
Level:2 0.000000
orderAcknowledgementType "ONGENERALORDERISSUED"
researchPrerequisites
NumResearchPrerequisites 0
nameStringID "IDS_ABILITY_SIEGEMODE_NAME"
descStringID "IDS_ABILITY_SIEGEMODE_DESCRIPTION"
hudIcon "HUDICON_ABILITY_CHARGEDMISSILES"
smallHudIcon "HUDICON_ABILITY_CHARGEDMISSILES"
infoCardIcon ""
Buff file:
TXT
entityType "Buff"
onReapplyDuplicateType "PrioritizeNewBuffs"
buffStackingLimitType "ForAllPlayers"
stackingLimit 1
allowFirstSpawnerToStack FALSE
buffExclusivityForAIType "ExclusiveForAllPlayers"
isInterruptable FALSE
isChannelling FALSE
numInstantActions 0
numPeriodicActions 0
numOverTimeActions 1
overTimeAction
buffOverTimeActionType "DrainAntiMatter"
drainAntiMatterRate
Level:0 5.000000
Level:1 5.000000
Level:2 5.000000
numEntityModifiers 3
entityModifier
buffEntityModifierType "PlanetBombingCooldown"
value
Level:0 -5.000000
Level:1 0.000000
Level:2 0.00000
entityModifier
buffEntityModifierType "ArmorAsDamageTarget"
value
Level:0 -15.000000
Level:1 0.000000
Level:2 0.000000
entityModifier
buffEntityModifierType "ShieldMitigation"
value
Level:0 -0.600000
Level:1 0.000000
Level:2 0.000000
numEntityBoolModifiers 1
entityBoolModifier "DisableLinearEngines"
numFinishConditions 2
finishCondition
finishConditionType "AntiMatterDepleted"
finishCondition
finishConditionType "OwnerChanged"
---
I have highlighted the important parts. That's basically that is to it.