Înapoi la blogToate tutorialele Metin2
Tutoriale Metin2 · Lecția 77 din 99

Cum pregătești un update de client Metin2 cu autopatcherul, fără să strici clientul

2 noiembrie 2026 6 min de citit

Când adaugi un item nou, o hartă sau o fereastră nouă, jucătorii au nevoie și de fișiere noi în client. Nu le poți cere să descarce iar 2 GB. Pentru asta există **autopatcherul**: programul care, la pornire, compară clientul jucătorului cu versiunea de pe serverul tău și descarcă doar ce s-a schimbat. Dacă publici greșit, un jucător poate rămâne cu jumătate de update și un client care nu mai pornește. În această lecție înveți ordinea sigură.

Pe scurt: pregătești fișierele noi ale clientului, le testezi local, generezi lista de fișiere cu hash-urile lor, le încerci pe un client vechi, abia apoi le publici: întâi fișierele, la final lista. Păstrezi versiunea veche pentru revenire.

Dacă nu știi încă ce e un autopatcher, citește întâi ce este un autopatcher Metin2.

Cuvinte pe care le vei întâlni

CuvântCe înseamnă
PatchPachetul de fișiere noi sau schimbate dintr-un update.
Manifest (lista de fișiere)Un fișier care spune: „versiunea corectă a clientului are aceste fișiere, cu aceste amprente”.
Hash (amprentă)Un cod calculat din conținutul unui fișier. Dacă se schimbă un singur byte, hash-ul se schimbă.
Server web de patchLocul de unde autopatcherul descarcă fișierele (un site sau un folder pe un server web).
Pack (.eix / .epk)Arhivele din folderul pack al clientului, în care stau iconițele, modelele, textele.

Cum funcționează, pe scurt

Gândește-te la o listă de cumpărături cu poze. Autopatcherul descarcă de pe serverul tău manifestul: lista cu toate fișierele clientului și amprenta (hash-ul) fiecăruia. Apoi se uită la fișierele jucătorului și calculează amprentele lor. Unde amprenta diferă sau fișierul lipsește, descarcă varianta de pe server. Unde e identică, nu face nimic.

Detaliile diferă de la un autopatcher la altul (ce fel de hash folosește, cum se numește lista, dacă are și un număr de versiune), dar ideea e mereu aceasta. Uită-te în documentația autopatcherului tău pentru numele exacte.

Două consecințe importante:

  • dacă manifestul spune un hash, iar fișierul de pe server e altul, autopatcherul îl descarcă la nesfârșit sau raportează eroare;
  • dacă manifestul nou ajunge pe server înaintea fișierelor noi, jucătorii care pornesc jocul în acel moment primesc un amestec.

Pasul 1: Pregătește fișierele noi într-o copie a clientului

Lucrezi mereu pe o copie a clientului curent, nu pe singurul exemplar. Pune în copie modificările: pack-ul cu iconița nouă, item_proto nou din locale, textele noi. Ce fișiere din client trebuie schimbate la un item nou afli în diferențele client–server la iteme noi.

Fă o listă scrisă cu fiecare fișier schimbat. Exemplu:

text
UPDATE CLIENT 1.4.2 (merge cu update-ul de server din 2026-11-05)
pack/locale_ro.eix + pack/locale_ro.epk   (item_proto, item_list, itemdesc)
pack/icon.eix + pack/icon.epk             (iconita item 95000)

Un .eix și .epk cu același nume formează o pereche: se schimbă și se publică împreună. Dacă trimiți doar unul, pack-ul devine ilizibil pentru client.

Pasul 2: Testează clientul local

Pornești copia clientului pe calculatorul tău, legată la serverul de test, care are deja partea de server a update-ului. Verifici:

  1. Clientul pornește fără erori. Dacă se închide, citește syserr.txt din folderul clientului.
  2. Itemul nou are iconiță, nume și descriere.
  3. Lucrurile vechi arată la fel ca înainte.

Abia când clientul local e bun, treci la publicare.

Pasul 3: Generează manifestul

Majoritatea autopatcherelor vin cu o unealtă care parcurge folderul clientului și scrie manifestul cu hash-urile. O rulezi pe copia testată.

Ca să verifici de mână amprenta unui fișier, pe Windows, în PowerShell:

