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