http://bugs.winehq.org/show_bug.cgi?id=30210
Bug #: 30210 Summary: Outcry (English version) displays subtitles in Russian Product: Wine Version: 1.3.27 Platform: x86 OS/Version: Linux Status: NEW Keywords: regression Severity: minor Priority: P2 Component: ntdll AssignedTo: wine-bugs@winehq.org ReportedBy: gyebro69@gmail.com CC: notasas@gmail.com Classification: Unclassified Regression SHA1: 006413afe495fbf73542154462885e4fdbf12a2a
Outcry (Russian title: Sublustrum) is an adventure game. I have the English version of the game, obtained from Gamersgate. Subtitles, although they're scarce in the game, appear incorrectly in the English version. Strange signs and symbols are shown instead of Latin letters.
As the game is from Russian developers, I tried to start the game with 'LANG=ru_RU.UTF-8 wine outcry.exe' and subtitles were displayed correctly...in Russian with Cyrillic letters. If I'm not mistaken, the full (English) version of the game contains both Russian and English subtitles, but it displays the Russian one for some reason.
This wasn't always the case. I remember playing the game some time ago, around Wine-1.3.17, and subtitles were displayed correctly (in English).
Regression testing revealed this (1.3.26 -> 1.3.27):
006413afe495fbf73542154462885e4fdbf12a2a is the first bad commit commit 006413afe495fbf73542154462885e4fdbf12a2a Author: Grazvydas Ignotas notasas@gmail.com Date: Thu Aug 4 23:24:49 2011 +0300
ntdll: Use swapping method to return . and .. as first entries.
:040000 040000 cb445dd153f9b57d3a2e7cc71206441d0530fdf3 5e84ecb0723072147d39a7be912139f962db85df M dlls
The reverted patch (1.5.0) fixed the problem, and subtitles were displayed in English.
There are both English and Russian demo versions available but none of them show the same problem (probably because they contain subtitles only for their language?)
Fedora 16 x86 gcc version 4.6.2 20111027 (Red Hat 4.6.2-1) (GCC) The game was installed on an ext4 partition
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #1 from Grazvydas Ignotas notasas@gmail.com 2012-03-18 11:18:50 CDT --- Could you apply this patch: http://bugs.winehq.org/attachment.cgi?id=36318 run it without disabling fixme channel until it shows wrong subs, and post the log here?
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #2 from GyB gyebro69@gmail.com 2012-03-18 11:46:40 CDT --- Created attachment 39444 --> http://bugs.winehq.org/attachment.cgi?id=39444 debug log
The game stores resources in compressed files. - common.spk contains the Russian subs, as well as some gfx and audio files. Files containing subs have the name as sub1.txt, sub2.txt, sub3.txt, books.txt - subloc.spk contains English subtitles and other resources. English subtitles have the same name and extension as their Russian counterpart (sub1.txt, sub2.txt. sub3.txt etc.)
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #3 from Grazvydas Ignotas notasas@gmail.com 2012-03-19 06:34:11 CDT --- Do you know how the game determines it's language? Is that install-time, ingame selection or maybe regional settings or something?
The log looks ok, perhaps the game relies on the order NtQueryDirectoryFile returns file list in. If so it is not guaranteed to work regardless of my patch, as file order is filesystem dependent. The game could be making an assumption of some order as it's 99% chance there would be NTFS or FAT32 on Windows, but wine currently returns files in the order host file system gives them, so that can't be easily fixed.
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #4 from GyB gyebro69@gmail.com 2012-03-19 10:17:21 CDT --- (In reply to comment #3)
Do you know how the game determines it's language? Is that install-time, ingame selection or maybe regional settings or something?
There is no language selection option neither in the installer nor in the game. If I start the game in Wine-1.3.26 with Russian localization (LANG=ru_RU.UTF-8), the game still displays the English subs. Audio files are all in English. It's only the subtitles that are both in Russian and English.
The log looks ok, perhaps the game relies on the order NtQueryDirectoryFile returns file list in. If so it is not guaranteed to work regardless of my patch, as file order is filesystem dependent. The game could be making an assumption of some order as it's 99% chance there would be NTFS or FAT32 on Windows, but wine currently returns files in the order host file system gives them, so that can't be easily fixed.
Maybe I should try the game on other filesystems (ext3, reiserfs). Do you think that should matter?
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #5 from Henri Verbeet hverbeet@gmail.com 2012-03-19 12:28:21 CDT --- (In reply to comment #4)
The log looks ok, perhaps the game relies on the order NtQueryDirectoryFile returns file list in. If so it is not guaranteed to work regardless of my patch, as file order is filesystem dependent. The game could be making an assumption of some order as it's 99% chance there would be NTFS or FAT32 on Windows, but wine currently returns files in the order host file system gives them, so that can't be easily fixed.
Maybe I should try the game on other filesystems (ext3, reiserfs). Do you think that should matter?
If it cares about the order in which things are enumerated it would. Note that ext3 doesn't necessarily order directories lexicographically either though. You'd need to turn of dir_index, and make sure the files are written in the correct order to begin with. You could probably hack something together with tar -T and a sorted list of the files.
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #6 from GyB gyebro69@gmail.com 2012-03-19 14:04:00 CDT --- I tried the game across various disks/partitions on my system, but the result didn't make any sense to me. Let's assume the following setup: 2 internal HDDs (sda, sdb) + 1 external usb HDD (sdc).
-sda carries my system (/boot /root /var /tmp /home + 1 additional data partition). All of them (except /boot) are formatted as ext4. When the game is installed on this disk, either in /home or in /data, the problem exists.
-sdb has 3 partitions (2x ext4, 1x ext3). The game runs *without* the problem when installed 2 of the 3 partitions (1x ext3, 1x ext4), but shows the problem on the 3rd partition (ext4).
- sdc has 2 partitions (1x ext3, 1x ext4). The problem exists on both partitions.
So there are 2 partitions on one of my disks where the game shows subtitles correctly.
http://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #7 from Grazvydas Ignotas notasas@gmail.com 2012-03-20 09:29:16 CDT --- Well that supports my guess that the game is relying on returned file order, and it can be anything on various filesystems, so you get random results.
You can create a ntfs partition and mount it or ntfs-on-a-file and mount that with loop, then install the game there to get closer to NTFS setup the game is likely expecting.
https://bugs.winehq.org/show_bug.cgi?id=30210
--- Comment #8 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for 2 years. Is this still an issue in current (1.7.16 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=30210
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |ABANDONED
--- Comment #9 from Béla Gyebrószki gyebro69@gmail.com --- Marking abandoned.
http://bugs.winehq.org/show_bug.cgi?id=30210
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Béla Gyebrószki gyebro69@gmail.com --- Closing abandoned bug.