PDA

Просмотр полной версии : [Вопрос] Непонятная смерть при спавне



vovandolg
04.12.2015, 04:38
Почему при спавне игрока его что то убивает причем в логах кратко пишет без ошибок, вот такие смерти бывают:


[death] Mike_Catton died 255
[death] Mike_Catton died 54
255 чаще всего встречается, временем нету смертей, а так могут и появится непонятно что это античит или что то другое...

Osetin
04.12.2015, 15:56
Экстрасенсов тут нет, выкладывайте код.

vovandolg
04.12.2015, 20:31
Экстрасенсов тут нет, выкладывайте код.
Мод может имели ввиду вы?(Мод не буду, много своего накрутил там, шикарно всё построил)
Не знаю от чего умирает(проверял везде sethealt нулевых выдач нету)
Вот и задал вопрос потому как это во всех почти модах есть, может кто решал такую проблему или знает в чём трабла...

Sp1ke
05.12.2015, 00:20
Мод может имели ввиду вы?(Мод не буду, много своего накрутил там, шикарно всё построил)
Не знаю от чего умирает(проверял везде sethealt нулевых выдач нету)
Вот и задал вопрос потому как это во всех почти модах есть, может кто решал такую проблему или знает в чём трабла...

Код != мод.
Выложи паблик спавна + все стоки что есть в нем.

vovandolg
05.12.2015, 07:11
Выложи паблик спавна + все стоки что есть в нем.
Ну вот к примеру public OnPlayerSpawn(playerid):


