9 mesaje
Membru Expert Membru Expert
  • Mesaje: 186
  • Reacții: 1120
  • Mesaje utile: 0
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    *Problemă/Întrebare:
    Toate resursele le-am folosit de aici de pe forum si de prin alte server postate pe alte forum-uri toate fac la fel ma deconecteaza la login fara sa lase vro urma de erroare am incercat sa ii fac trace error pe la functiile de open din client dar nici un rezultat ma depaseste problema nu stiu de la ce poate sa fie dar stiu sigur ca sunt personele care l-au rezolvat sa mearga pe tmp4 lasati un mesaj pe discord sau aici la postare daca stiti cumva de la ce este merci frumos
    *Resursă folosită (sistem/funcție/modificare):

    *Syserr:
    SA NU MA INTREBATI DE ASA CEVA CA DACA EXISTA NU MAI FACEAM TOPIC DE MAI BINE DE JUMATE DE AN INCERC SA IL REPAR
    *Fișier(e) cu problema (link pastebin / code):

    *Poze / Video:
    Membru Începător Membru Începător
  • Mesaje: 9
  • Reacții: 2
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Server: -
  • Regat: Chunjo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Începător
    Membru Începător

    Mesaj de bebame3140 »

    Nu stiu de la ce e, nu l-am implementat niciodată, dar te pot ajuta cu idei, poate reușești.
    In primul rand, se vede clar din video că se apelează fereastra + acel loading circle. Practic asta inseamnă că python face partea de UI + trimite request către server. Practic pe fir urmează binarul C++ incearcă să citească raspunsul primit de la server. Deci stim unde să punem un traceback, practic intra in sursa client si du-te in UserInterface/PythonNetworkStreamPhaseGame.cpp(sau unde a avut resursa partea de network), intr-una din ăstea ai implementat probabil functia Recv, practic cauta ceva gen bool CPythonNetworkStream::Recv(). Sub ea ai un if statement ceva gen if (!Recv(sizeof(pachetul tau ), &p))
    return false; -> Aici te deconectează pe ascuns!. inainte de return adaugi un TraceError. Bonus poti sa adaugi si la void CPythonNetworkStream::Disconnect() un TraceError si practic vei vedea clar în syserr.txt dacă binarul inițiază deconectarea în momentul respectiv. Sigur e ceva incompatibilitate intre DWORD, int sau byte pe undeva. Mai jos e un exemplu cum il am eu implementat. Si practic dacă apare UNKNOWN OFFLINESHOP SUBHEADER, e clar că serverul trimite un subheader pe care clientul nu îl are definit în enum-ul din binar, iar dacă iti returnează un subheader înseamnă că structura pachetului din acea funcție e greșită.
    Code:
    bool CPythonNetworkStream::RecvOfflineshopPacket()
    {
        TPacketGCNewOfflineshop pack;
        if(!Recv(sizeof(pack), &pack))
        {
            TraceError("=== OFFLINESHOP CRASH === Eroare la citirea pachetului principal!");
            return false;
        }
    
        // Aici vedem ce subheader se execută fix în secunda când te dă afară
        TraceError("=== OFFLINESHOP DEBUG === Am primit subheader-ul: %d", pack.bSubHeader);
    
        switch (pack.bSubHeader)
        {
            case offlineshop::SUBHEADER_GC_SHOP_LIST:                   return RecvOfflineshopShopList();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN:                   return RecvOfflineshopShopOpen();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER:             return RecvOfflineshopShopOpenOwner();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER_NO_SHOP:     return RecvOfflineshopShopOpenOwnerNoShop();
            case offlineshop::SUBHEADER_GC_SHOP_CLOSE:                  return RecvOfflineshopShopClose();
            case offlineshop::SUBHEADER_GC_SHOP_BUY_ITEM_FROM_SEARCH:   return RecvOfflineshopShopBuyItemFromSearch();
            case offlineshop::SUBHEADER_GC_SHOP_FILTER_RESULT:          return RecvOfflineshopShopFilterResult();
            case offlineshop::SUBHEADER_GC_OFFER_LIST:                  return RecvOfflineshopOfferList();
            case offlineshop::SUBHEADER_GC_SHOP_SAFEBOX_REFRESH:        return RecvOfflineshopShopSafeboxRefresh();
            case offlineshop::SUBHEADER_GC_AUCTION_LIST:                return RecvOfflineshopAuctionList();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION:             return RecvOfflineshopOpenMyAuction();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION_NO_AUCTION:  return RecvOfflineshopOpenMyAuctionNoAuction();
            case offlineshop::SUBHEADER_GC_OPEN_AUCTION:                return RecvOfflineshopOpenAuction();
    
    #ifdef ENABLE_NEW_SHOP_IN_CITIES
            case offlineshop::SUBHEADER_GC_INSERT_SHOP_ENTITY:          return RecvOfflineshopInsertEntity();
            case offlineshop::SUBHEADER_GC_REMOVE_SHOP_ENTITY:          return RecvOfflineshopRemoveEntity();
    #endif
    #ifdef ENABLE_OFFLINESHOP_REWORK
            case offlineshop::SUBHEADER_GC_NOTIFICATION:                return RecvOfflineshopNotification();
    #endif
            default:
                TraceError("UNKNOWN OFFLINESHOP SUBHEADER : %d ",pack.bSubHeader);
                return false;
        }
    }
    Membru Expert Membru Expert
  • Mesaje: 186
  • Reacții: 1120
  • Mesaje utile: 0
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    bebame3140 scrie: Nu stiu de la ce e, nu l-am implementat niciodată, dar te pot ajuta cu idei, poate reușești.
    In primul rand, se vede clar din video că se apelează fereastra + acel loading circle. Practic asta inseamnă că python face partea de UI + trimite request către server. Practic pe fir urmează binarul C++ incearcă să citească raspunsul primit de la server. Deci stim unde să punem un traceback, practic intra in sursa client si du-te in UserInterface/PythonNetworkStreamPhaseGame.cpp(sau unde a avut resursa partea de network), intr-una din ăstea ai implementat probabil functia Recv, practic cauta ceva gen bool CPythonNetworkStream::Recv(). Sub ea ai un if statement ceva gen if (!Recv(sizeof(pachetul tau ), &p))
    return false; -> Aici te deconectează pe ascuns!. inainte de return adaugi un TraceError. Bonus poti sa adaugi si la void CPythonNetworkStream::Disconnect() un TraceError si practic vei vedea clar în syserr.txt dacă binarul inițiază deconectarea în momentul respectiv. Sigur e ceva incompatibilitate intre DWORD, int sau byte pe undeva. Mai jos e un exemplu cum il am eu implementat. Si practic dacă apare UNKNOWN OFFLINESHOP SUBHEADER, e clar că serverul trimite un subheader pe care clientul nu îl are definit în enum-ul din binar, iar dacă iti returnează un subheader înseamnă că structura pachetului din acea funcție e greșită.
    Code:
    bool CPythonNetworkStream::RecvOfflineshopPacket()
    {
        TPacketGCNewOfflineshop pack;
        if(!Recv(sizeof(pack), &pack))
        {
            TraceError("=== OFFLINESHOP CRASH === Eroare la citirea pachetului principal!");
            return false;
        }
    
        // Aici vedem ce subheader se execută fix în secunda când te dă afară
        TraceError("=== OFFLINESHOP DEBUG === Am primit subheader-ul: %d", pack.bSubHeader);
    
        switch (pack.bSubHeader)
        {
            case offlineshop::SUBHEADER_GC_SHOP_LIST:                   return RecvOfflineshopShopList();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN:                   return RecvOfflineshopShopOpen();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER:             return RecvOfflineshopShopOpenOwner();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER_NO_SHOP:     return RecvOfflineshopShopOpenOwnerNoShop();
            case offlineshop::SUBHEADER_GC_SHOP_CLOSE:                  return RecvOfflineshopShopClose();
            case offlineshop::SUBHEADER_GC_SHOP_BUY_ITEM_FROM_SEARCH:   return RecvOfflineshopShopBuyItemFromSearch();
            case offlineshop::SUBHEADER_GC_SHOP_FILTER_RESULT:          return RecvOfflineshopShopFilterResult();
            case offlineshop::SUBHEADER_GC_OFFER_LIST:                  return RecvOfflineshopOfferList();
            case offlineshop::SUBHEADER_GC_SHOP_SAFEBOX_REFRESH:        return RecvOfflineshopShopSafeboxRefresh();
            case offlineshop::SUBHEADER_GC_AUCTION_LIST:                return RecvOfflineshopAuctionList();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION:             return RecvOfflineshopOpenMyAuction();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION_NO_AUCTION:  return RecvOfflineshopOpenMyAuctionNoAuction();
            case offlineshop::SUBHEADER_GC_OPEN_AUCTION:                return RecvOfflineshopOpenAuction();
    
    #ifdef ENABLE_NEW_SHOP_IN_CITIES
            case offlineshop::SUBHEADER_GC_INSERT_SHOP_ENTITY:          return RecvOfflineshopInsertEntity();
            case offlineshop::SUBHEADER_GC_REMOVE_SHOP_ENTITY:          return RecvOfflineshopRemoveEntity();
    #endif
    #ifdef ENABLE_OFFLINESHOP_REWORK
            case offlineshop::SUBHEADER_GC_NOTIFICATION:                return RecvOfflineshopNotification();
    #endif
            default:
                TraceError("UNKNOWN OFFLINESHOP SUBHEADER : %d ",pack.bSubHeader);
                return false;
        }
    }
    da am pus si nu functioneaza nu da nici o erroare am incercat si cu debug nimic
    See full signature
    Membru Începător Membru Începător
  • Mesaje: 9
  • Reacții: 2
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Server: -
  • Regat: Chunjo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Începător
    Membru Începător

    Mesaj de bebame3140 »

    salexandru9982 scrie:
    bebame3140 scrie: Nu stiu de la ce e, nu l-am implementat niciodată, dar te pot ajuta cu idei, poate reușești.
    In primul rand, se vede clar din video că se apelează fereastra + acel loading circle. Practic asta inseamnă că python face partea de UI + trimite request către server. Practic pe fir urmează binarul C++ incearcă să citească raspunsul primit de la server. Deci stim unde să punem un traceback, practic intra in sursa client si du-te in UserInterface/PythonNetworkStreamPhaseGame.cpp(sau unde a avut resursa partea de network), intr-una din ăstea ai implementat probabil functia Recv, practic cauta ceva gen bool CPythonNetworkStream::Recv(). Sub ea ai un if statement ceva gen if (!Recv(sizeof(pachetul tau ), &p))
    return false; -> Aici te deconectează pe ascuns!. inainte de return adaugi un TraceError. Bonus poti sa adaugi si la void CPythonNetworkStream::Disconnect() un TraceError si practic vei vedea clar în syserr.txt dacă binarul inițiază deconectarea în momentul respectiv. Sigur e ceva incompatibilitate intre DWORD, int sau byte pe undeva. Mai jos e un exemplu cum il am eu implementat. Si practic dacă apare UNKNOWN OFFLINESHOP SUBHEADER, e clar că serverul trimite un subheader pe care clientul nu îl are definit în enum-ul din binar, iar dacă iti returnează un subheader înseamnă că structura pachetului din acea funcție e greșită.
    Code:
    bool CPythonNetworkStream::RecvOfflineshopPacket()
    {
        TPacketGCNewOfflineshop pack;
        if(!Recv(sizeof(pack), &pack))
        {
            TraceError("=== OFFLINESHOP CRASH === Eroare la citirea pachetului principal!");
            return false;
        }
    
        // Aici vedem ce subheader se execută fix în secunda când te dă afară
        TraceError("=== OFFLINESHOP DEBUG === Am primit subheader-ul: %d", pack.bSubHeader);
    
        switch (pack.bSubHeader)
        {
            case offlineshop::SUBHEADER_GC_SHOP_LIST:                   return RecvOfflineshopShopList();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN:                   return RecvOfflineshopShopOpen();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER:             return RecvOfflineshopShopOpenOwner();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER_NO_SHOP:     return RecvOfflineshopShopOpenOwnerNoShop();
            case offlineshop::SUBHEADER_GC_SHOP_CLOSE:                  return RecvOfflineshopShopClose();
            case offlineshop::SUBHEADER_GC_SHOP_BUY_ITEM_FROM_SEARCH:   return RecvOfflineshopShopBuyItemFromSearch();
            case offlineshop::SUBHEADER_GC_SHOP_FILTER_RESULT:          return RecvOfflineshopShopFilterResult();
            case offlineshop::SUBHEADER_GC_OFFER_LIST:                  return RecvOfflineshopOfferList();
            case offlineshop::SUBHEADER_GC_SHOP_SAFEBOX_REFRESH:        return RecvOfflineshopShopSafeboxRefresh();
            case offlineshop::SUBHEADER_GC_AUCTION_LIST:                return RecvOfflineshopAuctionList();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION:             return RecvOfflineshopOpenMyAuction();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION_NO_AUCTION:  return RecvOfflineshopOpenMyAuctionNoAuction();
            case offlineshop::SUBHEADER_GC_OPEN_AUCTION:                return RecvOfflineshopOpenAuction();
    
    #ifdef ENABLE_NEW_SHOP_IN_CITIES
            case offlineshop::SUBHEADER_GC_INSERT_SHOP_ENTITY:          return RecvOfflineshopInsertEntity();
            case offlineshop::SUBHEADER_GC_REMOVE_SHOP_ENTITY:          return RecvOfflineshopRemoveEntity();
    #endif
    #ifdef ENABLE_OFFLINESHOP_REWORK
            case offlineshop::SUBHEADER_GC_NOTIFICATION:                return RecvOfflineshopNotification();
    #endif
            default:
                TraceError("UNKNOWN OFFLINESHOP SUBHEADER : %d ",pack.bSubHeader);
                return false;
        }
    }
    da am pus si nu functioneaza nu da nici o erroare am incercat si cu debug nimic
    Ai facut partea de disconnect? void CPythonNetworkStream::Disconnect() si pune-i un traceback. Dacă mesajul APARE în syserr Înseamnă că binarul clientului decide voluntar deconectarea. Este 99% o desincronizare de pachete. Dacă NU apare, e mai complicat puțin.
    Membru Expert Membru Expert
  • Mesaje: 186
  • Reacții: 1120
  • Mesaje utile: 0
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    bebame3140 scrie:
    salexandru9982 scrie:
    bebame3140 scrie: Nu stiu de la ce e, nu l-am implementat niciodată, dar te pot ajuta cu idei, poate reușești.
    In primul rand, se vede clar din video că se apelează fereastra + acel loading circle. Practic asta inseamnă că python face partea de UI + trimite request către server. Practic pe fir urmează binarul C++ incearcă să citească raspunsul primit de la server. Deci stim unde să punem un traceback, practic intra in sursa client si du-te in UserInterface/PythonNetworkStreamPhaseGame.cpp(sau unde a avut resursa partea de network), intr-una din ăstea ai implementat probabil functia Recv, practic cauta ceva gen bool CPythonNetworkStream::Recv(). Sub ea ai un if statement ceva gen if (!Recv(sizeof(pachetul tau ), &p))
    return false; -> Aici te deconectează pe ascuns!. inainte de return adaugi un TraceError. Bonus poti sa adaugi si la void CPythonNetworkStream::Disconnect() un TraceError si practic vei vedea clar în syserr.txt dacă binarul inițiază deconectarea în momentul respectiv. Sigur e ceva incompatibilitate intre DWORD, int sau byte pe undeva. Mai jos e un exemplu cum il am eu implementat. Si practic dacă apare UNKNOWN OFFLINESHOP SUBHEADER, e clar că serverul trimite un subheader pe care clientul nu îl are definit în enum-ul din binar, iar dacă iti returnează un subheader înseamnă că structura pachetului din acea funcție e greșită.
    Code:
    bool CPythonNetworkStream::RecvOfflineshopPacket()
    {
        TPacketGCNewOfflineshop pack;
        if(!Recv(sizeof(pack), &pack))
        {
            TraceError("=== OFFLINESHOP CRASH === Eroare la citirea pachetului principal!");
            return false;
        }
    
        // Aici vedem ce subheader se execută fix în secunda când te dă afară
        TraceError("=== OFFLINESHOP DEBUG === Am primit subheader-ul: %d", pack.bSubHeader);
    
        switch (pack.bSubHeader)
        {
            case offlineshop::SUBHEADER_GC_SHOP_LIST:                   return RecvOfflineshopShopList();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN:                   return RecvOfflineshopShopOpen();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER:             return RecvOfflineshopShopOpenOwner();
            case offlineshop::SUBHEADER_GC_SHOP_OPEN_OWNER_NO_SHOP:     return RecvOfflineshopShopOpenOwnerNoShop();
            case offlineshop::SUBHEADER_GC_SHOP_CLOSE:                  return RecvOfflineshopShopClose();
            case offlineshop::SUBHEADER_GC_SHOP_BUY_ITEM_FROM_SEARCH:   return RecvOfflineshopShopBuyItemFromSearch();
            case offlineshop::SUBHEADER_GC_SHOP_FILTER_RESULT:          return RecvOfflineshopShopFilterResult();
            case offlineshop::SUBHEADER_GC_OFFER_LIST:                  return RecvOfflineshopOfferList();
            case offlineshop::SUBHEADER_GC_SHOP_SAFEBOX_REFRESH:        return RecvOfflineshopShopSafeboxRefresh();
            case offlineshop::SUBHEADER_GC_AUCTION_LIST:                return RecvOfflineshopAuctionList();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION:             return RecvOfflineshopOpenMyAuction();
            case offlineshop::SUBHEADER_GC_OPEN_MY_AUCTION_NO_AUCTION:  return RecvOfflineshopOpenMyAuctionNoAuction();
            case offlineshop::SUBHEADER_GC_OPEN_AUCTION:                return RecvOfflineshopOpenAuction();
    
    #ifdef ENABLE_NEW_SHOP_IN_CITIES
            case offlineshop::SUBHEADER_GC_INSERT_SHOP_ENTITY:          return RecvOfflineshopInsertEntity();
            case offlineshop::SUBHEADER_GC_REMOVE_SHOP_ENTITY:          return RecvOfflineshopRemoveEntity();
    #endif
    #ifdef ENABLE_OFFLINESHOP_REWORK
            case offlineshop::SUBHEADER_GC_NOTIFICATION:                return RecvOfflineshopNotification();
    #endif
            default:
                TraceError("UNKNOWN OFFLINESHOP SUBHEADER : %d ",pack.bSubHeader);
                return false;
        }
    }
    da am pus si nu functioneaza nu da nici o erroare am incercat si cu debug nimic
    Ai facut partea de disconnect? void CPythonNetworkStream::Disconnect() si pune-i un traceback. Dacă mesajul APARE în syserr Înseamnă că binarul clientului decide voluntar deconectarea. Este 99% o desincronizare de pachete. Dacă NU apare, e mai complicat puțin.
    void CPythonNetworkStream::Disconnect() asta nu o gasesc
    Membru Expert Membru Expert
  • Mesaje: 186
  • Reacții: 1120
  • Mesaje utile: 0
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    mia scris cineva pe discord ca sar putea sa fie din cauza ca eu nu am system de long long gold si eu am DWORD gold;
    edit: nu cred ca este de la asta pentru ca am verificat vro 2 servere care are offlineshop asta si nu are nici o treaba tot asa nu am long long gold; problema este din alta parte de unde nu am nici cea mai mica idee
    Membru Începător Membru Începător
  • Mesaje: 9
  • Reacții: 2
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Server: -
  • Regat: Chunjo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Începător
    Membru Începător

    Mesaj de bebame3140 »

    salexandru9982 scrie: mia scris cineva pe discord ca sar putea sa fie din cauza ca eu nu am system de long long gold si eu am DWORD gold;
    edit: nu cred ca este de la asta pentru ca am verificat vro 2 servere care are offlineshop asta si nu are nici o treaba tot asa nu am long long gold; problema este din alta parte de unde nu am nici cea mai mica idee
    Oare lucrezi pe serverfile-ul , pe care l-ai postat ca resursă? Dacă da, si are acest sistem zi-mi si il descarc si mă uit eu.
    Membru Expert Membru Expert
  • Mesaje: 186
  • Reacții: 1120
  • Mesaje utile: 0
  • Status: Uite si eu pe aici!
  • Regat: Jinno
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Expert
    Membru Expert

    Mesaj de salexandru9982 »

    bebame3140 scrie:
    salexandru9982 scrie: mia scris cineva pe discord ca sar putea sa fie din cauza ca eu nu am system de long long gold si eu am DWORD gold;
    edit: nu cred ca este de la asta pentru ca am verificat vro 2 servere care are offlineshop asta si nu are nici o treaba tot asa nu am long long gold; problema este din alta parte de unde nu am nici cea mai mica idee
    Oare lucrezi pe serverfile-ul , pe care l-ai postat ca resursă? Dacă da, si are acest sistem zi-mi si il descarc si mă uit eu.
    pe tmp4 este dar nu are bagat shop-ul offline ala postat de mine este un backup vechi de vrun an si ceva
    See full signature
    Membru Începător Membru Începător
  • Mesaje: 9
  • Reacții: 2
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Server: -
  • Regat: Chunjo
  • [ID Discord]
  • Contact:

    Medalii

    Avatar utilizator
    Membru Începător
    Membru Începător

    Mesaj de bebame3140 »

    salexandru9982 scrie:
    bebame3140 scrie:
    salexandru9982 scrie: mia scris cineva pe discord ca sar putea sa fie din cauza ca eu nu am system de long long gold si eu am DWORD gold;
    edit: nu cred ca este de la asta pentru ca am verificat vro 2 servere care are offlineshop asta si nu are nici o treaba tot asa nu am long long gold; problema este din alta parte de unde nu am nici cea mai mica idee
    Oare lucrezi pe serverfile-ul , pe care l-ai postat ca resursă? Dacă da, si are acest sistem zi-mi si il descarc si mă uit eu.
    pe tmp4 este dar nu are bagat shop-ul offline ala postat de mine este un backup vechi de vrun an si ceva
    Mno, fă cumva dacă vrei si simti că merită si trimite-mi undeva serverfille-ul si mă uit zilele ăstea peste.
    Scrie răspuns

    Creează-ți un cont sau autentifică-te pentru a participa la discuție

    Trebuie să fii membru pentru a răspunde

    Creează-ți un cont

    Membrii pot crea subiecte noi și pot descărca resurse Metin2 Gratuit!


    Te poți înregistra sau conecta rapid utilizând contul tău de Discord, Github sau Google.

    Înregistrare

    Autentifică-te

    Înapoi la “Support”

    Informații

    Utilizatori ce navighează pe acest forum: bebame3140, P1KS3L și 1 vizitator

    Discord ID copiat: