Fejlesztői napló
Folytatódik a klienstakarítás

A legújabb blogbejegyzésünkben beszámolunk arról, hol tartunk a LoL-kliens rendbetételével.

Fejlesztői naplóSzerzőkRiot Cactopus, Riot Sparango, Riot Id, Riot A Huevo
  • Kimásolva a vágólapra

Korábban megígértük, hogy kéthavonta beszámolunk arról, hol tartanak a League of Legends-kliens továbbfejlesztésének háttérben folyó műveletei.

A mai bejegyzés e sorozat harmadik része. (Az első rész itt, a második pedig itt olvasható.)

Röviden: Rendszeresen beszámolunk arról, hogyan állunk a klienst működtető kód rendbeszedésével. Eközben több programhibát is ki tudunk javítani, és ezeket is ismertetjük a bejegyzésben. Az elért eredmények ellenére még maradt tennivaló. Folytatódik a kliens rendbeszedése.

A LEGUTÓBBI EREDMÉNYEK

Ahogy a klienssel foglalkozó első blogbejegyzésünkben is megírtuk, a kliens teljesítményproblémáit szerintünk úgy lehet megoldani, hogy egyesítjük a lehető legtöbb beépülő modult és Ember-alkalmazást, ezzel csökkentve a számukat.

Azok kedvéért, akik nem járatosak a témában: a beépülő modulok olyan eszközök, amelyek a kliens kódját kezelhető méretű részekre bontják. Az Ember-alkalmazások a kliens felhasználói felületét segítenek működtetni.

További eredményeket értünk el e téren. Az alábbi grafikonon láthatjátok a beépülő modulok és az Ember-alkalmazások számának alakulását.

Architecture-Stats-hun.jpg

A grafikont nézegetve nyilván az a kérdés motoszkál bennetek, hogy ez mind szép és jó, de hogyan hat mindez a kliens teljesítményére? A válasz elég bonyolult, de nagy általánosságban elmondható, hogy a kevesebb beépülő modul és Ember-alkalmazás hatékonyabb klienskódot eredményez. Az egyszerűbb kód jobb teljesítményt jelent, és a kliens karbantartása is egyszerűbbé válik.

A munkánk eredményességének egyik mércéje az lett, hogy mennyi időt vesz igénybe a kliens elindítása. Az alábbi grafikon mutatja be, hogyan alakult ez az érték az elmúlt időszakban:

Loading-Screen-Render-hun.jpg

Mint láthatjátok, az indítási idő nagyrészt stagnált az elmúlt hónapokban. Ezt alapvetően sikerként értékeljük annak fényében, hogy milyen kockázatokat rejt magában az efféle munka. A jelentős mennyiségű kód áthelyezése és a beépülő modulok átírása váratlan következményekkel járhat, ha nem vagyunk óvatosak… de eddig sikerült elkerülni ezeket.

Reményeink szerint az indítási időben érezhető javulás következik be a következő néhány frissítés során, mivel kifejlesztettünk egy új megoldást, amely lehetővé teszi, hogy a rendszer intelligens módon kiválassza, melyik beépülő modult kell betölteni a kliens indítása során. (A legutóbbi blogbejegyzésben bővebben foglalkoztunk a témával, a „Mi a baj az Affinityvel?” című részben.)

A következő hónapokban is folytatjuk az összevonási folyamatot, és reményeink szerint hosszú távú előnyökkel kecsegtet a beépülő modulok és az Ember-alkalmazások számának csökkentése. A letisztultabb kódkörnyezet egyszerűsíti a hibák, a memóriavesztés és az összeomlások elhárítását.

Apropó programhibák és összeomlások: ejtsünk szót néhány nemrég javított hibáról.

A LEGUTÓBBI HIBAJAVÍTÁSOK

A kliensen dolgozó csapat rengeteg hibát szüntetett meg az elmúlt hónapokban végzett munka során. A 10.13-as frissítéstől kezdve a kliens hibajavításai saját szakaszt kapnak a LoL frissítési jegyzeteiben.

