Go Back   EQEmulator Home > EQEmulator Forums > Archives > Archive::General > Archive::General Discussion

Archive::General Discussion Archive area for General Discussion's posts that were moved here after an inactivity period of 90 days.

Reply
 
Thread Tools Display Modes
  #1  
Old 03-24-2004, 09:25 AM
ndnet
Hill Giant
 
Join Date: Oct 2003
Posts: 105
Default

To mimic EQlive, any level persons may group together, however those who are not at least MaxLevel * (2/3) or MaxLevel / 1.5 if you prefer, are awarded no experience.

(To be even more nitpicky, the MaxLevel only applies to those who took part in the battle and remain in the group at the end of a fight. If a level 5 is grouped with a level 65 and kills a large rat by himself, he gets exp. Similarly, if a level 5 is grouped with a level 65 and the level 65 participates in the battle, but does less than 50% damage and disbands before the mob is dead, the level 5 still gets experience.)

It would seem that instead of denying the ability to group to those outside of +/- 6 levels, you may want to look in groups.cpp (under zone source) around this area:

Code:
void Group::SplitExp(uint32 exp, int16 otherlevel)
If I'm reading it correctly, the function calculates 1.) the highest level group member, 2.) the total group exp (exp * zone bonus * number of members) before it goes into distributing it.

It seems to then go through iterations finding how far from the max level each group member is before distributing:

Code:
sint16 diff = members[i]->GetLevel() - maxlevel;
            if (diff >= -8) /*Instead of person who killed the mob, the person who has the highest level in the group*/
                      { /*addexpglop */ }
Could you not change it to something like:

Code:
      if (members[i]->GetLevel() >= (int)((double)maxlevel / 1.5))
             { /* addexpglop */ }
So that it would distribute the exp to only members whose level is within appropriate range?

I may be off base, maybe this breaks something elsewhere or just doesn't work, hehe.
Reply With Quote
Reply

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 03:37 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