Mühendisin Atölyesi serisinin bu bölümünde, WoW Companion App’e gelen Shadowlands güncellemeleri ve mobil tasarım zorlukları konu alınıyor.

Shadowlands Beta’da daha da ilerledikçe, genişletme paketinde göreceğiniz bazı harika özellikleri oluşturma sürecine içeriden bir bakış açısı sağlamak istedik. Bu Mühendisin Atölyesi’nde, Shadowlands için yeni çevrimdışı ilerleme sistemimiz olan Adventure özelliği ile mobil ve PC platformları için aynı anda bir özellik geliştirmeye odaklanıyoruz. Adventure’lar, auto-battler formatında düşman karşılaşmalarıyla savaşmak için beş maceracıdan oluşan grupları göndermenize olanak tanıyan, önceki genişleme paketlerinden tanıyacağınız Mission ve Follower sistemlerinin düşünsel bir halefidir.

Dispose of the Detritus

Sistem Tasarımıyla Başlıyor

Her özellik, tasarımcılarımızın bir dizi hedef belirlediği ve daha sonra oynanabilir bir özellik haline gelen bir özellik sunumu olarak bilinen şeyi oluşturmak için framework’ü belirlediği sistem tasarımında başlar. Adventure’lar için, önceki Mission ve Follower sistemlerinden iyi çalışan şeyleri korumak ve diğer yönleri yinelemek istedik. Özellikle, sistemin oyuncuya sık sık ödüller ve hedefler sunması, oyuncunun oturumu kapalıyken ilerlemesine izin vermesi ve oyunun fantezisini vurgularken hikaye anlatımı için başka bir yol sunması hoşumuza gitti. Tekrarlamak istediğimiz en önemli özellik, oyunu daha ilgi çekici hale getirmek ve görev başarısının kararlılığını daha akıcı hale getirmekti. Mission ve Follower sisteminin önceki yinelemeleri, özellikle AddOnların kullanımıyla biraz önemsiz bir şekilde çözüldü. Öte yandan, Adventure’lar kendi başına bir oyun değil, oyun içindeki bir sistemdir. Yeni oyuncular, kılavuzları okumak zorunda kalmadan başarılı olabilmeli, ancak daha fazla zaman harcayanları ödüllendirmek için yeterli derinlik olmalıdır. Ek olarak, bir oyuncunun bilgisayarındayken önemli bir zamanını alan, çevrimdışı ilerlemeye yönelik bir sistem oluşturmak istemiyoruz.

Bu geliştirme aşamasında, tasarımcıların en iyi arkadaşları spreadsheet’lerdir. Spreadsheet’ler, tasarımcıların fikirler ve veriler arasındaki boşluğu doldurmasına olanak tanır. Bir fikrin iyi yankılanıp yankılanmayacağına dair kabaca bir fikir edinebilir, deneyim ve saldırı gücü gibi şeyler için farklı veri eğrileri uygulayabilir ve vahşi şeyleri denemek için hala uygun maliyetli olduğunda hızlı yinelemeye izin verebilirler.

Mobil ve PC için Geliştirme

Sonunda, otomatik olarak çözülen sıra tabanlı savaş kullanan bir “auto-battler lite” modelinde karar kıldık. Oyuncular masaya beş maceracı yerleştirir ve her bir maceracının yeteneklerine göre ideal bir yerleşim stratejisi oluşturur. Tüm düşmanlar yenildiği sürece kazanır ve ödüllerinizi alırsınız. Bununla birlikte, dikkatli bir maceracı seçimi ve yerleştirme yoluyla, verimli oyuncular, maceracıların savaş sırasında aldığı hasar miktarını en aza indirebilir, böylece iyileşmeleri için uzun süre beklemeden bir sonraki maceraya gönderilebilirler.

Mobildeki Zorluklar ve Dikkat Edilmesi Gerekenler

Adventure’lar, WoW Companion App için doğal bir uyum sağlayan bir özelliktir ve özelliği hem mobil hem de PC platformları için eşzamanlı olarak geliştirmek, sistemler ve kullanıcı arayüzü (UI) tasarımı arasında yakın bir işbirliğine dayalı çalışma ortamına izin vermenin yanı sıra, her iki platform için de tekil bir UI vizyonu sağlar. Adventures özelliği için kullanıcı arabirimi tasarım dayanak noktalarımızdan biri, PC ile mobil arasında olabildiğince yakın bir şekilde eşitlik sağlamaya çalışmaktı. Ancak Companion App, PC deneyimine eşlik etmektedir, bu nedenle eşlik, ana oyun pahasına zorlanmamalıdır.

Mobil Graybox
Mobil Graybox
PC Graybox
PC Graybox

PC, 3B dünyayı çok çeşitli donanımlarda işleme ve canlı oyuncu eşzamanlılığını dengeleme gibi karmaşık zorluklarla karşı karşıya kalırken, mobil için geliştirmenin farklı bir sorun seti vardır. Telefonlar çok çeşitli en boy oranlarında ve boyutlarda olabilir ve bunun için UI ve kullanıcı deneyimi (UX) hesaba katılmalıdır. Mümkün olduğunca çok sayıda cihaz modelini destekleyebilmemiz için uygulamanın veri ayak izi en aza indirilmelidir. Mobil platform için özellikler geliştirirken üstesinden gelinmesi gereken en büyük engel, oyunun orijinal olarak mobil cihazlar için tasarlanmamış olmasıdır. World of Warcraft’ın piyasaya sürüldüğü 2004 yılını düşünürseniz, tercih edilen telefon Motorola Razr ve tercih edilen mobil oyun Snake idi. Söylemeye gerek yok, o zamanlar geliştirilmekte olan frameworklerde mobil uyumluluk düşünülmüyordu. En basit özellikler bile, büyük miktarlarda PC framework’ünün önce mobil platformda uygulanmasını gerektirebilir.

