1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-03-25 21:38:59 +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
commit f9e1a70ab8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
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

@ -30,6 +30,8 @@ public:
/// loads single object into game. Scope is namespace of this object, same as name of source mod
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);
});
}
}
}