# Збірка NotBlood з підключенням до серверів IPv6 Вперше наткнувся на ініціативу запуску цієї гри в Geminispace і оскільки гайдів по типу Халфи: => http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]/yggdrasil:games:half_life_on_xash3d на цю тему я не побачив (або не там шукав) вирішив зробити такий, тим паче що сервер там - Yggdrasil. По суті, для цієї гри створено реверс-рушій NBlood: => https://github.com/NBlood/NBlood Але я буду користуватись модом NotBlood, який є його форком з ~2k комітів поверху, на момент допису: => https://github.com/clipmove/NotBlood ## Збірка В мережі є спільна для усіх рушіїв цього типу документація: => https://wiki.eduke32.com/wiki/Building_EDuke32_on_Linux З неї згодяться такі залежності: ``` bash sudo dnf install g++ nasm mesa-libGL-devel SDL2-devel alsa-lib-devel libvpx-devel gtk2-devel flac flac-devel ``` * `gtk2-devel` потрібен, якщо збірка з `HAVE_GTK2=1` (стандартно) - цей компонент використовується в лаунчері GUI; згодом я його вимкнув, тому даний пакет можна пропустити На сусідньому ресурсі, є тема: => http://[200:8622:7a28:83ed:64b5:9254:8804:daa3]/g/thread/26.html#81 З неї, нам знадобиться наступний патч для підтримки адрес IPv6 (UPD. вже не потрібен): > Кароче, анон: > В /NotBlood/source/blood/src/osdcmd.cpp > > Ищешь > > { "net_address","sets network address used for multiplayer", (void *)zNetAddressBuffer, CVAR_STRING|CVAR_FUNCPTR, 0, 16 }, > > > Правишь 16 на 128 > > { "net_address","sets network address used for multiplayer", (void *)zNetAddressBuffer, CVAR_STRING|CVAR_FUNCPTR, 0, 128 }, > > В /NotBlood/source/blood/src/network.cpp > > в двух местах правишь char ipaddr[32]; на char ipaddr[128]; > > Компиляешь. > > После этого NotBlood воспринимает прописанный в ~/.config/notblood/notblood_cvars.cfg длинный адрес и способен к нему коннектиться, проверено. На Fedora 43, мені довелось тільки вимкнути HAVE_GTK2 (1 by default) ``` bash make HAVE_GTK2=0 ``` * інакше буде помилка типу `GLib-GObject-CRITICAL .. cannot register existing type 'GdkDisplayManager'` ## Ігрові набори Тут є пара не офіційних референсів: => https://rutracker.org/forum/viewtopic.php?t=5498167 => https://archive.org/details/blood-gt-interactive-software-1997disc-1 Але я шукатиму для себе білу (або найбільш біляву) версію. UPD. видача з гугла, сумісність поки не перевірено: => https://store.steampowered.com/app/3884520/Blood_Refreshed_Supply/ => https://www.gog.com/en/game/blood_refreshed_supply => https://store.epicgames.com/en-US/p/blood-refreshed-supply-f8bb7c В залежності від способу отримання, файли вказані в README (https://github.com/clipmove/NotBlood#installing) копіюються до цільової теки: * BLOOD.INI * BLOOD.RFF * BLOOD000.DEM, ..., BLOOD003.DEM (optional) * CP01.MAP, ..., CP09.MAP (optional, Cryptic Passage) * CPART07.AR_ (optional, Cryptic Passage) * CPART15.AR_ (optional, Cryptic Passage) * CPBB01.MAP, ..., CPBB04.MAP (optional, Cryptic Passage) * CPSL.MAP (optional, Cryptic Passage) * CRYPTIC.INI (optional, Cryptic Passage) * CRYPTIC.SMK (optional, Cryptic Passage) * CRYPTIC.WAV (optional, Cryptic Passage) * GUI.RFF * SOUNDS.RFF * SURFACE.DAT * TILES000.ART, ..., TILES017.ART * VOXEL.DAT Якщо це `.exe`, то розпакувати цей формат можна утилітою `innoextract`: ``` bash sudo dnf install innoextract innoextract /path/to/game.exe ``` Ігрові набори як правило розпаковуються до теки `app`, їх можна додатково перевірити антивірусом: ``` bash clamscan -r app ``` Після чого шукаємо потрібні залежності, наприклад командою: ``` bash find app -name "VOXEL.DAT" ``` * і т.д. по списку ## Сервери * [201:f044:ca34:9cc9:2946:ad06:6f2d:5c4e]:23513 ## Radicle/Git * rad:z2QnERwRUVeEEG9dDZVNFdzRDawYt ## Посилання => https://www.youtube.com/watch?v=NaPQ5WNNSuU HOW TO PLAY BLOOD MULTIPLAYER IN 2025! ### Дивіться також => gemini://bbs.geminispace.org/u/baran/38701 Тред на BBS