ScummVM API documentation
detection_tables.h
1/* ScummVM - Graphic Adventure Engine
2 *
3 * ScummVM is the legal property of its developers, whose names
4 * are too numerous to list here. Please refer to the COPYRIGHT
5 * file distributed with this source distribution.
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *
20 */
21
22#include "engines/advancedDetector.h"
23#include "engines/mm/detection.h"
24
25namespace MM {
26
27#define GUIO_XEEN GUIO5(GAMEOPTION_SHOW_ITEM_COSTS, GAMEOPTION_DURABLE_ARMOR, GAMEOPTION_SHOW_HP_SP_BARS, GAMEOPTION_COPY_PROTECTION, GAMEOPTION_TTS)
28
29static const MightAndMagicGameDescription GAME_DESCRIPTIONS[] = {
30 {
31 // Might and Magic 1
32 {
33 "mm1",
34 nullptr,
35 AD_ENTRY1s("wallpix.dta", "86a7ef03fd5bf434d83012b07fa92680", 123059),
36 Common::EN_ANY,
37 Common::kPlatformDOS,
39 GUIO1(GAMEOPTION_TTS)
40 },
41 GType_MightAndMagic1,
42 0
43 },
44
45 {
46 // Might and Magic 1 (Enhanced)
47 {
48 "mm1_enh",
49 nullptr,
50 AD_ENTRY1s("wallpix.dta", "86a7ef03fd5bf434d83012b07fa92680", 123059),
51 Common::EN_ANY,
52 Common::kPlatformDOS,
54 GUIO1(GAMEOPTION_TTS)
55 },
56 GType_MightAndMagic1,
57 GF_ENHANCED
58 },
59
60 {
61 // Might and Magic 1 (Gfx Pack)
62 // This isn't directly supported, because using it would allow playing
63 // the game without actually having the original game files
64 {
65 "mm1",
66 nullptr,
67 AD_ENTRY1s("wallpix.dta", "64af4dad1f86aedf307e8184a9f12ba9", 164220),
68 Common::EN_ANY,
69 Common::kPlatformDOS,
71 GUIO1(GAMEOPTION_TTS)
72 },
73 GType_MightAndMagic1,
74 GF_GFX_PACK
75 },
76
77 {
78 // World of Xeen
79 {
80 "worldofxeen",
81 nullptr,
82 AD_ENTRY2s("xeen.cc", "0cffbab533d9afe140e69ec93096f43e", 13435646,
83 "dark.cc", "df194483ecea6abc0511637d712ced7c", 11217676),
84 Common::EN_ANY,
85 Common::kPlatformDOS,
87 GUIO_XEEN
88 },
89 GType_WorldOfXeen,
90 0
91 },
92
93 {
94 // World of Xeen (Monster Spawn Mod v1.0), Bugreport #12714
95 {
96 "worldofxeen",
97 "Monster Spawn Mod v1.0",
98 AD_ENTRY2s("xeen.cc", "37767811a52fb54a8f2be3b45acc91a9", 13536623,
99 "dark.cc", "a4dcb0731ad3818fdd908f17230ee773", 11222393),
100 Common::EN_ANY,
101 Common::kPlatformDOS,
103 GUIO_XEEN
104 },
105 GType_WorldOfXeen,
106 0
107 },
108
109 {
110 // World of Xeen (Bestseller Games Magazine #6 + #8 German)
111 {
112 "worldofxeen",
113 nullptr,
114 {
115 {"xeen.cc", 0, "f4e4b3ddc43bd102dbe1637f480f1fa1", 13214150},
116 {"dark.cc", 0, "84a86bbbc5f2fe96c0b0325485ed8203", 11173657},
117 {"intro.cc", 0, "e47a7ab0223cf32b2d87eed91d024c35", 8899953},
119 },
120 Common::DE_DEU,
121 Common::kPlatformDOS,
123 GUIO_XEEN
124 },
125 GType_WorldOfXeen,
126 0
127 },
128
129 {
130 // World of Xeen (GOG German)
131 {
132 "worldofxeen",
133 nullptr,
134 AD_ENTRY2s("xeen.cc", "f4e4b3ddc43bd102dbe1637f480f1fa1", 13214150,
135 "dark.cc", "84a86bbbc5f2fe96c0b0325485ed8203", 11168312),
136 Common::DE_DEU,
137 Common::kPlatformDOS,
139 GUIO_XEEN
140 },
141 GType_WorldOfXeen,
142 0
143 },
144
145 {
146 // World of Xeen (2 CD talkie version)
147 {
148 "worldofxeen",
149 "CD",
150 AD_ENTRY2s("xeen.cc", "964078c53f649937ce9a1a3596ce3d9f", 13438429,
151 "dark.cc", "7f755ce39ea614fa6adb016f8bfc6e43", 11288403),
152 Common::EN_ANY,
153 Common::kPlatformDOS,
154 ADGF_CD,
155 GUIO_XEEN
156 },
157 GType_WorldOfXeen,
158 0
159 },
160
161 {
162 // World of Xeen French- French untested
163 // https://bugs.scummvm.org/ticket/12559
164 {
165 "worldofxeen",
166 nullptr,
167 AD_ENTRY2s("xeen.cc", "b9bb33bbd3783e7930ddedb189d7ba54", 13203565,
168 "dark.cc", "437618b6b5e76f174719dcb529edbfbb", 11152923),
169 Common::FR_FRA,
170 Common::kPlatformDOS,
172 GUIO_XEEN
173 },
174 GType_WorldOfXeen,
175 0
176 },
177
178 {
179 // World of Xeen, Spanish fan-translation
180 // https://bugs.scummvm.org/ticket/14976
181 {
182 "worldofxeen",
183 "CD",
184 AD_ENTRY2s("xeen.cc", "8ca98eba894b104e82963b0f4952e795", 13445166,
185 "dark.cc", "9f319d7457e822f2484fa1daa26b2687", 11331280),
186 Common::ES_ESP,
187 Common::kPlatformDOS,
188 ADGF_CD,
189 GUIO_XEEN
190 },
191 GType_WorldOfXeen,
192 0
193 },
194
195 {
196 // World of Xeen (DOS non-interactive demo)
197 {
198 "worldofxeen",
199 "Non-Interactive Demo",
200 AD_ENTRY1s("demo.cc", "bcd6775323833dc8dd2d930c3b98da03", 4556916),
201 Common::EN_ANY,
202 Common::kPlatformDOS,
204 GUIO0()
205 },
206 GType_WorldOfXeen,
207 0
208 },
209
210 {
211 // Clouds of Xeen
212 {
213 "cloudsofxeen",
214 nullptr,
215 AD_ENTRY1s("xeen.cc", "0cffbab533d9afe140e69ec93096f43e", 13435646),
216 Common::EN_ANY,
217 Common::kPlatformDOS,
219 GUIO_XEEN
220 },
221 GType_Clouds,
222 0
223 },
224
225 {
226 // Clouds of Xeen (GOG, Bestseller Games Magazine #6 German)
227 {
228 "cloudsofxeen",
229 nullptr,
230 AD_ENTRY1s("xeen.cc", "f4e4b3ddc43bd102dbe1637f480f1fa1", 13214150),
231 Common::DE_DEU,
232 Common::kPlatformDOS,
234 GUIO_XEEN
235 },
236 GType_Clouds,
237 0
238 },
239
240 {
241 // Clouds of Xeen, Russian fan-translation
242 {
243 "cloudsofxeen",
244 nullptr,
245 AD_ENTRY1s("xeen.cc", "1dead179f65bbb1ba11dd51d69768489", 13417817),
246 Common::RU_RUS,
247 Common::kPlatformDOS,
249 GUIO_XEEN
250 },
251 GType_Clouds,
252 0
253 },
254
255 {
256 // Clouds of Xeen (Chinese)
257 {
258 "cloudsofxeen",
259 nullptr,
260 AD_ENTRY1s("xeen.cc", "1fea0587fe139b13f4effa2b5791bd80", 13859999),
261 Common::ZH_TWN,
262 Common::kPlatformDOS,
264 GUIO_XEEN
265 },
266 GType_Clouds,
267 0
268 },
269
270 {
271 // Clouds of Xeen- French untested
272 // https://bugs.scummvm.org/ticket/12557
273 {
274 "cloudsofxeen",
275 nullptr,
276 AD_ENTRY1s("xeen.cc", "b9bb33bbd3783e7930ddedb189d7ba54", 13203565),
277 Common::FR_FRA,
278 Common::kPlatformDOS,
280 GUIO_XEEN
281 },
282 GType_Clouds,
283 0
284 },
285
286 {
287 // Clouds of Xeen (DOS non-interactive demo)
288 {
289 "cloudsofxeen",
290 "Non-Interactive Demo",
291 AD_ENTRY1s("logobak.raw", "68425e43f4b0c74f5ff448d1f3c9855c", 64000),
292 Common::EN_ANY,
293 Common::kPlatformDOS,
295 GUIO0()
296 },
297 GType_Clouds,
298 0
299 },
300
301 {
302 // Darkside of Xeen
303 {
304 "darksideofxeen",
305 nullptr,
306 AD_ENTRY1s("dark.cc", "df194483ecea6abc0511637d712ced7c", 11217676),
307 Common::EN_ANY,
308 Common::kPlatformDOS,
310 GUIO_XEEN
311 },
312 GType_DarkSide,
313 0
314 },
315
316 {
317 // Darkside of Xeen (GOG German)
318 {
319 "darksideofxeen",
320 nullptr,
321 AD_ENTRY1s("dark.cc", "84a86bbbc5f2fe96c0b0325485ed8203", 11168312),
322 Common::DE_DEU,
323 Common::kPlatformDOS,
325 GUIO_XEEN
326 },
327 GType_DarkSide,
328 0
329 },
330
331 {
332 // Darkside of Xeen (Bestseller Games Magazine #8 German)
333 {
334 "darksideofxeen",
335 nullptr,
336 AD_ENTRY2s("dark.cc", "84a86bbbc5f2fe96c0b0325485ed8203", 11173657,
337 "intro.cc", "e47a7ab0223cf32b2d87eed91d024c35", 8899953),
338 Common::DE_DEU,
339 Common::kPlatformDOS,
341 GUIO_XEEN
342 },
343 GType_DarkSide,
344 0
345 },
346
347 {
348 // Darkside of Xeen (Chinese)
349 {
350 "darksideofxeen",
351 nullptr,
352 AD_ENTRY1s("dark.cc", "4dcbcdb0be885afebc2ab6c9e60c434e", 11137412),
353 Common::ZH_TWN,
354 Common::kPlatformDOS,
356 GUIO_XEEN
357 },
358 GType_DarkSide,
359 0
360 },
361
362 {
363 // Darkside of Xeen- French untested
364 // https://bugs.scummvm.org/ticket/12558
365 {
366 "darksideofxeen",
367 nullptr,
368 AD_ENTRY1s("dark.cc", "437618b6b5e76f174719dcb529edbfbb", 11152923),
369 Common::FR_FRA,
370 Common::kPlatformDOS,
372 GUIO_XEEN
373 },
374 GType_DarkSide,
375 0
376 },
377
378 {
379 // Darkside of Xeen (DOS non-interactive demo)
380 {
381 "darksideofxeen",
382 "Non-Interactive Demo",
383 AD_ENTRY1s("demo.cc", "2c320db380a479652a27a604c7c357b6", 5017135),
384 Common::EN_ANY,
385 Common::kPlatformDOS,
387 GUIO0()
388 },
389 GType_DarkSide,
390 0
391 },
392
393 {
394 // Swords of Xeen
395 {
396 "swordsofxeen",
397 nullptr,
398 AD_ENTRY1s("swrd.cc", "0d51c3457070cc7d1a596da9241924a5", 13026924),
399 Common::EN_ANY,
400 Common::kPlatformDOS,
402 GUIO_XEEN
403 },
404 GType_Swords,
405 0
406 },
407
408 { AD_TABLE_END_MARKER, 0, 0 }
409};
410
411} // End of namespace MM
#define AD_ENTRY2s(f1, x1, s1, f2, x2, s2)
Definition: advancedDetector.h:122
#define AD_LISTEND
Definition: advancedDetector.h:104
#define AD_TABLE_END_MARKER
Definition: advancedDetector.h:328
#define AD_ENTRY1s(f, x, s)
Definition: advancedDetector.h:116
@ ADGF_DEMO
Add "-demo" to gameid.
Definition: advancedDetector.h:157
@ ADGF_NO_FLAGS
No flags.
Definition: advancedDetector.h:139
@ ADGF_CD
Add "-cd" to gameid.
Definition: advancedDetector.h:155
@ ADGF_UNSTABLE
Flag to designate not yet officially supported games that are not fit for public testing.
Definition: advancedDetector.h:143
Definition: detection.h:27