|
|
| (52 intermediate revisions by 3 users not shown) |
| Line 1: |
Line 1: |
| − | ''Current draft. WiP.''
| + | {{Template:MovedToWebpage|https://vcmi.eu/modders/Entities_Format/Spell_Format/}} |
| − | | |
| − | <syntaxhighlight lang="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
| |
| − | "name": "Localizable name",
| |
| − | //Mandatory, Spell schools this spell belongs to
| |
| − | "school": ["air", "earth", "fire", "water"],
| |
| − | //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
| |
| − |
| |
| − | // anim: main effect animation (AC format), -1 - none
| |
| − | //TODO: more flexible system to allow defining custom spell effects
| |
| − | "anim": -1,
| |
| − |
| |
| − | // counters: array of ids of countering spells
| |
| − | "counters": ["spellID", ...]
| |
| − | | |
| − | //Mandatory, string array of:
| |
| − | // 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:
| |
| − | "flags" : ["flag1", "flag2"],
| |
| − | | |
| − | //string array of bonus names, any one of these bonus grants immunity
| |
| − | "immunity": ["BONUS_NAME", ...],
| |
| − |
| |
| − | //optional| no default | string array of bonus names
| |
| − | //any one of these bonus grants immunity, cant be negated
| |
| − | "absoluteImmunity": ["BONUS_NAME", ...],
| |
| − | | |
| − | //string array of bonus names, presence of all bonuses required to be affected by
| |
| − | "limit": ["BONUS_NAME", ...],
| |
| − | | |
| − | //graphics - OPTIONAL; object;
| |
| − | "graphics":
| |
| − | {
| |
| − | // iconImmune - OPTIONAL; string;
| |
| − | //resourse path of icon for SPELL_IMMUNITY bonus (relative to DATA or SPRITES)
| |
| − | "iconImmune":"ZVS/LIB1.RES/E_SPMET"
| |
| − | },
| |
| − | //Mandatory 4 element array of objects
| |
| − | //configuration for no skill, basic, adv, expert
| |
| − | "levels":[
| |
| − | {
| |
| − | //Mandatory, localizable description
| |
| − | //Use {xxx} for formatting
| |
| − | "description": "",
| |
| − | | |
| − | | |
| − | //Mandatory, number,
| |
| − | //cost in mana points
| |
| − | "cost": 1,
| |
| − | | |
| − | //Mandatory, number
| |
| − | "power": 10,
| |
| − | | |
| − | //Mandatory, number
| |
| − | "aiValue": 20,
| |
| − | | |
| − | //Mandatory, spell target type
| |
| − | "targetType":"NO_TARGET",//"CREATURE","OBSTACLE"
| |
| − |
| |
| − | //Mandatory
| |
| − | //spell range description in SRSL
| |
| − | "range": "X",
| |
| − | | |
| − | //Optional, arbitrary name - bonus format map
| |
| − | //timed effects, overriding by name
| |
| − | "effects":
| |
| − | {
| |
| − | "firstEffect": {[bonus format]},
| |
| − | "secondEffect": {[bonus format]}
| |
| − |
| |
| − | }
| |
| − | },
| |
| − | {...},{...},{...}
| |
| − | ]
| |
| − | }
| |
| − | | |
| − | }
| |
| − | | |
| − | </syntaxhighlight>
| |
| − | | |
| − | {{Modding}}
| |