Jump to content

[Suggestion] Rework shield system


Recommended Posts

Right now, the way the shield system works in negotiation is that it can either be on or off, with no regards to how many times shielded is applied and unapplied. This works fine when shielded is only applied as part of the negotiation(in which case it is very easy to keep track of), but doesn't work well when card or graft based shield appliers are added, like amnesty. Suddenly, cards like amnesty that grants temporary shielded can remove shields that are designed to be permanent, like quest specific shields. Right now, amnesty doesn't do that because of how the targeting systems works(it ignores shielded targets, even if they are allied), but who's to say another modded cards cannot grant temporary shield status to specific modifiers like the core argument, and remove the shield status that is not supposed to be removed? The specific card may try to track whether the shield application succeeds, but then you run into issues with the ordering of shield removal.

I suggest a system where a shielded argument tracks the sources that applies shield status, or like an ID system to track the different types of shielding. For example, the shielding status field is a set of IDs that applied shielded to the argument. When something applies shielded, like Impending Doom, it adds a unique ID to the set, and when it removes shielded, it removes only that specific ID from the set. This way, you can have multiple independent shield applier without them interfering with each other.

Also, applying shield status doesn't pass a source, so an event that listens for shield status doesn't know where the shield status is coming from.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

×
  • Create New...