Commit Graph
651 Commits
Author SHA1 Message Date
Orgad Shaneh 3919f53326 ENGINES: Replace new[]/memset with new[]() 2021-11-10 19:53:15 +01:00
sluicebox cc714bd292 SCI: Only throttle kGameIsRestarting from game loops
Prevents extra speed throttling from being applied when a script queries
the restart flag. Some rooms such as the KQ6 caves and the QFG4 caves do
this on every game cycle. In practice, this extra throttling didn't seem
to have much effect, but the intent is to only throttle game loops and
the script patches that fix inner loops.

Updated script patches to call kGameIsRestarting like game loops.
2021-10-30 13:19:09 -05:00
sluicebox 72bdc5eab0 SCI: Fix HOYLE4 Gin Rummy undercut sound 2021-10-29 14:50:51 -05:00
sluicebox dc70198c28 SCI32: Fix QFG4 upgraded inventory views
Fixes script bugs where items are upgraded but their graphics aren't
2021-10-29 03:51:31 -05:00
sluicebox 27195a1b0a SCI32: Fix GK2 "bad" cursor not appearing 2021-10-19 08:43:45 -05:00
sluicebox ff11be91c3 SCI32; Improve KQ7 cursor script patch
Removes a jump to an unverified offset
2021-10-19 08:40:33 -05:00
sluicebox 388f3a02ef SCI32: Create kScummVMSleep for script patches
We have several SCI32 script patches that replace kGetTime spin loops
with calls to kWait for the intended delay. This prevents blocking
the main thread and allows ScummVM to be responsive and update the
screen. But kWait isn't a simple sleep, it's a throttling function,
and the duration that it sleeps (if any) is determined by the time
since it was last called. kWait was only in SCI16 interpreters so it
had to be restored to SCI32 and this required a further workaround
for Phant2 compatibility.

Now we have a dedicated custom kernel function, kScummVMSleep, which
does a simple sleep so that SCI32 script patch delays are consistent
and the Phant2 workaround isn't needed. This approach is similar to
kScummVMSaveLoad.
2021-10-19 08:40:33 -05:00
sluicebox 6ef5aaec6e SCI: Fix QFG3 crash when angering the guardian
Fixes bug #12968

Unrelated to bd992479b3
2021-09-29 04:45:30 -05:00
sluicebox 4be3f914b2 SCI: Replace QFG1VGA fetch workaround with script patch
Spell animation now travels towards the intended plant as in the
original, and also fixes Mac version
2021-09-09 12:39:17 -05:00
Filippos Karapetis df062c6baa SCI32: Fix game options crash in non-English PQ4 versions - bug #12901
Only enable the speech+subs toggle in the English version of PQ4.
French and German versions feature localized text with English voices.
Also, our injected speech+subtitles view is currently only in English.
2021-09-08 22:45:42 +03:00
sluicebox 21b6ea143f SCI32: Delete Mother Goose Banbury Cross script patch
This script patch caused the bug it claimed to fix.

It appears that during SCI32 development in 2017, a bug sent the horse
at Banbury Cross on an incorrect path behind the fountain instead of in
front of it. This would have looked glitchy since the horse has a higher
priority than the fountain. But this was misdiagnosed as a priority bug,
even though the original doesn't have any problems, and the script was
patched to set the horse to a lower priority. The real ScummVM bug was
fixed some time later, and ever since the horse has taken the correct
path and looked glitchy due to the patch setting the wrong priority.
2021-09-07 14:57:23 -05:00
sluicebox 46771958fa SCI: Fix SQ5 cursor when pressing Tab for inventory
Fixes bug #11619
2021-08-25 03:30:34 -05:00
sluicebox 7ceb99d982 SCI32: Exclude script patch when SCI32 is disabled
Fixes compiler warning
2021-08-10 21:46:46 -05:00
sluicebox 7fab586735 SCI: Update LB1 armor-oiling script patch
Simplifies the patch and updates the comments
2021-08-06 11:08:42 -05:00
sluicebox e8c2671de8 SCI: Improve ECOQUEST2 Ecorder script patches
Simplifies the patches and restores original timing
2021-07-29 21:19:04 -05:00
sluicebox f7058856c6 SCI: Fix KQ6 bugs when clicking Features too quickly
Replaces a room-specific script patch with a generic one that should
fix the bug wherever it occurs. At the time, it wasn't known if this
could occur in other parts of the game under ScummVM, and so patching
the only known symptom was safer.
2021-07-18 19:33:13 -05:00
sluicebox 009b9691dc SCI32: Fix KQ7 volcano erupting after exiting game 2021-07-17 16:52:37 -05:00
sluicebox ccb4aa6f98 SCI32: Fix KQ7 global initialization 2021-07-17 16:52:37 -05:00
sluicebox 2189a8e0fb SCI32: Fix KQ7 statue displaying wrong gems 2021-07-17 16:52:37 -05:00
sluicebox 0174ef9b2e SCI32: Fix KQ7 crash when skipping opening cartoon 2021-06-24 18:27:26 -05:00
sluicebox 1c54777cc5 SCI: Remove broken SQ1 debugging hotkey 2021-06-24 18:27:26 -05:00
sluicebox 0ff7411a1d SCI: Fix SQ1 Spanish broken messages
¡Ay, caramba!
2021-06-18 15:18:49 -05:00
sluicebox ef333e8611 SCI: Fix several SQ1 message and verb script bugs 2021-06-16 22:27:15 -05:00
sluicebox 69576123b8 SCI: Document SQ1 droid script patch 2021-06-14 14:29:16 -05:00
sluicebox 161717aa71 SCI: Fix SQ1 Look messages in Sarien generator room 2021-06-13 17:03:30 -05:00
sluicebox d6f5111523 SCI: Fix SQ1 Orat sounds 2021-06-09 14:28:52 -06:00
sluicebox ff15ffef37 SCI: Update SQ4 Text+Audio patch signature
Makes the signature more precise so that it's not accidentally applied
to the wrong place when a script already contains this patch.

