1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-14 10:12:59 +02:00
vcmi/config/schemas/skill.json
2024-11-23 12:37:30 +01:00

103 lines
2.6 KiB
JSON

{
"type" : "object",
"$schema" : "http://json-schema.org/draft-04/schema",
"title" : "VCMI skill format",
"description" : "Format used to replace bonuses provided by secondary skills in VCMI",
"definitions" : {
"skillBonus" : {
"type" : "object",
"description" : "Set of bonuses provided by skill at given level",
"required" : ["description", "effects"],
"properties" : {
"description" : {
"type" : "string",
"description" : "localizable description"
},
"images" : {
"type" : "object",
"description" : "Skill icons of varying size",
"properties" : {
"small" : {
"type" : "string",
"description" : "32x32 skill icon",
"format" : "imageFile"
},
"medium" : {
"type" : "string",
"description" : "44x44 skill icon",
"format" : "imageFile"
},
"large" : {
"type" : "string",
"description" : "82x93 skill icon",
"format" : "imageFile"
}
}
},
"effects" : {
"type" : "object",
"additionalProperties" : {
"$ref" : "bonus.json"
}
}
}
}
},
"required" : ["name", "basic", "advanced", "expert"],
"properties" : {
"name" : {
"type" : "string",
"description" : "Mandatory, localizable skill name"
},
"index" : {
"type" : "number",
"description" : "Internal, numeric id of skill, required for existing skills"
},
"obligatoryMajor" : {
"type" : "boolean",
"description" : "This skill is major obligatory (like H3 Wisdom)"
},
"obligatoryMinor" : {
"type" : "boolean",
"description" : "This skill is minor obligatory (like H3 Magic school)"
},
"gainChance" : {
"description" : "Chance for the skill to be offered on level-up (heroClass may override)",
"type" : "object",
"required" : ["might", "magic"],
"properties" : {
"might" : {
"type" : "number",
"description" : "Chance for hero classes with might affinity"
},
"magic" : {
"type" : "number",
"description" : "Chance for hero classes with magic affinity"
}
}
},
"base" : {
"type" : "object",
"description" : "will be merged with all levels",
"additionalProperties" : true
},
"basic" : {
"$ref" : "#/definitions/skillBonus"
},
"advanced" : {
"$ref" : "#/definitions/skillBonus"
},
"expert" : {
"$ref" : "#/definitions/skillBonus"
}
},
"onlyOnWaterMap" : {
"type" : "boolean",
"description" : "It true, skill won't be available on a map without water"
},
"special" : {
"type" : "boolean",
"description" : "If true, skill is not available on maps at random"
}
}