P_XP ==== NAME ---- :: P_XP "xp" DEFINIERT IN ------------ :: /sys/living/life.h BESCHREIBUNG ------------ :: Diese Property enthaelt die Anzahl der Erfahrungspunkte, die ein Lebewesen erreicht hat. Dies geschieht insbesondere durch Kampfhandlungen, wobei es sowohl fuer Einzelschlaege als auch fuer das Toeten eines Opfers Punkte gibt. Bei einzelnen Schlaegen ist die Vergabe von Erfahrungspunkten davon abhaengig, wie stark man das Opfer getroffen hat, und welche Gesamtwaffenklasse es hat (damage*P_TOTAL_WC/10). Beim Todesschlag erhaelt man zusaetzlich die Erfahrungspunkte des Opfers geteilt durch 100 (P_XP/100). Dieser Wert wird allerdings gegebenenfalls auf ein Team aufgeteilt, sofern der Angreifer sich in einem solchigen befindet. BEISPIEL -------- :: NPC's gibt man im allgemeinen einen levelabhaengigen Sockelwert an Erfahrungspunkten mit, da sie nicht allzuoft selbst Gegner toeten und somit kaum die Moeglichkeit haben, diese Punkte selbst anzusammeln. Trotzdem sollen sie ja dem Spieler eine gewisse Anzahl an Erfahrungspunkten liefern, wenn sie getoetet werden: include "/sys/living/life.h" inherit "std/npc"; void create() { ... SetProp(P_XP,25000000); } Beim Toeten gibt es nun 25.000.000/100 = 250.000 Erfahrungspunkte. Damit wird der NPC sogar automatisch fuer die Vergabe von Erstkillstufenpunkten vorgesehen. Die Funktion create_default_npc() setzt P_XP und andere Eigenschaften auf geeignete Werte. BEMERKUNGEN ----------- :: Die Vergabe von Erstkillstufenpunkten kann man ueber die Property P_NO_SCORE unterbinden, die Vergabe von Erfahrungspunkten ueber P_NO_XP. Automatisch werden Lebewesen fuer Erstkillstufenpunkte vorgesehen, sofern sie eine der folgenden Grenzen ueberschritten haben: SCORE_LOW_MARK: 200000 (1 Stufenpunkt) SCORE_HIGH_MARK: 600000 (2 Stufenpunkte) Definiert sind die Konstanten in "/secure/scoremaster.h". SIEHE AUCH ---------- :: Funktionen: AddExp(), do_damage() Verwandt: P_NO_XP, P_LAST_XP Sonstiges: P_NO_SCORE, create_default_npc() P_TOTAL_WC 14.Feb 2007 Gloinson