Go Back   Star Trek Online > Feedback > PvP Gameplay
Login

Reply
 
Thread Tools Display Modes
Lt. Commander
Join Date: Dec 2007
Posts: 120
Introduction:

The fundamental balance issue in PVP is poor matchmaking. Some players experience 1:1 win:loss ratios, while others experience unbreakable losing streaks. The solution to this problem is a rating system that improves matchmaking.

The rating system would be based on player skill/prowess, in the form of participation points that account for all abilities: damage, shield repair, hull repair, buffs, debuffs; both given and received.

Fundamentally, queues would need to be separated between individuals ('PUGs') and registered ('premade') teams, with different ratings for each.

Please post any and all feedback here. Support is especially welcome. Falkoren (Cryptic QA) made it very clear that ideas like this cannot be implemented without tangible player support.


===


Participation-based Ratings:

In order to make this work, the ratings need to be calculated per individual player and not per team. There should be a separate rating for team, but only if the team 'registers' for it.

Personal ratings should be based off participation (accounting for: damage dealt, hull repair, shield repair, buffs/debuffs applied, and AOE; also objective-based scoring), so it encourages support as much as kills. It should not need to record win:loss, since we all know that win:loss is determined far more by teamwork than individual participation.

Team ratings should be based off total participation as well as win:loss ratio vs. other teams' ratings.


How is participation calculated? The fundamental components should be damage and healing, but these two components could be split in the following ways:
  • Damage = (DamageDealt / DamageReceived)
  • Healing = [(HullRepairGiven + ShieldRepairGiven) / (HullRepairReceived + ShieldRepairReceived)]


Next, how do we account for buffs, debuffs, and AOE?
  • Add a DamageAssist component to Damage, to account for damage buffs (non-self) and resistance debuffs. Whenever an ally scores Damage points while damage-buffed from another ally, the player who applied the damage buff (non-self) gains those Damage points as well.

    Whenever anyone scores Damage points against a target with a resistance debuff, the player who applied the debuff gains those Damage points as well.

  • Add a DamageMitigation component to Healing, to account for resistance buffs (non-self). Whenever an ally resists damage received, the player who applied the resistance buff (non-self) gains Healing points.

  • CC abilities can count toward Damage Assist or Damage Mitigation, if approximations are used (e.g., base weapon stats = Damage Mitigation; power drained = Damage Assist). Otherwise, CC abilities should be ignored.

  • Points received from DamageAssist and DamageMitigation could be weighted lower than base Damage and Healing points, if these points are the result of non-CC buff/debuff (or buff/debuff that require the output of other allies in order to generate points). Rather, the Damage and Healing points received would be reduced if from these DamageAssist and DamageMitigation components.
Thus, DamageAssist and DamageMitigation are weighted equally with the other components (output/input) of Damage and Healing:
  • Damage = (DamageDealt / DamageReceived) + DamageAssist

  • DamageAssist = (coefficient * DamageDealtByAllies) + EnemyPowerDrained
    where coefficient is a fraction, most likely (1 / totalNumberOfAllies)

  • Healing = [(HullRepairGiven + ShieldRepairGiven) / (HullRepairReceived + ShieldRepairReceived)] + DamageMitigation

  • DamageMitigation = (coefficient * DamageReducedOnAllies) + EnemyDisabledWeaponDamage
    where coefficient is a fraction, most likely (1 / totalNumberOfEnemies)


Lastly, how do we account for objective-based scoring (e.g., capture-and-hold scoring)?
  • Add a third component, of equal weighting with Damage and Healing, called ObjectivePoints. Thus, the total participation score can be affected by ObjectivePoints without biasing all participation scores (for non-objective maps).

    myParticipation = Damage + Healing + ObjectivePoints

  • In order for ObjectivePoints to be consistent with the order of magnitude of Damage and Healing, they would need to be generated by players (just as Damage and Healing are generated by players) instead of taken out of an already existing points pool.

    This means that the influence point scale (and overall system) on the current capture-and-hold maps needs to change. For example, the new victory condition would be that the first team to reach 1200 influence points wins (instead of the current victory condition, which is that the first team to reach 0 influence points loses).

  • Create arbitrary values, based on approximate/comparable Damage + Healing, that could be considered equivalent to scoring an objective. ObjectivePoint value units would be the same units used in Damage and Healing values, so there would be no difficulty in conversion or scaling.

    For example in capture-and-hold:
    • For the moment, let's keep the system simple and say that an area is either captured or neutral; anything in between does not matter.
    • 1 ObjectivePoint = 100 DamageDealt + 50 HullRepairGiven + 50 ShieldRepairGiven
    • It takes 60 ObjectivePoints to capture an area from neutral standing.
    • Each player generates 1 ObjectivePoint per second, only while within a certain range of an objective area that they do not own.
    • Once an area is captured, each player of the same standing generates 2 ObjectivePoints per second, only while within range of the objective area.