text
Get-FileHash .\pack\icon.epk -Algorithm SHA256

Pe serverul FreeBSD, după ce l-ai urcat:

sh
sha256 /usr/local/www/patch/pack/icon.epk

Calea de pe server e doar un exemplu. Cele două amprente trebuie să fie identice. Dacă nu sunt, fișierul s-a stricat la upload (de exemplu WinSCP l-a trimis în mod text în loc de binar).

Folosește același tip de hash pe care îl folosește autopatcherul tău. Un hash SHA256 nu se compară cu unul MD5.

Pasul 4: Publică întâi într-un loc de test

Dacă serverul tău web permite, urci patch-ul într-un folder separat, de exemplu patch-test, și ai o copie a autopatcherului care citește de acolo. Apoi:

  1. Iei un client vechi, exact cum îl au jucătorii acum (versiunea 1.4.1).
  2. Pornești autopatcherul de test.
  3. Verifici că descarcă doar fișierele din listă, că termină fără erori și că jocul pornește.
  4. Mai pornești o dată: acum nu trebuie să mai descarce nimic.

Testul cu clientul vechi e cel care contează. Pe calculatorul tău, clientul „merge” pentru că ai deja toate fișierele; un jucător pornește de la versiunea veche.

Pasul 5: Publică pe live, în ordinea corectă

  1. Păstrează o copie a fișierelor și a manifestului curente (versiunea 1.4.1). Acesta e planul tău de revenire.
  2. Urcă fișierele noi pe serverul de patch.
  3. Verifică hash-urile lor pe server.
  4. La final, înlocuiește manifestul.

Ordinea contează: cât timp manifestul e cel vechi, jucătorii descarcă versiunea veche, care e întreagă. În clipa în care pui manifestul nou, toate fișierele lui sunt deja acolo.

Fă publicarea în fereastra de mentenanță, împreună cu update-ul de server (vezi planul de mentenanță). Un client nou cu un server vechi, sau invers, poate da erori.

Pasul 6: Verifică după publicare

  • Rulează autopatcherul real pe un client vechi.
  • Intră în joc și verifică itemul nou.
  • Urmărește Discordul în prima oră: dacă mai mulți jucători raportează aceeași eroare, oprește-te și compară hash-urile.

Dacă folosești un CDN sau un cache în fața serverului de patch, unii jucători pot primi o vreme fișierele vechi. Golește cache-ul după publicare.

Cum revii dacă ceva nu merge

Pui la loc fișierele vechi din copia de la Pasul 5 și, la final, manifestul vechi. La majoritatea autopatcherelor, clienții care au apucat să ia versiunea nouă sunt readuși la cea veche la următoarea pornire, pentru că amprentele lor nu se mai potrivesc cu lista. Verifică asta pe un client de test. Dacă și serverul a primit update, trebuie să revii și acolo, ca să rămână pereche.

Ce nu pui niciodată pe serverul de patch

  • fișierele serverului (share, CONFIG, item_proto.txt de server);
  • sursele clientului sau ale serverului;
  • parole, backupuri, fișiere .sql.

Tot ce e pe serverul de patch poate fi descărcat de oricine.

Greșeli des întâlnite

GreșealăCe se întâmplă
Urci manifestul înaintea fișierelorJucătorii primesc un client pe jumătate
Urci doar .epk, fără .eixPack-ul nu se mai poate citi, clientul se închide
Testezi doar pe clientul tăuNu vezi ce primește un jucător cu versiunea veche
Nu păstrezi versiunea vecheNu ai cum reveni rapid
Upload în mod textFișierul se strică, hash-ul nu se potrivește

Întrebări frecvente

Trebuie să schimb și executabilul clientului?

Doar dacă update-ul o cere (de exemplu sursă de client recompilată). E cel mai sensibil fișier: antivirusurile îl pot bloca. Testează-l separat.

Autopatcherul are nevoie de adrese directe și stabile către fiecare fișier. De obicei se folosește un server web sau un hosting de fișiere statice. Vezi resursele Metin2.

Ce fac cu jucătorii care nu folosesc autopatcherul?

Pune pe site și un client complet actualizat, cu data versiunii în nume.

Ce urmează

Lecția următoare: diferențele client–server la iteme noi. 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ă.

DiscordWhatsApp