Come risolvere i problemi di aggiornamento della patch e del pacchetto client Metin2?
Guida dettagliata per problemi relativi a patcher, pack, root, locale e vecchi file client.
Sui server Metin2 le modifiche apportate lato client devono arrivare correttamente ai giocatori. Quando i file root, locale, uiscript, icona, item_proto, mob_proto, mappa o effetti vengono aggiornati, potrebbero verificarsi gravi incompatibilità se il giocatore entra nel gioco con i vecchi file.
Se il patcher non funziona, se il file non viene scaricato, se i giocatori accedono con il vecchio pacchetto o se alcuni giocatori presentano errori ma altri no, il problema è solitamente nel sistema di aggiornamento del client.
1. Sintomi del problema con la patch
- Le icone dei nuovi oggetti non vengono visualizzate dai giocatori.
- Alcuni giocatori sperimentano l'arresto del client, altri no.
- La nuova modifica dell'interfaccia non si riflette nel lettore.
- La nuova mappa non si apre per alcuni giocatori.
- Patcher non scarica i file o restituisce un errore.
- Anche se la root è aggiornata, il gioco funziona con il vecchio file Python.
- Gli errori del file pack mancante vengono visualizzati nel client syserr.
2. Quali file dovrebbero essere aggiornati?
I file di pacchetto che devono essere aggiornati variano a seconda delle modifiche apportate.
- Modifica dell'interfaccia Python: rootpack
- Traduzione e testi di interfaccia: pacchetto locale
- Icona nuovo elemento: pacchetto di icone e item_list
- Nuovo oggetto/mob: client item_proto, mob_proto, file icona/modello
- Nuova mappa: pacchetto mappa, Atlasinfo, file terreno/proprietà
- Nuovo effetto: file degli effetti e definizioni degli effetti
L'aggiornamento di un solo file potrebbe non essere sufficiente. Ad esempio, quando si aggiunge un nuovo elemento, sia il server item_proto, il client item_proto, l'item_list e i file icona devono essere compatibili.
3. Il giocatore sta davvero utilizzando il client attuale?
Il primo controllo è se il giocatore ha ricevuto una patch aggiornata. Mentre lo sviluppatore vede il file aggiornato nel suo client, i giocatori possono continuare ad accedere con il vecchio file.
Cose da controllare:
- Patcher ha scaricato il nuovo file?
- La data del file nella cartella Pack è attuale?
- Il giocatore salta il patcher ed entra direttamente con l'exe?
- È possibile utilizzare la vecchia cartella client?
- Il file è effettivamente aggiornato sul server delle patch?
- È possibile che Cache o CDN forniscano il vecchio file?
4. Controllo della patchlist o del file di versione
I sistemi patcher generalmente funzionano tramite un elenco di patch, un file di versione o un elenco di hash di file. Se l'elenco delle patch non viene aggiornato anche se il file viene aggiornato, il patcher potrebbe non scaricare il nuovo file.
Logica generale di controllo:
- Il file pack aggiornato è stato aggiunto all'elenco delle patch?
- La dimensione del file è corretta?
- Il valore hash o CRC è stato aggiornato?
- Il numero di versione è stato aumentato?
- Il percorso del file è conforme al formato del patcher?
L'infrastruttura del patcher può essere diversa su ciascun server. Pertanto, prendendo come esempio una riga di file di lavoro esistente, la nuova riga di file dovrebbe essere modificata nello stesso formato.
5. Il file pack è davvero cambiato?
A volte il file viene modificato nella cartella di origine ma il file pack non viene riconfezionato. In questo caso, lo sviluppatore pensa di aver apportato una modifica, ma il cliente utilizza ancora il vecchio contenuto del pacchetto.
Lista di controllo:
- Root o locale sono stati davvero riconfezionati?
- Il file compresso è stato copiato nella cartella client corretta?
- Il file sul patch server è vecchio o nuovo?
- Patcher scrive il file scaricato nella posizione corretta?
- Il file indice del pacchetto mostra il nuovo file?
6. Cosa succede se i giocatori saltano il patcher?
Alcuni lettori possono eseguire direttamente il file exe del client invece del patcher. In questo caso, non ricevono aggiornamenti e provano ad accedere al gioco con vecchi file.
Di conseguenza:
- I nuovi elementi non vengono visualizzati.
- Le nuove mappe non si apriranno.
- Le interfacce Python danno errori.
- Si verifica un'incompatibilità proto-client-server.
- Alcuni sistemi funzionano per alcuni giocatori e non per altri.
Sui server professionali, è necessario impedire il comportamento di bypass del patcher oppure eseguire il controllo della versione del client.
7. Rilevamento dei problemi di patch con il client Syserr
Nelle notifiche di errore provenienti dal giocatore, il client deve esserlo syserr.txt il file deve essere richiesto.
In caso di mancanza di patch, potrebbero verificarsi i seguenti errori:
CANNOT_FIND_PACK_FILE Failed to load image No such file or directory LoadScriptFile Error Traceback File "uiInventory.py"
Se è presente un errore di file mancante nel file syserr del lettore, il patcher potrebbe non aver scaricato quel file oppure il file potrebbe non essere stato aggiunto al pacchetto.
8. Come eseguire test puliti sui client?
È necessario eseguire un test del client pulito per comprendere che l'aggiornamento sia effettivamente distribuito correttamente.
- Non utilizzare la vecchia cartella client.
- Ottieni una copia client pulita.
- Esegui il patcher da zero.
- Controlla che tutti i file siano stati scaricati.
- Accedi al gioco e prova il sistema aggiornato.
- Controllare il file syserr.txt del client.
Se funziona su un client pulito ma non funziona sul lettore, è necessario considerare che il lettore non ha ricevuto una patch o sta utilizzando un vecchio client.
9. Se utilizzi CDN o cache
Se i file di patch si trovano dietro una CDN o una cache, i vecchi file potrebbero continuare a essere serviti per un po'. In questo caso, anche se il file è aggiornato sul server delle patch, il giocatore può scaricare il vecchio file.
Come soluzione:
- La cache della CDN deve essere svuotata.
- È possibile modificare il nome del file o il numero di versione.
- Il valore hash della patchlist deve essere aggiornato.
- È necessario verificare la dimensione del file scaricato dal lettore.
Errori comuni
- Dimenticarsi di modificare e comprimere il file root
- Mancato aggiornamento della patchlist o del valore hash
- Permettere ai giocatori di bypassare patcher ed entrare tramite exe
- Non eseguire test client puliti
- Non rendersi conto che i vecchi file vengono distribuiti a causa della cache CDN
- Saltare l'aggiornamento del pacchetto client durante l'aggiornamento del server
Domande frequenti
Funziona per me ma non funziona per i giocatori, perché?
Potresti utilizzare un client aggiornato. I giocatori potrebbero aver ricevuto un vecchio pacchetto, un vecchio root o una patch mancante.
Ho aggiunto un nuovo elemento, alcuni giocatori non hanno un'icona. Qual è il motivo?
La nuova icona, item_list o client item_proto potrebbe non essere aggiornata sul client dei giocatori.
Patcher non scarica i file, cosa devo controllare?
È necessario controllare l'elenco delle patch, il percorso del file, l'hash/CRC, il numero di versione, l'accesso al server Web e la cache CDN.
Raccomandazioni operative
- Esegui test puliti del client dopo ogni aggiornamento del client.
- Controlla regolarmente l'elenco delle patch e gli hash dei file.
- Usa il controllo della versione per impedire ai giocatori di bypassare il patcher.
- Pianifica insieme le modifiche root, locali e proto.
- Esamina i file syserr.txt ricevuti dai giocatori dopo l'aggiornamento.
Questo articolo è stato preparato appositamente per PvPServer.