Здравейте! Вероятно използвате блокиращ рекламите софтуер. В това няма нищо нередно, много хора го правят.

     Но за да помогнете този сайт да съществува и за да имате достъп до цялото съдържание, моля, изключете блокирането на рекламите.

  Ако не знаете как, кликнете тук

Как подкарвам игрите, които НЕ СА пригаждани за линукс

feed Всичко свързано с Линукс. Новини, проблеми, въпроси.
Десктоп Линукс дистибуции, сървърни Линукс дистрибуции, Линукс дистрибуции с общо предназначение, Linux Mint, Ubuntu, Arch Linux, Mandriva, PCLinuxOS, openSUSE, Fedora, Red Hat Enterprise Linux, CentOS, Suse Linux Enterprise Server, Debian, Cross Linux from Scratch, Slackware, Gentoo. Графични среди, новини, игри, драйвъри, въпроси, десктоп, сървър, браузъри, помощ.
Нова тема Отговори
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Реших да споделя как подкарвам игри, които не са предварително пригаждани за линукс от Незнайния пингвински воин в Замунда, тоест са със стандартен инсталатор за Уйндоус. Противно на това, което разработчиците на виното твърдят, то НЕ подава автоматично всеки един DLL към екзето на играта и затова дори и да спазите някое упътване на разработчик (като това за "World of Tanks" от WG, което е по-старо от самата игра), тя пак няма да върви така, както очаквате.
В началото въвеждах всяка библиотека ръчно в winecfg, но после си написах скрипт, който изпълнявам в терминала, който пък предварително е отворен в папката на играта, където обикновено са DLL файловете.
Та:
1. Отварям терминала в директорията на играта. В PCManFM това става с F4.
2. Зареждам този скрипт в терминала чрез alias:

Код: Избери всички

list-all-dlls.sh

find *.dll > /B/123/GameLibs.txt && cd /B/123 && sed -i 's/^.*$/"&"="native,builtin"/g' GameLibs.txt
3. Отварям GameLibs.txt, отварям после ~/.wine/user.reg с текстов редактор и добавям цялото съдържание от GameLibs.txt в user.reg. По принцип по-прегледно е да намерите

Код: Избери всички

[Software\\Wine\\DllOverrides]
и оттам надолЕ да слагате съдържанието на GameLibs, но ако ви мързи да го търсите, може и просто в края на файла, регистрито на фалшивия уиндоус би трябвало да го прочете така или иначе и да го "намести" автоматично.

А самият скрипт е много прос' и ето какво прави:
1. Намира всички файлове в директорията, които завършват на .DLL и записва списъка в избрана от вас директория с предварително зададено име на файла от вас.
2. Сменя директорията и отива там, където е новосъздаденият текстов файл списък с DLL библиотеки.
3. Премахва разширението DLL заедно с точката преди него и после огражда останалите думи - отляво с една кавичка, а отдясно с този текст:

Код: Избери всички

"="native,builtin"
Така от вас остава само да добавите съдържанието на файла в user.reg и да си пуснете играта с виното.

По този начин подкарах "World of Tanks" и върви много мазно - 100 пъти по-добре и по-гладко, отколкото под Боза, чак забравяш, че играеш под линукс!

А ако пуснеш WOT без моя начин и просто сложиш DXVK файловете в директорията при wgc.exe, после сенките ще изчезват, дърветата и храстите ще се местят и прелитат през екрана, вкл. и храста, в който вие се криете, оставяйки ви гол на пръв поглед (не е ясно дали могат да ви светнат така), текстурите на танковете се телепортират и много други странни визуални проблеми.
Последна промяна от Валсо на чет мар 28, 2024 20:11, променено общо 1 път.
Прочетено: 292 пъти
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284023
Регистриран: пет юни 01, 2007 14:18
Репутация: 334873
Местоположение: Somewhere In Time

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Mozo »

Мале, мале... Я сега без да правиш тези работи, просто инсталирай DXVK както трябва, а не само да добавяш d3d11 и dxgi като нейтив. Да добавяш всички библиотеки, намиращи се в директорията на играта е абсолютно, ама абсолютно безсмислено, защото без тях така или иначе играта няма да работи, защото са ѝ необходими, съответно те си се зареждат и без да правиш оувъррайд за тях.

Разработчиците на Wine не лъжат и нямат сметка от това. Просто в твоя случай има DX библиотеки, с които играта работи по-добре и по случайност си уцелил. Само дето не се прави така, а се инсталира d3dx9, който пък е зависимост на DXVK, ако се инсталира както трябва през winetricks. Дъщо така прави и оувъррайд на d3dx9_47.
Изображение
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Вече казах няколко пъти: DXVK е инсталиран, не добавям вече библиотеки, както преди, само зареждам тези, които играта ще си търси. И затова в Стийм на Форца 5 ѝ изчезват текстурите на пътя, когато вдигнеш над 300 км/ч на магистралата, а при мен "кракната" игра (защото е оригиналната, но извадена от Стийм и не търси Стийм, за да тръгне) върви прекрасно по моя начин и си правя скокчета с 460 км/ч без липсващи текстури.

