Geliştiricilerden
İstemci Temizliği: Sıradaki Durak, Şampiyon Seçimi

İstemci önyükleme süresini iyileştirme çalışmamız sona eriyor. Yeni hedefimiz şampiyon seçim ekranı.

GeliştiricilerdenYAZARLARRiot Cactopus, Riot Am1t, Riot A Huevo
  • Seçim panoya kopyalandı

Bu yılın başlarına doğru, League of Legends İstemcisi'nin performansını ve istikrarını arttırmaya yönelik perde arkası çalışmalarımızı her iki ayda bir sizinle paylaşacağımıza söz vermiştik.

Bugünkü güncelleme, serimizin üçüncü yazısı olacak. (İlk yazımızı burada, ikinci yazımızıysa burada bulabilirsiniz.)

ÖZET: İstemci önyükleme sürelerini başarılı bir şekilde istediğimiz noktaya gelene kadar iyileştirdik ve artık şampiyon seçim ekranı gibi daha öncelikli alanlara odaklanmaya başlayacağız. Ayrıca istemci ve sorunları hakkında oyunculardan gelen anket yanıtlarından topladığımız yeni verileri paylaşacağız.

İSTEMCİ ÖNYÜKLEME SÜRESİ

Yılın başında istemci önyükleme süresini (istemcinin başlatılması için geçen süre) çok yavaş bilgisayarlara sahip oyuncular için bile 15 saniyeye düşürmek istediğimizi söylemiştik.

O zamandan beri istemcinin mimarisinin en derinlerine kadar inerek istemcinin çalışmasını sağlayan eklentilerdeki ve uygulamalardaki ana sorunları tanımladık. Geçtiğimiz haftalardaysa çok büyük bir ilerleme kaydederek hedefimize oldukça yaklaştık.

timeseries-tur.jpg

Önyükleme artık %90'lık bölümdeki oyuncular için 18,5 saniye civarında gerçekleşiyor. Yani %90'lık bir kısım için önyükleme süresi bundan bile hızlı oluyor (ancak yakın zamanda gerçekleştirdiğimiz performans iyileştirmeleri, yavaş bilgisayara sahip oyuncular tarafından daha net anlaşılabilecek).

Önceki yazılarımızdan birinde COVID-19 salgını nedeniyle oyuncu trafiğindeki artışın da etkisiyle önyükleme süresindeki bazı aksaklıklardan bahsetmiştik. Grafikte bu yılın mart ayı civarında gerçekleşen yükselişi görebilirsiniz.

Artıştan sonraki aylarda önyükleme sürelerini iyileştirme konusunda iyi bir ilerleme kaydettik ama en büyük ilerlemelerimizden biri yakın zamanda 10.16 Yaması'yla gerçekleşti. Bunu, ekibin attığı birkaç önemli adımla açıklayabiliriz.

İlk olarak 10.14 Yaması'nda istemcide bulunan 68 eklentinin her birinin önyükleme süresine ne kadar etki ettiğini öğrenmemizi sağlayan bir araç kurduk. Bazı eklentilerin diğerlerine göre çok daha fazla soruna sebep olduğunu keşfettik. Eklenti yüklenme süresinin %75'ini sadece 8 eklentinin oluşturduğunu, geriye kalan 60 eklentininse sürenin %25'ini kapsadığını öğrendik.

Bu bilgiyle birlikte hangi eklentiler üzerinde çalışmaya başlamamız gerektiğini de bulmuş olduk. Ayrıca eklentileri bir araya getirme çalışmalarımızın yanında farklı yöntemler denemeye de karar verdik. 10.16 Yaması'nda oyuncu gerçekten ihtiyaç duyana kadar bazı eklentilerin ve ember uygulamalarının yüklenmesini önleyen bir çözüm geliştirdik.

İlk olarak belirlediğimiz önyükleme süresi hedefimize bu kadar yaklaştığımıza göre artık odağımızı çalışmalarımızın ikinci kısmına kaydırmaya hazırız: Şampiyon seçim ekranında ve istemcinin diğer önemli bölümlerinde tepki sürelerini iyileştirmek ve bu kısımları daha istikrarlı hale getirmek.

Planımızın detaylarını anlatmaya başlamadan önce dünyanın dört bir yanındaki oyunculardan aldığımız anket yanıtlarından toplanan verileri paylaşmak istiyoruz.

İSTEMCİNİN DURUMU ANKETİ VERİLERİ

"Rito, yine ne yapıyorsun? Herkes istemcinin kötü durumda olduğunu biliyor. Neden bize bununla ilgili anket gönderiyorsun?" dediğinizi duyar gibiyiz.

Evet... haklısınız. Ancak yaşanan sorunları daha detaylı bir biçimde öğrenmek istedik. Sorunlar ne kadar yaygın? En ciddi sorunlar ne? Bu soruların yanıtlarını bularak yapacağımız çalışmaları daha iyi belirleyebileceğimizi düşündük. Ayrıca istemcinin durumu hakkında ölçülebilir veriler toplayarak zaman geçtikçe istemci hakkındaki düşüncelerinizin nasıl değiştiğini de görebileceğiz.

İlk yaptığımız anketler yalnızca birkaç bölgede gerçekleşti ama gelecekte daha fazla anket yaparak ve gerektiği şekilde anketteki soruları düzenleyip sorular ekleyip çıkararak ilerlememizi takip etmeyi planlıyoruz.

