|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Quests::Custom Custom Quests here |
05-01-2015, 04:06 PM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
Quest question.
Okay I searched the forums i probably just missed it if so I apologize for this post. Is there a way too add AA exp through a quest? I've tried the few ideas that I had none of them seem to work.
|
05-01-2015, 04:14 PM
|
|
Dragon
|
|
Join Date: Nov 2008
Location: GA
Posts: 904
|
|
It's my understanding that there is only one way to earn/give exp:
Whether or not the player receives AA or Regular exp would be based on their individual setting for AA/Exp ratio.
|
05-01-2015, 04:43 PM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
I was afraid of that, was hoping since you can add it via GM command we could pass it to the client through quest. Well thank you for your time.
|
05-01-2015, 08:42 PM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
Is there a way to turn on AA exp gain before 51?
|
05-01-2015, 08:47 PM
|
Hill Giant
|
|
Join Date: Feb 2013
Posts: 220
|
|
Quote:
Originally Posted by serivoth1234
Is there a way to turn on AA exp gain before 51?
|
AFAIK, there is no way to move the slider that means exp will be diverted to AA before 51, that is hardcoded in the client.
However, you can have quests reward AA points (or even specific AA abilities), so you could have, for example, an NPC that gives AA points in exchange for plat that would work at any level.
|
05-01-2015, 09:03 PM
|
|
Dragon
|
|
Join Date: Aug 2012
Location: Hershey, PA
Posts: 499
|
|
You can use GetEXP/GetAAEXP and SetEXP.
Code:
my $currentaaexp = $client->GetAAEXP();
my $currentregularexp = $client->GetEXP();
my $aaexptogive = 1000;
$client->SetEXP($currentregularexp,($currentaaexp+$aaexptogive));
Did unnecessary declaration to show you what's going on but:
Code:
$client->SetEXP($client->GetEXP(),($client->GetAAEXP()+1000));
Would be less code.
|
05-01-2015, 10:28 PM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
I appreciate the replies, however It doesn't seem to work. I'm calling it on the event death of a mob, not awarding any AA exp though.
|
05-01-2015, 11:24 PM
|
|
Dragon
|
|
Join Date: Aug 2012
Location: Hershey, PA
Posts: 499
|
|
No, it wouldn't, there is quite a bit more code than one line to do what I think you're after, and it's hackery/exploitable at best.
Quote:
Is there a way too add AA exp through a quest?
|
I answered based on that, figured it was the normal everyday type of quest, but NPC's script would be different and what you're after.
|
05-01-2015, 11:32 PM
|
|
Dragon
|
|
Join Date: Aug 2012
Location: Hershey, PA
Posts: 499
|
|
It's not a very elegant way to do it and it is certainly untested (not even sure the NPC hasn't already cleared the hate list before the EVENT_DEATH call or not -- would need to look at the source) but, it may give you an idea:
Code:
sub EVENT_DEATH {
my @hate_list = $npc->GetHateList();
my $hate_count = @hate_list;
if ($hate_count > 0) {
foreach $ent (@hate_list) {
$hate_entity = $ent->GetEnt();
$hate_client = $hate_entity->CastToClient();
if (($hate_entity->IsClient()) && (!$hate_client->IsBecomeNPC())) {
$hate_client->SetEXP($hate_client->GetEXP(),($hate_client->GetAAExp()+1000));
}
}
}
}
If the hate list is clear by the time EVENT_DEATH is called, then, well, even more coding will be necessary but, I'm not quite up to that tonight (have a few projects piling up).
Last edited by ghanja; 05-02-2015 at 09:04 PM..
Reason: case sensativity sucks
|
05-02-2015, 03:16 AM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
Thank you ghanja I appreciate it all. I will test it tomorrow and see how it goes. Again thank you for taking the time.
|
05-02-2015, 11:02 AM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
That doesn't work so I have a different question, is there a way to track a kill count on any mob that would award exp to player, then say after a set amount of kills award an AA point? Then reset the counter and start again? Basically give the illusion of AA exping?
|
05-02-2015, 02:52 PM
|
|
Developer
|
|
Join Date: Dec 2012
Posts: 515
|
|
I just noticed but you have at least one typo in that quest.
GetAAEXP should be GetAAExp
If you want to use AA Exp before level 51... changing this line.. might work.. might not :p
https://github.com/EQEmu/Server/blob...e/exp.cpp#L404
I might test this right now.. as it would allow me to use AAs without raising my level cap passed 50~
This works. The code above had a typo
Code:
$client->SetEXP($client->GetEXP(),($client->GetAAExp()+5000));
It works.. the AA Exp bar moves nicely
|
05-02-2015, 09:07 PM
|
|
Dragon
|
|
Join Date: Aug 2012
Location: Hershey, PA
Posts: 499
|
|
Was a night for typos for me last night I guess <grin> TY for finding that, I admit, I started with SetEXP first and copy/pasted it and added an "AA" in between Set and EXP. Case sensitivity FTW.
Was the source line change turn out to be necessary?
|
05-03-2015, 09:44 AM
|
Sarnak
|
|
Join Date: Aug 2009
Location: bum f*#k egypt
Posts: 37
|
|
For me it works however the exp bar does not update, the actual exp isn't reflected unless I zone and I never actually receive an aa point it just fills the exp bar.
|
05-03-2015, 03:49 PM
|
|
Developer
|
|
Join Date: Dec 2012
Posts: 515
|
|
You need to remove that level check I posted.. it needs to SendAAStats();or whatever to characters at any level, then it will work just fine
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 10:52 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|