- Mesaj
- 922
- Çözümler
- 46
- Beğeni
- 1.154
- 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.
Gcc: 12
MariaDB: 10.11
Şuana kadar birkaç sistem ve düzenleme yaptım. Zamanla paylaşacağım.
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_32Gcc: 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.
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.
Şuana kadar birkaç sistem ve düzenleme yaptım. Zamanla paylaşacağım.