Mainline Files Geliştirme Günlüğü

  • Konuyu açan Konuyu açan Toranaga
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 7
  • Gösterim Gösterim 203

Toranaga

Co-Admin
Co-Admin
Geliştirici
Yardımsever Üye
Usta Üye
Mesaj
925
Çözümler
46
Beğeni
1.161
Puan
1.159
Ticaret Puanı
0
2020 den bu yana kendi çapımda metin2 geliştirmeleri yapıyorum. Ancak çok az paylaşımım var bu işi hobi olarak görüyordum. Bu günlük altında 2 3 ay kadar önce geliştirmeye başladığım filesin gelişim aşamalarını paylaşacağım. Buradaki amacım tamamen temiz revize edilmiş tıkır tıkır çalışan bir files oluşturmak.

Filesin şu anki durumu güzel. Dosya ve klasör yapısını olabildiğince düzenli tutmaya çalışıyorum. Şu ana kadar sistem ekleme yapmaktan ziyade var olan kodların revizesini yapmaya çalıştım. Server game ve db makefile ları tamamen temiz bir şekilde baştan yazdım.

Kullandığım teknolojiler:​

FreeBSD: 14.3_32
Gcc: 12
MariaDB: 10.11

Python tabanlı server yönetim scripti:​

İlk yaptığım geliştirmelerden birisi bu oldu. Tamamen kendim yazdım. Başlatma, kapatma, temizleme, yeniden başlatma, files oluşturma (Generate), database kurma, sylink oluşturma, quest derleme gibi özellikleri var. Generate yaptığımız zaman kanalları ve çekirdek (core) leri tamamen oluşturuyor port atamalarını kendisi yapıyor ve client için kullanabileceğimiz serverinfo.py dosyasını oluşturuyor. Bu sayede yeni kanal ekleme ve çekirdek çoğaltma işlemi çok basite iniyor.
1769887422147.webp

Tamamen kendime ait pack sistemi:​

"Acaba yapabilir miyim" sorusuyla başladım. İlk önce kendi pack kapatma sistemini yazdım basit düzeyde daha sonra okuma sistemini yazdım. Ama bunlar oyun için kullanılabilecek düzeyde değildi. Biraz ara verdikten sonra pack kapatma sistemini c++ wxWidget kullanarak bir arayüz oluşturdum ve pack okuma sistemini metin2 ye uyarlayabilecek şekilde yazdım. Çalışma mantığı temelde şu şekilde dosyaları okuyor içeriğini crypto++ AES_GCM şifreleme yöntemi kullanarak okuyup LZ4 ile sıkıştırıp bir dosyaya yazıyor.
1769888240510.webp

Şuana kadar birkaç sistem ve düzenleme yaptım. Zamanla paylaşacağım.
 

Sandık içeriği görme ve toplu açma sistemi:​

Bu sistem de tamamen sıfırdan yazıldı. İlerleyen günlerde ui belki değişebilir. Toplu sandık açma tamamen server taraflı çalışır kasma vb. yapmaz. Envanterde yer kalmaz ise sandık açımını durdurur.

1769969156573.webp

 
Eline emeğine sağlık ama hala dm kutumda bu sistemlerin bulunduğu bir mesaj göremedim.
 
Geri
Üst