ลมหายใจที่สองของชีวิตสำหรับ Wolfenstein: Enemy Territory
ET: Legacy เป็นโปรเจ็กต์โอเพ่นซอร์สที่สร้างจากโค้ดของ Wolfenstein: Enemy Territory ซึ่งเปิดตัวในปี 2010 ภายใต้เงื่อนไขของ GPLv3
โครงการนี้มีสองด้าน:
สำหรับข้อมูลเพิ่มเติมโปรดปรึกษาวิกิของเรา
ดูการมีส่วนร่วม
ดูความปลอดภัย
ET: ขณะนี้ตัวติดตั้ง Windows รุ่นเก่าได้ลงนามแล้ว ขอบคุณ SignPath Foundation
Wolfenstein: Enemy Territory เปิดให้เล่นฟรี และสามารถดาวน์โหลดได้จาก Splash Damage
การเปิดตัวแหล่งที่มานี้มีเพียงเอ็นจิ้นและรหัส mod แต่ไม่มีข้อมูลเกมใด ๆ ซึ่งยังคงครอบคลุมอยู่ใน EULA ดั้งเดิมและจะต้องปฏิบัติตามตามปกติ
เพื่อที่จะรัน ET: Legacy คุณจะต้องคัดลอกไฟล์สินทรัพย์ pak0.pk3 ดั้งเดิมไปยังโฟลเดอร์ etmain นอกจากนี้ ม็อดของบริษัทอื่นอาจต้องการไฟล์ทรัพย์สิน pak1.pk3 และ pak2.pk3 ด้วย
ET: Legacy ยังคงเข้ากันได้กับเวอร์ชัน ET 2.60b ให้ได้มากที่สุด
โปรดทราบว่า ET: Legacy เข้ากัน ไม่ ได้กับเซิร์ฟเวอร์ที่เปิดใช้งาน PunkBuster ET: ไคลเอนต์รุ่นเก่าไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ที่รัน ETPro mod ได้
โปรดจำไว้ว่า 64 บิต ET: ไคลเอนต์รุ่นเก่าสามารถเชื่อมต่อกับเซิร์ฟเวอร์ที่ใช้งาน mods ที่ให้บริการเวอร์ชัน 64 บิตเท่านั้น คุณจะสามารถเล่นม็อดแบบ 32 บิตเท่านั้นหากคุณคอมไพล์ ET: Legacy บนระบบ 32 บิต หรือคอมไพล์ข้ามสำหรับสถาปัตยกรรม 32 บิตบนระบบ 64 บิต
ในขณะนี้ เฉพาะม็อด ETrun, ETJump, N!tmod และ Legacy เท่านั้นที่มีให้ใช้งานในเวอร์ชัน 64 บิต ในขณะที่ม็อดอื่นๆ ที่มีอยู่ทั้งหมดมีให้ใช้งานในเวอร์ชัน 32 บิตเท่านั้น อ่านเพิ่มเติมได้ที่หน้า วิกิ Mods ที่เข้ากันได้
ในกรณีที่คุณใช้ระบบ 64 บิต คุณอาจต้องการใช้ ไลบรารีแบบรวม ซึ่งอยู่ในที่เก็บ etlegacy-libs ที่แยกต่างหาก และสามารถดาวน์โหลดได้โดยอัตโนมัติโดยใช้คำสั่ง git submodule
ดูหัวข้อถัดไปสำหรับรายละเอียดเพิ่มเติม
ที่จำเป็น:
ไม่บังคับ เปิดใช้งานตามค่าเริ่มต้น:
รับข้อมูลเกี่ยวกับเวอร์ชัน lib ปัจจุบันจากหน้าวิกิ Libs Changelog ของเรา
หากต้องการรับซอร์สโค้ดล่าสุด ให้ติดตั้ง git และโคลนพื้นที่เก็บข้อมูลของเราที่โฮสต์ที่ Github.com:
$ git clone [email protected]:etlegacy/etlegacy.git
หากไม่ได้ติดตั้งการขึ้นต่อกันที่จำเป็นในระบบของคุณให้รัน:
$ git submodule init
$ git submodule update
วิธีนี้จะดาวน์โหลดการขึ้นต่อกันที่จำเป็นลงในไดเร็กทอรี libs/
คุณสามารถเลือกได้ว่าจะใช้ไลบรารีแบบบันเดิลแทนไลบรารีของระบบหรือไม่โดยการเปลี่ยนตัวแปร BUNDLED_LIBS
ในไฟล์คอนฟิกูเรชัน CMakeList.txt จากนั้นคุณสามารถเลือกไลบรารีที่รวมกลุ่มที่จะใช้ได้โดยการสลับตัวแปร BUNDLED_XXX
ที่เกี่ยวข้อง
หากต้องการติดตั้งไบนารีทั้งระบบ คุณจะต้องคอมไพล์ ET: Legacy ด้วยฮาร์ดโค้ด fs_basepath
ตัวแปรต่อไปนี้สามารถปรับได้ใน CMake:
INSTALL_DEFAULT_BASEDIR
: ตั้งค่าเริ่มต้น fs_basepath
เช่นที่ไฟล์ปฏิบัติการ etl และ etlded ค้นหาไฟล์ข้อมูล ในกรณีส่วนใหญ่ จะเป็น CMAKE_INSTALL_PREFIX
+ INSTALL_DEFAULT_MODDIR
ค่าเริ่มต้นเป็นค่าว่าง เนื่องจากเราต้องการให้ fs_basepath
เป็นไดเร็กทอรีการทำงานปัจจุบันเมื่อไม่ได้ติดตั้งทั้งระบบเกม
(ไม่บังคับ) INSTALL_DEFAULT_BINDIR
: ตำแหน่งสำหรับปฏิบัติการ ต่อท้าย CMAKE_INSTALL_PREFIX
ค่าเริ่มต้นเป็น bin
(ไม่บังคับ) INSTALL_DEFAULT_SHAREDIR
: ตำแหน่งสำหรับข้อมูลที่แชร์ ต่อท้าย CMAKE_INSTALL_PREFIX
ค่าเริ่มต้นที่จะ share
(ไม่บังคับ) INSTALL_DEFAULT_MODDIR
: ตำแหน่งสำหรับห้องสมุดและปาก ต่อท้าย CMAKE_INSTALL_PREFIX
ค่าเริ่มต้นเป็น lib/etlegacy
จากนั้น legacy
จะถูกต่อท้าย
(ไม่บังคับ) DOCDIR
: ตำแหน่งสำหรับเอกสาร ค่าเริ่มต้นเป็น INSTALL_DEFAULT_SHAREDIR/doc/etlegacy
ติดตั้งการพึ่งพาที่จำเป็น
ในเทอร์มินัล ให้รันหนึ่งในรายการต่อไปนี้:
$ ./easybuild.sh # for compiling a 32 bit version or
$ ./easybuild.sh -64 # for compiling a 64 bit version
ET: Legacy จะถูกติดตั้งใน ~/etlegacy
ในเทอร์มินัลให้รัน:
$ mkdir build && cd build && cmake ..
หากต้องการคอมไพล์ให้รัน:
$ make
หากคุณต้องการติดตั้ง ET: Legacy ทั้งระบบ ให้รัน:
$ make install
อย่าลืมตั้งค่าตัวแปร CMake (ดูด้านบน) ไว้ล่วงหน้า
หมายเหตุ:
แม้ว่าคุณจะมีการกระจาย linux 64 บิตซึ่งมีไลบรารีที่จำเป็นทั้งหมดเวอร์ชัน 32 บิต คุณอาจต้องติดตั้งไลบรารีการพัฒนา (แพ็คเกจ -devel) บนระบบของคุณ
ในการคอมไพล์ไลบรารี่ jpeg-turbo อย่างถูกต้อง คุณจะต้องมี nasm assembler
ในบางระบบ CMake อาจมีปัญหาในการค้นหาไลบรารี 32 บิต และพยายามใช้ไลบรารี 64 บิตเมื่อสร้าง 32 บิต ซึ่งสามารถแก้ไขได้โดยการตั้งค่าตัวแปรสภาพแวดล้อมต่อไปนี้ก่อนเรียกใช้ CMake (หมายเหตุ: การเรียกใช้ easybuild จะดูแลสิ่งนี้ให้คุณ)
$ export CC= " gcc -m32 "
$ export CXX= " g++ -m32 "
# or simply run cmake with
$ CC= " gcc -m32 " CXX= " g++ -m32 " cmake ..
ในเทอร์มินัลให้รัน:
$ mkdir build && cd build
$ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchain-cross-mingw-linux.cmake ..
$ make
ตามค่าเริ่มต้น ชื่อ MinGW จะถูกตั้งค่าเป็น i686-w64-mingw32
คุณอาจต้องเปลี่ยนใน cmake/Toolchain-cross-mingw-linux.cmake
ขึ้นอยู่กับวิธีการเรียกในระบบของคุณ
ติดตั้ง:
ตัวเลือก A: easybuild
ET: Legacy จะถูกติดตั้งใน My DocumentsETLegacy-Build
ตัวเลือก B: Visual Studio
build
ภายในไดเร็กทอรีซึ่งมี ET: Legacy Sourcescd
เป็นไดเร็กทอรี build ที่สร้างขึ้นใหม่ในพรอมต์คำสั่ง ให้รัน:
$ cmake -G " NMake Makefiles " -DBUNDLED_LIBS=YES .. && nmake
หรือ
$ cmake -G " Visual Studio 16 " -A Win32 -DBUNDLED_LIBS=YES .. # Visual Studio 2019
# or "Visual Studio 17" for Visual Studio 2022
และเปิดโปรเจ็กต์ผลลัพธ์ใน Visual Studio
หมายเหตุ:
หากการคอมไพล์ไลบรารีที่รวมถูกยกเลิกไม่ว่าด้วยเหตุผลใดก็ตาม คุณอาจต้องล้างไดเร็กทอรี libs และเริ่มต้นใหม่ ซึ่งสามารถทำได้โดยการรัน git clean -df && git reset --hard HEAD
ภายในไดเร็กทอรี libs/
หากบิลด์ล้มเหลวในระหว่างการคอมไพล์ libcurl เนื่องจากไม่มียูทิลิตี้ sed ให้ดาวน์โหลดจาก GnuWin แล้ววางลงในพาธระบบของคุณ หรือคัดลอกลงใน MSVC/VC/bin
นอกจากนี้ยังมาพร้อมกับ Git และสามารถวางลงในเส้นทางระบบของคุณโดยอัตโนมัติหากคุณเลือกตัวเลือกนั้นระหว่างการติดตั้ง Git
ติดตั้ง:
xcode-select --install
)จากนั้นสร้างแพ็คเกจต่อไปนี้ในแอปเทอร์มินัล:
# all compilation tools needed
$ brew install cmake autoconf nasm automake libtool
# Libraries if you do not wish to compile and use the provided sources (BUNDLED_LIBS)
$ brew install glew sdl2 minizip jpeg-turbo curl lua libogg libvorbis theora freetype libpng sqlite openal-soft
อีกวิธีหนึ่งในการติดตั้งการขึ้นต่อกันคือการรัน
$ brew bundle
$ brew bundle --file=misc/macos/libs.Brewfile
ขึ้นอยู่กับเวอร์ชัน brew ที่คุณใช้ (ส่วนใหญ่เป็นรุ่นเก่ากว่า) คุณต้องระบุ brew install --universal
เพื่อรับทั้ง 32 บิตและ 64 บิต libs หากเกิดข้อผิดพลาด เพียงใช้คำสั่งที่แสดงด้านบน แม้ว่าไลบรารี Curl ของระบบของคุณจะรองรับทั้งสองสถาปัตยกรรม แต่คุณก็ต้องติดตั้งส่วนหัวด้วย
easybuild.sh มีแฟล็กและตัวเลือกมากมาย ET: เวอร์ชันดั้งเดิมที่คุณสามารถคอมไพล์ได้นั้นขึ้นอยู่กับเวอร์ชัน macOS ที่ใช้
หากคุณใช้งาน ถึง macOS 10.14 (Mojave) ให้ใช้แฟล็กต่อไปนี้ใน Terminal.app:
$ ./easybuild.sh # for compiling a 32 bit version or
$ ./easybuild.sh -64 # for compiling a 64 bit version
สิ่งนี้จะใส่โฟลเดอร์ 'etlegacy' พร้อมส่วนโค้งที่เลือกลงในโฟลเดอร์ผู้ใช้ของคุณ
ด้วย macOS 10.15 (Catalina) ขึ้นไป ตัวเลือกเดียวของคุณคือคอมไพล์และรันไคลเอนต์ 64 บิต ดังนั้นคุณจึงจำเป็นต้องใช้แฟล็กต่อไปนี้:
$ ./easybuild.sh -64 --osx=10.15 # watch out for the double dash at --osx !
ดู easybuild.sh เพื่อดูข้อมูลเพิ่มเติมและตัวเลือก/แฟล็กเพิ่มเติม
ในเทอร์มินัลให้รัน:
$ mkdir build && cd build && cmake ..
ดูที่ easybuild.sh สำหรับตัวเลือก CMake ที่มีอยู่ทั้งหมด
หากต้องการคอมไพล์ให้รัน:
$ make
หากคุณต้องการติดตั้ง ET: Legacy ทั้งระบบ ให้รัน:
$ make install
อย่าลืมตั้งค่าตัวแปร CMake (ดูด้านบน) ไว้ล่วงหน้า
หมายเหตุ :
ET: Legacy รองรับทั้ง OpenGL และ OpenGL ES
อุปกรณ์ที่จำเป็น
RPI 4+ (ระบบปฏิบัติการ 64 บิต) หรือใดๆ ที่รัน aarch64 arch
การพึ่งพาที่จำเป็น
$ sudo apt-get install build-essential libfreeimage-dev libopenal-dev libpango1.0-dev libsndfile-dev libudev-dev
libasound2-dev libjpeg8-dev libwebp-dev automake libgl1-mesa-glx libjpeg62-turbo libogg0 libopenal1 libvorbis0a
libvorbisfile3 zlib1g libraspberrypi0 libraspberrypi-bin libraspberrypi-dev libx11-dev libglew-dev libegl1-mesa-dev
nasm autoconf git cmake zip gcc g++ libtool libxrandr-dev x11proto-randr-dev
คำแนะนำในการติดตั้ง Pi 4+
ไดรเวอร์ OpenGL ที่ใช้คือไดรเวอร์ KMS ปลอม และขณะนี้ทั้ง OpenGL และ GLES ทำงานภายในเซสชัน X11 หากคุณต้องการสลับระหว่าง OpenGL และ GLES เมื่อติดตั้ง ET: Legacy บน Pi 4 เพียงตั้งค่าสถานะ FEATURE_RENDERER_GLES
เป็น 0 หรือ 1 ใต้ส่วน RPI
ภายในสคริปต์ easybuild.sh
แล้วเรียกใช้ ./easybuild.sh -RPI -j4
คนอื่น
หากคุณต้องการสลับระหว่าง OpenGL และ GLES เมื่อติดตั้ง ET: Legacy เพียงตั้งค่าสถานะ FEATURE_RENDERER_GLES
เป็น 0 หรือ 1 ใต้ส่วน RPI
ภายในสคริปต์ easybuild.sh
แล้วเรียกใช้ ./easybuild.sh -RPI -j4
หากต้องการติดตั้ง ET Legacy โดยใช้ Snap Store/Snapcraft ให้ทำตามคำแนะนำใน: etlegacy-snap repo
Wolfenstein: Enemy Territory GPL ซอร์สโค้ดลิขสิทธิ์ (C) 1999-2010 id Software LLC ซึ่งเป็นบริษัท ZeniMax Media
ซอร์สโค้ด OpenWolf GPL ลิขสิทธิ์ (C) 2011 Dusan Jocic
XreaL GPL ซอร์สโค้ด (renderer2) ลิขสิทธิ์ (C) 2010-2011 Robert Beckebans
ET: ลิขสิทธิ์ดั้งเดิม (C) 2012-2024 ET: ทีม Legacy [email protected]
ET: Legacy เป็นซอฟต์แวร์เสรี: คุณสามารถแจกจ่ายซ้ำและ/หรือแก้ไขได้ภายใต้เงื่อนไขของ GNU General Public License ตามที่เผยแพร่โดย Free Software Foundation เวอร์ชัน 3 ของใบอนุญาต หรือ (ตามตัวเลือกของคุณ) เวอร์ชันที่ใหม่กว่า
ET: Legacy ได้รับการเผยแพร่โดยหวังว่าจะมีประโยชน์ แต่ไม่มีการรับประกันใดๆ โดยไม่มีการรับประกันโดยนัยถึงความสามารถในการซื้อขายหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ ดูใบอนุญาตสาธารณะทั่วไปของ GNU สำหรับรายละเอียดเพิ่มเติม
คุณควรได้รับสำเนาของ GNU General Public License พร้อมกับ ET: Legacy (ดู COPYING.txt) ถ้าไม่ โปรดดู https://www.gnu.org/licenses/
ข้อกำหนดเพิ่มเติม: The Wolfenstein: Enemy Territory GPL Source Code ยังอยู่ภายใต้ข้อกำหนดเพิ่มเติมบางประการอีกด้วย คุณควรได้รับสำเนาข้อกำหนดเพิ่มเติมเหล่านี้ทันทีตามข้อกำหนดและเงื่อนไขของ GNU GPL ซึ่งมาพร้อมกับ Wolf ET Source Code หากไม่มี โปรดขอสำเนาเป็นลายลักษณ์อักษรจาก id Software ที่ id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA
รหัสที่ยกเว้น: รหัสที่อธิบายด้านล่างและอยู่ใน Wolfenstein: Enemy Territory GPL Source Code ไม่ได้เป็นส่วนหนึ่งของโปรแกรมที่ครอบคลุมโดย GPL และได้รับการยกเว้นอย่างชัดแจ้งจากข้อกำหนด คุณมีหน้าที่รับผิดชอบแต่เพียงผู้เดียวในการขอรับใบอนุญาตสำหรับรหัสดังกล่าวจากผู้ถือลิขสิทธิ์ และปฏิบัติตามข้อกำหนดใบอนุญาตที่เกี่ยวข้อง
ลิขสิทธิ์ (C) 1991-1992, RSA Data Security, Inc. สร้างเมื่อปี 1991 สงวนลิขสิทธิ์
อนุญาตให้ใช้สิทธิในการคัดลอกและใช้ซอฟต์แวร์นี้ได้ โดยมีเงื่อนไขว่าซอฟต์แวร์ดังกล่าวจะต้องระบุเป็น "อัลกอริทึมการแยกย่อยข้อความ RSA Data Security, Inc. MD4" ในเนื้อหาทั้งหมดที่กล่าวถึงหรืออ้างอิงถึงซอฟต์แวร์นี้หรือฟังก์ชันนี้
ยังได้รับใบอนุญาตให้จัดทำและใช้งานลอกเลียนแบบ โดยมีเงื่อนไขว่างานดังกล่าวได้รับการระบุว่า "ได้มาจาก RSA Data Security, Inc. MD4 Message-Digest Algorithm" ในเนื้อหาทั้งหมดที่กล่าวถึงหรืออ้างอิงถึงงานที่ได้รับ
RSA Data Security, Inc. ไม่ได้รับรองเกี่ยวกับความสามารถของผู้ค้าซอฟต์แวร์นี้หรือความเหมาะสมของซอฟต์แวร์นี้เพื่อวัตถุประสงค์เฉพาะใดๆ มีให้ "ตามสภาพ" โดยไม่มีการรับประกันโดยชัดแจ้งหรือโดยนัยใดๆ
อัลกอริธึม MD5 ได้รับการพัฒนาโดย Ron Rivest การใช้งานภาษา C ซึ่งเป็นสาธารณสมบัติที่ใช้ในโปรแกรมนี้เขียนโดย Colin Plumb ในปี 1993 ไม่มีการอ้างสิทธิ์ในลิขสิทธิ์
ซอฟต์แวร์นี้เป็นสาธารณสมบัติ การอนุญาตให้ใช้ คัดลอก ดัดแปลง และแจกจ่ายซอฟต์แวร์นี้และเอกสารประกอบของซอฟต์แวร์นี้เพื่อวัตถุประสงค์ใดๆ โดยไม่ต้องเสียค่าธรรมเนียม โดยไม่มีเงื่อนไขหรือข้อจำกัดใดๆ ซอฟต์แวร์นี้มีให้ "ตามสภาพ" โดยไม่มีการรับประกันโดยชัดแจ้งหรือโดยนัย