[REP++] Crashing when player kill player
#1

Hi guys, i have a problem with crash, it does not crash every time but when players DM they get a crash, here is crash log:
Код:
SA-MP 0.3.7
Exception At Address: 0x3FB33333
Base: 0x03000000
 
Registers:
EAX: 0x000BC1E8 EBX: 0x00000000 ECX: 0x08D134D8 EDX: 0x00859988
ESI: 0x00B61C38 EDI: 0x00000000 EBP: 0x75F080E0 ESP: 0x0022FD7C
EFLAGS: 0x00210206
 
Stack:
+0000: 0x004E376A   0xFFFFFFFA   0x00B6BC90   0x00000000
+0010: 0x0050788F   0x0000001A   0x864D1F93   0x0053E990
+0020: 0x00000001   0x008241AF   0x004D9486   0x0053ECC2
+0030: 0x00000001   0x00619B71   0x0000001A   0x00000001
+0040: 0x00000001   0x0000000A   0x00748DA0   0x0000001A
+0050: 0x00000001   0x7774D8F3   0x00000000   0x0022FF88
+0060: 0x7FFDD000   0x01350000   0x4F064D08   0x00351130
+0070: 0x00000008   0x00000100   0x00000008   0x00000102
+0080: 0x44200000   0x44000000   0x00000000   0x00000000
+0090: 0x00000500   0x00000400   0x00000000   0x00000001
+00A0: 0x00310260   0x00000113   0x00000001   0x00000000
+00B0: 0x020FCE87   0x00000283   0x00000200   0x0000002C
+00C0: 0x0022FE2C   0x00825EA4   0x7774D8F3   0x00000000
+00D0: 0x7FFDD000   0xFFFFFFFF   0x00821D17   0x00000065
+00E0: 0x00000065   0x0022FF88   0x008246F1   0x00400000
+00F0: 0x00000000   0x018D2005   0x0000000A   0x00000094
+0100: 0x00000006   0x00000001   0x00001DB1   0x00000002
+0110: 0x76726553   0x20656369   0x6B636150   0x00003120
+0120: 0x00000000   0x00000000   0x00000000   0x00000000
+0130: 0x00000000   0x00000000   0x00000000   0x00000000
+0140: 0x00000000   0x00000000   0x00000000   0x00000000
+0150: 0x00000000   0x00000000   0x00000000   0x00000000
+0160: 0x00000000   0x00000000   0x00000000   0x00000000
+0170: 0x00000000   0x00000000   0x00000000   0x00000000
+0180: 0x00000000   0x00000000   0x00000000   0x00824588
+0190: 0x00000000   0x00000000   0x7FFDD000   0xC0000005
+01A0: 0x75EC2BB4   0x018D2005   0x00000044   0x01906098
+01B0: 0x01904FB0   0x01903888   0x00000000   0x00000000
+01C0: 0x00000000   0x00000000   0x00000000   0x00000000
+01D0: 0x00000000   0x00000000   0x00000000   0x00000000
+01E0: 0xFFFFFFFF   0xFFFFFFFF   0xFFFFFFFF   0x00000000
+01F0: 0x00000000   0x0022FE78   0x0022F988   0x0022FFC4
+0200: 0x00825EA4   0x00888078   0x00000000   0x0022FF94
+0210: 0x7774ED6C   0x7FFDD000   0x0022FFD4   0x77BB377B
+0220: 0x7FFDD000   0x75EB3AF5   0x00000000   0x00000000
+0230: 0x7FFDD000   0x00000000   0x00000000   0x00000000
+0240: 0x0022FFA0   0x00000000   0xFFFFFFFF   0x77B6E115
+0250: 0x0273D729   0x00000000   0x0022FFEC   0x77BB374E
+0260: 0x00824570   0x7FFDD000   0x00000000   0x00000000
+0270: 0x00000000   0x00000000   0x00824570   0x7FFDD000
 
SCM Op: 0x6BD, lDbg: 0 LastRendObj: 638
 
Game Version: US 1.0
 
