[Анти-чит]Анти-Крэш вылетов - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: [CM]OlegEhtler, Getbackthere, Phoenixxx_Czar  
Форум » Pawno программирование SAMP » Античиты » [Анти-чит]Анти-Крэш вылетов
[Анти-чит]Анти-Крэш вылетов
ExPRO Дата: Суббота, 29.12.2012, 21:39 | Сообщение # 1
Боец
Сообщений: 181
Статус: Offline
Всех приветствую, достался мне краш от 0,3д по баловался и хватит..
многие сервера по страдали ( прошу прощения )
и так решения этой проблемы у меня вышло в одну строчку...

1 Вариант (Тупо обламывает Крашера)
Код
public OnVehicleMod(playerid,vehicleid,componentid)
{
RemoveVehicleComponent(vehicleid,componentid);
return 0;
}

2. Вариант кикаем.
Код
public OnVehicleMod(playerid,vehicleid, componentid){if(GetPlayerInterior(playerid) == 0 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER){Kick(playerid);}return 1;}


Причина вылетов была:

Вы заходите на сервер..
садитесь в 2ух дверную тачку, например инфернус ( от него больше вылетов)
и приватный соб создает левые Спойлеры, юбки, бампера и т.д ( ну многие знают что они не ставятся ( ошибаетесь ) их тупо не видно!
и просто остается воспользоватся тп к игроку и хватит, что бы весь сервер вылетел.

===========================================

а так же есть и другой краш ну его про фиксил Владокс.
Ко всем глобалаьным new:
Код
static const MaxPassengers[27] =  
{
     0x10331113, 0x11311131, 0x11331313, 0x80133301,
     0x1381F110, 0x10311103, 0x10001F10, 0x11113311,
     0x13113311, 0x31101100, 0x30001301, 0x11031311,
     0x11111331, 0x10013111, 0x01131100, 0x11111110,
     0x11100031, 0x11130221, 0x33113311, 0x11111101,
     0x33101133, 0x101001F0, 0x03133111, 0xFF11113F,
     0x13330111, 0xFF131111, 0x0000FF3F
};

и в OnPlayerStateChange:
Код
if(newstate == PLAYER_STATE_DRIVER)
{
     new model = GetPlayerVehicleSeat(playerid);
     if(model != 128)
     {
     if(!model)
     {
         model = GetVehicleModel(GetPlayerVehicleID(playerid));
         if(!(400 <= model <= 611) || MaxPassengers[model - 400 >>> 3] >>> ((model - 400 & 7) << 2) & 0xF == 15) return Kick(playerid);
     }
     else return Kick(playerid);
     }
}
else if(newstate == PLAYER_STATE_PASSENGER)
{
     new model = GetVehicleModel(GetPlayerVehicleID(playerid));
     if(400 <= model <= 611)
     {
     model -= 400;
     new seat = GetPlayerVehicleSeat(playerid);
     if(seat != 128)
     {
         model = (MaxPassengers[model >>> 3] >>> ((model & 7) << 2)) & 0xF;
         if(!model || model == 15) return Kick(playerid);
         else if(!(0 < seat <= model)) return Kick(playerid);
     }
     else return Kick(playerid);
     }
}

Описания этого краша:
Этот краш так же создает вылеты сервера ( Но только другим способом )
Пример использования этого краша..
Чувак подсаживается к вам в транспорт и сажает вас на 5 место...
происходит вылет...
1.
Убирает флуд смены мест
Код
public OnPlayerStateChange(playerid, newstate, oldstate)
{
     if((newstate == 2 && oldstate == 3) || (newstate == 3 && oldstate == 2)) return Kick(playerid);
     return 1;
}

2.
Не пускает больше 2х соединений на сервер с одного IP (привет создателям RakSAMP Bot)
Код
public OnPlayerConnect(playerid)
{
     new ip[2][16];
     GetPlayerIp(playerid,ip[0],16);
     for(new i, m = GetMaxPlayers(), x; i != m; i++)
     {
         if(!IsPlayerConnected(i) || i == playerid) continue;
         GetPlayerIp(i,ip[1],16);
         if(!strcmp(ip[0],ip[1],true)) x++;
         if(x > 2) return Kick(i);
     }
     return 1;
}

3.
Убирает краш сервера путем флуда в киллчат
Код
public OnPlayerSpawn(playerid)
{
     SetPVarInt(playerid,"K_Times",0);
     return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
     SetPVarInt(playerid,"K_Times",GetPVarInt(playerid,"K_Times") + 1);
     if(GetPVarInt(playerid,"K_Times") > 1) return Kick(playerid);
     return 1;
}

Код
убирает баг подмены диалогов через ArtMoney
//в начало после инклудов (обязательно!!!)
SPSD(playerid, dialogid, style, caption[], info[], button1[], button2[])
{
     SetPVarInt(playerid,"DialogID",dialogid);
     return ShowPlayerDialog(playerid,dialogid,style,caption,info,button1,button2);
}

#define ShowPlayerDialog SPSD

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
     if(GetPVarInt(playerid,"DialogID") != dialogid) return Kick(playerid);
     return 0;
}

