blob: 50e4be518b629a213c66f8b3d122fb6ffc97887b [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001
2Kaempferboni und deren Implementation
3-------------------------------------
4-------------------------------------
5
6Bei den Kaempfern gibt es einige Properties, die, in Waffen oder Ruestungen
7gesetzt, der Kampfverlauf eines Spielers erheblich beeinflussen koennen.
8
9Zu beachten ist, dass die Abnahme von Waffen oder Ruestungen mit Kaempferboni
10allein der Balance obliegt. Der Gildenmagier der Kaempfer steht aber gerne
11mit Rat und Tat zur Seite.
12
13
14Abschnitt A
15-----------
16
17In Waffen koennen nachfolgende, in /p/kaempfer/kaempfer.h definierten,
18Properties gesetzt werden. Die meisten davon fungieren als 'Boni' und werden
19dem Spieler auch mittels 'schaetz <waffe>' angezeigt:
20
21
221 Waffenschlagbonus - K_BRAWLING_WC (INT) - "k_brawling_wc"
23
24 Wenn die Waffe eine zusaetzlich gefaehrliche Stelle besitzt - z.B. einen
25 harten Dorn am Stielende, eine Spitze am Ruecken einer Axtklinge, Zacken
26 am Dolchgriff - kann man der Waffe einen Waffenschlagbonus geben.
27 Dies bedeutet, dass der Waffenschlag um ein paar Prozente verstaerkt wird,
28 da der Spieler natuerlich versucht, immer genau mit diesem 'feature'
29 den Waffenschlag auszufuehren (der Waffenschlag ist kurz gesagt ein
30 unerwarteter Schlag, der nicht mit dem 'normalen' Waffenende ausgefuehrt
31 wird, der Gegner wird dadurch ueberrascht -> mehr Schaden).
32 Da solch ein 'feature' doch recht auffaellig ist, sollte es in der
33 Langbeschreibung der Waffe auf jeden Fall erwaehnt werden.
34
35 Interessant zu wissen waere noch, dass Zweihandwaffen einen generellen
36 zusaetzlichen Bonus auf den Waffenschlag bekommen und dass es eine
37 Abstufung gibt, nach der die Waffengattungen die Hoehe des Basiswertes
38 gesetzt bekommen, wobei Speere den hoechsten und Messer den niedrigsten
39 besitzen:
40
41 Speere - Kampfstaebe - Aexte - Keulen - Schwerter - Messer
42
43 Der max. Bonus fuer diese Property betraegt 30, wobei 1-10 -> geringer
44 Bonus, 11-20 -> guter Bonus, 21-30 -> sehr guter Bonus.
45
46 Bitte beachten: ein Zweihand-Speer mit max. P_WC und max. K_BRAWLING_WC
47 haut entsprechend gut rein und sollte nur schwer zu ergattern sein, bzw.
48 noch andere Auflagen haben (ggf. unique, personalisiert, etc.)
49
50
512 Waffenschlagschaden - K_BRAWLING_DT (STRING) - "k_brawling_dt"
52
53 Wenn die Waffe, mit der der Kaempfer einen Waffenschlag ausfuehrt, ein
54 'feature' hat, mit dem er diesen Schlag ausfuehrt, kann dieses 'feature'
55 einen anderen Waffenschlagschaden besitzen. Z.B. kann ein Schwert, welches
56 normalerweise DT_SLASH macht, besonders lange und spitze Parierstangen
57 besitzen, die vielleicht auch noch vergiftet sind. Dann kann der Magier
58 ({DT_PIERCE,DT_POISON}) setzen, so dass beim Waffenschlag immer ein
59 Mischschaden aus Stiche und Gift erfolgt.
60
61
623 Waffenschlagsmeldung - K_BRAWLING_MSG (STRING/STRING*) - k_brawling_msg"
63
64 In diese Property kann man hineinschreiben, mit welchem Teil der Waffe
65 der Waffenschlag ausgefuehrt wird. Angenommen, es bietet sich an, mit
66 einer Waffe stets den Waffenschlag mit einem grossen Knauf am Griff
67 auszufuehren, wird schlicht und einfach "mit einem grossen Knauf am
68 Griff der Schlachtaxt" in die Property gesetzt.
69 Sollte sich bei der Programmierung ergeben, dass es sich anbietet, der
70 Waffe mehr als nur eine guenstige Stelle anzudichten mit der man den
71 Waffenschlag ausfuehren kann, so setzt man ein Array, z.B. ({"mit einem
72 grossen Knauf am Griff der Schlachtaxt","mit der breiten Seite der "
73 "Schlachtaxtklinge"}). Insgesamt ist darauf zu achten, dass die Meldungen
74 'vollstandig' sind. Das Array kann beliebige Groesse annehmen, es wird
75 dann zufaellig eine Meldung beim Schlag ausgesucht.
76
77 Es empfiehlt sich, jede Waffe mit dieser Property zu schmuecken, die
78 K_BRAWLING_WC gesetzt haben, da die Waffenschlagmeldungen damit im Kampf
79 'individualisiert' werden. In der Praxis wird es jedoch daran scheitern,
80 dass es viel zu viele alte Waffen gibt, die keiner mehr anfassen moechte.
81 Daher wird auf Standardmeldungen zurueckgegriffen, sollte diese Property
82 nicht gesetzt sein.
83
84
854 Waffenbruchbonus - K_WEAPON_SHATTER (INT) - "k_weapon_shatter"
86
87 Waffen, die besonders fuer den Waffenbruch konstruiert wurden, koennen
88 einen Bonus einbringen, der in dieser Property angegeben wird. Natuerlich
89 eignen sich die verschiedenen Waffentypen wieder unterschiedlich gut fuer
90 einen Waffenbruch: Keulen (meist aufgrund ihres Gewichts) am besten, Messer
91 am schlechtesten, alle anderen dazwischen (Axt - Schwert - Stab - Speer).
92 Dabei kriegen alle Waffen, die u.a. Schlagschaden verursachen, nochmal
93 einen kleinen Bonus obendrauf.
94
95 Der max. Bonus fuer diese Property betraegt 50, wobei 1-10 -> geringer
96 Bonus, 11-30 -> guter Bonus, 31-50 -> sehr guter Bonus.
97
98 Bei gut gelungenem Waffenbruch wird die Waffe des Gegners beschaedigt, wenn
99 die Technik sehr gut gelingt, kann es auch sein, dass dem Gegner die Waffe
100 aus der Hand geschlagen wird (der Spieler kann sie allerdings nicht
101 aufheben und der NPC zueckt sie nach ein paar Kampfrunden wieder).
102
103
1045 Bonus fuer Finte/Waffentrick - K_DISTRACTING_WEAPON (INT) -
105 "k_distracting_weapon"
106
107 Waffen, die fuer den Gegner aufgrund ihrer Bauweise besonders irritierend
108 sein koennen, koennen einen Bonus fuer Finte und Waffentrick haben. Dabei
109 wird der Gegner bei einer Finte bzw. einem Waffentrick NOCH mehr verwirrt,
110 als er es ohnehin schon nur durch die angewandte Technik wird.
111 Ein gutes Beispiel hierfuer ist z.B. der Kriegshamster: ein Hamster, der
112 auf einem Holzstab aufgespiesst ist, sollte fuer den Gegner schon SEHR
113 irritierend sein ;).
114 Die Waffengattung hat nur wenig Einfluss auf Finte/Waffentrick.
115
116 Der max. Bonus fuer diese Property betraegt 50, wobei 1-10 -> geringer
117 Bonus, 11-30 -> guter Bonus, 31-50 -> sehr guter Bonus.
118
119
1206 Todesstossbonus - K_CRITICAL_HIT (INT) - "k_critical_hit"
121
122 Man stelle sich eine Waffe mit besonders spitzer, langer Klinge vor oder
123 eine magische Waffe, die dem geschwaechten Gegner die Seele entreisst.
124 Diese Eigenschaften verleihen dem Spieler beim Todesstoss einen
125 entsprechenden Bonus von bis zu 100%.
126
127 Es ist moeglich, dass ein und dasselbe 'feature' sowohl dem Waffenschlag
128 als auch dem Todesstoss den Bonus stellt, z.B. zwei Hiebklingen auf dem
129 Klingenruecken einer grossen Axt. Auch dies sollte man deutlich aus der
130 Langbeschreibung herauslesen koennen.
131
132 Der max. Bonus fuer diese Property betraegt 100, wobei 100 eine Verdopplung
133 der P_WC beim Todesstoss bedeutet!
134 Ansonsten bedeutet 1-20 -> geringer Bonus, 21-60 -> guter Bonus,
135 61-100 -> sehr guter Bonus.
136
137
1387 Waffenwurfbonus - K_THROWING_WEAPON (INT) - "k_throwing_weapon"
139
140 Wenn eine Waffe besonders gut zum Werfen geeignet ist, z.B. ein Wurfdolch,
141 dann kann diese Property gesetzt werden. Natuerlich ist der Grundwert wieder
142 von der Waffengattung abhaengig. Es gilt, dass man Messer und Speere
143 grundsaetzlich am besten werfen - und dabei gut Schaden machen - kann, am
144 schlechtesten schneiden Keulen und Kampfstaebe ab.
145
146 Der max. Bonus fuer diese Property betraegt 50, wobei 1-20 -> geringer
147 Bonus, 21-40 -> guter Bonus, 31-50 -> sehr guter Bonus.
148
149 Zu beachten ist hierbei, dass ein sehr hoher Bonus nur bei Waffen mit etwas
150 geringerer P_WC vergeben werden sollte. Ein reines Wurfmesser ist nunmal im
151 normalen Kampf nicht die gefaehrlichste aller Waffen (speziell
152 ausbalanciert, keinen richtigen Griff, etc.).
153 Natuerlich kann es einen Wurfspeer mit max. P_WC und sehr hohem
154 Waffenwurfbonus geben, allerdings mit den ueblich hohen Restriktionen.
155
156
1578 KO-Schlag-Bonus - K_KO (INT) - "k_ko"
158
159 Waffen, die besonders fuer einen KO-Schlag geeignet sind, koennen einen
160 Bonus mit dieser Property bekommen. Eine entsprechende Waffe koennte z.B.
161 ein lederumwickelter Pruegel sein, denn man will den Gegner ja nur KO
162 schlagen und nicht gleich toeten.
163
164 Der max. Bonus fuer diese Property betraegt 50, wobei 1-20 -> geringer
165 Bonus, 21-30 -> guter Bonus, 31-50 -> sehr guter Bonus.
166
167
1689 Kein Waffenschaerfen - K_NO_HONING (INT) - "k_no_honing"
169
170 Wenn eine Waffe aus irgendeinem Grund nicht geschaerft werden kann oder
171 darf, muss man diese Property auf 1 setzen.
172 Eine Erklaerung dafuer sollte in der P_LONG bzw. P_INFO erfolgen.
173
174
175Abschnitt B
176-----------
177
178Die beiden Properties, P_EFFECTIVE_AC und P_EFFECTIVE_WC, welche in
179<combat.h> definiert sind, sind eigentlich nur dazu da, um Ruestungen und
180Waffen, die eine DefendFunc() bzw. HitFunc() besitzen, korrekt vom Spieler
181einschaetzen lassen zu koennnen.
182
183Das Kaempferspellbook verwendet diese Properties darueberhinaus wie folgt:
184
185
1861 Schutzboni in Waffen - P_EFFECTIVE_AC (INT) - "effective_ac"
187
188 Ist diese Property in einer Waffe gesetzt, geht das Kaempferspellbook
189 davon aus, dass diese Waffe mehr oder weniger die Faehigkeit besitzt,
190 auch wie eine Ruestung schuetzen zu koennen. Da man eine Waffe aber nicht
191 anziehen, sondern nur vor sich hertragen kann, kann auch der max.
192 Ruestungsschutz einer Waffe nur gleich dem max. Ruestungsschutz eines
193 Schildes entsprechen.
194 Eine gesetzte P_EFFECTIVE_AC in einer Waffe wird dem Spieler als mehr
195 oder weniger gute 'Paradewaffe' im 'schaetz' angezeigt und geht sowohl bei
196 der Waffenparade als auch beim Block als Bonus mit ein.
197
198 Z.B. koennte ein leichtes Schwert, was aufgrund seiner Bauweise mehr fuer
199 den defensiven Kampf ausgelegt ist (extralange Parierstangen, verstaerkter
200 Handschutz im Griffbereich, ...) wie ein maessiges Schild wirken. Die
201 Vorteile liegen auf der Hand: der Spieler bekommt verstaerkten Schutz,
202 kann aber weiterhin eine Zweihandwaffe fuehren.
203
204 Der max. Bonus fuer diese Property betraegt 40, wobei 1-20 -> geringer
205 Bonus, 21-30 -> guter Bonus, 31-40 -> sehr guter Bonus.
206
207 Zu beachten ist hier, dass sehr gute Parierwaffen mit P_EFFECTIVE_AC > 30
208 moeglichst deutlich unter der max. WC liegen sollten.
209
210 Anmerkungen:
211 Eine gesetzte P_EFFECTIVE_AC in einem Schild kann den Bonus fuer die
212 Schildparade nach oben oder unten beeinflussen. Moechte man ein Schild
213 herstellen, welches speziell bei der Schildparade der Kaempfer besser
214 als 'normal' schuetzt, sollte man hier einen Wert eintragen, der deutlich
215 groesser als die P_AC des Schildes ist.
216
217 Eine gesetzte P_EFFECTIVE_AC in einer anderen Ruestung hat nur den Nutzen,
218 auf deren erhoehten (und nicht sofort sichtbaren) Verteidigungswert
219 hinzuweisen, der durch eine DefendFunc() realisiert wird.
220
221
2222 Angriffsboni in Ruestungen - P_EFFECTIVE_WC (INT) - "effective_wc"
223
224 Fuer die Kaempfer koennen folgende Ruestungstypen modifiziert werden:
225 AT_TROUSERS (Hosen), AT_HELMET (Kopfbedeckung), AT_BOOT (Fusskleidung),
226 AT_ARMOUR (Koerperruestung), AT_SHIELD (Schilde).
227 Ist in einer dieser Typen P_EFFECTIVE_WC gesetzt, so macht diese Ruestung
228 bei einem Angriff mit einer Spezialattacke (Kniestoss, Kopfstoss, Fusstritt,
229 Ellbogenschlag und Schildstoss) entsprechend mehr bzw. weniger Schaden als
230 ohne diese Property. Eine entsprechende Begruendung fuer eine Verstaerkung
231 oder Schwaechung sollte auch hier fuer den Spieler offensichtlich sein
232 (Dornen am Schild, verstaerkter Kniebereich, Zacken am Helm, etc.).
233
234 Wenn man der Ruestung einen Bonus geben moechte, muss man darauf achten,
235 dass P_EFFECTIVE_WC hoeher ist als die P_AC der Ruestung! Sollte
236 P_EFFECTIVE_WC niedriger als P_AC sein, wird dennoch P_EFFECTIVE_WC als
237 Angriffswert genommen. Dies stellt natuerlich eine Schwaechung der
238 Spezialattacke dar. Moeglicherweise ist aber genau das gewollt, wenn eine
239 Ruestung, die sehr gut schuetzt, nur geringen Kaempferbonus aufweisen soll.
240
241 Beispiel: ein Schild aus Hartgummi kann recht gut Schlaege aller Art
242 abfangen (-> P_AC 35). Will der Kaempfer jedoch einen Schildstoss damit
243 machen, fehlt ihm aufgrund der Beschaffenheit die Wucht, eher daempft es
244 den Schildstoss noch ein wenig (-> P_EFFECTIVE_WC 25).
245
246 Der Maximalwert fuer die P_EFFECTIVE_WC bei Kaempfern ist der jeweils
247 doppelte maximale P_AC-Wert (s. 'man ruestungen').
248
249 Die Angabe eines Schadenstyps (P_DAM_TYPE) in einer Ruestung kann dann
250 sinnvoll sein, wenn bei der Spezialattacke ein spezieller Schaden gemacht
251 werden soll. Beispielsweise sollten Flammenstiefel logischerweise DT_FIRE
252 und DT_BLUDGEON oder DT_PIERCE bei einem Kampftritt verursachen. Es MUSS
253 (logischerweise) mindestens ein physikalischer Schadenstyp enthalten sein.
254 Wird kein Schadenstyp angegeben, wird auf Standardtypen zurueckgegriffen.
255
256
257SIEHE AUCH:
258 Waffen: P_WC, P_TOTAL_WC, P_EFFECTIVE_WC, HitFunc()
259 Ruestungen: P_AC, P_TOTAL_AC, P_EFFECTIVE_AC, DefendFunc()
260 Files: /std/weapon.c, /std/weapon/combat.c
261 Balance: waffen, ruestungen, properties
262
263-----------------------------------------------------------------------------
26426.10.2012, Gabylon