Cơ chế xếp hạng người chơi theo tướng hoạt động thế nào
Trang này giải thích từ đầu đến cuối cách Top of League trả lời câu hỏi “ai chơi tướng này giỏi nhất”: ai được vào bảng, điểm được tính ra sao, vì sao chọn đúng 30 trận, dữ liệu đi qua những bước nào và bảng này không nói được điều gì.
Nội dung
- Tóm tắt trong một đoạn
- Vì sao xếp hạng theo tướng
- Ai được vào bảng
- Tự thêm tên vào danh sách theo dõi
- Điểm xếp hạng
- Vì sao đúng 30 trận
- Dữ liệu đi qua những bước nào
- Đọc một bảng như thế nào
- Bảng này không nói được điều gì
- Quyền riêng tư và chính sách Riot
- Thuật ngữ
- Câu hỏi thường gặp
Tóm tắt trong một đoạn
Mỗi tướng có một bảng riêng. Một người chơi vào bảng của tướng X khi đang ở bậc Cao Thủ trở lên (hoặc bất kỳ bậc nào nếu Riot ID đã được thêm ở trang chủ) và đã có đúng 30 trận Xếp hạng Đơn/Đôi gần nhất với tướng X, kết thúc trong 90 ngày gần nhất. Thứ tự trong bảng là Score = LP + 600 × (WR₃₀ − 0,5): LP chính thức của Riot quyết định gần như toàn bộ, tỉ lệ thắng trên đúng 30 trận đó chỉ đủ để phá thế hòa. Mọi con số đều lấy từ Riot Games API và tính lại mỗi 10 phút.
Vì sao xếp hạng theo tướng
Bậc rank tổng thể trả lời câu hỏi “bạn giỏi Liên Minh đến đâu”, nhưng không trả lời “bạn giỏi Azir đến đâu”. Một người Thách Đấu chơi 400 trận Azir và một người Thách Đấu vừa cầm Azir lần thứ năm có cùng bậc rank, nhưng rõ ràng không cùng trình độ trên tướng đó. Điểm thông thạo (mastery) cũng không giải quyết được: nó đo thời gian chơi, không đo kết quả.
Bảng xếp hạng theo tướng lấp khoảng trống này bằng cách chỉ nhìn vào những người đã chứng minh được hai điều cùng lúc: họ đứng ở đỉnh ladder và họ thực sự chơi tướng đó ở đúng mức độ đó. Đây là loại thông tin mà người muốn học một tướng cần: ai để xem, ai để học, và trên máy chủ của mình.
Ai được vào bảng
Một người chơi xuất hiện trên bảng của tướng X khi cả bốn điều kiện sau đúng cùng lúc:
- Bậc hiện tại từ Cao Thủ trở lên ở hàng chờ Xếp hạng Đơn/Đôi, theo snapshot ladder mới nhất. Cao Thủ, Đại Cao Thủ và Thách Đấu dùng chung một bể LP nên so sánh LP giữa họ có ý nghĩa. Người đã được thêm vào danh sách theo dõi ở trang chủ được bỏ qua điều kiện này.
- Đúng 30 trận hợp lệ gần nhất với tướng X trong mùa giải hiện tại. Không phải “ít nhất 30”: lấy đúng 30 trận mới nhất, những trận cũ hơn bị bỏ.
- Trận hợp lệ là trận ở hàng chờ 420, không phải remake, kết thúc trong 90 ngày gần nhất.
- Không có điều kiện tỉ lệ thắng. Thắng 12/30 vẫn được xếp hạng, chỉ đứng thấp hơn.
Điều kiện 3 giữ cho bảng phản ánh phong độ hiện tại: trận cũ hơn 90 ngày không được tính, nên một lịch sử cũ với tướng X là chưa đủ để lên bảng.
Tự thêm tên vào danh sách theo dõi
Trang chủ có ô nhập Riot ID. Bất kỳ ai cũng có thể thêm tên mình hoặc tên người khác, ở bất kỳ bậc nào. Hệ thống tra Riot ID, lấy bậc hiện tại và tải các trận Xếp hạng Đơn/Đôi trong 90 ngày gần nhất, thường trong vài phút.
Sau đó ô này hiện cho từng tướng: đã có bao nhiêu trận gần đây, còn thiếu bao nhiêu trận để đủ 30, và hạng hiện tại nếu đã lên bảng. Người trong danh sách theo dõi được tính mọi trận Xếp hạng Đơn/Đôi, không cần bậc Cao Thủ.
Giới hạn: tối đa 10 lượt thêm mỗi địa chỉ IP mỗi ngày. Chỉ dùng dữ liệu công khai của Riot, không có tra cứu trận đang diễn ra.
Điểm xếp hạng
Score = LP + K × (WR₃₀ − 0,5) với K = 600. LP là điểm hạng chính thức lấy từ snapshot ladder mới nhất. WR₃₀ là tỉ lệ thắng trên đúng 30 trận hợp lệ gần nhất với tướng đó.
Vì sao K = 600? Biên độ LP của nhóm Cao Thủ+ trải từ 0 đến hơn 3.000. Với K = 600, tỉ lệ thắng chỉ dịch được tối đa ±300 điểm (trường hợp cực đoan 0% hoặc 100%), thực tế thường ±60. Rank vẫn áp đảo đúng như mục đích, còn tỉ lệ thắng đủ sức phá thế hòa giữa hai người cùng LP.
Người dưới Cao Thủ được đặt lên cùng thang điểm bằng LP quy đổi: mỗi bậc nhỏ dưới Cao Thủ trừ 100 (Kim Cương I = LP − 100, Kim Cương IV = LP − 400, Lục Bảo I = LP − 500, Vàng I = LP − 1.300). Ví dụ: Vàng II 80 LP thắng 24/30 (80%) được −1.320 + 180 = −1.140; Vàng I 20 LP thắng 12/30 (40%) được −1.280 − 60 = −1.340, nên người Vàng II đứng trên. Phần tỉ lệ thắng dịch tối đa ±300, nên không bao giờ vượt quá khoảng ba bậc.
Ví dụ
| Người chơi | LP | Thắng / 30 | WR₃₀ | Score |
|---|---|---|---|---|
| A | 1.200 | 18 | 60% | 1.200 + 600 × 0,10 = 1.260 |
| B | 1.250 | 12 | 40% | 1.250 − 600 × 0,10 = 1.190 |
| C | 1.500 | 12 | 40% | 1.500 − 60 = 1.440 |
A vượt B dù ít hơn 50 LP nhờ phong độ tốt hơn trên tướng này. Nhưng C vẫn đứng trên cả hai: khoảng cách 250 LP là khoảng cách rank thật, tỉ lệ thắng không đảo ngược được.
Vì sao đúng 30 trận
Cố định cửa sổ ở đúng 30 trận cho mọi người một tính chất đẹp: ai cũng có cùng cỡ mẫu. Hai tỉ lệ thắng vì thế so sánh trực tiếp được với nhau, không cần co rút Bayes, không cần hệ số tin cậy, không cần ngưỡng “tối thiểu N trận” nào khác. Đây là điểm mà các công thức kiểu League of Graphs không có.
Cái giá phải trả: sai số chuẩn của tỉ lệ thắng trên 30 trận là 9,1 điểm phần trăm. Một dao động ±1 độ lệch chuẩn tương đương ±55 điểm Score. Con số này chấp nhận được với vai trò phá thế hòa, nhưng không đủ tin cậy để đảo ngược một khoảng cách rank thật sự, và đó chính là hành vi mong muốn. Cửa sổ 30 trận cũng đo phong độ hiện tại thay vì cả mùa: người bỏ tướng ba tháng sẽ dần rơi khỏi bảng khi trận cũ hết hạn.
Dữ liệu đi qua những bước nào
- Snapshot ladder (mỗi ngày, 3 lời gọi): toàn bộ Thách Đấu, Đại Cao Thủ, Cao Thủ với LP, số thắng, số thua. Đây là nguồn của LP và của điều kiện Cao Thủ+.
- Khám phá match id (mỗi ngày, một lời gọi mỗi người): danh sách trận Xếp hạng Đơn/Đôi mới kể từ lần crawl trước.
- Chi tiết trận (một lời gọi mỗi trận, mỗi trận chỉ tải một lần): trích 10 dòng người chơi với tướng, thắng/thua, KDA, vị trí; JSON thô bị vứt ngay. Một lời gọi cho dữ liệu của cả 10 người, nên crawl theo trận rẻ hơn crawl theo người khoảng 9 lần.
- Tính bảng (mỗi 10 phút, không gọi API): một truy vấn SQL đánh số trận theo từng cặp người–tướng, giữ đúng 30 trận mới nhất, tính Score, ghi ra file JSON tĩnh mỗi tướng một file.
Toàn bộ hệ thống chạy trên một máy chủ nhỏ vì nó bị giới hạn bởi hạn mức API của Riot, không phải bởi CPU. Rate limit đọc từ header của Riot và giữ ở 85% hạn mức.
Đọc một bảng như thế nào
- Bậc, LP: rank chính thức tại snapshot mới nhất.
- WR 30 trận, T–B: tỉ lệ thắng và số thắng–thua trên đúng 30 trận hợp lệ gần nhất với tướng này, không phải cả mùa.
- KDA: (mạng + hỗ trợ) / tử trên 30 trận đó, để tham khảo, không tham gia vào Score.
- Score: giá trị dùng để xếp thứ tự. Hai người cùng Score thì xét LP cao hơn, rồi số thắng.
- Trận cuối: thời điểm trận gần nhất với tướng này; người lâu không chơi vẫn ở bảng cho tới khi bị người khác đẩy xuống hoặc rớt khỏi Cao Thủ.
Bảng này không nói được điều gì
Sự minh bạch về giới hạn là thứ phân biệt bảng này với các bảng đang có. Những điều sau đây được công bố thẳng:
- Chỉ phủ Cao Thủ trở lên (khoảng 0,1% người chơi). Người Kim Cương không tìm thấy mình ở đây.
- Cửa sổ 30 trận có nhiễu ±9,1 điểm phần trăm. Đây là giá của việc đo phong độ hiện tại thay vì cả mùa.
- Không đo độ khó của trận. Gánh đội và ngồi sau jungler snowball đều là một trận thắng.
- Chưa tách theo vị trí. Cùng một tướng đi mid và đi top đang chung một bảng.
- Riot API chỉ trả tối đa 10.000 người cho bậc Cao Thủ. Ở máy chủ có bậc Cao Thủ đông hơn (VN), những người LP thấp nhất không được xếp hạng.
- Dữ liệu cập nhật mỗi ngày một lần, không theo thời gian thực.
Quyền riêng tư và chính sách Riot
Chỉ Riot ID hiện tại được lưu và hiển thị; đổi tên là tên cũ biến mất, không có lịch sử tên. Không có tính năng tra cứu trận đang diễn ra hay bất kỳ thông tin nào tạo lợi thế trong trận. Không có cá cược, không thu phí. Khóa API nằm phía máy chủ. Trang này không liên kết với Riot Games; thứ tự trong bảng dựa trên rank chính thức của Riot và không phải một hệ thống xếp hạng thay thế.
Thuật ngữ
- LP (League Points)
- Điểm hạng chính thức của Riot. Từ Cao Thủ trở lên không còn chia bậc nhỏ, ba bậc dùng chung một bể LP liên tục.
- Cao Thủ+ (Master+)
- Gộp ba bậc Cao Thủ, Đại Cao Thủ, Thách Đấu; khoảng 0,1% người chơi xếp hạng.
- WR₃₀
- Tỉ lệ thắng trên đúng 30 trận hợp lệ gần nhất với một tướng.
- Remake
- Trận kết thúc sớm do có người không kết nối; không đổi LP, không tính vào bảng.
- Snapshot ladder
- Bản chụp toàn bộ danh sách Cao Thủ+ với LP tại một thời điểm, lưu mỗi ngày.
Câu hỏi thường gặp
- Tôi ở Kim Cương, vì sao không thấy tên mình?
- Bảng chỉ phủ Cao Thủ trở lên, khoảng 0,1% người chơi. Đây là đánh đổi có ý thức để đổi lấy độ tin cậy của dữ liệu.
- Bao lâu bảng cập nhật một lần?
- Snapshot ladder và trận mới được nạp mỗi ngày, bảng được tính lại mỗi 10 phút. Thời điểm cập nhật ghi trên từng bảng.
- Vì sao dùng đúng 30 trận?
- Mọi người có cùng cỡ mẫu nên hai tỉ lệ thắng so sánh trực tiếp được, không cần hệ số tin cậy. Sai số chuẩn của 30 trận là 9,1 điểm phần trăm, đủ để phá thế hòa nhưng không đủ để đảo ngược một khoảng cách LP thật sự.
- Đây có phải hệ thống xếp hạng thay thế cho rank của Riot?
- Không. Thứ tự trong bảng dựa trên LP chính thức của Riot; tỉ lệ thắng chỉ dùng để phá thế hòa. Bảng trả lời câu hỏi “ai giỏi tướng này nhất” chứ không đo lại kỹ năng tổng thể.
- Tỉ lệ thắng dưới 50% có bị loại không?
- Không. Người thắng 12/30 trận vẫn được xếp hạng, chỉ đứng thấp hơn người cùng LP thắng nhiều hơn.
- Dữ liệu lấy từ đâu?
- Từ Riot Games API (league-v4 và match-v5). Chỉ lưu và hiển thị Riot ID hiện tại, không lưu lịch sử tên, không có tra cứu trận đang diễn ra.