1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-08-13 19:54:17 +02:00

Merge pull request #2278 from vcmi/rmg_factions

Rmg factions
This commit is contained in:
DjWarmonger
2023-07-06 22:15:36 +02:00
committed by GitHub
37 changed files with 349 additions and 608 deletions

View File

@@ -633,6 +633,14 @@ namespace vstd
return v3;
}
template <typename T>
std::set<T> difference(const std::set<T> &s1, const std::set<T> s2)
{
std::set<T> s3;
std::set_difference(s1.begin(), s1.end(), s2.begin(), s2.end(), std::inserter(s3, s3.end()));
return s3;
}
template <typename Key, typename V>
bool containsMapping(const std::multimap<Key,V> & map, const std::pair<const Key,V> & mapping)
{

View File

@@ -12,7 +12,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold" ],
"bannedTowns" : ["fortress", "necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -28,7 +28,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold" ],
"bannedTowns" : ["fortress", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -39,7 +39,7 @@
"owner" : 3,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold" ],
"bannedTowns" : ["fortress", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -50,7 +50,7 @@
"owner" : 4,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold" ],
"bannedTowns" : ["fortress", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -60,7 +60,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "conflux" ],
"bannedTowns" : ["fortress", "necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "lava" ],
"mines" : { "mercury" : 1, "sulfur" : 1 },
@@ -77,7 +77,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "conflux" ],
"bannedTowns" : ["fortress", "necropolis"],
"terrainTypeLikeZone" : 5,
"mines" : { "crystal" : 1, "gems" : 1 },
"treasureLikeZone" : 5
@@ -88,7 +88,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "conflux" ],
"bannedTowns" : ["fortress", "necropolis"],
"terrainTypeLikeZone" : 5,
"mines" : { "sulfur" : 1, "gems" : 1 },
"treasureLikeZone" : 5
@@ -99,7 +99,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "conflux" ],
"bannedTowns" : ["fortress", "necropolis"],
"terrainTypeLikeZone" : 5,
"mines" : { "mercury" : 1, "crystal" : 1 },
"treasureLikeZone" : 5

View File

@@ -14,7 +14,7 @@
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"townsAreSameType" : true,
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1 },
"treasure" :
[
@@ -32,7 +32,7 @@
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"townsAreSameType" : true,
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -13,7 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -29,7 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -128,7 +128,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -145,7 +145,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -255,7 +255,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -272,7 +272,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -12,7 +12,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -29,7 +28,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -13,8 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1, "gold" : 2 },
"treasure" :
[
@@ -30,8 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -42,7 +40,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "subterra", "lava" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
@@ -60,7 +57,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 3,
"treasureLikeZone" : 3
@@ -72,7 +68,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"mines" : { "wood" : 1 },
"treasure" :
@@ -89,7 +84,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 5,
"treasureLikeZone" : 5
@@ -101,7 +95,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"mines" : { "ore" : 1 },
"treasure" :
@@ -118,7 +111,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 7,
"treasureLikeZone" : 7
@@ -129,7 +121,6 @@
"size" : 20,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"treasure" :
@@ -144,7 +135,6 @@
"size" : 20,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
},
@@ -154,7 +144,6 @@
"size" : 20,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
},
@@ -164,7 +153,6 @@
"size" : 20,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
}
@@ -205,8 +193,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1, "gold" : 2 },
"treasure" :
[
@@ -222,8 +209,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -234,7 +220,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "subterra", "lava" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
@@ -252,7 +237,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 3,
"treasureLikeZone" : 3
@@ -264,7 +248,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"mines" : { "wood" : 1 },
"treasure" :
@@ -281,7 +264,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 5,
"treasureLikeZone" : 5
@@ -293,7 +275,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"mines" : { "ore" : 1 },
"treasure" :
@@ -310,7 +291,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 7,
"treasureLikeZone" : 7
@@ -321,7 +301,6 @@
"size" : 17,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"treasure" :
@@ -336,7 +315,6 @@
"size" : 17,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
},
@@ -346,7 +324,6 @@
"size" : 17,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
},
@@ -356,7 +333,6 @@
"size" : 17,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 9,
"treasureLikeZone" : 9
}

View File

@@ -13,8 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1, "gold" : 3 },
"treasure" :
[
@@ -30,8 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -42,7 +40,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "grass", "subterra" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
@@ -59,7 +56,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "subterra", "lava" ],
"minesLikeZone" : 3,
@@ -72,7 +68,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"treasure" :
@@ -89,7 +84,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -100,7 +94,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -111,7 +104,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -121,7 +113,6 @@
"size" : 15,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasure" :
[
@@ -136,7 +127,6 @@
"size" : 15,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 9
}
@@ -177,8 +167,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1, "gold" : 3 },
"treasure" :
[
@@ -194,8 +183,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -206,7 +194,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "grass", "subterra" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
@@ -223,7 +210,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "subterra", "lava" ],
"minesLikeZone" : 3,
@@ -236,7 +222,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"treasure" :
@@ -253,7 +238,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -264,7 +248,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -275,7 +258,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -285,7 +267,6 @@
"size" : 25,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasure" :
[
@@ -300,7 +281,6 @@
"size" : 25,
"monsters" : "strong",
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 9
}

View File

@@ -12,7 +12,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"allowedMonsters" : [ "castle", "tower", "inferno", "stronghold", "fortress", "neutral", "conflux" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -29,7 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"allowedMonsters" : [ "castle", "tower", "inferno", "stronghold", "fortress", "neutral", "conflux" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -95,7 +95,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis", "castle"],
"allowedMonsters" : [ "castle", "tower", "inferno", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 3,
"mines" : { "gold" : 2 },
@@ -112,7 +112,7 @@
"size" : 15,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis", "castle"],
"allowedMonsters" : [ "castle", "tower", "inferno", "stronghold", "fortress", "conflux" ],
"terrainTypeLikeZone" : 4,
"minesLikeZone" : 7,
@@ -124,7 +124,7 @@
"size" : 5,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis", "castle"],
"allowedMonsters" : [ "rampart", "necropolis", "dungeon", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "snow" ],
@@ -141,7 +141,7 @@
"size" : 5,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis", "castle"],
"allowedMonsters" : [ "rampart", "necropolis", "dungeon", "neutral" ],
"terrainTypeLikeZone" : 9,
"minesLikeZone" : 9,

View File

@@ -13,7 +13,6 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "ore" : 1, "gold" : 1 },
"treasure" :
[
@@ -30,7 +29,6 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -39,7 +37,6 @@
"type" : "treasure",
"size" : 15,
"monsters" : "normal",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -48,7 +45,6 @@
"type" : "treasure",
"size" : 15,
"monsters" : "normal",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -57,7 +53,6 @@
"type" : "treasure",
"size" : 12,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -66,7 +61,6 @@
"type" : "treasure",
"size" : 12,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -75,7 +69,6 @@
"type" : "treasure",
"size" : 12,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -10,7 +10,6 @@
"type" : "playerStart", "size" : 30, "owner" : 1,
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"bannedTowns" : ["necropolis", "conflux"],
"monsters" : "weak",
"mines" : {"wood" : 4, "ore" : 4, "gems" : 1, "crystal" : 1, "sulfur" : 1, "mercury" : 1, "gold" : 2},
"treasure" : [
@@ -24,7 +23,6 @@
"type" : "playerStart", "size" : 30, "owner" : 2,
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"bannedTowns" : ["necropolis", "conflux"],
"monsters" : "weak",
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -34,7 +32,6 @@
"type" : "playerStart", "size" : 30, "owner" : 3,
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"bannedTowns" : ["necropolis", "conflux"],
"monsters" : "weak",
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -44,7 +41,6 @@
"type" : "playerStart", "size" : 30, "owner" : 4,
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"bannedTowns" : ["necropolis", "conflux"],
"monsters" : "weak",
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -54,7 +50,6 @@
"type" : "treasure", "size" : 40,
"neutralTowns" : { "castles" : 2 },
"terrainTypes" : [ "sand" ], "matchTerrainToTown" : false,
"bannedTowns" : ["necropolis", "conflux"],
"monsters" : "strong",
"mines" : {"gold" : 4},
"treasure" : [

View File

@@ -13,7 +13,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"mines" : { "wood" : 1, "mercury" : 0, "ore" : 1, "sulfur" : 0, "crystal" : 0, "gems" : 0, "gold" : 1 },
"treasure" :
[
@@ -27,7 +27,7 @@
"size" : 60,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand", "subterra" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
@@ -44,7 +44,7 @@
"size" : 100,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1, "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "grass" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 0 },
@@ -61,7 +61,7 @@
"size" : 100,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "subterra" ],
"mines" : { "wood" : 0, "mercury" : 1, "ore" : 0, "sulfur" : 0, "crystal" : 0, "gems" : 0, "gold" : 2 },
@@ -94,7 +94,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -104,7 +104,7 @@
"size" : 60,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 2,
"minesLikeZone" : 2,
"treasureLikeZone" : 2
@@ -115,7 +115,7 @@
"size" : 100,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1, "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 3,
"treasureLikeZone" : 3
@@ -126,7 +126,7 @@
"size" : 100,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 4,
"minesLikeZone" : 4,
"treasureLikeZone" : 4
@@ -158,7 +158,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"mines" : { "wood" : 1, "mercury" : 0, "ore" : 1, "sulfur" : 0, "crystal" : 0, "gems" : 0, "gold" : 1 },
"treasure" :
[
@@ -172,7 +172,7 @@
"size" : 60,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
@@ -189,7 +189,7 @@
"size" : 70,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2, "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "grass" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 0 },
@@ -206,7 +206,7 @@
"size" : 80,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt" ],
"mines" : { "wood" : 0, "mercury" : 1, "ore" : 0, "sulfur" : 0, "crystal" : 0, "gems" : 0, "gold" : 5 },
@@ -238,7 +238,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -248,7 +248,7 @@
"size" : 60,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 2,
"minesLikeZone" : 2,
"treasureLikeZone" : 2
@@ -259,7 +259,7 @@
"size" : 70,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2, "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 3,
"treasureLikeZone" : 3
@@ -270,7 +270,7 @@
"size" : 80,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"terrainTypeLikeZone" : 4,
"minesLikeZone" : 4,
"treasureLikeZone" : 4

View File

@@ -12,7 +12,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -27,7 +27,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -37,7 +37,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : [ "castle", "conflux"],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1 },
"treasure" :
[
@@ -51,7 +51,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : [ "rampart", "conflux" ],
"mines" : { "sulfur" : 1, "gems" : 1 },
"treasure" :
[
@@ -66,7 +66,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "fortress" ],
"bannedTowns" : ["castle", "stronghold", "conflux"],
"mines" : { "mercury" : 1, "crystal" : 1, "gems" : 1 },
"treasure" :
[
@@ -81,7 +81,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "conflux"],
"minesLikeZone" : 3,
"treasureLikeZone" : 3
},
@@ -91,7 +91,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["rampart", "conflux"],
"minesLikeZone" : 4,
"treasureLikeZone" : 4
},
@@ -101,6 +101,7 @@
"size" : 14,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"bannedTowns" : ["castle", "stronghold", "conflux"],
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "fortress" ],
"minesLikeZone" : 5,
"treasureLikeZone" : 5
@@ -330,7 +331,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -345,7 +346,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -11,7 +11,6 @@
"size" : 8,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "grass" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
"treasure" :
@@ -28,7 +27,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -42,7 +40,6 @@
"type" : "treasure",
"size" : 12,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasure" :
[
@@ -56,7 +53,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasure" :
[
@@ -70,7 +66,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasureLikeZone" : 4
},
@@ -80,7 +75,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "sand", "snow", "swamp", "lava" ],
"treasure" :
@@ -95,7 +89,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasureLikeZone" : 4
},
@@ -104,7 +97,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasureLikeZone" : 4
},
@@ -113,7 +105,6 @@
"type" : "treasure",
"size" : 12,
"monsters" : "strong",
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"treasureLikeZone" : 3
},
@@ -124,7 +115,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 2,
"treasureLikeZone" : 2
},
@@ -134,7 +124,6 @@
"size" : 8,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "grass" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -12,8 +12,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -29,8 +27,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -42,7 +38,6 @@
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
"treasure" :
[
@@ -59,7 +54,6 @@
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 3,
"treasureLikeZone" : 3
},
@@ -70,7 +64,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"treasure" :
[
{ "min" : 6000, "max" : 8000, "density" : 6 },
@@ -84,7 +77,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "gold" : 1 },
"treasure" :
[
@@ -116,7 +108,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 6,
"treasureLikeZone" : 6
},
@@ -144,7 +135,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 6,
"treasureLikeZone" : 6
},

View File

@@ -14,8 +14,6 @@
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"mines" : { "wood" : 4, "mercury" : 1, "ore" : 4, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 2 },
"treasure" :
[
@@ -32,8 +30,6 @@
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -45,8 +41,6 @@
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -58,8 +52,6 @@
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -69,8 +61,6 @@
"size" : 40,
"monsters" : "strong",
"neutralTowns" : { "castles" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"mines" : { "gold" : 4 },

View File

@@ -13,8 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -31,8 +30,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -44,7 +42,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1 },
@@ -62,7 +59,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 3,
"mines" : { "sulfur" : 1, "crystal" : 1, "gems" : 1 },
"treasureLikeZone" : 3
@@ -72,7 +68,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 3,
"mines" : { "mercury" : 1, "crystal" : 1, "gems" : 1 },
"treasureLikeZone" : 3
@@ -84,7 +79,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 3,
"treasureLikeZone" : 3
@@ -96,7 +90,6 @@
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "necropolis" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 4,
"treasureLikeZone" : 3
@@ -106,7 +99,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "strong",
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 3,
"minesLikeZone" : 5,
"treasureLikeZone" : 3
@@ -117,8 +109,7 @@
"size" : 50,
"monsters" : "strong",
"neutralTowns" : { "castles" : 4 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"bannedTowns" : ["necropolis", "conflux"],
"matchTerrainToTown" : false,
"terrainTypes" : [ "sand" ],
"mines" : { "wood" : 2, "ore" : 2, "gold" : 3 },

View File

@@ -14,7 +14,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
"treasure" :
@@ -31,7 +31,7 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -95,7 +95,7 @@
"size" : 20,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"treasure" :
[
@@ -110,7 +110,7 @@
"size" : 20,
"monsters" : "strong",
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["necropolis"],
"matchTerrainToTown" : false,
"treasureLikeZone" : 7
}

View File

@@ -13,7 +13,6 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "grass" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
@@ -32,7 +31,6 @@
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 2 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"terrainTypeLikeZone" : 1,
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -12,7 +12,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"allowedMonsters" : [ "castle", "rampart", "conflux" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -29,7 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"allowedMonsters" : [ "castle", "rampart", "conflux" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -128,7 +128,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"allowedMonsters" : [ "castle", "rampart", "conflux" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
@@ -145,7 +145,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"allowedMonsters" : [ "castle", "rampart", "conflux" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -13,7 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
"treasure" :
@@ -30,7 +30,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["castle", "necropolis", "conflux"],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1

View File

@@ -12,8 +12,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "gold" : 1 },
"treasure" :
[
@@ -28,8 +26,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -39,8 +35,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -51,9 +45,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
"treasure" :
[
@@ -68,7 +60,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "subterra", "lava" ],
"treasure" :
@@ -84,7 +75,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -95,9 +85,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 4,
"treasureLikeZone" : 4
},
@@ -107,7 +95,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -117,7 +104,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -128,9 +114,7 @@
"owner" : 3,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 4,
"treasureLikeZone" : 4
},
@@ -140,7 +124,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -150,7 +133,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -161,7 +143,6 @@
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "tower" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "snow" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 4 },
"treasure" :
@@ -209,8 +190,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"mines" : { "gold" : 1 },
"treasure" :
[
@@ -225,8 +204,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -236,8 +213,6 @@
"size" : 12,
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -248,9 +223,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1 },
"treasure" :
[
@@ -265,7 +238,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "dirt", "grass", "subterra", "lava" ],
"treasure" :
@@ -281,7 +253,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -292,9 +263,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 4,
"treasureLikeZone" : 4
},
@@ -304,7 +273,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -314,7 +282,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -325,9 +292,7 @@
"owner" : 3,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 4,
"treasureLikeZone" : 4
},
@@ -337,7 +302,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -347,7 +311,6 @@
"size" : 10,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 5,
"treasureLikeZone" : 5
},
@@ -358,7 +321,6 @@
"monsters" : "strong",
"neutralTowns" : { "castles" : 1 },
"allowedTowns" : [ "tower" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "snow" ],
"mines" : { "mercury" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 4 },
"treasure" :

