สูตรคำนวณคะแนนลีกทำงานอย่างไร?
ทุกลีกจะมอบคะแนนให้ผู้เล่นสำหรับทัวร์นาเมนต์แต่ละรายการที่พวกเขาเล่น โดยใช้ระบบการให้คะแนนที่คุณเลือกเมื่อสร้างหรือแก้ไขลีก:
- ลอการิทึม
- รากที่สอง
- เชิงเส้น
- คงที่ (คุณป้อนคะแนนที่แน่นอนสำหรับแต่ละอันดั บ)
- กำหนดเอง (เขียนสูตรของคุณเอง)
ตัวแปรสูตรกำหนดเอง
สูตรกำหนดเองจะคำนวณครั้งเดียวสำหรับผู้เล่นแต่ละคนเมื่อจบทัวร์นาเมนต์ ตัวแปรบางตัวอธิบายเกี่ยวกับทัวร์นาเมนต์ ดังนั้นจึงมีค่าเท่ากันสำหรับทุกคนในนั้น และบางตัวอธิบายเกี่ยวกับผู้เล่นที่กำลังถูกให้คะแนน การรู้ว่าตัวไหนเป็นอะไรคือทักษะหลักในการเขียนสูตร
เกี่ยวกับทัวร์นาเมนต์ เหมือนกันสำหรับทุกคน:
| p | จำนวนผู้เล่น |
| n | จำนวนรายการ (รวมรีเอนทรี) |
| b | ค่าเข้า |
| z | กองรางวัล |
| m | จำนวนอันดับที่ได้รางวัล |
| t | รูปแบบทัวร์นาเมนต์ (1 มาตรฐาน, 2 แบ่ง, 3 ชูตเอาต์, 4 มิสเทอรีบาวน์ตี้) |
เกี่ยวกับผู้เล่นที่กำลังถูกให้คะแนน:
| f | อันดับที่จบ |
| c | สิ่งที่พวกเขาใช้ไป (ค่าเข้าบวกรีบายและแอดออนของตัวเอง) |
| k | น็อคเอาต์ที่พวกเขาทำได้ |
| r | รีบายที่พวกเขาใช้ |
| a | แอดออนที่พวกเขาใช้ |
| x | บูเล็ตที่พวกเขาใช้ (ค่าเข้าทั้งหมดของพวกเขา) |
| w | เงินที่ชนะ (จำนวนเงินที่พวกเขาชนะ) |
| d | รอบจากรอบชิงในชูตเอาต์ (1 คือรอบชิงชนะเลิศ) |
ตัวอย่างเช่น สูตรนี้ให้ผู้เล่นแต่ละคนได้หนึ่งคะแนนสำหรับทุกคู่แข่งที่พวกเขาอยู่รอดได้นานกว่า โบนัส 2 คะแนนสำหรับแต่ละน็อคเอาต์ และหักหนึ่งคะแนนสำหรับแต่ละรีบาย:
(p - f + 1) + (2 * k) - r
ขั้นสูง: การเขียนสูตรของคุณเอง
นอกเหนือจากการคำนวณ สัญกรณ์สองชนิดทำงานส่วนใหญ่ในสูตรลีกจริง: เงื่อนไขและตารางคะแนน คุณยังสามารถใช้ sqrt, log, log10, exp, pow, round, floor, fix, abs, min และ max และ ^ สำหรับยกกำลังได้
เงื่อนไขด้วย ? :
เงื่อนไขอ่านเป็น การทดสอบ ? ค่าหากจริง : ค่าหากเป็นอย่างอื่น
f == 1 ? 50 : 10
นั่นมอบ 50 คะแนนให้ผู้ชนะและ 10 ให้คนอื่นทุกคน สังเกตเครื่องหมาย == สองตัวสำหรับ "เท่ากับ" คุณยังมี <, <=, >, >= และ != และคุณสามารถเชื่อมการทดสอบด้วย and และ or:
p >= 20 and f <= 3 ? 10 : 0
เงื่อนไขสามารถเชื่อมต่อกันได้ ซึ่งเป็นวิธีที่คลับเขียนกฎที่แตกต่างกันสำหรับแต่ละอันดับ แต่ละ : ส่งต่อไปยังการทดสอบถัดไป:
f == 1 ? 30 : f == 2 ? 20 : f == 3 ? 15 : 5
ตารางคะแนนด้วย [ ... ][f]
แทนที่จะเชื่อมเงื่อนไข คุณสามารถแสดงรายการคะแนนตามลำดับและเลือกอันที่เหมาะกับอันดับที่จบของผู้เล่น:
[100, 85, 70][f]
รายการถูกอ่านตามตำแหน่ง: อันดั บหนึ่งได้ 100, อันดับสอง 85, อันดับสาม 70 ตำแหน่งเริ่มต้นที่ 1 ดังนั้น f จึงสอดคล้องกับรายการโดยไม่ต้องปรับ
ปกป้องตารางคะแนนด้วยเงื่อนไขเสมอ หากผู้เล่นจบต่ำกว่าจุดสิ้นสุดของรายการ สูตรจะล้มเหลวและผู้เล่นนั้นจะไม่ได้คะแนนเลย รายการที่มีสามรายการต้องการ
f < 4:
f < 4 ? [100, 85, 70][f] : 0ใช้ค่า
:เพื่อกำหนดพื้นขั้นต่ำสำหรับคนอื่นทุกคน ตัวอย่างเช่น: 5เพื่อให้ห้าคะแนนสำหรับการมาร่วม
ระวังวงเล็บ
การคูณและการบวกจะถูกนำไปใช้ก่อนการเปรียบเทียบ ซึ่งเปลี่ยนสิ่งที่สูตรทดสอบอย่างเงียบๆ เขียนโดยไม่มีวงเล็บ:
30 * k + f < p / 3 + 1 ? 100 : 1
การทดสอบกลายเป็น "ค่า 30 * k + f น้อยกว่า p / 3 + 1 หรือไม่" ไม่ใช่ "ค่า f อยู่ในหนึ่งในสามบนสุดหรือไม่" ลีกสามารถดำเนินการทั้งฤดูกาลด้วยกฎที่ผิดได้ ห่อเงื่อนไขหรือเงื่ อนไขทั้งหมดด้วยวงเล็บ:
30 * k + (f < p / 3 + 1 ? 100 : 1)
สูตรที่คลับใช้จริง
เหล่านี้เป็นรูปแบบจริงจากลีกที่ทำงานบน Blind Valet ทำให้ง่ายขึ้นเฉพาะในกรณีที่รายการอันดับของคลับยาวมาก
| สิ่งที่คลับต้องการ | สูตร |
|---|---|
| หนึ่งคะแนนสำหรับการมาร่วม ไม่มีอะไรอื่น | 1 |
| ลีดเดอร์บอร์ดของการชนะเท่านั้น | f == 1 ? 1 : 0 |
| น็อคเอาต์ บวกหนึ่งคะแนนสำหรับการชนะ | k + (f == 1 ? 1 : 0) |
| หนึ่งคะแนนต่อคู่แข่งที่อยู่รอดได้นานกว่า พร้อมโบนัสสำหรับอันดับบนโพเดียม | p - f + 1 + (f < 4 ? [4, 2, 1][f] : 0) |
| ตารางคงที่ แต่คนอื่นทุกคนยังคงได้คะแนน | f < 10 ? [1500, 1200, 900, 700, 600, 500, 400, 300, 200][f] : 100 |
| เดิมพันที่สูงกว่าคุ้มค่ามากกว่า ทุกรีบายหักคะแนน | log(p + 1) / f * 10 + b - c / 4 |
| คะแนนปรับตามขนาดของกองรางวัล | sqrt(p + 1) / f * z / 500 |
| เฉพาะหนึ่งในสามบนสุดเท่านั้นที่ได้คะแนน ปรับตามขนาดของฟิลด์ | 30 * k + (f < p / 3 + 1 ? sqrt(p / 10) * [120, 90, 70, 60, 50, 45, 40, 30, 25, 20][f] : 1) |
| แต่ละอันดับเป็นเปอร์เซ็นต์ของฐานที่เติบโตตามฟิลด์ | f == 1 ? round(600 + p * 10) : f == 2 ? round((600 + p * 10) * 0.82) : round((600 + p * 10) * 0.74) |
ตัวอย่างเดิมพันแสดงให้เห็นว่าทำไมสองกลุ่มจึงสำคัญ มันใช้ b และ c ซึ่งดูคล้ายกันแต่อยู่คนละด้าน: การเพิ่ม b ยกระดับคะแนนทุกคะแนนในทัวร์นาเมนต์ค่าเข้าที่สูงกว่า เพราะค่าเข้าเป็นของทัวร์นาเมนต์ ในขณะที่การลบ c เอาคืนส่วนแบ่งของสิ่งที่ผู้เล่นแต่ละคนใช้ไปเอง ผู้เล่นที่รีบายสองครั้งจะจบด้วยคะแนนน้อยกว่าผู้เล่นที่อยู่อันดับเดียวกันด้วยบูเล็ตเดียว
ตรวจสอบสูตรของคุณ
การตั้งค่าลีกแสดงตัวอย่างคะแนนสำหรับทุกอันดับที่จบในขณะที่คุณพิมพ์ ดังนั้นคุณจะเห็นรูปแบบของการจ่ายก่อนที่คุณจะบันทึก หากตัวอย่างว่างเปล่า สูตรยังไม่ถูกต้อง: ตรวจสอบวงเล็บที่ขาดหายไป หรือตารางคะแนนที่อันดับต่ำสามารถวิ่งออกจากจุดสิ้นสุดได้