Fixes incompatibility with NRS' SQ4 Update 1.3
2021-05-24 12:39:45 -06:00
sluicebox 9243be0b8d SCI32: Fix GK1 comic-book cartoon timing, animation 2021-05-22 18:47:17 -06:00
sluicebox f3e890889f SCI32: Fix GK1 CD end-game font 2021-05-21 21:42:53 -06:00
sluicebox b60a6a717b SCI: Fix SQ4 easter egg lockup in software store 2021-05-13 16:10:24 -06:00
Orgad Shaneh a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
sluicebox f902d7ce81 SCI32: Fix LSL6 Hi-res Mac volume sync 2021-04-29 14:25:11 -07:00
sluicebox f6dd4fa234 SCI: Add option to use KQ5 CD Windows cursors
Ticket #7800
2021-04-29 09:27:13 -07:00
sluicebox 6b910669b3 SCI: Fix KQ6 'Tickets, only' CD audio interruption 2021-04-26 22:50:10 -07:00
sluicebox 11fec236a2 SCI: Make KQ6 'Tickets, only' script patch a workaround
In addition to simplifying, this fixes the message in Spanish and
Italian versions. The CD patch signature matched these floppy versions
too and altered their correct messages.
2021-04-26 22:50:10 -07:00
Eugene Sandulenko 5e7fe2dc57 JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
sluicebox f58e87baea SCI: Fix QFG3 floating spears in GOG version
Fixes bug #11426
2021-04-07 11:35:11 -07:00
sluicebox cc95809bb5 SCI: Fix compatibility with PQ1VGA & PQ3 GOG versions
GOG includes NRS scripts in PQ1VGA and PQ3 which trigger our
warning about fan patches. The patches introduce several forms of
speed throttling but we already throttle at the engine level.
This changes timing throughout the games and may cause conflicts.

This commit:
- Disables the speed throttling that the patches introduce
- Removes the warning for these versions

GOG versions now play the same as original unpatched ones.
2021-04-05 23:47:45 -07:00
sluicebox 592ab77dc7 SCI: Fix PQ3 road signs not updating
Fixes bug #10254
2021-03-21 22:53:08 -07:00
sluicebox 294d733d9f SCI: Fix Timer rollover bugs in KQ5, MOTHERGOOSE256 2021-03-21 17:32:17 -07:00
sluicebox 27e00993ce SCI: Fix PEPPER glass jar bugs with script patch
Fixes the remaining script bugs and cleans up kMessage
2021-03-20 13:37:37 -07:00
sluicebox 6853b5101f SCI: Convert PQ2 speed workaround to script patch
Cleans up kScriptID and speeds up startup
2021-03-11 08:50:46 -08:00
sluicebox 318e18fd9c SCI: Fix HOYLE4 Crazy Eights transition sound
Fixes bug #10790
2021-03-07 03:11:40 -08:00
sluicebox 6841af484d SCI: Fix KQ1 Demo leprechaun dance speed
Fixes bug #9825
2021-03-02 20:31:18 -08:00
sluicebox 196d666e70 SCI: Remove outdated PHARKAS script patch
This patch removes a call to kDoAudio(13) because at the time it was
written, the subop was unimplemented and didn't return a value.

kDoAudio(13) was later changed to always return 1 so this patch has been
moot for a while. Now we need this script to do what it's supposed to
and detect sound interruptions so I'm about to implement kDoAudio(13).
2021-02-23 18:22:25 -08:00
sluicebox a921c08043 SCI: Fix SQ4 software clerk's random message 2021-02-19 12:25:55 -08:00
sluicebox 045b33cf20 SCI: Fix KQ4 unicorn ride at night 2021-02-11 00:06:37 -08:00
Cameron Cawley 1d9572173a SCI: Fix compilation when SCI32 is disabled 2021-02-04 22:24:41 +02:00
sluicebox a8a6bf4f30 SCI32: Remove PHANT2 spin loop in easter egg 2021-01-31 19:42:02 -08:00
sluicebox 20d052fee4 SCI32: PHANT2 script patch comments 2021-01-31 19:39:21 -08:00