Go Back   EQEmulator Home > EQEmulator Forums > Support > Support::Windows Servers

Support::Windows Servers Support forum for Windows EQEMu users.

Reply
 
Thread Tools Display Modes
  #1  
Old 10-30-2013, 10:17 PM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default Mercs preventing loot/cash sharing??

Hi !
Just noticed this, the setup is like this.. myself, the wife, and occasionally the grandkids, all play on my server..
Its working great (with your help), however when we get our mercs in the group, some missions don't add to your kill count, random players can't loot the corpses?.. I've tried this several times, and its always the same..
Is this a known bug with mercs?
BTW, when using Bots, those issues disappear, Bots work normally
I'm using the latest (well a few days old db dump), mercs work, (apart from the bug mentioned above), and I'm getting NO error logs at all..

As usual, I am very grateful for all your help
Reply With Quote
  #2  
Old 10-30-2013, 11:13 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

bad_captain probably has a better answer for this...

I have noticed that the way bots are done, only the group leader can have bots in their group. Additional players' bots can not be added.

Is everyone in the group getting experience 100% of the time? Or do they not for those odd times when other players can't loot, etc..?
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #3  
Old 10-30-2013, 11:16 PM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

Quote:
Originally Posted by Uleat View Post
bad_captain probably has a better answer for this...

I have noticed that the way bots are done, only the group leader can have bots in their group. Additional players' bots can not be added.

Is everyone in the group getting experience 100% of the time? Or do they not for those odd times when other players can't loot, etc..?
no, once the looting has failed, it says "you may not loot at this time", then no, not everyone gets xp..
Very strange indeed!
Reply With Quote
  #4  
Old 10-30-2013, 11:47 PM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

My first thought is that the group is somehow getting messed up. I'd have to look into it, though. Feel free to post any more information as you encounter it to help narrow this down.
Reply With Quote
  #5  
Old 10-31-2013, 12:02 AM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