View File

@@ -13,9 +13,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["tower", "necropolis", "conflux"],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 2 },
"treasure" :
[
@@ -31,9 +29,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["tower", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -44,9 +40,7 @@
"owner" : 3,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["tower", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -57,9 +51,7 @@
"owner" : 4,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "inferno", "dungeon", "stronghold", "fortress" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypes" : [ "dirt", "grass", "snow", "swamp", "rough", "subterra", "lava" ],
"bannedTowns" : ["tower", "necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -69,7 +61,6 @@
"size" : 4,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"treasure" :
[
{ "min" : 18000, "max" : 21000, "density" : 2 },
@@ -83,7 +74,6 @@
"size" : 4,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"treasureLikeZone" : 5
},
"7" :
@@ -92,7 +82,6 @@
"size" : 4,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"treasureLikeZone" : 5
},
"8" :
@@ -101,7 +90,6 @@
"size" : 4,
"monsters" : "strong",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"treasureLikeZone" : 5
},
"9" :

View File

@@ -14,7 +14,7 @@
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"townsAreSameType" : true,
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1 },
"treasure" :
[
@@ -32,7 +32,7 @@
"playerTowns" : { "castles" : 1 },
"neutralTowns" : { "towns" : 1 },
"townsAreSameType" : true,
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -103,7 +103,7 @@
"size" : 4,
"monsters" : "normal",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle"],
"mines" : { "crystal" : 1 },
"treasureLikeZone" : 6
},
@@ -122,7 +122,7 @@
"size" : 4,
"monsters" : "normal",
"neutralTowns" : { "towns" : 1 },
"allowedTowns" : [ "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "conflux" ],
"bannedTowns" : ["castle"],
"minesLikeZone" : 6,
"treasureLikeZone" : 6
},

File diff suppressed because it is too large Load Diff

View File

@@ -12,7 +12,7 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -28,7 +28,7 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"bannedTowns" : ["necropolis", "conflux"],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -12,7 +12,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -28,7 +27,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -248,7 +246,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -264,7 +261,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -484,7 +480,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "ore" : 1 },
"treasure" :
[
@@ -500,7 +495,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -12,7 +12,6 @@
"owner" : 1,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
"treasure" :
[
@@ -27,7 +26,6 @@
"owner" : 1,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -38,7 +36,6 @@
"owner" : 2,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -49,7 +46,6 @@
"owner" : 2,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -60,7 +56,6 @@
"owner" : 3,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},
@@ -71,7 +66,6 @@
"owner" : 3,
"monsters" : "weak",
"playerTowns" : { "castles" : 1 },
"allowedTowns" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress" ],
"minesLikeZone" : 1,
"treasureLikeZone" : 1
},

