alpha build 0.5.8

A fantasy otome RPG about three young thieves with special skills https://www.winterwolves.com/queenofthieves.htm
Post Reply
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.7

Post by jack1974 »

Hmm maybe is better 20-25-30% this way the reduction is significant already from the Novice level, since 10% is going to be 1-2 dmg for most of low levels. Or I could use a fixed value instead, like 3-6-9 ?
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.7

Post by jack1974 »

OK I used 2-4-6. 4 dmg reduction AND armor restore is already quite good. This is how a "grouped party" looks with all the 3 most powerful buffs on them, not bad:
Image
I think now the pro/cons of keeping separate or grouping should be well balanced (depending on enemies of course, I plan to make some really bastard enemies :mrgreen:).
I'll upload a new build with this last change and then work on other stuff while I wait the rest of the game to be done (art/writing). I need to check PSCD card system next week :)
User avatar
Jaeger
Druid
Posts: 410
Joined: Fri Jun 14, 2013 12:30 am

Re: alpha build 0.5.7

Post by Jaeger »

jack1974 wrote:Hmm maybe is better 20-25-30% this way the reduction is significant already from the Novice level, since 10% is going to be 1-2 dmg for most of low levels. Or I could use a fixed value instead, like 3-6-9 ?
I prefer percentage over fixed values. With fixed values, it may be powerful at low levels, but it may not scale well at higher levels, especially if you plan to have a level cap at 20.

My opinion about Kira's skills

Defense
Taunt: Might be useful if aggro starts shifting towards Joanne or Thalia. I don't know if there is an incentive to learn past the first level though.
Protect: Besides protecting her sisters from harm, the damage boost is also welcome.
Counter Attack: It might be something to consider if you invest in strength, but considering you have have give up some points on constitution/skill for resilience, it may not be ideal for solely tanking.
Hold the Line: Could be useful against enemies that use defense reducing attacks
Rampage: The description is wrong because the duration is 5 turns duration (though in practice you only get 4). That being said, it's a powerful buff, at higher levels allowing normal attacks to match or exceed most offensive skills.
Warrior's Blessing It doesn't seem like much although, it might be just enough to survive a round.
Last edited by Jaeger on Fri May 29, 2015 10:48 am, edited 2 times in total.
User avatar
yayswords
Elder Druid
Posts: 1436
Joined: Sat Jan 25, 2014 5:34 am

Re: alpha build 0.5.7

Post by yayswords »

I also prefer percentages, for the same reasons. Also it's funny how you were concerned that 10% would only be 1-2 damage at low levels, then put a fixed 2 value there anyway :D

The thing about fixed vs. percentage is that with really high defense, fixed does more. If Kira only takes 7 damage from an attack, then the 6 flat reduction will bring it down to 1 (which I guess is the bottom cap). But if the same attack would hit Thalia for anything over 20, then a 30% reduction would help more than a flat 6.

On the one hand, making a supertanky Kira almost immortal is a rather meaningless effort. On the other hand, she does take most of the damage so it's best if HTL buffs her the most. Although, it's just my gut feeling that she won't get such crazy defense that flat reduction will be better. Nothing stopping you from a combination though, with level 1 giving 1 + 10% damage reduction, etc.

After all this though, I have to say Rally is the best buff. It's still the only one I would want all three to get, because a defensive buff isn't needed for someone hiding behind Protect. Kira + unprotected sister can get that buff and it will be enough. Of course I might change my mind if every Tom Dick and Harry can remove Protect.

Still it'd be cool if the other buffs had some offensive aspect, like Invisibility adding a surprise factor guaranteeing one crit (but that no longer works if we rename it lolol) or HTL increasing speed or something.
Last edited by yayswords on Fri May 29, 2015 8:10 am, edited 1 time in total.
If at first try it doesn't explode, it ain't Jack who wrote the code.
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.7

Post by jack1974 »

With percentage will be the opposite, but I guess is more important that is powerful at high levels :P
Level cap should be 30, since I give only 1 skillpoint every 2 levels :)
About other offensive effects, for now won't add them, since I need to see during testing as well.
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.8

Post by jack1974 »

I've uploaded the 0.5.8 with a few more changes. From now on I need to check a few other things, and I plan to start doing the exploration system. I won't probably update this build for a while (you're welcome to still provide feedback though). Thanks to everyone who tested, I think now I have a good solid base to start building the game and the various encounters :)
User avatar
yayswords
Elder Druid
Posts: 1436
Joined: Sat Jan 25, 2014 5:34 am

Re: alpha build 0.5.8

Post by yayswords »

Oh I kinda forgot to mention how I soloed 50 waves of endless mode with each of the girls, but I'll get around to it.

On a serious note, is Counter Attack's description right? I mean it mentions accuracy, but that's from SotW I think when you could miss. Here accuracy has a whole different meaning.
If at first try it doesn't explode, it ain't Jack who wrote the code.
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.8

Post by jack1974 »

Yes I should change the wording indeed! Or I could just make it always hit :)
User avatar
yayswords
Elder Druid
Posts: 1436
Joined: Sat Jan 25, 2014 5:34 am

Re: alpha build 0.5.8

Post by yayswords »

Right, you said the level cap was 30. And then I suppose that is just so that there is a cap, not that the last boss will be tuned for a level 30 trio. So I don't know, let's say we'll be 20 at that point without any grinding. That's 20 stat points. If we spend half of them on will, we'll have under 15 SP on all the girls. That's 5-15 rounds of abilities. I guess that might be okay... but this is assuming we do indeed blow half our stat points on mana.

On a different note, I downloaded Ren'Py. Is it possible for me to edit the skill descriptions from here? I don't need a full tutorial, just a yes or no :D
If at first try it doesn't explode, it ain't Jack who wrote the code.
User avatar
jack1974
Pack leader
Posts: 15479
Joined: Thu Jun 16, 2005 4:43 pm

Re: alpha build 0.5.8

Post by jack1974 »

