1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
vcmi/config/objects/generic.json
Ivan Savenko f59834afe1 Fixes for configurable markets support
- string "speech" can now be translated
- removed "title" string, VCMI will now use object name instead
- moved configuration of all "markets" into a separate json file
- added schema for validation of market objects
- removed serialization of translated strings from University
2024-11-20 15:45:13 +00:00

798 lines
17 KiB
JSON

{
/// 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
}
}
}
}