Защита сервера от Bonny Hop

Тема в разделе "Counter-Strike: Source", создана пользователем StreeTT, 8 ноя 2013.

  1. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Добрый всем вечер,подскажите пожалуйста,есть ли реально работающая защита от Bunny hop'а (Распрыжки на сервере). Если кто обладает информацией,поделитесь,буду благодарен !
     
    Последнее редактирование: 8 ноя 2013
  2. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
  3. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    У меня стоит этот Анти-Чит но не особо спасает (Серве Зомби),модуль стоит smac_autotrigger.smx "SMAC AutoTrigger Detector" (0.8.5.0) by SMAC Development Team"

    SourceMod Anti-Cheat v0.8.5.0 Моя версия
     
  4. ALЬTAIR

    ALЬTAIR

    Сообщения:
    245
    Симпатии:
    102
    Настрой этот модуль чтобы при обнаружении банил.
     
  5. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    smac_autotrigger_ban "1"
     
  6. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    ++, надоели распрыжки на сервере,всех не перебанить и никак не запретить..
     
  7. ALЬTAIR

    ALЬTAIR

    Сообщения:
    245
    Симпатии:
    102
    Самый лучший способ защиты это - Контроль Админов!
     
    StreeTT нравится это.
  8. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Наполнить сервер Админами - не выход. Всем не запретишь.. Так можно без онлайна остаться) Может кто еще владеет информацией как запретить использование Бонни Хопа
     
  9. flinkboy

    flinkboy

    Сообщения:
    49
    Симпатии:
    16
    Anti-bhop не пробовал поставить?Он после 2 прыжка не дает возможность распрыгаться и тормозит сильно игрока.
     
    StreeTT нравится это.
  10. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Написано что только оповещает Админов,визуально я сам вижу кто его использует. Просто хотелось бы ограничить это для всех.

    Описание:
    Данный плагин призван оповещать администраторов о возможном использовании игроками bunny hop скриптов
     
  11. Konstantin

    Konstantin

    Сообщения:
    1.789
    Симпатии:
    767
    Серый™ нравится это.
  12. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Поставил - ужас. Ограничивает высоту прыжка,люди как прыгали так и прыгают. (Удалил)
     
  13. zig_ro

    zig_ro Скриптер :)

    Сообщения:
    16
    Симпатии:
    2
    StreeTT нравится это.
  14. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Поставил,попробую - отпишусь ! Спасибо !
    С этим плагином значительно лучше ! Но.. обнаружил ошибки в Логах..и их много :(

    Пришлось удалить плагин..
     
    Последнее редактирование: 10 ноя 2013
  15. OffsprinG

    OffsprinG

    Сообщения:
    59
    Симпатии:
    16
    Все что тебе предложили - это хорошие плагины, но лично мое мнение, возможно тебе это поможет, лучший античит от бхоппа Macrodox.
    Его минусы:
    - Бан выдается не моментально, а лишь после смены карты.
    Плюсы:
    - Защищает сервер не только от AutoTrigger, а и от макросов на бхоп.
    - Ведется отдельный лог, где будет указан интервал нажатия прыжка. Если знать что и как - можно понять какой вид бхопа игрок использовал.

    Макросы используют большое количество игроков, у которых имеется мышь с скрипт редактором (пример: X7 Oscar Mouse Script Editor)
    Решай.
     
  16. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.970
    Симпатии:
    2.976
    Ну как сказать...

    при каждом прыжке
    PHP:
    public Event_PlayerJump(Handle:event, const String:name[], bool:dontBroadcast)
    {
        new 
    client GetClientOfUserId(GetEventInt(event"userid"));
        
    afAvgJumps[client] = ( afAvgJumps[client] * 9.0 float(aiJumps[client]) ) / 10.0;
        
        
    decl Float:vec_vel[3];
        
    GetEntPropVector(clientProp_Data"m_vecVelocity"vec_vel);
        
    vec_vel[2] = 0.0;
        new 
    Float:speed GetVectorLength(vec_vel);
        
    afAvgSpeed[client] = (afAvgSpeed[client] * 9.0 speed) / 10.0;
        
        
    aaiLastJumps[client][aiLastPos[client]] = aiJumps[client];
        
    aiLastPos[client]++;
        if (
    aiLastPos[client] == 30)
        {
            
    aiLastPos[client] = 0;
        }
        
        if (
    afAvgJumps[client] > 15.0)
        {
            if ((
    aiPatternhits[client] > 0) && (aiJumps[client] == aiPattern[client]))
            {
                
    aiPatternhits[client]++;
                if ((
    aiPatternhits[client] > 15) && (!bBanFlagged[client]))
                {
                    
    BanDelayed(client"pat1");
                    
    bBanFlagged[client] = true;
                }
            }
            else if ((
    aiPatternhits[client] > 0) && (aiJumps[client] != aiPattern[client]))
            {
                
    aiPatternhits[client] -= 2;
            }
            else
            {
                
    aiPattern[client] = aiJumps[client];
                
    aiPatternhits[client] = 2;
            }
            
        }
        else if(
    aiJumps[client] > 1)
        {
            
    aiAutojumps[client] = 0;
        }
        else if((
    afAvgJumps[client] <1.1) && (!bBanFlagged[client]))
        {    
            
    bSurfCheck[client] = true;
            if (
    aiIgnoreCount[client])
            {
                
    aiIgnoreCount[client]--;
            }
            if (
    speed 350 && aiIgnoreCount[client] == 0)
            {
                
    aiAutojumps[client]++;
                if (
    aiAutojumps[client] >= 20)
                {
                    
    BanDelayed(client"hax1");
                }
            }
            else if (
    aiAutojumps[client])
            {
                
    aiAutojumps[client]--;
            }
            
        } 

        
    aiJumps[client] = 0;
        new 
    Float:tempvec[3];
        
    tempvec avLastPos[client];
        
    GetEntPropVector(clientProp_Send"m_vecOrigin"avLastPos[client]);
        
        new 
    Float:len GetVectorDistance(avLastPos[client], tempvectrue);
        if (
    len 30.0)
        {   
            
    aiIgnoreCount[client] = 2;
        }
        
        if (
    afAvgPerfJumps[client] >= 0.94 && !bBanFlagged[client])
        {
            
    BanDelayed(client"hax2");
        }
        
    }
    к тому же
    PHP:
    public OnGameFrame()
    {
        if (
    iTickCount 1*MaxClients)
        {
            
    iTickCount 1;
        }
        else
        {
            if (
    iTickCount == 0)
            {
                new 
    index iTickCount 1;
                if (
    bSurfCheck[index] && IsClientInGame(index) && IsPlayerAlive(index))
                {    
                    
    GetEntPropVector(indexProp_Data"m_vecVelocity"avVEL[index]);
                    if (
    avVEL[index][2] < -290)
                    {
                        
    aiIgnoreCount[index] = 2;
                    }
                    
                }
            }
            
    iTickCount++;
        }
    }
    и еще +
    PHP:
    public Action:OnPlayerRunCmd(client, &buttons, &impulseFloat:vel[3], Float:angles[3], &weapon)
    {
        if(
    IsPlayerAlive(client))
        {
            static 
    bool:bHoldingJump[MAXPLAYERS 1];
            static 
    bLastOnGround[MAXPLAYERS 1];
            if(
    buttons IN_JUMP)
            {
                if(!
    bHoldingJump[client])
                {
                    
    bHoldingJump[client] = true;//started pressing +jump
                    
    aiJumps[client]++;
                    if (
    bLastOnGround[client] && (GetEntityFlags(client) & FL_ONGROUND))
                    {
                        
    afAvgPerfJumps[client] = ( afAvgPerfJumps[client] * 9.0 ) / 10.0;
                       
                    }
                    else if (!
    bLastOnGround[client] && (GetEntityFlags(client) & FL_ONGROUND))
                    {
                        
    afAvgPerfJumps[client] = ( afAvgPerfJumps[client] * 9.0 ) / 10.0;
                    }
                }
            }
            else if(
    bHoldingJump[client]) 
            {
                
    bHoldingJump[client] = false;//released (-jump)
                
            
    }
            
    bLastOnGround[client] = GetEntityFlags(client) & FL_ONGROUND;

            if ((
    buttons IN_LEFT) || (buttons IN_RIGHT))
            {
                
    ForcePlayerSuicide(client);
            }
           

            
        }
        
        return 
    Plugin_Continue;
    }
     
  17. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.970
    Симпатии:
    2.976
    czar45, ну тебе решать, поставь, посмотри.
     
  18. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Спасибо за предложение,но мне нужно что бы просто ограничивался распрыг, плагин Bunnystopper v.1.0.1 работает но слишком много от него ошибок в консоли :( Удалил его.. Проблема Актуальна..
     
  19. Sam_Fisher

    Sam_Fisher

    Сообщения:
    703
    Симпатии:
    202
    конкретизировать надо.... что за ошибки-то?
     
  20. StreeTT

    StreeTT :)

    Сообщения:
    97
    Симпатии:
    8
    Знаю что надо,но погоречился удалил эрор логи вчера.. Поставил плагин,буду ошибки - сразу скину.

    Добавлено через 22 часа 23 минуты
    Вот пошли ошибки...
    L 11/11/2013 - 12:16:08: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:08: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:08: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
    L 11/11/2013 - 12:16:08: [SM] Native "SetEntPropFloat" reported: Entity 3 (3) is invalid
    L 11/11/2013 - 12:16:08: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:08: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:08: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
    L 11/11/2013 - 12:16:09: [SM] Native "SetEntPropFloat" reported: Entity 3 (3) is invalid
    L 11/11/2013 - 12:16:09: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:09: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:09: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
    L 11/11/2013 - 12:16:09: [SM] Native "SetEntPropFloat" reported: Entity 3 (3) is invalid
    L 11/11/2013 - 12:16:09: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:09: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:09: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
    L 11/11/2013 - 12:16:09: [SM] Native "SetEntPropFloat" reported: Entity 3 (3) is invalid
    L 11/11/2013 - 12:16:09: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:09: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:09: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
    L 11/11/2013 - 12:16:09: [SM] Native "SetEntPropFloat" reported: Entity 3 (3) is invalid
    L 11/11/2013 - 12:16:09: [SM] Displaying call stack trace for plugin "bunnystopper.smx":
    L 11/11/2013 - 12:16:09: [SM] [0] Line 297, /home/groups/sourcemod/compiler/include/entity_prop_stocks.inc::SetEntityGravity()
    L 11/11/2013 - 12:16:09: [SM] [1] Line 80, /home/groups/alliedmodders/forums/files/4/7/2/7/0/36533.attach::Timer_Bunnyhop_Detect()
     
    Последнее редактирование: 11 ноя 2013