Говори каквото искаш, аз виждам как вървят не една и две игри с моя метод и без него, разликата е огромна. Изглежда дълго и сложно, но не е. Работа за под 30 сек., реално.
Казвам аз как си подкарвам игрите, пък който иска да ползва този метод, който иска - да чака 3 дни да му се свали пригодена за Линукс от Лайнунда. Не задължавам никого.
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284023
Регистриран: пет юни 01, 2007 14:18
Репутация: 334873
Местоположение: Somewhere In Time

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Mozo »

Няма НИТО един човек в света, който да прави подобна глупост и за това си има причина - няма НИКАКЪВ смисъл. И да, никъде нямам липсващи текстури.
Изображение
begbi
Регистриран
Мнения: 40
Регистриран: нед мар 17, 2024 13:55
Репутация: 205
пол: Мъж

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от begbi »

Все пак ще го пробвам като ми дойде музата :)
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Mozo написа:
чет мар 28, 2024 22:41
Няма НИТО един човек в света, който да прави подобна глупост и за това си има причина - няма НИКАКЪВ смисъл. И да, никъде нямам липсващи текстури.
СЕГА нямаш. Ама преди 2 години ето ТОВА беше Форца 5 в Стийм с експерименталния Протон (8.0 още не съществуваше):

Изображение

Изображение

А извадената от Стийм оригинална игра и подкарана по моя начин няма такива неща и върви все едно я играя под уиндоус.
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284023
Регистриран: пет юни 01, 2007 14:18
Репутация: 334873
Местоположение: Somewhere In Time

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Mozo »

Просто по късмет си уцелил някоя от библиотеките, от които играта има нужда. Това е все едно да имаш нужда от kate и да инсталираш цялото KDE. Те това правиш и ти - абсолютна цапаница.
Изображение
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Mozo написа:
съб мар 30, 2024 12:00
Просто по късмет си уцелил някоя от библиотеките, от които играта има нужда.
И която е в директорията заедно с останалите и която очевидно НЕ бива подадена към екзето от виното автоматично! Най-после разбра защо правя това! Обаче като няма как да се разбере коя точно от всичките библиотеки играта си търси, единственият начин е да ги добавиш всичките.
Потребителски аватар
Mozo
Skynet Cyber Unit
Skynet Cyber Unit
Мнения: 284023
Регистриран: пет юни 01, 2007 14:18
Репутация: 334873
Местоположение: Somewhere In Time

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Mozo »

Напротив, има си логове за тази работа. Ти чистиш ориз с боксови ръкавици...
Изображение
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Да, бе, ей сега ще седна да пресявам логовете ред по ред, докато разбера какво иска, вместо да си правя кефа и да си цъкам играта! :lol:
Nikola_
Пристрастéн
Пристрастéн
Мнения: 941
Регистриран: вт яну 16, 2018 12:16
Репутация: 7375
пол: Мъж

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Nikola_ »

Игрите винаги четат собствените си файлови като натив. Справка export WINEDEBUG="+loaddll" Има смисъл фаилове да се правят натив от този вид: d3d8, 9, 11, 12, MSVCP140, d3dcompiler_47 и тн. Или иначе казано бозиндоуски файлове.
begbi
Регистриран
Мнения: 40
Регистриран: нед мар 17, 2024 13:55
Репутация: 205
пол: Мъж

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от begbi »

begbi написа:
пет мар 29, 2024 13:39
Все пак ще го пробвам като ми дойде музата :)
Този скрипт не работи при мен: list-all-dlls.sh

Така че влезнах в папките win32 win64, само там има библиотеки и с долната команда, коята работи ги копирах:

find *.dll > /B/123/GameLibs.txt && cd /B/123 && sed -i 's/^.*$/"&"="native,builtin"/g' GameLibs.txt

Изображение

Не виждам разлика, но няма значение, ще я играя от winblouz :).
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

Еми може би трябва да го направиш изпълним със собственик твоя потребител? :roll:
begbi
Регистриран
Мнения: 40
Регистриран: нед мар 17, 2024 13:55
Репутация: 205
пол: Мъж

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от begbi »

Валсо написа:
вт апр 02, 2024 22:56
Еми може би трябва да го направиш изпълним със собственик твоя потребител? :roll:
Кое скрипта ли ? Ако е за него е без значение, щото така или иначе ги копирах. Ако е за друго, сподели :усмивка1: .
Потребителски аватар
Валсо
Дарител
Дарител
Мнения: 11080
Регистриран: нед мар 03, 2019 20:29
Репутация: 40041
пол: Мъж
Местоположение: /home/$USER
Контакти:

Re: Как подкарвам игрите, които НЕ СА пригаждани за линукс

Мнение от Валсо »

begbi написа:
ср апр 03, 2024 13:39
Валсо написа:
вт апр 02, 2024 22:56
Еми може би трябва да го направиш изпълним със собственик твоя потребител? :roll:
Кое скрипта ли ? Ако е за него е без значение, щото така или иначе ги копирах. Ако е за друго, сподели :усмивка1: .
По подразбиране .sh файловете не са изпълними и трябва ти да ги направиш такива.
Нова тема Отговори

  • Подобни теми
    Отговори
    Преглеждания
    Последно мнение

Върни се в “Линукс - инсталация, настройки, проблеми”