http://bugs.winehq.org/show_bug.cgi?id=10729
Summary: Clicking things in-game in LEGO Island causes game to hang Product: Wine Version: 0.9.50. Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: echidnaman@gmail.com
Created an attachment (id=9571) --> (http://bugs.winehq.org/attachment.cgi?id=9571) Console log
Once you get in-game in LEGO Island, clicking things will print a few fixme and then hang indefinitely. A console log is attached, and notes where the fixmes coinciding to the hang are.
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #1 from Austin English austinenglish@gmail.com 2008-06-04 12:02:09 --- Is this still an issue in 1.0-rc3 or newer wine?
http://bugs.winehq.org/show_bug.cgi?id=10729
Jonathan echidnaman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #9571 is|0 |1 obsolete| |
--- Comment #2 from Jonathan echidnaman@gmail.com 2008-06-05 16:53:23 --- Created an attachment (id=13733) --> (http://bugs.winehq.org/attachment.cgi?id=13733) Console log for wine-1.0-rc3
Yes, this bug still happens. The console log is somewhat different though.
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #3 from Austin English austinenglish@gmail.com 2008-12-03 16:31:34 --- Is this still an issue in current (1.1.9 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #4 from Jonathan echidnaman@gmail.com 2008-12-15 16:40:31 --- This still happens in Wine 1.1.10.
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #5 from Austin English austinenglish@gmail.com 2009-06-16 14:21:49 --- Is this still an issue in current (1.1.23 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #6 from Jonathan echidnaman@gmail.com 2009-06-17 17:24:41 --- Yes, it is still a problem with Wine 1.1.23
http://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #7 from Austin English austinenglish@gmail.com 2010-01-04 12:16:47 --- This is your friendly reminder that there has been no bug activity for 6 months. Is this still an issue in current (1.1.35 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=10729
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |ABANDONED
--- Comment #8 from Austin English austinenglish@gmail.com 2011-03-29 21:57:57 CDT --- No response in over a year, marking abandoned. If this is still an issue in current (1.3.16 or newer) wine, and you can provide the needed information, feel free to reopen.
http://bugs.winehq.org/show_bug.cgi?id=10729
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #9 from Austin English austinenglish@gmail.com 2011-03-29 21:58:53 CDT --- Closing.
https://bugs.winehq.org/show_bug.cgi?id=10729
Sergey Isakov isakov-sl@bk.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |isakov-sl@bk.ru
--- Comment #10 from Sergey Isakov isakov-sl@bk.ru --- Reopen, please, this bug. I confirm it exactly as is with wine 1.9.4.
The reason of the hang is a crash as the function d3d_device1_GetPickRecords is a stub. The game works as follow: 1. It draws a scene with numerous objects and record tracking what and where. 2. It proposes user to choose something ("Pick up blue cube") and wait for mouse click. 3. Then the game call function ->Pick(..., rect) where rect is a place where mouse clicked. The function must choose records from the ExecuteBufferData corresponding to this rect. So the game will know what object the user click. 4. Then the game call function ->GetPickRecords(&count, &records) where "Windows" should return how many record found and their datas. 5. But this simple game just check if there is one record found. So with this hack the game playable:
*****************************************************************************/ static D3DPICKRECORD FakeRecord = { 0x2, 0, 0x1, 0};
static HRESULT WINAPI d3d_device1_GetPickRecords(IDirect3DDevice *iface, DWORD *count, D3DPICKRECORD *records) { FIXME("iface %p, count %p, records %p stub!\n", iface, count, records); *count = 1;
if (!records) { return DDERR_INVALIDPARAMS; } *records = FakeRecord;
return D3D_OK; }
/*****************************************************************************
Real implementation must be much more complex static HRESULT WINAPI d3d_device1_Pick(IDirect3DDevice *iface, IDirect3DExecuteBuffer *buffer, IDirect3DViewport *viewport, DWORD flags, D3DRECT *rect) - should call buffer->GetExecuteData, it will be array of D3DPICKRECORD - compare each record if offset correspond to rect - fill viewport data
d3d_device1_GetPickRecords() - link to the viewport - get viewport data - copy records from it to output buffer - return a number of records copied
https://bugs.winehq.org/show_bug.cgi?id=10729
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |REOPENED Resolution|ABANDONED |--- Ever confirmed|0 |1
--- Comment #11 from Austin English austinenglish@gmail.com --- (In reply to Sergey Isakov from comment #10)
Reopen, please, this bug. I confirm it exactly as is with wine 1.9.4.
Reopening.
https://bugs.winehq.org/show_bug.cgi?id=10729
joaopa jeremielapuree@yahoo.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jeremielapuree@yahoo.fr
--- Comment #12 from joaopa jeremielapuree@yahoo.fr --- Good news, the game Fighting steel with a native d3drm has this bug. And there is a freely downloadable demo. http://telecharger.cnet.com/Fighting-Steel-demo/3000-2119_4-10230016.html
Can an administrator put the link at its place?
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #13 from joaopa jeremielapuree@yahoo.fr --- Created attachment 54063 --> https://bugs.winehq.org/attachment.cgi?id=54063 Console putput for Fighting Steel
Console output for Fighting Steel with native d3drm and ddraw channel enabled
https://bugs.winehq.org/show_bug.cgi?id=10729
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://telecharger.cnet.com | |/Fighting-Steel-demo/3000-2 | |119_4-10230016.html
https://bugs.winehq.org/show_bug.cgi?id=10729
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #14 from super_man@post.com --- If comment 10 is correct the title should be reformed. The function is still a stub that doesnt really do anything.
wine 1.9.12-git.
https://bugs.winehq.org/show_bug.cgi?id=10729
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Clicking things in-game in |Multiple games hang when |LEGO Island causes game to |clicking things in-game, |hang |needs | |d3d_device1_GetPickRecords | |implemented (LEGO Island / | |Fighting Steel)
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #15 from joaopa jeremielapuree@yahoo.fr --- Bug still there in current wine (3.11).
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #16 from joaopa jeremielapuree@yahoo.fr --- Bug is still there in current wine(3.20)
https://bugs.winehq.org/show_bug.cgi?id=10729
itsmattkc@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |itsmattkc@gmail.com
--- Comment #17 from itsmattkc@gmail.com --- I've managed to implement these functions and have clicking fully functional in LEGO Island. I have a short demo clip of playing it on Arch here: https://youtu.be/jpKqj95twoM
The code needs some clean up but after that I'll try submitting a patch. I haven't tested any other games yet.
https://bugs.winehq.org/show_bug.cgi?id=10729
Alexandr Oleynikov sashok.olen@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sashok.olen@gmail.com
--- Comment #18 from Alexandr Oleynikov sashok.olen@gmail.com --- (In reply to itsmattkc from comment #17)
I've managed to implement these functions and have clicking fully functional in LEGO Island. I have a short demo clip of playing it on Arch here: https://youtu.be/jpKqj95twoM
The code needs some clean up but after that I'll try submitting a patch. I haven't tested any other games yet.
Hey, did you finish your patch or it's still WIP? It you're still working on it, may I ask, does it actually work now without interfering with other games? Because if it really only needs a cleanup, I would love to include it in the next custom wine build from Lutris.
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #19 from itsmattkc@gmail.com --- (In reply to Alexandr Oleynikov from comment #18)
(In reply to itsmattkc from comment #17)
I've managed to implement these functions and have clicking fully functional in LEGO Island. I have a short demo clip of playing it on Arch here: https://youtu.be/jpKqj95twoM
The code needs some clean up but after that I'll try submitting a patch. I haven't tested any other games yet.
Hey, did you finish your patch or it's still WIP? It you're still working on it, may I ask, does it actually work now without interfering with other games? Because if it really only needs a cleanup, I would love to include it in the next custom wine build from Lutris.
The patch is actually "finished" and I submitted it shortly after posting that comment (https://www.winehq.org/pipermail/wine-devel/2019-August/149006.html), however I was asked to adjust the code and write a conformance test which is why it hasn't been merged in just yet. You can however use the patch from that link (rename `attachment.bin` to *.patch) and it should work.
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #20 from Alexandr Oleynikov sashok.olen@gmail.com --- Cool, thanks!
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #21 from joaopa jeremielapuree@yahoo.fr --- Any news to make the patch accepted by Wine (specially Henri Verbeet)?
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #22 from itsmattkc@gmail.com --- (In reply to joaopa from comment #21)
Any news to make the patch accepted by Wine (specially Henri Verbeet)?
No new information, it looks like my updated patch has disappeared from the patch list neither committed nor given feedback (the thread can be seen here: https://www.winehq.org/pipermail/wine-devel/2019-August/149695.html)
Naturally I'm not 100% sure what to do, perhaps I'll resubmit it or reconsider my approach (again)? Maybe they're planning their own implementation of these functions.
https://bugs.winehq.org/show_bug.cgi?id=10729
trymeout@tutanota.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |trymeout@tutanota.com
--- Comment #23 from trymeout@tutanota.com --- Created attachment 65432 --> https://bugs.winehq.org/attachment.cgi?id=65432 log and error message
Still occurs in Wine 4.17. When I click in the blue book an error message appears and the game crashes. I have attached the log and error message.
https://bugs.winehq.org/show_bug.cgi?id=10729
maniikarabera@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |maniikarabera@protonmail.ch
https://bugs.winehq.org/show_bug.cgi?id=10729
qsniyg qsniyg@mail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |qsniyg@mail.com
--- Comment #24 from qsniyg qsniyg@mail.com --- (In reply to itsmattkc from comment #22)
(In reply to joaopa from comment #21)
Any news to make the patch accepted by Wine (specially Henri Verbeet)?
No new information, it looks like my updated patch has disappeared from the patch list neither committed nor given feedback (the thread can be seen here: https://www.winehq.org/pipermail/wine-devel/2019-August/149695.html)
Naturally I'm not 100% sure what to do, perhaps I'll resubmit it or reconsider my approach (again)? Maybe they're planning their own implementation of these functions.
According to https://wiki.winehq.org/Submitting_Patches:
Finally, if your submission somehow fell through the cracks and you're trying to send a patch again without changes, use --subject-prefix="PATCH resend".
It happens rather frequently, from what I've seen.
https://bugs.winehq.org/show_bug.cgi?id=10729
Vijay Kamuju infyquest@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |infyquest@gmail.com
--- Comment #25 from Vijay Kamuju infyquest@gmail.com --- The patch review: https://www.winehq.org/pipermail/wine-devel/2019-November/154023.html
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #26 from joaopa jeremielapuree@yahoo.fr --- Once more, one developer was discouraged by the review...
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #27 from qsniyg qsniyg@mail.com --- (In reply to joaopa from comment #26)
Once more, one developer was discouraged by the review...
I sent an updated version of the patch a while ago with the corrections (with the original author CC'd), but no response. I did have a few ideas though, I'll try to send a newer version at some point.
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #28 from joaopa jeremielapuree@yahoo.fr --- Can you pinpoint the message in wine-devel?
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #29 from qsniyg qsniyg@mail.com --- (In reply to joaopa from comment #28)
Can you pinpoint the message in wine-devel?
https://www.winehq.org/pipermail/wine-devel/2020-September/173902.html
https://bugs.winehq.org/show_bug.cgi?id=10729
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://telecharger.cnet.com |https://archive.org/details |/Fighting-Steel-demo/3000-2 |/FIGHTING_201402 |119_4-10230016.html | CC| |focht@gmx.net Status|REOPENED |NEW Summary|Multiple games hang when |Multiple games hang or |clicking things in-game, |crash due to |needs |d3d_device1_GetPickRecords |d3d_device1_GetPickRecords |stub (LEGO Island / |implemented (LEGO Island / |Fighting Steel) |Fighting Steel) |
--- Comment #30 from Anastasius Focht focht@gmx.net --- Hello folks,
re-confirming and adding stable download via Internet Archive:
https://archive.org/details/FIGHTING_201402
https://archive.org/download/FIGHTING_201402/FIGHTING.zip
$ sha1sum FIGHTING.zip 1c97563d4deaac3c85119e820470e8806f9ca167 FIGHTING.zip
$ du -sh FIGHTING.zip 24M FIGHTING.zip
$ wine --version wine-6.4
Regards
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #31 from joaopa jeremielapuree@yahoo.fr --- Bug still occurs with wine-6.19.
https://bugs.winehq.org/show_bug.cgi?id=10729
--- Comment #32 from joaopa jeremielapuree@yahoo.fr --- Unfortunately, there was no reply neither advices for this patch in the wine-devel list (I checked). Very frustrating for the developer I think.
https://bugs.winehq.org/show_bug.cgi?id=10729
Luke Benstead kazade@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kazade@gmail.com
--- Comment #33 from Luke Benstead kazade@gmail.com --- Looks like the last update of the patch caused test failures? https://www.winehq.org/pipermail/wine-devel/2020-September/173904.html
https://bugs.winehq.org/show_bug.cgi?id=10729
soredake broaden_acid002@simplelogin.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|broaden_acid002@simplelogin | |.com |