TOP OF LEAGUEHextech ladder
Top of Leagueวิธีการทำงาน
วิธีการทำงาน

การจัดอันดับผู้เล่นแยกตามแชมเปี้ยนทำงานอย่างไร

หน้านี้อธิบายตั้งแต่ต้นจนจบว่า Top of League ตอบคำถาม “ใครเล่นแชมเปี้ยนนี้เก่งที่สุด” อย่างไร: ใครติดตาราง คะแนนคำนวณอย่างไร ทำไมต้อง 30 เกมพอดี ข้อมูลผ่านขั้นตอนใดบ้าง และตารางบอกอะไรไม่ได้

สารบัญ

สรุปในหนึ่งย่อหน้า

แชมเปี้ยนแต่ละตัวมีตารางของตัวเอง ผู้เล่นจะอยู่ในตารางของแชมเปี้ยน X เมื่อปัจจุบันอยู่มาสเตอร์ขึ้นไปและมีเกมจัดอันดับเดี่ยว/คู่ล่าสุดกับ X ครบ 30 เกมในล็อบบี้มาสเตอร์+ ลำดับคือ คะแนน = LP + 300 × (WR₃₀ − 0.5): LP ทางการของ Riot ตัดสินเกือบทั้งหมด อัตราชนะใน 30 เกมนั้นใช้แยกคะแนนเท่ากันเท่านั้น ทุกตัวเลขมาจาก Riot Games API และคำนวณใหม่ทุกชั่วโมง

ทำไมต้องจัดอันดับตามแชมเปี้ยน

แรงค์รวมตอบว่า “คุณเก่ง League แค่ไหน” ไม่ใช่ “คุณเก่ง Azir แค่ไหน” แชลเลนเจอร์ที่เล่น Azir 400 เกมกับแชลเลนเจอร์ที่เล่น Azir เกมที่ 5 มีแรงค์เดียวกัน แต่ระดับฝีมือบนแชมเปี้ยนนั้นต่างกันชัดเจน คะแนน mastery ก็ไม่ช่วย: มันวัดเวลาเล่น ไม่ใช่ผลลัพธ์

ตารางแยกตามแชมเปี้ยนเติมช่องว่างนี้โดยดูเฉพาะผู้เล่นที่พิสูจน์สองอย่างพร้อมกัน: อยู่บนสุดของแลดเดอร์ และ เล่นแชมเปี้ยนนั้นในระดับนั้นจริง นี่คือข้อมูลที่คนเรียนแชมเปี้ยนต้องการ: จะดูใคร เรียนจากใคร ในเซิร์ฟเวอร์ของตัวเอง

ใครติดตาราง

ผู้เล่นจะปรากฏในตารางของแชมเปี้ยน X เมื่อเงื่อนไขทั้งสี่เป็นจริงพร้อมกัน:

  • แรงค์ปัจจุบันมาสเตอร์ขึ้นไป ในจัดอันดับเดี่ยว/คู่ตามสแนปช็อตล่าสุด มาสเตอร์ แกรนด์มาสเตอร์ และแชลเลนเจอร์ใช้สเกล LP เดียวกัน การเปรียบเทียบจึงมีความหมาย
  • 30 เกมที่นับได้ล่าสุดพอดี ไม่ใช่ “อย่างน้อย 30”: เอา 30 เกมใหม่สุด เกมที่เก่ากว่าถูกตัดออก
  • เกมที่นับได้ คือล็อบบี้มาสเตอร์+ (ดูการประมาณด้านล่าง) ไม่ใช่รีเมค คิว 420
  • ไม่มีเงื่อนไขอัตราชนะ ชนะ 12 จาก 30 ก็ยังติดอันดับ เพียงอยู่ต่ำกว่า

เงื่อนไขที่ 3 มีเพื่อกันกรณีเฉพาะ: เล่น X 30 เกมตอนอยู่เอเมอรัลด์ แล้วไต่ขึ้นมาสเตอร์ด้วยแชมเปี้ยนอื่น เกมเอเมอรัลด์เหล่านั้นแทบไม่มีใครจากกลุ่มมาสเตอร์+ จึงไม่ถูกนับ

คะแนน

คะแนน = LP + K × (WR₃₀ − 0.5) โดย K = 300 LP คือคะแนนแรงค์ทางการจากสแนปช็อตล่าสุด WR₃₀ คืออัตราชนะใน 30 เกมที่นับได้ล่าสุดกับแชมเปี้ยนนั้น

