Jump to content

Recommended Posts

Posted
Thank you but I already know this "bug". Becouse if an horde player invite an ally player, the ally player becomes an horde player and see enemies the other ally players and friendly the others horde players. The same is for guilds, arena, battlegrounds, etc...

why dont you use the "proper" Horde & Alliance grouping/trade posted by patro(no offence to thorazi)

http://getmangos.eu/community/showpost.php?p=71654&postcount=33

:)

  • Replies 127
  • Created
  • Last Reply

Top Posters In This Topic

Posted

@xzbbzx - if you want to read why thats a proper patch read the old thread here

@Shin Darth - im not trying to hijack your thread and i see your point about just replacing the group.cpp being "easy"...but easier is not always better. the proper patch is working great and still works on current mangos version! also, this one is just as easy to update your core too. after reading the original thread i think you are just not applying the patch correctly. put the group.diff posted above in your mangos folder and use this command

patch -d . -p1 < group.diff

enjoy :)

  • 39 years later...
Posted

This is a patch based on the old Thorazi's patch for fix the Grouping/Trade of Alliance and Horde.

Current client version supported: 3.3.2

This is the download of the actually latest version of the file Group.cpp patched:

Download Patched Group.cpp for rev 9582+

You have only to download this file, and paste it in the /src/game/ folder instead of the original file Group.cpp and recompile MaNGOS.

You can also download the Diff file group-trade.patch:

diff --git a/src/game/Group.cpp b/src/game/Group.cpp
index 4090d91..69f6cb2 100644
--- a/src/game/Group.cpp
+++ b/src/game/Group.cpp
@@ -290,6 +290,16 @@ bool Group::AddMember(const uint64 &guid, const char* name)
                    player->SendRaidDifficulty(true);
                }
            }
+       // Group Interfactions interactions (test)
+            if(sWorld.getConfig(CONFIG_BOOL_ALLOW_TWO_SIDE_INTERACTION_GROUP))
+            {
+                Group *group = player->GetGroup();
+                if(Player *leader = sObjectMgr.GetPlayer(group->GetLeaderGUID()))
+                {
+                    player->setFactionForRace(leader->getRace());
+                    sLog.outDebug( "WORLD: Group Interfaction Interactions - Faction changed (AddMember)" );
+                }
+            }
        }
        player->SetGroupUpdateFlag(GROUP_UPDATE_FULL);
        UpdatePlayerOutOfRange(player);
@@ -335,6 +345,12 @@ uint32 Group::RemoveMember(const uint64 &guid, const uint8 &method)
                data << uint64(0) << uint32(0) << uint32(0) << uint64(0);
                player->GetSession()->SendPacket(&data);
            }
+        // Restore original faction if needed
+        if(sWorld.getConfig(CONFIG_BOOL_ALLOW_TWO_SIDE_INTERACTION_GROUP))
+        {
+                player->setFactionForRace(player->getRace());
+                sLog.outDebug( "WORLD: Group Interfaction Interactions - Restore original faction (RemoveMember)" );
+        }

            _homebindIfInstance(player);
        }
@@ -391,6 +407,12 @@ void Group::Disband(bool hideDestroy)
                player->SetOriginalGroup(NULL);
            else
                player->SetGroup(NULL);
+            // Restore original faction if needed
+            if(sWorld.getConfig(CONFIG_BOOL_ALLOW_TWO_SIDE_INTERACTION_GROUP))
+            {
+                player->setFactionForRace(player->getRace());
+                sLog.outDebug( "WORLD: Group Interfaction Interactions - Restore original faction (Disband)" );
+            }
        }

        // quest related GO state dependent from raid membership

Posted

Hmm no... The only things are.. for example.. if an ally player invite an horde player, the horde player can use the alliance portals. But if this patch is used only to do instance (and RPG events, why not!) there isn't problems

Posted

i will see if i find some time to make trade/follow/ etc work two sided at the moment i am working @ fixes for main core and new anti cheat system

note: very important is the issue to prevent mixed group sign up at bg arena!

Posted

note: very important is the issue to prevent mixed group sign up at bg arena!

why? on small servers this should be a viable solution to balanced teams...

Posted

hmm.. i'll give it a try sometime this week ...

if it crashes i'll let you know...

the only check i've found is for BG queues ... any hint to where arena queues are handled?

Posted

Thank you but I already know this "bug". Becouse if an horde player invite an ally player, the ally player becomes an horde player and see enemies the other ally players and friendly the others horde players. The same is for guilds, arena, battlegrounds, etc...

Hmm no... The only things are.. for example.. if an ally player invite an horde player, the horde player can use the alliance portals. But if this patch is used only to do instance (and GdR events, why not!) there isn't problems
Posted
why dont you use the "proper" Horde & Alliance grouping/trade posted by patro(no offence to thorazi)

I did not say that I made it, I have only taken this patch and I've updated it becouse it seem to me very useful

I said:

Thorazi has written a patch to fix the Grouping/Trade of Alliance and Horde. And it works fine.

But with the new commits by devs and contributors the file Group.cpp (the only file that this patch modify) was changed.

I have download the latest version of file Group.cpp (the last commit was [8108]) and applied the Thorazi's patch. Also now, the patch works fine.

Why is that patch the "proper" one?

I think this patch is very useful becouse the only file that it modify is Group.cpp and with an only file modified is very easy to update our core.

Posted

i think this patch could be problematic with joining bgs/arenas because you are changing faction of members to the leaders one... means this patch would allow to fight ally and horde along with each other in bgs arena ...

Posted

No becouse this patch is recommended only for servers with few players, with few players is easy for game masters to check if player abuse with it. Servers with a lot of players don't need it.

  • 2 weeks later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use