Opened 4 months ago

Closed 2 months ago

#13590 closed defect (fixed)

AGS: Heroine's Quest has a newer release

Reported by: Crystal-Shard Owned by: tag2015
Priority: normal Component: Engine: AGS
Version: Keywords:
Cc: Crystal-Shard Game:

Description (last modified by Crystal-Shard)

In https://github.com/scummvm/scummvm/blob/master/engines/ags/detection_tables.h#L4883
the most recent entry for heroinesquest is v1.2.7. The current version on Steam is 1.2.8.

Change History (8)

comment:1 by digitall, 4 months ago

Component: --Unset--Engine: AGS

comment:2 by Crystal-Shard, 4 months ago

Description: modified (diff)

comment:3 by Crystal-Shard, 4 months ago

Description: modified (diff)

comment:4 by Crystal-Shard, 4 months ago

It doesn't give a warning in the ScummVM console though, perhaps the hash is good but the comment is incorrect? Based on the ordinal numbering, I'm guessing that the build labeled "multilang" should actually be 1.2.7, and the build labeled 1.2.7 is actually 1.2.8.

"35b93e905a5aeba8fafd0e5b0f4cb9b6" is tagged as both GAME_ENTRY and GAME_ENTRY_STEAM. This is most likely incorrect, and GAME_ENTRY_STEAM is the correct one.

comment:5 by tag2015, 3 months ago

This is a bit of a borderline case related to how scummvm calculates the checksum for ags games.
The executable for the 1.2.7 version (which is still available on the itch.io page) and the executable for the 1.2.8 steam version have the same filename, filesize, and byte differences start about halfway in the file. Since scummvm uses only the first 5000 bytes for the md5, the hash is identical and the latest detection entry matches both the 1.2.7 and the 1.2.8 versions.

This is the hash for Steam v1.2.8:

$ ./scummvm.exe --md5 --md5-path=/e/SteamLibrary/steamapps/common/Heroine\'s\ Quest/Heroine\'s\ Quest.exe --md5-engine=ags
E:/SteamLibrary/steamapps/common/Heroine's Quest/Heroine's Quest.exe: fa5b449d9d93a9055e0ab6caf0aee77c (first 5000 bytes), 7020827 bytes

while this is itch.io v1.2.7

$ ./scummvm.exe --md5 --md5-path=/f/ScummVM/AGS/H/HeroinesQuest127/Heroine\'s\ Quest.exe --md5-engine=ags
F:/ScummVM/AGS/H/HeroinesQuest127/Heroine's Quest.exe: fa5b449d9d93a9055e0ab6caf0aee77c (first 5000 bytes), 7020827 bytes

The "Multilang" entry should be v1.2.6 instead.
I'm currently working on a PR to add some entries to the tables, I'll also update the comments as needed.

comment:6 by criezy, 3 months ago

Having the same file size and hash for two different versions is not necessarily an issue. If we need to be able to discriminate the two versions we could look at using the option to compute the hash from the tail of the file instead of the head. But I get the feeling this is probably not necessary.

comment:7 by tag2015, 2 months ago

Yes there's not much point in being able to detect the two different versions unless we want to indicate the version number on the launcher, but it seems overkill. I simply updated the comments for the game in question, this bug can be closed I think

comment:8 by criezy, 2 months ago

Owner: set to tag2015
Resolution: fixed
Status: newclosed

Thanks for updating the comments. Closing now.

Note: See TracTickets for help on using tickets.