ในหลาย ๆ เกมคุณจะเพิ่มระดับเมื่อคุณไปถึงคะแนนที่กำหนดและระดับที่ใหม่กว่านั้นจะเข้าถึงได้ยากกว่าตอนเริ่มต้น
ฉันสงสัยว่ามันเป็นฟังก์ชันเลขชี้กำลังจำนวนหนึ่งที่ใช้ใน WoW
ไม่มีใครรู้ว่าฟังก์ชั่นเลขชี้กำลังที่ดีสำหรับวัตถุประสงค์นี้หรือไม่?
ในหลาย ๆ เกมคุณจะเพิ่มระดับเมื่อคุณไปถึงคะแนนที่กำหนดและระดับที่ใหม่กว่านั้นจะเข้าถึงได้ยากกว่าตอนเริ่มต้น
ฉันสงสัยว่ามันเป็นฟังก์ชันเลขชี้กำลังจำนวนหนึ่งที่ใช้ใน WoW
ไม่มีใครรู้ว่าฟังก์ชั่นเลขชี้กำลังที่ดีสำหรับวัตถุประสงค์นี้หรือไม่?
คำตอบ:
ไม่มีมาตรฐานและไม่มีเหตุผลอะไรที่จะต้องมี ผู้คนดูเหมือนจะชอบการเติบโตแบบเอกซ์โปเนนเชียลเพราะมันทำให้พวกเขารู้สึกว่าพวกเขามีพลังมากขึ้นและต้องเผชิญกับความท้าทายที่มากขึ้นในแต่ละครั้ง แต่ในความเป็นจริงมันก็เป็นจริงถ้า . หากค่าประสบการณ์ต่อชัยชนะเพิ่มขึ้นเช่นเดียวกับค่าประสบการณ์ต่อระดับจะมีจุดเล็ก ๆ น้อย ๆ ที่เพิ่มขึ้นซึ่งทั้งสองอาจอยู่นิ่ง ๆ
นอกจากนี้ความหมายก็คือคุณไม่สามารถเลือกฟังก์ชั่นว่าคุณต้องการให้เส้นโค้งประสบการณ์ของคุณผ่านไปได้อย่างไรโดยไม่รู้ว่าคุณต้องการให้ประสบการณ์ของคุณเพิ่มขึ้นอย่างไร และนั่นคือการตัดสินใจออกแบบเกมตามประเภทของประสบการณ์ที่คุณต้องการไม่ใช่สิ่งที่เราสามารถมอบให้คุณได้
ยังคงที่จะตอบคำถามของคุณ: ประเภทของฟังก์ชั่นที่คุณเคยเห็นที่อื่นเป็นอะไรแบบนี้, พหุนามเล็กน้อยกับสเกลแฟกเตอร์:
threshold_for_next_level = x * current_level y
ค่าทั่วไปอาจเป็น x = 1,000, y = 1.5 เช่น:
level 1 = 1000
level 2 = 2828
level 3 = 5196
...
level 10 = 31623
etc.
ถ้าคุณต้องการให้ความชันเป็นทางชันคุณจะเพิ่ม y ถ้าคุณต้องการจำนวนที่มากกว่าคุณเพิ่ม x
คุณอาจต้องการที่จะมีตัวเลขกลมซึ่งในกรณีนี้เพียงปัดเศษผลลัพธ์ให้ได้ถึง 2 หรือ 3 หลักสำคัญหรือพันที่ใกล้ที่สุดไม่ว่าคุณจะชอบอะไร
เพียงจำไว้ว่าค่าเหล่านี้ไม่มีความหมายในการแยก หากต้องการประสบการณ์ 15000 ในการเปลี่ยนจากระดับ 15 เป็นระดับ 16 คุณต้องตรวจสอบให้แน่ใจว่าการออกแบบเกมของคุณทำให้ใช้งานได้จริงสำหรับตัวละครระดับ 15 เพื่อรับคะแนนประสบการณ์ 15000 คะแนนในระหว่างการเล่นปกติ ไม่มีจุดใดที่จะทำให้โค้งงอหลังจากการทดสอบเพราะโดยทั่วไปใช้เวลานานเกินไป - คุณต้องเริ่มต้นด้วยเส้นโค้งที่ตรงกับรางวัลที่เกมของคุณมอบให้ในรูปแบบที่เหมาะกับการออกแบบที่คุณต้องการ
Moria / Angband (และสปินดาวน์ทั้งหมดรวมถึง - debatably - Diablo) ใช้ระบบของพวกเขาในการจับคู่มอนสเตอร์ระดับกับระดับผู้เล่นเพื่อดูสิ่งที่คุณได้รับด้วยความต้องการ XP-per-level ที่สูงขึ้นกว่านั้น
ในDiabloมีสัตว์ประหลาดในระดับที่เหมาะสมที่คุณสามารถฆ่าได้ภายใน 5 ระดับที่เป็นบวกและลบ ดูเหมือนว่าจะเป็นแบบนี้ (ขอโทษถ้าไม่ถูกต้องแฟน Diablo):
XP Gain = monsterBaseXP * (5-|(characterLevel-monsterLevel)|) / 5
(where result cannot drop below 0)
ตัวอย่างสำหรับ characterLevel 16: เลเวลของ Monster A: 16. ได้รับ 100% ของฐานมอนสเตอร์ XP ระดับของ Monster B: 13. ได้รับ 40% ของฐานสัตว์ประหลาด XP ระดับของ Monster C: 20 ได้รับ 20% จากฐานสัตว์ประหลาด XP ระดับของ Monster D: 23 ได้รับ 0% ของ XP ฐานมอนสเตอร์
ในAngband (แบบที่ฉันชอบ) มันเป็นแบบนี้:
XP Gain = monsterBaseXP * monsterLevel / characterLevel.
ดังนั้นหากคุณฆ่ามอนสเตอร์ระดับ 50 เมื่อคุณเป็นเลเวล 5 คุณจะได้รับ 10x XP ที่ตัวละครเลเวล 50 ที่ฆ่ามอนสเตอร์ตัวเดียวกันนั้นจะได้รับ ฉันชอบสิ่งนี้มันมีความเสี่ยงสูงและรางวัลสูง ฉันได้สูญเสียตัวละครหลายพันตัวไปแล้วใน Angband สำหรับเรื่องนี้ แต่คนที่สร้างมันขึ้นมาพวกเขาเป็นคนในตำนาน ฉันคิดว่าฉันเคยได้รับเลเวล 29 ทันทีจากเลเวล 1;) เช่นเดียวกันตัวละครเลเวล 50 ที่ฆ่ามอนสเตอร์ระดับ 5 จะได้รับ XP ของตัวละครเลเวล 1 / 10th ของตัวละครที่จะได้รับจากการฆ่ามอนสเตอร์ตัวนั้น ยิ่งกว่านั้นเพราะ XP พื้นฐานยังเพิ่มขึ้นนั่นหมายความว่าการฆ่าสัตว์ประหลาดในระดับต่ำยังคงให้รางวัลแก่คุณได้บ้าง แต่ลงไปไกลเกินไปและไร้จุดหมายอย่างที่สุด
ในทั้งสองเกมพวกเขายังใช้ตัวคูณใน XP ที่ต้องการ (ในระดับที่เพิ่มขึ้น) อย่างไรก็ตามและอัตราส่วนระหว่างสิ่งนี้กับมอนสเตอร์ระดับ XP ที่ดีที่สุดที่ได้รับจะค่อยๆสูงขึ้นเรื่อย ๆ
รูปแบบที่ง่ายที่สุดของความคิดนี้คือทำสิ่งต่อไปนี้ ตัดสินใจว่าคุณมีมอนสเตอร์ระดับเท่ากันเท่าไรคุณจะต้องฆ่าแต่ละด่านให้ได้ระดับ สมมติว่า 100 - โดยไม่คำนึงถึงระดับของคุณ พูดได้ว่าหากผู้เล่นฆ่ามอนสเตอร์ที่มีระดับเท่ากันกับตัวเองเธอจะได้รับ 1XP
ใช้สูตรที่คล้ายกับ Angband เพื่อให้รางวัลเพิ่มขึ้น & ลดลงตามระดับของสัตว์ประหลาดตารางปรับระดับของคุณเป็นแบบเชิงเส้น:
1: 100xp
2: 200xp
3: 300xp
... และต่อไป ฉันคิดว่านี่เป็นจุดกระโดดที่ง่ายที่สุด - บิดตามความเหมาะสมรวมถึงสัตว์ประหลาดฐาน XP, เลเวลการตัดเลเวลและอื่น ๆ ตามความพอใจของคุณ