diff options
Diffstat (limited to 'engines/gob/detection.cpp')
-rw-r--r-- | engines/gob/detection.cpp | 719 |
1 files changed, 625 insertions, 94 deletions
diff --git a/engines/gob/detection.cpp b/engines/gob/detection.cpp index 1c275185ca..7faef57cc1 100644 --- a/engines/gob/detection.cpp +++ b/engines/gob/detection.cpp @@ -34,7 +34,8 @@ namespace Gob { struct GOBGameDescription { Common::ADGameDescription desc; - uint32 features; + GameType gameType; + int32 features; const char *startTotBase; }; @@ -48,11 +49,15 @@ static const PlainGameDescriptor gobGames[] = { {"gob1cd", "Gobliiins CD"}, {"gob2", "Gobliins 2"}, {"gob2cd", "Gobliins 2 CD"}, + {"ween", "Ween: The Prophecy"}, + {"bargon", "Bargon Attack"}, + {"ajworld", "A.J's World of Discovery"}, {"gob3", "Goblins Quest 3"}, {"gob3cd", "Goblins Quest 3 CD"}, - {"bargon", "Bargon Attack"}, - {"ween", "Ween: The Prophecy"}, + {"lostintime", "Lost in Time"}, + {"inca2", "Inca II: Wiracocha"}, {"woodruff", "The Bizarre Adventures of Woodruff and the Schnibble"}, +// {"dynasty", "The Last Dynasty"}, {0, 0} }; @@ -74,7 +79,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_EGA, + kGameTypeGob1, + kFeaturesEGA, "intro" }, { @@ -86,7 +92,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_EGA, + kGameTypeGob1, + kFeaturesEGA, "intro" }, { // Supplied by Theruler76 in bug report #1201233 @@ -98,7 +105,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesNone, "intro" }, { // CD 1.000 version. @@ -110,7 +118,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.000 version. @@ -122,7 +131,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.000 version. @@ -134,7 +144,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.000 version. @@ -146,7 +157,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.000 version. @@ -158,7 +170,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.02 version. Multilingual @@ -170,7 +183,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.02 version. Multilingual @@ -182,7 +196,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.02 version. Multilingual @@ -194,7 +209,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.02 version. Multilingual @@ -206,7 +222,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { // CD 1.02 version. Multilingual @@ -218,7 +235,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { @@ -230,7 +248,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_DEMO }, - GF_GOB1, + kGameTypeGob1, + kFeaturesNone, "intro" }, { @@ -242,7 +261,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB1, + kGameTypeGob1, + kFeaturesNone, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -254,7 +274,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesAdlib, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -266,7 +287,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesAdlib, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -278,7 +300,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesAdlib, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -290,7 +313,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesAdlib, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -302,7 +326,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesAdlib, "intro" }, { @@ -314,7 +339,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { // Supplied by arcepi in bug report #1659884 @@ -326,7 +352,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -338,7 +365,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { // Supplied by fac76 in bug report #1673397 @@ -354,7 +382,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -366,7 +395,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -378,7 +408,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -390,7 +421,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -402,7 +434,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesNone, "intro" }, { // Supplied by blackwhiteeagle in bug report #1605235 @@ -414,7 +447,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { // Supplied by bgk in bug report #1706861 @@ -426,7 +460,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAtariST, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesNone, "intro" }, { @@ -438,7 +473,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -450,7 +486,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -462,7 +499,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -474,7 +512,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -486,7 +525,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -498,7 +538,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -510,7 +551,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "usa" }, { @@ -522,7 +564,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -534,7 +577,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -546,7 +590,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { @@ -558,7 +603,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { // Supplied by cybot_tmin in bug report #1667743 @@ -570,19 +616,42 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { // Supplied by vampir_raziel in bug report #1658373 { "ween", "", - AD_ENTRY1s("intro.stk", "bfd9d02faf3d8d60a2cf744f95eb48dd", 456570), + { + {"intro.stk", 0, "bfd9d02faf3d8d60a2cf744f95eb48dd", 456570}, + {"ween.ins", 0, "d2cb24292c9ddafcad07e23382027218", 87800}, + {NULL, 0, NULL, 0} + }, EN_GRB, kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesNone, + "intro" + }, + { // Supplied by pwigren in bug report #1764174 + { + "ween", + "", + { + {"intro.stk", 0, "bfd9d02faf3d8d60a2cf744f95eb48dd", 456570}, + {"music__5.snd", 0, "7d1819b9981ecddd53d3aacbc75f1cc8", 13446}, + {NULL, 0, NULL, 0} + }, + EN_GRB, + kPlatformAtariST, + Common::ADGF_NO_FLAGS + }, + kGameTypeWeen, + kFeaturesNone, "intro" }, { // Supplied by vampir_raziel in bug report #1658373 @@ -594,7 +663,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesNone, "intro" }, { // Supplied by vampir_raziel in bug report #1658373 @@ -606,7 +676,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesNone, "intro" }, { // Supplied by vampir_raziel in bug report #1658373 @@ -618,7 +689,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesNone, "intro" }, { @@ -630,7 +702,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAtariST, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesNone, "intro" }, { @@ -642,7 +715,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { // Supplied by cartman_ on #scummvm @@ -654,7 +728,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { // Supplied by glorfindel in bugreport #1722142 @@ -666,7 +741,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "intro" }, { @@ -678,7 +754,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "show" }, { @@ -690,7 +767,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB2, + kGameTypeWeen, + kFeaturesAdlib, "show" }, { @@ -702,7 +780,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, "intro" }, { // Supplied by Trekky in the forums @@ -714,7 +793,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAtariST, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, "intro" }, { // Supplied by cesardark in bug #1681649 @@ -726,7 +806,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, "intro" }, { // Supplied by paul66 in bug #1692667 @@ -738,7 +819,21 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, + "intro" + }, + { // Supplied by pwigren in bugreport #1764174 + { + "bargon", + "", + AD_ENTRY1s("intro.stk", "569d679fe41d49972d34c9fce5930dda", 269825), + EN_ANY, + kPlatformAmiga, + Common::ADGF_NO_FLAGS + }, + kGameTypeBargon, + kFeaturesNone, "intro" }, { // Supplied by glorfindel in bugreport #1722142 @@ -750,7 +845,112 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, + "intro" + }, + { + { + "ajworld", + "", + AD_ENTRY1s("intro.stk", "e453bea7b28a67c930764d945f64d898", 3913628), + EN_ANY, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob2, + kFeaturesAdlib, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "7b7f48490dedc8a7cb999388e2fadbe3", 3930674), + EN_USA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesAdlib, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + EN_USA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + IT_ITA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + DE_DEU, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + ES_ESP, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, + "intro" + }, + { + { + "lostintime", + "", + AD_ENTRY1s("intro.stk", "6263d09e996c1b4e84ef2d650b820e57", 4831170), + EN_GRB, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeLostInTime, + kFeaturesCD, "intro" }, { @@ -762,7 +962,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { // Supplied by fac76 in bug report #1742716 @@ -778,7 +979,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformMacintosh, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -790,7 +992,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { // Supplied by paul66 in bug report #1652352 @@ -802,7 +1005,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -814,7 +1018,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { // Supplied by Paranoimia on #scummvm @@ -826,7 +1031,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -838,7 +1044,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -850,7 +1057,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -862,7 +1070,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesNone, "menu" }, { @@ -874,7 +1083,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformAmiga, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesNone, "menu" }, { @@ -886,7 +1096,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { // Supplied by paul66 and noizert in bug reports #1652352 and #1691230 @@ -898,7 +1109,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { // Supplied by paul66 and noizert in bug reports #1652352 and #1691230 @@ -910,7 +1122,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { // Supplied by paul66 and noizert in bug reports #1652352 and #1691230 @@ -922,7 +1135,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { // Supplied by paul66 and noizert in bug reports #1652352 and #1691230 @@ -934,7 +1148,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { // Supplied by paul66 and noizert in bug reports #1652352 and #1691230 @@ -946,7 +1161,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, "intro" }, { @@ -958,7 +1174,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -970,7 +1187,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -982,7 +1200,8 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -994,7 +1213,73 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_DEMO }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, + "intro" + }, + { + { + "inca2", + "", + AD_ENTRY1s("intro.stk", "47c3b452767c4f49ea7b109143e77c30", 916828), + EN_USA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob3, + kFeaturesCD, + "intro" + }, + { + { + "inca2", + "", + AD_ENTRY1s("intro.stk", "47c3b452767c4f49ea7b109143e77c30", 916828), + DE_DEU, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob3, + kFeaturesCD, + "intro" + }, + { + { + "inca2", + "", + AD_ENTRY1s("intro.stk", "47c3b452767c4f49ea7b109143e77c30", 916828), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob3, + kFeaturesCD, + "intro" + }, + { + { + "inca2", + "", + AD_ENTRY1s("intro.stk", "47c3b452767c4f49ea7b109143e77c30", 916828), + IT_ITA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob3, + kFeaturesCD, + "intro" + }, + { + { + "inca2", + "", + AD_ENTRY1s("intro.stk", "47c3b452767c4f49ea7b109143e77c30", 916828), + ES_ESP, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeGob3, + kFeaturesCD, "intro" }, { @@ -1002,11 +1287,64 @@ static const GOBGameDescription gameDescriptions[] = { "woodruff", "", AD_ENTRY1s("intro.stk", "dccf9d31cb720b34d75487408821b77e", 20296390), - UNK_LANG, + EN_GRB, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "dccf9d31cb720b34d75487408821b77e", 20296390), + DE_DEU, kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_WOODRUFF, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "dccf9d31cb720b34d75487408821b77e", 20296390), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "dccf9d31cb720b34d75487408821b77e", 20296390), + IT_ITA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "dccf9d31cb720b34d75487408821b77e", 20296390), + ES_ESP, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, "intro" }, { @@ -1014,11 +1352,64 @@ static const GOBGameDescription gameDescriptions[] = { "woodruff", "", AD_ENTRY1s("intro.stk", "b50fee012a5abcd0ac2963e1b4b56bec", 20298108), - EN_USA, + EN_GRB, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "b50fee012a5abcd0ac2963e1b4b56bec", 20298108), + DE_DEU, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "b50fee012a5abcd0ac2963e1b4b56bec", 20298108), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "b50fee012a5abcd0ac2963e1b4b56bec", 20298108), + IT_ITA, kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_WOODRUFF, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "b50fee012a5abcd0ac2963e1b4b56bec", 20298108), + ES_ESP, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, "intro" }, { @@ -1030,10 +1421,128 @@ static const GOBGameDescription gameDescriptions[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_WOODRUFF, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by jvprat on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "270529d9b8cce770b1575908a3800b52", 20296452), + ES_ESP, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, "intro" }, - { AD_TABLE_END_MARKER, 0, NULL } + { // Supplied by jvprat on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "270529d9b8cce770b1575908a3800b52", 20296452), + EN_GRB, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by jvprat on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "270529d9b8cce770b1575908a3800b52", 20296452), + DE_DEU, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by jvprat on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "270529d9b8cce770b1575908a3800b52", 20296452), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by jvprat on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "270529d9b8cce770b1575908a3800b52", 20296452), + IT_ITA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by Hkz on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "f4c344023b073782d2fddd9d8b515318", 7069736), + IT_ITA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by Hkz on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "f4c344023b073782d2fddd9d8b515318", 7069736), + DE_DEU, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + { // Supplied by Hkz on #scummvm + { + "woodruff", + "", + AD_ENTRY1s("intro.stk", "f4c344023b073782d2fddd9d8b515318", 7069736), + FR_FRA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + }, + /*{ + { + "dynasty", + "", + AD_ENTRY1s("intro.stk", "6190e32404b672f4bbbc39cf76f41fda", 2511470), + EN_USA, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, + "intro" + },*/ + { AD_TABLE_END_MARKER, kGameTypeNone, kFeaturesNone, NULL } }; static const GOBGameDescription fallbackDescs[] = { @@ -1046,7 +1555,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1, + kGameTypeGob1, + kFeaturesNone, "intro" }, { @@ -1058,7 +1568,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB1 | GF_CD, + kGameTypeGob1, + kFeaturesCD, "intro" }, { @@ -1070,7 +1581,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2, + kGameTypeGob2, + kFeaturesAdlib, "intro" }, { @@ -1082,7 +1594,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB2 | GF_CD, + kGameTypeGob2, + kFeaturesCD, "intro" }, { @@ -1094,7 +1607,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_BARGON, + kGameTypeBargon, + kFeaturesNone, "intro" }, { @@ -1106,7 +1620,8 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3, + kGameTypeGob3, + kFeaturesAdlib, "intro" }, { @@ -1118,7 +1633,21 @@ static const GOBGameDescription fallbackDescs[] = { kPlatformPC, Common::ADGF_NO_FLAGS }, - GF_GOB3 | GF_CD, + kGameTypeGob3, + kFeaturesCD, + "intro" + }, + { + { + "woodruff", + "unknown", + AD_ENTRY1(0, 0), + UNK_LANG, + kPlatformPC, + Common::ADGF_NO_FLAGS + }, + kGameTypeWoodruff, + kFeatures640, "intro" }, }; @@ -1132,6 +1661,7 @@ static const ADFileBasedFallback fileBased[] = { { &fallbackDescs[4], { "intro.stk", "scaa.imd", "scba.imd", "scbf.imd", 0 } }, { &fallbackDescs[5], { "intro.stk", "imd.itk", 0 } }, { &fallbackDescs[6], { "intro.stk", "mus_gob3.lic", 0 } }, + { &fallbackDescs[7], { "intro.stk", "woodruff.itk", 0 } }, { 0, { 0 } } }; @@ -1186,6 +1716,7 @@ bool GobEngine::detectGame() { strcat(_startTot0, "0.tot"); } + _gameType = gd->gameType; _features = gd->features; _language = gd->desc.language; _platform = gd->desc.platform; |