Opened 6 years ago
Closed 5 years ago
#10228 closed defect (fixed)
SCI: SQ4: Windows-specific SFX don't play
|Reported by:||EricOakford||Owned by:||m-kiewitz|
|Cc:||Game:||Space Quest 4|
The Windows version of Space Quest IV plays various additional SFX not played in the DOS version.
These SFX don't play in ScummVM, though. Playing through the Windows version of SQ4 on my Pentium 133 helped me figure out these SFX (they're all conveniently in the 1000+ range):
In intro, "calculating" of Roger's coordinates (1113.aud)
The "scoring" of Puzzle Points (1888.aud)
"Pound" of Sequel Police ship as it appears on screen in beginning (1109.aud)
Roger "warping" into SQ12 (1822.aud) (this does play in ScummVM; I'm just listing it for reference)
Roger "opening" the grate (1809.aud)
Slime "sizzling" as it exits grate (1806.aud)
Roger "scooping" up slime into jar (1820.aud)
"Pound" of ship as it enters frame when Roger exits sewers (1156.aud) (seems to sound exactly the same as 1109.aud; duplicate?)
"Zzzzip" of Time Pod door opening and closing (1142.aud)
Roger "splashing" into water after exiting nest on Estros (1883.aud)
"Bubbling" of submarine as it surfaces at Latex Babes' Fortress (1127.aud)
"Explosion" of canister as Sea Slug eats it (1103.aud)
"Pound" of ship as it exits Latex Babes' fortress (1156.aud)
Escalators at Galaxy Galleria entrance "humming" (1400.aud)
"Zoom" of skaters in Skate-O-Rama (1401.aud)
"Vroom" of clerk's treads at Big and Tall (1830.aud)
"Blast" of Sequel Police gun (1105.aud)
There could be more of these, but these are what I found. Something in the SCIWV.EXE executable maybe?
Change History (7)
comment:1 by , 6 years ago
comment:2 by , 6 years ago
Hmm, we added sample playback for Space Quest 3 and the original DOS interpreter was incapable of doing so and at least for that one no fan ever complained.
It seems Sierra plays some of those new samples at the same time as voice samples are playing and the DOS interpreter was incapable of playing more than 1 sample at a time.
So it's basically the same situation as with Space Quest 3.
Not sure, if there should be an option for this or not.
I got it working now and it was a trivial change (there is an issue however, need to look into that one).
comment:3 by , 6 years ago
Added bugfix/enhancement with commit d9dfca2
Please test it out, if possible.
I had one assert() at one time about a file already being closed, but I couldn't switch to VC++ to debug it. I was unable to reproduce it afterwards and even if it had something to do with this, it would be an engine bug and should be fixed in any case.
I added it regardless of the chosen platform, so the game uses the enhanced and additional samples all the time now.
We already do this for Space Quest 3 (original DOS interpreter didn't play samples, although samples were included with the game).
We can add a game option in case someone wishes to disable this behavior, but right now I don't see a reason. We normally try to deliver the best version possible and those samples were meant to be played. The DOS interpreter was afaik simply not capable of playing multiple samples at the same time just like the Space Quest 3 DOS interpreter was incapable of playing any samples and no one has complained about that one (as far as I know).
comment:4 by , 6 years ago
btw. thank you very much for reporting this.
I didn't know about these samples until today and it seems no one else from the team knew about it either.
Will check the other General MIDI capable games later. Maybe one of those also has enhanced samples.
comment:5 by , 6 years ago
|Status:||new → pending|
comment:6 by , 6 years ago
I knew about the samples since all the way back in 2004. I remember that the Windows version had additional SFX unique to it. This is one advantage it has over the DOS version, at least.
comment:7 by , 5 years ago
|Status:||pending → closed|
It seems these are effectively part of the General Midi stuff.
We currently only check for sound resources and if those do exist, we add 1000 to them, so that the GM resources are used. This here are audio resources instead.
I'm not entirely sure what to do about this case.
The Windows interpreter surely just made the changes to both resource types, but if we do that, then those samples are only available to people, who not only select Windows platform, but also choose a General Midi output device, otherwise we (have to) revert back to DOS interpreter behavior.
Maybe it would make sense to add a separate game option on top.
Still, not sure if this option should be enabled by default or not.