State Information: Ped Context: 0
P0 (0,0) P1 (0,0) P2 (0,0) P3 (17,0)
P4 (0,0) P5 (17,0) P6 (0,0) P7 (0,0)
P9 (0,0) P10 (19,174) P11 (18,174)
and here is my OnPlayerDeath Command:
Код:
public OnPlayerDeath(playerid, killerid, reason)
{
	RemovePlayerAttachedObject(playerid, 6);
	RemovePlayerAttachedObject(playerid, 9);
	RemovePlayerAttachedObject(playerid, 8);
	RemovePlayerAttachedObject(playerid, 7);
	TogglePlayerControllable(playerid, 1);
	RemovePlayerAttachedObject(playerid, 9);
	RemovePlayerAttachedObject(playerid, 8);
	RemovePlayerAttachedObject(playerid, 7);
	SetPlayerSpecialAction(playerid, 0);
	printf("CRASH DEBBUG-1 | %s",GetName(playerid));
//-------------ANTICHEAT---------------------------
	if(AntiCheatInfo[playerid][acKicked]) return 0;
	if(AntiCheatInfo[playerid][acACAllow][28] && (AntiCheatInfo[playerid][acDead] || !AntiCheatInfo[playerid][acDeathRes] && reason != 255 && (reason != 54 || killerid != 65535))) return ac_KickWithCode(playerid, "", 0, 28);
	AntiCheatInfo[playerid][acDeathRes] = false;
	AntiCheatInfo[playerid][acSet][0] = -1;
	AntiCheatInfo[playerid][acDead] = true;
	AntiCheatInfo[playerid][acSpawnRes] = 1;
	AntiCheatInfo[playerid][acSpawnTime] = GetTickCount();
	printf("CRASH DEBBUG");

//---------------POSAO STOP-----------------------
	StopPosao(playerid);
	printf("CRASH DEBBUG2 | %s",GetName(playerid));
//----------------------------------------------
	if(brodpola[playerid] == 1) {
		PlayerInfo[playerid][pPolaganje] = 0;
		hPolaganjeb[playerid] = 0;
	 	brodpola[playerid] = 0;
	    h_DisablePlayerCheckpoint(playerid);
	}
	if(brodpola[playerid] == 2) {
		hPolaganjea[playerid] = 0;
		brodpola[playerid] = 0;
		DisablePlayerRaceCheckpoint(playerid);
	}
	printf("CRASH DEBBUG3 | %s",GetName(playerid));
//-------------------------------------------
	StopAudioStreamForPlayer(playerid);
    TextDrawShowForPlayer(playerid, addole1);
    TextDrawShowForPlayer(playerid, addole2);
    TextDrawShowForPlayer(playerid, addole0);
    //PlayerTextDrawShow(playerid, SnegOffTD[playerid]);
    TextDrawShowForPlayer(playerid, Textdraw7);
    TextDrawShowForPlayer(playerid, Textdraw9);
    TextDrawShowForPlayer(playerid, LSRPLogo0);
    TextDrawShowForPlayer(playerid, LSRPLogo1);
    TextDrawShowForPlayer(playerid, LSRPLogo2);
    TextDrawShowForPlayer(playerid, LSRPLogo3);
    TextDrawShowForPlayer(playerid, LSRPLogo4);
    PlayerTextDrawShow(playerid, Zlato[playerid]);
    PlayerTextDrawShow(playerid, Banka[playerid]);
	PlayerTextDrawHide(playerid, klecanjetd[playerid]);
	if(kamenklese[playerid] == 3 || klesevrijeme[playerid] > 0)
	{
		TogglePlayerControllable(playerid, 1);
	}
	KillTimer(klesetimer[playerid]);
	UpoUAlarm[playerid] = 0;
	naftalvl[playerid] = 0;
	mozeminig[playerid] = 0;
	if(posaov[playerid] != 0) {
		posaow[posaov[playerid]] = 0;
	}
	matslvl[playerid] = 0;
	hSecenje[playerid] = 0;
	kamenklese[playerid] = 0;
	klesevrijeme[playerid] = 0;
	DrvosecaDuznost[playerid] = 0;
	PizzaDuznost[playerid] = 0;
	IdDrveta[playerid] = 0;
	DrvosecaDuznost[playerid] = 0;
	hSecenje[playerid] = 0;
	SpremanDaSece[playerid] = 0;
	drvoistovar[playerid] = 0;
	PizzaDuznost[playerid] = 0;
	pizzalvl[playerid] = 0;
	ostalopizza[playerid] = 0;
	randompizza[playerid] = 0;
	ribalvl[playerid] = 0;
	uhvatioriba[playerid] = 0;
	pareriba[playerid] = 0;
	ribav[playerid] = 0;
	mduty[playerid] = 0;
	gradnja[playerid] = 0;
	KamenDuznost[playerid] = 0;
	arhlvl[playerid] = 0;
	StopAudioStreamForPlayer(playerid);
	DestroyDynamicObject(dobjekt[playerid]);
	DestroyDynamicObject(dobjekt2[playerid]);
	DestroyDynamicObject(kamobjekat[playerid]);
	DestroyDynamicObject(Drvo[playerid]);
	DeletePlayer3DTextLabel(playerid, DrvoLabel[playerid]);
	//SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
	h_DisablePlayerCheckpoint(playerid);
	ResetPlayerWeaponsEx(playerid);
	kokicarlvl[playerid] = 0;
	sladoledlvl[playerid] = 0;
	DestroyDynamicObject(kokobj1[playerid]);
	DestroyDynamicObject(kokobj2[playerid]);
	DestroyDynamicObject(kokobj3[playerid]);
	DestroyDynamicObject(kokobj4[playerid]);
	DestroyDynamicObject(kokobj5[playerid]);
	DestroyDynamicObject(kokobj6[playerid]);
	DestroyDynamicObject(arhobj1[playerid]);
	DestroyDynamicObject(arhobj2[playerid]);
	DestroyDynamicObject(arhobj3[playerid]);
	printf("CRASH DEBBUG4 | %s",GetName(playerid));
	if(kokveh[playerid] != -1)
	{
	SetVehicleToRespawn_H(kokveh[playerid]);
	}
	new vv = GetPlayerVehicleID(playerid);
	if(vv >= pizza[0] && vv <= pizza[5])
	{
	//if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
	//{
	SetVehicleToRespawn_H(vv);
	SetVehicleHealth_H(vv, 999.99);
//	}
	}
	if(vv >= Drvoseca[1] && vv <= Drvoseca[6])
	{
//	if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
//	{
	SetVehicleToRespawn_H(vv);
	SetVehicleHealth_H(vv, 999.99);
	}
//	}
	if(vv >= kamenorezac[0] && vv <= kamenorezac[8])
	{
//	if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
//	{
	SetVehicleToRespawn_H(vv);
	SetVehicleHealth_H(vv, 999.99);
	}
//	}
	if(vv >= gradi[0] && vv <= gradi[7])
	{
//	if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
//	{
	SetVehicleToRespawn_H(vv);
	SetVehicleHealth_H(vv, 999.99);
	}
//	}
//
printf("CRASH DEBBUG5 | %s",GetName(playerid));
mre[playerid] = 1;
pint[playerid] = 0;
KillTimer(govornicatimer[playerid]);
kokicarlvl[playerid] = 0;
////////////////ADMIN DUTY///////////////////
if(aduty[playerid] >= 1) {
	aduty[playerid] = 0;
	SetPlayerColor(playerid,COLOR_GRAD2);
}
///////////////////KAMENOREZACX//////////////
kamenklese[playerid] = 0;
klesevrijeme[playerid] = 0;
KamenDuznost[playerid] = 0;
h_DisablePlayerCheckpoint(playerid);
PlayerTextDrawHide(playerid, klecanjetd[playerid]);
//////////////////ANTI FAKEKILL///////////
//////////////NESTO/////////////////////
printf("CRASH DEBBUG6 | %s",GetName(playerid));
mre[playerid] = 1;
pint[playerid] = 0;
SetPlayerVirtualWorld(playerid, 0);
///////////////IMANJE////////////////////
cpimanje[playerid] = 0;
///////////////////////ARHI///////////////
if(arhlvl[playerid] > 0)
{
arhlvl[playerid] = 0;
arhpare[playerid] = 0;
arhcar[playerid] = 0;
}
///////////////////DDUTY MIRICIJA////////
if(PlayerInfo[playerid][pDuty] == 1)
{
PlayerInfo[playerid][pDuty] = 0;
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
RemovePlayerAttachedObject(playerid, 7);
SetPlayerColor(playerid,COLOR_GRAD2);
SetPlayerArmour_H(playerid, 0);
}
//////////////RIBAR////////////////////////
uhvatioriba[playerid] = 0;
pareriba[playerid] = 0;
ribalvl[playerid] = 0;
ribav[playerid] = -1;
printf("CRASH DEBBUG7 | %s",GetName(playerid));
////////////////////KUGLE/////////////////////
if(drzikuglu[playerid] != -1)
{
new string[126];
	new kugla = drzikuglu[playerid];
	GetPlayerPos(playerid, X,Y,Z);
	ZK[kugla][kX] = X;
	ZK[kugla][kY] = Y;
	ZK[kugla][kZ] = Z-0.5;
	ZK[kugla][kP] = 1;
	KugleObj1[kugla] = CreateDynamicObject(19574, ZK[kugla][kX],ZK[kugla][kY],ZK[kugla][kZ]-0.3,   0.00000, 0.00000, 0.00000);
    SetDynamicObjectMaterial(KugleObj1[kugla], 0, 18031, "cj_exp", "mp_cloth_wall", 0xFFCC9F23);
	format(string,sizeof(string),"{F0F000}Zivkova Kugla #%d",kugla);
	kugletxt[kugla] = CreateDynamic3DTextLabel(string ,0x33CCFFAA,ZK[kugla][kX], ZK[kugla][kY], ZK[kugla][kZ]-0.3,5);
	//SacuvajKuglu(kugla);
    drzikuglu[playerid] = -1;
}
////////////////////GRADNJA///////////////////
gradnja[playerid] = 0;
//////////////////////ZONA////////////////////////////
if(zonatime[playerid] > 0)
{
	new id = zonaid[playerid];
	GangZoneStopFlashForAll(ZonaID[id]);
	PlayerTextDrawHide(playerid, klecanjetd[playerid]);
	zonaid[playerid] = -1;
	zonatime[playerid] = -1;
	zzauzima[playerid] = 0;
	KillTimer(zonatimer[playerid]);
	SCM(playerid,GRAD2,"Niste uspeli da zauzmete teritoriju, spreceni ste!");
}
printf("CRASH DEBBUG8 | %s",GetName(playerid));
////////////////////ORUZJE DROP//////////////////////
if(PlayerInfo[playerid][pAdmin] < 1) {
	if(PlayerInfo[playerid][pDuty] == 0 || DmIgrac[playerid] == 0) {
		for(new slot = 0; slot != 12; slot++) {
        	new wep, ammo;
        	GetPlayerWeaponData(playerid, slot, wep, ammo);
        	if(wep != 9 && DrvosecaDuznost[playerid] != 1) {
        		if(wep != 0 && ammo != 0) {
          			if(!IsACop(playerid)) {
            			GetPlayerPos(playerid, X, Y, Z);
            			DropGun(playerid, wep,ammo,X,Y,Z,GetPlayerVirtualWorld(playerid),GetPlayerInterior(playerid));
          			}
        		}
        	}
		}
	}
}
////////////////////ISTA ORGA KILL///////////////////
if(killerid != INVALID_PLAYER_ID)
{
new stringc[126];
new gunname[32];
GetWeaponName(reason,gunname,sizeof(gunname));
format(stringc,sizeof(stringc), "[ADMIN] Igrac %s ubio je igraca %s, oruzje: %s. /spec /checkweapons", GetName(killerid),GetName(playerid),gunname);
AdminPoruka(CRVENA, stringc);
}
printf("CRASH DEBBUG9 | %s",GetName(playerid));
if(killerid != INVALID_PLAYER_ID)
    {
if(PlayerInfo[killerid][pClan] > 0)
{
if(PlayerInfo[killerid][pClan] == PlayerInfo[playerid][pClan])
{
format(CmdString, 128, "{36A5BC}[ORGANIZACIJA] Clan organizacije %s je ubio clana organizacije %s.", GetName(killerid), GetName(playerid));
SendFamilyMessage(PlayerInfo[playerid][pClan],COLOR_LIGHTBLUE,CmdString);
}
}
}
//////////////////////SDUTY SKIINi///////////////
if(sduty[playerid] == 1)
{
sduty[playerid] = 0;
}
printf("CRASH DEBBUG10 | %s",GetName(playerid));
///////////////////////////////////////////////
    KillTimer(DragTimer[playerid]);
    SetPlayerVirtualWorld(playerid, 0);
    if(DrvosecaDuznost[playerid] > 0)
    {
    hSecenje[playerid] = 0;
    DrvosecaDuznost[playerid] = 0;
	}
    /////////BANKA KILL//////////////////////
    if(RobBank[playerid] == 1)
    {
    RobBank[playerid] = 0;
    PlayerTextDrawHide(playerid, robtd[playerid]);
    KillTimer(RobTimer[playerid]);
    RobPare[playerid] =0;
    }
    if(RobZlatara[playerid] == 1)
    {
    KillTimer(RobTimer[playerid]);
    PlayerTextDrawHide(playerid, klecanjetd[playerid]);
    RobZlatara[playerid] = 0;
    }
    ///////////DED MSG///////////////////////
    if(killerid != INVALID_PLAYER_ID)
    {
	    if(IsACop(killerid))
	    {
		    if(WantedLevel[playerid] > 0)
		    {
			    foreach(new i : Player)
			    {
				    if(IsACop(i))
				    {
					    new strall[126];
					    format(strall, sizeof(strall), "HQ: Svim jedinicama, policajac %s je obavio zadatak",GetName(killerid));
						SCM(i,PLAVA,strall);
						format(strall, sizeof(strall), "HQ: %s je sredjen, Ubijen",GetName(playerid));
						SCM(i,PLAVA,strall);
    				}
    			}
    		}
		    else
		    {
			    foreach(new i : Player)
			    {
				    if(IsACop(i))
				    {
					    new orgp[126];
					    format(orgp, sizeof(orgp), "{36A5BC}[ORGANIZACIJA] Policajac %s je ubio civila %s! Wanted level igraca: 0", GetName(killerid), GetName(playerid));
					    SCM(i,PLAVA,orgp);
    				}
    			}
    		}
    	}
	}
    if(hZavezan[playerid] == 1)
    {
    PlayerTextDrawHide(playerid,TieCrno[playerid]);
    hZavezan[playerid] = 0;
    }
    if(Prisustvuje[playerid] == true)
    {
    WantedLevel[playerid] = 0;
    UpdatePlayerWL(playerid);
    }
    if(eecp[playerid] == -1)
    {
    eecp[playerid] = 0;
    AntiCheatInfo[playerid][acACAllow][52] = true;
    WantedLevel[playerid] = 0;
    UpdatePlayerWL(playerid);
    }
    printf("CRASH DEBBUG11 | %s",GetName(playerid));
    ///////////////////////////WL//////////////////
    if(WantedLevel[playerid] >= 1)
    {
    ResetPlayerWeaponsEx(playerid);
    new novac = WantedLevel[playerid] * 200;
    GivePlayerMoneyEx(playerid, -novac);
    format(CmdString, 120, "Poginuli ste sa %d wanted levela, gubite $%d.",WantedLevel[playerid] ,novac);
    SCM(playerid,TAMNOCRVENA,CmdString);
    WantedLevel[playerid] = 0;
    }
    //////////////////////////////////////////////
    if(killerid != INVALID_PLAYER_ID)
    {
    if(eecp[playerid] == -1)
    {
    BolnicaSpawn[playerid] = 1;
    }
    }
    SpawnPlayer(playerid);
    SetPlayerSpawn(playerid);
    ////////////////////EVENT/////////////////
    PlayerInfo[playerid][pPridruzeneventu] = 0;
    DisablePlayerRaceCheckpoint(playerid);
    Prisustvuje[playerid] = false;
    ecp[playerid] = 0;
    eecp[playerid] = 0;
    AntiCheatInfo[playerid][acACAllow][52] = true;
    DmIgrac[playerid] = 0;
    printf("CRASH DEBBUG12 | %s",GetName(playerid));
    ///////////////////////////
    GetPlayerPos(playerid, X,Y,Z);
    SetPVarInt(playerid, "NoAB", 1);
	SetPVarFloat(playerid, "OldPosX", X);
    SetPVarFloat(playerid, "OldPosY", Y);
    SetPVarFloat(playerid, "OldPosZ", Z);
    //////////////////////////
    HealthSynced[playerid] = 0;
	PlayerInfo[playerid][pWC] = 0;
    PlayerInfo[playerid][pGlad] = 0;
    IgracSpawnan[playerid] = 1;
    if(DmIgrac[playerid] == 1)
    {
    DmIgraci --;
    DmIgrac[playerid] = 0;
    Prisustvuje[playerid] = false;
    return 1;
    }
    if(GetPlayerState(killerid) == 1 || GetPlayerState(killerid) == PLAYER_STATE_PASSENGER)
   {
    if(IsACop(killerid) || DmIgrac[killerid] > 0)
       { }
    else
   {
    PlayerInfo[killerid][pUbistva]++;
    PlayerInfo[playerid][pSmrti]++;
    PlayerInfo[killerid][pZlocin]++;
    WantedLevel[killerid] += 6;
    SetPlayerCriminal(killerid,255, "Ubistvo");
    UpdatePlayerWL(killerid);
    UpdatePlayerWL(playerid);
}
}
    TazerAcceso[playerid] = 0;
    if(killerid != INVALID_PLAYER_ID)
    {
    if(DrvosecaDuznost[killerid] == 1)
    {
    if(GetPlayerWeapon(killerid) == 9)
    {
    new djura = random(sizeof(gZatvorSpawn));
    SetPlayerPos_H(killerid, gZatvorSpawn[djura][0], gZatvorSpawn[djura][1], gZatvorSpawn[djura][2]);
    SetPlayerVirtualWorld(killerid, 1);
    PlayerInfo[killerid][pAlcatraz] = 3600;
    PlayerInfo[killerid][pSpawn] = 4;
    WantedLevel[killerid] = 0;
	UpdatePlayerWL(killerid);
    format(CmdString, 128, "{FFFFFF}Zatvoreni ste od strane Auto-Admina zbog ubistva igraca motornom testerom. Vreme: 60 Minuta");
    SCM(killerid,-1,CmdString);
    format(CmdString, 128, "{FF0000}[CENTRALNI ZATVOR] {FFFFFF}Igrac %s je zatvoren od strane Auto-Admina. {FF0000}[Vreme: 60 minuta]",GetName(killerid));
    SendClientMessageToAll(-1,CmdString);
    GivePlayerMoneyEx(killerid, -1000);
    SCM(killerid,NARANDZASTA,"Oduzeto vam je $1000 jer ste zatvoreni od strane Auto-Administratora");
    ResetPlayerWeaponsEx(killerid);
    SetPlayerSkin(killerid, PlayerInfo[killerid][pSkin]);
    }
    }
    }
    if(otok[playerid] > 0)
	{
	    SetPlayerCheckpoint(playerid, 463.2690,-1936.9260,7.2221,4.0);
	}
	if(stigaoo[playerid] == 1)
	{
	    otok[playerid] = 0;
	    stigaoo[playerid] = 0;
	    vozisebrodom[playerid] = 0;
	}
	vozisebrodom[playerid] = 0;
	DisablePlayerCheckpoint(playerid);
	printf("CRASH DEBBUG13 | %s",GetName(playerid));
	return 1;
}
Reply


Messages In This Thread
[REP++] Crashing when player kill player - by Dusan01 - 17.02.2016, 18:48
Re: [REP++] Crashing when player kill player - by iGetty - 17.02.2016, 20:19
Re: [REP++] Crashing when player kill player - by Sew_Sumi - 17.02.2016, 21:57
Re: [REP++] Crashing when player kill player - by Dusan01 - 18.02.2016, 06:48
Re: [REP++] Crashing when player kill player - by Dusan01 - 18.02.2016, 07:44
Re: [REP++] Crashing when player kill player - by xTURBOx - 18.02.2016, 07:57
Re: [REP++] Crashing when player kill player - by Amunra - 18.02.2016, 08:42
Re: [REP++] Crashing when player kill player - by Dusan01 - 18.02.2016, 09:03
Re: [REP++] Crashing when player kill player - by Sew_Sumi - 18.02.2016, 10:39

Forum Jump:


Users browsing this thread: 1 Guest(s)