Planetside - az MMOFPS

Amit nem lehet 3 mondatban elmagyarázni, azt látni kell. A Planetside ilyen. Magyarországon méltatlanul ismeretlen MMOFPS, ami komoly függőséget okoz. 2012. november 20-án szintet lépett az FPS-műfaj. Elindult a Planetside 2. Planetside - az intelligens ember shootere.

Planetside 2 low end gépeken - emberi nyelven

A Lesből Támadó Ruhaszárítókötél 2012.11.26. 21:54

Előrebocsátom, hogy ez a bejegyzés messzemenőkig nem szakmai, talán már túlságosan is egyszerűsít. Ennek két oka van. Egyrészt nem vagyok szakember, másrészt nem szakembereknek készül. Úgy írom le, ahogy én megértettem.

Sokan panaszkodnak, hogy a Planetside 2 nagyon lagol, nagyon akad, nagyon rosszul fut középkorú, vagy éltesebb gépeken. Egyrészt ez úgy tűnik, Planetside betegség - az első rész is megelőzte a korát technológiailag. Nem kinézetben, hanem netkódban, egyebekben.

Ez a játék is bőven futhat 5-8-10 évig, az akkori belépő gépek röhögve teljesítik túl a mostani a gamer konfigokat, tehát ez idővel egyre kevesebb játékosnak fog gondot okozni. 4-5 év és a legtöbb játékos úgyis gépet cserél, vagy legalábbis videókártyát.

De mit is értünk akadás, lagolás, rossz futás alatt? Egy netes játékban három dolog akadályozza a folyamatos megjelenítést.

1 - Túl magas grafikai részletesség 

2 - Túl sok számítanivaló a processzornak

3 - hálózati problémák

Aki nem akar 2016-ig várni, az is tehet egy-két dolgot ezeken a frontokon. Talán segít.

Akkor sorban - visszafelé! :)

Hálózati problémák

Az online játékok nem igényelnek extra sávszélességet, emiatt nem fogja a szolgáltatód blokkolni az elérésedet, nem úgy mint a régi szép időkben a fájlcserélőket, torrentezőket. 

A netes forgalom tulajdonképp nem nagy. Kap a kliens egy csomó nyers adatot, hogy xy erre szalad, erre lő, erre néz, gyorsít-lassít stb, és ezt a kliensed eléd rajzolja. Ugyanezeket az adatokat te is feltöltöd magadról. Ez másodpercenként lejátszódik néhányszor, a köztes időt meg "átlagolja" a program. Emellett ezt a játékot terheli még az ingame VOIP, vagy a Teamspeak, amit külön indítasz. Ezzel együtt sem olyan bődületes az adatmennyiség.

Ami fontos, az a ping, és a packet loss. A ping millisecundumban mutatja, hogy a tőled elindított jel mikor ér el a szerverig és vissza. Ha kicsi a ping, akkor kisebb késéssel látod az eseményeket. Egy átlagos MMO-t simán el lehet játszani 300-500 pinggel (0,3-0,5 mp), de egy pörgős lövöldözésben azért ezt igyekszik mindenki 100 alatt tartani. Sokat te magad nem tudsz tenni azon kívül, hogy amíg játszol, lemondasz a pornó letorrentezéséről. Na meg persze EU szervert választasz. Kisebb földrajzi távolság - kevesebb csomópont, rövidebb ping.

Magas pingnél mindenki hamarabb lő rád, mint ahogy meglátod őket, kanyarban is utolér a lövedék, nem poén így játszani. De hithű Galaxy pilóta még lehetsz. 

A másik probléma a packet loss. Magyarul csomagvesztés. Kis csomagocskákban küldöd és fogadod az adatokat, ebből elenyésző számú elvész az éterben. Mi történik a csomagok nélkül? A program "átlagol". Ha az utolsó 5 csomagban (ami bőven 1 mp-en belül van) pl futott előtted keresztbe valaki, akkor a hiánynál sem jön zavarba a játék, kirajzolja a karaktert mintha még mindig ugyanúgy futna. Ha neked akadozik a kapcsolatod, veled is így csinál, ezért lehet látni néha a levegőben futó figurákat, ahogy legyőzve a gravitációt haladnak szépen azon a vektoron, amit a program a legutolsó ismert pozícióból kiszámol. Na de hirtelen beérkezik a következő csomag - ekkor a gép aktualizál, és ha az ellenséged épp irányt váltott, akkor az addigi átlagolt megjelenítésből hirtelen hipp-hopp, megjelenik a valós helyén. Te meg anyázol, hogy warpol, teleportál a g*ci... 

