Preise & Todesursachen

Der price-Block, die Formel dahinter und woher die Namen der Todesursachen kommen.

Bezahlt wird von dem, der auf den Knopf drückt, nicht von dem, der am Boden liegt. Der Betrag setzt sich aus zwei Teilen zusammen: einem Grundpreis, der von der Todesursache abhängt und einer Gebühr, die für jeden Sanitäter im Dienst daraufkommt.

Die Formel
Preis = (causes[Todesursache] oder base)  +  perMedic × Sanitäter im Dienst

           beides einzeln mit dem Faktor aus SetPriceMultiplier multipliziert
SchlüsselStandardBedeutung
base0Der Preis für jede Todesursache, die nicht in causes steht.
causesleerAbweichende Preise, auf die Namen aus der deathcauses.lua geschlüsselt: { Fire = 600, Pistol = 150 }.
perMedic0Wird einmal pro Sanitäter im Dienst aufgeschlagen. Die Station wird damit genau dann teuer, wenn jemand anders es umsonst tun könnte.
account'cash''cash' oder 'bank'.
config.lua
price = {
    base     = 50,
    perMedic = 500,
    account  = 'cash',
    causes   = {
        ['Fire']   = 600,
        ['Pistol'] = 150,
    },
},

Mit diesen Werten kostet ein Tod durch Feuer 600, wenn kein Sanitäter im Dienst ist und 1.600, wenn zwei da sind. Der Anteil der Gebühr steht im Interface unter der Überschrift, damit der Spieler sieht, woher der Betrag kommt, statt sich über eine Zahl zu wundern, die gestern anders war.

Die Namen der Todesursachen

Die deathcauses.lua ordnet jeder Waffe des Spiels einen Namen zu. Genau dieser Name steht links in price.causes und erscheint auf der Karte. Eine Waffe, die dort nicht steht, gilt als Unknown und kostet base.

Eine eigene Waffe ist eine Zeile:

deathcauses.lua
[joaat('WEAPON_MYCUSTOMGUN')] = 'My Custom Gun',

Die Preise richten sich immer nach dem Namen aus der deathcauses.lua, nie nach seiner Übersetzung. Eine Locale darf Fire als „Feuer" anzeigen, in der Config steht trotzdem Fire. Schreibst du dort etwas, das es unter diesem Namen nicht gibt, greift der Preis nie und die Station rechnet still mit base weiter. Genau diesen Fall meldet die Konsole beim Start als Warnung.

Was eine Wiederbelebung gerade kosten würde, beantwortet GetRevivePrice mit Todesursache, Sanitätern und Faktor darin. Das ist die Zahl, die du jemandem nennen kannst, bevor er losläuft. Zeitweise Rabatte macht SetPriceMultiplier, ohne die Config anzufassen.

Frage offen geblieben?

Schreib uns im Discord. Mit Konsolen-Auszug, Framework und Script-Version ist die erste Antwort meistens schon die Lösung.

Zum Support