{
	/// These are objects that can not be configured, either due to
	/// their hardcoded status or because they don't have any configurable functionality
	"prison" : {
		"index" :62,
		"handler": "prison",
		"base" : {
			"sounds" : {
				"visit" : ["ROGUE"]
			}
		},
		"types" : {
			"prison" : {
				"index" : 0,
				"aiValue" : 5000,
				"removable": true
			}
		}
	},

	"pandoraBox" : {
		"index" :6,
		"handler" : "pandora",
		"base" : {
			"sounds" : {
				"visit" : ["MYSTERY"],
				"removal" : [ "PICKUP01", "PICKUP02", "PICKUP03", "PICKUP04", "PICKUP05", "PICKUP06", "PICKUP07" ]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 10000,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "ava0128.def", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				},
				"rmg" : {
				}
			}
		}
	},
	"event" : {
		"index" :26,
		"handler" : "event",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"rmg" : {
				}
			}
		}
	},

	"whirlpool" : {
		"index" :111,
		"handler" : "whirlpool",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPWHIR"],
				"visit" : ["DANGER"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"rmg" : {
				}
			}
		}
	},
	"subterraneanGate" : {
		"index" :103,
		"handler" : "subterraneanGate",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPGATE"],
				"visit" : ["CAVEHEAD"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0 
			}
		}
	},

	"refugeeCamp" : {
		"index" :78,
		"handler" : "dwelling",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPMERC"],
				"visit" : ["MILITARY"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 2000,
				"rmg" : {
					"value"		: 5000,
					"rarity"	: 20
				}
			}
		}
	},
	"warMachineFactory" : {
		"index" :106,
		"handler" : "dwelling",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPFACT"],
				"visit" : ["MILITARY"]
			},
			"creatures": [ ["ballista"], ["firstAidTent"], ["ammoCart"] ]
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 1500,
				"rmg" : {
					"zoneLimit"	: 1,
					"value"		: 1500,
					"rarity"	: 50
				}
			}
		}
	},
	"eyeOfTheMagi" : {
		"index" :27,
		"handler" : "magi",
		"base" : {
			"sounds" : {
				"visit" : ["LIGHTHOUSE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 0,
				"rmg" : {
				}
			}
		}
	},
	"hutOfTheMagi" : {
		"index" :37,
		"handler" : "magi",
		"base" : {
			"sounds" : {
				"visit" : ["LIGHTHOUSE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 750,
				"rmg" : {
				}
			}
		}
	},
	"obelisk" : {
		"index" :57,
		"handler" : "obelisk",
		"base" : {
			"sounds" : {
				"visit" : ["MYSTERY"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 350,
				"rmg" : {
					"mapLimit"	: 48,
					"value"		: 3500,
					"rarity"	: 200
				}
			}
		}
	},
	"oceanBottle" : {
		"index" :59,
		"handler" : "sign",
		"base" : {
			"sounds" : {
				"visit" : ["STORE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 0,
				"removable": true,
				"rmg" : {
				}
			}
		}
	},
	"shipyard" : {
		"index" :87,
		"handler" : "shipyard",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPLUMB"],
				"visit" : ["STORE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 1000,
				"rmg" : {
				},
				"boat" : "boatCastle"
			}
		}
	},
	"sign" : {
		"index" :91,
		"handler" : "sign",
		"base" : {
			"sounds" : {
				"visit" : ["STORE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 0,
				"rmg" : {
				}
			}
		}
	},
	"sirens" : {
		"index" :92,
		"handler" : "siren",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPSIRE"],
				"visit" : ["DANGER"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 100,
				"rmg" : {
					"zoneLimit"	: 1,
					"mapLimit"	: 32,
					"value"		: 100,
					"rarity"	: 20
				}
			}
		}
	},
	"denOfThieves" : {
		"index" :97,
		"handler" : "denOfThieves",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPDEN"],
				"visit" : ["MYSTERY"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 100,
				"templates" :
				{
					"green" : { "animation" : "avxdent.def", "visitableFrom" : [ "---", "+++", "+++" ], "mask" : [ "VV", "BA"], "allowedTerrains":["grass", "swamp", "dirt"] },
					"brown" : { "animation" : "avxdend0.def", "visitableFrom" : [ "---", "+++", "+++" ], "mask" : [ "VV", "BA"], "allowedTerrains":["sand", "lava", "rough", "snow", "subterra"] }
				},
				"rmg" : {
					"value"		: 100,
					"rarity"	: 100,
					"zoneLimit"	: 1
				}
			}
		}
	},
	"questGuard" : {
		"index" :215,
		"handler" : "questGuard",
		"base" : {
			"sounds" : {
				"visit" : ["CAVEHEAD"],
				"removal" : [ "PICKUP01", "PICKUP02", "PICKUP03", "PICKUP04", "PICKUP05", "PICKUP06", "PICKUP07" ]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 10000,
				"removable": true,
				"rmg" : {
				}
			}
		}
	},
	/// Random objects
	"randomTown"					: { "index" :77,  "handler": "randomTown", "types" : { "object" : { "index" : 0} }  },
	"randomHero" : {
		"index" :70,
		"handler": "randomHero",
		"types" : {
			"object" : {
				"index" : 0,
				"templates" : {
					"normal" : {
						"animation" : "AHRANDOM",
						"editorAnimation" : "AHRANDOM",
						"visitableFrom" : [
							"+++",
							"+-+",
							"+++"
						],
						"mask" : [
							"VVV",
							"VAV"
						]
					}
				}
			}
		}
	},
	"randomDwelling"				: { "index" :216, "handler": "randomDwelling", "types" : { "object" : { "index" : 0} }  },

	"randomArtifact" : {
		"index" :65,
		"handler": "randomArtifact",
		"types" : {
			"object" : {
				"index" : 0,
				"templates" : {
					"normal" : { "animation" : "AVArand", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomArtifactTreasure" : {
		"index" :66,
		"handler": "randomArtifact",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"rmg" : {
					"value"		: 2000,
					"rarity"	: 150
				},
				"templates" : {
					"normal" : { "animation" : "AVArnd1", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomArtifactMinor" : {
		"index" :67,
		"handler": "randomArtifact",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"rmg" : {
					"value"		: 5000,
					"rarity"	: 150
				},
				"templates" : {
					"normal" : { "animation" : "AVArnd2", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomArtifactMajor" : {
		"index" :68,
		"handler": "randomArtifact",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"rmg" : {
					"value"		: 10000,
					"rarity"	: 150
				},
				"templates" : {
					"normal" : { "animation" : "AVArnd3", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomArtifactRelic" : {
		"index" :69,
		"handler": "randomArtifact",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"rmg" : {
					"value"		: 20000,
					"rarity"	: 150
				},
				"templates" : {
					"normal" : { "animation" : "AVArnd4", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},

	"randomMonster" : {
		"index" :71,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"templates" : {
					"normal" : { "animation" : "AVWmrnd0", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel1" : {
		"index" :72,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon1", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel2" : {
		"index" :73,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon2", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel3" : {
		"index" :74,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon3", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel4" : {
		"index" :75,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon4", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel5" : {
		"index" :162,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"templates" : {
					"normal" : { "animation" : "AVWmon5", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel6" : {
		"index" :163,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon6", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},
	"randomMonsterLevel7" : {
		"index" :164,
		"handler": "randomMonster",
		"types" : {
			"object" : {
				"index" : 0,
				"removable": true,
				"templates" : {
					"normal" : { "animation" : "AVWmon7", "visitableFrom" : [ "+++", "+-+", "+++" ], "mask" : [ "VV", "VA"] }
				}
			}
		}
	},

	/// Classes without dedicated object
	"hillFort" : {
		"index" :35,
		"handler": "hillFort",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPSWAR"],
				"visit" : ["MILITARY"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 7000,
				"description" : "",
				"rmg" : {
					"zoneLimit"	: 1,
					"value"		: 7000,
					"rarity"	: 20
				},
				"upgradeCostFactor" : [
					0,  // level 1
					25,
					50,
					75,
					100 // level 5+
				]
			}
		}
	},
	"grail" : {
		"index" :36,
		"handler": "generic",
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 0,
				"removable": true,
				"rmg" : {
				}
			}
		}
	},
	"marketOfTime" : { // Unused/not implemented H3 object present on some RoE maps
		"index" :50,
		"handler": "generic",
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 0,
				"rmg" : {
				},
				"templates" : {
					"normal" : {
						"animation" : "AVXMKTT0",
						"editorAnimation" : "AVXMKTT0",
						"visitableFrom" : [
							"---",
							"--+",
							"+++"
						],
						"mask" : [
							"VV",
							"BV"
						]
					}
				}
			}
		}
	},
	"tavern" : {
		"index" :95,
		"handler": "generic",
		"base" : {
			"blockVisit": true,
			"sounds" : {
				"ambient" : ["LOOPTAV"],
				"visit" : ["STORE"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 100,
				"rmg" : {
					"zoneLimit"	: 1,
					"value"		: 100,
					"rarity"	: 20
				}
			}
		}
	},
	"sanctuary" : {
		"index" :80,
		"handler": "generic",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPSANC"],
				"visit" : ["GETPROTECTION"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"aiValue" : 100,
				"rmg" : {
					"zoneLimit"	: 1,
					"value"		: 100,
					"rarity"	: 50
				}
			}
		}
	},

	/// Passive objects, terrain overlays
	"cursedGround" : {
		"index" : 21,
		"handler": "terrain",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPCURS"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"battleground": "cursed_ground"
			}
		}
	},
	"magicPlains" : {
		"index" : 46,
		"handler" : "terrain",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPMAGI"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"battleground": "magic_plains"
			}
		}
	},
	"cloverField" : {
		"index" :222, 
		"handler": "terrain", 
		"types" : { "object" : { "index" : 0, "battleground": "clover_field" } }
	},
	"cursedGroundDUPLICATE"	: {
		"index" : 223,
		"handler" : "terrain",
		"types" : {
			"object" : {
				"index" : 0,
				"battleground": "cursed_ground"
			}
		},
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPCURS"]
			}
		}
	},
	"evilFog" : {
		"index" :224,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "evil_fog" } }
	},
	"favorableWinds" : {
		"index" :225,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "ship" } }
	},
	"fieryFields": {
		"index" :226,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "fiery_fields" } }
	},
	"holyGround" : {
		"index" :227,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "holy_ground" } }
	},
	"lucidPools" : {
		"index" :228,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "lucid_pools" } }
	},
	"magicClouds" : {
		"index" :229,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "magic_clouds" } }
	},
	"magicPlainsDUPLICATE" : {
		"index" : 230,
		"handler": "terrain",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPMAGI"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0,
				"battleground": "magic_plains"
			}
		}
	},
	"rocklands"	: {
		"index" :231,
		"handler": "terrain",
		"types" : { "object" : { "index" : 0, "battleground": "rocklands" } }
	},

	/// Decorations
	"cactus"						: { "index" :116, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"canyon"						: { "index" :117, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"crater"						: { "index" :118, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"deadVegetation"				: { "index" :119, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"flowers"						: { "index" :120, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"frozenLake"					: { "index" :121, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"hole"							: { "index" :124, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"kelp"							: { "index" :125, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"lake"							: { "index" :126, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"lavaFlow"						: { "index" :127, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"lavaLake"						: { "index" :128, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"mushrooms"						: { "index" :129, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"log"							: { "index" :130, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"mandrake"						: { "index" :131, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"moss"							: { "index" :132, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"mound"							: { "index" :133, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"mountain"						: { "index" :134, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"oakTrees"						: { "index" :135, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"outcropping"					: { "index" :136, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"pineTrees"						: { "index" :137, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"riverDelta"					: { "index" :143, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"rock"							: { "index" :147, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"sandDune"						: { "index" :148, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"sandPit"						: { "index" :149, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"shrub"							: { "index" :150, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"skull"							: { "index" :151, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"stump"							: { "index" :153, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"trees"							: { "index" :155, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"volcano"	: {
		"index" : 158,
		"handler": "static",
		"base" : {
			"sounds" : {
				"ambient" : ["LOOPVOLC"]
			}
		},
		"types" : {
			"object" : {
				"index" : 0
			}
		}
	},
	"reef"							: { "index" :161, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"lakeDUPLICATE"					: { "index" :177, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"treesDUPLICATE"				: { "index" :199, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"desertHills"					: { "index" :206, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"dirtHills"						: { "index" :207, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"grassHills"					: { "index" :208, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"roughHills"					: { "index" :209, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"subterraneanRocks"				: { "index" :210, "handler": "static", "types" : { "object" : { "index" : 0} } },
	"swampFoliage" 					: { "index" :211, "handler": "static", "types" : { "object" : { "index" : 0} } },
	
	/// special object to handle invalid / unknown objects on some user-made maps
	"nothing" : {
		"index" : 0,
		"handler": "generic",
		"types" : {
			"nothing" : {
				"index" : 0
			}
		}
	}
}
