Opened 9 years ago

Last modified 5 years ago

#3340 new defect

Decay of non-capturable structures.

Reported by: mimo Owned by:
Priority: Should Have Milestone: Backlog
Component: Simulation Keywords: beta
Cc: Patch:

Description (last modified by Imarok)

Some structures (like walls or field) are not capturables. And thus, because all the decay logic is now done inside the Capturable component, their decay has no effect and they always keep their initial ownership.

One way to fix that behaviour would be to nonetheless give them a Capturable component with a NonCapturable attribute, but that would complicate the code and gui for a very small benefit. The other way would be to let the TerritoryDecay component manage the decay of non-capturable structures, either by duplicating the code of Capturable, or just having a simple immediate decay when not garrisoned.

Change History (9)

comment:1 by fatherbushido, 8 years ago

At first, I was preferring 2 but finally 1 is perhaps better. It's good to have that option to capture by territory but not by attack. Can't we do that in the converse way, i mean adding a RestrictedClasses system (with the Wall classes) to the capture attack (so we have not to complexify gui and code) ?

Last edited 8 years ago by fatherbushido (previous) (diff)

comment:2 by fatherbushido, 8 years ago

Well, adding Capturable component to walls and RestrictedClasses Wall to units capture attack works nice but: refs #4220

Last edited 8 years ago by fatherbushido (previous) (diff)

comment:3 by Imarok, 7 years ago

Keywords: beta added

comment:4 by Imarok, 5 years ago

Description: modified (diff)

Not sure, but was it intended, that Athenian long walls (can be built in neutral territory) and roman siege walls (can be built everywhere) also decay? You need to garrison them all the time. And Gates will always decay, because you can't garrison them, so they will be useless for the siege walls and the athenian long walls.

comment:5 by elexis, 5 years ago

On May 29, 2017 in r19694 by fatherbushido:

Allow walls and fields to be captured by territory but not by capture attack, by using restricted classes. Reviewed by mimo and Imarok.

Differential Revision: ​https://code.wildfiregames.com/D450

comment:6 by elexis, 5 years ago

On Jan 25, 2018 in r21008:

Add uncapturable special filter and use it on Danubius to prevent the palisade walls from being captured right at the gamestart following r19694.
Arbitrary special filter AI compatibility was added by r20162.

XML file accepted by: bb on irc

in reply to:  4 ; comment:7 by elexis, 5 years ago

Replying to Imarok:

Not sure, but was it intended, that Athenian long walls (can be built in neutral territory) and roman siege walls (can be built everywhere) also decay? You need to garrison them all the time. And Gates will always decay, because you can't garrison them, so they will be useless for the siege walls and the athenian long walls.

I suppose it would be consequential that walls that can be built in enemy territory do not decay and walls that can be built in neutral territory only decay once the entity stands in enemy territory(?)

in reply to:  7 comment:8 by Imarok, 5 years ago

Replying to elexis:

Replying to Imarok:

Not sure, but was it intended, that Athenian long walls (can be built in neutral territory) and roman siege walls (can be built everywhere) also decay? You need to garrison them all the time. And Gates will always decay, because you can't garrison them, so they will be useless for the siege walls and the athenian long walls.

I suppose it would be consequential that walls that can be built in enemy territory do not decay and walls that can be built in neutral territory only decay once the entity stands in enemy territory(?)

Yeah, that's how I think it should work.

comment:9 by Imarok, 5 years ago

Component: UI & SimulationSimulation

Move tickets to Simulation as UI & Simulation got some sub components.

Note: See TracTickets for help on using tickets.