1 /*
2  *  fnames.h - Names of data files for Exult.
3  *
4  *  Copyright (C) 1999  Jeffrey S. Freedman
5  *  Copyright (C) 2000-2013  The Exult Team
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 2 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, write to the Free Software
19  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20  */
21 
22 #ifndef FNAMES_H
23 #define FNAMES_H    1
24 
25 // This will get prepended with different things at runtime
26 // depending on the OS
27 #define USER_CONFIGURATION_FILE "exult.cfg"
28 
29 // without that define utils.cc errors with a "use of undeclared identifier EXULT_DATADIR"
30 #if (defined(MACOSX) || defined(__IPHONEOS__)) && !defined(EXULT_DATADIR)
31 #define EXULT_DATADIR   "data"
32 #endif
33 
34 /*
35  *  Here are the files we use:
36  */
37 #define GAMEDAT     "<GAMEDAT>/"
38 #define SHAPES_VGA  "<STATIC>/shapes.vga"
39 #define PATCH_SHAPES    "<PATCH>/shapes.vga"
40 #define FACES_VGA   "<STATIC>/faces.vga"
41 #define PATCH_FACES "<PATCH>/faces.vga"
42 #define GUMPS_VGA   "<STATIC>/gumps.vga"
43 #define PATCH_GUMPS "<PATCH>/gumps.vga"
44 #define FONTS_VGA   "<STATIC>/fonts.vga"
45 #define PATCH_FONTS "<PATCH>/fonts.vga"
46 #define SPRITES_VGA     "<STATIC>/sprites.vga"
47 #define PATCH_SPRITES   "<PATCH>/sprites.vga"
48 #define MAINSHP_FLX     "<STATIC>/mainshp.flx"
49 #define PATCH_MAINSHP   "<PATCH>/mainshp.flx"
50 #define ENDSHAPE_FLX    "<STATIC>/endshape.flx"
51 #define PATCH_ENDSHAPE  "<PATCH>/endshape.flx"
52 #define SHPDIMS     "<STATIC>/shpdims.dat"
53 #define PATCH_SHPDIMS   "<PATCH>/shpdims.dat"
54 #define TFA     "<STATIC>/tfa.dat"
55 #define PATCH_TFA   "<PATCH>/tfa.dat"
56 #define WGTVOL      "<STATIC>/wgtvol.dat"
57 #define PATCH_WGTVOL    "<PATCH>/wgtvol.dat"
58 #define U7CHUNKS    "<STATIC>/u7chunks"
59 #define PATCH_U7CHUNKS  "<PATCH>/u7chunks"
60 #define U7MAP       "<STATIC>/u7map"
61 #define PATCH_U7MAP "<PATCH>/u7map"
62 #define TEXT_FLX    "<STATIC>/text.flx"
63 #define PATCH_TEXT  "<PATCH>/text.flx"
64 #define PATCH_EXULTMSG "<PATCH>/exultmsg.txt"
65 #define U7IFIX      "<STATIC>/u7ifix"
66 #define PATCH_U7IFIX    "<PATCH>/u7ifix"
67 #define U7IREG      "<GAMEDAT>/u7ireg"
68 #define MULTIMAP_DIR    "/map"
69 #define PALETTES_FLX    "<STATIC>/palettes.flx"
70 #define PATCH_PALETTES  "<PATCH>/palettes.flx"
71 #define INTRO_DAT   "<STATIC>/intro.dat"
72 #define PATCH_INTRO "<PATCH>/intro.dat"
73 #define INTROPAL_DAT    "<STATIC>/intropal.dat"
74 #define PATCH_INTROPAL  "<PATCH>/intropal.dat"
75 #define U7NBUF_DAT  "<GAMEDAT>/u7nbuf.dat"
76 #define NPC_DAT     "<GAMEDAT>/npc.dat"
77 #define MONSNPCS    "<GAMEDAT>/monsnpcs.dat"
78 #define USEDAT      "<GAMEDAT>/usecode.dat"
79 #define USEVARS     "<GAMEDAT>/usecode.var"
80 #define FLAGINIT    "<GAMEDAT>/flaginit"
81 #define GWINDAT     "<GAMEDAT>/gamewin.dat"
82 #define GSCHEDULE   "<GAMEDAT>/schedule.dat"
83 #define SCHEDULE_DAT    "<STATIC>/schedule.dat"
84 #define SHPDIMS_DAT "<STATIC>/shpdims.dat"
85 #define INITGAME    "<STATIC>/initgame.dat"
86 #define PATCH_INITGAME  "<PATCH>/initgame.dat"
87 #define USECODE     "<STATIC>/usecode"
88 #define PATCH_USECODE   "<PATCH>/usecode"
89 #define POINTERS    "<STATIC>/pointers.shp"
90 #define PATCH_POINTERS  "<PATCH>/pointers.shp"
91 #define MAINMUS     "<STATIC>/mt32mus.dat"
92 #define MAINMUS_AD      "<STATIC>/adlibmus.dat"
93 #define INTROMUS    "<STATIC>/intrordm.dat"
94 #define INTROMUS_AD "<STATIC>/introadm.dat"
95 #define XMIDI_AD    "<STATIC>/xmidi.ad"
96 #define XMIDI_MT    "<STATIC>/xmidi.mt"
97 #define U7SPEECH    "<STATIC>/u7speech.spc"
98 #define SISPEECH    "<STATIC>/sispeech.spc"
99 #define PATCH_U7SPEECH  "<PATCH>/u7speech.spc"
100 #define PATCH_SISPEECH  "<PATCH>/sispeech.spc"
101 #define XFORMTBL        "<STATIC>/xform.tbl"
102 #define PATCH_XFORMS    "<PATCH>/xform.tbl"
103 #define BLENDS          "<STATIC>/blends.dat"
104 #define PATCH_BLENDS    "<PATCH>/blends.dat"
105 #define MONSTERS    "<STATIC>/monsters.dat"
106 #define PATCH_MONSTERS  "<PATCH>/monsters.dat"
107 #define EQUIP       "<STATIC>/equip.dat"
108 #define PATCH_EQUIP "<PATCH>/equip.dat"
109 #define READY       "<STATIC>/ready.dat"
110 #define PATCH_READY "<PATCH>/ready.dat"
111 #define WIHH        "<STATIC>/wihh.dat"
112 #define PATCH_WIHH  "<PATCH>/wihh.dat"
113 #define IDENTITY    "<GAMEDAT>/identity"
114 #define ENDGAME     "<STATIC>/endgame.dat"
115 #define PATCH_ENDGAME       "<PATCH>/endgame.dat"
116 #define ENDSCORE_XMI    "<STATIC>/endscore.xmi"
117 #define PATCH_ENDSCORE  "<PATCH>/endscore.xmi"
118 #define MIDITMPFILE     "u7midi"
119 #define MIDISFXFILE     "u7sfx"
120 #define SAVENAME    "<SAVEGAME>/exult%02d%s.sav"
121 #define SAVENAME2   "<SAVEGAME>/exult*%s.sav"
122 #define INTROSND    "<STATIC>/introsnd.dat"
123 #define PATCH_INTROSND  "<PATCH>/introsnd.dat"
124 #define PATCH_ARMOR "<PATCH>/armor.dat"
125 #define ARMOR       "<STATIC>/armor.dat"
126 #define WEAPONS     "<STATIC>/weapons.dat"
127 #define PATCH_WEAPONS   "<PATCH>/weapons.dat"
128 #define AMMO        "<STATIC>/ammo.dat"
129 #define PATCH_AMMO  "<PATCH>/ammo.dat"
130 #define PAPERDOL    "<STATIC>/paperdol.vga"
131 #define PATCH_PAPERDOL  "<PATCH>/paperdol.vga"
132 #define OCCLUDE     "<STATIC>/occlude.dat"
133 #define PATCH_OCCLUDE   "<PATCH>/occlude.dat"
134 #define CONTAINER   "<STATIC>/container.dat"
135 #define PATCH_CONTAINER "<PATCH>/container.dat"
136 
137 #define GSCRNSHOT   "<GAMEDAT>/scrnshot.shp"
138 #define GSAVEINFO   "<GAMEDAT>/saveinfo.dat"
139 #define GEXULTVER   "<GAMEDAT>/exult.ver"
140 #define GNEWGAMEVER "<GAMEDAT>/newgame.ver"
141 #define KEYRINGDAT  "<GAMEDAT>/keyring.dat"
142 #define NOTEBOOKXML "<GAMEDAT>/notebook.xml"
143 
144 #define TEXTMSGS    "<STATIC>/textmsg.txt"
145 #define PATCH_TEXTMSGS  "<PATCH>/textmsg.txt"
146 #define PATCH_MINIMAPS  "<PATCH>/minimaps.vga"
147 
148 #define R_SINTRO "<STATIC>/r_sintro.xmi"
149 #define A_SINTRO "<STATIC>/a_sintro.xmi"
150 #define R_SEND "<STATIC>/r_send.xmi"
151 #define A_SEND "<STATIC>/a_send.xmi"
152 
153 #define U7VOICE_FLX  "<STATIC>/u7voice.flx"
154 #define MAINMENU_TIM "<STATIC>/mainmenu.tim"
155 #define INTRO_TIM "<STATIC>/u7intro.tim"
156 
157 #define EXULT_FLX "<DATA>/exult.flx"
158 #define EXULT_BG_FLX "<DATA>/exult_bg.flx"
159 #define EXULT_SI_FLX "<DATA>/exult_si.flx"
160 #define EXULT_GAM_FLX "<DATA>/exult_%s.flx"
161 
162 #define BUNDLE_EXULT_FLX "<BUNDLE>/exult.flx"
163 #define BUNDLE_EXULT_BG_FLX "<BUNDLE>/exult_bg.flx"
164 #define BUNDLE_EXULT_SI_FLX "<BUNDLE>/exult_si.flx"
165 #define BUNDLE_EXULT_GAM_FLX "<BUNDLE>/exult_%s.flx"
166 
167 #define AUTONOTES   "autonotes.txt"
168 #define PATCH_AUTONOTES "<PATCH>/autonotes.txt"
169 
170 #define PATCH_KEYS  "<PATCH>/patchkeys.txt"
171 
172 #define EXULT_SERVER    "<GAMEDAT>/exultserver"
173 
174 #define NUM_FONTS   (20)
175 
176 // U7 game names in "exult.cfg":
177 #define CFG_BG_NAME     "blackgate"
178 #define CFG_BG_DE_NAME  "schwarzepforte"
179 #define CFG_BG_ES_NAME  "puertanegra"
180 #define CFG_BG_FR_NAME  "portenoire"
181 #define CFG_FOV_NAME    "forgeofvirtue"
182 #define CFG_SI_NAME     "serpentisle"
183 #define CFG_SI_ES_NAME  "islaserpiente"
184 #define CFG_SS_NAME     "silverseed"
185 #define CFG_SIB_NAME    "serpentbeta"
186 
187 // U7 game titles in "exult.cfg":
188 #define CFG_BG_TITLE    "ULTIMA VII\nTHE BLACK GATE"
189 #define CFG_BG_DE_TITLE "ULTIMA VII\nDIE SCHWARZE PFORTE"
190 #define CFG_BG_ES_TITLE "ULTIMA VII\nLA PUERTA NEGRA"
191 #define CFG_BG_FR_TITLE "ULTIMA VII\nLA PORTE NOIRE"
192 #define CFG_FOV_TITLE   "ULTIMA VII\nTHE FORGE OF VIRTUE"
193 #define CFG_SI_TITLE    "ULTIMA VII PART 2\nSERPENT ISLE"
194 #define CFG_SI_ES_TITLE "ULTIMA VII PART 2\nLA ISLA SERPIENTE"
195 #define CFG_SS_TITLE    "ULTIMA VII PART 2\nTHE SILVER SEED"
196 #define CFG_SIB_TITLE   "ULTIMA VII PART 2\nSERPENT ISLE BETA"
197 
198 // Exult SFX Packages:
199 #define SFX_ROLAND_BG   "sqsfxbg.flx"
200 #define SFX_ROLAND_SI   "sqsfxsi.flx"
201 #define SFX_BLASTER_BG  "jmsfx.flx"
202 #define SFX_BLASTER_SI  "jmsisfx.flx"
203 #define SFX_MIDIFILE    "midisfx.flx"
204 
205 #endif
206 
207