- Katılım
- 23 Eki 2022
- Mesajlar
- 6,601
- Çözümler
- 11
- Tepkime puanı
- 4,220
- Puanları
- 113
- Yaş
- 28
[Paylaşım] SRO.PK2API (C# .DLL) | Gelişmiş ve Ultra Hızlı (.pk2) Dosya Okuma-Yazma Kütüphanesi
SRO.PK2API Nedir?
Merhaba değerli forum üyeleri ve vsro editör dostlarım, bugün Silkroad Online private server geliştiricileri ve kendi PK2 araçlarını (Media Patcher, Auto Updater, PK2 Editor vb.) kodlamak isteyen yazılımcı dostlarım için harika bir kütüphaneyi paylaşıyorum: SRO.PK2API.Bu kütüphane, Silkroad Online istemcisinde yer alan .pk2 arşiv dosyalarını (Media, Data, Particles vb.) doğrudan C# (.NET) projeleriniz üzerinden çok hızlı bir şekilde okumanızı, yeni dosyalar eklemenizi, silmenizi veya düzenlemenizi sağlayan tamamen açık kaynak kodlu ve kararlı bir .dll dosyasıdır. Piyasada bulunan hantal ve yavaş eski PK2 araçlarının mimarisi yerine, kendi modern ve stabil araçlarınızı 2026 standartlarında geliştirmek için mükemmel bir temel sağlar.
Kütüphanenin Öne Çıkan Teknik Özellikleri
Kendi silkroad server files veya client araçlarınızı yazarken performans en önemli kriterdir. Bu kütüphane sunduğu modern veri yapıları sayesinde rakiplerinden tamamen sıyrılıyor:- Ultra Hızlı Arama $O(1)$ (Fast Search): PK2 içerisindeki binlerce dosya arasından aradığınız veriye, karmaşık döngülere girmeden algoritma düzeyinde doğrudan ve anlık olarak ($O(1)$ zaman karmaşıklığıyla) erişebilirsiniz.
- Sıfırdan PK2 Oluşturma: Var olan dosyaları düzenlemenin yanı sıra, sıfırdan temiz ve tamamen yeni .pk2 konteynerları oluşturabilirsiniz.
- İç İçe Klasör Desteği (Recursive Paths): Bir dosya eklemek istediğinizde, eğer o dosyanın bulunması gereken alt klasör yolları PK2 içinde mevcut değilse, kütüphane bu klasörleri otomatik ve iç içe (recursively) oluşturur.
Bilinen Küçük Hatalar (Known Issues):
- Kütüphane yapısı gereği, eklediğiniz yeni klasör ve dosya isimlerini otomatik olarak tamamen küçük harfe (lowercase) çevirerek kaydeder. Geliştirme yaparken dosya yollarını okuturken buna dikkat etmeniz faydalı olacaktır knk.
Örnek C# Kullanım Mimarisi
Kütüphaneyi C# projenize referans (Reference) olarak ekledikten sonra aşağıdaki basit ve temiz kod bloğu ile doğrudan .pk2 işlemlerine başlayabilirsiniz:
İçeriği görüntülemek için Giriş yapın veya Kayıt olun.

Bilinen Küçük Hatalar (Known Issues):