{ "type" : "object", "$schema" : "http://json-schema.org/draft-04/schema", "title" : "VCMI game settings format", "description" : "Format used to define game settings in VCMI", "additionalProperties" : false, "properties" : { "textData" : { "type" : "object", "additionalProperties" : false, "properties" : { "heroClass" : { "type" : "number" }, "artifact" : { "type" : "number" }, "creature" : { "type" : "number" }, "faction" : { "type" : "number" }, "hero" : { "type" : "number" }, "spell" : { "type" : "number" }, "object" : { "type" : "number" }, "terrain" : { "type" : "number" }, "river" : { "type" : "number" }, "road" : { "type" : "number" } } }, "mapFormat" : { "type" : "object", "additionalProperties" : false, "properties" : { "restorationOfErathia" : { "type" : "object" }, "armageddonsBlade" : { "type" : "object" }, "shadowOfDeath" : { "type" : "object" }, "chronicles" : { "type" : "object" }, "jsonVCMI" : { "type" : "object" }, "hornOfTheAbyss" : { "type" : "object" }, "inTheWakeOfGods" : { "type" : "object" } } }, "general": { "type" : "object", "additionalProperties" : false, "properties" : { "daysPerWeek" : { "type" : "number" }, "weeksPerMonth" : { "type" : "number" } } }, "heroes" : { "type" : "object", "additionalProperties" : false, "properties" : { "perPlayerOnMapCap" : { "type" : "number" }, "perPlayerTotalCap" : { "type" : "number" }, "retreatOnWinWithoutTroops" : { "type" : "boolean" }, "startingStackChances" : { "type" : "array" }, "backpackSize" : { "type" : "number" }, "tavernInvite" : { "type" : "boolean" }, "minimalPrimarySkills" : { "type" : "array" }, "movementCostBase" : { "type" : "number" }, "movementPointsLand" : { "type" : "array" }, "movementPointsSea" : { "type" : "array" }, "skillPerHero" : { "type" : "number" }, "specialtyCreatureGrowth" : { "type" : "number" }, "specialtySecondarySkillGrowth" : { "type" : "number" }, "baseScoutingRange" : { "type" : "number" }, "levelupTotalSkillsAmount" : { "type" : "number" }, "levelupUpgradedSkillsAmount" : { "type" : "number" } } }, "towns" : { "type" : "object", "additionalProperties" : false, "properties" : { "buildingsPerTurnCap" : { "type" : "number" }, "startingDwellingChances" : { "type" : "array" }, "spellResearch" : { "type" : "boolean" }, "spellResearchCost" : { "type" : "array" }, "spellResearchPerDay" : { "type" : "array" }, "spellResearchCostMultiplierPerResearch" : { "type" : "array" }, "spellResearchCostMultiplierPerReroll" : { "type" : "array" }, "baseScoutingRange" : { "type" : "number" } } }, "campaign": { "type" : "object", "additionalProperties" : false, "properties" : { "unlockAll" : { "type" : "boolean" } } }, "cheats": { "type" : "object", "additionalProperties" : false, "properties" : { "buildWithoutGrail" : { "type" : "boolean" } } }, "combat": { "type" : "object", "additionalProperties" : false, "properties" : { "abilityBias" : { "type" : "number" }, "goodMoraleChance" : { "type" : "array" }, "badMoraleChance" : { "type" : "array" }, "moraleDiceSize" : { "type" : "number" }, "moraleBias" : { "type" : "number" }, "goodLuckChance" : { "type" : "array" }, "badLuckChance" : { "type" : "array" }, "luckDiceSize" : { "type" : "number" }, "luckBias" : { "type" : "number" }, "backpackSize" : { "type" : "number" }, "attackPointDamageFactor" : { "type" : "number" }, "attackPointDamageFactorCap" : { "type" : "number" }, "defensePointDamageFactor" : { "type" : "number" }, "defensePointDamageFactorCap" : { "type" : "number" }, "oneHexTriggersObstacles" : { "type" : "boolean" }, "layouts" : { "type" : "object" }, "areaShotCanTargetEmptyHex" : { "type" : "boolean" }, "noSpellHitAndRunRounds" : { "type" : "number" } } }, "creatures": { "type" : "object", "additionalProperties" : false, "properties" : { "weeklyGrowthPercent" : { "type" : "number" }, "weeklyGrowthCap" : { "type" : "number" }, "additionalWeeklyGrowthSpecialWeek" : { "type" : "number" }, "monthDoubleGrowthProbability" : { "type" : "number" }, "monthPlagueProbability" : { "type" : "number" }, "weekSpecialProbability" : { "type" : "number" }, "dailyStackExperience" : { "type" : "number" }, "allowRandomSpecialWeeks" : { "type" : "boolean" }, "allowAllForDoubleMonth" : { "type" : "boolean" }, "allowJoiningForFree" : { "type" : "boolean" }, "joiningPercentage" : { "type" : "number" } } }, "dwellings": { "type" : "object", "additionalProperties" : false, "properties" : { "accumulateWhenNeutral" : { "type" : "boolean" }, "accumulateWhenOwned" : { "type" : "boolean" }, "mergeOnRecruit" : { "type" : "boolean" } } }, "markets": { "type" : "object", "additionalProperties" : false, "properties" : { "blackMarketRestockPeriod" : { "type" : "number" }, "universityGoldCost" : { "type" : "number" } } }, "mapObjects": { "type" : "object", "additionalProperties" : false, "properties" : { "h3BugQuestTakesEntireArmy" : { "type" : "boolean" } } }, "banks": { "type" : "object", "additionalProperties" : false, "properties" : { "showGuardsComposition" : { "type" : "boolean" } } }, "modules": { "type" : "object", "additionalProperties" : false, "properties" : { "stackExperience" : { "type" : "boolean" }, "stackArtifact" : { "type" : "boolean" }, "commanders" : { "type" : "boolean" } } }, "pathfinder": { "type" : "object", "additionalProperties" : false, "properties" : { "ignoreGuards" : { "type" : "boolean" }, "useBoat" : { "type" : "boolean" }, "useMonolithTwoWay" : { "type" : "boolean" }, "useMonolithOneWayUnique" : { "type" : "boolean" }, "useMonolithOneWayRandom" : { "type" : "boolean" }, "useWhirlpool" : { "type" : "boolean" }, "originalFlyRules" : { "type" : "boolean" } } }, "resources": { "type" : "object", "additionalProperties" : false, "properties" : { "weeklyBonusesAI" : { "type" : "object" } } }, "spells": { "type" : "object", "additionalProperties" : false, "properties" : { "dimensionDoorTriggersGuards" : { "type" : "boolean" }, "tomesGrantBannedSpells" : { "type" : "boolean" } } }, "bonuses": { "type" : "object", "additionalProperties" : false, "properties" : { "global" : { "type" : "object" }, "perHero" : { "type" : "object" } } }, "interface": { "type" : "object", "additionalProperties" : false, "properties" : { "playerColoredBackground" : { "type" : "object" } } } } }