[CS: Source] Требуется плагин (если не сложно, бесплатно)

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
47
Реакции
3
Вообщем он бы пригодился не только мне, но и всем админам своих серверов по борьбе с читерами.
Система следующая:
1) Если в течение некоторого времени на сервер зашел человек с одним ip, но разными steamid (99% читер) даётся бан по ip.
2) Если в течение некоторого времени после бана по ip (например 1.1.1.1) зашел человек с другим ip типа 1.1.1.x дается авто бан по no-steam-bans addons kac.
При такой системе даже админы не нужны, достаточно votebana ))
 

DarklSide

Участник
Сообщения
931
Реакции
468
PHP:
public Action:OnBanClient(client, time, flags, const String:reason[], const String:kick_message[], const String:command[])
{
    if (StrEqual(command, "sm_ban") || StrEqual(command, "sm_addban") || StrEqual(command, "pv") || StrEqual(command, "players vote") || StrEqual(command, "KAC") || StrEqual(command, "SMAC"))
    {
        decl String:sIP[17];
        GetClientIP(client, sIP, sizeof(sIP));
        new Handle:pack = INVALID_HANDLE;
        CreateDataTimer(2.0, tBan, pack, TIMER_FLAG_NO_MAPCHANGE | TIMER_DATA_HNDL_CLOSE);
        WritePackCell(pack, time);
        WritePackString(pack, sIP);
        WritePackString(pack, kick_message);
    }
    return Plugin_Continue;
}
public Action:tBan(Handle:timer, Handle:pack)
{
    ResetPack(pack);
    decl String:sIP[17], String:kick_message[PLATFORM_MAX_PATH];
    new time = ReadPackCell(pack);
    ReadPackString(pack, sIP, sizeof(sIP));
    ReadPackString(pack, kick_message, sizeof(kick_message));
    BanIdentity(sIP, time > 4321 || time == 0 ? 4320:time, BANFLAG_IP, kick_message);
}
 
Последнее редактирование:

DarklSide

Участник
Сообщения
931
Реакции
468
Банит ip забаненого с помощью админа или посредством voteban'a, или античита - со сроком время бана (не больше трех суток, или если насегда то на 3 дня).

P.S.: update ->
PHP:
BanIdentity(sIP, time > 4321 || time == 0 ? 4320:time, BANFLAG_IP, kick_message);
 
Последнее редактирование:
Сообщения
47
Реакции
3

Вложения

  • basebans.smx
    14.8 КБ · Просмотры: 3
  • basebans.sp
    19.5 КБ · Просмотры: 11

DarklSide

Участник
Сообщения
931
Реакции
468

Вложения

  • bansip.smx
    3.4 КБ · Просмотры: 6
  • bansip.sp
    960 байт · Просмотры: 15
Последнее редактирование:

DarklSide

Участник
Сообщения
931
Реакции
468
a. Перезайти при voteban'a - заблокированому.
b. playersvotes.sp ->
PHP:
// Now perform the ban itself.
if (g_hVoteBanSb == INVALID_HANDLE)
{
    BanClient(nClientId, GetConVarInt(g_hVoteBanTime), nBanFlags, sReason, sReason, "pv");
    //BanIdentity (sIdent, GetConVarInt(g_hVoteBanTime), nBanFlags, sReason, "players vote");
}
else
{
    if (nClientId > 0)
    {
        // User is connected now.
        BanClient(nClientId, GetConVarInt(g_hVoteBanTime), nBanFlags, sReason, sReason, "pv");
        //ServerCommand ("sm_ban #%d %d \"%s\"", nUserId, GetConVarInt(g_hVoteBanTime), sReason);
    }
    else
    {
        if (nBanFlags == BANFLAG_AUTHID)
        {
            // Ident is a steam ID.
            BanClient(nClientId, GetConVarInt(g_hVoteBanTime), nBanFlags, sReason, sReason, "pv");
            //ServerCommand ("sm_addban %d %s \"%s\"", GetConVarInt(g_hVoteBanTime), sIdent, sReason);
        }
        else
        {
            // Ident is an IP.
            BanClient(nClientId, GetConVarInt(g_hVoteBanTime), nBanFlags, sReason, sReason, "pv");
            //ServerCommand ("sm_banip %s %d \"%s\"", sIdent, GetConVarInt(g_hVoteBanTime), sReason);
        }
    }
}
PHP:
StrEqual(command, "PVOTES")
->
PHP:
StrEqual(command, "pv")
 

Source_Hack

Участник
Сообщения
65
Реакции
7
Я бы не использовал такой плагин, так как у некоторый игроков как и у меня айпи меняеться с каждым подключение интернета.
 
Сообщения
47
Реакции
3
Source_Hack, именно для этого мне нужен плагин
2) Если в течение некоторого времени после бана по ip (например 1.1.1.1) зашел человек с другим ip типа 1.1.1.x дается авто бан по no-steam-bans addons kac.

Добавлено через 1 час 30 минут
DarklSide, все сделал, все работает, но при бане серв подлагивает, раньше такого небыло, как исправить ?
 
Последнее редактирование:

Source_Hack

Участник
Сообщения
65
Реакции
7
Алексей Дубравин, А сразу банить по стиму не как? давно уже забыли про айпи баны!
 

dadich

Участник
Сообщения
1
Реакции
0
Есть ли изменения добавок для предотвращения паровой ID :ban:
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу