ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/doc/multigod
Revision: 1.2
Committed: Thu Sep 7 21:42:43 2006 UTC (17 years, 8 months ago) by pippijn
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
State: FILE REMOVED
Log Message:
Moved documents to doc/historic

File Contents

# Content
1
2
3
4 This document is a brief description of the MULTIGOD hack.
5
6 --------------
7 Introduction -
8 --------------
9
10 The intention of this code is to enhance the enjoy-ability and
11 playability of clerical characters in the new skills/exp scheme.
12
13 This is done by giving players gods to worship who in turn effect
14 clerical magic and powers. Included in this patch are several new
15 spells which (hopefully) will allow the priest characters a better
16 chance to gain xp at higher levels. Notably, the "holy orb" and
17 "holy word" spells have been revamped.
18
19 When MULTIPLE_GODS flag is defined in include/config.h, this
20 code is enabled. This code (described below) encompasses 3
21 main parts: an array of gods that players/NPCs may worship,
22 new clerical spells which rely on the worshiped god's attrib-
23 utes in Gods[] array and, altars/praying--the interface between
24 a worshiper and their god.
25
26 b.t.
27 thomas@astro.psu.edu
28
29 ---------
30 Outline -
31 ---------
32
33 1. Description of code -
34
35 2. Properties of the gods
36
37 3. Designing new gods
38
39 4. TODO/Idea list
40
41
42 ---------------------
43 Description of code -
44 ---------------------
45
46 This code is flexible and easy to configure (just edit the god
47 archetypes). Part of the reason for creating this code was to
48 allow server maintainers to develop their own "mythos". From my
49 personal point of view, I hate having the old "Christian" aligned
50 mythos, but if that's what you like, you can replicate it with
51 this code too (see below).
52
53
54 -------------------------
55 2. Properties of the Gods
56 -------------------------
57
58 Here is a fuller description of Gods archetype values.
59
60 name - name of the god (required)
61 other_arch - archetype that will be used for the summon holy
62 servant spell.
63 title - diametrically opposed god, leave blank if none exists
64 attacktype - favored attack of this god, used in spells of summon
65 avatar, holy word. Recipients of "holy possession" get
66 this too.
67 immune - Avatars/holy servants/recipient of "holy possession"
68 gets this.
69 protected - all of the above AND recipient of god's blessing and the
70 priest of this god gets this.
71 vulnerable - Avatar/servant/recipient of gods curse/priest of this god
72 get this.
73 path_attuned - priest of this god and recipient of "bless" gets this
74 path_repelled - priest and recipient of "curse" gets this
75 path_denied - priest and recipient of "curse" gets this
76 slaying - comma delimited list of the races of creatures that are
77 aligned with the god. "summon cult monsters" uses.
78 this list to find creatures. Summon avatar/call servant
79 code assigns this value to prevent them from attacking
80 aligned races. Value is blank if no race(s) exists.
81 race - comma delimited list of the races of creatures "holy word",
82 "holy possession" spells will effect. Value entry is
83 blank if no such race(s) exists.
84 hp,dam,ac,wc - base stats for the summoned avatar.
85
86
87 IF MORE_PRIEST_GIFTS is defined (in gods.c) then ADDITIONAL gifts/limitations
88 will be assigned to the priest:
89
90 A. FLAGS
91
92 Now, the following flags, in addition to being used by the god (if planted
93 on a map) are assigned to the worshiping priest:
94
95 can_use_weapon, can_use_armour, is_undead, is_blind, reflect_missile,
96 reflect_spell, make_invisible, stealth, can_see_in_dark, xrays
97
98 NOTE: if can_use_armour/can_use_weapon flags are NOT present, then
99 the priest will be forbidden the use of these items.
100
101 B. STATS
102
103 The following stats are used:
104
105 luck - how lucky the god (and the priest) are.
106 last_eat - how fast priest digestion is
107 last_hp - how fast priest healing is
108 last_sp - how fast priest mana regeneration is
109 last_grace - how fast priest grace regeneration is
110
111
112
113 ---------------------
114 3. Designing new gods
115 ---------------------
116
117 To examine the gods properties, use the '-m8' flag (ie 'crossfire -m8').
118 Note some of the big differences here in terms of spell_paths, races, etc.
119 Most of these entries were designed with roughly polar opposite gods.
120
121 For designing new gods. You should make sure that worshiping a god will
122 be "unique" in some way. But playbalance first! You must consider the balance
123 between the following:
124 1) spellpaths 2) priest gifts 3) priest limitations 4) special spells
125 5) attacktypes 6) summoned monster lists 7) properties of the avatar
126 and holy servant.
127
128 Here are some hard and fast rules for designing gods:
129 - Decide how the cleric will get experience. The god should be either
130 a 'summoning', 'turning' *or* a 'wounding' god. If summoning/turning,
131 make sure the aligned_race/enemy_race list(s) has enough creatures
132 to summon/slay at low, medium and high levels. DONT give a god attuned
133 to wounding AND turning||summoning (in fact, at minimum, one of these
134 3 paths should be repelled/denied).
135 - make sure the summoned avatar is stronger than the servant (!)
136 - examine the avatar/servant stats. If set inproperly, you will give
137 wimpy/super values. For example, Avatars/servants with less than 50 hp
138 (and a high ac/no armour) will vanish quickly. Shoot for stats like:
139
140 type | A V E R A G E S T A T S
141 | hp | ac | wc | arm | dam | speed
142 ----------|-----------------------------------
143 servant | 50 | 5 | 5 | 20 | 5 | 0.15
144 avatar | 350 | -5 | -1 | 50 | 50 | 0.25
145
146 Its difficult to give measurements on how to trade these off. To help
147 guide your choices try to conserve the value of speed*dam and
148 (armour+1)*hp.
149 - avoid giving the potent attacktypes of death, weaponmagic and paralysis.
150 - gods have a vulnerability for every immunity. Not all attacktypes
151 are the same. Immunity to physical, magic and common attacktypes
152 (like fire/cold/electric) are very potent. Similarly, vuln to these
153 is a big negative.
154 - SPELL paths. Carefull treatment is needed here. Give a path_denied/
155 or a couple path_repelled for every path_attuned. BUT note: not all
156 paths are of equal use. (ex path_abjuration has a very large list of
157 spells). The main clerical paths are restoration, abjuration,
158 protection, turning, wounding and summoning. For balance, make 3-4
159 of these repelled/denied and 1 or 2 attuned. Be sure to check out the
160 special spells list (below). Attuned paths like DEATH, WOUNDING and
161 (especially) PROTECTION are very potent. Allow for some balance else
162 where if you assign (one!) of these as a path_attuned.
163 - If using the MORE_PRIEST_GIFTS define: priest limitations of no weapons
164 and no armour are very negative, be sure to compensate with more than
165 an attunded path.
166
167 Of course, you may break these 'rules' to create your god. When you do that,
168 you had better make up for the bonus elsewhere! Otherwise, you will create a
169 'mega-god' whose worship (by the player priests) will unbalance the game.
170 Designing a good god takes a bit of work.
171
172
173 ----------------------
174 App A. Special spells-
175 ----------------------
176
177 Here is a possibly *incomplete* list of the special spells that a god may
178 grant use to a worshiper. Check the file spellist.h for the 0 bookchance
179 clerical spells to find all of these. (This list was complete on 10/96).
180
181 God has attuned path spells
182 -------------------- -------------
183 INFO perceive self
184 PROTECTION defense; immuntity to cold, fire, electricity,
185 poison, slow, paralysis, draining, attack,
186 and magic
187 RESTORE remove damnation; reincarnation; raise dead;
188 resurrection; regeneration
189 WOUNDING cause critical wounds; retributive strike
190 LIGHT daylight; nightfall
191 DEATH face of death; finger of death
192 SUMMONING insect plague
193 CREATE wall of thorns
194
195
196
197 ----------------
198 App B. Ideas-
199 ----------------
200
201 -- Allow sacrifices. This is an excellent way to give a cleric xp.
202 Need to create enemy_race creatures w/ bodyparts we can sacrifice,
203 and designate a pointer in Gods{} to the appropriate array of stuff
204 we can sacrifice for xp.
205
206