https://bugs.winehq.org/show_bug.cgi?id=55364
Bug ID: 55364 Summary: Shadow Empire crashes on startup with an error related to SharpDX and Direct2D. Product: Wine Version: 8.13 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: kindaro@gmail.com Distribution: ---
_Shadow Empire_ is a computer game. It can be obtained, for example, from Steam or Good Old Games. I installed what I believe to be version 1.21.00.
This is the gist of the error message that the game gives me:
``` SharpDX.SharpDXException: HRESULT: [0x88990028], Module: [SharpDX.Direct2D1], ApiCode: [D2DERR_EFFECT_IS_NOT_REGISTERED/EffectIsNotRegistered], Message: Unknown ```
When I run it as `WINEDEBUG=+d2d wine ShadowEmpire.exe`, I see the following warning from Wine:
``` 0114:warn:d2d:d2d_effect_create Effect id {9daf9369-3846-4d0e-a44e-0c607934a5d7} not found. ```
I shall be attaching the full text of the error and Wine's output.
My operating system is Arch Linux, recently updated. The failure occurs both with `wine` and `wine-staging`.
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #1 from Ignat Insarov kindaro@gmail.com --- Created attachment 74946 --> https://bugs.winehq.org/attachment.cgi?id=74946 the error message that the game gives me
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #2 from Ignat Insarov kindaro@gmail.com --- Created attachment 74947 --> https://bugs.winehq.org/attachment.cgi?id=74947 Wine's output
https://bugs.winehq.org/show_bug.cgi?id=55364
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |d2d
--- Comment #3 from Nikolay Sivov bunglehead@gmail.com --- We don't have any builtin effects implemented at the moment.
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #4 from Ignat Insarov kindaro@gmail.com --- (In reply to Nikolay Sivov from comment #3)
We don't have any builtin effects implemented at the moment.
What if we were to add one effect that does nothing and give it to anyone who asks? What are these «effects» anyway? How hard can it be? Surely we do not have to let the whole program die because of this.
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #5 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Ignat Insarov from comment #4)
(In reply to Nikolay Sivov from comment #3)
We don't have any builtin effects implemented at the moment.
What if we were to add one effect that does nothing and give it to anyone who asks? What are these «effects» anyway? How hard can it be?
It's documented here https://learn.microsoft.com/en-us/windows/win32/direct2d/effects-overview, if you're interested.
Surely we do not have to let the whole program die because of this.
Your frustration is understandable. When program creates something that it expects to always exist, it often crashes.
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #6 from Ignat Insarov kindaro@gmail.com --- For reference, the effect identifier `{9daf9369-3846-4d0e-a44e-0c607934a5d7}` is the definition of `CLSID_D2D1Scale` in `d2d1effects.h`. So, we can guess that _Shadow Empire_ is trying to scale something. The documentation for this specific effect is here: https://learn.microsoft.com/en-us/windows/win32/direct2d/high-quality-scale. I guess we could write a low quality scale and call it «high quality scale» as a first step.
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #7 from Ignat Insarov kindaro@gmail.com --- Created attachment 74948 --> https://bugs.winehq.org/attachment.cgi?id=74948 error we get when using native d2d1.dll of version 10.0.19041.329
https://bugs.winehq.org/show_bug.cgi?id=55364
--- Comment #8 from Ignat Insarov kindaro@gmail.com --- Downloading the `d2d1.dll` of version 10.0.19041.329 from https://www.dll-files.com/d2d1.dll.html and dropping it into the game's directory does not resolve the issue, but it does lead to a different error (attached above). One line of investigation would be to try all the different versions of this file offered and see what happens.