Metin2 Server Source Libserverkey Kaldırma

Whistle

Ruhsuz Filozof
Kurucu
Kurumsal Üye
Geliştirici
Yardımsever Üye
Mesaj
11.534
Çözümler
549
Beğeni
12.156
Puan
5.915
Ticaret Puanı
1
Merhaba arkadaşlar,
Bilmeyenler varsa Metin2 Sıfırdan Altyapı Server Files Hazırlama Rehberi hazırlıyorum. Bu rehberin bir parçası olan bu konumuzda libserverkey'i kaldırmayı anlatacağım.

Libserverkey nedir?
Bir nevi lisanslama gibi bir şey diyebiliriz. Eğer uyuşmuyorsa server açılmaz. Bu konuda detaylı bilgiye ulaşabilirsiniz. Metin2 PvP Sunucu Güvenliği İçin Config Dosyasına Eklememiz Gerekenler

Not: Bu konuda anlatılanlar altyapı hazırlama rehberi içindir. Seride novaline kaynak kodları kullanılmaktadır. Eğer farklı bi altyapı kullanıyorsanız bazı kodlar sizde farklı olabilir veya hiç olmayabilir.

Kaldırmak için sırayla anlatacaklarımı uygulayınız.
Srcs/Server
altındaki libserverkey klasörünü tamamen siliniz.

Srcs/Server/Makefile dosyasını açın ve aratın;
Kod:
default: libthecore libpoly libgame liblua libsql libserverkey game db

değiştir;
Kod:
default: libthecore libpoly libgame liblua libsql game db

Aynı dosyada şu kodları aratın ve silin;
Kod:
libserverkey: .
    @touch $@/Depend
    $(MAKE) -C $@ dep
    $(MAKE) -C $@ clean
    $(MAKE) -C $@

Kod:
    $(MAKE) -C libserverkey clean

Kod:
    @touch libserverkey/Depend
    $(MAKE) -C libserverkey dep
    $(MAKE) -C libserverkey clean
    $(MAKE) -C libserverkey


Srcs/Server/game/src/ klasörü altındaki check_server.h dosyasını siliniz.

Server/game/src/config.cpp dosyasında aşağıda verdiğim kodları aratın ve silin;
C++:
#include "check_server.h"
C++:
        TOKEN("server_key")
        {
            CCheckServer::Instance().AddServerKey(value_string);
            continue;
        }

Server/game/src/input.cpp dosyasında aşağıda verdiğim kodları aratın ve silin;
C++:
#include "check_server.h"
C++:
    if (!CCheckServer::Instance().IsValid())
    {
        ClearAdminPages();
        return;
    }

Server/game/src/input_auth.cpp dosyasında aşağıda verdiğim kodları aratın ve siliniz;
C++:
#include "check_server.h"

Bu koddan iki tane var. İkisini de silin.
C++:
    if (!CCheckServer::Instance().IsValid())
    {
        extern void ClearAdminPages();
        ClearAdminPages();
        exit(1);
        return;
    }

Server/game/src/main.cpp dosyasında aşağıda verdiğim kodları aratın ve siliniz;
C++:
#include "check_server.h"
C++:
    CCheckServer checkServer;

C++:
        if (!CCheckServer::Instance().CheckIP(g_szPublicIP)) {
            char pszRevision[128] = "I don't care";
#ifdef _WIN32
            fprintf(stderr, "[main] Check IP failed\n");
#else
            strncpy (pszRevision,  __SVN_VERSION__, sizeof(pszRevision));
#endif
            LogManager::Instance().InvalidServerLog(LC_GetLocalType(), g_szPublicIP, pszRevision);
        }


Server/game/src/makefile dosyasını açın ve aşağıda belirttiğim şekilde düzenlemeleri yapın.
Arat ve sil;
Kod:
INCDIR += -I../../libserverkey


Arat;
Kod:
LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../liblua/lib -L../../libserverkey

Değiştir;
Kod:
LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../liblua/lib


Arat;
Kod:
LIBS += -lthecore -lpoly -llua -llualib -lsql -lgame -lserverkey

Değiştir;
Kod:
LIBS += -lthecore -lpoly -llua -llualib -lsql -lgame


Tüm işlemler bu kadardır. Bu işlemleri tamamladıktan sonra şu komutları yazarak tekrardan build ediniz.
Kod:
gmake clean
gmake dep
gmake


Bu yazının tamamı MMO Tutkunları'na ait özgün içeriktir. Kaynağı gösterildiği sürece başka platformlarda paylaşılabilir.
 
Aynen işlevsiz kalıyor. Zaten kullanılmayan bir özellikti.
Kaldırılacaklar arasında limit_time, hackshield, gtest var :D
 
libserverkey hic bir sekilde kullanilmiyor mu? Kaldirilmasinin hic bir sekilde oyun uzerinde bir etkisi olmuyor mu?
 
Siz de benim gibi gmake clean yazdiktan sonra gmake dep yazmayi unutmayin yoksa derlenmez. gmake dep komutunun yaptigi sey tum kod dosyalarinin uzerinden gecerek hangisi hangi header dosyasina ihtiyac duyuyor onu kontrol ediyor.
 
libserverkey hic bir sekilde kullanilmiyor mu? Kaldirilmasinin hic bir sekilde oyun uzerinde bir etkisi olmuyor mu?

Hackshield gibi düşünebiliriz. Pek bi önemi yok. Kaldırıp kaldırmamak tamamen tercih meselesi. :)
 
işlemi yaptım simdi de
"
Makefile:61: *** missing separator. Stop.

"
hatası alıyorum
 
işlemi yaptım simdi de
"
Makefile:62: *** missing separator. Stop.

"
hatası alıyorum nasıl düzeltebilirm ?
 
Mainline sourcede libserverkey farklı eklenmiş sanırım. Arat dediğin kısımları bulamadım.
 
Geri
Üst