ไปยังรายการบทความ

อัปเดตความคงที่ของเกมเพลย์ใน VALORANT 2

แชร์:

สวัสดีอีกครั้ง! เราคือทีมเทคโนโลยีเกมเพลย์ของเกม VALORANT และเราจะมามอบข้อมูลในพาร์ทที่สองของสิ่งที่เราค้นพบจากการตรวจสอบและสิ่งที่เราได้ทำในส่วนของความคงที่ของเกมเพลย์ให้กับคุณ

หากคุณต้องการจะเตือนความจำในส่วนของภาพรวมโดยทั่วไปของสิ่งที่เราได้ยินมา สามารถเข้าไปดูได้ที่โพสก่อนหน้านี้ของเมื่อเดือนที่แล้ว เราได้พูดครอบคลุมในส่วนของธีมต่าง ๆ โดยทั่วไปที่เราได้ยินมาจากผู้เล่น ภาพรวมของส่วนที่เราเจาะรายละเอียดลึกลงไป (Latency การแก้ไขผลลัพธ์ของระบบเกม และประสิทธิภาพการเล่นของผู้เล่นที่มี Ping สูง)

สำหรับในโพสที่ผ่านมาที่ได้ครอบคลุมเนื้อหาส่วนใหญ่เกี่ยวกับ “สิ่งที่พบ” และ “เหตุผล” ไป ในวันนี้ เราต้องการที่จะพูดถึงรายละเอียดเกี่ยวกับหนึ่งในส่วนหลักที่เราได้พัฒนามา: Latency และบัฟเฟอร์ เราจะมาแชร์เกี่ยวกับความสำคัญของ Latency และบัฟเฟอร์ที่มีส่วนเกี่ยวข้องกับ VALORANT ข้อมูลเชิงลึกในการตรวจสอบของเรา การแก้ไขและการพัฒนาที่เราได้ทำมา รวมทั้งการจัดการในระยะยาวที่เรากำลังทำอยู่

นี่จะเป็นสรุปสั้น ๆ ของสิ่งที่เราจะเพิ่มเข้ามาในตอนปล่อยตัวแพตช์ 4.10

  • เราได้พบและแก้ไขปัญหาบางส่วนที่อาจเกิดขึ้นจากความไม่เสถียรของเครือข่ายเป็นเวลาสั้น ๆ เฟรมเรทของไคลเอนต์ที่ต่ำ หรือความแปรปรวนของเครือข่ายสูงในช่วงระยะเวลาหนึ่ง
    • สิ่งเหล่านั้นจะสามารถทำให้ผู้เล่นรู้สึกถึงการประมวลผลข้อมูลบนเซิร์ฟเวอร์ที่มีการดีเลย์หรือการเคลื่อนไหวของศัตรูบนหน้าจอที่มีการดีเลย์ปน ๆ กัน
  • เราจะเพิ่มการเปลี่ยนแปลงเข้ามาในแพตช์ 4.10 ที่จะช่วยเพิ่มประสิทธิภาพการทำงานของบัฟเฟอร์ของเครือข่ายเมื่อเกิดปัญหาเหล่านี้ขึ้น และจะสร้างข้อมูลที่ผู้เล่นสามารถดูเพื่อตรวจสอบเบื้องหลังในส่วนนี้
  • การเปลี่ยนแปลงเหล่านี้จะช่วยแก้ต้นเหตุหลักของปัญหาในส่วนของความรู้สึกถึง Latency ของเครือข่ายและเวลาในการตอบสนองที่ไม่เสถียรในแต่ละเกมที่เราพบ แต่เราก็จะยังคงตรวจสอบและสร้างการพัฒนาขึ้นต่อไป
    • หากคุณยังคงพบเจอปัญหาต่าง ๆ ในเกมของคุณ เราหวังว่ากราฟใหม่ ๆ จะช่วยวัดและประเมินสิ่งที่คุณเผชิญอยู่ได้
  • โปรดส่งการรายงานให้กับเราพร้อมกับวิดีโอ หากเป็นไปได้ ผ่านทางช่องทางฝ่ายช่วยเหลือผู้เล่น ในส่วนของปัญหาที่คุณได้พบต่อไปด้วย

