Attributes and Skills

From Phobos Wiki
Revision as of 22:25, 26 February 2023 by Ricardo (talk | contribs) (Console Commands)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Attributes

Attributes are the general qualities of your ingame character. In Phobos there are three attributes: strength, dexterity and wisdom.

  • Strength is a measure of how physically strong you are. So high strength allows greater damage to be inflicted using melee weapons. Having a high strength attribute is also associated with having a lot of health, being able to wear heavy armors and wield great weapons. So this attribute is particularly important to close-combat classes.
  • Dexterity is how good a character's hand-eye coordination is and how agile they are. High dexterity increases the damage inflicted by distance weapons. So this attribute is particularly important for the distance-combat classes. However being highly dexterous also improves the chance of a successful hit, movement speed, minimum damage for physical and magical combat, and also improves defence as it increases the chance of being able to dodge attacks.
  • Wisdom is how intelligent the character is. High wisdom increases the damage a caster can inflict using magic, but also increases your magical defence. Having high wisdom is also associated with having a lot of mana. So this attribute is particularly useful for the magical-combat classes.

Whenever a player levels up in experience, they get a set number of 'attribute points' to spend on attributes. Apart from affecting how much damage you do, the choice of attributes will also influence the HP and MP gained at each level up. So choose wisely.

This means that on reaching max level, no more attributes can be gained. But this also means that you get a certain amount of flexibility with how you build your character, whatever class you are.


Skills

The Guilds of Learning may teach us many things: wondrous spells, majestic feats, and how to use them safely. But the knowledge of how to use a spell is not enough. Using different weapons and spells requires different skills. For example: if you practice with a sword, then your sword skill will increase over time. If you practice nature magic, then your nature magic skill will increase over time. And of course, your class will influence how quickly you are able to advance in any given skill.

Skills may be broken down into two main groups: physical (meaning melee- and distance-based skills) and magical (magic-based skills).

Physical skills:

Magical skills:

Practising in the Guilds of Learning, or even with a companion is not enough however. To truly master a skill, it takes much time and effort. And it is in the heat of battle that we improve our skills most quickly; where the air is thick with dust and magic, with our hearts hammering in our chests.

Experience required for skill learning

Skill experience is granted when using auto-attacks, defending against attacks, and when using abilities. However each of these will grant different amounts of experience:

  • Auto-attack: 100 EXP
  • Defense (no shield): 100 EXP
  • Defense (with shield): 300 EXP
  • Skill experience from abilities is a bit more complicated, however...

Skill experience from abilities

The idea is that 'doing stuff' in combat adds experience to a global 'skill experience pool'. Experience is also taken from this pool to level up any skills when you 'do stuff' in combat. In either case, the experience granted is based on the Mana Points (MP) required for the ability being casted.

Most damaging, debuff or healing abilities add experience into the pool equal to about 400*MP of that ability. And 100*MP experience from the pool is put into actually training the relevant skill when using any ability. This means that if the experience skill pool is empty, you won't get any experience from abilities that aren't damaging, debuff or healing. So to make sure that the pool is always full, be sure to use damaging, debuff or healing abilities!


To calculate the exact skill experience required to advance in a given skill:

  • Physical skills (Swords, Daggers, Polearms, Hammers, Defense, Throwing, Archery, Firearms)

Experience required = (class-skill modifier ^ current skill level) * 9000

  e.g. For Sword skill on Citizen class if the current skill level is 5:
  Experience required = (1.3 ^ 5) * 9000 = 33416
  • Magical skills (Nature, Destruction, Protection, Support)

Experience required = (class-skill modifier ^ current skill level) * 12000

  e.g. For Destruction skill on Sorcerer class if the current skill level is 20:
  Experience required = (1.13 ^ 20) * 12000 = 138277

Skills ratio of classes.png

Console Commands

There are some console commands which provide some limited information about the skill pool and how skills are used to calculate damage.

To use them, simply select the Console window in the client and type one of the following lines:

show skill pool
enable combat report
disable combat report

Attack and Defense Formulas

These have been provided by Rob to help provide more detailed statistics.

UNARMED ATTACK:

MaxAttackValue = (100 + (AttackerStrengthStat + Math.Pow(AttackerDexterityStat, 1.0 / 3.0))) * 5

MinAttackValue = MaxAttackValue * 0.7 / (1.0 + Math.Pow(2.0, (AttackerDexterityStat - 20) / -10.0))


