(TF)T - ลบสิบแปดสัปดาห์: เรื่องราวของ TFT
หากนำผู้พัฒนา 12 คน เวลาแปดสัปดาห์ และ League of Legends มารวมกันจะได้อะไร? แน่นอนว่าก็ได้ TFT ยังไงล่ะ!
หมายเหตุจากผู้เขียน: สวัสดีทุกคน! เราอยากจะมาบอกว่าแทนที่จะทุ่มตัวหนังสือเป็นกระตักใส่คุณในทีเดียว เราได้ตัดสินใจที่จะแบ่งเรื่องราวนี้ออกเป็นสองส่วน ส่วนที่สองจะพร้อมให้อ่านในวันพรุ่งนี้ในวันที่ 5 มี.ค. เวลา 01:00 น. ตามเวลาประเทศไทย
“นี่ พวกนายได้ลองเล่น Auto Chess กันหรือยัง?” ไม่มีใครเลี่ยงคำถามนี้ได้ใน Riot ในช่วงเดือนแรก ๆ ของปี 2019 มีแค่สองทางคือคุณจะพูดถึง Auto Chess หรือเสี่ยงจะถูกทีม “ว้าย ตกเทรนด์” ใส่
ไม่นานคำถามนั้นก็กลายเป็น “เดี๋ยวนะ ทำไมเราไม่ทำอะไรแบบนั้นขึ้นมาบ้างล่ะ?” เราคิดว่ามันคุ้มจะลองดู แต่ก็ต้องรีบด้วย เพราะยังไงเราก็คงไม่ใช่คนกลุ่มเดียวแน่ ๆ ที่คิดว่านี่อาจจะเป็นเรื่องสุดเจ๋ง แต่ถึงงั้น การยกโขยงผู้พัฒนา League ไปทำโปรเจกต์ที่เรายังไม่มั่นใจ 100% มันก็ฟังดูจะไร้เหตุผลเกินไป ดังนั้น เราเลยทำทีมให้เล็กเข้าไว้ เล็กแบบมีสิบสองคนในทีม
และด้วยความที่เราไม่อยากที่จะถูกทิ้งท้าย เราเลยให้เวลาทำงานตัวเอง... สั้นสุด ๆ สิบแปดสัปดาห์ แปดสัปดาห์ไว้ดูว่าเราจะสามารถสร้างอะไรสนุก ๆ ออกมาได้ไหม และอีกสิบสัปดาห์เพื่อดูว่าเราทำได้จริงหรือเปล่า ซึ่งนั่นก็ทำให้เราเกิดสองคำถามขึ้นมา: ทำได้ไงก่อน? และใครมันจะโง่พอทำแบบนั้นกัน?
ขอแนะนำให้รู้จักนักพัฒนาเหล่านีันี้ (ซึ่งเป็นทีมแรกเริ่มของ TFT เพียงส่วนเล็ก ๆ เท่านั้น):
18 สัปดาห์ก่อนปล่อยตัว: การนับถอยหลังเริ่มขึ้นแล้ว
“เรารวมหัวกันคิดเกี่ยวกับเกมต่อสู้อัตโนมัติของ League และก็เริ่มสร้างเค้าโครงอย่างละเอียดขึ้นมา” Meddler กล่าว
โดยมีสามเป้าหมายด้วยกัน: ปรับปรุงการออกแบบ (การบังคับและ UI ที่ดีขึ้น รอบจบไวขึ้น และอื่น ๆ) นำประสบการณ์ที่สั่งสมมากว่า 200 ปีของเรามาใช้ (อ่าน: การปรับสมดุลและการเพิ่มฟีเจอร์) และส่วนสำคัญที่สุดคือการทำให้มันสนุกมากพอที่เหล่า "คนเก่าคนแก่" ที่ไม่ได้เล่น Auto Chess จะอยากเข้ามาเล่น
“พอเราก่อตั้งทีมหลักขึ้นมาได้แล้ว เราก็มีเวลาแปดสัปดาห์เพื่อวิเคราะห์ว่าเราจะสามารถสร้างเกมขึ้นมาได้หรือไม่” Riot Wrekz กล่าว “แล้วเราก็ต้องมาดูว่ามันดีจริงไหม เราอยากให้มันไม่เหมือนใครและมีความสนุกสนาน แต่ก็ยังมีสิ่งนั้นที่ดึงเราให้สนใจในเกมแนวนี้”
“ตั้งแต่วันแรก ผมก็แปะนาฬิกาวันสิ้นโลกอันเป้งไว้บนผนัง” Riot Wittrock หัวเราะ “มันน่ากลัวอยู่นิด ๆ แต่เราแขวนมันไว้ก็เพื่อให้เป็นสิ่งเตือนใจว่าเราต้องมีสมาธิอยู่เสมอ”
17 สัปดาห์ก่อนปล่อยตัว: League of Prototypes
“เราใช้ช่วงเวลาส่วนใหญ่ในสองสามอาทิตย์แรกไปกับการสำรวจว่าจะทำให้ตัวต้นแบบทำงานได้ยังไง ซึ่ง... เป็นอะไรที่ท้าทายสุด ๆ” Riot Wittrock กล่าว
ทางทีมเริ่มจากการนำองค์ประกอบต่าง ๆ ใน League มาใช้ ซึ่งก็ไม่ใช่ว่าจะราบรื่นเสมอไป
เพราะเอนจินเกมของ League นั้นถูกออกแบบเฉพาะมาเพื่อสิ่งเดียวเท่านั้น: นั่นก็คือ League of Legends ในขณะที่หลายอย่างปรับเปลี่ยนไป (อย่างแผนที่ แชมเปี้ยน หรือมังกร) แต่จำนวนผู้เล่นนั้นไม่เคยเปลี่ยน (ส่วนใหญ่นะ)
“เพราะ League นั้นถูกสร้างมาเพื่อให้ทำงานได้ดีที่สุดกับเกมที่มีผู้เล่น 10 คน และเวอร์ชันผู้เล่น 8 คนที่เราคิดไว้ของ TFT จะต้องใช้องค์ประกอบมากขึ้นอีกเยอะ เราจึงจำเป็นต้องรันเซิร์ฟเวอร์มากขึ้นเพื่อสนับสนุนจำนวนผู้เล่นที่เท่ากันนี้” Riot Nullarbor อธิบาย “แถมมันยังส่งผลหนักกับตัวไคลเอนต์อีกด้วย”
อีกทั้งเรายังอยากให้ผู้เล่นสามารถซื้อยูนิต (หรือก็คือแชมเปี้ยน) วางยูนิตอย่างมีชั้นเชิง และได้เป็นสักขีพยานในการต่อสู้ที่จะตามมา ภาพฝันของการเป็น “ผู้บัญชากองทัพ” คือหนึ่งในสิ่งที่เรารู้สึกว่าน่าสนใจมากใน Auto Chess แต่การจะทำแบบนั้นได้ ผู้เล่นแต่ละคนจะต้องเล่นแชมเปี้ยนคราวเดียวหลายตัว ซึ่งเซิร์ฟเวอร์ไม่ได้สร้างมาเพื่อรองรับการทำแบบนั้น
หมายความว่าในเกมช่วงแรก ๆ เกือบทุกเกมของ TFT จะจบลงเพราะอาการกระตุก (Lag) ไม่เคยเล่นจนจบ ไม่มีใครชนะ มีแต่กระตุกกันอย่างเดียว
กระทั่งในต้นแบบเวอร์ชันหลัง ๆ ทีมของเราก็ไม่ได้เจอแค่ปัญหากระตุกเท่านั้น จะรับมือ Rakan พวกนี้ยังไงดีเนี่ย?
“มีเก้ายูนิตประชันกับอีกเก้ายูนิต และแชมเปี้ยนสูงสุดอีก 10 ตัวในที่นั่งสำรองของผู้เล่น” Riot Nullarbor กล่าว “อาจจะมีแชมเปี้ยนมากกว่า 100 ตัวพร้อมกันในเกม อีกทั้งทีมไฟต์อันบ้าคลั่งนี่ก็ไปต่อไม่หยุดอีก เราจึงต้องนำสิ่งไม่จำเป็นออกหลายอย่าง จากนั้นก็เพิ่มประสิทธิภาพโค้ดขึ้น League มีแผนที่ใหญ่กว่าที่เราจำเป็นต้องใช้มาก ดังนั้นเราจึงหั่นส่วนนั้นออกเพื่อให้ส่วนอื่นยังทำงานได้”
15-12 สัปดาห์ก่อนปล่อยตัว: เกมเพลย์
ห้องทำงานแบบเปิดของ Riot หมายความว่าทุกคนสามารถเดินไปไหนมาไหน มองผนังที่เต็มไปด้วยงานศิลปะ ยืนส่องป้ายชื่อคนที่ใช้รูปสุนัขเป็นไอคอน Slack และสามารถเดินไปคุยที่โต๊ะคนอื่น ๆ ได้ มันส่งเสริมการทำงานร่วมกันและการแบ่งปันไอเดียต่าง ๆ แต่บางครั้งมันก็ส่งผลตรงกันข้าม ยิ่งถ้าคุณพยายามจะวิ่งเข้าเส้นชัยซึ่งอาจจะอยู่ตรงไหนก็ได้แล้วด้วย
“เราใช้เวลาส่วนใหญ่ในแปดสัปดาห์การสร้างต้นแบบไปกับการแยกตัวออกจากคนอื่น ๆ ในบริษัท ถึงขนาดเอาตัวเองเข้ามุมแล้ววางแผงกั้นรอบคนในทีมไว้ จะได้ไม่มีใครเข้ามาคุยกับเราได้” Riot Nullarbor กล่าว
“ใช่ Andrei ยังส่งอีเมลจำนวนมากไปยังคนอื่น ๆ ซึ่งสนใจในสิ่งที่เรากำลังทำว่า ไม่ต้องมาแชร์ไอเดียอะไรให้เราหรอกนะ” Riot Wrekz กล่าวเสริม “มันไม่ใช่สิ่งปกติสำหรับ Riot และให้ความรู้สึกแปลกแยกอยู่บ้าง แต่มันเป็นสิ่งสำคัญเพื่อประสิทธิภาพของผลงาน”
“และเรื่องอิทธิพล” Kilmourz พูดขึ้น “หัวหน้าอยากให้เราออกสำรวจมันด้วยตัวเอง และไม่อยากให้ได้รับอิทธิพลจากเกมแนวอื่นจนมากเกินไป”
ดังนั้นทางทีมเลยนั่งกันอยู่ในมุมเล็ก ๆ และพยายามหาวิธีว่าจะสร้าง TFT ขึ้นมายังไงดีวะเนี่ย
สัปดาห์ที่ 14: รถไฟ เมือง และอินเตอร์เฟซผู้ใช้ (UI)
“จะซื้อยูนิตจากร้านค้าได้ยังไง? ให้เป็นส่วนหนึ่งของ UI หรือจะมีโมเดลปรากฏขึ้นมา? จะมีตัวอวาตาร์เคลื่อนไปมาหรือเอาแต่คลิก ๆ ลาก ๆ?” Riot Wrekz กล่าว “มีการควบคุมพื้นฐานหลายอย่างมากมายที่เราต้องตัดสินใจไว้ตั้งแต่เนิ่น ๆ”
ตอนแรกคือไม่มี UI เลยด้วยซ้ำ เพราะความพยายามในช่วงแรกของเรานั้นลงไปกับการรันตัวต้นแบบทั้งหมด
“ตอนแรกเริ่ม เราพยายามที่จะทำความเข้าใจตัวเกมผ่านข้อความดีบั๊กที่ปริ้นออกมาในแชท” Riot Nullarbor กล่าว
“เราแค่ลองนำสิ่งต่าง ๆ มาแยกดูเผื่อมันไม่จำเป็นต้องใช้ใน TFT เวอร์ชันสุดท้าย” Riot Wrekz อธิบาย “เพราะงั้นตอนเราปรับ UI... ก็แบบว่า เราไม่ได้ปรับเปลี่ยน UI ระหว่างพัฒนาตัวต้นแบบด้วยซ้ำ เราแค่นำ UI ของ League of Legends มาแยกส่วนและก็สร้างสิ่งที่เราต้องการซ้อนโครงเดิมเอาไว้อีกที”
หัวหน้าฝ่าย QA อาวุโส Alex “Riot Ranger XIV” Sherrell แสดง UI ใหม่แสนตระการตาของ TFT
การคิด UI พื้นฐานของ TFT บีบให้ทีมต้องคิดว่าจะให้แชมเปี้ยนมาอยู่ในกระดานผู้เล่นได้ยังไง แล้วบางไอเดียมันก็... น่าสนใจมาก
“มีจุดหนึ่งที่เราจินตนาการว่าจะให้แชมเปี้ยนนั่งรถไฟมาลงกระดาน” Riot Nullarbor นึกย้อน “จะมีสถานีรถไฟขบวนน้อย ๆ จอดอยู่พร้อมกับแชมเปี้ยนที่คุณสามารถซื้อได้”
ถึงภาพ Garen, Darius, และ Warwick นั่งเรียบร้อยข้าง ๆ กันรอให้ผู้เล่นซื้อไปมันจะดูน่ารักอย่างน่าประหลาดก็เถอะ แต่ไม่นานไอเดียนั้นก็ตกรางไป ฟังก์ชันการรีโรลจะต้องเรียกรถไฟให้มาถึงและเคลื่อนขบวนไปโดยเร็วเพื่อไม่ให้ใช้เวลานานเกินควร และถึงแม้ว่าภาพรถไฟความเร็วเสียงเคลื่อนเข้าออกกระดานของคุณอาจจะฟังดูน่าสนุก แต่จำนวนทรัพยากรที่ต้องใช้รันและทำให้มันเคลื่อนไหวนั้นหนักเกินไป
“เรายังลองออกแบบให้มีเมืองล้อมรอบกระดานเอาไว้ ที่พอคุณอัปเลเวล เมืองก็จะยิ่งขยายใหญ่ขึ้นด้วย” Riot Wittrock ว่า “แชมเปี้ยนทั้งหลายจะนั่งอยู่ในร้านเล็ก ๆ ฝั่งซ้ายของกระดาน เวลาคุณซื้อก็คือคว้าพวกเขามาแล้วขว้างลงสนามไปเลย”
แต่สุดท้ายทีมก็จบลงด้วยทางอื่นแทนเพราะเหตุผลด้านการใช้งานจริง...
“League บังคับให้คุณต้องโหลดเข้าเกมในฐานะอะไรสักอย่าง” Riot Wittrock เล่า “ช่วงแรกเราเลือกใช้ Scuttle เพราะเขาก็มาจาก League”
Scuttle ในตอนเริ่มต้นจะดูบ้าบออยู่เล็กน้อย มันจะมีจุดหนึ่งที่คุณสามารถหยิบ Scuttle อีกตัวขึ้นมาแล้วปาไปมาได้ด้วย หรืออาจจะเลือกแชมเปี้ยนจากที่นั่งสำรองกลางการต่อสู้ แล้วโยนทิ้งในถังขยะรูป Tahm Kench เพื่อโชว์ให้คู่ต่อสู้เห็นว่าคุณคิดยังไง กับคอมพ์มือสังหารของพวกเขา
ยังมีบั๊กที่ทำให้ Scuttle ตัวใหญ่ขึ้น จนทำเอา Baron ดูแคระไปเลย
ถึงศึกปูปะทะปูจะเกินเลยไปหน่อย แต่มันก็เสริมความสนุกและการปฏิสัมพันธ์อีกขั้นซึ่งทางทีมชอบกันมาก ด้วยเหตุนี้ Little Legends จึงถือกำเนิดขึ้นมา (ในที่สุด)
สัปดาห์ที่ 13: รายชื่อแชมเปี้ยน
“เรามองแชมเปี้ยนใน TFT เป็นเหมือนจดหมายรักที่ส่งตรงถึงเวอร์ชัน League ของพวกเขา” Riot Wrekz กล่าว “เราอยากหาวิธีที่จะแสดงธีมหลักของแชมเปี้ยนแต่ละตัวออกมา ถึงจะไม่สามารถใช้ทุกสกิลได้ก็ตามที”
“เราไม่ได้อยากเลือกใช้แค่อัลติเมทของแชมเปี้ยนทุกตัว” Kilmourz กล่าวเสริม “ยกตัวอย่างเช่น Braum คุณหวังให้เขาเปิดอัลติแค่นั้น แต่เอกลักษณ์เด่นสุดของ Braum ก็คงจะเป็นโล่ของเขา”
ทางทีมทำงานได้ง่ายมากในการระบุภาพของแชมเปี้ยนแต่ละตัว ซึ่งบางครั่งก็อาจต้องใช้หลายสกิลรวมกัน เหมือนกับการพุ่งและยิงสองครั้งของ Lucian แต่การจัดกลุ่มแชมเปี้ยนตามหมวดหมู่คุณสมบัตินั้นยากกว่าเล็กน้อย
“เราพยายามกันมาหลายปีเพื่อทำให้แชมเปี้ยนรู้สึกเป็นเอกลักษณ์จริง ๆ” Riot Wittrock อธิบาย “ซึ่งเป็นสิ่งที่ดีมากสำหรับ League of Legends! แต่พอพยายามจัดกลุ่มพวกเขาใน TFT เราก็เจอปัญหา”
ฝ่ายและเผ่าก็น่าจะใช้เป็นหมวดหมู่ได้อยู่แล้ว
“แต่พอเราเริ่มแบ่งฝ่ายแชมเปี้ยนจริง เราก็เริ่มเข้าใจว่ามันก็ไม่ได้มีเหตุผลตรงไปตรงมาเสมอไป” Riot Wrekz ยอมรับ “Garen มาจากเดมาเซีย ส่วน Darius ก็มาจากน็อกซัส แต่แล้วก็มีแชมเปี้ยนอย่าง Janna... ซึ่งมันก็ไม่กระจ่างนักว่าเธอมาจากซอนหรือเปล่า แล้วเราก็เริ่มเจอปัญหาสุดขอบทั้งหลายที่ไม่ค่อยมีเหตุผลเท่าไหร่หลายอย่าง”
แชมเปี้ยน คอมโบ และเผ่าเปลี่ยนไปเล็กน้อยทุกวันเพื่อให้ความรู้สึกเข้ากันได้ยิ่งขึ้น
“จังหวะสำคัญเลยก็คือตอนที่เราเรียนรู้ว่าเราสามารถใช้จักรวาลแยกของ League ได้นี่นา” Riot Wittrock กล่าว “สุดท้ายเราก็เริ่มต้นด้วยวิธีเบา ๆ กันก่อน แต่การออกสำรวจจักรวาลก็ทำให้เราเริ่มจัดกลุ่มได้เป็นเหตุเป็นผลและมีความเหมาะสมมากขึ้น”
สัปดาห์ที่ 12: สู้!
“พวกเราชอบช่วงซื้อและช่วงวางแผนในเกมต่อสู้อัตโนมัติมาก” Riot Wittrock อธิบาย “แต่การต่อสู้มันมักจะซูมออกมา แล้วก็มีเอฟเฟกต์สกิลเด้งขึ้นมาเยอะแยะทำให้เข้าใจยาก เราจึงอยากที่จะปรับปรุงจุดนั้น”
แผนเหรอ? ก็คือการทำให้การต่อสู้ออกมาน่าตื่นเต้นที่สุดโดยไม่งงไง
“เราอยากให้มันออกมาเหมือนคุณกำลังดูทีมไฟต์ระดับ Bronze” Riot Wittrock กล่าว “มันเหมือนคนหลายคนออกมาร่ายสกิลในแบบที่ดูจะเข้าท่า แต่ยังไงก็ไม่เหมือนการดูผู้เล่นระดับ Diamond สู้กันอยู่ดี ให้ความรู้สึกเหมือนทีมไฟต์ใน League แต่ก็... ผิดแผกออกมานิด”
“เราอยากเลี่ยงพวกเอฟเฟกต์ที่เด้งขึ้นมาเยอะ ๆ เหมือนที่เห็นจากที่อื่น” Riot MapleNectar กล่าว “ตอนแรกเนี่ย การที่แชมเปี้ยน 18 ตัวร่ายสกิลออกมาพร้อมกันเป็นสถานการณ์ที่มองยากมาก เราเลยต้องใช้เวลาเคลียร์สิ่งต่าง ๆ กันหน่อย”
นอกจากลด VFX แล้ว ทางทีมก็ได้พบวิธีที่ทำให้เอฟเฟกต์ทั้งหลายดูง่ายขึ้นด้วย
แอนิเมชันตอนแรกเร็วไปหน่อย
แอนิเมชันที่ช้าลง
“แอนิเมชันจำนวนมากใน League นั้นเคลื่อนที่เร็วมาก” Kilmourz อธิบาย “การร่ายสกิลต้องออกมารวดเร็วและน่าพึงพอใจ แต่พอเป็นการปะทะกัน 9 ต่อ 9 มันก็ทำให้ดูยาก เราเลยต้องทำให้ทุกอย่างช้าลง”
11 สัปดาห์ก่อนปล่อยตัว: ไฟเขียว
หลังจากทดสอบ เพิ่มประสิทธิภาพ และผ่านการกระตุกกันมากว่าแปดสัปดาห์ ทีมก็ได้ออกมาเป็นตัวต้นแบบ ถึงหน้าตามันจะไม่ได้ดูดีอะไรมาก แต่มันก็โคต*สนุกเลย
“ตอนเริ่มงานนี้ เราหวังว่าตัวต้นแบบจะออกมาดูดี” Riot Wrekz ย้อนความทรงจำ “แล้วพอสุดท้ายคนอื่น ๆ ได้เล่นมันแล้ว ทุกคนก็เห็นด้วย”
ซึ่งก็หมายถึงส่วนแรก นั่นคือการทำเกมสนุก ๆ ออกมานับว่าประสบความสำเร็จแล้ว แล้วไงต่อล่ะ? ก็โยนตัวต้นแบบนั่นทิ้งไปแล้วสร้างตัวเกมจริง ๆ ขึ้นมาในเวลา 10 สัปดาห์ไงล่ะ
หมายเหตุจากผู้เขียน: อย่าลืมกลับมาในวันพรุ่งนี้เพื่ออ่านเรื่องราวของ TFT ต่อในวันที่ 5 มี.ค. เวลา 01:00 น. ตามเวลาประเทศไทย