Addig is itt egy lista a kliensben az év eleje óta kijavított hibákról, frissítésekre lebontva:

  • 10.1 – A kliens pozíciója nem áll vissza az eredetire minden játék után.
  • 10.1 – Kijavítottunk egy hibát, amely miatt néha eltűnt a LoL embléma a „Játék” gomb mellől.
  • 10.1 - [MAC] Kijavítottunk egy hibát, amely miatt a kliens néha összeomlott, ha több mint egy perccel a kapcsolat megszakadása után állt helyre az internetkapcsolat.
  • 10.1 – A profilháttér módosítása mostantól megfelelően megjelenik a többi játékos számára is.
  • 10.3 – A középső gombbal való kattintástól mostantól nem omlik össze a kliens.
  • 10.3 – A Bolt ikont mostantól helyesen kiemeli a kliens, miután a játékos egy hextech ládát használ a Zsákmány oldalon.
  • 10.3 – A Gyűjtemény elrendezése mostantól nem vált alapértelmezés szerint a fordított betűrendre a rendezési szűrő módosítása után.
  • 10.3 – A Gyűjtemény „Elért mérföldkövek” rendezési módja mostantól megfelelően működik.
  • 10.4 – Kijavítottunk egy hibát, amely miatt a közösségi panel és a csevegési ablak lefagyott bizonyos műveletektől (barát eltávolítása, a játékos eltávolítása, a játékos blokkolása).
  • 10.4 – A Gyűjteményben ismét rá lehet keresni a hősökre pontatlanul leírt névvel is.
  • 10.4 – A hősök Gyűjteményben való keresése mostantól nem különbözteti meg a kis- és nagybetűket.
  • 10.4 – A hősök betűrend szerinti rendezése mostantól pontosan történik a Gyűjteményben.
  • 10.4 – A kliens mostantól nem egy fekete képernyőt jelenít meg, ha a játékos az „Új játék” gombra kattint, miközben a személyre szabott ajánlatok között tallóz.
  • 10.5 – Eltávolítottunk egy felesleges görgetősávot a Gyűjtemény hősöket tartalmazó oldalának aljáról.
  • 10.7 – Kijavítottunk egy hibát, amely miatt a „Barátmeghívás küldése” gomb inaktívvá vált az egyéni előszobákban.
  • 10.7 – A „Versenynaptár megtekintése” információs oldal mostantól nem jelenik meg homályosan, amikor a játékos a jövőbeli versenysorozatokat tekinti meg a Clash lapon.
  • 10.8 – Ha még nem mentett változások vannak a Hangulatjelek lapon, megfelelően jelenik meg a mentést felajánló üzenet.
  • 10.8 – A meccsvégi képernyőről kilépve a játékos mostantól nem kerül a Profil oldalra.
  • 10.8 – Az idézői ikonok mostantól megfelelően jelennek meg a kliensbe való bejelentkezéskor.
  • 10.9 – Kijavítottunk egy hibát, amely miatt a Kék minion zúzó ikont nem lehetett kiválasztani.
  • 10.9 – A játékosok mostantól a megfelelő hibaüzenetet kapják, amikor a LoL karbantartási ideje alatt próbálnak bejelentkezni.
  • 10.9 – Kijavítottunk egy hibát, amely miatt a blokkolt játékosok neve nem jelent meg a blokkolt játékosok listáján.
  • 10.9 – Az Ember korábbi verziója által okozott számos, memóriavesztéssel járó hibát kijavítottunk.
  • 10.10 – Kijavítottunk egy hibát, amely miatt a rúnaoldalak bejelentkezéskor eltűntek vagy törölt állapotúként jelentek meg.
  • 10.10 – A rúnaoldalak mostantól automatikusan bezáródnak, ha a játékos a „Játék” gombra kattint.
  • 10.10 – A rúnaoldalak átrendezése mostantól nem hoz létre duplikált rúnaoldalakat vagy okoz összeomlást.
  • 10.10 – Kijavítottunk egy hibát, amely miatt egyes játékosok nem tudták szerkeszteni a rúnaoldalaikat.
  • 10.11 – Az „Alsó kategóriás mód engedélyezése” és a „Kliens bezárása játék közben” beállítást mostantól megfelelően menti a rendszer a Beállítások ablak bezárásakor.
  • 10.11 – Kijavítottunk egy hibát, amely miatt a Gyűjtemény „hőskinézet ritkasága” gombja csak részben jelent meg.
  • 10.11 – Kijavítottunk egy hibát, amely miatt a játékosok néha nem tudtak belépni a Néző módba.
  • 10.12 – Kijavítottunk néhány hibát, amelyek megnehezítették a rúnaoldalak használatát a hősválasztó képernyőn.

Egyelőre ennyi! Ha találsz egy hibát, sokat segíthet, ha küldesz róla egy hibajegyet ezzel az űrlappal. Visszajelzéseket a kliens jobb alsó sarkában található Hibajelentés gombra kattintva is küldhetsz.

A FOLYTATÁS

A kliensen dolgozva van egy visszatérő kérdésünk: Elég jó a kliens a játékosaink számára?

A válasz egyelőre nemleges. Még nem.

Rengeteg kiirtandó hiba, megoldandó összeomlás és az architektúrában rejtőző gond maradt. Amíg nem tudunk egyértelmű igen választ adni a fenti kérdésre, a munka folytatódik.

Időbe kerül, amíg eljutunk erre a pontra, de rendszeresen beszámolunk arról, hogyan állunk. A következő néhány frissítésben folytatódik a beépülő modulok és az Ember-alkalmazások egyesítése és az utunkba kerülő programhibák javítása. A következő helyzetjelentés idejére reményeink szerint készen állunk majd a következő szakaszra, amelyben kifejezetten a hősválasztó képernyő válaszidejének csökkentése lesz a cél.

Mint mindig, ezúttal is köszönjük, hogy velünk tartottatok! Pár hónap múlva újra jelentkezünk a klienssel kapcsolatos hírekkel.

Címkék:



  • Kimásolva a vágólapra

Kapcsolódó
Kapcsolódó