Closed QuellaZhang closed 2 years ago
Thanks, but you might want to use https://github.com/diasurgical/devilutionX instead as that is the one that is actively being maintained for compatibility with modern compilers and operating systems.
If you decide to stick with the plain old Devilution then please be aware that DiabloUI is not functional and only there as a stub to help understand the rough structure of the DLL. As such only issues with the exe will be looked into, as that is the only part we build.
P.s. the bugs we have reported regarding the MSVC compiler were related to DevilutionX and not Devilution, in case that's relevant.
Thanks for the heads up, it seems like a more active repo would be a better fit for us. We will switch to DevilutionX. Close this issue.
Cool you've added the diablo project to MSVC (:
All the build errors you are getting are related to the DiabloUI. This portion of the code is pretty raw and unfinished, no one (including me) ever bothered to clean it up. So it's essentially crap spat out from the decompiler. It was easier to just reimplement on our own lol.
The actual base code should compile just fine, the project provides a working SLN for VS2017 iirc.
@galaxyhaxz commented 3 hours ago
All the build errors you are getting are related to the DiabloUI. This portion of the code is pretty raw and unfinished, no one (including me) ever bothered to clean it up.
I still have the idea of putting it on my table one day. I would like to have the diabloui.dll
as much original. Just for the sake of mathematical completeness of the project and to build stricter test cases for Wine project (and the bug report circa 2004):
Yeah, the DDraw bug is nasty, I posted a WINE hack for it way back in like 2014 when I was still in high school lol.
I would like to have the diabloui.dll as much original
Well, message me on Discord or email and I can help you with that ;)
Hi All,
The MSVC team recently added devilution as part of RWC testing. And we found some errors when building devilution with '/permissive-'. Could you please help look at this issue? Thanks in advance.
Repro steps:
Build log:build (3).log
Error info: f:\gitp\diasurgical\devilution\diabloui_temp_data.cpp(83): error C2440: 'initializing': cannot convert from 'const char [7]' to 'char ' f:\gitp\diasurgical\devilution\diabloui\copyprot.cpp(13): error C2664: 'BOOL SDlgDialogBoxParam(HINSTANCE,char ,int,WNDPROC,int)': cannot convert argument 2 from 'const char [16]' to 'char ' f:\gitp\diasurgical\devilution\diabloui\cr8game.cpp(70): error C2664: 'BOOL SDlgDialogBoxParam(HINSTANCE,char ,int,WNDPROC,int)': cannot convert argument 2 from 'const char [19]' to 'char ' f:\gitp\diasurgical\devilution\diabloui\cr8game.cpp(201): error C2664: 'BOOL local_LoadArtWithPal(HWND,int,char ,int,int,const char *,BYTE ,DWORD ,BOOL)': cannot convert argument 3 from 'const char [7]' to 'char ' f:\gitp\diasurgical\devilution\diabloui\creadung.cpp(119): error C2664: 'BOOL local_LoadArtWithPal(HWND,int,char ,int,int,const char ,BYTE ,DWORD ,BOOL)': cannot convert argument 3 from 'const char [6]' to 'char ' f:\gitp\diasurgical\devilution\diabloui\creadung.cpp(259): error C2664: 'BOOL SDlgDialogBoxParam(HINSTANCE,char ,int,WNDPROC,int)': cannot convert argument 2 from 'const char [15]' to 'char '