ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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 
31 namespace AGS3 {
32 
33 /*
34 
35 Game data versions and changes:
36 -------------------------------
37 
38 12 : 2.3 + 2.4
39 
40 Versions above are incompatible at the moment.
41 
42 18 : 2.5.0
43 19 : 2.5.1 + 2.52
44 20 : 2.5.3
45 
46 Lip sync data added.
47 21 : 2.5.4
48 22 : 2.5.5
49 
50 Variable number of sprites.
51 24 : 2.5.6
52 25 : 2.6.0
53 
54 Encrypted global messages and dialogs.
55 26 : 2.6.1
56 
57 Wait() must be called with parameter > 0
58 GetRegionAt() clips the input values to the screen size
59 Color 0 now means transparent instead of black for text windows
60 SetPlayerCharacter() does nothing if the new character is already the player character.
61 27 : 2.6.2
62 
63 Script modules. Fixes bug in the inventory display.
64 Clickable GUI is selected with regard for the drawing order.
65 Pointer to the "player" variable is now accessed via a dynamic object.
66 31 : 2.7.0
67 32 : 2.7.2
68 
69 35 : 3.0.0
70 
71 Room names are serialized when game is compiled in "debug" mode.
72 36 : 3.0.1
73 
74 Interactions are now scripts. The number for "not set" changed from 0 to -1 for
75 a lot of variables (views, sounds).
76 Deprecated switch between low-res and high-res native coordinates.
77 37 : 3.1.0
78 
79 Dialogs are now scripts. New character animation speed.
80 39 : 3.1.1
81 
82 Individual character speech animation speed.
83 40 : 3.1.2
84 
85 Audio clips
86 41 : 3.2.0
87 42 : 3.2.1
88 
89 43 : 3.3.0
90 Added few more game options.
91 
92 44 : 3.3.1
93 Added custom dialog option highlight colour.
94 
95 45 : 3.4.0.1
96 Support for custom game resolution.
97 
98 46 : 3.4.0.2-.3
99 Audio playback speed.
100 Custom dialog option rendering extension.
101 
102 47 : 3.4.0.4
103 Custom properties changed at runtime.
104 Ambient lighting
105 
106 48 : 3.4.1
107 OPT_RENDERATSCREENRES, extended engine caps check, font vertical offset.
108 
109 49 : 3.4.1.2
110 Font custom line spacing.
111 
112 50 : 3.5.0.8
113 Sprites have "real" resolution. Expanded FontInfo data format.
114 Option to allow legacy relative asset resolutions.
115 
116 3.6.0 :
117 Format value is defined as AGS version represented as NN,NN,NN,NN.
118 Fonts have adjustable outline
119 3.6.0.11:
120 New font load flags, control backward compatible font behavior
121 3.6.0.16:
122 Idle animation speed, modifiable hotspot names, fixed video frame
123 3.6.0.21:
124 Some adjustments to gui text alignment.
125 3.6.1:
126 In RTL mode all text is reversed, not only wrappable (labels etc).
127 3.6.1.10:
128 Disabled automatic SetRestartPoint.
129 3.6.1.14:
130 Extended game object names, resolving hard length limits.
131 */
132 
133 enum 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
Definition: ags.h:40