; KeeperFX Magic Configuration file
; file version 0.34

[common]
; Spells are casted by creatures at their position. They can affect the caster or surrounding
; things. They can also generate a shot, which can reach more distant target.
SpellsCount = 30
; Shots are generated by spells to move the place of effect. They can be directed towards a thing
; and even navigated, or just released at some angle in the dungeon with no particular target.
ShotsCount = 32
; Powers are spells which have several levels of strengths and can be casted not only
; by a creature, but also by a keeper
PowerCount = 20
; Specials are rare boxes a player can find, which provide reward of one time use
SpecialsCount = 9

[spell0]
Name = NOSPELL
; Whether the spell can target a thing or not
CastAtThing = 0
ShotModel = NOSHOT
Duration = 0

[spell1]
Name = SPELL_FIREBALL
CastAtThing = 1
ShotModel = SHOT_FIREBALL
Duration = 0

[spell2]
Name = SPELL_FIREBOMB
CastAtThing = 1
ShotModel = SHOT_FIREBOMB
Duration = 0

[spell3]
Name = SPELL_FREEZE
CastAtThing = 1
ShotModel = SHOT_FREEZE
Duration = 125

[spell4]
Name = SPELL_ARMOUR
CastAtThing = 0
ShotModel = NOSHOT
Duration = 250
; Self casted spells causes their effect on the caster.
; The first argument is 1 if self casting is enabled, 0 otherwise.
; The 2nd argument provides a sound sample index to be played
; when the spell is self-casted.
SelfCasted = 1 37

[spell5]
Name = SPELL_LIGHTNING
CastAtThing = 1
ShotModel = SHOT_LIGHTNING
Duration = 0

[spell6]
Name = SPELL_REBOUND
CastAtThing = 0
ShotModel = NOSHOT
Duration = 250
SelfCasted = 1 37

[spell7]
Name = SPELL_HEAL
CastAtThing = 0
ShotModel = NOSHOT
Duration = 50
SelfCasted = 1 37

[spell8]
Name = SPELL_POISON_CLOUD
CastAtThing = 1
ShotModel = SHOT_POISON_CLOUD
Duration = 0

[spell9]
Name = SPELL_INVISIBILITY
CastAtThing = 0
ShotModel = NOSHOT
Duration = 500
SelfCasted = 1 37

[spell10]
Name = SPELL_TELEPORT
CastAtThing = 0
ShotModel = NOSHOT
Duration = 20
SelfCasted = 1 0

[spell11]
Name = SPELL_SPEED
CastAtThing = 0
ShotModel = NOSHOT
Duration = 500
SelfCasted = 1 38

[spell12]
Name = SPELL_SLOW
CastAtThing = 1
ShotModel = SHOT_SLOW
Duration = 500

[spell13]
Name = SPELL_DRAIN
CastAtThing = 1
ShotModel = SHOT_DRAIN
Duration = 0

[spell14]
Name = SPELL_FEAR
CastAtThing = 0
ShotModel = NOSHOT
Duration = 0
SelfCasted = 1 0

[spell15]
Name = SPELL_MISSILE
CastAtThing = 1
ShotModel = SHOT_MISSILE
Duration = 0

[spell16]
Name = SPELL_NAVI_MISSILE
CastAtThing = 1
ShotModel = SHOT_NAVI_MISSILE
Duration = 0

[spell17]
Name = SPELL_FLAME_BREATH
CastAtThing = 1
ShotModel = SHOT_FLAME_BREATH
Duration = 0

[spell18]
Name = SPELL_WIND
CastAtThing = 0
ShotModel = SHOT_WIND
Duration = 0

[spell19]
Name = SPELL_LIGHT
CastAtThing = 0
ShotModel = NOSHOT
Duration = 1000
SelfCasted = 1 0

[spell20]
Name = SPELL_FLIGHT
CastAtThing = 0
ShotModel = NOSHOT
Duration = 750
SelfCasted = 1 37

[spell21]
Name = SPELL_SIGHT
CastAtThing = 0
ShotModel = NOSHOT
Duration = 500
SelfCasted = 1 37

