1 /* This is the definitions  file for quests.c, please look there for more information.
2    You may modify/use it freely as long as you give proper credit. - C. Blue
3 */
4 
5 
6 #define QI_CODENAME_LEN		10	/* short, internal quest code name */
7 #define QI_PREREQUISITES	5	/* max # of prerequisite quests for a follow-up quest */
8 #define QI_QUESTORS		30	/* amount of questor(NPC)s, there can be more than one! */
9 #define QI_STAGES		50	/* a quest can have these # of different stages */
10 #define QI_TALK_LINES		15	/* amount of text lines per talk dialogue */
11 #define QI_KEYWORDS		100	/* for dialogue with the questor */
12 #define QI_KEYWORD_LEN		30	/* length of a keyword, for dialogue with the questor */
13 #define QI_PASSWORDS		5	/* special keywords that are actually passwords that are randomly regenerated each session */
14 #define QI_PASSWORD_LEN		12	/* length of a password-keyword, for dialogue with the questor */
15 #define QI_KEYWORD_REPLIES	50	/* replies from for a questor, depending on keyword entered */
16 #define QI_KEYWORDS_PER_REPLY	5	/* so many different keywords may trigger the same keyword-reply text */
17 #define QI_STAGE_REWARDS 	10	/* max # of rewards handed out per completed stage */
18 #define QI_GOALS		5	/* main goals to complete a stage */
19 #define QI_REWARD_GOALS		5	/* up to 5 different main/optional goals that have to be completed for a specific reward */
20 #define QI_STAGE_GOALS		5	/* up to 5 different main/optional goals that have to be completed for changing to a specific next stage */
21 #define QI_FOLLOWUP_STAGES	5	/* the # of possible follow-up stages of which one is picked depending on the completed stage goals */
22 #define QI_FLAGS		16	/* global flags that range from 'a' to 'p' and can be set via uppercase letter, erased via lowercase letter. */
23 #define QI_TERRAIN_PATCH_RADIUS	5	/* max radius for valid terrain of same type as target terrain (terrain patch extension for quest goals) --note: this uses distance() */
24 #define QI_STAGE_AUTO_FEATS	15	/* max # of cave features to build on a stage start */
25 #define QI_STAGE_AUTO_MSPAWNS	10	/* max # of monster spawning on a stage start */
26 
27 
28 #define QI_SLOC_SURFACE		0x1
29 #define QI_SLOC_TOWN		0x2
30 #define QI_SLOC_DUNGEON		0x4
31 //#define QI_SLOC_TOWER		0x8
32 
33 #define QI_STOWN_BREE		0x001
34 #define QI_STOWN_GONDOLIN	0x002
35 #define QI_STOWN_MINASANOR	0x004
36 #define QI_STOWN_LOTHLORIEN	0x008
37 #define QI_STOWN_KHAZADDUM	0x010
38 
39 #define QI_STOWN_WILD		0x020
40 #define QI_STOWN_DUNGEON	0x040
41 #define QI_STOWN_IDDC		0x080
42 #define QI_STOWN_IDDC_FIXED	0x100
43 
44 
45 #define QI_QUESTOR_RUMOUR	0
46 #define QI_QUESTOR_NPC		1	/* neutral/friendly monster */
47 #define QI_QUESTOR_PARCHMENT	2	/* message in a bottle ^^ (read) */
48 #define QI_QUESTOR_ITEM_PICKUP	3	/* item (pick up) */
49 #define QI_QUESTOR_ITEM_TOUCH	4	/* item (walk over it) */
50 
51 
52 #define QI_SPAWN_RING		0	/* spawn around questor */
53 #define QI_SPAWN_RING_P		1	/* spawn around player */
54 #define QI_SPAWN_RING_WIDE	2	/* spawn around questor like siege of malice */
55 #define QI_SPAWN_RING_WIDE_P	3	/* spawn around player like a siege of malice */
56 #define QI_SPAWN_PACK_NEAR	4	/* spawn as pack nearby questor */
57 #define QI_SPAWN_PACK_NEAR_P	5	/* spawn as pack nearby player */
58 #define QI_SPAWN_PACK		6	/* spawn as pack further away */
59 #define QI_SPAWN_PACK_FAR_P	7	/* spawn as pack far away */
60 
61 
62 /* calculate an internal quest goal index from a quest goal number specified in q_info.txt */
63 //deprecated. #define QUEST_GOAL_IDX(j)	((j > 0) ? j - 1 /* main goal */ : (j < 0 ? QI_GOALS - j - 1 /* optional goal */ : -1 /* invalid */))
64