provocating
07-04-2015, 04:53 PM
I am trying change player startup skills. I am not sure if somehow this is forced from the client or not.
Looking in client.cpp, the SetClassStartingSKills routing is supposed to set them. I changed them to zero, but they are still set to max for the level upon player creation. I also remarked out the call to the routine and it still happens. At this point I can only think that the client overrides what the server tells it.
void Client::SetClassStartingSkills(PlayerProfile_Struc t *pp)
{
for (uint32 i = 0; i <= HIGHEST_SKILL; ++i) {
if (pp->skills[i] == 0) {
// Skip specialized, tradeskills (fishing excluded), Alcohol Tolerance, and Bind Wound
if (EQEmu::IsSpecializedSkill((SkillUseTypes)i) ||
(EQEmu::IsTradeskill((SkillUseTypes)i) && i != SkillFishing) ||
i == SkillAlcoholTolerance || i == SkillBindWound)
continue;
pp->skills[i] = 0;
}
}
}
Looking in client.cpp, the SetClassStartingSKills routing is supposed to set them. I changed them to zero, but they are still set to max for the level upon player creation. I also remarked out the call to the routine and it still happens. At this point I can only think that the client overrides what the server tells it.
void Client::SetClassStartingSkills(PlayerProfile_Struc t *pp)
{
for (uint32 i = 0; i <= HIGHEST_SKILL; ++i) {
if (pp->skills[i] == 0) {
// Skip specialized, tradeskills (fishing excluded), Alcohol Tolerance, and Bind Wound
if (EQEmu::IsSpecializedSkill((SkillUseTypes)i) ||
(EQEmu::IsTradeskill((SkillUseTypes)i) && i != SkillFishing) ||
i == SkillAlcoholTolerance || i == SkillBindWound)
continue;
pp->skills[i] = 0;
}
}
}