วันนี้อยากจะมาแนะนำวีดีโออีกสักหนึ่งอันนะครับคืออันนี้
วีดีโอของ Game Maker’s Tool Kit นี่ผมแนะนำมากมากเลยอยากให้ไปดูกันทุกคนแบบว่าโอ้โห ผมนี่ยอมเสียเงินให้กับ Patreon ของเค้าเลย คือคุณ Mark Brown นี่เค้าทำวีดีโออธิบายเรื่อง game design ออกมาได้ดีมากจริง ๆ
ส่วนของวันนี้ที่จะมาแนะนำกันคือเรื่องที่จั่วหัวไปนั่นแหละครับ
ศัตรูที่ดีเป็นอย่างไร?
ในวีดีโอเค้าจะเน้นไปที่การออกแบบ AI (Artificial intelligence) แต่ผมว่ามันน่าจะครอบคลุมได้มากกว่านั้นนะ ส่วนตัวผมคิดว่าน่าจะครอบคลุมไปถึง enemies (คือตัวที่มันมาปองร้ายเราแล้วมี AI) กับ hazards (สิ่งที่มาฆ่าเราแต่นิ่ง ๆ หน่อย แบบพื้นไฟไรงิ)
สำหรับท่านที่ฟังไม่ออกเดี๋ยวผมจะสรุปคร่าว ๆ ออกมาให้นะครับ
หลัก ๆ เลยคือ ถ้าวันนี้ได้อะไรไปอย่างเดียวจากบทความนี้ก็ขอให้เป็น
ศัตรูในเกมไม่ได้มีไว้ฆ่าคนเล่น แต่มีไว้ทำให้การเล่นน่าสนใจขึ้น สนุกขึ้น
ท่องวนวนไปครับสัก 100 รอบเอาให้ขึ้นใจ เพราะผมต้องย้ำเรื่องนี้บ่อยมากเวลาสอนนักเรียนแล้วนักเรียนทำศัตรูในเกมมา ยากกกกมากกกก แบบเล่นยังไงก็ตาย ผมต้องบอกว่า เฮ้ย หนึ่งเลยนะ too hard, too fast มันอาจจะยากอย่างนี้ได้แต่ต้องมาทีหลัง ให้คนเล่นเค้าเล่นเก่งก่อน สองคือ หน้าที่ของศัตรูในเกมอ่ะมีไว้ให้เราเล่นสนุกขึ้นไม่ได้ตั้งหน้าตั้งตามาฆ่าเรา เข้าใจมั๊ย?
ถ้ายังไม่เข้าใจเราก็จะต้องมาคุยกันต่อ โดยผมคิดว่าวีดีโอนี้อธิบายเรื่องนี้ออกมาได้ดีมากครับ โดยพี่ Mark เค้าอธิบายไว้เป็นข้อ ๆ ดังนี้ครับ
1. Good AI let the player cheat, not in the way you let the player notice.
คือ AI ที่ดีต้องยอมให้คนเล่นได้โกงโดยที่คนเล่นไม่รู้อ่ะครับ เค้ายกตัวอย่างเช่น
ในเกม Uncharted จังหวะที่นาธาน เดรก ลุกขึ้นมาจากที่กำบังแล้วเล็งยิงศัตรู จังหวะนั้นเดรกจะเป็นอมตะอยู่ช่วงนึง คือศัตรูจะยิงไม่โดน เพื่อเปิดโอกาสให้คนเล่นเล็งยิงศัตรูได้ง่ายขึ้นครับ
หรือใน Batman: Arkham Asylum เวลาที่แบทแมนย่องเข้าไปจัดการกับตัวร้าย ตอนนั้นตัวร้ายจะไม่หันกลับมาพักนึงเปิดโอกาสให้คนเล่นได้ย่องเข้าไปได้ง่ายขึ้น
สิ่งเหล่านี้ทำให้คนเล่นรู้สึกว่าเกมมัน fair ขึ้นแม้ว่าจริง ๆ แล้วมันจะปรับมาเพื่อเข้าข้างคนเล่นอย่างมากก็ตาม เพราะต้องเข้าใจว่า AI มันเร็วกว่าเราอยู่แล้วจะตั้งให้มันยิงเราโดนทุกครั้งก็ได้ แต่ถ้าตั้งแบบนั้นมันจะไปสนุกยังไง เราต้องปรับเพื่อให้คนเล่นเล่นได้สนุกมากขึ้นต่างหาก
2. Good AI tells you what it’s thinking
AI ที่ดีจะบอกคุณนะว่ามันคิดอะไรอยู่
มันจะมีศัพท์อยู่ตรงนี้เค้าเรียกว่า Bark (เห่า) นั่นแหละคือว่าบางทีจะเห็นในเกมต่าง ๆ โดยเฉพาะเกมแนว stealth ที่ศัตรูจะเดินมาแล้วพูดขึ้นมาดัง ๆ ว่า “เอ๋ นี่เราเปิดประตูทิ้งไว้เหรอ?” “เดินไปดูหน่อยดีกว่า” อะไรแบบนั้น เพื่อที่คนเล่นจะได้วางแผนได้ว่าจะทำอะไร หรือว่าถ้า AI มันรู้อะไรบางอย่างแล้วมันไม่บอกออกมาเราก็จะไม่รู้นะว่ามันรู้อะไร หรือกำลังจะทำอะไร แบบบางทีในเกมจะได้ยินอะไรแบบ “โอว ใครมาปิดไฟนะ เดินไปเปิดไฟดีกว่า” คนธรรมดาไม่พูดหรอก ก็เดินไปเปิดเลย แต่ถ้า AI มันไม่พูดออกมาคนเล่นก็ไม่รู้
นอกจากนั้นยังเป็นการสร้างคาแร็กเตอร์ให้กับ AI ได้ด้วย รูปแบบการตอบสนองของมันทำให้มันดูมีความลึกมากขึ้น แบบท่านผู้นำต่าง ๆ ในเกม Civilizations จะออกมาพูดแสดงความเป็นตัวตนอยู่เรื่อย ๆ
หรือผีในเกม Pac-Man ที่พอมันกลัวเรามันจะเปลี่ยนสีแล้ววิ่งพล่านอย่างแตกต่างจากปกติ เห็นชัด ๆ กันไปเลย
3. Good AI is predictable
AI หรือศัตรูที่ดีควรจะเดาออกได้ง่าย ๆ คือมันจะทำอะไรต่อไป ถ้าเราทำอะไรแบบนี้แล้วมันจะตอบสนองแบบนี้นะ คนเล่นจะได้วางแผนได้ว่าจะทำอะไรต่อไป
ซึ่งตรงนี้มีคำศัพท์คือ INTENTIONALITY คือการเล่นที่คนเล่นสามารถวางแผนได้อย่างแน่ชัด อย่างมีเป้าหมายผ่านทางความเข้าใจของความเป็นไปในเกม
คือเค้าเข้าใจแล้วอ่ะว่าเกมมันทำงานแบบนี้นะ เราก็สามารถทำให้ผู้เล่นเล่นอย่างมี INTENTIONALITY ได้ ผู้เล่นสามารถวางแผนเพื่อให้ได้ผลลัพธ์ที่มีความหมาย (meaningful goals) สิ่งที่ต้องมอบให้คนเล่นคือข้อมูลกับความสม่ำเสมอ กับความที่เกมมันเดาได้ประมาณนึงนี่แหละ
เค้ายังยกตัวอย่างอีกว่า มันไม่ต้องเดาได้ทั้งหมดก็ได้นะ เอาพอประมาณก็ได้ คือแบบว่ารู้ว่าถ้าเราเอาระเบิดไปวาง ศัตรูจะวิ่งหนี แต่มันจะวิ่งหนีไปทางไหนบางทีก็เดาไม่ได้ คือมีความ random เสริมเข้าไปด้วยก็ได้
4. Good AI can interact with the game’s system
AI หรือศัตรูที่ดีควรจะมีปฏิสัมพันธุกับระบบของเกมเองได้ เหมือนอย่างเกม Zelda: Breath of the Wild ที่ศัตรูสามารถทำอะไรต่าง ๆ กับระบบของเกมได้ แบบเห็นกองไฟก็เอาอาวุธของตัวเองไปจุดไฟจะได้ตีแรงขึ้น หรือบางทีก็ขว้างเพื่อนใส่เราซะงั้น
หรือจังหวะที่เราใช้เจ้าตัว cucco มาจัดการกับศัตรูตัวอื่น ตามระบบในเกมแล้วสิ่งใดก็ตามที่โจมตี cucco สามทีจะต้องถูกฝูง cucco รุมจิกกัด ในเกมนั้นเราสามารถนำตรงนี้มาใช้ได้ถ้าเราล่อให้ศัตรูตีโดนเจ้า cucco สามที ฝูง cucco จะโผล่ออกมาทันทีแล้วรุมจัดการศัตรูของเรา
5. Good AI react to player
AI ที่ดีตอบสนองต่อการกระทำของคนเล่น อันนี้ก็ตรงไปตรงมานะครับ เค้ายกตัวอย่างเกมเช่น Shadow of Mordor ที่เหล่าหัวหน้ากองของ orc จำได้ว่าเราทำอะไรไปกับมันบ้าง มีการปรับเปลี่ยน dialog ตาม
หรืออย่างใน Metal Gear Solid V ที่เกมจะมีการเค้าเตอร์แผนที่เราใช้ในการบุกฐาน เช่น ถ้าคุณไปตอนกลางคืนบ่อย ๆ ถึงจุดนึง ศัตรูจะเริ่มใส่แว่นมองกลางคืน หรือถ้าคุณยิงทำ head shot บ่อย ๆ ศัตรูจะเสริมเกราะที่หมวก
ซึ่งเค้าบอกว่ามีการทำมานานแล้วนะตั้งแต่โน่น Pac-Man จากที่มีคนไปสัมภาษณ์คุณ Touru Iwatani ผู้สร้าง Pac-Man เค้าได้บอกเอาไว้ว่า เค้าคิดว่าคนเล่นน่าจะเครียดเกินไปถ้าโดนรุมหรือว่าโดนไล่ล่าอยู่ตลอด เจ้าพวกผีในเกมอ่ะ มันจะสลับกันไปมาระหว่างการวิ่งไล่คนเล่นกับวิ่งออกไปตามมุมต่าง ๆ เพื่อที่คนเล่นจะไม่ได้รู้สึกเครียดเกินไป
6. Good AI has its own goal
ตรงนี้บางเกมที่เค้ายกตัวอย่างจะเห็นว่า AI จะมีความต้องการของตัวเอง แบบสัตว์ในบางเกมที่ออกมาสู้กันเองเพื่อแย่งอาหาร ทำให้คนเล่นรู้สึกได้ว่าเกมนี้มันมีความ “จริง” มากขึ้นเพราะสิ่งที่อยู่ในเกมมันมีความต้องการเป็นของตัวเอง ออกไปทำโน่นนี่ได้แม้ว่าเราจะไม่ได้ไปยุ่งกับมันก็ตาม
7. Good AI isn’t just about enemies
AI ที่ดีในเกมไม่ได้หยุดแค่เหล่าศัตรูเท่านั้นนะ NPCs ที่เป็นเพื่อนเราก็ยังทำให้เกมของเราน่าสนใจขึ้นเหมือนกัน เช่น Elizabeth จาก Bioshock เจ้า Trico จาก The Last Guardian ที่คนกับ AI ต้องช่วยกันผ่านด่าน หรือพี่พร้อมโต้จาก Final Fantasy 15 ที่สามารถเก็บรูปถ่ายหว่างวันแล้วเอาไปโพสต์ลง social media ได้
เหล่า AI ศัตรู หรืออุปสรรคต่าง ๆ มีหน้าที่ทำให้เกมสนุกขึ้น น่าสนใจมากขึ้น เค้ายกตัวอย่างเกม Uncharted 4 ที่ผู้พัฒนาออกมาให้สัมภาษณ์ว่าเคยมีระบบ AI ซับซ้อนในการออกไล่ล่าคนเล่น สุดท้ายก็ตัดออกเลือกใช้ระบบที่ง่ายกว่า เพราะ เป้าหมายของเหล่าลูกกระจ๊อกเหล่านั้นไม่ได้มีไว้เพื่อไล่ล่าคนเล่น แต่มีไว้เพื่อทำให้การเล่นมันน่าสนใจมากขึ้น
ขอบคุณมากครับ
แล้วพบกันใหม่หนหน้านะครับ
Leave a Reply