Kuidas lahendada Metin2 kliendi paiga ja paketi värskendamise probleeme?
Üksikasjalik juhend plaastri, paketi, juur-, lokaadi ja vana kliendifaili probleemide kohta.
Metin2 serverites peavad kliendi poolel tehtud muudatused mängijateni õigesti jõudma. Juur-, lokaadi-, uiscripti-, ikooni-, item_proto-, mob_proto-, kaardi- või efektifailide värskendamisel võib mängija sisenemisel mängu vanade failidega tekkida tõsiseid vastuolusid.
Kui plaaster ei tööta, kui faili ei laadita alla, kui mängijad logivad sisse vana paketiga või kui mõnel mängijal on tõrkeid, kuid teistel mitte, on probleem tavaliselt kliendi värskendussüsteemis.
1. Plaastriprobleemi sümptomid
- Uute üksuste ikoone mängijatele ei kuvata.
- Mõned mängijad kogevad kliendi sulgemisi, mõned mitte.
- Uus liidese muudatus ei kajastu pleieris.
- Osadele mängijatele uus kaart ei avane.
- Patcher ei laadi faile alla või annab veateate.
- Kuigi juur on värskendatud, töötab mäng vana Pythoni failiga.
- Puuduva paketifaili vead ilmuvad kliendi süsteemis.
2. Milliseid faile tuleks värskendada?
Värskendamist vajavad paketifailid sõltuvad tehtud muudatustest.
- Pythoni liidese muudatus: juurpakk
- Tõlke- ja liidestekstid: kohalik pakk
- Uue üksuse ikoon: ikoonipakett ja item_list
- Uus üksus/mobiil: kliendi item_proto, mob_proto, ikooni/mudeli failid
- Uus kaart: kaardipakett, atlasinfo, maastiku/vara failid
- Uus efekt: efektifailid ja efektide määratlused
Ainult ühe faili värskendamisest ei pruugi piisata. Näiteks uue üksuse lisamisel peavad ühilduma nii serveri item_proto, kliendi item_proto, item_list ja ikooni failid.
3. Kas mängija tõesti kasutab praegust klienti?
Esmalt kontrollitakse, kas mängija on saanud uuendatud plaastri. Kuigi arendaja näeb faili oma kliendis värskendatuna, saavad mängijad jätkata sisselogimist vana failiga.
Asjad, mida kontrollida:
- Kas Patcher laadis uue faili alla?
- Kas faili kuupäev kaustas Pack on ajakohane?
- Kas mängija jätab plaastri vahele ja siseneb otse exe-ga?
- Kas vana kliendikausta saab kasutada?
- Kas faili värskendatakse paigaserveris?
- Kas vahemälu või CDN võib anda vana faili?
4. Patchlist või versioonifaili kontroll
Plaastrisüsteemid töötavad üldiselt paigaloendi, versioonifaili või failiräsiloendi kaudu. Kui paigaloendit ei värskendata, kuigi fail on värskendatud, ei pruugi plaaster uut faili alla laadida.
Üldine juhtimisloogika:
- Kas värskendatud pakifail on paikade loendisse lisatud?
- Kas faili suurus on õige?
- Kas räsi või CRC väärtust on värskendatud?
- Kas versiooninumbrit on suurendatud?
- Kas failitee vastab patcheri vormingule?
Patcheri infrastruktuur võib igas serveris olla erinev. Seega, võttes näiteks olemasoleva tööfaili rea, tuleks uut failirida redigeerida samas vormingus.
5. Kas pakifail on tõesti muutunud?
Mõnikord redigeeritakse faili lähtekaustas, kuid pakkfaili ei pakendata uuesti. Sel juhul arvab arendaja, et on teinud muudatuse, kuid klient kasutab endiselt vana paketi sisu.
Kontrollnimekiri:
- Kas juur või lokaat on tõesti ümber pakitud?
- Kas pakitud fail on kopeeritud õigesse kliendikausta?
- Kas paigaserveris olev fail on vana või uus?
- Kas Patcher kirjutab allalaaditud faili õigesse asukohta?
- Kas paki registrifail näitab uut faili?
6. Mis juhtub, kui mängijad jätavad lapimise vahele?
Mõned mängijad saavad plaastri asemel käivitada kliendi exe-faili otse. Sellisel juhul ei saa nad värskendusi ja proovivad mängu siseneda vanade failidega.
Selle tulemusena:
- Uusi üksusi ei kuvata.
- Uusi kaarte ei avata.
- Pythoni liidesed annavad vigu.
- Tekib kliendi-serveri proto kokkusobimatus.
- Teatud süsteemid töötavad mõne mängija jaoks, teiste jaoks mitte.
Professionaalsetes serverites tuleks vältida plaastrite möödaviigu või teha kliendi versioonikontrolli.
7. Client Syserri paigaprobleemide tuvastamine
Mängijalt tulevate veateadete korral peab klient olema syserr.txt faili tuleks taotleda.
Plaastri puudulikkuse korral võivad ilmneda järgmised vead:
CANNOT_FIND_PACK_FILE Failed to load image No such file or directory LoadScriptFile Error Traceback File "uiInventory.py"
Kui pleieri syserr-failis on puuduva faili tõrge, ei pruugi plaaster seda faili alla laadida või faili ei pruugita pakendisse lisatud.
8. Kuidas läbi viia puhta kliendi testimist?
Selleks, et mõista, kas värskendus on tegelikult õigesti levitatud, tuleb teha puhas kliendi test.
- Ärge kasutage vana kliendikausta.
- Hankige puhas kliendikoopia.
- Käivitage plaaster nullist.
- Kontrollige, kas kõik failid on alla laaditud.
- Logige mängu sisse ja testige uuendatud süsteemi.
- Kontrollige kliendi faili syserr.txt.
Kui see töötab puhtal kliendil, kuid ei tööta mängijal, tuleb arvestada, et mängija pole plaastrit saanud või kasutab vana klienti.
9. Kui kasutate CDN-i või vahemälu
Kui paigafailid on CDN-i või vahemälu taga, võidakse vanu faile mõnda aega jätkata. Sel juhul, isegi kui fail on paigaserveris ajakohane, saab mängija vana faili alla laadida.
Lahendusena:
- CDN-i vahemälu tuleb tühjendada.
- Faili nime või versiooninumbrit saab muuta.
- Patchlisti räsiväärtust tuleb värskendada.
- Kontrollida tuleks pleieri poolt allalaaditud faili suurust.
Levinud vead
- Unustades juurfaili redigeerida ja pakkida
- Patchlisti ega räsiväärtust ei värskendata
- Võimaldab mängijatel plaastrist mööda minna ja siseneda exe kaudu
- Ei teosta puhta kliendi testimist
- Ei saa aru, et CDN-i vahemälu tõttu levitatakse vanu faile
- Kliendipaketi värskenduse vahelejätmine serveri värskendamise ajal
KKK
See töötab minu jaoks, kuid see ei tööta mängijate jaoks, miks?
Võimalik, et kasutate värskendatud klienti. Mängijad võivad olla saanud vana paki, vana juurfaili või puuduva plaastri.
Lisasin uue üksuse, mõnel mängijal pole ikooni. Mis on põhjus?
Uus ikoon, item_list või klient item_proto ei pruugi mängijate kliendis olla ajakohane.
Patcher ei laadi faile alla, mida peaksin kontrollima?
Kontrollida tuleks paigaloendit, failiteed, räsi/CRC-d, versiooninumbrit, juurdepääsu veebiserverile ja CDN-i vahemälu.
Toimimissoovitused
- Tehke puhas kliendi testimine pärast iga kliendi värskendust.
- Kontrollige regulaarselt paikade loendit ja failide räsi.
- Kasutage versioonikontrolli, et takistada mängijatel plaastrist mööda minemast.
- Planeerige juur-, lokaadi- ja protomuudatused koos.
- Uurige pärast värskendamist mängijatelt saadud faile syserr.txt.
See artikkel on spetsiaalselt ette valmistatud PvPServeri jaoks.