Lucrăm la îmbunătățirea site-ului! Este posibil ca unele module să nu funcționeze corect!
2 mesaje
Avatar utilizator
Administrator
  • Administrator

    Autor subiect

  • Mesaje: 2,607
  • Reacții: 29013
  • Mesaje utile: 17
  • Status: Pierd vremea ^.^
  • Server: Saga2 - Soon
  • Regat: Jinno
  • Discord: [Vezi ID]
  • Contact:
    Avatar utilizator
    Administrator

    Autor subiect

    Administrator
    *Descriere:

    Aceasta este rezolvarea pentru un exploit la functia lua "pc_change_name" prin care playerii pot abuza si sa faca dupe la obiecte.

    Acest FIX rezolva acest lucru prin delogarea jucatorului dupa ce acestia isi schimba numele.

    *Poze / Video:

    *Link download / Code:
    Deschidem questlua_pc.cpp si cautam:
    Code:
     int pc_change_name(lua_State* L)
    Mai jos vom gasi:
    Code:
    		db_clientdesc->DBPacketHeader(HEADER_GD_FLUSH_CACHE, 0, sizeof(DWORD));
    		db_clientdesc->Packet(&pid, sizeof(DWORD));
    Inlocuim cu:
    Conținut: Ascuns
    Motiv: Trebuie să reacționezi la mesaj pentru a vedea conținutul.

    Cum descarc de pe TeraBox?

    • 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)
    • Dacă nu vreți să descărcați clientul de Download, folosiți acest site
    • Gata! Acum puteți descărca resursele

    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/Kr9nUpWa4X

    Suntem aproape 1000 membri! - Avem chat activ zilnic, support, cereri, resurse.



    See full signature
    Tag-uri:

    📢 Resurse Metin2 Premium!

    Zeci de resurse Metin2 Premium - exclusive și 100% funcționale începând cu 15.99€!.

    Vezi resursele Cumpără premium
    Premium
    Premium
    Anunț
  • Mesaje: 1
  • Reacții: 0
  • Mesaje utile: 0
  • Regat: Jinno
  • Medalii

    Code:
    	ALUA(pc_change_name)
    	{
    #ifdef ENABLE_LOCALECHECK_CHANGENAME
    		lua_pushnumber(L, 5);
    		return 1;
    #endif
    
    		LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
    
    		if ( ch->GetNewName().size() != 0 )
    		{
    			lua_pushnumber(L, 0);
    			return 1;
    		}
    
    		if ( lua_isstring(L, 1) != true )
    		{
    			lua_pushnumber(L, 1);
    			return 1;
    		}
    
    		const char * szName = lua_tostring(L, 1);
    
    		if ( check_name(szName) == false )
    		{
    			lua_pushnumber(L, 2);
    			return 1;
    		}
    
    		char szQuery[1024];
    		snprintf(szQuery, sizeof(szQuery), "SELECT COUNT(*) FROM player%s WHERE name='%s'", get_table_postfix(), szName);
    
    		auto pmsg(DBManager::instance().DirectQuery(szQuery));
    		if ( pmsg->Get()->uiNumRows > 0 )
    		{
    			MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);
    
    			int	count = 0;
    			str_to_number(count, row[0]);
    
    			if ( count != 0 )
    			{
    				lua_pushnumber(L, 3);
    				return 1;
    			}
    		}
    
    		DWORD pid = ch->GetPlayerID();
    
    		// @fixme309 BEGIN
    		ch->Save();
    		ch->SetExchangeTime();
    		ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The name has been successfully changed. You're going to get disconnected."));
    		ch->GetDesc()->DelayedDisconnect(10);
    		// @fixme309 END
    
    		/* delete messenger list */
    		MessengerManager::instance().RemoveAllList(ch->GetName());
    
    		/* change_name_log */
    		LogManager::instance().ChangeNameLog(pid, ch->GetName(), szName, ch->GetDesc()->GetHostName());
    
    		snprintf(szQuery, sizeof(szQuery), "UPDATE player%s SET name='%s' WHERE id=%u", get_table_postfix(), szName, pid);
    		auto msg = DBManager::instance().DirectQuery(szQuery);
    
    		ch->SetNewName(szName);
    		lua_pushnumber(L, 4);
    		return 1;
    	}

    📢 Resurse Metin2 Premium!

    Zeci de resurse Metin2 Premium - exclusive și 100% funcționale începând cu 15.99€!.

    Vezi resursele Cumpără premium
    Premium
    Premium
    Anunț
    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

    Înregistrează-te și alătură-te comunității noastre

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


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

    Înregistrare

    Autentifică-te

    • Subiecte similare

      • de [HF]White » » în FIX-uri
        0
        Răspunsuri
        236
        Vizualizări
        de [HF]White
      • de kolenmg123 » » în Programe Utile
        0
        Răspunsuri
        145
        Vizualizări
        de kolenmg123
      • de annoyed__ » » în Sisteme Metin2
        0
        Răspunsuri
        340
        Vizualizări
        de annoyed__
      • de GreposX » » în Arhivă probleme
        2
        Răspunsuri
        111
        Vizualizări
        de GreposX
      • de [HF]White » » în FIX-uri
        0
        Răspunsuri
        513
        Vizualizări
        de [HF]White

    Înapoi la “FIX-uri”

    Informații

    Utilizatori ce navighează pe acest forum: Niciun utilizator înregistrat și 4 vizitatori