Pacify()

FUNKTION

public int Pacify(object caster)

DEFINIERT IN

/std/living/combat.c

BESCHREIBUNG

Diese Funktion versucht, ein Lebewesen zu befrieden.
Will eine Gilde ein Lebewesen befrieden, muss sie hierfuer diese Funktion
in dem Lebewesen aufrufen.

Ein immer befriedbarer NPC kann durch das Setzen von P_ACCEPT_PEACE in
einem Lebewesen realisiert werden.

Standardmaessig funktioniert die Funktion wie folgt:

* Kommt der Versuch vom Spellcaster selbst, ist er immer erfolgreich.
* Kommt der Versuch von einem Teamkollegen, ist er immer erfolgreich.
* Hat das Lebewesen keine Gegner, ist der Versuch immer erfolglos.

In diesen Faellen erfolgt auch keine Erhoehung des Befriedezaehlers.

In anderen Faellen wird die in P_PEACE_HISTORY fuer die Gilde des Casters
abgelegte Zahl erfolgreicher Befriedungen (ANZ), die Intelligenz des
Casters (INT_CASTER) und die Intelligenz des Lebenwesens selber (INT_ME)
ermittelt.
Anschliessend wird eine Wahrscheinlichkeit w ausgerechnet:

  w = (INT_CASTER + 10 - ANZ*4) / (INT_ME + 10)

Hierbei gibt w die Chance auf eine erfolgreiche Befriedung an. Mittels einer
Zufallszahl wird bestimmt, ob der aktuelle Versuch erfolgreich ist. Falls
ja, wird der Zaehler fuer die Gilde des Casters in P_PEACE_HISTORY erhoeht.

Je oefter ein Lebewesen als von einer Gilde schon befriedet wurde, desto
unwahrscheinlicher, dass es erneut darauf 'hereinfaellt'.

BEMERKUNGEN

  • Die Funktion kann auch ueberschrieben werden, um ein vom Magier gewuenschtes Verhalten zu realisieren. Ein komplettes Abhaengen von Befriedungen sollte dabei aber die Ausnahme sein!
  • Diese Funktion verwaltet auch das P_PEACE_HISTORY, speziell die Reduktion der Erfolgszaehler. Ueberschreibt man sie ohne das geerbte Pacify() zu nutzen, wird P_PEACE_HISTORY nicht mehr verwaltet.

RUECKGABEWERTE

1 - das Lebewesen wurde erfolgreich befriedet..
0 - der Befriedeversuch ist gescheitert.

BEISPIELE

 Angenommen, der Caster hat eine Intelligenz von 22. Die folgende Tabelle
 gibt dann die Wahrscheinlichkeiten fuer eine erfolgreiche Befriedung an:
 (in Abhaengigkeit von NPC-Intelligenz INT_ME und vergangener erfolgreicher
 Versuche).

INT_ME  Erfolgswahrscheinlichkeiten je nach Anzahl erfolgreicher Versuche
             1       2       3       4       5       6       7       8
     0     280     240     200     160     120      80      40       0
     2  233,33     200  166,67  133,33     100   66,67   33,33       0
     4     200  171,43  142,86  114,29   85,71   57,14   28,57       0
     6     175     150     125     100      75      50      25       0
     8  155,56  133,33  111,11   88,89   66,67   44,44   22,22       0
    10     140     120     100      80      60      40      20       0
    12  127,27  109,09   90,91   72,73   54,55   36,36   18,18       0
    14  116,67     100   83,33   66,67      50   33,33   16,67       0
    16  107,69   92,31   76,92   61,54   46,15   30,77   15,38       0
    18     100   85,71   71,43   57,14   42,86   28,57   14,29       0
    20   93,33      80   66,67   53,33      40   26,67   13,33       0
    22    87,5      75    62,5      50    37,5      25    12,5       0
    24   82,35   70,59   58,82   47,06   35,29   23,53   11,76       0
    26   77,78   66,67   55,56   44,44   33,33   22,22   11,11       0
    28   73,68   63,16   52,63   42,11   31,58   21,05   10,53       0
    30      70      60      50      40      30      20      10       0
    32   66,67   57,14   47,62    38,1   28,57   19,05    9,52       0
    34   63,64   54,55   45,45   36,36   27,27   18,18    9,09       0
    35   62,22   53,33   44,44   35,56   26,67   17,78    8,89       0
    36   60,87   52,17   43,48   34,78   26,09   17,39     8,7       0
    38   58,33      50   41,67   33,33      25   16,67    8,33       0
    40      56      48      40      32      24      16       8       0
    42   53,85   46,15   38,46   30,77   23,08   15,38    7,69       0
    44   51,85   44,44   37,04   29,63   22,22   14,81    7,41       0
    46      50   42,86   35,71   28,57   21,43   14,29    7,14       0
    48   48,28   41,38   34,48   27,59   20,69   13,79     6,9       0
    50   46,67      40   33,33   26,67      20   13,33    6,67       0
    52   45,16   38,71   32,26   25,81   19,35    12,9    6,45       0
    54   43,75    37,5   31,25      25   18,75    12,5    6,25       0
    56   42,42   36,36    30,3   24,24   18,18   12,12    6,06       0
    58   41,18   35,29   29,41   23,53   17,65   11,76    5,88       0
    60      40   34,29   28,57   22,86   17,14   11,43    5,71       0
    62   38,89   33,33   27,78   22,22   16,67   11,11    5,56       0
    64   37,84   32,43   27,03   21,62   16,22   10,81    5,41       0
    66   36,84   31,58   26,32   21,05   15,79   10,53    5,26       0
    68    35,9   30,77   25,64   20,51   15,38   10,26    5,13       0
    70      35      30      25      20      15      10       5       0
    72   34,15   29,27   24,39   19,51   14,63    9,76    4,88       0
    74   33,33   28,57   23,81   19,05   14,29    9,52    4,76       0
    76   32,56   27,91   23,26    18,6   13,95     9,3    4,65       0
    78   31,82   27,27   22,73   18,18   13,64    9,09    4,55       0
    80   31,11   26,67   22,22   17,78   13,33    8,89    4,44       0
    82   30,43   26,09   21,74   17,39   13,04     8,7    4,35       0
    84   29,79   25,53   21,28   17,02   12,77    8,51    4,26       0
    86   29,17      25   20,83   16,67    12,5    8,33    4,17       0
    88   28,57   24,49   20,41   16,33   12,24    8,16    4,08       0
    90      28      24      20      16      12       8       4       0
    92   27,45   23,53   19,61   15,69   11,76    7,84    3,92       0
    94   26,92   23,08   19,23   15,38   11,54    7,69    3,85       0
    96   26,42   22,64   18,87   15,09   11,32    7,55    3,77       0
    98   25,93   22,22   18,52   14,81   11,11    7,41     3,7       0
   100   25,45   21,82   18,18   14,55   10,91    7,27    3,64       0

SIEHE AUCH

P_ACCEPT_PEACE, P_PEACE_HISTORY

LETZTE AENDERUNG

07.06.2008, Zesstra