วิธีการใช้ระบบประสบการณ์?


14

ตอนนี้ฉันกำลังเขียนเกมเล็ก ๆ ที่มีพื้นฐานมาจากการได้รับประสบการณ์เมื่อฆ่าศัตรู ตามปกติแต่ละด่านจะต้องได้รับค่าประสบการณ์มากกว่าระดับก่อนหน้านี้และในระดับที่สูงขึ้นการฆ่าศัตรูจะมอบประสบการณ์มากขึ้น

แต่ฉันมีปัญหาในการปรับสมดุลระบบนี้ มีอัลกอริทึมที่สร้างไว้ล่วงหน้าใดบ้างที่ช่วยในการคำนวณว่าเส้นโค้งค่าประสบการณ์ที่จำเป็นสำหรับแต่ละระดับควรมีลักษณะอย่างไร และควรมีประสบการณ์เท่าไหร่ที่ศัตรูโดยเฉลี่ยในระดับที่เฉพาะเจาะจง?


คำตอบ:


14

คุณต้องการเส้นโค้งเลขยกกำลังบางอย่างอาจเป็นดังนี้:

base_xp * (level_to_get ^ factor)

base_xp เป็นค่าคงที่ที่กำหนดจำนวน xp ที่คุณต้องการเพื่อเพิ่มระดับ
level_to_get เป็นระดับที่คุณตั้งเป้า ที่ระดับ 1 นี่จะเป็นระดับ 2
ปัจจัยคือค่าคงที่อีกค่าหนึ่งที่กำหนดว่าคุณต้องการ xp เพิ่มขึ้นเท่าใดสำหรับแต่ละระดับ

มี base_xp 200 และปัจจัยหนึ่งบอกว่า 2 ให้อะไรแบบนี้

ป้อนคำอธิบายรูปภาพที่นี่

โดยที่ base_xp 50 และปัจจัย 2.6 ให้:

ป้อนคำอธิบายรูปภาพที่นี่

วินาทีมีอัตรา xp เริ่มต้นต่ำกว่ามาก แต่คุณต้องการ xp เร็วกว่ามาก

สำหรับ monster xp นี่คือสิ่งที่คุณต้องการทดสอบ ลองใช้ค่าต่าง ๆ คุณต้องการบางสิ่งที่ไม่สูงเกินไป (คุณจะสู้เร็วกว่า) แต่ไม่ต่ำเกินไป (ผู้เล่นไม่ต้องการที่จะบด) คิดว่าศัตรู 'มาตรฐาน' ที่คุณต้องการให้ผู้เล่นฆ่าในระดับ 10-> 11 เป็นอย่างไร


3
คุณอาจต้องการเส้นโค้งที่คมชัดกว่าเส้นโค้งที่นี่ ตัวอย่างเช่นRuneScapeมีเส้นโค้งที่สูงชันเกือบคล้ายกับเส้นโค้งลอการิทึม (พลิก / หมุนแน่นอน) ดูได้ที่นี่ อย่างน้อยในประสบการณ์ส่วนตัวของฉันดูเหมือนว่าจะทำงานได้ดีมากเพื่อให้คุณได้รับรางวัลอย่างรวดเร็วในตอนเริ่มต้นและเมื่อคุณไปถึงระดับที่สูงขึ้นคุณจะถูกปรับเป็น playtimes ที่ยาวนานขึ้นจนกว่าจะผ่านไปไม่กี่ระดับ ทนมัน 99s ค่อนข้างบ่อยแม้จะมีขั้นตอนที่ !! โค้งเพื่อไปที่นั่น
Ricket

แน่นอนฉันจะบอกว่าโค้งที่นี่จะตื้น
The Duck Communist

โปรดไม่มีประสบการณ์ เส้นโค้ง =, (- การปรับระดับใช้เวลานานมากและยิ่งเข้าใกล้เป้าหมายของคุณมากขึ้นเท่านั้นโปรด plssss no = (
Dave O.

เส้นตรงไม่ทำงาน หากคุณต้องการ 1,000xp ต่อระดับมากขึ้นเมื่อคุณแข็งแกร่งขึ้นคุณจะพบว่าใช้เวลาน้อยลงในการปรับระดับ
The Duck Communist

1
ฟังก์ชั่นที่แสดง ( base_xp * (level_to_get ^ factor)) เป็นฟังก์ชั่นสมการกำลังสองเนื่องจากlevel_to_getเป็นค่า x ไม่ใช่ปัจจัยและหากฉันไม่เข้าใจผิดbase_xpควรเพิ่มและไม่คูณเพื่อแปลฟังก์ชันขึ้นหรือไม่ ขออภัยหากนี่เป็นเพียงฉันที่พิถีพิถันเกี่ยวกับความหมายฉันเพียงต้องการให้แน่ใจว่าสิ่งนี้เพราะการสร้างแผนภูมิฟังก์ชั่นนั้นไม่ได้ให้เลขชี้กำลังแบบเก่าแก่คุณเลย
chockie

6

ไม่มีคำตอบที่ถูกต้องสำหรับคำถามที่ว่าจะต้องให้ประสบการณ์กับศัตรูมากแค่ไหน มันอาจช่วยให้คิดถึงเวลาการเล่นที่ต้องใช้ในการเลเวลอัพสำหรับแต่ละเลเวลและจากนั้นกำหนดประสบการณ์ต่อระดับและประสบการณ์โดยเฉลี่ยต่อศัตรู

บทความนี้เป็นรายละเอียดของคณิตศาสตร์ leveling ใน Lineage II http://web.archive.org/web/20100303164314/http://www.tstonramp.com/~mykel/lineage/


1
ฉันไม่สามารถโหวตคำตอบนี้ได้มากพอ ตัวอย่างเช่นไม่มีเหตุผลว่าทำไมต้องมีเส้นโค้งจริงสำหรับจำนวน exp ที่แตกต่างกันต่อระดับเพราะคุณสามารถลดจำนวนประสบการณ์ศัตรูที่ให้คุณเทียบกับระดับของคุณสำหรับเอฟเฟกต์เดียวกัน แต่ตัวเลขที่จัดการได้มากขึ้น . ไม่มีสิ่งใดมาแทนที่ความเข้าใจระบบการต่อสู้ของคุณและวิธีที่คุณต้องการให้เกมเล่นแล้วปรับระบบประสบการณ์ให้เหมาะสม
Kylotan

4
ลิงก์นี้ไม่มีอยู่ นี่คือลิงค์เก่าที่ใช้งานได้: web.archive.org/web/20100303164314/http://www.tstonramp.com/…
Daniel Kaplan

นี่คือเหตุผลที่เราไม่เชื่อมโยงไปยังหน้า; คุณไม่สามารถรับประกันได้ว่าพวกเขาจะมีอยู่เสมอ ฉันลงคะแนนและตั้งค่าสถานะคำตอบของคุณ
Krythic

@ Krythic ฉันอัพเดทลิงค์
CiscoIPPhone
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.