LINUX.ORG.RU

https://www.gamingonlinux.com/articles/playing-quake-4-on-linux-in-2018.11017/

Статья старая, уже не вполне актуальная, но с неё можно начать. Примерно определиться с нужными зависимостями можно ориентируясь на арч https://aur.archlinux.org/packages/quake4

В целом стандартного мультилиба должно хватить, важно иметь 32bit libGL и 32bit libSDL. Обрати внимание, не libSDL2, нужна именно предыдущая, libSDL 1.2. Она во многих дистрах называется libSDL-compat

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

Для звука нужна 32bit libSDL (первая, часто называется compat, не libSDL2). Играет оно в alsa, так что ещё должны быть 32bit либы alsa и pipewire\pulseaudio, для того чтобы libSDL мог цепляться к предоставляемой ими эмуляции alsa для древних программ. Если она не настроена (хотя во всех вменяемых дистрах она обычно настроена) — придётся останавливать pipewire\pulseaudio перед тем как. Но 32bit алсовый юзерспейс всё равно будет нужен.

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

можно кстати в steam-runtime запустить, там уже настроена 32битная alsa. Правда криво и у меня егоный xdg-desktop-portal не цепляется к системному jack, приходится libjack заменять на свой

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

libSDL-compat

Это другое, прослойка которая типа совместима с sdl1 и транслирует все в sdl2. Я пробовал xine с ней собирать вместо sddl1, оно весь вывод видео поломало

https://github.com/libsdl-org/sdl12-compat

Лучше всего собрать именно sdl1

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

Ну это джекопроблемы, у нормальных людей должно работать.

Но это не отменяет того факта что quake 4 как игра не удался. Quake 4 здорового человека вышел позже, на том же движке, назывался Prey (старый Prey, 2006 года, тот где индеец в космосе), и он значительно интереснее, атмосфернее и визуально просторнее рельсокоридорного интерактивного тира quake 4.

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

Это другое, прослойка которая типа совместима с sdl1 и транслирует все в sdl2. Я пробовал xine с ней собирать вместо sddl1, оно весь вывод видео поломало

Да, возможно попутал, у меня гента и старый SDL спокойненько в отдельный слот встаёт если нужен.

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

нет, это проблема рантайма, который обязан прокидывать корректные версии библиотек и тут не справился. У джека нестандартный случай - у него стабильный ABI, но не протокол, обычно наоборот бывает

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

советую уши почистить, а то слышится херня всякая.
pipewire хоть и перспективен, но ещё не готов и по архитектуре слишком переусложнён.
Просто пример - недавний тред:
Pipewire не видит микрофон
У меня тоже с pipewire негативный опыт. Ставлю pipewire. Он запустился, работает. Но устройств вывода звука нет. Очень долго искал, как их добавить. Когда понял как, убедился - wireplumber на месте, но в процессах его нет. Как оказалось после половины дня моих попыток разобраться, wireplumber загружал libcamera, после чего тут же сегфолтился. Притом что конечно же у меня нет каких-либо камер на той машине, а если бы была, то причём тут камера, когда мне нужен звук?
Возможно решение рулить камерами в pipewire не такое уж и плохое, как и иметь захват устройств в отдельном процессе. Только вот они не додумались захват звука и камер разделить по разным сервисам. То есть потенциально неплохо, если будут разные устройства цеплять разными сервисами и скриптовать всё, но сейчас при запуске pipewire wireplumber молча где-то в фоне запускался и падал. И у меня ушло ПОЛДНЯ чтобы понять, что с ним не так. Удаление libcamera решило проблему, но в целом PW остаётся не готовым. И это всё события всего лишь прошлого месяца. Да, с pipewire-media-session меньше проблем, но как я понимаю его сейчас депрекейтнут, как и любую вещь, разработка которой подошла к концу, а значит PW - удел неготового

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

Я так понимаю, чтобы поиграть в нативный Quake 4 на Linux надо пройти пердолинг? Настройка через Wine мне кажется проще. Про протон в стиме я молчу

А что мешает запустить и играть через steam?

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

Правильно понимаешь, особенно для старых нативных игр. Их портировали давно, и с тех пор не обновляли, потому что обычно это делали приглашённые компании вроде Linux Game Publishing, за деньги, и контракты на сопровождение истекли. Даже если игра портировалась самими разработчиками — они быстро теряли\теряют интерес к сопровождению порта по причине маргинального количества играющих в нативный порт людей, сопровождение тупо не окупается.

А Линукс при этом меняется, развивается, переходит на новые версии библиотек, меняются звуковые системы например и т.п., в результате порт становится слишком сложно запустить без установки древних либ, на которые рассчитывает игра, или слоёв совместимости с легаси.

Так что сейчас сложилась парадоксальная ситуация, когда и древнюю, и современную игру проще запустить виндовую, через steam+proton или Lutris, поскольку wine (и его порт proton) обеспечивает лучшую совместимость со старыми версиями виндоус, нужными для игры. И получается что смысл в нативных портах уже слабо прощупывается, зачем, если и так всё работает.

Конечно хорошо если сам разработчик не игнорирует Линукс и готов разрабатывать и сопровождать нативную версию, но если он на это не способен — не страшно, ему достаточно добиться совместимости со Стимдеск и Протон чтобы не упускать сегмент рынка с Линукс-геймерами.

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

Так хромобук же вроде официально не позиционируется и не рассматривается как игровая платформа. Это дешёвый ноут для образования, и для тех кому от бука кроме браузера и текстового редактора больше ничего не нужно. Читал где то что нынче Гуголь вытесняет Эппл из системы образования США, по причине экономии и дешевизны. Там школоте и студентам нынче Хромобуки раздают вместо Макбуков. И соответственно для игр он годится чуть менее чем мак, просто для них не предназначен. Для игр консоли есть и папкин\мамкин «взрослый» комп. Или стационарник для киберзадротства.

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

В США школьникам и студентам раздают хромбуки точно не для ютуба, дискорда и игр через облако. В современных chromeOS есть программы для обучения и немного инструментов для программирования. Недаром в chromeOS есть поддержка Web- приложений, Android-приложений и Linux-программ

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

На максималках бегает на GTX970.

ну как бы 970 в 2 раза быстрее чем его заглушка:)

а так-то, q4 на максималках пойдет даже на встройках

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

Я вот так делал:

  1. Скопировал каталоги с диска Quake4 (с русской версией не завелось, не хватало нескольких файлов)
  2. Ставим пакетики:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install game-data-packager
  1. Идем в каталог с файлами кваки и собираем пакеты:
cd quake4
/usr/games/game-data-packager quake4 --package quake4-bin --binary-executables . 
/usr/games/game-data-packager quake4 --package quake4-data --binary-executables .
sudo dpkg -i quake4-data*
sudo dpkg -i quake4-bin*
sudo apt install -f
  1. Настраиваем и запускаем:
# Тут правим по вкусу
vim $HOME/.quake4/q4base/Quake4Config.cfg
/usr/lib/quake4/quake4.x86

Постарался подробней расписать, т.к. у самого не сразу получилось.

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