ScummVM API documentation
game_version.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//=============================================================================
23//
24// Game version constants and information
25//
26//=============================================================================
27
28#ifndef AGS_SHARED_AC_GAME_VERSION_H
29#define AGS_SHARED_AC_GAME_VERSION_H
30
31namespace AGS3 {
32
33/*
34
35Game data versions and changes:
36-------------------------------
37
3812 : 2.3 + 2.4
39
40Versions above are incompatible at the moment.
41
4218 : 2.5.0
4319 : 2.5.1 + 2.52
4420 : 2.5.3
45
46Lip sync data added.
4721 : 2.5.4
4822 : 2.5.5
49
50Variable number of sprites.
5124 : 2.5.6
5225 : 2.6.0
53
54Encrypted global messages and dialogs.
5526 : 2.6.1
56
57Wait() must be called with parameter > 0
58GetRegionAt() clips the input values to the screen size
59Color 0 now means transparent instead of black for text windows
60SetPlayerCharacter() does nothing if the new character is already the player character.
6127 : 2.6.2
62
63Script modules. Fixes bug in the inventory display.
64Clickable GUI is selected with regard for the drawing order.
65Pointer to the "player" variable is now accessed via a dynamic object.
6631 : 2.7.0
6732 : 2.7.2
68
6935 : 3.0.0
70
71Room names are serialized when game is compiled in "debug" mode.
7236 : 3.0.1
73
74Interactions are now scripts. The number for "not set" changed from 0 to -1 for
75a lot of variables (views, sounds).
76Deprecated switch between low-res and high-res native coordinates.
7737 : 3.1.0
78
79Dialogs are now scripts. New character animation speed.
8039 : 3.1.1
81
82Individual character speech animation speed.
8340 : 3.1.2
84
85Audio clips
8641 : 3.2.0
8742 : 3.2.1
88
8943 : 3.3.0
90Added few more game options.
91
9244 : 3.3.1
93Added custom dialog option highlight colour.
94
9545 : 3.4.0.1
96Support for custom game resolution.
97
9846 : 3.4.0.2-.3
99Audio playback speed.
100Custom dialog option rendering extension.
101
10247 : 3.4.0.4
103Custom properties changed at runtime.
104Ambient lighting
105
10648 : 3.4.1
107OPT_RENDERATSCREENRES, extended engine caps check, font vertical offset.
108
10949 : 3.4.1.2
110Font custom line spacing.
111
11250 : 3.5.0.8
113Sprites have "real" resolution. Expanded FontInfo data format.
114Option to allow legacy relative asset resolutions.
115
1163.6.0 :
117Format value is defined as AGS version represented as NN,NN,NN,NN.
118Fonts have adjustable outline
1193.6.0.11:
120New font load flags, control backward compatible font behavior
1213.6.0.16:
122Idle animation speed, modifiable hotspot names, fixed video frame
1233.6.0.21:
124Some adjustments to gui text alignment.
1253.6.1:
126In RTL mode all text is reversed, not only wrappable (labels etc).
1273.6.1.10:
128Disabled automatic SetRestartPoint.
1293.6.1.14:
130Extended game object names, resolving hard length limits.
131*/
132
133enum GameDataVersion {
134 kGameVersion_Undefined = 0,
135 kGameVersion_230 = 12,
136 kGameVersion_240 = 12,
137 kGameVersion_250 = 18,
138 kGameVersion_251 = 19, // same as 2.52
139 kGameVersion_253 = 20,
140 kGameVersion_254 = 21,
141 kGameVersion_255 = 22,
142 kGameVersion_256 = 24,
143 kGameVersion_260 = 25,
144 kGameVersion_261 = 26,
145 kGameVersion_262 = 27,
146 kGameVersion_270 = 31,
147 kGameVersion_272 = 32,
148 kGameVersion_300 = 35,
149 kGameVersion_301 = 36,
150 kGameVersion_310 = 37,
151 kGameVersion_311 = 39,
152 kGameVersion_312 = 40,
153 kGameVersion_320 = 41,
154 kGameVersion_321 = 42,
155 kGameVersion_330 = 43,
156 kGameVersion_331 = 44,
157 kGameVersion_340_1 = 45,
158 kGameVersion_340_2 = 46,
159 kGameVersion_340_4 = 47,
160 kGameVersion_341 = 48,
161 kGameVersion_341_2 = 49,
162 kGameVersion_350 = 50,
163 kGameVersion_360 = 3060000,
164 kGameVersion_360_11 = 3060011,
165 kGameVersion_360_16 = 3060016,
166 kGameVersion_360_21 = 3060021,
167 kGameVersion_361 = 3060100,
168 kGameVersion_361_10 = 3060110,
169 kGameVersion_361_14 = 3060114,
170 kGameVersion_Current = kGameVersion_361_14
171};
172
173} // namespace AGS3
174
175#endif