At about the end of my last thread I made the following suggestion as a fix to the disbalance in PVP. This is the link: http://forum.warmane.com/showthread.php?t=383393&page=4

"Also, another thing I forgot to suggest. This is a suggestion right of the top of my head that could actually work. Honor in battlegrounds should be given as it is right now but should also regard damage taken. That way one sided stomps won't reward the stompers as much and people would be encouraged to throw themselves in battle rather than AFK and wait for the team to win. Kill or die, they went there, they did damage, soaked damage. Overall, they contributed."
It received the following reply by a staff member, partially approving of the idea and incentivizing me to work out a solution with their concerns which I was to post hadn't the thread been locked.

I do agree partially here, but I'm not interested losing honor because I'm a healer who knows how to stand out of range.
A fair point indeed and a point I have an answer to, have you the interest to read through the code I worked on. This is C++ showing the basics of how my suggestion will work. Below is the code in question. Parts in bold are what each fourth of the code does.

int BGRole;
double DMGDone, DMGSoaked, DMGAbsorbed, HealingDone, TotalDMG, TotalABS, TotalSoak, TotalHeal, BGHonor;

// Values for Damage Done, Damage Taken, Damag Absorbed & Healing Done are taken from the battleground stats in the end of the battleground //

if (HealingDone || DMGAbsorbed > DMGDone) BGRole = 1;
else if (DMGDone > HealingDone && DMGAbsorbed && DMGSoaked ) BGRole = 2;
else if (DMGDone && DMGSoaked > HealingDone DMGAbsorbed ) BGRole = 3;
else if (DMGSoaked > DMGDone && HealingDone && DMGABsorbed ) BGRole = 4;

// BGRole 1 == Healer
// BGRole 2 == Ranged DPS
// BGRole 3 == Melee DPS
// BGRole 4 == PVP Tank


if (BGRole = 1)
{
double HealPercentage;
HealPercentage = ((HealingDone / TotalHeal) * 100%) + ((DMGAbsorbed / TotalABS) * 100%);
if (HealPercentage >= 25%)
{
HealPercentage = 25%;
BGHonor = BGHonor + BGHonor * HealPercentage;
}
else BGHonor = BGHonor + BGHonor * HealPercentage;
};

//If the overall healing and/or absorbs of the healer are greater than 25% of the total heals and absorbs for the team, they are automatically counted down to 25% as that is the maximum bonus of honor you can receive. If they are lower than 25%, you receive whatever % you have as a battleground bonus for participating as a healer//

if (BGRole = 2)
{
double RDPSPercentage;
RDPSPercentage = ((DMGDone / TotalDMG) * 100% - ((DMGSoaked / TotalSoak) * 100%)/4);
if (RDPSPercentage >= 25%)
{
RDPSPercentage = 25%;
BGHonor = BGHonor + BGHonor * RDPSPercentage;
}
else BGHonor = BGHonor + BGHonor * RDPSPercentage;
};

//If the overall damage of the ranged DPS is greater than 25% of the total of the of the team, they are automatically counted down to 25% as that is the maximum bonus honor you can receive. You lose 25% of your total soaked damage as the formula will reward you to stand in a distance and keep yourself in range from melees or kiting other ranged//

if (BGRole = 3)
{
double MDPSPercentage;
MDPSPercentage = ((DMGDone / TotalDMG) * 100% + ((DMGSoaked / TotalSoak) * 100%)/4);
if (MDPSPercentage >= 25%)
{
MDPSPercentage = 25%;
BGHonor = BGHonor + BGHonor * MDPSPercentage;
}
else BGHonor = BGHonor + BGHonor * MDPSPercentage;
};

//If the overall damage of a melee DPS is greater than 25% of the total of the team, they are automatically counted down to 25% as that is the maximum bonus honor you can receive. You gain 25% of your total soaked damage as the formula will reward you for going into the combat to deal damage as a melee and by doing so, taking damage from other damage dealers as well//

if (BGRole = 4)
{
double TANKPercentage;
TANKPercentage = ((DMGSoaked / TotalSoak) * 100 + ((DMGAbsorbed / TotalABS) * 100%)/8 + ((DMGDone / TotalDMG)*100%)/8);
if (TANKPercentage >= 25%)
{
TANKPercentage = 25%;
BGHonor = BGHonor + BGHonor * TANKPercentage;
}
else BGHonor = BGHonor * TANKPercentage;
};

//If the overall damage soaked of a TANK is greater than 25% of the total for the team, they are automatically counted down to 25% as that is the maximum bonus honor you can receive. You gain one eight of the your total absorbed damage as bonus as well as an eight of your total damage done as protection paladins utilize shields that cause them to absorb damage//
As can be seen, this code incentivises all roles in a battleground and encourages people to try, even in losing battlegrounds. Of course, the winners are always to win more than the ones losing. In that case, after all the calculations, something along the lines of the following can be implemented to reward the losing team less than the winning one.

int HonorReward;
if (BGWin) Honor Reward = BGHonor;
else Honor Reward = BGHonor * 0.9;
That's basically all folks.
- Berserkyd