Jump to content

PvPToken System?


Guest LightHades

Recommended Posts

PvP Token:

From 8d17841e608c4c1ee8db22b62c2804b26351386f Mon Sep 17 00:00:00 2001
From: Dark <[email protected]>
Date: Mon, 31 May 2010 15:49:35 +0200
Subject: [PATCH 1/2] PvP Token

---
src/game/Language.h              |    1 +
src/game/Player.cpp              |   30 ++++++++++++++++++++++++++++++
src/game/Player.h                |    3 +++
src/game/Unit.cpp                |    5 +++++
src/game/World.cpp               |    9 +++++++++
src/game/World.h                 |    8 +++++++-
src/mangosd/mangosd.conf.dist.in |   31 +++++++++++++++++++++++++++++++
7 files changed, 86 insertions(+), 1 deletions(-)

diff --git a/src/game/Language.h b/src/game/Language.h
index 38ec346..4f8e6a9 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -851,6 +851,7 @@ enum MangosStrings

    // Use for not-in-offcial-sources patches
    //                                    10000-10999
+    LANG_YOU_RECEIVE_TOKEN                = 11050,

    // Use for custom patches             11000-11999

diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 7513657..c83ed53 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -21355,6 +21355,36 @@ void Player::UpdateFallInformationIfNeed( MovementInfo const& minfo,uint16 opcod
        SetFallInformation(minfo.GetFallTime(), minfo.GetPos()->z);
}

+///PVP Token
+void Player::ReceiveToken()
+{
+    if(!sWorld.getConfig(CONFIG_PVP_TOKEN_ENABLE))
+        return;
+
+    uint8 MapRestriction = sWorld.getConfig(CONFIG_PVP_TOKEN_RESTRICTION);
+
+    if( MapRestriction == 1 && !InBattleGround() && !HasByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_FFA_PVP) ||
+        MapRestriction == 2 && !HasByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_FFA_PVP) ||
+        MapRestriction == 3 && !InBattleGround())
+        return;
+
+    uint32 itemID = sWorld.getConfig(CONFIG_PVP_TOKEN_ITEMID);
+    uint32 itemCount = sWorld.getConfig(CONFIG_PVP_TOKEN_ITEMCOUNT);
+
+    ItemPosCountVec dest;
+    uint8 msg = CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, itemID, itemCount);
+    if( msg != EQUIP_ERR_OK )   // convert to possible store amount
+    {
+        SendEquipError( msg, NULL, NULL );
+        return;
+    }
+
+    Item* item = StoreNewItem( dest, itemID, true, Item::GenerateItemRandomPropertyId(itemID));
+    SendNewItem(item,itemCount,true,false);
+
+    ChatHandler(this).PSendSysMessage(LANG_YOU_RECEIVE_TOKEN);
+}
+
void Player::UnsummonPetTemporaryIfAny()
{
    Pet* pet = GetPet();
diff --git a/src/game/Player.h b/src/game/Player.h
index cdf20bb..12b201b 100644
--- a/src/game/Player.h
+++ b/src/game/Player.h
@@ -1966,6 +1966,9 @@ class MANGOS_DLL_SPEC Player : public Unit
        void _ApplyWeaponDependentAuraCritMod(Item *item, WeaponAttackType attackType, Aura* aura, bool apply);
        void _ApplyWeaponDependentAuraDamageMod(Item *item, WeaponAttackType attackType, Aura* aura, bool apply);

+        ///PVP Token
+        void ReceiveToken();
+        
        void _ApplyItemMods(Item *item,uint8 slot,bool apply);
        void _RemoveAllItemMods();
        void _ApplyAllItemMods();
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index e35ab4f..4d57907 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -698,6 +698,11 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa
        {
            player_tap->ProcDamageAndSpell(pVictim, PROC_FLAG_KILL, PROC_FLAG_KILLED, PROC_EX_NONE, 0);

+            /// PvP Token
+            int8 leveldiff = player_tap->getLevel() - pVictim->getLevel();
+            if((pVictim->GetTypeId() == TYPEID_PLAYER) && leveldiff < 10)
+            player_tap->ReceiveToken();
+
            WorldPacket data(SMSG_PARTYKILLLOG, (8+8));     //send event PARTY_KILL
            data << player_tap->GetObjectGuid();            //player with killing blow
            data << pVictim->GetObjectGuid();              //victim
diff --git a/src/game/World.cpp b/src/game/World.cpp
index abf273d..11f967e 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -756,6 +756,15 @@ void World::LoadConfigSettings(bool reload)
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_GMLEVEL,    "TimerBar.Fire.GMLevel", SEC_CONSOLE);
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_MAX,        "TimerBar.Fire.Max", 1);

+    /* PvP Token System */
+    setConfig(CONFIG_PVP_TOKEN_ENABLE,"PvPToken.Enable", true);
+    setConfig(CONFIG_PVP_TOKEN_ITEMID,"PvPToken.ItemID", 29434);
+    setConfig(CONFIG_PVP_TOKEN_ITEMCOUNT,"PvPToken.ItemCount", 1);
+    setConfig(CONFIG_PVP_TOKEN_RESTRICTION,"PvPToken.MapRestriction", 4);
+
+    if(getConfig(CONFIG_PVP_TOKEN_ITEMCOUNT) < 1)
+    setConfig(CONFIG_PVP_TOKEN_ITEMCOUNT,"PvPToken.ItemCount",1);
+    
    m_VisibleUnitGreyDistance = sConfig.GetFloatDefault("Visibility.Distance.Grey.Unit", 1);
    if(m_VisibleUnitGreyDistance >  MAX_VISIBILITY_DISTANCE)
    {
diff --git a/src/game/World.h b/src/game/World.h
index b289b91..12d10ae 100644
--- a/src/game/World.h
+++ b/src/game/World.h
@@ -260,7 +260,13 @@ enum eConfigFloatValues
    CONFIG_FLOAT_CREATURE_FAMILY_ASSISTANCE_RADIUS,
    CONFIG_FLOAT_GROUP_XP_DISTANCE,
    CONFIG_FLOAT_THREAT_RADIUS,
-    CONFIG_FLOAT_VALUE_COUNT
+    CONFIG_FLOAT_VALUE_COUNT,
+    
+    ///PVP Token
+    CONFIG_PVP_TOKEN_ENABLE,
+    CONFIG_PVP_TOKEN_ITEMID,
+    CONFIG_PVP_TOKEN_ITEMCOUNT,
+    CONFIG_PVP_TOKEN_RESTRICTION
};

/// Configuration elements
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index 673ed2a..5717262 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1508,3 +1508,34 @@ SOAP.Port = 7878
CharDelete.Method = 0
CharDelete.MinLevel = 0
CharDelete.KeepDays = 30
+
+###################################################################################################################
+# PvP Token System (custom patch)
+#
+# PvPToken.Enable
+# Enable/disable PvP Token system.
+# Default: 1 (enabled)
+# 0 (disabled)
+#
+# PvPToken.ItemID
+# The item ID of the token that players will receive after killing an enemy.
+# Default: 29434 (Badge of Justice)
+#
+# PvPToken.ItemCount
+# The count amount of the ItemID
+# Default: 1
+#
+# PvPToken.MapRestriction
+# The type of maps where players can receive the token
+# Default: 4 - all maps
+# 3 - battlegrounds only
+# 2 - FFA areas only (both instanced and world arenas)
+# 1 - battlegrounds and FFA areas only
+#
+###################################################################################################################
+
+PvPToken.Enable = 1
+PvPToken.ItemID = 29434
+PvPToken.ItemCount = 1
+PvPToken.MapRestriction = 4
+
-- 

PvP Announcer:

