Commit Graph
61 Commits
Author SHA1 Message Date
Die4Ever 9106c454a0 GROOVIE: UHP fix savename length 2022-02-12 16:08:49 -06:00
Die4Ever 6427952177 GROOVIE: TLC fix savegame name length 2022-02-12 15:17:24 -06:00
Die4Ever b2e5d7b453 GROOVIE: reset _fastForwarding when exiting a puzzle in order to ensure you don't accidentally skip the after-puzzle cutscene, or skip the introductory dialog for a puzzle 2022-02-10 20:51:26 -06:00
Die4Ever 24a6be39ef GROOVIE: fix autosave bugs
directSave was clobbering script variables with the savename, so now the savename is handled outside of the script variables. Also o_returnscript now sets _wantAutosave so that the autosave can be executed the next time it's safe, inside of o_inputloopend to ensure the game is in a stable state
2022-02-10 20:51:13 -06:00
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
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01: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
Filippos Karapetis 19b75e2793 GROOVIE: Add game logic stub for the wine rack puzzle in Clandestiny 2021-10-28 13:45:27 +03:00
Die4Ever ffb1dc3610 GROOVIE: T11H Pente AI puzzle 2021-10-27 19:09:49 -05:00
Filippos Karapetis fc7f51afb0 GROOVIE: Add stubs for the Pente (11H) + Othello (Clan/UHP) mini-games
Also, perform some clean up of the logic in the cell mini-game (T7G)
2021-10-23 20:19:32 +03:00
Eugene Sandulenko eca09acb7c GROOVIE: Added skeleton for Triangle puzzle 2021-10-23 19:54:57 +03:00
Filippos Karapetis 14e773ba07 GROOVIE: Add missing ifdefs for groovie2 game logic 2021-10-23 02:46:47 +03:00
Filippos Karapetis 692bad517f GROOVIE: Restructure GroovieV2 game logic
- Move Groovie2 mini-game logic orchestration inside script opcode 0x42
- Move 11h mousetrap logic into a separate file
- Move music file names for MusicPlayerClan inside music.cpp
- Remove the now obsolete ClanGame and T11hGame classes
2021-10-23 02:42:39 +03:00
Filippos Karapetis 739c608829 GROOVIE: Separate game logic for 11h and Clan, and reuse it for UHP 2021-10-22 01:12:39 +03:00
Filippos Karapetis 8cf46e2f7f GROOVIE: Restructure game-specific logic code and video code 2021-09-16 09:25:47 +03:00
Die4Ever 174f3c5074 GROOVIE: Clandestiny savegame fixes
Fixes crashes when you have saved games. Also makes the preview images on saved games work.
2021-09-16 09:21:24 +03:00
Die4Ever cfd928f296 GROOVIE: cleanup signed/unsigned compiler warnings 2021-09-15 19:13:57 +03:00
Die4Ever c0f489fe09 GROOVIE: fix op 0x0A o2_bf0on 2021-09-15 19:13:57 +03:00
Die4Ever 8da84fdda9 GROOVIE: added background sound effects
For The 11th Hour, this means things like clock chimes and wind sounds. This also fixes the end of the game where you have until the clock chimes 12 to choose a door.

- also renamed the stub ops functions

- sound effect volume setting for Groovie 2 games

- stop sound effects when playing an FMV (an interlaced video)
2021-09-15 19:13:57 +03:00
Die4Ever 87e98d1e86 GROOVIE: stubs for T11H AI puzzles
This is enough to get through the whole game, although you have to use the GameBook to solve mouse trap, chapel, and cake. Modern art has rudimentary AI. Beehive and Pente both auto-solve. Updated o2_stub49 so the player can choose an ending.
2021-09-15 19:13:57 +03:00
Die4Ever 3494ce638c GROOVIE: add o2_copybgtofg and fix o_videofromstring1 2021-09-15 19:13:57 +03:00
Die4Ever ee91abb26a GROOVIE: fix compiler errors 2021-09-15 19:13:57 +03:00
Christian Lindemann 3d8cb28b8c GROOVIE: Bugfix. Videos with ID0 were skipped 2021-09-15 19:13:57 +03:00
Christian Lindemann 9c68ffb79f GROOVIE: Overlay corrections, some other bugfixes 2021-09-15 19:13:57 +03:00
Christian Lindemann d3493f2352 GROOVIE: Bugfixes ROQ Player / Stubs for 11H Staufs moves 2021-09-15 19:13:57 +03:00
Christian Lindemann 6525123663 GROOVIE: TLC Music / Small Bugfixes / Better Comments 2021-09-15 19:13:57 +03:00
Christian Lindemann 1a006ea3e3 GROOVIE: Add support for TLC 2021-09-15 19:13:57 +03:00
Christian Lindemann 1e2c395d12 GROOVIE: Add printfunction opcode for V2 engine 2021-09-15 19:13:57 +03:00
Christian Lindemann b5e62ffdaf GROOVIE: Update game detection. Add TLC-DE and engine can differ between each game 2021-09-15 19:13:57 +03:00
aryanrawlani28 a56dc094b9 ENGINES: ALL: Move detection_enums -> detection.h
- Cleans up headers quite a bit.
2020-10-03 14:56:36 +02:00
aryanrawlani28 29ceb07959 ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28 8189a05316 ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28 563cef1071 GROOVIE: Split detection features & adapt to new plugins. 2020-10-03 14:56:36 +02:00
NMIError 52d5d60907 GROOVIE: Fix 7th Guest GM initialization
The 7th Guest initializes GM devices during the "loading GM drivers"
screen, which is a normal video that plays "audio" that consists of
initialization messages (mostly Roland GS sysexes). The original
interpreter plays this video twice, which is enough time to play the
entire INI_SC.XMI initialization file. ScummVM apparently plays video
a bit faster, and there is not enough time to play the entire init
file. Because of this GM initialization is incomplete.

