aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
AgeCommit message (Collapse)Author
2017-09-16SCI32: Add script patch for PQ4CD for dual mode (text+speech)Martin Kiewitz
This makes the game menu able to handle a 3rd state, so that the game shows text but also play speech at the same time. We need to inject our own view for the new button to really show up. I'm not that experienced with the SCI32 graphics code, which is why I prefer snover to do this part. Right now it will show the button with text selected 2 times in a row. The first "text" button is the dual mode / "both" state. Anyway, thanks to snover for notifying me of this game needing dual mode patched in and also for some help.
2017-09-16SCI: LB2-Dual mode: Change "DUAL" button to "BOTH"Martin Kiewitz
Now it says "BOTH", just what the button in SQ4 says as well.
2017-09-15SCI32: Fix bad play call in Shivers room 23090David Fioramonti
This fixes a bad play call by replacing it with a fade call. The newRoom function In script rm23v090 (room 23090) was calling a play function with 5 arguments, but the play function only takes 4 arguments. Since it looks like a fade call it has been replaced with that. Fixes Trac#10200. snover helped.
2017-09-16SCI: KQ6-Dual mode: Change "DUAL" button to "BOTH"Martin Kiewitz
Now those say "BOTH", just what the button in SQ4 says as well.
2017-09-15SCI32: Blacklist pirated GOG.com + German GK2Colin Snover
Fixes Trac#9744.
2017-09-15SCI32: Fix clipping of inventory items in Phant2Colin Snover
This fixes overlapping of the left arrow in all cases, but the scroll delta and initial offset of inventory items will only be fixed in new games because the affected objects are global objects whose bad properties get persisted into save games. Fixes Trac#10037.
2017-09-14SCI32: Fix Phant2 "auto-save"Colin Snover
The game has a feature where it will automatically create a save game when you quit the game through the in-game control panel (or when you die, for some reason). Unfortunately, due to bad programming, this automatic save would just overwrite whatever was in save slot 1 (slot 0 in the original interpreter). Find this attempt to auto-save the game and redirect it to the auto-save slot. This might not be totally correct, but it is at least better than destroying a save game. Fixes Trac#10201.
2017-09-14SCI32: Fix PQ:SWAT platformColin Snover
2017-09-14SCI32: Drop platform from game ID for games that are Windows-onlyColin Snover
2017-09-14SCI32: Remove ADGF_CD from games that have no non-CD versionColin Snover
@sev- had asked why these flags were added a while ago (I had been instructed this was the right thing to do when I asked in the past) and ever since then it has been bugging me more and more that they are there, since they serve zero purpose except to make the game ID longer. In the past, it may have been the case that the SCI16 & SCI32 code mixing meant that SCI32 games needed the CD flag for things like managing subtitles, but at this point the only use of the CD flag within the SCI32 engine is for the few games that actually have different CD and non-CD versions. So these flags are gone now.
2017-09-12SCI: Omit SysEx delays when sending to MT-32 emulatorColin Snover
Real MIDI devices, and MT-32 in particular, need delays between SysEx messages to ensure sufficient time to receive and process the incoming data buffer. Sending too much data too quickly to these devices can cause them to crash with a buffer overflow. The MT-32 emulator, on the other hand, has no problem receiving SysEx data instantly, so skipping the delays means that games that send lots of data to the MT-32 will start up much faster.
2017-09-12SCI32: Improve chance of rendering non-8bpp AVIsColin Snover
OpenGL backends don't always support the pixel format that is returned by the Indeo 3 decoder when playing the GK2A.AVI from the GK2 demo. If this happens, use the backend's preferred pixel format and convert in software. If a backend doesn't support any 16-bit or 32-bit format, the playback code will error out. This is probably fine, since there are not really any of those any more. Fixes Trac#9994.
2017-09-12SCI32: Fix wrong open folder/doc icons in Phant2 computer on first renderColin Snover
This fixes flickering icons during the word hallucinations.
2017-09-12SCI32: Fix bad positioning of text in Phant2 computer on first renderColin Snover
This fixes the glitchy positioning during the word hallucinations. Fixes Trac#10036.
2017-09-12SCI32: Fix janky document scrolling in Phant2 computer interfaceColin Snover
2017-09-12SCI32: Replace spin loop with kWait in Phant2 alien password screenColin Snover
2017-09-10SCI: Remove dead codeColin Snover
2017-09-10SCI32: Fix bad audio loopingColin Snover
Fixes Trac#10182.
2017-09-09SCI32: Fix whitespace errorsColin Snover
2017-09-09SCI32: Send correct color depth to Phant2Colin Snover
This is not known to fix any particular issue, but the game does set some flags internally if it's running in 256-color Windows, which is possibly undesirable since we do run 16-bit videos regardless.
2017-09-09SCI32: Fix Phant2 movie-vs-game playback volumesColin Snover
This update should give the game the default mix it receives in Windows. If necessary, the half-volume audio bug in the DOS interpreter can be added as an additional hack for this game, since there are still some sub-par audio mixes that might need additional correction (like Curtis talking to Blob when taking her out of the cage in his apartment at the start of the game) which were also bad in the Windows version of the game. Fixes Trac#10165.
2017-09-08SCI32: Fix volume config when changing volume from in-game Phant2 controlsColin Snover
2017-09-08SCI32: Order nulls consistently in kernel signaturesColin Snover
2017-09-08SCI32: Remove redundant kStringGetData implementationColin Snover
This code is identical to the kArrayGetData implementation.
2017-09-08SCI32: Fix kString signatures to allow null references where appropriateColin Snover
The original interpreter allowed most string references to be null references, in which case it would substitute an empty string.
2017-09-08SCI32: Fix crash when changing security level of dead people in Phant2Colin Snover
In the original interpreter, is it valid to pass a null reference to both kArray(GetData) (it just acts as an identity function when the passed argument is not an object) and to kString functions (it always dereferences to an empty string). Fixes Trac#10039.
2017-09-08SCI32: Add missing include for ConfManColin Snover
2017-09-08SCI32: Toggle Phant2 content censoring from game optionsColin Snover
To enable the optional content censoring mode, Phant2 looks for a RESDUK.PAT file, which is normally placed by the game's installer if the user chose to enable censorship. If the file exists, the game reads an unlock password out of the file and asks the user to enter the password when starting a new game to create an uncensored game, or to click a "less intense" button to start the game with censoring. The censorship state of the game is then persisted in the save game file, and installations with the RESDUK.PAT file need to enter the password again in order to restore any of the uncensored saves. Since we do not have an installer that can enable this feature, add a game option toggle to enable/disable censoring (for the releases that have the optional censorship mode) instead so the censored content feature is available for anyone that wants to use it. This flag is restored from ScummVM whenever a save game is loaded, so it can be toggled on or off at any point without needing a separate save game, unlike in the original interpreter.
2017-09-08SCI32: Detect KQ7 2.00b using platform-specific filesColin Snover
The GOG.com release is missing the AVIs used for the intro & ending animations in Windows. I'm unaware of any substantive differences between the DOS and Windows versions otherwise, so just not allowing Windows to be selected as a platform when the video files are missing seems like it should be fine. (Same thing in the opposite direction for a case where the DOS Robot files are missing, though I don't know of a specific case where that is a thing with KQ7 2.00b.)
2017-09-08SCI32: Remove unnecessary calls to hide the virtual hardware cursorColin Snover
2017-09-08SCI: Use SCI32 naming convention for Audio36/Sync36 patch files in SCI32Colin Snover
2017-09-08SCI: Add resource integrity dump command to debuggerColin Snover
2017-09-08SCI: Add method to get resource patch file extensionsColin Snover
2017-09-08SCI: Improve array bounds safety checkColin Snover
There is no practical risk now since the enum and array sizes are the same, but there is no reason to rely on a separate data structure to avoid potential out-of-bounds index use here instead of just checking the array size directly, which is always safe.
2017-09-04COMMON: Add helper macro for printing rectsColin Snover
2017-09-04SCI32: Fix creating over 20 saves in Phant2 native save gameColin Snover
2017-09-04SCI32: Disable save game mangling in Phant2Colin Snover
Fixes Trac#10035.
2017-09-04SCI: Remove already-finished TODOColin Snover
2017-09-04SCI: Allow deep inspection of objects in debuggerColin Snover
2017-09-03SCI: Fix builds with SCI32 disabledColin Snover
2017-09-03SCI32: Exit early from screen shake if engine is quittingColin Snover
2017-09-03SCI32: Ignore bad audio map entries on GK2 DE CD 6Colin Snover
This patch also cleans up the GK2 audio map blacklisting code to reduce the number of redundant checks being made during audio map processing. Fixes Trac#10172.
2017-09-03SCI32: Fix load from launcher for LighthouseColin Snover
Launcher loads of games without a saved Robot were fine, but games that were saved with a Robot (e.g. room 480 when facing the water) would crash.
2017-09-03SCI32: Fix closing a Robot when its Plane has been destroyed alreadyColin Snover
This can happen during game restores in at least Lighthouse, which has a Robot on the menu screen whose plane is deleted prior to a call to kRestoreGame32 (which closes the Robot).
2017-09-03SCI32: Make audio resource size mismatch non-fatalColin Snover
Lighthouse audio.225 in RESSCI.002 (US English 1.0C) triggers this condition; the audio resource says its data is one byte larger than the recorded size in the volume. In this case, just use the smaller of the two values for the size, to avoid overreads.
2017-09-03SCI32: Fix Lighthouse GUIOsColin Snover
2017-09-03SCI32: Correct LSL7 demo GUIOsColin Snover
2017-09-03SCI32: Add standard SRDialog patches to LighthouseColin Snover
2017-09-03SCI32: Fix crash after credits in LighthouseColin Snover
2017-09-03SCI32: Clip videos to the screenColin Snover
This is needed for 8.VMD in Lighthouse (room 380, the credits room), which is rendered partially off the bottom of the screen. OSystem does not accept rects that are offscreen. Technically this video probably should not have been doubled vertically by game scripts, but there is not enough space to fix the rendering with a regular script patch, and it is a very unimportant video.