Individual un-ranked rating is then calculated as a ratio of individual participation to everyone else's participation (total). So my individual (un-ranked) rating would be calculated as:

myParticipation / totalParticipation

This would need to be modified to account for all player ratings, in order to provide relative scaling rather than absolute inflation. A simple scaling system with ranked ratings might look like this:

myRating = (myParticipation / totalParticipation) * (AvgParticipationOfAllPlayers / totalParticipationOfAllPlayers)

which is the same as

myRating = (myParticipation / totalParticipation) / totalNumberOfRatings


===


Ratings Brackets and Matchmaking:

Ratings should be bracketed based upon the average participation possible per tier.

Normalisation to 50% win (or loss) does require a large population. However, matchmaking in general -- and the operation of the ratings system -- does not require any particular population (above 10 total, of course, if 5v5 is our most basic unit).

More accurately, we do not need to constrain players to their ratings brackets.

Matchmaking will first select from within a ratings bracket, and then move outward if there are not enough players available within that single bracket.

While it is true that there may be situations where PVPers from one bracket might be matched up with and against PVPers of other brackets, this will happen only if it becomes necessary to create PVP matches (i.e., quality-of-service oriented, instead of best-effort oriented). In this scenario, ratings are still calculated normally and largely unaffected, as long as we also apply weights to the different brackets.

For example, a scenario where a PVPer from Bracket 3 is forced to play with and against PVPers from Bracket 1. Without bracket weightings, the participation calculated would be extremely high for the player from Bracket 3, which would temporarily inflate that player's rating. To compensate, we can then apply weightings in the form of a (fractional) coefficient applied to the participation component, where the coefficient represents a ratio of the brackets' average participation.


So my individual (un-ranked) rating becomes:
Participation = (myParticipation / totalParticipation) * (AvgParticipationOfHighBracket / AvgParticipationOfMyBracket)

And the ranked ratings formula becomes:
myRating = Participation / totalNumberOfRatings


By applying the bracket coefficient to the participation component and not the entire ratings formula, players from lower brackets are rewarded slightly for competing against players from higher brackets, while the ratings calculation (in that situation of mixed brackets) would be largely unaffected for the players from higher brackets.

In order to account for bracket-jumping at the margins (high-end and low-end of each bracket), we could impose a constraint that limits backwards movement. In other words, it would be easier to move up in ratings and brackets than it is to move down. This could be accomplished by applying a weighted additive to all ratings calculations, where the additive represents a weighting of my new rating relative to my previous rating.


So the weighted ranked ratings formula becomes:
myNewRating = additive + myOldRating

where additive = (myNewRating - myOldRating) * (myNewRating / myOldRating)


===


Continued in the next post.
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 2 Continued
02-26-2010, 04:56 AM
Separate Queues for Teams:

All queues should then be separated into two categories: one for individual sign-ups (based on personal ratings only), and one for team sign-ups (based on personal + team ratings). Remember that team ratings are based upon overall team participation as well as win:loss.

Players would be matched up by ratings within their bracket. Teams would also be matched up by ratings within their bracket.

This separation is necessary for the sake of keeping a premade team together, otherwise the system would replace low-rated team members with higher-rated individuals from outside the team.

In this way, player experience is accounted for and matched up, in far greater detail than simple rank/level-banding. Teams are also provided a more competitive experience, since their ratings depend on win:loss as well as participation.


===

Rewards:

This system assumes the same reward pool as is currently in use in-game (i.e., skill points, energy credits, merits/honor, medals). This system can be applied to any reward pool, but the fundamental requirement is that the reward pool must be fixed per bracket, similar to how our existing reward pools are fixed per tier.

So in any given ratings bracket, there is a fixed reward pool for every match.

This pool is then split among the participating players according to each player's Participation. 0 Participation should yield 0 rewards. As for scaling, I am open to suggestions.


===


Conclusion:

The rating system is not a new idea. But basing ratings on participation (i.e., all player output possible) will make the rating system much more accurate and fair than simple kill:death or win:loss records.

This will help balance player experience more appropriately, so matches are fairer and more exciting. The ultimate goal is to normalise the win:loss ratio by improving the matchmaking.

