1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-10 09:50:17 +02:00
vcmi/config/schemas/template.json

90 lines
1.9 KiB
JSON
Raw Normal View History

{
"type":"object",
"$schema": "",
"title" : "VCMI random map template format",
"description" : "Format used to define random map templates in VCMI",
"definitions" :
{
"zone":{
"type": "object",
"required" : ["type", "monsters", "size"],
"properties":{
"type":{"$ref" : "#/definitions/type"},
"size":{"$ref" : "#/definitions/size"},
"playerTowns":{"$ref" : "#/definitions/playerTowns"},
"neuralTowns":{"$ref" : "#/definitions/neuralTowns"},
"townsAreSameType":{"$ref" : "#/definitions/townsAreSameType"},
"monsters":{"$ref" : "#/definitions/monsters"},
"mines":{"$ref" : "#/definitions/mines"},
"treasure":{
"type":"array",
"items":{
"type": "object",
"properties":{
"min": {"type":"number", "minimum" : 0},
"max": {"type":"number", "minimum" : 0},
"density": {"type":"number", "minimum" : 1}
},
"additionalProperties" : false
}
}
}
},
"type" :{
"enum": ["playerStart", "cpuStart", "treasure", "junction"],
"additionalProperties" : false,
"type":"string"
},
"size":{
"type": "number",
"minimum": 1,
"additionalProperties" : false,
},
2015-06-02 15:26:33 +02:00
"connection":
{
"required": ["a", "b", "guard"],
"properties":{
2015-06-02 15:26:33 +02:00
"a":{
"type" : "string"
},
"b":{
"type" : "string"
},
"guard":
{
"type": "number",
"minimum" : 0
}
}
},
"waterContent":
{
"enum": ["none", "normal", "islands"],
"additionalProperties" : false,
"type": "string"
2015-06-02 15:26:33 +02:00
}
},
"properties":
{
"zones":{
"type": "object",
"additionalProperties":{"$ref" : "#/definitions/zone" }
},
"connections":{
"type": "array",
"items":{"$ref" : "#/definitions/connection"}
},
"allowedWaterContent": {
"type": "array",
"items": {"$ref" : "#/definitions/waterContent"}
},
"required" : ["zones", "connections"],
"additionalProperties" : false
}
}