Skip to content

RemoveStatus

A remove-status action cleanses removable debuffs, dispels removable buffs, or filters for one or more status families. Add it to a skill's actions array with type: "remove_status".

How selection works

type_to_remove
Selects the concrete status families eligible for removal, such as stats_up, utility, control, or dot. It does not automatically select every buff or every debuff.
number_to_remove
Sets the maximum number of matching statuses to remove. Cowculator chooses matching statuses at random when more are eligible.

Only statuses configured with removable: true are eligible. If fewer statuses match than requested, Cowculator removes all matching statuses.

Each runtime status instance is a separate candidate. If a fighter has several stacks with the same name, number_to_remove: 2 can remove two of those stacks. Selection is random when the number of eligible instances exceeds the limit.

Resolution order

Cowculator resolves a remove-status action in this order:

  1. Resolve the action's targets.
  2. Check the action's chance independently for each target.
  3. Find statuses whose type appears in type_to_remove and whose removable value is true.
  4. Randomly select up to number_to_remove matching status instances.
  5. Remove each selected instance separately.

A missed target keeps all statuses. With target_type: "all", removal can succeed for one fighter and miss the other.

Removing a shield status also removes that individual shield's remaining protection. See Utility buffs for shield expiry and removal behavior.

Removal outcomes

When the action's chance succeeds, the battle result records a removal outcome for that target:

  • An empty type_to_remove produces no_removal_criteria.
  • No eligible status produces no_removable_status_matched.
  • Each removed status instance produces a separate removed outcome.

Example

This action removes up to two removable stat buffs from the opposing fighter:

{
  "type": "remove_status",
  "name": "Dispel stat buffs",
  "chance": 1.0,
  "target_type": "enemy",
  "status_to_remove": {
    "number_to_remove": 2,
    "type_to_remove": ["stats_up"]
  }
}

Looking for exact fields?

Use the OpenAPI reference for the complete remove-status action schema and supported status families.