SetPlayerHealthAC(playerid, 100);
StopAudioStreamForPlayer(playerid);
SetPVarInt(playerid,"K_Times",0);
TeleportTime[playerid] = 4;
AntiFakeKill[playerid] = true;
SPD(playerid,65535,DIALOG_STYLE_MSGBOX,"1","1","","");
if(PlayerInfo[playerid][pMember] > 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
if(PlayerInfo[playerid][pMember] <= 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
AntiDM[playerid] = 0; TogglePlayerControllable(playerid, 1);
SetPlayerSpawn(playerid);
if(PlayerInfo[playerid][jail] == Jailal)
{
SetPlayerPos(playerid, -3739.7273,1617.8615,5.3759);
SetPlayerSkin(playerid, 62);
SetPlayerHealthAC(playerid,50);
SetPlayerColor(playerid,COLOR_GOLD);
ResetPlayerWeapons(playerid);
}
TextDrawShowForPlayer(playerid,FPS[playerid]);

Вот stock SetPlayerSpawn(playerid)


if(gPlayerLogged[playerid] == 0) { SendClientMessage(playerid, COLOR_WHITE, "Необходимо авторизоваться!"); KickEx(playerid); return true; }
PlayerHealth[playerid] = 0;
chasherr[playerid] = 5;
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] > 0 && dostup[playerid] == false) { TogglePlayerControllable(playerid, 0); SPD(playerid,2934,DIALOG_STYLE_PASSWORD,"Админ авторизация","Введите пароль\nПароль должен состоять из латинских букв и цифр\nразмером от 3 до 4 символов\n\nЕсли вы забыли пароль от админки\n восстановление пароля в группе vk.com/ulti_rp","Вход","Отмена"); }
connecttime[playerid] = 0;
if(PlayerInfo[playerid][pWanted] > 6) PlayerInfo[playerid][pWanted] = 6;
if(PlayerInfo[playerid][pChar] == 0) PlayerInfo[playerid][pChar] = 230;
if(PlayerInfo[playerid][pModel] == 0) PlayerInfo[playerid][pModel] = 230;
if(PlayerInfo[playerid][pLeader] == 1 && PlayerInfo[playerid][pRank] != 15) PlayerInfo[playerid][pRank] = 15;
if(PlayerInfo[playerid][pLeader] == 2 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 3 && PlayerInfo[playerid][pRank] != 15) PlayerInfo[playerid][pRank] = 15;
if(PlayerInfo[playerid][pLeader] == 4 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 5 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 6 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 7 && PlayerInfo[playerid][pRank] != 6) PlayerInfo[playerid][pRank] = 6;
if(PlayerInfo[playerid][pLeader] == 8 && PlayerInfo[playerid][pRank] != 5) PlayerInfo[playerid][pRank] = 5;
if(PlayerInfo[playerid][pLeader] == 9 && PlayerInfo[playerid][pRank] != 13) PlayerInfo[playerid][pRank] = 13;
if(PlayerInfo[playerid][pLeader] == 10 && PlayerInfo[playerid][pRank] != 15) PlayerInfo[playerid][pRank] = 15;
if(PlayerInfo[playerid][pLeader] == 11 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 12 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 13 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 14 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 15 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 16 && PlayerInfo[playerid][pRank] != 13) PlayerInfo[playerid][pRank] = 13;
if(PlayerInfo[playerid][pLeader] == 17 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 18 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 19 && PlayerInfo[playerid][pRank] != 15) PlayerInfo[playerid][pRank] = 15;
if(PlayerInfo[playerid][pLeader] == 21 && PlayerInfo[playerid][pRank] != 15) PlayerInfo[playerid][pRank] = 15;
if(PlayerInfo[playerid][pLeader] == 23 && PlayerInfo[playerid][pRank] != 12) PlayerInfo[playerid][pRank] = 12;
if(PlayerInfo[playerid][pLeader] == 24 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 25 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 26 && PlayerInfo[playerid][pRank] != 10) PlayerInfo[playerid][pRank] = 10;
if(PlayerInfo[playerid][pLeader] == 27 && PlayerInfo[playerid][pRank] != 6) PlayerInfo[playerid][pRank] = 6;
if(PlayerInfo[playerid][pLeader] == 28 && PlayerInfo[playerid][pRank] != 6) PlayerInfo[playerid][pRank] = 6;
if(PlayerInfo[playerid][pLeader] == 29 && PlayerInfo[playerid][pRank] != 7) PlayerInfo[playerid][pRank] = 7;
if(PlayerInfo[playerid][pMuteTime] == 0 && PlayerInfo[playerid][pMuted] == 1) PlayerInfo[playerid][pMuteTime] = 5;
if (PlayerInfo[playerid][pWanted] >= 1)
{
SetPlayerWantedLevel(playerid,PlayerInfo[playerid][pWanted] );
WantedPoints[playerid]++;
}
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,990);
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,990);
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,990);
ResetPlayerWeapons(playerid);
SetPlayerHealthAC(playerid, 95);
SetPlayerWeapons(playerid);
KillTimer(STimer[playerid]);
TextDrawShowForPlayer(playerid,HealthBar[0]);
TextDrawShowForPlayer(playerid,Text:URL[playerid]);
TextDrawHideForPlayer(playerid,FuelShow[playerid]);
SetPlayerToTeamColor(playerid);
SetCameraBehindPlayer(playerid);
if(PlayerInfo[playerid][pTut] == 0)
{
SetPlayerInterior(playerid,0);
SetPlayerHealthAC(playerid, 100);
PlayerInfo[playerid][pInt] = 0;
SetPlayerFacingAngle(playerid, 0.0000);
SetPlayerCameraPos(playerid,1481.2197,-888.9575,124.5774);
SetPlayerCameraLookAt(playerid,1415.6792,-808.4996,81.5869);
SPD(playerid,4,DIALOG_STYLE_MSGBOX," ","{FFFFFF}Какого пола будет ваш персонаж:\n","Мужчина","Женщина");
TogglePlayerControllable(playerid, false);
}
if(PlayerInfo[playerid][pMember] > 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pModel]);
if(PlayerInfo[playerid][pMember] <= 0) SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
if(PlayerInfo[playerid][pExitTied] == 2 && PlayerInfo[playerid][pExitTiedNomer] == 1)
{

PlayerInfo[playerid][pMember] = 0;
PlayerInfo[playerid][pLeader] = 0;
PlayerInfo[playerid][pJob] = 0;
PlayerInfo[playerid][pWarns]++;
PlayerInfo[playerid][pExitTied] = 0;
PlayerInfo[playerid][pExitTiedNomer] = 0;
SendClientMessage(playerid,COLOR_LIGHTRED,"Вы получили Warn за двухкратный выход из игры при похищении.");
format(stringer, sizeof(stringer), "Игрок: %s[%d] получил Warn за двухкратный выход из игры при похищении",PlayerInfo[playerid][pNames],playerid);
SendAdminMessage(COLOR_GREY,stringer);
}
if(PlayerInfo[playerid][pExitTied] == 1 && PlayerInfo[playerid][pExitTiedNomer] == 1)
{
SendClientMessage(playerid,COLOR_LIGHTRED,"Вы вышли из игры при похищении, вы были наказаны тюрьмой на 10 минут.");
format(stringer, sizeof(stringer), "Игрок: %s[%d] посажен на 10 минут в тюрьму за выход при похищении.",PlayerInfo[playerid][pNames],playerid);
SendAdminMessage(COLOR_GREY,stringer);
SetPlayerInterior(playerid, 0);
PlayerInfo[playerid][pInt] = 0;
SetPPos(playerid,219.5400,109.9767,999.0156);
SetPlayerFacingAngle(playerid, 1.0160);
PlayerInfo[playerid][pJailed] = 1;
PlayerInfo[playerid][pWanted] = 0;
PlayerInfo[playerid][pJailTime] = 600;
PlayerInfo[playerid][pExitTiedNomer] = 0;
WantedPoints[playerid] = 0;
WantedPoints[playerid]--;
PlayerInfo[playerid][pMestoJail] = 1;
SetPlayerWantedLevel(playerid, 0);
WantedLevel[playerid] = 0;
}
if(PlayerInfo[playerid][pJailed] == 1)
{
if(PlayerInfo[playerid][pMestoJail] == 1)
{
SetPlayerInterior(playerid, 0);
PlayerInfo[playerid][pInt] = 0;
SetPPos(playerid,1558.5890,-1664.0460,16.1855);
SetPlayerFacingAngle(playerid, 221.9564);
return true;
}
if(PlayerInfo[playerid][pMestoJail] == 2)
{
SetPlayerInterior(playerid, 10);
PlayerInfo[playerid][pInt] = 10;
SetPPos(playerid,219.5400,109.9767,999.0156);
SetPlayerFacingAngle(playerid, 1.0000);
return true;
}
if(PlayerInfo[playerid][pMestoJail] == 3)
{
SetPlayerInterior(playerid, 3);
PlayerInfo[playerid][pInt] = 3;
SetPPos(playerid,198.3642,161.8103,1003.0300);
SetPlayerFacingAngle(playerid, 1.0000);
return true;
}
}
else if(PlayerInfo[playerid][pJailed] == 4)
{
SetPlayerInterior(playerid, 0);
PlayerInfo[playerid][pInt] = 0;
SetPPos(playerid,5508.3706,1244.7594,23.1886);
SetPlayerSkin(playerid, 62);
return true;
}
if(PlayerInfo[playerid][pHospital] == 1)
{
SetPlayerHealthAC(playerid,95);
SetPlayerFacingAngle(playerid, 90);
SetPlayerInterior(playerid,15);
SetPPos(playerid,374.6952,-29.9434,1076.4651);
PlayerInfo[playerid][pInt] = 15;
SetPlayerVirtualWorld(playerid,4);
SendClientMessage(playerid,COLOR_WHITE,"Вам придется пройти курс лечения или вылечиться у медика. Встаньте на значок сердечка, чтобы начать процедуру.");
return true;
}
if(PlayerInfo[playerid][pIzol] > 0)
{
SetPlayerHealthAC(playerid,50);
SetPlayerFacingAngle(playerid, 270);
SetPlayerInterior(playerid,15);
SetPPos(playerid,352.9648,-38.8893,1076.4651);
PlayerInfo[playerid][pInt] = 15;
SetPlayerVirtualWorld(playerid,4);
return true;
}
SetPlayerVirtualWorld(playerid,0);
if(PlayerInfo[playerid][pPhousekey] != 255)
{
if(SpawnChange[playerid] == 1)
{
new house = PlayerInfo[playerid][pPhousekey];
SetPlayerInterior(playerid,HouseInfo[house][hInt]);
SetPPos(playerid, HouseInfo[house][hExitx], HouseInfo[house][hExity],HouseInfo[house][hExitz]); // Warp the player
PlayerInfo[playerid][pLocal] = house;
PlayerInfo[playerid][pInt] = HouseInfo[house][hInt];
SetPlayerVirtualWorld(playerid, house+50);
return true;
}
}
switch(PlayerInfo[playerid][pMember])
{
case 2:
{
SetPlayerInterior(playerid, 0);
PlayerInfo[playerid][pInt] = 0;
SetPPos(playerid, -1748.6860, 968.6474, 1038.9189);
SetPlayerFacingAngle(playerid, 180.5557);
zakonn++;
return true;
}

A N D R E Y
07.12.2015, 19:33
Возьмите за правило, когда пишете мод - подключать плагин CrashDetect http://pro-pawn.ru/showthread.php?2991-CrashDetect&highlight=CrashDetect.
Судя по коду, у вас РЛС, поэтому проблему попробуйте поискать не в спавне и не в смерти.

vovandolg
11.12.2015, 06:39
Возьмите за правило, когда пишете мод - подключать плагин CrashDetect
Стоит у меня этот плагин и самый первый стоит при чём, не знаю даже чем он поможет далее....
РЛС не РЛС но есть моды написанные другими писаками в которые я заходил и там такая же проблема, эту мелочь просто не кто не замечает вот и не лезут разбираться...
(попробовать античит на хп отрубить может в нём трабла... других вариантов не нахожу)

vlad125051
11.12.2015, 22:39
AntiFakeKill[playerid] = true;

Попробуйте убрать данную функцию