ทำไม K = 300? LP ของมาสเตอร์+ กระจายตั้งแต่ 0 ถึงมากกว่า 3,000 เมื่อ K = 300 อัตราชนะขยับได้สูงสุด ±150 คะแนน (กรณีสุดขั้ว 0% หรือ 100%) ในทางปฏิบัติราว ±30 แรงค์ยังคงเป็นตัวหลักตามที่ตั้งใจ ส่วนอัตราชนะแรงพอจะแยกผู้เล่นสองคนที่ LP เท่ากัน

ตัวอย่าง

ผู้เล่นLPชนะ / 30WR₃₀คะแนน
A1,2001860%1,200 + 300 × 0.10 = 1,230
B1,2501240%1,250 − 300 × 0.10 = 1,220
C1,5001240%1,500 − 30 = 1,470

A แซง B แม้ LP น้อยกว่า 50 เพราะฟอร์มบนแชมเปี้ยนนี้ดีกว่า แต่ C ยังอยู่เหนือทั้งคู่: ช่องว่าง 250 LP คือช่องว่างแรงค์ที่แท้จริง อัตราชนะพลิกไม่ได้

ทำไมต้อง 30 เกมพอดี

การตรึงหน้าต่างไว้ที่ 30 เกมพอดีให้คุณสมบัติที่งดงามข้อหนึ่ง: ทุกคนมีขนาดตัวอย่างเท่ากัน อัตราชนะสองค่าจึงเปรียบเทียบกันได้โดยตรง ไม่ต้องใช้การหดตัวแบบเบย์ ค่าความเชื่อมั่น หรือเกณฑ์ “อย่างน้อย N เกม” ใด ๆ นี่คือสิ่งที่สูตรแบบ League of Graphs ไม่มี

ราคาที่ต้องจ่าย: ค่าคลาดเคลื่อนมาตรฐานของอัตราชนะ 30 เกมคือ 9.1 จุดเปอร์เซ็นต์ ±1 ส่วนเบี่ยงเบนมาตรฐานเท่ากับ ±27 คะแนน ยอมรับได้สำหรับแยกคะแนนเท่ากัน แต่ไม่น่าเชื่อถือพอจะพลิกช่องว่างแรงค์ที่แท้จริง ซึ่งเป็นพฤติกรรมที่เราต้องการพอดี หน้าต่างนี้ยังวัดฟอร์มปัจจุบันแทนทั้งฤดูกาล: คนที่ทิ้งแชมเปี้ยนไปสามเดือนจะค่อย ๆ หลุดจากตารางเมื่อเกมเก่าหมดอายุ

รู้ได้อย่างไรว่าเกมนั้นเป็นล็อบบี้มาสเตอร์+

Riot API เปิดเผยเฉพาะแรงค์ปัจจุบันของผู้เล่น ไม่มีประวัติ ถามไม่ได้ว่า “สามเดือนก่อนผู้เล่นคนนี้อยู่แรงค์อะไร” ดังนั้น elo ของเกมจึงประมาณจากผู้เล่น 10 คนในเกม: ถ้าอย่างน้อย 8 ใน 10 อยู่ในสแนปช็อตแลดเดอร์มาสเตอร์+ ของ 14 วันล่าสุด ก็เป็นล็อบบี้มาสเตอร์+ ข้อมูลนี้อยู่ในรายละเอียดเกมอยู่แล้ว ไม่ต้องเรียก API เพิ่ม

การประมาณนี้ผิดพลาดกับเกมเก่า: คนที่เคยเป็นมาสเตอร์แล้วหลุดไปจะไม่อยู่ในสแนปช็อต สแนปช็อตถูกเก็บทุกวันตั้งแต่วันแรก ความคลาดเคลื่อนจึงลดลงตามเวลา เกณฑ์ 8/10 ลดเป็น 7 ได้หากมีผู้ผ่านเกณฑ์น้อยเกินไป ค่าที่ใช้อยู่แสดงในหน้าสูตรเสมอ

