Traits are passive, equippable things. You should be able to equip, unequip, etc Traits in the same way Skills are (similar screen, different display). There should only be a few traits learned per class, and at different increments.
For example, all classes should get a new trait at:
level 5
level 25
level 40
level 50
And each class should be able to equip a different number of traits (or maybe, everyone can equip up to 6 traits).
Also, show earned traits when leveling up (and improved traits, if applicable).
When passing traits to the player, there should be a SkillManager.getCustomizedSkills that returns trait-modified skills. When showing things that aren't normally there, green should accent the new effects. Any time a trait is changed, the player will have to be re-sent as well as the new skills.
All skills will need an element assigned, as well as a type (Debuff, buff, plain, etc) and these should be shown on the screen as "Lightning Attack" or "Physical Debuff"
Different classes should have different numbers of trait slots, possibly (each class should have a "tier" associated with it, which would determine this - tier 1: 6 slots, tier 2: 4, tier 3: 2).
Professions should also be able to have innate traits via a Profession.modifySkills function that could give a bonus to any given class.
Possibly, each class should have a trademark skill, which they also get a trait to boost something of it.
Possible trait paths:
Mage
MNT boost - 4/7/10%
Elemental affinity (fire, ice, shock) - (debuffs last longer, debuffs do more damage)
Magic Damage boost - 3/6/9/12/15%
Thief
True Nature - steal modifications (debuffs, damage, higher success %, more items per steal, steal hp/mp/buffs)
Blinding Blade - chance to blind when attacking physically
DEX boost - 4/7/10%
Gold Finder - find more gold when completing combat
Item Radar - get items more often when completing combat
Shadowstabber - attacks sometimes don't unstealth the thief
Fighter
STR boost - 4/7/10%
Stun Strike - chance to stun when attacking physically
Physical Damage boost - 3/6/9/12/15%
Double Attack - 3/6/9/12/15% chance of doing a double attack
Cleric
Healing boost - 4/8/12/16/20%
Fire boost - 2/4/6/8/10
Lasting Heals - heals apply a regenerative aura that lasts 1/2/3/4/5 rounds
Traits are passive, equippable things. You should be able to equip, unequip, etc Traits in the same way Skills are (similar screen, different display). There should only be a few traits learned per class, and at different increments.
For example, all classes should get a new trait at:
And each class should be able to equip a different number of traits (or maybe, everyone can equip up to 6 traits).
Also, show earned traits when leveling up (and improved traits, if applicable).
When passing traits to the player, there should be a
SkillManager.getCustomizedSkills
that returns trait-modified skills. When showing things that aren't normally there, green should accent the new effects. Any time a trait is changed, the player will have to be re-sent as well as the new skills.All skills will need an element assigned, as well as a type (Debuff, buff, plain, etc) and these should be shown on the screen as "Lightning Attack" or "Physical Debuff"
Different classes should have different numbers of trait slots, possibly (each class should have a "tier" associated with it, which would determine this - tier 1: 6 slots, tier 2: 4, tier 3: 2).
Professions should also be able to have innate traits via a
Profession.modifySkills
function that could give a bonus to any given class.Possibly, each class should have a trademark skill, which they also get a trait to boost something of it.
Possible trait paths:
MNT boost - 4/7/10%Elemental affinity (fire, ice, shock) - (debuffs last longer, debuffs do more damage)Magic Damage boost - 3/6/9/12/15%Blinding Blade - chance to blind when attacking physicallyDEX boost - 4/7/10%STR boost - 4/7/10%Stun Strike - chance to stun when attacking physicallyPhysical Damage boost - 3/6/9/12/15%Double Attack - 3/6/9/12/15% chance of doing a double attackHealing boost - 4/8/12/16/20%Fire boost - 2/4/6/8/10Lasting Heals - heals apply a regenerative aura that lasts 1/2/3/4/5 rounds