- Added MD5's for the 5 different Crazy Nick's collections

- Added the MD5's of the French versions of GK2 and SQ6 (bug reports #2846842 and #2846515)
- Added a different game id for QFG1 VGA (SCI1.1), to distinguish it from the older EGA version (SCI0) and added detection for the VGA version in the fallback detector
- Changed some VGA SCI game IDs: lsl1sci -> lsl1vga, pq1sci -> pq1vga, sq1sci -> sq1vga, to distinguish SCI VGA remakes from SCI EGA remakes (like with QFG1VGA)

svn-id: r43891
This commit is contained in:
Filippos Karapetis 2009-09-01 19:05:21 +00:00
parent b0ab5d48f8
commit a191728945
4 changed files with 104 additions and 38 deletions

View file

@ -47,6 +47,11 @@ static const PlainGameDescriptor SciGameTitles[] = {
{"iceman", "Codename: Iceman"},
{"camelot", "Conquests of Camelot: King Arthur, Quest for the Grail"},
{"longbow", "Conquests of the Longbow: The Adventures of Robin Hood"},
{"cnick-lsl", "Crazy Nick's Software Picks: Leisure Suit Larry's Casino"},
{"cnick-kq", "Crazy Nick's Software Picks: King Graham's Board Game Challenge"},
{"cnick-laurabow", "Crazy Nick's Software Picks: Parlor Games with Laura Bow"},
{"cnick-longbow", "Crazy Nick's Software Picks: Robin Hood's Game of Skill and Chance"},
{"cnick-sq", "Crazy Nick's Software Picks: Roger Wilco's Spaced Out Game Pack"},
{"ecoquest", "EcoQuest: The Search for Cetus"},
{"ecoquest2", "EcoQuest II: Lost Secret of the Rainforest"},
{"freddypharkas", "Freddy Pharkas: Frontier Pharmacist"},
@ -56,30 +61,30 @@ static const PlainGameDescriptor SciGameTitles[] = {
{"hoyle3", "Hoyle Official Book of Games: Volume 3"},
{"hoyle4", "Hoyle Classic Card Games"},
{"jones", "Jones in the Fast Lane"},
{"kq1sci", "King's Quest I: Quest for the Crown"},
{"kq4sci", "King's Quest IV: The Perils of Rosella"},
{"kq1sci", "King's Quest I: Quest for the Crown, SCI Remake"},
{"kq4sci", "King's Quest IV: The Perils of Rosella, SCI Remake"},
{"kq5", "King's Quest V: Absence Makes the Heart Go Yonder"},
{"kq6", "King's Quest VI: Heir Today, Gone Tomorrow"},
{"laurabow", "Laura Bow: The Colonel's Bequest"},
{"laurabow2", "Laura Bow 2: The Dagger of Amon Ra"},
{"lsl1sci", "Leisure Suit Larry in the Land of the Lounge Lizards"},
{"lsl1vga", "Leisure Suit Larry in the Land of the Lounge Lizards, VGA Remake"},
{"lsl2", "Leisure Suit Larry 2: Goes Looking for Love (in Several Wrong Places)"},
{"lsl3", "Leisure Suit Larry 3: Passionate Patti in Pursuit of the Pulsating Pectorals"},
{"lsl5", "Leisure Suit Larry 5: Passionate Patti Does a Little Undercover Work"},
{"lsl6", "Leisure Suit Larry 6: Shape Up or Slip Out!"},
{"lslcasino", "Crazy Nick's Software Picks: Leisure Suit Larry's Casino"},
{"fairytales", "Mixed-up Fairy Tales"},
{"mothergoose", "Mixed-Up Mother Goose"},
{"msastrochicken", "Ms. Astro Chicken"},
{"pepper", "Pepper's Adventure in Time"},
{"pq1sci", "Police Quest: In Pursuit of the Death Angel"},
{"pq1vga", "Police Quest: In Pursuit of the Death Angel, VGA Remake"},
{"pq2", "Police Quest II: The Vengeance"},
{"pq3", "Police Quest III: The Kindred"},
{"qfg1", "Quest for Glory I: So You Want to Be a Hero"},
{"qfg1vga", "Quest for Glory I: So You Want to Be a Hero, VGA Remake"},
{"qfg2", "Quest for Glory II: Trial by Fire"},
{"qfg3", "Quest for Glory III: Wages of War"},
{"slater", "Slater & Charlie Go Camping"},
{"sq1sci", "Space Quest I: The Sarien Encounter"},
{"sq1vga", "Space Quest I: The Sarien Encounter, VGA Remake"},
{"sq3", "Space Quest III: The Pirates of Pestulon"},
{"sq4", "Space Quest IV: Roger Wilco and the Time Rippers"},
{"sq5", "Space Quest V: The Next Mutation"},

View file

@ -636,6 +636,26 @@ static const struct SciGameDescription SciGameDescriptions[] = {
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
// Gabriel Knight 2 - French DOS (6-CDs Sierra Originals reedition)
// Executable scanning reports "2.100.002", VERSION file reports "1.0"
{{"gk2", "", {
{"resmap.001", 0, "5752eb78e0dffd6ad1d6ada75fe1222e", 2800},
{"ressci.001", 0, "37d2df0e1ec0603b605d0c87f1c09ce5", 50810410},
{"resmap.002", 0, "1ca433e4bc26383ff134a817386b723e", 1987},
{"ressci.002", 0, "5d07e6b51afaa3a5850b17a3dbd800a0", 41367424},
{"resmap.003", 0, "27b15dea1f9c73e1f5b57467c2d98b80", 1699},
{"ressci.003", 0, "93c561e5d49a804deed4ea4c2eda7386", 35200452},
{"resmap.004", 0, "9e5aaa053785d1ea61b1448df930db1a", 2743},
{"ressci.004", 0, "5d07e6b51afaa3a5850b17a3dbd800a0", 58988750},
{"resmap.005", 0, "6b1f4b59a7af58e1aff21259cc457851", 2077},
{"ressci.005", 0, "1eb5a72744799f5a5518543f5b4c3c79", 37882126},
{"resmap.006", 0, "11b2e722170b8c93fdaa5428e2c7676f", 3001},
{"ressci.006", 0, "4037d941aec39d2e654e20960429aefc", 60568486},
{NULL, 0, NULL, 0}}, Common::FR_FRA, Common::kPlatformPC, 0,
GUIO_NOSPEECH},
0
},
#endif // ENABLE_SCI32
// Hoyle 1 - English DOS (supplied by wibble92 in bug report #2644547)
@ -1228,7 +1248,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 EGA Remake - English DOS (from spookypeanut)
// SCI interpreter version 0.000.510 (or 0.000.577?)
{{"lsl1sci", "EGA Remake", {
{{"lsl1vga", "EGA Remake", {
{"resource.map", 0, "abc0dc50c55de5b9723bb6de193f8756", 3282},
{"resource.000", 0, "d3bceaebef3f7be941c2038b3565161e", 451366},
{"resource.001", 0, "38936d3c68b6f79d3ffb13955713fed7", 591352},
@ -1241,7 +1261,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 VGA Remake - English Amiga (from www.back2roots.org)
// Executable scanning reports "1.004.024"
// SCI interpreter version 1.000.784
{{"lsl1sci", "VGA Remake", {
{{"lsl1vga", "", {
{"resource.map", 0, "7d115a9e27dc8ac71e8d5ef33d589bd5", 3366},
{"resource.000", 0, "e67fd129d5810fc7ad8ea509d891cc00", 363073},
{"resource.001", 0, "24ed6dc01b1e7fbc66c3d63a5994549a", 750465},
@ -1253,7 +1273,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 VGA Remake - English DOS (from spookypeanut)
// Executable scanning reports "1.000.577", VERSION file reports "2.1"
{{"lsl1sci", "VGA Remake", {
{{"lsl1vga", "", {
{"resource.map", 0, "6d04d26466337a1a64b8c6c0eb65c9a9", 3222},
{"resource.000", 0, "d3bceaebef3f7be941c2038b3565161e", 922406},
{"resource.001", 0, "ec20246209d7b19f38989261e5c8f5b8", 1111226},
@ -1264,7 +1284,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 VGA Remake - English DOS (from FRG)
// SCI interpreter version 1.000.510
{{"lsl1sci", "VGA Remake", {
{{"lsl1vga", "", {
{"resource.map", 0, "8606b083b011a0cc4a1fbfc2198a0a77", 3198},
{"resource.000", 0, "d3bceaebef3f7be941c2038b3565161e", 918242},
{"resource.001", 0, "d34cadb11e1aefbb497cf91bc1d3baa7", 1114688},
@ -1275,7 +1295,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 VGA Remake - English DOS Non-Interactive Demo
// SCI interpreter version 1.000.084
{{"lsl1sci", "VGA Remake Demo", {
{{"lsl1vga", "Demo", {
{"resource.map", 0, "434e1f6c39d71647b34f0ee57b2bbd68", 444},
{"resource.001", 0, "0c0768215c562d9dace4a5ca53696cf3", 359913},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, GUIO_NOSPEECH},
@ -1286,7 +1306,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Executable scanning reports "1.SQ4.057", VERSION file reports "1.000"
// This version is known to be corrupted
// SCI interpreter version 1.000.510
{{"lsl1sci", "VGA Remake", {
{{"lsl1vga", "", {
{"resource.map", 0, "4fbe5c25878d51d7b2a68b710de4491b", 3327},
{"resource.000", 0, "5e501a9bf8c753bf4c96158042422f00", 839172},
{"resource.001", 0, "112648995dbc194037f1e4ed2e195910", 1063341},
@ -1299,7 +1319,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Larry 1 VGA Remake - Russian DOS
// Executable scanning reports "1.000.510", VERSION file reports "2.0"
// SCI interpreter version 1.000.510
{{"lsl1sci", "VGA Remake", {
{{"lsl1vga", "", {
{"resource.map", 0, "b54413d35e206d21ae2b2bdb092bd13a", 3198},
{"resource.000", 0, "0d7b2afa666bd36d9535a15d3a837a66", 928566},
{"resource.001", 0, "bc8ca10c807515d959cbd91f9ba47735", 1123759},
@ -1599,15 +1619,47 @@ static const struct SciGameDescription SciGameDescriptions[] = {
0
},
// Leisure Suit Larry's Casino - English DOS (from the Leisure Suit Larry Collection)
// Crazy Nick's Software Picks: Leisure Suit Larry's Casino - English DOS (from the Leisure Suit Larry Collection)
// Executable scanning reports "1.001.029", VERSION file reports "1.000"
{{"lslcasino", "", {
{{"cnick-lsl", "", {
{"resource.map", 0, "194f1578f2624db813c9072359ad1639", 783},
{"resource.001", 0, "3733433b517ec3d14a3331d9ab3842ae", 344830},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
// Crazy Nick's Software Picks: King Graham's Board Game Challenge
{{"cnick-kq", "", {
{"resource.map", 0, "44bc538a5cd24b39ffccc967c0ebf84d", 1137},
{"resource.001", 0, "470e7a4a3504635e70b623c44461e1ac", 451272},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
// Crazy Nick's Software Picks: Parlor Games with Laura Bow
{{"cnick-laurabow", "", {
{"resource.map", 0, "3b826bfe64f8ff1ccf30eef93cd2f727", 999},
{"resource.001", 0, "985ac8db6f636f2b4334c04b0fbb44fb", 336698},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
// Crazy Nick's Software Picks: Robin Hood's Game of Skill and Chance
{{"cnick-longbow", "", {
{"resource.map", 0, "4a5c81f485a2416bde12978506f2fb5f", 897},
{"resource.001", 0, "ef16dc9e867eb8eeb5b13e110b90bd4b", 571466},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
// Crazy Nick's Software Picks: Roger Wilco's Spaced Out Game Pack
{{"cnick-sq", "", {
{"resource.map", 0, "b4d95b02d84e297441bd999d34eaa6b1", 879},
{"resource.001", 0, "82ff2b64a60117886fbcd6a3a8c977c6", 364921},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
0
},
#ifdef ENABLE_SCI32
// Larry 6 - English/German DOS CD - HIRES
// SCI interpreter version 2.100.002
@ -1902,7 +1954,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Police Quest 1 VGA Remake - English DOS (from the Police Quest Collection)
// Executable scanning reports "1.001.029", VERSION file reports "2.000"
{{"pq1sci", "VGA Remake", {
{{"pq1vga", "", {
{"resource.map", 0, "35efa814fb994b1cbdac9611e401da67", 5013},
{"resource.000", 0, "e0d5ddf34eda903a38f0837e2aa7145b", 6401433},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
@ -2177,7 +2229,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Quest for Glory 1 VGA Remake - English DOS
// Executable scanning reports "2.000.411"
{{"qfg1", "VGA Remake", {
{{"qfg1vga", "", {
{"resource.map", 0, "a731fb6c9c0b282443f7027bc8694d4c", 8469},
{"resource.000", 0, "ecace1a2771846b1a8aa1afdd44111a0", 6570147},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, 0, GUIO_NOSPEECH},
@ -2186,7 +2238,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Quest for Glory 1 VGA Remake - English DOS Non-Interactive Demo (from FRG)
// SCI interpreter version 1.001.029
{{"qfg1", "VGA Remake Demo", {
{{"qfg1vga", "Demo", {
{"resource.map", 0, "ac0257051c95a59c0cdc0be24d9b11fa", 729},
{"resource.000", 0, "ec6f5cf369054dd3e5392995e9975b9e", 768218},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, GUIO_NOSPEECH},
@ -2434,7 +2486,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Space Quest 1 VGA Remake - English Amiga (from www.back2roots.org)
// SCI interpreter version 1.000.510 (just a guess)
{{"sq1sci", "VGA Remake", {
{{"sq1vga", "", {
{"resource.map", 0, "106484b372af1d4cbf866472cc2813dc", 6396},
{"resource.000", 0, "cc9d6ace343661ae51ec8bd6e6b00a8c", 340944},
{"resource.001", 0, "59efcfa2268d2f8608f544e2674d8151", 761721},
@ -2449,7 +2501,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Space Quest 1 VGA Remake - English DOS (from the Space Quest Collection)
// Executable scanning reports "T.A00.081", VERSION file reports "2.000"
// SCI interpreter version 1.000.510 (just a guess)
{{"sq1sci", "VGA Remake", {
{{"sq1vga", "", {
{"resource.map", 0, "38a74d8f555a2da9ca4f21d14e3c1d33", 5913},
{"resource.000", 0, "e9d866534f8c84de82e25f2631ff258c", 1016436},
{"resource.001", 0, "a89b7b52064c75b1985b289edc2f5c69", 1038757},
@ -2462,7 +2514,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Space Quest 1 VGA Remake - English Non-Interactive Demo (from FRG)
// SCI interpreter version 1.000.181
{{"sq1sci", "VGA Remake Demo", {
{{"sq1vga", "Demo", {
{"resource.map", 0, "5af709ac5e0e923e0b8174f49978c30e", 636},
{"resource.001", 0, "fd99ea43f57576ded7c86036996346cf", 507642},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, GUIO_NOSPEECH},
@ -2472,7 +2524,7 @@ static const struct SciGameDescription SciGameDescriptions[] = {
// Space Quest 1 VGA Remake - Spanish DOS Floppy (from jvprat)
// Executable scanning reports "T.A00.081", VERSION file reports "2.000"
// SCI interpreter version 1.000.510 (just a guess)
{{"sq1sci", "VGA Remake", {
{{"sq1vga", "", {
{"resource.map", 0, "cee2a67fa7f8f1f520f398110ca1c37e", 6111},
{"resource.000", 0, "945081a73211e0c40e62f709edcd8d1d", 970657},
{"resource.001", 0, "94692dc84c85c93bb8850f58aebf3cfc", 1085687},
@ -2793,12 +2845,12 @@ static const struct SciGameDescription SciGameDescriptions[] = {
0
},
// Space Quest 6 - English DOS/Win3.11 Interactive Demo (from FRG)
// SCI interpreter version 2.100.002 (just a guess)
{{"sq6", "Demo", {
{"resource.map", 0, "368f07b07433db3f819fa3fa0e5efee5", 2572},
{"resource.000", 0, "ab12724e078dea34b624e0d2a38dcd7c", 2272050},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, GUIO_NOSPEECH},
// Space Quest 6 - French DOS/Win3.11 CD (from French magazine Joystick - September 1997)
// Executable scanning reports "2.100.002", VERSION file reports "1.0"
{{"sq6", "", {
{"resource.map", 0, "3c831625931d5079b73ae8c275f52c95", 10534},
{"resource.000", 0, "4195ca940f759424f62b90e262cc1737", 40932397},
{NULL, 0, NULL, 0}}, Common::FR_FRA, Common::kPlatformPC, 0, GUIO_NONE},
0
},
@ -2807,7 +2859,16 @@ static const struct SciGameDescription SciGameDescriptions[] = {
{{"sq6", "", {
{"resource.map", 0, "664d797415484f85c90b1b45aedc7686", 10534},
{"resource.000", 0, "ba87ba91e5bdabb4169dd0df75777722", 40933685},
{NULL, 0, NULL, 0}}, Common::DE_DEU, Common::kPlatformPC, 0, GUIO_NOSPEECH},
{NULL, 0, NULL, 0}}, Common::DE_DEU, Common::kPlatformPC, 0, GUIO_NONE},
0
},
// Space Quest 6 - English DOS/Win3.11 Interactive Demo (from FRG)
// SCI interpreter version 2.100.002 (just a guess)
{{"sq6", "Demo", {
{"resource.map", 0, "368f07b07433db3f819fa3fa0e5efee5", 2572},
{"resource.000", 0, "ab12724e078dea34b624e0d2a38dcd7c", 2272050},
{NULL, 0, NULL, 0}}, Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, GUIO_NOSPEECH},
0
},
#endif // ENABLE_SCI32

View file

@ -62,8 +62,8 @@ static const OldNewIdTableEntry s_oldNewTable[] = {
{ "demo000", "kq1sci", true },
{ "kq1", "kq1sci", false },
{ "kq4", "kq4sci", false },
{ "ll1", "lsl1sci", true },
{ "lsl1", "lsl1sci", false },
{ "ll1", "lsl1vga", true },
{ "lsl1", "lsl1vga", false },
// lsl2 is the same
{ "ll5", "lsl5", true },
// lsl5 is the same
@ -76,8 +76,8 @@ static const OldNewIdTableEntry s_oldNewTable[] = {
{ "trial", "qfg2", false },
{ "hq2demo", "qfg2", true },
{ "thegame", "slater", false },
{ "sq1demo", "sq1sci", true },
{ "sq1", "sq1sci", false },
{ "sq1demo", "sq1vga", true },
{ "sq1", "sq1vga", false },
// sq5 is the same
{ 0, 0, 0 }
@ -124,13 +124,14 @@ const char *convertSierraGameId(const char *gameName, uint32 *gameFlags) {
*gameFlags |= ADGF_DEMO;
return "lsl3";
}
// TODO: lslcasino
// TODO: cnick-lsl, cnick-kq, cnick-laurabow, cnick-longbow and cnick-sq
// (their resources can't be read)
if (sierraId == "tales") {
if (!Common::File::exists("resource.002"))
*gameFlags |= ADGF_DEMO;
return "fairytales";
}
// TODO: pq1sci (its resources can't be read)
// TODO: pq1vga (its resources can't be read)
if (sierraId == "pq3") {
// The pq3 demo comes with resource.000 and resource.001
// The full version was released with several resource.* files,
@ -148,9 +149,8 @@ const char *convertSierraGameId(const char *gameName, uint32 *gameFlags) {
else if (Common::File::exists("resource.sfx"))
return "qfg4";
else
return "qfg1";
return (Common::File::exists("resource.001")) ? "qfg1" : "qfg1vga";
}
// TODO: qfg1 VGA (its resources can't be read)
if (sierraId == "sq3") {
// Both SQ3 and the separately released subgame, Astro Chicken,
// have internal ID "sq3", but Astro Chicken only has "resource.map"

View file

@ -1236,7 +1236,7 @@ static Polygon *convert_polygon(EngineState *s, reg_t polygon) {
// WORKAROUND: broken polygon in LSL1VGA, room 350, after opening elevator
// Polygon has 17 points but size is set to 19
if ((size == 19) && (s->_gameName == "lsl1sci")) {
if ((size == 19) && (s->_gameName == "lsl1vga")) {
if ((s->currentRoomNumber() == 350)
&& (read_point(list, is_reg_t, 18) == Common::Point(108, 137))) {
debug(1, "Applying fix for broken polygon in LSL1VGA, room 350");