Colonization-Limiting Ability

Is it possible to limit the ability of colony ships so they must "resupply" at an established colony/base before they can actually colonize a new planet?  Ideally I would like to see a ship resupply by slightly reducing population at the origin point and depositing that population at the destination.  Thoughts on how this could be accomplished will be appreciated.

Thanks

8,472 views 5 replies
Reply #1 Top

Probably. You could have the colony ship's colonization ability disable its abilities when it is used. You could set it up so this could only be removed by another ability (say from a shipyard), which could also remove population from a planet.

 

The problem is the AI wouldn't be able to understand this, so you'd either have to make colony ships a "1 use" tool for them (make them cheap but blow up after colonizing a single planet), or simply make them exempt mechanic.

Reply #2 Top

I like the idea of the ship being scrapped when done.  Will play around with this and see what happens. 

Thanks

Reply #3 Top

Quoting rmkiefer07, reply 2

I like the idea of the ship being scrapped when done.  Will play around with this and see what happens. 

Thanks

I actually have one of my new races do that for their colony frigate. Only uses 1 fleet supply and is 1/6 the price, which allows the colonization of a single planet. AI seems to use it pretty well, but you might want to remove the antimatter cost for the ability, otherwise it ends up wasting too much time rebuilding the colony frigate and then waiting for the antimatter to regenerate.

That said, this race also has a Colony Capitalship that colonizes normally. It might be a good idea not to alter the behavior for capitalships since it sucks a lot more to have a capitalship not be able to use abilities, plus it lets players who don't like the mechanic have a way to play around it.

Reply #4 Top

I agree about the capital ship...don't want to change that.  

I've not spent much time modding abilities and buffs and the concept somewhat escapes me.  I assume I would add a buff to the afterColonizeBuffType in the AbilityTechFrigateColonize file.  Have been tinkering with this but without much success.  I'm using the BuffSelfDestructSelf as a template and this is what I've done so far:

TXT
entityType "Buff"
onReapplyDuplicateType "PrioritizeNewBuffs"
buffStackingLimitType "ForAllPlayers"
stackingLimit 1
allowFirstSpawnerToStack FALSE
buffExclusivityForAIType "ExclusiveForAllPlayers"
isInterruptable FALSE
isChannelling FALSE
numInstantActions 1
instantAction
          buffInstantActionType "MakeDead"
          instantActionTriggerType "OnDelay"
          delayTime 3.000000
numPeriodicActions 0
numOverTimeActions 0
numEntityModifiers 0
numEntityBoolModifiers 0
numFinishConditions 1
finishCondition
           finishConditionType "AllOnDelayInstantActionsDone"

Unfortunately this mini-dumps.  The solution is probably staring me in the face but I'm not seeing it.

Your guidance will be appreciated.

Thanks!

Reply #5 Top

Quoting rmkiefer07, reply 4
I assume I would add a buff to the afterColonizeBuffType in the AbilityTechFrigateColonize file.

Yes, but the afterColonizeBuffType goes on the planet, not the ship that used the colonize ability. I think you can use buffInstantActionType "ApplyBuffToFirstSpawnerNoFilterNoRange" to place your self destruct buff on the frigate.


You may find this site helpful. https://code.google.com/p/soaseplugin/wiki/RebellionSyntax

+1 Loading…