blushneybusiness-glitch/roblox-omniskills/rbx-pvp-ranked

Claude Code and agent skill by blushneybusiness-glitch/roblox-omniskills

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Ranked systems with real ELO/MMR math — expected-score formula, tuned K-factors, placement matches, visible rank tiers with floors, and seasonal soft resets — persisted safely and computed only on the server. Use when the user says "add ranked", "ELO system", "MMR", "rank tiers", "placement matches", "start a season", or when ratings feel wrong: everyone clumps at one rank, smurfs farm beginners, or a disconnect wipes someone's rating. Do not use for the queue and match lifecycle itself — load rbx-pvp-matchmaking — or for save-slot plumbing — load rbx-data-profilestore instead.

Install

npx vskill@latest install blushneybusiness-glitch/roblox-omniskills/rbx-pvp-ranked

SKILL.md

rbx-pvp-ranked

Laws

  1. Rating changes are computed and written server-side only, from match results the

server itself observed (Humanoid.Died it processed, score caps it counted). No remote accepts "I won"; the client's ranked UI is a mirror of replicated values, nothing more.

  1. One rating write per match, transactional. Apply the delta with UpdateAsync (or the

ProfileStore session per rbx-data-profilestore), never GetAsync→SetAsync — two servers finishing matches for the same player is a lost-update bug you will not reproduce in Studio.

  1. Separate MMR from displayed rank. MMR is the honest float the matchmaker uses; rank

is the tiered, floor-protected presentation layer. Fusing them forces you to choose between accurate matching and player-friendly progression — keep both.

  1. Every rating rule is written down before tuning. K-factors, floors, and reset formula

go in one CONFIG table at the top of the rating module so a season patch is a value edit, not a code hunt.

Recipes

Core ELO — expected score Ea = 1 / (1 + 10^((Rb - Ra) / 400)); update Ra' = Ra + K * (S - Ea) where S is 1 win / 0.5 draw / 0 loss. Floor stored rating at 0, math.floor before persisting. For team modes, rate each player against the enemy team's average rating; winners split S = 1.

K-factor ladder — placements (first 10 matches): K = 64, so a smurf reaches its level in one session instead of forty. Established (11+ matches, MMR < 2400): K = 32. High MMR (≥ 2400): K = 16, top ratings stop pinballing. Store matchesPlayed next to MMR; it drives the ladder.

Placements — hide the rank badge for matches 1–10, show "Placement 4/10". Seed at 1000 MMR; after match 10, reveal the tier. Never show a rank that swings a full tier per game — players read that as broken, not converging.

Tiers and floors — map MMR to tiers in 200-point bands: Bronze 0–999, Silver 1000–1199, Gold 1200–1399, Platinum 1400–1599, Diamond 1600–1899, Champion 1900+. Rank floors at each tier boundary the player has crossed: displayed rank never drops below the highest floor reached this season, even while MMR falls (MMR keeps moving — law 3). Floors are the #1 retention lever in ranked; losing a tier you ground for is a quit event.

Season reset — soft reset toward the mean: newMMR = (oldMMR + 1000) / 2. Reset matchesPlayed to 0 to re-trigger placements, clear floors, archive last season's peak tier into the profile for the "Season 3: Diamond" badge. Season length 8–12 weeks; store seasonId with every rating so a late write from an old-version server can be rejected.

Disconnect rule — a leaver takes the full loss (S = 0) after a 60s reconnect grace; opponents take the win at half K so farming disconnects pays worse than playing. Persist the pending result immediately at abandon time, not at the match's natural end.

Performance budget

Rating math is trivial; the budget is DataStore. One UpdateAsync per player per match end, nothing per-round. Leaderboards go through an OrderedDataStore updated on match end only, read on a 60s cache — never per-join. All ranked state for connected players lives in the session profile; zero mid-match DataStore reads.

Load with

rbx-data-profilestore — rating survives the session, don't ask, include it. rbx-pvp-matchmaking feeds this skill match results and consumes its MMR for queue windows. Rank-up moment: rbx-juice-celebrations + rbx-audio-sfx — a silent promotion is a wasted season hook. Tier iconography: rbx-ui-imagery.

AI-tells

  • ☐ Client reports the match result and the server believes it
  • ☐ GetAsync→SetAsync rating writes (lost updates between servers)
  • ☐ One K-factor for everyone — placements take 40 games, top ranks pinball
  • ☐ Displayed rank == raw MMR, dropping tiers mid-losing-streak with no floor
  • ☐ Hard season reset to zero instead of (old + 1000) / 2
  • ☐ Rating changes applied per-kill instead of per-match
  • ☐ No seasonId on writes — stale servers corrupt the new season
  • ☐ Leaderboard hammering OrderedDataStore on every player join

Memory

Read: the game's projects.md block (existing tier names, season schedule, K values already tuned, profile schema keys). Write: the final CONFIG (K ladder, tier bands, reset formula, season dates) into the game's projects.md block when approved; the rating module path into module-library.md; season-rollover manual steps into manual steps pending: if the user defers the date.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
5

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/blushneybusiness-glitch/roblox-omniskills/rbx-pvp-ranked/badge)](https://verified-skill.com/skills/blushneybusiness-glitch/roblox-omniskills/rbx-pvp-ranked)

Something wrong with this skill or its page? Tell us.