Mühendislik Tasarımı

Neyse ki Adventure için Mission ve Follower’ların önceki yinelemelerinden alınan framework’ün çoğu yeniden kullanılabilir. Tasarımın birbirine sıkı sıkıya bağlı yapısı nedeniyle hem mobil hem de PC platformlarını seri olarak uygulamak yerine yerine aynı anda uygulamayı seçtik. Her iki platformu da sıfırdan geliştirmek, her iki platformu da açıkça desteklemek için sunucu mesajları yazabilmemiz açısından başka bir nimet sağladı. Oyundaki ana UI ögelerini elde edene dek, maceraları bir spreadsheet’ten oyundaki daha etkileşimli ve yinelemeli bir temsile dönüştürmek için bazı prototip oluşturma yazılımları kullandık.

Client GUI
Client GUI

Görünüm ve Hissiyat

Her iki platformda da çözülmesi gereken en büyük zorluklardan biri, savaş tekrarları sırasında kullanılan özel efektleri (FX) barındırıyordu. FX’lerin savaşın net bir şekilde okunması ve iyi hızda ilerlemesi için kritik olduğunu ve deneyime daha sürükleyici, içgüdüsel bir his verdiğini erkenden keşfettik. Ancak bu, kullanıcı arayüzünde yeni bir çığır açmayı içeriyordu; her iki platformda da pastadan bir parça vardı. PC platformunun mevcut güçlü bir FX kütüphanesi olmasına rağmen, bu FX’i UI çerçevelerine yerleştirecek mevcut teknoloji, savaş animasyonu için yeterince karmaşık değildi. Mobil platformun iyi bir animasyon framework’ü vardı, ancak FX’ler mobil kullanım için optimize edilmemişti. Sonunda, framework’ün gelecek birçok özellikte yeniden kullanılacağını bilerek eksik parçalarını geliştirmek için her iki platforma da yatırım yapmaya karar verildi.

Mobil platform için, uygulama boyutunun bir endişe yaratacağını zaten biliyorduk. Mevcut içeriğimizin üzerine tam bir maceracı ve karşılaşma paketi için FX eklemek bir bellek zorluğu olacaktı. FX’in görsel kısmına ek olarak, uygulama genelinde sadece bir avuç sese sahip olmaktan, her büyü efekti için bir dizi sese geçtik. Hangi dersleri öğrenebileceğimizi ve iş akışımıza dahil edebileceğimizi görmek için hem WoW FX ekibimize hem de Hearthstone FX ekibine danışabildik. Büyü havuzuna ve maceracı türüne göre çalmak için büyü efekti seçen bir yaklaşıma karar verdik ve verileri ayırmaya yardımcı olmak için başka bir makalede tartışacağımız bazı ek frameworkler ekledik.

Oynayış Testleri

Bir uygulama yeterince ilerledikten sonra, oynayış testi oturumlarını erkenden ve sık sık yapmak önemlidir. Oyununuz teknik olarak mükemmel olabilir, ancak oyuncular oyunu eğlenceli bulmazsa, başarısız olmuş demektir. Mevcut evden çalışma durumu, mobil ekip için üstesinden gelinmesi gereken ek bir engel oluşturdu: geleneksel oynayış testi, birkaç mobil cihazda bir build oluşturmak ve birlikte bir odada oynayış testi yapmaktır. Evden çalışma dünyasında, mobil build’leri kişisel cihazlara güvenilir ve güvenli bir şekilde dağıtmanın bir yoluna ihtiyacımız vardı ve evden çalışma ciddi bir şekilde başlamadan önce bunu yapmak için yalnızca birkaç haftamız vardı. Blizzard’daki birden fazla ekibin hızlı işbirliği sayesinde, mobil oyun testini desteklemek için yeterli bir dağıtım framework’ü oluşturabildik. Bu, yalnızca oyun testlerini koordine edebilmekle kalmayıp, aynı zamanda uygulama build’lerini diğer WoW ekip üyelerine dağıtan ve gelecekteki özellikler için yollar sağlamada zaten kâr payı ödeyen bir başka framework parçasıdır.

İleriye Dönük Olarak

Bu özelliği geliştirmeyi herhangi bir şekilde bitirmedik ve Shadowlands Beta ve ötesine geçerken Adventure’larıı yinelemeye ve üzerinden geçmeye devam edeceğiz. Umarız, perdelerin ardından yaptığımız bu ön bakış, World of Warcraft için Adventure’lar gibi özelliklerin geliştirilmesindeki süreç, zorluklar ve çözümlere ilişkin bazı bilgiler sağlar. Oyun testi kadar kritik olduğu olan test güçlerimiz oyuncu tabanımızdaki oyuncu sayısıyla karşılaştırıldığında hiçbir şey değildir; Adventure deneyimini geliştirmemize yardımcı olabilecek geri bildirimleriniz varsa, bunu Shadowlands beta forumlarına bırakın. Bize katıldığınız için teşekkürler, Shadowlands’te görüşmek üzere!