public OnPlayerConnect(playerid)
{
     SetPVarInt(playerid,"DialogID",-1);
     return 1;
}

еперь на вашем сервере не будет вылетов...

Защита от соб от сайта CheatMaster

Защита от чита вылета из тачки
Например: Если Установлен собейт от CheatMaster то когда не срабатывает функция RemovePlayerFromVehicle т.е не выкидывает из транспорта
и так преступим исправлению этого чита.
И так ко всем new добавляем

Код
new anticheat;


Создаем паблик
Код
forward AntiCheat(playerid);
public AntiCheat(playerid)
{
if(IsPlayerInAnyVehicle(playerid) && GetPVarInt(playerid,"Remove")==1) SetPVarInt(playerid,"Remove",0),Kick(playerid),KillTimer(anticheat); //Если игрок в транспорте то Кикаем
else if(!IsPlayerInAnyVehicle(playerid) && GetPVarInt(playerid,"Remove")==1) SetPVarInt(playerid,"Remove",0),KillTimer(anticheat); //А если нет, то просто Онулируем  !
}
// ===== и в конец мода
stock RemoveFromVehicle(playerid)
{
SetPVarInt(playerid,"Remove",1);  //Присваиваем один
RemovePlayerFromVehicle(playerid); //Выкидываем из транспорта
anticheat = SetTimerEx("AntiCheat",2000,0,"i",playerid); //Запускаем таймер
return 1;
}

Ну вроде бы и все smile
Авторы: BJIADOKC And AnGeL
Автор темы: ExPRO для www.cheat-master.ru
Кому не жалко давайте + biggrin


>>> My sa:mp server 176.32.39.43:7777 <<<
Хмель Дата: Суббота, 29.12.2012, 21:45 | Сообщение # 2
Боец
Сообщений: 282
Статус: Offline
Ctrl+C CTRL+V же, Тык и Тык (Не реклама)

Сообщение отредактировал xemyjib94 - Суббота, 29.12.2012, 21:48
ExPRO Дата: Суббота, 29.12.2012, 22:00 | Сообщение # 3
Боец
Сообщений: 181
Статус: Offline
Цитата (xemyjib94)
Ctrl+C CTRL+V же, Тык и Тык (Не реклама)

Цитата (xemyjib94)
Авторы: BJIADOKC And AnGeL Автор темы: ExPRO для www.cheat-master.ru

ок?


>>> My sa:mp server 176.32.39.43:7777 <<<
Голубь Дата: Понедельник, 31.12.2012, 16:04 | Сообщение # 4
Авторитет
Сообщений: 2133
Статус: Offline
бред, есть другой крашер

двач
https://vk.com/povargek
ExPRO Дата: Среда, 14.05.2014, 15:11 | Сообщение # 5
Боец
Сообщений: 181
Статус: Offline
Цитата (Голубь)
бред, есть другой крашер

Никто не сомневается happy

Добавлено (07.04.2013, 19:43)
---------------------------------------------
up

Добавлено (14.05.2014, 15:11)
---------------------------------------------
Подниму.


>>> My sa:mp server 176.32.39.43:7777 <<<
[WS]Grenhelgets Дата: Понедельник, 01.12.2014, 17:39 | Сообщение # 6
Боец
Статус: Offline
Добавь в скайп nicelse.ws предложение есть.
Форум » Pawno программирование SAMP » Античиты » [Анти-чит]Анти-Крэш вылетов
  • Страница 1 из 1
  • 1
Поиск:
Статистика Форума
Лучшие пользователи
Admin [39113]

GеNius [7209]

[CM]Russel [5557]

kenlo763 [4952]

[CM]AGRESSOR [4639]

Snake_Firm [4452]

Сэс [4416]

Artem_Buero [4223]

[CM]Durman [3204]

[CM]Рафаэль [3080]

iMaddy [2855]

sky_Woker [2854]

getrekt [2745]

Новые пользователи
stephensh5 [12:00]

calliesv7 [06:11]

louqm16 [22:14]

artushak [16:32]

Kingpolker [15:42]

leeyv11 [15:12]

Trappa17 [01:00]

Djamalchik [16:40]

ajeense [14:24]

654470559 [08:55]

Newtone [03:01]

godspeed [21:31]

herminiadb10 [13:43]