mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-28 23:06:24 +02:00
141 lines
3.1 KiB
JSON
141 lines
3.1 KiB
JSON
{
|
|
"type":"object",
|
|
"$schema": "http://json-schema.org/draft-04/schema",
|
|
"title" : "VCMI terrain format",
|
|
"description" : "Format used to define new terrains in VCMI",
|
|
"required" : [ "text", "moveCost", "minimapUnblocked", "minimapBlocked", "music", "tiles", "type", "horseSound", "horseSoundPenalty", "shortIdentifier", "battleFields" ],
|
|
|
|
"additionalProperties" : false,
|
|
"properties":{
|
|
"index" :
|
|
{
|
|
"type": "number",
|
|
"description": "Internal, do not use"
|
|
},
|
|
"text":
|
|
{
|
|
"type": "string",
|
|
"description": "Human-readable name of this terrain"
|
|
},
|
|
"moveCost":
|
|
{
|
|
"type": "number",
|
|
"description": "How many movement points needed to move hero"
|
|
},
|
|
"minimapUnblocked":
|
|
{
|
|
"type": "array",
|
|
"description": "Color of terrain on minimap without unpassable objects",
|
|
"minItems": 3,
|
|
"maxItems": 3,
|
|
"items":
|
|
{
|
|
"type": "number"
|
|
}
|
|
},
|
|
"minimapBlocked":
|
|
{
|
|
"type": "array",
|
|
"description": "Color of terrain on minimap with unpassable objects",
|
|
"minItems": 3,
|
|
"maxItems": 3,
|
|
"items":
|
|
{
|
|
"type": "number"
|
|
}
|
|
},
|
|
"music":
|
|
{
|
|
"type": "string",
|
|
"description": "Music filename to play on this terrain on adventure map"
|
|
},
|
|
"tiles":
|
|
{
|
|
"type": "string",
|
|
"description": "Name of file with graphicks",
|
|
"format": "defFile"
|
|
},
|
|
"type":
|
|
{
|
|
"type": "array",
|
|
"description": "Type of this terrain. Can be land, water, subterranean or rock",
|
|
"items":
|
|
{
|
|
"enum": ["LAND", "WATER", "SUB", "ROCK", "SURFACE"],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"rockTerrain":
|
|
{
|
|
"type": "string",
|
|
"description": "The name of rock type terrain which will be used as borders in the underground"
|
|
},
|
|
"river":
|
|
{
|
|
"type": "string",
|
|
"description": "River type which should be used for that terrain"
|
|
},
|
|
"horseSound":
|
|
{
|
|
"type": "string",
|
|
"description": "Hero movement sound for this terrain, version for moving on tiles with road"
|
|
},
|
|
"horseSoundPenalty":
|
|
{
|
|
"type": "string",
|
|
"description": "Hero movement sound for this terrain, version for moving on tiles without road"
|
|
},
|
|
"shortIdentifier":
|
|
{
|
|
"type": "string",
|
|
"description": "Two-letters unique indentifier for this terrain. Used for map format"
|
|
},
|
|
"battleFields":
|
|
{
|
|
"type": "array",
|
|
"description": "array of battleFields for this terrain",
|
|
"items":
|
|
{
|
|
"type": "string"
|
|
}
|
|
},
|
|
"sounds":
|
|
{
|
|
"type": "object",
|
|
"description": "list of sounds for this terrain",
|
|
"additionalProperties" : false,
|
|
"properties":
|
|
{
|
|
"ambient" :
|
|
{
|
|
"type": "array",
|
|
"description": "list of ambient sounds for this terrain",
|
|
"items":
|
|
{
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"prohibitTransitions":
|
|
{
|
|
"type": "array",
|
|
"description": "array or terrain names, which is prohibited to make transition from/to",
|
|
"items":
|
|
{
|
|
"type": "string"
|
|
}
|
|
},
|
|
"transitionRequired":
|
|
{
|
|
"type": "boolean",
|
|
"description": "If sand/dirt transition required from/to other terrains"
|
|
},
|
|
"terrainViewPatterns":
|
|
{
|
|
"type": "string",
|
|
"description": "Can be normal, dirt, water, rock"
|
|
}
|
|
}
|
|
}
|