Ezzel sem tudsz mit tenni - szerencsére nem is nagyon kell vele foglalkozni, a hazai netkapcsolatok elég stabilak. Te viszont már tudod (ha eddig nem tudtad), hogy miért nem találsz el senkit.

2 - Túl nagy terhelés a CPU-nak

A netforgalom nem nagy, viszont ez is bőven ad feladatot a processzornak. Bár nem kell a mesterséges intelligenciával vesződni (mert olyan a játékban nincs), a rengeteg karakter, jármű, lövedék, tereptárgy (liftek, teleportok, pajzsok) pályáját, ezek ütközéseit bizony számolni kell. Ettől van az, hogy a nagyobb ütközetek annál is lelassulnak, akiknek a grafkártyája toppon van, de a proci mondjuk csak kétmagos. Minél több a szereplő, annál több a kölcsönhatás - és ez nem is egy-az-egyben nő, szerencsére azért nem is exponenciálisan, hiszen nem mindenki hat mindenkire.

Minden segítség jól jön tehát, ami a processzort tehermentesíti. Mit is tehetünk? 

Először is legyen 8 giga ram a gépünkben, meg egy 64 bites oprendszer. Ha ez nem jön össze, akkor legyen minél több, minél gyorsabb. 6-8 giga fölé már nem feltétlen érdemes menni, illetve segít persze, de ha valakinek szűk keresztmetszet a videókártya is, akkor inkább oda tegye a 8-ról 12-re fejlesztés árát, azt az 5-6000 Ft-ot, és inkább vegyen egy jobb kártyát. 6-8 alatt viszont költsünk RAM-ra.

Aztán: msconfig. Aki ECDL-tanfolyamon tanulta a számmisztikát, annak ez már varázslat, a legtöbbünknek megmutatta valami hozzáértő haver. Na ezt írjuk be a keresőnkbe (mármint hogy msconfig) és futtassuk! Keressük meg az automatikus indítást és szörnyedjünk el azon, hogy mennyi szirszar indul el, mikor a gépet bekapcsoltuk és az oprendszer már felállt. Ezek közül a legtöbb elől büntetlenül ki lehet venni a pipát. Hagyjuk meg az antivírust (és tűzfalat, ha külön van), hagyjuk meg az egér meghajtóját, meg ami még olyan fontosnak tűnik, aztán újraindítás. Ha ezzel eddig nem próbálkozunk, akkor most látványos javulást érhettünk el. Amúgy a gugli a barátja mindenkinek, ha rákeres az indítandó kódra, jó eséllyel rátalál, hogy mi az és mit csinál, eldöntheti, hogy kell-e neki ez minden induláskor.

Másik msconfig beállítás: SZOLGÁLTATÁSOK. Kezdésnek tegyünk egy pipát oda, hogy rejtse a windows szolgáltatásokat, a maradékra meg guglizzunk rá, és ha nem tűnik életbevágóan fontosnak, akkor állítsuk le és tiltsuk az automata indulást. Piszkálni csak óvatosan...

Regisztrációs adatbázis rendbetétele. A regisztrációs adatbázis a windows egy olyan része, amihez jobb nem nyúlni, ha nem tudod pontosan, hogy mit csinálsz. Vannak viszont ingyenes programok, amik kitakarítják innen a szemetet. Ilyen pl a ccleaner. Rákeres, letölt, install, futtat, regisztrációs adatbázis rendbetétele, összes hiba kijelölése, kijelölt hibák javítása. Aztán havonta egyszer megint lefuttatod. 

Lemez töredezettségmentesítése. Váltás SSD-re. Az elsőt nem fejtem ki, a másodikról annyit, hogy a töltési időkön gyorsít, de a játékban látott teljesítményt nem dobja annyira látványosan. De hát jön a Karácsony, akinek nincs még, kérjen a Jézuskától, ártani nem árt.

