OngkrubG   02-12-2024, 02:52 PM
#1
[Image: 7mDhHgb.gif]
[Image: lsI7SWk.png]
"ถ้าเราเป็นคนขับรถไฟที่ต้องปกป้องรถไฟ บริหารรถไฟ วางแผนการเดินทาง และทำอะไรต่อมิอะไรในสงคราม แนวรบ และเหตุการณ์ที่จะเปลี่ยนไปเรื่อยๆ" 

สวัสดีครับท่านสมาชิก IRPG ทุกท่าน ผมอ๋องนะครับ หรือคนในกลุ่มอื่นเรียกว่าเทพ คือต้องบอกก่อนว่าผมหายไปจากบอร์ด แชท หรือดิสของที่นี่นานโคตร จนหลายๆ คนที่ผมเคยคุยด้วยอาจจะลืมผมไปแล้ว แม้จะก่อวีรกรรมสมัยเด็กไว้เยอะขนาดไหนก็ตาม (5555) แต่ก็ต้องขอบคุณชุมชนนี้ที่ทำให้ผมมีพื้นที่เรียนรู้และไอเดียในการจะทำอะไรแบบนี้ (คือการสร้างเกม) จนตอนนี้ก็โตจนอายุ 20 ขวบแล้ว ได้เป็นสตรีมเมอร์รายจิ๋ว มีพื้นที่ในการพูดของตัวเอง ได้ถามความคิดเห็นกับการแนะนำจากใครหลายๆ คน รวมถึงการค้นพบเครื่องมือใหม่ที่จะพูดถึง ทั้งหมดรวมกันเกิดเป็นเกมนี้ขึ้นมา (ที่ในระหว่างตอนพิมพ์กระทู้นี้กำลังอยู่ในขั้นตอนเอกสาร สร้าง prototype และฝึกใช้โปรแกรม) และวันนี้ ผมจะใช้กระทู้นี้ในการอธิบายไอเดียและบันทึกหลายๆ สิ่งหลายๆ อย่างที่จะเกิดขึ้นในการทำเกมของผมครับ (ในภาษาไทย ภาษาอังกฤษผมจะลงอีกที่ที่ผมกำลังเลือกอยู่ครับ)

บอกไว้ก่อนว่าจริงๆ ผมไม่เคยเขียน Devlog มาก่อน Devlog หลักๆ ที่ผมจะพยายามเลียนแบบคือของเกม Stardew Valley โดย Eric Barone นั่นแหละ คำที่ใช้หรือข้อมูลที่ผู้อ่านได้อาจจะไม่ได้โหดเท่าท่านผู้เป็นมืออาชีพ แต่ผมจะพยายามพัฒนาไปเรื่อยๆ ครับ555

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

ปล. เหล่านี้เป็นคำอธิบายแบบที่ผมอยากบอกกับเพื่อนนักสร้างเกมครับ เพราะอยากให้คนที่ไม่ค่อยทราบแนวคิดของผมได้อ่าน หรือให้คนที่เก่งกว่าผมช่วยติชม ไม่ต้องห่วงว่าผมจะเอาอะไรยาวๆ แบบนี้ไปโฆษณาให้ผู้เล่นอ่านนะครับ 555

ต้นกำเนิด Concept เกม (กระบวนการคิด)
(ผมพูดถึงประโยค Concept ในอัญประกาศใต้โลโก้นะครับ)

