Just because I can, and because I saw a topic in General saying how cool it would be if such a skill existed...


[Linked Image]
[Linked Image]
[Linked Image]


All three of those pictures were taken in quick succession after casting my custom Rain skill.

And now for a look into what went into this skill.

The skill entry in SkillData.txt located in the mod's Stats/Generated/Data folder is almost a complete copy of the Rain_Water skill entry.
Code
new entry "Heal_Rain_Water"
type "SkillData"
data "SkillType" "Rain"
data "Ability" "Defensive"
data "Element" "Water"
data "ActionPoints" "4"
data "Cooldown" "6"
data "ChargeDuration" "0"
data "Lifetime" "5"
data "SurfaceType" "Water"
data "SurfaceLifetime" "12000"
data "SurfaceStatusChance" "100"
data "SkillProperties" "Consume,100,5,SKILLBOOST_AoE_Healing_Rain;Douse,-1,5,,70"
data "TargetRadius" "15"
data "UseCharacterStats" "No"
data "UseWeaponDamage" "No"
data "AreaRadius" "20"
data "TotalSurfaceCells" "125"
data "SurfaceGrowStep" "5"
data "SurfaceGrowInterval" "150"
data "Icon" "Skill_Water_Rain"
data "DisplayName" "Rain_Water_DisplayName"
data "DisplayNameRef" "Rain"
data "Description" "Rain_Water_Description"
data "DescriptionRef" "Create water surfaces."
data "StatsDescription" "Rain_Water_StatsDescription"
data "StatsDescriptionRef" "Radius: [1]<br>Duration: [2]<br><br>Creates water puddles on terrain, douses fires, and makes characters wet. Water surfaces can be electrified."
data "StatsDescriptionParams" "AreaRadius;Lifetime"
data "FXScale" "100"
data "PrepareAnimationInit" "skill_rain_start"
data "PrepareAnimationLoop" "skill_rain_loop"
data "PrepareEffect" "FX_Skills_Water_Rain_Prepare_A"
data "CastAnimation" "skill_rain_cast"
data "CastTextEvent" "cast"
data "CastEffect" "FX_Skills_Water_Rain_Cast_A"
data "TargetEffect" "FX_GP_Target_Water_A"
data "Magic Cost" "1"
data "RainEffect" "FX_Skills_Water_Rain_A"
data "Atmosphere" "Rain"
data "ConsequencesStartTime" "1000"
data "Skillbook" "SKILLBOOK_Heal_Rain_Water"

new entry "Heal_Rain_Water_3"
type "SkillData"
using "Heal_Rain_Water"
data "Level" "3"


The key difference with this skill compared to the normal Rain is this line-
data "SkillProperties" "Consume,100,5,SKILLBOOST_AoE_Healing_Rain;Douse,-1,5,,70"

Instead of Rain, it does the Consume status effect.

What does the Consume status effect do? Anything we want, since it applies the status effect we specify (SKILLBOOST_AoE_Healing_Rain) when initially cast.

Status effects are defined in the Potion.txt of the Stats/Generated/Data/ folder. Here's my mod's entry for SKILLBOOST_AoE_Healing_Rain-
Code
new entry "_SkillBoost"
type "Potion"

new entry "SKILLBOOST_AoE_Healing_Rain"
type "Potion"
using "_SkillBoost"
data "Vitality" "5"
data "Duration" "1"


The durations of the Skill and the Status effect are important. Basically, the Healing Rain applies its status once a round for 5 turns (the Skill Duration). The status, when it's applied, heals and lasts for the current turn only (Duration 1). This results in the heal being applied 5 times. If the duration is increased, then the effect should last a bit even after the Skill's duration is over.