-
Posts
198 -
Joined
-
Last visited
Content Type
Profiles
Forums
News
Documentation
Posts posted by Rayan
-
-
Acum 16 ore, Mister a spus:
Salut, daca ai verificat si esti sigur ca atunci cand proprietarul urca in masina se descuie atunci verifici la onplayerentervehicle si onplayerstatechange -> newstate -> player state driver
unde este o verificare ca playerid este proprietarul masinii si sa verific ce e in neregula daca este vreo functie de unlock sau direct functia vehicleparams
Mda, din cate vad problema e atunci cand ii dau /engine.
new engine, lights, alarm, doors, bonnet, boot, objective; GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective); SetVehicleParamsEx(vehicleid, VEHICLE_PARAMS_ON, lights, alarm, doors, bonnet, boot, objective); vehEngine[vehicleid] = 1;
si
new engine, lights, alarm, doors, bonnet, boot, objective; GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective); SetVehicleParamsEx(vehicleid, VEHICLE_PARAMS_OFF, lights, alarm, doors, bonnet, boot, objective); vehEngine[vehicleid] = 0;
Doar atunci problema apare.. Vreo rezolvare?
Am citit ceva pe wiki si cica nu prea se plac SetVehicleParamsForPlayer cu SetVehicleParamsEx, insa n-am idee de o rezolvare. Daca ai una..
-
Am o problema cu aceasta functie.
Am o comanda /lock, si cand o folosesc, trebuie sa incuie pentru toti jucatorii usile (masina sa fie locked), iar pentru mine sa fie deschisa.
CMD:lock(playerid, params[]) { new vehicleid = user_vehicle[playerid]; foreach(new i : Player) { if(i != playerid) SetVehicleParamsForPlayer(vehicleid, i, 0, 1); } SetVehicleParamsForPlayer(vehicleid, playerid, 0, 0); return 1; }
Totul merge ok, nimeni nu poate intra in masina, insa daca eu sunt detinatorul la masina, si ma urc in ea, dupa toti vor putea sa dea F, tinand cont ca am setat deja parametirii sa fie 1 (1 = locked).. si doar 0 (unlocked) pentru detinator (adica doar pentru mine)..
Iar la OnVehicleStreamIn am asta:
public OnVehicleStreamIn(vehicleid, forplayerid) { if(is_vehicle_personal[vehicleid] == 1) { if(!strcmp(vehicle_owner[vehicleid], PlayerInfo[forplayerid][pNormalName], true)) SetVehicleParamsForPlayer(vehicleid, forplayerid, 0, 0); // unlocked else SetVehicleParamsForPlayer(vehvicleid, forplayerid, 0, 1); // locked because is not the owner } return 1; }
Nu inteleg unde e problema, am facut si un debug la functia SetVehicleParamsForPlayer si ce a iesit a fost asta:
[16:45:56] SetVehicleParamsForPlayer(368,1,0,1) [16:45:56] SetVehicleParamsForPlayer(368,0,0,0) [16:45:56] SetVehicleParamsForPlayer(368,1,0,1) [16:45:56] SetVehicleParamsForPlayer(368,1,0,1) [16:45:57] SetVehicleParamsForPlayer(368,0,0,0) [16:45:57] SetVehicleParamsForPlayer(368,0,0,0) 1 == cel ce nu detinator 0 == jucatorul care detine masina 368
Totul merge ok, la /lock si la OnVehicleStreamIn sunt chemate si executate ok comenzile, insa cand owneru masinii se urca in ea, practic se deblocheaza pentru toti, iar functia SetVehicleParamsForPlayer nu e chemata (daca era chemata stiam ca e de la functia), chiar nu stiu unde e problema..
-
hook OnPlayerConnect(playerid) { defer make_login_dee(playerid); return 1; } timer make_login_dee[5000](playerid) { // your code here. }
- 1
-
Daca vrei sa faci scurtaturi pui in OnGamemodeIni asa:
Command_AddAltNamed("adminhelp", "ah");
-
-
La 3/30/2018 la 0:40, AndreiGB a spus:
Salut SA:MP.Ro, m-am gandit sa va public gamemode-ul la care am lucrat destul de mult timp. Acesta este o copie fidela a server-ului ruby nephrite + multe update-uri unice.
Acest gamemode il voi face public doar daca strang 475 de subscriberi pe canal-ul meu de youtube.
Link: http://youtube.com/c/andreigb/
Link gamemode: http://www19.zippyshare.com/v/3HexwFy8/file.html
Si daca va puteti uita si peste asta ar fi ok: https://www.strawpoll.me/15408516
Virustotal: https://www.virustotal.com/#/url/e008d394de1ab9b41c17a1d5c809081c5662fad256a93807aa6ec9c1aabfdb75/detection
Acest gamemode detine:
Sistem de accesorii Poze: https://imgur.com/a/AJ5XF
Sistem de garaje Poze: https://imgur.com/a/lHpVn
Sistem de crates Poze: https://imgur.com/a/E6Sim
14 factiuni
14 joburi Poze: https://imgur.com/a/xqGyg
2 sisteme de tuning (cel default si un garaj de modern tuning pe textdraw unic) Poze: https://imgur.com/a/oIR2J
3 job-uri unice (curier, vacar si transportator de roti)
Sistem de anti-cheat
Am incercat sa optimizez gamemode-ul cat mai mult si acum merge mult mai bine.
un panel compatibil?
-
Eu asta folosesc http://forum.sa-mp.com/showthread.php?t=598933
-
Arata-ne functia sa vedem ce nu e bine
-
Acum 8 ore, Banditul a spus:
Hmmm....
Ma gandesc ca SetPlayerName seteaza un nume invalid sau prea mare/mic fata de limitarile samp si cand se foloseste GetPlayerName cedeaza...Nu sunt singur
Pune niste printf in interioru if startdel si else si putin mai sus in interiorul if strfind.
La altceva nu ma pot gandi de ce ar crashui acolo
ai dreptate, de la asta e, de exemplu am un clan inregistrat cu tag-ul [A] sunt 3 caractere care sunt minimile setate din samp default. e, daca ma conectez doar cu [A] si e un clan cu acest tag creat, server-ul primeste crash, deoarece incearca sa ii stearga tag-ul jucatorului fiind [A] il sterge si ramane cu niciun caracter in nickname.
Ar trebui sa fac o verificare ca dupa ce ii sterge numele sa verific daca strlen < 3 sa ii dea kick pentru motiv nume prea scurt?
edit; e ok daca pun asa? (conteaza daca e return 1 sau 0?)
if(startdel > 0) { new end = strlen(playername); strdel(playername, startdel, end); if(strlen(playername) < 3) { SCM(playerid, -1, "Nickname prea scurt."); Kick(playerid); return 0; } SetPlayerName(playerid, playername); SetPVarInt(playerid, "with_clan_tag", 1); } else { strdel(playername, startdel, dellenght); if(strlen(playername) < 3) { SCM(playerid, -1, "Nickname prea scurt."); Kick(playerid); return 0; } SetPlayerName(playerid, playername); SetPVarInt(playerid, "with_clan_tag", 1); }
-
Acum 15 minute, Banditul a spus:
Care este linia 48376 mai exact?
cred ca asta: am recompilat gm-ul si am mai adaugat chestii si chiar numai stiu care era linia...dar asta mi se pare ca e
GetPlayerName(playerid, numeJucator, sizeof(numeJucator));
-
Salut, habar nu am de ce serverul a luat crash..nu mi s-a mai intamplat pana acum de la BanCheck(daca functia asta e);
BanCheck: https://pastebin.com/hktHSTn6
server_logs
[16:07:25] [connection] incoming connection: 85.186.179.25:53720 id: 9 [16:07:26] [join] renko has joined the server (9:85.186.179.25) [16:07:26] [debug] Server crashed while executing exgaming.amx [16:07:26] [debug] AMX backtrace: [16:07:26] [debug] #0 native SetPlayerName () from sscanf.so [16:07:26] [debug] #1 00309c10 in BanCheck (playerid=9) at D:\gamemode\gamemodes\exgaming.pwn:48376 [16:07:26] [debug] #2 00095690 in public OnPlPa_OnPlayerConnect (playerid=9) at D:\gamemode\gamemodes\exgaming.pwn:8218 [16:07:26] [debug] #3 native CallLocalFunction () from samp03svr [16:07:26] [debug] #4 000592dc in public inc_Ven_OnPlayerConnect (playerid=9) at D:\gamemode\pawno\include\OnPlayerPause.inc:106 [16:07:26] [debug] #5 000520bc in public MP_OPC (playerid=9) at D:\gamemode\pawno\include\vending.inc:564 [16:07:26] [debug] #6 native CallLocalFunction () from samp03svr [16:07:26] [debug] #7 000406ac in public SSCANF_OnPlayerConnect (playerid=9) at D:\gamemode\pawno\include\mSelection.inc:432 [16:07:26] [debug] #8 000356d8 in public _y_utils_OnPlayerConnect (playerid=9) at D:\gamemode\pawno\include\sscanf2.inc:236 [16:07:26] [debug] #9 0000a10c in public AB_OnPlayerConnect (playerid=9) at D:\gamemode\pawno\include\YSI\..\YSI_Coding\..\YSI_Core\y_utils.inc:236 [16:07:26] [debug] #10 000010b0 in OnPlayerConnect (playerid=9, ... <1073741822 arguments>) at D:\gamemode\pawno\include\OPA.inc:104 [16:07:26] [debug] #11 0000b0e0 in public OnPlayerConnect (... <1 argument>) at D:\gamemode\pawno\include\YSI\..\YSI_Coding\..\YSI_Internal\y_cgen.inc:30 [16:07:26] [debug] Native backtrace: [16:07:26] [debug] #0 b642ee8b in _ZN10StackTraceC1EPv () from plugins/crashdetect.so [16:07:26] [debug] #1 b6427bcf in _ZN11CrashDetect20PrintNativeBacktraceERSoPv () from plugins/crashdetect.so [16:07:26] [debug] #2 b6428dbc in _ZN11CrashDetect20PrintNativeBacktraceEPv () from plugins/crashdetect.so [16:07:26] [debug] #3 b6429226 in _ZN11CrashDetect11OnExceptionEPv () from plugins/crashdetect.so [16:07:26] [debug] #4 b642eadc in ?? () from plugins/crashdetect.so [16:07:26] [debug] #5 b771f600 in ?? () [16:07:26] [debug] #6 080d5a67 in ?? () from ./samp03svr [16:07:26] [debug] #7 080d7a95 in ?? () from ./samp03svr [16:07:26] [debug] #8 b645ab56 in ?? () from plugins/sscanf.so [16:07:26] [debug] #9 080950e4 in ?? () from ./samp03svr [16:07:26] [debug] #10 b642a94b in _ZN11CrashDetect13DoAmxCallbackEiPiS0_ () from plugins/crashdetect.so [16:07:26] [debug] #11 b642d8f8 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #12 b6431916 in amx_Exec () from plugins/crashdetect.so [16:07:26] [debug] #13 b6429be6 in _ZN11CrashDetect9DoAmxExecEPii () from plugins/crashdetect.so [16:07:26] [debug] #14 b642d659 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #15 b6076826 in ?? () from plugins/streamer.so [16:07:26] [debug] #16 080dfd62 in ?? () from ./samp03svr [16:07:26] [debug] #17 080950e4 in ?? () from ./samp03svr [16:07:26] [debug] #18 b642a94b in _ZN11CrashDetect13DoAmxCallbackEiPiS0_ () from plugins/crashdetect.so [16:07:26] [debug] #19 b642d8f8 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #20 b6431916 in amx_Exec () from plugins/crashdetect.so [16:07:26] [debug] #21 b6429be6 in _ZN11CrashDetect9DoAmxExecEPii () from plugins/crashdetect.so [16:07:26] [debug] #22 b642d659 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #23 b6076826 in ?? () from plugins/streamer.so [16:07:26] [debug] #24 080dfd62 in ?? () from ./samp03svr [16:07:26] [debug] #25 080950e4 in ?? () from ./samp03svr [16:07:26] [debug] #26 b642a94b in _ZN11CrashDetect13DoAmxCallbackEiPiS0_ () from plugins/crashdetect.so [16:07:26] [debug] #27 b642d8f8 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #28 b6431916 in amx_Exec () from plugins/crashdetect.so [16:07:26] [debug] #29 b6429be6 in _ZN11CrashDetect9DoAmxExecEPii () from plugins/crashdetect.so [16:07:26] [debug] #30 b642d659 in ?? () from plugins/crashdetect.so [16:07:26] [debug] #31 b6076826 in ?? () from plugins/streamer.so [16:07:26] [debug] #32 080a51c9 in ?? () from ./samp03svr [16:07:26] [debug] #33 080d09ff in ?? () from ./samp03svr [16:07:26] [debug] #34 080b5515 in ?? () from ./samp03svr [16:07:26] [debug] #35 08071d38 in ?? () from ./samp03svr [16:07:26] [debug] #36 08071e32 in ?? () from ./samp03svr [16:07:26] [debug] #37 0807bc50 in ?? () from ./samp03svr [16:07:26] [debug] #38 080aed3d in ?? () from ./samp03svr [16:07:26] [debug] #39 080aef02 in ?? () from ./samp03svr [16:07:26] [debug] #40 080aa13a in ?? () from ./samp03svr [16:07:26] [debug] #41 b7443d26 in __libc_start_main () from /lib/libc.so.6 [16:07:26] [debug] #42 0804b4e1 in ?? () from ./samp03svr
-
bump, ma poate ajuta cineva?
-
-
Rezolvat.
-
1 oră în urmă, Banditul a spus:
Ce ai uitat tu sa faci este sa oferi la stringuri o continuitate , fiind intr-o bucla care e de n ori formatezi acelasi string de n ori si nu il copiezi pe cel precedent la cel actual. Sunt 2 variainte, cum a facut eu sau folosind strcat(putin mai optim). Practic copiai o informatie de n ori fara sa salvezi ce era inaintea ei si ramanea ultima(sper sa fie de la asta , altceva nu vad)
Acum arata asa: https://imgur.com/a/l5rXN
-
bump, ma poate ajuta cineva?
-
Acum 17 ore, Mister a spus:
De ce nu maresti pur si simplu ''rangeofpointul'' pentru tonomat. In include ai aceste defineuri, si modifici in 1.5
#define SODA_RADIUS 1.2 #define SPRUNK_RADIUS 1.05 #define SNACK_RADIUS 1.05
le-am pus si la 2.5 / 3 , 5, 100, si tot nu merge, e la fel ca inainte, nicio schimbare, trebuie sa fiu la fel ca in pozele de mai sus ca sa il folosesc.
-
Salut, folosesc acest include http://forum.sa-mp.com/showthread.php?t=553952
Insa am o mica problema la el. Pot folosi dozatorul/vending-ul cum vrei sa-i zici, doar cand sunt langa el, nu si cand sunt cu fata lui. Vedeti pozele de mai jos.
Cum as putea rezolva? Am incercat sa schimb coordonatele, IsPlayerInRangeOfPoint, insa la fel...
include: https://pastebin.com/wCJLUVKL
-
solved.
-
Salut, am o comanda /last punish cu care verific fiecarui jucator sanctiunile.
Problema este ca nu afiseaza corect id-ul sanctiuni din baza de date, poza: https://imgur.com/a/ZpQyL
cod-ul este acesta:
if(strcmp(list,"punish",true) == 0) { new iddd; if(id != -1) { format(query, sizeof(query), "SELECT * FROM `punishlogs` WHERE `playerid`='%d' ORDER BY `ID` DESC LIMIT %d", PlayerInfo[id][pSQLID], lines); new Cache: resultt = mysql_query(SQL, query); for(new i, j = cache_get_row_count (); i != j; ++i) { iddd = cache_get_field_content_int(i, "id"); cache_get_field_content(i, "time", result); format(test, 300, result); cache_get_field_content(i, "reason", result); format(reason, 300, result); actionid = cache_get_field_content_int(i, "actionid"); actiontime = cache_get_field_content_int(i, "actiontime"); cache_get_field_content(i, "playername", result); format(name, 30, result); cache_get_field_content(i, "givername", result); format(name2, 30, result); if(actionid == 1) { format(string,sizeof(string),"(#%d) %s[%s] Ban: %s has been permanent banned by %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 2) { format(string,sizeof(string),"(#%d) %s[%s] Ban: %s has been banned by %s for %d days, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 3) { format(string,sizeof(string),"(#%d) %s[%s] IP Ban: %s has been permanent banned by %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 4) { format(string,sizeof(string),"(#%d) %s[%s] IP Ban: %s has been banned by %s for %d days, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 5) { format(string,sizeof(string),"(#%d) %s[%s] Warn: %s received a warn from admin %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 6) { format(string,sizeof(string),"(#%d) %s[%s] Jail: %s was jailed by %s for %d minutes, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 7) { format(string,sizeof(string),"(#%d) %s[%s] Mute: %s has been muted by %s for %d minutes, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 8) { format(string,sizeof(string),"(#%d) %s[%s] %s was released from jail by admin %s, reason: %s.\n",iddd,string,test,name,name2,reason); } } cache_delete(resultt); ShowPlayerDialog(playerid,DIALOG_LASTS,DIALOG_STYLE_MSGBOX,"punish for player",string,"Close",""); } else { format(query, sizeof(query), "SELECT * FROM `punishlogs` ORDER BY `ID` DESC LIMIT %d", lines); new Cache: resultt = mysql_query(SQL, query); for(new i, j = cache_get_row_count (); i != j; ++i) { iddd = cache_get_field_content_int(i, "id"); cache_get_field_content(i, "time", result); format(test, 300, result); cache_get_field_content(i, "reason", result); format(reason, 300, result); actionid = cache_get_field_content_int(i, "actionid"); actiontime = cache_get_field_content_int(i, "actiontime"); cache_get_field_content(i, "playername", result); format(name, 30, result); cache_get_field_content(i, "givername", result); format(name2, 30, result); if(actionid == 1) { format(string,sizeof(string),"(#%d) %s[%s] Ban: %s has been permanent banned by %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 2) { format(string,sizeof(string),"(#%d) %s[%s] Ban: %s has been banned by %s for %d days, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 3) { format(string,sizeof(string),"(#%d) %s[%s] IP Ban: %s has been permanent banned by %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 4) { format(string,sizeof(string),"(#%d) %s[%s] IP Ban: %s has been banned by %s for %d days, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 5) { format(string,sizeof(string),"(#%d) %s[%s] Warn: %s received a warn from admin %s, reason: %s.\n",iddd,string,test,name,name2,reason); } else if(actionid == 6) { format(string,sizeof(string),"(#%d) %s[%s] Jail: %s was jailed by %s for %d minutes, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 7) { format(string,sizeof(string),"(#%d) %s[%s] Mute: %s has been muted by %s for %d minutes, reason: %s.\n",iddd,string,test,name,name2,actiontime,reason); } else if(actionid == 8) { format(string,sizeof(string),"(#%d) %s[%s] %s was released from jail by admin %s, reason: %s.\n",iddd,string,test,name,name2,reason); } } cache_delete(resultt); ShowPlayerDialog(playerid,DIALOG_LASTS,DIALOG_STYLE_MSGBOX,"punish",string,"Close",""); } }
-
#sters.
-
Problema rezolvata, trebuia sa pun DESC la `emailread`. si fara virgula dupa DESC
SELECT * FROM `emails` WHERE `playerid` = %d ORDER BY `EmailRead` DESC ,`ID` DESC LIMIT 20
Mersi @Banditul
-
Acum 30 minute, Banditul a spus:
EmailId[playerid][idd]
Asta cel mai probabil este pagubasu. Ori maresti array-ul EmailID (EmailID[MAX_PLAYERS][10] ma gandesc) ori scazi acel LIMIT
am rezolvat asta, legat de functie, e la fel ca inainte, imi apare la fel ca prima oara, nu sorteaza necititele, la fel, gen arata primele 20 insa daca mai jos de 20 sunt necitite nu apar primele, raman tot acolo gen sorteaza doar dupa ID si nu si dupa EmailRead
-
Acum 18 minute, Banditul a spus:
Hmmm atunci:
format(query, sizeof(query), "SELECT * FROM `emails` WHERE `playerid` = %d ORDER BY `ID` DESC, EmailRead ASC LIMIT 20
Si iti va grupa emailurile de la ultimu la primu, si de la necitit la citit
Imi da SERVER: Unknown command.
server_log
[17:50:27] [debug] Run time error 4: "Array index out of bounds" [17:50:27] [debug] AMX backtrace: [17:50:27] [debug] #0 0022e488 in public cmd_email (playerid=0, params[]=@0362126c "") at D:\gamemode\gamemodes\exgaming.pwn:34890 [17:50:27] [debug] #1 0022dfbc in public cmd_emails (playerid=0, params[]=@0362126c "") at D:\gamemode\gamemodes\exgaming.pwn:34872 [17:50:27] [debug] #2 native CallLocalFunction () from samp-server.exe [17:50:27] [debug] #3 00037b18 in public OnPlayerCommandText (playerid=0, cmdtext[]=@0362124c "/emails") at D:\gamemode\pawno\include\zcmd.inc:102 [17:50:29] [debug] Run time error 4: "Array index out of bounds" [17:50:29] [debug] AMX backtrace: [17:50:29] [debug] #0 0022e488 in public cmd_email (playerid=0, params[]=@03621268 "") at D:\gamemode\gamemodes\exgaming.pwn:34890 [17:50:29] [debug] #1 native CallLocalFunction () from samp-server.exe [17:50:29] [debug] #2 00037b18 in public OnPlayerCommandText (playerid=0, cmdtext[]=@0362124c "/email") at D:\gamemode\pawno\include\zcmd.inc:102
SetVehicleParamsForPlayer (bug )
in Ajutor Scripting
Posted
Din cate se pare, problema e la fixes.inc, l-am scos si acum merge totu perfect, deci nu era de la faptul ca foloseam si SetVehicleParamsEx..