Ratings will always be relative to each other, and ratings are designed to increase more easily than decrease, so ratings will always change. This means that players will never be 'stuck'; players will regularly face more challenging opponents, but the difficulty will be scaled more appropriately to provide more incentive and a better 'learning curve'.

Further separation of individuals from teams (i.e., joining a queue as an individual, or joining as a team) is a key step toward this goal. Team ratings will also be based on win:loss, providing a more competitive environment for teams.

Rewards will also be scaled with participation, ensuring an effective incentive.


===


Summary of Raw Stats Required:

The following list contains all the stats (for each participant, per match) required for this ratings system. The game will need to track these stats for the purposes of participation and ratings calculations at the end of every match.

Ideally, these stats should also be tracked in CombatLog, regardless of whether or not the ratings system gets implemented.
  • damage dealt
  • damage received
  • hull repair given
  • hull repair received
  • shield repair given
  • shield repair received
  • total number of allies
  • total number of enemies
  • damage dealt by allies on debuffed target (for the duration of the debuff)
  • damage resisted by allies with non-self resistance buff (for the duration of the buff)
  • enemy subsystem power drained (total drained power for all subsystems on all drained enemies)
  • enemy disabled weapon damage (total of the damage tooltip for all enemy weapons together, on an enemy suffering CC and unable to fire; this total * number of times CCed)


===


Summary of Formulae:
  • Damage = (DamageDealt / DamageReceived) + DamageAssist

  • Healing = [(HullRepairGiven + ShieldRepairGiven) / (HullRepairReceived + ShieldRepairReceived)] + DamageMitigation

  • DamageAssist = (coefficient * DamageDealtByAllies) + EnemyPowerDrained
    where coefficient is a fraction, most likely (1 / totalNumberOfAllies)

  • DamageMitigation = (coefficient * DamageReducedOnAllies) + EnemyDisabledWeaponDamage
    where coefficient is a fraction, most likely (1 / totalNumberOfEnemies)

  • ObjectivePoints = <units the same as those used in Damage and Healing; values arbitrarily assigned dependent upon the map>

  • myParticipation = Damage + Healing + ObjectivePoints

  • totalParticipation is the sum of every player's myParticipation in the current match

  • Participation = (myParticipation / totalParticipation) * (AvgParticipationOfHighBracket / AvgParticipationOfMyBracket)

  • myRating = Participation / totalNumberOfRatings

  • myNewRating = additive + myOldRating
    where additive = (myNewRating - myOldRating) * (myNewRating / myOldRating)


===


Acknowledgements:

Changes to this post have been made based upon feedback from the following contributors to this thread:
  • akumarev
  • Edgecase
  • Falkoren
  • Foxrocks
  • RickHowdy
  • Snowreap

Please post any and all feedback. Support is especially welcome. Falkoren (Cryptic QA) made it very clear that ideas like this cannot be implemented without tangible player support.

So please post your support!
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 3
03-15-2010, 01:15 PM
The principle is pretty reasonable, but like all automated rating/ranking systems, this one has a few "blind spots" in its metric that would make it very difficult to balance. I understand that what you're proposing is larger than simply a revised scoring system, but the system CANNOT exist without a good rating metric, and so it is prerequisite that yours be robust.

1. The focus-fire target in any given situation almost inevitably ends up with a poor showing in damage dealt and damage healed, due to a combination of forced defensive play and CC abilities being used to shut down active defenses. Team-based win/loss rating systems account for this by essentially ignoring this issue - if your team wins, you dealt with it in an empirically effective way. A system with an individual rating such as the one you're proposing would have problems providing a fair assessment of skill in this situation.

2. Buffs and debuffs are very difficult to compute meaningful values for. A well-timed Beam Target Shields is a single debuff that makes or breaks an encounter. A poorly-timed VM is a waste of a 90-second cooldown. Dampening field is a very minor effect, but can potentially apply dozens of times over its duration (a carrier can cover all its fighters, plus ships entering and leaving the bubble will "gain" the ability multiple times).

3. It can be difficult to statistically detect the difference between a good fight and a bad one. If a fight goes on for a very long time and generates very high damage/healing numbers as a result, does that mean the teams were good or bad? Should they rank up or down as a result?
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 4
03-15-2010, 01:27 PM
Quote:
Originally Posted by Matt_Dravis

Implement a rating system based on player skill/prowess
How would you judge this? There is no computer in the world that can detect "skill" when it comes to MMO's. Bringing the most overpowered comp has always been the best way to boost rating and I just see this system as forcing players to do just that. Don't get me wrong, I'd love for this idea to go through. I just don't see how it would be possible. Individual ratings cannot exist in a team play game unless the game can detect when / how abilities are used and how meaningful they are being used. This game is far from doing anything like that.