ก่อนที่จะเกิดแนวคิดของเกมนี้ขึ้นมา ผมเคยอยากทำเกมการเมือง/บริหาร แนวเกม Suzerain รวมกับ UI คล้าย Papers, Please แต่เปลี่ยนจากที่เราเป็นผู้นำแบบ Suzerain กลายเป็นผู้ใต้บังคับ รับคำสั่ง แบบ Papers, Please แทน เพราะผมไปเจอเครื่องมือหนึ่งที่ดีกว่า RPG Maker ที่ใช้มาทั้งชีวิตและโคตรจำกัดมา คือ GDevelop (ในหัวข้อต่อๆ ไป) โดยผมเอาเงิน 120 บาทไปซื้อหนังสือเกมดีไซน์แบบโคตรพื้นฐานมานั่งอ่าน พออ่านเสร็จพอมั่นใจก็ลองมานั่งเขียนเอกสารดู แต่พอเขียนเอกสารดีไซน์ของไอเดียนี้ไปเรื่อยๆ มันดันตัน คือมันไม่มี Core หรือแกนระบบหลัก ยิ่งทำไปแบบนี้มันจะยิ่งไม่เวิร์กแน่ เลยลองคิดไอเดียอีกไอเดีย ที่เกี่ยวกับการเป็นทหารใต้บังคับบัญชาอีกที แต่พอเขียนเอกสารออกมาอีกรอบ มันก็ไม่เวิร์กเหมือนกัน เพราะกลายเป็นว่าผู้เล่นจะต้องทำตามที่เกมบอก = ไม่เป็นเกม! จนลองศึกษาแนวคิดไปเรื่อยๆ ลองคิดว่าเกม Suzerain คือเราเป็นผู้นำประเทศ Core หลักก็เลยเป็นเกมแนว Novel บริหารความสัมพันธ์และตัวเลือกเกี่ยวกับเศรษฐกิจและการเมือง มีตัวเลือกที่แตกต่างกันเยอะมาก ทางจบหลักก็ค่อนข้างเยอะสมราคาเกม เกม Papers, Please เราเป็นตม. แกนหลักเลยเป็น puzzle การตรวจเอกสารและทำตามกฎที่เกม (รัฐบาลในเกม) ให้มา และเนื้อเรื่องกับธีมก็ผูกเข้ากับระบบเกม จากสองข้อนี้ ผมเลยไปนึกถึงสิ่งที่เป็นอาชีพๆ นึงที่เป็นความฝันวัยเด็กเข้า คือพนักงานรถจักร หรือคนขับรถไฟ ซึ่งถ้าคนอื่นหรือผมตอนเมื่อก่อนนึกถึง มันก็คงต้องเป็นเกมขับรถไฟแบบ Train Simulator สิ มันจะเป็นอย่างอื่นได้ยังไง คิดแล้วคิดเล่า ผมก็ไปนึกถึงเรื่องๆ นึงเข้าให้ เป็นที่รู้กันทั่วในกลุ่มคนที่รู้จักผมว่าผมชอบเรื่องประวัติศาสตร์มาก เรื่องที่ผมนึกถึงเป็นเรื่องของ "ไทยถีบ" ขบวนการกองโจรในสงครามโลกครั้งที่ 2 ในไทยที่คอยขัดขวางการทำงานส่งยุทธปัจจัยของญี่ปุ่นในไทย ส่วนเบื้องลึกผมจะไม่พูดถึงในที่นี้ จนทำให้เกิดความคิดที่ว่า "แล้วคนขับรถไฟต้องทำยังไงวะ" แล้วก็ปิ๊งเป็นไอเดียว่า "ถ้าเกิดว่าเราเป็นคนขับรถไฟที่ต้องปกป้องรถไฟล่ะ" หลังจากการคิดวิเคราะห์ประมาณสองสัปดาห์ จนถึงตอนที่พิมพ์อยู่นี้ มันก็ตกผลึกกลายเป็นไอเดียที่ว่านี้แหละครับ

อธิบาย Concept เกม

ปล. คอนเซ็ปต์นี้เป็นคอนเซ็ปต์หลัก ไม่ใช่การ promise ในระบบอะไร จะมีระบบย่อยๆ ที่ถูกเปลี่ยนในระหว่างการพัฒนาแน่ๆ

เรื่องของ Genre: ผมจัดให้เกมของผมถูกเรียกว่า 2D Side-Scrolling Shooter and Strategy with Roguelite Elements ให้พูดตามตรงคือผมไม่ค่อยเข้าใจว่า Roguelike หรือ Roguelite คืออะไร จนกระทั่งผมไปเจอคนบอกว่าเกม Rimworld เป็น "Roguelite Strategy" (รวมทั้งสองคำ) ถ้าสิ่งที่คนๆ นั้นพูดถูกต้อง เกมของผมน่าจะถูกจัดเข้าไปอยู่ในหมวดเดียวกันหรือคล้ายๆ กัน ซึ่งผมเลือกที่จะเรียกมันว่า Roguelite เนื่องจาก Roguelike ของจริงส่วนใหญ่จะโหดนรกและเน้นให้ผู้เล่นเริ่มใหม่ตั้งแต่ต้นจนเก่งขึ้นเรื่อยๆ แต่ของผมจะเน้นออกแบบให้ผู้เล่นเจออะไรที่คาดไม่ถึงแล้วฟื้นตัวขึ้นมาเหมือน Rimworld โหมด Classic (ตัว Cassandra ความยากเหวี่ยงไม่เยอะ) ระดับประมาณ Adventure Story (กลางๆ) มากกว่า ซึ่งผมจะอธิบายแบบนี้ ที่คนๆ นั้นจัด Rimworld เป็น Roguelite Strategy เป็นเพราะ 1.เริ่มเกมมาแตกต่างกันตลอด (ถ้าไม่ลงม็อด) 2.อุปสรรคหรือสิ่งที่แต่ละผู้เล่นเจอจะไม่ตายตัวและถูกเปลี่ยนไปตามที่สุ่ม โดยมีพื้นฐานความยากหรือความเหวี่ยงของการสุ่มตามที่ผู้เล่นเลือก 3.เวลาผู้เล่นเจออุปสรรค ความโหดของอุปสรรคนั้นมักทำให้ผู้เล่นถอยหลัง ไม่ใช่ทำให้ตายจบเริ่มใหม่ไปเลย ซึ่งถ้าเราไปมองคำนิยามของ Roguelite มันก็ใกล้เคียงแบบเฉียดๆ พอดี แต่ถ้าใครจะแย้ง ผมยินดีครับ เพราะผมรู้สึกว่าเรื่อง Roguelike นี่ ไม่ใช่แนวผมจริงๆ 5555

อธิบายองค์ประกอบแกนหลักทีละข้อ:

> ปกป้องรถไฟ (ด้านการต่อสู้): ศัตรูจะไล่ตามรถไฟและกระโดขึ้นมาแบบหนังคาวบอย หรือแอบขึ้นรถไฟในขณะที่รถไฟช้าหรือจอดนิ่ง หมวดนี้ผมจะพยายามออกแบบให้ผู้เล่นสามารถค่อยๆ เรียนรู้การใช้ความเป็น "คนขับรถไฟ" ให้เป็นประโยชน์ที่สุด แต่สิ่งนี้เป็นอุปสรรคกับการออกแบบของผมมากตั้งแต่ต้นคิดไอเดีย เพราะว่าการสู้รบจะถูกจำกัดฉากแค่ในตู้รถไฟ บนหลังคารถไฟ และบนพื้นระหว่างทางที่รถไฟอาจจะกำลังขยับหรือจอดนิ่ง หรือสถานีที่รถไฟจอดนิ่งเท่านั้น ความสามารถหลักๆ ของผู้เล่นในหมวดนี้คือการออกแบบลำดับตู้รถไฟ ตำแหน่งการวางพัสดุหรือสินค้า (เช่นระเบิด) และโดยเฉพาะการควบคุมความเร็วของรถไฟ ทั้งหมดเพื่อให้เกิดเป็นความได้เปรียบในการต่อสู้ ถ้ารถไฟกำลังวิ่งอยู่และตู้หนึ่งถูกทำลาย ตู้นั้นและตู้ต่อไปจะหลุดหายไปด้วยทันที แต่จะมีอุปกรณ์ให้ผู้เล่นแก้ทาง (ดึงรถไฟกลับ) ได้ ส่วนนี้จะทำให้การจัดวางตำแหน่งขบวนสำคัญยิ่งขึ้นไปอีก

