Tämä opas käsittelee Legion Hostingin isännöimien Project Zomboid -palvelinten edistynyttä modien vianmääritystä. Jos et ole vielä asentanut modeja, aloita ensin modien perusasennusoppaasta. Tämä artikkeli käsittelee yleisimmät modeihin liittyvät ongelmat, joita esiintyy Legion Hostingin tukipyynnöissä, mukaan lukien WorldDictionary-korruptio, modien muotovirheet, latausjärjestyksen ristiriidat ja versioerot palvelimen ja asiakasohjelman välillä.
Ennen kuin aloitat
- Kirjaudu GPanel-paneeliin ja valitse Project Zomboid -palvelimesi.
- Pysäytä palvelimesi ennen kuin teet mitään määritys- tai tiedostomuutoksia.
- Varmuuskopioi maailmasi tallennuskansio (
/.cache/saves/multiplayer/) SFTP:n tai GPanelin kautta ennen minkään korjauksen yrittämistä. Katso SFTP-opas, jos tiedostosiirrot eivät ole sinulle tuttuja. - Pidä palvelimesi
.ini-tiedoston polku valmiina:/.cache/server/<servername>.ini(esim.servertest.ini).
1. Modien muotovirheet (B42 vs B41)
Yleisin syy modien latauksen epäonnistumiseen on virheellinen muoto palvelimesi .ini-tiedoston Mods=-rivillä. Build 42 ja Build 41 käyttävät eri syntaksia, ja niiden sekoittaminen aiheuttaa modien latauksen epäonnistumisen hiljaisesti.
B42-muoto (nykyinen oletus)
Build 42 vaatii kenoviivaetuliitteen ennen jokaista Mod ID:tä Mods=-rivillä:
Mods=\ModID1;\ModID2;\ModID3;
DLMP-muoto yhdistää Workshop ID:t ja Mod ID:t kenoviivaerottimella:
Mods=2392987841\ModID1;1550458773\ModID2;2786383654\ModID3;
WorkshopItems=-rivi käyttää samaa puolipisteellä erotettua muotoa molemmissa buildeissa:
WorkshopItems=2392987841;1550458773;2786383654
B41-muoto (vanha)
Build 41 käyttää tavallisia puolipisteellä erotettuja Mod ID:itä ilman kenoviivaa:
Mods=ModID1;ModID2;ModID3
Mods=-rivisi uudelleen sisältämään kenoviivaetuliite.
Kuinka korjata
- Avaa
/.cache/server/<servername>.iniGPanelin tiedostonhallinnassa. - Etsi
Mods=-rivi ja tarkista muoto yllä olevia esimerkkejä vasten. - Jos muoto on väärä buildversiollesi, korjaa se. Käytä Legion Hosting Mod Organizeria luodaksesi oikein muotoillut rivit automaattisesti.
- Tallenna tiedosto ja käynnistä palvelin.
2. WorldDictionary-korruptio
WorldDictionary on tiedosto (WorldDictionary.bin), joka liittää esineiden nimet sisäisiin numeerisiin ID:ihin. Kun modeja lisätään tai poistetaan, sanakirja voi korruptoitua, mikä aiheuttaa palvelimen kaatumisen käynnistyksessä virheellä WorldDictionaryException.
Oireet
- Konsoli tai
debug.lognäyttääWorldDictionaryException- taiWorldDictionary-virheitä. - Palvelin kaatuu välittömästi käynnistyksen aikana, erityisesti maailman latauksen aikana.
- Kaatuminen alkoi modien lisäämisen, poistamisen tai päivittämisen jälkeen.
Riskin ymmärtäminen
Palautusvaiheet
- Pysäytä palvelimesi GPanelissa.
- Varmuuskopioi koko tallennuskansiosi SFTP:n kautta: lataa koko
/.cache/saves/multiplayer/<YourWorldName>/-hakemisto paikalliselle koneellesi. - Yritä ensin yksinkertaisesti peruuttaa modimuutos, joka aiheutti virheen. Jos juuri lisäsit modin, poista se sekä
Mods=- ettäWorkshopItems=-riveiltä.ini-tiedostossa. Jos juuri poistit modin, lisää se takaisin. Käynnistä palvelin ja katso, ratkesiko kaatuminen. - Jos modimuutoksen peruuttaminen ei toimi, yhdistä SFTP:n kautta ja siirry kansioon
/.cache/saves/multiplayer/<YourWorldName>/. - Poista
WorldDictionary.bin. - Käynnistä palvelin. Project Zomboid luo sanakirjan uudelleen käynnistyksessä.
- Liity palvelimelle ja tarkasta maailma korruptoituneiden esineiden, kadonneiden ajoneuvojen tai rikkinäisten varastojen varalta. Jos maailma on vakavasti vaurioitunut, palauta vaiheessa 2 luomastasi varmuuskopiosta.
3. Authentic Z -modin ristiriidat
Authentic Z on yksi suosituimmista Project Zomboid -modikokoelmista, mutta se on usein toistuva tukipyyntöjen lähde, koska se sisältää useita alimodeja, jotka ovat ristiriidassa keskenään.
Sääntö
Authentic Z - Current.
Yleiset virheet
- Sekä
Authentic Z - Current- ettäAuthentic Z - Litemode-modien lisääminen samanaikaisesti. - Yksinpeliin suunniteltujen Authentic Z -alimodien lisääminen moninpeliversion rinnalle.
- Ei ymmärretä, että eri Authentic Z -alimodit jakavat saman Workshop ID:n mutta niillä on eri Mod ID:t, joten Workshop-lataus onnistuu mutta palvelin lataa ristiriitaisia moditiedostoja.
Kuinka korjata
- Avaa
/.cache/server/<servername>.iniGPanelin tiedostonhallinnassa. - Etsi
Mods=-riviltä jokainen merkintä, joka sisältääAuthentictaiAuthenticZ. - Säilytä vain yksi Authentic Z -alimodi (suositus:
Authentic Z - Current). Poista kaikki muut Authentic Z -merkinnät sekäMods=- ettäWorkshopItems=-riveiltä. - Tallenna tiedosto ja käynnistä palvelin uudelleen.
4. Linuxin kirjainkoon herkkyysongelmat
Legion Hostingin palvelimet toimivat Linuxilla, jossa tiedostojen ja kansioiden nimet ovat kirjainkokoherkkiä. Tiedostoa nimeltä MyMod.lua ja mymod.lua käsitellään kahtena täysin eri tiedostona. Tämä aiheuttaa ongelmia, kun modien tekijät kehittävät Windowsilla (kirjainkokoa erottelematon) ja heidän modinsa sisältävät yhteensopimattomia tiedostoviittauksia.
Oireet
- Modi toimii täydellisesti yksinpelissä Windows-tietokoneellasi mutta epäonnistuu palvelimella.
- Konsoli tai
debug.lognäyttääFileNotFoundException- taican't find file-virheitä, jotka viittaavat modin sisällä olevaan Lua-skriptiin tai tekstuuriin. - Virhe osoittaa tiedostoon, joka kyllä on olemassa modikansiossa, mutta eri kirjainkoolla (esim. koodi viittaa
Items.txt-tiedostoon mutta varsinainen tiedosto on nimeltäänitems.txt).
Kuinka diagnosoida
- Tarkista konsolista tai
/.cache/Logs/-lokitiedostoista tarkka tiedostopolku, joka mainitaan virheessä. - Yhdistä SFTP:n kautta ja siirry modin kansioon polussa
/steamapps/workshop/content/108600/<WorkshopID>/. - Vertaa levyllä olevia tiedostonimiä virheilmoituksessa viitattuun tiedostonimeen. Etsi kirjainkokoeroja.
Kuinka korjata
- Jos voit nimetä tiedoston uudelleen: Yhdistä SFTP:n kautta ja nimeä tiedosto uudelleen vastaamaan modin koodin odottamaa kirjainkokoa. Huomaa, että tämä korjaus ylikirjoittuu, jos modi päivittyy Steam Workshopissa.
- Jos ongelma on itse modissa: Ilmoita bugista modin tekijälle Steam Workshop -sivulla. Mainitse, että tiedostoviittauksessa on kirjainkokoristiriita ja että se epäonnistuu Linux-palvelimilla. Monet modien tekijät eivät ole tietoisia Linuxin kirjainkokoherkkyydestä.
- Kiertotapana: Tarkista modin Workshop-sivun kommentit — muut Linux-palvelinten ylläpitäjät ovat saattaneet julkaista korjauksen tai yhteensopivan modin haaran.
5. Modien latausjärjestyksen ongelmat
Project Zomboid lataa modit siinä järjestyksessä, jossa ne esiintyvät Mods=-rivillä. Jotkut modit riippuvat siitä, että muut modit ladataan ensin. Jos riippuvuus ladataan sen modin jälkeen, joka sitä vaatii, riippuvainen modi voi epäonnistua hiljaisesti tai aiheuttaa virheitä.
Oireet
- Modin ominaisuudet toimivat osittain — jotkut modin esineet tai järjestelmät ovat läsnä mutta toiset puuttuvat.
- Konsoli näyttää
NullPointerException- taiattempt to index a nil value-virheitä, jotka viittaavat modin Lua-skripteihin. - Virheitä esiintyy vain, kun tietty modiyhdistelmä on asennettuna, mutta jokainen modi toimii hyvin yksinään.
Kuinka korjata
- Tarkista jokaisen modin Steam Workshop -sivulta "Required Mods"- tai "Load Order" -osio. Monet modien tekijät määrittävät, mitkä modit on ladattava ennen heidän modiaan.
- Avaa
/.cache/server/<servername>.inija etsiMods=-rivi. - Järjestä merkinnät uudelleen niin, että riippuvuusmodit esiintyvät ennen niitä vaativia modeja. Esimerkiksi, jos Mod B vaatii Mod A:n, rivin tulisi olla
Mods=\ModA;\ModB;(B42-muoto). - Kehys- ja kirjastomodit (kuten
ModFramework,TsarLibtaiShark's Mod Utils) tulisi aina listata ensimmäisinäMods=-rivillä. - Tallenna tiedosto ja käynnistä palvelin uudelleen.
6. Palvelin kaatuu modien lisäämisen jälkeen
Jos palvelimesi toimi hyvin ja kaatuu yhden tai useamman modin lisäämisen jälkeen, uusi modi on todennäköisesti syy. Tämä osio opastaa ongelmamodin eristämisessä.
Vaiheittainen eristäminen
- Pysäytä palvelin GPanelissa.
- Avaa
/.cache/server/<servername>.initiedostonhallinnassa. - Merkitse muistiin kaikki juuri lisäämäsi modit. Poista ne kaikki sekä
Mods=- ettäWorkshopItems=-riveiltä. - Käynnistä palvelin. Jos se käynnistyy onnistuneesti, ongelma on yhdessä poistamistasi modeista.
- Lisää modit takaisin yksi kerrallaan, käynnistäen palvelin uudelleen jokaisen lisäyksen jälkeen. Kun kaatuminen palaa, viimeisin lisäämäsi modi on syy.
- Kun se on tunnistettu, tarkista modin Workshop-sivulta:
- Huomautus B42-yhteensopivuudesta — monia B41-modeja ei ole päivitetty B42:lle.
- Tunnetut ristiriidat muiden ajamiesi modien kanssa.
- Vaaditut riippuvuusmodit, joita et ehkä ole asentanut.
Kaatumislokin lukeminen
Ennen eristysprosessin suorittamista tarkista kaatumisloki — se osoittaa usein suoraan ongelmamodiin:
- Avaa GPanelissa Console-välilehti ja vieritä tulosteen loppuun.
- Etsi
STACK TRACE-,Exception- taiERROR-rivejä. - Pinojäljen yläpuolella olevat rivit viittaavat tyypillisesti modin tiedostonimeen tai Mod ID:hen — tämä kertoo, mikä modi laukaisi kaatumisen.
- Saadaksesi lisätietoja avaa täysi lokitiedosto SFTP:n kautta polussa
/.cache/Logs/ja tarkista uusinDebugLog-server.txt- taidebug.log-tiedosto.
7. Modien versioerot (palvelin vs asiakas)
Project Zomboid vaatii, että palvelimella ja kaikilla yhdistetyillä asiakasohjelmilla on sama versio jokaisesta modista. Jos modi päivittyy Steam Workshopissa ja palvelin lataa uuden version, mutta pelaajalla on edelleen vanha versio välimuistissa (tai päinvastoin), yhteysvirheitä tai kaatumisia tapahtuu.
Oireet
- Pelaajat saavat "Mod mismatch"- tai "Version mismatch" -virheen yrittäessään yhdistää.
- Jotkut pelaajat voivat yhdistää mutta toiset eivät — ne, jotka eivät voi yhdistää, ovat tallentaneet eri modiversion paikallisesti.
- Palvelin toimi hyvin, sitten modi päivittyi Steam Workshopissa ja yhtäkkiä jotkut pelaajat eivät voi liittyä.
- Pelaajat näkevät puuttuvia tekstuureja, esineitä tai rikkinäisiä käyttöliittymäelementtejä hiljattain päivitetyistä modeista.
Korjaus palvelinten ylläpitäjille
- Pysäytä palvelin GPanelissa.
- Käynnistä palvelin uudelleen. Käynnistyksessä palvelin lataa uudelleen kaikkien Workshop-modien uusimmat versiot. Tämä varmistaa, että palvelin ajaa uusinta versiota.
- Jos palvelimella on edelleen vanha versio välimuistissa, yhdistä SFTP:n kautta ja poista tietyn modin Workshop-välimuistikansio polussa
/steamapps/workshop/content/108600/<WorkshopID>/. Käynnistä palvelin uudelleen pakottaaksesi puhtaan latauksen.
Korjaus pelaajille
Pelaajien, jotka eivät voi yhdistää modien versioerojen vuoksi, tulisi:
- Avata Steam ja siirtyä kohtaan Library → Project Zomboid.
- Napsauttaa Project Zomboidia hiiren oikealla painikkeella, valita Properties → Local Files → Verify Integrity of Game Files.
- Siirtyä myös Project Zomboidin Steam Workshop -kansioon paikallisella koneellaan ja poistaa välimuistissa olevat moditiedostot pakottaakseen uudelleenlatauksen.
- Käynnistää peli ja yhdistää palvelimelle uudelleen.
/.cache/mods/ Workshopin automaattisen päivityksen sijaan. Poista vastaava Workshop ID WorkshopItems=-riviltä estääksesi automaattiset päivitykset. Katso modien asennusopas Workshopin ulkopuolisten modien asennusohjeita varten.
8. Steam Workshop -välimuistin tyhjentäminen
Jos useita modiongelmia jatkuu ja epäilet, että Workshop-latausvälimuisti on korruptoitunut, voit pakottaa kaikkien Workshop-modien täydellisen uudelleenlatauksen.
- Pysäytä palvelin GPanelissa.
- Yhdistä SFTP:n kautta ja siirry kansioon
/steamapps/workshop/. - Poista koko
workshop/-kansio (tai sen sisältö). - Käynnistä palvelin. Steam lataa uudelleen kaikki Workshop-kohteet alusta alkaen.
- Tarkkaile GPanelin konsolia varmistaaksesi, että kaikki modit latautuvat valmiiksi ennen kuin palvelin aloittaa maailman latauksen.
Nopea diagnostiikkaopas
| Mitä näet | Todennäköisin syy | Osio |
|---|---|---|
| Modit eivät lataudu, ei virheitä lokissa | Väärä modimuoto (B41-muoto B42-palvelimella tai päinvastoin) | 1. Modien muotovirheet |
WorldDictionaryException konsolissa |
WorldDictionary-korruptio modien lisäämisestä/poistamisesta | 2. WorldDictionary-korruptio |
| Palvelin kaatuu useilla Authentic Z -alimodeilla | Ristiriitaiset Authentic Z -alimodit ladattu samanaikaisesti | 3. Authentic Z -ristiriidat |
FileNotFoundException olemassa olevalle moditiedostolle |
Linuxin kirjainkokoristiriita | 4. Kirjainkokoherkkyysongelmat |
NullPointerException- tai nil value -virheitä modeista |
Virheellinen modien latausjärjestys tai puuttuva riippuvuus | 5. Latausjärjestyksen ongelmat |
STACK TRACE uusien modien lisäämisen jälkeen |
Yhteensopimaton tai ristiriitainen modi | 6. Kaatumiset modien lisäämisen jälkeen |
| "Mod mismatch" tai "Version mismatch" yhdistettäessä | Palvelimella ja asiakkaalla on eri modiversiot | 7. Versioerot |
| Useita modiongelmia, mikään muu ei toimi | Korruptoitunut Workshop-välimuisti | 8. Workshop-välimuisti |
Yhä modiongelmia?
Jos modiongelmaasi ei käsitellä yllä tai korjaukset eivät ratkaisseet sitä, avaa tukipyyntö seuraavilla tiedoilla auttaaksesi tukitiimiä diagnosoimaan ongelman nopeasti:
- Palvelimesi buildversio (B41 tai B42), näkyy konsolissa käynnistyksessä
- Täydet
Mods=- jaWorkshopItems=-rivit.ini-tiedostostasi - GPanelin konsolitulosteen viimeiset 50 riviä kaatumishetkellä
- Uusimman lokitiedoston sisältö kansiosta
/.cache/Logs/ - Mitkä modit lisättiin, poistettiin tai päivitettiin välittömästi ennen ongelman alkamista
- Tapahtuuko ongelma käynnistyksessä vai vain pelaajien yhdistäessä
Avaa tukipyyntö ja sisällytä palvelimesi ID sekä yllä luetellut tiedot.