Scoring and populations
Scores measure captured support. They are not probabilities of friendship or proof of residence.
Count index
For count x, reference population P and baseline B:
A(x) = 100 * (
2 * min(1, x / max(1, 1.5 * meanTopN(P)))
+ 2 * min(1, x / max(1, max(P)))
+ min(1, x / B)
) / 5| Parameter | Default or meaning |
|---|---|
| Top N | 5 |
| Baseline B | 50 |
meanTopN(P) | Mean of the largest Top N counts |
| Empty P | No index |
Network reference population
P contains every known direct friend, including zero observed incoming counts and friends outside the admitted graph.
- Incoming mutuals: appearances in other direct friends' observed lists.
- Undirected mutuals: a separate count; do not substitute it for incoming mutuals.
- Unknown lists: add no observed edges. They are not measured empty lists.
Combined index
combined = (
wm * A(incomingMutual)
+ 100 * wf * Jfriends
+ 100 * wg * Jgroups
+ 100 * wa * Jgames
) / sum(weights)| Signal | Default weight |
|---|---|
| Incoming-mutual count index | 1 |
| Friend Jaccard | 0 |
| Group Jaccard | 0 |
| Game Jaccard | 0 |
Optional comparisons use bounded Jaccard; raw overlap counts remain available.
| Condition | Behavior |
|---|---|
| Complete, empty union | Jaccard is zero |
| Unknown comparison | No observed support; denominator unchanged and availability visible |
| All weights zero | No combined index; sort by observed incoming count |
| Equal scores | Break ties by Steam ID |
Sorting retains full precision. Rounding happens only for display.
Friend-comment index
The same count formula uses a different reference population:
- Include positive-count authors with friendship evidence anywhere in the captures, including former friends.
- Exclude nonfriend commenters and displayed zero rows from the reference.
- Friendship filters do not change the reference; date ranges do.
- Profile and ban metadata filters use source observation dates.
There is no second all-commenter index. Comment ranking describes captured scope, not every comment ever made.
Location support
Network and friend-comment location evidence are calculated separately. Only supplied country/city codes participate; missing-city records stay visible outside the calculation.
For city support s, total support T and location baseline B_location:
L = 100 * (2 * s / T + min(1, s / B_location)) / 3| Setting or condition | Behavior |
|---|---|
| Aggregation | Sum or product; default product |
| Location baseline | Default 100 |
| Product includes zero | Support is zero |
| Total support is zero | No index or share |
| Arithmetic | Exact integer sums/products; bounded ratio conversion |
| Export | Decimal strings preserve integer precision |
Results retain contributor and zero-contributor counts, raw support, source population and coverage. Self-reported location fields and these indices do not establish residence.
Network metrics and score scaling
| Metric | Calculation |
|---|---|
| Friendship graph | Undirected, admitted profiles and observed friendships only |
| Community | Louvain |
| Betweenness | Normalized, unweighted |
| Hub | Positive betweenness at or above the configured percentile |
| Group links | Excluded from friendship metrics |
score and evidence_score contain the same bounded combined index. The leading candidate is not rescaled to 100. Missing observations can reduce observed support without establishing absence.
Worked count example
With population [10, 5, 0], Top N 5 and baseline 50:
meanTopN(P) = 5andmax(P) = 10.- For count 5, the three terms are
2 × 5/7.5,2 × 5/10and5/50. A(5) ≈ 48.67.
The zero row participates in the network reference. Friend-comment ranking uses the separate population described above.