ชุมชนเกมเมอร์กำลังได้เห็นความพยายามในการอนุรักษ์ที่น่าทึ่ง เมื่อนักพัฒนากำลังทำงานเพื่อถอดรหัสและทำความเข้าใจเกม LEGO Island ซึ่งเป็นเกมในดวงใจที่ได้รับความนิยมในปี 1997 โครงการนี้มีเป้าหมายในการถอดรหัสเกมเวอร์ชัน 1.1 (ภาษาอังกฤษ) ให้สมบูรณ์ เพื่อให้คนรุ่นต่อไปได้สัมผัสและสามารถดัดแปลงประวัติศาสตร์เกมคลาสสิกชิ้นนี้ได้
ค่า Checksums ของไฟล์เกมต้นฉบับ:
- ISLE.EXE: md5: f6da12249e03eed1c74810cd23beb9f5
- LEGO1.DLL: md5: 4e2f6d969ea2ef8655ba3fc221a0c8fe
- CONFIG.EXE: md5: 92d958a64a273662c591c88b09100f4a
นวัตกรรมทางเทคนิคและเครื่องมือ
โครงการถอดรหัสนี้โดดเด่นด้วยวิธีการที่ซับซ้อนในการอนุรักษ์ประวัติศาสตร์เกม นักพัฒนาได้สร้างเครื่องมือพิเศษอย่าง 'reccmp' ซึ่งเป็นเครื่องมือตรวจสอบที่เปรียบเทียบฟังก์ชันที่ถูกสร้างขึ้นใหม่กับไฟล์ต้นฉบับ และ 'SIEdit' ซึ่งเป็นโปรแกรมแก้ไขทรัพยากรสำหรับรูปแบบการสตรีมที่เป็นเอกลักษณ์ของเกม โครงการนี้ยังให้ข้อมูลเชิงลึกเกี่ยวกับเทคโนโลยีในอดีตอย่าง D3D retained mode (D3DRM) ซึ่งเผยให้เห็นวิธีการพัฒนาเกมในช่วงปลายยุค 90
เครื่องมือสำคัญที่ได้พัฒนาขึ้น:
- reccmp: เครื่องมือเปรียบเทียบไบนารีสำหรับตรวจสอบความถูกต้องของฟังก์ชัน
- SIEdit: โปรแกรมแก้ไขทรัพยากรสำหรับรูปแบบการสตรีมมิ่งประเภท RIFF
ผลกระทบต่อชุมชนและความรู้สึกถวิลหาอดีต
โครงการนี้ได้จุดประกายการพูดคุยอย่างกว้างขวางในชุมชนเกมเมอร์ โดยเฉพาะในกลุ่มผู้ที่เคยเล่นเกม LEGO Island ในวัยเด็ก แม้ว่าเนื้อหาของเกมจะมีจำกัด แต่ผลกระทบที่มีต่อผู้เล่นนั้นมีมากมาย ดังที่สมาชิกชุมชนคนหนึ่งได้สะท้อนความรู้สึก:
ผมจำได้ว่าตอนกลับไปเล่นอีกครั้งหลังจากดูวิดีโอใน YouTube ที่มีคนวิเคราะห์ทางเทคนิค ผมถึงได้รู้ว่าเกมนี้มีเนื้อหาน้อยกว่าครึ่งชั่วโมงด้วยซ้ำ! ทั้งที่ผมจำได้ว่าเคยเล่นเกมนี้เป็นชั่วโมงๆ
ผลกระทบในอนาคต
การถอดรหัสครั้งนี้ไม่ได้เป็นเพียงการอนุรักษ์เท่านั้น การทำให้โค้ดสามารถทำงานและแก้ไขได้ เปิดโอกาสให้มีการปรับปรุง แก้ไขบั๊ก และอาจรวมถึงการพอร์ตไปยังแพลตฟอร์มสมัยใหม่ งานนี้ต่อยอดจากความพยายามก่อนหน้านี้อย่าง LEGO Island Rebuilder ซึ่งได้แก้ไขปัญหาต่างๆ รวมถึงการควบคุมที่ขึ้นอยู่กับเฟรมเรท โครงการนี้ใส่ใจในรายละเอียดการจับคู่โค้ดต้นฉบับ พร้อมทั้งเปิดโอกาสให้มีการพัฒนาต่อยอด แสดงให้เห็นถึงแนวทางที่สมดุลในการอนุรักษ์เกม
ข้อกำหนดในการพัฒนา
นักพัฒนาที่สนใจร่วมพัฒนาโครงการสามารถใช้ระบบบิลด์ CMake โดยแนะนำให้ใช้ Microsoft Visual C++ 4.20 เพื่อผลลัพธ์ที่แม่นยำที่สุด วิธีการนี้รับประกันความเข้ากันได้สูงกับเกมต้นฉบับ พร้อมทั้งวางรากฐานสำหรับการปรับปรุงและดัดแปลงในอนาคต
อ้างอิง: LEGO Island Decompilation