บทความนี้จะเล่าเรื่องของการ Prototype เกมต่อเนื่องจากเนื้อหาบทความที่แล้วที่เขียนเรื่องของ Game Design Doc(GDD) ในปัจจุบันต้องยอมรับว่าการ Prototype เกมมีความสำคัญในกระบวนการพัฒนาเกมเป็นอย่างมาก เพราะเป็นตัวช่วยตอบคำถามของนักออกแบบเกมที่เกิดขึ้นมากมายในขั้นตอนการเขียนเอกสารออกแบบเกม(GDD) ซึ่งคำถามที่สำคัญที่สุดก็คงจะหนีไม่พ้น “เกมจะสนุกไหม?” สิ่งที่น่าสนใจเกี่ยวกับการ Prototype เกมคือ เมื่อไม่กี่ปีก่อนหน้านี้  การทำ Prototype(Digital Prototype) ไม่ได้ถือเป็น “กระบวนการมาตรฐานของการพัฒนาเกม” เพราะการทำ Prototype จะเป็นสิ่งที่เสียเวลาและเสียค่าใช้จ่ายค่อนข้างเยอะ เนื่องจากการพัฒนา Prototype ต้องเขียนเกมเริ่มจากศูนย์ตั้งแต่ platform layer จนถึงตัวเกม  หลายๆ คนก็เลยจะข้ามขั้นตอนนี้ไปเลย  การเปลี่ยนแปลงที่ทำให้นักพัฒนาหันมาให้ความสำคัญกับการพัฒนา Prototype เกมมากขึ้นก็คือ

  1. การที่ Game Engine เป็น service ที่แพร่หลายและราคาถูก
  2. ค่าใช้จ่ายของการพัฒนาเกมในยุคปัจจุบันที่แพงกว่าเดิมมาก

ก่อนหน้านี้การพัฒนาเกมจะเป็นเรื่องที่ยากลำบากเพราะ ไม่ได้มี Game Engine สำหรับนักพัฒนารายย่อยแบบในปัจจุบัน การที่นักพัฒนาหน้าใหม่หรือนักพัฒนาอิสระจะทำ Prototype ได้ก็ต้องเริ่มจากพัฒนา Engine สำหรับทำ Prototype ก่อน ซึ่งเสียเวลาเป็นอย่างมาก  นักพัฒนาหลายคนยอมแพ้ เลิกคิดเรื่องการพัฒนาเกมตั้งแต่ขั้นตอนนี้ แต่พอเริ่มมี Game Engine ให้นักพัฒนาเลือกใช้ การพัฒนาเกมจึงเป็นเรื่องที่ง่ายกว่าเดิมมาก แทนที่นักพัฒนาจะใช้เวลาในการพัฒนา Engine สามารถเอาเวลาไปคิดว่าจะทำยังไงให้เกมสนุก ซึ่ง Game Engine ที่ได้รับความนิยมมากที่สุดในตอนนี้ก็คงหนีไม่พ้น Unity 3D ที่เริ่มมีมาตั้งแต่ปี 2005 (เดี๋ยวจะมีบทความเรื่อง Game Engine ตามมานะครับ) ความแพร่หลายของ Game Engine ทำให้การพัฒนา Prototype มีราคาถูกและมีความรวดเร็ว อีกสาเหตุหนึ่งคือ ค่าใช้จ่ายในการจ้างนักพัฒนาในตอนนี้มีค่าใช้จ่ายที่ค่อนข้างสูง(ซึ่งถือเป็นเรื่องดีในระยะยาวสำหรับวงการนักพัฒนาเกม)และต้องใช้ทีมงานที่เยอะกว่าเดิมมาก ทำให้ความเสี่ยงที่เกิดขึ้นหลังจากเริ่มขั้นตอน Production ของเกมสูงขึ้นตาม  บริษัทพัฒนาเกมจึงเลือกที่จะลดความเสี่ยงวิธีหนึ่งโดยการทำ Prototype ว่าเกมนี้มีความเป็นไปได้มากน้อยเพียงใด ซึ่งสาเหตุเหล่านี้จึงทำให้การพัฒนา Prototype กลายเป็นส่วนหนึ่งของกระบวนการพัฒนาเกม ที่ต้องทำก่อนเริ่ม Production จริง เราลองมาดูกันครับว่า Prototype คืออะไร, มีขั้นตอนทำยังไง และ มีประโยชน์ยังไงในกระบวกการพัฒนาเกม

แผนผังแสดงการทำ Prototype

แผนผังแสดงการทำ Prototype

Prototype คืออะไร?

