gameConfig.json 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845
  1. {
  2. "factions" :
  3. [
  4. "config/factions/castle.json",
  5. "config/factions/rampart.json",
  6. "config/factions/tower.json",
  7. "config/factions/necropolis.json",
  8. "config/factions/inferno.json",
  9. "config/factions/dungeon.json",
  10. "config/factions/stronghold.json",
  11. "config/factions/fortress.json",
  12. "config/factions/conflux.json",
  13. "config/factions/neutral.json"
  14. ],
  15. "creatures" :
  16. [
  17. "config/creatures/castle.json",
  18. "config/creatures/rampart.json",
  19. "config/creatures/tower.json",
  20. "config/creatures/necropolis.json",
  21. "config/creatures/inferno.json",
  22. "config/creatures/dungeon.json",
  23. "config/creatures/stronghold.json",
  24. "config/creatures/fortress.json",
  25. "config/creatures/conflux.json",
  26. "config/creatures/neutral.json",
  27. "config/creatures/special.json"
  28. ],
  29. "heroes" :
  30. [
  31. "config/heroes/castle.json",
  32. "config/heroes/rampart.json",
  33. "config/heroes/tower.json",
  34. "config/heroes/necropolis.json",
  35. "config/heroes/inferno.json",
  36. "config/heroes/dungeon.json",
  37. "config/heroes/stronghold.json",
  38. "config/heroes/fortress.json",
  39. "config/heroes/conflux.json",
  40. "config/heroes/special.json",
  41. "config/heroes/portraits.json"
  42. ],
  43. "objects" :
  44. [
  45. "config/objects/cartographer.json",
  46. "config/objects/coverOfDarkness.json",
  47. "config/objects/creatureBanks.json",
  48. "config/objects/dwellings.json",
  49. "config/objects/generic.json",
  50. "config/objects/lighthouse.json",
  51. "config/objects/magicSpring.json",
  52. "config/objects/magicWell.json",
  53. "config/objects/markets.json",
  54. "config/objects/moddables.json",
  55. "config/objects/observatory.json",
  56. "config/objects/pyramid.json",
  57. "config/objects/rewardableBonusing.json",
  58. "config/objects/rewardableOncePerHero.json",
  59. "config/objects/rewardableOncePerWeek.json",
  60. "config/objects/rewardableOnceVisitable.json",
  61. "config/objects/rewardablePickable.json",
  62. "config/objects/scholar.json",
  63. "config/objects/shrine.json",
  64. "config/objects/witchHut.json"
  65. ],
  66. "biomes" :
  67. [
  68. "config/biomes.json"
  69. ],
  70. "artifacts" :
  71. [
  72. "config/artifacts.json"
  73. ],
  74. "heroClasses" :
  75. [
  76. "config/heroClasses.json"
  77. ],
  78. "bonuses" :
  79. [
  80. "config/bonuses.json"
  81. ],
  82. "spells" :
  83. [
  84. "config/spells/adventure.json",
  85. "config/spells/offensive.json",
  86. "config/spells/other.json",
  87. "config/spells/timed.json",
  88. "config/spells/ability.json",
  89. "config/spells/vcmiAbility.json",
  90. "config/spells/moats.json"
  91. ],
  92. "spellSchools" :
  93. [
  94. "config/spellSchools.json"
  95. ],
  96. "skills" :
  97. [
  98. "config/skills.json"
  99. ],
  100. "terrains":
  101. [
  102. "config/terrains.json"
  103. ],
  104. "roads":
  105. [
  106. "config/roads.json"
  107. ],
  108. "rivers":
  109. [
  110. "config/rivers.json"
  111. ],
  112. "battlefields":
  113. [
  114. "config/battlefields.json"
  115. ],
  116. "obstacles":
  117. [
  118. "config/obstacles.json"
  119. ],
  120. "campaignRegions" :
  121. [
  122. "config/campaignRegions.json"
  123. ],
  124. "settings":
  125. {
  126. // Number of entries of each type to load from Heroes III text files
  127. "textData" :
  128. {
  129. "heroClass" : 18,
  130. "artifact" : 144,
  131. "creature" : 150,
  132. "faction" : 9,
  133. "hero" : 156,
  134. "spell" : 81,
  135. "object" : 256,
  136. "terrain" : 10,
  137. "river" : 5,
  138. "road" : 4
  139. },
  140. "mapFormat" : {
  141. "restorationOfErathia" : {
  142. "supported" : true,
  143. "iconIndex" : 0,
  144. "settings": {
  145. "spells": {
  146. "tomesGrantBannedSpells" : true
  147. }
  148. },
  149. "buildingsCommon": {
  150. "townHall" : 0,
  151. "cityHall" : 1,
  152. "capitol" : 2,
  153. "fort" : 3,
  154. "citadel" : 4,
  155. "castle" : 5,
  156. "tavern" : 6,
  157. "blacksmith" : 7,
  158. "marketplace" : 8,
  159. "resourceSilo" : 9,
  160. "mageGuild1" : 11,
  161. "mageGuild2" : 12,
  162. "mageGuild3" : 13,
  163. "mageGuild4" : 14,
  164. "mageGuild5" : 15,
  165. "shipyard" : 16,
  166. "grail" : 17,
  167. "dwellingLvl1" : 22,
  168. "dwellingUpLvl1" : 23,
  169. "horde1" : 24,
  170. "dwellingLvl2" : 25,
  171. "dwellingUpLvl2" : 26,
  172. "horde2" : 27,
  173. "dwellingLvl3" : 28,
  174. "dwellingUpLvl3" : 29,
  175. "horde3" : 30,
  176. "dwellingLvl4" : 31,
  177. "dwellingUpLvl4" : 32,
  178. "horde4" : 33,
  179. "dwellingLvl5" : 34,
  180. "dwellingUpLvl5" : 35,
  181. "horde5" : 36,
  182. "dwellingLvl6" : 37,
  183. "dwellingUpLvl6" : 38,
  184. "dwellingLvl7" : 39,
  185. "dwellingUpLvl7" : 40
  186. },
  187. "buildings" : {
  188. "castle" : {
  189. "special1" : 18, // lighthouse
  190. "special2" : 20, // stables
  191. "special3" : 19 // brotherhoodOfSword
  192. },
  193. "rampart" : {
  194. "special1" : 18, // mysticPond
  195. "special2" : 19, // fountainOfFortune
  196. "special3" : 20 // treasury
  197. },
  198. "tower" : {
  199. "special1" : 10, // artifactMerchants
  200. "special2" : 20, // lookoutTower
  201. "special3" : 18, // library
  202. "special4" : 19 // wallOfKnowledge
  203. },
  204. "inferno" : {
  205. "special2" : 18, // brimstoneStormclouds
  206. "special3" : 19, // castleGate
  207. "special4" : 20 // orderOfFire
  208. },
  209. "necropolis" : {
  210. "special1" : 18, // coverOfDarkness
  211. "special2" : 19, // necromancyAmplifier
  212. "special3" : 20 // skeletonTransformer
  213. },
  214. "dungeon" : {
  215. "special1" : 10, // artifactMerchants
  216. "special2" : 18, // manaVortex
  217. "special3" : 19, // portalOfSummoning
  218. "special4" : 20 // battleScholarAcademy
  219. },
  220. "stronghold" : {
  221. "special1" : 18, // escapeTunnel
  222. "special2" : 19, // freelancersGuild
  223. "special3" : 20, // ballistaYard
  224. "special4" : 21 // hallOfValhalla
  225. },
  226. "fortress" : {
  227. "special1" : 20, // cageOfWarlords
  228. "special2" : 19, // bloodObelisk
  229. "special3" : 18 // glyphsOfFear
  230. }
  231. },
  232. "portraits" : {
  233. "catherine" : 128, // In "RoE" Catherine only has portrait
  234. "portraitGeneralKendal" : 129
  235. },
  236. "campaignRegions" : {
  237. "good1" : 1, // Long Live the Queen
  238. "good2" : 2, // Liberation
  239. "good3" : 3, // Song for the Father
  240. "evil1" : 4, // Dungeons and devils
  241. "evil2" : 5, // Long Live the King
  242. "neutral1" : 6, // Spoils of War
  243. "secret1" : 7 // Seeds Of Discontent
  244. },
  245. "campaignMusic" : {
  246. "CampainMusic01" : 0,
  247. "CampainMusic02" : 1,
  248. "CampainMusic03" : 2,
  249. "CampainMusic04" : 3,
  250. "CampainMusic05" : 4,
  251. "CampainMusic06" : 5,
  252. "CampainMusic07" : 6,
  253. "CampainMusic08" : 7,
  254. "CampainMusic09" : 8,
  255. "AiTheme0" : 9,
  256. "AiTheme1" : 10,
  257. "AiTheme2" : 11,
  258. "Combat01" : 12,
  259. "Combat02" : 13,
  260. "Combat03" : 14,
  261. "Combat04" : 15,
  262. "CstleTown" : 16,
  263. "TowerTown" : 17,
  264. "Rampart" : 18,
  265. "InfernoTown" : 19,
  266. "NecroTown" : 20,
  267. "Dungeon" : 21,
  268. "Stronghold" : 22,
  269. "FortressTown" : 23,
  270. "ElemTown" : 24,
  271. "Dirt" : 25,
  272. "Sand" : 26,
  273. "Grass" : 27,
  274. "Snow" : 28,
  275. "Swamp" : 29,
  276. "Rough" : 30,
  277. "Underground" : 31,
  278. "Lava" : 32,
  279. "Water" : 33,
  280. "GoodTheme" : 34,
  281. "NeutralTheme" : 35,
  282. "EvilTheme" : 36,
  283. "SecretTheme" : 37,
  284. "LoopLepr" : 38,
  285. "MainMenu" : 39,
  286. "Win Scenario" : 40
  287. },
  288. "campaignVideo" : {
  289. "GOOD1A.SMK" : 0,
  290. "GOOD1B.SMK" : 1,
  291. "GOOD1C.SMK" : 2,
  292. "EVIL1A.SMK" : 3,
  293. "EVIL1B.SMK" : 4,
  294. "EVIL1C.SMK" : 5,
  295. "NEUTRALA.SMK" : 6,
  296. "NEUTRALB.SMK" : 7,
  297. "NEUTRALC.SMK" : 8,
  298. "GOOD2A.SMK" : 9,
  299. "GOOD2B.SMK" : 10,
  300. "GOOD2C.SMK" : 11,
  301. "GOOD2D.SMK" : 12,
  302. "EVIL2A.SMK" : 13,
  303. "EVIL2AP1.SMK" : 14,
  304. "EVIL2B.SMK" : 15,
  305. "EVIL2C.SMK" : 16,
  306. "EVIL2D.SMK" : 17,
  307. "GOOD3A.SMK" : 18,
  308. "GOOD3B.SMK" : 19,
  309. "GOOD3C.SMK" : 20,
  310. "SECRETA.SMK" : 21,
  311. "SECRETB.SMK" : 22,
  312. "SECRETC.SMK" : 23
  313. }
  314. },
  315. "armageddonsBlade" : {
  316. "supported" : true,
  317. "iconIndex" : 1,
  318. "buildings" : {
  319. "conflux" : {
  320. "special1" : 10, // artifactMerchants
  321. "special2" : 18 // magicUniversity
  322. }
  323. },
  324. "portraits" : {
  325. "pasis" : 128,
  326. "thunar" : 129,
  327. "portraitGeneralKendal" : 156,
  328. "portraitYoungCristian" : 157,
  329. "portraitOrdwald" : 158
  330. },
  331. "campaignRegions" : {
  332. "dragonSlayer" : 8,
  333. "foolhardyWaywardness" : 9,
  334. "festivalOfLife" : 10,
  335. "dragonsBlood" : 11,
  336. "playingWithFire" : 12,
  337. "armageddonsBlade" : 13
  338. },
  339. "campaignMusic" : {
  340. "CampainMusic10" : 41,
  341. "BladeABCampaign" : 42,
  342. "BladeDBCampaign" : 43,
  343. "BladeDSCampaign" : 44,
  344. "BladeFLCampaign" : 45,
  345. "BladeFWCampaign" : 46,
  346. "BladePFCampaign" : 47
  347. },
  348. "campaignVideo" : {
  349. "H3ABab1.smk" : 24,
  350. "H3ABab2.smk" : 25,
  351. "H3ABab3.smk" : 26,
  352. "H3ABab4.smk" : 27,
  353. "H3ABab5.smk" : 28,
  354. "H3ABab6.smk" : 29,
  355. "H3ABab7.smk" : 30,
  356. "H3ABab8.smk" : 31,
  357. "H3ABab9.smk" : 32,
  358. "H3ABdb1.smk" : 33,
  359. "H3ABdb2.smk" : 34,
  360. "H3ABdb3.smk" : 35,
  361. "H3ABdb4.smk" : 36,
  362. "H3ABdb5.smk" : 37,
  363. "H3ABds1.smk" : 38,
  364. "H3ABds2.smk" : 39,
  365. "H3ABds3.smk" : 40,
  366. "H3ABds4.smk" : 41,
  367. "H3ABds5.smk" : 42,
  368. "H3ABfl1.smk" : 43,
  369. "H3ABfl2.smk" : 44,
  370. "H3ABfl3.smk" : 45,
  371. "H3ABfl4.smk" : 46,
  372. "H3ABfl5.smk" : 47,
  373. "H3ABfw1.smk" : 48,
  374. "H3ABfw2.smk" : 49,
  375. "H3ABfw3.smk" : 50,
  376. "H3ABfw4.smk" : 51,
  377. "H3ABfw5.smk" : 52,
  378. "H3ABpf1.smk" : 53,
  379. "H3ABpf2.smk" : 54,
  380. "H3ABpf3.smk" : 55,
  381. "H3ABpf4.smk" : 56
  382. }
  383. },
  384. "shadowOfDeath" : {
  385. "supported" : true,
  386. "iconIndex" : 2,
  387. "portraits" : {
  388. "portraitGeneralKendal" : 156,
  389. "portraitYoungCristian" : 157,
  390. "portraitOrdwald" : 158,
  391. "portraitFinneas" : 159,
  392. "portraitYoungGem" : 160,
  393. "portraitYoungSandro" : 161,
  394. "portraitYoungYog" : 162
  395. },
  396. "campaignRegions" : {
  397. "hackAndSlash" : 14,
  398. "birthOfBarbarian" : 15,
  399. "newBeginning" : 16,
  400. "elixirOfLife" : 17,
  401. "riseOfTheNecromancer" : 18,
  402. "unholyAlliance" : 19,
  403. "spectreOfPower" : 20
  404. },
  405. "campaignMusic" : {
  406. "CampainMusic11" : 48
  407. },
  408. "campaignVideo" : {
  409. "H3x2_BBa.smk" : 57,
  410. "H3x2_BBb.smk" : 58,
  411. "H3x2_BBc.smk" : 59,
  412. "H3x2_BBd.smk" : 60,
  413. "H3x2_BBe.smk" : 61,
  414. "H3x2_BBf.smk" : 62,
  415. "H3x2_Ela.smk" : 63,
  416. "H3x2_Elb.smk" : 64,
  417. "H3x2_Elc.smk" : 65,
  418. "H3x2_Eld.smk" : 66,
  419. "H3x2_Ele.smk" : 67,
  420. "H3x2_HSa.smk" : 68,
  421. "EVIL2C.SMK" : 69,
  422. "H3x2_HSc.smk" : 70,
  423. "H3x2_HSd.smk" : 71,
  424. "H3x2_HSe.smk" : 72,
  425. "H3x2_NBa.smk" : 73,
  426. "H3x2_NBb.smk" : 74,
  427. "H3x2_Nbc.smk" : 75,
  428. "H3x2_Nbd.smk" : 76,
  429. "H3x2_Nbe.smk" : 77,
  430. "H3x2_RNa.smk" : 78,
  431. "H3x2_RNb.smk" : 79,
  432. "H3x2_RNc.smk" : 80,
  433. "H3x2_RNd.smk" : 81,
  434. "H3x2_RNe1.smk": 82,
  435. "H3x2_SPa.smk" : 83,
  436. "H3x2_SPb.smk" : 84,
  437. "H3x2_SPc.smk" : 85,
  438. "H3x2_SPd.smk" : 86,
  439. "H3x2_SPe.smk" : 87,
  440. "H3x2_UAa.smk" : 88,
  441. "H3x2_UAb.smk" : 89,
  442. "H3x2_UAc.smk" : 90,
  443. "H3x2_UAd.smk" : 91,
  444. "H3x2_UAe.smk" : 92,
  445. "H3x2_UAf.smk" : 93,
  446. "H3x2_UAg.smk" : 94,
  447. "H3x2_UAh.smk" : 95,
  448. "H3x2_UAi.smk" : 96,
  449. "H3x2_UAj.smk" : 97,
  450. "H3x2_UAk.smk" : 98,
  451. "H3x2_UAl.smk" : 99,
  452. "H3x2_UAm.smk" : 100 //H3x2_UAm.bik?
  453. }
  454. },
  455. "chronicles" : {
  456. "supported" : false,
  457. "iconIndex" : 2
  458. },
  459. "jsonVCMI" : {
  460. "supported" : true,
  461. "iconIndex" : 3
  462. },
  463. "hornOfTheAbyss" : {
  464. "supported" : false,
  465. "settings": {
  466. "spells": {
  467. "tomesGrantBannedSpells" : false
  468. }
  469. }
  470. },
  471. "inTheWakeOfGods" : {
  472. "supported" : false
  473. }
  474. },
  475. "heroes" :
  476. {
  477. // number of heroes that player can have active on map at the same time
  478. "perPlayerOnMapCap" : 8,
  479. // number of heroes that player can have in total, including garrisoned
  480. "perPlayerTotalCap" : 9999,
  481. // if enabled, hero that wins a battle without any non-summoned troops left will retreat and become available in tavern instead of being lost
  482. "retreatOnWinWithoutTroops" : true,
  483. // Chances for a hero with default army to receive corresponding stack out of his predefined starting troops
  484. "startingStackChances": [ 100, 88, 25],
  485. // number of artifacts that can fit in a backpack. -1 is unlimited.
  486. "backpackSize" : -1,
  487. // if heroes are invitable in tavern
  488. "tavernInvite" : false,
  489. // minimal primary skills for heroes
  490. "minimalPrimarySkills": [ 0, 0, 1, 1],
  491. /// minimal movement cost from one tile to another while offroad. Also see BASE_TILE_MOVEMENT_COST bonus type
  492. /// Also affects cost of Town Portal spell and movement cost when using Fly spell
  493. "movementCostBase" : 100,
  494. /// movement points hero can get on start of the turn when on land, depending on speed of slowest creature (0-based list)
  495. "movementPointsLand" : [ 1500, 1500, 1500, 1500, 1560, 1630, 1700, 1760, 1830, 1900, 1960, 2000 ],
  496. /// movement points hero can get on start of the turn when on sea, depending on speed of slowest creature (0-based list)
  497. "movementPointsSea" : [ 1500 ],
  498. /// maximal secondary skills per hero
  499. "skillPerHero" : 8,
  500. /// Base scouting range for hero without any range modifiers
  501. "baseScoutingRange" : 5,
  502. /// Strength of generic secondary skill specialties ( "secondary" : "skillName" ) per level
  503. "specialtySecondarySkillGrowth" : 5,
  504. /// Strength of generic creature specialties ( "creature" : "creatureName" ) per level
  505. "specialtyCreatureGrowth" : 5,
  506. /// Maximum amount of skills that can be offered to hero on levelup
  507. "levelupTotalSkillsAmount" : 2,
  508. /// Maximum amount of advanced or expert skills that can be offered to hero on levelup
  509. "levelupUpgradedSkillsAmount" : 1
  510. },
  511. "towns":
  512. {
  513. // How many new building can be built in a town per day
  514. "buildingsPerTurnCap" : 1,
  515. // Chances for a town with default buildings to receive corresponding dwelling level built in start
  516. "startingDwellingChances": [100, 50],
  517. // Enable spell research in mage guild
  518. "spellResearch": false,
  519. // Cost for an spell research (array index is spell tier)
  520. "spellResearchCost": [
  521. { "gold": 1000, "wood" : 2, "mercury": 2, "ore": 2, "sulfur": 2, "crystal": 2, "gems": 2 },
  522. { "gold": 1000, "wood" : 4, "mercury": 4, "ore": 4, "sulfur": 4, "crystal": 4, "gems": 4 },
  523. { "gold": 1000, "wood" : 6, "mercury": 6, "ore": 6, "sulfur": 6, "crystal": 6, "gems": 6 },
  524. { "gold": 1000, "wood" : 8, "mercury": 8, "ore": 8, "sulfur": 8, "crystal": 8, "gems": 8 },
  525. { "gold": 1000, "wood" : 10, "mercury": 10, "ore": 10, "sulfur": 10, "crystal": 10, "gems": 10 }
  526. ],
  527. // How much researchs/skips per day are possible? (array index is spell tier)
  528. "spellResearchPerDay": [ 2, 2, 2, 2, 1 ],
  529. // Exponent for increasing cost for each research (factor 1 disables this; array index is spell tier)
  530. "spellResearchCostExponentPerResearch": [ 1.25, 1.25, 1.25, 1.25, 1.25 ],
  531. // Base scouting range for town without any range modifiers
  532. "baseScoutingRange" : 5
  533. },
  534. "combat":
  535. {
  536. // defines bias used for percentage-based ability rolls, such Death Blow of Dread Knight
  537. // If bias is set to 0, then all rolls will be completely independent - it is possible to get lucky and roll ability with 10% chance
  538. // multiple times in a row, or be unlucky and not roll 50% ability multiple times in a row
  539. // If bias is non-zero, game will adjust probability based on previous rolls while keeping average chance at desired value
  540. // So matter what value is used for bias, actual probability for large (1000+) number of rolls is same as stated in description
  541. // However, non-zero bias allows to prevent long streaks of "bad" rolls, and enforce actual probabilities even for small (10-20) number of rolls
  542. // Recommended value is ~10-25. Excessively large values, like 100 can make rolls very predictable, for example rolling 20% ability every 5th roll
  543. "abilityBias" : 25,
  544. // defines dice chance and dice size of a morale roll, based on creature's morale.
  545. // Resulting chance is chanceValue / diceSize. If list contains 0 values, option will be disabled
  546. "goodMoraleChance" : [ 1, 2, 3 ],
  547. "badMoraleChance" : [ 2, 4, 6],
  548. "moraleDiceSize" : 24,
  549. // Bias for morale rolls. See abilityBias for detailed description
  550. // Recommended value is around moraleDiceSize / 4
  551. "moraleBias" : 8,
  552. // defines dice chance and dice size of a luck roll, based on creature's luck
  553. "goodLuckChance" : [ 1, 2, 3 ],
  554. "badLuckChance" : [],
  555. "luckDiceSize" : 24,
  556. // Bias for luck rolls. See abilityBias for detailed description
  557. // Recommended value is around luckDiceSize / 4
  558. "luckBias" : 8,
  559. // every 1 attack point damage influence in battle when attack points > defense points during creature attack
  560. "attackPointDamageFactor": 0.05,
  561. // limit of damage increase that can be achieved by overpowering attack points
  562. "attackPointDamageFactorCap": 4.0,
  563. // every 1 defense point damage influence in battle when defense points > attack points during creature attack
  564. "defensePointDamageFactor": 0.025,
  565. // limit of damage reduction that can be achieved by overpowering defense points
  566. "defensePointDamageFactorCap": 0.7,
  567. // If set to true, double-wide creatures will trigger obstacle effect when moving one tile forward or backwards
  568. "oneHexTriggersObstacles": false,
  569. // Allow area shooters with SPELL_LIKE_ATTACK bonus such as liches or magogs to target empty hexes
  570. "areaShotCanTargetEmptyHex" : false,
  571. // Positions of units on start of the combat
  572. // If battle does not defines specific configuration, 'default' configuration will be used
  573. // Configuration must define either 'attackerUnits' list of 7 elements or both 'attackerUnitsLoose' and 'attackerUnitsTight' lists of 7 elements, 1..7 elements each
  574. // Similarly, for defender configuration must have either 'defenderUnits' or both 'defenderUnitsLoose' and 'defenderUnitsTight'
  575. "layouts" : {
  576. "default" : {
  577. "tacticsAllowed" : true,
  578. "obstaclesAllowed" : true,
  579. "attackerCommander" : 88,
  580. "defenderCommander" : 98,
  581. "attackerWarMachines" : [ 52, 18, 154, 120 ],
  582. "defenderWarMachines" : [ 66, 32, 168, 134 ],
  583. "attackerUnitsLoose": [
  584. [ 86 ],
  585. [ 35, 137 ],
  586. [ 35, 86, 137 ],
  587. [ 1, 69, 103, 171 ],
  588. [ 1, 35, 86, 137, 171 ],
  589. [ 1, 35, 69, 103, 137, 171 ],
  590. [ 1, 35, 69, 86, 103, 137, 171 ]
  591. ],
  592. "defenderUnitsLoose": [
  593. [ 100 ],
  594. [ 49, 151 ],
  595. [ 49, 100, 151 ],
  596. [ 15, 83, 117, 185 ],
  597. [ 15, 49, 100, 151, 185 ],
  598. [ 15, 49, 83, 117, 151, 185 ],
  599. [ 15, 49, 83, 100, 117, 151, 185 ]
  600. ],
  601. "attackerUnitsTight": [
  602. [ 86 ],
  603. [ 69, 103 ],
  604. [ 69, 86, 103 ],
  605. [ 35, 69, 103, 137 ],
  606. [ 35, 69, 86, 103, 137 ],
  607. [ 1, 35, 69, 103, 137, 171 ],
  608. [ 1, 35, 69, 86, 103, 137, 171 ]
  609. ],
  610. "defenderUnitsTight": [
  611. [ 100 ],
  612. [ 83, 117 ],
  613. [ 83, 100, 117 ],
  614. [ 49, 83, 117, 151 ],
  615. [ 49, 83, 100, 117, 151 ],
  616. [ 15, 49, 83, 117, 151, 185 ],
  617. [ 15, 49, 83, 100, 117, 151, 185 ]
  618. ]
  619. },
  620. // Configuration for creature banks with single-tile enemies
  621. "creatureBankNarrow" : {
  622. "tacticsAllowed" : false,
  623. "obstaclesAllowed" : false,
  624. "attackerCommander" : 95,
  625. "defenderCommander" : 8,
  626. "attackerUnits": [ 57, 61, 90, 93, 96, 125, 129 ],
  627. "defenderUnits": [ 15, 185, 172, 2, 100, 87, 8 ]
  628. },
  629. // Configuration for creature banks with double-wide enemies
  630. "creatureBankWide" : {
  631. "tacticsAllowed" : false,
  632. "obstaclesAllowed" : false,
  633. "attackerCommander" : 95,
  634. "defenderCommander" : 8,
  635. "attackerUnits": [ 57, 61, 90, 93, 96, 125, 129 ],
  636. "defenderUnits": [ 15, 185, 171, 1, 100, 86, 8 ]
  637. }
  638. }
  639. },
  640. "creatures":
  641. {
  642. // creatures on map will grow by specified percentage each week
  643. "weeklyGrowthPercent" : 10,
  644. // creatures on map will not grow if their quantity is greater than this value
  645. "weeklyGrowthCap" : 4000,
  646. // if stack experience is on, creatures on map will get specified amount of experience daily
  647. "dailyStackExperience" : 100,
  648. // if enabled, double growth, plague and creature weeks can happen randomly. Has no effect on weeks by "Deity of Fire"
  649. // NOTE: on HotA maps, this setting has no effect. Value provided in map will be used instead.
  650. "allowRandomSpecialWeeks" : true,
  651. // if enabled, every creature can get double growth month, ignoring predefined list
  652. "allowAllForDoubleMonth" : false,
  653. // if enabled creatures may join player for free, disabling it removes free joining globally unless creature is set to join in map editor
  654. "allowJoiningForFree" : true,
  655. // percent of stack amount that joins player per each successful join (does not decrease cost when joining for gold), if 0 or lower creatures never join for free or gold
  656. "joiningPercentage" : 100
  657. },
  658. "dwellings" :
  659. {
  660. // if enabled, neutral dwellings will accumulate creatures
  661. "accumulateWhenNeutral" : false,
  662. // if enabled, dwellings owned by players will accumulate creatures
  663. "accumulateWhenOwned" : false,
  664. // if enabled, game will attempt to merge slots in army on recruit if all slots in hero army are in use
  665. "mergeOnRecruit" : true
  666. },
  667. "mapObjects" :
  668. {
  669. // Allow behavior that emulates h3 bug where quest from Seer Hut or Border Guard can take entire army from hero
  670. // WARNING: handling of heroes without armies is not tested and may lead to bugs or crashes! Use at own risk!
  671. // If this option is off, quests will only allow taking entire army if quest reward also gives creatures
  672. "h3BugQuestTakesEntireArmy" : false
  673. },
  674. "markets" :
  675. {
  676. // period between restocking of "Black Market" object found on adventure map
  677. "blackMarketRestockPeriod" : 0
  678. },
  679. "banks" :
  680. {
  681. // show guards composition when visiting creature banks
  682. "showGuardsComposition" : true
  683. },
  684. "modules":
  685. {
  686. // if enabled, creatures may collect experience (WoG feature)
  687. "stackExperience": false,
  688. // if enabled, certain artifacts can be granted to creatures (WoG feature)
  689. "stackArtifact": false,
  690. // if enabled, all heroes gain commander creature in battle (WoG feature)
  691. "commanders": false
  692. },
  693. "pathfinder" :
  694. {
  695. // if enabled, pathfinder will build path through locations guarded by wandering monsters
  696. "ignoreGuards" : false,
  697. // if enabled, pathfinder will take use of any available boats
  698. "useBoat" : true,
  699. // if enabled, pathfinder will take use of any bidirectional monoliths
  700. "useMonolithTwoWay" : true,
  701. // if enabled, pathfinder will take use of one-way monolith that only have one known exit
  702. "useMonolithOneWayUnique" : false,
  703. // if enabled, pathfinder will take use of one-way monoliths with multiple exits.
  704. "useMonolithOneWayRandom" : false,
  705. // if enabled and hero has whirlpool protection effect, pathfinder will take use of whirpools
  706. "useWhirlpool" : true,
  707. // if enabled flying will work like in original game, otherwise nerf similar to HotA flying is applied
  708. "originalFlyRules" : true
  709. },
  710. "resources" : {
  711. // H3 mechanics - AI receives bonus (or malus, on easy) to his resource income
  712. // AI will receive specified values as percentage of his weekly income
  713. // So, "gems" : 200 will give AI player 200% of his daily income of gems over week, or, in other words,
  714. // giving AI player 2 additional gems per week for every owned Gem Pond
  715. "weeklyBonusesAI" : {
  716. "pawn" : { "gold" : -175 },
  717. "knight": {},
  718. "rook" : {},
  719. "queen" : { "wood" : 275 , "mercury" : 100, "ore" : 275, "sulfur" : 100, "crystal" : 100, "gems" : 100, "gold" : 175},
  720. "king" : { "wood" : 375 , "mercury" : 200, "ore" : 375, "sulfur" : 200, "crystal" : 200, "gems" : 200, "gold" : 350}
  721. }
  722. },
  723. "spells":
  724. {
  725. // if enabled, dimension door will initiate a fight upon landing on tile adjacent to neutral creature
  726. "dimensionDoorTriggersGuards" : false,
  727. // if enabled, SPELLS_OF_SCHOOL bonus (Tomes of Water/Air/Earth/Fire Magic)
  728. // and SPELLS_OF_LEVEL bonus (Spellbinder Hat) will grant spells that are banned on map (SoD behavior)
  729. // NOTE: this value only affects random maps and .vmap's. For h3m's value is loaded from map format configuration
  730. "tomesGrantBannedSpells" : false
  731. },
  732. "bonuses" :
  733. {
  734. "global" :
  735. {
  736. "spellDamage" :
  737. {
  738. "type" : "SPELL_DAMAGE",
  739. "subtype" : "spellSchool.any",
  740. "val" : 100,
  741. "valueType" : "BASE_NUMBER"
  742. },
  743. "wisdom" :
  744. {
  745. "type" : "MAX_LEARNABLE_SPELL_LEVEL", //Hero can always learn level 1 and 2 spells
  746. "val" : 2,
  747. "valueType" : "BASE_NUMBER"
  748. }
  749. },
  750. "perHero":
  751. {
  752. "manaRegeneration" :
  753. {
  754. "type" : "MANA_REGENERATION", //default mana regeneration
  755. "val" : 1,
  756. "valueType" : "BASE_NUMBER"
  757. },
  758. "experienceGain" :
  759. {
  760. "type" : "HERO_EXPERIENCE_GAIN_PERCENT", //default hero xp
  761. "val" : 100,
  762. "valueType" : "BASE_NUMBER"
  763. },
  764. "manaPerKnowledge" :
  765. {
  766. "type" : "MANA_PER_KNOWLEDGE_PERCENTAGE", //1000% mana per knowledge
  767. "val" : 1000,
  768. "valueType" : "BASE_NUMBER"
  769. },
  770. "spellCastsPerTurn" :
  771. {
  772. "type" : "HERO_SPELL_CASTS_PER_COMBAT_TURN", //1 spell can be cast by hero per turn during combat
  773. "val" : 1,
  774. "valueType" : "BASE_NUMBER"
  775. }
  776. }
  777. },
  778. "interface" :
  779. {
  780. // Color transform to make color of brown DIBOX.PCX texture match color of specified player
  781. "playerColoredBackground" :
  782. {
  783. "red" : [ 0.25, 0, 0, 1.25, 0.00, 0.00 ],
  784. "blue" : [ 0, 0, 0, 0.45, 1.20, 4.50 ],
  785. "tan" : [ 0.40, 0.27, 0.23, 1.10, 1.20, 1.15 ],
  786. "green" : [ -0.27, 0.10, -0.27, 0.70, 1.70, 0.70 ],
  787. "orange" : [ 0.47, 0.17, -0.27, 1.60, 1.20, 0.70 ],
  788. "purple" : [ 0.12, -0.1, 0.25, 1.15, 1.20, 2.20 ],
  789. "teal" : [ -0.13, 0.23, 0.23, 0.90, 1.20, 2.20 ],
  790. "pink" : [ 0.44, 0.15, 0.25, 1.00, 1.00, 1.75 ]
  791. }
  792. },
  793. "campaign" :
  794. {
  795. // Unlock all campaigns
  796. "unlockAll" : false
  797. }
  798. }
  799. }