LATENCY และบัฟเฟอร์

ในโพสก่อนหน้าของเรา เราได้บอกไปว่าเรายังคงตรวจสอบ Latency และประสิทธิภาพการทำงานของบัฟเฟอร์ของเครือข่ายใน VALORANT อยู่ ตั้งแต่นั้นมา เราก็ได้ข้อสรุปของการตรวจสอบนั้นออกมาพร้อมทั้งจะมีการเพิ่มการแก้ไขสำหรับปัญหาบางส่วนที่เราพบไว้ในแพตช์ 4.10

ก่อนที่เราจะมาเจาะลึกลงไป ข้อมูลทั่วไปเกี่ยวกับความหมายเมื่อเราพูดถึง “บัฟเฟอร์ของเครือข่าย” หรือ “ดีเลย์จากการประมวลผล” นั้นอาจจะช่วยให้คุณเข้าใจได้ง่ายขึ้น

ในเกมออนไลน์อย่าง VALORANT นั้น คุณจะส่งอินพุตของคุณไปยังเซิร์ฟเวอร์เพื่อทำการประมวลผล เนื่องจากมุมมองในเกมของเซิร์ฟเวอร์นั้นเป็นสิ่งที่แสดงผลออกมาอย่างถูกต้อง ทุกครั้งที่เซิร์ฟเวอร์อัปเดตการคำนวณระบบของเกม (ที่จะเกิดขึ้น 128 ครั้งต่อวินาที) อินพุตจากไคลเอนต์เกมของคุณต้องมีการแสดงผลออกมาสำหรับเอเจนท์ของคุณ หากอินพุตของคุณเกิดการดีเลย์ในขณะที่ส่งผ่านทางอินเทอร์เน็ต ตัวเซิร์ฟเวอร์จะไม่รอจนกว่าอินพุตเหล่านั้นจะส่งถึงและต้องจำลองคำสั่งออกมาสำหรับคุณ

คำสั่งที่เซิร์ฟเวอร์คาดการณ์ไว้นั้นมักจะไม่ตรงกับผลที่กำลังส่งผ่านมาอยู่ ความขัดแย้งนั้นทำให้เกิดการแก้ไขผลลัพธ์ในคำสั่งที่จะปรากฏบนไคลเอนต์ด้วยการวาร์ปเล็กน้อยไปยังที่ที่ถูกต้อง การเกิดการแก้ไขผลลัพธ์เป็นจำนวนมากนั้นจะทำให้เกมมีความ “ไม่ราบรื่น” และไม่สามารถเล่นได้เลยหากมีเปอร์เซ็นต์การเกิดที่สูง

วิธีที่จะหลีกเลี่ยงคำสั่งที่เซิร์ฟเวอร์คาดการณ์ไว้คือ การให้เซิร์ฟเวอร์คงคำสั่งบางส่วนค้างไว้และแสดงผลออกมาหลังจากดีเลย์เล็กน้อย สิ่งนี้เป็นกลยุทธ์ทั่วไปที่ใช้เมื่อพยายามสตรีมข้อมูลต่าง ๆ ผ่านทางอินเทอร์เน็ตและช่วยให้มั่นใจว่าเซิร์ฟเวอร์สามารถแสดงผลคำสั่งสำหรับเอเจนท์ของคุณในแต่ละเฟรมออกมาได้อย่างราบรื่น อย่างไรก็ตามการบัฟเฟอร์นี้จะเพิ่มดีเลย์ก่อนที่เซิร์ฟเวอร์จะประมวลผลคำสั่งของคุณ และบัฟเฟอร์ที่มากเกินไปจะทำให้รู้สึกเหมือนว่าคุณกำลังเล่นในค่า Ping ที่สูงกว่าเวลาตอบสนองของเครือข่าย (RTT ของเครือข่าย) ที่แสดงให้เห็นอย่างมาก

