597 Commits

Author SHA1 Message Date
Die4Ever
406ed1ba4c
GROOVIE: fast forwarding improvements
Fast forward until waitForInput again, also fast forward through fade screens
2022-01-19 17:13:12 -06:00
Die4Ever
76a56819a3
GROOVIE: removed debugging fixed savegame dialog
We don't need this dialog anymore since we know how to reproduce it. You
just need to make any move in the triangle puzzle in the chapel.
2022-01-14 04:40:51 -06:00
Die4Ever
3a0e9d98fc
GROOVIE: logic AI puzzles tweaks to easier AI and tests 2022-01-14 02:21:36 -06:00
Die4Ever
c3a82f55ba
GROOVIE: debug logging for o_keyboardaction 2022-01-14 02:21:30 -06:00
Die4Ever
0d851a8f91
GROOVIE: triangle puzzle fixes and improved tests 2022-01-13 07:03:33 -06:00
Die4Ever
640d5a730a
GROOVIE: adjust script timer ticks
ScummVM 2.5.1 was 200ms per tick, I feel like 1000ms per tick is too slow but 200ms is too fast. This makes the biggest difference in T7G puzzles like the cake and knights.

Official releases differ and are not consistent. For example, Clandestiny on iOS uses a timer based on the OS suggested audio buffer size. Windows 95 T7G runs the timer incredibly fast, all of the queens dialog will play before you can even click anything.
2022-01-11 02:26:01 -06:00
Die4Ever
19e9458394
GROOVIE: TLC specify modified dates in detection entries
Modified date from TLCMAIN.GRV
2022-01-11 02:25:54 -06:00
Die4Ever
0151b1ad7d
GROOVIE: add detection for T11H German and TLC DVD
also fixed ScummVM save/load for T11H alternate languages

TLC DVD is the version Liron owns, unknown what the difference is to eriktorbjorn's version
2022-01-09 15:51:47 -06:00
Die4Ever
c1af3e7fe1
GROOVIE: beehive fix easier ai, and fix tests 2022-01-05 16:45:23 -06:00
Die4Ever
3f84fa9be1
GROOVIE: fix cake easier AI 2022-01-05 16:45:23 -06:00
Die4Ever
281857702a
GROOVIE: debug logging for rng 2022-01-05 16:45:16 -06:00
Die4Ever
bf2cee2b27
GROOVIE: remove debug line 2022-01-05 12:28:32 -06:00
Die4Ever
8cd1755a91
GROOVIE: debugging possible savegame bug 2022-01-04 20:40:34 -06:00
Die4Ever
7eeb006164
GROOVIE: lower default sound effect volume 2022-01-04 16:46:24 -06:00
Die4Ever
e60ac866b3
GROOVIE: Clan fix o2_copyfgtobg for "13 Easy Pieces" puzzle 2022-01-04 01:20:02 -06:00
Die4Ever
2fd8736dde
GROOVIE: roq dumpAllSurfaces for debugging 2022-01-03 23:54:29 -06:00
Die4Ever
8054ef2c77
GROOVIE: ROQ fix overlay clearing for train and jewelry puzzles 2022-01-03 22:17:18 -06:00
D G Turner
331f2e1742 GROOVIE: Fix GCC Compiler Set But Unused Variable Warning 2022-01-03 15:32:02 +00:00
Die4Ever
ac79a09538
GROOVIE: fixing drawString redraw WIP 2022-01-02 23:22:02 -06:00
Die4Ever
e6b818881d
GROOVIE: fix detection for T7G 25th Annv 2022-01-02 23:09:05 -06:00
Die4Ever
6116e3cccc
GROOVIE: autosave after puzzle completion 2021-12-30 22:22:53 -06:00
Die4Ever
fe6d20ecd1
GROOVIE: T11H fix blue circles for GameBook notifications 2021-12-30 22:06:35 -06:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Filippos Karapetis
9c25d11982 GROOVIE: Add "var" to the debugger, an alias for the "mem" command 2021-12-11 13:41:17 +02:00
Filippos Karapetis
8383799e61 GROOVIE: Fix infinite loop in the Othello mini-game with easier AI 2021-12-11 13:41:16 +02:00
Die4Ever
021d47cbac
GROOVIE: fix ROQ _restoreArea
Setting it to all 0s meant that the min function gave the wrong results. Needed to top and left to be large numbers so that the min function has the correct affect on them. 9999 is a better choice here than 640 and 480, because before it looked like a full screen rectangle until you realized it was inverted.
2021-12-09 11:42:26 -06:00
Die4Ever
a0acbc8548
GROOVIE: switchToFullScreen retain image, fixes Samantha's moves
This fixes the graphical bug where when Samantha made a mode, especially in the cake puzzle, the background layer was empty. This is because switchToFullScreen was being called AFTER restoreScreen
2021-12-09 07:23:54 -06:00
Paweł Kołodziejski
29ae070865
GROOVIE: Silence compiler warning 2021-12-08 00:32:34 +01:00
Die4Ever
48def9a580
GROOVIE: T11H option for updated credits music
Play the song The Final Hour during the credits instead of reusing midi songs that have already been heard during the game.
2021-12-06 04:27:23 -06:00
Die4Ever
81925cbde4
GROOVIE: T11H play Mr Death song
Patch to play the Mr Death song when the skulls ask you to adjust your brightness. Normally this would play in the launcher for the game but that isn't written in Groovie script.
2021-12-05 21:50:29 -06:00
Die4Ever
e0510db9f7
GROOVIE: couldn't find resource warning
The 11th Hour has bugged scripts that sometimes don't set the variables for the GameBook thumbnails correctly, which causes even the original Win95 exe to crash. This happens occasionallyafter watching an end of chapter cutscene. Changing this to a warning means you don't crash, and the missing thumbnail is a minor compromise.
2021-12-05 11:59:30 -06:00
Die4Ever
a19ecd94ee
GROOVIE: refactor input loop
Some scripts, such as the boat puzzle in Clandestiny, were clearing variables right before the o_inputloopend instruction, which was causing a crash because we were deferring our input actions until then. This change means hotspots execute their actions immediately instead of deferring, this is how the old Win95 exe does it.
2021-12-05 11:59:25 -06:00
Le Philousophe
501fcaf9c3 GROOVIE: Fix build when Groovie 2 games are not enabled 2021-12-04 16:23:57 +01:00
Die4Ever
92c59956cc
GROOVIE: Easier AI options 2021-12-04 08:04:35 -06:00
Filippos Karapetis
9322c029de GROOVIE: Add support for ScummVM load/save screens in 11H 2021-12-04 03:00:56 +02:00
Die4Ever
bbc90f728c
GROOVIE: winerack fixes and more tests 2021-12-01 03:09:36 -06:00
Die4Ever
e3e60bad72
GROOVIE: winerack fixes and tests 2021-11-30 21:59:17 -06:00
Eugene Sandulenko
fdcc1d3271
GROOVIE: Fix warning 2021-12-01 00:06:44 +01:00
Die4Ever
7320140b66
GROOVIE: beehive move overrideMoves into class 2021-11-19 18:12:26 -06:00
Coen Rampen
9bcda8ee1b GROOVIE: Fix intro music and move autosave slot
This commit fixes problems with commit acad766 which disabled the open house
savegame in The 7th Guest and The 11th Hour. These games use slot 0 to write a
special savegame when the game has been completed. This conflicts with ScummVM
autosave functionality, which also uses slot 0 by default. To fix this, the
autosave slot has been moved to slot 24, the last available save slot. The
workaround from commit acad766 for saving in slot 0 has been removed.
The intro music is now fixed by checking for a load of slot 0 and not stopping
the music in this case.
2021-11-19 21:06:43 +01:00
Coen Rampen
acad76683d GROOVIE: Fix 11th Hour scripts loading savegame 0
When The 11th Hour shows the load/restart dialog during the intro, it calls
loadgame with slot 0. It is not clear to me what this means, but it should not
load a savegame, because only slots 1-9 can be used with the original UI. In
ScummVM, this would load the autosave, which probably causes problems, though
the only thing I noticed is it stops the music, which does not happen in the
original interpreter.

