[LITE] Анти-Реконнект

[LITE] Анти-Реконнект 2021-09-13

dvernoff

Добрая душа
Сообщения
638
Реакции
591
  • Автор ресурса
  • #1
authtern добавил(а) новый ресурс:

[LITE] Анти-Реконнект - Защита от игроков которые перезаходят на сервер для воскрешения

[LITE] Анти-Реконнект — лёгкая защита против игроков которые перезаходят на сервер чтобы воскреситься,
при дисконнекте плагин записывает игрока в список и если игрок перезаходит и воскрешается находясь в списке он умирает.
Список игроков очищается при смене карты и начала нового раунда.

Узнать больше об этом ресурсе...
 

L1MONENKO

Добрая душа
Сообщения
655
Реакции
600
А в чем проблема сделать адекватный авто-респавн?
 

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260

dvernoff

Добрая душа
Сообщения
638
Реакции
591
  • Автор ресурса
  • #4
А в чем проблема сделать адекватный авто-респавн?
Если бы, давно была такая проблема и не только у меня, из всех решений нашёл только это. Уже давно валяется плагин, выложил :с
Может лучше блокировать воскрешение?
Насколько помню, не блокируется. Поэтому такой метод :D
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
Ничего не забыл?
C-подобный:
public void OnClientDisconnect(int i) {
    char steamid[256];
    GetClientAuthId(i, AuthId_Steam2, steamid, sizeof(steamid));
    if (FindStringInArray(players_list, steamid) == -1)
    PushArrayString(players_list, steamid);
}
 

dvernoff

Добрая душа
Сообщения
638
Реакции
591
  • Автор ресурса
  • #6
Ничего не забыл?
C-подобный:
public void OnClientDisconnect(int i) {
    char steamid[256];
    GetClientAuthId(i, AuthId_Steam2, steamid, sizeof(steamid));
    if (FindStringInArray(players_list, steamid) == -1)
    PushArrayString(players_list, steamid);
}
Что же я мог забыть? 🧐
Смотрю, ничего не вижу.
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
@authtern, я тоже ничего не вижу, а там должна быть следующая строка функции.
Или ещё 4 пробела в начале следующей строки.
Сообщения автоматически склеены:

Вообще я бы вот так сделал:
C-подобный:
#pragma semicolon 1
#pragma newdecls required

#include <cstrike>
#include <sdkhooks>
#include <sdktools_functions>

ArrayList alPlayers;

public void OnPluginStart()
{
    alPlayers = CreateArray();
    for(int i = 1; i <= MaxClients; i++) if(IsClientInGame(i)) OnClientPutInServer(i);
}

public void OnClientPutInServer(int client)
{
    if(!IsFakeClient(client)) SDKHook(client, SDKHook_SpawnPost, OnSpawn);    // нас боты не интересуют
}

public void OnSpawn(int client)
{
    int id;
    if(!alPlayers.Length || GetClientTeam(client) < 2 || IsPlayerAlive(client)  // если массив пуст, игрок зашёл за наблюдателей, заспавнился после того как выжил в прошлом раунде
    || (id = alPlayers.FindValue(GetSteamAccountID(client))) == -1) return;    // или его SteamID  отсутствует в массиве, то игнорируем его

    ForcePlayerSuicide(client);
    PrintToChatAll("\x01Игрок \x04%N \x01был убит за попытку респавна реконнектом к серверу.", client);
    alPlayers.Erase(id); // удаляем запись, т.к. она больше не пригодится
}

public void OnClientDisconnect(int client)
{
    if(!IsFakeClient(client)) alPlayers.Push(GetSteamAccountID(client));
}

public Action CS_OnTerminateRound(float& delay, CSRoundEndReason& reason)
{
    OnMapEnd();
}

public void OnMapEnd()
{
    alPlayers.Clear();
}
 
Последнее редактирование:

dvernoff

Добрая душа
Сообщения
638
Реакции
591
  • Автор ресурса
  • #8