Would be nice down the road though once the development catches up a bit.
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 5
03-15-2010, 01:42 PM
Not really that difficult. All you have to do is make a simple statistic program that weighs kills vs deaths and against the number of players on both sides within a bout, and calculate that over a duration of time.

The end result is your PvP Rating. And given your performance rating, you can be moved to the appropiate skill set (Novice, Average, Expert) in the queue so your not overwhelmed or have easy kills all the time.



Though the one thing I hope is that Cryptic would keep such numbers private. When numbers get out like in WoW, egos really start to take over the game an ruins the fun.
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 6
03-15-2010, 01:44 PM
Cross tier ratings would not work at all, period. Unfortunately you have to realize there is a massive difference between tiers. Even the best Miranda pilot can't possibly take the heat from a newbie raptor with rapid fire.

I took my escort captain from LTC to Com this weekend and I was definitely doing very well personally with some 0 death matches and top damage rankings, some which were actually losses for us. But there is no chance in hell I could compete with anyone shooting off viral matrix, which would have happened if I went cross tier and had to compete against commander level BOPs.

After I got promoted, it was a real change, suddenly I was sucky again, even with the new ship and APO to counter VM. Yes I was fighting higher level players and getting smoked by them and their extra skills and experience in the tier, but if I was then deemed sucky enough to be worthy of playing the best players in tier 2 ships, I would easily mop the floor with them.

Now I grant you, I'd probably only get stuck with 1 match like that before getting properly switched again, but the tier differences between ships are just too massive. To have access to 3 extra BO powers between LTC and Com and a tougher ship with more weapons and higher level weapons, consoles, etc. is a huge difference, no matter how lousy you are.

Its likely also easily exploited by performing terribly in matches just so you can go down a "rank" and stomp all over lower level players for a bit.

But I think the biggest problem with this idea is that there just aren't enough people that PVP. You see a lot of the same people from match to match, and better than you or not, if you start separating us into thinner bands of skill, then you could end up killing PVP. At best, you could get away with halving the bands, so its 5 levels thick instead of 10, but that would still potentially leave too few players to fill the queues.

Really its not perfect, but I like the system as it is. You learn when you come into a new tier that you have to adapt quickly, and figure out how to deal with the new powers and the new abilities and tactics of ships in that tier. And by the end of the tier, you'll be reaping the rewards for your learning process and the skill gains while teaching the lower levels they have a lot to learn.
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 7
03-15-2010, 01:47 PM
Quote:
Originally Posted by Edgecase View Post
The principle is pretty reasonable, but like all automated rating/ranking systems, this one has a few "blind spots" in its metric that would make it very difficult to balance. I understand that what you're proposing is larger than simply a revised scoring system, but the system CANNOT exist without a good rating metric, and so it is prerequisite that yours be robust.
Excellent feedback, thank you for getting into the lower-level details. I, personally, don't have all the answers, and I hope that others -- especially the folks at Cryptic -- would have a better idea at the low-level details and solutions.

So long as players are on-board with the concept, then we have some basis for improving the current system.

I will attempt to offer some more detailed suggestions, point-by-point.
Quote:
Originally Posted by Edgecase View Post
1. The focus-fire target in any given situation almost inevitably ends up with a poor showing in damage dealt and damage healed, due to a combination of forced defensive play and CC abilities being used to shut down active defenses. Team-based win/loss rating systems account for this by essentially ignoring this issue - if your team wins, you dealt with it in an empirically effective way. A system with an individual rating such as the one you're proposing would have problems providing a fair assessment of skill in this situation.
Agreed that the individual rating is much more problematic than the simpler team rating. If we factor damage received into the rating, in combination with the duration and magnitude of buffs, then defensive play can be rewarded and rated appropriately. We might also consider factoring in deaths.

The real question is the weighting of the different participation components. Which components weigh more or less than others? I think damage dealt, hull repair, and shield repair should be weighted highest and equally, since they are the most basic components to life and death.
Quote:
Originally Posted by Edgecase View Post
2. Buffs and debuffs are very difficult to compute meaningful values for. A well-timed Beam Target Shields is a single debuff that makes or breaks an encounter. A poorly-timed VM is a waste of a 90-second cooldown. Dampening field is a very minor effect, but can potentially apply dozens of times over its duration (a carrier can cover all its fighters, plus ships entering and leaving the bubble will "gain" the ability multiple times).
Again, I agree. The question is how do we measure and weight buffs/debuffs compared to what I consider the Big Three (damage dealt, hull repair, shield repair). I would suggest that, for weights, we only care about abilities that modify damage dealt or received. (Heals are already accounted for in the Big Three.)

