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.
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.
Depending on other game option checkboxes. This is used to
enable/disable the semi-smooth scrolling checkboxes for FM Towns Loom,
since it's only used when smooth scrolling is enabled.
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.
STARK: Detect TLJ Steam version to fix missing bg resource
An alternative fix for bug https://bugs.scummvm.org/ticket/12762 that replaces the previous fix.
This fix will set a flag at detection time (when adding the game to ScummVM)
so that the Steam version will skip trying to load a background image resource
from the exe file (game.exe), since that specific version is missing a valid version
of this resource which leads to an assertion fault.
It wont be necessary to re-add (redetect) the game, if it has already been added before this fix. The current AdvancedDetector implementation takes care of setting the flag at game launch. (As explained by sev) we run detection on every run and returning the relevant detection entry.
The previous fix was this commit which was based only on version info of the exe file:
565a0559ed
That one also works without having to re-add/re-detect the game, but perhaps just checking
version info is not the best approach.
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.
At some point when splitting the MetaEngine to a detection
plugin and a static meta engine, the former was called
MetaEngine while the latter was called MetaEngineConnect.
Thus was then later change to MetaEngineDetection and
MetaEngine. But some references were left to the former
names in comments and documentation.
This is a doxygen review for 4 header files that have been
identified as high priority for GSoD:
- advancedDetector.h
- metaengine.h
- engine.h
- util.h
It also adds doxy groups to other headers from this folder to
make them appear properly in the structure.
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.