I've fixed this by making the init video loop until the audio has
finished playing.

Note: I have only tested this with the original DOS version of the
game. I don't know if the file reference I've used to identify the
GM init video is the same on other platforms. If not, this change
might not work and/or have unintended results.
2020-03-16 01:40:10 +02:00
Scott Thomas 75c6f2fd60 GROOVIE: Fix GMM loads, block saves in a puzzle
Loading and returning from subscripts alters the _variables
used, thus are not guaranteed to create a valid save state.
Loading a save should be valid at any time, as long as the
active script being run is restored to the base game script.
2018-11-03 15:15:32 +00:00
David Fioramonti de1a35a9d9 GROOVIE: Allow saving via GMM and increase save slots to 25
If the user enters in an invalid description for the save then it will be
simplified by the saved name cache process in Script::savegame.

I checked this with t7g, but not with the 11th guest or any other Groovie game.

The original in-game loading/saving can still only access the first 10 save
slots (0-9).

Its possible to saving via the GMM when the game is interactive.

Loading a game saved via the gui using the original in-game load menu
works fine.

Saving via the GMM with timestamp works, but only only saves the characters
up to the first non-alpha non-letter characer.
2018-08-03 14:53:43 +02:00
Filippos Karapetis 5dc03107fd GROOVIE: Add a stub for opcode 42 in V2 games
This was o_cellmove in T7G (the Microscope puzzle)
2014-11-03 11:40:38 +02:00
Johannes Schickel 8f55aed475 GROOVIE: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Matthew Hoops aa49b38c5a Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	engines/groovie/script.cpp
2011-05-31 14:16:29 -04:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Matthew Hoops a1d41da096 Merge remote branch 'upstream/master' into t7g-ios
Conflicts:
	audio/decoders/qdm2.h
	common/util.cpp
	engines/groovie/music.cpp
	engines/groovie/resource.h
	video/qt_decoder.cpp
	video/qt_decoder.h
2011-05-11 00:30:28 -04:00
Scott Thomas 8e9dbe5c3d GROOVIE: Use uint32 when searching for a video id by name
This brings ResMan::getRef into line with the rest of the engine.
2011-04-15 21:46:06 +09:30
Scott Thomas 7c39b844b8 GROOVIE: Add additional play-speed modes to T7G.
These two speed modes enable faster movement throughout the mansion.
iOS mode matches the behavior of the official iOS release while
tweaked mode additionally uses original framerate for 'teeth'
animations.
2011-04-07 23:38:35 +09:30
Filippos Karapetis 9938661ffa Surface is a struct, not a class
svn-id: r49883
2010-06-15 18:36:05 +00:00
Jordi Vilalta Prat 0e95d8a5fa Groovie:
- Rewritten T7G's font code to subclass Graphics::Font and make it cleaner.
- Use theme fonts for the Mac version of T7G (which used ugly system fonts
  originally). With this the Mac version should be completable.
- Cleanup include interdependencies.

svn-id: r49487
2010-06-07 17:14:42 +00:00
Max Horn d78dba3bca COMMON: Move Common::RandomSource to common/random.*
svn-id: r48279
2010-03-18 15:07:11 +00:00
Scott Thomas a55e0531e8 11H: Add some more opcode stubs
svn-id: r46524
2009-12-24 08:35:11 +00:00
Scott Thomas 58f8ec5d57 Groovie: Sync changes from 16bpp branch. Hopefully no regressions sneak in here
svn-id: r43598
2009-08-21 13:57:03 +00:00
Scott Thomas 8820b6166e T7G: Fix bug #2831041 by implementing opcode responsible for starting music partway through a video
svn-id: r43068
2009-08-05 13:57:40 +00:00
Eugene Sandulenko 3f6159a968 Proper implementation of microscope puzzle.
svn-id: r42634
2009-07-20 22:15:37 +00:00