View Issue Details

IDProjectCategoryView StatusLast Update
0004532The Dark ModSound Systempublic01.09.2020 16:47
Reporterduzenko Assigned Tostgatilov  
PrioritynormalSeveritynormalReproducibilityhave not tried
Status resolvedResolutionfixed 
Product VersionSVN 
Target VersionTDM 2.06Fixed in VersionTDM 2.06 
Summary0004532: TDM crashes at startup if no sound device is available on Windows
DescriptionSteps to repeat: disable all your sound devices in Windows Sound options dialog, Playback tab (Windows 10).
An error will be raised in idSoundSample::Load

        if (errorCode != AL_NO_ERROR)
            IssueSoundSampleFailure("idSoundCache: WAV error generating OpenAL hardware buffer", errorCode, name.c_str());

Expected behavior: TDM should start and run with no sound.
TagsNo tags attached.

Activities

stgatilov

stgatilov

02.07.2017 08:19

administrator   ~0008946

Fixed in revision 6996.

Actually, there is already s_noSound cvar which disabled all sounds. I did a small fix related to issue 4534, after which it works properly.
Now this cvar is enabled automatically if no OpenAL device is found. It is accompanied by message to console: "OpenAL: no device found, sound disabled"
duzenko

duzenko

01.09.2018 19:36

developer   ~0010747

The original issue is fixed however it still crashes when exiting the game :(
duzenko

duzenko

12.09.2018 06:40

developer   ~0010759

> TheDarkModNoTools.exe!idSoundEmitterLocal::StopSound(const int channel) Line 979 C++
     TheDarkModNoTools.exe!idEntity::StopSound(const int channel, bool broadcast) Line 4614 C++
     TheDarkModNoTools.exe!idActor::~idActor() Line 799 C++
     TheDarkModNoTools.exe!idAI::~idAI() Line 659 C++
     [External Code]
     TheDarkModNoTools.exe!idGameLocal::MapClear(bool clearClients) Line 2433 C++
     TheDarkModNoTools.exe!idGameLocal::MapShutdown() Line 2495 C++
     TheDarkModNoTools.exe!idSessionLocal::UnloadMap() Line 1334 C++
     [Inline Frame] TheDarkModNoTools.exe!idSessionLocal::Stop() Line 314 C++
     TheDarkModNoTools.exe!Session_Disconnect_f(const idCmdArgs & args) Line 693 C++
     TheDarkModNoTools.exe!idCmdSystemLocal::ExecuteTokenizedString(const idCmdArgs & args) Line 482 C++
     [Inline Frame] TheDarkModNoTools.exe!idCmdSystemLocal::ExecuteCommandText(const char *) Line 504 C++
     TheDarkModNoTools.exe!idCmdSystemLocal::BufferCommandText(cmdExecution_t exec, const char * text) Line 565 C++
     TheDarkModNoTools.exe!idSessionLocal::HandleMainMenuCommands(const char * menuCommand) Line 877 C++
     TheDarkModNoTools.exe!idSessionLocal::DispatchCommand(idUserInterface * gui, const char * menuCommand, bool doIngame) Line 998 C++
     TheDarkModNoTools.exe!idSessionLocal::MenuEvent(const sysEvent_s * event) Line 1052 C++
     TheDarkModNoTools.exe!idSessionLocal::ProcessEvent(const sysEvent_s * event) Line 2235 C++
     [Inline Frame] TheDarkModNoTools.exe!idEventLoop::ProcessEvent(sysEvent_s ev) Line 149 C++
     TheDarkModNoTools.exe!idEventLoop::RunEventLoop(bool commandExecution) Line 184 C++
     TheDarkModNoTools.exe!idCommonLocal::Frame() Line 2427 C++
     TheDarkModNoTools.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 1363 C++
     [External Code]
     [Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll] Unknown
stgatilov

stgatilov

06.12.2018 12:47

administrator   ~0010833

Failed to reproduce.

I exited from game normally several times, both from release and debug builds with debugger attached, both from game and from menu, with Alt+F4 and with menu buttons.
Probably it is some rare bug.
duzenko

duzenko

06.12.2018 15:51

developer   ~0010835

Looking at the stack it could be AI talking - did you test that?
stgatilov

stgatilov

06.12.2018 16:32

administrator   ~0010838

I gathered five angry guards around me, hoping that at least one of them would talk. It is hard to know when someone speaks with no sound =)
stgatilov

stgatilov

01.09.2020 16:47

administrator   ~0012774

I cannot reproduce the problem it was reopened for.
And since nobody else complained in two years, I return it to resolved state.

Issue History

Date Modified Username Field Change
15.05.2017 09:23 duzenko New Issue
02.07.2017 07:55 stgatilov Assigned To => stgatilov
02.07.2017 07:55 stgatilov Status new => assigned
02.07.2017 08:19 stgatilov Note Added: 0008946
02.07.2017 08:20 stgatilov Status assigned => resolved
02.07.2017 08:20 stgatilov Fixed in Version => TDM 2.06
02.07.2017 08:20 stgatilov Resolution open => fixed
01.09.2018 19:36 duzenko Note Added: 0010747
01.09.2018 19:36 duzenko Status resolved => feedback
01.09.2018 19:36 duzenko Resolution fixed => reopened
12.09.2018 06:40 duzenko Note Added: 0010759
12.09.2018 06:40 duzenko Status feedback => assigned
06.12.2018 12:47 stgatilov Note Added: 0010833
06.12.2018 15:51 duzenko Note Added: 0010835
06.12.2018 16:32 stgatilov Note Added: 0010838
01.09.2020 16:47 stgatilov Status assigned => resolved
01.09.2020 16:47 stgatilov Resolution reopened => fixed
01.09.2020 16:47 stgatilov Note Added: 0012774