aslain.dev
0%
01 Hizmetler 02 Hakkımda 03 Projeler 04 Stack 05 Blog 06 İletişim
← Tüm makaleler Metin2

Metin2 Drop-Einstellungen: common_drop und mob_drop

Auf einem Metin2-Server prägt nichts die Wirtschaft und den Gameplay-Loop stärker als korrekt konfigurierte Metin2 Drop-Einstellungen. Welches Item von welchem Mob, auf welchem Level und mit welcher Wahrscheinlichkeit fällt, ist in zwei zentralen Textdateien gespeichert: common_drop_item.txt und mob_drop_item.txt. In diesem Leitfaden gehe ich den Aufbau dieser Dateien durch, erkläre die Bedeutung der Spalten, das Berechnen der Raten und vor allem, wie du deine Änderungen sicher testest, bevor du sie live schaltest.

Wo die Drop-Dateien liegen und was sie tun

Drop-Tabellen sind reine Textdateien, die der game-Core beim Start einliest. Sie liegen meist unter share/locale/<sprache>/ oder im Verzeichnis, in dem der Core läuft. Es gibt vier sich ergänzende Dateien:

  • common_drop_item.txt — Eine generische Drop-Tabelle, gesteuert über Levelbereich und Mob-Rang. Sie ist an keinen bestimmten Mob gebunden; sie legt die Regel fest „alle Monster um dieses Level können dieses Item mit dieser Rate fallen lassen".
  • mob_drop_item.txtMob-spezifische Drops. Arbeitet mit Gruppen und erlaubt dir, über verschiedene Typen wie kill und drop mehrere Regeln für denselben Mob zu definieren.
  • etc_drop_item.txt — Einfache, mob-unabhängige Wahrscheinlichkeitseinträge für einzelne Items (zum Beispiel ein seltenes Material).
  • drop_item_group.txt — Gruppenbasierte Inhalts-Drops wie Graben, Angeln und Kisten.

Viele Einsteiger versuchen, alles allein über mob_drop_item.txt auszubalancieren, obwohl es ein deutlich saubereres Design ist, den allgemeinen Material- und Geldfluss über common_drop_item.txt zu steuern.

common_drop_item.txt: generische Drops nach Level und Rang

In dieser Datei ist jede Zeile eine Item-Regel. Eine typische Zeile enthält: Startlevel, Endlevel, Itemname, Item-Vnum, Anzahl und Wahrscheinlichkeitsspalten je Mob-Rang (meist Pawn, S_Pawn, Boss, King in dieser Reihenfolge, in Prozent). Beispiel:

# Lev_min  Lev_max  ItemName        Vnum   Count  Pawn   S_Pawn  Boss   King
1         15       Yang_Coin       1       1      30.0   40.0    60.0   100.0
20        35       Healing_Potion  27002   1      2.5    3.0     5.0    10.0
30        50       Stone_Fragment  30019   1      0.5    0.8     1.5    4.0

Die Logik ist klar: Dasselbe Item fällt bei höher eingestuften Mobs häufiger, je weiter das Level steigt. Da Spaltenzahl und -reihenfolge je nach Core-Version variieren können, prüfe das Layout anhand des Headers und der vorhandenen Beispielzeilen deiner eigenen Datei; eine erfundene Spalte hinzuzufügen lässt die ganze Zeile stillschweigend ignorieren. Verwende Unterstriche statt Leerzeichen in Itemnamen und ordne die Vnum exakt item_proto zu.

mob_drop_item.txt: Gruppen, kill- und drop-Typen

Diese Datei besteht aus geschweift geklammerten Gruppen. Jede Gruppe ist an einen oder mehrere Mobs gebunden, und ein Type legt ihr Verhalten fest. Die beiden meistgenutzten Typen sind drop und kill.

Beim drop-Typ hat jedes Item eine unabhängige Wahrscheinlichkeit; stirbt der Mob, würfelt jede Zeile einzeln, sodass mehrere Items aus derselben Gruppe fallen können:

Group  Wolfman_Drop
{
	Mob	2090
	Type	drop
	1	72723	1	30
	2	27993	1	5
	3	30019	1	1
}

Beim kill-Typ ist die letzte Spalte ein Gewicht; der Core skaliert diese Gewichte gegen ihre Summe und wählt pro Tod ein einziges Item (oder keines). Ideal, um Boss-Items nach dem Prinzip „eines pro Kill" zu vergeben:

Group  Boss_Kill
{
	Mob	1093
	Type	kill
	1	19	1	1000
	2	20	1	500
	3	25	1	100
}

Die Skala der Wahrscheinlichkeitsspalte unterscheidet sich von Core zu Core: In manchen Dateien bedeutet 30 direkt 30 %, in anderen wird eine feinere Skala verwendet. Setze das nicht voraus; prüfe die Skala selbst, indem du die Rate eines bekannten Items in derselben Datei als Referenz nimmst.

