AC - Negativity [Spigot 1.7+, Sponge! & BungeeCord] 1.3.1

It's an anti cheat !

  1. Elikill58
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    Source Code:
    https://github.com/Elikill58/Negativity
    Contributors:
    RedNesto
    Languages Supported:
    French, Portuguese, Norwegian, Russian, Chinese, German, Dutch and Swedish
    banniere_twitter_neg_3.png
    Please, use latest version !


    You need PacketGate on Sponge only

    - ForceField | KillAura
    - FastPlace
    - Speed | SpeedHack
    - AutoClick
    - Fly
    - AntiPotion | Zoot
    - AutoEat
    - AutoRegen | Regen
    - AntiKnockback | NoVelocity
    - Jesus | WaterWalk
    - NoFall
    - Blink
    - Spider
    - Sneak
    - FastBow | RapidBowShot
    - Scaffold
    - Step
    - NoSlowDown
    - FastLadders
    - Phase
    - AutoSteal
    - Edited Client | Cheat Engine

    - If you want to check a player:
    /negativity verif <player> [(optional) cheats, by default it's all cheats]

    - If you want to get some information about a player:
    /negativity <player>

    - If you want to report someone:
    /report <player> <reason>

    - If you want to do some mod thing (be invisible...):
    /mod

    - To ban people:
    /nban <player> <def(true/false) | time (ex: 2h5m)> <reason>
    - To unban people:
    /nunban <player>

    - To suspect a player:
    /suspect <message>

    [​IMG]
    [​IMG]

    Code (Text):

    ###################################################################
    #                                                                   #
    #                            Negativity                             #
    #                      AntiCheat by Elikill58                     #
    #                                                                     #
    #              If you have a problem or a suggestion,             #
    #                    You can contact me on:                       #
    #                  - Discord: @Elikill58#0743                     #
    #       - my Discord server: https://discord.gg/KHRVTX2           #
    #               - Mail: [email protected]                    #
    #                   - SpigotMC: Elikill58                         #
    #                  - Minecraft.fr: Elikill                        #
    #                                                                 #
    ###################################################################
    log_alerts: true
    tps_alert_stop: 19 # if you get less TPS then this value, all alert will be disabled
    # To enable or disable /report
    report_command: true
    # To enable or disable /nban /nunban
    ban_command: true
    unban_command: true
    # To enable or disable /suspect . Auto disable if the 'suspect.enabled' is on false.
    suspect_command: true
    Database:
      isActive: false
      # To get the information. We use the player uuid to get the information.
      # We get only what you write. We never add or remove something.
      # We don't save your private information about your database
      url: "127.0.0.1/myDb"
      user: root
      password: "myPassword"
      table_perm: "myTable"
      table_lang: "myTable"
      table_ban: "ban"
      column_perm: "rank"
      column_lang: "lang"
      saveInCache: false # To do less request to your database
    inventory:
      alerts:
        no_started_verif_cheat: false # Don't see if the player isn't analsye for this cheat
        only_cheat_active: true # The cheat with an active detection
      inv_freeze_active: true
    # Bypass when you add effects
    #
    items:
      #ITEM_NAME:
      # when: WHEN_DISABLE_DETECTION
      # cheats: CHEATS_DETECTION_DISABLED (it's the ID of the cheats like fly, speedhack)
      #
      # when available:
      # always : disable when the player get it in their hand
      # right_click : disale when the player right click
      # left_click : disale when the player left click
      #
      COMPASS:
        when: always
        cheats: speedhack,fly
    #
    # Configuration about the permissions (basic and custom)
    #
    Permissions:
      defaultActive: true
      #
      # Only if it's an integer.
      # It's if your rank system work with power.
      # For example: If a player have 50, and you write 40, he would can use it
      #
      canBeHigher: false
      # Use "," to split all possibilites of custom permission
      showAlert:
        default: "negativity.alert"
        custom: "MOD,ADMIN"
      verif:
        default: "negativity.verif"
        custom: "MOD,ADMIN"
      mod:
        default: "negativity.mod"
        custom: "MOD,ADMIN"
      manageCheat:
        default: "negativity.managecheat"
        custom: "MOD,ADMIN"
      report_wait:
        default: "negativity.reportwait"
        custom: ""
      # To bypass ban system
      notBanned:
        default: "negativity.notbanned"
        custom: "ADMIN"
      ban:
        default: "negativity.ban"
        custom: "MOD,ADMIN"
      bypass:
        active: false
        all:
          default: "negativity.bypass.all"
          custom: "ADMIN"
        forcefield:
          default: "negativity.bypass.forcefield"
          custom: "ADMIN"
        fastplace:
          default: "negativity.bypass.fastplace"
          custom: "ADMIN"
        speedhack:
          default: "negativity.bypass.speedhack"
          custom: "ADMIN"
        autoclick:
          default: "negativity.bypass.autoclick"
          custom: "ADMIN"
        fly:
          default: "negativity.bypass.fly"
          custom: "ADMIN"
        antipotion:
          default: "negativity.bypass.antipotion"
          custom: "ADMIN"
        autoeat:
          default: "negativity.bypass.autoeat"
          custom: "ADMIN"
        autoregen:
          default: "negativity.bypass.autoregen"
          custom: "ADMIN"
        antiknockback:
          default: "negativity.bypass.antiknockback"
          custom: "ADMIN"
        jesus:
          default: "negativity.bypass.jesus"
          custom: "ADMIN"
        nofall:
          default: "negativity.bypass.nofall"
          custom: "ADMIN"
        blink:
          default: "negativity.bypass.blink"
          custom: "ADMIN"
        spider:
          default: "negativity.bypass.spider"
          custom: "ADMIN"
        fastbow:
          default: "negativity.bypass.fastbow"
          custom: "ADMIN"
        scaffold:
          default: "negativity.bypass.scaffold"
          custom: "ADMIN"
        step:
          default: "negativity.bypass.step"
          custom: "ADMIN"
        noslowdown:
          default: "negativity.bypass.noslowdown"
          custom: "ADMIN"
        fastladders:
          default: "negativity.bypass.fastladders"
          custom: "ADMIN"
        phase:
          default: "negativity.bypass.phase"
          custom: "ADMIN"
        autosteal:
          default: "negativity.bypass.autosteal"
          custom: "ADMIN"
        edited_client:
          default: "negativity.bypass.edited_client"
          custom: "ADMIN"
    Translation:
      no_active_file_name: "messages.yml" # where are the messages if the translation are not active
      active: false # enable or disable the translation
      lang_available:
      - en_US
      - fr_FR
      - no_NO
      - pt_BR
      - ru_RU
      use_db: true # to get the lang
      default: en_US
    #
    # You can put this plugin on your Bungeecord/Waterfall !
    # Why ? You can know when a player hack even if you're not on the same spigot's server !
    #
    hasBungeecord: false
    # The time between 2 /report
    # in millisecondes
    time_between_report: 1000
    ban:
      active: true
      # If you want to destroy BDD line / File line
      destroy_when_unban: false
      reliability_need: 90
      alert_need: 5
      # How to calculate the time during the player will be banned
      # IN MILLISECONDES
      time:
        # %reliability% : reliability of last alert
        # %alert% : number of alert sent
        caculator: "360000000 + (%reliability% * 10 * %alert%)"
      def:
        # Number that you need to be ban definitly
        ban_time: 4
      # To save banned player on config file (/plugins/Negativity/dir)
      #
      file:
        isActive: false
        dir: "ban"
      db:
        isActive: false
        column:
          # For the UUID
          uuid: "uuid"
          # To know when the player is unbanned
          time: "time"
          # If the ban is def
          def: "def"
          # reason of ban
          reason: "reason"
          # All other column that it must be filled
          other:
            # Replace olders:
            # %uuid% : player's uuid
            # %name% : player's name
            # %reason% : ban reason
            # %gm% : player's gamemode
            # %walk_speed% : player's walk speed
            # %level% : player's level
            # %life% : player's life
            #
            name: "%name%"
    suspect:
      # Start cheat detection when people suspect a player
      #  Suspecting detected with the chat and with /report
      #
      enabled: true
      chat: true
      with_report_cmd: true
    cheats:
      #
      # WARNING: An auto verification of all cheat can be create some lag on your server.
      #
      # Forcefield is to hit more entity than real people in the same time and further
      forcefield:
        reach: 3.97 # In blocks !
        ping: 150
        exact_name: "ForceField"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Jesus is to walk on the water
      jesus:
        ping: 150
        exact_name: "Jesus"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AntiPotion remove bad potion effect
      antipotion:
        ping: 150
        exact_name: "AntiPotion"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # NoFall remove fall damage
      nofall:
        ping: 150
        exact_name: "NoFall"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AutoEat is to eat something instantly
      autoeat:
        ping: 150
        exact_name: "AutoEat"
        isActive: true
        reliability_alert: 60
        autoVerif: false
        setBack: false
        kick: false
        alert_to_kick: 5
      # FastPlace place a lot of block for you
      fastplace:
        ping: 150
        exact_name: "FastPlace"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # SpeedHack makes you run faster
      speedhack:
        ping: 150
        exact_name: "SpeedHack"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AutoClick is to get more click than real people
      autoclick:
        click_alert: 20
        ping: 150
        exact_name: "AutoClick"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Fly enable you to fly
      fly:
        ping: 150
        exact_name: "Fly"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AutoRegen help you to get your health
      autoregen:
        ping: 150
        exact_name: "AutoRegen"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AntiKnockback remove knockback effect
      antiknockback:
        ping: 150
        exact_name: "AntiKnockback"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Blink enable you to teleport by simulating lag
      blink:
        ping: 150
        exact_name: "Blink"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # FastBow shoot bow quicker
      fastbow:
        ping: 150
        exact_name: "FastBow"
        isActive: true
        reliability_alert: 60
        autoVerif: false
        setBack: false
        kick: false
        alert_to_kick: 5
      # Spider make you walk on the wall
      spider:
        ping: 150
        exact_name: "Spider"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Sneak make you sneaking but with basic speed
      sneak:
        ping: 150
        exact_name: "Sneak"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Scaffold place block under you
      scaffold:
        ping: 150
        exact_name: "Scaffold"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Step make you jump 2 blocks
      step:
        ping: 150
        exact_name: "Step"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # NoSlowDown remove slow down effects (like with soul sand)
      noslowdown:
        ping: 150
        exact_name: "NoSlowDown"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # FastLadders is to climb ladders quickler
      fastladders:
        ping: 150
        exact_name: "FastLadders"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # Phase is to glitch on block
      phase:
        ping: 150
        exact_name: "Phase"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AntoSteal help with inventory (Take verything ...)
      autosteal:
        ping: 150
        exact_name: "AutoSteal"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # AntoSteal help with inventory (Take verything ...)
      edited_client:
        ping: 150
        exact_name: "Edited Client"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5
      # For all cheats
      all:
        ping: 150
        exact_name: "All"
        isActive: true
        reliability_alert: 60
        autoVerif: true
        setBack: false
        kick: false
        alert_to_kick: 5

     

    Everything is editable !

    There are permissions for all cheat.
    The first line in config is the most important. There is: if you want to log alert, if you want to disable /report and the whole permission system (Default system used by PermissionEx, GroupManager ... and other) with SQL support.
    For permissions:
    • showAlert: with it, you can see all alerts
    • verif: with it, you can activate checks on all players
    • mod: with it, you can do /mod
    • manageCheat: with it, you have a cheat manager in /mod, to edit this config but in game
    • report_wait: with it, you don't need to wait between 2 reports
    • bypass: with one of them, you bypass the alert of the specified part (for example, with bypass.forcefield, you bypass all alerts of forcefield)
    There is a translation system !
    • You can disable it
    • Unlimited lang
    • Available with SQL
    • Default lang
    You can enable and disable Bungeecord (this is automatically enables if you put the plugin on bungeecord).

    Then, there is a big part for all cheats:
    • exact_name: The display name
    • isActive: if you want to disable it
    • reliability_alert: required reliability to see alert
    • autoVerif: if the plugin auto check if player is using this cheat
    • setBack: rollbacks the cheat action (for fly, it's to tp the player on ground)
    • kick: if we must kick the player
    • alert_to_kick: required alert to kick the player

    All player are a NegativityPlayer which extend of NegativityAccount.
    Code (Text):
    NegativityPlayer methods: (Must to be used with the NegativityPlayer of your platform like SpigotNegativityPlayer)
    NegativityAccount getAccount()
    Object getPlayer()
    boolean hasDefaultPermission(String s)
    int getWarn(Cheat c)
    double getLife()
    String getName()
    String getGameMode()
    float getWalkSpeed()
    int getLevel()
    void kickPlayer(String reason, String time, String by, boolean def)
    void banEffect()
    void startAnalyze(Cheat c)
    void startAllAnalyze()
    void updateMinerateInFile()
    boolean isOp()

    NegativityAccount methods:
    String getUUID()
    String getLang()
    UUID getPlayerId()
    void setLang(String lang)
    boolean hasGettedBan()
    void setGettedBan(boolean b)
    List<BanRequest> getBanRequest()
    void loadBanRequest()
    void loadBanRequest(boolean forceReload)
    void addBanRequest(BanRequest br)
    String getBanReason()
    String getBanTime()
    String getBanBy()
    boolean isBanDef()
    void removeBanRequest(BanRequest br)
     
    All cheats are extend "com.elikill58.negativity.universal.Cheat"

    You can get all cheats thanks to Cheat.values().
    If you want to get a special cheat, you can use :
    Optional<Cheat> Cheat.forKey(String key) : that must to be used with the cheat ID, like "FLY".
    Optional<Cheat> Cheat.fromString(String name) : You can use it with name or alias (ex: ff for Forcefield)

    Code (Text):
    // Methods in object Cheat

    String getKey()
    String getName()
    String[] getAliases()
    boolean isActive()
    boolean setActive(boolean active)
    boolean hasListener()
    boolean needPacket()
    Object getMaterial()
    int getReliabilityAlert()
    boolean isSetBack()
    boolean setBack(boolean back)
    int getAlertToKick()
    boolean allowKick()
    boolean setAllowKick(boolean allowKick)
    boolean isAutoVerif()
    boolean setAutoVerif(boolean auto)
    boolean isBlockedInFight()
    int getMaxAlertPing()
     
    There is other usefull things :

    Code (Text):
    Database.connect(String url, String username, String password) // you don't need to use this method if you have edit the config file
    Connection Database.getConnection()
    About permission :
    Code (Text):
    "com.elikill58.negativity.universal.permissions.Perm"

    boolean hasPerm(NegativityPlayer np, String perm)
    boolean hasPermLocal(NegativityPlayer np, String perm, Object value)
     
    About ban system :
    Code (Text):
    "com.elikill58.negativity.universal.ban.*"
    Ban:

    boolean isBanned(NegativityAccount np)
    void manageBan(Cheat cheat, NegativityPlayer np, int relia)
    boolean canConnect(NegativityAccount np)

    BanRequest:
    constructor BanRequest(NegativityAccount np, String banReason, long time, boolean def, BanType banType, String ac, String by, boolean isUnban)
    constructor BanRequest(NegativityAccount np, String line)

    NegativityAccount getNegativityPlayer()
    UUID getUUID()
    String getReason()
    boolean isDef()
    String getBy()
    String getCheatName()
    BanType getBanType()
    long getFullTime()
    boolean isUnban()
    void execute()
    void unban()
    String getWithReplaceOlder(String s)

    BanRequest.BanType is an enum
     
    Finally, there is utils methods in "com.elikill58.negativity.universal.utils.UniversalUtils"
    Code (Text):

    boolean isInteger(String s)
    boolean isLong(String s)
    boolean hasInternet()
    boolean isBoolean(String s)
    boolean getFromBoolean(String s)
    Os Os.getOs()
     

    All player have a NegativityPlayer. On spigot, it's SpigotNegativityPlayer :

    Code (Text):
    // static méthods :
    SpigotNegativityPlayer getNegativityPlayer(Player p)
    SpigotNegativityPlayer getNegativityPlayer(OfflinePlayer p)

    // methods of SpigotNegativityPlayer
    void initMods(Player p)
    void updateCheckMenu()
    getAllWarn(Cheat c) // current and saved warn
    void addWarn(Cheat c, int reliability)
    void setWarn(Cheat c, int cheats)
    void updateMinerateInFile()
    void clearPackets()
    void makeAppearEntities()
    void spawnRandom()
    void spawnRight();
    void spawnBehind();
    void spawnLeft()
    String getRandomFakePlayerName()
    void removeFakePlayer(FakePlayer fp)
    void logProof(String msg)
    void saveProof(boolean sendStats)
    void sendMessage(String msg, String... arg)
    void destroy(boolean isBan)
    boolean hasOtherThan(Location loc, Material m) // block of the specified type just around
    boolean hasOtherThanExtended(Location loc, Material m) // block of the specified type 2 blocks around
    boolean has(Location loc, Material... ms)
    void spawnCircle(double d, Location loc)
    boolean hasAntiKnockbackByPass()
    boolean isBlock(Material m)
    void fight()
    void unfight()

    FlyingReason :
    POTION, REGEN, EAT, BOW
    Cheat getCheat()

     
    SpigotNegativity static methods:
    Code (Text):

    boolean alertMod(ReportType type, Player p, Cheat c, int reliability, String proof) // return "true" if must cancel action
    boolean alertMod(ReportType type, Player p, Cheat c, int reliability, String proof, String hover_proof) // return "true" if must cancel action
    void sendMessage(Player p, String cheatName, String reliability, String ping, String hover) // a bungeecord message
    void sendReportMessage(Player p, String reportMsg)
    void logProof(SpigotNegativityPlayer np, ReportType type, Player p, Cheat c, int reliability,String proof, int ping)
     
    There is 3 Event when a player is cheating.
    Firstly, "PlayerCheatEvent" is called. You can only get information.
    Then, "PlayerCheatAlertEvent" is called. With it, you can get information about the cheat and the cheater and say if you want to cancel the alert.
    Lastly, "PlayerCheatKickEvent" is called. It's the same as PlayerCheatAlertEvent but with the kick of the player.
    For information: if in the config, there is that the kick is disabled, by default, if you don't interact with this event, the kick will not appear.
    All available method for theses event:
    Code (Text):
    // in PlayerCheatEvent

    Player getPlayer()
    int getReliability()
    Cheat getCheat()
    Code (Text):
    // in PlayerCheatAlertEvent

    Player getPlayer()
    int getReliability()
    Cheat getCheat()
    boolean isCancelled()
    void setCancelled(boolean cancel)
    boolean hasPermToBypass()
    boolean hasManyReliability()
    boolean isAlert()
    void setAlert(boolean alert)
     
    Code (Text):
    // in PlayerCheatEvent

    Player getPlayer()
    int getReliability()
    Cheat getCheat()
    boolean isCancelled()
    void setCancelled(boolean cancel)
     
    Code (Text):
    // in PlayerPacketsClearEvent

    Player getPlayer()
    SpigotNegativityPlayer getNegativityPlayer()
    HashMap<String, Integer> getPackets()
     
    Finally, there is utils methods in "com.elikill58.negativity.spigot.utils.Utils"
    Code (Text):

    int getMultipleOf(int i, int multiple, int more)
    String coloredMessage(String msg)
    List<String> coloredMessage(String... messages)
    ItemStack createItem(Material m, String name, String... lore)
    ItemStack createItem(Material m, String name, int quantite, String... lore)
    ItemStack createItem(Material m, String name, int amount, byte b, String... lore)
    List<Player> getOnlinePlayers()
    ItemStack createSkull(String name, int amount, String owner, String... lore)
    int getPing(Player p)
    Object getWorldServer(Location loc)
    int parseInPorcent(int i)
    int parseInPorcent(double i)
    void sendPacket(Player p, String packetdir, Class<?> type, Object send)
    void sendPacket(Player p, Object packet)
    Object getPlayerConnection(Player p)
    Class<?> getEnumPlayerInfoAction()
    Material getMaterialWith1_13_Compatibility(String before1_13, String after1_13)
    Effect getEffect(String effect)
    Optional<Cheat> getCheatFromName(String s)
    Optional<Cheat> getCheatFromItem(Material m)
    void sendUpdateMessageIfNeed(Player p)
    double getLastTPS()
    double[] getTPS()
    String getInventoryTitle(InventoryView inv)
    String getInventoryName(InventoryClickEvent e)

     

    With Sponge, it's a little bit different.

    The main difference is here. I'm using the system of Sponge, so:
    Code (Text):
    PlayerCheatEvent (AbstractEvent, TargetPlayerEvent)

    Cause getCause() // With: The plugin, and the player
    Player getTargetEntity()
    Cheat getCheat()
    int getReliability()

    ////////////////////////////////////

    PlayerCheatEvent.Alert (PlayerCheatEvent, Cancellable)

    boolean isCancelled()
    void setCancelled(boolean cancel)
    boolean isAlert()
    void setAlert(boolean alert)
    boolean hasManyReliability()
    boolean hasPermToBypass()

    (+ all PlayerCheatEvent method)

    ////////////////////////////////////////

    PlayerCheatEvent.Kick (PlayerCheatEvent, Cancellable)

    boolean isCancelled()
    void setCancelled(boolean cancel)

    (+ all PlayerCheatEvent method)

    ////////////////////////////////////////

    PlayerPacketsClearEvent

    Player getPlayer();
    SpongeNegativityPlayer getNegativityPlayer();

     
    I'm working on it everyday (When i have the time to) !​

    You can download the latest beta version but NOT SURE !! here (NO new beta)
    You have a suggestion ? A bug ? A question ? You can contact me via :
    • Private messages on this web site
    • The negativity twitter (account) : @elinegativity
    • My discord server : Join now
    • Mail: [email protected]
    • Discord: @Elikill58#0743
    • Privacy Policy (In writing, link not work) : English | Français
    Donations : (Thanks you <3)
    [​IMG]

    Download wall:

    100 : Thanks you ;)
    500 : :confused: Merci
    600 : :cool::cool: Gracias
    700 : :eek: Danke
    800 : Arigato :D
    900 : tack :)
    1000 : grazie :eek:
    1500 : Obrigado
    2000 : þakka þér
    2500 : cảm ơn bạn
    3000 : terima kasih
    3500 : Շնորհակալություն​
    4000: děkuji
    4500 : rahmat
    5000 : sağol
    5500 : σας ευχαριστώ
    6000 : 谢谢 :D
    6500 : спасибо :')
    7000 : شكرا
    7500 : kiitos
    8000 : takk
    8500 : mulțumesc
    9000 : təşəkkür edirəm
    9500 : eskerrik asko
    10000 : 고맙습니다
    15000 : siyabonga
    20000 : sağol
    25000 : tapadh leibh

    Special thanks to:
    - RedNesto for the help with English translation and development
    - jheyson for the help with Portuguese translation
    - SuchHero for the help with Norwegian translation
    - VidTu for the help with Russian translation
    - f0rb1d, SGYRE & 沐白Dust for the help with Chinese translation​
    - CodingAir for the help with German translation
    - DeveloperBoy for the help with Dutch translation
    - YungSloop for the help with Swedish translation
    - you for your translation too ? (Contact me)​

    Images

    1. tableau_negativity  3.png

