2024-09-21 17:34:33 +02:00
|
|
|
{
|
|
|
|
"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" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"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" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"towns" : {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"buildingsPerTurnCap" : { "type" : "number" },
|
|
|
|
"startingDwellingChances" : { "type" : "array" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"combat": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"goodMoraleDice" : { "type" : "array" },
|
|
|
|
"badMoraleDice" : { "type" : "array" },
|
|
|
|
"goodLuckDice" : { "type" : "array" },
|
|
|
|
"badLuckDice" : { "type" : "array" },
|
|
|
|
"backpackSize" : { "type" : "number" },
|
|
|
|
"attackPointDamageFactor" : { "type" : "number" },
|
|
|
|
"attackPointDamageFactorCap" : { "type" : "number" },
|
|
|
|
"defensePointDamageFactor" : { "type" : "number" },
|
|
|
|
"defensePointDamageFactorCap" : { "type" : "number" },
|
|
|
|
"oneHexTriggersObstacles" : { "type" : "boolean" },
|
2024-09-23 17:00:08 +02:00
|
|
|
"layouts" : { "type" : "object" },
|
|
|
|
"areaShotCanTargetEmptyHex" : { "type" : "boolean" }
|
2024-09-21 17:34:33 +02:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"creatures": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"weeklyGrowthPercent" : { "type" : "number" },
|
|
|
|
"weeklyGrowthCap" : { "type" : "number" },
|
|
|
|
"dailyStackExperience" : { "type" : "number" },
|
|
|
|
"allowRandomSpecialWeeks" : { "type" : "boolean" },
|
|
|
|
"allowAllForDoubleMonth" : { "type" : "boolean" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"dwellings": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"accumulateWhenNeutral" : { "type" : "boolean" },
|
|
|
|
"accumulateWhenOwned" : { "type" : "boolean" },
|
|
|
|
"mergeOnRecruit" : { "type" : "boolean" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"markets": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"blackMarketRestockPeriod" : { "type" : "number" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"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" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"spells": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"dimensionDoorOnlyToUncoveredTiles" : { "type" : "boolean" },
|
|
|
|
"dimensionDoorExposesTerrainType" : { "type" : "boolean" },
|
|
|
|
"dimensionDoorFailureSpendsPoints" : { "type" : "boolean" },
|
|
|
|
"dimensionDoorTriggersGuards" : { "type" : "boolean" },
|
|
|
|
"dimensionDoorTournamentRulesLimit" : { "type" : "boolean" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"bonuses": {
|
|
|
|
"type" : "object",
|
|
|
|
"additionalProperties" : false,
|
|
|
|
"properties" : {
|
|
|
|
"global" : { "type" : "object" },
|
|
|
|
"perHero" : { "type" : "object" }
|
|
|
|
}
|
|
|
|
},
|
|
|
|
}
|
|
|
|
}
|