1 คะแนน โดย GN⁺ 2024-08-24 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Surreal Engine เป็นโปรเจกต์ที่มุ่งสร้าง Unreal Engine 1 ขึ้นมาใหม่ โดยปัจจุบันโฟกัสที่การทำให้เล่น Unreal (Gold) และ Unreal Tournament (UT99) ได้
  • ขอบเขตของโปรเจกต์อาจขยายไปยัง เกม UE1 อื่น ๆ มากขึ้นในอนาคต แต่สถานะปัจจุบันแนะนำให้ตรวจสอบในเอกสาร Status แยกต่างหาก
  • การรันต้องมี สำเนาต้นฉบับ ของเกม UE1 ที่ต้องการเล่น, Windows 10 ขึ้นไปหรือ Linux distribution รุ่นใหม่ และการ์ดจอที่รองรับ Direct3D 11 หรือ Vulkan
  • ผู้ใช้รันได้โดยเพิ่มโฟลเดอร์เกมในไฟล์ปฏิบัติการ SurrealEngine เลือกเกมในแท็บ Games แล้วกด Play
  • มี Nightly build ให้ใน GitHub Releases และบน Linux ยังติดตั้งได้ผ่านแพ็กเกจ Arch AUR และ Nix

เป้าหมายของโปรเจกต์และขอบเขตปัจจุบัน

  • Surreal Engine เป็นโปรเจกต์สำหรับสร้าง Unreal Engine 1 ขึ้นมาใหม่
  • โฟกัสปัจจุบันคือทำให้เกมต่อไปนี้เล่นได้
    • Unreal (Gold)

      • Unreal Tournament (UT99)
      • ขอบเขตของโปรเจกต์อาจขยายให้ครอบคลุม เกม UE1 มากขึ้นในอนาคต
      • แนะนำให้ตรวจสอบสถานะการพัฒนาปัจจุบันได้ที่ Status.md

ข้อกำหนดในการรัน

  • หากต้องการรัน Surreal Engine ต้องมีสิ่งต่อไปนี้
    • สำเนาต้นฉบับของเกม UE1 ที่ต้องการรัน
    • Windows 10 ขึ้นไป หรือ Linux distribution รุ่นใหม่
    • การ์ดจอที่รองรับ Direct3D 11 หรือ Vulkan

การ build และดาวน์โหลด

ขั้นตอนการรันเกม

  • เรียกใช้ไฟล์ปฏิบัติการ SurrealEngine
  • เพิ่มเกม UE1 ที่ต้องการรันในแท็บ Folders
  • เลือกเกมที่จะเล่นในแท็บ Games
  • คลิก Play เพื่อรัน

การรันผ่าน command line และตัวเลือก

  • รูปแบบ command line พื้นฐานมีดังนี้
SurrealEngine [--url=<mapname>] [--engineversion=X] [Path to game folder]
  • หากไม่ได้ระบุโฟลเดอร์เกม และไฟล์ปฏิบัติการไม่ได้อยู่ในโฟลเดอร์ System บน Windows จะค้นหา registry key ที่ Epic เคยตั้งไว้เดิม
  • หากไม่ได้ระบุ --url จะใช้ URL เริ่มต้นจากไฟล์ ini โดยค่าเริ่มต้นคือ intro map
  • --engineversion จะ override เวอร์ชันภายในที่เอนจินตรวจพบ และควรใช้เพื่อ การดีบัก เท่านั้น
  • เซิร์ฟเวอร์ Discord ระบุไว้ที่ https://discord.gg/5AEry4s

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

 
GN⁺ 2024-08-24
ความคิดเห็นจาก Hacker News
  • ผมทำ เว็บพอร์ตของ Quake III โดยใส่การรองรับมัลติเพลเยอร์และมือถือไว้ด้วย: https://thelongestyard.link/
    อยากใช้โปรเจกต์นี้กับ Unreal Tournament เหมือนกัน แต่ดูเหมือนว่ายังไม่ดีพอสำหรับการเล่นจริง
    อยากให้ Epic ปล่อยรีลีสเก่า ๆ เป็น GPL เหมือน id Software โดยเฉพาะอยากได้ UT2k4 สมัยเรียนมหาวิทยาลัยผมเล่น ONS-Torlan เยอะมากจริง ๆ
    แทนที่จะเป็น UT อาจลองทำ Serious Sam เป็นอย่างต่อไปก็ได้ Serious Engine เปิดซอร์สแล้ว และมีเว็บพอร์ตที่ยังไม่มีมัลติเพลเยอร์อยู่แล้วด้วย: https://www.wasm.builders/martinmullins/serious-sam-in-the-b...

    • UT2k4 ยอดเยี่ยมจริง ๆ วันที่ลองเดโมครั้งแรก ผมเล่นบน CRT ที่วางอยู่บนเก้าอี้ แล้วเพื่อนพุ่งชนตัวผมโดยบอกว่าจะ “ช่วยให้รอดจากสไนเปอร์” จนหน้าผากผมมีแผลเป็น
      ถึงจะมีเวลาเข้านอน แต่ไม่มีเวลาตื่นนอน ผมเลยตื่นตี 4 มาเล่น CTF-Face instagib วันละ 4 ชั่วโมงก่อนต้องไปโรงเรียน
      Q3DM17 ก็มีที่พิเศษในใจผม และอีกไม่กี่สัปดาห์จะไปสัก ตรา Impressive คิดถึงเกมเพลย์ FPS ช่วงเปลี่ยนสหัสวรรษกับรีเฟล็กซ์ในตอนนั้นทุกวัน
    • UT2k4 สมควรอยู่ต่อไปเรื่อย ๆ แต่พูดตรง ๆ คือในช่วง 15 ปีที่ผ่านมา ผู้เล่นก็ไม่ได้เยอะนัก สงสัยว่าถ้าเล่นได้ทันทีในเบราว์เซอร์แล้ว มันจะช่วยให้ดีขึ้นจริงไหม
    • UT2k4 ก็ดี แต่จะไม่พูดถึง เพลงเมนูของ UT2k3 ก็ไม่ได้: https://www.youtube.com/watch?v=IberpcWz9mU#t=0m10s
      แม้แต่เพลงธีม NFL ก็ยังสู้เพลงนี้ไม่ได้
    • เจ๋งดี สงสัยว่าใช้ inolen/quakejs เป็นฐาน หรือเป็น fork ใหม่กันแน่ และก็สงสัยว่าใช้ WebRTC หรือเปล่า รวมถึงเคยได้ยิน HumbleNet ไหม
      ฝั่งนั้นก็มี fork ของ Q3 เหมือนกัน: https://hacks.mozilla.org/2017/06/introducing-humblenet-a-cr...
      สำหรับคนที่สนใจ FTEQW ก็มีพอร์ต emscripten ด้วย และสามารถใช้ FTEQW เล่น Q1, Q2 รวมถึงแมป Q3 ส่วนใหญ่ได้: https://github.com/fte-team/fteqw/blob/1f9f3635f0aef3b2eed6b...
      LvL LiveView ก็เหมาะสำหรับดูแมป Q3 ในเบราว์เซอร์เช่นกัน: https://q3js.lvlworld.com/play/2043/media/633a9623b1b6458735...
    • สุดสัปดาห์ที่แล้วผมเล่น ONS-Torlan กับเพื่อนใน สภาพแวดล้อม LAN ล้วน ๆ ไปนิดหน่อย มันยังสุดยอดและสนุกเหมือนในความทรงจำจริง ๆ
      ผมชอบเปิดตัวเลือกดัดแปลงสนุก ๆ เยอะ ๆ เช่น แรงโน้มถ่วงต่ำ โหมดหัวโต และ berserk
  • ดีใจมากจริง ๆ และความทรงจำก็พรั่งพรูขึ้นมา ขอบคุณมากสำหรับความพยายามของ การเก็บถาวรวิดีโอเกม ที่ทำให้เกมเก่า ๆ แบบนี้ยังเล่นต่อได้

    • อันนี้ก็น่าจะสนุกเหมือนกัน: https://osgameclones.com/
      หวังว่าจะได้เจออะไรจากอดีตที่ทำให้นึกถึงความทรงจำดี ๆ ได้มากขึ้น
    • ทันทีที่เห็นภาพหน้าจอของ Facing Worlds เพลงของเลเวลนั้นก็ดังขึ้นมาในหัวทันที
  • ความคิดแรกที่แวบเข้ามาคือ “เหมือนโปรเจกต์ที่รันเกม UE1 ใน UE5” แล้วก็กลายเป็นว่าเป็นโปรเจกต์เดียวกันจริง ๆ
    รีแบรนด์จาก DXU24 เป็น Surreal และตอนนี้ดูเหมือนว่าจะมีฟรอนต์เอนด์โอเพนซอร์สของตัวเอง นอกเหนือจากฟรอนต์เอนด์ UE5 ที่มีข้อจำกัดด้านไลเซนส์
    นักพัฒนาอัปโหลดวิดีโอระหว่างพัฒนาไว้ใน YouTube: https://www.youtube.com/@dxu2424/videos

    • ผมว่าไม่น่าใช่อันนั้นนะ SurrealEngine ถูกออกแบบมาให้เป็นเอนจินแบบสแตนด์อโลนที่ไม่ต้องใช้ UE5 เลย เพื่อสร้าง UE1 รุ่นแรกขึ้นมาใหม่
  • Unreal Tournament 99 กับ Deus Ex เป็นสองในความทรงจำการเล่นเกมที่มีความสุขที่สุดของผม นี่เป็นโปรเจกต์ที่ทะเยอทะยานมาก และดีใจที่เห็นเกมเก่า ๆ กลับมาได้รับความสนใจอีกครั้ง
    ผมยังรอรีเมก Deus Ex อยู่เลย

    • ถ้าโปรเจกต์นี้สุดท้ายไปถึงจุดที่สามารถ ทำให้ Deus Ex ต้นฉบับทันสมัยขึ้น ได้ก็คงดีมาก ไม่จำเป็นต้องถึงขั้นรีเมก แค่มีความสะดวกสบายแบบสมัยใหม่ก็พอ
      ผมรู้ว่ามีม็อดมากมายอยู่แล้ว
    • แค่ติดตั้ง GMDX ทับบนเกมต้นฉบับก็ได้
  • ผมคิดว่า Epic ก็น่าจะเผยแพร่ เอนจินดั้งเดิมเป็นโอเพนซอร์ส ได้ เหมือนที่ id Software ซึ่งเคยเป็นคู่แข่งสำคัญในอดีตทำกับเอนจิน idTech รุ่นเก่า

    • เคยมีแผนแบบนั้นอยู่บ้างในอดีต
      “Unreal Engine 2 หรือ 3 ไม่มีทางทำเป็นโอเพนซอร์สได้ เพราะมี dependency กับแพ็กเกจ middleware ภายนอกแบบปิดจำนวนมากที่มีข้อกำหนดด้านไลเซนส์ซับซ้อน”
      “การทำ Unreal Engine 1 ให้เป็นโอเพนซอร์สอาจเป็นไปได้ แต่ต้องมีงานจัดระเบียบอีกมากเพื่อทำให้ซอร์สและ dependency อยู่ในสภาพที่แจกจ่ายได้ และเรายังหาเวลาทำไม่ได้ หวังว่าสักวันหนึ่งจะทำได้” [0]
      [0] https://forums.unrealengine.com/t/unreal-engine-1/14084/6
    • ถ้าเป็นแบบนั้นได้ก็คงดีมาก และยิ่งดีถ้าเลือก ไลเซนส์ที่เสรีกว่า อย่าง BSD
      ผมชอบซอฟต์แวร์เรนเดอริง และ Unreal Engine 1 เดิมก็มีความสามารถในด้านนั้นก้าวหน้ากว่าเอนจิน Quake 1·2
      ถ้าวันหนึ่งเปิดเผยออกมา อยากลองพอร์ตไป wasm
      https://github.com/RedPandaProjects/UnrealEngine ก็มีอยู่ แต่ไม่รู้ว่าประเด็นทางกฎหมายและอย่างอื่นเป็นอย่างไร
    • ถ้า Epic เปิดโค้ด แคตตาล็อกเกม DOS เก่า ๆ ของตัวเองด้วยก็คงดี อาจเป็นกอง assembly 16 บิตเสียเป็นส่วนใหญ่ แต่ถ้ายังมีเก็บอยู่ก็น่าจะดี
  • น่าจะเหมาะที่จะโพสต์ตอนนี้ ผมทำ Unreal Tournament 2004 ให้รันใน Docker แล้ว และรันบน Linux x86_64 ได้พอใช้
    mkdir -p ~/.ut2004/; sudo docker run -it --rm -e DISPLAY=$DISPLAY -e XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR -e HOME=/ --network=host -v /tmp/.X11-unix/X0:/tmp/.X11-unix/X0 -v /run/user/$UID:/run/user/$UID -v ~/.ut2004/:/.ut2004/ --user $UID:$UID --privileged --name ut2004 ikuinen.earth:5000/ut2004

  • แนะนำ: Epic Unreal Megaspecial ของ Civvie 11 https://www.youtube.com/watch?v=5PtU2stZK0M [01:15:46]

  • ไม่น่าเชื่อว่า Epic ยังไม่ออกเกม Unreal Tournament แบบสมัยใหม่

    • พวกเขาเคยทำอยู่ แต่หลังจากนั้น Fortnite ก็ทำเงินมหาศาล
    • มีเกมแนวนี้ที่แนะนำไหม? เกมยุคนี้ส่วนใหญ่ช้าเกินไป
    • ถ้าจะทำเกมที่ซับซ้อนระดับ Unreal Tournament 3 แค่เงินเดือนนักพัฒนาก็ต้องใช้หลายล้านดอลลาร์แล้ว ขณะเดียวกัน UT3 ก็ยังเล่นได้อยู่ และใครอยากเล่นก็เล่นได้
    • ต้องหาเหตุผลให้ได้ว่ามันควร ดีกว่าภาคดั้งเดิมหรือ UT2004 อย่างไร
    • เคยทำไปแล้วและล้มเหลว นั่นคือ Unreal Tournament 3
  • คิดถึง UT99 จริง ๆ เกม FPS สมัยใหม่ไม่เคยทำให้ชอบได้เท่านั้น

    • UT99 อยู่ในตำแหน่งที่ค่อนข้างโดดเด่นและน่าสนใจระหว่าง Quake 3 กับ CS ไม่ได้เร็วเท่า Q3 แต่ก็ไม่ได้ช้าเท่า CS
    • แนวทางศิลป์ดูเท่กว่าเกมอื่น ๆ จำนวนมากมาก
  • นักพัฒนาอีกคนกำลังทำ Surreal 98 ซึ่งทำให้เล่นเกม UE1 อย่าง Deus Ex และ UT ภายใต้ UE5 พร้อม VR, ม็อด และฟีเจอร์สมัยใหม่อื่น ๆ ได้: https://www.youtube.com/watch?v=p2M0hrLoA5M