> บริหารรถไฟ (ด้านการบริหาร): ผู้เล่นต้องวางแผนการใช้ทรัพยากรบางอย่าง (ไม่เยอะมาก) หลักๆ คือถ่านหิน/ถ่านไม้ เงิน (เครดิต) กับกระสุนปืน หากถ่านทั้งหมดหมดลง รถไฟจะเคลื่อนที่ได้แค่ความเร็วช้าสุด ซึ่งทำให้การเดินทางช้าและเสี่ยงเป็นเป้าการโจมตี อีกทั้งยังทำให้ข้อได้เปรียบหลายๆ อย่างในการต่อสู้หายไปด้วย เครดิตใช้ในการซื้อทรัพยากรอย่างอื่น และใช้รับสินค้าบางอย่างไปส่งในสถานีหน้า ที่จะได้รับเครดิตตอบแทนมากกว่า และผู้เล่นต้องออกแบบการจัดลำดับตู้รถไฟ ที่จะส่งผลต่อความสะดวกในการเดินทางของผู้เล่นและความได้เปรียบในการต่อสู้และการป้องกันผู้โดยสารกับของบางสิ่งที่ขนส่งในรถไฟ

> วางแผนการเดินทาง (ด้านการวางแผน): เป็นจุดที่ผมลงแรงคิดเยอะที่สุด ถ้าไม่มีจุดนี้ก็ไม่ใช่เกมๆ นี้เลย และเป็นองค์ประกอบที่ทำให้เข้าข่ายคำว่า Roguelite มากที่สุด เนื่องจากผู้เล่นต้องเป็นคนขับรถไฟในช่วงสงครามที่แนวรบ ทรัพยากร และอุปสรรคจะเปลี่ยนไปเรื่อยๆ ไม่ตายตัว ทั้งจากการสุ่มและการกระทำของผู้เล่น (แบบหน้ามีน้ำหนักกว่า) อีกทั้งข้อมูลสำหรับการวางแผนเหล่านี้จะไม่ถูกนำมาให้ผู้เล่นตรงๆ แต่จะมาในรูปแบบของคำพูดของผู้โดยสารบนรถไฟ หนังสือพิมพ์ หรือจดหมาย/โทรเลข ผู้เล่นจะต้องนำข้อมูลเหล่านี้มาจดลงบนแผนที่ที่เกม generated ให้ตั้งแต่ต้นเกม ในแผนที่จะประกอบด้วยเมือง/สถานีรถไฟ แหล่งทรัพยากร/สินค้าของสถานี สายโทรเลข ถนน (ส่วนนี้อาจจะถูกเปลี่ยนในช่วงพัฒนาบ่อยหน่อยเพื่อความสมดุล) แต่ข้อมูลที่ผู้เล่นได้มาก็อาจจะไม่ตรงกับความเป็นจริง อาจจะเป็นข่าวชวนเชื่อของรัฐบาล ข่าวลือ หรือข่าวปลอมจากสายของศัตรู ผู้เล่นต้องเอาข้อมูลหลายๆ อย่างมาปะติดปะต่อกันเอง รวมทั้งจะมีโทรเลขที่จะช่วยให้ผู้เล่นควบคุมความเป็นไปบางอย่าง เช่น แนวรบโดยเฉพาะในสถานีที่จอดได้ ราคาสินค้า ทรัพยากร เหล่านี้จะถูกออกแบบเพื่อให้การวางแผนในเกมลึกขึ้นไปอีก

Disclaimer: เอาจริงๆ ตอนที่ไอเดียโผล่มาครั้งแรกผมไม่รู้ว่ามีเกมที่มองไอเดียแล้วอาจจะคล้ายกันมาก คือ Last Train Home เกมรถไฟที่เล่าเรื่องของกองกำลังเชคโกสโลวักที่ไปติดอยู่บนรถไฟในสงครามกลางเมืองรัสเซีย เกมนั้นเราต้องบริหารทรัพยากร อาหาร วางแผนการเดินทาง แล้วคุมทหารต่อสู้เหมือน Company of Heroes ด้วย

งานศิลป์ ธีม และเนื้อเรื่อง

"ญี่ปุ่นบุกไทย แต่เราไม่ยอม"

