Knight Online, uzun yıllardır PvP savaşları, clan sistemi, karakter gelişimi ve rekabetçi yapısıyla MMORPG dünyasında kendine özel bir oyuncu kitlesine sahip. Ancak son yıllarda oyuncuların bilgisayar başında geçirdiği sürenin yanında mobil cihazlardan oyun oynama alışkanlığı da ciddi şekilde önem kazandı. Bu durum, Knight Online benzeri bir deneyimi telefon ve tablet üzerinden sunmak isteyen geliştiriciler için yeni bir proje alanı oluşturuyor.
Burada önemli bir ayrım bulunuyor: mevcut Knight Online oyununu resmi izin olmadan mobil platforma taşımak veya yetkisiz bir server emulatorü oluşturmak, oyunun resmi kullanım sözleşmesinde yasaklanan faaliyetler arasında yer alıyor. NTTGame'in yayımladığı sözleşmede oyunun yalnızca resmi hizmet üzerinden oynanması gerektiği ve server emulatorleri aracılığıyla başka kişilerin oyunu oynamasını sağlayacak sistemlerin oluşturulmaması gerektiği açıkça belirtiliyor.
Bu nedenle aşağıdaki rehber, Knight Online tarzında mobil MMORPG/PvP server projesinin teknik ve ticari olarak nasıl planlanabileceğini anlatır. Lisanslı veya kendi haklarına sahip olduğunuz içerikler kullanılarak geliştirilecek bir mobil proje için yol haritası olarak düşünülebilir.
Knight Online Mobil Server Nedir?
Knight Online mobil server denildiğinde genellikle iki farklı proje anlaşılabiliyor.
İlk model, mevcut Knight Online PC deneyimini mobil cihazlarda çalıştırmaya yönelik projedir. Bu modelde mevcut oyun istemcisi, sunucu altyapısı, karakter sistemi, item sistemi ve oyun mekanikleri mobil cihazlara uyarlanmak istenir.
İkinci model ise Knight Online'dan ilham alan ancak kendi istemcisi, sunucusu, grafik varlıkları ve oyun sistemleri bulunan bağımsız bir mobil MMORPG geliştirmektir.
İkinci yaklaşım teknik ve hukuki açıdan çok daha farklı bir projedir. Burada geliştirici kendi oyun dünyasını, karakterlerini, itemlerini, haritalarını ve oyun mekaniklerini oluşturabilir.
Mobil PvP MMORPG projesinin temel bileşenleri şunlardır:
- Mobil istemci
- Oyun sunucusu
- Veritabanı
- Login sistemi
- Hesap sistemi
- Karakter sistemi
- Item sistemi
- PvP sistemi
- Clan sistemi
- Chat sistemi
- Web panel
- Yönetim paneli
- Güvenlik sistemi
- Güncelleme sistemi
- Ödeme sistemi
- Log sistemi
Başarılı bir proje için yalnızca oyun dosyalarının çalışması yeterli değildir. Sunucu altyapısı, mobil istemci, web sistemi ve güvenlik birlikte tasarlanmalıdır.
Mobil Knight Online Projesine Nereden Başlanmalı?
Bir mobil MMORPG projesinde en büyük hata doğrudan oyun geliştirmeye başlamaktır.
Öncelikle projenin teknik mimarisi belirlenmelidir.
Örneğin:
Bunun yanında ayrı servisler de kullanılabilir:
Bu yapı sayesinde mobil uygulama doğrudan veritabanına bağlanmaz.
Bu oldukça önemlidir.
Mobil uygulamanın içerisinde:
- MySQL şifresi
- Admin bilgileri
- API gizli anahtarları
- Sunucu yönetim bilgileri
gibi bilgilerin bulunmaması gerekir.
Mobil Oyun İçin Hangi Motor Kullanılabilir?
Mobil MMORPG geliştirmek isteyenlerin karşısına genellikle birkaç farklı oyun motoru çıkar.
Unity
Mobil MMORPG projelerinde sık tercih edilen seçeneklerden biri Unity'dir.
Avantajları:
- Android desteği
- iOS desteği
- Çok geniş geliştirici topluluğu
- Asset Store
- 3D desteği
- UI sistemi
- Animation sistemi
- Network kütüphaneleri
- Performans optimizasyon araçları
Özellikle Android ve iOS'u aynı projeden hedeflemek isteyen ekipler için kullanılabilir.
Unreal Engine
Daha gelişmiş grafiklere sahip projelerde Unreal Engine tercih edilebilir.
Avantajları:
- Gelişmiş grafik sistemi
- Büyük 3D dünyalar
- Gelişmiş animasyon
- Blueprint
- C++
- Güçlü rendering sistemi
Ancak küçük bir ekip için geliştirme süreci Unity'ye kıyasla daha ağır olabilir.
Mobil Server İçin Sunucu Nasıl Olmalı?
Mobil MMORPG projesinin oyuncu sayısı arttıkça sunucu mimarisinin önemi artar.
Örneğin başlangıç aşamasında:
gibi bir yapı kullanılabilir.
Fakat gerçek ihtiyaç tamamen oyun motoruna ve oyuncu sayısına bağlıdır.
100 oyunculuk bir test sunucusu ile 10.000 eş zamanlı oyuncu hedefleyen bir sistemin ihtiyaçları aynı değildir.
Bu nedenle başlangıçta gereğinden büyük makine satın almak yerine ölçeklenebilir altyapı oluşturmak daha mantıklıdır.
Game Server ve API Server Ayrılmalı mı?
Evet, mümkün olduğunca ayrılması faydalıdır.
Örneğin:
hesap işlemleri için,
oyun bağlantısı için,
yönetim paneli için kullanılabilir.
Böylece:
şeklinde bir yapı kurulabilir.
Bu mimari ileride sunucuyu büyütmeyi kolaylaştırır.
Veritabanı Nasıl Tasarlanmalı?
Mobil MMORPG'nin en önemli bölümlerinden biri veritabanıdır.
Örneğin temel tablolar:
olabilir.
Örneğin:
users
characters
items
inventory
Bu yapı daha sonra genişletilebilir.
Mobil Oyunda Login Sistemi
Mobil oyunda login sistemi klasik web sitesinden biraz farklı tasarlanmalıdır.
Örneğin:
isteği:
gönderir.
Sunucu başarılı giriş sonrasında bir token üretir:
Mobil uygulama daha sonraki isteklerde bu tokenı kullanır.
Örneğin:
Bu yöntem mobil uygulamalar için yaygın bir API mimarisidir.
Mobil Karakter Sistemi
Knight Online tarzı bir mobil MMORPG'de karakter sistemi projenin merkezinde yer alır.
Oyuncunun karakterinde örneğin:
- Level
- EXP
- HP
- MP
- Attack
- Defense
- Agility
- Strength
- Intelligence
- Skill
- Item
- Gold
- Nation
- Clan
gibi bilgiler bulunabilir.
Ancak burada önemli nokta şudur:
Oyuncunun kritik değerleri mobil cihaz tarafından belirlenmemelidir.
Örneğin oyuncu telefondan:
gönderirse server bunları kabul etmemelidir.
Bunun yerine server kendi veritabanındaki değerleri kontrol etmelidir.
Server Authoritative Sistem
Mobil PvP oyunlarında en önemli güvenlik prensiplerinden biri server authoritative mimaridir.
Yani kritik kararları server verir.
Örneğin:
Oyuncunun telefonu yalnızca:
"Bu oyuncuya saldırmak istiyorum."
demelidir.
Hasarı telefon hesaplamamalıdır.
Aksi halde hile geliştirmek çok daha kolay hale gelir.
Mobil PvP Sistemi
Knight Online benzeri bir projede PvP sistemi en fazla dikkat edilmesi gereken bölümlerden biridir.
Örneğin:
Server aşağıdaki kontrolleri yapabilir:
- Oyuncular aynı haritada mı?
- Oyuncular arasındaki mesafe uygun mu?
- Skill kullanılabilir durumda mı?
- Cooldown tamamlandı mı?
- Oyuncunun saldırı hakkı var mı?
- Rakip ölü mü?
- Rakip dokunulmaz mı?
- PvP bölgesi aktif mi?
Bu kontroller mobil PvP deneyiminin temelini oluşturur.
Mobil Kontroller Nasıl Olmalı?
PC'deki klavye ve mouse kontrollerini doğrudan telefona aktarmak iyi bir kullanıcı deneyimi oluşturmayabilir.
Mobil arayüzde genellikle:
Sol taraf:
Sağ taraf:
şeklinde bir sistem düşünülebilir.
Örneğin:
Oyuncunun ekranı gereksiz butonlarla doldurulmamalıdır.
Mobil Grafik Optimizasyonu
Mobil oyun geliştirmede grafik kalitesi kadar performans da önemlidir.
PC'de çalışan bir model telefonda aynı performansı vermeyebilir.
Bu nedenle:
- Texture boyutları
- Polygon sayısı
- Draw Call
- Shader kullanımı
- Particle efektleri
- Shadow
- Animation
- LOD
- Object pooling
gibi konular üzerinde çalışılmalıdır.
Özellikle büyük PvP savaşlarında performans problemi yaşanabilir.
Örneğin aynı ekranda:
olması düşük donanımlı cihazlarda FPS düşüşüne neden olabilir.
Bu nedenle kalabalık savaşlarda oyuncu ve efekt optimizasyonu yapılmalıdır.
Mobil Clan Sistemi
Knight Online tarzındaki oyunlarda clan sistemi topluluk oluşturmak için kullanılabilir.
Örneğin:
gibi sistemler oluşturulabilir.
Clan savaşları ayrıca oyunun rekabet sisteminin önemli bir parçası haline getirilebilir.
Mobil Server İçin Web Panel
Oyunun yanında bir web panelinin bulunması büyük kolaylık sağlar.
Örneğin:
üzerinden oyuncular:
- Hesap bilgilerini
- Karakterlerini
- Clan bilgilerini
- Sıralamaları
- Ödeme geçmişini
- Duyuruları
- Destek taleplerini
görebilir.
Admin panelinde ise:
gibi bölümler bulunabilir.
Mobil Server İçin Admin Panel
Yönetim paneli özellikle PvP sunucularda çok önemlidir.
Örneğin bir admin:
gibi işlemleri tek panel üzerinden yapabilmelidir.
Ayrıca admin işlemlerinin loglanması gerekir.
Örneğin:
gibi kayıtlar tutulabilir.
Anti-Cheat Sistemi
Mobil PvP server projelerinde anti-cheat ciddi şekilde ele alınmalıdır.
Özellikle aşağıdaki durumlar kontrol edilmelidir:
- Anormal hareket
- Aşırı saldırı hızı
- Normal olmayan skill kullanımı
- Geçersiz item
- Geçersiz gold
- Paket manipülasyonu
- Tekrarlanan istekler
- Speed hack davranışı
- Sahte client istekleri
Ancak anti-cheat yalnızca mobil uygulamaya güvenmemelidir.
En önemli güvenlik katmanı:
Server tarafı doğrulamasıdır.
DDoS ve Network Güvenliği
Bir PvP server yayınlandıktan sonra saldırı ihtimali de düşünülmelidir.
Özellikle:
aynı makinede bulunuyorsa tek saldırı bütün sistemi etkileyebilir.
Daha gelişmiş yapıda servisler ayrılabilir.
Örneğin:
Ayrıca firewall, rate limiting, bağlantı sınırları ve loglama gibi mekanizmalar uygulanmalıdır.
Mobil Server İçin Güncelleme Sistemi
Mobil oyunlarda güncelleme sistemi de baştan düşünülmelidir.
Her güncellemede uygulamanın tamamen yeniden indirilmesini önlemek için:
gibi bir sistem kurulabilir.
Örneğin:
ise uygulama gerekli dosyaları indirir.
Bu sistem oyuncunun mobil internet kullanımını da azaltabilir.
Mobil MMORPG'de Ekonomi Sistemi
Oyunun ekonomisi baştan planlanmalıdır.
Örneğin:
gibi farklı ekonomik birimler kullanılabilir.
Burada en önemli konu ekonominin kontrolsüz şekilde büyümemesidir.
Örneğin oyuncuların aşırı miktarda gold üretmesi:
gibi sonuçlara yol açabilir.
Bu yüzden ekonomi sisteminin istatistikleri düzenli olarak takip edilmelidir.
Mobil Server'da Event Sistemi
Oyuncuların servera düzenli dönmesini sağlamak için etkinlik sistemi oluşturulabilir.
Örneğin:
Günlük Etkinlik
Haftalık Etkinlik
Özel Etkinlik
Etkinlikler web panelinden yönetilebilir hale getirilirse adminlerin iş yükü azalır.
Leaderboard Sistemi
Mobil PvP serverlarda sıralama sistemi oyuncular için önemli bir motivasyon oluşturabilir.
Örneğin:
web sitesinde gösterilebilir.
Örneğin:
şeklinde canlı leaderboard oluşturulabilir.
Mobil Server İçin SEO
Eğer mobil server projesi ayrıca bir web sitesiyle tanıtılacaksa SEO çalışması da yapılabilir.
Hedeflenebilecek aramalar:
- Knight Online mobil
- Knight Online mobil server
- Knight Online mobil oyun
- mobil PvP server
- mobil MMORPG
- mobil Knight oyunu
- Knight tarzı mobil oyun
- mobil PvP MMORPG
- Android MMORPG
- iOS MMORPG
- mobil clan savaşları
Ancak marka ve telif konusunda kullanılan ifadelerin projenin gerçek niteliğini doğru şekilde yansıtması önemlidir. Resmi Knight Online ile bağımsız bir oyun arasında kullanıcıyı yanıltacak şekilde bağlantı kurulmasından kaçınılmalıdır.
Google Play ve App Store Süreci
Mobil oyun tamamlandıktan sonra dağıtım aşamasına geçilir.
Android tarafında:
iOS tarafında:
kullanılabilir.
Uygulama mağazalarında:
- Uygulama adı
- Açıklama
- Ekran görüntüleri
- Yaş derecelendirmesi
- Gizlilik politikası
- Kullanım şartları
- Destek bilgileri
- Uygulama ikonları
gibi bilgiler gerekir.
Ayrıca üçüncü taraf markaların ve oyun içeriklerinin kullanım hakları da ayrıca değerlendirilmelidir.
Knight Online Mobil Server Kurmanın Maliyeti
Maliyet projenin büyüklüğüne göre çok değişir.
Basit bir prototip:
ile başlayabilir.
Fakat ticari bir MMORPG için:
gibi farklı uzmanlıklar gerekebilir.
Buna ek olarak:
- Sunucu
- CDN
- DDoS koruması
- Domain
- SSL
- E-posta sistemi
- Mağaza hesapları
- Grafik/asset lisansları
- Ödeme altyapısı
- Yedekleme
- İzleme sistemi
gibi giderler de oluşabilir.
Sıfırdan Mobil PvP Server İçin Örnek Yol Haritası
Projeyi aşamalara ayırmak işleri oldukça kolaylaştırır.
1. Aşama — Proje Tasarımı
Önce:
belirlenir.
2. Aşama — Server
Daha sonra:
sistemleri hazırlanır.
3. Aşama — Mobil Client
Ardından:
geliştirilir.
4. Aşama — Web Panel
Sonrasında:
sayfaları hazırlanır.
5. Aşama — Admin Panel
Admin tarafına:
eklenir.
6. Aşama — Güvenlik
Yayın öncesinde:
test edilir.
7. Aşama — Kapalı Beta
Önce küçük bir oyuncu grubuyla test yapılır.
Örneğin:
ile başlanabilir.
Burada özellikle:
- Server çökmesi
- Ping
- FPS
- PvP dengesi
- Item hataları
- Ekonomi
- Login problemleri
- Mobil cihaz uyumluluğu
kontrol edilir.
En Önemli Nokta: Mobil Server Sadece "Oyunu Telefona Açmak" Değildir
Mobil MMORPG projesinin en zor tarafı yalnızca grafik değildir.
Asıl zorluk:
Client + Server + Network + Database + Security + Game Design
sistemlerinin birlikte çalışmasıdır.
Örneğin oyuncunun telefonunda karakter hareket ediyor olabilir. Fakat server bu hareketi doğru doğrulamıyorsa sistem güvenli değildir.
Aynı şekilde güzel bir mobil arayüz hazırlanabilir. Ancak 500 oyunculuk savaşta server performansı düşüyorsa oyun deneyimi bozulur.
Bu nedenle mobil PvP server projesi şu şekilde düşünülmelidir:
Sonuç olarak, Knight Online mobil server kurma fikri teknik açıdan büyük ve çok parçalı bir projedir. Mevcut Knight Online istemcisini veya sunucu altyapısını izinsiz şekilde mobil platforma taşımak yerine, gerekli hak ve izinler mevcutsa lisanslı bir proje geliştirmek veya kendi özgün mobil MMORPG/PvP oyununuzu oluşturmak daha sağlıklı bir geliştirme modeli olur. NTTGame'in resmi sözleşmesi, yetkisiz server emulatorleri ve oyunun resmi hizmet dışındaki yollarla sunulması konusunda açık kısıtlamalar içeriyor.