Ai căutat un item în `mob_drop_item.txt` și nu l-ai găsit, dar jucătorii îl primesc din tot felul de monștri? Probabil vine din **dropul comun**. Acesta e o listă de reguli valabile pentru toți monștrii obișnuiți, fără să-i scrii pe fiecare. E util, dar și periculos: o singură valoare greșită schimbă dropul pe tot serverul. În lecție citim fișierul, plus două fișiere înrudite.
common_drop_item.txt dă iteme din toți monștrii de un anumit rang, în funcție de nivelul jucătorului. Fiecare rând are patru blocuri de câte șase coloane, câte unul pentru fiecare rang de monstru. Șansa e pe scara „din 400”, ca la Type drop.Cuvinte pe care le vei întâlni
| Cuvânt | Ce înseamnă |
|---|---|
| Drop comun | Drop care nu ține de un monstru anume, ci de rangul lui și de nivelul jucătorului. |
| Rang | Categoria monstrului, scrisă în mob_proto în coloana RANK. |
| PAWN, S_PAWN, KNIGHT, S_KNIGHT | Rangurile monștrilor obișnuiți, de la cel mai slab la cel mai puternic. |
| BOSS, KING | Rangurile boșilor și ale pietrelor Metin. |
Pasul 1: Cum arată fișierul
În pachetul verificat, fișierul e în share/locale/english/common_drop_item.txt și are peste 500 de rânduri. Primul rând e un antet cu numele rangurilor:
PAWN S_PAWN KNIGHT S_KNIGHTApoi urmează rânduri ca acesta (aici e doar primul bloc, de 6 coloane; rândul real continuă cu încă trei blocuri la fel):
SabieInceput 1 15 0.08 11 5000| Coloană | Exemplu | Ce înseamnă |
|---|---|---|
| 1 | SabieInceput | O etichetă, doar pentru oameni. Serverul o ignoră. În original e în coreeană și apare doar pe primul rând al fiecărui item. |
| 2 | 1 | Nivelul minim al jucătorului. |
| 3 | 15 | Nivelul maxim al jucătorului. |
| 4 | 0.08 | Șansa, pe scara „din 400”. |
| 5 | 11 | VNUM-ul itemului (Sabie+1). |
| 6 | 5000 | O notă: „cam 1 din 5000 de monștri”. Serverul nu o folosește. |
Blocul 1 se aplică monștrilor PAWN, blocul 2 celor S_PAWN, blocul 3 celor KNIGHT, blocul 4 celor S_KNIGHT. În pachetul verificat, același item are șanse tot mai mari de la un bloc la altul: 0.08 la PAWN, 0.32 la S_KNIGHT. Monștrii mai puternici dau mai des.
Pasul 2: Cum citești șansa
Am verificat în sursă: serverul înmulțește valoarea cu 10.000 și o compară cu aceeași plajă ca la Type drop. Deci, la nivel egal cu monstrul și fără bonusuri:
| Valoare | Șansă | Pe înțeles |
|---|---|---|
0.08 | 0,02% | 1 din 5.000 |
0.32 | 0,08% | 1 din 1.250 |
4 | 1% | 1 din 100 |
Formula: șansa (%) = valoare / 4. Șansa se ajustează apoi după diferența de nivel și bonusuri, ca la orice drop (lecția Șansele reale de drop).
Pasul 3: Trei lucruri care surprind
- Nivelul e al jucătorului, nu al monstrului. Rândul
1 15merge pentru jucătorii de nivel 1–15, indiferent pe ce monstru obișnuit îl omoară. - Boșii și pietrele nu primesc drop comun. În sursa verificată, doar primele patru ranguri au blocuri. Un boss (
BOSS) sau o piatră Metin (KING) nu dau nimic din acest fișier. - Se adună cu restul. Dacă un item e și în
common_drop_item.txt, și în grupa monstrului dinmob_drop_item.txt, jucătorul are două șanse separate.
Pasul 4: Cum modifici în siguranță
Exemplu: vrei ca Sabie+1 să cadă de două ori mai des la jucătorii de nivel 1–15, de la toate rangurile.
- Fă backup:
cp common_drop_item.txt common_drop_item.txt.bak-2026-11-02. - Găsește rândul după VNUM și nivel, în Notepad++ cu Ctrl+F.
- Dublează doar coloana de șansă din fiecare bloc:
0.08devine0.16,0.104devine0.208și așa mai departe. Coloana 6 poți s-o actualizezi pentru tine (2500), dar nu contează pentru server. - Nu șterge blocuri și nu lăsa rânduri pe jumătate. Pentru un item nou, copiază un rând întreg existent și schimbă valorile în toate cele patru blocuri.
- Repornește canalele și verifică
syserr(Oprire și restart).
Foarte important: în sursa verificată, acest fișier e citit strict cu TAB-uri, rând cu rând. Un spațiu în loc de TAB mută toate coloanele și strică rândul. Dacă un VNUM nu există, serverul scrie No such an item în syserr și nu pornește. Vezi Fișiere TXT: taburi și encoding.
Ce ar trebui să vezi: diff -u arată doar valorile schimbate, iar serverul pornește fără erori noi.
Fișierul înrudit 1: etc_drop_item.txt
Acesta controlează „trofeele” monștrilor: gheare, blănuri, colți. Funcționează în doi pași:
- În
mob_proto, coloanaDROP_ITEMspune ce trofeu are monstrul. În pachetul verificat, Lupul (102) are30028= Gheară de lup. - În
etc_drop_item.txtse scrie șansa acelui trofeu: numele intern al itemului, un TAB, apoi valoarea. Pentru gheara de lup, valoarea e3.0, adică3 / 400 = 0,75%rată de bază.
Capcana: aici nu se scrie VNUM-ul, ci numele original al itemului, exact ca în a doua coloană din item_proto (în pachetul verificat, în coreeană). Am văzut în sursă că serverul compară doar începutul numelui: un nume scurtat poate potrivi alt item. Copiază numele, nu-l scrie de mână.
Fișierul înrudit 2: drop_item_group.txt
În pachetul verificat e gol, dar serverul îl citește la pornire. Poate conține grupe asemănătoare cu Type drop, care se adaugă la dropul monstrului:
Group ExempluDropGroup
{
Vnum 1
Mob 101
1 27003 20 1
}Atenție, ordinea coloanelor e alta decât în mob_drop_item.txt: VNUM item, șansă, apoi cantitate. Ca începător, lasă-l gol și pune totul în mob_drop_item.txt, ca să ai un singur loc de verificat. În sursa verificată, acest fișier se citește înaintea lui mob_drop_item.txt, iar dacă același monstru are grupă în amândouă, a doua grupă drop nu e tratată corect de cod. Încă un motiv să folosești un singur loc.
Greșeli des întâlnite
| Ce vezi | Cauza probabilă | Ce faci |
|---|---|---|
| Un item cade de peste tot | E în dropul comun | Caută VNUM-ul în common_drop_item.txt |
| Boss-ul nu dă dropul comun | Comportament normal | Pune itemul în grupa boss-ului |
| Serverul nu pornește după editare | Spațiu în loc de TAB sau VNUM greșit | syserr, apoi backup |
| Trofeul nu cade deloc | Nume greșit în etc_drop_item.txt sau DROP_ITEM 0 | Copiază numele exact din item_proto |
Întrebări frecvente
Pot dezactiva un item din dropul comun fără să șterg rândul?
Da: pune nivelul minim 0 în blocul respectiv. În sursa verificată, blocurile cu nivel minim 0 sunt sărite.
Care fișier „câștigă” dacă un item e în două locuri?
Niciunul: se verifică amândouă, separat. Jucătorul are două șanse.
De ce sunt numele coreene?
Pachetele de Metin2 provin din versiunea coreeană a jocului. Coloanele cu nume coreene sunt de obicei etichete; numerele sunt cele care contează.
Ce urmează
Ai văzut că toate șansele sunt „de bază”. Acum afli ce le schimbă: Cum calculezi șansele reale de drop. Toate lecțiile sunt în lista tutorialelor Metin2.
Server Metin2 gata de joc
Găzduire Metin2 în România, cu instalare de serverfiles, bază de date MySQL și protecție Anti-DDoS inclusă.