[spell22]
Name = SPELL_GRENADE
CastAtThing = 0
ShotModel = SHOT_GRENADE
Duration = 0

[spell23]
Name = SPELL_HAILSTORM
CastAtThing = 1
ShotModel = SHOT_HAILSTORM
Duration = 0

[spell24]
Name = SPELL_WORD_OF_POWER
CastAtThing = 0
ShotModel = SHOT_WORD_OF_POWER
EffectModel = EFFECT_014
Duration = 0

[spell25]
Name = SPELL_CRAZY_GAS
CastAtThing = 0
ShotModel = NOSHOT
Duration = 300

[spell26]
Name = SPELL_DISEASE
CastAtThing = 1
ShotModel = SHOT_DISEASE
Duration = 500

[spell27]
Name = SPELL_CHICKEN
CastAtThing = 1
ShotModel = SHOT_CHICKEN
Duration = 200

[spell28]
Name = SPELL_TIME_BOMB
CastAtThing = 1
ShotModel = SHOT_TIME_BOMB
Duration = 200

[spell29]
Name = SPELL_GROUP
CastAtThing = 1
ShotModel = SHOT_GROUP
Duration = 200

; Now let's get to shot types

[shot0]
Name = NOSHOT
Health = 0
Damage = 0
DamageType = None
; For shots that can damage surrounding area - hit type, range, damage and blow.
; Hit type controls which things will be affected by the spell (1..4).
; The damage and blow will be at its max only very near to the casting point;
; at distance it will start decaying, until zero is reached at given range.
; Blow is the strength of hit wave which pushes creatures on explosion.
; Range is in subtiles, damage is in points per turn.
; Note that range and damage are increased with caster exp level.
HitType = 0
AreaDamage = 0 0 0
Speed = 0

[shot1]
Name = SHOT_FIREBALL
Health = 30
Damage = 30
DamageType = Combustion
HitType = 2
AreaDamage = 0 0 0
Speed = 190

[shot2]
Name = SHOT_FIREBOMB
Health = 40
Damage = 100
DamageType = Combustion
HitType = 2
AreaDamage = 6 160 255
Speed = 256

[shot3]
Name = SHOT_FREEZE
Health = 40
Damage = 0
DamageType = Frostbite
HitType = 2
AreaDamage = 0 0 0
Speed = 200

[shot4]
Name = SHOT_LIGHTNING
Health = 10
Damage = 20
DamageType = Electric
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot5]
Name = SHOT_POISON_CLOUD
Health = 40
Damage = 0
DamageType = Respiratory
HitType = 2
; Poison gas shot doesn't do area damage; instead,
; it creates an effect which applies the area damage.
AreaDamage = 0 0 0
Speed = 180

[shot6]
Name = SHOT_NAVI_MISSILE
Health = 40
Damage = 40
DamageType = Biological
HitType = 2
AreaDamage = 0 0 0
Speed = 200
Properties = NAVIGABLE

[shot7]
Name = SHOT_FLAME_BREATH
Health = 10
Damage = 4
DamageType = Heatburn
HitType = 2
AreaDamage = 0 0 0
Speed = 128

[shot8]
Name = SHOT_WIND
Health = 40
Damage = 0
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 200

[shot9]
Name = SHOT_MISSILE
Health = 40
Damage = 20
DamageType = Biological
HitType = 2
AreaDamage = 0 0 0
Speed = 200

[shot10]
Name = SHOT_SLOW
Health = 40
Damage = 0
DamageType = Magical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot11]
Name = SHOT_GRENADE
Health = 40
Damage = 0
DamageType = Combustion
; Grenade shots can affect objects, ie. gold pots
HitType = 1
AreaDamage = 8 180 255
Speed = 128

[shot12]
Name = SHOT_DRAIN
Health = 2
Damage = 20
DamageType = Magical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot13]
Name = SHOT_HAILSTORM
Health = 40
Damage = 5
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 220

[shot14]
Name = SHOT_ARROW
Health = 40
Damage = 30
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot15]
Name = SHOT_BOULDER
Health = 240
Damage = 5000
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 64
Properties = SLAPPABLE BOULDER

