"World of Warcraft" nostaljik hizmet geliştirme raporu

Dev Watercolors, Blizzard geliştirme ekibinin blogu olup, esas olarak iç geliştirme operasyonları ve derinlemesine oyun tasarımı değiş tokuşları hakkında bazı arka plan ve düşünceler yayınlar.

Not; kendi kendine çeviri yapın, lütfen eksiklikleri belirtin (özellikle programlamayla ilgili kelime dağarcığı) ve birbirinizi teşvik edin

Herkese merhaba. World of Warcraft Classic Nostalgia metodik olarak geliştiriliyor.Geliştirme sırasında karşılaştığımız bazı zorlukları ve çözümleri paylaşmaktan mutluluk duyuyoruz.Son Blizzard Karnavalı'nda bahsettiğimiz gibi, klasik eski dünyayı geri yükleme süreci değil Kolay değil. Bunu iyi yapmak için çok fazla enerji ve zaman harcamamız gerekiyor ve bu çok önemli. Sayısız oyun versiyonunu, verisini ve kodunu kapsıyor; geçmiş yıllarda yaptığımız değişiklikleri dikkatle inceliyor. Endişelenmeyin: Nostaljik Sunucu ekibi çalışıyor Bu hedefe ulaşmak için çok çalışın Mevcut geliştirme aşaması, bazı geliştirme sonuçlarını göstermemize olanak tanır.

Klasik eski dünya: ilk prototip

Karşılaştığımız ilk ve en önemli karar hangi oyun sürümünü seçeceğimizdir. Çoğunuzun da belirttiği gibi, klasik eski dünya iki yıl sürdü ve bu değişikliklerle dolu. Bazı temel oyun içerikleri, örneğin Savaş alanı bir sonraki yamada tanıtıldı ve mesleğin tasarımı da zamanla değişti.

Dikkatli bir değerlendirmeden sonra, 1.12-Drums of War sürümünü referans olarak kullanmaya karar verdik, çünkü bu sürüm en eksiksiz klasik eski dünya deneyimini temsil ediyor.

Bir başlangıç noktası bulduktan sonra, kaynak kodunu ve ondan sunabileceğimizi değerlendirmeye başladık, buna orijinal geliştirme veritabanını yedeklerden geri yüklemeyi de içerdik. Anahtar parçaları entegre ettikten sonra, dahili olarak yerel bir 1.12 prototip oluşturduk. Bu prototipte ekip karakterler yaratabilir ve basit görevleri, tesviye ve ölümü gerçekleştirebilir.Test amacıyla, belli ki bunu birçok kez yaptık.

İlk testimizde, oyun bazı (beklenen) sorunları ortaya çıkardı: oyun zaman zaman çökecek, mevcut grafik kartını tanıyamıyor ve mevcut giriş sistemiyle uyumlu değil.Aynı zamanda, bu sürüm mevcut güvenlik ve virüsten koruma özelliğini desteklemiyor Hile sistemi Doğal olarak, nostaljik sunucunun Blizzard oyunlarının kalite standartlarını karşılaması ve oyuncuların beklediği oyun deneyimini sağlaması için çok çalışmamız var.

İleriye giden yol: ikinci prototip

Oyun mühendisliğinden bahsetmişken, World of Warcraft çok veriye dayalı bir oyundur.Yani oyun kodu çok esnektir ve görüntüleme formu veri tabanındaki bilgi içeriği tarafından kontrol edilir.Örneğin, görevler, canavarlar, öğeler ve etkileşimli kurallar hepsi Verilerde tasarımcı tarafından tanımlanır.

Bu yüzden kendimize, oyunun tüm arka uçlarını iyileştirmek ve sürüm 1.12'nin orijinal oyun verilerini işlemek için mevcut kodu kullanırsak, yine de en otantik nostaljik deneyimi sağlayabilir miyiz? Mantığa aykırı gibi görünse de, aslında tüm klasikleri miras almaktır. Beceri seviyeleri, eski görevler ve araziler, yetenekler vb. Gibi dünya sistemi ve daha sonra eklenen yanılsamalar ve yetenekler gibi yeni içerikler, orijinal verilerde olmadığı için var olmayacak. Birkaç haftalık araştırma ve geliştirmeden sonra, deneyler ve Prototip geliştirme için, son 13 yılda milyonlarca saatlik arka uç geliştirmeden ödün vermeden klasik oyun dünyası içeriği ve oynanışı sağlayabileceğimize inanıyoruz.

İlk çabalarımız, sağlamak istediğimiz oyun deneyimini oluşturmamıza yardımcı oldu. İkinci prototip, hedeflerimize nasıl ulaştığımıza işaret etti. Tüm güvenlik ve kararlılık değişikliklerini içeren modern kod yapımına dayalı olarak, ekibin gerçeğe ulaşmaya daha fazla odaklanabileceği anlamına gelir Klasik oyun deneyimi Orijinal 1.12'den geliştirmedeki herhangi bir farklılık, sistemin güvenliğini ve kararlılığını etkilemeden sistematik olarak sınıflandırılabilir ve düzeltilebilir.

Derine git