From 0c184680cf5d185b3c9510eb1d105d1b1a27d692 Mon Sep 17 00:00:00 2001
From: Dark <[email protected]>
Date: Mon, 31 May 2010 14:50:21 +0100
Subject: [PATCH] PvP Announcer

Signed-off-by: Dark <[email protected]>
---
src/game/Unit.cpp                |    7 +++++++
src/game/World.cpp               |   18 ++++++++++++++++++
src/game/World.h                 |   10 ++++++++--
src/mangosd/mangosd.conf.dist.in |   11 +++++++++++
4 files changed, 44 insertions(+), 2 deletions(-)

diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index e35ab4f..751f017 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -698,6 +698,13 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa
        {
            player_tap->ProcDamageAndSpell(pVictim, PROC_FLAG_KILL, PROC_FLAG_KILLED, PROC_EX_NONE, 0);

+            /// PvP Announcer
+            if (sWorld.getConfig(CONFIG_BOOL_PVP_ANNOUNCER))
+            {
+                if (pVictim->GetTypeId() == TYPEID_PLAYER)
+                    sWorld.SendPvPAnnounce(player_tap, ((Player*)pVictim));
+            }
+
            WorldPacket data(SMSG_PARTYKILLLOG, (8+8));     //send event PARTY_KILL
            data << player_tap->GetObjectGuid();            //player with killing blow
            data << pVictim->GetObjectGuid();              //victim
diff --git a/src/game/World.cpp b/src/game/World.cpp
index abf273d..63ab448 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -61,6 +61,7 @@
#include "GMTicketMgr.h"
#include "Util.h"
#include "CharacterDatabaseCleaner.h"
+#include "Language.h"

INSTANTIATE_SINGLETON_1( World );

@@ -77,6 +78,20 @@ float World::m_MaxVisibleDistanceInFlight     = DEFAULT_VISIBILITY_DISTANCE;
float World::m_VisibleUnitGreyDistance        = 0;
float World::m_VisibleObjectGreyDistance      = 0;

+///PVP Announcer
+void World::SendPvPAnnounce(Player* killer, Player* killed)
+{
+  std::ostringstream msg;
+  std::ostringstream KillerName;
+  std::ostringstream KilledName;
+
+  KillerName << killer->GetName();
+  KilledName << killed->GetName();
+
+  msg << "|CFFFFFF01[" << KillerName.str().c_str() << "]" << "|CFF0042FF Has Killed " << "|CFFFFFF01[" << KilledName.str().c_str() << "]" << "|CFFE55BB0 in " << "|CFFFE8A0E[" << killer->GetBaseMap()->GetMapName() << "]";
+  SendWorldText(LANG_SYSTEMMESSAGE, msg.str().c_str());
+}
+
/// World constructor
World::World()
{
@@ -756,6 +771,9 @@ void World::LoadConfigSettings(bool reload)
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_GMLEVEL,    "TimerBar.Fire.GMLevel", SEC_CONSOLE);
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_MAX,        "TimerBar.Fire.Max", 1);

+    /* PvP Announcer System */
+    setConfig(CONFIG_BOOL_PVP_ANNOUNCER,"PvPAnnouncer.Enable", true);
+
    m_VisibleUnitGreyDistance = sConfig.GetFloatDefault("Visibility.Distance.Grey.Unit", 1);
    if(m_VisibleUnitGreyDistance >  MAX_VISIBILITY_DISTANCE)
    {
diff --git a/src/game/World.h b/src/game/World.h
index b289b91..4f245be 100644
--- a/src/game/World.h
+++ b/src/game/World.h
@@ -260,7 +260,10 @@ enum eConfigFloatValues
    CONFIG_FLOAT_CREATURE_FAMILY_ASSISTANCE_RADIUS,
    CONFIG_FLOAT_GROUP_XP_DISTANCE,
    CONFIG_FLOAT_THREAT_RADIUS,
-    CONFIG_FLOAT_VALUE_COUNT
+    CONFIG_FLOAT_VALUE_COUNT,
+
+    ///PVP Announcer
+    CONFIG_BOOL_PVP_ANNOUNCER
};

/// Configuration elements
@@ -517,7 +520,10 @@ class World
        void SendZoneMessage(uint32 zone, WorldPacket *packet, WorldSession *self = 0, uint32 team = 0);
        void SendZoneText(uint32 zone, const char *text, WorldSession *self = 0, uint32 team = 0);
        void SendServerMessage(ServerMessageType type, const char *text = "", Player* player = NULL);
-
+        
+        ///PVP Announcer
+        void SendPvPAnnounce(Player* killer, Player* killed);
+        
        /// Are we in the middle of a shutdown?
        bool IsShutdowning() const { return m_ShutdownTimer > 0; }
        void ShutdownServ(uint32 time, uint32 options, uint8 exitcode);
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index 673ed2a..81f9129 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1508,3 +1508,14 @@ SOAP.Port = 7878
CharDelete.Method = 0
CharDelete.MinLevel = 0
CharDelete.KeepDays = 30
+
+###################################################################################################################
+# PvP Announcer System (custom patch)
+#
+# PvPAnnouncer.Enable
+# Enable/disable PvP Announcer system.
+# Default: 1 (enabled)
+# 0 (disabled)
+###################################################################################################################
+
+PvPAnnouncer.Enable = 1
-- 

Link to comment
Share on other sites

  • 2 weeks later...

Added to Darkrulerz code to add gold on kill also, you can disable it by doing this in config "PvPToken.Gold = 0"

From d86442c181cadc3a1e02b990015d914f20aeb6ae Mon Sep 17 00:00:00 2001
From: Furt <[email protected]>
Date: Mon, 14 Jun 2010 07:34:18 -0500
Subject: [PATCH] PVP Token Patch With Gold Reward Added

---
src/game/Player.cpp              |   37 +++++++++++++++++++++++++++++++++++++
src/game/Player.h                |    3 +++
src/game/Unit.cpp                |    5 +++++
src/game/World.cpp               |   10 ++++++++++
src/game/World.h                 |   10 +++++++++-
src/mangosd/mangosd.conf.dist.in |   35 +++++++++++++++++++++++++++++++++++
6 files changed, 99 insertions(+), 1 deletions(-)

diff --git a/src/game/Player.cpp b/src/game/Player.cpp
index 106fdb4..d40d80a 100644
--- a/src/game/Player.cpp
+++ b/src/game/Player.cpp
@@ -21449,6 +21449,43 @@ void Player::UpdateFallInformationIfNeed( MovementInfo const& minfo,uint16 opcod
        SetFallInformation(minfo.GetFallTime(), minfo.GetPos()->z);
}

