Hawk Anticheat (MC 1.7.10 & 1.8.8) BETA 2008

A free anticheat for legacy versions of Spigot.

  1. Islandscout
    Native Minecraft Version:
    Legacy (< 1.13)
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    Source Code:

    Hawk does not and will never support Minecraft versions 1.9+

    ---> I'm on a hiatus right now, and I probably won't be working on Hawk until the beginning of May. The amount of coursework in school this semester is incredible, and right now I'm focusing on that over Hawk. Sorry for the inconvenience <---

    Demonstration video:

    This video is outdated. In the future, a new promotional video showcasing the rewritten version of Hawk will replace this video.

    Questions, support, bug reporting, and discussion:
    If you have any questions or if you stumble across something that doesn't seem right, please let me know! :D I encourage you to PM me, talk in the discussion thread, or join the Discord server by clicking the logo below.

    What is Hawk Anti-Cheat?
    Hawk is an anti-cheat plugin for Spigot servers. It attempts to verify and enforce that players' actions follow vanilla Minecraft logic. On top of that, it also attempts to detect some forms of input fabrication.

    Why choose Hawk Anti-Cheat?
    There are not many anti-cheat systems supporting older, yet still popular Minecraft versions (i.e. little support for MC 1.7.10). Hawk is focused on supporting these versions, which is why it is aimed to be a thorough solution to prevent cheating in Minecraft. If a bypass is found, it will become the highest priority to solve for the development of Hawk.

    Hawk currently contains 29 modules which check players for suspicious combat, interaction, movement, and malicious exploitation within the protocol. Hawk's checks will only observe the players' actions and collect statistics based on the observations. No checks test for cheats by interrupting the game experience, such as spawning NPCs or applying knock-back.

    Network-level checks:
    By default, Hawk’s checks perform on the networking thread. This allows for precise checking without adding significant load on the main thread. In other words, when you get high traffic, Hawk won’t drop your TPS.

    Asynchronous checking ability:
    For users who strive for performance, Hawk is able to function on a dedicated thread, independent from the networking thread. Although this option disables the ability to prevent cheating in real time, this can be beneficial to servers with very high traffic.

    Dependency free:
    Hawk fully runs without any dependencies, since it takes advantage of Netty and NMS code. Say goodbye to ProtocolLib.

    Free & open-sourced:
    Yes! Many anticheats running at the packet level charge over 100 USD. Hawk is free, open-source, and licensed under GPLv3. If you don’t like a check or feature, feel free to modify it or contribute to the project.

    Simple, but powerful framework:
    Hawk’s framework allows developers to easily implement new checks and make use of powerful utilities.

    Movement checking:
    Hawk features strict movement checks to ensure players are moving correctly. It stops the exploitation of common anti-cheat bypasses such as B-Hop, Y-Port, skip phase, etc...

    Combat checking:
    Hawk's combat cheat detection is spectacular. In addition to blocking most combat cheats, Hawk can detect basic forms of triggerbot and aimbot within a minute, without the use of NPCs or machine learning. Using the latest methods of cheat detection, a handful of clients can be detected for killaura within a few seconds.

    Mouse Recording Functionality:
    Hawk features a mouse recording function which records and graphs player mouse movement. This is a new addition to Hawk which helps users manually identify combat cheaters on their server.

    Detailed configuration:
    From enabling or disabling to editing specific values of a check, Hawk's configuration provides the user with great freedom to modify checking behavior, messages, and the execution of punishments.

    BungeeCord support:
    Flags from Hawk checks can be forwarded to staff members on other Spigot servers in a BungeeCord network using HawkAlertsBungee.

    SQL support:
    Hawk allows logging to a SQL database server. This can be very useful for multi-server networks that wish to track violations more efficiently.​

    Detected or Blocked Hacks:
    • Speed
    • Tickrate
    • Fly
    • Glide
    • NoSlowDown
    • Jesus
    • Packet sneak
    • Phase
    • Spider
    • Blink
    • V-Clip
    • Scaffold
    • Anti-velocity
    • NoFall
    • Strafe
    • Omnidirectional sprint

    • Nuker
    • GhostHand
    • Any other cheat interacting through walls or out of sight
    • Usage Speed

    • Reach
    • Angle
    • High CPS
    • Forcefield
    • Fast Bow
    • Killaura
    • Criticals
    • Aimbot (to some extent)

    Commands & Permissions:
    • /hawk - Display menu & GUI
    • /hawk kick <player> <reason> - Kick player (recommended for auto-kick)
    • /hawk talerts - Toggle alerts
    • /hawk mouserec <player> [duration in seconds] - Record a player's mouse movements
    • /hawk reload - Reload configuration and modules
    • /hawk unmute - Unmute a Hawk muted player
    • /hawk unban - Unban a Hawk banned player
    • hawk.admin - bypass kicks and bans
    • hawk.cmd - /hawk
    • hawk.cmd.* - access to all administrative commands
    • hawk.cmd.<command name>- access to a specific administrative command
    • hawk.alerts - Receive alerts
    • hawk.bypass.<check> - Bypass specific checks
    • hawk.bypass.* - Bypass all checks
    • hawk.gui - Access the graphical user interface

    For Developers:
    There is currently no "API" for Hawk, although it is possible to play around with the anticheat. Unfortunately, this means that developers will be interacting with implemented code that may change through versions without notice (think NMS code). You have been warned!

    Hawk has some useful features that developers can use. Start off by getting a reference to the Hawk plugin instance:
    Code (Text):
    Hawk hawkPlugin = (Hawk)Bukkit.getPluginManager().getPlugin("Hawk");
    From there you will find many useful methods and modules that you can tinker with. Just look at the getter methods located near the bottom of the class. The source code to the class is located here:

    It may also be useful to make use of Hawk's Bukkit events:

    1. Once downloaded, move the jar to your "plugins" folder in your server's root directory.
    2. Start or reload the server to enable Hawk Anti-Cheat.
    3. Modify the configuration in "plugins/Hawk/config.yml" if necessary. Restart or reload to apply changes.

    • Java 8 or higher
    • Spigot 1.7.10 or 1.8.8

    Hawk Anti-Cheat may not be compatible with the following:
    • Network modification
      • Inbound packet interception and modification before Hawk's position in the channel pipeline
      • Outbound packet interception and modification after Hawk's position in the channel pipeline
      • Sending packets to de-synchronize the client from the server (fake entities, fake blocks, etc. These will set off false flags if the player tries to interact with them)
    • Other anticheat plugins
    • Any Minecraft client other than versions 1.7.X and 1.8.X
      • Therefore it is strongly discouraged to use ProtocolSupport, ViaVersion, etc.
    • Client game logic modification
      • Modification of the client's movement or interaction with terrain or entities
    • Overloaded server (rounded TPS average below 20) or client (FPS/TPS lower than 20)
    • Poor server-client connection quality

    Frequently Asked Questions:
    Q: How do I edit the check configurations?
    A: Great question! The configurations for every check can be found in the "checks.yml" file in the Hawk folder. Every check has at least a few options. An example check is Inertia, which has the minimum options for a check:
    Code (Text):
      enabled: true
      cancelThreshold: 0
      flagThreshold: -1
      vlPassMultiplier: 0.995
      flagCooldown: 5000
      punishCommands: []
    • Boolean "enabled" enables/disables the check.
    • Integer "cancelThreshold" indicates the minimum violation level (VL) that the player must reach for the check to discard the player's actions. Set it to -1 to disable.
    • Integer "flagThreshold" indicates the minimum violation level (VL) that the player must reach for the check to send alerts to staff members.
    • Floating-point "vlPassMultiplier" indicates the value that is multiplied to the player's violation level (VL) every time they pass the check. This is used to reduce the player's VL when they pass the check. It should be between 0 and 1 so that the VL can decay exponentially.
    • Integer "flagCooldown" indicates the minimum time interval in milliseconds that the check must wait before sending an alert about the player. This reduces flood in chat. Higher values will reduce the rate of the flags.
    • String-list "punishCommands" may contain a list of commands to execute. The next question gives a brief tutorial on how to use this.
    Some checks may have additional options to configure.

    Q: How do I set up Hawk to execute commands on violations?
    A: The "checks.yml" file in the Hawk folder contains the configuration for every check. Every check has a string-list called "punishCommands." Each entry in the string-list is split up into three parts separated by colons.
    violation level : delay in seconds : command to run

    Here's an example configuration for the flight check
    Code (Text):
      enabled: true
      cancelThreshold: 0
      flagThreshold: 0
      vlPassMultiplier: 0.995
      flagCooldown: 0
        - "10:0:msg %player% stop hacking"
        - "20:0:kick %player%"
    You can also use placeholders such as %player% %tps% %vl% and %check%

    Q: How do I set up ban/punish waves?
    A: Hawk provides a function called the Punishment Scheduler. The system can be accessed using the command "/hawk punish". You can configure it in the "config.yml". Here is an example configuration:
    Code (Text):
      enabled: true
      command: ban %player% %reason%
      defaultReason: Illegal game modification
      schedule: 'SUNDAY * 32'
      ignoreIfServerOverloaded: true
      pingThreshold: -1
      requireAuthorization: false
      autoSave: true
    requireAuthorization is a setting that when enabled, forces administrators to run "/hawk punish authorize <player>" before Hawk can punish the player.
    schedule is the schedule that the system will run on. The first argument is the day of the week, the second argument is the hour of the day (0 through 23), and the third argument is the minute of the hour (0 through 59). You can enter * for any argument to specify that any value can work. In this example, the system will run every Sunday, every hour of that day, at 32 minutes of that hour.

    Reporting Issues & Posting Reviews
    Feel free to post a review. If you need support, please PM me, post in the discussion thread, discuss on Discord, or open an issue on the GitHub. Please do not post errors in your review. Reviews containing errors are annoying and will likely be removed by a moderator. Hawk does not and will never support Minecraft versions 1.9+.