ข้อมูลมาจากไหน

  • สแนปช็อตแลดเดอร์ (ทุกวัน 3 ครั้ง): แชลเลนเจอร์ แกรนด์มาสเตอร์ มาสเตอร์ทุกคนพร้อม LP ชนะ แพ้ แหล่งของ LP และเงื่อนไขมาสเตอร์+
  • ค้นหา ID เกม (ทุกวัน คนละ 1 ครั้ง): ID เกมจัดอันดับเดี่ยว/คู่ใหม่ตั้งแต่การเก็บครั้งก่อน
  • รายละเอียดเกม (เกมละ 1 ครั้ง แต่ละเกมดึงครั้งเดียว): ดึงเฉพาะ 10 แถวผู้เล่นพร้อมแชมเปี้ยน ผลแพ้ชนะ KDA และตำแหน่ง JSON ดิบถูกทิ้งทันที การเรียกครั้งเดียวได้ข้อมูล 10 คน การเก็บตามเกมจึงถูกกว่าการเก็บตามผู้เล่นราว 9 เท่า
  • คำนวณอันดับ (ทุกชั่วโมง ไม่เรียก API): SQL หนึ่งคำสั่งเรียงเกมของแต่ละคู่ผู้เล่น–แชมเปี้ยนจากใหม่ไปเก่า เก็บ 30 เกมพอดี คำนวณคะแนน และเขียน JSON แบบสถิตแชมเปี้ยนละไฟล์

ทั้งระบบรันบนเซิร์ฟเวอร์เล็ก ๆ ได้เพราะขีดจำกัดคือโควตา API ของ Riot ไม่ใช่ CPU ขีดจำกัดอ่านจากส่วนหัวการตอบกลับของ Riot และคุมไว้ที่ 85% ของที่อนุญาต

อ่านตารางอย่างไร

  • แรงค์, LP: แรงค์ทางการ ณ สแนปช็อตล่าสุด
  • อัตราชนะ 30 เกม, ชนะ–แพ้: อัตราชนะและชนะ–แพ้ใน 30 เกมที่นับได้ล่าสุดกับแชมเปี้ยนนี้เท่านั้น ไม่ใช่ทั้งฤดูกาล
  • KDA: (สังหาร + ช่วยเหลือ) / ตาย ใน 30 เกมนั้น ใช้อ้างอิงเท่านั้น ไม่รวมในคะแนน
  • คะแนน: ค่าที่ใช้เรียงลำดับ คะแนนเท่ากันดู LP สูงกว่า แล้วดูจำนวนชนะ
  • เกมล่าสุด: เวลาของเกมล่าสุดกับแชมเปี้ยนนี้ ผู้เล่นที่ไม่แอคทีฟยังอยู่ในตารางจนถูกคนอื่นดันลงหรือหลุดจากมาสเตอร์

สิ่งที่ตารางบอกไม่ได้

ความชัดเจนเรื่องข้อจำกัดคือสิ่งที่ทำให้ตารางนี้ต่างจากตารางที่มีอยู่ ต่อไปนี้ระบุอย่างตรงไปตรงมา:

  • ครอบคลุมเฉพาะมาสเตอร์ขึ้นไป (ประมาณ 0.1% ของผู้เล่น) ผู้เล่นไดมอนด์จะไม่พบตัวเองที่นี่
  • “ล็อบบี้มาสเตอร์+” ประมาณจากสมาชิกในเกม (≥ 8/10 อยู่ในสแนปช็อต) อาจผิดพลาดกับเกมเก่าที่มีผู้เล่นซึ่งภายหลังหลุดจากมาสเตอร์ ความคลาดเคลื่อนลดลงเมื่อประวัติสแนปช็อตสะสมมากขึ้น
  • หน้าต่าง 30 เกมมีความคลาดเคลื่อน ±9.1 จุดเปอร์เซ็นต์ นี่คือราคาของการวัดฟอร์มปัจจุบันแทนทั้งฤดูกาล
  • ไม่วัดความยากของเกม แครี่ทีมกับถูกแครี่นับเท่ากันคือชนะ 1 เกม
  • ยังไม่แยกตามตำแหน่ง แชมเปี้ยนเดียวกันที่เล่นมิดกับท็อปอยู่ในตารางเดียวกัน
  • Riot API ส่งคืนผู้เล่นมาสเตอร์ได้สูงสุด 10,000 คน ในเซิร์ฟเวอร์ที่มีมาสเตอร์มากกว่านั้น (VN) มาสเตอร์ที่ LP ต่ำสุดจะไม่ถูกจัดอันดับ
  • ข้อมูลอัปเดตวันละครั้ง ไม่ใช่เรียลไทม์

