1 mesaj
Administrator Administrator
  • Mesaje: 4387
  • Reacții: 87229
  • Mesaje utile: 44
  • Status: Pe aici.. 🤠
  • Server: Saga2 - Soon
  • Regat: Jinno
  • [ID Discord]
  • Contact:
    *Descriere:

    Acest tutorial iti arata cum sa activezi optimizarea pentru item_proto in sursa Metin2.

    Prin aceasta modificare, serverul va cauta itemele mult mai rapid dupa vnum, folosind unordered_map in locul metodei clasice.

    Este o optimizare utila mai ales in zonele unde se fac foarte multe operatii cu iteme, cum ar fi shop, quest, cube, char_item sau sisteme speciale.


    *Link download / Code:

    Deschide Server/common/CommonDefines.h sau service.h si adauga:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide Server/db/src/ClientManager.h si cauta:
    Code:
    std::map<DWORD, TItemTable *>		m_map_itemTableByVnum;
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide Server/game/src/item_manager.h si cauta:
    Code:
    std::vector<TItemTable*> m_vec_item_vnum_range_info;
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide Server/game/src/item_manager.cpp si cauta in functia:
    Code:
    bool ITEM_MANAGER::Initialize(TItemTable * table, int size)
    
    Cauta:
    Code:
    	m_vec_prototype.resize(size);
    	thecore_memcpy(&m_vec_prototype[0], table, sizeof(TItemTable) * size);
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    In acelasi fisier, cauta:
    Code:
    	for (int i = 0; i < size; i++)
    	{
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide Server/game/src/item_manager.cpp si cauta:
    Code:
    TItemTable * ITEM_MANAGER::GetTable(DWORD vnum)
    
    Inlocuieste toata functia cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Aceasta optimizare face ca lookup-ul pentru item_proto sa fie mult mai rapid pentru vnum-urile exacte. Pentru itemele bazate pe range, sistemul pastreaza fallback-ul vechi si adauga si un cache separat, astfel incat performanta sa fie mai buna si in acele cazuri.

    La reload de proto, map-urile sunt golite si refacute, ca sa nu ramana pointeri vechi sau invalizi. Este o optimizare buna pentru sursele Metin2 unde serverul face foarte multe operatii cu iteme.

    Nou Cum descarc de pe TeraBox?

    Afișează detalii Ascunde detalii
    • Este asemănător cu Mega.nz
    • Instalați-vă clientul lor de Download de aici
    • Faceți-vă un cont (vă puteți loga cu Facebook / Google / etc)
    • Nou Dacă nu vreți să descărcați clientul de Download, folosiți acest site
    • Gata! Acum puteți descărca resursele rapid & simplu.

    De ce folosim TeraBox?

    • Este gratuit
    • Primești 1TB de spațiu gratuit la orice cont creat!
    • Este ușor de folosit și varianta premium este foarte ieftină
    • Fișierele nu sunt șterse niciodată
    TeraBox logo
    Te asteptam si pe serverul de Discord :p - aici ne-am strans toata comunitatea de Metin2 din Romania.
    Link: https://discord.gg/jWxeDSf7HP

    Suntem aproape 2000 membri! - Avem chat activ zilnic, support, cereri, resurse. :D :ymcowboy:





    See full signature

    🔥 Hai pe Discord! - Chat activ și support direct

    Te așteptăm și pe serverul de Discord - aici ne-am strâns toată comunitatea de Metin2 din România.

    Alătură-te acum!
    Suntem aproape: 
    Robot Discord
    Roboțelu'
    Anunț

    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 “Îmbunătățiri”

    Informații

    Utilizatori ce navighează pe acest forum: champagne, phzin2, RaKu, robertm99_, slukes, Trigun100, Whilong, yahacker007 și 9 vizitatori

    Discord ID copiat: