1 คะแนน โดย GN⁺ 2024-07-06 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • โปรเจกต์นี้เปลี่ยน “ช่วงเวลาที่โลโก้ DVD แตะมุมหน้าจอพอดี” ซึ่งทุกคนเคยรอคอยตอนเด็ก ๆ ให้กลายเป็น เกมอาร์เคด PICO-8 ความยาว 45 วินาที
  • ด้วยขอบเขตเล็ก ๆ ที่โฟกัสกับมุกเดียว ทำให้ ความซับซ้อนของ UI และภาระการผลิต ลดลงเมื่อเทียบกับงานก่อนหน้า ReShape และกลายเป็นการทดลองที่ดีสำหรับการเรียนรู้ PICO-8
  • PICO-8 เป็น แฟนตาซีคอนโซลที่มีข้อจำกัดมาก ซึ่งต้องจัดการเองตั้งแต่การชนไปจนถึงพาร์ติเคิล ทำให้แม้แต่เกมเล็ก ๆ ก็มีสัมผัสที่สอดคล้องกัน
  • ความไม่สะดวกของตัวแก้ไขโค้ดในตัวถูกเลี่ยงด้วยส่วนขยาย pico8-ls ของ VS Code และการตั้งค่า include code.pb แต่การค้นหาเอกสารอ้างอิงภาษายังคงเป็นจุดที่น่าเสียดาย
  • แม้กลไกจะเรียบง่าย แต่ถ้ามี ธีมที่แข็งแรง ก็อธิบายและแชร์ได้ง่ายขึ้น และข้อจำกัดของ PICO-8 ก็ทำให้การปล่อยผลงานเล็ก ๆ ออกมาได้ง่ายขึ้น

เกมโลโก้ DVD ความยาว 45 วินาที

  • “Put the DVD Logo in the Corner” คือ เกมแอ็กชันอาร์เคดสั้น ๆ ที่ให้ผู้เล่นทำให้โลโก้ DVD ไปแตะมุมหน้าจอ
  • สร้างด้วย PICO-8 และใช้เวลาพัฒนา 4 วัน ตั้งแต่วันที่ 27 มิถุนายนถึง 30 มิถุนายน 2023
  • เวลาเล่นประมาณ 45 วินาที สร้างขึ้นโดยมีมุกและความปรารถนาในวัยเด็กเป็นแกนหลัก โดยไม่ได้ตั้งใจให้ยาวกว่านั้น
  • เกมเผยแพร่บน itch และดูโค้ดได้ที่ GitHub
  • ประสบการณ์ที่เพื่อน ๆ ส่งคะแนนสูงสุดมาให้นั้นสนุกดี และ ณ ตอนที่เขียน คะแนนสูงสุดของเพื่อนคือ 21 คะแนน ส่วนคะแนนของผู้พัฒนาคือ 26 คะแนน

เกมแรกที่สร้างด้วย PICO-8

  • PICO-8 คือ แฟนตาซีคอนโซล ที่คล้ายอีมูเลเตอร์สำหรับคอนโซลที่ไม่มีอยู่จริง
    • มีข้อจำกัดด้านกราฟิก เสียง ขนาดโค้ด และความเร็วในการประมวลผล โดยเลียนแบบคอนโซลยุค 1980
    • สามารถสร้างสไปรต์ เพลง เอฟเฟกต์เสียง และเขียนโค้ดได้ภายในคอนโซล
  • เครื่องมือเรียบง่ายและดิบกว่าเกมเอนจินสมัยใหม่
    • ต้องจัดการการชนเองในระดับพิกเซล
    • เอฟเฟกต์พาร์ติเคิลก็ต้องทำโดยวาดพิกเซลลงบนหน้าจอเอง
  • ความเรียบง่ายและข้อจำกัดเหล่านี้ทำให้เกม PICO-8 มีความรู้สึกค่อนข้างสอดคล้องกัน และทำให้ยอมรับในเชิงบวกว่าข้อจำกัดก่อให้เกิดความคิดสร้างสรรค์
  • หนึ่งในเกม PICO-8 ที่เป็นที่รู้จักมากที่สุดคือ Celeste เวอร์ชันดั้งเดิมที่สร้างขึ้นในเกมแจม
    • Celeste เวอร์ชัน PICO-8 สามารถเล่นได้ในเกมฉบับทางการในฐานะอีสเตอร์เอ๊ก

ประสบการณ์ใช้เครื่องมือพัฒนา PICO-8

  • PICO-8 มี ตัวแก้ไขสไปรต์, ตัวแก้ไขเอฟเฟกต์เสียง, ตัวแก้ไขเพลง และตัวแก้ไขโค้ดรวมอยู่ในตัว
  • สำหรับตัวแก้ไขสไปรต์ แม้จะคิดถึง Aseprite แต่ก็ดีที่สามารถแก้ไขสไปรต์ได้โดยตรงใน PICO-8
  • ตัวแก้ไขเอฟเฟกต์เสียงตอนแรกไม่ค่อยเข้าใจง่ายมากนัก แต่หลังจากดู วิดีโอของ Gruber ก็เริ่มคุ้นเคยได้อย่างรวดเร็ว
  • ตัวแก้ไขเพลงไม่ได้สะดวกมากสำหรับผู้พัฒนาที่คุ้นเคยกับการเล่นคีย์บอร์ด แต่ก็ค่อนข้างเข้าใจง่าย
  • ตัวแก้ไขโค้ดเป็นส่วนที่ไม่สะดวกที่สุด
    • แม้จะขยายความกว้างของตัวแก้ไข ความยาวบรรทัดก็ไม่เพิ่มขึ้น มีแต่ฟอนต์ที่ใหญ่ขึ้น
    • ทีมพัฒนา PICO-8 ตั้งใจให้มีความรู้สึกแบบคอนโซลเฉพาะตัว และมันก็ตรงกับเป้าหมายนั้น แต่สำหรับตนเองแล้วเป็นวิธีที่รับมือได้ยาก

เวิร์กโฟลว์เขียนโค้ดโดยเลี่ยงไปใช้ VS Code

  • เพื่่อใช้ VS Code แทนตัวแก้ไขโค้ดในตัว จึงติดตั้งส่วนขยาย pico8-ls
    • ส่วนขยายนี้ให้การไฮไลต์ไวยากรณ์และเอกสารอ้างอิง API
  • ในไฟล์ PICO-8 หลักใส่ไว้เพียง include code.pb และเขียนโค้ดจริงใน code.pb
  • เหตุผลที่ต้องใช้การตั้งค่านี้คือ PICO-8 บันทึกโค้ดและข้อมูลสไปรต์·เพลงไว้ใน ไฟล์เดียวกัน
    • ไม่อยากแก้ไขไฟล์เดียวกันพร้อมกันทั้งใน VS Code และ PICO-8
  • โดยรวมแล้วพอใจกับวิธีทำงานนี้ แต่ยังขาดวิธีค้นหาเอกสารอ้างอิงภาษา PICO-8 ได้ง่ายขึ้น
    • PICO-8 manual มีข้อจำกัด เพราะค้นหาแบบเจาะเฉพาะชื่อฟังก์ชันได้ยาก

ข้อจำกัดทำให้การปล่อยเกมเล็ก ๆ ง่ายขึ้น

  • ระหว่างพัฒนามีไอเดียต่อยอดหลายอย่างผุดขึ้นมา
    • เก็บโทเคนเพื่อเพิ่มเวลา
    • อัปเกรดทีวีหรือโลโก้ DVD
    • ศัตรูที่คอยขัดขวางโลโก้
    • ทิศทางแบบโคลน Vampire Survivors
  • มองว่าถ้าสร้างด้วย Godot อาจได้ลองทำแรงกระตุ้นเหล่านี้มากกว่านี้
  • PICO-8 เรียบง่าย จึงรู้สึกเป็นธรรมชาติที่จะอัปโหลดเกมขนาดเล็กมากในสภาพปัจจุบันขึ้น itch
  • ความเรียบง่ายของ PICO-8 ทำหน้าที่เหมือนการอนุญาตให้ปล่อย ผลงานที่เรียบง่าย ออกมาได้

ธีมช่วยให้อธิบายเกมได้ง่ายขึ้น

  • ในฐานะผู้เล่นเกม มักข้ามเนื้อเรื่องหรือธีมแล้วโฟกัสที่กลไกการเล่น
    • ตอนเด็ก ๆ มักข้ามคัตซีน และแม้จะเล่น Path of Exile ไปหลายร้อยชั่วโมง ก็ยังบอกว่าอธิบายเนื้อเรื่องไม่ได้
    • ตรงกันข้าม เกมที่ชอบอย่าง Outer Wilds มีทั้งเรื่องราวและกลไกที่สำคัญ
  • ตอนสร้างเกมเอง ก็เคยคิดว่าธีมไม่ได้สำคัญมากนัก
    • ReShape TD และ click, click, trick มีกลไก แต่ยากที่จะอธิบายว่าเป็นเกมเกี่ยวกับอะไร
  • “Put the DVD Logo in the Corner” กลับตรงกันข้าม
    • กลไกมีเพียงอย่างเดียวคือ “ทำให้สี่เหลี่ยมเล็ก ๆ ไปแตะมุมของสี่เหลี่ยมผืนผ้าใหญ่”
    • ตัวกลไกเองไม่ได้เร้าใจเป็นพิเศษ แต่ด้วย ธีม การอธิบายให้คนอื่นฟังจึงเป็นส่วนที่สนุกที่สุด
  • ตั้งใจจะจดจำเรื่องนี้ไว้เมื่อสร้างเกมในอนาคต

