Page 1 of 1
class_skill vs. mastery_skill
Posted: Wed Aug 20, 2008 7:22 pm
by paulgh
John,
In another thread, you were talking with LE about changing the size of class_skill because it wouldn't accept ordination's value. That got me wondering, shouldn't that be going in the mastery_skill, and something like conjurations (for Conjuror) go in class_skill. It's probably not a big deal, as changing the code to use one or the other would be easy (I think). Mastery_skill is the one that shows up in the spell examine box though.
Posted: Thu Aug 21, 2008 7:04 am
by John Adams
When I asked weeks ago, [Ref.
spell structs post] there was not a clear definition of the difference between field `class_skill` and `mastery_skill` - so I took a crap shoot and went with class. If this is wrong, it can easily be changed. And to me, if the guy writing the server hasn't decided what the fields are for, there is no real concrete solution yet. So we're working with what we got.
Review the EQ2Emu DB's `skills` table, and you tell me if every skill listed there is clearly a class skill or a mastery skill, so we can determine which list to pick from when building our spells/arts.
Let me know what you find.
Thanks,
-J
Posted: Thu Aug 21, 2008 8:20 pm
by paulgh
After going through all my characters' spells and searching my logfile, I've come to the conclusion that only 5 skills are used as mastery_skills.
Aggression
Disruption
Ministration
Ordination
Subjugation
The class_skills are all the ones that have an archetype, class, or subclass in the 'name' field. If all members of an archetype use a spell, use the archetype skill, etc.
In actuality, I don't think the class_skills are used anymore.
As an aside, I noticed that when 'tier' is 1, the spell examine display shows the level of the spell like it should. When 'tier' is any other value, it doesn't.
Posted: Fri Aug 22, 2008 11:40 am
by John Adams
Thanks for looking those over. There is currently no support to "check" the class/master skills regardless, but this info will help when it comes time to sort out that functionality.
I could have sworn I had a bug in to display the "Tier" in the mouse-over/examine, but I cannot seem to find it.
Posted: Fri Aug 22, 2008 3:12 pm
by Arremis
Aren't the mastery skills where you get like Skeleton Master's Strike from completing Lore & Legend quests?
Posted: Fri Aug 22, 2008 3:15 pm
by John Adams
That's what I thought too. But, I am not the master of all spells/arts, so that's why I have you guys.

