Red Rodgers

Red Rodgers (https://www.redrodgers.com/forums/index.php)
-   S.C.S. Dangerous Waters (https://www.redrodgers.com/forums/forumdisplay.php?f=172)
-   -   RA 1.40 Crash (https://www.redrodgers.com/forums/showthread.php?t=6714)

Phantom 27-11-2016 19:42

RA 1.40 Crash
 
Hello everyone!
I'm new in the forum. First I wanted to congratulate the creators of the mod! It's really fantastic!:) But I have a problem, very often (almost always) the game crashes when it finishes the loading of the mission. I've tried various settings, differnt d3d8.dll etc. But I can't resolve it. Any idea?
Thanks in advance!

dasOoops 27-11-2016 23:35

I think, more information needed: type of Windows, minidump and etc. (I have Windows7 Home Extended, 64-bit; DW 1.0.0 + patch 1.0.4 + dwx 1.40 - no crashes...)

Phantom 28-11-2016 01:52

Вложений: 1
Цитата:

Сообщение от dasOoops (Сообщение 143649)
I think, more information needed: type of Windows, minidump and etc. (I have Windows7 Home Extended, 64-bit; DW 1.0.0 + patch 1.0.4 + dwx 1.40 - no crashes...)

You're right! Some infos are needed! Then
Windwows 10 Pro 64bit, DW 1.04 Steam edition, d3d8.dll (provieded with RA Mod), RA.140, Rus voices 1.39.

dasOoops 28-11-2016 22:11

Windows SDK includes minidump`s viewer (kd.exe or similar)... It can show the causes of crashes.

Jaf 28-11-2016 22:36

Цитата:

Сообщение от Phantom (Сообщение 143648)
I have a problem, very often (almost always) the game crashes when it finishes the loading of the mission. Any idea?

Comrade monkie had a similar problem.
Try to take advantage of his advice:
http://www.redrodgers.com/forums/sho...81&postcount=4

Phantom 29-11-2016 00:01

Цитата:

Сообщение от Jaf (Сообщение 143654)
Comrade monkie had a similar problem.
Try to take advantage of his advice:
http://www.redrodgers.com/forums/sho...81&postcount=4

Thanks but i've already tried it.

Цитата:

Сообщение от dasOoops (Сообщение 143652)
Windows SDK includes minidump`s viewer (kd.exe or similar)... It can show the causes of crashes.

This is one of the minidumps:
Цитата:

Microsoft (R) Windows Debugger Version 10.0.14321.1024 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Users\Alessio\Desktop\dangerouswaters.exe.3852. dmp]
User Mini Dump File: Only registers, stack and portions of memory are available

Symbol search path is: srv*
Executable search path is:
Windows 10 Version 14393 MP (8 procs) Free x86 compatible
Product: WinNt, suite: SingleUserTS
Built by: 10.0.14393.206 (rs1_release.160915-0644)
Machine Name:
Debug session time: Sun Nov 27 22:19:22.000 2016 (UTC + 1:00)
System Uptime: not available
Process Uptime: 0 days 0:00:49.000
.................................................. ..............
................................
Loading unloaded module list
......
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(f0c.d30): Access violation - code c0000005 (first/second chance not available)
*** WARNING: Unable to verify timestamp for ntdll.dll
*** ERROR: Module load completed but symbols could not be loaded for ntdll.dll
Unable to load image C:\Windows\System32\KERNELBASE.dll, Win32 error 0n2
*** WARNING: Unable to verify timestamp for KERNELBASE.dll
*** ERROR: Module load completed but symbols could not be loaded for KERNELBASE.dll
eax=00000000 ebx=00000000 ecx=0b77f9f0 edx=00000000 esi=00000003 edi=00000003
eip=77cfe2cc esp=0bd3eddc ebp=0bd3ef6c iopl=0 nv up ei pl nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000202
ntdll+0x6e2cc:
77cfe2cc c21400 ret 14h

dasOoops 29-11-2016 22:25

Hmmm... Maybe options for debugger needed... Show stack... Second way: run dw under debugger. (I like OllyDbg)

CubanFoxtrot 29-11-2016 23:18

The crash on 2256.dmp seems caused by the "happy" coincidence of the 3D engine picking a 32-bit backbuffer (side effect of the D3D8 emulation wrapper, I believe?) and the non-power of 2 size of gen_dlg_MIDLFT.bmp of shared graphics package.

My notes about it:

Цитата:

0:000> .ecxr
eax=103aa16e ebx=00000000 ecx=00000000 edx=00000000 esi=00000000 edi=00000000
eip=004bbf78 esp=0019f3e0 ebp=102bd5b8 iopl=0 nv up ei pl zr na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
Unable to load image D:\Program Files (x86)\Steam\steamapps\common\Dangerous Waters\dangerouswaters.exe, Win32 error 0n2
*** WARNING: Unable to verify timestamp for dangerouswaters.exe
*** ERROR: Module load completed but symbols could not be loaded for dangerouswaters.exe
dangerouswaters+0xbbf78:
004bbf78 8a5001 mov dl,byte ptr [eax+1] ds:002b:103aa16f=??

// Function: SCS::Naval3DEngine::CSurface *SCS::Naval3DEngine::CEngine::loadSurfaceFromFile( SCS::Naval3DEngine::CEngine *this, const char *fileName, int type, SCS::Naval3DEngine::CSurface *surface = nullptr) @ 0x004BB9C0
// fileName = "gen_dlg_MIDLFT.bmp" (25 x 25 @ RGB888 format)
// type = 1 -> SCS::Naval3DEngine::CSurface::Type::BITMAP

scanline_size = 0x64 = 100 bytes -> BAD!!!
((25 * 4) + (4 - 1)) & ~(4 - 1) = 100 bytes // this can happen only if SCS::Naval3DEngine::CEngine::backBufferType == ENGINE_BACKBUFFERTYPE_X8R8G8B8 at 0x004BBED8
((25 * 3) + (4 - 1)) & ~(4 - 1) = 76 bytes // at 0x004BBDB3, SCS::Naval3DEngine::CEngine::backBufferType != ENGINE_BACKBUFFERTYPE_X8R8G8B8

dib->bits = 0x103a980e
memory reading fails at 0x103aa16e+1
means an offset of +0x960 from dib->bits + .g component
this is out of bounds in case of 25x25x3=0x753=1875 bytes

CubanFoxtrot 29-11-2016 23:29

Beside this, there're just 2 other CTD causes from the attached minidumps.

Цитата:

0:035> .ecxr
eax=00110000 ebx=00d53318 ecx=00d2f9f0 edx=00000000 esi=00d52c80 edi=00000001
eip=00b2d1b1 esp=0da3fac0 ebp=113c6c68 iopl=0 nv up ei pl nz ac pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010216
NavalSimEngine+0x1d1b1:
00b2d1b1 d905e0330c20 fld dword ptr ds:[200C33E0h] ds:002b:200c33e0=????????
This is a problem reading a -10000.f variable added by the mod to the NavalSimEngine .text section (it's pad/alignemnt data in the vanilla 1.04).

Цитата:

0:000> .ecxr
eax=0dde2ab2 ebx=0ef1a008 ecx=00000004 edx=0dde281e esi=029f6818 edi=ffffffc6
eip=005e0adc esp=0019f5c4 ebp=0dde01fa iopl=0 nv up ei ng nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010286
Unable to load image D:\Program Files (x86)\Steam\steamapps\common\Dangerous Waters\dangerouswaters.exe, Win32 error 0n2
*** WARNING: Unable to verify timestamp for dangerouswaters.exe
*** ERROR: Module load completed but symbols could not be loaded for dangerouswaters.exe
dangerouswaters+0x1e0adc:
005e0adc 663b6c1f02 cmp bp,word ptr [edi+ebx+2] ds:002b:0ef19fd0=????
This one happens inside the 88th method (+0x15C) of db manager's virtual table. Perhaps something related to the RA mod changes to the db structures?

Maybe I will investigate them more deeply, if I'll be able to find some more free time. :)

Hope this helps you guys.
Keep up the good work!

Phantom 30-11-2016 01:29

Цитата:

Сообщение от risorgimento59 (Сообщение 143660)
The crash on 2256.dmp seems caused by the "happy" coincidence of the 3D engine picking a 32-bit backbuffer (side effect of the D3D8 emulation wrapper, I believe?) and the non-power of 2 size of gen_dlg_MIDLFT.bmp of shared graphics package.

My notes about it:

Цитата:

Сообщение от risorgimento59 (Сообщение 143661)
Beside this, there're just 2 other CTD causes from the attached minidumps.



This is a problem reading a -10000.f variable added by the mod to the NavalSimEngine .text section (it's pad/alignemnt data in the vanilla 1.04).



This one happens inside the 88th method (+0x15C) of db manager's virtual table. Perhaps something related to the RA mod changes to the db structures?

Maybe I will investigate them more deeply, if I'll be able to find some more free time. :)

Hope this helps you guys.
Keep up the good work!

Thanks risorgimento59 (are you italian?) for your help! Unfortunately i cant do much. I hope this can help the RA team for future fixes. The only workaround i found is run DW not from steam but instead create a shortcut and run it.

CrazyIvan 30-11-2016 01:59


TO: risorgimento59

Thank you Comrade! I replaced the wrong code for NavalSimEngine of the relative values -10000.

Non-flushed cash bug has occurred.

But on Win 7 - there is no effect of this error.

CubanFoxtrot 30-11-2016 20:44

You're welcome CrazyIvan.

The database problem looks like broken referencing to the array of entities.
I cannot understand where the invalid index comes from, sadly.
But it seems to occur inside a loop running until a counter reaches db->profileArr[i].unk0c...
Maybe this is an hint for you.

@Phantom: Yes, I'm Italian. ;)

CrazyIvan 30-11-2016 22:59

Цитата:

Сообщение от risorgimento59 (Сообщение 143664)
You're welcome CrazyIvan.

The database problem looks like broken referencing to the array of entities.
I cannot understand where the invalid index comes from, sadly.
But it seems to occur inside a loop running until a counter reaches db->profileArr[i].unk0c...
Maybe this is an hint for you.

For ver. 1.41 this has been corrected.


Часовой пояс GMT +4, время: 23:45.

Red Rodgers official site. Powered by TraFFa. ©2000 - 2024, Red Rodgers
vBulletin Version 3.8.12 by vBS. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot