ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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 namespace Tetraedge {
23 
24 const PlainGameDescriptor GAME_NAMES[] = {
25  { "amerzone", "Amerzone" },
26  { "syberia", "Syberia" },
27  { "syberia2", "Syberia II" },
28  { 0, 0 }
29 };
30 
31 const ADGameDescription GAME_DESCRIPTIONS[] = {
32  // Amerzone GOG release
33  {
34  "amerzone",
35  nullptr,
36  AD_ENTRY1s("MacOS/Amerzone", "d:cde4144aeea5a99602ee903554585178", 6380272),
37  Common::UNK_LANG,
38  Common::kPlatformMacintosh,
40  GUIO0()
41  },
42 
43  // Amerzone Android release
44  {
45  "amerzone",
46  nullptr,
47  AD_ENTRY1s("main.1.com.microids.amerzone.obb", "7f84b8030e523f999fcc77351bf86d8a", 646128261),
48  Common::UNK_LANG,
49  Common::kPlatformAndroid,
51  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
52  },
53 
54  // GOG and Steam releases
55  // Note: Full sum of GOG and Steam are different,
56  // but size and first 5000 bytes are the same.
57  {
58  "syberia",
59  nullptr,
60  AD_ENTRY1s("MacOS/Syberia", "d:6951fb8f71fe06f34684564625f73cd8", 10640592),
61  Common::UNK_LANG,
62  Common::kPlatformMacintosh,
64  GUIO2(GAMEOPTION_CORRECT_MOVIE_ASPECT, GAMEOPTION_RESTORE_SCENES)
65  },
66 
67  // iOS "free" release v1.1.3. Not supported as we can't properly support
68  // the in-app purchase to enable the full game.
69  {
70  "syberia",
71  nullptr,
72  AD_ENTRY1s("Syberia", "d:be658efbcf4541f56b656f92a05d271a", 15821120),
73  Common::UNK_LANG,
74  Common::kPlatformIOS,
76  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
77  },
78 
79  // iOS paid release v1.2. Not yet tested.
80  {
81  "syberia",
82  nullptr,
83  AD_ENTRY1s("Syberia", "d:1425707556476013e859979562c5d753", 15794272),
84  Common::UNK_LANG,
85  Common::kPlatformIOS,
87  GUIO2(GAMEOPTION_CORRECT_MOVIE_ASPECT, GAMEOPTION_RESTORE_SCENES)
88  },
89 
90  // Nintendo Switch, from Syberia1-3 cartridge
91  {
92  "syberia",
93  nullptr,
94  AD_ENTRY2s("InGame.lua", "acaf61504a12aebf3862648e04cf29aa", 3920,
95  "texts/de.xml", "14681ac50bbfa50427058d2793b415eb", (uint32_t)-1),
96  Common::UNK_LANG,
97  Common::kPlatformNintendoSwitch,
99  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
100  },
101  {
102  "syberia2",
103  nullptr,
104  AD_ENTRY3s("Debug.lua", "a2ea493892e96bea64013819195c081e", 7024,
105  "InGame.lua", "a7df110fe816cb342574150c6f992964", 4654,
106  "texts/de.xml", "dabad822a917b1f87de8f09eadc3ec85", (uint32_t)-1),
107  Common::UNK_LANG,
108  Common::kPlatformNintendoSwitch,
110  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
111  },
112 
113  // Nintendo Switch, from Syberia1+2 Online bundle, v0
114  {
115  "syberia",
116  nullptr,
117  AD_ENTRY2s("InGame.lua", "ca319e6f014d04baaf1e77f13f89b44f", 4271,
118  "texts/de.xml", "14681ac50bbfa50427058d2793b415eb", (uint32_t)-1),
119  Common::UNK_LANG,
120  Common::kPlatformNintendoSwitch,
122  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
123  },
124 
125  // Nintendo Switch, from Syberia1+2 Online bundle, v196608
126  {
127  "syberia",
128  nullptr,
129  AD_ENTRY2s("InGame.lua", "ca319e6f014d04baaf1e77f13f89b44f", 4271,
130  "texts/de.xml", "17d7a875e81a7761d2b30698bd947c15", (uint32_t)-1),
131  Common::UNK_LANG,
132  Common::kPlatformNintendoSwitch,
133  ADGF_NO_FLAGS | GF_UTF8,
134  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
135  },
136  {
137  "syberia2",
138  nullptr,
139  AD_ENTRY3s("Debug.lua", "a2ea493892e96bea64013819195c081e", 7024,
140  "InGame.lua", "7d7fdb9005675618220e7cd8962c6482", 4745,
141  "texts/de.xml", "78ed3567b3621459229f39c03132e5bb", (uint32_t)-1),
142  Common::UNK_LANG,
143  Common::kPlatformNintendoSwitch,
144  ADGF_NO_FLAGS | GF_UTF8,
145  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
146  },
147 
148  // Android v1.0.5
149  {
150  "syberia",
151  "Extracted",
152  AD_ENTRY1s("InGame.lua", "12ee6a8eade070b905136cd4cdfc3726", 4471),
153  Common::UNK_LANG,
154  Common::kPlatformAndroid,
156  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
157  },
158 
159  {
160  "syberia",
161  nullptr,
162  AD_ENTRY1s("main.12.com.microids.syberia.obb", "b82f9295c4bafe4af58450cbacfd261e", 1000659045),
163  Common::UNK_LANG,
164  Common::kPlatformAndroid,
166  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
167  },
168 
169  // Buka release v1.0.3
170  {
171  "syberia",
172  "Extracted",
173  AD_ENTRY1s("InGame.lua", "6577b0151ca4532e94a63a91c22a17c1", 2646),
174  Common::UNK_LANG,
175  Common::kPlatformAndroid,
177  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
178  },
179  {
180  "syberia",
181  nullptr,
182  AD_ENTRY1s("main.2.ru.buka.syberia1.obb", "7af875e74acfceee5d9b78c705da212e", 771058907),
183  Common::UNK_LANG,
184  Common::kPlatformAndroid,
186  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
187  },
188 
189  // v1.0.1
190  {
191  "syberia",
192  nullptr,
193  AD_ENTRY1s("main.5.com.microids.syberia.obb", "6a39b40edca885bb9508ec09675c1923", 1389534445),
194  Common::UNK_LANG,
195  Common::kPlatformAndroid,
197  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
198  },
199  {
200  "syberia",
201  "Extracted",
202  AD_ENTRY1s("InGame.lua", "8698770015e103725db60a65f3e21657", 2478),
203  Common::UNK_LANG,
204  Common::kPlatformAndroid,
206  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
207  },
208 
209  {
210  "syberia",
211  nullptr,
212  AD_ENTRY1s("InGame.data", "5cb78f2c8aac837fe53596ecfe921b38", 2195),
213  Common::UNK_LANG,
214  Common::kPlatformPS3,
216  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
217  },
218 
219  // v1.0.2 Buka release
220  {
221  "syberia2",
222  nullptr,
223  AD_ENTRY1s("main.2.ru.buka.syberia2.obb", "e9d8516610d33f375a3f6800232e3224", 1038859725),
224  Common::UNK_LANG,
225  Common::kPlatformAndroid,
227  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
228  },
229  {
230  "syberia2",
231  "Extracted",
232  AD_ENTRY2s("Debug.lua", "a2ea493892e96bea64013819195c081e", 7024,
233  "filelist.bin", "eb189789a74286c5023e102ec1c44fd4", 2099822),
234  Common::UNK_LANG,
235  Common::kPlatformAndroid,
237  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
238  },
239 
240  // v1.0.1 Android release
241  {
242  "syberia2",
243  nullptr,
244  AD_ENTRY1s("main.4.com.microids.syberia2.obb", "d8aa60562ffad83d3bcaa7b611fc4299", 1473221971),
245  Common::UNK_LANG,
246  Common::kPlatformAndroid,
248  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
249  },
250  {
251  "syberia2",
252  "Extracted",
253  AD_ENTRY2s("Debug.lua", "a2ea493892e96bea64013819195c081e", 7024,
254  "filelist.bin", "dc40f150ee291a30e0bc6cd8a0127aab", 2100007),
255  Common::UNK_LANG,
256  Common::kPlatformAndroid,
258  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
259  },
260 
261  // v1.0.0 iOS release
262  {
263  "syberia2",
264  nullptr,
265  AD_ENTRY2s("Debug.lua", "a2ea493892e96bea64013819195c081e", 7024,
266  "Info.plist", nullptr, (uint32_t)-1),
267  Common::UNK_LANG,
268  Common::kPlatformIOS,
270  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
271  },
272 
273 
274  // GOG release
275  {
276  "syberia2",
277  nullptr,
278  AD_ENTRY1s("MacOS/Syberia 2", "d:c447586a3cb3d46d6127b467e7fb9a86", 12021136),
279  Common::UNK_LANG,
280  Common::kPlatformMacintosh,
282  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
283  },
284 
285  // iOS release v1.0.1. Not yet tested.
286  {
287  "syberia2",
288  nullptr,
289  AD_ENTRY1s("Syberia 2", "d:17d0ded9b87b5096207117bf0cfb5138", 15881248),
290  Common::UNK_LANG,
291  Common::kPlatformIOS,
293  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
294  },
295 
296  {
297  "syberia2",
298  nullptr,
299  AD_ENTRY1s("Debug.data", "d5cfcba9b725e746df39109e7e1b0564", 7024),
300  Common::UNK_LANG,
301  Common::kPlatformPS3,
303  GUIO1(GAMEOPTION_CORRECT_MOVIE_ASPECT)
304  },
305 
307 };
308 
309 } // namespace Tetraedge
Definition: detection.h:27
Flag to designate not yet officially supported games that are not fit for public testing.
Definition: advancedDetector.h:142
Definition: advancedDetector.h:163
No flags.
Definition: advancedDetector.h:139
Definition: game.h:49
#define AD_ENTRY3s(f1, x1, s1, f2, x2, s2, f3, x3, s3)
Definition: advancedDetector.h:128
#define AD_TABLE_END_MARKER
Definition: advancedDetector.h:326
Definition: advancedDetector.h:145
#define AD_ENTRY2s(f1, x1, s1, f2, x2, s2)
Definition: advancedDetector.h:122
Add "-demo" to gameid.
Definition: advancedDetector.h:156
#define AD_ENTRY1s(f, x, s)
Definition: advancedDetector.h:116