Difference between revisions of "Skill creation"

From Divinity Engine Wiki
Jump to: navigation, search
(Conditions)
(Skill Parameters)
Line 11: Line 11:
 
* '''Shout''', a self-buff or area of effect skill.
 
* '''Shout''', a self-buff or area of effect skill.
 
* '''Projectile''', fires one or more projectiles along a preset path.
 
* '''Projectile''', fires one or more projectiles along a preset path.
 +
* '''ProjectileStrike''', a series of projectiles which rain from the sky rather than originating from the caster.
 
* '''Cone''', cause an effect in a cone shape determined by angle and range.
 
* '''Cone''', cause an effect in a cone shape determined by angle and range.
 
* '''Jump''', a self-teleport skill.
 
* '''Jump''', a self-teleport skill.
Line 16: Line 17:
 
* '''Teleportation''', a teleportation of a character.
 
* '''Teleportation''', a teleportation of a character.
 
* '''Summon''', create one or more characters or objects.
 
* '''Summon''', create one or more characters or objects.
* '''ProjectileStrike''', a series of projectiles which rain from the sky rather than originating from the caster.
+
* '''Wall''', create one or more characters or objects.
 
* '''Rain''', a large area of effect skill that usually changes the atmosphere and creates a distribution of surfaces.
 
* '''Rain''', a large area of effect skill that usually changes the atmosphere and creates a distribution of surfaces.
 +
* '''Storm''', a large area of effect skill that usually changes the atmosphere and creates a distribution of surfaces, as well as raining projectiles down.
 +
* '''Dome''', create a persisting area of effect with a dome visual.
  
 
Ability: Which ability tree this skill belongs to, which determines how it is sorted in the skill menu and which primary attribute scales its damage. Can be None.
 
Ability: Which ability tree this skill belongs to, which determines how it is sorted in the skill menu and which primary attribute scales its damage. Can be None.
Line 68: Line 71:
 
=== Conditions ===
 
=== Conditions ===
  
TargetConditions: what conditions targets must meet to be targets of this skill. This can include simple logic, like "IF", "not" (!), "and" (&), "or" (|), and parentheses.  
+
TargetConditions: what conditions targets must meet to be direct targets of this skill. This can include simple logic, like "IF", "not" (!), "and" (&), "or" (|), and parentheses.
 +
 
 +
AOEConditions: conditions for an AOEBoost skill property.
  
 
Conditions can include Character, Self, Nonself, Ally, Party, Player, Enemy, Item, Dead, Summon, NonSummon, MySummon, Owner, Party, Combat, Locked, AllowDead, FacingMe, CanPickup, HasStatus, InSurface, Surface.
 
Conditions can include Character, Self, Nonself, Ally, Party, Player, Enemy, Item, Dead, Summon, NonSummon, MySummon, Owner, Party, Combat, Locked, AllowDead, FacingMe, CanPickup, HasStatus, InSurface, Surface.

Revision as of 00:09, 30 August 2017

You can edit or create a wide array of skills with the Stats editor. While the skill creator is quite powerful, complex skills may require scripting.

Skill Parameters

Every skill requires the following parameters to be filled out.

Entry: a unique name so that the skill can be referenced in scripts or other locations. Usually a structure of "Skilltype_Skillname."

Skill Type: Determines the fundamental behavior of the skill.

  • Target, usually affects one target with a non-projectile effect.
  • Shout, a self-buff or area of effect skill.
  • Projectile, fires one or more projectiles along a preset path.
  • ProjectileStrike, a series of projectiles which rain from the sky rather than originating from the caster.
  • Cone, cause an effect in a cone shape determined by angle and range.
  • Jump, a self-teleport skill.
  • Rush, a self-directed movement skill.
  • Teleportation, a teleportation of a character.
  • Summon, create one or more characters or objects.
  • Wall, create one or more characters or objects.
  • Rain, a large area of effect skill that usually changes the atmosphere and creates a distribution of surfaces.
  • Storm, a large area of effect skill that usually changes the atmosphere and creates a distribution of surfaces, as well as raining projectiles down.
  • Dome, create a persisting area of effect with a dome visual.

Ability: Which ability tree this skill belongs to, which determines how it is sorted in the skill menu and which primary attribute scales its damage. Can be None.

Level: (?)What level this skill scales to. All existing skills are set to -1 level, which means the skill's damage scales with character level.

Tier: (?)

ActionPoints: how many action points the skill costs.

Cooldown: the cooldown in turns. Can be set to -1 for a once per combat skill.

Memory: the memory cost

Magic Cost: How many source points the skill costs


Damage

Damage Multiplier: the base damage, "100" being an average damage skill, or using exact weapon damage if is a weapon skill.

Damage Range: the percentage of variation in damage.

DamageType: the type of damage.

UseWeaponDamage: if yes, multiplies your weapon damage by the Damage Multiplier

Range

TargetRadius: How far a Target, Projectile, or Teleportation, skill can reach

AreaRadius: How far an area of effect a shout or rain spell can reach from the caster, or the area of effect of a target or projectile skill.

ExplodeRadius: The area of effect that a projectile deals damage in. This is often but not always the same as AreaRadius.

Example: Ricochet has a TargetRadius of 13 for the initial target, an AreaRadius of 5 for determining the area the projectile can bounce to other enemies, and an ExplodeRadius of 0, so that the arrow does not deal damage to multiple enemies each time it hits an enemy.


AddWeaponRange: (?) If your weapon range is greater than the primary range factor, than it takes into your weapon range into account.

Example: Whirlwind has an AreaRadius of 3, but has AddWeaponRange as yes, so a spear with 3.5m weapon range will have half a meter more range.

Range: The range of a cone or zone skill like Ground Slam.

HitRadius: Typically the area of effect of a teleporting or rushing character.

Example: Battering Ram has a HitRadius of 1, meaning the character can hit characters or objects in a 2m wide path.


Conditions

TargetConditions: what conditions targets must meet to be direct targets of this skill. This can include simple logic, like "IF", "not" (!), "and" (&), "or" (|), and parentheses.

AOEConditions: conditions for an AOEBoost skill property.

Conditions can include Character, Self, Nonself, Ally, Party, Player, Enemy, Item, Dead, Summon, NonSummon, MySummon, Owner, Party, Combat, Locked, AllowDead, FacingMe, CanPickup, HasStatus, InSurface, Surface.

Example Target Conditions

  • NonSelf;Ally;!Dead;NonSummon // only target alive, non-summon allies (not including the caster)
  • Tagged:UNDEAD;FacingMe // only target undead characters that are facing you (e.g., for a holy light spell)
  • (InSurface:SurfaceFire)|SurfaceFire // target either characters standing in fire, or a fire surface directly.
  • (Chain Heal): !Dead&((!Enemy&!DamagedOnHeal)|(Enemy&DamagedOnHeal)) // target living allies that aren't damaged by healing (undead or decaying touch), but also target enemies if they are damaged by healing


ForceTarget: If yes, you cannot cast this without targeting a valid target (e.g., no targeting terrain)

CanTargetCharacters: if yes, can target characters

CanTargetItems: If yes, can target items.

CanTargetTerrain: If yes, you can target the terrain. Useful for skills that can manipulate surfaces, like Shocking Touch. Also good for area of effect attacks like Ground Slam, where you might want to target a space inbetween two characters to hit them both. Otherwise, make this no to prevent accidental casts.