{
  "$schema": "/characters/v2/schemas/state-machine.schema.json",
  "schemaVersion": "1.0.0",
  "kind": "nandarona.character-state-machine",
  "releaseId": "kageri@2.3.0",
  "initialState": "still-air",
  "states": {
    "still-air": {
      "status": "canonical",
      "intent": "像をゆらす前の基準状態",
      "allowedNext": [
        "heat-rise",
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    },
    "heat-rise": {
      "status": "canonical",
      "intent": "蜃気楼と囮像の識別訓練役としての heat-rise 状態",
      "allowedNext": [
        "duplicate",
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    },
    "duplicate": {
      "status": "canonical",
      "intent": "蜃気楼と囮像の識別訓練役としての duplicate 状態",
      "allowedNext": [
        "offset",
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    },
    "offset": {
      "status": "canonical",
      "intent": "蜃気楼と囮像の識別訓練役としての offset 状態",
      "allowedNext": [
        "compare-line",
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    },
    "compare-line": {
      "status": "canonical",
      "intent": "蜃気楼と囮像の識別訓練役としての compare-line 状態",
      "allowedNext": [
        "resolve",
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    },
    "resolve": {
      "status": "canonical",
      "intent": "蜃気楼と囮像の識別訓練役としての resolve 状態",
      "allowedNext": [
        "still-air"
      ],
      "visualChannel": "field direction, layer density, interval, light geometry, trace age, restrained atmospheric motion"
    }
  },
  "events": {
    "activate": "heat-rise",
    "intensify": "offset",
    "resolve": "compare-line",
    "reset": "still-air"
  },
  "guards": [
    "実在情報の偽装に使わない",
    "ホラーの人影にしない",
    "大きな生物眼を付けない",
    "Unknown facts must remain unknown and must not be promoted to canonical by a transition.",
    "A transition must preserve common DNA, family DNA, and individual silhouette."
  ]
}