View File

@@ -12,7 +12,6 @@
"owner" : 1,
"monsters" : "normal",
"playerTowns" : { "towns" : 1, "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "snow" ],
"mines" : { "wood" : 1, "mercury" : 1, "ore" : 1, "sulfur" : 1, "crystal" : 1, "gems" : 1, "gold" : 1 },
@@ -30,7 +29,6 @@
"owner" : 2,
"monsters" : "normal",
"playerTowns" : { "towns" : 1, "castles" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"terrainTypeLikeZone" : 1,
"minesLikeZone" : 1,
"treasureLikeZone" : 1
@@ -43,7 +41,6 @@
"monsters" : "strong",
"playerTowns" : { "towns" : 2, "castles" : 3 },
"allowedTowns" : [ "inferno" ],
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"terrainTypes" : [ "lava" ],
"mines" : { "wood" : 2, "mercury" : 2, "ore" : 2, "sulfur" : 2, "crystal" : 2, "gems" : 2, "gold" : 2 },
@@ -60,7 +57,6 @@
"size" : 40,
"monsters" : "normal",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"minesLikeZone" : 1,
"treasure" :
@@ -75,7 +71,6 @@
"type" : "treasure",
"size" : 10,
"monsters" : "normal",
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"treasure" :
[
@@ -89,7 +84,6 @@
"type" : "treasure",
"size" : 15,
"monsters" : "normal",
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"treasure" :
[
@@ -103,7 +97,6 @@
"type" : "treasure",
"size" : 15,
"monsters" : "normal",
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"treasureLikeZone" : 6
},
@@ -142,7 +135,6 @@
"size" : 15,
"monsters" : "normal",
"neutralTowns" : { "towns" : 1 },
"allowedMonsters" : [ "castle", "rampart", "tower", "inferno", "necropolis", "dungeon", "stronghold", "fortress", "neutral" ],
"matchTerrainToTown" : false,
"treasure" :
[

View File

@@ -14,7 +14,10 @@
"playerTowns" : {"$ref" : "#/definitions/playerTowns"},
"neuralTowns" : {"$ref" : "#/definitions/neuralTowns"},
"townsAreSameType" : {"$ref" : "#/definitions/townsAreSameType"},
"terrainTypes": {"$ref" : "#/definitions/terrains"},
"bannedTerrains": {"$ref" : "#/definitions/terrains"},
"monsters" : {"$ref" : "#/definitions/monsters"},
"bannedMonsters" : {"$ref" : "#/definitions/monsters"},
"mines" : {"$ref" : "#/definitions/mines"},
"treasure" : {
"type" : "array",
@@ -42,7 +45,8 @@
},
"connection" :
{
"required" : ["a", "b", "guard"],
"required" : ["a", "b"],
"additionalProperties" : true,
"properties" : {
"a" : {
"type" : "string"
@@ -54,6 +58,12 @@
{
"type" : "number",
"minimum" : 0
},
"type":
{
"type" : "string",
"additionalProperties" : false,
"enum" : ["wide", "fictive", "repulsive"]
}
}
},
@@ -68,6 +78,9 @@
{
"required" : ["zones", "connections"],
"additionalProperties" : false,
"description" : {
"type": "string"
},
"zones" : {
"type" : "object",
"additionalProperties" : {"$ref" : "#/definitions/zone" }

View File

@@ -33,6 +33,7 @@
#include "StringConstants.h"
#include "CGeneralTextHandler.h"
#include "CModHandler.h"//todo: remove
#include "TerrainHandler.h" //TODO: remove
#include "BattleFieldHandler.h"
#include "ObstacleHandler.h"
@@ -203,7 +204,7 @@ const FactionID FactionID::NEUTRAL = FactionID(9);
si32 FactionID::decode(const std::string & identifier)
{
auto rawId = VLC->modh->identifiers.getIdentifier(CModHandler::scopeGame(), "faction", identifier);
auto rawId = VLC->modh->identifiers.getIdentifier(CModHandler::scopeGame(), entityType(), identifier);
if(rawId)
return rawId.value();
else
@@ -215,6 +216,31 @@ std::string FactionID::encode(const si32 index)
return VLC->factions()->getByIndex(index)->getJsonKey();
}
std::string FactionID::entityType()
{
return "faction";
}
si32 TerrainID::decode(const std::string & identifier)
{
auto rawId = VLC->modh->identifiers.getIdentifier(CModHandler::scopeGame(), entityType(), identifier);
if(rawId)
return rawId.value();
else
return static_cast<si32>(ETerrainId::NONE);
}
std::string TerrainID::encode(const si32 index)
{
return VLC->terrainTypeHandler->getByIndex(index)->getJsonKey();
}
std::string TerrainID::entityType()
{
return "terrain";
}
std::ostream & operator<<(std::ostream & os, const EActionType actionType)
{
static const std::map<EActionType, std::string> actionTypeToString =

View File

@@ -459,11 +459,19 @@ class FactionID : public BaseForID<FactionID, int32_t>
DLL_LINKAGE static const FactionID CONFLUX;
DLL_LINKAGE static const FactionID NEUTRAL;
///json serialization helpers
static si32 decode(const std::string & identifier);
static si32 decode(const std::string& identifier);
static std::string encode(const si32 index);
static std::string entityType();
};
class TerrainID
{
//Dummy class used only for serialization
public:
static si32 decode(const std::string & identifier);
static std::string encode(const si32 index);
static std::string entityType();
};
class BuildingID
{

View File

@@ -65,6 +65,7 @@ void CTreasureInfo::serializeJson(JsonSerializeFormat & handler)
namespace rmg
{
//FIXME: This is never used, instead TerrainID is used
class TerrainEncoder
{
public:
@@ -145,9 +146,6 @@ ZoneOptions::ZoneOptions():
terrainTypeLikeZone(NO_ZONE),
treasureLikeZone(NO_ZONE)
{
for(const auto & terr : VLC->terrainTypeHandler->objects)
if(terr->isLand() && terr->isPassable())
terrainTypes.insert(terr->getId());
}
TRmgTemplateZoneId ZoneOptions::getId() const
@@ -187,18 +185,36 @@ std::optional<int> ZoneOptions::getOwner() const
return owner;
}
const std::set<TerrainId> & ZoneOptions::getTerrainTypes() const
const std::set<TerrainId> ZoneOptions::getTerrainTypes() const
{
return terrainTypes;
if (terrainTypes.empty())
{
return vstd::difference(getDefaultTerrainTypes(), bannedTerrains);
}
else
{
return terrainTypes;
}
}
void ZoneOptions::setTerrainTypes(const std::set<TerrainId> & value)
{
//assert(value.find(ETerrainType::NONE) == value.end() &&
// value.find(ETerrainType::WATER) == value.end() && value.find(ETerrainType::ROCK) == value.end());
terrainTypes = value;
}
std::set<TerrainId> ZoneOptions::getDefaultTerrainTypes() const
{
std::set<TerrainId> terrains;
for (auto terrain : VLC->terrainTypeHandler->objects)
{
if (terrain->isLand() && terrain->isPassable())
{
terrains.insert(terrain->getId());
}
}
return terrains;
}
std::set<FactionID> ZoneOptions::getDefaultTownTypes() const
{
std::set<FactionID> defaultTowns;
@@ -210,9 +226,17 @@ std::set<FactionID> ZoneOptions::getDefaultTownTypes() const
return defaultTowns;
}
const std::set<FactionID> & ZoneOptions::getTownTypes() const
const std::set<FactionID> ZoneOptions::getTownTypes() const
{
return townTypes;
if (townTypes.empty())
{
//Assume that all towns are allowed, unless banned
return vstd::difference(getDefaultTownTypes(), bannedTownTypes);
}
else
{
return vstd::difference(townTypes, bannedTownTypes);
}
}
void ZoneOptions::setTownTypes(const std::set<FactionID> & value)
@@ -225,9 +249,9 @@ void ZoneOptions::setMonsterTypes(const std::set<FactionID> & value)
monsterTypes = value;
}
const std::set<FactionID> & ZoneOptions::getMonsterTypes() const
const std::set<FactionID> ZoneOptions::getMonsterTypes() const
{
return monsterTypes;
return vstd::difference(monsterTypes, bannedMonsters);
}
void ZoneOptions::setMinesInfo(const std::map<TResource, ui16> & value)
@@ -350,37 +374,15 @@ void ZoneOptions::serializeJson(JsonSerializeFormat & handler)
if(terrainTypeLikeZone == NO_ZONE)
{
JsonNode node;
if(handler.saving)
{
node.setType(JsonNode::JsonType::DATA_VECTOR);
for(const auto & ttype : terrainTypes)
{
JsonNode n;
n.String() = VLC->terrainTypeHandler->getById(ttype)->getJsonKey();
node.Vector().push_back(n);
}
}
handler.serializeRaw("terrainTypes", node, std::nullopt);
if(!handler.saving)
{
if(!node.Vector().empty())
{
terrainTypes.clear();
for(const auto & ttype : node.Vector())
{
VLC->modh->identifiers.requestIdentifier("terrain", ttype, [this](int32_t identifier)
{
terrainTypes.emplace(identifier);
});
}
}
}
handler.serializeIdArray<TerrainId, TerrainID>("terrainTypes", terrainTypes, std::set<TerrainId>());
handler.serializeIdArray<TerrainId, TerrainID>("bannedTerrains", bannedTerrains, std::set<TerrainId>());
}
handler.serializeBool("townsAreSameType", townsAreSameType, false);
handler.serializeIdArray<FactionID, FactionID>("allowedMonsters", monsterTypes, VLC->townh->getAllowedFactions(false));
handler.serializeIdArray<FactionID, FactionID>("allowedTowns", townTypes, VLC->townh->getAllowedFactions(true));
handler.serializeIdArray<FactionID>("allowedMonsters", monsterTypes, std::set<FactionID>());
handler.serializeIdArray<FactionID>("bannedMonsters", bannedMonsters, std::set<FactionID>());
handler.serializeIdArray<FactionID>("allowedTowns", townTypes, std::set<FactionID>());
handler.serializeIdArray<FactionID>("bannedTowns", bannedTownTypes, std::set<FactionID>());
{
//TODO: add support for std::map to serializeEnum
@@ -733,8 +735,6 @@ void CRmgTemplate::serializeJson(JsonSerializeFormat & handler)
}
}
}
if(!handler.saving)
afterLoad();
}
std::set<TerrainId> CRmgTemplate::inheritTerrainType(std::shared_ptr<ZoneOptions> zone, uint32_t iteration /* = 0 */)
@@ -750,6 +750,7 @@ std::set<TerrainId> CRmgTemplate::inheritTerrainType(std::shared_ptr<ZoneOptions
const auto otherZone = zones.at(zone->getTerrainTypeLikeZone());
zone->setTerrainTypes(inheritTerrainType(otherZone, iteration));
}
//This implicitely excludes banned terrains
return zone->getTerrainTypes();
}
@@ -795,12 +796,17 @@ void CRmgTemplate::afterLoad()
inheritTerrainType(zone);
inheritMineTypes(zone);
inheritTreasureInfo(zone);
//TODO: Inherit monster types as well
auto monsterTypes = zone->getMonsterTypes();
if (monsterTypes.empty())
{
zone->setMonsterTypes(VLC->townh->getAllowedFactions(false));
}
}
for(const auto & connection : connectedZoneIds)
{
//TODO: Remember connection details and allow to access them from anywhere
auto id1 = connection.getZoneA();
auto id2 = connection.getZoneB();

View File

@@ -139,14 +139,15 @@ public:
void setSize(int value);
std::optional<int> getOwner() const;
const std::set<TerrainId> & getTerrainTypes() const;
const std::set<TerrainId> getTerrainTypes() const;
void setTerrainTypes(const std::set<TerrainId> & value);
std::set<TerrainId> getDefaultTerrainTypes() const;
const CTownInfo & getPlayerTowns() const;
const CTownInfo & getNeutralTowns() const;
std::set<FactionID> getDefaultTownTypes() const;
const std::set<FactionID> & getTownTypes() const;
const std::set<FactionID> & getMonsterTypes() const;
const std::set<FactionID> getTownTypes() const;
const std::set<FactionID> getMonsterTypes() const;
void setTownTypes(const std::set<FactionID> & value);
void setMonsterTypes(const std::set<FactionID> & value);
@@ -185,10 +186,13 @@ protected:
CTownInfo neutralTowns;
bool matchTerrainToTown;
std::set<TerrainId> terrainTypes;
std::set<TerrainId> bannedTerrains;
bool townsAreSameType;
std::set<FactionID> townTypes;
std::set<FactionID> bannedTownTypes;
std::set<FactionID> monsterTypes;
std::set<FactionID> bannedMonsters;
std::map<TResource, ui16> mines; //obligatory mines to spawn in this zone
@@ -245,6 +249,7 @@ public:
void validate() const; /// Tests template on validity and throws exception on failure
void serializeJson(JsonSerializeFormat & handler);
void afterLoad();
private:
std::string id;
@@ -255,7 +260,6 @@ private:
std::vector<rmg::ZoneConnection> connectedZoneIds;
std::set<EWaterContent::EWaterContent> allowedWaterContent;
void afterLoad();
std::set<TerrainId> inheritTerrainType(std::shared_ptr<rmg::ZoneOptions> zone, uint32_t iteration = 0);
std::map<TResource, ui16> inheritMineTypes(std::shared_ptr<rmg::ZoneOptions> zone, uint32_t iteration = 0);
std::vector<CTreasureInfo> inheritTreasureInfo(std::shared_ptr<rmg::ZoneOptions> zone, uint32_t iteration = 0);

View File

@@ -26,6 +26,14 @@ void CRmgTemplateStorage::loadObject(std::string scope, std::string name, const
loadObject(scope, name, data);
}
void CRmgTemplateStorage::afterLoadFinalization()
{
for (auto& temp : templates)
{
temp.second.afterLoad();
}
}
void CRmgTemplateStorage::loadObject(std::string scope, std::string name, const JsonNode & data)
{
try

View File

@@ -31,6 +31,8 @@ public:
virtual void loadObject(std::string scope, std::string name, const JsonNode & data) override;
virtual void loadObject(std::string scope, std::string name, const JsonNode & data, size_t index) override;
void afterLoadFinalization() override;
const CRmgTemplate* getTemplate(const std::string & templateName) const;
std::vector<const CRmgTemplate *> getTemplates() const;

View File

@@ -73,13 +73,22 @@ void TerrainPainter::initTerrainType()
auto terrainTypes = zone.getTerrainTypes();
if (terrainTypes.empty())
{
logGlobal->warn("No terrain types found, falling back to DIRT");
zone.setTerrainType(ETerrainId::DIRT);
}
else
{
zone.setTerrainType(*RandomGeneratorUtil::nextItem(terrainTypes, zone.getRand()));
//Fill with all terain types by default
{
for (auto terrain : VLC->terrainTypeHandler->objects)
{
if (terrain->isLand() && terrain->isPassable())
{
if ((terrain->isSurface() && !zone.isUnderground()) ||
(terrain->isUnderground() && zone.isUnderground()))
{
terrainTypes.insert(TerrainId(terrain->getId()));
}
}
}
}
}
zone.setTerrainType(*RandomGeneratorUtil::nextItem(terrainTypes, zone.getRand()));
}
//Now, replace disallowed terrains on surface and in the underground

View File

@@ -10,6 +10,8 @@
#pragma once
#include "../JsonNode.h"
#include "../CModHandler.h"
#include "../VCMI_Lib.h"
VCMI_LIB_NAMESPACE_BEGIN
@@ -334,6 +336,8 @@ public:
}
///si32-convertible identifier set <-> Json array of string
///Type U is only used for code & decode
///TODO: Auto deduce U based on T?
template <typename T, typename U = T>
void serializeIdArray(const std::string & fieldName, std::set<T> & value, const std::set<T> & defaultValue)
{
@@ -348,12 +352,14 @@ public:
si32 item = static_cast<si32>(vitem);
temp.push_back(item);
}
serializeInternal(fieldName, temp, &U::decode, &U::encode);
}
serializeInternal(fieldName, temp, &U::decode, &U::encode);
if(!saving)
{
if(temp.empty())
JsonNode node;
serializeRaw(fieldName, node, std::nullopt);
if(node.Vector().empty())
{
value = defaultValue;
}
@@ -361,10 +367,12 @@ public:
{
value.clear();
for(const si32 item : temp)
for(const auto & id : node.Vector())
{
T vitem = static_cast<T>(item);
value.insert(vitem);
VLC->modh->identifiers.requestIdentifier(U::entityType(), id, [&value](int32_t identifier)
{
value.emplace(identifier);
});
}
}
}