Peki, saf klasik oyun deneyimini modern oyun mühendisliği teknolojisi ile nasıl yeniden üretebiliriz? Bu konuyu, World of Warcraft'ı oluşturan çeşitli veri türlerini sınıflandırarak genişletelim:

Tablo verileri: Bu tür bilgiler neredeyse her zaman sayılarla ifade edilir.Bir canavarın yaşam değeri, öğenin sağladığı güç değeri ve canavarın yenilenmesinin yeri ve zamanı, veritabanındaki sayısız sayısal verinin tipik örnekleridir. Ayrıca her bir veriyi saklayabilir ve çalıştırabiliriz. Parça birliği.

Dosya verileri: Bu tür veriler genellikle 3B modeller, dış görünüm dokuları, animasyonlar ve arazi vb. Gibi bazı çok yoğun verilerdir. Etkileşimli arayüzümüz XML ve Lua'dan oluşturulmuştur. Pek çok resim dosyası ticari yazılımla doğrudan çıkarılamaz Çünkü bu orijinal sanat dosyaları, oyunun okuması ve işlemesi daha kolay bir biçime dönüştürülür.

Lua komut dosyaları: Tasarımcılar tarafından yazılan Lua komut dosyalarına dayalı bazı oyun içerikleri, çok derinlemesine mühendislik bilgisi gerektirmeden sunucu tarafı mantığını özelleştirmeyi ve işlemeyi kolaylaştırır.

Oyun mühendisliği değişiklikleri

Karşılaştığımız bir zorluk, oyun yayınlandığında tüm klasik eski dünya verilerinin orijinal biçimde depolanması ve bu biçimin çok değişmiş olmasıdır. Bu içerik parçası, klasik eski dünya oyun verilerini oluşturmak için çok fazla çalışma gerektirir. Mevcut müşterilerle uyumludur.

Örneğin, büyü başlangıçta hedef üzerinde yalnızca 3 eylem gerçekleştirebilir. Tabloda büyü şuna benzer:

Gördüğünüz gibi, tabloda çok fazla gereksiz alan var.World of Warcraft'ın ömrü boyunca, verilerin çoğunu iyileştirdik ve standart hale getirdik.Şimdi, aynı veriler aşağıdaki formatta ayrılacak

Bu formatta, çok daha az boşa harcanmış veri alanı. Büyüler artık üç özel efektle sınırlı değildir. Veritabanındaki herhangi bir veriyi çağırmadan önce, tüm veri formatlarının yeni bir formata dönüştürülmesi gerekir. Bu dönüşüm ile sınırlı değildir. Büyüler için, oyundaki hemen hemen her sistemin veri formatı (donanım öğeleri, canavarlar, oyuncu karakterleri, yenileme, AI vb. Dahil) yıllar içinde değişti.

Geleceğe bakmak

Nihai hedefimiz, klasik eski dünya oyun deneyimini daha optimize, verimli ve istikrarlı bir platformda yeniden oluşturmak ve aynı zamanda gecikme ve kararlılık sorunlarını azaltmaktır.Diğer modern iyileştirmeler, mevcut hile önleme on-hook algılama, müşteri hizmetleri ve savaş ağı entegrasyonunu içerecektir ve Temel oyun deneyimini etkilemeyen bazı kullanışlı değişiklikler.

Gelecekteki zorlukları dört gözle bekliyoruz ve klasik eski dünya için heyecanınızı paylaşıyoruz; her kod veri dönüştürme parçası, nostaljik hizmeti size ve bize orijinal klasik eski dünya deneyimini sağlamaya daha da yaklaştırıyor. Yolculuğumuza katıldığınız için teşekkür ederiz.

"Jurassic World-Evolution" NGA İncelemesi
önceki
"Zafer Kralı" S11 yan yol efendisi Dian Wei Yi Tu Liu Baskıncılar
Sonraki
"Blue Fantasy" Superba HL acemi kılavuzu
"Cyberpunk 2077" kapalı kapı sunum özeti
"Zafer Kralı" Zhang Fei'nin geniş ölçekli stratejisi, gerçek erkekleri en hassas oyun tarzıyla yorumlamayı öğretir
"Overwatch" OWL veri incelemesi en altta, öyleyse neden bu kadar acil?
On yılda 92 milyar RMB harcayan Tencent, yeni bir oyuna yatırım yaptı, bu bir sonraki "League of Legends" mı olacak?
"Fırtınanın Kahramanları" Yrel Yeteneği Hızlı Seri Açıkladı
"Heartstone" NGA Ulusal Hizmeti Haftalık Sayı 8 Yeni Çevre Tamamlanıyor
"World of Warcraft" büyük bir iblis dizisi: Ağaçları yakmanın nedeni önemli mi?
"League of Legends" AB şubesi yok edildi, nişancı ne kadar yaşayabilir?
"Overwatch", profesyonel oyuncuların İngilizce eğitmeni ile oyuncuların arkasındaki hikayeler hakkında konuşuyor
"PUBG Mobile" Duman Bombasının Pratikliği ve Becerileri
"World of Warcraft" 8.0 Ice DK değişiklikleri, tasarımcı bana verdi!
To Top