Diese Datei bestimmt, wie sich der Handel auf deinem Server anfühlt – ob Preise sich bewegen, wie schnell Regale wieder voll sind und ob Händler jemals das Geld ausgeht. Außerdem kannst du einzelne Waren und ihre Preise festnageln.
Die EconomyOverride.json besteht aus zwei sehr unterschiedlichen Teilen.
Oben stehen 21 globale Schlüssel. Sie gelten für den ganzen Server und entscheiden über den Charakter der Wirtschaft. Sie sind überschaubar, und sie sind es, an denen man wirklich dreht.
Unten steht traders mit 36 Händlern und je einer Liste von Waren. Ab Werk sind fast alle Listen leer – das heißt nicht, dass die Händler nichts führen, sondern dass für sie nichts übersteuert wird. Ein Eintrag hier ist eine Ausnahme von der Regel des Spiels, kein Katalog.
Anders als in der ServerSettings.ini sind hier alle Werte Zeichenketten: "2.0", nicht 2.0. Das Spiel liest die Zahl aus dem Text. Halte dich daran – gemischte Schreibweisen sind eine häufige Fehlerquelle.
Und wie überall in dieser Konfiguration heißt -1: „Spielvorgabe benutzen“. Eine -1 ist also kein abgeschalteter Wert, sondern ein nicht gesetzter.
Von den 21 Schlüsseln verändern vier das Spielgefühl spürbar, der Rest ist Feinjustierung:
prices-subject-to-delta – bewegen sich Preise überhaupt? Aus heißt: fester Katalog.traders-unlimited-funds – kann man unbegrenzt verkaufen? An heißt: Geld ist kein knappes Gut mehr.traders-unlimited-stock – geht je etwas aus? An heißt: Seltenheit gibt es nicht mehr.fully-restock-tradeable-hours – wie schnell ist das Regal wieder voll? Der wichtigste Regler für die Frage, ob Handel Geduld verlangt.Wer alle drei Schalter auf „unbegrenzt“ stellt, hat einen Server ohne Wirtschaft. Das kann man wollen – man sollte es nur wissen.
Es gibt 36 Händler: neun Arten in vier Sektoren. Die Arten sind Armory, Barber, BoatShop, Hospital, Hunter, Master_Hunter, Mechanic, Saloon und Trader; die Sektoren heißen A_0, B_4, C_2 und Z_3. Zusammengesetzt ergibt das Namen wie A_0_Armory.
Hier lauert eine Falle: Die Vorlage, die im Serverprogramm steckt, schreibt den Meisterjäger als A_0_MasterHunter, die Datei, die dein Server tatsächlich anlegt, als A_0_Master_Hunter. Maßgeblich ist immer die Datei, die dein Server selbst erzeugt hat – nicht eine aus einem Forum kopierte. Einen Händlernamen, den das Spiel nicht kennt, ignoriert es stillschweigend.
Eine Warenzeile besteht aus sieben Angaben. Der tradeable-code ist der interne Name des Gegenstands; alles andere sind Preise, Voraussetzungen und Schalter, die jeweils mit -1 oder default auf „nicht anfassen“ stehen.
Setze nur, was du wirklich ändern willst, und lass den Rest auf der Vorgabe. Eine Liste mit 300 Zeilen, die alle nur -1 enthalten, ist viel Datei für keine Wirkung – und jede davon musst du nach einem Update nachprüfen.
Wir prüfen die 21 globalen Schlüssel auf Schreibweise, Bereich und Widersprüche, dazu den Aufbau der Warenlisten: unbekannte Händlernamen, doppelte Warencodes, unbekannte Angaben in einer Warenzeile, unmögliche Preise.
Wir prüfen nicht, ob ein Warencode im Spiel existiert. Dafür bräuchte es den vollständigen Gegenstandskatalog des Spiels – das ist ein eigenes Vorhaben und steht auf der Liste.
| Angabe | Standard | Pflicht | Was macht diese Einstellung? |
|---|---|---|---|
economy-reset-time-hoursWirtschaft zurücksetzen | -1.0Stunden | nein | Nach wie vielen Stunden die Wirtschaft komplett auf Anfang gestellt wird: Preise, Bestände und Guthaben der Händler. -1 heißt „nie“ – dann entwickelt sich die Wirtschaft über die ganze Laufzeit des Servers weiter. |
prices-randomization-time-hoursPreise neu würfeln | -1.0Stunden | nein | Nach wie vielen Stunden die Preise neu zufällig gesetzt werden. -1 lässt die Spielvorgabe gelten. Kurze Abstände machen den Handel unberechenbar – wer Preise vergleicht, findet jedes Mal andere. |
tradeable-rotation-time-ingame-hours-minWarenwechsel: frühestens | 48.0Spielstunden | nein | Wie viele Spielstunden mindestens zwischen zwei Warenwechseln liegen. Der Server würfelt einen Wert zwischen diesem und dem Höchstwert aus. |
tradeable-rotation-time-ingame-hours-maxWarenwechsel: spätestens | 96.0Spielstunden | nein | Die Obergrenze derselben Spanne. Muss größer sein als der Mindestwert. |
tradeable-rotation-time-of-day-minWarenwechsel: Tageszeit ab | 8.0Stunde des Spieltags | nein | Zu welcher Tageszeit ein Warenwechsel frühestens stattfindet, als Stunde des Spieltags. 8.0 ist acht Uhr morgens. |
tradeable-rotation-time-of-day-maxWarenwechsel: Tageszeit bis | 16.0Stunde des Spieltags | nein | Die späteste Tageszeit für einen Warenwechsel. Zusammen mit dem Mindestwert sorgt das dafür, dass sich das Angebot tagsüber ändert und nicht nachts um drei. |
fully-restock-tradeable-hoursNachschub bis zum vollen Regal | 2.0Stunden | nein | Wie lange es dauert, bis eine leergekaufte Ware wieder vollständig verfügbar ist. Kleine Werte heißen: Geld ist das einzige Hindernis. Große Werte machen seltene Waren wirklich selten. |
trader-funds-change-rate-per-hour-multiplierWie schnell Händler wieder Geld haben | 1.0Faktor | nein | Faktor darauf, wie schnell sich das Guthaben eines Händlers erholt. 0.5 halbiert das Tempo – wer viel verkauft, muss dann warten, bis der Händler wieder zahlen kann. |
prices-subject-to-deltaPreise folgen Angebot und Nachfrage | 1 | nein | Ist das an, steigt der Preis einer Ware, die viel gekauft wird, und fällt bei einer, die viel verkauft wird. Das ist der Kern des Wirtschaftssystems – aus ist es ein Katalog mit festen Preisen. |
prices-subject-to-player-countPreise hängen an der Spielerzahl | 0 | nein | Skaliert die Preise mit der Zahl der Spieler auf dem Server. Auf kleinen Servern dafür gedacht, dass wenige Spieler nicht sofort den Markt leerräumen. |
gold-price-subject-to-global-multiplierGoldpreis folgt dem globalen Faktor | 1 | nein | Ob der Goldkurs dem serverweiten Multiplikator folgt oder eigenständig bleibt. |
gold-base-priceGrundpreis für Gold | -1 | nein | Der Ausgangspreis einer Goldeinheit. -1 lässt die Spielvorgabe gelten. Gold ist die zweite Währung im Spiel – wer hier dreht, verschiebt den Wert aller Goldpreise auf einmal. |
gold-sale-price-modifierAbschlag beim Goldverkauf | -1.0 | nein | Wie viel weniger es beim Verkauf von Gold gibt als beim Kauf. -1 lässt die Spielvorgabe gelten. |
gold-price-change-percentage-stepGoldkurs: Schrittweite in Prozent | -1.0 | nein | Um wie viel Prozent sich der Goldkurs je Schritt bewegt. -1 lässt die Spielvorgabe gelten. |
gold-price-change-per-stepGoldkurs: Bewegung je Schritt | -1.0 | nein | Die absolute Bewegung des Goldkurses je Schritt. -1 lässt die Spielvorgabe gelten. |
economy-loggingHandelsprotokoll schreiben | 1 | nein | Schreibt jeden Kauf und Verkauf ins Protokoll: wer, was, wie viel, bei welchem Händler. Das ist die einzige Spur, wenn jemand behauptet, ihm sei etwas abhandengekommen – lass es an. |
traders-unlimited-fundsHändler haben unbegrenzt Geld | 0 | nein | Ist das an, kann jeder Händler jederzeit jede Menge ankaufen. Bequem, aber es nimmt dem Verkaufen jede Grenze: Wer eine Fundgrube hat, macht sie ohne Wartezeit zu Geld. |
traders-unlimited-stockHändler haben unbegrenzten Vorrat | 0 | nein | Ist das an, geht keine Ware mehr aus. Damit verlieren seltene Gegenstände ihren Reiz – wer genug Geld hat, bekommt alles, immer. |
global-only-after-player-sale-tradeable-availability-enabledWaren erst, nachdem jemand sie verkauft hat | 0 | nein | Ist das an, führen Händler eine Ware erst dann, wenn ein Spieler ihnen so eine verkauft hat. Das dreht die Wirtschaft um: Der Markt lebt dann von den Spielern, nicht vom Nachschub des Spiels. |
tradeable-rotation-enabledAngebot wechselt überhaupt | 1 | nein | Der Hauptschalter für den Warenwechsel. Aus heißt: Jeder Händler führt dauerhaft dasselbe Sortiment, die vier Zeitwerte darüber bewirken dann nichts mehr. |
enable-fame-point-requirementRuhmpunkte als Voraussetzung | 1 | nein | Ob Waren, die Ruhmpunkte verlangen, diese auch wirklich verlangen. Aus heißt: Jeder kauft alles, sobald er das Geld hat. |
| Angabe | Standard | Was macht diese Einstellung? |
|---|---|---|
tradeable-codeWarencode | | Der interne Name der Ware, zum Beispiel Weapon_AK47 oder Frag_Grenade. Nur damit findet der Händler den Gegenstand. |
base-purchase-priceKaufpreis | -1 | Was der Spieler zahlt. -1 lässt den Preis des Spiels gelten. |
base-sell-priceVerkaufspreis | -1 | Was der Händler zahlt, wenn ein Spieler ihm die Ware verkauft. -1 lässt den Preis des Spiels gelten. |
delta-pricePreisbewegung | -1.0 | Wie stark der Preis dieser einen Ware auf Angebot und Nachfrage reagiert. Wirkt nur, wenn die Preisbewegung global eingeschaltet ist. |
can-be-purchasedÜberhaupt kaufbar | default | default lässt die Vorgabe gelten, sonst 1 für kaufbar und 0 für nicht kaufbar. So sperrt man einzelne Gegenstände, ohne sie ganz aus dem Spiel zu nehmen. |
required-famepointsNötige Ruhmpunkte | -1 | Wie viele Ruhmpunkte jemand haben muss, um diese Ware zu kaufen. -1 heißt: keine eigene Vorgabe. |
available-after-sale-onlyErst nach einem Spielerverkauf | default | Wie der globale Schalter, aber nur für diese eine Ware. |
A_0_ArmoryA_0_BarberA_0_BoatShopA_0_HospitalA_0_HunterA_0_Master_HunterA_0_MechanicA_0_SaloonA_0_TraderB_4_ArmoryB_4_BarberB_4_BoatShopB_4_HospitalB_4_HunterB_4_Master_HunterB_4_MechanicB_4_SaloonB_4_TraderC_2_ArmoryC_2_BarberC_2_BoatShopC_2_HospitalC_2_HunterC_2_Master_HunterC_2_MechanicC_2_SaloonC_2_TraderZ_3_ArmoryZ_3_BarberZ_3_BoatShopZ_3_HospitalZ_3_HunterZ_3_Master_HunterZ_3_MechanicZ_3_SaloonZ_3_Trader{
"economy-override": {
"traders-unlimited-funds": "0",
"fully-restock-tradeable-hours": "6.0",
"traders": {
"A_0_Armory": [
{
"tradeable-code": "Weapon_AK47",
"base-purchase-price": "4500",
"base-sell-price": "900",
"delta-price": "-1.0",
"can-be-purchased": "default",
"required-famepoints": "-1",
"available-after-sale-only": "default"
}
]
}
}
}Zieh sie – allein oder mit dem ganzen Ordner – in den Konfigurator. Geprüft wird in deinem Browser, hochgeladen wird nichts.
Zum Konfigurator →