LOR-FAQ-Games
Материал из Викиучебника
|
||
|
[править] «Родные» игры
В первую очередь могут заинтересовать бесплатные игры (те, которые можно спокойно скачать из интернета без всяких кряков). К таким относятся:
Freeciv (клон Civilization 2), OpenArena (свободная графика для Quake III), Cube, Sauerbraten, Darwinia (demo), Second life, Eternal Lands (mmorpg), Planeshift (mmorpg), America’s Army, Warzone 2100 (освобождённая RTS), Simutrans, OpenTTD, Globulation (RTS), widelands.
Далее — списки портированных на Linux игр можно найти на http://www.icculus.org/lgfaq/gamelist.php, http://tuxgames.ru/, The Linux Game Tome, http://libregamewiki.org/.
Имеются линукс-версии большинства игр id Software, X3, TA:Spring, Morrowind, Heroes 3, клиенты для Ultima Online (http://www.linux.org.ru/view-message.jsp?msgid=1492095).
[править] Какие Linux-установщики есть под Windows-игры (то есть бинарники игр, которые работают с виндовыми ресурсами)?
[править] Как временно выйти из игры, запущенной в WineX?
Если у вас несколько рабочих столов, попробуйте переключиться на один из них. В том же KDE, например, Ctrl+F2 — второй стол и т. п.
Примечание: в KDE 3.2 по умолчанию клавиши перехода на определенный стол не заданы (теперь ctrl+alt+стрелка)
[править] Хочу играть Quake под Linux, как? Где взять quake (1,2,3) под linux?
Существуют родные Quake под Linux. Причем все части.
Конкретно Quake III стоит брать на www.idsoftware.com (для версии 1.32 -
ftp://www.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run, качаете, ставите, в соответствующий каталог закидываете паки из Windows-версии и все).
Quake I и II имеют многочисленные модификации. Для первого рекомендуется брать quakeforge ( http://www.quakeforge.net) или красивейшую модификацию http://tenebrae.sourceforge.net/index.php?page=download.txt.
Любители 'выжимать кадры' могут собрать quake I и II из исходников ( http://www.icculus.org/quake2) под свою машину.
Вот только с переключением из Quake на другую программу (не выходя) есть сложности — она полностью захватывает управление. Я (jackill) ее пытался на второй копии иксов пускать — работать оно работает, но при переключении в другую копию — падает.
Можно попробовать запускать модифицированный quake3 — ioquake, после добавления к нему файла pak0.pk3 из оригинального quake3 они неотличимы. ioquake не падает при переключении между иксами.
А для настоящих линуксоидов :) имеется особый Q — TEXTMODE QUAKE, http://webpages.mr.net/bobz/ttyquake/
[править] Quake III вываливается с ошибкой...
Если QIII вываливается с сообщением вида
...loading libGL.so.1: Initializing OpenGL display ...setting mode 3: 640 480 Xlib: connection ti ":0.0" refused by server Xlib: No protocol specified Error couldn`t open the X display ... Warning: could not set the given mode (3) -------- CL_Shutdown ---------- RE_Shutdown( 1 ) ------------------------------- --------- CL_Shutdown --------- ------------------------------- Sys_Error: FLimp_Init() - could not load OpenGL subsystem
Значит нигде не прописана команда вроде `xhost +localhost`. Лучше всего записать ее в один из стартовых скриптов или в .xinitrc (после чего перезапустить X-сервер)
[править] В quake III не работает мышь. Что делать?
Вы скачали версию 1.32 вместо 1.32b. Качать quake III нужно отсюда ftp://www.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run.
[править] Как включить звук в Quake 1/2/3 и вообще игр id software?
Как я понимаю, в других программах звук есть :)
1 случай: Наверняка у вас в качестве десктопа стоит KDE или Gnome. Тогда потребуется отключить соответствующий звуковой сервер arts (KDE) или esd (Gnome). Хотя Quake3 умеет работать с arts, делает он это плохо.
2 случай: Установлена ALSA, собранная без поддержки эмуляции OSS. Придется пересобрать драйвер ALSA с опцией --with-oss=yes.
3 случай: Попробуем дать звук напрямую. Для quake 3:
echo "quake 0 0 direct" > /proc/asound/card0/pcm0p/oss echo "quake.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss
В остальных quake это тоже сработает - нужно лишь заменить исполняемый файл в данном примере на соответствующий.
[править] Как настроить игровой сервер с различными типами игры под quake III?
Вот хорошая статья http://www.opennet.ru/docs/HOWTO/Game-Server-HOWTO/quake3.html.
[править] А есть ли CS под Linux?
К сожалению, нет. Под Linux есть только сервер. А если вы хотите поиграть в него, придется ставить Wine или WineX. Многие утверждают, что под обычным Wine CS идет быстрее.
[править] Почему Counter Strike под WineX 3.1 не запускается? Висит надпись "Loading..." и все.
Потому что у вас цвет в XFree 24-х битный. Поставьте 16-битный - опция DefaultDepth 16 в XF86Config или startx -- -depth 16.
[править] Тормозит/Виснет WarCraft3 под Wine, как запустить?
Начнем с того, что карта должна аппаратно поддерживать openGL. Смотрите соответствующие вопросы по установке драйверов к картам ATI и Nvidia.
Запустите war3 так:
user@linux# war3.exe -opengl
Или допишите в ~/.transgaming/.config строчку:
~/.transgaming/.config: ;; Warcraft III settings [AppDefaults\\War3.exe\\transgaming] "cmdlineadd" = "-opengl"
Все остальное можно узнать здесь - http://www.kerneltraffic.org/wine/wn20020710_128.html
Также можно почитать это - http://bsddoc.ru/index.php?stati_raznoe&submit=dalee#=1
[править] Многие игры выводят изображение с частотой 60Гц. Как это исправить?
Есть очень простой, хотя и неочевидный метод. Нужно прописать modeline’ы под каждое разрешение. Как рассчитывать модлайны - смотрите соответствующий вопрос.
Метод поможет, например, любителям hmm3.
Два раздела, ответственные за герцовку, выглядят у меня так:
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "CTX5378"
DisplaySize 330 250
HorizSync 30.0 - 72.0
VertRefresh 50.0 - 130.0
ModeLine "1152x864" 108.0 1152 1200 1328 1528 864 865 868 904 +hsync +vsync
ModeLine "1024x768" 94.5 1024 1076 1172 1372 768 769 772 812 +hsync +vsync
ModeLine "800x600" 56.3 800 832 896 1032 600 601 604 619 +hsync +vsync
ModeLine "640x480" 36.0 640 712 768 808 480 485 488 525 -hsync -vsync
ModeLine "400x300" 28.1 400 412 444 508 300 304 306 327 +hsync +vsync doublescan
ModeLine "320x200" 15.8 320 360 392 396 200 204 206 222 -hsync +vsync doublescan
Option "dpms"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 8
Modes "1152x864" "1024x768" "800x600" "640x480" "400x300" "320x200"
EndSubSection
SubSection "Display"
Depth 16
Modes "1152x864" "1024x768" "800x600" "640x480" "400x300" "360x200"
EndSubSection
SubSection "Display"
Depth 24
Modes "1152x864" "1024x768" "800x600" "640x480" "400x300" "360x200"
EndSubSection
EndSection
Обратите внимание на названия разрешения - мы не пишем ничего лишнего, иначе герцовка так и будет низкой (почему - загадка).
[править] Randr1.2
С приходом в X.Org (с версии 1.3) Randr1.2 настройка станет немного проще. Вот пример для одного разрешения (другие с Randr1.2 не настраивал) при использовании драйвера nouveau и видеокарты GeForce 6600LE с DVI и VGA, которая почему‑то сообщает о них, как о DVI-D и DVI-A. Возможно, есть кое‐что лишнее; «DVI-A» (VGA; для DVI — «DVI-D») может быть уже нужно заменить на «DVI-I».
Section "Monitor"
Identifier "HM703U"
ModeLine "1024x768_100.00" 113.3 1024 1096 1208 1392 768 769 772 814 -hsync +vsync
Option "PreferredMode" "1024x768_100.00"
Option "DPMS"
EndSection
Section "Device"
Option "Randr12" "true"
Identifier "geforce"
Driver "nouveau"
VendorName "NVIDIA"
Option "MigrationHeuristic" "Greedy"
Option "Monitor-DVI-A-0" "HM703U"
EndSection
Section "Screen"
Identifier "Default Screen"
Device "geforce"
Monitor "HM703U"
DefaultDepth 24
EndSection
Примечание: nouveau (на сентябрь 2008 года) не использует PreferredMode.
- См. также
- nouveau Wiki — Randr12Howto (копировать сюда нельзя, так как под GPL)
- Debian Wiki — XStrikeForce/HowToRandR12
[править] Некоторые игры после завершения не восстанавливают разрешение экрана. Как мне восстановить разрешение не перезапуская X-сервер?
Открываем консоль и пишем xrandr, получаем что-то вроде:
[root@xxx ~]# xrandr
SZ: Pixels Physical Refresh
*0 1280 x 1024 ( 342mm x 271mm ) *75
1 800 x 600 ( 342mm x 271mm ) 75
2 640 x 480 ( 342mm x 271mm ) 75
Current rotation - normal
Current reflection - none
Rotations possible - normal
Reflections possible - none
Параметр со звездочкой ( *0 1280 x 1024 ( 342mm x 271mm ) *75 )- это текущее разрешение.
Затем нужно создать скрипт следующего содержания:
#!/bin/sh
wine prog_name.exe;
xrandr -s req_size
prog_name.exe - навание проги/игры.
req_size - № нужного режима( в пример параметр SZ:).
Прочитать подробнее ответ на этот вопрос.
[править] Скачал патч/установщик под игру (в основном выпущенное loki games), но не ставится. Можно оттуда как-нибудь файлы достать?
Можно. Все можно.
Любой патч или программа установки от loki games представляет собой самораспаковывающийся архив на основе shell (созданный программой вроде makeself или shar) — в начале идёт скрипт, который проверяет наличие диска, правильность контрольной суммы и т. п. Конечно, всё это можно обойти.
Алгоритм простой:
- Делаем бэкап на случай если ничего не выйдет.
- Отрезаем скрипт по строчку, с которой начинается архив (такая смесь символов) и сохраняем файл.
- Переименовываем получившийся файл в tar.gz (один раз попался tar.bz2, но это редкость).
- Распаковываем его как нам нравится.
Итак, файлы мы достали. Что делать дальше?
[править] Если у нас апдейт к игре
Если у нас апдейт к игре, значит там содержатся новые файлы вперемешку с файлами изменений бинарников. Последние всегда идут в формате xdelta. Если до этого уже выходили обновления к игре, то там будут содержаться файлы изменений для обновления любой версии игры — придется методом научного тыка поискать какой подойдет (это не страшно, потому что xdelta проверяет, можно ли апдейтить файл или нет).
Значит проапдейтили бинарники, переписали библиотеки и можем пробовать запускать игру.
Не всегда удается проделать все с первого раза, но главное не отступать.
[править] Если у нас сама игра — файлы, нужные для превращения windows-версии игры в linux-версию
Тут еще проще. Распаковали все, взглянули как лежит, переписали куда-нить в /usr/local/games/mygame и потом копируете файлы с виндовой версии — скажем, паки графические. Тоже обычно решается методом научного тыка. Или анализом скрипта.