อธิบายปูมหลัง/ธีม (Backstory/Theme): คือเกมจะเซ็ตอยู่ในประเทศไทยในช่วงสงครามโลกที่ 2 ตอนที่ญี่ปุ่นยกพลขึ้นบก ในชีวิตจริงเรารบกันประมาณ 8 ชั่วโมงแล้วยอมให้ญี่ปุ่นผ่านทาง แต่เนื้อเรื่องของเกมนี้คือเพื่อเปิดทางให้เกมทำอะไรก็ได้แต่ก็ไม่ต้องสร้างโลกทั้งใบขึ้นมา + เพื่อให้สามารถ relate ไปยังโลกความเป็นจริงได้ ก็จะเป็นตามคำโปรย คือ ในเนื้อเรื่อง ไทยจะรบกับญี่ปุ่นกันแบบเต็มตัว การออกแบบแผนที่หลักๆ ของเกมจะอิงตั้งแต่กรุงเทพฝั่งธนบุรี ชุมทางหนองปลาดุก (นครปฐม) จนถึงชุมทางหาดใหญ่ (สงขลา) หรือก็คือทางรถไฟสายใต้นั่นเอง

อธิบายงานศิลป์: ตามรูปตัวอย่างสั้นๆ ด้านบนสุด ผมใช้ภาพพิกเซล สีโทนขาว-ดำแบบ Sepia สาเหตุที่ใช้ภาพพิกเซลคือเหตุผลเบสิคครับ คือมันเป็นแนวศิลป์เดียวที่ผมจะทำไปใส่ในเกมได้มีประสิทธิภาพมากสุด ส่วนเรื่องสี ผมได้แรงบันดาลใจมาจากหนังเรื่อง Godzilla (1954) เป็นหลัก และเรื่อง Oppenheimer ของ Nolan ด้วย ผมพยายามออกแบบให้สีมีโทนน้อยที่สุด แต่ก็มีรายละเอียดในภาพมากที่สุด เพื่อให้ผู้เล่นโฟกัสกับการเฝ้าระวังระหว่างการเดินทาง (เวลารถไฟวิ่งเร็วๆ) และวางแผนด้วยแผนที่มากกว่าที่จะนั่งดูสีสดๆ ผ่านจอไปไวๆ (ข้อนี้แย้งหรือติชมได้ครับ ผมอาจจะคิดผิด แต่ผมคงไม่เปลี่ยนโทนสีของเกมแน่) ส่วนเรื่องโลโก้ โลโก้ Ref มาจากโลโก้ ร.ฟ.ท. (การรถไฟไทย) จากข้างรถไฟช่วงสงครามโลกครั้งที่ 2 ในชีวิตจริงครับ (รูปข้างล่าง)

[Image: 3NiAilJ.jpeg][Image: iDo8oTn.jpeg][Image: 3W4IUua.jpeg][Image: bTnGzRY.jpeg]
(จากซ้ายไปขวา) โบกี้ขนถ่านที่มีโลโก้ที่เป็นต้นแบบของโลโก้เกม > โมเดลรถไฟต้นแบบของรถไฟในเกม > รถไฟอันเดียวกันของจริง > ภาพต้นแบบขบวนรถไฟในเกม
ผมขออนุญาตเพจทางรถไฟสายมรณะมาแล้วครับ เพจตามลิงก์นี้เลย Facebook ผมต้องขอบคุณเพจนี้มากๆ ที่อนุญาตให้ผมใช้ภาพและข้อมูลทำงานศิลป์ในเกมนี้ครับ