[shot16]
Name = SHOT_GOD_LIGHTNING
Health = 6
Damage = 15
DamageType = Electric
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot17]
Name = SHOT_SPIKE
Health = 20
Damage = 5000
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot18]
Name = SHOT_VORTEX
Health = 400
Damage = 0
DamageType = Magical
HitType = 2
AreaDamage = 0 0 0
Speed = 200

[shot19]
Name = SHOT_ALARM
Health = 200
Damage = 0
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot20]
Name = SHOT_SOLID_BOULDER
Health = 5000
Damage = 5000
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 64
Properties = SLAPPABLE BOULDER

[shot21]
Name = SHOT_SWING_SWORD
Health = 3
Damage = 0
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot22]
Name = SHOT_SWING_FIST
Health = 3
Damage = 0
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot23]
Name = SHOT_DIG
Health = 3
Damage = 1
DamageType = Physical
HitType = 2
AreaDamage = 0 0 0
Speed = 256

[shot24]
Name = SHOT_LIGHTNING_BALL
Health = 40
Damage = 150
DamageType = Electric
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot25]
Name = SHOT_GROUP
Health = 0
Damage = 0
DamageType = Restoration
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot26]
Name = SHOT_DISEASE
Health = 0
Damage = 0
DamageType = Biological
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot27]
Name = SHOT_CHICKEN
Health = 0
Damage = 0
DamageType = Magical
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot28]
Name = SHOT_TIME_BOMB
Health = 0
Damage = 0
DamageType = Magical
HitType = 2
AreaDamage = 0 0 0
Speed = 0

[shot29]
Name = SHOT_TRAP_LIGHTNING
Health = 64
Damage = 16
DamageType = Electric
HitType = 2
AreaDamage = 6 160 2
Speed = 0

[shot30]
Name = SHOT_WORD_OF_POWER
Health = 1
Damage = 0
DamageType = Magical
HitType = 4
AreaDamage = 3 85 512
Speed = 0

[shot31]
Name = SHOT_TRAP_WORD_OF_POWER
Health = 1
Damage = 0
DamageType = Magical
HitType = 2
AreaDamage = 5 150 128
Speed = 0

[power0]
; Internal name of the power, used in script and config files
Name = NOPOWER 
; Index of language-specific name of the power in text strings file
NameTextID = 0
; Power strength at each overload level
Power = 0   0   0   0   0   0   0   0   0
; Power cost at each overload level
Cost =  0   0   0   0   0   0   0   0   0
; Reload time
Time = 0
; Where the power can be casted. Some map-related options are:
; UNREVEALED - normally powers can be casted only on terrain revealed by player; this overrides that restriction
; REVEALED_TEMP - allow casting on temporarily-revealed tiles (ie. by sight of evil)
; CLAIMABLE - don't allow to cast on tiles which can't be claimed (ie. water, lava, rock)
; ALL_TALL - allow casting the spell on all tall terrain types (ie. wall, gold, rock)
; NEUTRL_TALL - allow casting the spell on tall terrain types owned by neutral player, including unowned
; OWNED_TALL - allow casting the spell on tall terrain types owned by casting player
; ALLIED_TALL - allow casting the spell on tall terrain types owned by allied players
; ENEMY_TALL - allow casting the spell on tall terrain types owned by enemy players
; ALL_GROUND - allow casting the spell on all ground-level terrain types (ie. path, water, lava, claimed ground)
; NEUTRL_GROUND - allow casting the spell on ground-level terrain types owned by neutral player, including unowned
; OWNED_GROUND - allow casting the spell on ground-level terrain types owned by casting player
; ALLIED_GROUND - allow casting the spell on ground-level terrain types owned by allied players
; ENEMY_GROUND - allow casting the spell on ground-level terrain types owned by enemy players
; Besides map-related options, there are thing-related ones. If at least one thing-related
; option is present, then spell can only be casted if both map-related and thing-related conditions
; are met, unless an additional option is present:
; THING_OR_MAP - makes it that only one of map-related and thing-related condition groups has to be met
; Some of thing-related conditions are:
; CUSTODY_CRTRS - allow casting on creatures being held in custody
; OWNED_CRTRS - allow casting on players own creatures
; ALLIED_CRTRS - allow casting on creatures belonging to allied players
; ENEMY_CRTRS - allow casting on creatures owned by enemy players
; BOUND_CRTRS - allow casting on creatures being affected by Armageddon and Teleport; but also those
;     who are dragging, leaving or being sacrificed
Castability =
; Artifact object which represents the power - usually spellbook
Artifact = NULL

