Vhati
c58d619e20
SCI32: Fix QFG4 conditional void calls ( #1416 )
...
Fixes unsafe arithmetic in combat, bugs #10138 , #10419 , #10710 , #10814
Supersedes commits 4dc9f0e and 01f3e6c
2018-11-28 02:23:37 +02:00
sluicebox
79b7de93e7
SCI: Add workaround for KQ6 debugger ( #1417 )
2018-11-24 13:03:41 +02:00
sluicebox
209c622010
SCI: GK1 workaround for iconbar uninit param read
...
Uninitialized param1 read when showing iconbar with inventory item
2018-10-23 00:12:03 +03:00
Filippos Karapetis
205ee4d0d0
SCI32: Allow malformed calls to kLock in PQ:SWAT, after the training videos
...
Fixes bug #10699
2018-09-06 22:04:13 +03:00
Filippos Karapetis
37a73d3268
SCI32: More workarounds for Hoyle Classic Games - Poker minigame
2018-09-04 23:43:03 +03:00
Filippos Karapetis
4913cd4eb2
SCI32: Add more workarounds for Hoyle Classic Games
...
This fixes issues with Bridge and Backgammon. Now, Hoyle 5 and its
variants should be in a very good state for testing
2018-09-04 23:36:20 +03:00
Filippos Karapetis
041ab36558
SCI32: Extend a workaround for a script bug in QFG4
...
Fixes a reference to an uninitialized variable after Ad Avis catches you - bug #10694
2018-08-31 00:09:43 +03:00
Filippos Karapetis
380551ed8e
SCI32: Extend workaround for a music fading script bug in QFG4
...
Fixes bug #10421
2018-08-28 01:32:58 +03:00
Filippos Karapetis
01f3e6ccd2
SCI32: Fix a script bug when fighting revenants in QFG4
2018-08-25 13:53:13 +03:00
Filippos Karapetis
a0bad913ae
SCI32: Add a workaround for Shivers
2018-08-25 12:39:13 +03:00
Filippos Karapetis
4dc9f0e66d
SCI32: Fix attacking necrotaurs with the sword in QFG4
...
Fixes bug #10419
2018-08-23 01:59:26 +03:00
Filippos Karapetis
5e2db7a178
SCI32: Add workarounds for OOB reads for parameters
...
These are mostly used to silence known cases, for now. Some workarounds of this type have already been addded
2018-08-23 01:59:26 +03:00
Filippos Karapetis
37c0342b32
SCI32: Extend a script workaround to all screens in QFG4
...
Fixes bug #10420
2018-08-21 08:53:19 +03:00
Filippos Karapetis
8998d00bf2
SCI32: Extend a pathfinding workaround to all screens in QFG4
...
Fixes entry into the Gypsy camp - bug #10418
2018-08-21 08:47:18 +03:00
Filippos Karapetis
06079340ac
SCI32: Add several workarounds for uninitialized reads in Hoyle 5
2018-08-21 03:36:04 +03:00
Colin Snover
f4bc714677
SCI32: Add uninitialized read workaround for LSL6hires
...
Fixes Trac#10361.
2017-12-19 23:49:07 -06:00
Martin Kiewitz
870cd80202
SCI: Crazy Nick's Larry workaround bug #10184
...
Added this already through last commit by accident
Was supposed to get added by this.
Workaround for reading uninitialized temp game bug.
2017-10-08 20:54:59 +02:00
Martin Kiewitz
656de5e360
SCI: Restrict some workarounds to certain temps
...
Also add a bit more documentation / Fix some documentation
2017-10-08 20:52:48 +02:00
Martin Kiewitz
60c2c2867c
SCI: Change index inside workaround tables to an index range
...
So that one can specify an entire range of temp variables
by using just one single entry.
2017-10-07 22:11:25 +02:00
Colin Snover
7d037495be
SCI: Use explicit indexes in castlebrain/islandbrain word search workarounds
2017-10-07 14:50:21 -05:00
Colin Snover
1b669d2489
SCI: Add workaround for uninitialized reads in Island of Dr Brain
...
Leaning on the enter key during a word search puzzle will trigger
this bug, just like in Castle of Dr Brain.
2017-10-07 14:46:01 -05:00
Martin Kiewitz
54cac32003
Revert "SCI: Add workaround for uninitialized reads in Island of Dr Brain"
...
This reverts commit ae8e4fa8e9 .
This change is wrong in any case. It should be specific to temp
14+15 at the very least. I also did not get an answer on what
is actually happening internally. That's not how we should
add workarounds. My review was also still pending.
2017-10-07 11:25:12 +02:00
Colin Snover
ae8e4fa8e9
SCI: Add workaround for uninitialized reads in Island of Dr Brain
...
Leaning on the enter key during a word search puzzle will trigger
this bug, just like in Castle of Dr Brain.
2017-10-07 00:56:00 -05:00
David Fioramonti
ec1cfcbf47
SCI: Add workaround for uninit read during wordsearch in castlebrain
...
During the wordsearch puzzle (room 320 click left door) the
game will crash because of an uninitalized read of temp
variables in word::dispatchEvent (which gets called a lot),
if the player clicks the same letter or different letters
aggressively or holds down the enter key.
Fixes Trac#9783.
2017-10-07 00:56:00 -05:00
David Fioramonti
c88d5519c2
SCI: Add uninitialized read workaround for shoplifting in SQ4CD
...
When in Galaxy Galleria, going into the software store and trying
to shoplift the SQ4 Hintbook will crash the game after you leave
and are electrocuted.
Fixes Trac#10229. Closes gh-1031.
2017-09-27 20:27:33 -05:00
Colin Snover
663d845d63
SCI32: Add workarounds for uninitialized reads in RAMA
2017-09-24 22:56:58 -05:00
Colin Snover
a79bd8b645
SCI32: Add uninitialized read workaround for Phant2
2017-07-30 19:10:50 -05:00
Martin Kiewitz
4668b1655c
SCI32: Add workaround entry for PQ4 floppy city hall room 390
...
To fix an uninitialized read when clicking somewhere to walk around
in city hall.
2017-07-30 22:10:05 +02:00
Colin Snover
ba4fccdb26
SCI32: Add workaround for Torin/LSL7 running with subtitles only
...
Since these later SCI32 games weren't really designed to work with
subtitles-only message mode, if this doesn't work consistently or
breaks the games a lot in other places, the subtitles-only message
type could possibly be implemented in some other way, like by
messing with the game's speech volume global instead.
2017-07-17 23:56:21 -05:00
Colin Snover
3e45309b83
SCI32: Add workaround for Phant1
2017-07-13 17:19:50 -05:00
Colin Snover
9e90624052
SCI32: Add workarounds for PQ4
2017-07-07 23:41:53 -05:00
Colin Snover
1466fb247e
SCI32: Add workaround for SQ6
2017-07-06 19:12:36 -05:00
Colin Snover
dcc4a1bc67
SCI32: Add workaround for invalid kFrameOut call in PQ4
...
Fixes Trac#9848.
2017-06-19 19:56:48 -05:00
Colin Snover
71e2f9d6fb
SCI32: Add workaround for uninitialised read in PQ4
...
Fixes Trac#9847.
2017-06-19 19:56:48 -05:00
Colin Snover
5d04679124
SCI32: Add workaround for invalid kPalVarySetStart call in PQ4
...
Fixes Trac#9845.
2017-06-19 19:56:48 -05:00
Colin Snover
62fd5df8b4
SCI32: Fix uninitialized temp read in Torin
...
Fixes Trac#9810.
2017-06-10 00:21:44 -05:00
Colin Snover
48baf5a4a5
SCI32: Fix uninitialized temp read in LSL6hires
...
Fixes Trac#9811.
2017-06-10 00:13:58 -05:00
Martin Kiewitz
a8475db05a
SCI: SQ4CD: Limit workaround for Russian SQ4 to room 150+900
...
As proposed by bluegr
2017-05-30 22:11:33 +02:00
Martin Kiewitz
266f68c21b
SCI: SQ4CD: Remove room restriction of existing workarounds for end
...
Fixes bug #9812
2017-05-29 23:44:28 +02:00
Colin Snover
4917330038
SCI: Find and store the original static names of objects
...
See code comment in Object::init for more details.
Fixes Trac#9780.
2017-05-20 21:14:18 -05:00
Colin Snover
262ef4de61
SCI32: Fix crash at end of Torin
...
This "fix" is more of a hack, in the interest of making the game
completable. The root cause is a combination of two problems in
the game scripts:
1. Blink::init expects to receive either 0 or 2 arguments, but
it assumes that if it received *any* arguments, it must have
received 2 arguments. This assumption is wrong, though,
because--
2. soTorinWhoAreYou::changeState(0) calls
poPecandEyes::setCycle(Blink) without including a second
argument (the blink speed).
This ends up with the second parameter being some garbage, and
that garbage gets sent to kRandom which then complains about
receiving garbage.
The correct fix for this would be to fix soTorinWhoAreYou (in
script 51400) to pass a second argument to setCycle, but there are
not enough obvious spare bytes for a quick and easy patch, so this
workaround will have to do for now.
Fixes Trac#9779.
2017-05-13 22:46:13 -05:00
Colin Snover
ae628c18d4
SCI32: Add workaround for KQ7
...
Fixes Trac#9763.
2017-05-08 19:45:07 -05:00
Colin Snover
a403523faf
SCI32: Add workaround for KQ7
...
Fixes Trac#9759.
2017-05-06 21:45:41 -05:00
Colin Snover
14e4ea6c85
SCI32: Add workarounds for LSL7
2017-04-23 13:07:25 -05:00
Colin Snover
7b3c9f4a07
SCI32: Add Lighthouse workaround
2017-04-23 13:07:25 -05:00
Colin Snover
f711edc876
SCI32: Add workarounds for RAMA
2017-04-23 13:07:25 -05:00
Colin Snover
2212b82794
SCI32: Add workarounds for Lighthouse
2017-04-23 13:07:25 -05:00
Colin Snover
6c44106083
SCI32: Add workarounds & patches for QFG4
2017-04-22 19:28:35 -05:00
Colin Snover
2df939d33b
SCI32: Add workaround for SQ6 invalid read after a failed save game restore
2017-04-22 13:01:36 -05:00
Colin Snover
a1153661c4
SCI: Stop getCurrentCallOrigin from mutating stack frames
...
This fixes incorrect backtraces after a workaround failure or
other call to getCurrentCallOrigin when one or more stack frames
are calls to local procedures.
2017-03-30 20:49:36 -05:00