โปรเจ็กต์นี้เป็นการนำเกม Duke Nukem II ไปใช้ใหม่ ซึ่งเปิดตัวครั้งแรกโดย Apogee Software ในปี 1993 สำหรับ MS-DOS RigelEngine ทำงานแทนแบบดรอปอินสำหรับไฟล์ปฏิบัติการดั้งเดิม: โดยจะอ่านไฟล์ข้อมูลของเกมและเล่นเหมือนกับต้นฉบับ แต่ทำงานบนระบบปฏิบัติการสมัยใหม่และเขียนด้วยโค้ด C++ สมัยใหม่
เมื่อเปรียบเทียบกับการรันเวอร์ชันดั้งเดิมในโปรแกรมจำลอง RigelEngine นำเสนอการปรับปรุงที่ทันสมัยและการปรับปรุงการใช้งานมากมาย รวมถึง:
ไม่เคยมีซอร์สโค้ดใด ๆ ออกมาสำหรับเกมต้นฉบับ ดังนั้นโปรเจ็กต์นี้จึงมีพื้นฐานมาจากวิศวกรรมย้อนกลับ (โดยเฉพาะ การแยกส่วนไบนารีดั้งเดิม) ดู Duke2Reconstructed สำหรับการสร้างโค้ดต้นฉบับขึ้นใหม่ทั้งหมด
ลองใช้เวอร์ชันเว็บ! (เรียบเรียงเพื่อ Wasm ผ่าน Emscripten)
อ่านคำถามที่พบบ่อย
ชมวิดีโอโชว์ผลงาน (ล้าสมัย)
RigelEngine มีความเสถียรและค่อนข้างสมบูรณ์ในแง่ของชุดฟีเจอร์ เกมทั้งสี่ตอน (แชร์แวร์และเวอร์ชันลงทะเบียน) สามารถเล่นได้เต็มรูปแบบและเทียบเท่ากับเกมต้นฉบับ
ขณะนี้ฉันไม่มีแผนสำหรับการพัฒนาที่สำคัญในอนาคต - พิจารณาว่าโครงการอยู่ในโหมด "การบำรุงรักษา" ซึ่งหมายความว่าฉันจะพยายามอย่างเต็มที่เพื่อแก้ไขปัญหา/ข้อบกพร่องหลักๆ ที่เกิดขึ้นและทำให้ CI ทำงานต่อไป แต่ฉันจะไม่เพิ่มคุณสมบัติใหม่ใดๆ
RigelEngine ทำงานบน Windows, Linux และ Mac OS X
มันค่อนข้างง่ายที่จะติดตั้งบน Steam Deck เช่นกัน
เวอร์ชัน Linux ยังทำงานได้ดีบนคอมพิวเตอร์บอร์ดเดี่ยวขนาดเล็ก (SBC) เช่น Raspberry Pi และ Odroid Go Advance ดูการทำงานบน Raspberry Pi และ Odroid Go Advance
นอกจากนี้ยังมีพอร์ต PS Vita (บุคคลที่สาม)
RigelEngine ไม่ได้มีความต้องการมากนัก แต่ต้องใช้ฮาร์ดแวร์กราฟิกที่รองรับ OpenGL สามารถเลือก OpenGL 3.0 หรือ OpenGL ES 2.0 ได้ในขณะคอมไพล์
กราฟิกการ์ด Nvidia หรือ AMD ตั้งแต่ปี 2007 หรือใหม่กว่าควรรันเกมได้โดยไม่มีปัญหา อย่างไรก็ตาม GPU ในตัวของ Intel เพิ่มการรองรับ OpenGL 3 ในปี 2554 เท่านั้น บน Linux การใช้ GL ES สามารถเป็นตัวเลือกสำหรับ Intel GPU รุ่นเก่าเหล่านั้นได้
ดูกราฟิกการ์ดที่รองรับสำหรับข้อมูลเพิ่มเติม
นอกจากการ์ดจอแล้ว คุณยังไม่ต้องการอะไรมาก เกมดังกล่าวต้องการ RAM น้อยกว่า 64 MB และทำงานได้ดีบน CPU ARMv6 แบบ single-core ที่โอเวอร์คล็อกที่ 700 MHz (Raspberry Pi 1)
เรายินดีอย่างยิ่งที่จะมีส่วนร่วมใน RigelEngine! โปรดดูคู่มือการมีส่วนร่วมก่อนทำการประชาสัมพันธ์
มีเอกสารประกอบมากมายบน Wiki เพื่อช่วยในการเข้าสู่ฐานโค้ด จุดเริ่มต้นที่ดีคือภาพรวมสถาปัตยกรรม
หากคุณกำลังมองหางานง่ายๆ ในการเริ่มต้น ลองดูปัญหาที่มีป้ายกำกับว่าปัญหาแรกดี
ในการรัน RigelEngine จำเป็นต้องมีข้อมูลเกมจากเกมต้นฉบับ ทั้งเวอร์ชันแชร์แวร์และเวอร์ชันที่ลงทะเบียนใช้งานได้ เมื่อเปิดตัว RigelEngine เป็นครั้งแรก มันจะแสดง UI ของเบราว์เซอร์ไฟล์ และขอให้คุณเลือกตำแหน่งการติดตั้ง Duke Nukem II เส้นทางที่เลือกจะถูกเก็บไว้ในโปรไฟล์ผู้ใช้ของเกม ดังนั้นคุณจึงไม่ต้องเลือกอีกครั้งในครั้งต่อไป
นอกจากนี้ยังสามารถส่งเส้นทางไปยังไฟล์เกมเป็นอาร์กิวเมนต์บนบรรทัดคำสั่งได้ ซึ่งมีประโยชน์ในระหว่างการพัฒนา
คุณสามารถดาวน์โหลดเวอร์ชันแชร์แวร์ได้ฟรีจาก archive.org เวอร์ชันเต็ม (หรือเวอร์ชันลงทะเบียน) สามารถซื้อได้บน Zoom Platform ซึ่งเป็นร้านค้าที่ยังคงมีใบอนุญาตในการขายเกม (ต่างจากร้านค้าดิจิทัลอื่นๆ เช่น Steam และ Gog)
หากคุณมีสำเนาของเกมอยู่แล้ว คุณสามารถชี้ RigelEngine ไปยังการติดตั้งที่มีอยู่นั้นได้
ไฟล์เดียวที่จำเป็นสำหรับ RigelEngine คือ:
NUKEM2.CMP
(ไฟล์ข้อมูลหลัก)NUKEM2.F1
, .F2
, .F3
ฯลฯ จนถึง .F5
(ไฟล์ภาพยนตร์อินโทร)ไม่จำเป็นต้องสร้างภาพยนตร์แนะนำ RigelEngine จะข้ามการเล่นภาพยนตร์หากไม่พบไฟล์ พวกมันยังคงเป็นส่วนหนึ่งของประสบการณ์ ดังนั้นฉันขอแนะนำให้รวมพวกมันไว้ด้วยเมื่อคัดลอกไฟล์เกมที่ไหนสักแห่ง
หากมีเกมที่บันทึกไว้ รายการคะแนนสูง หรือการตั้งค่าที่พบในไฟล์เกม RigelEngine จะนำเข้าเกมเหล่านั้นไปยังโปรไฟล์ผู้ใช้ของตนเองเมื่อใช้งานครั้งแรก
คุณสามารถค้นหาข้อมูลเพิ่มเติมที่ไม่เหมาะกับ README นี้ได้จาก Wiki ตัวอย่างเช่น คุณจะพบข้อมูลเกี่ยวกับวิธีการเปิดใช้งานเครื่องมือแก้ไขข้อบกพร่องในตัว รายการข้อบกพร่องในเวอร์ชันดั้งเดิมที่ได้รับการแก้ไขใน Rigel Engine เป็นต้น
ไบนารีที่สร้างไว้ล่วงหน้ามีให้กับแต่ละรุ่น ตั้งแต่เวอร์ชัน 0.8.0 จะรวม Windows (x64), Mac OS (x64) และแพ็คเกจ deb
สำหรับ Debian/Ubuntu/Mint Linux distros (เช่น x64)
Flatpak ก็มีจำหน่ายเช่นกัน
โปรดดูบิลด์ Linux ของบริษัทอื่นสำหรับรายการแพ็คเกจ/บิลด์ Linux อื่นๆ ที่จัดทำโดย distros และโปรเจ็กต์อื่นๆ
ดู BUILDING.md สำหรับคำแนะนำโดยละเอียดสำหรับแต่ละแพลตฟอร์ม