Na, kicsit elkalandoztam, de ezeket elvégezve úgy általában is jót teszünk a rendszerünkkel. Mit tehetünk még a játékban? A cél ugyebár, hogy tehermentesítsük a processzorunkat.

A settingsben (itt is general settings) vegyük ki a jelzést a raw mouse input opciónál. Ha zavar, hogy erre bekapcsol az egérgyorsítás, akkor kapcsoljuk vissza! Audiónál csökkentsük a csatornák számát mondjuk 64-re. Akár lentebb is, amíg össze nem folynak a hangok. MIvel a legtöbb gépben már nincs hangkártya, a hangchip meg a procira támaszkodik, a procitól vesz el erőforrásokat, tehát itt lehet nyerni egy keveset. Próbálgatni kell.

És akkor videókártya.

Csökkentsük a felbontást, de tartsuk az eredeti képarányunkat. A render quality alapból fullon van, 85-90% környékére "büntetlenül" vissza lehet húzni, tehát a látvány nem lesz érezhetően rosszabb. Ez alá is lehet menni,  sőt kell is, ha még mindig 20-30 alá esik a tempó a legkisebb tűzharcban. Nekem az IGP HD 3000 esetében 1366/768-ig kell lemennem és 50%-ra venni a rendert, hogy low beállítás fölött egy picivel eldöcögjön. Ekkor mondjuk már ocsmányul el van mosódva a kép, de játszható marad a játék. Keressünk kisebb harcokat, míg összejön egy nagyobb videókártyára való.

A panel jobb oldalán a szokásos grafikai beállításokra van mód, vegyünk mindent low-ra, (felbontást vegyük a legalacsonyabbra előtte), és aztán szépen állítgassuk az egyes opciókat és döntsünk aszerint, hogy megéri-e az adott látványbeli javulás. Nekem pl. az effects quality mid alatt azt jelenti, hogy nem mindig rajzolja ki a becsapódó lövedéket (ha ez egy 150 mm-es HE lövedék, akkor sem). Tehát van, ami nélkül nem lehet élni, mindenki szépen be tudja lőni magának.

Segíthet még, ha windowed módban futtatjuk a játékot. A fullscreen windowed viszont felveszi a monitor natív felbontására a képet, ami gyenge kártyákat túlzottan is leterhel. 

Mivel néhány beállítás csak a kliens újraindításával változik, regeljünk be a Föld egy átellenes pontján lévő szerverre pl, Ausztráliába, ott a mi csúcsidőnk (esti órák) nekik kora reggel-délelőtt, tehát jó eséllyel sorbanállás nélkül tudunk ki-be lépegetni a játékba.

Aztán még egy-két okosság:

Csak érzésből mondom, de nekem mintha jobban futna közepes beállításokkal a játék (1-2 dolog innen butítva), mint low beállítással. Talán a mid beállítás agresszívebben követel magának egy kis figyelmet a procitól, meg a beépített grafikus chiptől? Ki tudja? Az is lehet, hogy hülyeség, próbálja ki mindenki!

Az árnyékok eltüntetése. Az árnyékokat a játékban nem tudod teljesen kikapcsolni, viszont azok a fekete pacák rengeteg erőforrást zabálnak. A megoldás?

  1. Keress rá a játék mappájára!
  2. Keress rá a a UserOptions.ini fájlra és csinálj egy másolatot róla! Ez biztonsági mentés lesz.
  3. Nyisd meg az eredeti fájlt Notepaddel (Jegyzettömb)
  4. Az árnyékok kikapcsolásához keresd meg a  ShadowQuality sort és az értékét állítsd 0-ra. (ShadowQuality=0)
  5. Mentsd el!
  6. Az intézőben nyomj rajta egy jobbklikket, és a fájl attribútumai közt állítsd be, hogy Csak olvasható (read only)! 

Ezzel megszabadultál az árnyékoktól. Bizonyos szituációkban segíthet, mert hamarabb meglátnád az ellenség árnyékát, mint őt magát, de ez viszonylag ritka. Cserébe érezhetően javul a megjelenítés sebessége.

És akkor egy másik trükk: A kirajzolt távolság csökkentése.

