map_mountain.json 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649
  1. {
  2. "name": "Mountain Strongholds",
  3. "description": "A mountainous battlefield with strategic high ground and capture points",
  4. "coordSystem": "grid",
  5. "maxTroopsPerPlayer": 2000,
  6. "grid": {
  7. "width": 300,
  8. "height": 300,
  9. "tileSize": 1.0
  10. },
  11. "biome": {
  12. "groundType": "alpine_mix",
  13. "seed": 24567,
  14. "patchDensity": 3.0,
  15. "patchJitter": 0.8,
  16. "bladeHeight": [
  17. 0.5,
  18. 1.3
  19. ],
  20. "bladeWidth": [
  21. 0.025,
  22. 0.055
  23. ],
  24. "swayStrength": 0.25,
  25. "swaySpeed": 1.3,
  26. "heightNoise": [
  27. 0.22,
  28. 0.08
  29. ],
  30. "grassPrimary": [
  31. 0.28,
  32. 0.6,
  33. 0.32
  34. ],
  35. "grassSecondary": [
  36. 0.42,
  37. 0.72,
  38. 0.34
  39. ],
  40. "grassDry": [
  41. 0.58,
  42. 0.5,
  43. 0.36
  44. ],
  45. "soilColor": [
  46. 0.28,
  47. 0.24,
  48. 0.18
  49. ],
  50. "rockLow": [
  51. 0.5,
  52. 0.48,
  53. 0.46
  54. ],
  55. "rockHigh": [
  56. 0.68,
  57. 0.69,
  58. 0.73
  59. ],
  60. "plantDensity": 0.5,
  61. "groundIrregularityEnabled": true,
  62. "irregularityScale": 0.10,
  63. "irregularityAmplitude": 0.05
  64. },
  65. "camera": {
  66. "center": [
  67. 150,
  68. 0,
  69. 150
  70. ],
  71. "distance": 40.0,
  72. "tiltDeg": 45.0,
  73. "yaw": 225.0,
  74. "fovY": 45.0,
  75. "near": 1.0,
  76. "far": 500.0
  77. },
  78. "spawns": [
  79. {
  80. "type": "barracks",
  81. "x": 75,
  82. "z": 75,
  83. "playerId": 1,
  84. "maxPopulation": 200,
  85. "nation": "roman_republic"
  86. },
  87. {
  88. "type": "archer",
  89. "x": 73,
  90. "z": 77,
  91. "playerId": 1
  92. },
  93. {
  94. "type": "archer",
  95. "x": 77,
  96. "z": 73,
  97. "playerId": 1
  98. },
  99. {
  100. "type": "archer",
  101. "x": 75,
  102. "z": 79,
  103. "playerId": 1
  104. },
  105. {
  106. "type": "swordsman",
  107. "x": 71,
  108. "z": 75,
  109. "playerId": 1
  110. },
  111. {
  112. "type": "swordsman",
  113. "x": 79,
  114. "z": 75,
  115. "playerId": 1
  116. },
  117. {
  118. "type": "spearman",
  119. "x": 73,
  120. "z": 73,
  121. "playerId": 1
  122. },
  123. {
  124. "type": "spearman",
  125. "x": 77,
  126. "z": 77,
  127. "playerId": 1
  128. },
  129. {
  130. "type": "barracks",
  131. "x": 225,
  132. "z": 225,
  133. "playerId": 2,
  134. "maxPopulation": 200,
  135. "nation": "roman_republic"
  136. },
  137. {
  138. "type": "archer",
  139. "x": 223,
  140. "z": 227,
  141. "playerId": 2
  142. },
  143. {
  144. "type": "archer",
  145. "x": 227,
  146. "z": 223,
  147. "playerId": 2
  148. },
  149. {
  150. "type": "horse_swordsman",
  151. "x": 221,
  152. "z": 225,
  153. "playerId": 2
  154. },
  155. {
  156. "type": "horse_swordsman",
  157. "x": 225,
  158. "z": 221,
  159. "playerId": 2
  160. },
  161. {
  162. "type": "spearman",
  163. "x": 223,
  164. "z": 223,
  165. "playerId": 2
  166. },
  167. {
  168. "type": "spearman",
  169. "x": 227,
  170. "z": 227,
  171. "playerId": 2
  172. },
  173. {
  174. "type": "barracks",
  175. "x": 150,
  176. "z": 150,
  177. "maxPopulation": 180,
  178. "nation": "roman_republic"
  179. },
  180. {
  181. "type": "barracks",
  182. "x": 75,
  183. "z": 225,
  184. "playerId": 3,
  185. "maxPopulation": 150,
  186. "nation": "roman_republic"
  187. },
  188. {
  189. "type": "swordsman",
  190. "x": 73,
  191. "z": 227,
  192. "playerId": 3
  193. },
  194. {
  195. "type": "swordsman",
  196. "x": 77,
  197. "z": 223,
  198. "playerId": 3
  199. },
  200. {
  201. "type": "archer",
  202. "x": 71,
  203. "z": 225,
  204. "playerId": 3
  205. },
  206. {
  207. "type": "spearman",
  208. "x": 75,
  209. "z": 221,
  210. "playerId": 3
  211. },
  212. {
  213. "type": "barracks",
  214. "x": 225,
  215. "z": 75,
  216. "maxPopulation": 150,
  217. "nation": "roman_republic"
  218. }
  219. ],
  220. "firecamps": [
  221. {
  222. "x": 68,
  223. "z": 80,
  224. "intensity": 1.0,
  225. "radius": 3.0
  226. },
  227. {
  228. "x": 82,
  229. "z": 68,
  230. "intensity": 1.1,
  231. "radius": 3.2
  232. },
  233. {
  234. "x": 218,
  235. "z": 232,
  236. "intensity": 0.9,
  237. "radius": 2.8
  238. },
  239. {
  240. "x": 232,
  241. "z": 218,
  242. "intensity": 1.0,
  243. "radius": 3.0
  244. },
  245. {
  246. "x": 145,
  247. "z": 155,
  248. "intensity": 1.2,
  249. "radius": 3.5
  250. },
  251. {
  252. "x": 68,
  253. "z": 232,
  254. "intensity": 1.0,
  255. "radius": 3.0
  256. },
  257. {
  258. "x": 232,
  259. "z": 68,
  260. "intensity": 1.05,
  261. "radius": 3.2
  262. },
  263. {
  264. "x": 100,
  265. "z": 100,
  266. "intensity": 0.85,
  267. "radius": 2.5
  268. },
  269. {
  270. "x": 200,
  271. "z": 200,
  272. "intensity": 0.9,
  273. "radius": 2.7
  274. }
  275. ],
  276. "terrain": [
  277. {
  278. "type": "hill",
  279. "x": 150,
  280. "z": 150,
  281. "width": 20,
  282. "depth": 15,
  283. "height": 4.0,
  284. "rotation": 25,
  285. "entrances": [
  286. {
  287. "x": 150,
  288. "z": 135
  289. },
  290. {
  291. "x": 140,
  292. "z": 150
  293. },
  294. {
  295. "x": 160,
  296. "z": 150
  297. },
  298. {
  299. "x": 150,
  300. "z": 165
  301. }
  302. ]
  303. },
  304. {
  305. "type": "hill",
  306. "x": 75,
  307. "z": 150,
  308. "radius": 10,
  309. "height": 3.2,
  310. "entrances": [
  311. {
  312. "x": 65,
  313. "z": 150
  314. },
  315. {
  316. "x": 75,
  317. "z": 140
  318. },
  319. {
  320. "x": 75,
  321. "z": 160
  322. }
  323. ]
  324. },
  325. {
  326. "type": "hill",
  327. "x": 225,
  328. "z": 150,
  329. "radius": 10,
  330. "height": 3.2,
  331. "entrances": [
  332. {
  333. "x": 235,
  334. "z": 150
  335. },
  336. {
  337. "x": 225,
  338. "z": 140
  339. },
  340. {
  341. "x": 225,
  342. "z": 160
  343. }
  344. ]
  345. },
  346. {
  347. "type": "hill",
  348. "x": 150,
  349. "z": 75,
  350. "radius": 9,
  351. "height": 3.0,
  352. "entrances": [
  353. {
  354. "x": 150,
  355. "z": 65
  356. },
  357. {
  358. "x": 140,
  359. "z": 75
  360. },
  361. {
  362. "x": 160,
  363. "z": 75
  364. }
  365. ]
  366. },
  367. {
  368. "type": "hill",
  369. "x": 150,
  370. "z": 225,
  371. "radius": 9,
  372. "height": 3.0,
  373. "entrances": [
  374. {
  375. "x": 150,
  376. "z": 235
  377. },
  378. {
  379. "x": 140,
  380. "z": 225
  381. },
  382. {
  383. "x": 160,
  384. "z": 225
  385. }
  386. ]
  387. },
  388. {
  389. "type": "mountain",
  390. "x": 50,
  391. "z": 50,
  392. "radius": 12,
  393. "height": 10.0,
  394. "rotation": 10
  395. },
  396. {
  397. "type": "mountain",
  398. "x": 250,
  399. "z": 250,
  400. "radius": 12,
  401. "height": 10.0,
  402. "rotation": 30
  403. },
  404. {
  405. "type": "mountain",
  406. "x": 50,
  407. "z": 250,
  408. "radius": 11,
  409. "height": 9.5,
  410. "rotation": 50
  411. },
  412. {
  413. "type": "mountain",
  414. "x": 250,
  415. "z": 50,
  416. "radius": 11,
  417. "height": 9.5,
  418. "rotation": 70
  419. },
  420. {
  421. "type": "mountain",
  422. "x": 100,
  423. "z": 100,
  424. "radius": 10,
  425. "height": 9.0,
  426. "rotation": 15
  427. },
  428. {
  429. "type": "mountain",
  430. "x": 200,
  431. "z": 100,
  432. "radius": 10,
  433. "height": 9.0,
  434. "rotation": 35
  435. },
  436. {
  437. "type": "mountain",
  438. "x": 100,
  439. "z": 200,
  440. "radius": 10,
  441. "height": 9.0,
  442. "rotation": 55
  443. },
  444. {
  445. "type": "mountain",
  446. "x": 200,
  447. "z": 200,
  448. "radius": 10,
  449. "height": 9.0,
  450. "rotation": 75
  451. },
  452. {
  453. "type": "mountain",
  454. "x": 150,
  455. "z": 50,
  456. "radius": 9,
  457. "height": 8.5,
  458. "rotation": 20
  459. },
  460. {
  461. "type": "mountain",
  462. "x": 150,
  463. "z": 250,
  464. "radius": 9,
  465. "height": 8.5,
  466. "rotation": 40
  467. },
  468. {
  469. "type": "mountain",
  470. "x": 50,
  471. "z": 150,
  472. "radius": 9,
  473. "height": 8.5,
  474. "rotation": 60
  475. },
  476. {
  477. "type": "mountain",
  478. "x": 250,
  479. "z": 150,
  480. "radius": 9,
  481. "height": 8.5,
  482. "rotation": 80
  483. },
  484. {
  485. "type": "mountain",
  486. "x": 125,
  487. "z": 125,
  488. "radius": 8,
  489. "height": 8.0,
  490. "rotation": 25
  491. },
  492. {
  493. "type": "mountain",
  494. "x": 175,
  495. "z": 125,
  496. "radius": 8,
  497. "height": 8.0,
  498. "rotation": 45
  499. },
  500. {
  501. "type": "mountain",
  502. "x": 125,
  503. "z": 175,
  504. "radius": 8,
  505. "height": 8.0,
  506. "rotation": 65
  507. },
  508. {
  509. "type": "mountain",
  510. "x": 175,
  511. "z": 175,
  512. "radius": 8,
  513. "height": 8.0,
  514. "rotation": 85
  515. },
  516. {
  517. "type": "mountain",
  518. "x": 75,
  519. "z": 100,
  520. "radius": 7,
  521. "height": 7.5,
  522. "rotation": 30
  523. },
  524. {
  525. "type": "mountain",
  526. "x": 225,
  527. "z": 100,
  528. "radius": 7,
  529. "height": 7.5,
  530. "rotation": 50
  531. },
  532. {
  533. "type": "mountain",
  534. "x": 75,
  535. "z": 200,
  536. "radius": 7,
  537. "height": 7.5,
  538. "rotation": 70
  539. },
  540. {
  541. "type": "mountain",
  542. "x": 225,
  543. "z": 200,
  544. "radius": 7,
  545. "height": 7.5,
  546. "rotation": 90
  547. },
  548. {
  549. "type": "mountain",
  550. "x": 100,
  551. "z": 75,
  552. "radius": 7,
  553. "height": 7.5,
  554. "rotation": 35
  555. },
  556. {
  557. "type": "mountain",
  558. "x": 200,
  559. "z": 75,
  560. "radius": 7,
  561. "height": 7.5,
  562. "rotation": 55
  563. },
  564. {
  565. "type": "mountain",
  566. "x": 100,
  567. "z": 225,
  568. "radius": 7,
  569. "height": 7.5,
  570. "rotation": 75
  571. },
  572. {
  573. "type": "mountain",
  574. "x": 200,
  575. "z": 225,
  576. "radius": 7,
  577. "height": 7.5,
  578. "rotation": 95
  579. }
  580. ],
  581. "roads": [
  582. {
  583. "start": [75, 75],
  584. "end": [150, 150],
  585. "width": 3.5,
  586. "style": "default"
  587. },
  588. {
  589. "start": [150, 150],
  590. "end": [225, 225],
  591. "width": 3.5,
  592. "style": "default"
  593. },
  594. {
  595. "start": [75, 225],
  596. "end": [150, 150],
  597. "width": 3.0,
  598. "style": "default"
  599. },
  600. {
  601. "start": [225, 75],
  602. "end": [150, 150],
  603. "width": 3.0,
  604. "style": "default"
  605. },
  606. {
  607. "start": [75, 75],
  608. "end": [75, 225],
  609. "width": 2.5,
  610. "style": "default"
  611. },
  612. {
  613. "start": [225, 75],
  614. "end": [225, 225],
  615. "width": 2.5,
  616. "style": "default"
  617. },
  618. {
  619. "start": [75, 75],
  620. "end": [225, 75],
  621. "width": 2.5,
  622. "style": "default"
  623. },
  624. {
  625. "start": [75, 225],
  626. "end": [225, 225],
  627. "width": 2.5,
  628. "style": "default"
  629. }
  630. ],
  631. "victory": {
  632. "type": "elimination",
  633. "key_structures": [
  634. "barracks"
  635. ],
  636. "defeat_conditions": [
  637. "no_key_structures"
  638. ]
  639. },
  640. "rain": {
  641. "enabled": true,
  642. "type": "snow",
  643. "cycleDuration": 400.0,
  644. "activeDuration": 120.0,
  645. "intensity": 0.65,
  646. "fadeDuration": 8.0,
  647. "windStrength": 0.3
  648. }
  649. }