+///PVP Token
+void Player::ReceiveToken()
+{
+    if(!sWorld.getConfig(CONFIG_PVP_TOKEN_ENABLE))
+        return;
+
+    uint8 MapRestriction = sWorld.getConfig(CONFIG_PVP_TOKEN_RESTRICTION);
+
+    if( MapRestriction == 1 && !InBattleGround() && !HasByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_FFA_PVP) ||
+        MapRestriction == 2 && !HasByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_FFA_PVP) ||
+        MapRestriction == 3 && !InBattleGround())
+        return;
+
+    uint32 itemID = sWorld.getConfig(CONFIG_PVP_TOKEN_ITEMID);
+    uint32 itemCount = sWorld.getConfig(CONFIG_PVP_TOKEN_ITEMCOUNT);
+    uint32 goldAmount = sWorld.getConfig(CONFIG_PVP_TOKEN_GOLD);
+
+    ItemPosCountVec dest;
+    uint8 msg = CanStoreNewItem( NULL_BAG, NULL_SLOT, dest, itemID, itemCount);
+    if( msg != EQUIP_ERR_OK )   // convert to possible store amount
+    {
+        SendEquipError( msg, NULL, NULL );
+        return;
+    }
+
+    Item* item = StoreNewItem( dest, itemID, true, Item::GenerateItemRandomPropertyId(itemID));
+    SendNewItem(item,itemCount,true,false);
+
+    if( goldAmount > 0 )
+        ModifyMoney(goldAmount);
+        SaveGoldToDB();
+        return;
+
+    ChatHandler(this).PSendSysMessage(LANG_YOU_RECEIVE_TOKEN);
+}
+
+
void Player::UnsummonPetTemporaryIfAny()
{
    Pet* pet = GetPet();
diff --git a/src/game/Player.h b/src/game/Player.h
index 544e7e1..6801a77 100644
--- a/src/game/Player.h
+++ b/src/game/Player.h
@@ -2019,6 +2019,9 @@ class MANGOS_DLL_SPEC Player : public Unit
        void _ApplyWeaponDependentAuraMods(Item *item, WeaponAttackType attackType, bool apply);
        void _ApplyWeaponDependentAuraCritMod(Item *item, WeaponAttackType attackType, Aura* aura, bool apply);
        void _ApplyWeaponDependentAuraDamageMod(Item *item, WeaponAttackType attackType, Aura* aura, bool apply);
+        
+        ///PVP Token
+        void ReceiveToken();

        void _ApplyItemMods(Item *item,uint8 slot,bool apply);
        void _RemoveAllItemMods();
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index d0c82d8..91d3919 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -697,6 +697,11 @@ uint32 Unit::DealDamage(Unit *pVictim, uint32 damage, CleanDamage const* cleanDa
        if(player_tap && player_tap != pVictim)
        {
            player_tap->ProcDamageAndSpell(pVictim, PROC_FLAG_KILL, PROC_FLAG_KILLED, PROC_EX_NONE, 0);
+            
+            /// PvP Token
+            int8 leveldiff = player_tap->getLevel() - pVictim->getLevel();
+            if((pVictim->GetTypeId() == TYPEID_PLAYER) && leveldiff < 10)
+            player_tap->ReceiveToken();

            WorldPacket data(SMSG_PARTYKILLLOG, (8+8));     //send event PARTY_KILL
            data << player_tap->GetObjectGuid();            //player with killing blow
diff --git a/src/game/World.cpp b/src/game/World.cpp
index abf273d..034178a 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -755,6 +755,16 @@ void World::LoadConfigSettings(bool reload)
    setConfig(CONFIG_UINT32_TIMERBAR_BREATH_MAX,      "TimerBar.Breath.Max", 180);
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_GMLEVEL,    "TimerBar.Fire.GMLevel", SEC_CONSOLE);
    setConfig(CONFIG_UINT32_TIMERBAR_FIRE_MAX,        "TimerBar.Fire.Max", 1);
+    
+    /* PvP Token System */
+    setConfig(CONFIG_PVP_TOKEN_ENABLE,"PvPToken.Enable", true);
+    setConfig(CONFIG_PVP_TOKEN_ITEMID,"PvPToken.ItemID", 29434);
+    setConfig(CONFIG_PVP_TOKEN_ITEMCOUNT,"PvPToken.ItemCount", 1);
+     setConfig(CONFIG_PVP_TOKEN_GOLD,"PvPToken.Gold", 100000);
+    setConfig(CONFIG_PVP_TOKEN_RESTRICTION,"PvPToken.MapRestriction", 4);
+
+    if(getConfig(CONFIG_PVP_TOKEN_ITEMCOUNT) < 1)
+    setConfig(CONFIG_PVP_TOKEN_ITEMCOUNT,"PvPToken.ItemCount",1);

    m_VisibleUnitGreyDistance = sConfig.GetFloatDefault("Visibility.Distance.Grey.Unit", 1);
    if(m_VisibleUnitGreyDistance >  MAX_VISIBILITY_DISTANCE)
diff --git a/src/game/World.h b/src/game/World.h
index b289b91..31ee893 100644
--- a/src/game/World.h
+++ b/src/game/World.h
@@ -260,7 +260,15 @@ enum eConfigFloatValues
    CONFIG_FLOAT_CREATURE_FAMILY_ASSISTANCE_RADIUS,
    CONFIG_FLOAT_GROUP_XP_DISTANCE,
    CONFIG_FLOAT_THREAT_RADIUS,
-    CONFIG_FLOAT_VALUE_COUNT
+    CONFIG_FLOAT_VALUE_COUNT,
+    
+    ///PVP Token
+    CONFIG_PVP_TOKEN_ENABLE,
+    CONFIG_PVP_TOKEN_ITEMID,
+    CONFIG_PVP_TOKEN_ITEMCOUNT,
+    CONFIG_PVP_TOKEN_GOLD,
+    CONFIG_PVP_TOKEN_RESTRICTION
+
};

/// Configuration elements
diff --git a/src/mangosd/mangosd.conf.dist.in b/src/mangosd/mangosd.conf.dist.in
index f5ba807..390c66c 100644
--- a/src/mangosd/mangosd.conf.dist.in
+++ b/src/mangosd/mangosd.conf.dist.in
@@ -1519,3 +1519,38 @@ SOAP.Port = 7878
CharDelete.Method = 0
CharDelete.MinLevel = 0
CharDelete.KeepDays = 30
+
+###################################################################################################################
+# PvP Token System (custom patch)
+#
+#   PvPToken.Enable
+#       Enable/disable PvP Token system.
+#       Default: 1 (enabled)
+#       0 (disabled)
+#
+#   PvPToken.ItemID
+#       The item ID of the token that players will receive after killing an enemy.
+#       Default: 29434 (Badge of Justice)
+#
+#   PvPToken.ItemCount
+#       The count amount of the ItemID
+#       Default: 1
+#
+#   PvPToken.Gold
+#       The amount of gold that players will receive after killing an enemy.
+#       Default: 100000
+#
+#   PvPToken.MapRestriction
+#       The type of maps where players can receive the token
+#       Default: 4 - all maps
+#       3 - battlegrounds only
+#       2 - FFA areas only (both instanced and world arenas)
+#       1 - battlegrounds and FFA areas only
+#
+###################################################################################################################
+
+PvPToken.Enable = 1
+PvPToken.ItemID = 29434
+PvPToken.ItemCount = 1
+PvPToken.Gold = 100000
+PvPToken.MapRestriction = 4
-- 

Edit: noticed i forgot the part for language.cpp in the patch i made so apply this after u apply the first.

From dd54b532911d2227847c1b67969b6f41421e32b7 Mon Sep 17 00:00:00 2001
From: Furt <[email protected]>
Date: Mon, 14 Jun 2010 07:45:41 -0500
Subject: [PATCH 2/2] Token Part2

---
src/game/Language.h |    1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/src/game/Language.h b/src/game/Language.h
index 38ec346..4f8e6a9 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -851,6 +851,7 @@ enum MangosStrings

    // Use for not-in-offcial-sources patches
    //                                    10000-10999
+    LANG_YOU_RECEIVE_TOKEN                = 11050,

    // Use for custom patches             11000-11999

-- 

Link to comment
Share on other sites

  • 3 weeks later...
  • 1 month later...
  • 3 weeks later...

Updated patch: http://paste2.org/p/988212 for the newest mangos rev

Add this lines to world cofings:

PvPToken.Enable = 1
PvPToken.ItemID = 44990 
PvPToken.ItemCount = 1
PvPToken.MapRestriction = 1

And apply this SQL to world database:

INSERT INTO `mangos_string` VALUES
('11050', 'You have been awarded a token for slaying another player.', null, null, null, null, null, null, null, null);    

patch by dythzer, updated and modified by me(Rusfighter)

Link to comment
Share on other sites

×
×
  • 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