mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-26 22:57:00 +02:00
9237e6d97d
- split JsonNode.cpp into JsonNode and JsonDetail files - validation should be notably faster (at least 10% faster loading) - support for "format" field, allows checking existance of files. - minor fixes in schemas - msk/msg files are now optional
101 lines
2.7 KiB
JSON
101 lines
2.7 KiB
JSON
{
|
|
"type":"object",
|
|
"$schema": "http://json-schema.org/draft-04/schema",
|
|
"title" : "VCMI mod file format",
|
|
"description" : "Format used to define main mod file (mod.json) in VCMI",
|
|
"required" : [ "name", "description", "version", "author", "contact", "modType" ],
|
|
|
|
"additionalProperties" : false,
|
|
"properties":{
|
|
"name": {
|
|
"type":"string",
|
|
"description": "Short name of your mod. No more than 2-3 words"
|
|
},
|
|
"description": {
|
|
"type":"string",
|
|
"description": "More lengthy description of mod. No hard limit"
|
|
},
|
|
|
|
"modType" : {
|
|
"type":"string",
|
|
"description": "Type of mod, e.g. Town, Artifacts, Graphical."
|
|
},
|
|
|
|
"version" : {
|
|
"type":"string",
|
|
"description": "Current mod version, up to 3 numbers, dot-separated. Format: A.B.C"
|
|
},
|
|
|
|
"author" : {
|
|
"type":"string",
|
|
"description": "Author of the mod. Can be nickname, real name or name of team"
|
|
},
|
|
|
|
"contact" : {
|
|
"type":"string",
|
|
"description": "Home page of mod or link to forum thread"
|
|
},
|
|
|
|
"depends": {
|
|
"type":"array",
|
|
"description": "List of mods that are required to run this one",
|
|
"items": { "type":"string" }
|
|
},
|
|
"conflicts": {
|
|
"type":"array",
|
|
"description": "List of mods that can't be enabled in the same time as this one",
|
|
"items": { "type":"string" }
|
|
},
|
|
|
|
"artifacts": {
|
|
"type":"array",
|
|
"description": "List of configuration files for artifacts",
|
|
"items": { "type":"string", "format" : "textFile" }
|
|
},
|
|
"creatures": {
|
|
"type":"array",
|
|
"description": "List of configuration files for creatures",
|
|
"items": { "type":"string", "format" : "textFile" }
|
|
},
|
|
"factions": {
|
|
"type":"array",
|
|
"description": "List of configuration files for towns/factions",
|
|
"items": { "type":"string", "format" : "textFile" }
|
|
},
|
|
"heroClasses": {
|
|
"type":"array",
|
|
"description": "List of configuration files for hero classes",
|
|
"items": { "type":"string", "format" : "textFile" }
|
|
},
|
|
"heroes": {
|
|
"type":"array",
|
|
"description": "List of configuration files for heroes",
|
|
"items": { "type":"string", "format" : "textFile" }
|
|
},
|
|
|
|
"filesystem": {
|
|
"type":"object",
|
|
"description": "Optional, description on how files are organized in your mod. In most cases you do not need to use this field",
|
|
"additionalProperties":{
|
|
"type":"array",
|
|
"description" : "list of data sources attached to this mount point",
|
|
"items": {
|
|
"type":"object",
|
|
"additionalProperties" : false,
|
|
"properties":{
|
|
"path": {
|
|
"type":"string",
|
|
"description": "Path to data source"
|
|
},
|
|
"type": {
|
|
"type" : "string",
|
|
"enum" : [ "dir", "lod", "snd", "vid", "map", "zip" ],
|
|
"description" : "Type of data source"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|