# Required effects (/docs/rules/required-effects)

Reports clips missing a configured effect.



{/* Generated by scripts/generate-docs.ts. Do not edit. */}

| Property         | Value                                                                                   |
| :--------------- | :-------------------------------------------------------------------------------------- |
| Id               | `required-effects`                                                                      |
| Category         | Project                                                                                 |
| Default severity | warning                                                                                 |
| Scope            | [`required-effects`](/docs/reference/computed-scopes#required-effects) (computed scope) |

## Options [#options]

| Option        | Type       | Default        | Description                                                                                                                   |
| :------------ | :--------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------- |
| `effects`     | `json`     | `[]`           | Requirements: \{ "matchName", "tracks"?: \["V1"], "trackType"?: "video" \| "audio", "message"? }. Empty: nothing is required. |
| `ignoreKinds` | `string[]` | `["sequence"]` | Source kinds exempt from requirements.                                                                                        |

## Customize it [#customize-it]

Turn the rule on or off in the panel's Rules settings. To change its options, severity or wording, open it with its cogwheel in the rule editor and save: your copy replaces the built-in rule until you revert it. You can also copy the file below into your rules folder as `required-effects.rule.json` and edit it. See [Change a built-in rule](/docs/editor/saving#change-a-built-in-rule).

## Rule file [#rule-file]

```json title="required-effects.rule.json"
{
  "formatVersion": 1,
  "id": "required-effects",
  "name": {
    "en_US": "Required effects",
    "de_DE": "Erforderliche Effekte",
    "es_ES": "Efectos obligatorios",
    "fr_FR": "Effets requis",
    "it_IT": "Effetti obbligatori",
    "ja_JP": "必須のエフェクト",
    "ko_KR": "필수 효과",
    "pt_BR": "Efeitos obrigatórios",
    "ru_RU": "Обязательные эффекты",
    "zh_CN": "必需效果"
  },
  "description": {
    "en_US": "Reports clips missing a configured effect.",
    "de_DE": "Meldet Clips, denen ein konfigurierter Effekt fehlt.",
    "es_ES": "Detecta clips a los que les falta un efecto configurado.",
    "fr_FR": "Signale les éléments auxquels il manque un effet configuré.",
    "it_IT": "Segnala le clip prive di un effetto configurato.",
    "ja_JP": "設定されたエフェクトがないクリップを報告します。",
    "ko_KR": "설정된 효과가 없는 클립을 보고합니다.",
    "pt_BR": "Relata clipes sem um efeito configurado.",
    "ru_RU": "Сообщает о клипах без заданного эффекта.",
    "zh_CN": "报告缺少已配置效果的剪辑。"
  },
  "category": "project",
  "scope": "required-effects",
  "severity": "warning",
  "options": {
    "effects": {
      "type": "json",
      "default": [],
      "description": "Requirements: { \"matchName\", \"tracks\"?: [\"V1\"], \"trackType\"?: \"video\" | \"audio\", \"message\"? }. Empty: nothing is required."
    },
    "ignoreKinds": {
      "type": "string[]",
      "default": [
        "sequence"
      ],
      "description": "Source kinds exempt from requirements."
    }
  },
  "checks": [
    {
      "condition": {
        "field": "requirement.matchName",
        "operator": "exists"
      },
      "message": {
        "en_US": "Clip \"{clip.name}\" on {clip.track} is missing required effect \"{requirement.displayName}\".{requirement.explanation}",
        "de_DE": "Bei Clip „{clip.name}“ auf {clip.track} fehlt der erforderliche Effekt „{requirement.displayName}“.{requirement.explanation}",
        "es_ES": "Clip \"{clip.name}\" en {clip.track} no tiene el efecto obligatorio \"{requirement.displayName}\".{requirement.explanation}",
        "fr_FR": "Il manque l'effet requis « {requirement.displayName} » sur Élément « {clip.name} » sur {clip.track}.{requirement.explanation}",
        "it_IT": "Clip \"{clip.name}\" su {clip.track} non ha l'effetto obbligatorio \"{requirement.displayName}\".{requirement.explanation}",
        "ja_JP": "クリップ「{clip.name}」（{clip.track}）に必須のエフェクト「{requirement.displayName}」がありません。{requirement.explanation}",
        "ko_KR": "{clip.track}의 클립 \"{clip.name}\"에 필수 효과 \"{requirement.displayName}\"이(가) 없습니다.{requirement.explanation}",
        "pt_BR": "Clipe \"{clip.name}\" em {clip.track} não tem o efeito obrigatório \"{requirement.displayName}\".{requirement.explanation}",
        "ru_RU": "Клип «{clip.name}» на {clip.track} не содержит обязательный эффект «{requirement.displayName}».{requirement.explanation}",
        "zh_CN": "{clip.track} 上的剪辑“{clip.name}” 缺少必需效果“{requirement.displayName}”。{requirement.explanation}"
      }
    }
  ],
  "data": {
    "matchName": "requirement.matchName",
    "tracks": "requirement.tracks",
    "trackType": "requirement.trackType"
  }
}
```
