How to build and setup on Elbrus OS.md - tx00100xt/SeriousSamClassic GitHub Wiki

Как собрать и установить игру вместе с модификациями на Эльбрус.

Сначала клонируем репозитории.

git clone https://github.com/tx00100xt/SeriousSamClassic.git
git clone https://github.com/tx00100xt/SeriousSamAlphaRemake.git

В файлах SeriousSamClassic/SamTFE/Sources/CMakeLists.txt , SeriousSamClassic/SamTFE/Sources/CMakeLists.txt и SeriousSamAlphaRemake/Sources/CMakeLists.txt можно заменить march=native на mtune=<Модель> и выставить оптимизацию -O3

Потом получим архивы с контентом модов и распакуем их в клонированный репозиторий.

Получим данные для модификации Serious Sam Alpha Remake:

wget https://archive.org/download/serious-sam-alpha-remake-data/SeriousSamAlphaRemake_v1.5.tar.xz
tar xJvf SeriousSamAlphaRemake_v1.5.tar.xz -C SeriousSamClassic/SamTFE

или

for var in a b c d; do wget https://github.com/tx00100xt/serioussam-mods/raw/main/SamTFE-SSA/SeriousSamAlphaRemake_v1.5.tar.xz.parta$var; done; cat SeriousSamAlphaRemake_v1.5.tar.xz.part* > SeriousSamAlphaRemake_v1.5.tar.xz
tar -xJvpf SeriousSamAlphaRemake_v1.5.tar.xz -C SamTFE

Получим данные для модификации XPLUS:

wget https://archive.org/download/sam-tfe-xplus/SamTFE-XPLUS.tar.xz
tar -xJvpf SamTFE-XPLUS.tar.xz -C SamTFE

wget https://archive.org/download/sam-tse-xplus/SamTSE-XPLUS.tar.xz
tar -xJvpf SamTSE-XPLUS.tar.xz -C SamTSE

или

for var in a b c; do wget https://github.com/tx00100xt/serioussam-mods/raw/main/SamTFE-XPLUS/SamTFE-XPLUS.tar.xz.parta$var; done; cat SamTFE-XPLUS.tar.xz.part* > SamTFE-XPLUS.tar.xz
tar -xJvpf SamTFE-XPLUS.tar.xz -C SamTFE
for var in a b c; do wget https://github.com/tx00100xt/serioussam-mods/raw/main/SamTSE-XPLUS/SamTSE-XPLUS.tar.xz.parta$var; done; cat SamTSE-XPLUS.tar.xz.part* > SamTSE-XPLUS.tar.xz
tar -xJvpf SamTSE-XPLUS.tar.xz -C SamTSE

Далее соберём исполняемые файлы и библиотеки для игры Serious Sam вместе с модификацией XPLUS:

cd SeriousSamClassic
mkdir build
mkdir build-xplus
cd build
cmake ..
make -j8
make install
cd ..
cd build-xplus
cmake -DXPLUS=TRUE ..
make -j8
make install

Далее соберём и библиотеки для модификации Serious Sam Alpha Remake:

cd SeriousSamAlphaRemake/Sources
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DTFE=TRUE ..
make ecc
make -j8

Получившиеся библиотеки libEntities.so и libGame.so из build/Debug поместить в папку SamTFE/Mods/SSA/Bin

Теперь скопируем данные игр Serious Sam The First Encounter и Serious Sam The Second Encounter:

Чтобы начать игру, вам потребуются исходные ресурсы лицензионной копии игр Serious Sam: The First Encounter и Serious Sam: The Second Encounter.

Steam-версия.

Если у вас есть цифровая копия игры в Steam, то ресурсы можно найти в ~/.local/share/Steam/steamapps/common/Serious Sam Classic The Second Encounter/ (каталог установки игры Steam по умолчанию в Linux).

cd SeriousSamClassic
rsync --progress -rh "$HOME/.local/share/Steam/steamapps/common/Serious Sam Classic The First Encounter/" SamTFE
rsync --progress -rh "$HOME/.local/share/Steam/steamapps/common/Serious Sam Classic The Second Encounter/" SamTSE
GOG-версия.

Если вы купили цифровую версию на GOG, вы можете распаковать ресурсы с помощью инструмента командной строки innoextract.

cd SeriousSamClassic
innoextract --gog setup_serious_sam_the_first_encounter_2.0.0.10.exe
cp -vfr "app/"{*.gro,Levels,Help} SamTFE
rm setup_serious_sam_the_first_encounter_2.0.0.10.exe
rm -rf app
rm -rf tmp
innoextract --gog setup_serious_sam_the_second_encounter_2.1.0.8.exe
cp -vfr "app/"{*.gro,Levels,Help} SamTSE
rm setup_serious_sam_the_first_encounter_2.0.0.10.exe
rm -rf app
rm -rf tmp
rm -rf commonappdata
CD-версия.
Если вы купили физическую копию игры и у вас есть ISO-образ вашего диска, вы можете распаковать ресурсы любым менеджером архивов.
Ресурсы игры находятся в папке Install на диске. Просто скопируйте оттуда все файлы *.gro,
а также каталог Levels в каталоги SeriousSamClassic/SamTFE и SeriousSamClassic/SamTSE соответственно для игр Serious Sam: The First Encounter и Serious Sam: The Second Encounter.
Запуск игры.

Для запуска игры используйте скрипт:

run_game.sh

или

run_game_hud.sh

если вам нужен мониторинг MangoHUD.

⚠️ **GitHub.com Fallback** ⚠️