Posted: Fri Aug 22, 2008 3:40 pm
by ZexisStryfe
This may be a stupid question, but is Mastery_skill looking for an integer value or is it just a yes/no (0/1) flag? If it is just a flag I would say that it is for the Legend and Lore master spells and probably has something to do with the fact that all the master spells were consolidated into one spell which can effect multiple races.
Posted: Fri Aug 22, 2008 3:51 pm
by John Adams
Right now in the SpellData struct, mastery_skill is declared as an int32, so it's not necessarily a 0 or 1 - but still, the code does not use this value at all yet so I'm sure it's usage will be revisited.
There is another "mystery" field in spells - `type`. I don't think we know what that is for either. For all we know, this could be the value for Normal or L&L or friendly etc.
Posted: Fri Aug 22, 2008 7:55 pm
by John Adams
Ok here's the deal. paulgh is on the money, yet again (nice work!)
After seeing some of the output in the spells packets, the `class_skill` is exactly that - character class (Defiler, Paladin, Wizard, etc).
The `mastery_skill` appears to be the specialized skill needed to use the ability.
Though this list is a bit off, I believe - here's an example:
Mastery Skills:
Code: Select all
Ministration This is how well you use spells that heal and cure.
Disruption This reduces your target's resistance to your Disruption spells.
Aggression This is how well your taunts will affect monsters.
Subjugation This is how well you use spells to command pets and control monsters.
Tinkering This allows you to make Gadgets, Gizmos, and Doohickeys
Geocraft Technique used by geomancers.
Woodcraft Technique used by timbercrafters.
Scout This allows you to use scout combat arts.
Tailoring This is how well you create items made of cloth.
Chemistry This is how well you create trade skill items by using chemistry.
Binding Technique used by weavers.
Bruiser This allows you to use bruiser combat arts.
Fletching Used by tradesman to create arrows, shields, staves etc
Artificing This is how well you create magic items by using trade skills.
Ordination This is how well you use spells that augment your friends and weaken your enemies.
Metalworking This is how well you create items made of metal.
Class Skills:
Code: Select all
Paladin This allows you to use paladin spells.
Dirge This allows you to use dirge spells.
Tinkering This allows you to make Gadgets, Gizmos, and Doohickeys
Warden This allows you to use warden spells.
Guardian This allows you to use guardian combat arts.
Bard This allows you to use bard spells.
Ranger This allows you to use ranger combat arts.
Fighter This allows you to use fighter combat arts.
Berserker This allows you to use berserker arts.
Tracking This is how well you find monsters or creatures within a zone.
Brigand This allows you to use brigand combat arts.
Fury This allows you to use fury spells.
Woodworking This is how well you create items made of wood.
Timbercraft This allows you to refine items into lumber and paper. It also allows you to work these refines into other components.
Inquistor This allows you to use inquistor spells.
Scout This allows you to use scout combat arts.
Transmuting This allows you to break down items into components.
Conjuror This allows you to use conjuror spells.
Priest This allows you to use priest spells.
Runecraft This allows you to make magical augmentations that can be placed in many different items.
Weaving This allows you to refine items into leather, thread, and yarn. It also allows you to work these refines into other components.
Sorcery Knowledge used to cast Sorcery spells.
Templar This allows you to use templar spells.
Wizard This allows you to use wizard spells.
Swashbuckler This allows you to use swashbuckler combat arts.
Light Armoring Tradeskill knowledge used by outfitters and weaponsmiths
Assassin This allows you to use assassin combat arts.
Shadowknight This allows you to use shadowknight spells.
Geomancy This allows you to refine items into gems, metal bars, and precious metal bars. It also allows you to work these refines into other components.
Alchemy This allows you to make potions and poisons.
Coercer This allows you to use coercer spells.
Bruiser This allows you to use bruiser combat arts.
Predator This allows you to use predator combat arts.
Defiler This allows you to use defiler spells.
Cleric This allows you to use cleric spells.
Shaman This allows you to cast Shaman spells
Weaponry This allows you to craft weapons.
Mystic This allows you to use mystic spells.
Crusader This allows you to use crusader spells.
Mage This allows you to use mage spells.
Brawler This allows you to use brawler combat arts.
As I said, some appear to be mixed up, but this is my first time inspecting this data so we'll get it straightened out soon enough.
Thanks for the tip, paulgh!
Posted: Fri Aug 22, 2008 8:39 pm
by paulgh
Scout and Bruiser belong in class_skill (probably just a cut and paste error).
The 'type' field tells the client whether this is a spell, combat art, or ability.
0 - spell
1 - combat art
2 - ability
3 - also ability, but mastery: changes to technique:
4 - also spell, but marked passive
All higher numbers I tested (up to 50) were spell.
Posted: Fri Aug 22, 2008 8:52 pm
by John Adams
Actually, `spell_book_type` is for spell, art, or ability etc. "Type" is still unknown.
Edit: Hmm, well now I am confused. `type` 0,1,2,3,4 do seem to have some value relating to this... so honestly, I don't know what spell_book_type is, except that I think this is the field the server uses at the moment. Maybe it should be using `type`?
Here's what I see looking at the raw data:
0 = spell
1 = combat art
2 = ability
3 = crafting
4 = trait
I do not have any value types > 4 currently.
Posted: Fri Aug 22, 2008 9:30 pm
by paulgh
Actually, spell_book_type just tells what section to place the icon under in the knowledge book. Type affects the title bar in the examine spell window, and also makes small changes in type 3 and 4 as noted above.
Posted: Fri Aug 22, 2008 9:32 pm
by John Adams
Snuck an edit in on you

And that makes sense... we do still have to tell the client where to stuff the icons.
Man, so much to this one single system... sigh.