Commit Graph
80 Commits
Author SHA1 Message Date
Eugene Sandulenko fb7095f5a4 COMMON: Move all compression-related files to a separate directory 2022-12-01 11:53:02 +01:00
trembyle b9e7b1dfcd COMMON: ENGINES: Correct Czech language ISO code
1. Correct constant in common files
2. Add the old code to obsolete language codes
3. Replace all occurences in engine code
2022-03-04 18:29:02 +01:00
lb_ii 47667b7053 WINTERMUTE: Fix fallback for multipackage games 2022-02-18 00:44:11 +03:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
trembyle 6e1135ee8a ENGINES: Revise language constants to ISO standards
* Use ISO-3166 country codes and ISO-639 language codes
2021-11-11 12:06:15 +01:00
SupSuper c9d67e48a9 BACKENDS: Use FSNode::getName in string operations 2021-08-23 21:22:27 +01:00
Paul Gilbert 005561d305 COMMON: Increase Stream pos, seek, size from int32 to int64 2021-07-08 18:24:28 -07:00
lb_ii 89cd6b0eb0 WINTERMUTE: Improve language packs support 2021-06-19 14:40:02 +02:00
Orgad Shaneh a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Gunnar Birke a94849abc4 WINTERMUTE: Change to backward slashes when looking for file in package 2020-06-24 01:44:56 +02:00
lolbot-iichan 288d8a8a74 WINTERMUTE: Fix & extend non-package file access, add GetFiles() for FoxTail 2020-05-12 10:33:58 +02:00
aviloria 0c3ae8ae68 WINTERMUTE: Fix for the new Serbian game
Added a missing check to fully support the new Serbian reversion1 release
2020-05-04 13:41:11 +02:00
lolbot-iichan 2c68278397 WINTERMUTE: Remove temporary debug 2020-01-21 03:25:00 +02:00
lolbot-iichan 284d6cf98a WINTERMUTE: Add detection flags for SD/HD versions
Some games (e.g. J.U.L.I.A.: Among the Stars) store SD and HD files in
the same directory.
Detection table is now using single game id for SD and HD versions:
'juliastars'.
kADFlagUseExtraAsHint is used at detection.cpp so that AD would support
this case.
New game feature flags introduced: GF_IGNORE_SD_FILES and
GF_IGNORE_HD_FILES.
GF_IGNORE_HD_FILES is used in SD games to ignore all "*_hd.dcp" files.
GF_IGNORE_SD_FILES is used in HD games to ignore all "*_sd.dcp" files.
2020-01-21 03:25:00 +02:00
lolbot-iichan b3901a3d57 WINTERMUTE: Add FoxTail game&engine version properties
FoxTail requires Game to have 2 string options with engine build and
game package version.
BuildVersion is provided with detection tables
GameVersion is extracted from data.dcp and stored in a hashmap
2020-01-11 18:05:39 +02:00
aviloria dccae5f7f1 WINTERMUTE: Solve 'Chinese' language conflicts. Add more game entries (#1969) 2019-12-27 01:39:38 +02:00
aviloria 8bd5da60cd WINTERMUTE: Add Simplified and Traditional Chinese flavours
Latest Steam updates for Reversion titles include Simplified and Traditional Chinese languages that were not properly identified
2019-12-02 23:12:11 +02:00
D G Turner d7a22f72a1 WINTERMUTE: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
2019-11-14 23:28:07 +00:00
lolbot-iichan c593159dd8 WINTERMUTE: Fix language selection regression bug for Reversion
Ooops. Latest refactoring of those if/else blocks was wrong, as a result
Reversion 1&2 ignored all the xlanguage packages. Fixed.
2019-07-22 00:15:07 +03:00
lolbot-iichan 695a671798 WINTERMUTE: More detection records (#1758)
* WINTERMUTE: Add detection and package filtering for Alpha Polaris

Source: https://steamdb.info/app/405780/depots/
NOTE: This is a 2.5D game that is out of ScummVM scope

* WINTERMUTE: Set exact engine version for Project Joe

Download:
http://public.ag.ru/vd/3f983a3b5daf485f6559e7ca1380e47b/demos/14118/joesetup.exe
This also fixes slider issue at Settings menu, since LATEST_VERSION has
sliders broken

* WINTERMUTE: Add detection for Everyday Grey

Fixes https://bugs.scummvm.org/ticket/6563
NOTE: This game seems to be mistakenly marked as 2.5D at Wintermute wiki
Download:
https://web.archive.org/web/20140824221311if_/http://www.krumbukt.com/UnityGames/Everyday_Grey_setup.rar

* WINTERMUTE: Add detection for Apeiron game

Download: https://www.moddb.com/games/apeiron

* WINTERMUTE: Add detection for Palladion demo

Download:
http://www.adventuresplanet.it/contenuti/demo/palladion_demo.exe

* WINTERMUTE: Add detection for Art of Murder: FBI Confidential

Adds checksums from https://bugs.scummvm.org/ticket/6532
NOTE: This is a 2.5D game that is out of ScummVM scope
Buy: https://store.steampowered.com/app/809000

* WINTERMUTE: Add detection for Mental Repairs Inc

This fixes https://bugs.scummvm.org/ticket/6528
Download:
https://games.softpedia.com/get/Freeware-Games/Mental-Repairs-Inc.shtml
NOTE: This is a 2.5D game that is out of ScummVM scope

* WINTERMUTE: Add detection for On the Tracks of Dinosaurs

NOTE: This is a 2.5D game that is out of ScummVM scope
Download: http://reptilesquest.000webhostapp.com/?page=5

* WINTERMUTE: Set engine version for J.U.L.I.A.

Fun fact: J.U.L.I.A. is using 3D features, however this game was
reported as completable with VFX low
Download demo:
http://www.adventuresplanet.it/contenuti/demo/julia_demo_setup.exe

* WINTERMUTE: Add detection for some versions of J.U.L.I.A.: Among the Stars

NOTE: This is a 2.5D game that is out of ScummVM scope

* WINTERMUTE: Add detection for J.U.L.I.A.: Untold

"J.U.L.I.A.: Untold" is a DLC game for "J.U.L.I.A.: Among the Stars"

Buy:
https://store.steampowered.com/app/360340/JULIAAmong_the_Stars__Soundtrack_Hintbook_Untold/
2019-07-21 09:04:41 +03:00
lolbot-iichan 614dfdfbe3 WINTERMUTE: Implement loading files using SavefileManager 2019-07-16 20:24:42 +03:00
lolbot-iichan 9eca2b4c54 WINTERMUTE: Implement saving files using SavefileManager 2019-07-16 20:24:42 +03:00
lolbot-iichan 3c1e883ff0 WINTERMUTE: Add lots of entries to detection table and refactor handling of localization packages
* WINTERMUTE: Add detection for unsupported "Basis Octavus" game

This game is not supported by ScummVM, because it's 2.5D. However, there
are already other 2.5D games in detection table and the intent is to add
all known games, and support 2.5D in ResidualVM later.

* WINTERMUTE: Add detection for Alimardan dilogy

"Alimardan's Mischief" and "Alimardan Meets Merlin" are games by Iranian
developer Resana Shokooh Kavir (http://rskgd.com/)
It seems that Persian versions also exist, I'll surely look at it later:
https://www.digikala.com/product/dkp-75901

There were 2 steam releases for alimardan1:
https://steamdb.info/depot/694421/manifests/

There was only one steam release of alimardan2:
https://steamdb.info/depot/694431/manifests/

* WINTERMUTE: Add detection for Oknytt 1.12

Oknytt had 2 steam releases (1.12 and 1.13):
https://steamdb.info/depot/286321/manifests/
I have downloaded 1.12 and added detection.

* WINTERMUTE: Add empty strings between detection table lines

* WINTERMUTE: Add detection for Steam versions of reversion1 for Windows

Source: https://steamdb.info/depot/270572/manifests/

* WINTERMUTE: Add detection for Steam version of reversion1 for Linux

Source: https://steamdb.info/depot/270571/manifests/

* WINTERMUTE: Fix localization loading for Mac and Linux

Mac and Linux builds of reversion1 & reversion2 does not have any
"languages" folders.
So, we need to filter those files according to filenames too.

Once there is such filtering, there is no need for this overspecific
hack for revision1's xlanguage_pt.dcp.

* WINTERMUTE: Add detection for Steam versions of reversion2 for Windows

Source: https://steamdb.info/depot/281061/manifests/

* WINTERMUTE: Language packages priority for Linux & Mac

* WINTERMUTE: Add detection for Steam versions of reversion2 for Linux

Source: https://steamdb.info/depot/281062/manifests/

* WINTERMUTE: Add detection for Steam versions of reversion2 for Mac

Source: https://steamdb.info/depot/281063/manifests/

* WINTERMUTE: Add detection for Steam versions of reversion1 for Mac

Source: https://steamdb.info/depot/270573/manifests/

* WINTERMUTE: Add detection for old Desura versions of reversion2

Source: https://bugs.scummvm.org/ticket/6564

* WINTERMUTE: Add detection for Spanish versions of reversion1&2

As was shown by windlepoons, xlanguage_* contains additional translation
package, while data.dcp contains original translation (which is
Spanish).

So, even without owning those old releases of reversion1&2, I can wrote
detection tables for them by not looking for any "xlanguage_*.dcp" file.
However, we shouldn't use WME_ENTRY1s for Spanish, because advanced
detector say "new best match, removing all previous candidates" once it
hit a WME_ENTRY2s. Instead, let's just look for data.dcp twice to give
user a choice of several WME_ENTRY2s. Lor Linux, it's WME_ENTRY3s.

* WINTERMUTE: Filter language packages ignoring folder name

There are 4 types of multilang games:
1. Each installation contain a data.dcp package (same for all languages)
+ an additional language package. Other localization packages are not
installed. Those games are: "Helga Deep In Trouble", "Dirty Split",
"Looky".

2. Each installation contain a data.dcp package (same for all languages)
+ a folder with all localization packages + a single "selected" language
package copied to main folder.  "xlanguage_" prefix is usual for
reversion series. Other games usually use "english.dcp", "spanich.dcp",
"czech.dcp", etc.
Those are: "Five Lethal Demons", "Five Magical Amulets", "Dead City",
"Oknytt", "Reversion: The Escape", "Reversion: The Meeting".

3. All localizations are inside data.dcp all-together. Those are: "One
Hellavu Day", "The White Chamber" and "James Peris: No License Nor
Control".

4. Different data.dcp build for each language. All other known games are
here.

This code covers all known filenames for localization packages and
provide several guessworks for ignoring all irrelevant localization
packages.

* WINTERMUTE: Add localization detection for Five Lethal Demons

* WINTERMUTE: Tweak detection for Dead City (Czech)

"english.dcp" is not required to play Dead City in Czech language, so we
don't need to detect it

* WINTERMUTE: Add detection table for Looky in English

I got English version here:
https://bullshit-softworx.itch.io/looky-adventure

* WINTERMUTE: Add detection for Czech versions of Helga

"english.dcp" happen to be optional
2019-06-25 13:28:03 +03:00
lolbot-iichan 8b929a584f WINTERMUTE: Show warning on running 2.5D games
This is shown for the 2 games added in
0d8834b561, as both of them use
ACTOR3DX entities, i.e. 3D models, which are not supported in ScummVM
2019-06-06 07:07:16 +03:00
Willem Jan Palenstijn dba38332d1 WINTERMUTE: Actually use new BasePersistenceManager constructor 2016-03-06 12:26:57 +01:00
Tobia Tesan f29229c0a6 WINTERMUTE: Return Common::String in getGameTargetName() 2016-03-05 20:41:19 +01:00
jammm 6ca8d22fb1 WINTERMUTE: Fixed parentFolder name check when testing for "language"/"languages", Fix bug #6655 (Dead City - hotspot text issue)
Fixed Wintermute incorretly parsing folder names with trailing \

(Windows-only issue)
It seems that calling getParent returns trailing '\' which is absent on POSIX based file systems but not on Windows. This causes Wintermute to load outline_red2.font from russian.dcp, which is not desired. This is fixed by calling it->getName() directly, which returns the folder name (without the trailing '\').
2015-02-22 02:54:45 +05:30
Pawel Kolodziejski 78258151ea WME: added few more games. added ability to detect from exe files. 2014-07-22 21:22:45 +02:00
Johannes Schickel fc5ef58fff WINTERMUTE: Make GPL headers consistent in themselves. 2014-02-18 02:39:40 +01:00
Johannes Schickel e180612ff5 WINTERMUTE: Skip Latvian language package if not selected. 2013-12-05 16:27:57 +01:00
Johannes Schickel ba7bbe6b89 WINTERMUTE: Fix typo in Polish language filename in Reversion1. 2013-12-05 16:26:44 +01:00
Johannes Schickel 67ce244567 WINTERMUTE: Use const_iterator in BaseFileManager::registerPackages. 2013-11-23 21:01:39 +01:00
Johannes Schickel 7409f3eb54 WINTERMUTE: Slight interator usage cleanup. 2013-11-23 21:00:39 +01:00
Johannes Schickel 5166fce2eb WINTERMUTE: Remove another unused variable. 2013-11-23 21:00:39 +01:00
Johannes Schickel 9a78ac265d WINTERMUTE: Make BaseFileManager::registerPackages case agnostic.
The old version did only work as expected when all the filenames were all
lowercase. This seems to be the case for most (or even all?) WME games.
However, we are better safe than sorry and make the code case agnostic.
2013-11-23 21:00:33 +01:00
Johannes Schickel 29fae3914e WINTERMUTE: Remove unused variables. 2013-11-23 20:45:13 +01:00
Einar Johan Trøan Sømåen ff574579bb WINTERMUTE: Add quite a bit of hackery to allow Reversion 1.3 to select languages properly.
Reversion 1.3 seems to have one language file in it’s main-folder, and
a full set in languages/ (not language/ like a few other games), the names
of the language-files are also different from what we’ve seen earlier.
2013-11-18 12:00:34 +01:00
Johannes Schickel 1ce54c217a WINTERMUTE: Fix end of namespace comments. 2013-08-04 00:51:09 +02:00
Einar Johan Trøan Sømåen e296ac1d47 WINTERMUTE: Let engine know both gameid and language of target as well as targetname. 2013-07-31 04:26:28 +02:00
Tobia Tesan 4105805505 WINTERMUTE: Fix for unnecessary "WARNING: getChildren() failed for path:"
FSNode::getChildren() was called assuming that it returns 0 iff success.
Actually, it's the other way around.
2013-06-06 23:33:50 +02:00
Einar Johan Trøan Sømåen d7531327d1 WINTERMUTE: Check results while traversing file-system. 2013-04-17 16:54:27 +02:00
Einar Johan Trøan Sømåen 8430c491f0 WINTERMUTE: Replace strcpy by strlcpy in BaseFileManager 2013-04-17 15:35:09 +02:00
Einar Johan Trøan Sømåen dedde93d1e WINTERMUTE: Avoid REQUIRING wintermute.zip during detection. 2013-03-24 17:41:10 +01:00
Einar Johan Trøan Sømåen 9eff1e514f WINTERMUTE: Move Resources out of binary and into wintermute.zip 2013-01-28 09:20:14 +01:00
Einar Johan Trøan Sømåen 980dc4a456 WINTERMUTE: Replace all NULLs with nullptr. 2013-01-26 18:07:07 +01:00
Willem Jan Palenstijn b4090ead4d WINTERMUTE: Convert CRLF to LF 2012-09-04 22:17:23 +02:00
Einar Johan Trøan Sømåen 158a206086 WINTERMUTE: Use ++it instead of it++ 2012-08-31 20:00:41 +02:00
Einar Johan Trøan Sømåen 101ad689c5 WINTERMUTE: Add language-filtering for Czech, Italian, Polish and Russian.
No detection-support is added for those languages at this point though.
2012-08-13 04:37:07 +02:00
Einar Johan Trøan Sømåen fed19cb66a WINTERMUTE: WinterMute -> Wintermute 2012-08-13 03:42:30 +02:00
Einar Johan Trøan Sømåen 9a5f363972 WINTERMUTE: Make missing-file warnings a debugC
The sound-system attempts to open files in various formats, some of which may not exist, no reason for these to fill the console with output.
2012-08-11 02:34:06 +02:00