Recent Reviews

  1. AqyaPlays
    AqyaPlays
    5/5,
    Version: 1.3.1
    very goopd anti cheat it is very well made and works most of the time. the gui is very cool and easy to work with
    1. Elikill58
      Author's Response
      Hello,
      Thanks you for your review ! I really like that you appreciate my plugin !
  2. MinecraftKid45
    MinecraftKid45
    5/5,
    Version: 1.3.1
    Awesome Anti-Cheat, only thing I would like to be added is a customizable ban command, I already have an automatic punishment system and would like to use it with this plugin. I honestly do not care if this gets added or not since the plugin is 100% free! Thank You!!
    1. Elikill58
      Author's Response
      Thanks you for your rating ! It's a good idea, i will try to add it !
  3. VidTu
    VidTu
    5/5,
    Version: 1.3.1
    Oooooooo, updated ac! Finally WG 1.14 support! Good! ;)
    80 charsssssssssssssssss
    1. Elikill58
      Author's Response
      Yes ! WorldGuard 1.14 is finally fixed, right ! enjoy !
  4. U-ENERGYoff
    U-ENERGYoff
    3/5,
    Version: 1.2.3
    It loads in Bungee but does not work. Or should I use it in both Bungee and Spigot?
    1. Elikill58
      Author's Response
      You need to put it on Spigot server. The bungeecord version is only to alert player on other spigot server (it detect nothing)
  5. Mr.Cloud
    Mr.Cloud
    5/5,
    Version: 1.2.3
    Good Anticheat! Detecting most Cheats! Friendly Owner and fast Support! Bugs are being fixed really fast!
    1. Elikill58
      Author's Response
      Hello, thanks you ! I really appreciate your review !
      I'm trying to fix all bugs as quickly as possible !
  6. Ganaray
    Ganaray
    4/5,
    Version: 1.2.2
    I have one problem. Random floating people randomly appear. Using the latest version.
    1. Elikill58
      Author's Response
      Hello, it's not a problem, it's fake player to prevent Forcefield
  7. adespawn
    adespawn
    4/5,
    Version: 1.2.2
    works good, but plugin can not detect jesus plugin, and speed haks with ~1.2 normal speed, wit higer ~>1.5 works fine
    1. Elikill58
      Author's Response
      Thanks you !
      wit higer ?
      Which hack was you using for Jesus ?
  8. howtoNhut
    howtoNhut
    4/5,
    Version: 1.2.2
    1. Elikill58
      Author's Response
      I'm looking for this error right now
  9. Tekhen
    Tekhen
    5/5,
    Version: 1.2.1
    Très bon anticheat ! Le développeur et vraiment parfait ! je recommande ce plugin ;)
    1. Elikill58
      Author's Response
      Merci beaucoup pour ton commentaire !
  10. xao69
    xao69
    5/5,
    Version: 1.2
    Thanks for the translation! This is important for many.
    It's time to evaluate your work. )
    1. Elikill58
      Author's Response
      Thanks you to your appreciation !
      What is the translation that you are using ?