TSAGE: Detect using MD5 based on 5000 bytes instead of unlimited

This commit is contained in:
Strangerke 2011-06-10 23:33:42 +02:00
parent afbfb056f7
commit 6183658555
2 changed files with 23 additions and 43 deletions

View File

@ -73,17 +73,7 @@ enum {
class TSageMetaEngine : public AdvancedMetaEngine {
public:
TSageMetaEngine() : AdvancedMetaEngine(tSage::gameDescriptions, sizeof(tSage::tSageGameDescription), tSageGameTitles) {
// FIXME: Using 0 for md5Bytes means that the whole file will checked.
// this is usually a bad idea, as it can cause terribly slowdowns
// (remember, the MD5 is recomputed whenever the game starts, and also
// for many, many files when doing a "Mass Add" from the launcher. Even
// if the files you currently use for detection are all just a few
// kilobytes, you should still set a value here, just in case in the
// future you'll end up detecting with somewhat bigger files.
// I recommend using the default of 5000 here; if this is not possible,
// try a value like 10000 or 1024*1024, but be prepared to here from
// some suffering users ;)
params.md5Bytes = 0;
params.md5Bytes = 5000;
params.singleid = "tsage";
params.guioptions = Common::GUIO_NOSPEECH;
}

View File

@ -24,7 +24,7 @@ namespace tSage {
static const tSageGameDescription gameDescriptions[] = {
// Ringworld English CD version
// Ringworld CD and First Wave versions
{
{
"ring",
@ -38,26 +38,12 @@ static const tSageGameDescription gameDescriptions[] = {
GType_Ringworld,
GF_CD | GF_ALT_REGIONS
},
// Ringworld First Wave English CD version
{
{
"ring",
"CD",
AD_ENTRY1s("ring.rlb", "0a25b4ee58d44a54425c0b47e5096bbc", 37847618),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_NO_FLAGS,
Common::GUIO_NONE
},
GType_Ringworld,
GF_CD | GF_ALT_REGIONS
},
// Ringworld English Floppy version
{
{
"ring",
"Floppy",
AD_ENTRY1s("ring.rlb", "61f78f68a56832ae95fe06748c403234", 8438770),
AD_ENTRY1s("ring.rlb", "7b7f0c5b37b58fa5ec06ebb2ca0d0d9d", 8438770),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_NO_FLAGS,
@ -66,6 +52,8 @@ static const tSageGameDescription gameDescriptions[] = {
GType_Ringworld,
GF_FLOPPY
},
#if 0
// FIXME: Compute new MD5s based on 5000 bytes instead of 0 (unlimited)
// Ringworld English Floppy Demo #1 version
{
{
@ -80,6 +68,7 @@ static const tSageGameDescription gameDescriptions[] = {
GType_Ringworld,
GF_FLOPPY | GF_DEMO
},
// FIXME: Compute new MD5s based on 5000 bytes instead of 0 (unlimited)
// Ringworld English Floppy Demo #2 version
{
{
@ -94,21 +83,7 @@ static const tSageGameDescription gameDescriptions[] = {
GType_Ringworld,
GF_FLOPPY | GF_DEMO | GF_ALT_REGIONS
},
// Blue Force
{
{
"blueforce",
"",
AD_ENTRY1s("blue.rlb", "467da43c848cc0e800b547c59d84ccb1", 10032614),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_NO_FLAGS,
Common::GUIO_NONE
},
GType_BlueForce,
GF_FLOPPY
},
// FIXME: Compute new MD5s based on 5000 bytes instead of 0 (unlimited)
// Blue Force floppy
{
{
@ -123,12 +98,27 @@ static const tSageGameDescription gameDescriptions[] = {
GType_BlueForce,
GF_FLOPPY
},
#endif
// Blue Force
{
{
"blueforce",
"",
AD_ENTRY1s("blue.rlb", "17eabb456cb1546c66baf1aff387ba6a", 10032614),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_NO_FLAGS,
Common::GUIO_NONE
},
GType_BlueForce,
GF_FLOPPY
},
// Blue Force CD and First Wave use the same files
{
{
"blueforce",
"CD",
AD_ENTRY1s("blue.rlb", "ac29f38184cb3b874ea18523059872ba", 63863322),
AD_ENTRY1s("blue.rlb", "99983f48cb218f1f3760cf2f9a7ef11d", 63863322),
Common::EN_ANY,
Common::kPlatformPC,
ADGF_NO_FLAGS,