1-99 Saf Oldschool Altyapı Projesi 2004 - 2008

  • Konuyu açan Konuyu açan hernandess
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 3
  • Gösterim Gösterim 198

hernandess

Üye
Üye
Mesaj
75
Çözümler
4
Beğeni
44
Puan
704
Ticaret Puanı
0
Herkese merhaba,

Son zamanlarda altyapılarda biriken gereksiz sistem fazlalıkları, şişirilmiş drop tabloları, sonradan eklenip yarım yamalak bırakılan sistemler ve gizli syserr üreten bozuk dosyalar nedeniyle; projeyi en saf, en optimize ve teknik olarak kusursuz bir 1-99 Oldschool çizgisine kavuşturmak adına baştan aşağı bir revizyon sürecine girdim.

Kullandığım files @Kaptan Yosun a ait olan u10 sürümü.

Bu süreçte yapılan tüm optimizasyon ve temizlik adımlarını toplulukla şeffaf bir şekilde paylaşmak istedim.

⚙️ Sistem & Sürüm Bilgileri

  • Derleyici: Visual Studio 2022 (MSVC v143)
  • Grafik Motoru: DirectX 8 (Ymir EterLib)
  • Animasyon Motoru: Granny 2.11.8.0
  • Scripting Dili: Python 2.7
  • Kütüphaneler: Boost 1.85.0 & Crypto++ 8.9.0
📌 Vizyon: Saf 1-99 Nostalji & Eksiksiz Denge Oyunun orijinal ruhunu bozan ve sonradan eklenen tüm yabancı unsurlar sunucu ve istemci genelinden (kod, veritabanı, 3D model, harita ve görev boyutunda) tamamen söküldü:

  • Sürgün Mağarası, Ejderha Odası & Beran-Setaou: İlgili haritalar, moblar, droplar, görevler ve istemci modelleri temizlendi.
  • Nemere, Razadör, Beta Haritalar: Tamamen kaldırıldı, sunucu ve istemci 44 harita standardına eşitlendi.
  • Şeytan Katakombu (Devil's Catacomb): 7 katlı zindan, Azrail'in harici anahtar sistemi, labirent haritaları ve Katakomb canavarları/dropları tamamen kaldırıldı.
  • Örümcek Zindanı 3. Kat (SD3) & Örümcek Barones: Barones odası, yumurtalar, flüt/zehir mekanikleri ve haritası söküldü.
  • Epik Eşyalar & Dönüşümler: Seon-Pyeong (Epik Sura), Triton/Kutsal vb. 80+ seviye silahlar, Kirin/Coşku vb. epik ayakkabılar, 80 ve 60 seviye kasklar, Ruh Kristali takıları ve Eskrim Broşürü kaldırıldı. Oyunun zirve ekipmanları orijinal oldschool dengesine (Muharebe, Çelik, Zehir dönemi) sabitlendi.
  • Atıl Eşyalar: Çırak sandıkları, oto-potlar, klon etkinlik nesneleri ve gereksiz kostüm kalıntıları temizlendi.
  • Kaynak Kod & Ölü Kod Temizliği: İstemci tarafında kullanılmayan eski statik kütüphaneler (Reducio, glut, SecureEngineSDK, mmap vb.), C++ motorundaki atıl monster2/npc2 arama kodları, sökülen sistemlere ait C++ fonksiyon kalıntıları, kaldırılan sistemlerin Lua görevleri (quest) ve translate.lua içerisindeki yüzlerce satır ölü çeviri metni kaynak kodlardan tamamen temizlendi.

1789330721989.webp
 

Geliştirme Günlüğü #2: BGFX Geçişi, Çekirdek Güvenliği ve Optimizasyon​


İlk geliştirme günlüğünde paylaştığım içerik temizliğinin ardından projenin teknik altyapısında kapsamlı bir modernizasyon çalışması gerçekleştirildi. Oyunun 1-99 Oldschool yapısı korunurken grafik motoru, kaynak kullanımı ve sunucu çekirdeği yeniden ele alındı.


Modern Grafik Mimarisi​

İstemcinin Native DirectX 8 cihazına bağlı çalışma zorunluluğu kaldırılarak BGFX tabanlı modern render altyapısı geliştirildi.

Varsayılan grafik sıralaması:

Direct3D 12 → Direct3D 11 → Vulkan

Modern backend’lerin çalışmadığı sistemler için aşağıdaki uyumluluk zinciri korundu:

Direct3D 9Ex → Direct3D 9 → Native Direct3D 8

Karakterler, arazi, binalar, ağaçlar, efektler, su, gölgeler ve arayüz BGFX render hattına aktarıldı.


Bellek ve Performans Optimizasyonu​

BGFX’in varsayılan bellek rezervleri Metin2’nin gerçek kullanımına göre yeniden düzenlendi.

  • Gereksiz transient buffer ve draw-call rezervleri azaltıldı.
  • Kullanılmayan kaynakların bellekte bekleme süresi düşürüldü.
  • Tekrarlanan render-state ve transform gönderimleri engellendi.
  • Texture ve render kaynaklarının oluşturma/yok etme süreçleri düzeltildi.

Client, Game ve DB kaynaklarında kullanım noktası kalmamış kodlar temizlendi.


1789923510184.webp
 
Geri
Üst