{
  "$schema": "/characters/v2/schemas/state-machine.schema.json",
  "schemaVersion": "1.0.0",
  "kind": "nandarona.character-state-machine",
  "releaseId": "koroga@2.5.0",
  "initialState": "still",
  "states": {
    "still": {
      "status": "canonical",
      "intent": "勢いを残して転がる前の基準状態",
      "allowedNext": [
        "nudge",
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "nudge": {
      "status": "canonical",
      "intent": "慣性保持型ローリングオブジェクト役としての nudge 状態",
      "allowedNext": [
        "roll",
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "roll": {
      "status": "canonical",
      "intent": "慣性保持型ローリングオブジェクト役としての roll 状態",
      "allowedNext": [
        "fast-roll",
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "fast-roll": {
      "status": "canonical",
      "intent": "慣性保持型ローリングオブジェクト役としての fast-roll 状態",
      "allowedNext": [
        "wobble",
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "wobble": {
      "status": "canonical",
      "intent": "慣性保持型ローリングオブジェクト役としての wobble 状態",
      "allowedNext": [
        "rest-flat",
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    },
    "rest-flat": {
      "status": "canonical",
      "intent": "慣性保持型ローリングオブジェクト役としての rest-flat 状態",
      "allowedNext": [
        "still"
      ],
      "visualChannel": "growth amount, leaf or root geometry, hinge angle, maturity, branch choice, restrained organic motion"
    }
  },
  "events": {
    "activate": "nudge",
    "intensify": "fast-roll",
    "resolve": "wobble",
    "reset": "still"
  },
  "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."
  ]
}