[power1]
Name = POWER_HAND
NameTextID = 662
Power = 0   0   0   0   0   0   0   0   0
Cost =  0   0   0   0   0   0   0   0   0
Time = 0
Castability = ANYWHERE OWNED_CRTRS OWNED_GOLD NEUTRL_GOLD OWNED_FOOD CUSTODY_CRTRS
Artifact = SPELLBOOK_HOE

[power2]
Name = POWER_IMP
NameTextID = 631
Power =  0   0   0   0   0   0   0   0   0
Cost = 300 300 300 300 300 300 300 300 300
Time = 0 
Castability = OWNED_GROUND
Artifact = SPELLBOOK_IMP

[power3]
Name = POWER_OBEY
NameTextID = 636
Power = 0   0   0   0   0   0   0   0   0
Cost = 25   0   0   0   0   0   0   0   0
Time = 18 
Castability = ALL_GROUND OWNED_CRTRS BOUND_CRTRS
Artifact = SPELLBOOK_OBEY

[power4]
Name = POWER_SLAP
NameTextID = 772
Power = 0   0   0   0   0   0   0   0   0
Cost =  0   0   0   0   0   0   0   0   0
Time = 500 
Castability = ALL_GROUND OWNED_CRTRS CUSTODY_CRTRS OWNED_FOOD OWNED_BOULDERS
Artifact = SPELLBOOK_SLAP

[power5]
Name = POWER_SIGHT
NameTextID = 632
Power = 576 640 704 768 832 896 960 1024 1088
Cost =   50  60  70  80  90 100 110  120  130
Time = 0 
Castability = ANYWHERE UNREVEALED
Artifact = SPELLBOOK_SOE

[power6]
Name = POWER_CALL_TO_ARMS
NameTextID = 633
Power = 10 15 20 25 30 35 40 45 50
Cost =   1  2  3  4  5  6  7  8  9
Time = 1 
Castability = ALL_GROUND
Artifact = SPELLBOOK_CTA

[power7]
Name = POWER_CAVE_IN
NameTextID = 635
Power =  0    5    6    7    8    9   10   11   12
Cost = 1000 1200 1400 1600 1800 2000 2200 2400 2600
Time = 100 
Castability = ALL_GROUND REVEALED_TEMP
Artifact = SPELLBOOK_CAVI

[power8]
Name = POWER_HEAL_CREATURE 
NameTextID = 644
Power = 80 120 160 210 260 360 480  680  950
Cost = 300 400 500 600 700 800 900 1000 1200
Time = 16 
Castability = ALL_GROUND OWNED_CRTRS ALLIED_CRTRS CUSTODY_CRTRS BOUND_CRTRS
Artifact = SPELLBOOK_HEAL

[power9]
Name = POWER_HOLD_AUDIENCE
NameTextID = 634
Power =  0  0  0  0  0  0  0  0  0
Cost =1000  0  0  0  0  0  0  0  0
Time = 0 
Castability = ANYWHERE UNREVEALED
Artifact = SPELLBOOK_HLDAUD

[power10]
Name = POWER_LIGHTNING
NameTextID = 640
Power =  3    4    5    7    9   12   14   16   30
Cost = 600 1200 1300 1700 1800 2000 2200 2400 3000
Time = 0 
Castability = ALL_GROUND REVEALED_TEMP NEEDS_DELAY
Artifact = SPELLBOOK_LIGHTN

[power11]
Name = POWER_SPEED
NameTextID = 637
Power = 300 400 500 600 700 800 900 1000 1100
Cost =  100 200 300 400 500 600 700  800 900
Time = 0 
Castability = ALL_GROUND OWNED_CRTRS ALLIED_CRTRS CUSTODY_CRTRS BOUND_CRTRS
Artifact = SPELLBOOK_SPDC

