O sabie +0 devine +1, +2… până la +9. La fiecare pas, jucătorul plătește yang, uneori aduce materiale și riscă să piardă itemul. Acest „urcuș” ține jucătorii activi săptămâni întregi, dacă e bine reglat. Prea ușor, toți au +9 în prima zi. Prea greu, renunță. În lecția asta vezi cum se leagă fișierele între ele și cum calculezi costul real al unui upgrade.
item_proto, coloana REFINE spune în ce item se transformă cel curent, iar REFINESET spune ce rețetă folosește. Rețeta (yang, materiale, șansă) stă în tabelul refine_proto din baza de date. Planifici pe hârtie, apoi modifici pe serverul de test.Cuvinte pe care le vei întâlni
| Cuvânt | Ce înseamnă |
|---|---|
| Upgrade (rafinare) | Transformarea unui item în nivelul următor, de exemplu +6 în +7. |
| Fierar | NPC-ul la care se face upgrade-ul. |
| refine_proto | Tabelul din baza de date cu rețetele: cost, materiale, șansă. |
| Rețetă | Un rând din refine_proto, identificat printr-un număr (id). |
| Matrice | Un tabel simplu, nivel cu nivel, în care îți planifici costurile. |
Cum se leagă fișierele
Ia Sabie+6 (VNUM 16) din pachetul verificat. În rândul ei din item_proto.txt:
- REFINE =
17→ după upgrade devine Sabie+7; - REFINESET =
7→ folosește rețeta cu id 7.
Rețeta 7 din tabelul refine_proto (baza de date player), în pachetul verificat:
| Coloană | Valoare | Ce înseamnă |
|---|---|---|
| id | 7 | Numărul rețetei |
| vnum0 / count0 | 30053 / 1 | Material: 1 × Piele de talpă de urs |
| vnum1…vnum4 | 0 | Fără alte materiale |
| cost | 30000 | Taxa în yang |
| prob | 50 | Șansa de reușită, în procente |
Itemul de la nivelul maxim are REFINE = 0 și REFINESET = 0: nu se mai poate îmbunătăți. Sabie+9 e un astfel de exemplu.
Diferă între pachete: în pachetul verificat, item_proto e fișier text, iar refine_proto e doar în SQL. În altele pot fi ambele în SQL sau ambele în fișiere. Verifică la tine.
Ce se întâmplă la fierar (în sursa verificată)
Am citit funcția de upgrade (DoRefine din game/src/char_item.cpp). La upgrade-ul obișnuit, la fierar:
- serverul verifică dacă ai yang și materiale;
- ia materialele înainte de aruncarea zarului;
- dă cu zarul (1–100) și compară cu
prob; - reușită: itemul vechi dispare, apare unul nou cu VNUM-ul din REFINE, iar bonusurile se copiază pe el;
- eșec: itemul se pierde, iar taxa și materialele sunt consumate oricum.
Pergamentele speciale de upgrade pot schimba aceste reguli (de exemplu, să nu pierzi itemul). Ele au logica lor și merită testate separat.
Matricea sabiei, în pachetul verificat
Iată toată scara Sabiei, citită din item_proto și refine_proto:
| Upgrade | Rețetă | Yang | Materiale | Șansă |
|---|---|---|---|---|
| +0 → +1 | 1 | 600 | – | 90% |
| +1 → +2 | 2 | 1.200 | – | 90% |
| +2 → +3 | 3 | 2.500 | – | 90% |
| +3 → +4 | 4 | 5.000 | – | 90% |
| +4 → +5 | 5 | 10.000 | – | 80% |
| +5 → +6 | 6 | 20.000 | – | 60% |
| +6 → +7 | 7 | 30.000 | 1 × Piele de talpă de urs (30053) | 50% |
| +7 → +8 | 8 | 45.000 | 2 × Banderolă albă+ (30073) | 40% |
| +8 → +9 | 9 | 75.000 | 2 × Porțelan spart (30033) | 30% |
Observă tiparul: până la +5 e aproape doar yang, apoi apar materialele și șansa scade. Materialele vin din dropuri, deci leagă upgrade-ul de vânătoare (vezi capitolul despre drop, de exemplu Drop la monștri).
Cum calculezi costul real
Greșeala clasică: te uiți doar la taxa unei încercări. Dar la 30% șansă, jucătorul are nevoie în medie de aproximativ 1 / 0,30 ≈ 3,3 încercări.
Pentru +8 → +9:
- yang: 75.000 × 3,3 ≈ 250.000;
- materiale: 2 × 3,3 ≈ 7 bucăți de Porțelan spart;
- plus o sabie +8 pierdută la fiecare eșec, adică în medie 2,3 săbii +8 refăcute de la nivelurile de dinainte.
Ultimul punct e cel mai scump. O sabie +8 înseamnă deja toate upgrade-urile de dinainte, cu eșecurile lor. De aceea, o mică schimbare de șansă la nivelurile mari schimbă enorm costul total.
Sfat: fă un tabel în Excel sau pe hârtie cu: șansă, încercări medii (1 / șansă), yang și materiale pe încercare, total. Doar pentru calcule, nu pentru editarea fișierelor jocului.
Cum planifici pe etape de joc
Leagă fiecare prag de un loc de farm, ca jucătorul să știe ce are de făcut:
Etapa nivel 30: arma +6 -> materiale din harta 2 -> taxa yang -> upgrade
Etapa nivel 55: arma urmatoare -> boss dedicat -> materiale craftateReguli simple:
- fiecare material să aibă cel puțin două surse (doi monștri, un boss și un cufăr), ca să nu se blocheze totul într-un singur loc de farm;
- taxa de yang să crească odată cu nivelul, ca să scoată yang din economie (vezi Economia de yang);
- testează timpul: câte minute de farm cere un material, pentru un jucător obișnuit.
Cum schimbi o rețetă (pe scurt)
Pe serverul de test, cu backup făcut, întâi citești:
SELECT id, vnum0, count0, vnum1, count1, cost, prob FROM refine_proto WHERE id BETWEEN 1 AND 9;Apoi schimbi o singură valoare, de exemplu șansa rețetei 7 din 50 în 55, și repornești serverul de test. Pașii detaliați, cu toate capcanele, sunt în lecția Șansele și taxele de upgrade (refine_proto).
Atenție: mai multe iteme pot folosi aceeași rețetă. Înainte să o schimbi, caută în item_proto ce iteme au acel REFINESET.
Ce testezi
| Test | Ce ar trebui să vezi |
|---|---|
| Upgrade cu yang și materiale suficiente | Fereastra fierarului arată costul și materialele corecte |
| Fără material | Mesaj că lipsesc materialele, nimic consumat |
| 10–20 de încercări | Rata reușitelor apropiată de prob (nu exactă, e noroc) |
| Item cu bonusuri, reușit | Bonusurile rămân pe itemul nou |
| Relog după upgrade | Itemul nou e la locul lui |
Greșeli des întâlnite
- Reglezi șansa fără să calculezi costul eșecurilor. Un 30% pare „normal”, dar înseamnă de peste 3 ori costul.
- Schimbi o rețetă folosită de multe iteme. Ai modificat, fără să vrei, și armurile sau bijuteriile.
- Material fără sursă. Pui în rețetă un VNUM care nu se dropează nicăieri și upgrade-ul devine imposibil.
- REFINE spre un VNUM inexistent. Fierarul refuză upgrade-ul, iar în
syserrapare o eroare.
Întrebări frecvente
Pot avea mai mult de 5 materiale pe o rețetă?
Nu în pachetul verificat: tabelul are 5 perechi (vnum0…vnum4) și sursa folosește tot 5.
Pot face ca itemul să nu se piardă la eșec?
Nu din refine_proto. Regula e în cod sau în pergamentele speciale de upgrade. O schimbare în cod cere recompilare.
Schimbarea afectează itemele deja făcute?
Nu. Afectează doar upgrade-urile făcute de acum încolo.
Ce urmează
Lecția următoare: Stivuirea și limitele unui item. 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ă.