Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин [ADMN] CustomBans v2.3 Система банов с поддержкой MySQL и SQLite [1.8-1.10]

Обновлять-ли CustomBans!?


  • Опрос закрыт .
CustomBans [v1.3]
Лёгкая система банов.
​
Информация:
Данный плагин хорошая замена плагина Essentials (я имею ввиду баны). Плагин очень лёгкий в настройке.

Особенности:
•
Настройка сообщений при бане/разбане.
• Можно выбирать хранения банов в базах MySQL и SQLite
• Если игрок оффлайн, но он OP или имеет право "cbans.shield" то его плагин не будет банить. (То есть, плагин может проверить игрока на OP или право "cbans.shield" если его нет в онлайне).

API:
Для просмотра всех методов стоит написать CustomBansAPI.<метод>
JavaScript:
*name - ник игрока (тип String)
* expires - время для временного бана/мута
Достать expires можно так:
long expires  = Util.getTime(args) в методе onCommand().
*banner - ник админа который выдал бан.
Достаётся:
Или p.getName() или sender.getName().
CustomBansAPI.getReason(String name) - получить причину бана игрока name.
CustomBansAPI.unban(String name) - разбанить игрока name.
CustomBansAPI.ban(String name, String reason, String banner) - забанить игрока name с причиной reason.
CustomBansAPI.tempban(String name, String reason, String banner, long expires) - временно забанить игрока name на expires.
CustomBansAPI.mute(String name, String reason, String banner) - выдать мут игроку name с причиной reason
CustomBansAPI.unmute(String name) - забрать мут у игрока name
CustomBansAPI.setWhitelisted(String name, boolean reason) - добавить в whitelist игрока name, значение boolean ставим на true, если хотите убрать с whitelist - false
CustomBansAPI.reloadPlugin - перезагрузка плагина.

Команды:

- /banip [ник] [причина] - забанить IP адрес игрока (право - "custombans.banip")
- /unbanip [ник или адрес] - разбанить IP адрес игрока (право - "custombans.unbanip")
- /baninfo [ник] - получение информации о бане игрока (право - "custombans.baninfo")
- /ban [ник] [причина] - забанить определённого игрока (право - "custombans.ban").
- /unban [ник] - разбанить игрока (право - "custombans.unban").
- /kick [ник] [причина] - кикнуть игрока (право - "custombans.kick")
- /mute [ник] [причина] - заблокировать чат игрока (право - "custombans.mute")
- /unmute [ник] - разблокировать чат игроку (право - "custombans.unmute")
- /tempban [ник] [цифра] [year, week, sec, min] [причина] - временный бан игрока (право - 'custombans.tempban")
- /tempmute [ник] [цифр] [year, wek, sec, min] [причина] - временный мут игрока (право - "custombans.tempmute")
- /cb reload - перезагрузка базы данных и сообщений (право - "custombans.cbcmd")
- /cb whitelist - список игроков с защитой от бана (право - "custombans.cbcmd")
- /cb banlimit/mutelimit - посмотреть список лимитов банов/мутов
- Защита от ban/tempban/mute/tempmute - "custombans.shield".

Лог изменений:
Код:
[27.03.16] v0.1 - Релиз плагина (находим баги).
[27.03.16] v0.2 - Добавление команд :
- /mute /unmute /kick /cbans deletemutes /cbans mutelist /tempmute (отдельное спасибо Slavik123123123)
- обновлён GitHub
- добавлена поддержка Java 1.7
- добавлены список команд в config.yml, которые не могут писать игроки во время мута
[28.03.16] v0.3 - Добавлена команда /baninv [ник] (право - "cbans.baninv")
[29.03.16] v.0.4 - Теперь команды можно вводить через консоль.
[1.04.16] Добавлена поддержка Java 1.7, оптимизация кода.
[02.04.16] v0.6 - Исправление мелких багов.
[04.04.16] v0.7 - Добавлена поддержка MySQL, убраны на время команды /tempban и /tempmute
[04.04.16] v0.8 - Добавлена команда /warn, исправление ошибки YAML.
[07.04.16] v1.0 (перепрыгнул :D) - Глобальное обновление плагина.
• Убрана YAML система
• Команды /tempban и /tempmute вновь работают!
• Добавлена поддержка SQLite и MySQL (на выбор)
• Фикс популярных багов
• Оптимизация кода
• Создан отдельный файл для собщений "messages.yml"
• Убрана команда /warn
[07.04.16] v1.1 - Добавление команд /banip /unbanip /baninfo
[13.04.16] v1.2 - Добавлены лимиты на временные баны/муты и приоритеты для PEX-групп
[15.04.16] v1.3 - Добавлена API для разработчиков.

Исходный код:
[ТЫК]

Если нашли баг, просьба написать мне.
Консоль:
Код:
[16:39:20] [Server thread/WARN]: java.sql.SQLException: Parameter index out of range (5 > number of parameters, which is 4).
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3709)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3693)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setString(PreparedStatement.java:4544)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setObject(PreparedStatement.java:3948)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.BufferStatement.prepareStatement(BufferStatement.java:23)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.MySQLCore.queue(MySQLCore.java:71)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.Database.execute(Database.java:62)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.managers.BanManager.tempmute(BanManager.java:479)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.commands.TempMuteCommand.onCommand(TempMuteCommand.java:49)
[16:39:20] [Server thread/WARN]:     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
[16:39:20] [Server thread/WARN]:     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140)
[16:39:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:625)
[16:39:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchServerCommand(CraftServer.java:611)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.DedicatedServer.aM(DedicatedServer.java:320)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:285)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:609)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:517)
[16:39:20] [Server thread/WARN]:     at java.lang.Thread.run(Thread.java:745)
Через игру:
Код:
[16:38:53] [Server thread/INFO]: Kelatyh issued server command: /tempmute Sonicxd2 2 min test
[16:38:53] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'tempmute' in plugin CustomBans v1.1
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:625) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PlayerConnection.handleCommand(PlayerConnection.java:1058) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:919) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(SourceFile:37) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(SourceFile:9) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_72]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_72]
    at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:656) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:284) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:609) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:517) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_72]
