Commit Graph
204 Commits
Author SHA1 Message Date
athrxx 54af166305 COMMON: (AD) - further reduce output of mass add detection
Follow-up to the feature that allows skipping certain ADGF flags.

This here now also allows skipping of incomplete file/md5/size matches. It is basically the same behavior as the graylist. For the mass add all files are treated as if they are on the list.
2022-06-12 10:12:39 +02:00
athrxx e01416ef32 COMMON: (AD) - allow mass add to skip targets with certain ADGF flags
I added skipping for the ADGF_WARNING and ADGF_UNSUPPORTED flags.

For me, this is mostly about fixing bug no. 13282. We sometimes have bogus entries which only have the purpose of presenting the error message (reasons for being unsupported) contained in the extra field of the detection entry.
2022-06-12 10:12:39 +02:00
athrxx 315c3bcf02 COMMON: (AD) - add more file names to graylist
START.EXE and ITEM.DAT
2022-05-15 15:02:04 +02:00
trembyle 45a4fa0286 COMMON: Create detector flag for DVDs
This will be used to differentiate from CD releases.
2022-02-18 11:45:53 -05:00
Eugene Sandulenko 9dae828a38 AD: Allow mixed files path/no path in detection entries 2022-01-13 21:00:41 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko f3eba5e945 AD: Do not report duplicated path components added to the globs 2021-12-05 15:57:04 +01:00
Eugene Sandulenko 02bd4e46a3 AD: Simplified punycoded names processing and fixed support for full paths 2021-12-05 14:23:17 +01:00
Eugene Sandulenko 45b59aa96e AD: Turn _matchFullPaths into kADFlagMatchFullPaths. Adapted Director and SCI 2021-11-30 23:59:23 +01:00
Eugene Sandulenko 0f3e1bfeb6 AD: Add full path entries' path components to globs
This lets us avoid adding globs to the engines when they're
used only for detection.
2021-11-30 23:59:23 +01:00
Eugene Sandulenko 2564ce272a AD: Use hashmap for directory globs.
We truly were using quadratic computational complexity for no reason.
2021-11-29 01:50:03 +01:00
Eugene Sandulenko ccfaf478ab AD: Make sure that we initialize hashmaps. Unfortunately, this leads to less const'ness 2021-11-29 01:50:03 +01:00
Eugene Sandulenko 55dc78960b AD: Refactor of graylist check code 2021-11-29 01:50:03 +01:00
Eugene Sandulenko eef0c2d529 AD: Implement blacklist for detection file names
When only files from the black list are present, we skip
file-based fallback detection for such entries, thus, entries
with 'game.exe', 'install.exe' etc will not generate false
"unknown md5" warnings.

Also, -d0 will report all such entries present in the tables.