การ Prototype จะเป็นการสร้าง “เกม” เพื่อทดสอบสมมติฐานหรือคำถามจาก GDD กระบวนการพัฒนาเกมทั้งหมดก่อนที่จะถึงขั้นตอนการทำ Prototype จะเป็นเพียงการ “คิด” และ “เขียน” ลงบนเอกสารออกแบบเกม  ขั้นตอน Prototype จะเป็นขั้นตอนแรกที่เราจะเริ่มลงมือทำเกมในรูปแบบใด รูปแบบหนึ่ง  โดยการทำ Prototype จะเป็นกระบวนการที่เราจะตั้งคำถามเกมที่เราออกแบบสืบเนื่องจากการเขียน GDD และหาคำตอบด้วยการพัฒนาเกมแบบลวกๆ ที่พอจะเล่นได้  ตัวอย่างคำถามที่เราควรตั้งสำหรับการทำ Prototype เช่น

  • ถ้าเราออกแบบ Core Game Mechanic แบบนี้ จะสนุกไหม? (เกมจะสนุกไหม)
  • ถ้าเราออกแบบโดยใช้ Feature A คนเล่นจะงงไหม? (สามารถเอาคนเล่น เช่นเพือนสนิทหรือคนในครอบครัวมาทดลองว่า Feature A เข้าใจง่ายไหม)
  • ถ้าเราออกแบบโดยใช้ Feature B ทีมโปรแกรมเมอร์เราจะสามารถพัฒนาให้เป็นรูปร่างได้ไหม? (มีความเป็นไปได้ทางเทคนิคไหม)

การทำ Prototype เป็นขั้นตอนที่จำเป็นสำหรับการพัฒนาเกม เพราะเป็นการทดสอบ Core Game Mechanic หรือ พื้นฐานความสนุกของเกมเรา  โดยเป้าหมายของการทดสอบของเรา  ก็เพื่อที่จะวิเคราะห์และประเมินว่า ควรจะพัฒนาเกมนี้ต่อหรือควรโยนทิ้งตั้งแต่แรกเพราะไอเดียมันใช้ในการทำเกมไม่ได้ อาจจะไม่สนุก หรือ อาจจะมีความยากทางเทคนิคเกิน ถ้าไม่สนุกเราสามารถปรับ(iterate)ยังไงให้สนุก หรือถ้ามีความยากทางเทคนิคเกินเราสามารถปรับ feature ยังไงให้โปรแกรมเมอร์โค้ดได้  ดังนั้นเราจะยอมเสียเวลาทดสอบ สัก 7 วัน ดีกว่าที่เสียเวลาทำเกม 1 ปีเพื่อพบว่ามันไม่สนุก

การทดสอบ Prototype ควรทำยังไง?

เราควรทดสอบตัว Prototype ภายในทีมเราเท่านั้น หรือจะขอให้เพื่อนที่เป็นนักพัฒนาเกมช่วยดูก็ได้ แต่ไม่ควรใช้คนทั่วๆไปเป็นกลุ่มทดสอบ เนื่องจากความลวกของงานจะทำให้คนทั่วไปไม่เข้าใจตัว Prototype ได้ และ feedback ที่ได้รับจะไม่เป็นประโยชน์กับทีมเรา  การเปิดให้คนทั่วไปทดสอบควรเป็นขั้นตอนที่เกมเราเริ่ม “ดูดีมีชาติสกุล” และเราต้องการเก็บ data มาวิเคราะห์ค่า retention และ drop-off แล้ว

วิธีการ Prototype มีกี่วิธี?

โดยหลักแล้ววิธี Prototype มี 2 วิธีก็คือ

  1. Paper Prototype หรือ การ Prototype บนกระดาษ
  2. Digital Prototype หรือ การ Prototype แบบดิจิตอล

เรามาดูว่าแต่ละวิธีทำยังไงและแตกต่างกันยังไงครับ

1. Paper Prototype

การทำ Paper Prototype คือการออกแบบการทดสอบ สมุมติฐานต่างๆ ของเกมเราโดยใช้ อุปกรณ์ เช่น กระดาษ, post-it, ปากกาเมจิก หรือ อุปกรณ์ต่างๆที่หาได้ทั่วไป เพื่อออกแบบจำลองการเล่นเกม  สำหรับความคิดส่วนตัวผม การพัฒนา Paper Prototype จะเป็น 1 ในขั้นตอนที่จะสามารถทำหรือไม่ทำก็ได้ เพราะสุดท้ายแล้วการ Prototype ควรจะต้องทำการทดสอบด้วย ดิจิตอล Prototype เสมอ