[power12]
Name = POWER_PROTECT
NameTextID = 638
Power = 300 400 500 600 700 800 900 1000 1100
Cost =  100 200 300 400 500 600 700  800 900
Time = 0 
Castability = ALL_GROUND OWNED_CRTRS BOUND_CRTRS
Artifact = SPELLBOOK_PROT

[power13]
Name = POWER_CONCEAL
NameTextID = 639
Power = 300 400 500 600 700 800 900 1000 1100
Cost =  100 200 300 400 500 600 700  800 900
Time = 0 
Castability = ALL_GROUND OWNED_CRTRS BOUND_CRTRS
Artifact = SPELLBOOK_CONCL

[power14]
Name = POWER_DISEASE
NameTextID = 642
Power = 300  400  500  600  700  800  900 1000 1100
Cost = 7000 7200 7400 7600 7800 8000 8200 8400 9000
Time = 0 
Castability = OWNED_GROUND ALLIED_GROUND ENEMY_CRTRS CUSTODY_CRTRS
Artifact = SPELLBOOK_DISEASE

[power15]
Name = POWER_CHICKEN
NameTextID = 641
Power = 300  350  400  450  500  550  600  650 1000
Cost = 1200 1300 1400 1500 1600 1700 1800 1900 3000
Time = 0
Castability = ALL_GROUND ENEMY_CRTRS CUSTODY_CRTRS
Artifact = SPELLBOOK_CHKN

[power16]
Name = POWER_DESTROY_WALLS
NameTextID = 643
Power =   0     1     2     3     4     5     6     7     8
Cost =10000 12000 14000 16000 18000 20000 22000 24000 26000
Time = 0
Castability = ALL_TALL CLAIMABLE
Artifact = SPELLBOOK_DWAL

[power17]
Name = POWER_TIME_BOMB
NameTextID = 645
Power = 300  400  500  600  700  800  900 1000 1100
Cost = 2000 2100 2200 2300 2400 2500 2600 2700 2800
Time = 0
Castability = ALL_GROUND REVEALED_TEMP
Artifact = SPELLBOOK_TBMB

[power18]
Name = POWER_POSSESS
NameTextID = 630
Power = 0   0   0   0   0   0   0   0   0
Cost =  0   0   0   0   0   0   0   0   0
Time = 0
Castability = ALL_GROUND OWNED_CRTRS OWNED_FOOD
Artifact = SPELLBOOK_POSS

[power19]
Name = POWER_ARMAGEDDON
NameTextID = 646
Power = 0   0   0   0   0   0   0   0   0
Cost =60000 0   0   0   0   0   0   0   0
Time = 0
Castability = ANYWHERE UNREVEALED
Artifact = SPELLBOOK_ARMG

[special0]
Name = NOSPECIAL
Artifact = NULL
TooltipTextID = 201

[special1]
Name = SPECIAL_REVEAL_MAP
Artifact = SPECBOX_REVMAP
TooltipTextID = 420

[special2]
Name = SPECIAL_RESURRECT_CRTR
Artifact = SPECBOX_RESURCT
TooltipTextID = 421

[special3]
Name = SPECIAL_TRANSFER_CRTR
Artifact = SPECBOX_TRANSFR
TooltipTextID = 422

[special4]
Name = SPECIAL_STEAL_HERO
Artifact = SPECBOX_STEALHR
TooltipTextID = 423

[special5]
Name = SPECIAL_MULTIPLY_CRTRS
Artifact = SPECBOX_MULTPLY
TooltipTextID = 424

[special6]
Name = SPECIAL_INCREASE_LEVEL
Artifact = SPECBOX_INCLEV
TooltipTextID = 425

[special7]
Name = SPECIAL_MAKE_SAFE
Artifact = SPECBOX_MKSAFE
TooltipTextID = 426

[special8]
Name = SPECIAL_HIDDEN_WORLD
Artifact = SPECBOX_HIDNWRL
TooltipTextID = 427