Currently, we have 19 entries in AGS, 5 in Director and all 3 entries in ICB
which are violating this rule.
2021-11-27 20:30:28 +01:00
trembyle c740f96f63 COMMON: Normalize and document language maintenance
* Add documentation to add or maintain language values
* Fix and reorder existing entries to match ISO standards
2021-11-11 12:06:15 +01:00
Eugene Sandulenko 9e1edd78ca AD: Improved debug output 2021-11-06 18:11:37 +02:00
Eugene Sandulenko 74baaf020b AD: Pass on information on MD5 calculation method, so it could be reported for unknown md5s 2021-11-06 18:11:37 +02:00
Orgad Shaneh db7699228c MISC: Fix printf long/int64 type mismatches
Cast to [unsigned] long.
2021-10-23 02:48:27 +03:00
Eugene Sandulenko 63870b65fa AD: Properly seek to the tail of file for md5 computation 2021-10-19 21:09:15 +03:00
Eugene Sandulenko 9aba6496f9 AD: Fixed tail md5 comparisons 2021-10-19 13:05:22 +03:00
Eugene Sandulenko 841254e6f1 AD: Fix seeking for tail md5 2021-10-19 13:05:22 +03:00
Eugene Sandulenko 3146b2ffae AD: Allow mixed md5 calculation method to exist for single file 2021-10-19 13:05:22 +03:00
Eugene Sandulenko 0f9b4ef305 AD: Added more debug output 2021-10-17 20:48:03 +03:00
Eugene Sandulenko 7ccce1d97b AD: Compute tail or mac resfork when requested 2021-10-17 20:48:01 +03:00
Eugene Sandulenko d4443ed494 AD: Correctly process small files 2021-10-17 20:48:01 +03:00
Eugene Sandulenko a82de67a5d AD: Reduce code duplication 2021-10-17 20:48:01 +03:00
Eugene Sandulenko 87012cbf21 AD: Added ADGF for calculating md5 from the file tail 2021-10-16 09:24:08 +03:00
Eugene Sandulenko 0e48263e50 AD: Allow both MacResFork and non-resfork entries coexist 2021-10-14 13:55:44 +03:00
Die4Ever 123d4dae0b COMMON: logging hashes when starting a game (#3372)
I figure this would be helpful when people submit their log files, so we know what version of the game they're running.
2021-09-16 11:38:02 +03:00
Eugene Sandulenko 436e47292e BASE: Load engine plugins by name. Fixes bug #12342
This is a degradation from the split of detection plugins. All the
caching code which was present was left with detection plugins which
now make no sense: we always load all detection plugins as a whole.

This commit moves the caching logic over to the Engine plugins.

This opens a question now whether we should move all to UNCACHED_PLUGINS
2021-08-16 20:32:53 +02:00
djsrv 7eb4841065 ALL: Use Path type in Archive functions 2021-08-07 10:44:37 +02:00
Eugene Sandulenko 2760b9f737 AD: Allow punycode in the detection entries 2021-07-27 23:45:29 +02:00
Paul Gilbert 76e2a42240 ENGINES: Convert advanced detector file sizes to int64 2021-07-08 18:24:28 -07:00
ysj1173886760 65f36c33ff ENGINES: extend toDetectedGames to deal with ADDetectedGameExtraInfo. 2021-06-13 14:15:45 +02:00
ysj1173886760 8abdcf6600 ENGINES: dealing with ADDetectedGameExtraInfo after we using fallback detection 2021-06-13 14:15:45 +02:00
SupSuper edb6d99b53 DETECTION: Clear MD5 cache when starting games
This fixes the cache being preserved between different game starts
2021-06-01 19:14:45 +02:00
ysj1173886760 361c723e8a ENGINE: introduce kDebugGlobalDetection which is used for print debug messages of advancedDetector 2021-05-22 01:34:57 +02:00
Eugene Sandulenko 8acff5258a AD: Fix detection for Mac games after the cache was introduced 2021-05-15 17:17:23 +02:00
a/ eba9fa8f30 DETECTOR: Use Common::String::format for performance 2021-05-14 22:35:23 +02:00
a/ 45aa165b80 Modify getFileProperties to cache md5 results 2021-05-14 22:35:23 +02:00
Thierry Crozat 0622c9f8fb ENGINES: Allow engines to decide if unknown variants can be run 2021-04-21 23:11:28 +01:00
Thierry Crozat 6d2a62fe72 AGS: Improve detection
For unknown variants it now checks that the file is actually an
AGS game to avoid false positive due to generic names used by
some of the detection entries (such as 'game.exe'). Also unknown
variants can now be added.
2021-04-17 22:20:59 +01:00
Eugene Sandulenko 342f51b196 AD: Fix compilation 2021-04-16 14:42:55 +02:00
Eugene Sandulenko ec2a50b746 AD: Implemented AGDF_WARNING flag 2021-04-16 14:20:13 +02:00
Eugene Sandulenko 8339fbb9d9 AD: Fix type in constant name 2021-04-16 13:28:43 +02:00
D G Turner 37f2751006 AD: Fix Signed vs. Unsigned GCC Compiler Warning 2021-03-12 19:51:39 +00:00
Henrik "Henke37" Andersson 9b30f4a73d ENGIES: AdvDect needs getValOrDefault 2021-02-12 00:41:23 +01:00
Cameron Cawley 4ced49acd4 ENGINES: Changed AdvancedMetaEngine::createInstance to return a Common::Error 2020-12-04 20:57:14 +00:00
athrxx 3437beffab COMMON: add new flag ADGF_UNSUPPORTED to advanced detector
This will give an error dialog and not actually start the game. The dialog can be customized with a message from the ADGameDescription::extra field.

Some changes have been made to DetectedGame to prevent the string from the extras field to be appended to the game description.
2020-11-08 20:31:39 +01:00
Eugene Sandulenko 702c843e06 AD: Fix hang when autogen target is for a single word 2020-10-22 13:59:55 +02:00