Ban System - v2.2.3

BanSystem

Ban plugin for Nukkit, many new features and code improvements.
Simple commands like: /tban, /tmute.

Author: LlamaDevelopmen
Maintainer Mundschutziii
License GNU General Public License v3.0
Source code GitHub. BanSystem
Issue Tracker Issues · llamadevelopment/BanSystem (github.com)
Compatiblity 1.4.0.0-PN-ALPHA.2
Requirements If using MySQL, you will need to download DBLib.

Note: I’m not a maintainer of the plugin but I can help if you have issues using it with PowerNukkit.


Many new features and code improvements!
Support for Nukkit 2.0 is available soon!

  • Download the latest version here: Download
  • Browse other versions of BanSystem here: Browse

Join our Discord:

d

  • If you have questions or problems with the plugin, write to us on Discord or Github!
  • You can get faster support on our Discord server! Just open a ticket and we will respond within a short time.

Features

  • Timed bans & mutes
  • Log data of bans, mutes and warnings
  • Change reason and time of running punishments
  • Cancel punishments
  • Warning system
  • MongoDB support
  • YAML support
  • MySql support
  • Everything is editable
  • API

Installation

  1. Download the .jar file.
  2. Paste the file into your plugin folder.
  3. If you want to use MySql, you have to install DBLib on your server.
  4. Start your server.
  5. And have fun using BanSystem.

Addons

  • BanSystem UI-Addon - Manage the BanSystem in a UI
  • BanSystem Discord-Addon - Get notifications of BanSystem in your Discord
  • BanSystem Duplicate Account Prevention-Addon - Get a player info and see wich duplicated accounts this player owns

Commands & Permissions

Command Usage Default Permission
ban /ban <Player> bansystem.command.ban
banlog /banlog <Player> bansystem.command.banlog
checkban /checkban <Player> bansystem.command.checkban
checkmute /checkmute <Player> bansystem.command.checkmute
clearbanlog /clearbanlog <Player> bansystem.command.clearbanlog
clearmutelog /clearmutelog <Player> bansystem.command.clearmutelog
clearwarnings /clearwarnings <Player> bansystem.command.clearwarnings
editban /editban <Player> reason <Reason>
/editban <Player> time <hours/days> <Time>
bansystem.command.editban
editmute /editmute <Player> reason <Reason>
/editmute <Player> time <hours/days> <Time>
bansystem.command.editmute
kick /kick <Player> <Reason> bansystem.command.kick
mute /mute <Player> <ID> bansystem.command.mute
mutelog /mutelog <Player> bansystem.command.mutelog
tempban /tempban <Player> <hours/days> <Time> bansystem.command.tempban
tempmute /tempmute <Player> <hours/days> <Time> bansystem.command.tempmute
unban /unban <Player> bansystem.command.unban
unmute /unmute <Player> bansystem.command.unmute
warn /warn <Player> <Reason> bansystem.command.warn
warnlog /warnlog <Player> bansystem.command.warnlog
deleteban /deleteban <ID> bansystem.command.deleteban
deletemute /deletemute <ID> bansystem.command.deletemute
deletewarn /deletewarn <ID> bansystem.command.deletewarn

All commands are editable: Permission, Usage, Command name and Command aliases.

Developer API


Maven


<repository>
    <id>lldv-repo</id>
    <url>http://system01.lldv.net:8082/artifactory/libs-snapshot</url>
</repository>

<dependency>
    <groupId>net.llamadevelopment.bansystem</groupId>
    <artifactId>BanSystemNK</artifactId>
    <version>2.2.3-20201220.081023-1</version>
</dependency>

API

import net.llamadevelopment.bansystem.components.api.BanSystemAPI;

public class Test {

    private Provider api = BanSystemAPI.getProvider();

    public void test() {
        BanSystemAPI.getProvider().getBan("testuser", ban -> {
            System.out.println("Player is banned for: " + ban.getReason());
        });
        
        BanSystemAPI.getProvider().unbanPlayer("testuser");
    }

}

Events

import cn.nukkit.event.EventHandler;
import cn.nukkit.event.Listener;
import net.llamadevelopment.bansystem.components.api.BanSystemAPI;
import net.llamadevelopment.bansystem.components.event.PlayerBanEvent;
import net.llamadevelopment.bansystem.components.event.PlayerUnbanEvent;

public class Test implements Listener {

    @EventHandler
    public void on(PlayerBanEvent event) {
        System.out.println("Player " + event.getBan().getPlayer() + " was banned for " + event.getBan().getReason() + "!");
    }

    @EventHandler
    public void on(PlayerUnbanEvent event) {
        System.out.println("Player " + event.getTarget() + " was unbanned!");
    }
    
}

Screenshots





YourKit

YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler,
YourKit .NET Profiler
and YourKit YouMonitor

2 Likes

Hey, thank you for sharing and providing support, I’ve added the links and images that were missing. The forums didn’t allowed in first instance because you are a new contributor, but that should not be an issue anymore when you rank up :slight_smile:

2 Likes