(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 กล่าว “แล้วเราก็ต้องมาดูว่ามันดีจริงไหม เราอยากให้มันไม่เหมือนใครและมีความสนุกสนาน แต่ก็ยังมีสิ่งนั้นที่ดึงเราให้สนใจในเกมแนวนี้”

01_Doomsday_Clock.jpg

“ตั้งแต่วันแรก ผมก็แปะนาฬิกาวันสิ้นโลกอันเป้งไว้บนผนัง” Riot Wittrock หัวเราะ “มันน่ากลัวอยู่นิด ๆ แต่เราแขวนมันไว้ก็เพื่อให้เป็นสิ่งเตือนใจว่าเราต้องมีสมาธิอยู่เสมอ”

17 สัปดาห์ก่อนปล่อยตัว: League of Prototypes

02_17_Weeks_PDF.png

“เราใช้ช่วงเวลาส่วนใหญ่ในสองสามอาทิตย์แรกไปกับการสำรวจว่าจะทำให้ตัวต้นแบบทำงานได้ยังไง ซึ่ง... เป็นอะไรที่ท้าทายสุด ๆ” Riot Wittrock กล่าว

ทางทีมเริ่มจากการนำองค์ประกอบต่าง ๆ ใน League มาใช้ ซึ่งก็ไม่ใช่ว่าจะราบรื่นเสมอไป

03_Darius_AFK.png

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

“เพราะ League นั้นถูกสร้างมาเพื่อให้ทำงานได้ดีที่สุดกับเกมที่มีผู้เล่น 10 คน และเวอร์ชันผู้เล่น 8 คนที่เราคิดไว้ของ TFT จะต้องใช้องค์ประกอบมากขึ้นอีกเยอะ เราจึงจำเป็นต้องรันเซิร์ฟเวอร์มากขึ้นเพื่อสนับสนุนจำนวนผู้เล่นที่เท่ากันนี้” Riot Nullarbor อธิบาย “แถมมันยังส่งผลหนักกับตัวไคลเอนต์อีกด้วย”

อีกทั้งเรายังอยากให้ผู้เล่นสามารถซื้อยูนิต (หรือก็คือแชมเปี้ยน) วางยูนิตอย่างมีชั้นเชิง และได้เป็นสักขีพยานในการต่อสู้ที่จะตามมา ภาพฝันของการเป็น “ผู้บัญชากองทัพ” คือหนึ่งในสิ่งที่เรารู้สึกว่าน่าสนใจมากใน Auto Chess แต่การจะทำแบบนั้นได้ ผู้เล่นแต่ละคนจะต้องเล่นแชมเปี้ยนคราวเดียวหลายตัว ซึ่งเซิร์ฟเวอร์ไม่ได้สร้างมาเพื่อรองรับการทำแบบนั้น

หมายความว่าในเกมช่วงแรก ๆ เกือบทุกเกมของ TFT จะจบลงเพราะอาการกระตุก (Lag) ไม่เคยเล่นจนจบ ไม่มีใครชนะ มีแต่กระตุกกันอย่างเดียว

04_Rakan_Bug_TFT.gif

กระทั่งในต้นแบบเวอร์ชันหลัง ๆ ทีมของเราก็ไม่ได้เจอแค่ปัญหากระตุกเท่านั้น จะรับมือ Rakan พวกนี้ยังไงดีเนี่ย?

“มีเก้ายูนิตประชันกับอีกเก้ายูนิต และแชมเปี้ยนสูงสุดอีก 10 ตัวในที่นั่งสำรองของผู้เล่น” Riot Nullarbor กล่าว “อาจจะมีแชมเปี้ยนมากกว่า 100 ตัวพร้อมกันในเกม อีกทั้งทีมไฟต์อันบ้าคลั่งนี่ก็ไปต่อไม่หยุดอีก เราจึงต้องนำสิ่งไม่จำเป็นออกหลายอย่าง จากนั้นก็เพิ่มประสิทธิภาพโค้ดขึ้น League มีแผนที่ใหญ่กว่าที่เราจำเป็นต้องใช้มาก ดังนั้นเราจึงหั่นส่วนนั้นออกเพื่อให้ส่วนอื่นยังทำงานได้”

15-12 สัปดาห์ก่อนปล่อยตัว: เกมเพลย์

05_15_Weeks_PDF.png

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

“เราใช้เวลาส่วนใหญ่ในแปดสัปดาห์การสร้างต้นแบบไปกับการแยกตัวออกจากคนอื่น ๆ ในบริษัท ถึงขนาดเอาตัวเองเข้ามุมแล้ววางแผงกั้นรอบคนในทีมไว้ จะได้ไม่มีใครเข้ามาคุยกับเราได้” Riot Nullarbor กล่าว

“ใช่ Andrei ยังส่งอีเมลจำนวนมากไปยังคนอื่น ๆ ซึ่งสนใจในสิ่งที่เรากำลังทำว่า ไม่ต้องมาแชร์ไอเดียอะไรให้เราหรอกนะ” Riot Wrekz กล่าวเสริม “มันไม่ใช่สิ่งปกติสำหรับ Riot และให้ความรู้สึกแปลกแยกอยู่บ้าง แต่มันเป็นสิ่งสำคัญเพื่อประสิทธิภาพของผลงาน”

“และเรื่องอิทธิพล” Kilmourz พูดขึ้น “หัวหน้าอยากให้เราออกสำรวจมันด้วยตัวเอง และไม่อยากให้ได้รับอิทธิพลจากเกมแนวอื่นจนมากเกินไป”

ดังนั้นทางทีมเลยนั่งกันอยู่ในมุมเล็ก ๆ และพยายามหาวิธีว่าจะสร้าง TFT ขึ้นมายังไงดีวะเนี่ย

สัปดาห์ที่ 14: รถไฟ เมือง และอินเตอร์เฟซผู้ใช้ (UI)

06_14_Weeks_PDF.png

“จะซื้อยูนิตจากร้านค้าได้ยังไง? ให้เป็นส่วนหนึ่งของ 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 เพื่อโชว์ให้คู่ต่อสู้เห็นว่าคุณคิดยังไง กับคอมพ์มือสังหารของพวกเขา

10_Baron_for_Scale_Shareable.png

ยังมีบั๊กที่ทำให้ Scuttle ตัวใหญ่ขึ้น จนทำเอา Baron ดูแคระไปเลย

ถึงศึกปูปะทะปูจะเกินเลยไปหน่อย แต่มันก็เสริมความสนุกและการปฏิสัมพันธ์อีกขั้นซึ่งทางทีมชอบกันมาก ด้วยเหตุนี้ Little Legends จึงถือกำเนิดขึ้นมา (ในที่สุด)

สัปดาห์ที่ 13: รายชื่อแชมเปี้ยน

11_13_Weeks_PDF.png

“เรามองแชมเปี้ยนใน TFT เป็นเหมือนจดหมายรักที่ส่งตรงถึงเวอร์ชัน League ของพวกเขา” Riot Wrekz กล่าว “เราอยากหาวิธีที่จะแสดงธีมหลักของแชมเปี้ยนแต่ละตัวออกมา ถึงจะไม่สามารถใช้ทุกสกิลได้ก็ตามที”

12_TFT_Combat.gif

“เราไม่ได้อยากเลือกใช้แค่อัลติเมทของแชมเปี้ยนทุกตัว” Kilmourz กล่าวเสริม “ยกตัวอย่างเช่น Braum คุณหวังให้เขาเปิดอัลติแค่นั้น แต่เอกลักษณ์เด่นสุดของ Braum ก็คงจะเป็นโล่ของเขา”

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

“เราพยายามกันมาหลายปีเพื่อทำให้แชมเปี้ยนรู้สึกเป็นเอกลักษณ์จริง ๆ” Riot Wittrock อธิบาย “ซึ่งเป็นสิ่งที่ดีมากสำหรับ League of Legends! แต่พอพยายามจัดกลุ่มพวกเขาใน TFT เราก็เจอปัญหา”

ฝ่ายและเผ่าก็น่าจะใช้เป็นหมวดหมู่ได้อยู่แล้ว

“แต่พอเราเริ่มแบ่งฝ่ายแชมเปี้ยนจริง เราก็เริ่มเข้าใจว่ามันก็ไม่ได้มีเหตุผลตรงไปตรงมาเสมอไป” Riot Wrekz ยอมรับ “Garen มาจากเดมาเซีย ส่วน Darius ก็มาจากน็อกซัส แต่แล้วก็มีแชมเปี้ยนอย่าง Janna... ซึ่งมันก็ไม่กระจ่างนักว่าเธอมาจากซอนหรือเปล่า แล้วเราก็เริ่มเจอปัญหาสุดขอบทั้งหลายที่ไม่ค่อยมีเหตุผลเท่าไหร่หลายอย่าง”


“จังหวะสำคัญเลยก็คือตอนที่เราเรียนรู้ว่าเราสามารถใช้จักรวาลแยกของ League ได้นี่นา” Riot Wittrock กล่าว “สุดท้ายเราก็เริ่มต้นด้วยวิธีเบา ๆ กันก่อน แต่การออกสำรวจจักรวาลก็ทำให้เราเริ่มจัดกลุ่มได้เป็นเหตุเป็นผลและมีความเหมาะสมมากขึ้น”

สัปดาห์ที่ 12: สู้!

17_12_Weeks_PDF.png

“พวกเราชอบช่วงซื้อและช่วงวางแผนในเกมต่อสู้อัตโนมัติมาก” Riot Wittrock อธิบาย “แต่การต่อสู้มันมักจะซูมออกมา แล้วก็มีเอฟเฟกต์สกิลเด้งขึ้นมาเยอะแยะทำให้เข้าใจยาก เราจึงอยากที่จะปรับปรุงจุดนั้น”

แผนเหรอ? ก็คือการทำให้การต่อสู้ออกมาน่าตื่นเต้นที่สุดโดยไม่งงไง

“เราอยากให้มันออกมาเหมือนคุณกำลังดูทีมไฟต์ระดับ Bronze” Riot Wittrock กล่าว “มันเหมือนคนหลายคนออกมาร่ายสกิลในแบบที่ดูจะเข้าท่า แต่ยังไงก็ไม่เหมือนการดูผู้เล่นระดับ Diamond สู้กันอยู่ดี ให้ความรู้สึกเหมือนทีมไฟต์ใน League แต่ก็... ผิดแผกออกมานิด”

“เราอยากเลี่ยงพวกเอฟเฟกต์ที่เด้งขึ้นมาเยอะ ๆ เหมือนที่เห็นจากที่อื่น” Riot MapleNectar กล่าว “ตอนแรกเนี่ย การที่แชมเปี้ยน 18 ตัวร่ายสกิลออกมาพร้อมกันเป็นสถานการณ์ที่มองยากมาก เราเลยต้องใช้เวลาเคลียร์สิ่งต่าง ๆ กันหน่อย”

นอกจากลด VFX แล้ว ทางทีมก็ได้พบวิธีที่ทำให้เอฟเฟกต์ทั้งหลายดูง่ายขึ้นด้วย

19_Initial_Speeds_TFT.gif

แอนิเมชันตอนแรกเร็วไปหน่อย

20_Proposed_Speeds_TFT.gif

แอนิเมชันที่ช้าลง

“แอนิเมชันจำนวนมากใน League นั้นเคลื่อนที่เร็วมาก” Kilmourz อธิบาย “การร่ายสกิลต้องออกมารวดเร็วและน่าพึงพอใจ แต่พอเป็นการปะทะกัน 9 ต่อ 9 มันก็ทำให้ดูยาก เราเลยต้องทำให้ทุกอย่างช้าลง”

11 สัปดาห์ก่อนปล่อยตัว: ไฟเขียว

21_11_Weeks_PDF.png

หลังจากทดสอบ เพิ่มประสิทธิภาพ และผ่านการกระตุกกันมากว่าแปดสัปดาห์ ทีมก็ได้ออกมาเป็นตัวต้นแบบ ถึงหน้าตามันจะไม่ได้ดูดีอะไรมาก แต่มันก็โคต*สนุกเลย

“ตอนเริ่มงานนี้ เราหวังว่าตัวต้นแบบจะออกมาดูดี” Riot Wrekz ย้อนความทรงจำ “แล้วพอสุดท้ายคนอื่น ๆ ได้เล่นมันแล้ว ทุกคนก็เห็นด้วย”

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

หมายเหตุจากผู้เขียน: อย่าลืมกลับมาในวันพรุ่งนี้เพื่ออ่านเรื่องราวของ TFT ต่อในวันที่ 5 มี.ค. เวลา 01:00 น. ตามเวลาประเทศไทย