[SAM] Gban Fix

13.02.2024 Устарело!!

Новая версия + мини дополнение тут:

Устарело!!

Сделал:

  1. Максимальное время бана будет такое как указанно в Sam.

  2. Теперь будет писаться полное время максимального бана.
    image

  3. Есть Перма бан нужно указать 0, 0mi и т.д.
    игрока кикнет и напишет
    image

  4. Бан не сетается на максимальный срок если он не прошёл.
    пример: Игрок получил бан на 1ч и вышел, зашёл через 59мин и ему снова нужно ждать 1 час.

  5. ХУД бана:
    image

  6. Бан в указанном вами типе:
    минуты=mi
    часы=h
    дни=d
    недели=w
    месяцы=mo

пример:

бан 2ч и 30минут
sam gban Kekors 2h30mi 3.4

бан 1 месяц 2 недели 3 дня 8 часов 34 минуты
sam gban Amogus 1mo2w3d8h34m 8.4

Вроде всё :smiley:

Если у вас уже стоял на сервере Gban удалите таблицу в sql. почему? я добавил в таблицу новый столбец.
либо добавте его сами.

13.02.2024 Устарело!!
gban.lua (21,5 КБ)

Новая версия + мини дополнение тут:

Я изменил таблицу банов, по этому тебе нужно её (удалить или изменить (если есть забанненые игроки )) хранится она в

Сервер\garrysmod\sv.db

Программма для открытия:
DB Browser (SQLite)
Пример:


image

image

IDEALAdmin а INTEGER заменить на TEXT
image

Добавил:

  1. Забаненый не сможет использовать SAM команды.

  2. Не сможет Включать Noclip (только если у вас, нет обхода хука)

  3. Забаненый не сможет получать, наносить урон (игрокам).

Можно добавить мут войса и чата при блокировке, и максимальное количество бана в минутах днях и т.д. для каждого ранга?

Мут войса и чата уже там есть, лимит бана настраивается в ранге, вот про это у меня написано.
Прежде чем писать проверить можно?

Добавил 4 Хука ‘PreGBanSam’ , ‘PostGBanSam’ | ‘PreUnGBanSam’ , ‘PostUnGBanSam’

PreGBanSam-вызывается до выдачи бана, если вернуть true бан будет прерван.

PostGBanSam-вызывается после выдачи бана, записи в sql.

аргументы у обоих хуков:

target- Если цель оффлайн, то вернёт не игрока а стимайди.
admin-Если бан был выдан не игроком то вернёт nil
table- таблица содержит:

  1. Время
  2. Причина

permaban-Если выдаётся перма то вернёт true иначе false.

PreUnGBanSam-вызывается до разбана, если вернуть true разбан будет прерван.

PostUnGBanSam-после разбана и удаления с sql.

аргументы:

target- Если цель оффлайн, то вернёт не игрока а стимайди.
admin-Если разбан был выдан не игроком то вернёт nil

image
Как поправить эту проблему с дб?(не могу изменить gban, Field6 INTEGER меняю на IDEALAdmin и TEXT, но не меняется)

Немного туплю, где поставить лимит бана, для каждого ранга.


image
image

Не работает, или я туплю. Поставил лимит для модуля gban. Но я могу банить на 1млрд лет. Хотя выдал админку. Лимит поставил 1h.

Я устал вам отвечать. Я сейчас всё проверил, у меня такой проблемы нет.

Так же, почему-то когда администратора забанили, он может сам себя разбанить…

у вас последняя версия?

Скачал модуль САМЫЙ последний.

у меня стоит там блокировка команд Sam , чата и т.д. Так же всё это проверил. вероятно проблемы у вас в сборке. Всё Я спать.

[adminmode] addons/adminmode/lua/sam/modules/gban.lua:143: Tried to use a NULL entity!

  1. SteamID - [C]:-1
  2. unknown - addons/adminmode/lua/sam/modules/gban.lua:143

где лежит таблица sql?

[adminmode] addons/adminmode/lua/sam/modules/gban.lua:519: attempt to call method ‘IsGBan’ (a nil value)

  1. v - addons/adminmode/lua/sam/modules/gban.lua:519
  2. Call - lua/includes/modules/hook.lua:96
    3. run_command - addons/adminmode/lua/sam/command/sv_command.lua:82
    4. unknown - addons/adminmode/lua/sam/command/sv_command.lua:173
    5. unknown - lua/includes/modules/concommand.lua:54

исправил ошибки.
Файл обновляю в первом сообщении.

Вот такая ошибка в консоле
[sam] addons/sam/lua/sam/modules/gban.lua:172: attempt to call method ‘sam_getrank’ (a nil value)

  1. GiveBanPlayer - addons/sam/lua/sam/modules/gban.lua:172
  2. on_execute - addons/sam/lua/sam/modules/gban.lua:606
    3. run_command - addons/sam/lua/sam/command/sv_command.lua:128
    4. unknown - addons/sam/lua/sam/command/sv_command.lua:172
    5. unknown - lua/includes/modules/concommand.lua:54