Balkan SA:MP
San Andreas Multiplayer - www.sa-mp.com => Tutorijali u vezi SA-MPa => Temu započeo: lv poslato Avgust 07, 2014, 16:43:36 POSLE PODNE
Pozdrav, vidim da se mnogo vas pati sa UP modom, i pita koji su bagovi za obaranje servera i tih stvarcica.. Ja sam uspeo da pronadjem za sada 3 BAG-a ! A to su
1. Znak % u input dialozima
2. Duzina lozinke veca od 24 simbola/znaka/slova
3. Boja vozila => 9999 9999
4. /prome(je)nipass
Potrebno nam je
UnderPoint Mod :D
Pa da krenemo sa popravkama...
Prvo radimo znak % .. Nemojte odmah misliti da trebate ispod svakog dialoga da pravite provere da li je upisan znak % , ili tako nesto.. Vec samo pod OnDialogResponse trebate staviti jednu jedinu proveru.. Evo ovako izgleda
if(strfind(inputtext, "%", true) != -1) // Ukoliko u dialogu server pronadje znak %, sta da radi
{
SCM(playerid, -1, " Nema ovde obaranja, cibe"); // Salje mu bezobraznu poruku
return 1;
}
I eto, to je jedan bag ... Sada krenimo na drugi
Duzina lozinke.. Takodje, samo trebate promeniti jedan broj :)
Nadjite na UP modu
MAX_DUZINA_LOZINKE
Kada ste nasli to, iza MAX_DUZINA_LOZINKE pise vam broj 26.. Jednostavno, promenite na neki manji broj.. Recimo 14-15 .. I tako igrac vise nece moci da upise vise od 14 znakova, i server nece pasti...
Ok, idemo na finalni bag, koji sam ja uspeo da nadjem.. A to je da stavite boju vozila na 9999 9999... Takodje, tu samo jedna linija resava problem, ali morate u svim dialozima za farbanje vozila dodati ovo
if(boja[0] >= 255|| boja[0] <= 0 || boja[1] <= 0 || boja[1] >= 255) return SCM(playerid,-1, "Ne mozes koristiti taj ID");
To jednostavno dodajte ispod svakog dialoga za farbanje vozila...
UPDATE: Hvala Levu-u za ovo...
Sledeci bug je /promjenipass, /promenipass .. I tamo morate odraditi ovo.. Dakle, u Up modu nadjite ovo
if(strlen(params) > 26) return SCM(playerid, -1, ""CRVENA"[GRESKA] "SIVA"Lozinka je previse dugacka (Max 26 znakova)!");
Jednostavno, promenite u ovo
if(strlen(params) > 14) return SCM(playerid, -1, ""CRVENA"[GRESKA] "SIVA"Lozinka je previse dugacka (Max 14 znakova)!");
[/code]
Eto, to je to :) To su svi bagovi koje sam ja uspeo da nadjem, ne kazem da su svi, mozda ima jos koji, ali to su najpoznatiji :)
Credits: Rooky, Paolo , Levu
Hvala :)