วันอาทิตย์ที่ 25 ตุลาคม พ.ศ. 2558

Construct 2 : พลังชีวิต Health

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

ขั้นแรกสร้างแถบพลังชีวิตขึ้นมาก่อน health bar ในตัวอย่างผมสร้างขึ้นมา 2 แถบ เป็นแบบ sprite คือแถบของพลังชีวิตสูงสุด ให้เป็นแถบสีแดง กำหนดชื่อ barMaxHP กับแถบพลังชีวิตที่เหลือ ให้เป็นแถบสีเขียว กำหนดชื่อ barHP ที่สำคัญกำหนดค่า origin point ของแกน x เป็น 0 ด้วย



จะได้แถบพลังชีวิต 2แถบ กำหนดขนาดเป็น 200 x 20 ดังนี้


ย้ายแถบสีเขียวไปทับแถบสีแดง จนมองเห็นเป็นแถบเดียวกัน



สร้างตัวแปรขึ้นมาเพื่อเก็บค่าพลังชีวิต



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



กำหนดเหตุการณ์เมื่อเด็กน้อยเดินไปชนผี ให้ลดค่าพลังชีวิตลง เลือก Add event แล้วเลือก Sprite ของตัวละคร


เลือกเหตุการณ์ On collision with another object


จะได้หน้าต่าง สำหรับเลือกวัตถุที่จะชน


เลือกวัตถุตัวผีน้อย



เมื่อได้เหตุการณ์การชนกันของวัตถุในเกมแล้ว ต่อไปต้องกำหนดการกระทำสำหรับเหตุการณ์ที่เกิดขึ้น โดยคลิกที่ Add action แล้วเลือก System


เลือก Subtract from


เลือกตัวแปรที่จะลบค่า คือ health1  กำหนดให้ลดลงทีละ 15


จะได้คำสั่ง ดังนี้



การกำหนดความยาวของแถบชีวิต
เมื่อพลังชีวิตลดลง แถบของพลังชีวิตก็จะลดลงด้วย ในการลดความยาวของแถบ จะต้องคำนวณร้อยละของพลังชีวิตที่เหลืออยู่
  ร้อยละของพลังชีวิตที่เหลืออยู่ = (พลังชีวิตที่เหลือ / พลังชีวิตสูงสุด) x 100

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

คำสั่งในการคำนวณตามสูตร คือ
barHP.Width = (HP / maxHP) * barMaxHP.Width

คลิกที่ Add action แล้วเลือก barHP



เลือกคำสั่ง Set width



กำหนดค่าความกว้าง (health1/100)*barMaxHP.Width



คำสั่งที่ได้เป็นดังนี้


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



กำหนดให้ตัวละครของเราหายไป เมื่อพลังชีวิตลดลงต่ำกว่า 0


แล้วเพิ่มการกระทำให้ตัวละครหายไป


คำสั่งทั้งหมดเป็นดังนี้





วันศุกร์ที่ 23 ตุลาคม พ.ศ. 2558

Construct 2 : สร้างเกม เล่น 2 คน

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


สร้างโปรเจคใหม่ขึ้นมา กำหนด window Size เท่ากับ 850 x 700



สร้างฉากหลังของเกม โดยจะเป็นลักษณะของการวิ่งเก็บของและยิงผี จะสร้างในแบบของตัวเองก็ได้ ผมไปขอยืมพื้นหลังมาจาก http://www.deviantart.com/tag/halloween ดูหลอนดีเหมือนกัน



สร้างทางเดินภายในเกม ด้วยการสร้าง sprite


กำหนด behavior เป็นแบบ Jump-thru


วางทางเดินภายในเกม ด้วยการคัดลอก และวาง sprite ที่สร้างขึ้นต่อกันเป็นชั้น ตามต้องการ



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


กำหนด behavior เป็นแบบ Platform


