# Main format ``` javascript { "spellName": { //numeric id of spell required only for original spells, prohibited for new spells "index": 0, //Original Heroes 3 info //Mandatory, spell type "type": "adventure",//"adventure", "combat", "ability" //Mandatory, spell target type "targetType":"NO_TARGET",//"CREATURE","OBSTACLE"."LOCATION" //Mandatory "name": "Localizable name", //Mandatory, flags structure of school names, Spell schools this spell belongs to "school": {"air":true, "earth":true, "fire":true, "water":true}, //number, mandatory, Spell level, value in range 1-5 "level": 1, //Mandatory, base power "power": 10, //Mandatory, default chance for this spell to appear in Mage Guilds //Used only if chance for a faction is not set in gainChance field "defaultGainChance": 0, //Optional, chance for it to appear in Mage Guild of a specific faction //NOTE: this field is linker with faction configuration "gainChance": { "factionName": 3 }, //VCMI info "animation":{}, //countering spells, flags structure of spell ids (spell. prefix is required) "counters": {"spell.spellID1":true, ...} //Mandatory,flags structure: // indifferent, negative, positive - Positiveness of spell for target (required) // damage - spell does damage (direct or indirect) // offensive - direct damage (implicitly sets damage and negative) // rising - rising spell (implicitly sets positive) // summoning //todo: // special - can be obtained only with bonus::SPELL "flags" : {"flag1": true, "flag2": true}, //DEPRECATED | optional| no default | flags structure of bonus names,any one of these bonus grants immunity. Negatable by the Orb. "immunity": {"BONUS_NAME":true, ...}, //DEPRECATED | optional| no default | flags structure of bonus names //any one of these bonus grants immunity, cant be negated "absoluteImmunity": {"BONUS_NAME": true, ...}, //DEPRECATED | optional| no default | flags structure of bonus names, presence of all bonuses required to be affected by. Negatable by the Orb. "limit": {"BONUS_NAME": true, ...}, //DEPRECATED | optional| no default | flags structure of bonus names, presence of all bonuses required to be affected by. Cant be negated "absoluteLimit": {"BONUS_NAME": true, ...}, //[WIP] optional | default no limit no immunity // "targetCondition" { //at least one required to be affected "anyOf" : { //generic format "mod:metaClassName.typeName":"absolute",//"normal", null or empty ignored - use for overrides }, //all required to be affected (like [absolute]limit) "allOf" : { //bonus type format "bonus.BONUS_TYPE":"absolute"//"normal" Short bonus type format "modId:bonus.bonusTypeName":"absolute"//"normal" Future bonus format for configurable bonuses }, //at least one grants immunity (like [absolute]immunity) "noneOf": { //some more examples "core:creature.imp":"absolute", //[to be in initial version] this creature explicitly absolutely immune "core:bonus.MIND_IMMUITY":"normal", // [to be in initial version] new format of existing mind spell immunity "core:artifact.armorOfWonder":"absolute", //[possible future extension] this artifact on target itself (!) explicitly grant absolute immune "core:luck":["absolute", 3], // [possible future extension] lack value of at least 3 grant absolute immunity from this horrible spell "core:custom":[