https://bugs.winehq.org/show_bug.cgi?id=47129
Bug ID: 47129 Summary: Caste Siege/Ballerburg crashes on start Product: Wine Version: 4.7 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: byi5000@gmail.com Distribution: ---
Created attachment 64349 --> https://bugs.winehq.org/attachment.cgi?id=64349 Backtrace
Old ddraw7 game crashes on start. Using wine-staging-4.7 and set to Windows XP
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #1 from BieHDC byi5000@gmail.com --- Created attachment 64350 --> https://bugs.winehq.org/attachment.cgi?id=64350 Full Log
https://bugs.winehq.org/show_bug.cgi?id=47129
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |xerox.xerox2000x@gmail.com
--- Comment #2 from Louis Lenders xerox.xerox2000x@gmail.com --- Is this the demo for this game: https://www.gamepressure.com/download.asp?ID=2193
And if so, is the crash reproducible with the demo?
Thanks and Regards
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #3 from BieHDC byi5000@gmail.com --- Created attachment 64353 --> https://bugs.winehq.org/attachment.cgi?id=64353 The Demo
Yes thats the demo of the game, but it doesnt crash. It renders weird as seen in the screenshot and seems to spam the same errors.
https://bugs.winehq.org/show_bug.cgi?id=47129
Paul Gofman gofmanp@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gofmanp@gmail.com
--- Comment #4 from Paul Gofman gofmanp@gmail.com --- Created attachment 64364 --> https://bugs.winehq.org/attachment.cgi?id=64364 ddraw: Fix vertex count in d3d_device3_DrawIndexedPrimitiveVB()
I've tested the demo and could see the issue. The attached patch is fixing it. The FIXME messages in the output are unrelated and seemingly harmless.
However, I don't have the full game to debug the crash, and it looks unlikely that the same problem can lead to the crash in a full version. Does it crash in mainstream (not Staging) Wine also?
Could you please attach WINEDEBUG=+ddraw,+d3d,+d3d_shader log? Preferably from mainstream Wine if it crashes there also, or from Staging otherwise.
https://bugs.winehq.org/show_bug.cgi?id=47129
pattietreutel katyaberezyaka@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |katyaberezyaka@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #5 from BieHDC byi5000@gmail.com --- Created attachment 64375 --> https://bugs.winehq.org/attachment.cgi?id=64375 wine-4.7 with +ddraw,+d3d,+d3d_shader
using arch's repo package with your fix not applied
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #6 from Paul Gofman gofmanp@gmail.com --- Unfortunately I can't see anything special in the log yet. Could you please attach the output of WINEDEBUG=+ddraw,+d3d,+d3d_shader,+relay,+seh if possible? If it is getting big, it can be compressed by gzip or anything, logs are compressed very well.
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #7 from BieHDC byi5000@gmail.com --- Created attachment 64378 --> https://bugs.winehq.org/attachment.cgi?id=64378 wine 4.7 log with +ddraw,+d3d,+d3d_shader,+relay,+seh
21,9mb unpacked
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #8 from Paul Gofman gofmanp@gmail.com --- It looks like the game cannot find files it tries to open, like none of them. It uses relative paths to do that, e. g., Data/Main.cpr. Do you have Data/Main.cpr (for instance, there are a lot of others) in your game directory? How do you start the game: do you run it with the game directory being current?
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #9 from Paul Gofman gofmanp@gmail.com --- Also, I can now reproduce very similar looking crash with the demo when I start it with the current directory not being current (the same mov instruction dereferencing NULL with 0xd8 offset, crash address is different but close, while the executable is likely different for demo). I suspect it might be the culprit, can you please make sure you run the game with current directory being the one where it is installed (where is the excutable, and where you see the Data directory)?
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #10 from BieHDC byi5000@gmail.com --- Indeed its a directory issue. For example i start steam like this:
WINEDEBUG=-all wine64 .wine/drive_c/Program\ Files\ (x86)/Steam/Steam.exe -no-cef-sandbox<<
which works fine.
and i have started ballerburg like this:
WINEARCH=win32 WINEPREFIX=~/.ballerburg wine "/home/biehdc/.ballerburg/drive_c/Program Files/Ballerburg/Ballerburg.exe"<<
and it fails.
however when i do this:
cd "/home/biehdc/.ballerburg/drive_c/Program Files/Ballerburg/" WINEARCH=win32 WINEPREFIX=~/.ballerburg wine "Ballerburg.exe" << it works fine. (missing the patch ofc it doesnt render properly)
So is it wine's fault? that start method works for any other program i have.
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #11 from Paul Gofman gofmanp@gmail.com --- (In reply to BieHDC from comment #10)
Indeed its a directory issue. For example i start steam like this:
WINEDEBUG=-all wine64 .wine/drive_c/Program\ Files\ (x86)/Steam/Steam.exe -no-cef-sandbox<<
which works fine.
and i have started ballerburg like this:
WINEARCH=win32 WINEPREFIX=~/.ballerburg wine "/home/biehdc/.ballerburg/drive_c/Program Files/Ballerburg/Ballerburg.exe"<<
and it fails.
Not all programs are the same, some behave completely different. This game needs to be started from its directory, it uses relative path to open its files and crash when it can't find them. BTW it is rather common case. If you start a game from, e. g., Steam, or desktop menu link, those starters set directory for you.
As for the crash, I now don't see any Wine issue here.
Rendering glitch discovered between the lines of this bug should be now fixed by commit 08d630e250d24d6f0f8c1f6106dff0397b4d058e.
https://bugs.winehq.org/show_bug.cgi?id=47129
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |directx-d3d Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |08d630e250d24d6f0f8c1f6106d | |ff0397b4d058e Summary|Caste Siege/Ballerburg |Rendering glitch in Caste |crashes on start |Siege/Ballerburg (invalid | |vertex count in | |IDirect3DDevice3::DrawIndex | |edPrimitiveVB) Resolution|--- |FIXED
--- Comment #12 from Józef Kucia joseph.kucia@gmail.com --- Retargeting the bug to the actual Wine bug and marking as FIXED.
https://bugs.winehq.org/show_bug.cgi?id=47129
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Rendering glitch in Caste |Rendering glitch in Caste |Siege/Ballerburg (invalid |Siege: Ballerburg (invalid |vertex count in |vertex count in |IDirect3DDevice3::DrawIndex |IDirect3DDevice3::DrawIndex |edPrimitiveVB) |edPrimitiveVB)
https://bugs.winehq.org/show_bug.cgi?id=47129
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Rendering glitch in Caste |Rendering glitch in Caste |Siege: Ballerburg (invalid |Siege/Ballerburg (invalid |vertex count in |vertex count in |IDirect3DDevice3::DrawIndex |IDirect3DDevice3::DrawIndex |edPrimitiveVB) |edPrimitiveVB)
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #13 from BieHDC byi5000@gmail.com ---
This game needs to be started from its directory
indeed, the generated .desktop file launches it fine. i was under the wrong assumption that wine does automatically changes working directories to the executable location.
Also, thanks a lot for fixing the rendering issue.
https://bugs.winehq.org/show_bug.cgi?id=47129
--- Comment #14 from Paul Gofman gofmanp@gmail.com --- (In reply to BieHDC from comment #13)
This game needs to be started from its directory
indeed, the generated .desktop file launches it fine. i was under the wrong assumption that wine does automatically changes working directories to the executable location.
Neither does Windows, you can get the same crash under Windows if you do the same. It is just less common and I would say harder for users to do the same on Windows, as most of the time they run it from desktop or menu link, or from file manager where it is typically not so easy to run the .exe from another directory.
https://bugs.winehq.org/show_bug.cgi?id=47129
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #15 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 4.8.
https://bugs.winehq.org/show_bug.cgi?id=47129
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |4.0.x
https://bugs.winehq.org/show_bug.cgi?id=47129
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|4.0.x |---
--- Comment #16 from Michael Stefaniuc mstefani@winehq.org --- Removing the 4.0.x milestone from bug fixes included in 4.0.3.