{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "品阶": {
      "type": "string",
      "enum": [
        "凡品",
        "灵品",
        "天品",
        "仙品",
        "神品"
      ]
    },
    "描述": {
      "type": "string",
      "maxLength": 2000
    },
    "固定加成": {
      "type": "object",
      "properties": {
        "体魄": {
          "type": "number"
        },
        "法力": {
          "type": "number"
        },
        "神海": {
          "type": "number"
        },
        "道心": {
          "type": "number"
        },
        "空速": {
          "type": "number"
        }
      },
      "required": [
        "体魄",
        "法力",
        "神海",
        "道心",
        "空速"
      ],
      "additionalProperties": false
    },
    "属性百分比": {
      "type": "object",
      "properties": {
        "体魄": {
          "type": "number"
        },
        "法力": {
          "type": "number"
        },
        "神海": {
          "type": "number"
        },
        "道心": {
          "type": "number"
        },
        "空速": {
          "type": "number"
        }
      },
      "required": [
        "体魄",
        "法力",
        "神海",
        "道心",
        "空速"
      ],
      "additionalProperties": false
    },
    "附属属性": {
      "type": "object",
      "properties": {
        "魅力": {
          "type": "number"
        },
        "悟性": {
          "type": "number"
        },
        "气运": {
          "type": "number"
        }
      },
      "required": [
        "魅力",
        "悟性",
        "气运"
      ],
      "additionalProperties": false
    },
    "数值效果": {
      "default": [],
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "目标": {
                "type": "string",
                "enum": [
                  "血量",
                  "体魄",
                  "法力",
                  "神海",
                  "道心",
                  "空速",
                  "法力储备"
                ]
              },
              "类型": {
                "type": "string",
                "const": "固定"
              },
              "数值": {
                "type": "number"
              },
              "阶段": {
                "default": "常态",
                "type": "string",
                "enum": [
                  "常态",
                  "当前"
                ]
              }
            },
            "required": [
              "目标",
              "类型",
              "数值"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "目标": {
                "type": "string",
                "enum": [
                  "血量",
                  "体魄",
                  "法力",
                  "神海",
                  "道心",
                  "空速",
                  "法力储备"
                ]
              },
              "类型": {
                "type": "string",
                "const": "属性百分比"
              },
              "数值": {
                "type": "string",
                "pattern": "^[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)%$",
                "description": "百分比使用带半角 % 的字符串，例如 \"20%\"。"
              },
              "阶段": {
                "default": "常态",
                "type": "string",
                "enum": [
                  "常态",
                  "当前"
                ]
              }
            },
            "required": [
              "目标",
              "类型",
              "数值"
            ],
            "additionalProperties": false
          }
        ]
      }
    },
    "词条": {
      "default": [],
      "maxItems": 32,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "名称": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "description": "词条当前名称；改名时保留原 id。"
          },
          "品阶": {
            "default": null,
            "description": "词条自身品阶；未分级为 null。",
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              {
                "type": "null"
              }
            ]
          },
          "描述": {
            "type": "string",
            "maxLength": 2000,
            "description": "完整能力表现、作用范围与必要限制；数值写在数值效果。"
          },
          "数值效果": {
            "default": [],
            "description": "该词条当前生效的数值效果；纯描述能力填 []。",
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "固定"
                    },
                    "数值": {
                      "type": "number"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "属性百分比"
                    },
                    "数值": {
                      "type": "string",
                      "pattern": "^[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)%$",
                      "description": "百分比使用带半角 % 的字符串，例如 \"20%\"。"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          }
        },
        "required": [
          "id",
          "名称",
          "描述"
        ],
        "additionalProperties": false
      }
    },
    "初始持有": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "名称": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "分类": {
            "type": "string",
            "enum": [
              "功法",
              "装备",
              "消耗品",
              "其他"
            ]
          },
          "品阶": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "凡品",
                  "灵品",
                  "下品",
                  "中品",
                  "上品",
                  "极品",
                  "天品",
                  "仙品",
                  "神品",
                  "玄品",
                  "道品",
                  "人阶",
                  "地阶",
                  "天阶",
                  "凡尘",
                  "灵脉",
                  "天象",
                  "本源",
                  "神一品",
                  "神二品",
                  "神三品",
                  "神一",
                  "神二",
                  "神三",
                  "伪仙器",
                  "仙器",
                  "凡品下等",
                  "凡品中等",
                  "凡品上等",
                  "玄品下等",
                  "玄品中等",
                  "玄品上等",
                  "道品下等",
                  "道品中等",
                  "道品上等",
                  "人阶下等",
                  "人阶中等",
                  "人阶上等",
                  "地阶下等",
                  "地阶中等",
                  "地阶上等",
                  "天阶下等",
                  "天阶中等",
                  "天阶上等"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "描述": {
            "type": "string",
            "maxLength": 2000
          },
          "数量": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "固定加成": {
            "type": "object",
            "properties": {
              "体魄": {
                "type": "number"
              },
              "法力": {
                "type": "number"
              },
              "神海": {
                "type": "number"
              },
              "道心": {
                "type": "number"
              },
              "空速": {
                "type": "number"
              }
            },
            "additionalProperties": false
          },
          "属性百分比": {
            "type": "object",
            "properties": {
              "体魄": {
                "type": "number"
              },
              "法力": {
                "type": "number"
              },
              "神海": {
                "type": "number"
              },
              "道心": {
                "type": "number"
              },
              "空速": {
                "type": "number"
              }
            },
            "additionalProperties": false
          },
          "附属属性": {
            "type": "object",
            "properties": {
              "魅力": {
                "type": "number"
              },
              "悟性": {
                "type": "number"
              },
              "气运": {
                "type": "number"
              }
            },
            "additionalProperties": false
          },
          "数值效果": {
            "default": [],
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "固定"
                    },
                    "数值": {
                      "type": "number"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "属性百分比"
                    },
                    "数值": {
                      "type": "string",
                      "pattern": "^[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)%$",
                      "description": "百分比使用带半角 % 的字符串，例如 \"20%\"。"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "本体效果": {
            "default": [],
            "type": "array",
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "固定"
                    },
                    "数值": {
                      "type": "number"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "目标": {
                      "type": "string",
                      "enum": [
                        "血量",
                        "体魄",
                        "法力",
                        "神海",
                        "道心",
                        "空速",
                        "法力储备"
                      ]
                    },
                    "类型": {
                      "type": "string",
                      "const": "属性百分比"
                    },
                    "数值": {
                      "type": "string",
                      "pattern": "^[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)%$",
                      "description": "百分比使用带半角 % 的字符串，例如 \"20%\"。"
                    },
                    "阶段": {
                      "default": "常态",
                      "type": "string",
                      "enum": [
                        "常态",
                        "当前"
                      ]
                    }
                  },
                  "required": [
                    "目标",
                    "类型",
                    "数值"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          },
          "词条": {
            "default": [],
            "description": "给出时整体替换词条数组，保留的词条带原 id；[] 清空。",
            "maxItems": 32,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "description": "修改已有词条填原 id；新词条省略。",
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "名称": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200,
                  "description": "词条当前名称；改名时保留原 id。"
                },
                "品阶": {
                  "default": null,
                  "description": "词条自身品阶；未分级为 null。",
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "描述": {
                  "type": "string",
                  "maxLength": 2000,
                  "description": "完整能力表现、作用范围与必要限制；数值写在数值效果。"
                },
                "数值效果": {
                  "default": [],
                  "description": "该词条当前生效的数值效果；纯描述能力填 []。",
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "目标": {
                            "type": "string",
                            "enum": [
                              "血量",
                              "体魄",
                              "法力",
                              "神海",
                              "道心",
                              "空速",
                              "法力储备"
                            ]
                          },
                          "类型": {
                            "type": "string",
                            "const": "固定"
                          },
                          "数值": {
                            "type": "number"
                          },
                          "阶段": {
                            "default": "常态",
                            "type": "string",
                            "enum": [
                              "常态",
                              "当前"
                            ]
                          }
                        },
                        "required": [
                          "目标",
                          "类型",
                          "数值"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "目标": {
                            "type": "string",
                            "enum": [
                              "血量",
                              "体魄",
                              "法力",
                              "神海",
                              "道心",
                              "空速",
                              "法力储备"
                            ]
                          },
                          "类型": {
                            "type": "string",
                            "const": "属性百分比"
                          },
                          "数值": {
                            "type": "string",
                            "pattern": "^[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+)%$",
                            "description": "百分比使用带半角 % 的字符串，例如 \"20%\"。"
                          },
                          "阶段": {
                            "default": "常态",
                            "type": "string",
                            "enum": [
                              "常态",
                              "当前"
                            ]
                          }
                        },
                        "required": [
                          "目标",
                          "类型",
                          "数值"
                        ],
                        "additionalProperties": false
                      }
                    ]
                  }
                }
              },
              "required": [
                "名称",
                "描述"
              ],
              "additionalProperties": false
            }
          },
          "可装备槽位": {
            "minItems": 1,
            "maxItems": 6,
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "主修功法",
                "辅修功法",
                "法宝",
                "武器",
                "防具",
                "饰品"
              ]
            }
          },
          "装备要求": {
            "type": "object",
            "properties": {
              "最低境界": {
                "type": "string",
                "enum": [
                  "凡人",
                  "练气",
                  "筑基",
                  "洞玄",
                  "合道",
                  "飞升"
                ]
              },
              "最低层次": {
                "type": "integer",
                "minimum": 0,
                "maximum": 9007199254740991
              }
            },
            "additionalProperties": false
          },
          "战斗招式": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 1,
                  "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$",
                  "description": "招式身份；作者填写来源键，存档实例使用 k 编号。"
                },
                "版本": {
                  "type": "number",
                  "const": 1
                },
                "名称": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "描述": {
                  "type": "string",
                  "maxLength": 2000
                },
                "配方": {
                  "type": "string",
                  "enum": [
                    "完整",
                    "体术"
                  ]
                },
                "目标": {
                  "type": "object",
                  "properties": {
                    "阵营": {
                      "type": "string",
                      "enum": [
                        "敌方",
                        "友方",
                        "自身"
                      ]
                    },
                    "范围": {
                      "type": "string",
                      "enum": [
                        "单体",
                        "邻位",
                        "全体"
                      ]
                    },
                    "主目标系数": {
                      "type": "number",
                      "minimum": 0
                    },
                    "邻位系数": {
                      "type": "number",
                      "minimum": 0
                    }
                  },
                  "required": [
                    "阵营",
                    "范围"
                  ],
                  "additionalProperties": false
                },
                "耗法灵元": {
                  "type": "number",
                  "minimum": 0
                },
                "行动秒": {
                  "type": "number",
                  "exclusiveMinimum": 0
                },
                "获得蓄势": {
                  "type": "number",
                  "minimum": 0
                },
                "随身法耗法": {
                  "type": "boolean"
                },
                "终结": {
                  "type": "object",
                  "properties": {
                    "所需蓄势": {
                      "type": "number",
                      "exclusiveMinimum": 0
                    }
                  },
                  "required": [
                    "所需蓄势"
                  ],
                  "additionalProperties": false
                },
                "施展条件": {
                  "type": "object",
                  "properties": {
                    "器物槽位": {
                      "type": "string",
                      "enum": [
                        "主修功法",
                        "辅修功法",
                        "法宝",
                        "武器",
                        "防具",
                        "饰品"
                      ]
                    },
                    "器物定义ID": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "器物槽位"
                  ],
                  "additionalProperties": false
                },
                "效果": {
                  "minItems": 1,
                  "type": "array",
                  "items": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "类型": {
                            "type": "string",
                            "const": "伤害"
                          },
                          "总系数": {
                            "type": "number",
                            "minimum": 0
                          },
                          "段数": {
                            "type": "integer",
                            "exclusiveMinimum": 0,
                            "maximum": 9007199254740991
                          },
                          "作用于": {
                            "description": "默认作用于选中目标；施术者用于命中后自疗或自身护持。",
                            "type": "string",
                            "enum": [
                              "选中目标",
                              "施术者"
                            ]
                          },
                          "条件": {
                            "description": "只检查本次出手此前实际发生的命中或护盾增加；施术者的命中后可由此前任一目标命中满足。",
                            "type": "string",
                            "enum": [
                              "命中后",
                              "获盾后"
                            ]
                          }
                        },
                        "required": [
                          "类型",
                          "总系数",
                          "段数"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "类型": {
                            "type": "string",
                            "const": "治疗"
                          },
                          "数额": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "固定"
                                  },
                                  "数值": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "接受者玩家生命点；护盾和治疗使用相同显示尺度。"
                                  }
                                },
                                "required": [
                                  "方式",
                                  "数值"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "生命比例"
                                  },
                                  "比例": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "接受者最大生命的比例；0.2 表示两成。"
                                  }
                                },
                                "required": [
                                  "方式",
                                  "比例"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "招式强度"
                                  },
                                  "配方": {
                                    "type": "string",
                                    "enum": [
                                      "完整",
                                      "体术"
                                    ]
                                  },
                                  "系数": {
                                    "type": "number",
                                    "minimum": 0
                                  }
                                },
                                "required": [
                                  "方式",
                                  "配方",
                                  "系数"
                                ],
                                "additionalProperties": false
                              }
                            ]
                          },
                          "作用于": {
                            "description": "默认作用于选中目标；施术者用于命中后自疗或自身护持。",
                            "type": "string",
                            "enum": [
                              "选中目标",
                              "施术者"
                            ]
                          },
                          "条件": {
                            "description": "只检查本次出手此前实际发生的命中或护盾增加；施术者的命中后可由此前任一目标命中满足。",
                            "type": "string",
                            "enum": [
                              "命中后",
                              "获盾后"
                            ]
                          }
                        },
                        "required": [
                          "类型",
                          "数额"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "类型": {
                            "type": "string",
                            "const": "回蓝"
                          },
                          "储备比例": {
                            "type": "number",
                            "minimum": 0,
                            "description": "恢复接受者法力储备容量的比例。"
                          },
                          "作用于": {
                            "description": "默认作用于选中目标；施术者用于命中后自疗或自身护持。",
                            "type": "string",
                            "enum": [
                              "选中目标",
                              "施术者"
                            ]
                          },
                          "条件": {
                            "description": "只检查本次出手此前实际发生的命中或护盾增加；施术者的命中后可由此前任一目标命中满足。",
                            "type": "string",
                            "enum": [
                              "命中后",
                              "获盾后"
                            ]
                          }
                        },
                        "required": [
                          "类型",
                          "储备比例"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "类型": {
                            "type": "string",
                            "const": "护盾"
                          },
                          "护盾ID": {
                            "type": "string",
                            "minLength": 1,
                            "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$"
                          },
                          "数额": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "固定"
                                  },
                                  "数值": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "接受者玩家生命点；护盾和治疗使用相同显示尺度。"
                                  }
                                },
                                "required": [
                                  "方式",
                                  "数值"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "生命比例"
                                  },
                                  "比例": {
                                    "type": "number",
                                    "minimum": 0,
                                    "description": "接受者最大生命的比例；0.2 表示两成。"
                                  }
                                },
                                "required": [
                                  "方式",
                                  "比例"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "方式": {
                                    "type": "string",
                                    "const": "招式强度"
                                  },
                                  "配方": {
                                    "type": "string",
                                    "enum": [
                                      "完整",
                                      "体术"
                                    ]
                                  },
                                  "系数": {
                                    "type": "number",
                                    "minimum": 0
                                  }
                                },
                                "required": [
                                  "方式",
                                  "配方",
                                  "系数"
                                ],
                                "additionalProperties": false
                              }
                            ]
                          },
                          "刷新": {
                            "type": "string",
                            "enum": [
                              "替换",
                              "补足"
                            ]
                          },
                          "作用于": {
                            "description": "默认作用于选中目标；施术者用于命中后自疗或自身护持。",
                            "type": "string",
                            "enum": [
                              "选中目标",
                              "施术者"
                            ]
                          },
                          "条件": {
                            "description": "只检查本次出手此前实际发生的命中或护盾增加；施术者的命中后可由此前任一目标命中满足。",
                            "type": "string",
                            "enum": [
                              "命中后",
                              "获盾后"
                            ]
                          }
                        },
                        "required": [
                          "类型",
                          "护盾ID",
                          "数额",
                          "刷新"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "类型": {
                            "type": "string",
                            "const": "承伤修正"
                          },
                          "状态ID": {
                            "type": "string",
                            "minLength": 1,
                            "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$"
                          },
                          "名称": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 200
                          },
                          "百分比": {
                            "type": "number",
                            "description": "20 表示承伤增加 20%，-20 表示减少 20%；同类来源相加，最终伤害最低为零。"
                          },
                          "持续秒": {
                            "type": "number",
                            "exclusiveMinimum": 0
                          },
                          "作用于": {
                            "description": "默认作用于选中目标；施术者用于命中后自疗或自身护持。",
                            "type": "string",
                            "enum": [
                              "选中目标",
                              "施术者"
                            ]
                          },
                          "条件": {
                            "description": "只检查本次出手此前实际发生的命中或护盾增加；施术者的命中后可由此前任一目标命中满足。",
                            "type": "string",
                            "enum": [
                              "命中后",
                              "获盾后"
                            ]
                          }
                        },
                        "required": [
                          "类型",
                          "状态ID",
                          "名称",
                          "百分比",
                          "持续秒"
                        ],
                        "additionalProperties": false
                      }
                    ]
                  }
                }
              },
              "required": [
                "id",
                "版本",
                "名称",
                "描述",
                "配方",
                "目标",
                "耗法灵元",
                "行动秒",
                "获得蓄势",
                "效果"
              ],
              "additionalProperties": false
            }
          },
          "战斗内容": {
            "type": "object",
            "properties": {
              "techniques": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128
                    },
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 80
                    },
                    "flavor": {
                      "type": "string",
                      "maxLength": 2000
                    },
                    "kind": {
                      "type": "string",
                      "enum": [
                        "basic",
                        "normal",
                        "ultimate"
                      ]
                    },
                    "tempo": {
                      "type": "string",
                      "enum": [
                        "快",
                        "常",
                        "重"
                      ]
                    },
                    "art": {
                      "type": "string",
                      "enum": [
                        "体术",
                        "法术"
                      ]
                    },
                    "nature": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "base": {
                      "type": "string",
                      "enum": [
                        "damage",
                        "shield",
                        "heal",
                        "none"
                      ]
                    },
                    "target": {
                      "type": "object",
                      "properties": {
                        "relation": {
                          "type": "string",
                          "enum": [
                            "enemy",
                            "ally",
                            "self"
                          ]
                        },
                        "shape": {
                          "type": "string",
                          "enum": [
                            "single",
                            "adjacent",
                            "all"
                          ]
                        },
                        "primaryCoefficient": {
                          "type": "number",
                          "minimum": 0
                        },
                        "adjacentCoefficient": {
                          "type": "number",
                          "minimum": 0
                        }
                      },
                      "required": [
                        "relation",
                        "shape"
                      ],
                      "additionalProperties": false
                    },
                    "mechanisms": {
                      "type": "array",
                      "items": {
                        "$ref": "#/$defs/__schema0"
                      }
                    },
                    "affixes": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 128
                          },
                          "name": {
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 80
                          },
                          "change": {
                            "oneOf": [
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "add"
                                  },
                                  "use": {
                                    "$ref": "#/$defs/__schema0"
                                  }
                                },
                                "required": [
                                  "kind",
                                  "use"
                                ],
                                "additionalProperties": false
                              },
                              {
                                "type": "object",
                                "properties": {
                                  "kind": {
                                    "type": "string",
                                    "const": "strengthen"
                                  },
                                  "useId": {
                                    "type": "string",
                                    "minLength": 1,
                                    "maxLength": 128
                                  },
                                  "params": {
                                    "type": "object",
                                    "propertyNames": {
                                      "type": "string"
                                    },
                                    "additionalProperties": {
                                      "type": [
                                        "number",
                                        "string",
                                        "boolean"
                                      ]
                                    }
                                  }
                                },
                                "required": [
                                  "kind",
                                  "useId",
                                  "params"
                                ],
                                "additionalProperties": false
                              }
                            ]
                          }
                        },
                        "required": [
                          "id",
                          "name",
                          "change"
                        ],
                        "additionalProperties": false
                      }
                    },
                    "overrides": {
                      "type": "object",
                      "properties": {
                        "coefficient": {
                          "type": "number",
                          "minimum": 0
                        },
                        "hits": {
                          "type": "integer",
                          "exclusiveMinimum": 0,
                          "maximum": 9007199254740991
                        },
                        "shield": {
                          "type": "number",
                          "minimum": 0
                        },
                        "healFraction": {
                          "type": "number",
                          "minimum": 0
                        },
                        "manaCost": {
                          "type": "number",
                          "minimum": 0
                        },
                        "seconds": {
                          "type": "number",
                          "minimum": 0
                        },
                        "energyGain": {
                          "type": "number",
                          "minimum": 0
                        },
                        "energyRequired": {
                          "type": "number",
                          "exclusiveMinimum": 0
                        },
                        "scaleCostByMovement": {
                          "type": "boolean"
                        },
                        "effects": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "useId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 128
                              },
                              "coefficient": {
                                "type": "number",
                                "minimum": 0
                              },
                              "amount": {
                                "oneOf": [
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "const": "fixed"
                                      },
                                      "value": {
                                        "type": "number",
                                        "minimum": 0
                                      },
                                      "unit": {
                                        "type": "string",
                                        "enum": [
                                          "internal",
                                          "player"
                                        ]
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "value",
                                      "unit"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "const": "capacityFraction"
                                      },
                                      "resource": {
                                        "type": "string",
                                        "enum": [
                                          "hp",
                                          "mana"
                                        ]
                                      },
                                      "fraction": {
                                        "type": "number",
                                        "minimum": 0
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "resource",
                                      "fraction"
                                    ]
                                  },
                                  {
                                    "type": "object",
                                    "properties": {
                                      "type": {
                                        "type": "string",
                                        "const": "profile"
                                      },
                                      "profileId": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 128
                                      },
                                      "coefficient": {
                                        "type": "number",
                                        "minimum": 0
                                      }
                                    },
                                    "required": [
                                      "type",
                                      "profileId",
                                      "coefficient"
                                    ]
                                  }
                                ]
                              },
                              "percent": {
                                "type": "number"
                              },
                              "durationSeconds": {
                                "anyOf": [
                                  {
                                    "type": "number",
                                    "exclusiveMinimum": 0
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "shieldId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 128
                              },
                              "refresh": {
                                "type": "string",
                                "enum": [
                                  "replace",
                                  "topUp"
                                ]
                              },
                              "statusId": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 128
                              },
                              "statusName": {
                                "type": "string"
                              },
                              "hits": {
                                "type": "integer",
                                "exclusiveMinimum": 0,
                                "maximum": 9007199254740991
                              }
                            },
                            "required": [
                              "useId"
                            ],
                            "additionalProperties": false
                          }
                        }
                      },
                      "additionalProperties": false
                    },
                    "requirements": {
                      "type": "object",
                      "properties": {
                        "slot": {
                          "type": "string"
                        },
                        "definitionId": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 128
                        }
                      },
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "flavor",
                    "kind",
                    "tempo",
                    "art",
                    "nature",
                    "base",
                    "target",
                    "mechanisms",
                    "affixes"
                  ],
                  "additionalProperties": false
                }
              },
              "passives": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128
                    },
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 80
                    },
                    "flavor": {
                      "type": "string",
                      "maxLength": 2000
                    },
                    "mechanisms": {
                      "type": "array",
                      "items": {
                        "$ref": "#/$defs/__schema0"
                      }
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "flavor",
                    "mechanisms"
                  ],
                  "additionalProperties": false
                }
              },
              "layers": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 128
                    },
                    "at": {
                      "type": "integer",
                      "exclusiveMinimum": 0,
                      "maximum": 9007199254740991
                    },
                    "grant": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "kind": {
                              "type": "string",
                              "const": "technique"
                            },
                            "techniqueId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128
                            }
                          },
                          "required": [
                            "kind",
                            "techniqueId"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "kind": {
                              "type": "string",
                              "const": "passive"
                            },
                            "passiveId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128
                            }
                          },
                          "required": [
                            "kind",
                            "passiveId"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "kind": {
                              "type": "string",
                              "const": "affix"
                            },
                            "techniqueId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128
                            },
                            "affixId": {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 128
                            }
                          },
                          "required": [
                            "kind",
                            "techniqueId",
                            "affixId"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    }
                  },
                  "required": [
                    "id",
                    "at",
                    "grant"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "techniques",
              "passives",
              "layers"
            ],
            "additionalProperties": false
          },
          "装备槽位": {
            "type": "string",
            "enum": [
              "主修功法",
              "辅修功法",
              "法宝",
              "武器",
              "防具",
              "饰品"
            ]
          }
        },
        "required": [
          "名称"
        ],
        "additionalProperties": false
      }
    },
    "关系钩子": {
      "type": "string",
      "minLength": 1
    },
    "分类": {
      "type": "string",
      "minLength": 1
    },
    "境界": {
      "type": "string",
      "enum": [
        "凡人",
        "练气",
        "筑基",
        "洞玄",
        "合道",
        "飞升"
      ]
    },
    "层次": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "开场处境": {
      "type": "string",
      "minLength": 1
    },
    "推荐地域": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 128
      }
    }
  },
  "required": [
    "品阶",
    "描述",
    "固定加成",
    "属性百分比",
    "附属属性"
  ],
  "additionalProperties": false,
  "$defs": {
    "__schema0": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "mechanismId": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "params": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": [
              "number",
              "string",
              "boolean"
            ]
          }
        },
        "hook": {
          "type": "string",
          "enum": [
            "battleStart",
            "actionStart",
            "cast",
            "hit",
            "damaged",
            "shieldGained",
            "shieldBroken",
            "actionEnd",
            "hpThresholdCrossed",
            "defeated",
            "statusApplied",
            "returned"
          ]
        },
        "target": {
          "type": "string",
          "enum": [
            "actor",
            "targets",
            "eventActor",
            "eventTarget",
            "allies",
            "enemies",
            "all"
          ]
        },
        "conditions": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "tag"
                  },
                  "target": {
                    "type": "string",
                    "enum": [
                      "actor",
                      "targets",
                      "eventActor",
                      "eventTarget",
                      "allies",
                      "enemies",
                      "all"
                    ]
                  },
                  "tag": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  },
                  "absent": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "type",
                  "target",
                  "tag"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "stacks"
                  },
                  "target": {
                    "type": "string",
                    "enum": [
                      "actor",
                      "targets",
                      "eventActor",
                      "eventTarget",
                      "allies",
                      "enemies",
                      "all"
                    ]
                  },
                  "statusId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  },
                  "atLeast": {
                    "type": "number"
                  }
                },
                "required": [
                  "type",
                  "target",
                  "statusId",
                  "atLeast"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "hp"
                  },
                  "target": {
                    "type": "string",
                    "enum": [
                      "actor",
                      "targets",
                      "eventActor",
                      "eventTarget",
                      "allies",
                      "enemies",
                      "all"
                    ]
                  },
                  "below": {
                    "type": "number"
                  }
                },
                "required": [
                  "type",
                  "target",
                  "below"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "nature"
                  },
                  "relation": {
                    "type": "string",
                    "enum": [
                      "same",
                      "different",
                      "none"
                    ]
                  }
                },
                "required": [
                  "type",
                  "relation"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "counter"
                  },
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  },
                  "atLeast": {
                    "type": "number"
                  }
                },
                "required": [
                  "type",
                  "id",
                  "atLeast"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "hit"
                  }
                },
                "required": [
                  "type"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "shieldGranted"
                  }
                },
                "required": [
                  "type"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "sameRoute"
                  }
                },
                "required": [
                  "type"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "returned"
                  }
                },
                "required": [
                  "type"
                ]
              },
              {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "const": "skillTag"
                  },
                  "tag": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 128
                  }
                },
                "required": [
                  "type",
                  "tag"
                ]
              }
            ]
          }
        },
        "attachments": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/$defs/__schema0"
              }
            ]
          }
        }
      },
      "required": [
        "id",
        "mechanismId",
        "params"
      ],
      "additionalProperties": false
    }
  }
}
