LockBlaze/Rating System

How Ratings Work

A performance-based rating system inspired by Leetify, designed to capture individual skill across multiple dimensions - independent of win/loss outcomes.

Beta: Formulas and weights are actively being refined based on gameplay data. Values shown below reflect the current live implementation.

Raw Performance, Not Outcomes

Win/loss results do not directly affect your rating. Each component measures individual actions so you get accurate feedback regardless of team quality.

Multi-Dimensional Analysis

Rather than a single KDA number, we analyze combat, economy, positioning, accuracy, and team contribution separately then combine them.

Rating Scale & Grades
S
Above Exceptional
99.5+
A+
Exceptional
90-99.4
A
Excellent
80-89
B+
Very Good
70-79
B
Good
60-69
C+
Average
50-59
C
Below Average
40-49
D
Poor
30-39
F
Very Poor
0-29
Individual Match Rating
KDA Impact
40%
KDA = (Kills + Assists) / max(Deaths, 1)
Score = min(1.0, log(1 + KDA) / log(7))
Logarithmic scaling - KDA of 6.0 = maximum score (1.0)
Kill Impact
25%
Kills/min = Total Kills / Duration (min)
Score = min(1.0, Kills/min / 0.5)
0.5 kills/min = max score - rewards aggressive, high-tempo play
Economic Performance
20%
Score = min(1.0,
  (Souls/min / 800) * 0.6
  + (LastHits/min / 5.0) * 0.4
)
Targets: 800 souls/min and 5 last-hits/min for optimal economic output
Team Contribution
10%
Assists/min = Total Assists / Duration (min)
Score = min(1.0, Assists/min / 0.6)
0.6 assists/min = max score - reflects strong team presence
Survivability
5%
Deaths/min = Total Deaths / Duration (min)
Score = max(0.0, 1.0 - Deaths/min / 0.4)
0.4 deaths/min (1 death per 2.5 min) starts applying penalties
Rank Difficulty Bonusup to +30%
Badge = ranked_display_badge
       (Tier*10 + Subrank)
Max = 116 (Tier 11 Sub 6)
Bonus = 1.0 + (Badge / 116) * 0.3
Based on the player's own ranked badge at match time - not opponents'. Unranked matches get no bonus.
Long Game Bonus+10%
Bonus = 1.1 if (
  Duration >= 40 min
  AND PerformanceScore > 0.70
)
Otherwise: 1.0
Rewards sustaining high-level play in extended matches. Only applies if already performing well.
Final Match Rating
PerformanceScore = KDA*0.40 + Kill*0.25 + Econ*0.20
                 + Team*0.10 + Surv*0.05

FinalRating = clamp(
  (PerformanceScore * RankBonus * LongGameBonus) ^ 0.8 * 100,
  0, 100
)
The power curve (^0.8) compresses the high end slightly, giving better distribution across all skill levels.
Overall Player Rating
Impact

Kills/min (35%) + Objectives (35%) + Souls/min (20%) + Difficulty (10%) Normalized at: 0.3 kills/min, 2 objectives/match, 600 souls/min

25%
Clutch

KDA (60%) + Kills/min (20%) + Difficulty (20%) Normalized at: KDA 4.0, 0.4 kills/min

20%
Positioning

K:D ratio normalized to 3.0 (Kills/min) / max(Deaths/min, 0.01)

15%
Accuracy

Direct aim accuracy when API data is available Fallback: Kills/min (60%) + Objectives (40%)

15%
Utility

Net worth efficiency (40%) + Objectives (30%) + Accuracy (30%) Normalized at: 600 souls/min, 2 objectives/match

10%
Difficulty

Average ranked badge at time of each match Encoding: Tier*10 + Subrank (max: Tier 11 Sub 6 = 116) Scaled linearly to 0-100

10%
Consistency

Standard deviation of difficulty-normalized match ratings Lower deviation = higher score

5%
OverallRating =
  Impact * 0.25 + Clutch * 0.20 + Positioning * 0.15
  + Accuracy * 0.15 + Utility * 0.10 + Difficulty * 0.10
  + Consistency * 0.05
All component ratings are on a 0-100 scale. The overall rating is a weighted average - no power curve applied at this level.
Special Handling

Bot Matches

  • - Individual match ratings averaged directly (no component split)
  • - Difficulty fixed at 50 (mid-range baseline)
  • - Consistency set to 100 (perfect - no variance penalty)
  • - Opponent badge level treated as 25 to avoid a 0 difficulty score

Missing Badge / Unranked Data

  • - No ranked badge on a match: rank difficulty bonus = 0 (no penalty)
  • - All matches unranked: difficulty component falls back to 50 baseline
  • - Opponent badge data unavailable: average badge level falls back to 50
Rating system is under active development. Feedback and questions welcome via the community.