Recent Updates

  1. An overdue update
  2. Bugfixes
  3. Movement improvements

Recent Reviews

  1. Minecon724
    Version: BETA 2008
    its pretty good but falses a lot
    reach checks are a bit broken
    sprint false flags on lunar client
  2. JhonatanDCl
    Version: BETA 2008
    The best free anti cheat, I recommend it 100%. It has some false positives on the strafe, but the rest works perfectly.

    Sorry for my bad english, use google translator
  3. Cccooc
    Version: BETA 2008
    Very good anti cheating, but it has not been updated for nearly a year. I hope the author can update it quickly: D
  4. Katat
    Version: BETA 2008
    Hey could you do so that after for example 30 VL (configurable pls) you get banned and not after the first thing?
    1. Islandscout
      Author's Response
      Please see FAQ's
  5. ninjagamer64
    Version: BETA 2008
    This is a great anticheat plugin - it even detects fly when they just have it enabled and are not even using it!
  6. Inzynier33
    Version: BETA 2008
    Best AntiCheat plugin! I am waiting and hoping that someday the plug will be available on 1.11+!
  7. MineDrafter
    Version: BETA 2008
    Good Anti Cheat, detecting most cheats!
    (can you PLEEEAAASE make it for 1.13+ compatible, thanks )
  8. soulplexis
    Version: BETA 2008
    ive tested free anticheats with some good clients and hawk has been the best at detecting cheats. it seems to detect almost anything i throw at it even catches some ghost cheats. i highly recommend this one
  9. Little_Potato_
    Version: BETA 2008
    holy crap this plugin is insane, I'm suprised this is free. thank you so much this is amazing.
  10. DJCowGaming
    Version: BETA 2008
    The best part, for me is that it doesn't contain dependencies, so if I want to rebuild it with changes, it's much easier than the hassle of making sure I have all the dependencies.