1 คะแนน โดย GN⁺ 2023-11-22 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

เหตุใดขนาดของดวงจันทร์จึงเปลี่ยนไป

  • ในเกมมีการใช้เท็กซ์เจอร์ของดวงจันทร์และวางไว้บนท้องฟ้ายามค่ำคืนด้วยขนาดที่เหมาะสม
  • ต่อมามีอาร์ติสต์ 4 คนขอให้เปลี่ยนขนาดของดวงจันทร์; 2 คนต้องการขนาดที่สมจริง ส่วนอีก 2 คนต้องการขนาดแบบภาพยนตร์
  • จึงมีการเสนอให้เปลี่ยนขนาดดวงจันทร์ได้ภายในเกม; ระหว่างทำงานกับปืนไรเฟิลสไนเปอร์ จึงตั้งให้เมื่อผู้เล่นยิงดวงจันทร์ด้วยสไนเปอร์ ขนาดจะสลับได้ 3 ระดับ (เล็ก, กลาง, ใหญ่)
  • เนื่องจากอาร์ติสต์ไม่ได้ตัดสินใจขั้นสุดท้าย จึงปล่อยไว้แบบนั้น และฟีเจอร์นี้ก็ยังคงอยู่ในเกม "SA" ด้วย

ความเห็นของ GN⁺

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

1 ความคิดเห็น

 
GN⁺ 2023-11-22
ความคิดเห็นบน Hacker News
  • ชอบ เบื้องหลังการพัฒนาเกม แบบนี้ เหมือนเป็นวัตถุโบราณที่น่าสนใจจากกระบวนการพัฒนา
    ที่ชอบเป็นพิเศษคือหน้าจอเลือกระดับลับของ Sonic 3D: https://www.youtube.com/watch?v=ZZs2HUW9tDA

    • มีอีสเตอร์เอ็กที่ชอบอยู่หลายอัน ตอนเล่น F.E.A.R. ภาคแรก เห็นเครื่องชงกาแฟในครัวสำนักงานติดชื่อแบรนด์ที่ไม่คุ้นตา พอเอาไปเทียบกับเครดิตเกมก็พบว่าตรงกับชื่อศิลปินคนหนึ่งของเกมนั้น
      แต่ที่ชอบที่สุดคือจังหวะที่เจอ เปลือกหอยสามชิ้น ติดอยู่บนผนังข้างโถส้วมใน Deus Ex: Human Revolution
    • ชอบเบื้องหลังแบบนี้จริง ๆ เรื่องหนึ่งที่สนุกคือกังหันลมใน Perfect Dark แท้จริงแล้วเป็น ปืนอัตโนมัติ/ป้อมปืนที่เปลี่ยนแค่สกิน น่าจะทำแบบนั้นเพื่อให้ทำการเคลื่อนไหวได้ง่ายขึ้น
      ดังนั้นถ้าใช้สูตรโกงหรือกลิตช์เข้าไปใกล้เกินไป กังหันลมทั้งอันจะหมุนมาหาผู้เล่นแล้วยิงใส่: https://www.youtube.com/watch?v=r00LITqBDEg
      กลไกรถไฟใน Fallout 3 ก็ถูกทำเป็นชิ้นส่วนเกราะที่สวมใส่ได้: https://www.pcgamer.com/heres-whats-happening-inside-fallout...
      ความสามารถ Ascend ใน Tears of the Kingdom เดิมก็เป็นเครื่องมือของนักพัฒนา แต่พอพบว่ามันทำให้การเคลื่อนที่ในถ้ำสะดวกและสนุกขึ้นมาก จึงนำกลับมาใช้เป็นความสามารถในเกม: https://www.gamespot.com/articles/zelda-tears-of-the-kingdom...
    • ใน GTA มี อีสเตอร์เอ็ก ที่แทบไม่มีใครเคยเห็น บอกความหมายไม่ได้ มีการเสียสละเกิดขึ้น :p
      https://www.reddit.com/r/gaming/comments/3ylmm4/comment/cyet...
    • เรื่องที่ชอบที่สุดคือเกม Pokemon ภาคใหม่ ๆ มักมี ทะเล ที่เรนเดอร์เต็มรูปแบบอยู่เสมอจนทำให้เวลาโหลดแย่ลง แต่เท่าที่จำได้จริง ๆ แล้วไม่ได้ถูกสำรวจเลย
    • ตอนแรกค่อนข้างหงุดหงิดที่เอาเรื่องนี้มาให้ดูเป็นวิดีโอ แค่บอกมาก็ไม่ได้เหรอว่ามันคืออะไร แต่ผ่านไปสัก 5 วินาทีก็โดนดึงเข้าไปเต็ม ๆ
      คุ้มค่าที่จะดูจริง ๆ
  • ถ้าอยากเห็นว่าจริง ๆ แล้วหน้าตาเป็นอย่างไร ดูได้ในวิดีโอนี้:
    https://www.youtube.com/watch?v=GCcd6jEEKQU

    • ในบล็อกเขียนว่าเล็ก กลาง ใหญ่ แต่ในวิดีโอนี้ดูเหมือนมีประมาณ 8 ขนาด ไม่รู้ทำไมแบบนั้นยิ่งตลกกว่าเดิม
      เหมือนพวกดีไซเนอร์ต้องได้เห็น ทุกตัวเลือก ในเกมด้วยตาตัวเอง
    • นอกเรื่องไปไกลเลย แต่ทำให้นึกถึงข้อรำพึงเชิงปรัชญาอันเลือนรางของชายหนุ่มคนหนึ่งในฤดูร้อนที่อิรักเมื่อนานมาแล้ว: https://www.youtube.com/watch?v=fIhQllAP5uY
    • แต่ทำไมถึงเป็น วงรี ล่ะ? น่าจะแก้เรื่องนั้นก่อนเรื่องขนาดไม่ใช่หรือ
  • ไม่มีโค้ดไหนอยู่ยืนยาวเท่าการแก้ชั่วคราว

    • ตอนเปิดตัว The Division ภาคแรก มีคนรวบรวมคอมเมนต์ในโค้ดมาทำเป็นรายการ ซึ่งมีเต็มไปด้วยข้อความอย่าง “Fix by”, “DO NOT SHIP THIS CODE”, “Temp fix”, “ไม่รู้ว่าโค้ดนี้ทำงานได้ยังไง ไว้ค่อยรีแฟกเตอร์ทีหลัง”
      อ่านแล้วค่อนข้างขำ
    • The Codeless Code มีบทกวีที่เกี่ยวข้องอยู่:
      http://thecodelesscode.com/case/234?lang=nl
      มีแม้กระทั่งดวงจันทร์ด้วย
    • SRE ของบริษัทที่เคยทำงานด้วยเคยพูดว่า การตั้งชื่ออะไรสักอย่างว่า temporary ___ เป็นวิธีที่ดีที่สุดในการทำให้ไม่มีใครกล้าแตะโค้ดนั้น
    • ไม่มีอะไรถาวรไปกว่าวิธีแก้ปัญหาชั่วคราว
      สุภาษิตรัสเซียเก่า
    • เรื่องนี้ไม่ได้เป็นจริงแค่กับซอฟต์แวร์ด้วย
  • สิ่งที่แปลกที่สุดคือเรื่องนี้ไม่ได้ถูก ตรวจสอบ โดยใครเลย บริษัทแค่เชื่อนักพัฒนา นักพัฒนาก็ใส่มันเข้าไป แล้วไม่มีใครพูดอะไร มันทำงานได้ และทุกคนก็พอใจ
    ในเว็บดีเวลลอปเมนต์ แค่เอาข้อความสักอันขึ้นหน้าจอก็ยังลำบากกันมาก เหนื่อยจริง ๆ ทุกคนมีความเห็นว่าโค้ดควรหน้าตาอย่างไร ควรทำงานอย่างไร และจ้องดูคำแต่ละคำกันแทบตาย
    เหนือความเจ็บปวดภายในนั้น ยังมีเลเยอร์ abstraction ขนาดหลายเมกะไบต์ที่คงถูกสร้างขึ้นผ่านความเจ็บปวดแบบเดียวกันทับอยู่ น่าขันที่เว็บดีเวลลอปเปอร์จริง ๆ แล้วแทบไม่มีใครรู้ว่าตัวเองกำลังทำอะไรอยู่ อาจจะสัก 4% ได้ ดูเหมือนกำลังวางท่าเพื่อพิสูจน์เหตุผลในการมีอยู่ของตัวเอง

    • นั่นดูจะสันนิษฐานมากกว่าที่ผู้เขียนตั้งใจไว้นะ การที่ไม่ได้พูดถึงไม่ได้หมายความว่าไม่มี กระบวนการตรวจสอบ
  • ไม่คิดเลยว่าจะเป็นคำอธิบายแบบนี้ นึกว่าเป็นแค่มุกโง่ ๆ ว่า “ยิงดวงจันทร์สิ

    • เป็นโพสต์แรกของวันนี้ที่ทำให้หัวเราะจริง ๆ
  • พอทำงานซอฟต์แวร์มาบ้าง คำตอบของคำถามแบบนี้แทบจะเป็น “มีเรื่องที่ สำคัญกว่า ต้องทำ” เสมอ

  • ตอนยุค PS1 เคยทำเกม F1 อยู่ สตูดิโออยากไล่ศิลปินทำเท็กซ์เจอร์สนามคนหนึ่งออก และหยิบเท็กซ์เจอร์หนึ่งที่อยู่ด้านหลังป้ายเบรกมาเป็นประเด็น
    “นี่มันอะไร?”
    มันเป็นเท็กซ์เจอร์ขนาดประมาณ 16x16 ดังนั้นจะตอบอะไรก็ได้ แต่เขาตอบว่า “เป็นตุ๊กตาก้างปล่อยของลับ!” เท่ากับยื่นกระสุนให้เอง
    ส่วนเรื่องดวงจันทร์ ครั้งหนึ่งเคยทำเดโม/โปรโตไทป์แล้วก่อนส่งให้พับลิชเชอร์ก็เอาเข้ารอบ QA เบา ๆ มี QA คนหนึ่งแจ้งบั๊กว่า ซึ่งก็ถูกของเขาแต่ชวนถอนหายใจมาก ว่าเมื่อพิจารณาตำแหน่งฉากหลังของเกมแล้ว ดวงจันทร์ควรดูเหมือนถูกหมุน แต่ตอนนี้ ดวงจันทร์กลับหัว

    • ถ้าเป็นสถานการณ์ที่ยังไงก็จะถูกไล่ออกอยู่แล้ว และเขาตอบแบบนั้น ผมว่าเจ้าตัวก็น่าจะรู้ว่าเกิดอะไรขึ้น แล้วตัดสินใจทิ้งหมัดสุดท้ายก่อนออกไป
  • อ้างอิงอันนี้ด้วย:
    https://news.ycombinator.com/item?id=9137736
    “แค่เอา เป็ด ออกไป”

    • คำตอบน่าจะเป็นอันนี้:
      if(time() > 10_years_in_future)
      duck.enable();
  • ในแง่ความคิดถึง อยากจับมือโปรแกรมเมอร์หรือทีมที่ใส่โค้ดที่ทำให้ใช้ cheat code ได้จริง ๆ

    • นั่นเป็นเรื่องค่อนข้างมาตรฐาน และคิดว่าใช้ในการทดสอบด้วย
      ตัวอย่างเช่น โหมดอมตะที่ทำให้บินไปทั่วแผนที่ได้ก็คือต้นแบบของ fast travel
      คอมพิวเตอร์สมัยนี้ทรงพลังมากจนใส่ editor แบบครบเครื่องที่ทำทุกอย่างที่ cheat code เคยทำได้แทบทั้งหมดได้ แต่สมัยก่อน ถ้าต้องทดสอบการก่อสร้าง X ที่สร้างไม่ได้เพราะเงินไม่พอ ก็แค่กดไม่กี่ปุ่มเพื่อเปลี่ยนค่าเลขฐานสิบหกให้กลายเป็นเงินเกือบสูงสุดทันที แล้วทดสอบได้มีประสิทธิภาพกว่า
      cheat code ถูกซ่อนไว้ให้ผู้เล่นทั่วไปบังเอิญเจอได้ยาก แต่ก็ไม่ถึงขั้นเป็นไปไม่ได้ที่ผู้เล่นจะใช้
      เหตุผลน่าจะเป็นว่า ถ้าซื้อเกมแล้ว ก็ควรเข้าถึงคอนเทนต์ทั้งหมดได้ ทุกวันนี้เกมกลายเป็นธุรกิจใหญ่มาก ทุกอย่างเลยจริงจังเกินไป
    • โชคดีนะ เป็นคนเดียวกันเลย ;) https://insiderockstarnorth.blogspot.com/2023/11/the-trouble...
    • อันนี้ควรเก็บไว้จริง ๆ:

      การตรวจจับการชนของเกมมักไม่เหมือนกับโพลิกอนที่ใช้แสดงผล เพราะการตรวจจับการชนค่อนข้างช้า อาคารที่มีโพลิกอนสำหรับภาพ 10,000 ชิ้น อาจมีโพลิกอนสำหรับการชนแค่ 1,000 ชิ้นเท่านั้น ผลก็คือในแผนที่อาจมีรูที่มองไม่เห็น สิ่งที่เกิดขึ้นตอนตกลงไปใต้แผนที่ก็คือแบบนี้
      ด้วยเหตุนี้ เทสเตอร์จึงทดสอบการชนของแผนที่ได้ยากมาก ตอน gta4 ตัวละครอาจตกลงไปใต้แผนที่ตามอนิเมชันได้ และยิ่งลำบากเป็นพิเศษเพราะเทสเตอร์ไม่มีวิธีไปเหยียบทุกส่วนของแผนที่ด้วยตัวเอง
      ดังนั้นพวกเขาจึงขอ ปืน ragdoll Alexander Roger ทำปืนพิเศษที่ยิงตัวละคร ragdoll แทนกระสุน เทสเตอร์สามารถเดินไปทั่วแผนที่แล้วยิง ragdoll ใส่อาคารและเนินเขาทั้งหมดได้ --https://insiderockstarnorth.blogspot.com/2023/11/bugs-bugs-b...

    • จนกระทั่งเริ่มเรียนเขียนโปรแกรมที่โรงเรียนและเข้าใจจริง ๆ ว่า debugging หมายถึงอะไร ผมก็ยังไม่เข้าใจว่า “debug mode” ที่คู่มือบทสรุปเกมบอกวิธีปลดล็อกนั้นมีไว้ทำอะไร
      เคยนึกว่าใส่ไว้เหมือน cheat code เพื่อให้ผู้เล่นหาเจอแล้วสนุกกับมัน ภายหลังถึงได้ตระหนักว่าสิ่งอย่าง model viewer, event viewer และ stage select ทั้งหมดนั้นพัฒนาขึ้นเพื่อทีม QA หรือให้ทีม QA ใช้งาน
  • นี่เหมือนตำนานเล่าขานเรื่องแอปเครื่องคิดเลขของ Jobs เวอร์ชันดวงจันทร์

    • แต่ต่างกันตรงที่ฝั่งนี้ทำสำเร็จ