; KeeperFX campaign file
; Version for Evil Keeper campaign.

[common]
NAME = Evil Keeper campaign
; Folders storing data files for this campaign
LEVELS_LOCATION = campgns/evilkeep
LAND_LOCATION   = campgns/evilkeep_lnd
MEDIA_LOCATION = ldata
; Single player level numbers, and bonus levels for 'Reveal hidden land' boxes
SINGLE_LEVELS =   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20
BONUS_LEVELS =    0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
; Multiplayer level numbers
;MULTI_LEVELS = 50 51 52 53 54 60 61 62 63 64 70 71 72 73 74
; Extra levels: full moon, new moon
;EXTRA_LEVELS = 105
; File which stores credits (located in land location folder)
CREDITS = ekcredts.txt
; High score table parameters (num of entries and file name)
HIGH_SCORES = 1024 scr_evlk.dat
; Land view at start and end of the game
LAND_VIEW_START = rgmap00 viframe00
LAND_VIEW_END = rgmap21 viframe21
LAND_MARKERS = ENSIGNS
; Ambient sound samples - good and bad sound
LAND_AMBIENT = 189 190
; Intro and outro; note that the intro here is for campaign, not for whole game
OUTRO_MOVIE = outromix.smk

; Text strings file used for ingame info messages and objectives (not for GUI)
; The file can contain up to 1024 strings, separated by null character.
; If there's no file for current language, then first entry is selected by default.
; If your campaign supports only one language, you may comment out all lines but one.
; If the campaign doesn't use custom strings file, then leave this section unchanged.
[strings]
ENG = campgns/evilkeep/text_eng.dat
FRE = campgns/evilkeep/text_fre.dat
GER = campgns/evilkeep/text_ger.dat
POL = campgns/evilkeep/text_pol.dat

; Location of the speech sound files. Speech files should be WAVs with ADPCM data.
; If there's no folder for current language, then first entry is selected by default.
[speech]
;ENG = campgns/evilkeep_eng
GER = campgns/evilkeep_ger
FRE = campgns/evilkeep_fre

; Details about levels will follow. Only sections mentioned in [common] block
; will be parsed by the game; other blocks are skipped.
; NAME_IDs are message IDs from strings file.
; Note that NAME_TEXTs are not used if NAME_IDs are present.
; ENSIGN_POS is a position on the Land View screen, X is ranged 160..1120,
; while Y is 120..840. At this exact point, the bottom centre of the ensign
; sprite is placed. ENSIGN_ZOOM is the place which is zoomed when the ensign
; is selected; it is usually the same place where ensign is, but may be moved
; a few pixels if this gives better graphics result.
; LAND_VIEW option should be only present in single player levels.

; Details about single player levels

[map00001]
NAME_TEXT = Frohenwalde
NAME_ID = 202
ENSIGN_POS = 1020 342
ENSIGN_ZOOM = 1020 342
PLAYERS = 1
SPEECH = good01 bad01
LAND_VIEW = rgmap01 viframe01
OPTIONS = tutorial

[map00002]
NAME_TEXT = Gontringen
NAME_ID = 203
ENSIGN_POS = 904 362
ENSIGN_ZOOM = 904 362
PLAYERS = 1
SPEECH = good02 bad02
LAND_VIEW = rgmap02 viframe02
OPTIONS = tutorial

[map00003]
NAME_TEXT = Gutenberg
NAME_ID = 204
ENSIGN_POS = 918 254
ENSIGN_ZOOM = 918 254
PLAYERS = 1
SPEECH = good03 bad03
LAND_VIEW = rgmap03 viframe03
OPTIONS = tutorial

[map00004]
NAME_TEXT = Hildburghausen
NAME_ID = 205
ENSIGN_POS = 778 202
ENSIGN_ZOOM = 778 202
PLAYERS = 1
SPEECH = good04 bad04
LAND_VIEW = rgmap04 viframe04
OPTIONS = tutorial

[map00005]
NAME_TEXT = Unter-Uhlstedt
NAME_ID = 206
ENSIGN_POS = 602 174
ENSIGN_ZOOM = 602 174
PLAYERS = 1
SPEECH = good05 bad05
LAND_VIEW = rgmap05 viframe05
OPTIONS = tutorial

[map00006]
NAME_TEXT = Neu-Schonau
NAME_ID = 207
ENSIGN_POS = 394 198
ENSIGN_ZOOM = 394 198
PLAYERS = 1
SPEECH = good06 bad06
LAND_VIEW = rgmap06 viframe06
OPTIONS = 