authtern обновил(а) ресурс [LITE] Анти-Реконнект новой записью:

AntiSliv — 2.0

  • Добавлен файл перевода
  • Добавлен конфиг
  • Добавлено логирование
  • Добавлены флаги для иммунитета
  • Добавлена возможность отключить работу плагина в начале раунда

Узнать больше об этом обновлении...
 

Rimmer

Помогаю новичкам / Переводчик / Тестер / Заказчик
Сообщения
1,368
Реакции
753
Что мне делать?
У меня все флаги заняты и дают свои пречендалы, так что не вариант VIP игрокам выдавать FLAG Любой.

Можно ли сделать VIP Иммунитет по группам? 🤡
 

dvernoff

Добрая душа
Сообщения
638
Реакции
591
  • Автор ресурса
  • #10
Что мне делать?
У меня все флаги заняты и дают свои пречендалы, так что не вариант VIP игрокам выдавать FLAG Любой.

Можно ли сделать VIP Иммунитет по группам? 🤡
Попробуй эту версию для иммунитета по вип группам, в groups.ini

"antireconnect" "1"
 

Вложения

  • AntiReconnect2.smx
    5.6 КБ · Просмотры: 3

Romanov

Участник
Сообщения
404
Реакции
40
css ob
 

Вложения

  • Screenshot_8.png
    Screenshot_8.png
    6.2 КБ · Просмотры: 36

SLAME

Флуд/Оффтоп
Сообщения
351
Реакции
222
в CSS:OB насколько я помню, нет эвента round_prestart
Сообщения автоматически склеены:

И да, если что плагин нерабочий
L 10/18/2021 - 13:49:49: SourceMod error session started
L 10/18/2021 - 13:49:49: Info (map "awp_courtyard_light") (file "/game/cstrike/addons/sourcemod/logs/errors_20211018.log")
L 10/18/2021 - 13:49:49: [SM] Exception reported: Game event "round_prestart" does not exist
L 10/18/2021 - 13:49:49: [SM] Blaming: AntiReconnect2.smx
L 10/18/2021 - 13:49:49: [SM] Call stack trace:
L 10/18/2021 - 13:49:49: [SM] [0] HookEvent
L 10/18/2021 - 13:49:49: [SM] [1] Line 3, c:\Users\autht\Desktop\AntiReconnect2\addons\sourcemod\scripting\AR2/events.sp::OPG_Events
L 10/18/2021 - 13:49:49: [SM] [2] Line 26, c:\Users\autht\Desktop\AntiReconnect2\addons\sourcemod\scripting\AntiReconnect2.sp::OnPluginStart
 
Последнее редактирование:

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
в CSS:OB насколько я помню, нет эвента round_prestart
Сообщения автоматически склеены:

И да, если что плагин нерабочий
L 10/18/2021 - 13:49:49: SourceMod error session started
L 10/18/2021 - 13:49:49: Info (map "awp_courtyard_light") (file "/game/cstrike/addons/sourcemod/logs/errors_20211018.log")
L 10/18/2021 - 13:49:49: [SM] Exception reported: Game event "round_prestart" does not exist
L 10/18/2021 - 13:49:49: [SM] Blaming: AntiReconnect2.smx
L 10/18/2021 - 13:49:49: [SM] Call stack trace:
L 10/18/2021 - 13:49:49: [SM] [0] HookEvent
L 10/18/2021 - 13:49:49: [SM] [1] Line 3, c:\Users\autht\Desktop\AntiReconnect2\addons\sourcemod\scripting\AR2/events.sp::OPG_Events
L 10/18/2021 - 13:49:49: [SM] [2] Line 26, c:\Users\autht\Desktop\AntiReconnect2\addons\sourcemod\scripting\AntiReconnect2.sp::OnPluginStart
Нет в ксс, в го есть
 

google>

oldgamers
Сообщения
373
Реакции
210
mp_join_grace_time 5 // Время в секундах после начала раунда, до истечения которых игрок может присоединиться к игре
 
Сверху Снизу