อธิบายประเด็นที่ว่ารถไฟเดินทางจากขวาไปซ้าย: อีกเรื่องคือ ปกติ เกมทั่วไปตั้งแต่ Mario ยันเกม 2D ยุคใหม่ๆ ตัวละครหรือพาหนะของเราจะไปจากซ้ายไปขวา เหมือนกับการอ่านตัวอักษรที่คุณอ่านอยู่ตอนนี้ การเดินทางจากซ้ายไปขวา มันให้ความรู้สึกของความก้าวหน้าของเนื้อเรื่อง แต่ผมทำกลับกัน และไม่ว่าใครจะมาบอกอะไร ผมก็จะไม่เปลี่ยนแน่ๆ (แต่แสดงความเห็นได้นะครับ) คือเกมของผม รถไฟจะไปจากขวาไปซ้าย แนวคิดนี้ผมได้มาจากหนังเรื่อง Parasite ของบองจุนโฮ หนังเรื่องนั้น เวลาเนื้อเรื่องตกต่ำลง ระดับความสูงของสถานที่จะต่ำลงไปด้วย เช่นการลงบันได ฉากที่ไปอยู่ใต้โต๊ะ ฉากที่ไปอยู่ใต้ดิน ผมเลยเอาแนวคิดนี้มาอธิบายการที่รถไฟของผมไปจากขวาไปซ้ายว่า ผมต้องการให้ผู้เล่นรู้สึกว่าทุกอย่างจริงๆ แล้วมันถอยหลังลงเรื่อยๆ คุณเป็นพลเรือน พนักงานรถจักร (ที่ถือปืน) แต่คุณต้องขับรถไฟของคุณเข้าไปในเขตที่สงครามรุนแรงขึ้นเรื่อยๆ พร้อมกับระดับความยากที่เพิ่มขึ้นเรื่อยๆ เช่นกัน - แต่กลับกัน เมื่อรถไฟถูกโจมตีจากท้ายขบวน ผู้เล่นต้องเดินยิงจากซ้ายไปขวา เพื่อจะดันศัตรูไปที่ท้ายขบวน เมื่อผู้เล่นสามารถดันไปจนถึงท้ายขบวน ผู้เล่นจะได้รู้สึกถึงความก้าวหน้าของตัวเอง -ว่าตัวเองสามารถกำจัดศัตรูได้ อย่างน้อยก็ในศึกครั้งนึง อีกเรื่องหนึ่งที่อิทธิพลกับความคิดนี้ของผมคือเรื่องง่ายๆ คือการดูแผนที่ครับ ถ้าคุณยืนมองจากกรุงเทพในแผนที่แล้วหันไปทิศตะวันตก รถไฟสายใต้มันจะเดินทางจากขวาไปซ้ายเพื่อลงใต้พอดี ทำให้ด้านชายฝั่งอ่าวไทยจะอยู่ทางฝั่งที่ผู้เล่นนั่ง ก็เข้ากับการที่ศัตรูเวลาบุกจะมาจากด้านซ้ายของรถไฟที่ผู้เล่นเห็นตรงหน้าพอดี (อย่างน้อยก็ในความคิดของผมน่ะนะ)

เรื่อง Technical

GDevelop: ผมใช้เอนจิ้นชื่อนี้ในการทำครับ ตอนแรกคิดว่าจะเป็นเอนจิ้นหมูๆ ไก่ๆ ทำเกมกระโดดๆ ปรากฎว่าลองใช้จริง ผมดันค้นพบว่ามันสามารถทำสิ่งที่ผมอธิบายทั้งหมดข้างต้นได้ซะด้วยน่ะสิ (ผมมีตัว prototype แบบเบสิคมากๆ นะครับ ไม่ต้องห่วงว่าจริงๆ แล้วมันจะทำไม่ได้ 555) เอาตามตรงผมเคยคิดมาตลอดตั้งแต่เข้ากลุ่ม IRPG เมื่อ 10 ปีที่แล้วว่า "xูจะใช้ RPG Maker จนวันสุดท้ายของชีวิต" จนกระทั่งเมื่อหนึ่งเดือนก่อนหน้า ผมไปรู้จัก GDevelop เข้าให้ครับ GDevelop เป็นโปรแกรมเอนจิ้นเกมฟรี ไม่มีค่าใช้จ่ายอะไรเลยแม้แต่นิดเดียว ระบบของมัน ผมไม่ทราบเรื่องการเขียนโปรแกรมมาก แต่คิดว่ามันคล้ายการเขียน Script Unity แบบที่ให้คุณเลือกเงื่อนไข (ทางซ้าย) และการกระทำ (ทางขวา) แบบเลือกหยิบแทน ซึ่งสำหรับผมที่เข้าใจ Logic การเขียนโปรแกรม แต่เขียนโปรแกรมภาษาอะไรไม่เป็น (เพราะใช้ RPG Maker มาทั้งชีวิต 5555) GDevelop มันคือแสงสว่างของผมเลย ข้อจำกัดน้อยมากๆ อาจมีบัคนิดหน่อย แต่รวมๆ แล้ว สำหรับเกมที่ผมจะทำ ยังไงก็เป็นตัวเลือกที่ดีกว่า RPG Maker มากๆๆๆๆๆ ซึ่งผมไม่รู้ว่าในกลุ่มนี้มีคนรู้จักน้อยมากเท่าใด แต่ถ้าเกิดผมรู้สึกว่าผมรู้เยอะพอผมอาจจะมาเขียนวิธีใช้ในบอร์ดนี้หรือสักที่นึงแหละครับ

