ฉันเริ่มเขียนโปรแกรมเมื่อหลายปีก่อน ตอนนี้ฉันกำลังพยายามสร้างเกม ฉันได้อ่านคำแนะนำมากมายเพื่อเริ่มโคลนเกมที่รู้จักกันดีเช่น galaga, tetris, arkanoid และอื่น ๆ ฉันได้อ่านแล้วว่าฉันควรจะเล่นเกมทั้งเกม (รวมถึงเมนูเสียงคะแนน ฯลฯ )
เมื่อวานนี้ฉันเสร็จรุ่นโคลน arkanoid รุ่นแรกเสร็จแล้ว แต่มันไกลเกินกว่า ฉันยังคงสามารถใช้งานได้เป็นเวลาหลายเดือน (ฉันเขียนโปรแกรมเป็นงานอดิเรกในเวลาว่างของฉัน) การใช้ตัวสลับความละเอียดหน้าจอทำการแมปปุ่มควบคุมการเพิ่มพลังงานจากอิฐแตกและก้อนหินขนาดใหญ่ ฯลฯ
แต่ฉันไม่ต้องการที่จะเรียนรู้วิธีการโคลนเกมหนึ่งตลอดไป ฉันมีความต้องการที่จะไปที่โคลนถัดไปเพื่อที่จะนำแนวคิดการออกแบบที่ฉันได้มาในขณะที่พัฒนา arkanoid clone นี้ (ในขณะเดียวกันฉันกำลังอ่านหนังสือ GoF และซอร์สโค้ดมากมายจากการแข่งขันเกม Ludum Dare 21)
ดังนั้นคำถามคือ: ฉันควรปรับปรุง arkanoid clone จนกว่ามันจะมีคุณสมบัติทั้งหมดที่เกมต้นฉบับมีอยู่หรือไม่ หรือฉันควรจะย้ายไปที่โคลนถัดไป (มีเกมเกือบจะไม่มีที่สิ้นสุดในการโคลน) และเริ่มแก้ไขสิ่งที่ฉันทำผิดกับการโคลนครั้งก่อน?
นี่อาจเป็นคำถามแบบอัตนัยดังนั้นโปรดงดคำตอบสำหรับวิธีที่มีประสิทธิภาพมากที่สุดในการเรียนรู้วิธีสร้างเกมของตัวเอง ขอขอบคุณ!
ชี้แจง
เพื่อชี้แจงสิ่งที่ฉันได้นำไปใช้ฉันทำรายการนี้:
คุณสมบัติที่ใช้:
- ความสามารถในการตีกลับ (ลูกบอลกระเด้งบนผนัง, บนอิฐและบนบาร์)
- ส่งเสียงเมื่อมีการสะท้อนกับก้อนอิฐและบาร์และเมื่อผู้เล่นชนะหรือแพ้
- เมนูหัวเรื่องพื้นฐาน (เกมใหม่และออกเท่านั้น) นอกจากนี้ยังมีเมนูในเกมและเมนูชนะ / แพ้
- แค่สามระดับเท่านั้น แต่ระบบแผนที่นั้นง่ายมากฉันไม่คิดว่ามันจะสอนฉันมาก (ฉันผิดหรือเปล่า)
คุณสมบัติที่ไม่ได้ใช้งาน:
- เพิ่มพลังเมื่อทำลายอิฐ
- อิฐที่ซับซ้อน (ที่มี "พลังชีวิต" มากกว่าหนึ่งอันและอยู่ยงคงกระพัน)
- กราฟิกที่ดีกว่า (ฉันไม่ค่อยเก่งเท่าไหร่)
- การเขียนโปรแกรมขัด (ใช้รูปแบบการออกแบบอย่างเข้มข้นมากขึ้น)
นี่คือลิงค์ไปยังหน้าเว็บ (ขั้นต่ำ): http://blog.acamara.es/piperine/ ฉันรู้สึกละอายใจที่จะแสดงมันดังนั้นโปรดอย่าตีฉันแรงเกินไป :-)
คำถามของฉันเกี่ยวข้องกับคุณลักษณะที่ไม่ได้ใช้งาน ฉันสงสัยว่าอะไรคือเส้นทางที่ดีที่สุดในการเรียนรู้ 1) ใช้คุณสมบัติที่ไม่ได้ใช้งานในโครงการนี้ซึ่งกำลังจะมีขนาดใหญ่หรือ 2) สร้างเกมใหม่ซึ่งอาจจะสอนบทเรียนเหล่านั้นและสิ่งใหม่ ๆ ให้ฉัน
ตอบ
ฉันเลือก @ ashes999 คำตอบเพราะในกรณีของฉันฉันคิดว่าฉันควรขัดมากกว่านี้และพยายาม "ส่ง" เกม ฉันคิดว่าคำตอบอื่น ๆ ทั้งหมดก็สำคัญเช่นกันดังนั้นถ้าคุณมาที่นี่ด้วยคำถามเดียวกันก่อนตัดสินใจรีบเร่งอ่านการอภิปรายทั้งหมด
ขอบคุณทุกคน!