LINUX.ORG.RU

Релиз Xash3D FWGS 0.19

 , , ,


1

5

Команда разработчиков FWGS рада сообщить о выходе новой версии Xash3D FWGS, форка движка Xash3D. Xash3D FWGS позволяет запускать на большом количестве разнообразных платформ такие игры, как Half-Life, Half-Life: Blue Shift и Half-Life: Opposing Force. Кроме того, обеспечена поддержка некоторых других модификаций и игр, использующих движок GoldSource. Этот проект примечателен тем, что в его активной разработке участвуют пользователи нашего ресурса: a1batross, mittorn и Solexid.

Первый релиз Xash3D на Android, тогда ещё под эгидой SDLash3D, был выпущен первого апреля, ровно два года назад. Продолжая соблюдение славных традиций, разработчики сегодня подготовили новую версию движка, содержащую огромное количество добавлений и исправлений. Полную историю проекта вы можете прочитать в отдельной статье «Как создавался кроссплатформенный Half-Life или „Хедкрабы внутри ваших часов“».

Основные изменения:

  • Общеплатформенные:
    • Кодовая база движка была синхронизирована с Xash3D build 3366.
    • Обеспечена поддержка двух новых платформ: iOS и emscripten.
    • Добавлены некоторые расширения сетевого протокола.
    • Добавлена возможность обхода NAT.
    • В главное меню добавлена возможность управления устройствами ввода (мышка, сенсорный экран, геймпад).
    • Обеспечена идентификация устройства в мультиплеере.
    • Оптимизирован поиск консольных команд и переменных (LinkedList => HashMap).
    • Добавлена реализация net_graph.
    • Обеспечена поддержка кодировки CP1251.
    • В SDL-backend добавлена поддержка ресемплирования звука.
    • Обеспечена безопасная запись конфигурационного файла.
    • Исправлено несколько ошибок подключения к удалённому серверу.
    • Исправлен вылет сервера при отсоединении клиента.
    • Исправлена некорректная загрузка звуков в формате WAV.
    • Исправлен вылет при невозможности открытия файла лога.
    • Добавлен вывод ошибок сервера в GUI.
  • Android:
    • Поправлена поддержка мыши в NVidia SHIELD и некоторых других устройствах.
    • Движок теперь работает в режиме службы.
    • Улучшение поддержки мыши через evdev (только для рутованных устройств).
  • Unix-like:
    • Linux: Различные улучшения работы движка в полноэкранном режиме.
    • Linux: Исправлены некоторые неполадки в работе сенсорного управления.
    • FreeBSD & macOS: Исправлена работа http-загрузчика.
    • Linux & macOS: Обеспечено корректное определение имён подгружаемых библиотек.
  • Windows:
    • Добавлена возможность использования сенсорного управления на неподдерживаемых клиентских библиотеках.

Полный список изменений можно посмотреть в большом ChangeLog'е.

Собранные пакеты для дистрибутивов Ubuntu, Debian и Arch Linux доступны в отдельных репозиториях одного из разработчиков Xash3D FWGS:

>>> Подробности и готовые сборки

★★★★★

Проверено: Shaman007 ()
Последнее исправление: EXL (всего исправлений: 6)

Ответ на: комментарий от mandala

Android это не только сенсорные смартфончики, но и всякие свистки и умные приставки к TV.

Так что вполне себе можно.

EXL ★★★★★
() автор топика
Ответ на: комментарий от mandala

Тысячи скачиваний дают основания полагать, что всё-таки можно.

Да и некоторые даже меня с мыши умудряются уделывать.

a1batross ★★★★★
()

Ух, ты! Молодцы, ребятки! Надо будет затестить.

Gonzo ★★★★★
()

Прикольно конечно, закатал в оперативу, и вот уже играешь прямо в браузере. Жаль сама игра полное говно, но может быть кто вдохновится и портирует что-то получше. Так что определенно нужно.

SjZ ★★★★★
()
Ответ на: комментарий от mandala

А я видел какой то порт контры на андроид. Причём ещё под смартфоны поколения 2.*, которые 1 ядро на частоте 800.

Это была жесть. Лучше в кваку на тачпаде - больше шансов убежать.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)
Ответ на: комментарий от EXL

Ну, приемлимый fps он выдавал. А вот управление под 4 щупальца сделано. Это не для меня, я на такое не подписывался.

Не думаю что тут что то принципиально лучше смогли придумать.

kirill_rrr ★★★★★
()
Последнее исправление: kirill_rrr (всего исправлений: 1)

А что за движок был под андроид, который позволял фолл запускать (или это было что-то ещё)?

ZERG ★★★★★
()
Ответ на: комментарий от karton1

cs 1.6 с ботами теперь работает в линуксе без wine?
если да, то где глянуть инструкцию по установке и запуску этого добра?

anonymous
()

Вон как вымахал. Помню, как наблюдал за движком с 2010 года. Тогда он еще не был бинарно совместим с оригинальными DLL. Обидно за Дядю Мишу с форума HLFX, по сути какие-то левые люди присвоили его движок.