Aseprite: ผมใช้โปรแกรมนี้วาดภาพพิกเซลและอนิเมชั่นทั้งหมดครับ (ยกเว้นโลโก้น่ะนะ)


[Image: Y54dYev.png]  [Image: 9jIVE2l.png]

ช่วงท้ายก่อนจะเริ่ม Devlog

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

ก่อนจบผมขอฝากช่องทางติดตามอื่นของผมหน่อย
Youtube ช่อง Monsieur Hamter ที่ผมลงไฮไลท์สตรีมของผม อาจจะมีเรื่องที่ไม่ใช่การทำเกมด้วย 
Facebook เพจชื่อเดียวกันกับยูทูป ที่ผมคิดว่าอาจจะลงอะไรนิดหน่อย (แต่ไม่ค่อยได้ลง)
Facebook ส่วนตัว สำหรับคนที่อยากคุยตัวต่อตัวครับ แต่ถ้าคุยไม่เกิน 4 ประโยค คอมเม้นต์หรือทางเพจจะดีกว่าครับ555

แล้วพบกันนะครับ!

[Image: MoRG1rR.gif] [Image: sNxNYUx.gif]
*ภาพเหล่านี้เป็นภาพตอนเทสระบบเกม เกมจริงๆ ที่ออกตอนท้ายสุดภาพนี้จะถูกเปลี่ยนไปมากๆ*
กหฟ
This post was last modified: 02-12-2024, 02:53 PM by OngkrubG.

[Image: lsI7SWk.png]
OngkrubG   03-23-2024, 06:27 PM
#2
Devlog 1: 23/3/2024

เดือน(ครึ่ง)แรกของการพัฒนา ให้บอกตามตรงผมไม่พอใจกับประสิทธิภาพการทำงานของตัวเองเท่าไหร่ เพราะงานของ phase นี่มันไปตกอยู่กับเอกสารแล้วก็การ implement ลงใน engine เป็นส่วนใหญ่ แต่ถ้าพูดถึงผลลัพธ์ก็ออกมาโอเคเลย ได้เรียนรู้อะไรหลายอย่างโดยเฉพาะกับงาน programming กับ game design โดยงานหลักๆ ที่เป็นรูปเป็นร่างออกมามีประมาณนี้:

