It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
The Steam version of this game is unplayable for me and other Windows 8.1 users due to dreadful lagging in the main arrivals hall. Has this been fixed for this version? If so, when can Steam customers expect the long-promised patch?
It works fine. Anyway, if you encounter issues with the performance, GOG's support will be happy to help you.

GOG has nothing to do with Steam versions and patches, it's up to developer/publisher.
avatar
zeffyr: It works fine. Anyway, if you encounter issues with the performance, GOG's support will be happy to help you.

GOG has nothing to do with Steam versions and patches, it's up to developer/publisher.
Yes, thanks, I'm aware that GOG has nothing to do with Steam. One of the devs has acknowledged on the Steam forums that there is lagging for some Windows 8 users and has said that they are working on it. I was just wondering whether this newly released GOG version contains that fix.
It would seem the GOG version lags horribly as well, at least for me. I sure hope someone figures it out soon.
avatar
zeffyr: It works fine. Anyway, if you encounter issues with the performance, GOG's support will be happy to help you.

GOG has nothing to do with Steam versions and patches, it's up to developer/publisher.
avatar
Magwitch: Yes, thanks, I'm aware that GOG has nothing to do with Steam. One of the devs has acknowledged on the Steam forums that there is lagging for some Windows 8 users and has said that they are working on it. I was just wondering whether this newly released GOG version contains that fix.
Small lags (2-3 secs) happened to me few times, between MIDI tracks - one ended, the second one was about to start and game froze. No biggie though.
Game runs as good as it did back in the day for me on 8.1.
Lags for me as well :(.
(using Win8.0 64bit, AMD Phenom II X4 965, AMD Radeon HD 7700;
already tried setting affinity of process to one core only, compatibility modes, run-as-admin, disabling MIDI).
Same here. The only workaround is to make the game run in windowed mode and set a low screen resolution before launch (optional, but you would not play a 640x480 game on todays resolutions 1080p or higher...).
Please contact GOG's support, they'll diagnose your issues.

And please post solutions if support helps you. On my Win 8.1 it works fine...
Oh... it was my fault. The version on GOG DOES work for me. In my case the problem was that I did not uninstall the version I had from Steam (which does NOT work) and after installing the one from GOG I launched the wrong one.

So: On my Windows 8.1 notebook the GOG version does not have the lag problem.
avatar
zeffyr: Small lags (2-3 secs) happened to me few times, between MIDI tracks - one ended, the second one was about to start and game froze. No biggie though.
That *particular* issue is because the MIDI synthesizer that Windows uses has a crazy long startup time when using the high-level MIDI API in modern Windows versions. ([url=https://msdn.microsoft.com/en-us/library/dd742875(v=vs.85).aspx]There are 3 such APIs[/url]; in my experience, only the highest-level API, MCI, is affected).

One option is therefore to tell Windows to use a different MIDI synth by default - but googling suggests this has been removed in Windows 8, and even so, it would have to be up to each user to do so.

The other, more reliable option, is to switch MIDI APIs, to e.g. the [url=https://msdn.microsoft.com/en-us/library/dd798691(v=vs.85).aspx]stream-based API[/url], which does not exhibit this issue. This, however, requires modifying the source code, and unfortunately, the source code included here is not complete; it refers to some libraries which are not included, so it is not really possible to make a custom build.

It is theoretically possible to hack the executable to replace the existing code - the source code helps to understand the structure of the code, so it is easier to reverse engineer things - but that is still going to require a fair amount of effort :) It also seems like part of the music code might be in one of those missing libraries, but I haven't checked if it actually makes use of it...
avatar
zeffyr: Small lags (2-3 secs) happened to me few times, between MIDI tracks - one ended, the second one was about to start and game froze. No biggie though.
avatar
Pidgeot: That *particular* issue is because the MIDI synthesizer that Windows uses has a crazy long startup time when using the high-level MIDI API in modern Windows versions. ([url=https://msdn.microsoft.com/en-us/library/dd742875(v=vs.85).aspx]There are 3 such APIs[/url]; in my experience, only the highest-level API, MCI, is affected).

One option is therefore to tell Windows to use a different MIDI synth by default - but googling suggests this has been removed in Windows 8, and even so, it would have to be up to each user to do so.

The other, more reliable option, is to switch MIDI APIs, to e.g. the [url=https://msdn.microsoft.com/en-us/library/dd798691(v=vs.85).aspx]stream-based API[/url], which does not exhibit this issue. This, however, requires modifying the source code, and unfortunately, the source code included here is not complete; it refers to some libraries which are not included, so it is not really possible to make a custom build.

It is theoretically possible to hack the executable to replace the existing code - the source code helps to understand the structure of the code, so it is easier to reverse engineer things - but that is still going to require a fair amount of effort :) It also seems like part of the music code might be in one of those missing libraries, but I haven't checked if it actually makes use of it...
Well noticed! GOG, please have a look at Pidgeot's remarks.
avatar
Pidgeot: That *particular* issue is because the MIDI synthesizer that Windows uses has a crazy long startup time when using the high-level MIDI API in modern Windows versions. ([url=https://msdn.microsoft.com/en-us/library/dd742875(v=vs.85).aspx]There are 3 such APIs[/url]; in my experience, only the highest-level API, MCI, is affected).

One option is therefore to tell Windows to use a different MIDI synth by default - but googling suggests this has been removed in Windows 8, and even so, it would have to be up to each user to do so.

The other, more reliable option, is to switch MIDI APIs, to e.g. the [url=https://msdn.microsoft.com/en-us/library/dd798691(v=vs.85).aspx]stream-based API[/url], which does not exhibit this issue. This, however, requires modifying the source code, and unfortunately, the source code included here is not complete; it refers to some libraries which are not included, so it is not really possible to make a custom build.

It is theoretically possible to hack the executable to replace the existing code - the source code helps to understand the structure of the code, so it is easier to reverse engineer things - but that is still going to require a fair amount of effort :) It also seems like part of the music code might be in one of those missing libraries, but I haven't checked if it actually makes use of it...
avatar
zeffyr: Well noticed! GOG, please have a look at Pidgeot's remarks.
I strongly suspect they will have to ask Black Forest Games to make the changes; whether or not it'll get fixed is an entirely different matter :)

I did, however, dig up this resource on the stream API, in case anyone is in a hacking mood: [url=https://web.archive.org/web/20080625031558/http://www.borg.com/~jglatt/tech/stream.htm]https://web.archive.org/web/20080625031558/http://www.borg.com/~jglatt/tech/stream.htm[/url]
avatar
zeffyr: Small lags (2-3 secs) happened to me few times, between MIDI tracks - one ended, the second one was about to start and game froze. No biggie though.
avatar
Pidgeot: That *particular* issue is because the MIDI synthesizer that Windows uses has a crazy long startup time when using the high-level MIDI API in modern Windows versions. ([url=https://msdn.microsoft.com/en-us/library/dd742875(v=vs.85).aspx]There are 3 such APIs[/url]; in my experience, only the highest-level API, MCI, is affected).

One option is therefore to tell Windows to use a different MIDI synth by default - but googling suggests this has been removed in Windows 8, and even so, it would have to be up to each user to do so.

The other, more reliable option, is to switch MIDI APIs, to e.g. the [url=https://msdn.microsoft.com/en-us/library/dd798691(v=vs.85).aspx]stream-based API[/url], which does not exhibit this issue. This, however, requires modifying the source code, and unfortunately, the source code included here is not complete; it refers to some libraries which are not included, so it is not really possible to make a custom build.

It is theoretically possible to hack the executable to replace the existing code - the source code helps to understand the structure of the code, so it is easier to reverse engineer things - but that is still going to require a fair amount of effort :) It also seems like part of the music code might be in one of those missing libraries, but I haven't checked if it actually makes use of it...
The one thing I know that is missing from the source code that we provide is the Smacker library from RAD Tools. As for anything else being missing, I have no idea as I am not a programmer/developer.
avatar
Pidgeot: That *particular* issue is because the MIDI synthesizer that Windows uses has a crazy long startup time when using the high-level MIDI API in modern Windows versions. ([url=https://msdn.microsoft.com/en-us/library/dd742875(v=vs.85).aspx]There are 3 such APIs[/url]; in my experience, only the highest-level API, MCI, is affected).

One option is therefore to tell Windows to use a different MIDI synth by default - but googling suggests this has been removed in Windows 8, and even so, it would have to be up to each user to do so.

The other, more reliable option, is to switch MIDI APIs, to e.g. the [url=https://msdn.microsoft.com/en-us/library/dd798691(v=vs.85).aspx]stream-based API[/url], which does not exhibit this issue. This, however, requires modifying the source code, and unfortunately, the source code included here is not complete; it refers to some libraries which are not included, so it is not really possible to make a custom build.

It is theoretically possible to hack the executable to replace the existing code - the source code helps to understand the structure of the code, so it is easier to reverse engineer things - but that is still going to require a fair amount of effort :) It also seems like part of the music code might be in one of those missing libraries, but I haven't checked if it actually makes use of it...
avatar
JudasIscariot: The one thing I know that is missing from the source code that we provide is the Smacker library from RAD Tools. As for anything else being missing, I have no idea as I am not a programmer/developer.
Smacker is not freely available, so it makes sense that one is missing, but there are definitely other missing files that aren't Smacker-related.

It seems that only the "main" source code has been kept - C++ files (.cpp and .h) from the main code directory have been included, along with a Visual Studio project file (AT.DSP); everything else, including code in subfolders, is gone. This includes some program resources, and some documentation that is referenced in the project file, and three libraries which appear to be developed internally at Spellbound (SBL, SSE, TeakLibW).

According to the file SSE.h, SSE is short for Spellbound SoundEngine. This seems to be the code that handles MIDI playback, and there's a matching sse.dll in the game directory which appears to contain the code for the library (so hacking would target the sse.dll file, possibly by reimplementing it entirely?).

I don't know if Black Forest Games are allowed (and willing) to add the source code of the SoundEngine, but if they did, that should be enough to allow someone else to fix the MIDI lag without too much trouble (should just be a matter of compiling a new DLL).