Thetan ★★★
()
Ответ на: комментарий от s1n

Очень давно на обычном Xash3D я проходил этот мод. Думаю он будет работать и сейчас.

EXL ★★★★★
() автор топика
Ответ на: комментарий от Thetan

С чего вы решили, что присвоили? Везде говорится о том, что Xash3D FWGS != Xash3D, и что это форк.

И самое главное, взаимопомощь между оригиналом и форком существует. Как форк забирает изменения оригинала к себе, так и оригинал принимает к себе изменения из форка. Например, система звуковых эффектов, нетграф, какие-то мелкие фиксы. Фрагментация сетевых пакетов была реализована сначала в форке, но ещё в невышедших сборках оригинального Xash3D она уже присутствует(хоть и переписана Дядей Мишей).

Сейчас, когда стоит вопрос о том, что текущий протокол устарел и не подходит для мультиплеера, ДМ на полном серьёзе оставляет то, в чём будущем может воспользоваться форк.

a1batross ★★★★★
()
Ответ на: комментарий от anonymous

Есть аж три варианта. Первый — установить плагин MetaMod, найти плагин включающи ботов в оригинальной дллке и играть с ними. Второй — скомпилировать из исходников ReGameDLL_CS и просто включить ботов аргументом "-bots" в командной строке. Третий — запустить голдсорс под дебаггером и подменить значение переменной.

a1batross ★★★★★
()
Ответ на: комментарий от Thetan

Обидно за Дядю Мишу с форума HLFX

Дядя Миша в 2011 году специально выложил свои наработки под свободной лицензией (GPLv2): Xash3D открывает исходники, чтобы пользователи могли развивать движок и делать моды.

по сути какие-то левые люди присвоили его движок.

Что значит «присвоили движок» в контексте GPLv2? За Linus'а Torvalds'а тебе тоже «обидно»? А ведь если судить твоими словами, то левый Google «присвоил» себе его ядро.

Цимес в том, что если бы Xash3D остался закрытым, то он так и был бы «поделкой в себе» для двух гиков с форумов мододелов. Возможно он получил бы какое-то распространение в рамках проектов Paranoia и пр., но поддержку чего-либо отличного от Windows никогда бы не получил, если бы не «левые люди». Я просто был свидетелем, как на HLFX и подобных форумах этот Xash3D пытались перенести на тот же Linux некоторые хвастливые индивидуумы. Особых успехов они там не достигли.

Касательно сегодняшней ситуации приведу цитату самого ДМ:

Кстати. Если бы мне в детстве сказали, что я напишу движок, под которым негры будут играть в халф-лайф на часах, я бы удивился и неповерил.

Никто не умаляет заслуги как ДМ, так и площадки HLFX. И, кстати, чтобы тебе не было обидно, по моим последним данным на HLFX вообще случилась драма, Дядя Миша громко хлопнул дверью и теперь он обитает на украинском (?) cs-mapping.com.ua

Ну и да, обмен кода между этими проектами происходит постоянно. Форк очень даже пошёл на пользу «оригиналу» и подстегнул ДМ к более активной разработке.

EXL ★★★★★
() автор топика
Последнее исправление: EXL (всего исправлений: 2)
Ответ на: комментарий от thunar

Мир, дружба, жвачка, моды для первого Half-Life и самописные движки.

EXL ★★★★★
() автор топика
Ответ на: комментарий от thunar

Когда последний раз запускал XashXT, с лайтстилями всё было в порядке. Может я что-то упустил.

А про верхний регистр — ты имеешь ввиду регистрозависимость ФС? Уже давно починено. В угоду правильности, чем скорости, конечно.

a1batross ★★★★★
()
Ответ на: комментарий от mittorn

Тогда можно случайно вгуи2-шный GameUI сломать. Он тоже имеет на это проверки, если мне память не изменяет.

И клиент иначе работает, если czero геймдиром.

a1batross ★★★★★
()

запустил в браузере, прикольно! emscripten не думали заменить на WebAssembly?

anonymous
()
Ответ на: комментарий от anonymous

Я только на Андроиде все это запускал, сказать не могу.

karton1 ★★★★★
()
Ответ на: комментарий от mandala

Ну ручками ручками). Мобильный гейминг он такой.

karton1 ★★★★★
()
Ответ на: комментарий от EXL

Ну мне просто кажется, что после того, как ДМ открыл исходники, его имя больше нигде не упоминается. Может быть, я что-то пропустил, тогда я неправ, да. Лично мне было бы не очень приятно, если бы мой софт распространяли без упоминания обо мне. Кстати, это повод придумать лицензию для любителей тщеславия. :3 Емнип, выложил ДМ исходники, конечно, в довольно своеобразной форме - в архиве rar. Но неужели это было так давно? Мне казалось, что как минимум года до 2013 у него выпрашивали исходники.