การเพิ่มบัฟเฟอร์ในปริมาณที่เหมาะสมนั้นเป็นการรักษาสมดุลที่สำคัญมาก หากมีบัฟเฟอร์ที่น้อยเกินไป คุณจะต้องพบเจอกับคำสั่งที่เซิร์ฟเวอร์คาดการณ์และการแก้ไขผลลัพธ์ของไคลเอนต์ที่มาก และหากมีบัฟเฟอร์ที่มากเกินไป คุณก็จะต้องเจอกับ Latency ที่สูง และเจอปัญหาต่าง ๆ อย่างความได้เปรียบของฝ่ายบุกก่อน หากเราปรับสมดุลให้เหมาะสมได้ ก็จะทำให้ VALORANT มีทั้งความราบรื่นและการตอบสนองที่ดี

เช่นเดียวกับการที่เซิร์ฟเวอร์บัฟเฟอร์คำสั่งของคุณค้างไว้ก่อนที่จะปล่อยมันออกมา ไคลเอนต์ของคุณก็ต้องบัฟเฟอร์ข้อมูลเกี่ยวกับการเคลื่อนไหวของศัตรูไว้ก่อนที่จะแสดงผลขึ้นมาบนหน้าจอของคุณเช่นกัน สิ่งนี้จะช่วยป้องกันไม่ให้ผู้เล่นฝั่งศัตรูวาร์ปไปมาเมื่อการเชื่อมต่อของคุณเกิดความไม่เสถียรขึ้น ซึ่งจะช่วยให้คุณติดตามการเคลื่อนไหวของผู้เล่นคนอื่น ๆ ได้ง่ายและราบรื่น

การสำรวจ

สำหรับการสำรวจของเรา เราต้องการเจาะลึกในส่วนของประสิทธิภาพการทำงานของบัฟเฟอร์ทั้งสองให้มากยิ่งขึ้นเราได้สร้างเครื่องมือสำหรับแก้ไขบั๊กเพื่อติดตามว่าคำสั่งต่าง ๆ ใช้เวลาในการส่งผ่านบัฟเฟอร์นานเท่าไหร่ ด้วยการใช้เครื่องมือนี้ เราได้เริ่มการทดลองเพื่อที่จะดูว่ามันจะมีสถานการณ์ที่ทำให้บัฟเฟอร์ของการเคลื่อนที่เกิดความคลาดเคลื่อนในรูปแบบต่าง ๆ ไหม

ปัญหาหนึ่งจากการรายงานของผู้เล่นที่เราได้พบในช่วงการสำรวจครั้งนี้คือ ดีเลย์จากการประมวลผลของกระสุนที่เพิ่มขึ้นเมื่อกด Alt-Tab การตั้งค่าเกมที่มี FPS แบบจำกัดให้อยู่ในพื้นหลังนั้นจะทำให้เกิดปัญหาด้านประสิทธิภาพของตัวไคลเอนต์ที่เพิ่มขึ้นการจากการจำกัดเฟรมเรท หลังจากที่กลับมาสู่ตัวเกม FPS ที่สูงขึ้นอย่างฉับพลันนั้นสามารถทำให้คิวคำสั่งของเซิร์ฟเวอร์นั้นขยายใหญ่ขึ้นในส่วนของไคลเอนต์ สิ่งนี้จะทำให้เหมือนกับกำลังเล่นในค่า Ping ที่สูง โดยที่จะไม่ได้แสดงให้เห็นในกราฟ RTT ของเครือข่ายในตอนนั้น

อีกสถานการณ์ที่จะทำให้เกิดผลเช่นเดียวกันที่เราได้พบคือ การเปลี่ยนแปลงของค่า Ping ในช่วงเวลาสั้น ๆ บนตัวไคลเอนต์ การเปลี่ยนแปลงค่า Ping ที่ดีดขึ้นกลับลงมานั้นอาจทำให้คิวคำสั่งของเซิร์ฟเวอร์สำหรับไคลเอนต์นั้นเพิ่มมากขึ้น ส่วนการเปลี่ยนแปลงค่า Ping ที่ตกลงกลับขึ้นมาอาจทำให้คิวคำสั่งของไคลเอนต์สำหรับผู้เล่นนั้นเพิ่มมากขึ้น ไม่ว่าจะเป็นรูปแบบใด คำสั่งในคิวที่เพิ่มมากขึ้นนั้นจะทำให้เกิด Latency ที่ชัดเจนมากขึ้นจนกว่าคิวจะกลับมาเป็นปกติ

