Skripta koju koristim:N/A
Detaljan opis problema:server crash eto vam dole sta je crashdetect izbacio
Dio skripte:
[08:39:59] [debug] Run time error 4: "Array index out of bounds"
[08:39:59] [debug] Accessing element at index 65535 past array upper bound 499
[08:39:59] [debug] AMX backtrace:
[08:39:59] [debug] #0 0046a420 in ?? (0, 65535, 255) from N/A.amx
[08:39:59] [debug] #1 00007544 in public OnPlayerDeath (0, 65535, 255) from N/A.amx
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Includeuj crashdetect na vrh skripte
#include <crashdetect>
Zatim u pawno folder dodaj pawn.cfg i u njega upisi -d3
dobices full debug info sa compilanjem, zatim dopusti da ti server opet crasha i izbacice ti tacne linije errora :)
Citat: ☢ χÏ...ηdÑ"Ñ_SkillArena ☢ poslato Mart 29, 2016, 15:49:51 POSLE PODNE
Includeuj crashdetect na vrh skripte
#include <crashdetect>
Zatim u pawno folder dodaj pawn.cfg i u njega upisi -d3
dobices full debug info sa compilanjem, zatim dopusti da ti server opet crasha i izbacice ti tacne linije errora :)
Ok, uradit cu to ali dok crash-a srv dugo vremena prodje pa cu do tad LOCK!
[debug] #0 00013730 in INI_AddToBuffer (INI:file=0, name[]=@019d80a4 "Mobilni", data[]=@019fa354 "181531")... include\YSI\y_ini.inc:982
if (!strcmp(name, YSI_g_sINIWriteBuffer[_:file][start][E_INI_WRITE_NAME], true))
[debug] #1 000141a8 in INI_WriteInt (INI:file=0, name[]=@019d80a4 "Mobilni", data=181531)...YSI\y_ini.inc:1076
INI_AddToBuffer(file, name, str);
[debug] #2 0081ff70 in SavePlayer (playerid=2) .pwn:78638
INI_WriteInt(File,"MobilniUgasen",PlayerInfo[playerid][pMobilniUgasen]);
[debug] #3 00587808 in public SSCANF_OnPlayerDisconnect (playerid=2, reason=2) .pwn:38272
return 1;
[debug] #5 00023a30 in ?? (... <2 arguments>) include\sscanf2.inc:143
ret = CallLocalFunction("SSCANF_OnPlayerDisconnect", "ii", playerid, reason);
#6 000085c4 in public Itter_OnPlayerDisconnect (playerid=2, reason=2)y_hooks/impl.inc:661
while (start++ != end)
[debug] #8 00001778 in public OnPlayerDisconnect (playerid=2, reason=2) foreach.inc:715
return CallLocalFunction("Itter_OnPlayerDisconnect", "ii", playerid, reason);
to je to sto mi je izbacio sad
Vjerovatno ti je u ovome gresta
INI_WriteInt(File,"MobilniUgasen",PlayerInfo[playerid][pMobilniUgasen]);
takodje pokazao si mi samo return 1; sto mi nista ne znaci daj malo vise koda :)
Citat: ☢ χÏ...ηdÑ"Ñ_SkillArena ☢ poslato Mart 30, 2016, 18:06:17 POSLE PODNE
Vjerovatno ti je u ovome gresta
INI_WriteInt(File,"MobilniUgasen",PlayerInfo[playerid][pMobilniUgasen]);
takodje pokazao si mi samo return 1; sto mi nista ne znaci daj malo vise koda :)
[pawn]
public OnPlayerDisconnect(playerid, reason)
{
if(snowOn{playerid})
{
for(new i = 0; i < MAX_SNOW_OBJECTS; i++) DestroyDynamicObject(snowObject[playerid]
);
snowOn{playerid} = false;
KillTimer(updateTimer{playerid});
}
onlinepl--;
PlayerInfo[playerid][pDekodersef] = 0;
PlayerInfo[playerid][pDuznost] = 0;
FadePlayerDisconnect(playerid);
// new file[256],n[MAX_PLAYER_NAME];
// GetPlayerName(playerid,n,MAX_PLAYER_NAME);
//format(file,sizeof(file),"Stats/%s.txt",n);
if(AdminVozilo[playerid] != -1) DestroyVehicle(AdminVozilo[playerid]), AdminVozilo[playerid] = -1;
/////////////////////////////////////////////////////
/* if(Rentano[playerid] != 299) { SetVehicleToRespawn(Rentano[playerid]); Rentano[playerid] = 299; }*/
//////////////////////////////////////////////
KillTimer(IntroTimer[playerid]); KillTimer(IntroTimer2[playerid]);
KillTimer(IntroTimer3[playerid]); KillTimer(IntroTimer4[playerid]);
KillTimer(IntroTimer5[playerid]); KillTimer(LogRegTimer[playerid]);
KillTimer(MobilniCenaRazgovora[playerid]); AttachObjectRemove(playerid);
// VuceIgraca[playerid] = -1; KillTimer(VuciTimer[playerid]);
//SaveGuns(playerid);
KillTimer(DragTimer[playerid]);
KillTimer(pmtimer[playerid]);
KillTimer(RentTimer[playerid]);
///////////////////////////////////////////////
if(Prepreka1Kreirana[playerid] == true) DestroyObject(Prepreka1[playerid]);
if(Prepreka2Kreirana[playerid] == true) DestroyObject(Prepreka2[playerid]);
if(Prepreka3Kreirana[playerid] == true) DestroyObject(Prepreka3[playerid]);
if(Prepreka4Kreirana[playerid] == true) DestroyObject(Prepreka4[playerid]);
if(KupovinaAuta[playerid] == true) autokatalog = 0;
if(KupovinaAuta2[playerid] == true) autokatalog2 = 0;
//////////////////////////////////////////////
if(PlayerInfo[playerid][pTrazeniLevel] > 0 || StavljeneLisice[playerid] > 0 || Zavezan[playerid] > 0 || IgracTazovan[playerid] > 0)
{
PlayerInfo[playerid][pZatvor] = 2;
KillTimer(RobCityHallTimer[playerid]);
PlayerInfo[playerid][pZatvorenVreme] = PlayerInfo[playerid][pTrazeniLevel] * 300;
PlayerInfo[playerid][pTrazeniLevel] = 0;
SetPlayerPos(playerid, 107.2300,1920.6311,18.5208);
SetPlayerWorldBounds(playerid, 337.5694,101.5826,1940.9759,1798.7453);
SetPlayerInterior(playerid,0);
//VuceIgraca[playerid] = -1;
//SetPlayerColor(playerid, BELA2);
// KillTimer(VuciTimer[playerid]);
KillTimer(DragTimer[playerid]);
DragTimer[playerid] = 0;
}
///RENT
if(Rentao[playerid] != 9999)
{
Rentao[playerid] = 9999;
}
//////////////////////////////////////////
if(Zavezan[playerid] >= 1) { g_NovacMinus(playerid, 20000); Zavezan[playerid] = 0; }
////////////////////////////////////////////
if(TelefonRazgovor[playerid] != -1 && TelefonZvoni[playerid] == false)
{
SCM(TelefonRazgovor[playerid], -1, "Telecom | "SPLAVA"Igrac sa kojim ste pricali je izasao sa servera!");
SetPlayerSpecialAction(TelefonRazgovor[playerid], SPECIAL_ACTION_STOPUSECELLPHONE);
RemovePlayerAttachedObject(TelefonRazgovor[playerid], TELEFON_SLOT);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_STOPUSECELLPHONE);
RemovePlayerAttachedObject(playerid, TELEFON_SLOT);
TelefonRazgovor[TelefonRazgovor[playerid]] = -1,
TelefonRazgovor[playerid] = -1;
}
///////////////////////////////////////////
new rstring[128];
switch(reason)
{
case 0: format(rstring, sizeof(rstring), ""SIVA"(( %s je izasao sa servera... (crash) ))", GetName(playerid));
case 1: format(rstring, sizeof(rstring), ""SIVA"(( %s je izasao sa servera... ))", GetName(playerid));
case 2: format(rstring, sizeof(rstring), ""SIVA"(( %s je izasao sa servera "SPLAVA"(KICK/BAN)"SIVA"... ))", GetName(playerid));
}
ProxDetector(30.0, playerid, rstring,PROX,PROX,PROX,PROX,PROX);
//////////////////////////////////////////
if(Posadjena[playerid] >= 1 || BranjeDroge[playerid] >= 1)
{
KillTimer(GroveDrogaTimer[playerid]); BranjeDroge[playerid] = 0; Posadjena[playerid] = 0;
DestroyPlayerObject(playerid, SadjenjeDrogeGrove[0][playerid]); DestroyPlayerObject(playerid, SadjenjeDrogeGrove[1][playerid]);
DestroyPlayerObject(playerid, SadjenjeDrogeGrove[2][playerid]); DestroyPlayerObject(playerid, SadjenjeDrogeGrove[3][playerid]);
}
//////////////////////////////////////////
TextDrawDestroy(Bankakes[playerid]);
TextDrawDestroy(EXP[playerid]);
TextDrawDestroy(Gold[playerid]);
SavePlayer(playerid);
//////////////////////////////////////////////
return 1;[/pawn]
evo ti.