ทำให้เกมเป็นแบบฝึกหัดหรือไม่? [ปิด]


19

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

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

สิ่งต่าง ๆ เช่นมีคลาสศัตรูที่มีพฤติกรรมที่เล่นง่ายหรือทำให้ปืนยิงแตกต่าง / เพิ่มปืนใหม่และปล้นใหม่ แม้กระทั่งการเพิ่มองค์ประกอบใหม่ให้กับเกม อะไรจะเป็นวิธีที่ดีที่สุดในการสร้างเกมเพื่อให้มีความพิการได้


1
ลองดูคำตอบนี้บนสแต็คโอเวอร์โฟลว์
Andrew Russell

คำตอบ:


16

วิธีดั้งเดิมในการบรรลุเป้าหมายในการพัฒนาเกมนี้คือการใช้สถาปัตยกรรมที่ขับเคลื่อนด้วยข้อมูลสำหรับระบบเกม

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

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

ศัตรูใหม่ของฉันเริ่มต้นด้วยพฤติกรรม AI พื้นฐานที่ก้าวร้าวด้วยค่าที่ขับเคลื่อนด้วยข้อมูลสำหรับ: - ผู้เล่นที่ได้รับการพิจารณา> ระดับของฉัน + X - ติดตามผู้เล่นได้มากถึง X หน่วยนอกเหนือจากจุดวางไข่ - สนุกเมื่อมีสุขภาพดี (สำหรับเมื่อผู้เล่นเข้าใกล้เกินไป)

รูปแบบการขับเคลื่อนข้อมูลที่ซับซ้อนมากขึ้นอาจช่วยให้คำจำกัดความของจุดข้อมูลเฉพาะ (เหตุการณ์) ที่สถานะการเปลี่ยนสถานะ AI (สถานะเครื่องจักร จำกัด ) ไปสู่อีกสถานะหนึ่ง (หรือแม้แต่โอกาสที่จะเปลี่ยนไปใช้สถานะอื่นของรัฐ N) ลำดับขั้นของพฤติกรรมที่ซับซ้อน

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

มีคะแนนโบนัสที่จะทำได้:

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

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


คำตอบที่ดี! +1
AttackHobo

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

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

ลักษณะที่ขับเคลื่อนด้วยข้อมูลที่พบมากที่สุดในเกมคือระดับ แม้ว่าทุกสิ่งทุกอย่างจะยากต่อการกำหนดระดับการออกแบบ (เช่นที่วางทิวทัศน์ที่ศัตรูวาง ฯลฯ ) จะถูกกำหนดไว้ในไฟล์ข้อมูลที่เกมโหลด คะแนนโบนัสที่สองของเขาอธิบายเครื่องมือแก้ไขระดับ
jhocking

กระบวนการของการเขียน / อ่านวัตถุไปยัง / จากดิสก์เรียกว่า "de- / serialization" คุณอาจพบบทเรียนที่มีประโยชน์ภายใต้คำศัพท์นั้น
Exilyth

1

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


0

ฉันอยากจะแนะนำให้ดูที่การสอนการพัฒนาเกม Java บน www.thenewboston.com

มันอาจไม่ใช่สิ่งที่คุณกำลังมองหาในแง่ของเป็ดด้วยอาวุธและแจ๊สทั้งหมดนั้น แต่มันก็เป็นขั้นตอนที่ดีทีละขั้นของปัจจัยสำคัญหลายประการในการพัฒนาเกม ผู้นำเสนอ "Bucky" ยังมีรูปแบบการสอนที่เยือกเย็นและสนุกสนาน สนุก.

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