• Serverınızın epinlerini tamamen Turkmmo güvencesiyle satın. Kredi kartı, mobil ödeme, havale/eft ve uygun komisyon oranıyla. Hemen mağaza başvurunuzu yapın. Oyunalisveris.com





Sitemize reklam vermek için [email protected] adresine mail atabilirsiniz
For Advertising Contact [email protected]


Server veri dosyaları için json çevirici

Koray'

Pasha37
TM Üye
Üye
Katılım
21 Haz 2013
Konular
137
Mesajlar
1,068
Reaksiyon Skoru
1,082
Online Süresi
16d 12h 30m
Başarım Puanı
224
MmoLira
1,287
DevLira
18
En İyi Cevap Puanı
0
Merhaba, bazı sunucu veri dosyalarını .txt'den .json'a dönüştürmeye başladım. Bu değişikliklerle onları daha anlaşılır ve modern hale getirmeyi düşünüyorum, ayrıca birkaç hata ve eski sistemde bir memory leak düzeltildi. Şu anda sadece mob_drop_info.txt dosyası çevirildi, daha sonra tüm .txt dosyaları ve proto dosyaları eklenecektir.

mob_drop_info.txt için anlatım:

service.h dosyasına ekleyin:

Kod:
#define ENABLE_JSON_GAME_FILES
stl.h dosyasına ekleyin

Kod:
inline std::wstring StringToWstring(std::string input)
{
    std::wstring output(input.begin(), input.end());
    return output;
}
inline std::string WstringToString(std::wstring input)
{
    std::string output(input.begin(), input.end());
    return output;
}
input_db.cpp dosyasında arayın

Kod:
"%s/mob_drop_item.txt", LocaleService_GetBasePath().c_str());
Değiştirin:

Kod:
#ifdef ENABLE_JSON_GAME_FILES
            "%s/mob_drop_item.json", LocaleService_GetBasePath().c_str());
#else
            "%s/mob_drop_item.txt", LocaleService_GetBasePath().c_str());
#endif
Arayın:
Kod:
    if (!ITEM_MANAGER::instance().ReadMonsterDropItemGroup(szMOBDropItemFileName))
Değiştirin:
Kod:
#ifdef ENABLE_JSON_GAME_FILES
    if (!ITEM_MANAGER::instance().ReadMonsterDropItemGroupNew(szMOBDropItemFileName))
#else
    if (!ITEM_MANAGER::instance().ReadMonsterDropItemGroup(szMOBDropItemFileName))
#endif
item_manager.h dosyasında arayın:
Kod:
        bool            ReadDropItemGroup(const char * c_pszFileName);
Altına ekleyin:
Kod:
#ifdef ENABLE_JSON_GAME_FILES
        bool            ReadMonsterDropItemGroupNew(const char * c_pszFileName);
#endif
item_manager_read_tables.cpp dosyasına ekleyin:
Kod:
#ifdef ENABLE_JSON_GAME_FILES
#include <fstream>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
#endif
Arayın:
Kod:
bool ITEM_MANAGER::ReadMonsterDropItemGroup(const char * c_pszFileName)
Resimdeki şekilde değiştirin:


Eklenecek yeni kodlar:




Çevirici:




Not:
Bu değişiklikleri kullanabilmek için c++11 desteğine ve boost property tree modülüne ihtiyacınız var.
 

kiyagandizayn

Level 5
TM Üye
Üye
Katılım
4 Haz 2017
Konular
29
Mesajlar
796
Reaksiyon Skoru
259
Online Süresi
48d 6h 30m
Başarım Puanı
127
MmoLira
522
DevLira
51
En İyi Cevap Puanı
0
Eline sağlık reis ta ne gibi değişiklikler olur ki acaba performanstan yana bir değişiklik olurmu mesela
yanlis anlama seni baltalamak vs vs benim asla haddim olamaz maksat senin gibi bir üstadı bulmuşken birkaç soru sormak :)
 

Laleci16

www.Lepas2.com
Telefon Numarası Onaylanmış Üye
Site Yetkilisi
Moderatör
VIP Üye
Dergi Editörü
Katılım
27 Nis 2018
Konular
33
Mesajlar
800
Reaksiyon Skoru
309
Online Süresi
18d 18h 23m
Başarım Puanı
132
MmoLira
414
DevLira
48
En İyi Cevap Puanı
1

Paylaşım İçin Teşekkürler Koray.
 
Konu Sahibi
Konu Sahibi
K

Koray'

Pasha37
TM Üye
Üye
Katılım
21 Haz 2013
Konular
137
Mesajlar
1,068
Reaksiyon Skoru
1,082
Online Süresi
16d 12h 30m
Başarım Puanı
224
MmoLira
1,287
DevLira
18
En İyi Cevap Puanı
0
Eline sağlık reis ta ne gibi değişiklikler olur ki acaba performanstan yana bir değişiklik olurmu mesela
yanlis anlama seni baltalamak vs vs benim asla haddim olamaz maksat senin gibi bir üstadı bulmuşken birkaç soru sormak :)
Estafurullah bu kadar kasmaya gerek yok :) Aktif çalışan bir şey olmadığından performans konusunda ciddi değişiklik sağlamaz ama eski sistemde oluşan bir leak mevcut bu haliyle leak olmadığından hafıza kullanımında bir kaç mb düşüş sağlar.
 

xxdracaryS

Level 3
TM Üye
Üye
Katılım
6 Ara 2018
Konular
16
Mesajlar
248
Reaksiyon Skoru
124
Online Süresi
42d 20h 46m
Başarım Puanı
76
MmoLira
292
DevLira
24
En İyi Cevap Puanı
0
Teşekkürler Koray abi.
 

Şu an konuyu görüntüleyenler (Toplam : 1, Üye: 0, Misafir: 1)

Üst