Jump to content

AlexxAdv

Membru
  • Posts

    540
  • Joined

  • Last visited

  • Days Won

    17

Posts posted by AlexxAdv

  1. 2 minutes ago, IFYOUPLAY.TOP said:

    Voi stiti ce reprezinta un atac DDoS sau va invat eu? Abtine-ti-va daca vorbiti in necunostinta de cauza.

    @Sancky, vad ca deja te-ai luat nasol de la nimic.

    Ia un host bun ca protecția bună anti ddos care nu simte atacul trimis, baga un gm de pe net sa vedem frt, pica la 200? Având în vedere ca n ai atac ddos ca...hostul e bun și baga playeri pe gm, ia vezi pica sau nu pica? Asta cu ddos sa afli dacă duce gm...nu știu de unde le scoateți 

  2. 18 hours ago, khain.dev said:

    Este posibil să estimezi capacitatea de rezistență sa îi spun așa ce ține de playeri pe server. La o deschidere de server unde te aștepți că o să se conecteze în același timp +200 playeri, atunci poti face un DDos test asupra serverului tău inainte să il deschizi, practic printr-un test ddos asupra serverului poti vedea daca la deschidere o sa reziste sau nu în momentul unor conectari multiple. O altă metodă la care mulți ajung pentru a testa funcitonalitatea bună a GM-ului este adăugarea de boti fizici pe server, după cum știm un bot față de un player real folosește mai multe resurse ale serverului, respectiv poti adăuga un minim de 300 playeri și daca rezistă atât gm-ul cât și serverul, atunci e bine. Revenind la mentiunea ta, este greu sa estimezi cat de bine o sa tina server-ul tau la solicitari mari, totusi metodele mentionate mai sus simuleaza un test asupra functionalității optime al gm-ului și permite să vezi dacă poate rezista la solicitări mari sau nu.

    ddos pentru a afla daca tine gm? de unde le scoateti...

  3. Undeva prin ongamemodeinit trebuie sa ai o incarcare dintr-un .txt din folderul mSelection care se afla in scriptfiles, te uiti la comanda clothes si vezi cum ar trebui sa se numeasca fisieru, in scriptfiles il gasesti, iar acolo adaugi id-ul skin-urilor unul sub altul, daca nu ai, creezi folderul "mSelection" in scriptfiles si fisierul .txt cu orice nume vrei, dar va trebui sa modifici numele nou creat in gm, altfel, daca gasesti cum ar trebui sa se numeasca fisierul, doar il creezi cu acelasi nume( daca nu este deja ), daca este, doar il deschizi si adaugi id-ul skin urilor unul sub altul.

  4. 1 minute ago, Sancky said:

    asta nu i copilu ala de cumpara gmuri samp si dupa le pune pe net? 😆

    buna investitie domnule, care i mai prost, ala de vinde sau ala de cumpara?

    tocmai, iti dai seama afacere? sa cumperi gm uri ca apoi sa le pui free pe net? :)) dai bani ca sa aibe toata lumea acel ceva, e bun la suflet omu =)))))))))

  5. 2 minutes ago, Sancky said:

    atunci zi mi frate ce schimbari s-au facut la API de la v8 la v10, ce schimbari majore ai facut tu, cu toate ca habar n ai

    a scris vreodata n viata lui 3 linii sa nu zic...o intreaga pagina sau un intreg sistem din pawn, a scris macar 2-3 linii de manuta lui ca sa aiba habar? :)) doar ia copy paste din wcode

  6. 7 hours ago, nobilzeus said:

    folosesti includuri sau?

    M ai întrebat de profiler și nu eram la pc sa ți pot arata, știam doar ca am o poza cu inc urile și dacă vezi acolo #include profiler...automat ca am și pluginu ca nu pleacă gm unu fără altu.

  7. 1 minute ago, nobilzeus said:

    se trimit toate mesajele, tu ce crezi ca se intampla? nu inteleg? ai folosit vreodata profiler?

    Folosesc profiler de mult, nu cred e cazu sa vorbim despre optimizarea asta, eu zic sa ți verifici totuși codul, mai exact acel loop :) eu zic ca nu se trimit la playerii din autobuz dacă > 4

  8. 42 minutes ago, nobilzeus said:

    aveti un exemplu mai bun aici no hate

     

    Nu știu la ce te referi prin "mai bun", dar cu siguranță nu este intr un mod mai optim fata de ce am prezentat eu și dacă e autobuz și are peste 10 jucători, ce se întâmplă?

    image-17.png

  9. Just now, ionut1337adv said:

    give us some proofs :))) sa ne aducem aminte ca voiai sa dam tepe pe gmu asta si panelu asta, inca am inregistrarile :))

    nu stiu care din noi chiar a dat o teapa, astept o persoana care a cumparat ceva de la mine si am oferit teapa, pana atunci... nu i momentu saa vorbesti despre tepe ;)

  10. 2 minutes ago, Sancky said:

    daca se teleporteaza cineva din masina in masina si nu se apeleaza OPSC, ce se intampla?

    cum s ar putea teleporta din masina in masina? daca te referi la comanda /goto cand se teleporteazaa la un jucaator aflat deja in vehicul, n are fi greu sa faci o verificare daca e in veehicul si tu esti intr-un vehicul sa te teleportezee fara sa te bagate in vehiculul jucatorului la care te-ai teleportat

  11. Salutare, tot primeam mesaj de genu "salut, alex, cum pot face viteza la vehicul sa fie rapida, sa arate viteza instant intr-un mod optimizat".

    Eh, o sa va arat cred ca cea mai buna metoda a face asta, in care puteti face viteza sa se updateze repede la 200-300 milisecunde in textdraw, in cel mai bun mod( dupa parere mea).

     

    1. Avem nevoie de o librarie a lui Y_LESS, printre care y_iterate.

    2. Creem iteratorul si variabila for player.

    new Iterator:playerInVehicles[MAX_VEHICLES]<MAX_PLAYERS>,
        playerInVehicle[MAX_PLAYERS] = {INVALID_VEHICLE_ID, ...}; 

    3. O sa mergem in OnPlayerStateChange si vom adauga asta

    if (newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) 
    	{
    		playerInVehicle[ playerid ] = GetPlayerVehicleID( playerid );
    		Iter_Add(playerInVehicles[ playerInVehicle[ playerid ] ] , playerid);
    	} 
    	else if (oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER) 
    	{
    		if( playerInVehicle[ playerid ] != INVALID_VEHICLE_ID )
    		{	
    			Iter_Remove( playerInVehicles[ playerInVehicle[ playerid ] ], playerid);
    			playerInVehicle[ playerid ] = INVALID_VEHICLE_ID;
    		}
    	} 

    4. Resetam la conectarea player-ului pentru a fi siguri ca nu se vor intampla probleme

    public OnPlayerConnect( playerid )
    {
    	playerInVehicle[ playerid ] = INVALID_VEHICLE_ID;
    }

    5. De asemenea, vom reseta si la deconectarea player-ului, sa fim siguri ca nu vor aparea probleme pe parcurs

    public OnPlayerDisconnect( playerid, reason )
    {
    	if (playerInVehicle[ playerid ] != INVALID_VEHICLE_ID) 
        {
    		Iter_Remove( playerInVehicles[ playerInVehicle [ playerid ] ], playerid );
    		playerInVehicle[ playerid ] = INVALID_VEHICLE_ID;
    	}

    6. Creem un stock prin care putem lua driver-ul care conduce masina X si stock-ul va fi cam asa

    stock GetVehicleDriver( vehicleid )
    {
        foreach(new i : playerInVehicles[ vehicleid ])
        {
        	if( GetPlayerState( i ) != PLAYER_STATE_DRIVER )
        		continue;
    
            return i;
        }
        return INVALID_PLAYER_ID;
    }

    7. De asemenea vom face si un stock, prin care putem verifica daca vehiculul este liber sau are pasageri/conducatori

    stock IsVehicleOccupied( vehicleid )
    {
        return Iter_Count( playerInVehicles[ vehicleid ] );
    }    

    Acum, cum am putea folosi sa facem de exemplu, avem comanda /cw( /carwhisper ), cum facem sa trimitem mesaje la toti playerii din vehiculul X? Comanda noastra ar trebui sa fie in stilul acesta 

    CMD:cw( playerid, params[] )
    {
        if(!IsPlayerInAnyVehicle(playerid))
        	return SendClientMessage(playerid, -1, "{FFF8C6}You need to be in vehicle.");
    
        new Text[ 128 ];
    	if( sscanf( params, "s[128]", Text ) )
    		return SendClientMessage( playerid, -1, "/cw [ message ]" );
    
    	new v_id = GetPlayerVehicleID( playerid );
    
    	new string[128];
    	format( string, sizeof string, "(Car Whisper) %s: %s", GetName( playerid ), Text );
    
        foreach(new i : playerInVehicles[ v_id ] )
        {
            SendClientMessage( i, -1, string );
        }
    
    	return true;
    }

    Daca nu avem " GetName " creat, il vom face in urmatorul mod

    stock GetName(playerid)
    {
    	new name[MAX_PLAYER_NAME];
    	GetPlayerName(playerid, name, sizeof name);
    	return name;
    }

    Cu modelul de la comanda ( /cw, /carwhisper ) puteti face un timer la cate milisecunde/seecunde vreti voi, doar in vehiculul X, aveti N metode de a face asta, una ar fi sa porniti un timer in OnGameModeInit, prin toate vehiculele( MAX_VEHICLES ) si verificati cu Iter_Count( playerInVehicles[ vehicleid ] ) daca nu sunt playeri in masina, sa nu fie executat degeaba loop-ul.

     

    Cam asta a fost micul, scurt tutorial, daca am omis ceva, rog cunoscatorii sa completeze(sau sa corecteze) in caz ca am gresit ceva din neatentie, sper ca n am omis nimic.

     

    Daca exista un astfel de tutorial, atunci imi voi retrage postarea, dar am primit destule mesaje cum se poate face asta si totusi am zis sa va arat cea mai buna metoda( din perspectiva mea )

    Succes tuturor :)

  12. 7 hours ago, nobilzeus said:

    90% din cheat uri nu blochează nici nephrite😂😂 auzi la el

    nex-ac o face, daca stii sa l folosesti cum trebuie si unde trebuie, nu in proportie de 100%, dar vezi ca blocheaza foarte multe.

    Recomandarea mea ar fi si BustAim, e un detector de aimbot/ random shoots foarte bun, chiar excelent pot spune, chit ca se foloseste de OnPlayerUpdate, dar este intr-un mod eficient si care nu poate cauza probleme.

  13. 19 minutes ago, segmentationfault said:

    da cati ani ai? ca aveam eu 14 in 2012 când aveam sa-mp.ro și nici nu mai țin minte cum arată pawn-ul.

    22, aveam vreo 12 ani cand m am apucat sa "scriptez" in pawn, modificam mici texte, culori si usor usor am invatat.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.