ตัวอย่างอุปกรณ์ที่สามารถนำมาใช้ทำ Paper Prototype

  • กระดาษแผ่นใหญ่
  • กระดาน whiteboard
  • แผ่นกระดาษขนาดต่างๆ
  • ดินสอ ปากกา สีเมจิก กรรไกร เทปกาว
  • เหรียญบาท ลูกเต๋า

ข้อดี

  • เป็นวิธีที่ง่ายที่สุดในการทดสอบ Game idea ของเรา
  • ไม่ต้องเขียนโปรแกรมเป็นก็สามารถทำการ Prototype ได้ ฉะนั้น วิธีนี้เป็นวิธีที่ได้รับความนิยมเป็นอย่างมากสำหรับ Game Designer ที่ไม่ถนัดเขียนโปรแกรม
  • เป็นวิธีที่เร็ว วัดผลเร็ว และ ปรับปรุงเกมได้รวดเร็ว

ข้อเสีย

  • ไม่สามารถจำลองรูปแบบเกมที่ซับซ้อน หรือ จำลองรูปแบบประสบการณ์ได้ทั้งหมด เหมือนการ Prototype แบบดิจิตอล
  • การออกแบบ Paper Prototype เป็นศาสตร์และศิลป์รูปแบบหนึ่ง ต้องมีประสบการณ์ระดับหนึ่งถึงจะออกแบบ Paper Prototype ที่ดีได้

ตัวอย่าง

ตัวอย่างที่ 1

ตัวอย่างที่ 2

  • ตัวอย่างข้างบนเป็นตัวอย่างของ “Applied Computer Science – Multimedia [CMM] King Mongkut’s University of Techonlogy Thonburi – Thailand”  สำหรับ วิชา “CMM324 Games Development.”

2. Digital Prototype

เป็นวิธีการทดสอบคำถามของเราด้วยการสร้างเกมโดยการใช้โค้ดจริงๆ แต่เป็นแบบลวกๆ และสามารถทำอย่างรวดเร็ว ไม่ควรใช้เวลาเกิน 7 วัน โดยคราวนี้เราจะต้องมีการเขียนเกมจริงๆ จังๆ เพื่อตอบคำถามที่เราตั้งไว้ตอนแรก การทดสอบด้วย Digital Prototype เป็นขั้นตอนที่สำคัญมาก และไม่ควรข้ามขั้นตอนนี้

ลักษณะของ Digital Prototype

  • เขียนด้วยโค้ดแบบลวกๆ ไม่สามารถนำโค้ดกลับไปใช้ต่อได้
  • ใช้กราฟฟิกและเสียงแบบลวกๆ ส่วนใหญ่จะเป็นกราฟฟิกฝีมือโปรแกรมเมอร์

ข้อดี

  • สามารถทดสอบ Core Game Mechanic ได้เกือบครบถ้วนทุกด้าน ไม่ว่าจะเป็นการ ควบคุม ตัวละครด้วย Keyboard, Mouse, Touch Screen หรือ Gesture Control และเห็นภาพตอบสนองทันที่

ข้อเสีย

  • ต้องมีทักษะเขียนโปรแกรม
  • โปรแกรมเมอร์หลายคนมีความเป็น “Perfectionist” ต้องการเขียนโค้ดให้ดีและเรียบร้อย หลายคนจึงใช้เวลาการ Prototype นานและผิดวัตถุประสงค์  อันนี้เป็นปัญหาใหญ่สำหรับหลายๆคนเลย รวมทั้งตัวผมเองด้วย
  • Iterate(ปรับปรุง) ได้ช้ากว่าการทดสอบแบบ Paper Prototype

ตัวอย่าง

  • นี่เป็นตัวอย่างของการทำ ดิจิตอล Prototype ที่ทำ 10 เกมใน 1 วัน, หรือ 1 เกมต่อ 1 ชั่วโมง จะเห็นว่าสำหรับคนที่ถนัดเขียนโปรแกรม บางทีการ Prototype โดยการเขียนเกมจะเร็วและสะดวก อีกทั้งเห็นภาพได้ชัดเจนกว่า Paper Prototype

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

ตัวอย่างเพิ่มเติมสำหรับการทำ Prototype

Introduction to Game Design: Prototype Your Game

อันนี้ เป็นตัวอย่างที่ดีครับ เพราะแสดงให้เห็นตั้งแต่ concept จนไป Paper Prototype และต่อด้วย Digital Prototype พร้อมทั้ง Process และแนวคิด ในการทดลองและปรับปรุงแต่ล่ะขั้นตอน