Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Q&A

Quests::Q&A This is the quest support section

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #2  
Old 03-10-2016, 03:49 AM
Shin Noir's Avatar
Shin Noir
Legendary Member
 
Join Date: Apr 2002
Location: Seattle, WA
Posts: 506
Default

Did anyone address this?
There's a method Client::SetEXP(THIS, set_exp, set_aaxp, resexp=false)
inside zone/perl_client.cpp, meaning if you tweak your code to
Code:
$client->SetEXP(0, $client->GetAAEXP() + 12345);
It will give AA exp.

The problem is that SetEXP is likely not what you're after, since you want it to be given based on the percent of AA exp the player is set on their AA window, and distribute a pool of EXP to normal/AA accordingly, right?

To do that you likely want to tap into Client::AddEXP(THIS, add_exp, conlevel= 0xFF, resexp= false)
Code:
$client->AddExp(1234); //give raw 1234 exp.
$client->AddExp(1234, 2); //Give EXP based on con level system, which tldr is green = 2, lightblue = 18, blue = 4, white = 20, yellow = 15, red = 13
This call will respect the AA exp value percentage (since it calls Client::AddExp and it will determine EXP distribution based on extended player profile property perAA), the same way normal EXP is rewarded from kills.

If you use the conlevel system, you'll want to peek at the rule values Character::<CON>Modifier, replacing <CON> with the color e.g. Red, inside your rule_values for your EXP mods for difficulty of kills. These default to it seems:

Lightblue = 40
Blue = 90
White = 100
yellow = 125
red = 150

If you wanted to give EXP scaled based on the player's level, you can use your
Code:
$client->CalcExp(18)
system to get the pool size and change 1234 to a more dynamic level-based value.
__________________

~Shin Noir
DungeonEQ.com

Last edited by Shin Noir; 03-10-2016 at 04:05 AM..
Reply With Quote
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 11:52 PM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3