So CC abilities don't count toward participation ratings.

This gives us two options for buff/debuff weighting:

1) Assign weights on a fixed participation-point to resistance ratio over time (e.g., X points per % resistance over Y duration, with -X points possible for -% resistance).

OR

2) Ignore these weights as well, and simply rely on the Big Three, remembering that buffs/debuffs directly affect the Big Three anyway.
Quote:
Originally Posted by Edgecase View Post
3. It can be difficult to statistically detect the difference between a good fight and a bad one. If a fight goes on for a very long time and generates very high damage/healing numbers as a result, does that mean the teams were good or bad? Should they rank up or down as a result?
I don't think we need to take match duration into account. Rewarding a specific duration is more easily exploitable than rewarding raw numbers.

I do agree that participation inflation can be problematic as a result of good (i.e., long) matches.

I propose the following:

1) First, we distinguish between participation and (individual) rating.

2) Participation is calculated by the weight points as described above.

3) (Individual) Rating is then calculated as a ratio of individual participation to everyone else's participation (total). So my rating would be calculated as (MyParticipationPoints)/(TotalParticipationPoints).


Thoughts?
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 8
03-15-2010, 01:54 PM
Quote:
Originally Posted by rickhowdy View Post
How would you judge this? There is no computer in the world that can detect "skill" when it comes to MMO's.
By basing it on participation (or a ratio of participation, with weight points), as described above.
Quote:
Originally Posted by Azurian View Post
Not really that difficult. All you have to do is make a simple statistic program that weighs kills vs deaths and against the number of players on both sides within a bout, and calculate that over a duration of time.
The problem with kills vs. deaths is that this does not reward support at all. What about that dedicated healer who is keeping an entire team alive and not scoring any kills? Should they be weighted far lower than the team member who scored all the kills but never died (as a result of the healing)?
Quote:
Originally Posted by Foxrocks
Cross tier ratings would not work at all, period. Unfortunately you have to realize there is a massive difference between tiers. Even the best Miranda pilot can't possibly take the heat from a newbie raptor with rapid fire.
Assuming you're correct, the ratings system would naturally bracket the tiers anyway, if ratings are based on participation. The difference between this and our current system is that it does not -force- tiers into brackets. So that really outstanding T4 player might see themselves with some T5 players at some point (for example).
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 9
03-15-2010, 02:19 PM
Quote:
Originally Posted by Matt_Dravis
Assuming you're correct, the ratings system would naturally bracket the tiers anyway, if ratings are based on participation. The difference between this and our current system is that it does not -force- tiers into brackets. So that really outstanding T4 player might see themselves with some T5 players at some point (for example).
Yes, but my point was that if you take a super awesome T-1 player and the ratings then put them up against average T+0 players, they will still get hammered easily. So the next match they are put back into their proper tier, and then being so awesome, they slaughter everyone, then get promoted again and go back to sucking, and it goes back and forth until they truly get a real promotion.

Anyone fighting a tier above their rank is automatically at a severe disadvantage, with less BO powers, less consoles, and weapon, shields, all their equipment is likely 2 levels lower, not to mention the captain skill differences. I don't believe anyone can overcome all those obstacles, which is what a rating system would assume possible. The curve between the ranks just isn't as smooth as it would need to be for such a system.
Lt. Commander
Join Date: Dec 2007
Posts: 120
# 10
03-15-2010, 02:29 PM
Quote:
Originally Posted by Foxrocks
Yes, but my point was that if you take a super awesome T-1 player and the ratings then put them up against average T+0 players, they will still get hammered easily. So the next match they are put back into their proper tier, and then being so awesome, they slaughter everyone, then get promoted again and go back to sucking, and it goes back and forth until they truly get a real promotion.

Anyone fighting a tier above their rank is automatically at a severe disadvantage, with less BO powers, less consoles, and weapon, shields, all their equipment is likely 2 levels lower, not to mention the captain skill differences. I don't believe anyone can overcome all those obstacles, which is what a rating system would assume possible. The curve between the ranks just isn't as smooth as it would need to be for such a system.
I do see your point, but I suggest that this problem -- ratings bracket jumping -- would only be noticeable at the margins of each ratings bracket.

A possible solution would be to impose a constraint on backwards movement. In other words, it is easier to move up in ratings (and to higher brackets) than it is to go down. In order to accomplish this, there would need to be a (fractional) coefficient applied to negative ratings.
Reply

Thread Tools
Display Modes

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 Off
HTML code is Off


All times are GMT -7. The time now is 09:25 AM.