ในสถานการณ์ทั้งสองนี้ สุดท้ายแล้ว ระบบในปัจจุบันจะแก้ไขปัญหาและทำให้บัฟเฟอร์กลับเป็นปกติได้ แต่เราพบว่ามันอาจใช้เวลาในการกู้คืนได้อย่างสมบูรณ์นานกว่าที่คิดไว้ ซึ่งจะทำให้ต้องพบกับ Latency ที่เพิ่มขึ้นนานขึ้นไปอีก

เราได้พัฒนาการแก้ไขใหม่ ๆ ขึ้นมาสองรูปแบบที่จะช่วยบรรเทาปัญหาจากสภาวะบัฟเฟอร์ที่สูงเกินไปได้เร็วขึ้นเพื่อที่คุณจะต้องพบกับ Latency ที่เพิ่มขึ้นเพียงช่วงเวลาสั้นในตอนที่มันจำเป็นสำหรับการทำให้ประสบการณ์มีความราบรื่น

การแก้ไขและการพัฒนา

การแก้ไขส่วนแรกที่เราได้พัฒนาจะช่วยปรับในส่วนของเวลาที่เราใช้เพื่อให้บัฟเฟอร์กลับมาเป็นปกติเมื่อเกิดการสำรองข้อมูล เราได้เพิ่มความสามารถสำหรับระบบการประมวลผลคำสั่งให้มากขึ้นยิ่งขึ้นเมื่อขนาดของบัฟเฟอร์เพิ่มขึ้น

ด้วยการเปลี่ยนแปลงนี้ ข้อมูลสำรองของคำสั่งที่ผ่านบัฟเฟอร์มานั้นจะถูกประมวลผลได้เร็วขึ้นกว่าเมื่อก่อน อย่างเช่น ก่อนจะมีการเปลี่ยนแปลงนี้ หากมีคำสั่งที่เพิ่มขึ้นมาห้าชุดอยู่ในบัฟเฟอร์ ส่วนนี้อาจจะต้องใช้เวลาถึงห้าวินาทีในการปรับให้เป็นปกติ แต่ด้วยการพัฒนารูปแบบใหม่ มันจะใช้เวลาปรับน้อยกว่าหนึ่งวินาทีเลย หมายความว่าผู้เล่นที่ประสบกับปัญหาที่ส่งผลกระทบกับเกมอย่างเช่นอาการกระตุก และการเปลี่ยนแปลงของเครือข่าย จะได้รับผลกระทบในช่วงเวลาที่สั้นลงในส่วนของ Latency จากการบัฟเฟอร์ที่เพิ่มขึ้น

แต่อย่างไรก็ตาม ในหลาย ๆ กรณีที่ข้อมูลสำรองของคำสั่งที่ผ่านบัฟเฟอร์มานั้นขยายใหญ่ขึ้นมากจนการประมวลผลคำสั่งสำหรับสิ่งที่ต้องจัดการนั้นต้องใช้เวลาถึงหนึ่งวินาที ถึงแม้ว่าจะมีการแก้ไขข้างต้นแล้วก็ตาม เมื่อเกิดเหตุการณ์นี้ขึ้น เราจะบังคับรีสตาร์ทบัฟเฟอร์ และทิ้งคำสั่งต่าง ๆ ทั้งหมดยกเว้นคำสั่งล่าสุดไป การทำเช่นนี้ช่วยนำ Latency ที่เพิ่มขึ้นมาออกไปทันที แต่ก็จะเป็นการการันตีว่าจะเกิดการแก้ไขคำสั่งขึ้นด้วย