Die Drop-Rate berechnen und ausbalancieren

Wie viel von einem Item pro Stunde fällt, schätzt du grob so: effektive Wahrscheinlichkeit × pro Stunde getötete Mobs × globaler Drop-Multiplikator. Die meisten Serverdateien haben einen allgemeinen Drop-Raten-Multiplikator (in der Core-Konfiguration oder CONFIG). Beziehe diesen Multiplikator beim Einstellen der Tabellenwerte immer mit ein; sonst ruiniert eine „klein" aussehende Zahl live den Markt.

  • Binde seltene Items mit dem kill-Typ an den jeweiligen Boss statt an common_drop_item.txt, damit du die Farmbarkeit unter Kontrolle hältst.
  • Skaliere den Geld- und Grundmaterialfluss über common_drop_item.txt; das ist nachhaltiger, als Mobs einzeln zu bearbeiten.
  • Definierst du dasselbe Item in mehreren Dateien, addieren sich die Raten; stelle sicher, dass du keinen Eintrag versehentlich doppelst.

Deine Änderungen laden und testen

Drop-Tabellen werden beim Core-Start in den Speicher geladen; damit eine Änderung wirkt, musst du daher meist den game-Core neu starten (der Ingame-Befehl /reload lädt Quests neu, auf den meisten Cores nicht die Drop-Dateien). Ein sicherer Testablauf sieht so aus:

  • Nimm die Änderung zuerst auf einem Testserver vor, niemals live. Bearbeite die Datei, starte game neu.
  • Spawne den Ziel-Mob mit einem GM-Account massenhaft (GM-Befehle im Stil von /m <vnum>) und töte ihn Dutzende Male, um statistisch zu beobachten. Ein einzelner Kill beweist nichts.
  • Bestätige, dass die Vnum wirklich existiert, indem du dir das Item mit /i <vnum> gibst; eine falsche Vnum wird stillschweigend ignoriert.
  • Beobachte die syslog-Datei des Cores; hat eine Drop-Datei einen Parse-Fehler, siehst du beim Start eine Warnzeile.

Setze die Rate beim Testen vorübergehend auf einen hohen Wert (zum Beispiel 100 %), um zu bestätigen, dass die Mechanik funktioniert, und senke sie dann auf den echten ausbalancierten Wert. So erkennst du, ob „das Item fällt nie" ein Raten-Problem oder ein Konfigurationsfehler ist.

Häufige Fehler

  • Falsches Trennzeichen: Spalten in diesen Dateien werden mit TAB getrennt; Leerzeichen zerstören die Zeile. Stelle deinen Editor so ein, dass Tabs angezeigt werden.
  • Ungültige Vnum: Eine in item_proto fehlende Vnum wirft keinen Fehler, sie fällt nur nie. Prüfe die Vnum zuerst.
  • Neustart vergessen: Die Datei zu speichern und zu sagen „es geht nicht" ist der häufigste Fehler; der Core nutzt noch die alte Tabelle.
  • Multiplikator vergessen: Ist der globale Drop-Multiplikator 5x, sind 2 % in der Tabelle in Wirklichkeit 10 %.

Häufig gestellte Fragen

Was ist der Unterschied zwischen common_drop und mob_drop?

common_drop_item.txt ist eine generische Tabelle nach Level und Rang; nicht an einen bestimmten Mob gebunden. mob_drop_item.txt definiert Drops für einzelne Mobs oder Mob-Gruppen und bietet über die Typen kill und drop feinere Kontrolle.

Ich habe die Drop-Rate geändert, aber nichts fällt, warum?

Die drei wahrscheinlichsten Ursachen: Du hast den Core nicht neu gestartet, du hast Spalten mit Leerzeichen statt TAB getrennt, oder du hast eine nicht existierende Vnum eingegeben. Prüfe das syslog und verifiziere die Vnum, indem du das Item mit /i spawnst.

Wie teste ich, ob die Raten stimmen?

Töte denselben Mob mit einem GM-Account viele Male und zähle die gefallenen Items. Ein einmaliger Test ist irreführend; für ein statistisches Ergebnis brauchst du mindestens einige Hundert Kills. Setze die Rate zuerst auf 100 %, um die Mechanik zu prüfen, und validiere dann die Balance mit dem echten Wert.

Möchtest du die Drop-Balance deines Servers von Grund auf aufbauen oder bestehende Tabellen aufräumen? Wenn du Hilfe bei der Metin2-Serverinstallation, Quests und Systemanpassungen brauchst, kontaktiere mich — wir planen die Drop-Tabellen gemeinsam passend zu deiner Wirtschaft.

Bu kategorideki tüm yazılar →

Devamı için