งานถัดไป

  • สนุกกับเกมนี้และการทำงานกับ PICO-8 และอยากสร้างเกมที่ให้ความรู้สึกแบบอาร์เคดขนาดเล็กมากขึ้น
  • หลังจากนั้นกำลังทดลองไอเดียสร้างบางอย่างที่ทำงานภายในแถบที่อยู่ของ Firefox โดยใช้ OpenSearch specification
  • ในอัปเดตวันที่ 5 กรกฎาคม 2024 ระบุว่าได้ใช้ OpenSearch เพื่อ รัน Wordle ในแถบที่อยู่ของ Firefox

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

 
GN⁺ 2024-07-06
ความคิดเห็นบน Hacker News
  • อ่านเรื่อง Recurse Center แล้วรู้สึกทึ่ง ดูเหมือนจะเป็นที่คล้าย artist residency แต่สำหรับโปรแกรมเมอร์
    ฉันเคยไปอยู่ residency ในฐานะศิลปินมาก่อน และมันช่วยเปิดมุมมองใหม่ได้มาก อยากให้ในสายวิทยาศาสตร์มีโอกาสทำสิ่งที่ดูไม่เข้าท่าในเชิงพาณิชย์หรือการแข่งขันแบบนี้มากขึ้นบ้าง สิ่งนี้น่าจะเป็นประโยชน์ต่อสังคม หรืออย่างน้อยก็กับคนที่มีโอกาสได้เข้าไปร่วมแน่ ๆ
    https://www.recurse.com/

    • ผู้เขียนเองครับ/ค่ะ ถ้า Recurse ฟังดูสนุกและเหมือนมีเวทมนตร์ มันก็เป็นแบบนั้นจริง ๆ และควรลองพิจารณาสมัคร
      ต่อให้ผ่านก็เลื่อนเวลาเข้าได้จนกว่าจะถึงช่วงที่เหมาะสม และเข้าร่วมได้ฟรี รายได้ของที่นี่มาจากการช่วยหางาน แต่ตอนสมัครฉันก็ระบุชัดว่าไม่ได้กำลังหางานอยู่
      สิ่งที่ Recurse ทำให้ฉันมากที่สุดคือช่วยให้กลับมาเชื่อมโยงกับ รสนิยม ของตัวเองอีกครั้ง ตอนที่ไปครั้งแรก ฉันกำลังทำเกมสไตล์ Flash ธรรมดา ๆ ที่มีคะแนนและธีมหลวม ๆ แต่จากนั้นก็เริ่มไปในทางที่แปลกขึ้นมาก หนึ่งในโปรเจ็กต์แรก ๆ คือการเอาสเปก OpenSearch มาใช้แบบพลิกแพลงเพื่อทำ Wordle ที่รันได้ในแถบที่อยู่ของ Firefox
      https://eieio.games/nonsense/implementing-wordle-in-the-fire...
      มันเป็นสถานที่ที่เหมาะสมอย่างยิ่งสำหรับการสร้างอะไรแบบนี้ ผู้คนคอยให้กำลังใจ สนับสนุน และแสดงความสนใจ จนฉันได้ตระหนักว่าคนอื่นก็สนใจงานแบบที่ฉันอยากทำจริง ๆ ด้วย ตอนอยู่ RC 12 สัปดาห์ ฉันน่าจะปล่อยเกมออกมาได้ 8 เกม และถ้าไม่มี RC ก็คงไม่ได้เริ่มทำงานแบบที่ทำอยู่ตอนนี้เลย ไม่ใช่แค่เรื่องเกมด้วย หลายคนในสายเทคโนโลยีน่าจะมีประสบการณ์คล้ายกัน เหมือนกับการค้นหา product-market fit ให้กับความสนใจของตัวเอง
      RC ยังช่วยให้ฉันได้เชื่อมต่อกับคนที่ทำอะไรคล้าย ๆ กันด้วย ชุมชนมีขนาดใหญ่ เป็นมิตร และแปลกแบบในทางที่ดี มันเหมือนเวิร์กช็อปนักเขียนสำหรับคนที่อยากเขียนโปรแกรมและอยากเป็นโปรแกรมเมอร์ที่ดีขึ้น
      ฟังดูเหมือนฉันกำลังโปรโมต RC เกินไป ซึ่งก็อาจจะใช่ แต่ไม่ได้รับเงินนะ แค่เป็นศิษย์เก่าที่รู้สึกขอบคุณเท่านั้น ตอนนี้ก็ยังพิมพ์สิ่งนี้อยู่ในพื้นที่ของ RC และแวะมาคุยหรือทำงานกับผู้เข้าร่วมเป็นครั้งคราว
    • ฉันเคยเข้า Recurse Center เมื่อหลายปีก่อน แต่มันไม่ค่อยเหมาะกับฉันนัก ซึ่งก็น่าแปลกเพราะทุกคนรอบตัวพูดถึงมันในแง่บวกหมด
      จนถึงตอนนี้ก็ยังบอกได้ไม่ชัดนักว่าทำไมมันถึงไม่รู้สึกว่าคุ้มค่าสำหรับฉัน
      อาจเป็นเพราะสถานที่ก็ได้ New York City แพงมาก ถึงฉันจะมีเงินเก็บพอสำหรับลางานแบบไม่รับค่าจ้าง แต่หลายอย่างก็ดูแพงเกินเหตุ ชื่อเสียงของชาว New Yorker ที่ว่าไม่ค่อยเป็นมิตรก็ยิ่งเพิ่มความรู้สึกห่างเหิน แม้จะได้ยินคนอื่นยกย่องมันมากแค่ไหน แต่เหมือนกับที่ผู้มาเยือนบางคนรู้สึกว่าเมืองนี้ไม่ได้ต้อนรับพวกเขาเต็มที่ ฉันก็รู้สึกว่าไม่ค่อยเข้ากับสภาพแวดล้อมของ Recurse Center เท่าไร
      ถึงอย่างนั้น จุดที่ดีคือผู้อยู่อาศัยและศิษย์เก่าบางคนก็กลายเป็นคนดังพอตัวในวงการเทคโนโลยี ถ้าบังเอิญเจอกันในพื้นที่ก็อาจได้คุยลึก ๆ กันต่อ ในช่วงที่ฉันอยู่ที่นั่น คุณสามารถเจอคนอย่าง Robert Lefkowitz และ Filippo Valsorda ได้ และมันก็เป็นประสบการณ์ที่เจ๋งทีเดียว
      https://www.recurse.com/residents
      https://www.linkedin.com/in/r0ml
      https://filippo.io
    • https://sfpc.study/ ก็น่าดูเหมือนกัน
      School for Poetic Computation เป็นโรงเรียนเชิงทดลองที่เปิดสอนใน New York City และออนไลน์ สนับสนุนการเรียนรู้ข้ามไปมาระหว่างศิลปะ โค้ด ฮาร์ดแวร์ และทฤษฎีวิพากษ์ เป็นสถานที่สำหรับเรียนรู้และทบทวนสิ่งที่ได้เรียนรู้
  • https://youtu.be/QOtuX0jL85Y?si=Kwo8OZSYOVzoI-Uh
    ขาดไม่ได้เลยสำหรับการอ้างอิงถึง The Office

    • ถ้ามันชนมุมได้ด้วยมุมที่แม่นยำพอดี ฉันสงสัยว่าหลังจากนั้นมันจะเด้งค้างไปมาระหว่างมุมที่อยู่ตรงข้ามกันตามเส้นผ่านศูนย์กลางหรือเปล่า
      ที่จริงฉันก็ยังไม่ค่อยเข้าใจว่าการชนมุมได้พอดีเป๊ะ ๆ มันจะเกิดขึ้นได้อย่างไร
    • ตอนแรกก็แบบ “หือ?” แต่พอกดลิงก์แล้วถึงรู้ว่าเขาหมายถึง The Office ฉบับอเมริกัน
      อยู่ไม่กี่วินาทีฉันนึกว่าตัวเองเพี้ยนไปแล้ว
  • ฉันเป็นผู้พัฒนาเอง เรื่องนี้ขึ้นหน้าแรกแล้วเป็นเซอร์ไพรส์ที่สนุกดี ดีใจที่มีคนอินด้วย และอยากแนะนำให้ลองใช้ PICO-8 ดู
    ถ้ามีคำถามก็ตอบได้ หลังจากนั้นฉันไม่ได้ทำเกม PICO-8 เสร็จอีกเลย และงานของฉันก็ยิ่งแปลกขึ้น แต่ก็ยังคิดถึง PICO-8 และกำลังลองเล่นกับไอเดียสำหรับ Playdate กับ Picotron อยู่
    https://news.ycombinator.com/item?id=40800869

  • พอเห็นอะไรแบบนี้ก็ยิ่งชอบ PICO-8 มาก มันเป็นหนึ่งในสภาพแวดล้อมการเขียนโค้ดที่สนุกที่สุดที่ฉันเคยใช้ นับตั้งแต่ค้นพบ ActionScript ใน Macromedia Flash MX ครั้งแรก

    • สำหรับหลายคน เสน่ห์หลักคือมันเป็น integrated development environment แบบย้อนยุค แต่สำหรับฉัน สิ่งที่ชอบกว่าคือ ข้อจำกัดที่มีขอบเขตชัดเจน ระหว่างรันไทม์
      ฉันอยากทำงานกับโค้ด เสียง และกราฟิกในตัวแก้ไขสมัยใหม่ความละเอียดสูง แต่ยังคงข้อจำกัดด้านความละเอียด ประสิทธิภาพ CPU และ API เอาไว้เหมือนเดิม
    • PICO-8 เป็นแพลตฟอร์มเล็ก ๆ ที่มีเสน่ห์จริง ๆ ฉันมีโปรเจ็กต์ที่ค้างไว้หลายอัน เห็นอันนี้แล้วอยากกลับไปทำต่ออีกครั้ง
  • เรื่องนี้เกี่ยวกับ ความทุกข์ทรมานทางจิตใจและสังคม ที่เกิดจากการที่โลโก้ DVD แทบไม่เคยชนมุมหน้าจอ ก็น่าพูดถึงเหมือนกัน: https://www.youtube.com/watch?v=_ws0QtAiiXQ

  • ถ้าแค่อยากดู screensaver ฉันเคยทำอันหนึ่งไว้เมื่อก่อน
    https://stanchak.github.io/dvd/

  • อันนี้น่าจะสนุกมากบน Playdate อาจทำให้หมุนเวลาด้วย crank เล็ก ๆ แล้วถ้ารักษาจังหวะได้ถูกต้องก็ให้คะแนนเพิ่มได้ด้วย

  • Pam อ้างว่าตอนอยู่คนเดียวในห้องประชุม เธอเคยเห็น โลโก้ DVD ชนมุมพอดี ดูเหมือนเธอจะเชื่อจริง ๆ ว่าได้เห็นแบบนั้น

  • ลิงก์เล่นเกมโดยตรง: https://itseieio.itch.io/dvdlogo
    ซอร์สโค้ด (PICO-8): https://github.com/nolenroyalty/put-the-dvd-logo-in-the-corn...

  • สนุกมากจริง ๆ และคำอธิบายเกี่ยวกับ สภาพแวดล้อม PICO-8 ก็ดีมาก ฉันได้ 19 คะแนน แต่ช่วงท้าย ๆ น่าจะอาศัยดวงพอสมควร