วางตัวละครของเราบนตำแหน่งของทางเดินในเกม ย่อ-ขยาย ตัวละครให้เหมาะสมกับขนาดของเกม
ทดสอบการทำงานของเกม ด้วยการคลิกที่ปุ่ม run layout เกมจะเปิดหน้าเว็บขึ้นมา


 ถ้ากำหนดถูกต้อง ตัวละครของเราจะสามารถเดินได้ กระโดดได้ เมื่อกดปุ่มลูกศรในการควบคุม

เพิ่มตัวละครตัวที่สอง เป็นเด็กผู้หญิง เพิ่ม sprite ใหม่ แล้วลงมือวาดกันเลย


กำหนด behavior เป็นแบบ Platform เช่นเดียวกันกับตัวละครตัวแรก  ที่แถบกำหนดค่าของ behavior เปลี่ยนค่า Default controls เป็น No เพื่อไม่ให้ใช้การควบคุมตัวละครตามค่าเริ่มต้น คือการใช้ปุ่มลูกศร (ซึ่งเราได้กำหนดให้ตัวละครตัวแรกไปแล้ว) มาเป็นค่าที่เรากำหนดเอง



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



ต่อไปต้องกำหนดค่า event sheets ดังนี้
คลิก Add event เลือกวัตถุ keyboard แล้วคลิกปุ่ม Next



เลือกเหตุการณ์ที่เกิดในเกม เมื่อมีการกดปุ่ม (Key is down)




เลือกปุ่มที่ใช้ในการควบคุมตัวละคร ในกรณีนี้ใช้ ปุ่ม W ให้ควบคุมการกระโดด



เพิ่มการกระทำ เมื่อมีการกดปุ่ม W โดยเลือกการควบคุมสำหรับตัวละครตัวที่ 2


เลือกกำหนดค่าเป็น Simulate control


กำหนดการเคลื่อนที่เป็น Jump


กำหนดค่าสำหรับการเดินไปทางซ้าย และทางขวา ด้วยปุ่ม A และ D เช่นเดียวกับปุ่ม W ดังนี้


ทดสอบการทำงานของเกม จะพบว่า ขณะนี้สามารถบังคับตัวละครพร้อมกันได้ โดยตัวแรกจะใช้ปุ่มลูกศรในการควบคุม ส่วนอีกตัวหนึ่งจะใช้ปุ่ม WAD ในการควบคุม

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

วันอาทิตย์ที่ 18 ตุลาคม พ.ศ. 2558

Construct 2 : การเพิ่มเสียงในเกม

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



โปรแกรมจะเปิดหน้าต่างเพื่อเลือกไฟล์เสียงที่จะเพิ่มเข้ามาในเกม เลือกไฟล์เสียง แล้วคลิกที่ปุ่ม Open



โปรแกรมจะแสดงรายการไฟล์เสียงที่จะนำเข้ามาในเกม สามารถเพิ่มไฟล์เสียงได้อีก โดยการคลิกปุ่ม Add more files..  หากได้ไฟล์เสียงตามต้องการแล้ว คลิกปุ่ม Import เพื่อเพิ่มเสียงเข้ามาในเกม


โปรแกรมจะนำเสียงเข้ามาในเกม ถ้านำเข้าสำเร็จจะแสดงข้อความ Successfully converted to OGG and ACC หลังจากนั้นให้คลิก OK เพื่อกลับไปยังเกม



ที่ตัวเกม จะปรากฏไฟล์เสียงที่เราได้เพิ่มเข้ามา



ต่อไปต้องทำการเพิ่มวัตถุ Audio เข้ามาในเกม Layout ที่เราสร้างไว้ โดยการคลิกขวาที่เกม แล้วเลือกคำสั่ง Insert New Object แล้วเลือก Audio หลังจากนั้นคลิกปุ่ม Insert เข้ามายังเกม



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


เลือกเหตุการณ์คือ การกระโดด (On jump)



จะได้เหตุการณ์สำหรับการกระโดด ต่อไปก็เพิ่ม Add action เพื่อให้เล่นเสียงเมื่อมีการกระโดด


เลือกวัตถุแบบ Audio


เลือกคำสั่ง Play


เลือกไฟล์เสียงที่ต้องการ กำหนดระดับเสียง แล้วคลิกปุ่ม Done


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