Haha no sorry, to edit the descriptions is enough a text editor, since the file is plain text (but if you mess up formatting Ren'Py will get angry).
Here's the skills, but just change the description field only, because changing other parameters might result in bug or even crashes (like using another Token/icon/etc):

Code: Select all

init python:
    class MagicBoltSkill(HurtSkill):
        cName = "Magic Bolt"
        cTarget = "Foe"
        cPower = 1.0
        cRange = "All"
        cArea = "Single"
        cWeapons = ["MagicStaff"]
        cDescription = "The magic bolt attack is the base attack of Mages."
        cElemental = True
        cMundane = False
        cIcon = "magicbolt"
        cSound = "magicbolt.ogg"
        cBasic = True
        cCost = 0
        
    class SwordSkill(HurtSkill):
        cName = "Melee Attack"
        cTarget = "Foe"
        cPower = 1.0
        cRange = "Front"
        cDescription = "Basic attack with a melee weapon. Enemy might retaliate."
        cElemental = False
        cIcon = "melee"
        cSound = "melee"
        cBasic = True
        cSFXDuration = .5
        cWeapon = True
        cWeaponCategory = "Close"
        cCost = 0

    class BowSkill(HurtSkill):
        cName = "Ranged Attack"
        cTarget = "Foe"
        cPower = 1.0
        cRange = "All"
        cArea = "Single"
        cDepend = True
        cWeapons = ["Bow"]
        cDescription = "Basic long ranged attack using a missile weapon, enemy can't retaliate."
        cElemental = False
        cIcon = "missile"
        cSound = "bow.ogg"
        cBasic = True
        cWeapon = True
        cWeaponCategory = "Ranged"
        cCost = 0
        
    class EnemyRanged(BowSkill):
        cDepend = False

    class DefendSkill(BuffSkill):
        cName = "Rest"
        cRange = "All"
        cArea = "Self"
        cWait = 10
        cPower = 1.0
        cCost = 0
        cEffects = [DefendEffect]
        cIcon = "regenerate"
        cDescription = "The character takes a defensive stance, recovering 1 defense and 1 SP. Can't go past their maximum values."
        cSFXDuration = 2.0
        cSound = "door.ogg"

    ##### KIRA ####
    class FocusTarget1(FocusTargetSkill):
        cName = "Focus Target (Novice)"
        cDescription = "Mark an enemy as focus target for 3 turns: all subsequent attacks by this character on target will do 25% more damage."
        cBranchLevel = 2
        cRequiredSkills = []
        cBranch = "FocusTarget"
        cArea = "Single"
        cCost = 2
        cWait = 3
        cEffects = [FocusTargetEffect1]
        cIcon = "focustarget"
    class FocusTarget2(FocusTarget1):
        cName = "Focus Target (Journeyman)"
        cDescription = "Mark an enemy as focus target for 4 turns: all subsequent attacks by this character on target will do 50% more damage."
        cBranchLevel = 4
        cRequiredSkills = [FocusTarget1]
        cEffects = [FocusTargetEffect2]
    class FocusTarget3(FocusTarget2):
        cName = "Focus Target (Expert)"
        cDescription = "Mark an enemy as focus target for 5 turns: all subsequent attacks by this character on target will do 75% more damage."
        cBranchLevel = 6
        cRequiredSkills = [FocusTarget2]
        cEffects = [FocusTargetEffect3]
        
    class KnockDown1(HurtSkill):
        cName = "Knock Down (Novice)"
        cDescription = "Deals 100% normal damage and knocks the opponent down, inflicting slow condition for 3 turns. Slow reduces target's speed by 20%."
        cBranchLevel = 2
        cRequiredLevel = 1
        cRequiredSkills = []
        cBranch = "Knock Down"
        cPower = 1.0
        cCost = 2
        cWait = 8
        cRange = "Front"
        cElemental = False
        cMundane = True
        cArea = "Single"
        cEffects = [SlowedEffect1]
        cIcon = "knockdown"
        cSound = "block.ogg"
        cWeaponCategory = "Close"
    class KnockDown2(KnockDown1):
        cName = "Knock Down (Journeyman)"
        cDescription = "Deals 125% normal damage and knocks the opponent down, inflicting slow condition for 4 turns. Slow reduces target's speed by 20%."
        cPower = 1.25
        cBranchLevel = 4
        cRequiredSkills = [KnockDown1]
        cEffects = [SlowedEffect2]
    class KnockDown3(KnockDown2):
        cName = "Knock Down (Expert)"
        cDescription = "Deals 150% normal damage and knocks the opponent down, inflicting slow condition for 5 turns. Slow reduces target's speed by 20%."
        cPower = 1.5
        cBranchLevel = 6
        cRequiredSkills = [KnockDown2]
        cEffects = [SlowedEffect3]

    class WideSlash1(HurtSkill):
        cName = "Wide Slash (Novice)"
        cDescription = "Hits three nearby enemies for 40% base damage."
        cBranchLevel = 1
        cRequiredLevel = 1
        cBranch = "Wide Slash"
        cPower = 0.4
        cWait = 12
        cRange = "Front"
        cArea = "Row"
        cDepend = True
        cWeapons = ["Sword"]
        cWeaponsType = "oneHand"
        cElemental = False
        cMundane = True
        cIcon = "wideslash"
        cSound = "sword_hit2.ogg"
        cWeaponCategory = "Close"
    class WideSlash2(WideSlash1):
        cName = "Wide Slash (Journeyman)"
        cDescription = "Hits three nearby enemies for 50% base damage."
        cBranchLevel = 3
        cPower = 0.5
        cRequiredSkills = [WideSlash1]
    class WideSlash3(WideSlash2):
        cName = "Wide Slash (Expert)"
        cDescription = "Hits three nearby enemies for 60% base damage."
        cBranchLevel = 5
        cPower = 0.6
        cRequiredSkills = [WideSlash2]

    class StrikeThrough1(ArmorDamageSkill):
        cName = "Strike Through (Novice)"
        cDescription = "Hits three targets (AOE) for 40% base damage, reducing defense by 1 point. Enemy on sides take half damage."
        cBranchLevel = 2
        cRequiredLevel = 1
        cRequiredSkills = []
        cBranch = "Strike Through"
        cPower = 0.4
        cCost = 2
        cWait = 12
        cRange = "Front"
        cArea = "AOE"
        cArAmount = 1
        cElemental = False
        cMundane = True
        cIcon = "strikethrough"
        cSound = "strikethrough.ogg"
        cWeaponCategory = "Close"
    class StrikeThrough2(StrikeThrough1):
        cName = "Strike Through (Journeyman)"
        cDescription = "Hits three targets (AOE) for 50% base damage, reducing defense by 1 point. Enemy on sides take half damage."
        cBranchLevel = 4
        cRequiredLevel = 1
        cPower = 0.5
        cRequiredSkills = [StrikeThrough1]
        cArAmount = 1
    class StrikeThrough3(StrikeThrough2):
        cName = "Strike Through (Expert)"
        cDescription = "Hits three targets (AOE) for 60% base damage, reducing defense by 1 point. Enemy on sides take half damage."
        cBranchLevel = 6
        cRequiredLevel = 1
        cPower = .6
        cRequiredSkills = [StrikeThrough2]
        cArAmount = 1

    class Stun1(HurtSkill):
        cName = "Stun (Novice)"
        cDescription = "Character hits enemy dealing 100% of normal damage inflicting paralysis for 3 turns."
        cBranchLevel = 1
        cRequiredLevel = 1
        cRequiredSkills = []
        cBranch = "Stun"
        cPower = 1.0
        cCost = 3
        cWait = 8
        cRange = "Front"
        cArea = "Single"
        cElemental = False
        cMundane = True
        cEffects = [ParalyzedEffect1]
        cChance = 100
        cIcon = "stun"
        cSound = "bash.ogg"
        cWeaponCategory = "Close"
    class Stun2(Stun1):
        cName = "Stun (Journeyman)"
        cDescription = "Character hits enemy dealing 125% of normal damage inflicting paralysis for 4 turns."
        cBranchLevel = 3
        cRequiredSkills = [Stun1]
        cPower = 1.25
        cEffects = [ParalyzedEffect2]
    class Stun3(Stun2):
        cName = "Stun (Expert)"
        cDescription = "Character hits enemy dealing 150% of normal damage inflicting paralysis for 5 turns."
        cBranchLevel = 5
        cRequiredSkills = [Stun2]
        cPower = 1.5
        cEffects = [ParalyzedEffect3]

    class WreakHavoc1(HurtSkill):
        cName = "Wreak Havoc (Novice)"
        cDescription = "Hits a single target for 100% damage, enemies on the sides take normal damage (AOE). All targets suffer bleeding condition for up to 3 turns."
        cBranchLevel = 2
        cRequiredLevel = 1
        cRequiredSkills = []
        cBranch = "Wreak Havoc"
        cMundane = True
        cPower = 1.0
        cCost = 3
        cWait = 12
        cRange = "Front"
        cArea = "AOE"
        cEffects = [BleedEffect1]
        cChance = 100
        cIcon = "havok"
        cSound = "sword_double.ogg"
        cWeaponCategory = "Close"
    class WreakHavoc2(WreakHavoc1):
        cName = "Wreak Havoc (Journeyman)"
        cDescription = "Hits a single target for 150% damage, enemies on the sides take normal damage (AOE). All targets suffer bleeding condition for up to 4 turns."
        cBranchLevel = 4
        cRequiredSkills = [WreakHavoc1]
        cPower = 1.5
        cEffects = [BleedEffect2]
    class WreakHavoc3(WreakHavoc2):
        cName = "Wreak Havoc (Expert)"
        cDescription = "Hits a single target for 200% damage, enemies on the sides take normal damage (AOE). All targets suffer bleeding condition for up to 5 turns."
        cBranchLevel = 6
        cRequiredSkills = [WreakHavoc2]
        cPower = 2.0
        cEffects = [BleedEffect3]

    class Taunt1(TauntSkill):
        cName = "Taunt (Novice)"
        cDescription = "Increases all enemies' hate towards the caster by 50 points, so that they are more likely to target this character."
        cBranchLevel = 1
        cRequiredLevel = 1
        cBranch = "Taunt"
        cTarget = "Friend"
        cArea = "Self"
        cCost = 1
        cAggro = 50
        cIcon = "taunt"
        cBasic = True
    class Taunt2(Taunt1):
        cName = "Taunt (Journeyman)"
        cDescription = "Increases all enemies' hate towards the caster by 100 points, so that they are more likely to target this character."
        cBranchLevel = 3
        cRequiredSkills = [Taunt1]
        cAggro = 100
    class Taunt3(Taunt2):
        cName = "Taunt (Expert)"
        cDescription = "Increases all enemies' hate towards the caster by 150 points, so that they are more likely to target this character."
        cBranchLevel = 5
        cRequiredSkills = [Taunt2]
        cAggro = 150
        
    class Protect1(BuffSkill):
        cName = "Protect (Novice)"
        cDescription = "The Warrior guards an ally for the next 3 turns, increasing target's attack by 10% and taking damage instead of the target."
        cBranchLevel = 2
        cRequiredLevel = 1
        cRequiredSkills = []
        cRange = "All"
        cArea = "Other"
        cPower = 1.0
        cCost = 2
        cWait = 3
        cEffects = [ProtectEffect1]
        cIcon = "parry"
        cBasic = True
        cSound = "door.ogg"
    class Protect2(Protect1):
        cName = "Protect (Journeyman)"
        cDescription = "The Warrior guards an ally for the next 4 turns, increasing target's attack by 20% and taking damage instead of the target."
        cBranchLevel = 4
        cRequiredSkills = [Protect1]
        cEffects = [ProtectEffect2]
    class Protect3(Protect2):
        cName = "Protect (Expert)"
        cDescription = "The Warrior guards an ally for the next 5 turns, increasing target's attack by 30% and taking damage instead of the target."
        cBranchLevel = 6
        cRequiredSkills = [Protect2]
        cEffects = [ProtectEffect3]        

    class CounterAttack1(BuffSkill):
        cName = "Counter Attack (Novice)"
        cDescription = "For the next 3 times, whenever character gets hit with a close range attack, it automatically counter-attacks the enemy with 50% accuracy dealing 50% base damage."
        cBranchLevel = 1
        cBranch = "Counterattack"
        cArea = "Self"
        cWait = 2
        cCost = 1
        cPower = 0.5
        cEffects = [CounterAttackEffect1]
        cToken = "Counterattack"
        cIcon = "counterattack"
        cSound = "sword_unsheath.ogg"
    class CounterAttack2(CounterAttack1):
        cName = "Counter Attack (Journeyman)"
        cDescription = "For the next 4 times, whenever character gets hit with a close range attack, it automatically counter-attacks the enemy with 75% accuracy dealing 50% base damage."
        cBranchLevel = 3
        cPower = 0.5
        cRequiredSkills = [CounterAttack1]
        cEffects = [CounterAttackEffect2]
    class CounterAttack3(CounterAttack2):
        cName = "Counter Attack (Expert)"
        cDescription = "For the next 5 times, whenever character gets hit with a close range attack, it automatically counter-attacks the enemy with 100% accuracy dealing 50% base damage."
        cBranchLevel = 5
        cPower = 0.5
        cRequiredSkills = [CounterAttack2]
        cEffects = [CounterAttackEffect2]
        
    class ShieldWall1(BuffSkill):
        cName = "Hold The Line (Novice)"
        cDescription = "For the next 3 turns restores three nearby allies defense by 1 each turn, and reduces any non-magical damage by 10%. Usable while paralyzed too."
        cBranch = "Shield Wall"
        cBranchLevel = 1
        cRequiredLevel = 1
        cRequiredSkills = []
        cCost = 2
        cWait = 8
        cArea = "AOE"
        cRange = "All"
        cEffects = [ShieldWallEffect1]
        cToken = "shieldbash"
        #cShield = True
        cIcon = "shieldwall"
        cSound = "ward.ogg"
        cCanUseWhileParalyzed = True
    class ShieldWall2(ShieldWall1):
        cName = "Hold The Line (Journeyman)"
        cDescription = "For the next 3 turns restores three nearby allies defense by 2 each turn, and reduces any non-magical damage by 15%. Usable while paralyzed too."
        cBranchLevel = 3
        cRequiredSkills = [ShieldWall1]
        cEffects = [ShieldWallEffect2]
    class ShieldWall3(ShieldWall2):
        cName = "Hold The Line (Expert)"
        cDescription = "For the next 3 turns restores three nearby allies defense by 3 each turn, and reduces any non-magical damage by 20%. Usable while paralyzed too."
        cBranchLevel = 5
        cRequiredSkills = [ShieldWall2]
        cEffects = [ShieldWallEffect3]

    class BattleCry1(BuffSkill):
        cName = "Rampage (Novice)"
        cDescription = "Increases Attack and Speed values by 25% for 3 turns."
        cBranchLevel = 1
        cRequiredLevel = 1
        cBranch = "BattleCry"
        cArea = "Single"
        cCost = 3
        cWait = 6
        cEffects = [BattleCryEffect1]
        cToken = "BattleCry"
        cIcon = "powerattack"
        cSound = "door.ogg"
        cBasic = True
        cSFXDuration =1.5
    class BattleCry2(BattleCry1):
        cName = "Rampage (Journeyman)"
        cDescription = "Increases Attack and Speed values by 50% for 3 turns."
        cBranchLevel = 3
        cRequiredSkills = [BattleCry1]
        cEffects = [BattleCryEffect2]
    class BattleCry3(BattleCry2):
        cName = "Rampage (Expert)"
        cDescription = "Increases Attack and Speed values by 75% for 3 turns."
        cBranchLevel = 5
        cRequiredSkills = [BattleCry2]
        cEffects = [BattleCryEffect3]

    class DivineShield1(BuffSkill):
        cName = "Warrior's Blessing (Novice)"
        cDescription = "Heals 10% of target's HP each turn for 3 turns."
        cBranchLevel = 1
        cRequiredLevel = 1
        cBranch = "DivineShield"
        cArea = "Single"
        cCost = 3
        cWait = 10
        cEffects = [DivineShieldEffect1]
        cToken = "Divine Shield"
        cIcon = "ascension"
        cSound = "clarity.ogg"
        cBasic = True
        cSFXDuration =1.5
    class DivineShield2(DivineShield1):
        cName = "Warrior's Blessing (Journeyman)"
        cDescription = "Heals 10% of target's HP each turn for 4 turns."
        cBranchLevel = 3
        cRequiredSkills = [DivineShield1]
        cEffects = [DivineShieldEffect2]
    class DivineShield3(DivineShield2):
        cName = "Warrior's Blessing (Expert)"
        cDescription = "Heals 10% of target's HP each turn for 5 turns."
        cBranchLevel = 5
        cRequiredSkills = [DivineShield2]
        cEffects = [DivineShieldEffect3]

    ##### JOANNE ####
    class MagicBlast1(HurtSkill):
        cName = "Magic Blast (Novice)"
        cDescription = "Hits a single target with a magic blast, inflicting 150% base damage."
        cBranch = "MagicBlast"
        cBranchLevel = 1
        cPower = 1.5
        cWait = 8
        cRange = "All"
        cArea = "Single"
        cElemental = True
        cMundane = False
        cIcon = "magicbolt"
        cSound = "magicbolt.ogg"
    class MagicBlast2(MagicBlast1):
        cName = "Magic Blast (Journeyman)"
        cDescription = "Hits a single target with a magic blast, inflicting 200% base damage."
        cBranch = "MagicBlast"
        cBranchLevel = 3
        cRequiredSkills = [MagicBlast1]
        cPower = 2.0
    class MagicBlast3(MagicBlast2):
        cName = "Magic Blast (Expert)"
        cDescription = "Hits a single target with a magic blast, inflicting 250% base damage."
        cBranch = "MagicBlast"
        cBranchLevel = 5
        cRequiredSkills = [MagicBlast2]
        cPower = 2.5

    class Earthquake1(HurtSkill):
        cName = "Earthquake (Novice)"
        cDescription = "Hits single target with Earth damage for 100% of caster's base attack and causes Shattered condition for 3 turns. Shattered does medium damage over time and reduces target's Critical Hit by 20%."
        cBranchLevel = 1
        cBranch = "Earthquake"
        cMundane = False
        cPower = 1.0
        cCost = 2
        cWait = 8
        cRange = "All"
        cElemental = True
        cElement = "Earth"
        cArea = "Single"
        cEffects = [ShatteredEffect1]
        cChance = 100
        cIcon = "earthquake"
        cSound = "earth_shake.ogg"
        cBuffPower = .075
    class Earthquake2(Earthquake1):
        cName = "Earthquake (Journeyman)"
        cDescription = "Hits single target with Earth damage for 150% of caster's base attack and causes Shattered condition for 4 turns. Shattered does medium damage over time and reduces target's Critical Hit by 20%."
        cBranchLevel = 3
        cPower = 1.5
        cRequiredSkills = [Earthquake1]
        cEffects = [ShatteredEffect2]
    class Earthquake3(Earthquake2):
        cName = "Earthquake (Expert)"
        cDescription = "Hits single target with Earth damage for 200% of caster's base attack and causes Shattered condition for 5 turns. Shattered does medium damage over time and reduces target's Critical Hit by 20%."
        cBranchLevel = 5
        cPower = 2.0
        cRequiredSkills = [Earthquake2]
        cEffects = [ShatteredEffect3]        
        
    class IceShard1(HurtSkill):
        cName = "Ice Shard (Novice)"
        cDescription = "Hits single target for 100% of caster's base attack and causes Frozen condition for 3 turns. Frozen does medium damage over time and reduces target's speed value by 20%."
        cBranch = "IceShard"
        cBranchLevel = 1
        cMundane = False
        cPower = 1.0
        cCost = 2
        cWait = 10
        cRange = "All"
        cElemental = True
        cElement = "Water"
        cArea = "Single"
        cEffects = [FrozenEffect1]
        cChance = 100
        cIcon = "blizzard"
        cSound = "blizzard.ogg"
        cBuffPower = .075
    class IceShard2(IceShard1):
        cName = "Ice Shard (Journeyman)"
        cDescription = "Hits single target with Water damage for 125% of caster's base attack and causes Frozen condition for 4 turns. Frozen does medium damage over time and reduces target's speed value by 20%."
        cBranchLevel = 3
        cPower = 1.25
        cRequiredSkills = [IceShard1]
        cEffects = [FrozenEffect2]
    class IceShard3(IceShard2):
        cName = "Ice Shard (Expert)"
        cDescription = "Hits single target with Water damage for 150% of caster's base attack and causes Frozen condition for 5 turns. Frozen does medium damage over time and reduces target's speed value by 20%."
        cBranchLevel = 5
        cPower = 1.5
        cRequiredSkills = [IceShard2]
        cEffects = [FrozenEffect3]
        
    class FireBlast1(HurtSkill):
        cName = "Fire Blast (Novice)"
        cDescription = "Hits a single target inflicting 125% base damage and causing Burning for 3 turns. Burning does high damage over time and reduces target's attack value by 20%. Melee attacks while burning is active will suffer damage."
        cBranch = "FireBlast"
        cRequiredSkills = []
        cBranchLevel = 2
        cPower = 1.25
        cCost = 2
        cWait = 8
        cRange = "All"
        cArea = "Single"
        cElemental = True
        cMundane = False
        cElemental = True
        cElement = "Fire"
        cEffects = [BurningEffect1]
        cChance = 100
        cIcon = "inferno"
        cSound = "fireball.ogg"
        cBuffPower = .1
        
    class FireBlast2(FireBlast1):
        cName = "Fire Blast (Journeyman)"
        cDescription = "Hits a single target inflicting 150% base damage and causing Burning for 4 turns. Burning does high damage over time and reduces target's attack value by 20%. Melee attacks while burning is active will suffer damage."
        cBranch = "FireBlast"
        cBranchLevel = 4
        cRequiredSkills = [FireBlast1]
        cPower = 1.5
        cEffects = [BurningEffect2]
        cChance = 100
    class FireBlast3(FireBlast2):
        cName = "Fire Blast (Expert)"
        cDescription = "Hits a single target inflicting 175% base damage and causing Burning for 5 turns. Burning does high damage over time and reduces target's attack value by 20%. Melee attacks while burning is active will suffer damage."
        cBranch = "FireBlast"
        cBranchLevel = 6
        cRequiredSkills = [FireBlast2]
        cPower = 1.75
        cEffects = [BurningEffect3]
        cChance = 100

    class Tornado1(HurtSkill):
        cName = "Magic Tornado (Novice)"
        cDescription = "Hits single target for 100% of caster's base attack and causes Whirling condition for up to 3 turns. Whirling randomly swap target's attack, defense, speed and critical values each turn."
        cBranchLevel = 1
        cRequiredSkills = []
        cBranch = "Tornado"
        cMundane = False
        cPower = 1.0
        cCost = 2
        cWait = 8
        cRange = "All"
        cElemental = True
        cElement = "Air"
        cArea = "Single"
        cEffects = [ConfusedEffect1]
        cChance = 100
        cIcon = "tornado"
        cSound = "woosh.ogg"
    class Tornado2(Tornado1):
        cName = "Magic Tornado (Journeyman)"
        cDescription = "Hits single target for 125% of caster's base attack and causes Whirling condition for up to 4 turns. Whirling randomly swap target's attack, defense, speed and critical values each turn."
        cBranchLevel = 3
        cPower = 1.25
        cRequiredSkills = [Tornado1]
        cEffects = [ConfusedEffect2]
    class Tornado3(Tornado2):
        cName = "Magic Tornado (Expert)"
        cDescription = "Hits single target for 150% of caster's base attack and causes Whirling condition for up to 5 turns. Whirling randomly swap target's attack, defense, speed and critical values each turn."
        cBranchLevel = 5
        cPower = 1.5
        cRequiredSkills = [Tornado2]
        cEffects = [ConfusedEffect3]
        
    class MagicSparks1(HurtSkill):
        cName = "Magic Sparks (Novice)"
        cDescription = "Hits target for 75% of caster's base attack. The enemies on the sides take 50% of the damage. On each hit, reduces target's buffs by 1."
        cBranch = "MagicSparks"
        cBranchLevel = 1
        cRequiredSkills = []
        cMundane = False
        cPower = 0.75
        cCost = 2
        cWait = 8
        cRange = "All"
        cElemental = True
        cRemove = "Buff"
        cReduce = 1
        cArea = "AOE"
        cIcon = "energy"
        cSound = "missile.ogg"
    class MagicSparks2(MagicSparks1):
        cName = "Magic Sparks (Journeyman)"
        cDescription = "Hits target for 100% of caster's base attack. The enemies on the sides take 50% of the damage. On each hit, reduces target's buffs by 1."
        cBranchLevel = 3
        cRequiredSkills = [MagicSparks1]
        cPower = 1.0
    class MagicSparks3(MagicSparks2):
        cName = "Magic Sparks (Expert)"
        cDescription = "Hits target for 125% of caster's base attack. The enemies on the sides take 50% of the damage. On each hit, reduces target's buffs by 1."
        cBranchLevel = 5
        cRequiredSkills = [MagicSparks2]
        cPower = 1.25

    class MagicChains1(HurtSkill):
        cName = "Magic Chains (Novice)"
        cDescription = "Hits single target for 100% base attack and causes Chained condition for 3 turns. Chained effect paralyzes target and drains 1SP every turn."
        cBranch = "Paralyze"
        cBranchLevel = 1
        cMundane = False
        cPower = 1.0
        cCost = 3
        cWait = 12
        cRange = "All"
        cElemental = True
        cElement = "Normal"
        cArea = "Single"
        cEffects = [ChainedEffect1]
        cChance = 100
        cIcon = "paralyze"
        cSound = "magic_gong.ogg"
    class MagicChains2(MagicChains1):
        cName = "Magic Chains (Journeyman)"
        cDescription = "Hits single target for 150% base attack and causes Chained condition for 4 turns. Chained effect paralyzes target and drains 1SP every turn."
        cBranch = "Paralyze"
        cBranchLevel = 3
        cPower = 1.5
        cRequiredSkills = [MagicChains1]
        cEffects = [ChainedEffect2]
    class MagicChains3(MagicChains1):
        cName = "Magic Chains (Expert)"
        cDescription = "Hits single target for 200% base attack and causes Chained condition for 5 turns. Chained effect paralyzes target and drains 1SP every turn."
        cBranch = "Paralyze"
        cBranchLevel = 5
        cPower = 2.0
        cRequiredSkills = [MagicChains2]
        cEffects = [ChainedEffect3]
        
    class Invisibility1(BuffSkill):
        cName = "Magic Shield (Novice)"
        cDescription = "Ward three nearby targets against magic, adding +1 to all elemental resistances for 3 turns."
        cBranchLevel = 1
        cRequiredLevel = 1
        cBranch = "Invisibility"
        cArea = "AOE"
        cWait = 5
        cCost = 1
        cEffects = [InvisibleEffect1]
        cToken = "Invisibility"
        cIcon = "Invisibility"
        cSound = "magic_chimes.ogg"
    class Invisibility2(Invisibility1):
        cName = "Magic Shield (Journeyman)"
        cDescription = "Ward three nearby targets against magic, adding +2 to all elemental resistances for 3 turns."
        cBranchLevel = 3
        cRequiredSkills = [Invisibility1]
        cEffects = [InvisibleEffect2]
    class Invisibility3(Invisibility1):
        cName = "Magic Shield (Expert)"
        cDescription = "Ward three nearby targets against magic, adding +3 to all elemental resistances for 3 turns."
        cBranchLevel = 5
        cRequiredSkills = [Invisibility2]
        cEffects = [InvisibleEffect3]
    
    class Haste1(BuffSkill):
        cName = "Haste (Novice)"
        cDescription = "Increases target's speed by 15% for up to 3 turns."
        cBranchLevel = 1
        cBranch = "Haste"
        cRange = "All"
        cArea = "Single"
        cRequiredSkills = []
        cWait = 8
        cCost = 2
        cEffects = [HasteEffect1]
        cIcon = "haste"
        cSound = "haste.ogg"
        cSFXDuration = 2.5
    class Haste2(Haste1):
        cName = "Haste (Journeyman)"
        cDescription = "Increases target's speed by 20% for up to 3 turns."
        cBranchLevel = 3
        cEffects = [HasteEffect2]
        cRequiredSkills = [Haste1]
    class Haste3(Haste2):
        cName = "Haste (Expert)"
        cDescription = "Increases target's speed by 25% for up to 3 turns."
        cBranchLevel = 5
        cEffects = [HasteEffect3]
        cRequiredSkills = [Haste2]

    class BrambleCoat1(BuffSkill):
        cName = "BrambleCoat (Novice)"
        cDescription = "Surrounds target's body in a coat of brambles with a counter of 3. Those that strikes target with melee will suffer 3 damage. Every hit, the duration of effect decreases by 1."
        cBranchLevel = 1
        cBranch = "BrambleCoat"
        cArea = "Single"
        cRange = "All"
        cWait = 8
        cCost = 2
        cEffects = [BrambleCoatEffect1]
        cToken = "BrambleCoat"
        cIcon = "bramblecoat"
        cSound = "bramblecoat.ogg"
    class BrambleCoat2(BrambleCoat1):
        cName = "BrambleCoat (Journeyman)"
        cDescription = "Surrounds target's body in a coat of brambles with a counter of 3. Those that strikes target with melee will suffer 5 damage. Every hit, the duration of effect decreases by 1."
        cBranchLevel = 3
        cEffects = [BrambleCoatEffect2]
        cRequiredSkills = [BrambleCoat1]
    class BrambleCoat3(BrambleCoat2):
        cName = "BrambleCoat (Expert)"
        cDescription = "Surrounds target's body in a coat of brambles with a counter of 3. Those that strikes target with melee will suffer 7 damage. Every hit, the duration of effect decreases by 1."
        cBranchLevel = 5
        cEffects = [BrambleCoatEffect3]
        cRequiredSkills = [BrambleCoat2]

    class MagicDefense1(ArmorRestoreSkill):
        cName = "Magic Defense (Novice)"
        cDescription = "Restores 20% of target's lost defense. Defense value cannot exceed the maximum value."
        cBranchLevel = 1
        cBranch = "MagicDefense"
        cRange = "All"
        cArea = "Single"
        cRequiredSkills = []
        cWait = 10
        cCost = 0
        cPower=.2
        cIcon = "armorskin"
        cSound = "clarity.ogg"
    class MagicDefense2(MagicDefense1):
        cName = "Magic Defense (Journeyman)"
        cDescription = "Restores 40% of target's lost defense. Defense value cannot exceed the maximum value."
        cBranchLevel = 3
        cRequiredSkills = [MagicDefense1]
        cPower=.4
    class MagicDefense3(MagicDefense1):
        cName = "Magic Defense (Expert)"
        cDescription = "Restores 60% of target's lost defense. Defense value cannot exceed the maximum value."
        cBranchLevel = 5
        cRequiredSkills = [MagicDefense2]
        cPower=.6

    class MirrorDamage1(BuffSkill):
        cName = "Mirror Damage (Novice)"
        cDescription = "Reflects back to the attacker 30% of the damage done for the next 3 turns. Works even with magic and ranged attacks. Every use reduces the duration by 1 turn."
        cBranchLevel = 1
        cBranch = "Mirror Damage"
        cCost = 3
        cWait = 6
        cPower = .3
        cRange = "All"
        cArea = "Single"
        cEffects = [MirrorDamageEffect1]
        cIcon = "falseenemy"
        cSound = "wahwah.ogg"
        cSFXDuration = 0.5
    class MirrorDamage2(MirrorDamage1):
        cName = "Mirror Damage (Journeyman)"
        cDescription = "Reflects back to the attacker 40% of the damage done for the next 3 turns. Works even with magic and ranged attacks. Every use reduces the duration by 1 turn."
        cBranchLevel = 3
        cPower = .4
        cEffects = [MirrorDamageEffect2]
        cRequiredSkills = [MirrorDamage1]
    class MirrorDamage3(MirrorDamage2):
        cName = "Mirror Damage (Expert)"
        cDescription = "Reflects back to the attacker 50% of the damage done for the next 3 turns. Works even with magic and ranged attacks. Every use reduces the duration by 1 turn."
        cBranchLevel = 5
        cPower = .5
        cEffects = [MirrorDamageEffect3]
        cRequiredSkills = [MirrorDamage2]

    class Purify1(HealSkill):
        cName = "Purify (Novice)"
        cDescription = "Heals target by 20% of total HP and reduces all negative conditions by 1 turns."
        cBranchLevel = 1
        cCost = 3
        cWait = 10
        cBranch = "Purification"
        cPower = 0.2
        cRemove = "AllEffect"
        cReduce = 1
        cRange = "All"
        cArea = "Single"
        cIcon = "purification"
        cSound = "fireball.ogg"
    class Purify2(Purify1):
        cName = "Purify (Journeyman)"
        cDescription = "Heals target by 30% of total HP and reduces all negative conditions by 2 turns."
        cBranchLevel = 3
        cPower = 0.3
        cRequiredSkills = [Purify1]
        cReduce = 2
    class Purify3(Purify2):
        cName = "Purify (Expert)"
        cDescription = "Heals target by 40% of total HP and reduces all negative conditions by 3 turns."
        cBranchLevel = 5
        cPower = 0.4
        cRequiredSkills = [Purify2]
        cReduce = 3
        
    ##### THALIA ####
    class BackStab1(ArmorDamageSkill):
        cName = "Backstab (Novice)"
        cDescription = "Hits single target dealing 75% base damage and reducing defense by 2 points."
        cBranchLevel = 1
        cWait = 8
        cBranch = "Backstab"
        cPower = .75
        cRange = "All"
        cArea = "Single"
        cArAmount = 2
        cIcon = "backstab"
        cSound = "backstab.ogg"
        cWeaponCategory = "Close"
    class BackStab2(BackStab1):
        cName = "Backstab (Journeyman)"
        cDescription = "Hits single target dealing 100% base damage and reducing defense by 3 points."
        cBranchLevel = 3
        cPower = 1.0
        cRequiredSkills = [BackStab1]
        cArAmount = 3
    class BackStab3(BackStab2):
        cName = "Backstab (Expert)"
        cDescription = "Hits single target dealing 125% base damage and reducing defense by 4 points."
        cBranchLevel = 5
        cPower = 1.25
        cRequiredSkills = [BackStab2]
        cArAmount = 4
        
    class ThrowingKnives1(HurtSkill):
        cName = "Throwing Knives (Novice)"
        cDescription = "Caster uses throwing knives to hit three nearby targets inflicting 30% base damage and causing weakened condition for 2 turns."
        cBranchLevel = 1
        cRequiredSkills = []
        cBranch = "Throwing Knives"
        cTarget = "Foe"
        cPower = 0.3
        cWait = 8
        cRange = "All"
        cArea = "Row"
        cElemental = False
        cWeaponCategory = "Ranged"
        cMundane = True
        cEffects = [WeakenedEffect1]
        cIcon = "throwingdaggers"
        cSound = "daggers.ogg"
    class ThrowingKnives2(ThrowingKnives1):
        cName = "Throwing Knives (Journeyman)"
        cDescription = "Caster uses throwing knives to hit three nearby targets inflicting 40% base damage and causing weakened condition for 3 turns."
        cBranchLevel = 3
        cPower = .4
        cRequiredSkills = [ThrowingKnives1]
        cEffects = [WeakenedEffect2]
    class ThrowingKnives3(ThrowingKnives2):
        cName = "Throwing Knives (Expert)"
        cDescription = "Caster uses throwing knives to hit three nearby targets inflicting 50% base damage and causing weakened condition for 4 turns."
        cBranchLevel = 5
        cPower = .5
        cRequiredSkills = [ThrowingKnives2]
        cEffects = [WeakenedEffect3]

    class Poison1(BonusSkill):
        cName = "Poison (Novice)"
        cDescription = "Hits a single target for 100% base damage causing Poisoned condition for up to 3 turns. Poisoned effect reduces target's Critical Hit by 50% and inflicts low damage over time."
        cBranchLevel = 1
        cBranch = "Poison"
        cPower = 1.0
        cWait = 10
        cRange = "All"
        cArea = "Single"
        cElemental = False
        cEffects = [PoisonedEffect1]
        cIcon = "poisondagger"
        cSound = "knife.ogg"
        cWeaponCategory = "Close"
        cBuffPower = .05
    class Poison2(Poison1):
        cName = "Poison (Journeyman)"
        cDescription = "Hits a single target for 125% base damage causing Poisoned condition for up to 5 turns. Poisoned effect reduces target's Critical Hit by 50% and inflicts low damage over time."
        cBranchLevel = 3
        cRequiredSkills = [Poison1]
        cPower = 1.25
        cEffects = [PoisonedEffect2]
    class Poison3(Poison2):
        cName = "Poison (Expert)"
        cDescription = "Hits a single target for 150% base damage causing Poisoned condition for up to 7 turns. Poisoned effect reduces target's Critical Hit by 50% and inflicts low damage over time."
        cBranchLevel = 5
        cRequiredSkills = [Poison2]
        cPower = 1.5
        cEffects = [PoisonedEffect3]

    class TakeAim1(FocusTargetSkill):
        cName = "Take Aim (Novice)"
        cDescription = "The character carefully takes aim at a target: all subsequent attacks for the next 3 turns will do 20% more damage."
        cBranchLevel = 1
        cWait = 10
        cBranch = "TakeAim"
        cArea = "Single"
        cRequiredSkills = []
        cEffects = [TakeAimEffect1]
        cIcon = "takeaim"
        cSound = "bow_pull.ogg"
        cBasic = True
        cWeaponCategory = "Ranged"
    class TakeAim2(TakeAim1):
        cName = "Take Aim (Journeyman)"
        cDescription = "The character carefully takes aim at a target: all subsequent attacks for the next 3 turns will do 40% more damage."
        cBranchLevel = 3
        cEffects = [TakeAimEffect2]
        cRequiredSkills = [TakeAim1]
    class TakeAim3(TakeAim2):
        cName = "Take Aim (Expert)"
        cDescription = "The character carefully takes aim at a target: all subsequent attacks for the next 3 turns will do 60% more damage."
        cBranchLevel = 5
        cEffects = [TakeAimEffect3]
        cRequiredSkills = [TakeAim2]

    class SuddenStrike1(SPDrainSkill):
        cName = "Sudden Strike (Novice)"
        cDescription = "Hits single target in the front line, striking for 100% normal damage and decreases target's SP by 2 points."
        cBranch = "Sudden Strike"
        cBranchLevel = 1
        cPower = 1.0
        cCost = 3
        cWait = 4
        cRange = "Front"
        cArea = "Single"
        cElemental = False
        cMundane = True
        cIcon = "SuddenStrike"
        cSound = "bash.ogg"
        cSPAmount = 2
        cWeaponCategory = "Close"
    class SuddenStrike2(SuddenStrike1):
        cName = "Sudden Strike (Journeyman)"
        cDescription = "Hits single target in the front line, striking for 125% normal damage and decreases target's SP by 4 points."
        cBranchLevel = 3
        cPower = 1.25
        cSPAmount = 4
        cRequiredSkills = [SuddenStrike1]
    class SuddenStrike3(SuddenStrike2):
        cName = "Sudden Strike (Expert)"
        cDescription = "Hits single target in the front line, striking for 150% normal damage and decreases target's SP by 6 points."
        cBranchLevel = 5
        cPower = 1.5
        cSPAmount = 6
        cRequiredSkills = [SuddenStrike2]

    class CriticalHit1(BonusSkill):
        cName = "Fatality (Novice)"
        cDescription = "Hits single target for 150% base damage and inflicts bleeding for up to 3 turns."
        cBranchLevel = 1
        cBranch = "CriticalHit"
        cMundane = True
        cPower = 1.5
        cCost = 3
        cWait = 10
        cRange = "Front"
        cArea = "Single"
        cIcon = "criticalhit"
        cSound = "specialattack01.ogg"
        cEffects = [BleedEffect1]
        cChance = 100
        cWeaponCategory = "Close"
    class CriticalHit2(CriticalHit1):
        cName = "Fatality (Journeyman)"
        cDescription = "Hits single target for 175% base damage and inflicts bleeding for up to 4 turns."
        cBranchLevel = 3
        cPower = 1.75
        cRequiredSkills = [CriticalHit1]
        cEffects = [BleedEffect2]
    class CriticalHit3(CriticalHit2):
        cName = "Fatality (Expert)"
        cDescription = "Hits single target for 200% base damage and inflicts bleeding for up to 5 turns."
        cBranchLevel = 5
        cPower = 2.0
        cRequiredSkills = [CriticalHit2]
        cEffects = [BleedEffect3]

    class Dodge1(BuffSkill):
        cName = "Dodge (Novice)"
        cDescription = "Decreases target's speed by 15% but target will evade all non-magic attacks for 3 turns."
        cBranchLevel = 1
        cWait = 6
        cCost = 2
        cBranch = "Dodge"
        cRange = "All"
        cArea = "Self"
        cRequiredSkills = []
        cEffects = [DodgeEffect1]
        cIcon = "Dodge"
        cSound = "haste.ogg"
        cSFXDuration = 2.5
    class Dodge2(Dodge1):
        cName = "Dodge (Journeyman)"
        cDescription = "Decreases target's speed by 20% but target will evade all non-magic attacks for 4 turns."
        cBranchLevel = 3
        cEffects = [DodgeEffect2]
        cRequiredSkills = [Dodge1]
    class Dodge3(Dodge2):
        cName = "Dodge (Expert)"
        cDescription = "Decreases target's speed by 25% but target will evade all non-magic attacks for 5 turns."
        cBranchLevel = 5
        cEffects = [DodgeEffect3]
        cRequiredSkills = [Dodge2]
        
    class Rally1(BuffSkill):
        cName = "Rally (Novice)"
        cDescription = "Incites three nearby allies, giving a 10% attack bonus for up to 3 turns. Reduces by 1 turn any negative conditions."
        cBranchLevel = 1
        cWait = 8
        cBranch = "Rally"
        cArea = "AOE"
        cRequiredSkills = []
        cEffects = [RallyEffect1]
        cToken = "Rally"
        cRemove = "AllEffect"
        cReduce = 1
        cIcon = "rally"
        cSound="rally.ogg"
    class Rally2(Rally1):
        cName = "Rally (Journeyman)"
        cDescription = "Incites three nearby allies, giving a 15% attack bonus for up to 4 turns. Reduces by 2 turn any negative conditions."
        cBranchLevel = 3
        cEffects = [RallyEffect2]
        cReduce = 2
        cRequiredSkills = [Rally1]
    class Rally3(Rally2):
        cName = "Rally (Expert)"
        cDescription = "Incites three nearby allies, giving a 20% attack bonus for up to 5 turns. Reduces by 3 turn any negative conditions."
        cBranchLevel = 5
        cEffects = [RallyEffect3]
        cRequiredSkills = [Rally2]
        cReduce = 3
        
    class Frenzy1(BuffSkill):
        cName = "Frenzy (Novice)"
        cDescription = "Character enters frenzy mode. For the next 3 turns, every time character hits an enemy, increases attack by 2."
        cBranchLevel = 1
        cWait = 8
        cBranch = "Frenzy"
        cArea = "Self"
        cEffects = [FrenzyEffect1]
        cToken = "Frenzy"
        cIcon = "frenzy"
        cSound = "magic_breath.ogg"
    class Frenzy2(Frenzy1):
        cName = "Frenzy (Journeyman)"
        cDescription = "Character enters frenzy mode. For the next 4 turns, every time character hits an enemy, increases attack by 2."
        cBranchLevel = 3
        cRequiredSkills = [Frenzy1]
        cEffects = [FrenzyEffect2]
    class Frenzy3(Frenzy1):
        cName = "Frenzy (Expert)"
        cDescription = "Character enters frenzy mode. For the next 5 turns, every time character hits an enemy, increases attack by 2."
        cBranchLevel = 5
        cRequiredSkills = [Frenzy2]
        cEffects = [FrenzyEffect3]

    class DistractingBlows1(BuffSkill):
        cName = "Distracting Blows (Novice)"
        cDescription = "Increases target's defense by 20% of Thalia's attack for the next 3 turns. Reduces Thalia's speed by 10%."
        cBranchLevel = 1
        cWait = 6
        cBranch = "DistractingBlows"
        cArea = "Other"
        cEffects = [DistractingBlowsEffect1]
        cToken = "DistractingBlows"
        cIcon = "distractingblows"
        cSound = "sword_double.ogg"
    class DistractingBlows2(DistractingBlows1):
        cName = "Distracting Blows (Journeyman)"
        cDescription = "Increases target's defense by 30% of Thalia's attack for the next 3 turns. Reduces Thalia's speed by 15%."
        cBranchLevel = 3
        cRequiredSkills = [DistractingBlows1]
        cEffects = [DistractingBlowsEffect2]
    class DistractingBlows3(DistractingBlows1):
        cName = "Distracting Blows (Expert)"
        cDescription = "Increases target's defense by 40% of Thalia's attack for the next 3 turns. Reduces Thalia's speed by 20%."
        cBranchLevel = 5
        cRequiredSkills = [DistractingBlows2]
        cEffects = [DistractingBlowsEffect3]
        
    class HideInShadows1(BuffSkill):
        cName = "Hide In Shadows (Novice)"
        cDescription = "Hides in shadows, doubling character's critical hit and regenerating 1 SP each turn. Lasts for 3 turns. If character attacks an enemy, effect vanishes."
        cBranchLevel = 1
        cWait = 10
        cBranch = "HideInShadows"
        cRange = "All"
        cArea = "Self"
        cEffects = [HideInShadowsEffect1]
        cIcon = "hideinshadows"
        cSound = "vines2.ogg"
        cSFXDuration = 2.5
    class HideInShadows2(HideInShadows1):
        cName = "Hide In Shadows (Journeyman)"
        cDescription = "Hides in shadows, doubling character's critical hit and regenerating 1 SP each turn. Lasts for 4 turns. If character attacks an enemy, effect vanishes."
        cBranchLevel = 3
        cEffects = [HideInShadowsEffect2]
        cRequiredSkills = [HideInShadows1]
    class HideInShadows3(HideInShadows2):
        cName = "Hide In Shadows (Expert)"
        cDescription = "Hides in shadows, doubling character's critical hit and regenerating 1 SP each turn. Lasts for 5 turns. If character attacks an enemy, effect vanishes."
        cBranchLevel = 5
        cEffects = [HideInShadowsEffect3]
        cRequiredSkills = [HideInShadows2]

    class LightningReflexes1(BuffSkill):
        cName = "Lightning Reflexes (Novice)"
        cDescription = "The character's critical hit and attack values are increased by 1 each turn for the next 3 turns."
        cBranchLevel = 1
        cBranch = "LightningReflexes"
        cArea = "Self"
        cWait = 5
        cCost = 3
        cEffects = [LightningReflexesEffect1]
        cToken = "LightningReflexes"
        cIcon = "lightningreflexes"
        cSound = "hawkeye.ogg"
    class LightningReflexes2(LightningReflexes1):
        cName = "Lightning Reflexes (Journeyman)"
        cDescription = "The character's critical hit and attack values are increased by 1 each turn for the next 4 turns."
        cBranchLevel = 3
        cEffects = [LightningReflexesEffect2]
        cRequiredSkills = [LightningReflexes1]
    class LightningReflexes3(LightningReflexes2):
        cName = "Lightning Reflexes (Expert)"
        cDescription = "The character's critical hit and attack values are increased by 1 each turn for the next 5 turns."
        cBranchLevel = 5
        cEffects = [LightningReflexesEffect3]
        cRequiredSkills = [LightningReflexes2]


    ## CHEAT ##
    class CheatMaster(HurtSkill):
        cName = "CheatMaster"
        cDescription = "Hits a full row of enemies with Dark damage, 10% chance of causing Poisoned condition for up to 3 turns."
        cBranch = "Soulrot"
        cMundane = False
        cPower = 50
        cAcc = 1.0
        cCost = 15
        cWait = 9
        cRange = "All"
        cElemental = True
        cElement = "Normal"
        cArea = "All"
        cEffects = [PoisonedEffect1]
        cChance = 10
        cIcon = "soulrot"
        #cScreen = "advancedCombatNote"
        cSound = "soulrot.ogg"

    class MindFocus1(BuffSkill):
        cName = "Mind Focus (Novice)"
        cDescription = "Caster focuses on recovering lost SP. Reduces speed by 25% but recover 1 SP every turn for 3 turns."
        cBranchLevel = 1
        cEffects = [MindFocusEffect1]
        cToken = "recover"
        cIcon = "recover"
        cSound="rage.ogg"
    class MindFocus2(MindFocus1):
        cName = "Mind Focus (Journeyman)"
        cDescription = "Caster focuses on recovering lost SP. Reduces speed by 20% but recover 1 SP every turn for 4 turns."
        cBranchLevel = 3
        cRequiredSkills = [MindFocus1]
        cEffects = [MindFocusEffect2]
    class MindFocus3(MindFocus2):
        cName = "Mind Focus (Expert)"
        cDescription = "Caster focuses on recovering lost SP. Reduces speed by 15% but recover 1 SP every turn for 5 turns."
        cBranchLevel = 5
        cRequiredSkills = [MindFocus2]
        cEffects = [MindFocusEffect3]

    class Energize1(SPChannelSkill):
        cName = "Energize (Novice)"
        cDescription = "Transfers 25% of the caster's current SP amount to the target. Target's SP cannot exceed the maximum value."
        cBranchLevel = 1
        cBranch = "Energize"
        cRange = "All"
        cArea = "Single"
        cRequiredSkills = [BrambleCoat1]
        cWait = 10
        cCost = 0
        cPower=.25
        cIcon = "vigor"
        cSound = "clarity.ogg"
    class Energize2(Energize1):
        cName = "Energize (Journeyman)"
        cDescription = "Transfers 50% of the caster's current SP amount to the target. Target's SP cannot exceed the maximum value."
        cBranchLevel = 3
        cRequiredSkills = [Energize1]
        cPower=.50
    class Energize3(Energize1):
        cName = "Energize (Expert)"
        cDescription = "Transfers 75% of the caster's current SP amount to the target. Target's SP cannot exceed the maximum value."
        cBranchLevel = 5
        cRequiredSkills = [Energize2]
        cPower=.75

    class RainOfArrows1(HurtSkill):
        cName = "Rain of Arrows (Novice)"
        cDescription = "Hits single target for 100% damage and enemies around him take 50% of his damage (AOE)."
        cBranchLevel = 1
        cBranch = "RainofArrows"
        cRequiredSkills = [ThrowingKnives1]
        cPower = 1.0
        cRange = "All"
        cArea = "AOE"
        cElemental = False
        cMundane = True
        cIcon = "arrowrain"
        cSound = "arrowrain.ogg"
    class RainOfArrows2(RainOfArrows1):
        cName = "Rain of Arrows (Journeyman)"
        cDescription = "Hits single target for 125% damage and enemies around him take 50% of his damage (AOE)."
        cBranchLevel = 3
        cPower = 1.25
    class RainOfArrows3(RainOfArrows2):
        cName = "Rain of Arrows (Expert)"
        cDescription = "Hits single target for 150% damage and enemies around him take 50% of his damage (AOE)."
        cBranchLevel = 5
        cPower = 1.5

    class Fireball1(HurtSkill):
        cName = "Fireball (Novice)"
        cDescription = "Hits target for 100% of caster's base attack. The enemies on the sides take 50% of the damage. Causes Burning for 3 turns. Burning does damage over time and reduces target's attack value by 20%."
        cBranchLevel = 2
        cRequiredSkills = []
        cBranch = "Fireball"
        cMundane = False
        cPower = 1.0
        cCost = 2
        cWait = 8
        cRange = "All"
        cElemental = True
        cElement = "Fire"
        cArea = "AOE"
        cEffects = [BurningEffect1]
        cChance = 100
        cIcon = "fireball"
        cSound = "fireball.ogg"
    class Fireball2(Fireball1):
        cName = "Fireball (Journeyman)"
        cDescription = "Hits target for 125% of caster's base attack. The enemies on the sides take 50% of the damage. Causes Burning for 4 turns. Burning does damage over time and reduces target's attack value by 20%."
        cBranchLevel = 4
        cPower = 1.25
        cRequiredSkills = [Fireball1]
        cEffects = [BurningEffect2]
    class Fireball3(Fireball2):
        cName = "Fireball (Expert)"
        cDescription = "Hits target for 150% of caster's base attack. The enemies on the sides take 50% of the damage. Causes Burning for 5 turns. Burning does damage over time and reduces target's attack value by 20%."
        cBranchLevel = 6
        cPower = 1.5
        cRequiredSkills = [Fireball2]
        cEffects = [BurningEffect3]

Post Reply