ความเป็นส่วนตัวและนโยบาย Riot

เก็บและแสดงเฉพาะ Riot ID ปัจจุบัน เปลี่ยนชื่อแล้วชื่อเดิมหายไป ไม่มีประวัติชื่อ ไม่มีการค้นหาเกมที่กำลังเล่นหรือสิ่งใดที่ให้ความได้เปรียบในเกม ไม่มีการพนัน ไม่เก็บค่าบริการ คีย์ API อยู่ฝั่งเซิร์ฟเวอร์ ไซต์นี้ไม่เกี่ยวข้องกับ Riot Games ลำดับในตารางอิงจากแรงค์ทางการของ Riot และไม่ใช่ระบบเรตติ้งทดแทน

อภิธานศัพท์

LP (League Points)
คะแนนแรงค์ทางการของ Riot ตั้งแต่มาสเตอร์ขึ้นไปไม่มีดิวิชัน สามแรงค์บนสุดใช้สเกล LP ต่อเนื่องเดียวกัน
มาสเตอร์+
มาสเตอร์ แกรนด์มาสเตอร์ และแชลเลนเจอร์รวมกัน ประมาณ 0.1% ของผู้เล่นจัดอันดับ
WR₃₀
อัตราชนะใน 30 เกมที่นับได้ล่าสุดกับแชมเปี้ยนหนึ่งตัว
ล็อบบี้มาสเตอร์+
เกมที่มีผู้เล่นอย่างน้อย 8 จาก 10 อยู่ในกลุ่มมาสเตอร์+ ของสแนปช็อตรายวัน 14 วันล่าสุด
รีเมค
เกมที่จบก่อนเวลาเพราะมีคนไม่เชื่อมต่อ LP ไม่เปลี่ยน ไม่นับ
สแนปช็อตแลดเดอร์
สำเนาสมบูรณ์ของรายชื่อมาสเตอร์+ พร้อม LP ณ เวลาหนึ่ง เก็บทุกวัน

คำถามที่พบบ่อย

ฉันอยู่ไดมอนด์ ทำไมหาชื่อตัวเองไม่พบ?
ตารางครอบคลุมเฉพาะมาสเตอร์ขึ้นไป ประมาณ 0.1% ของผู้เล่น เป็นการเลือกอย่างตั้งใจเพื่อความน่าเชื่อถือของข้อมูล
อัปเดตบ่อยแค่ไหน?
สแนปช็อตแลดเดอร์และเกมใหม่ถูกเก็บทุกวัน ตารางคำนวณใหม่ทุกชั่วโมง แต่ละตารางแสดงเวลาอัปเดต
ทำไมต้อง 30 เกมพอดี?
ทุกคนมีขนาดตัวอย่างเท่ากัน อัตราชนะสองค่าจึงเปรียบเทียบกันได้โดยตรงไม่ต้องใช้ค่าความเชื่อมั่น ค่าคลาดเคลื่อนมาตรฐานของ 30 เกมคือ 9.1 จุด: พอจะแยกคะแนนเท่ากันได้ แต่ไม่พอจะพลิกช่องว่าง LP ที่แท้จริง
นี่คือระบบทดแทนแรงค์ของ Riot หรือไม่?
ไม่ใช่ ลำดับในตารางอิงจาก LP อย่างเป็นทางการของ Riot อัตราชนะใช้แยกคะแนนเท่ากันเท่านั้น ตารางตอบคำถามว่า “ใครเล่นแชมเปี้ยนนี้เก่งที่สุด” ไม่ได้วัดฝีมือรวมใหม่
อัตราชนะต่ำกว่า 50% ถูกตัดออกไหม?
ไม่ ผู้เล่นที่ชนะ 12 จาก 30 ยังติดอันดับ เพียงอยู่ต่ำกว่าคนที่ LP เท่ากันแต่ชนะมากกว่า
ข้อมูลมาจากไหน?
จาก Riot Games API (league-v4 และ match-v5) เก็บและแสดงเฉพาะ Riot ID ปัจจุบัน ไม่มีประวัติชื่อ ไม่มีการค้นหาเกมที่กำลังเล่น

Tiếng Việt English 한국어 日本語 繁體中文 简体中文 Español Português (BR) Français Deutsch Русский Türkçe Bahasa Indonesia