เราพบว่าในกรณีของอีเวนต์ที่ส่งผลกระทบอย่างรุนแรง เช่น ปัญหาต่อเฟรมเรทหรือการเปลี่ยนแปลงของเครือข่ายที่รุนแรง การเกิดการแก้ไขคำสั่งนั้นเป็นทางเลือกที่ดีกว่าแม้ว่าจะต้องใช้เวลาสองสามวินาทีเพื่อให้การประมวลผลคำสั่งได้ปรับขนาดบัฟเฟอร์ใหม่ ข้อแลกเปลี่ยนของการเกิดการแก้ไขในกรณีนี้นั้นมักจะส่งผลกระทบน้อยกว่าเวลาที่ต้องรอในส่วนของ Latency ที่เพิ่มขึ้นที่ผู้เล่นได้ประสบมาก่อนการปรับแก้ไขในครั้งนี้ เหตุการณ์ที่ส่งผลกระทบอย่างรุนแรงหนึ่งที่อาจทำให้คุณต้องประสบกับได้การแก้ไขนี้ คือการกลับเข้าสู่เกมหลังจากที่กด Alt-Tab โดยมีการตั้งค่า FPS พื้นหลังจำกัดไว้ต่ำ การทำเช่นนี้จะทำให้เกิดการเปลี่ยนแปลงของเฟรมเรทอย่างมาก และสามารถทำให้เกิดปัญหากับสถานะของบัฟเฟอร์ที่ควรจะถูกแก้ไขได้อย่างรวดเร็วด้วยการเปลี่ยนแปลงนี้

ปัญหาที่เกี่ยวข้องที่เราพบขณะตรวจสอบการบัฟเฟอร์คือ ผู้เล่นที่มีความแปรปรวนของเครือข่ายที่สูงตลอดเวลาจะมีการเปลี่ยนแปลงระหว่างการบัฟเฟอร์ที่สูงและต่ำอย่างต่อเนื่อง เนื่องจากระบบจะพยายามรักษาสมดุลของ Latency ด้วยจำนวนคำสั่งที่เซิร์ฟเวอร์คาดการณ์ไว้ เรากำลังพัฒนาในส่วนของวิธีการแก้ปัญหาเพื่อปรับปรุงบัฟเฟอร์ให้ดียิ่งขึ้น โดยคำนึงถึงความแปรปรวนของเครือข่ายในระยะยาวด้วย

สิ่งที่เฝ้ารอ

นอกจากการเปลี่ยนแปลงข้างต้น เราได้พบว่าผู้เล่นไม่มีสิ่งที่จะทำให้พวกเขาเห็นภาพดีเลย์จากการประมวลผลคำสั่งในปัจจุบันได้ เนื่องจากกราฟที่เราทำขึ้นมานั้นมีประโยชน์อย่างมากสำหรับการติดตามปัญหาในส่วนนี้ เราจึงได้เพิ่มกราฟแสดงประสิทธิภาพใหม่ที่เรียกว่า RTT ของเครือข่าย + ดีเลย์จากการประมวลผลที่จะบอกเวลาตอบสนองของเครือข่ายพร้อมกับดีเลย์คำสั่งของทั้งเซิร์ฟเวอร์และตัวไคลเอนต์ขึ้นมา

ในครั้งนี้ สิ่งที่วัดค่าออกมาจากกราฟควรจะค่อนข้างเทียบเท่ากับดีเลย์ที่คุณสัมผัสได้ด้วยการ “ทดสอบด้วยมีด” แบบเก่า ค่าจากกราฟนี้ควรจะมีค่ามากกว่า RTT ของเครือข่ายของคุณโดยประมาณ 20–30 มิลลิวินาที ในตอนที่ทุก ๆ อย่างมันดำเนินไปด้วยดี แม้ว่าค่าในอุดมคติอาจมีการเปลี่ยนแปลงขึ้นอยู่กับสภาวะของเครือข่ายและเฟรมเรทในตอนนั้น

