blob: ec4864a1012baac2704206e9d82daf027ac620c2 [file] [log] [blame]
Zesstra18626972017-01-31 10:38:27 +01001P_XP
2====
3
4NAME
5----
6::
7
8 P_XP "xp"
9
10DEFINIERT IN
11------------
12::
13
14 /sys/living/life.h
15
16BESCHREIBUNG
17------------
18::
19
20 Diese Property enthaelt die Anzahl der Erfahrungspunkte, die ein
21 Lebewesen erreicht hat. Dies geschieht insbesondere durch
22 Kampfhandlungen, wobei es sowohl fuer Einzelschlaege als auch fuer
23 das Toeten eines Opfers Punkte gibt.
24
25 Bei einzelnen Schlaegen ist die Vergabe von Erfahrungspunkten davon
26 abhaengig, wie stark man das Opfer getroffen hat, und welche
27 Gesamtwaffenklasse es hat (damage*P_TOTAL_WC/10).
28
29 Beim Todesschlag erhaelt man zusaetzlich die Erfahrungspunkte des
30 Opfers geteilt durch 100 (P_XP/100). Dieser Wert wird allerdings
31 gegebenenfalls auf ein Team aufgeteilt, sofern der Angreifer sich in
32 einem solchigen befindet.
33
34BEISPIEL
35--------
36::
37
38 NPC's gibt man im allgemeinen einen levelabhaengigen Sockelwert an
39 Erfahrungspunkten mit, da sie nicht allzuoft selbst Gegner toeten
40 und somit kaum die Moeglichkeit haben, diese Punkte selbst
41 anzusammeln. Trotzdem sollen sie ja dem Spieler eine gewisse Anzahl
42 an Erfahrungspunkten liefern, wenn sie getoetet werden:
43
44 include "/sys/living/life.h"
45 inherit "std/npc";
46 void create() {
47 ...
48 SetProp(P_XP,25000000);
49 }
50
51 Beim Toeten gibt es nun 25.000.000/100 = 250.000 Erfahrungspunkte.
52 Damit wird der NPC sogar automatisch fuer die Vergabe von
53 Erstkillstufenpunkten vorgesehen.
54
55 Die Funktion create_default_npc() setzt P_XP und andere Eigenschaften
56 auf geeignete Werte.
57
58BEMERKUNGEN
59-----------
60::
61
62 Die Vergabe von Erstkillstufenpunkten kann man ueber die Property
63 P_NO_SCORE unterbinden, die Vergabe von Erfahrungspunkten ueber
64 P_NO_XP. Automatisch werden Lebewesen fuer Erstkillstufenpunkte
65 vorgesehen, sofern sie eine der folgenden Grenzen ueberschritten
66 haben:
67 SCORE_LOW_MARK: 200000 (1 Stufenpunkt)
68 SCORE_HIGH_MARK: 600000 (2 Stufenpunkte)
69 Definiert sind die Konstanten in "/secure/scoremaster.h".
70
71SIEHE AUCH
72----------
73::
74
75 Funktionen: AddExp(), do_damage()
76 Verwandt: P_NO_XP, P_LAST_XP
77 Sonstiges: P_NO_SCORE, create_default_npc()
78 P_TOTAL_WC
79
8014.Feb 2007 Gloinson
81