[map00007]
NAME_TEXT = Klagenfurt (Austria)
NAME_ID = 208
ENSIGN_POS = 250 280
ENSIGN_ZOOM = 250 280
PLAYERS = 1
SPEECH = good07 bad07
LAND_VIEW = rgmap07 viframe07
OPTIONS = 

[map00008]
NAME_TEXT = Stillertal
NAME_ID = 209
ENSIGN_POS = 658 228
ENSIGN_ZOOM = 658 228
PLAYERS = 1
SPEECH = good08 bad08
LAND_VIEW = rgmap08 viframe08
OPTIONS = 

[map00009]
NAME_TEXT = Gackenhof an der Wasserkuppe
NAME_ID = 210
ENSIGN_POS = 764 312
ENSIGN_ZOOM = 764 312
PLAYERS = 1
SPEECH = good09 bad09
LAND_VIEW = rgmap09 viframe09
OPTIONS = 

[map00010]
NAME_TEXT = Feuerfingen
NAME_ID = 211
ENSIGN_POS = 678 356
ENSIGN_ZOOM = 678 356
PLAYERS = 1
SPEECH = good10 bad10
LAND_VIEW = rgmap10 viframe10
OPTIONS = 

[map00011]
NAME_TEXT = Grub bei Neukirchen
NAME_ID = 212
ENSIGN_POS = 964 470
ENSIGN_ZOOM = 964 470
PLAYERS = 1
SPEECH = good11 bad11
LAND_VIEW = rgmap11 viframe11
OPTIONS = 

[map00012]
NAME_TEXT = Gotham City
NAME_ID = 213
ENSIGN_POS = 862 548
ENSIGN_ZOOM = 862 548
PLAYERS = 1
SPEECH = good12 bad12
LAND_VIEW = rgmap12 viframe12
OPTIONS = 

[map00013]
NAME_TEXT = Bad Tolz
NAME_ID = 214
ENSIGN_POS = 780 426
ENSIGN_ZOOM = 780 426
PLAYERS = 1
SPEECH = good13 bad13
LAND_VIEW = rgmap13 viframe13
OPTIONS = 

[map00014]
NAME_TEXT = Hameln
NAME_ID = 215
ENSIGN_POS = 704 496
ENSIGN_ZOOM = 704 496
PLAYERS = 1
SPEECH = good14 bad14
LAND_VIEW = rgmap14 viframe14
OPTIONS = 

[map00015]
NAME_TEXT = St. Goar
NAME_ID = 216
ENSIGN_POS = 600 702
ENSIGN_ZOOM = 600 702
PLAYERS = 1
SPEECH = good15 bad15
LAND_VIEW = rgmap15 viframe15
OPTIONS = 

[map00016]
NAME_TEXT = Hammerburg
NAME_ID = 217
ENSIGN_POS = 584 560
ENSIGN_ZOOM = 584 560
PLAYERS = 1
SPEECH = good16 bad16
LAND_VIEW = rgmap16 viframe16
OPTIONS = 

[map00017]
NAME_TEXT = Ofenloch
NAME_ID = 218
ENSIGN_POS = 402 576
ENSIGN_ZOOM = 402 576
PLAYERS = 1
SPEECH = good17 bad17
LAND_VIEW = rgmap17 viframe17
OPTIONS = 

[map00018]
NAME_TEXT = Bruhnsbuttel
NAME_ID = 219
ENSIGN_POS = 396 460
ENSIGN_ZOOM = 396 460
PLAYERS = 1
SPEECH = good18 bad18
LAND_VIEW = rgmap18 viframe18
OPTIONS = 

[map00019]
NAME_TEXT = Klingenhagen
NAME_ID = 220
ENSIGN_POS = 322 362
ENSIGN_ZOOM = 322 362
PLAYERS = 1
SPEECH = good19 bad19
LAND_VIEW = rgmap19 viframe19
OPTIONS = 

[map00020]
NAME_TEXT = Felsenstein
NAME_ID = 221
ENSIGN_POS = 564 328
ENSIGN_ZOOM = 564 328
PLAYERS = 1
SPEECH = good20 bad20
LAND_VIEW = rgmap20 viframe20
OPTIONS = 

; Details about bonus and extra levels

; (no such levels)

; Details about multiplayer levels

; (no such levels)

