NeverWinter Nights: Nie przywraca rozdzielczości po wyjściu

Cześć. Planuję sprzedać NWN: Diamentowa edycja ze sklepu Wupra (wersja Windows + Linux). Pokonałem wszystkie trudności, by móc być pomocnym kupującemu. Została tylko jedna trudność: gra nie przywraca rozdzielczości ekranu, gdy wychodzi. Gra nie crashuje, tylko nie przywraca rozdzielczości.

 /sbin/lspci 
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 02)
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 620 (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 02)
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:17.0 SATA controller: Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Intel(R) 100 Series Chipset Family LPC Controller/eSPI Controller - 9D4E (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445] (rev 83)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
03:00.0 Network controller: Intel Corporation Dual Band Wireless-AC 3168NGW [Stone Peak] (rev 10)

Gra ma natywnego klienta na Linuksa? Odpal przez terminal i zobacz jakie błędy wyrzuca.

Gra ma natywnego klienta na Linuksa. Licencję nabyłem w Wuprze (kiedyś istniał taki polski sklepik z Linuksowymi grami na Linuksa - rozsyłali gry na płytkach - niekiedy dołączali do pudełka z wersją Windowsową po prostu dodatkową płytę, ale mieli też gry w postaci cyfrowej), ale sklep teraz nie istnieje, więc nie dostanę od nich wsparcia.
W konsoli nie ma nic interesującego:

slawomir@linux-rvnb:~/badware/nwnrm> ./nwn-movies 
NOTICE: NWMovies(./nwmain): Version: 20090223.080954
NOTICE: Looking up symbols in libSDL.....
NOTICE: NWMovies: Using libSDL via RTLD_NEXT.
NOTICE: SDL Library determined to be: /usr/lib/libSDL-1.2.so.0
NOTICE: NWMovies: SDL_WM_GrabInput() address: f7bc7140
NOTICE: NWMovies: SDL_GetVideoSurface() address: f7bc5690
NOTICE: NWMovies: SDL_WM_ToggleFullScreen() address: f7bc85d0
NOTICE: NWMovies: SDL_PollEvent() address: f7ba71c0
NOTICE: NWMovies: SDL_WM_IconifyWindow() address: f7bc85a0
NOTICE: NWMovies: Patch 0 Address: 0x08077a9d
NOTICE: NWMovies: Patch 1 Address: 0x08077ab1
NOTICE: NWMovies: Patch 2 Address: 0x0815b5f7
NOTICE: NWMovies: Patch 3 Address: 0x0815b611
NOTICE: NWMovies: Patch 4 Address: 0x0807796f
NOTICE: NWMovies: Patch 5 Address: 0x08207835
NOTICE: NWMovies: Patch 6 Address: 0x08207858
NOTICE: NWMovies: PrePatch0: 8b 80 78 02 00 00 5d c3 
NOTICE: NWMovies: PrePatch1: 8b 80 7c 02 00 00 5d c3 
NOTICE: NWMovies: PrePatch2: e8 68 c5 f1 ff 83 ec 08 
NOTICE: NWMovies: PrePatch3: 169+: eb 59 90 83 
NOTICE: NWMovies: PostPatch0: b8 00 00 00 00 90 5d c3 
NOTICE: NWMovies: PostPatch1: b8 00 00 00 00 90 5d c3 
NOTICE: NWMovies: PostPatch2: 90 90 90 90 90 83 ec 08 
NOTICE: NWMovies: PostPatch3: 169+: 90 90 90 83 
NOTICE: NWMovies: PrePatch4: 56 8d 5d e8 53 
NOTICE: NWMovies: PostPatch4: e9 20 84 e7 ef 
NOTICE: NWMovies: MoviesPrePatch: 6a 00 53 bf 00 00 00 3f e8 72 4f 2a 00 8b 43 60 8b 10 c7 04 24 00 00 80 3f 57 57 57 50 ff 52 44 83 c4 1c 
NOTICE: NWMovies: MoviesPostPatch: 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 
NOTICE: NWMovies: Initialized.
NOTICE: SDL_WM_GrabInput(QUERY) called..
NOTICE: SDL_WM_GrabInput(OFF) called..

Pliki logów są puste.

No to niewiele można pomóc, wygląda na bug w samej grze. Możesz ew. sprawdzić czy gra ma pełne uprawnienia do zapisu w swoim katalogu, bo może nie może nadpisać jakiegoś configa?

Grę instalowałem przez instalator na płytce jako user, z którego ją uruchamiam.

Może ten natywny to zintegrowane z grą Wine? Ogólnie na programy z Wine zmieniające rozdzielczość pomaga wirtualny pulpit (więc normalnym Wine’em zainstalować wersję na Windowsa), ale jeśli to jednak całkiem natywna wersja to nie wiem (obiło mi się o uszy coś o nested X serverach, ale nic szczegółowego).

To natywna wersja.
Próbowałem z Xephyr, ale on nie wspiera akceleracji (gra zaliczała segfaulta podczas uruchamiania). Xnest (proksy) nie próbowałem, więc sprawdzę to.

Wystarczy zmodyfikować aktywator.
Podaje przykład polecenia które po zakończeniu działania programu zmienia jasność i rozdzielczość ekranu:

/usr/share/playonlinux/playonlinux --run “FruitLockersReborn2” %F && xgamma -gamma 0.55 && xrandr -s 1024x768

Ps.: Ciekawe kiedy i czy w ogóle naprawią CODE bo tak jak obecnie to działa to jakaś kpina z użytkowników?!

1 polubienie

Dzięki. I widzę, że samo xrandr wypisuje obecną rozdzielczość. Spróbuję napisać skrypt, który pobiera obecną, a później ją ustawia.