Bu bilgiyi de verdiğimize göre, aşağıdaki havalı tablolara geçebiliriz.

İlk olarak takip etmek istediğimiz verilerden biri, oyuncuların istemci algısının aylık olarak nasıl değiştiği oldu.

chart1-tur.jpg

Sonuçlar bizim için pek şaşırtıcı olmasa da çok değerli bir veri noktası görevi görüyor. Çünkü anketleri yapmaya devam edersek nasıl bir ilerleme kaydettiğimizi daha net bir şekilde görebiliriz. Ayrıca bu verileri de önümüzdeki aylarda sizinle paylaşacağız.

Aşağıdaki anket sorusuyla belli başlı sorunların üzerine yoğunlaşmaya başladık:

chart2-tur.jpg

Bazı sorunlar diğerlerinden daha sık görülse de ankete katılan oyuncuların neredeyse %50'si bu sorunlardan en az birini yaşadığını söyledi.

Ardından oyunculara karşılaştıkları bu teknik sorunların her birinin ne kadar rahatsız edici olduğunu "hiç rahatsız edici değil" ve "aşırı rahatsız edici" arasında 5 üzerinden değerlendirmelerini istedik. Aşağıda, yaşanan sorunları çok rahatsız edici veya aşırı rahatsız edici olarak yanıtlayanların yüzdelerini görebilirsiniz.

chart3-tur.jpg

Aşağıda, her bir sorunun görülme sıklığını ve ankete katılanların bu sorunu ne kadar rahatsız edici bulduğunu gösteren tabloyu bulabilirsiniz.

chart4-tur.jpg

Tablolardan açıkça görülüyor ki sorunlardan iki tanesi, diğerlerine göre daha fazla öne çıkıyor.

İlk olarak şampiyon seçim ekranında şampiyon seçilmesini veya yasaklanmasını engelleyen sorunların açık ara en rahatsız edici olduğunu görebiliyoruz. İkinci en sık karşılaşılan sorunsa oyun sonu ekranının uzun yükleme süresine sahip olması. Bu bilgilerle birlikte, çalışmalarımızın ileriki dönemlerinde neyin üzerine odaklanmamız gerektiğini de biliyoruz.

SONRAKİ ADIMLARIMIZ

Önümüzdeki birkaç ay boyunca oyuncuların istemcide en sık karşılaştığı ve en fazla rahatsız oldukları sorunları çözmek üzerine yoğunlaşacağız. İstemci temizleme çalışmalarımızın bir sonraki aşamasında şampiyon seçim ekranını ve oyun sonu ekranından takdir ekranına ve istemciye geçiş süresini iyileştirmeye odaklanacağız.

İlk olarak şampiyon seçiminden bahsedelim.

Geçtiğimiz şubat ayında nihai amacımızın şampiyon seçim ekranındaki arayüz düğmelerinin tepki hızlarını iyileştirmek olduğunu söylemiştik. Hatta spesifik olarak "kesinleştirme" gibi düğmelere basıldıktan sonra geçen süreyi %90'lık bölümdeki oyuncular için bile en fazla 100 ms olacak şekilde düzenlemek istediğimizi söylemiştik.

Şimdiyse oyuncuların memnun olmasını istiyorsak şampiyon seçim ekranındaki bazı temel bileşenleri baştan düzenlememiz gerektiğini biliyoruz.

Şampiyon seçim ekranında gerçekleştireceğimiz çalışmayı üç ana bölüme ayırabiliriz. Şunları yapacağız:

  1. Şampiyon seçimini daha akıcı ve daha istikrarlı bir hale getireceğiz. Oyuncular uzun zamandır daha hızlı tepki veren, daha hızlı çalışan bir şampiyon seçim ekranı istiyor. Mevcut bileşenleri düzenleyerek tepki süresini azaltmayı, bellek tüketimini azaltmayı, mimariyi basitleştirmeyi ve şampiyon seçiminden istemsiz olarak gerçekleşen ayrılmaların sayısını düşürmeyi amaçlıyoruz.

  2. Şampiyon seçim ekranındaki oyuncu deneyimini ve kullanıcı arayüzünü yeniden değerlendireceğiz. Tasarım Ekibi'yle çalışarak çok önemli olmayan, kötü performans sergileyen animasyonları ve çok fazla kaynak tüketen bileşenleri kaldırmayı ya da düzenlemeyi planlıyoruz.

  3. Oyuncuları ne kadar rahatsız ettiklerine göre bir öncelik sırasına yerleştirerek bilinen hataları mümkün olduğunca gidereceğiz.

Şampiyon seçimine odaklanırken takdir ekranından oyun sonu lobisine geçişi de düzeltmek için kaynak ayırmayı ihmal etmeyeceğiz. Çok fazla oyuncu oyunun bu kısmında gecikmeler yaşadığını söylüyor. Bu yüzden bu sorunu gidermek üzere bir mühendislik planı oluşturuyoruz.

Bu süreç, olmasını istediğimizden daha fazla sürebilir. Ancak çalışmalarımız boyunca kendi aramızda konuşur gibi dürüst ve şeffaf bir biçimde sizinle de konuşmaya devam edeceğiz.

Birkaç ay sonra buna benzer bir yazıyla gelişmeleri size bildireceğiz. Her zamanki gibi, oynadığınız için teşekkürler.



  • Seçim panoya kopyalandı