ยิ่งไปกว่านั้น เราได้เพิ่มกราฟความแปรปรวน RTT ของเครือข่ายที่จะแสดงให้คุณเห็นถึงการเปลี่ยนแปลงของ RTT ของเครือข่ายจากแต่ละแพ็คเก็ต การเปลี่ยนแปลงค่า Ping และความแปรปรวนของเครือข่ายที่สูงมักก่อให้เกิดการบัฟเฟอร์เพิ่มเติมตามมา ดังนั้นเราจึงได้เพิ่มกราฟนี้เข้ามาเพื่อช่วยในการวินิจฉัยสภาพเครือข่ายอันไม่พึงประสงค์ที่จะไม่แสดงในกราฟปกติของ RTT ของเครือข่ายเนื่องจากมีการเฉลี่ยค่าออกมา

เรายังได้เพิ่มการวัดข้อมูลเพิ่มเติมบางส่วนเพื่อที่เราจะสามารถเก็บข้อมูลในส่วนของดีเลย์จากการประมวลผลที่ผู้เล่นประสบในแต่ละเกม เราจะคอยตรวจสอบข้อมูลนี้อยู่ตลอดเพื่อช่วยจับตามองสถานะของตัวเกมเพื่อตัดสินว่าการแก้ไขต่าง ๆ ข้างต้นนั้นส่งผลอย่างที่เราตั้งเป้าไว้และจะต้องมีการแก้ไขหรือการพัฒนาเพิ่มเติมหรือไม่

สุดท้ายนี้ แม้ว่าเราจะได้อ่านโพสต์ในแพลตฟอร์มโซเชียลมีเดียต่าง ๆ แล้ว แต่เราก็ต้องการใช้แบบสำรวจหลังเล่นเพื่อขอข้อเสนอแนะเชิงลึกจากผู้เล่นเพิ่มเติมเกี่ยวกับคุณภาพในการเล่นของคุณอย่างเช่น คุณภาพของการเชื่อมต่อและการยิงของคุณ ดังนั้นเราจะเพิ่มและเปลี่ยนแปลงคำถามบางส่วนเพื่อให้สอดคล้องกับในส่วนนี้

การอัปเดตในครั้งต่อไป

เราหวังว่าการพัฒนาในส่วนของบัฟเฟอร์ของการประมวลผลการเคลื่อนไหวจะช่วยลดความไม่คงที่ที่ผู้เล่นสัมผัสได้ในตอนที่ค่า Ping ก็ดูปกติดี หากคุณยังรู้สึกถึงปัญหาต่าง ๆ ในตัวเกมของคุณ เราหวังว่าข้อมูลเกี่ยวกับความแปรปรวนและดีเลย์จากการประมวลผลจากกราฟที่เพิ่มเข้ามาใหม่นั้นจะช่วยวัดสิ่งที่คุณรู้สึกออกมาและช่วยหาต้นเหตุของปัญหาได้ หากคุณกำลังประสบกับปัญหาความไม่คงที่และได้บันทึกเกมเพลย์ของคุณไว้ กราฟต่างๆ เหล่านี้จะช่วยเป็นข้อมูลเสริมที่จะช่วยจำกัดขอบเขตของสิ่งที่คุณจะต้องเจาะลึกลงไปได้

เราจะสิ้นสุดการอัปเดตด้วยคำขอบคุณอย่างมากสำหรับทุก ๆ คนที่โพสต์วิดีโอและรายละเอียดเกี่ยวกับปัญหาต่าง ๆ ที่รู้สึกหรือได้พบเจอ เราซาบซึ้งอย่างมากกับความรักที่คุณมีให้กับตัวเกมและความมุ่งมั่นในการช่วยเราพัฒนามันต่อไป และเหมือนเช่นเคย เราใส่ใจกับข้อเสนอแนะของคุณอยู่เสมอ

คอยจับตามองการอัปเดตเพิ่มเติมในอนาคตที่เราจะมาพูดถึงการเลือกเซิร์ฟเวอร์และความสัมพันธ์ที่มันมีต่อประสิทธิภาพการเล่นของผู้เล่นที่มี Ping สูง

พวกเราคือกำลังรอ

เนื้อหาที่เกี่ยวข้อง