| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359 |
- // This is schema for checking game settings from settings.json
- // Any new settings should be added in this file for correct serialization and initialization
- {
- "type" : "object",
- "$schema": "http://json-schema.org/draft-04/schema",
- "required" : [ "general", "video", "adventure", "pathfinder", "battle", "server", "logging", "launcher" ],
- "definitions" : {
- "logLevelEnum" : {
- "type" : "string",
- "enum" : [ "trace", "debug", "info", "warn", "error" ]
- }
- },
- "additionalProperties" : false,
- "properties":
- {
- "general" : {
- "type" : "object",
- "default": {},
- "additionalProperties" : false,
- "required" : [ "playerName", "showfps", "music", "sound", "encoding", "swipe", "saveRandomMaps" ],
- "properties" : {
- "playerName" : {
- "type":"string",
- "default" : "Player"
- },
- "showfps" : {
- "type" : "boolean",
- "default" : false
- },
- "music" : {
- "type" : "number",
- "default" : 88
- },
- "sound" : {
- "type" : "number",
- "default" : 88
- },
- "encoding" : {
- "type" : "string",
- "default" : "CP1252"
- },
- "swipe" : {
- "type" : "boolean",
- "default" : true
- },
- "saveRandomMaps" : {
- "type" : "boolean",
- "default" : false
- }
- }
- },
- "video" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "screenRes", "bitsPerPixel", "fullscreen", "realFullscreen", "spellbookAnimation","driver", "showIntro", "displayIndex" ],
- "properties" : {
- "screenRes" : {
- "type" : "object",
- "additionalProperties" : false,
- "required" : [ "width", "height" ],
- "properties" : {
- "width" : { "type" : "number" },
- "height" : { "type" : "number" }
- },
- "default": {"width" : 800, "height": 600 }
- },
- "bitsPerPixel" : {
- "type" : "number",
- "default" : 32
- },
- "fullscreen": {
- "type": "boolean",
- "default": false
- },
- "realFullscreen" : {
- "type" : "boolean",
- "default" : false
- },
- "showIntro" : {
- "type" : "boolean",
- "default" : true
- },
- "spellbookAnimation" : {
- "type" : "boolean",
- "default" : true
- },
- "driver":{
- "type" : "string",
- "default" : "opengl",
- "description" : "preferred graphics backend driver name for SDL2"
- },
- "displayIndex" : {
- "type" : "number",
- "default" : 0
- }
- }
- },
- "adventure" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "heroSpeed", "enemySpeed", "scrollSpeed", "heroReminder", "quickCombat" ],
- "properties" : {
- "heroSpeed" : {
- "type" : "number",
- "default" : 2
- },
- "enemySpeed" : {
- "type" : "number",
- "default" : 2
- },
- "scrollSpeed" : {
- "type" : "number",
- "default" : 1
- },
- "heroReminder" : {
- "type" : "boolean",
- "default" : true
- },
- "quickCombat" : {
- "type" : "boolean",
- "default" : false
- }
- }
- },
- "pathfinder" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "teleports", "layers", "oneTurnSpecialLayersLimit", "originalMovementRules", "lightweightFlyingMode" ],
- "properties" : {
- "layers" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "sailing", "waterWalking", "flying" ],
- "properties" : {
- "sailing" : {
- "type" : "boolean",
- "default" : true
- },
- "waterWalking" : {
- "type" : "boolean",
- "default" : true
- },
- "flying" : {
- "type" : "boolean",
- "default" : true
- }
- }
- },
- "teleports" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "twoWay", "oneWay", "oneWayRandom", "whirlpool", "castleGate" ],
- "properties" : {
- "twoWay" : {
- "type" : "boolean",
- "default" : true
- },
- "oneWay" : {
- "type" : "boolean",
- "default" : true
- },
- "oneWayRandom" : {
- "type" : "boolean",
- "default" : false
- },
- "whirlpool" : {
- "type" : "boolean",
- "default" : true
- },
- "castleGate" : {
- "type" : "boolean",
- "default" : false
- }
- }
- },
- "oneTurnSpecialLayersLimit" : {
- "type" : "boolean",
- "default" : true
- },
- "originalMovementRules" : {
- "type" : "boolean",
- "default" : false
- },
- "lightweightFlyingMode" : {
- "type" : "boolean",
- "default" : false
- }
- }
- },
- "battle" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "animationSpeed", "mouseShadow", "cellBorders", "stackRange", "showQueue" ],
- "properties" : {
- "animationSpeed" : {
- "type" : "number",
- "default" : 0.63
- },
- "mouseShadow" : {
- "type":"boolean",
- "default" : true
- },
- "cellBorders" : {
- "type" : "boolean",
- "default" : false
- },
- "stackRange" : {
- "type" : "boolean",
- "default" : true
- },
- "showQueue" : {
- "type" : "boolean",
- "default" : true
- }
- }
- },
- "server" : {
- "type" : "object",
- "additionalProperties" : false,
- "default": {},
- "required" : [ "server", "port", "localInformation", "playerAI", "friendlyAI","neutralAI", "enemyAI" ],
- "properties" : {
- "server" : {
- "type":"string",
- "default" : "127.0.0.1"
- },
- "port" : {
- "type" : "number",
- "default" : 3030
- },
- "localInformation" : {
- "type" : "number",
- "default" : 2
- },
- "playerAI" : {
- "type" : "string",
- "default" : "VCAI"
- },
- "friendlyAI" : {
- "type" : "string",
- "default" : "BattleAI"
- },
- "neutralAI" : {
- "type" : "string",
- "default" : "StupidAI"
- },
- "enemyAI" : {
- "type" : "string",
- "default" : "BattleAI"
- }
- }
- },
- "logging" : {
- "type" : "object",
- "additionalProperties" : false,
- "default" : {},
- "required" : [ "console", "file", "loggers" ],
- "properties" : {
- "console" : {
- "type" : "object",
- "default" : {},
- "required" : [ "format", "threshold", "coloredOutputEnabled", "colorMapping" ],
- "properties" : {
- "format" : {
- "type" : "string",
- "default" : "%m"
- },
- "threshold" : {
- "$ref" : "#/definitions/logLevelEnum",
- "default" : "info"
- },
- "coloredOutputEnabled" : {
- "type" : "boolean",
- "default" : true
- },
- "colorMapping" : {
- "type" : "array",
- "default" : [
- { "domain" : "global", "level" : "trace", "color" : "gray"},
- { "domain" : "global", "level" : "debug", "color" : "white"},
- { "domain" : "global", "level" : "info", "color" : "green"},
- { "domain" : "global", "level" : "warn", "color" : "yellow"},
- { "domain" : "global", "level" : "error", "color" : "red"}
- ],
- "items" : {
- "type" : "object",
- "additionalProperties" : false,
- "default" : {},
- "required" : [ "domain", "level", "color" ],
- "properties" : {
- "domain" : { "type" : "string" },
- "level" : { "$ref" : "#/definitions/logLevelEnum" },
- "color" : { "type" : "string", "enum" : [ "default", "green", "red", "magenta", "yellow", "white", "gray", "teal" ] }
- }
- }
- }
- }
- },
- "file" : {
- "type" : "object",
- "additionalProperties" : false,
- "default" : {},
- "required" : [ "format" ],
- "properties" : {
- "format" : {
- "type" : "string",
- "default" : "%d %l %n [%t] - %m"
- }
- }
- },
- "loggers" : {
- "type" : "array",
- "default" : [ { "domain" : "global", "level" : "trace" } ],
- "items" : {
- "type" : "object",
- "additionalProperties" : false,
- "required" : [ "level", "domain" ],
- "properties" : {
- "domain" : { "type" : "string" },
- "level" : { "$ref" : "#/definitions/logLevelEnum" }
- }
- }
- }
- }
- },
- "launcher" : {
- "type" : "object",
- "default": {},
- "additionalProperties" : false,
- "required" : [ "repositoryURL", "enableInstalledMods", "autoCheckRepositories" ],
- "properties" : {
- "repositoryURL" : {
- "type" : "array",
- "default" : [
- "http://download.vcmi.eu/mods/repository/repository.json"
- ],
- "items" : {
- "type" : "string"
- },
- },
- "enableInstalledMods" : {
- "type" : "boolean",
- "default" : true
- },
- "autoCheckRepositories" : {
- "type" : "boolean",
- "default" : true
- }
- }
- }
- }
- }
|