Az első 3 lépés ugyanaz

4. Keress rá a RenderDistance=-1.000000  sorra és az értéket állítsd 1000.000000 -ra. Fontos, hogy alapból mínusz 1-en van, tehát a mínuszjelet is vedd ki! 

5. mentsd el! (Ha az előző tippet isvégigcsináltad, akkor mentés előtt állítsd vissza a fájl attribútumait ismét írhatóra, különben most nem engedi elmenteni!)

6. Állítsd ezt is csak olvashatóra!

Ezzel azt éred el, hogy az 1000 m-nél távolabbi objektumokat, embereket és terepet jótékony köd borítja. Ez azért még mindig több, mint a leghosszabb célzott lövés a sniperrel, és a repüléshez is általában elég a körülötted lévő 1 km-es gömb látványa. Az 1 km-nél rövidebb összetűzéseket viszont nem befolyásolja. 

Na, aki ezt átrágta, annak minden elismerésem, remélem a tippek segítenek és a leírás hosszát sem bánta mindenki!

 

Címkék: Címkék

8 komment

A bejegyzés trackback címe:

http://planetside.blog.hu/api/trackback/id/tr564927170

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben.

A Lesből Támadó Ruhaszárítókötél · http://www.planetside.blog.hu 2012.11.27. 23:09:24

Az árnyékok kikapcsolása és az 1000 m-es határ miatt most már egyre többször kapok CPU-korlátot, a render quality felment 75-re (ami ég és föld az 50-hez képest), és mégis játszhatóan magas frameratet kapok.

Hihetetlen, mit ki nem lehet hozni ebből az engineből.

Bobby Newmark 2012.11.29. 13:14:17

Packet loss lesz az, 'a' betűvel, amire gondolsz. A pocket az azt jelenti, hogy zseb.

A Lesből Támadó Ruhaszárítókötél · http://www.planetside.blog.hu 2012.11.29. 13:50:58

@Bobby Newmark: jogos.

Nekem is furcsa volt látni, de hát mivel az idő alatt készült a bejegyzés, amíg a steamen véletlen rányomott integritás-ellenőrzés utáni újraletöltést vártam este 10-11 közt, vállat vontam.

Illetve látom, hogy az .ini állításánál is félreérthető, hogy mit kell csinálni, kicsit átszerkesztem azt is.

kamuregélő 2012.12.03. 01:49:34

Hát srácok, ez a játék szörnyen VGA igényes... Értem én, hogy 3 generációval régebbi a HD4850, mint a mostaniak, de azért az minimumnak erős túlzás.

CPU, RAM-ban nincs hiány. (i7-3820, 32G ram, alapvetően munkagép, na...)

kamuregélő 2012.12.03. 01:50:19

Hja igen, azt elfelejtettem mondani, ezeken low beállításokkal megy 25 +/-5 FPS-sel, igaz fullhd-ban.

A Lesből Támadó Ruhaszárítókötél · http://www.planetside.blog.hu 2012.12.03. 08:52:35

@kamuregélő: Én inkább az Ati kártya "mostohagyerek" státuszára gyanakszom esetedben. Persze egy ideális világban ezekre is kihegyezték volna a fejlesztést.

A beállításoknál javaslom a mediumot kipróbálni, és onnan visszavenni egy keveset ha kell. Sokan írták már, hogy így jobb framerate-et értek el. És még jobban is néz ki.

kamuregélő 2012.12.03. 22:53:59

@A Lesből Támadó Ruhaszárítókötél: Nem, részben PEBKAC szituáció. A render quality csúszkát nem vettem észre, csak a jobb oldali hasábot néztem valamiért.

60-75-re visszavéve már egész játszható 50-60 FPS-t elér. Az, hogy kissé homályosabb a kép az egyébként ironikus módon nem zavar, hozzá vagyok szolva a HLDM-hez és az eredeti UT99-hez. UT2003/4-el is pl. az volt a legnagyobb problémám, hogy túl sok a csicsa és a lényeget (ellent :) nem látni miatta.

Ettől függetlenül tényleg borzasztó a VGA gépigénye. CPU mondjuk nem nagy, olyan 15-20% között ingadozik. (4 mag, 8 thread (HT), 3,6 Ghz).