Caused by: java.lang.NumberFormatException: null
    at java.lang.Long.parseLong(Long.java:552) ~[?:1.8.0_72]
    at java.lang.Long.parseLong(Long.java:631) ~[?:1.8.0_72]
    at me.itzrex.custombans.commands.TempMuteCommand.onCommand(TempMuteCommand.java:61) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    ... 14 more
 
Забанить игрока по IP не выходит, если его нет на сервере. Предлагаю брать IP с Essentials, AuthMe или из другого плагина, который сохраняет IP игрока
 
Забанить игрока по IP не выходит, если его нет на сервере. Предлагаю брать IP с Essentials, AuthMe или из другого плагина, который сохраняет IP игрока
На сколько я знаю если банить ип по нику. то он берется с базы(ips)
 
Консоль:
Код:
[16:39:20] [Server thread/WARN]: java.sql.SQLException: Parameter index out of range (5 > number of parameters, which is 4).
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3709)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3693)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setString(PreparedStatement.java:4544)
[16:39:20] [Server thread/WARN]:     at com.mysql.jdbc.PreparedStatement.setObject(PreparedStatement.java:3948)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.BufferStatement.prepareStatement(BufferStatement.java:23)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.MySQLCore.queue(MySQLCore.java:71)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.db.Database.execute(Database.java:62)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.managers.BanManager.tempmute(BanManager.java:479)
[16:39:20] [Server thread/WARN]:     at me.itzrex.custombans.commands.TempMuteCommand.onCommand(TempMuteCommand.java:49)
[16:39:20] [Server thread/WARN]:     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
[16:39:20] [Server thread/WARN]:     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140)
[16:39:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:625)
[16:39:20] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchServerCommand(CraftServer.java:611)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.DedicatedServer.aM(DedicatedServer.java:320)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:285)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:609)
[16:39:20] [Server thread/WARN]:     at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:517)
[16:39:20] [Server thread/WARN]:     at java.lang.Thread.run(Thread.java:745)
Через игру:
Код:
[16:38:53] [Server thread/INFO]: Kelatyh issued server command: /tempmute Sonicxd2 2 min test
[16:38:53] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'tempmute' in plugin CustomBans v1.1
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:140) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:625) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PlayerConnection.handleCommand(PlayerConnection.java:1058) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PlayerConnection.a(PlayerConnection.java:919) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(SourceFile:37) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketPlayInChat.a(SourceFile:9) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.PacketHandleTask.run(SourceFile:13) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_72]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_72]
    at net.minecraft.server.v1_8_R1.MinecraftServer.z(MinecraftServer.java:656) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:284) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:609) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:517) [craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_72]
Caused by: java.lang.NumberFormatException: null
    at java.lang.Long.parseLong(Long.java:552) ~[?:1.8.0_72]
    at java.lang.Long.parseLong(Long.java:631) ~[?:1.8.0_72]
    at me.itzrex.custombans.commands.TempMuteCommand.onCommand(TempMuteCommand.java:61) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit-1.8-R0.1-SNAPSHOT-latest.jar:git-Bukkit-33d5de3]
    ... 14 more
:(
 
Нате.
После того, как этот пул реквест будет принят, минимальная версия сервера будет 1.8. (Некоторые могут добавить Apache Commons в classpath или jar файл ядра, если без этого плагина они жить не могут на < 1.8)
https://github.com/itzRex/CustomBans/pull/15
нене. 1.7.10 надо бы.
 
Как это настроить? Пишет "Для вашей группы не настроен лмит" как настроить, вроде настроил ну хз
 
moder 20
nmoder 15
admin 100
nmoder не может забанить/замутить moder так как у него больше приоритет и так далее
А скажите пожалуйста, всё ли я правильно сделал?
Код:
#Ограничение времени для временного бана
#1 минута = 1; 10 минут = 10; и так далее.
#ОБЯЗЯТЕЛЬНО цифры писать в кавычках
bans:
  player: '180'
  vip: '180'
  creative: '180'
  premium: '180'
  emerald: '180'
  oper: '180'
  mod: '180'
  helper: '180'
  yt: '180'
  sozd: '180'

#Ограничение времени для временного мута
#1 минута = 1; 10 минут = 10; и так далее.
#ОБЯЗЯТЕЛЬНО цифры писать в кавычках
mutes:
  player: '30'
  vip: '30'
  creative: '30'
  premium: '30'
  emerald: '30'
  oper: '30'
  mod: '30'
  helper: '30'
  yt: '30'
  sozd: '30'

#Приоритеты
#Тут можно без кавычек
priorities:
  player: 10
  vip: 20
  creative: 30
  premium: 40
  emerald: 50
  oper: 60
  mod: 70
  helper: 80
  yt: 90
  sozd: 100

Но всё же пишет "Для вашей группы не настрен лимит"
 

Поделиться этой страницей

Назад
Верх