EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Windows Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=587)
-   -   Mercs preventing loot/cash sharing?? (https://www.eqemulator.org/forums/showthread.php?t=37454)

rixcraven 10-30-2013 10:17 PM

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 :)

Uleat 10-30-2013 11:13 PM

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..?

rixcraven 10-30-2013 11:16 PM

Quote:

Originally Posted by Uleat (Post 225484)
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!

bad_captain 10-30-2013 11:47 PM

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.

rixcraven 10-31-2013 12:02 AM

Quote:

Originally Posted by bad_captain (Post 225486)
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.

bad_captain 10-31-2013 10:17 AM

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.

rixcraven 10-31-2013 11:12 AM

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.

Uleat 10-31-2013 12:43 PM

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.

rixcraven 10-31-2013 02:18 PM

Quote:

Originally Posted by Uleat (Post 225506)
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.

bad_captain 11-01-2013 12:20 AM

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.

rixcraven 11-01-2013 12:43 AM

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?

HnathBST 11-01-2013 01:10 AM

Quote:

Originally Posted by rixcraven (Post 225545)
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. :-)

rixcraven 11-01-2013 08:05 AM

Quote:

Originally Posted by HnathBST (Post 225546)
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.

warkid 11-16-2013 05:36 PM

Quote:

Originally Posted by bad_captain (Post 225544)
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


All times are GMT -4. The time now is 09:15 PM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.