Thetan ★★★
()
Ответ на: комментарий от anonymous

Думали, но стоит подождать пока поддержку в браузеры завезут. Последний хром и лис с натяжкой можно назвать www-клиентами, но браузерами уже не назовёшь.

mittorn ★★★★★
()
Ответ на: комментарий от thunar

Регистр исправили. Про лайтстайлы уже не помню что там было.

mittorn ★★★★★
()

Сходил по ссылке на хабр. Интересно, что теперь будет с оригинальным движком, который только под Windows - проекты сольются. или автор оригинала будет по-прежему развивать его отдельно, оберегая от кроссплатформенности (но исходники у него под GPLv3, как следует из той же статьи).

hobbit ★★★★★
()

Помню выпуск «16 бит тому назад» о движках Valve. Были перечислены основные изменения Id Tech 1. Xash3D базируется на Id Tech?

ZenitharChampion ★★★★★
()
Ответ на: комментарий от EXL

Решил собрать. cmake вернул мне:

CMake Error at CMakeLists.txt:84 (message):
  Xash3D doesn't work with 64 bit systems well.  Please, set CMake to build
  for 32 system.  If you still want 64bit build, pass -DXASH_64BIT=1 to CMake

-- Configuring incomplete, errors occurred!
See also "/tmp/xash3d/build/CMakeFiles/CMakeOutput.log".
И тут я понял, что не умею переключать сборку в 32битную сборку. :(. Не подкажете как это сделать? Или можно без VGUI собрать и запустить?

И что еще нужно для полного счастья и запуска?

s1n
()
Ответ на: комментарий от a1batross

Спасибо. Пробовал так же, но cmake валил кучу ошибок, что не может даже тест собрать. Глянул пакеты, gcc-multilib установлен, а вот g++-multilib я забыл поставить. Его поставил и cmake отработал.

А вот make вернул

[ 24%] Linking C executable xash3d
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/libSDL2.so when searching for -lSDL2
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/libSDL2.a when searching for -lSDL2
/usr/bin/ld: cannot find -lSDL2
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/libpthread.so when searching for -lpthread
/usr/bin/ld: skipping incompatible /usr/lib/x86_64-linux-gnu/libpthread.a when searching for -lpthread
collect2: error: ld returned 1 exit status
game_launch/CMakeFiles/xash3d.dir/build.make:94: ошибка выполнения рецепта для цели «game_launch/xash3d»
make[2]: *** [game_launch/xash3d] Ошибка 1
CMakeFiles/Makefile2:195: ошибка выполнения рецепта для цели «game_launch/CMakeFiles/xash3d.dir/all»
make[1]: *** [game_launch/CMakeFiles/xash3d.dir/all] Ошибка 2
Makefile:127: ошибка выполнения рецепта для цели «all»
make: *** [all] Ошибка 2

А вот libsdl2-dev:i386 не захотел рядом жить вместе с libsdl2-dev. Видимо придется виртуалку поднять и там собрать всё.

s1n
()
Ответ на: комментарий от s1n

проблемы deb-based дистрибутивов.
Я в таком случае руками SDL собираю.
Тут можно посмотреть опции для минимальной сборки:
https://github.com/FWGS/xash3d/blob/master/.travis.yml#L42
Там правда скрипт на make, для cmake надо ещё как-то путь к SDL2 указать. Посмотри FindSDL2.cmake, вроде в нём это описано.
Потом libSDL2-2.0.so.2 надо положить рядом с бинарником, чтобы он в LD_LIBRARY_PATH попал. P.S тебе sdl2 можно 32битный без dev ставить, а обычный с dev если поставиться конечно. Или наоборот

mittorn ★★★★★
()
Последнее исправление: mittorn (всего исправлений: 1)

как это запустить на линуксе? Вроде скопировал файлы куда надо, но после запуска тупо ничего не происходит. Просто область экрана становится неюзабельной

dikiy ★★☆☆☆
()
Последнее исправление: dikiy (всего исправлений: 1)
Ответ на: комментарий от EXL

Не, там под андроид штука была: не могу найти. Помню, что для доступа к клаве нужно было платить, но в целом и тача хватало. Я тогда нищебродил, не мог себе позволить, а сейчас в самый раз.

ZERG ★★★★★
()
Ответ на: комментарий от ZERG

Это тоже можно запустить на Android:

https://www.youtube.com/watch?v=AMOE6DT5BPY

Правда с плясками, бубном и прочими радостями. Всё, как мы любим :3

Про то, что ты рассказываешь, я не слышал. Увы.

EXL ★★★★★
() автор топика
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от mittorn
[dikiy@localhost hl-all-pack]$ ./xash.sh
================================================================================
        Xash3D FWGS (build 731, Linux-i386) started at Apr02 2017 [14:09.55]
================================================================================


^C^C

./xash.sh: строка 3:  4323 Убито              LD_LIBRARY_PATH=. ./xash_bin $*
dikiy ★★☆☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.