MELEE ATTACK:

MaxAttackValue = 700 + (Math.Pow(AttackerStrengthStat, 1.0 / 2.0) + Math.Pow(AttackerDexterityStat, 1.0 / 3.0)) * Math.Pow(AttackerMeleeSkill, 1.0 / 1.8) * Math.Pow(AttackerWeaponAttack, 1.0 / 1.6) * 5.5

MinAttackValue = MaxAttackValue * 0.7 / (1.0 + Math.Pow(2.0, (AttackerDexterityStat - 20) / -10.0))


MELEE DEFENSE:

FinalValue = 80 + DefenderDexterityStat * 0.25 + DefenderDefenseSkill + DefenderWeaponDefense + DefenderShieldDefense + DefenderArmorEquip * 2


RANGED ATTACK:

MaxAttackValue = (100 + (Math.Pow(AttackerStrengthStat, 1.0 / 3.0) + Math.Pow(AttackerDexterityStat, 1.0 / 2.0)) * Math.Pow(AttackerDistanceSkill, 1.0 / 1.8) * Math.Pow(AttackerWeaponAttack, 1.0 / 1.8)) * 6.0

MinAttackValue = MaxAttackValue * 0.5 / (1 + Math.Pow(2, (AttackerDexterityStat - 20) / -10.0))


RANGED DEFENSE:

FinalValue = 100 + DefenderDexterityStat * 0.5 + DefenderDefenseSkill * 0.5 + DefenderArmorEquip * 2


MAGIC ATTACK:

MaxAttackValue = (100 + Math.Sqrt(AttackerWisdomStat) * Math.Pow(AttackerMagicSkill, 1.0 / 1.8)) * 10.0

MinAttackValue = MaxAttackValue * ((0.45 / (1.0 + Math.Pow(1.5, ((AttackerDexterityStat - 10) / -10.0)))) + (0.45 / (1.0 + Math.Pow(1.5, ((AttackerWisdomStat - 10) / -10.0)))))


MAGIC DEFENSE:

FinalValue = 100 + DefenderDexterityStat * 0.2 + DefenderWisdomStat * 0.6 + DefenderDefenseSkill * 0.25 + DefenderItemMagicDefense


DEFENSE ABILITY: (ability with effect based on defense skill e.g. Riposte, Armament, etc.)

MaxAttackValue = (100 + Math.Sqrt(AttackerWisdomStat) * Math.Pow(AttackerDefenseSkill + AttackerItemMagicDefense, 1.0 / 1.8)) * 10.0

MinAttackValue = MaxAttackValue * ((0.45 / (1.0 + Math.Pow(1.5, ((AttackerDexterityStat - 10) / -10.0)))) + (0.45 / (1.0 + Math.Pow(1.5, ((AttackerWisdomStat - 10) / -10.0)))))


MONSTER MELEE DODGE/BLOCK:

DodgeChance = (defenseCalc.MonsterDodgeRate.Value - maxDamage / 200) - (Math.Sqrt(attackCalc.AttackerDexterityStat) / 100.0)


AVATAR MELEE DODGE/BLOCK:

DodgeChance = (defenseCalc.DefenderDefenseSkill * 2.0 + defenseCalc.DefenderWeaponDefense + defenseCalc.DefenderShieldDefense * 4.0 - maxDamage * 3.0) / 1000.0 + (Math.Sqrt(defenseCalc.DefenderDexterityStat) / 60.0) - (Math.Sqrt(attackCalc.AttackerDexterityStat) / 100.0) + defenseCalc.DefenderDodgeBonus / 100.0 - attackCalc.AttackerHitChanceBonus / 100.0


MONSTER RANGED DODGE/BLOCK:

DodgeChance = (defenseCalc.MonsterDodgeRate.Value - maxDamage / 200) - (Math.Sqrt(attackCalc.AttackerDexterityStat) / 100.0)


AVATAR RANGED DODGE/BLOCK:

DodgeChance = (defenseCalc.DefenderDefenseSkill * 2.0 + defenseCalc.DefenderShieldDefense * 4.0 - maxDamage * 3.0) / 1000.0 + Math.Sqrt(defenseCalc.DefenderDexterityStat) / 60.0 - Math.Sqrt(attackCalc.AttackerDexterityStat) / 100.0 + defenseCalc.DefenderDodgeBonus / 100.0 - attackCalc.AttackerHitChanceBonus / 100.0