จะสร้างฟีเจอร์ Ghost Replay ในเกมได้อย่างไร?


19

เมื่อคุณตั้งเวลารอบที่ดีที่สุดในเกมแข่งรถคอนโซลคุณมีตัวเลือกในการแข่งขันกับผีของคุณ

คุณลักษณะนี้จะสร้างได้อย่างไรสำหรับเกมประเภทผู้เล่นเดี่ยวที่ไม่เป็นทางการ


2
+1 คำถามที่น่าสนใจสำหรับผู้ที่เพิ่งเริ่มต้นในการพัฒนาเกม (ฉัน) =)
Marcouiller จะ

หากคุณจะบอกเราว่ามันเป็นเกมประเภทใดเราสามารถช่วยคุณได้มากขึ้นโดยเฉพาะ
AttackHobo

ดูเพิ่มเติมที่: gamedev.stackexchange.com/questions/6080/…
Jari Komppa

คำตอบ:


10

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

นี่เป็นจุดเริ่มต้นที่ดีสำหรับการสร้างระบบเล่นซ้ำ: http://www.gamasutra.com/view/feature/2029/developing_your_own_replay_system.php

นอกจากนี้ยังมีคำถามจำนวนมากที่นี่ในหัวข้อนั้น:


+1 เพิ่งเรียนรู้สิ่งใหม่ ๆ พร้อมคำตอบของคุณขอบคุณ! =)
Marcouiller จะ

1

ขึ้นอยู่กับเทคโนโลยีที่คุณใช้งาน ดังนั้นเราจึงไม่สามารถพูดคุยเกี่ยวกับวิธีที่ดีที่สุดเพราะมันอาจเปลี่ยนจากเทคโนโลยีอื่น ความคิดขั้นต้นในความคิดของฉันจะเป็นดังต่อไปนี้:

  1. ใช้แหล่งข้อมูลพื้นฐานเพื่อยืนยันข้อมูลของคุณ (XML, คุกกี้, ฐานข้อมูล, CSV, อื่น ๆ ... );
  2. ทำงานการเข้าถึงข้อมูลของคุณไปยังแหล่งข้อมูลพื้นฐานนี้
  3. คุณต้องเก็บข้อมูลข้อมูลเกี่ยวกับคะแนนที่ดีที่สุดของผู้เล่นดังนั้นจำเป็นต้องมีตัวระบุ (อีเมลชื่ออินพุตอื่น ... );
  4. เชื่อมโยงคะแนนที่ดีที่สุดนี้กับตัวระบุไม่ทางใดก็ทางหนึ่ง

ในระยะสั้นสมมติว่าการใช้ฐานข้อมูลเราอาจมีสองตาราง:

  1. ข้อมูลผู้ใช้ / ผู้เล่น (ตัวระบุอีเมล ฯลฯ );
  2. ข้อมูลคณะกรรมการให้คะแนนที่ดีที่สุด

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

ฉันหวังว่านี่จะช่วยได้และฉันก็เข้าใจคำถามได้อย่างถูกต้อง มิฉะนั้นโปรดบอกเพื่อฉันจะได้แก้ไขคำตอบของฉัน


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

ขอบคุณสำหรับการป้อนข้อมูลของคุณเจมส์! สิ่งเหล่านี้เป็นสิ่งที่ฉันไม่รู้แม้คำตอบของฉันจะเป็นวิธีที่ทำได้ง่ายเช่นกัน อย่างไรก็ตามฉันสนใจที่จะเรียนรู้เพิ่มเติมในหัวข้อ โอ้และ +1 สำหรับความคิดเห็นของคุณสิ่งนี้สอนฉันว่ามีวิธีการอื่นที่ทำได้ =) ขอบคุณ! =)
Marcouiller จะ

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

@ คุณจะบอกข้อมูลเกี่ยวกับสิ่งที่จะเกิดขึ้นสำหรับการติดตั้งแบบผู้เล่นหลายคนเมื่อเขาได้รู้คำตอบสำหรับคำถามของเขาเกี่ยวกับเกมผู้เล่นคนเดียว คำถามของเขาคือทำอย่างไรจึงจะสร้างผีได้ตั้งแต่แรก
AttackHobo

@AttackingHobo: ขอบคุณที่บอกฉัน จริง ๆ แล้วฉันได้คิดออกมาจากเจมส์แสดงความคิดเห็นเกี่ยวกับสิ่งที่บันทึกแล้วหลังจากได้อ่านคำตอบของ wkerslake ตอนนี้ฉันเข้าใจได้ดียิ่งขึ้นว่าสิ่งที่ OP ถาม นอกจากนี้คุณพูดถูกว่าการตั้งค่าที่ฉันเสนอนั้นมีแนวโน้มที่จะใช้ในการตั้งค่าแบบผู้เล่นหลายคนมากกว่า เฮ้ฉันยังเรียนอยู่ที่นี่และขอบคุณที่อนุญาตให้เติบโตได้ดีขึ้น! การพัฒนาเกมยังคงเป็นเคล็ดลับใหม่สำหรับฉันแม้ว่าฉันจะเป็นนักพัฒนาที่มีประสบการณ์ =) ขอบคุณสำหรับความคิดเห็นของคุณ AttackHobo! =)
Marcouiller จะ

1

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

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

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