My research is based on Bloodharvest.
---Skills Basics:
*Races: 1-Human 2-Elves 3-Dwarf 4-Stoneman 5-Kindred 6-Lycan
*Occupation: 1-Warrior 2-Protector 3-Assassin 4-Marksman 5-Mage 6-Priest 7-Vampire 8-Bard 9-Reaper
Warriors can be {Human & Elf}
Protectors can be {Stoneman}
Assassins can be{Human & Kindred & Lycan}
Marksmans can be {Dwarf}
Mages can be {Human & Kindred}
Priest can be {Human & Elf & Lycan}
Vampire can be {Kindred}
Bard can be {Elf}
Reaper can be {Kindred & Lycan}
->At most 3 races can be used per occupation.
->Each race has its own skills.h and animation.
->buff_str.txt ->Gives number of statefilters.
---Types of Skills:
*Racial skills
*Soulforce skills
*Anima skills
*Occupation Core skills
*Talents
*Soulpower bonuses & Runes Bonuses
*Job Skills
*Monsters skills
*Pet Skills:[Mana Consumption of Pet skills increase with the level of the pet]
---SKILLTOME_ESSENCE[Structure_11 in element]:
Let's work on Iceblade for priest:
Priests can be {Human & Elf & Lycan}
Races: 1-Human 2-Elves 3-Dwarf 4-Stoneman 5-Kindred 6-Lycan
->As you can see the same order is followed. {Human,Elf,Lycan}
---Skills Description:[This links FW clients with Server side skills.]
Script/skillstr/ {This Folder may be removed}
Script/skillstr.lua {This File may be removed}
Skills description are from Script/skill/skillstr.lua
Example: SkillDesc[4761].strname = "Holy Light Melody"
When a Skill description is missing ,it looks like this:
2466=Rampage Elemental talent for Elf Warrior.
->Skillstr.lua allows you to easily find the skills you are looking for in FW/wskill/skills
->Should the skillstr.lua be broken,the client wouldn't even be able to load.
It's even more fragile than shopdir.lua because it contains too many lines.
---Custom Skillstr.lua(260):
I'am posting my customized version of skillstr.lua that I have remade manually for Bloodharvest.
I like to use Single/Multi-line comments to sort luas.
I intend to work on Skillstr.lua on other versions whenever I have time.
My custom file is in this folder:
---BONUS:
Thanks to a friend,I have discovered that Game formulas and mechanisms are actually in wskill unexpectedly:
skillwrapper.cpp -> SkillWrapper::AttackDamage
->I'm trying to understand game systems in depth and slowly prepare my own dmg estimation sheet.
How fun would it be to understand all the systems and perhaps make our own formulas in the future!
I'am slowly exploring the game in depth along with some friends.
I'am trying to spread the acquired knowledge within the community so that we can increase our level and do insane things in the future!
---Skills Basics:
*Races: 1-Human 2-Elves 3-Dwarf 4-Stoneman 5-Kindred 6-Lycan
*Occupation: 1-Warrior 2-Protector 3-Assassin 4-Marksman 5-Mage 6-Priest 7-Vampire 8-Bard 9-Reaper
Warriors can be {Human & Elf}
Protectors can be {Stoneman}
Assassins can be{Human & Kindred & Lycan}
Marksmans can be {Dwarf}
Mages can be {Human & Kindred}
Priest can be {Human & Elf & Lycan}
Vampire can be {Kindred}
Bard can be {Elf}
Reaper can be {Kindred & Lycan}
->At most 3 races can be used per occupation.
->Each race has its own skills.h and animation.
->buff_str.txt ->Gives number of statefilters.
---Types of Skills:
*Racial skills
*Soulforce skills
*Anima skills
*Occupation Core skills
*Talents
*Soulpower bonuses & Runes Bonuses
*Job Skills
*Monsters skills
*Pet Skills:[Mana Consumption of Pet skills increase with the level of the pet]
---SKILLTOME_ESSENCE[Structure_11 in element]:
Let's work on Iceblade for priest:
Priests can be {Human & Elf & Lycan}
Code:
learn_skill(0)->skill_id; //skill ID of the core skill to learn!
learn_skill(0)->skill_level; //Skill level to learn //Lv 7
learn_skill(0)->require_skill_id; //Ice Blade Strike=175 (Human version)
learn_skill(0)->require_skill_level; //Lv 7-1= Lv6
learn_skill(1)->skill_id; //skill ID of the core skill to learn!
learn_skill(1)->skill_level; //Skill level to learn //Lv 7
learn_skill(1)->require_skill_id; //Ice Blade Strike=2014 (Elf version)
learn_skill(1)->require_skill_level; //Lv 7-1= Lv6 //required skill level
learn_skill(2)->skill_id; //skill ID of the core skill to learn!
learn_skill(2)->skill_level; //Skill level to learn //Lv 7
learn_skill(2)->require_skill_id; //Ice Blade Strike=4260 (Lycan version)
learn_skill(2)->require_skill_level; //Lv 7-1= Lv6
->As you can see the same order is followed. {Human,Elf,Lycan}
---Skills Description:[This links FW clients with Server side skills.]
Script/skillstr/ {This Folder may be removed}
Script/skillstr.lua {This File may be removed}
Skills description are from Script/skill/skillstr.lua
Example: SkillDesc[4761].strname = "Holy Light Melody"
When a Skill description is missing ,it looks like this:
To view the content, you need to sign in or register
2466=Rampage Elemental talent for Elf Warrior.
Code:
------------------------------Elf Warrior Elemental:
SkillDesc[2466].strname = "Rampage"
SkillDesc[2466].strUsedesc = "Frenzy Stance increases the Attack bonus granted by %.1f%% plus %d."
->Skillstr.lua allows you to easily find the skills you are looking for in FW/wskill/skills
->Should the skillstr.lua be broken,the client wouldn't even be able to load.
It's even more fragile than shopdir.lua because it contains too many lines.
---Custom Skillstr.lua(260):
I'am posting my customized version of skillstr.lua that I have remade manually for Bloodharvest.
I like to use Single/Multi-line comments to sort luas.
I intend to work on Skillstr.lua on other versions whenever I have time.
My custom file is in this folder:
To view the content, you need to sign in or register
---BONUS:
Thanks to a friend,I have discovered that Game formulas and mechanisms are actually in wskill unexpectedly:
skillwrapper.cpp -> SkillWrapper::AttackDamage
->I'm trying to understand game systems in depth and slowly prepare my own dmg estimation sheet.
How fun would it be to understand all the systems and perhaps make our own formulas in the future!
I'am slowly exploring the game in depth along with some friends.
I'am trying to spread the acquired knowledge within the community so that we can increase our level and do insane things in the future!
Last edited: