ซอร์สโค้ด Far Cry 1.34 (2006)
(github.com/manfromafar)- ซอร์สโค้ดของเกม FPS Far Cry ที่วางจำหน่ายในปี 2004 ถูกอัปโหลดขึ้น Internet Archive และรั่วไหลสู่โลกออนไลน์
- ถูกอัปโหลดในชื่อไฟล์ว่า "Far Cry 1.34 Complete" และมีผู้ใช้บางรายอ้างว่า สามารถรันเกมได้สำเร็จ หลังจากแก้ไขไฟล์ซอร์ส
- ในโค้ดมีไฟล์ .exe บางส่วน รวมอยู่ด้วย แต่ไม่มีโค้ด Xbox หรือแอสเซ็ตของเกม
- หลังถูกอัปโหลดในช่วงปลายเดือนมิถุนายน ก็ยังไม่มี การสั่งลบจาก Ubisoft หรือแถลงการณ์อย่างเป็นทางการ
- Far Cry ได้รับคำชมในช่วงเปิดตัวจากภาพลักษณ์ด้านกราฟิกและเกมเพลย์ที่มีอิสระสูง และเป็นผลงานที่ประสบความสำเร็จเชิงพาณิชย์ด้วยยอดขาย มากกว่า 2.5 ล้านชุด
ที่มาของการรั่วไหลและองค์ประกอบของไฟล์
- ไฟล์ชื่อ "Far Cry 1.34 Complete" ถูกอัปโหลดขึ้น Archive โดยผู้ใช้ชื่อ Llaetha.ro
- ซอร์สโค้ดอยู่ในสภาพเกือบสมบูรณ์ และมีผู้ใช้บางรายอ้างว่าสามารถรันเกมได้หลังจากแก้ไขไฟล์ซอร์ส
- ในโค้ดมีไฟล์ .exe บางส่วน รวมอยู่ด้วย แต่ ไม่มีโค้ด Xbox และแอสเซ็ตของเกม
- แม้จะไม่ได้รวมแพตช์ทั้งหมดของตัวเกม แต่ผู้ใช้ระบุว่าสามารถรันเวอร์ชันดีบักบน PC กับฮาร์ดแวร์ได้
- เมื่อลองคอมไพล์จะเกิด ข้อผิดพลาด 332 รายการ จึงยังไม่สามารถคอมไพล์ได้ทันที
การแพร่กระจายของข่าวรั่วไหลและการตอบสนองของ Ubisoft
- ข่าวการรั่วไหลถูกแชร์ครั้งแรกบน Twitter โดย Vincius Medeiros ก่อนจะแพร่กระจายอย่างกว้างขวางบนแพลตฟอร์มโซเชียลมีเดียอย่าง Reddit
- แม้ซอร์สโค้ดจะถูกอัปโหลดตั้งแต่ปลายเดือนมิถุนายน แต่ Ubisoft ก็ยัง ไม่ได้ดำเนินการสั่งลบ (takedown)
- และยัง ไม่มีคอมเมนต์อย่างเป็นทางการ จาก Ubisoft เกี่ยวกับการรั่วไหลดังกล่าว
ภาพรวมของเกม Far Cry
- Far Cry วางจำหน่ายครั้งแรกใน เดือนมีนาคม 2004 แบบเอ็กซ์คลูซีฟสำหรับ Microsoft Windows PC
- ได้รับคำชมจากงานภาพ กระบวนการเล่นเกม และ อิสระระดับสูง ที่มอบให้ผู้เล่น
- หลังวางจำหน่าย 4 เดือนแรกขายได้ มากกว่า 730,000 ชุด และมียอดขายรวม มากกว่า 2.5 ล้านชุด จนกลายเป็นความสำเร็จเชิงพาณิชย์
1 ความคิดเห็น
ความเห็นจาก Hacker News
อยากให้บริษัทต่าง ๆ เอา เอนจินเกมที่เก่ามากแล้ว มาเปิดซอร์สเฉย ๆ เพื่อการศึกษา
ส่วนแอสเซ็ตของเกมก็ย่อเหลือ 1/10 ทั้งหมด ถึงจะดูไม่สวยก็ยังใช้เป็น placeholder ได้
น่าจะช่วยเรื่องการเพิ่มบุคลากรให้ทั้งอุตสาหกรรมด้วย
Windows 9x กับ classic Mac OS ไม่ได้ขายมาเกิน 20 ปีแล้ว และก็เป็นสายวิวัฒนาการที่ตันไปแล้ว ดังนั้นการเปิดซอร์สเพื่อให้คนได้เรียนรู้และทำให้รันบนฮาร์ดแวร์ใหม่ได้ง่ายขึ้นจึงสมเหตุสมผล
Adobe ก็ประกาศชัดแล้วว่า Flash Player ตายแล้ว จึงดูไม่มีเหตุผลที่ดีนักที่จะปิดซอร์สของผลิตภัณฑ์ที่ไม่ได้สร้างประโยชน์ให้อีกต่อไป ไม่ว่าจะในเชิงการเงินหรือระบบนิเวศ ที่พูดถึงตรงนี้คือปลั๊กอิน Flash Player และแอปแบบสแตนด์อโลน ไม่ใช่เครื่องมือสร้าง Flash ซึ่งยังคงอยู่ภายใต้ชื่อใหม่ว่า Adobe Animate
Trident ซึ่งเป็นเอนจินของ Internet Explorer, Presto ซึ่งเป็นเอนจินของ Opera, Winamp และแอปมือถือของ Path ก็อยู่ในบริบทเดียวกัน โดยเฉพาะ Path แอปมันเจ๋งมากช่วงพีกในปี 2013 และผมอยากเห็นว่าเขาทำฟิลเตอร์ภาพแบบเรียลไทม์กันอย่างไร
คิดดูแล้ว แอปที่ไม่ใช่เกมอาจเหมาะกับการเปิดซอร์สมากกว่าเกมเสียอีก เกมเก่า ๆ ยังมีโอกาสกลับมาเป็นรีมาสเตอร์บนแพลตฟอร์มสมัยใหม่ พร้อมการนำเอนจินหรือแอสเซ็ตบางส่วนกลับมาใช้ใหม่ แต่ซอฟต์แวร์ที่ไม่ใช่เกมพอตายแล้วก็มักจะจบเลย
Havok physics engine นึกออกเป็นอย่างแรก แต่ก็ยังมีอีกเยอะ และแต่ละตัวก็เป็นปลั๊กอินที่มีโค้ดกรรมสิทธิ์อยู่ หากจะเปิดโค้ดก็ต้องลบของพวกนี้ออก ซึ่งเป็นงานมหาศาล และทำไปแล้วโค้ดก็อาจรันไม่ได้อยู่ดี
นี่ไม่ใช่ปัญหาเฉพาะยุคหลัง อย่างที่อีกคอมเมนต์บอกไว้ แม้แต่ Doom ดั้งเดิมก็เจอปัญหานี้ เลยปล่อยออกมาได้แค่ซอร์สของ Linux
ถ้าเป็นไปได้ก็ควรให้แอสเซ็ตและ dependencies ทั้งหมดถูกเปิดออกมาโดยอัตโนมัติภายใต้ไลเซนส์ที่ใช้กับตัวเกมและงานดัดแปลงได้ด้วย
ถ้าปล่อยไว้แบบตอนนี้ ซอร์สส่วนใหญ่ก็จะสูญหายไปกับกาลเวลา และมนุษยชาติโดยรวมก็จะยิ่งยากจนลง
ถ้ายุติการบำรุงรักษา ก็ให้มีช่วงผ่อนผันที่สมเหตุสมผล เช่น 5 ปี ก่อนจะถูกปล่อยเป็น public domain
แบบนั้นน่าจะแก้ปัญหาอื่นได้อีกหลายอย่าง เช่น ขยะอิเล็กทรอนิกส์ที่มากเกินไป
จำได้ตอนที่ Far Cry ออกมา ช่วงนั้น Doom 3 กับ Half-Life 2 เป็นสองเกมที่คนรอคอยมากที่สุดอยู่พักใหญ่ เพราะทั้งคู่สัญญาว่าจะมีกราฟิกที่ล้ำกว่าทุกเกมในเวลานั้นมาก
แต่ระหว่างที่เลื่อนแล้วเลื่อนอีก Far Cry ก็ออกมาก่อนหลายเดือน และแย่งความสนใจไปได้มากด้วยกราฟิกที่น่าประทับใจพอ ๆ กัน
ทุกวันนี้แทบไม่ค่อยเห็นเกม PC exclusive ที่ทะเยอทะยานทางเทคนิคแบบนี้แล้ว เพราะความสำคัญของตลาดเกมประเภทนี้ลดลงมาก สมาร์ตโฟนกับโน้ตบุ๊กเข้ามาแทนการใช้งานส่วนใหญ่ ทำให้คนที่มีเดสก์ท็อป PC ราคาแพงลดน้อยลง และถ้าอยากเล่นเกม คนจำนวนมากก็มักจะซื้อคอนโซลแทน
ตอน The Witcher 3 ออกใหม่ ๆ มันน่าทึ่งมาก และ Red Dead Redemption 2 แม้เดิมจะเป็นเกมคอนโซล แต่บน PC ก็สวยมาก
Hellblade: Senua's Sacrifice ก็ผลักขีดจำกัดว่าด้วยทรัพยากรพัฒนาที่จำกัดจะไปได้ไกลแค่ไหน ส่วน Star Citizen ถึงยังไม่ออกก็เป็นโปรเจกต์ที่ทะเยอทะยานทางเทคนิคมาก
Cyberpunk 2077 ต่อให้การเปิดตัวจะเป็นหายนะเต็มรูปแบบ แต่เท่าที่ผมรู้ มันคือเกมใหญ่เกมแรกที่ออกมาพร้อม เรนเดอเรอร์ ray tracing แบบเต็มรูปแบบ
อาจเป็นเพราะเราเข้าใจคำว่า “ทะเยอทะยานทางเทคนิค” ไม่เหมือนกัน Unreal Engine 5 มีฟีเจอร์ที่น่าทึ่งจริง ๆ และทำให้นักพัฒนาอินดี้ตัวเล็ก ๆ ก็สร้างความสมจริงด้านกราฟิกในระดับใหม่ได้ วิดีโอ “Unrecord” ที่ปล่อยออกมาเมื่อไม่นานนี้ก็ทำให้หลายคนคิดว่าเป็นภาพจริง
ความต่างคือคอนโซลเริ่มเหมาะกับเกม FPS อย่างจริงจังก็ตั้งแต่ ยุค Xbox/PS2 ตอนนั้นก็แทบจะมีแค่ Halo
ดังนั้น FPS จึงแทบเป็น PC exclusive โดยธรรมชาติ และมีแค่เกมใหญ่ที่สุดเท่านั้นที่จะได้พอร์ตลงคอนโซลแบบไม่ค่อยดีหรือทำภาคแยกตามมาในอีกหลายปีต่อมา FarCry Instincts คือหนึ่งในตัวอย่างนั้น
คอนโซลกลายเป็นแพลตฟอร์มชั้นนำของโลก FPS จริง ๆ ก็ช่วงกลางยุค 2000 ตั้งแต่ ยุค 360/PS3 เพราะงั้น FarCry 1 จึงเป็น PC exclusive ในปี 2004 แต่ FarCry 2 ออกพร้อมกันทั้งคอนโซลและ PC ในปี 2008
ถึงจะไม่มี ray tracing แต่มันก็เป็นหนึ่งในเกมที่สวยที่สุดที่ผมเคยเล่นมานานมาก อย่างน้อยก็หลัง The Witcher 3 เป็นต้นมา เนื้อเรื่องก็หนักแน่นและเพลงประกอบก็ยอดเยี่ยม
ในซอฟต์แวร์เกมฝั่งไคลเอนต์ การก้าวกระโดดทางเทคนิคเล็ก ๆ นั้นยากจะป้องกันไม่ให้ถูกลอกตามได้ทันที คลาวด์และมือถือ ดูจะเป็นคูเมืองป้องกันด่านสุดท้าย
บน PC เราจะไปถึงจุดที่ต้องใช้การออกแบบซอฟต์แวร์แบบ black box และฮาร์ดแวร์ที่มี trusted platform module เพื่อบังคับคูเมืองทางเทคนิคของนักพัฒนาหรือไม่?
Doom 3 ได้พอร์ตที่ใช้ได้ทีเดียว ส่วน Far Cry แม้กราฟิกจะด้อยกว่าแต่ก็ถูกทำใหม่เป็น Far Cry Instincts ที่เป็นเกมดีกว่า และ Half-Life 2 ก็ถูกพอร์ตในปี 2005 แต่ค่อนข้างหยาบ
ผู้ชนะที่แท้จริงของปีนั้นคือ The Chronicles of Riddick: Escape from Butcher Bay เพราะมันทำสิ่งที่ Doom 3 ทำได้—ทั้ง stencil shadows, normal maps และ unified lighting—บน Xbox ก่อน Doom 3 เวอร์ชัน PC จะออกหลายเดือน และในฐานะเกมก็ดีกว่าด้วย
ผลลัพธ์ของ
$ grep -ir "remove this after e3" | wc -lคือ 40เลเวลช่วงต้นของ Far Cry 1 น่าทึ่งมาก ได้สู้กับ ศัตรูมนุษย์ที่ฉลาด ท่ามกลางฉากป่าและชายหาด พร้อมใช้กลยุทธ์ได้หลากหลาย
แต่พอเลเวลท้าย ๆ กลับกลายเป็นอาคารอึดอัดทั้งหมด และมีสัตว์ประหลาดประหลาด ๆ วิ่งไปมา
ถ้าทุกเลเวลให้ความรู้สึกแบบช่วงต้นเกมได้หมด มันคงเป็นเกมที่ดีที่สุดในชีวิตของฉัน
แต่พอท้ายเกมกลับกลายเป็นการกระหน่ำกระสุน 500 นัดใส่ สัตว์ประหลาดสไตล์ Doom ที่ไม่หยุดวิ่งมาจากสุดทางเดินมืด ๆ
แต่พอเข้าไปในอาคารมืด ๆ ช่วงท้ายเกม จู่ ๆ การลอบเร้นก็ไม่สำคัญอีกต่อไป กลายเป็น เกมยิงเน้นรีแอ็กชันทันที ที่ให้ความสำคัญกับ jump scare และการตอบสนองไวแทน สุดท้ายเลยเล่นไม่จบ
เลเวลช่วงท้ายแทบจำไม่ได้แล้ว แล้วเกมก็ไม่ได้เล่นจนจบด้วย
มันเป็นหนึ่งในเกมที่สวยที่สุดในยุคนั้น
ฉันเลิกเล่นเกมไปเมื่อหลายปีก่อน แต่ไม่นานมานี้เห็นลูกพี่ลูกน้องเล่น Far Cry 6 ก็รู้สึกว่ามันดูดีกว่าจริง แต่ก็ไม่ได้พัฒนาแบบก้าวกระโดดขนาดนั้น ทั้งที่ผ่านไป 17 ปี แล้ว แปลกดี
Far Cry 1 เป็นเกมที่สวยจริง แต่ภาคใหม่ ๆ ก็ดูดีกว่าต้นฉบับอย่างชัดเจนแน่นอน
อุตสาหกรรมเกมอยู่ในจุดที่แปลกมาก คล้ายกับอุตสาหกรรมภาพยนตร์ การเอาแฟรนไชส์ยุค 80-90 กลับมาทำใหม่และทำภาคต่อกลายเป็นสูตรสำเร็จไปแล้ว ฝั่งคนอายุมากก็ขายด้วยความคิดถึงได้ ผู้เล่นใหม่ก็ซื้อได้อยู่ดีเพราะไม่รู้จักต้นฉบับ และยังมีข้อดีข้อที่สามคือถูกกว่าการสร้างของใหม่ทั้งหมดมาก
การบริหารแบบ MBA ไม่เข้ากับการยอมรับความเสี่ยงเชิงสร้างสรรค์ จึงทำให้เกมใหม่ดี ๆ เหือดหายไปมาก
ในวงการเกม เรื่องพัฒนาการของกราฟิกก็คล้ายกัน การเอาเอนจินเกมเดิมมาแล้วค่อย ๆ ปรับทีละนิดในแต่ละยุคคุ้มค่ากว่าในเชิงเศรษฐกิจมาก ดังนั้นคุณภาพกราฟิกของ Far Cry ช่วงหลัง ๆ จึงแทบไม่ต่างจาก 3-4 ภาคก่อนหน้า และก็ไม่ได้ห่างจากภาคแรกแบบมหาศาลนัก
นี่เป็นผลจากวัฒนธรรมของ การปรับปรุงแบบค่อยเป็นค่อยไป เพื่อลดต้นทุน อีกปัจจัยหนึ่งคือประสิทธิภาพที่ลดลงอย่างมากของการเพิ่มจำนวนโพลีกอน ล้อที่มีแค่ 3 จุดนั้นแย่มาก แต่พอเพิ่มเป็น 6 จุดซึ่งมากขึ้นสองเท่า ล้อทรงหกเหลี่ยมก็ดูดีขึ้นมากและเพียงพอสำหรับเกมยุคเก่า พอเป็น 12 จุดก็ดูแยกจากวงกลมได้ยากในแวบแรกแล้ว และต่อให้เพิ่มเป็น 24 จุดหรือมากกว่านั้น ก็แทบไม่รู้สึกถึงความต่างจากยุคก่อนหน้า
ต่อให้เครื่องมือพัฒนาไปมาก เวลาในการวาดและออกแบบสิ่งต่าง ๆ โดยมนุษย์ก็ยังจำเป็นอยู่ดี ถ้าต้องทำรายละเอียดในระดับสุดโต่งขึ้นเรื่อย ๆ ก็ต้องใช้อาร์ติสต์มากขึ้น แต่อาร์ติสต์ก็ไม่ได้ทำงานได้ดีนักในรูปแบบนั้นด้วย
ถึงอย่างนั้น ถ้าเอาวิดีโอ YouTube ของต้นฉบับที่เล่นบนเครื่องแรง ๆ ด้วยการตั้งค่าสูง มาเทียบกับวิดีโอ FC6 ที่รันบนพีซีสเปกสูงสมัยใหม่ด้วยการตั้งค่าสูงสุด ก็ยังน่าประทับใจอยู่ดี
Far Cry 3 เป็นเกมที่เกมเพลย์ดีมากจนคุณไม่ค่อยสนใจกราฟิก แต่ Far Cry 4 ให้ความรู้สึกเหมือนข้ามไปอยู่อีกดาวหนึ่งเลย
ไม่ว่าจะผิดกฎหมายหรือไม่ ฉันก็ดีใจที่ของแบบนี้ถูกเผยแพร่ออกมา ของเก่าแบบนี้คงไม่สร้างความเสียหายมากนัก และเป็น สื่อการเรียนรู้ ที่ยอดเยี่ยม
แทนที่จะไปเรียนรู้วิธีเอาชั้นลาวาที่เปราะและมีช่องโหว่มาปะติดปะต่อเพิ่มแบบเด็กฝึกงานนักพัฒนา C++ ที่เข้าออกงานบ่อย ก็ควรไปใช้แหล่งข้อมูลที่ดีกว่าซึ่งสอนนิสัยที่ดีจะดีกว่า
จำได้ลาง ๆ ว่ามี บั๊กที่ทำให้โมเมนตัมเพิ่มขึ้น ถ้าบินลงล่างด้วยแฮงไกลเดอร์แล้วขยับขึ้นด้านบน
ตอนนั้น Far Cry 1 ให้ความรู้สึกเหมือนกราฟิกเหนือจริงมาก
เกมสนุกนะ แต่สิ่งที่น่าหงุดหงิดที่สุดคือถ้าโยนหินหรือระเบิดมือไปในจุดที่ศัตรูมองเห็นได้ มิเตอร์ลอบเร้นจะลดเหลือ 0 ทันทีแล้วพวกมันก็เริ่มยิงทันที
เล่นไปเยอะมาก ฮ่า ๆ
ฉากออกมาจากบังเกอร์น่าทึ่งมาก และไม่นานก็เริ่มรู้ว่าท้ายที่สุดมันจะกลายเป็น ทัวร์พร้อมไกด์ เพราะ “Doyle”
ฉันเคยใช้เวลาเยอะมากในการอ่านซอร์สโค้ดเกมจากที่อย่าง https://github.com/bobeff/open-source-games และอันนี้ก็ดูเหมือนจะเป็น โปรเจกต์สุดสัปดาห์ ชิ้นใหม่
นี่คือลิงก์ดี ๆ อื่นเกี่ยวกับการรั่วไหล
github.com/StrongPC123/Far-Cry-1-Source-Full
breachforums.vc/Thread-FarCry-1-Leaked-Source-Code
ฝั่ง GitHub ดูน่าสนใจกว่า
อาจเป็นไปได้ว่ามีใครบางคนพยายามอัปโหลดเนื้อหาที่ละเมิดอย่างชัดเจนแบบนี้ลง archive.org เพื่อ ทำให้ archive.org ลำบาก
ไม่ว่าอะไรจะตามมาครั้งหน้า ถ้ามี มันก็จะเป็นเกม ตีตัวตุ่น ที่เจ้าของลิขสิทธิ์ไม่มีทางชนะ
ล่าสุดที่ฉันได้ยิน archive.org ก็ยังโฮสต์ Nintendo ROM อยู่ และนั่นก็เป็นการละเมิดลิขสิทธิ์อย่างชัดเจน