This commit adds an exception for The 11th Hour to not load a savegame when
loadgame is called with slot 0. To still support loading the autosave form the
ScummVM UI, the slot is set to 0xFF in this case, which is interpreted by
loadgame to mean actually loading slot 0.
2021-11-17 21:55:09 +01:00
Coen Rampen
cb97a47828 GROOVIE: Add MIDI controller defaults for T7G and 11H
The 7th Guest uses the orchestra drumkit by setting it during initialization,
but not at the start of each track. Some tracks temporarily change the drumkit;
if these tracks are stopped at a bad moment, this changed drumkit remains in
effect. This commit sets the drumkit default to the orchestra drumkit to make
sure it is applied at the start of each track.

Some of the MIDI tracks of The 11th Hour use the modulation controller, but not
all tracks reset this controller at the start. This commit sets the modulation
default to 0 to make sure it is reset at the start of each track.
2021-11-17 21:55:09 +01:00
Coen Rampen
07f91ec50e GROOVIE: Use game volume for 11th Hour MIDI control
This prevents the 11th Hour MIDI control function from setting the user volume.
This volume setting is set by the user in the game config and the game should
not override this. For the playSong operation the volume setting is removed,
because playSong already sets the game volume. For case 3 the commented volume
setting has been replaced by an equivalent game volume call.

I've been unable to trigger either operation by playing through the first part
of the game, so these operations might not be used at all.
2021-11-17 21:53:44 +01:00
Coen Rampen
d042315d0b GROOVIE: Stop current song before playing new song
When playing a new song, ScummVM would update the volume to the standard value
before stopping playback of the current song. This would cause a volume change
right before stopping a song. This commit stops the current song before setting
the volume, which removes the unnecessary volume change.
2021-11-17 21:53:44 +01:00
Coen Rampen
649cb7b450 GROOVIE: Set correct Miles version for 11th Hour
This changes the Miles version for The 11th Hour to version 3. This sets the
pitch bend range to the correct 2 semitones.
2021-11-17 21:53:43 +01:00
Die4Ever
cb473b92f2
GROOVIE: othello some cleanup 2021-11-15 19:47:25 -06:00
Orgad Shaneh
0909948281 GROOVIE: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Filippos Karapetis
ca95bfacee GROOVIE: Format arrays in the Othello mini-game logic 2021-11-14 14:51:31 +02:00
Le Philousophe
7b522dad40 GROOVIE: Fix compilation failure with old GCC 2021-11-14 10:37:21 +01:00
Die4Ever
40b8acad47
GROOVIE: Othello Cursed Coins puzzle for Clandestiny 2021-11-13 19:37:19 -06:00