ออกแบบระบบแผนที่ 
(ที่ใช้เป็นระบบหลัก) อาจจะอายคนที่ทำ procedural generation เก่งๆ นิดนึง แต่อันนี้สำหรับผมทำได้ก็มหัศจรรย์ละ แล้วก็ simple พอสำหรับระบบเกม แผนที่ที่ได้ออกมาจะเป็นแผนที่ 2d แบ่งเป็น grid แต่ละ grid จะมีค่าเฉพาะที่เอาไว้กำหนดอีเว้นต์ เช่นการเคลื่อนที่ของศัตรู การ generate จะต้องไปกำหนดค่าที่ส่วนใหญ่จะเป็นค่า max กับค่า min ไม่ใช่แบบโหดๆ ที่ใช้พวก noise กำหนดกัน ซึ่งตอนนี้ทำถึงขั้นลากเส้นรางรถไฟแล้วแต่ยังไม่เสร็จ และก็โชคดีมากที่ระบบเกมเราเดินทางได้แค่ทางเดียว เลยทำให้การทำระบบนี้ง่ายขึ้นเยอะ เพราะต้อง generate ด้านน้ำ(สีฟ้า)แค่ด้านเดียว แล้วก็ไบโอม(สีแปลกๆ)แค่ X ละไบโอม หน้าตาของแผนที่จะประมาณนี้ ซึ่งผู้เล่นจะไม่เห็นนะ ผู้เล่นจะเห็นเป็นอีกแบบนึง ซึ่งก็ต้องไปทำกันต่อ
[Image: ZK2s8iQ.png]
ระบบอาวุธระยะไกล
จริงๆ ในภาพตัวอย่างก็เห็นแล้วว่ามีปืนที่ยิงได้ แต่อันนั้นบอกตามตรงเป็นการเขียนโค๊ดปืนที่ไม่สนความ flexible ของโค๊ดเลย คือเขียนโค๊ดเดียวก็ได้ปืนอันเดียว เปลี่ยนมาเป็นอันนี้ คือปืนจะถูกกำหนดค่าเป็นสิบๆ ค่า แล้วระบบที่เล็กกว่าเดิมมากจะเอาค่านั้นมาเข้ากระบวนการ กลายเป็น animation และ behavior ของปืนที่โผล่ให้คนเล่นเห็น หมายความว่าโค๊ดเดียว จะเพิ่มปืนเป็นสิบเป็นร้อยก็ได้ แถมใช้ได้ทั้งตัวคนเล่นและ AI ในเกม แต่อาจจะจำกัดเล็กน้อยที่ท่าการรีโหลดมีแค่สองแบบ คือแบบ magazine/clip และ round(เดี่ยว) แล้วก็ไม่มีพวกปืน burst-fire ที่ก็ไม่น่าเป็นอะไรเพราะในยุคของเกมไม่ค่อยมีปืนอย่างนั้นอยู่แล้ว ซึ่งผมเดาว่าพวกเกมใหญ่ๆ หรือเกมที่คนสร้างเขียนระบบเก่งก็น่าจะทำกันประมาณนี้แหละมั้ง ซึ่งก็ยังไม่เสร็จเหมือนกับระบบแผนที่ ต้องไปต่อเติมกันเรื่อยๆ แต่ถ้าสนใจอยากรู้เบื้องลึก หลังไมค์ได้ครับ55
[Image: z7FMtiC.gif]
แล้วก็อันสุดท้ายของ Devlog นี้ ระบบ spawn ตัวรถไฟ
เป็นระบบสำคัญของเกม เพราะถ้าเขียนไม่ดีจะทำอะไรต่อไปยากมาก เพราะทุกอย่างมันเกิดขึ้นบนรถไฟหมด เอาตามตรงผมเดาว่าน่าจะมีคนเขียนระบบแบบนี้ได้ดีกว่าผมเยอะเลยแหละ แต่ด้วยความมือใหม่ ผมคิดว่าที่ผมเขียนได้ขนาดนี้ก็บุญหัวแล้ว(มั้ง) แต่อะไรพัฒนาได้ก็ต้องพัฒนากันต่อไป คือ ระบบจะเอาชื่อตัวรถจากรายการที่โหลดมาหรือเซ็ตไว้มาตามลำดับเรียง และตั้ง properties ให้กับรถไฟพวกนั้น ตามด้วยการโหลดของเช่นสัมภาระและพัสดุที่วางในรถไฟ ซึ่งให้บอกตามตรงคือ ตอนแรกผมรู้สึกว่ามันยากมาก เพราะยังไม่เข้าใจเรื่อง complex object กับ array ของ javascript แต่พอไปเข้าคอร์สฟรีของ Free Code Camp แล้ว ผมไหลเป็นปลาไหลเลย ทำแบบคล่องไม่มีติดอะไรทั้งสิ้น เลยทำให้ตอนนี้กลายเป็นทักษะสำคัญที่ทำให้มันใจว่าเกมจะไม่ระเบิดเหมือนตอนเด็กๆ ที่ใช้ RPG Maker ครับ555
+ มีหน้าต่างเปิดได้ด้วยนะ เอาไว้ยิงออกข้างนอกรถไฟ ตามรูปนี้เลย
[Image: Lf2m2zO.png]

[Image: lsI7SWk.png]
  
Users browsing this thread: 1 Guest(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.