Quote:
Originally Posted by bad_captain View Post
My first thought is that the group is somehow getting messed up. I'd have to look into it, though. Feel free to post any more information as you encounter it to help narrow this down.
Np at all glad to be able to help for once
KK.. just tried a little bug testing, If I'm on my own, there is no problem with my merc.. I get xp, can loot etc.
when the wife is with me, the problem re-appears.. (I should point out, we each summon our mercs, THEN group), tomorrow I will try grouping FIRST, then getting mercs (but it's 04:20 here and way past my bed time).
Will post more when I get it.
Reply With Quote
  #6  
Old 10-31-2013, 10:17 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

That will probably help. There may be an issue when both of you are grouped and it tries to merge them (you are added to a group when you unsuspend or hire a merc). Let me know if you have the same issues grouping, then unsuspending.
Reply With Quote
  #7  
Old 10-31-2013, 11:12 AM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

YEP that seems to have sorted it
just tried the suspend merc/invite player/unsuspend merc
there is a slight issue.. I hired a merc, and suspended it, wife did the same,
we grouped, and she unsuspended her merc, I couldn't.. the button just clicked and nothing happened, I had to zone to get the merc back, HOWEVER.. loot, xp etc ALL seems to work on the small time I tested it.
I WILL do more testing later today and report back here.

Many thanks for your time, and your help.
Reply With Quote
  #8  
Old 10-31-2013, 12:43 PM
Uleat's Avatar
Uleat
Developer
 
Join Date: Apr 2012
Location: North Carolina
Posts: 2,815
Default

Do you think it's reassigning the partymember's merc to the party leader?

(I haven't gotten into the code yet...)


EDIT: I see what you're saying b_c.
__________________
Uleat of Bertoxxulous

Compilin' Dirty
Reply With Quote
  #9  
Old 10-31-2013, 02:18 PM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

Quote:
Originally Posted by Uleat View Post
Do you think it's reassigning the partymember's merc to the party leader?

(I haven't gotten into the code yet...)
Good thinking, that would explain the party leader being able to loot, and re-thinking about it, it doesn't share coin that's looted either.
Reply With Quote
  #10  
Old 11-01-2013, 12:20 AM
bad_captain
Developer
 
Join Date: Feb 2009
Location: Cincinnati, OH
Posts: 512
Default

I suspect the issue with this code from ClientPacket.cpp, handling the group invite:

Code:
if((!Invitee->IsGrouped() && !Invitee->IsRaidGrouped()) ||
				(Invitee->GetGroup() && Invitee->CastToClient()->GetMerc() && Invitee->GetGroup()->GroupCount() == 2))
			{
				if(app->GetOpcode() == OP_GroupInvite2)
				{
					//Make a new packet using all the same information but make sure it's a fixed GroupInvite opcode so we
					//Don't have to deal with GroupFollow2 crap.
					EQApplicationPacket* outapp = new EQApplicationPacket(OP_GroupInvite, sizeof(GroupInvite_Struct));
					memcpy(outapp->pBuffer, app->pBuffer, outapp->size);
					Invitee->CastToClient()->QueuePacket(outapp);
					safe_delete(outapp);
					return;
				}
				else
				{
					//The correct opcode, no reason to bother wasting time reconstructing the packet
					Invitee->CastToClient()->QueuePacket(app);
				}
			}
I'm not sure it correctly handles removing the invitee from their group before trying to add them to the other group, if at all.

I'll try and test it thoroughly this weekend.
Reply With Quote
  #11  
Old 11-01-2013, 12:43 AM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

THANKS bad_captain
and thanks to you we have these mercs, they are great
BTW I notice they are charging now... getting charged 1gold every 3 mins.
are you going to add the ability to alter their charges?
Reply With Quote
  #12  
Old 11-01-2013, 01:10 AM
HnathBST
Sarnak
 
Join Date: Feb 2007
Location: Sunset Home
Posts: 71
Default

Quote:
Originally Posted by rixcraven View Post
THANKS bad_captain
and thanks to you we have these mercs, they are great
BTW I notice they are charging now... getting charged 1gold every 3 mins.
are you going to add the ability to alter their charges?
The charge price is formulated by the server (based off level iirc) HOWEVER! you can change the upkeep time (how often they charge) and whether or not to charge upkeep and purchase.

Check in the rule_values table look for the Merc:: entries.
Reply With Quote
  #13  
Old 11-01-2013, 08:05 AM
rixcraven
Sarnak
 
Join Date: Nov 2008
Location: UK
Posts: 57
Default

Quote:
Originally Posted by HnathBST View Post
The charge price is formulated by the server (based off level iirc) HOWEVER! you can change the upkeep time (how often they charge) and whether or not to charge upkeep and purchase.

Check in the rule_values table look for the Merc:: entries.
Yeah, I noted those tables.. but up to now, I didn't realise they were actually charging
my char only got to level 10 last night, when I noticed.. I just think they are a wonderful addition to EQemu.
Reply With Quote
  #14  
Old 11-16-2013, 05:36 PM
warkid
Hill Giant
 
Join Date: Sep 2013
Location: Barnsley england
Posts: 120
Default

Quote:
Originally Posted by bad_captain View Post
I suspect the issue with this code from ClientPacket.cpp, handling the group invite:

Code:
if((!Invitee->IsGrouped() && !Invitee->IsRaidGrouped()) ||
				(Invitee->GetGroup() && Invitee->CastToClient()->GetMerc() && Invitee->GetGroup()->GroupCount() == 2))
			{
				if(app->GetOpcode() == OP_GroupInvite2)
				{
					//Make a new packet using all the same information but make sure it's a fixed GroupInvite opcode so we
					//Don't have to deal with GroupFollow2 crap.
					EQApplicationPacket* outapp = new EQApplicationPacket(OP_GroupInvite, sizeof(GroupInvite_Struct));
					memcpy(outapp->pBuffer, app->pBuffer, outapp->size);
					Invitee->CastToClient()->QueuePacket(outapp);
					safe_delete(outapp);
					return;
				}
				else
				{
					//The correct opcode, no reason to bother wasting time reconstructing the packet
					Invitee->CastToClient()->QueuePacket(app);
				}
			}
I'm not sure it correctly handles removing the invitee from their group before trying to add them to the other group, if at all.

I'll try and test it thoroughly this weekend.
any luck with this bad? also having same issue with mercs
Reply With Quote
Reply


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 04:21 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 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3